示例#1
0
We use dipy to generate a streamline tractography. Play with the
'nb_seeds_per_voxel' parameter to increase/decrease the fiber density. Then
we count the tracks that start and end at each label pair.
Finally, computed fibers are length filtered.
"""
track_outdir = os.path.join(outdir, "streamline")
track_file = os.path.join(track_outdir, "fibers.trk")
track_filtered_file = os.path.join(track_outdir, "filtered_fibers.trk")
if not os.path.isdir(track_outdir):
    os.mkdir(track_outdir)
if not os.path.isfile(track_file):
    trackvis_fibers, trackvis_header = deterministic(
        diffusion_file,
        bvecs_file,
        bvals_file,
        track_file,
        mask_file=mask_file,
        order=4,
        nb_seeds_per_voxel=nb_seeds_per_voxel,
        step=0.5)
else:
    trackvis_fibers, trackvis_header = nibabel.trackvis.read(
        track_file, as_generator=False, points_space="voxel")
if not os.path.isfile(track_filtered_file):
    fibers = [track_item[0] for track_item in trackvis_fibers]
    fibers = filter_by_length(fibers, min_length)
    streamlines = ((track, None, None) for track in fibers)
    nibabel.trackvis.write(track_filtered_file, streamlines, trackvis_header,
                           points_space="voxel")
else:
    trackvis_fibers, trackvis_header = nibabel.trackvis.read(
示例#2
0
We use dipy to generate a streamline tractography. Play with the
'nb_seeds_per_voxel' parameter to increase/decrease the fiber density. Then
we count the tracks that start and end at each label pair.
"""

track_outdir = os.path.join(outdir, "streamline")
track_file = os.path.join(track_outdir, "fibers.txt")
if not os.path.isdir(track_outdir):
    os.mkdir(track_outdir)
if not os.path.isfile(track_file):
    deterministic(diffusion_file,
                  bvecs_file,
                  bvals_file,
                  track_outdir,
                  mask_file=mask_file,
                  order=4,
                  nb_seeds_per_voxel=nb_seeds_per_voxel,
                  step=0.5,
                  fmt="%.4f")

if use_vtk:
    tracks = loadtxt(track_file)
    actor = pvtk.line(tracks, scalar=1)
    pvtk.add(ren, actor)
    pvtk.record(ren, qcdir, "fibers", az_ang=45, n_frames=2)
    pvtk.clear(ren)

connect_outdir = os.path.join(outdir, "det_region_connectivity")
if not os.path.isdir(connect_outdir):
    os.mkdir(connect_outdir)
We use dipy to generate a streamline tractography. Play with the
'nb_seeds_per_voxel' parameter to increase/decrease the fiber density. Then
we count the tracks that start and end at each label pair.
"""

track_outdir = os.path.join(outdir, "streamline")
track_file = os.path.join(track_outdir, "fibers.txt")
if not os.path.isdir(track_outdir):
    os.mkdir(track_outdir)
if not os.path.isfile(track_file):
    deterministic(
        diffusion_file,
        bvecs_file,
        bvals_file,
        track_outdir,
        mask_file=mask_file,
        order=4,
        nb_seeds_per_voxel=nb_seeds_per_voxel,
        step=0.5,
        fmt="%.4f")

if use_vtk:
    tracks = loadtxt(track_file)
    actor = pvtk.line(tracks, scalar=1)
    pvtk.add(ren, actor)
    pvtk.record(ren, qcdir, "fibers", az_ang=45, n_frames=2)
    pvtk.clear(ren)
    

connect_outdir = os.path.join(outdir, "det_region_connectivity")
if not os.path.isdir(connect_outdir):