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


Python SciPy ndimage.grey_erosion用法及代碼示例


本文簡要介紹 python 語言中 scipy.ndimage.grey_erosion 的用法。

用法:

scipy.ndimage.grey_erosion(input, size=None, footprint=None, structure=None, output=None, mode='reflect', cval=0.0, origin=0)#

使用結構元素或對應於平麵結構元素的足跡計算灰度侵蝕。

灰度腐蝕是一種數學形態學運算。對於完整且平坦的結構元素的簡單情況,可以將其視為滑動窗口上的最小過濾器。

參數

input array_like

要計算灰度侵蝕的數組。

size 整數元組

用於灰度侵蝕的平坦且完整的結構元素的形狀。如果提供了足跡或結構,則可選。

footprint 整數數組,可選

用於灰度侵蝕的平麵結構元素的非無限元素的位置。非零值給出了選擇最小值的中心的一組鄰居。

structure 整數數組,可選

用於灰度侵蝕的結構化元素。結構可以是非平麵結構元素。

output 數組,可選

可以提供用於存儲腐蝕輸出的數組。

mode {‘reflect’,'constant','nearest','mirror',‘wrap’},可選

mode 參數確定如何處理數組邊界,其中 cval 是 mode 等於 ‘constant’ 時的值。默認為‘reflect’

cval 標量,可選

如果模式為‘constant’,則填充過去輸入邊的值。默認值為 0.0。

origin 標量,可選

origin 參數控製過濾器的位置。默認 0

返回

output ndarray

輸入的灰度侵蝕。

注意

在域 E 上定義的結構元素 s 對圖像輸入的灰度侵蝕由下式給出:

(input+s)(x) = min {input(y) - s(x-y),對於 E 中的 y}

特別是,對於定義為 s(y) = 0 for y in E 的結構元素,灰度侵蝕計算由 E 定義的滑動窗口內的輸入圖像的最小值。

灰度侵蝕[1]是一個數學形態學操作[2].

參考

例子

>>> from scipy import ndimage
>>> import numpy as np
>>> a = np.zeros((7,7), dtype=int)
>>> a[1:6, 1:6] = 3
>>> a[4,4] = 2; a[2,3] = 1
>>> a
array([[0, 0, 0, 0, 0, 0, 0],
       [0, 3, 3, 3, 3, 3, 0],
       [0, 3, 3, 1, 3, 3, 0],
       [0, 3, 3, 3, 3, 3, 0],
       [0, 3, 3, 3, 2, 3, 0],
       [0, 3, 3, 3, 3, 3, 0],
       [0, 0, 0, 0, 0, 0, 0]])
>>> ndimage.grey_erosion(a, size=(3,3))
array([[0, 0, 0, 0, 0, 0, 0],
       [0, 0, 0, 0, 0, 0, 0],
       [0, 0, 1, 1, 1, 0, 0],
       [0, 0, 1, 1, 1, 0, 0],
       [0, 0, 3, 2, 2, 0, 0],
       [0, 0, 0, 0, 0, 0, 0],
       [0, 0, 0, 0, 0, 0, 0]])
>>> footprint = ndimage.generate_binary_structure(2, 1)
>>> footprint
array([[False,  True, False],
       [ True,  True,  True],
       [False,  True, False]], dtype=bool)
>>> # Diagonally-connected elements are not considered neighbors
>>> ndimage.grey_erosion(a, footprint=footprint)
array([[0, 0, 0, 0, 0, 0, 0],
       [0, 0, 0, 0, 0, 0, 0],
       [0, 0, 1, 1, 1, 0, 0],
       [0, 0, 3, 1, 2, 0, 0],
       [0, 0, 3, 2, 2, 0, 0],
       [0, 0, 0, 0, 0, 0, 0],
       [0, 0, 0, 0, 0, 0, 0]])

相關用法


注:本文由純淨天空篩選整理自scipy.org大神的英文原創作品 scipy.ndimage.grey_erosion。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。