當前位置: 首頁>>編程示例 >>用法及示例精選 >>正文


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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。