SUSAN邊緣檢測算法性能分析與比較
而Robert算子和Prewitt算子對部分直線邊緣不能檢測出來,圓的邊緣也有部分漏檢情況;Gauss-Laplace算子雖然基本上可以檢測出所有邊緣,但是他的定位效果較差,邊緣象素較寬。
4.2抗噪聲能力好
由于USAN的求和相當于求積分,所以這種算法對噪聲不敏感,而且SUSAN算法不涉及梯度的計算,所以該算法抗噪聲的性能很好。很明顯,如果考慮有獨立同分布的高斯噪聲,只要噪聲小于USAN函數的相似灰度門限值,噪聲就可被忽略。對局部突變的孤立噪聲,即使噪聲的灰度與核相似,只要局部USAN值小于門限g,也不會對邊緣檢測造成影響。因此SUSAN邊緣檢測算法可以用于被噪聲污染的圖像的邊緣檢測。
而其他的邊緣檢測算法,Robert算子、Prewitt算子、Gauss-Laplace算子,以及應用廣泛的Canny算子,由于這些算法都涉及一階梯度,甚至二階梯度的計算,所以他們的抗噪聲能力較差[2-5],圖4、圖5也證明了這一結論。
4.3算法使用靈活
使用控制參數t和g,可以根據具體情況很容易地對不同對比度、不同形狀的圖像通過設置恰當的t和g進行控制。比如圖像的對比度較大,則可選取較大的t值,而圖像的對比度較小,則可選取較小的t值。所以這種算法非常適用于對某些低對比度圖像或目標的識別。
4.4運算量小,速度快
對1幅256×256的圖像,應用SUSAN算法進行計算,對每一點只需做8次加法運算,共需要做256×256×8次加法。
而對于其他的經典的邊緣檢測算法,如果采用歐式距離作為梯度算子,Sobel算子采用兩個3×3的模板,對每一點需要做9次加法,6次乘法,以及1次開方運算,則共需要做256×256×9次加法運算和256×256×6次乘法運算,以及256×256次開方運算。對Gauss-Laplace算子、Priwitt算子以及Canny算子計算量就更大。
4.5 可以檢測邊緣的方向信息
SUSAN算法實際上還可以檢測邊緣的方向信息。具體算法是,對每一個檢測點計算模板內與該點灰度相似的象素集合的重心,檢測點與該重心的連線的矢量垂直與這條邊緣[5]。
5 結 語
SUSAN邊緣檢測算法直接利用圖像灰度相似性的比較,而不需計算梯度,具有算法簡單、定位準確、抗噪聲能力強等特點。因此,非常適于含噪圖像或低對比度灰度圖像的邊緣檢測。如果進一步減小門限g的數值,SUSAN算法還可以用于角點的檢測[1]。
評論