我有這張圖片(對不起尺寸): 
編輯:這只是我房間的一個簡單的墻角,沒什么特別的......
我試圖檢測到確切的角落,但到目前為止未能這樣做。我嘗試使用灰度和雙邊、掩碼和精明,當然還有一些 openCV 角點演算法的組合,如 Harris、EigenValsAndVecs、MinEigenVal 等等......到目前為止,我發現了很多點,或者沒有。
請問有什么想法嗎?
謝謝
uj5u.com熱心網友回復:
這看起來相當簡單。首先計算梯度幅度,它將找到三個大部分均勻區域之間的線(b在下圖中),然后應用類似 Harris 角檢測器(或任何其他種類也可以)來找到交點在直線之間(c在下圖中)。對于高斯梯度幅度和 Harris 檢測器中的平滑,我使用了 4 的 sigma。

我在 MATLAB 中很快做了這個測驗,因為它是開放的,但你可以訪問我使用的相同DIPlib演算法(披露:我是 DIPlib 的作者)。它看起來像這樣:
import diplib as dip
a = dip.ImageRead('corner.jpg') # you can use OpenCV or PIL or whatever else for reading too
b = dip.GradientMagnitude(a, sigmas=4)
c = dip.HarrisCornerDetector(b, sigmas=4)
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/321310.html
