摘 要:在研究Harris角點檢測算法時發現由于該算法采用高斯低通濾波進行平滑,因而對一些圖像進行角點提取時,存在角點信息丟失和位置偏移等現象,而B樣條函數可以收斂于高斯函數,并具有良好的逼近能力和緊支性等一些優秀的性質,從而基于B樣條函數提出了一種改進的Harris角點提取方法。實驗表明,該方法對提取角點非常有效。
關鍵詞:B樣條函數;角點檢測;Harris角點檢測
中圖法分類號:TP319.4文獻標識碼:A
文章編號:1001—3695(2007)02—0192—02
角點是圖像的一個重要的局部特征,它決定了圖像中目標的形狀,所以在圖像匹配、目標描述與識別、運動估計以及目標跟蹤等領域,角點提取具有十分重要的意義。在計算機視覺和圖像處理中,對于角點的定義有不同的表述,如圖像邊界上曲率足夠高的點[1];圖像邊界上曲率變化明顯的點[2];圖像邊界方向變化不連續的點[3];圖像中梯度值和梯度變化率都很高的點[4]等。由這些不同的定義可以看出,角點檢測的方法也是不盡相同的,如利用方向導數來檢測角點[5];直接以灰度信息來檢測角點[1]等。目前角點檢測方法可以分為兩類:①基于圖像邊緣特征。該方法有三個步驟,即圖像預分割、輪廓鏈碼提取和角點檢測。②直接利用圖像的灰度信息進行角點檢測。該方法主要通過計算曲率及梯度來達到檢測角點的目的,它通過計算邊緣的曲率來判斷角點的存在性。角點計算數值的大小不僅與邊緣強度有關,而且與邊緣方向的變化率有關。Harris角點檢測是一種直接基于灰度圖像的角點提取算法,然而該算法主要存在下列問題:①對噪聲比較敏感;②角點信息易丟失;③角點位置偏移。基于上述問題,本文提出了基于B樣條的改進型Harris角點檢測算法。該算法選擇具有低通特性的B樣條函數作為平滑函數。B樣條函數具有階數可調性,階數取值增大,其平滑性能隨之變好,能夠很好地抑制噪聲;當階數取值比較小時,其逼近性比較好,能夠很好地定位角點。因此本文用B樣條函數代替高斯函數來設計濾波器。與Harris算法相比,改進后的算法能夠有效地檢測出圖像的角點,并且得到了較為準確的角點位置。
1B樣條函數與高斯函數的比較
1.1 高斯函數存在的問題
在運用和研究中發現用高斯函數對圖像作平滑濾波存在著兩個問題:
(2)圖像平滑的主要目的是提高信噪比,消除噪聲。然而在對圖像作高斯平滑時,邊緣作為高頻成分將被平滑掉,而且有些邊緣變成了緩變的邊緣,在圖像的直方圖表現上受到壓縮,這樣在非極大值抑制時,角點就有可能丟失。
鑒于以上兩個問題,提出了如下的改進算法:平滑濾波器不用高斯濾波器,而選擇中心B樣條濾波器。下面將進一步分析中心B樣條函數與高斯函數作為濾波器的優劣。
1.2 B樣條函數的定義及性質
上述定理和推論說明了當中心B樣條函數的階數趨于無窮時,中心B樣條函數收斂用于高斯函數,其導數收斂于高斯函數的導數。
該定理表明:如果只需要平滑后的一階導數,那么最佳的卷積核是四階中心B樣條函數,而不是高斯函數。因此如果圖像的信噪比比較高,則可以選擇階數比較低的樣條函數,反之選擇階數較高的樣條函數。如果選擇高斯函數,則無論圖像的信噪比高或低,都一樣地去平滑,這樣就不能達到平滑與逼近的最佳組合。因此由上述的分析可知,根據不同的需要,B樣條函數的階數具有可調性,并且去噪時不會出現因小波的截斷而帶來的負面效應,因此中心B樣條函數作為濾波器與高斯函數相比具有更好的效果。
該方法采用三次樣條函數作為一個平滑函數,與Harris角點檢測[8]中用的高斯函數窗口相比,更能突顯出角點信息,當階數為4時B樣條已經很接近最優下界了,并且B樣條的緊支性質優于高斯函數[9]。
2 Harris算法的局限及其改進算法
2.1 Harris算法的局限
Harris角點檢測算法是在Moravec 算法基礎上提出的。Moravec 角點檢測算法的思想是:在圖像中設計一個局部檢測窗口,當該窗口沿各個方向作微小移動時,考查窗口的平均能量變化,當該能量變化值超過設定的閾值時,就將窗口的中心像素點提取為角點。記像素點(x,y)的灰度為f(x,y),圖像的每個像素點(x,y)移動(u,v)的灰度強度變化表示為
雖然Harris 角點檢測算法具有旋轉和仿射不變性,但仍然存在以下不足:①Harris角點檢測定位精度較差, 同時還可能漏掉一些實際的角點;②Harris角點檢測雖然采用了可調的高斯平滑窗口,但實際運用中高斯窗口的大小不易控制。若選用較小高斯平滑窗口,則會因為邊緣細節的影響導致眾多偽角點的出現;若用較大的高斯平滑窗口,則會因為卷積的圓角效應使得角點的位置產生較大的偏移,而且增加了算法的計算量。
通過設置閾值消除偽角點并執行非極大值抑制確定角點,即將滿足C(x,y)>threshold的像素點(x,y)確定為角點。采用上述響應函數避免了M的特征值分解,與Harris角點檢測[8]中提出的響應函數R=det(M)-KTr(M)2相比,它避免參數K的選取,減少了K選擇的隨機性,本文所采用的響應函數更具有實用性,在文獻[10]中得到了證明。實驗也表明,采用改進算法中的響應函數能取得更好的檢測結果。
3 實驗結果和分析
在本節中,用實驗論證了上述算法的有效性,圖1、圖2表示將改進算法應用于兩幅標準測試圖像時的結果。實驗結果顯示,改進方法的角點定位比較準確并且能檢測到更多的角點,得到了比Harris算法更好的檢測結果。
4 結論
基于B樣條平滑的改進型Harris角點檢測方法較好地克服了高斯低通濾波器存在的角點丟失和位置偏移等問題,并采用一種新的響應函數。這種函數比Harris角點檢測中的響應函數更具有實用性,它同時也克服了參數K的選擇。改進的方法能有效地檢測角點,并取得了比較滿意的結果。
本文中所涉及到的圖表、注解、公式等內容請以PDF格式閱讀原文。