所以我有CT扫描图像。我想展示升主动脉和降主动脉,但没有别的。我的大部分代码都能工作,唯一不能得到的是当它循环遍历标签列表时,它不会保持上升到图形,所以我以降序结束,或者更有意义的是,它只显示一个对象时,它应该显示2。
%% set boundaries and get areas
%set boundaries and label objects
[B,L] = bwboundaries(AAB,'noholes');
%get the Filled Area of these objects
area = regionprops(L,'FilledArea');
%% display objects based on area
figure;
for k=1:size(area)
if (area(k).FilledArea > 1500)
imshow(L==(k));
hold on;
end
end我已经检查了面积值和1500是一个合适的数量显示这两个。
AAB是我从原始扫描中创建的二值图像。
提前感谢您的帮助
发布于 2014-02-10 18:45:39
imshow不支持控股,就像情节一样。所以它只是打印了之前的图像。
如果您只有两个图像,则可以使用imshowpair。或者为每个标签指定不同的颜色。
或者做这样的事情:
mask=zeros(size(L));
figure;
for k=1:size(area)
if (area(k).FilledArea > 1500)
mask=mask+(L==(k));
end
end
imshow(mask>0);https://stackoverflow.com/questions/21683985
复制相似问题