[Mrtrix-discussion] help with streamtrack

Robert Smith r.smith at brain.org.au
Sun Nov 20 14:21:43 PST 2011


Ariel

I was initially a little unsure exactly what you meant here; I think what
you are looking for is deterministic track *seeding* as well as
deterministic tractography i.e. rather than seeding randomly throughout the
seed ROI (as is currently done in MRtrix), you would like to construct a 3D
point mesh within the seed ROI (with one or more seeds per voxel), such
that if you run the program multiple times you will get *exactly* the same
tracks.

This is not yet implemented in MRtrix, largely because we encourage the use
of probabilistic streamlines, and constructing such a grid would be
redundant in this context (and could in fact introduce some unusual effects
in certain contexts). Furthermore, even in the case of deterministic
streamlines with probabilistic seeding, if you generate sufficient tracks
to fully sample the volume of each voxel in the seed ROI, differences
between multiple executions should be negligible.

Nevertheless, this is a feature that could potentially be implemented
alongside the probabilistic seeding, if there is sufficient demand for it.

Hope this answers your question
Rob

--

Robert Smith
Melbourne Brain Centre
245 Burgundy Street
Heidelberg VIC 3084
Telephone: (+61 3) 9035 7128
Fax: (+61 3) 9035 7301
Email:  r.smith at brain.org.au
www.florey.edu.au <http://www.fni.edu.au>        www.brain.org.au



On Wed, Nov 9, 2011 at 12:59 PM, Ariel Rokem <arokem at gmail.com> wrote:

