我正在使用图像处理工具箱和
imcontour
功能。我有两个问题。
1)究竟是什么水平? 2)如何在使用
时分离c中给出的不同等级轮廓 [c,h]=imcontour(Img,3)
当显示轮廓时,Matlab为不同的级别呈现不同的颜色。我想只检索内轮廓的坐标,我该怎么做?在这张图片上,我展示了imcontour函数的输出,包括1级,2级,3级和4级。我只对3级图像的黄色部分感兴趣。
答案 0 :(得分:0)
是的,这是可能的,但并非真正微不足道。 C
返回的[C,h]=imcontour(Img,3)
矩阵是ContourMatrix。这是一个2xN数组,包含绘制线条的所有顶点。
假设您有3个等高线(根据您对imcountour
的第二个输入参数),并且想要找到第3个轮廓的顶点(我认为是黄色线)。您需要先跳过两个轮廓:
index = 1;
for ii=1:2 % skip 2 contours
index = index + 1 + C(2,index);
end
N = C(2,index); % number of vertices for 3rd contour
level = C(1,index); % grey-level of 3rd contour
vertices = C(:,index+(1:N));