首页 文章

医学图像分割

提问于
浏览
-2

我正在寻找一种分割算法来从下面显示的MRI图像中提取小鼠脊柱的中间部分 . 我想通过阈值强度来提取零件,但强度与图像中的其他部分太相似 . 我还被告知(由我的主管)研究半自动分割算法,您可以在其中单击感兴趣区域中的像素,算法会考虑从您单击的像素扩散的像素 . 对此的任何其他建议也将不胜感激 .

我是这个领域的新手,所以欢迎简单的解释和/或其他资源的链接 .

小鼠脊柱的MRI图像:

img

与上面相同,突出显示的区域需要分段:

img

附: - 我在matlab工作,所以如果你知道一个好的工具箱,请告诉我 .

我的背景:物理学本科,启动医学物理硕士,并尝试进入图像分析/计算机视觉 .

3 回答

  • 1

    我正在处理相同类型的MRI数据,低分辨率和微小结构,其强度分布与其他结构相同 . 我所做的更容易,是为不相关的结构 Build 一个模板,并使用它们将它们从原始图像中剪切掉,这样我就可以得到我需要的VOI,然后我使用随机森林(或者你可以从区域开始)增长并定义一些正则化和平滑参数)来提取您的区域 .

    您可以在ITKsnap上开始一些测试包分段 . 有一种半自动监督学习算法,基于水平集活动轮廓进行分割 . 我用它,我发现它非常有用 . 如果您需要帮助,请告诉我 .

  • 0

    您可以考虑在图像样本中查看脊柱区域的空间/光谱特征 . 这样,您可以利用结构的某些特征来帮助您细分ROI .

    我们的想法是使其更多地关于微观形态而不是强度水平,这可能随着不同的样品而变化 .

  • 0

    您的图像分辨率非常低,提取所需区域非常困难 . 尝试使用ImageJ,选择感兴趣区域(ROI)并计算面积和其他参数要容易得多 .

    编辑:

    如果你想坚持使用MATLAB,你可以使用 roipoly() . 它不是自动化或半自动算法 . 基本上您将要做的是,单击所需区域边界上的多个点,然后测量边界内的像素数 . 以下代码执行相同的操作:

    img = imread('your_image');
    BW = roipoly(img); %Select points (complete the loop)-> right click -> create mask
    close;
    number_of_pixles = length(find(BW == 1)) %Total number of pixels in the region.
    

相关问题