Insertshape在错误位置绘制填充多边形-Matlab
为什么insertshape函数在错误的位置绘制填充多边形 代码:Insertshape在错误位置绘制填充多边形-Matlab,matlab,Matlab,为什么insertshape函数在错误的位置绘制填充多边形 代码: 在MATLAB中,经常会混淆矩阵索引(i,j),其中i是行号,坐标(x,y),其中x是水平的 必须密切注意文档,查看它是指i和j还是指行和列,还是指x和y 在本例中,返回 边界像素的行和列坐标 需要x和y坐标 因此,要将一个的输出放入另一个,您需要交换B{1}的两列: I=imread('coins.png'); BW=im2bw(I,灰度阈值(I)); [B,L]=BW边界(BW,'noholes'); 边界=B{1}; 边界
在MATLAB中,经常会混淆矩阵索引
(i,j)
,其中i
是行号,坐标(x,y)
,其中x
是水平的
必须密切注意文档,查看它是指i
和j
还是指行和列,还是指x和y
在本例中,返回
边界像素的行和列坐标
需要x和y坐标
因此,要将一个的输出放入另一个,您需要交换B{1}
的两列:
I=imread('coins.png');
BW=im2bw(I,灰度阈值(I));
[B,L]=BW边界(BW,'noholes');
边界=B{1};
边界=边界(:,[2,1]);%
I = imread('coins.png');
BW = im2bw(I, graythresh(I));
[B,L] = bwboundaries(BW,'noholes');
boundary = B{1};
boundary1 = reshape(boundary.',1,[])
newI = insertShape(I,'FilledPolygon',boundary1);
imshow(newI);