> Thanks Robert!
>
> That does work as expected. I am wondering whether it is possible to
> define the seeds for tracking in the deterministic tracking in a more
> resolved manner. That is, how can I initiate tracking from every single
> voxel in an ROI and then select only those tracks that go another ROI?
> Essentially, I want to get exactly the same results and all the possible
> results in two different instantiations of the program. Is that possible?
>
> Cheers,
>
> Ariel
>
> On Wed, Nov 2, 2011 at 5:36 PM, Robert Smith <r.smith at brain.org.au> wrote:
>
>> Hi Ariel
>>
>> The effect you're seeing appears to be a problem in the way the -stopoption is applied.
>> Currently, it detects the moment when the track enters *any* of the
>> include regions (effectively a Boolean 'OR' operation), and terminates
>> tracking.
>> The -include option however specifies that a track must enter *all*regions (a Boolean 'AND' operation) in order to be accepted and written to
>> the output file.
>> So what's happening, is that the tracks are being stopped as soon as they
>> enter one region, none of them are succeeding in reaching the other region,
>> and you end up with no tracks!
>>
>> I will confer with Donald regarding exactly how this option should be
>> applied, and it will likely change for the next release. In the time being,
>> you have a couple of options:
>> * Use one ROI as the seed region, and the other as the include region.
>> * Try the update I have attached to this message - these two files
>> replace the existing ones in
>> (mrtrix_directory)/src/dwi/tractography/tracker/ (rename and keep the
>> existing files just in case). You will need to re-compile after replacing
>> the files. This will change the handling of the -stop option, and should
>> hopefully make it behave a little more sensibly. Note however that it will
>> not yield the cropped portion of tracks between the two regions as you
>> expected - it will yield the section of track between the seed (wherever
>> that happens to be) and the point at which it enters whichever include
>> region it traverses last.
>>
>> Best regards
>> Rob
>>
>> --
>>
>> Robert Smith
>> Melbourne Brain Centre
>> 245 Burgundy Street
>> Heidelberg VIC 3084
>> Telephone: (+61 3) 9035 7128
>> Fax: (+61 3) 9035 7301
>> Email:  r.smith at brain.org.au
>> www.florey.edu.au <http://www.fni.edu.au>        www.brain.org.au
>>
>>
>>
>>
>> On Wed, Nov 2, 2011 at 6:48 AM, Ariel Rokem <arokem at gmail.com> wrote:
>>
>>> Hi Donald,
>>>
>>> First of all, thanks for making mrtrix available! You were right: it
>>> wasn't too painful to get things compiled on fedora. The one comment that I
>>> had is that for some dependencies (gtkglext, in particular) you have to get
>>> the "-devel" version of the library, otherwise the build process throws
>>> cryptic pkg-config errors at you. That might be obvious to some, but got me
>>> puzzled for a bit there. Once I figured that out, though, it went quite
>>> smoothly and I have 0.2.9 running.
>>>
>>> Now for a specific question on the "-stop" feature of streamtrack.
>>>
>>> Running this command:
>>>
>>> streamtrack -seed r_occipital.mif -mask wmMask.mif -include ROI1.mif
>>> -include ROI2.mif SD_STREAM CSD12.mif out.tck -number 1000 -maxnum 1000000
>>>
>>> Produces 1000 tracks, as expected, which I can then view in mrview and
>>> seem to be in the right place, except that they go beyond the ROIs. That's
>>> where I thought that "-stop" can come in handy.
>>>
>>> Running:
>>>
>>> streamtrack -seed r_occipital.mif -mask wmMask.mif -include ROI1.mif
>>> -include ROI2.mif SD_STREAM CSD12.mif out.tck -number 1000 -maxnum 1000000
>>> -stop
>>>
>>> On the other hand, produced no tracks at all. Is this just bad luck in
>>> the random choice of seed points within the seed region? I tried it twice,
>>> to convince myself that wasn't it. Is this an expected behavior of
>>> streamtrack? I might be misunderstanding what it's supposed to be doing. I
>>> thought that it would give me roughly the same set of tracks, but clipped
>>> to only the bit of the fiber that is between ROI1 and ROI2.
>>>
>>> Thanks again,
>>>
>>> Ariel
>>>
>>>
>>>
>>> On Sun, Oct 30, 2011 at 7:14 PM, Donald Tournier <
>>> d.tournier at brain.org.au> wrote:
>>>
>>>> Hi all,
>>>>
>>>> Nice to see so much discussion going on, keep it up!
>>>>
>>>> Ariel: to answer your question: the -stop option was introduced in
>>>> 0.2.8. Sorry...
>>>>
>>>> Shouldn't be that hard to compile on Fedora though, later versions
>>>> should compile without modification. Let me know if it doesn't...
>>>>
>>>> Cheers,
>>>>
>>>> Donald.
>>>>
>>>>
>>>> On 29 October 2011 10:03, Ariel Rokem <arokem at gmail.com> wrote:
>>>>
>>>>> Hi Thijs,
>>>>>
>>>>> I am following this discussion with some interest:
>>>>>
>>>>> On Fri, Oct 28, 2011 at 2:23 AM, Thijs Dhollander <
>>>>> thijs.dhollander at uzleuven.be> wrote:
>>>>>
>>>>>>
>>>>>>
>>>>>> About your question: what you're looking for is the "*-stop*" option
>>>>>> (with no extra arguments).  If you include this one in your streamtrack
>>>>>> command, all tracks will stop as soon as they enter any of your include
>>>>>> regions: i.e. they will not track beyond your target ROI (but also not
>>>>>> "within", only "up to", I suppose).****
>>>>>>
>>>>>> **
>>>>>>
>>>>>
>>>>> Is this a new feature? I can't seem to find it in 0.2.7, but would
>>>>> rather not have to build from source mrtrix (on fedora...) if that's not
>>>>> necessary in order to get this feature working for me.
>>>>>
>>>>> Thanks,
>>>>>
>>>>> Ariel
>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> Mrtrix-discussion mailing list
>>>>> Mrtrix-discussion at www.nitrc.org
>>>>> http://www.nitrc.org/mailman/listinfo/mrtrix-discussion
>>>>>
>>>>>
>>>>
>>>>
>>>> --
>>>> Jacques-Donald Tournier (PhD)
>>>> Brain Research Institute, Melbourne, Australia
>>>> Tel: +61 (0)3 9035 7033
>>>>
>>>
>>>
>>> _______________________________________________
>>> Mrtrix-discussion mailing list
>>> Mrtrix-discussion at www.nitrc.org
>>> http://www.nitrc.org/mailman/listinfo/mrtrix-discussion
>>>
>>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.nitrc.org/pipermail/mrtrix-discussion/attachments/20111121/cc1b9d36/attachment.html


More information about the Mrtrix-discussion mailing list