用图像标签提取Matlab图像

时间:2012-12-27 17:26:59

标签: matlab

我有相同图像的标记版和灰度版,我想从灰度版本中提取具有特定标签编号的区域。

例如,图像标签包含标记为1,2和3的组件;我希望灰度图像中标签号为3的像素作为新的图像矩阵。有没有更简单的方法来做这个而不是使用循环来检查每个像素为label = 3并将相应的像素设置为灰度值并关闭其他标签的像素?

1 个答案:

答案 0 :(得分:1)

假设您拥有图像数组img和标签数组lbl。然后你可以按如下方式构建一个新图像:

%# make a copy of the image
newImg = img;

%# turn off all the non-label-3 pixels
newImg(lbl~=3) = NaN; %# alternatively, you can mask with 0, but this may affect contrast