Image Matlab-识别一幅图像中与另一幅图像中的对象重叠的对象
我有两张照片,一张是一些细胞,另一张是这些细胞的细胞核。我将这些图像分割成两个二值图像/矩阵。我想删除不包含细胞核的细胞轮廓,以及对应于细胞簇的细胞和细胞核(即包含多个细胞核的细胞轮廓) 我真的搞不懂。。。我可以使用bwlabel制作对象的带标签数组:Image Matlab-识别一幅图像中与另一幅图像中的对象重叠的对象,image,matlab,object,image-processing,Image,Matlab,Object,Image Processing,我有两张照片,一张是一些细胞,另一张是这些细胞的细胞核。我将这些图像分割成两个二值图像/矩阵。我想删除不包含细胞核的细胞轮廓,以及对应于细胞簇的细胞和细胞核(即包含多个细胞核的细胞轮廓) 我真的搞不懂。。。我可以使用bwlabel制作对象的带标签数组: [cell, cellnum] = bwlabel(cells,8); [nuc, nucnum] = bwlabel(nuclei,8); 如何比较这两个数组,以得到一个新数组,该数组只包含一个细胞核,另一个数组包含与这些细胞核对应的细胞核?
[cell, cellnum] = bwlabel(cells,8);
[nuc, nucnum] = bwlabel(nuclei,8);
如何比较这两个数组,以得到一个新数组,该数组只包含一个细胞核,另一个数组包含与这些细胞核对应的细胞核?您可以做的一件事是循环遍历您在
细胞
二值图像中识别的簇(概念性的、未测试的代码):
nucnum
是一个向量,表示每个细胞内发现的细胞核数量。根据您的需要进行过滤
我推荐这篇关于细胞和细胞核分割的博文:分享相关图片,并解释这些图片?对于共享图像,您可以上传到一些公共图像共享网站并链接到这里。好的,看起来这可能就是门票。这里发生了什么事?我们将
细胞核
图像数组乘以单个细胞
子区域,并将其放入“nucnum”数组。。。瓷砖是否意味着我们跳过了实际的区域标记?当然,谢谢你的帮助。我没有意识到我可以将图像上的操作作为bwlabel之类函数的参数,这使我的代码更加整洁!嗨,我能再问一个问题吗?为什么nucnum
引用k
在那里?@Olly使用这种语法,nuncum
是一个向量,每次执行循环时(在第k个位置)都会得到一个额外的元素。如果不使用它运行循环,它将在每次执行时覆盖nuncum
的值,并且只剩下最后一个值。谢谢。之后我尝试在集群上执行pca,但实际上没有取得任何进展:对于k=1:cellnum[l,nucnum]=bwlabel(nucleus.*(cell==k));如果nucnum==1[coeff,score]=princomp(l);结束但这并不像我预期的那样有效。。。翻出一页又一页的零。作为一种方法,这有意义吗?
for k=1:cellnum
[~, nucnum(k)]=bwlabel(nuclei.*(cell==k));
end