劉 瑩,張久東,周衛(wèi)紅
(云南民族大學數(shù)學與計算機科學學院,云南昆明650031)
Harris角點檢測算法的優(yōu)化研究
劉 瑩,張久東,周衛(wèi)紅
(云南民族大學數(shù)學與計算機科學學院,云南昆明650031)
在研究Harris角點檢測算法時,發(fā)現(xiàn)檢測出的角點常常會受到噪聲的影響.通過優(yōu)化Harris角點響應(yīng)函數(shù),避免了角點響應(yīng)函數(shù)中k值的影響,提高了每個目標像素點的響應(yīng)值精度.把該方法運用到人臉特征的檢測中,實驗結(jié)果表明,該算法和傳統(tǒng)的Harris角點檢測算法相比抗噪能力有較大提高.
特征點檢測;人臉識別;噪聲;響應(yīng)函數(shù)
特征點檢測在圖像匹配與配準、目標描述、物體識別等方面得到了廣泛的應(yīng)用,是計算機視覺研究中的熱點.現(xiàn)實世界中,人類通過人眼視覺系統(tǒng)來識別物體和不同的人,這個看似簡單的過程對計算機來說卻非常地困難,計算機要先通過對圖像進行數(shù)據(jù)分析,然后,從中提取出準確、穩(wěn)定的特征信息來進行識別.所以,特征點的提取直接影響到圖像識別的正確率和速率,角點作為特征點的一種,包含了大量的圖像信息.目前,特征點提取的算法大概可以分為2種:一種是Kitchen[1]提出的基于輪廓線的方法,另一種就是基于圖像灰度值的方法,如Susan法[2]、Harris法[3]等.Harris 檢測算法,不受攝像機姿態(tài)以及光照的影響,是效果比較好的一種算法,但是它對噪聲卻比較敏感.
Harris角點檢測算子是 Moravec算子的改進[4-7].Moravec算子是 Moravce 于 1977 年提出的利用灰度方差提取特征點的算子,該算法以目標像素點為中心選取一個二值窗口,計算 0°,45°,90°,135°四個方向的灰度差平方和,取最小值為該像素點的興趣值.Harris在此基礎(chǔ)上提出了用高斯函數(shù)代替二值窗口函數(shù),對每一個目標像素點,用Taylor展開去近似任意方向,以此得出興趣值.假設(shè)目標像素點的坐標為(x,y),在x方向上和在y方向上移動的距離分別是u和v,那么,該像素點的灰度變換度量的計算公式如下表示:
寫成矩陣形式:
其中,Ex,y為窗口內(nèi)的灰度變化度量;wx,y為窗口函數(shù),一般定義為 wx,y=e(x2+y2)/σ2;I為圖像灰度函數(shù),Ix為 x方向的差分,Iy為y方向的差分,o(u2+v2)是移動距離的無窮小量.矩陣M是目標像素點的自相關(guān)矩陣,它的2個特征值分別為λ1和λ2,這2個特征值與矩陣M的主曲率成正比.當2個特征值均較小時,表明目標點附近區(qū)域為“平坦區(qū)域”;特征值一大一小時,表明特征點位于“邊緣”上;只有當2個特征值均比較大時,沿任何方向的移動均將導致灰度的劇烈變化.由此而得到Harris的角點響應(yīng)函數(shù)R:
其中,det(M)=λ1λ2表示矩陣 M 的行列式,trace(M)=λ1+λ2表示矩陣的跡,k的取值范圍是0.04~0.06.當目標像素點的R值大于給定的閾值時,該像素點即為角點.
Harris算法雖然較Moravec算子是有所改進,但是仍然存在以下不足[8-10]:①角點提取的質(zhì)量和數(shù)量很大程度上取決于閾值的設(shè)定,閾值大會丟失一部分角點,閾值小會降低角點的質(zhì)量,同時,對噪聲也比較敏感;②檢測過程中,高斯平滑函數(shù)的窗口大小不易控制,窗口過小,受噪聲的影響就大,窗口大則會使角點的位置產(chǎn)生偏移,增加算法的計算量;③若為了降低噪聲的影響,用無限光滑的高斯函數(shù)做濾波,又會由于過平滑的原因?qū)е陆屈c信息丟失.
Harris角點檢測算法存在的不足,可以通過優(yōu)化公式(4)來改進.公式(4)中的k值有一個取值范圍,不同的k值,算法的效果也是不同的.但是現(xiàn)在這個角點響應(yīng)函數(shù)仍然在使用,是因為如果k值能夠選取恰當?shù)脑挘惴ㄒ部梢赃_到很好的效果.而這個恰當?shù)膋值的選取,要經(jīng)過大量的實驗進行調(diào)試驗證.要避免上述問題,需要找到一個不受k值影響的響應(yīng)函數(shù)來替代公式(4).
公式(4)中的響應(yīng)函數(shù)R是關(guān)于自相關(guān)矩陣M的函數(shù),與M的2個特征向量λ1λ2有關(guān).某一個目標像素點的自相關(guān)矩陣M的2個特征值 λ1和λ2(λ1,λ2≥0 ),如果滿足條件λ1≈λ2,那么的值趨于0,而且有0≤R**≤1.注意到R**和特征多項式det(λ-M)有關(guān),且.假設(shè)R*=1-R**,仍然成立0≤R*≤1.由此可以得到關(guān)于R*的表達式:
以(5)式作為檢測時的響應(yīng)函數(shù)時,當R*→1時,該點可以判斷為角點;當R*→0時,該點即為邊緣點.但是這個表達式仍存在一些缺陷,在2個特征值相等和不相等的時候,R*值是不同的.為了避免這個問題,通常會在分母部分加上一個參數(shù),得到一個更穩(wěn)健的表達式,如下:
其中ε為任意小的正數(shù),式(6)中沒有k值,避免了因k值選擇的隨機性對響應(yīng)函數(shù)的影響.如果其中一個特征值趨于0,那么R也將趨于0;如果2個特征值比較接近而且都比較小,R值仍然趨于0;如果2個特征向量的值都比較大時,R值就會變大.以上優(yōu)化后的算法步驟如下:
Step1:對每個像素點計算相關(guān)矩陣M;
Step2:計算每個像素點的角點響應(yīng)值R*;
Step3:在高斯窗口內(nèi)尋找極大值,若R*大于閾值則視為角點.
本文用式(6)代替原Harris中的角點響應(yīng)函數(shù),即式(4),不僅不改變R值與每個像素點的自相關(guān)性,保留了原算法的優(yōu)點,而且同一個目標點優(yōu)化后的響應(yīng)值和之前的響應(yīng)值相比具有更高的精度,這一特性,使本文的算法在進行角點檢測時,找到了之前漏檢的角點,當有噪聲干擾時,弱化了噪聲對目標像素點的響應(yīng)值的影響,從而在仿真實驗中得到了更多穩(wěn)定的角點,也降低了噪聲對角點檢測的影響.
仿真實驗是在Matlab 7.0的環(huán)境下運行,圖1是原始圖片檢測到的特征點,左邊是文獻[3]中的Harris算法結(jié)果,右邊是本文算法結(jié)果.可以看出,本文算法在提高了響應(yīng)函數(shù)的精確度之后明顯比原Harris算法得到了更多穩(wěn)定的角點.
為了檢測算法的抗噪性,對原始圖片分別加入均值為0,方差為0.01;均值為0,方差為0.02的高斯噪聲,以及疊加密度為0.04的椒鹽噪聲.之后用這2種算法對加入噪聲后的圖片進行角點檢測.圖2為原Harris算法檢測到的角點,圖3為本文算法檢測到的角點.
從圖2和圖3可以看出,Harris算法在圖像加入噪聲后檢測到的角點數(shù)目比加入噪聲之前明顯增加,而本文的算法受噪聲的影響卻要小的多,這一結(jié)果也在表1、2中反映出來.表1是2種算法分別對人臉圖片和加入噪聲后的圖片檢測到的角點數(shù)量.表2為噪聲對2種算法的影響率(因加入噪聲而多出的角點數(shù)目與原圖角點數(shù)目的比率).
表1 2種算法檢測到的角點數(shù)目
從表1和表2的比對可以看出,原Harris角點檢測算法在沒有噪聲干擾的情況下,檢測到的角點非常少,而加入噪聲之后角點的數(shù)目急劇增加.經(jīng)過改進之后,受噪聲的影響率沒有超過0.3,這比原Harris算法的影響率已經(jīng)降低了很多.本文采用的角點響應(yīng)函數(shù),使每個目標點的R值降低了因加入噪聲而大幅度波動的影響,在相同的閾值下,檢測到更多穩(wěn)定的角點的同時,也有效地體現(xiàn)了抗噪性能的提高.
表2 加入噪聲對檢測的影響率
Harris角點檢測算法在實際應(yīng)用中易受噪聲的干擾,已經(jīng)不能滿足要求.怎樣得到大量的且不受噪聲影響的特征點就顯得很重要.本文通過改進角點響應(yīng)函數(shù),提高在檢測時每個目標點的精度,在進行特征點判定時,降低了噪聲的影響,一定程度了解決了上述問題.
[1]KITCHEN L,ROSENFELD A.Gray level corner detection[J].Pattern Recognition Letter,1982,3(1):95 -102.
[2]SMITH S M,BRADY M.A new approach to low level image processing[J].International Journal of Computer Vision,1997,23(1):45 -78.
[3]HARRIS C,STEPHENS M.A combined corner and edge detector[C]//Fourth Alvey Vision Conference.1998:147-151.
[4]毛雁明,蘭美輝.一種改進的基于Harris的角點檢測方法[J].計算機技術(shù)與發(fā)展.2009,5(5):127-129.
[5]NOBLE A.Descriptions of image surface[D].Oxford University,1989.
[6]李霞,趙宇明.基于特征的人臉分類算法研究[J].微型電腦應(yīng)用.2010,26(4):60-64.
[7]邱建國,張建國,李凱.基于Harris與Sift算法的圖像匹配方法[J].測試技術(shù)學報.2009,23(3):271-274.
[8]何應(yīng)輝,蔡光程.角點檢測的一種新方法[J].云南民族大學學報:自然科學版.2007,16(1):45-47.
[9]解洪勝,王連國.基于DT-CWT和SVM的人臉圖像集成分類方法[J].云南民族大學學報:自然科學版,2010,19(5):313 -316.
[10]何應(yīng)輝,蔡光程,黃曉昆.改進的基于模板的角點檢測算法[J].云南民族大學學報:自然科學版,2010,19(4):309-312.
(責任編輯莊紅林)
Optimization of Harris Corner Detection Algorithm
LIU Ying,ZHANG Jiu-dong,ZHOU Wei-hong
(School of Mathematics and Computer Science,Yunnan University of Nationalities,Kunming 650031,China)
This research focuses on the Harris corner detection algorithm,and finds that some corners are often influenced by noise.In this research,the response function of corner detection is optimized to avoid the influence of k.The precision of each target pixels′feature response function is improved.When used to detect face features,the experimental results show that the anti- noise ability of this algorithm is greatly enhanced if compared with the Harris corner detection.
feature detection,face recognition,noise,response function
TP 391
A
1672-8513(2011)02-0136-03
10.3969/j.issn.1672-8513.2011.02.015
2010-11-01.
云南省教育廳研究生科學研究基金(09J0061,2010J071).
劉瑩(1983-),女,碩士研究生.主要研究方向:數(shù)字圖像處理.
周衛(wèi)紅(1969-),男,碩士,副教授.主要研究方向:數(shù)字圖像處理.