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


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


用法:

skimage.draw.random_shapes(image_shape, max_shapes, min_shapes=1, min_size=2, max_size=None, multichannel=True, num_channels=3, shape=None, intensity_range=None, allow_overlap=False, num_trials=100, random_seed=None, *, channel_axis=- 1)

生成具有随机形状的图像,并用边界框标记。

图像填充了具有随机大小、随机位置和随机颜色的随机形状,有或没有重叠。

形状具有随机(行、列)起始坐标和随机大小,以 min_size 和 max_size 为界。随机生成的形状可能根本不适合图像。在这种情况下,算法将使用新的起始坐标再次尝试一定次数。但是,这也意味着可以完全跳过某些形状。在这种情况下,此函数将生成比请求更少的形状。

参数

image_shape元组

要生成的图像的行数和列数。

max_shapesint

(尝试)适合形状的最大形状数。

min_shapesint 可选

(尝试)适合形状的最小形状数。

min_sizeint 可选

适合图像的每个形状的最小尺寸。

max_sizeint 可选

适合图像的每个形状的最大尺寸。

multichannel布尔型,可选

如果为 True,则生成的图像有num_channels颜色通道,否则生成灰度图像。此参数已弃用:指定channel_axis反而。

num_channelsint 可选

生成图像中的通道数。如果为 1,则生成单色图像,否则生成具有多个通道的彩色图像。如果 multichannel 设置为 False,则忽略。

shape{矩形,圆形,三角形,椭圆,无} str,可选

要生成的形状的名称或 None 以选择随机形状。

intensity_range{uint8的元组,uint8的元组},可选

要从中采样像素值的值范围。对于灰度图像,格式为 (min, max)。对于多通道 - ((min, max),) 如果通道之间的范围相等,并且 ((min_0, max_0), ... (min_N, max_N)) 如果它们不同。由于该函数仅支持生成 uint8 数组,因此最大范围为 (0, 255)。如果没有,则为每个通道设置 (0, 254),保留强度颜色 = 255 作为背景。

allow_overlap布尔型,可选

如果为 True,则允许形状重叠。

num_trialsint 可选

在跳过之前尝试将形状拟合到图像中的频率。

random_seed{无,int numpy.random.Generator },可选

如果random_seed是没有的numpy.random.Generator使用单例。如果random_seed是一个int 一个新的Generator使用实例,播种random_seed.如果random_seed已经是一个Generator实例然后使用该实例。

channel_axisint 或无,可选

如果为 None,则假定图像是灰度(单通道)图像。否则,此参数指示数组的哪个轴对应于通道。

返回

imageuint8 数组

具有拟合形状的图像。

labels列表

标签列表,图像中的每个形状一个。每个标签都是一个 (category, ((r0, r1), (c0, c1))) 元组,指定形状的类别和边界框坐标。

其他参数

multichannelDEPRECATED

已弃用以支持channel_axis。

例子

>>> import skimage.draw
>>> image, labels = skimage.draw.random_shapes((32, 32), max_shapes=3)
>>> image 
array([
   [[255, 255, 255],
    [255, 255, 255],
    [255, 255, 255],
    ...,
    [255, 255, 255],
    [255, 255, 255],
    [255, 255, 255]]], dtype=uint8)
>>> labels 
[('circle', ((22, 18), (25, 21))),
 ('triangle', ((5, 6), (13, 13)))]

相关用法


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