from dipy.data import (read_stanford_labels, default_sphere, read_stanford_pve_maps) from dipy.direction import DeterministicMaximumDirectionGetter from dipy.io.trackvis import save_trk from dipy.reconst.csdeconv import (ConstrainedSphericalDeconvModel, auto_response) from dipy.tracking.local import LocalTracking from dipy.tracking import utils from dipy.viz import fvtk from dipy.viz.colormap import line_colors ren = fvtk.ren() hardi_img, gtab, labels_img = read_stanford_labels() _, _, img_pve_wm = read_stanford_pve_maps() data = hardi_img.get_data() labels = labels_img.get_data() affine = hardi_img.affine white_matter = img_pve_wm.get_data() seed_mask = np.logical_and(labels == 2, white_matter == 1) seeds = utils.seeds_from_mask(seed_mask, density=2, affine=affine) response, ratio = auto_response(gtab, data, roi_radius=10, fa_thr=0.7) csd_model = ConstrainedSphericalDeconvModel(gtab, response) csd_fit = csd_model.fit(data, mask=white_matter) dg = DeterministicMaximumDirectionGetter.from_shcoeff(csd_fit.shm_coeff, max_angle=30.,
from dipy.data import (read_stanford_labels, default_sphere, read_stanford_pve_maps) from dipy.direction import DeterministicMaximumDirectionGetter from dipy.io.trackvis import save_trk from dipy.reconst.csdeconv import (ConstrainedSphericalDeconvModel, auto_response) from dipy.tracking.local import LocalTracking from dipy.tracking import utils from dipy.viz import fvtk from dipy.viz.colormap import line_colors ren = fvtk.ren() hardi_img, gtab, labels_img = read_stanford_labels() _, _, img_pve_wm = read_stanford_pve_maps() data = hardi_img.get_data() labels = labels_img.get_data() affine = hardi_img.get_affine() white_matter = img_pve_wm.get_data() seed_mask = np.logical_and(labels == 2, white_matter == 1) seeds = utils.seeds_from_mask(seed_mask, density=2, affine=affine) response, ratio = auto_response(gtab, data, roi_radius=10, fa_thr=0.7) csd_model = ConstrainedSphericalDeconvModel(gtab, response) csd_fit = csd_model.fit(data, mask=white_matter) dg = DeterministicMaximumDirectionGetter.from_shcoeff(csd_fit.shm_coeff, max_angle=30.,
default='', help="path to the output file") parser.add_argument("--chunk-size", type=int, required=True, help="how many seeds to process per sweep") parser.add_argument("--nseeds", type=int, default=None, help="how many seeds to process in total") args = parser.parse_args() # Get Stanford HARDI data hardi_nifti_fname, hardi_bval_fname, hardi_bvec_fname = get_fnames( 'stanford_hardi') csf, gm, wm = read_stanford_pve_maps() wm_data = wm.get_fdata() img = get_img(hardi_nifti_fname) voxel_order = "".join(aff2axcodes(img.affine)) gtab = get_gtab(hardi_bval_fname, hardi_bvec_fname) #roi = get_img(hardi_nifti_fname) data = img.get_fdata() roi_data = (wm_data > 0.5) mask = roi_data tenmodel = dti.TensorModel(gtab, fit_method='WLS') print('Fitting Tensor') tenfit = tenmodel.fit(data, mask)