Easy way to strip skull form MRI volume?
8 views (last 30 days)
Show older comments
I'm trying to create a code that separates the skull from the brain for a Serie of MRI Dicom files. I tried to use thresholds combined with selecting the biggest component combined with a mean intensity, but this only works partially. Does anybody has suggestions/knows a method to perform or optimize this kind of operation?
9 Comments
Image Analyst
on 17 Feb 2017
See skull stripping code in your question https://www.mathworks.com/matlabcentral/answers/323816-i-want-to-extract-skull-from-brain-mri-using-morphological-operations-but-i-didnt-get-a-useful-out#answer_255279
Accepted Answer
Image Analyst
on 23 Oct 2013
Without seeing the image, or knowing why you said it didn't work well, that's what I would have suggested. So, other than that, all I can say is to check the published literature: http://iris.usc.edu/Vision-Notes/bibliography/contentsmedical.html#Medical%20Applications,%20CAT,%20MRI,%20Ultrasound,%20Heart%20Models,%20Brain%20Models
5 Comments
Image Analyst
on 23 Oct 2013
If the skull is disconnected from anything else, and there are no blobs outside the skull, you can just use ismember to create a new labeled image (as shown in my Image Segmentation Tutorial at http://www.mathworks.com/matlabcentral/fileexchange/?term=authorid%3A31862)
newLabeledImage = ismember(labeledImage, 2:numberOfBlobs);
Or, since you know it's blob #1, you can just zero it out directly
newLabeledImage = labeledImage; % Initialize
newLabeledImage(labeledImage==1) = 0;
If it's not blob #1, you can get rid of small blobs outside it with bwareaopen(), or you can try to identify it based on other things like the EquivDiameter, MajorAxisLength, Perimeter, etc. But if the skull connects to the inside, it's a lot more difficult.
More Answers (0)
See Also
Categories
Find more on MRI in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!