白细胞的分割和标记

信息处理 matlab 分割
2022-01-27 16:49:05

我正在尝试从此图像中分割和标记白细胞: 原始图像

使用 K-Means 我设法分割了我想要的大部分内容: 在此处输入图像描述

但正如你所看到的,有一些单元格相互连接,我想将它们标记为单独的对象。

所以我的问题是:你能指出一些已知的算法来执行自动分离它们的任务吗?该图像来自带有细胞中心注释的数据集,以防涉及机器学习......

此外,但不太重要的是,很高兴听到有关改进 K-Means 分割的建议(丢弃“污点”)。

编辑: 谢谢!在玩弄了区域最小值函数(inextendedmin)之后,我设法分割了中心的所有单元格,除了该簇的左下角,但在第二个分水岭中对分割图像进行了一些清理分割: 在此处输入图像描述

Edit2: 对于仍然关注(甚至关心)的任何人,我设法使用 K-means 在原始 bw 图像上进行空间聚类来改进分割,其中我通过分水岭获得的细胞数被定义为 k(聚类数)。结果提供了更精细的分割: 在此处输入图像描述

1个回答

我不能推荐您的聚类算法领域的任何东西,但这看起来很简单。初始分割效果很好;一个简单的分水岭应该将这些细胞分开。

例如,在 MATLAB 中:

function W = dowatershed(I)
    %% I is a logical mask (i.e., im2bw)
    d = -bwdist(~I);    
    l = watershed(d);
    W = I;
    W(l == 0) = 0;
end