Brain extraction using Kmeans and connectivity.

3 次查看(过去 30 天)
Hello, I'm trying to perform a brain extraction of a slice from a NIFTI volume. I wrote a k means segmentation code, and that way I have gotten as far as:
and now I am trying to use connectivity, based on this tutorial but I'm not sure if something similar can be done if the parts I want to extract are not in the borders. In the image, the brain is separated from the skull and there's an empty region between them. Is there a way of separating these regions? I tried something like this but got stuck after I got the connected components structure.
Thanks in advance
  4 个评论
Kirby Fears
Kirby Fears 2015-12-2
How many connected components did you get back from bwconncomp ()?
You should be able to get each one by accessing the PixelIdxList field.
cc = bwconncomp(bw, 4)
grain = false(size(bw));
% instead of 50 try 1, 2, 3, etc :
grain(cc.PixelIdxList{50}) = true;
imshow(grain);
Fer
Fer 2015-12-2
I did, I actually got as far as this:
However the label corresponding to the skull is not always the same. Running the same code on the same image will sometimes result in the segmentation of a different structure.
I would like to come up with a technique that's reproducible for different images. Any suggestions on where to look into this??

请先登录,再进行评论。

回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Neuroimaging 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by