当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python skimage.draw.rectangle_perimeter用法及代码示例


用法:

skimage.draw.rectangle_perimeter(start, end=None, extent=None, shape=None, clip=False)

生成恰好围绕矩形的像素坐标。

参数

start元组

内部矩形的原点,例如 (row, column)

end元组

内部矩形的端点(row, column).对于二维矩阵,矩形内部定义的切片是[start:(end+1)].任何一个结尾或者程度必须指定。

extent元组

内部矩形的范围(大小)。例如:,(num_rows, num_cols).任何一个结尾或者程度必须指定。负范围是允许的。看skimage.draw.rectangle以更好地了解他们的行为方式。

shape元组,可选

用于确定输出坐标的最大边界的图像形状。这对于裁剪超出图像大小的周长很有用。默认情况下,不进行剪辑。长度必须至少为 2。只有前两个值用于确定输入图像的范围。

clip布尔型,可选

是否将周长裁剪为提供的形状。如果设置为 True,则绘制的图形将始终是一个所有边都可见的封闭多边形。

返回

coordsint 形状的数组(2,Npoints)

矩形中所有像素的坐标。

例子

>>> import numpy as np
>>> from skimage.draw import rectangle_perimeter
>>> img = np.zeros((5, 6), dtype=np.uint8)
>>> start = (2, 3)
>>> end = (3, 4)
>>> rr, cc = rectangle_perimeter(start, end=end, shape=img.shape)
>>> img[rr, cc] = 1
>>> img
array([[0, 0, 0, 0, 0, 0],
       [0, 0, 1, 1, 1, 1],
       [0, 0, 1, 0, 0, 1],
       [0, 0, 1, 0, 0, 1],
       [0, 0, 1, 1, 1, 1]], dtype=uint8)
>>> img = np.zeros((5, 5), dtype=np.uint8)
>>> r, c = rectangle_perimeter(start, (10, 10), shape=img.shape, clip=True)
>>> img[r, c] = 1
>>> img
array([[0, 0, 0, 0, 0],
       [0, 0, 1, 1, 1],
       [0, 0, 1, 0, 1],
       [0, 0, 1, 0, 1],
       [0, 0, 1, 1, 1]], dtype=uint8)

相关用法


注:本文由纯净天空筛选整理自scikit-image.org大神的英文原创作品 skimage.draw.rectangle_perimeter。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。