Matlab - 识别一个图像中与另一个图像重叠的对象 [英] Matlab - Identifying objects in one image that overlap objects in another

查看:787
本文介绍了Matlab - 识别一个图像中与另一个图像重叠的对象的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有两个图像,一个是细胞中的一个,另一个是细胞核。我已经将这些图像分割成两个二进制图像/矩阵。我想删除不包含细胞核的细胞轮廓,以及与细胞簇相对应的细胞和细胞核(即包含多个细胞核的细胞轮廓)。

I have two images, one of some cells and another of the nuclei of those cells. I've segmented these images to give two binary images/matrices. I would like to remove cell outlines that contain no nuclei, and cells and nuclei that correspond to clusters of cells (i.e. cell outlines that contain more than one nuclei).

I真的无法解决这个问题...我可以使用bwlabel来制作对象的标记数组:

I really can't figure this out... I can use bwlabel to make labelled arrays of the objects:

[cell, cellnum] = bwlabel(cells,8);
[nuc, nucnum] = bwlabel(nuclei,8);

如何比较这两个数组以获得一个仅包含具有一个核心的细胞的新阵列另一个核对应于这些细胞吗?

How can I compare these two arrays to get one new array that only contains cells with exactly one nucleus and another with the nuclei corresponding to these cells?

推荐答案

你可以做的一件事是循环你在<$中确定的聚类c $ c> cells 二进制图像(概念,未经测试的代码):

One thing you could do is loop through the clusters you identified in your cells binary image (conceptual, untested code):

for k=1:cellnum
    [~, nucnum(k)]=bwlabel(nuclei.*(cell==k));
end

nucnum 然后每个细胞内发现细胞核数的载体。根据您的需要进行筛选。

nucnum is then a vector with the number of nuclei found inside every cell. Filter according to your needs.

我推荐关于细胞和细胞核细分的博客文章: http://blogs.mathworks.com/steve/2006/06/02/cell-segmentation/

I recommend this blog post on the subject of segmenting cells and nuclei: http://blogs.mathworks.com/steve/2006/06/02/cell-segmentation/

这篇关于Matlab - 识别一个图像中与另一个图像重叠的对象的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