-
Notifications
You must be signed in to change notification settings - Fork 437
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
NF - added anatomically-constrained tractography (ACT) tissue classifier #414
NF - added anatomically-constrained tractography (ACT) tissue classifier #414
Conversation
First of all - I haven't looked in any detail, but generally this looks Second - yes - we have T1's and rather good segmentations on that brain. http://nipy.org/dipy/examples_built/streamline_tools.html#example-streamline-tools The pertinent lines are: from dipy.data import read_stanford_labels Otherwise - I can help you get all of the data, when I am back at my desk On Tue, Sep 9, 2014 at 4:18 PM, Gabriel Girard notifications@github.com
|
Hey @gabknight - thought I would circle back here to check: do you need any help with these data? |
double threshold, interp_out_double[1] | ||
double[::1] interp_out_view | ||
double[:, :, :] metric_map | ||
double interp_out_double[1] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Any reason to make this a MemoryView? Won't double *interp_out_double
do?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
IIRC This attribute is passed to a function which takes memory views as inputs. A pointer cannot be used here because pointers have not shape info and cannot be coerced into memory-views. An c array does work, but when I profiled it, I noticed that coercing a c array into a memory view adds a lot of overhead. If we can just do it once up front, it makes a noticeable difference in performance.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Perfect, I was just curious (one doesn't normally see arrays of 1).
786f997
to
1e65e56
Compare
Sorry for breaking this PR, I rebased tracking_redesign on the latest master so travis could start testing it. I went ahead and rebased this PR on top of that because it was very easy: |
d58f779
to
baa866b
Compare
Thanks all for your comments. I addressed them. I also added a binary tissue classifier. It is useful if you know where you want to track. e.g. in the tractometer setup or using wm mask from an atlas. I putted an example in newapi.py. The next thing to do in this PR is to add clear simple examples for the various TC. |
|
||
voxel[0] = int(point[0]) | ||
voxel[1] = int(point[1]) | ||
voxel[2] = int(point[2]) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should this be int(round(point))
?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
yes. thanks. This made me realized that new tc aren't tested well. I will push testing code..
@MrBago I added support for various I also added tests for tissue classifiers. |
@Garyfallidis do you have any clue on what is happening with Travis here? |
It seems that Travis commited suicide. Lol. @arokem, @matthew-brett any ideas? |
Rebase on master. This : #437 should Ariel On Thu, Oct 9, 2014 at 10:20 AM, Eleftherios Garyfallidis <
|
61862ab
to
8ec8737
Compare
8ec8737
to
6435efe
Compare
Almost there - still need to deal with that hard-coded minimum for cases where all the signal is 0. Need to think about that.
And change back the script. Whew!
Added non-local means in Changelog
From suggestion by Stefan Behnel.
@gabknight - where does this stand? Can I help with the WM/GM segmentation? I do have a higher resolution segmentation of the stanford_hardi brain that I can share, if that's helpful. Also, when you get a chance, please rebase this on top of master? |
RF: change config variable to C define
DOC: Link to @francopestilli's matlab implementation of LiFE.
Added option to return the number of voxels fitting the fa threshold
RF: Clean up functions that refer to non-existing data
6435efe
to
4a00976
Compare
This PR was on nipy:tracking_redesig. I rebased on master and created PR #565 on nipy:master. This PR can be close. |
Done. |
Anatomically-Constrained Tractography (ACT) from Smith et al. (neuroimage 2012).
I didn't tested it yet with actual white/grey/csf partial volume fraction maps. I will run FSL/Fast on the B0 image of the stanford_hardi dataset to get some maps. Maybe we could added those image to the dataset at some point.
Do we have a T1 image of the stanford_hardi brain?