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


Python skimage.feature.corner_harris用法及代碼示例

用法:

skimage.feature.corner_harris(image, method='k', k=0.05, eps=1e-06, sigma=1)

計算哈裏斯角測量響應圖像。

該角點檢測器使用來自自相關矩陣 A 的信息:

A = [(imx**2)   (imx*imy)] = [Axx Axy]
    [(imx*imy)   (imy**2)]   [Axy Ayy]

其中 imx 和 imy 是一階導數,使用高斯濾波器進行平均。然後將角測量定義為:

det(A) - k * trace(A)**2

或者:

2 * det(A) / (trace(A) + eps)

參數

image(M, N) ndarray

輸入圖像。

method{‘k’, ‘eps’},可選

從自相關矩陣計算響應圖像的方法。

k浮點數,可選

將角與邊分開的敏感因子,通常在 [0, 0.2] 範圍內。較小的 k 值會導致檢測到尖角。

eps浮點數,可選

歸一化因子(Noble 的角測量)。

sigma浮點數,可選

用於高斯核的標準偏差,用作自相關矩陣的加權函數。

返回

responsendarray

哈裏斯響應圖像。

參考

1

https://en.wikipedia.org/wiki/Corner_detection

例子

>>> from skimage.feature import corner_harris, corner_peaks
>>> square = np.zeros([10, 10])
>>> square[2:8, 2:8] = 1
>>> square.astype(int)
array([[0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
       [0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
       [0, 0, 1, 1, 1, 1, 1, 1, 0, 0],
       [0, 0, 1, 1, 1, 1, 1, 1, 0, 0],
       [0, 0, 1, 1, 1, 1, 1, 1, 0, 0],
       [0, 0, 1, 1, 1, 1, 1, 1, 0, 0],
       [0, 0, 1, 1, 1, 1, 1, 1, 0, 0],
       [0, 0, 1, 1, 1, 1, 1, 1, 0, 0],
       [0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
       [0, 0, 0, 0, 0, 0, 0, 0, 0, 0]])
>>> corner_peaks(corner_harris(square), min_distance=1)
array([[2, 2],
       [2, 7],
       [7, 2],
       [7, 7]])

相關用法


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