如何 return 二维矩阵中轮廓的位置
How to return the positions of a contour in a 2D matrix
我有一个 50x50 的二维矩阵,由一个“1”(圆盘)的孔组成,其余值为零。 (矩阵是二进制的)。我只想 return 对象轮廓矩阵中的位置如下图所示。
我尝试了命令"imcontour"(因为我的案例也是二进制图像)。这很好,但是轮廓的一些给定位置高于矩阵的大小,这意味着它可能给出以像素为单位的位置而不是矩阵的索引。
我也尝试了 "contour" 和 "boundary" 但没有成功。
如果我做对了,请尝试 [x,y]=find(M)
提取位置并尝试 ind=find(M)
提取矩阵中非零值的索引号。如果您正在寻找边界,只需使用 bwperim 函数:[x,y]=find(bwperim(M))
我有一个 50x50 的二维矩阵,由一个“1”(圆盘)的孔组成,其余值为零。 (矩阵是二进制的)。我只想 return 对象轮廓矩阵中的位置如下图所示。
我尝试了命令"imcontour"(因为我的案例也是二进制图像)。这很好,但是轮廓的一些给定位置高于矩阵的大小,这意味着它可能给出以像素为单位的位置而不是矩阵的索引。
我也尝试了 "contour" 和 "boundary" 但没有成功。
如果我做对了,请尝试 [x,y]=find(M)
提取位置并尝试 ind=find(M)
提取矩阵中非零值的索引号。如果您正在寻找边界,只需使用 bwperim 函数:[x,y]=find(bwperim(M))