劉生輝 張 瑤
基于MATLAB的圖像配準技術
劉生輝 張 瑤
圖像配準技術在圖像處理中的運用已經(jīng)越來越受到相關領域研究人員及對此感興趣的人的關注,作為其他圖像處理的前提和基礎,圖像配準技術被廣泛用于圖像遙感、圖像融合等多個相關領域。本文在目前應用比較廣泛的三個圖像配準技術中選擇了基于特征點的圖像配準,以MATLAB R2014a軟件為工具,利用Harris角點算法進行像素點的提取并在GUI界面下實現(xiàn)圖像的配準。經(jīng)實驗檢驗Harris算子算法簡單、容易編程,使圖像配準具有較高的穩(wěn)定性和魯棒性,在圖像經(jīng)過幾何變換和灰度處理的情況下,仍能對特征點進行有效的提取,并且配準效率高。
作為其他圖像處理的基礎,圖像配準技術一直被廣大學者研究,圖像配準所用的算法和原理,則是圖像配準是否準確穩(wěn)定的基礎,目前圖像配準所用的理論原理都是基于實際應用提出的。從目前主流的研究方向來看,圖像配準技術可大致分為3大類:其中基于區(qū)域灰度的圖像配準方法能夠利用圖像幾乎全部的灰度信息,這樣可以提高圖像配準的精度和魯棒性,但是基于區(qū)域灰度的圖像配準方法對灰度變化比較敏感,這樣會降低算法的性能。對于基于圖像特征的圖像配準方法,由于在圖像中,圖像的興趣點要比圖像的像素點要少很多,利用像素點進行依次比對的話其計算量是很大的,這樣很耗費人力物力,而利用圖像的興趣點能大大減少匹配過程中的計算量。而基于理解和解釋的圖像配準技術目前還處在初步的發(fā)展階段,沒有得到廣泛的應用。本文利用Harris角點檢測算法在不同的兩幅基準圖片上找到興趣點,然后利用已找到的興趣點進行配準,在進行配準時利用興趣點附近的8個像素點作為配準特征點向量進行配準,最后將結(jié)果利用圖形用戶界面展示。
本系統(tǒng)利用Harris角點檢測算法進行圖像配準實驗,因此原理部分主要將Harris算法的原理和圖像配準原理進行說明。
Harris算子原理
基于Moravec的Moravec角點算子,Harris算子是Harris和Stephens在1988年提出的,它是對Moravec算法的缺陷進行改進后提出的算法。其原理受到信號處理自相關函數(shù)的啟發(fā):在給出一幅圖像某一自相關矩陣時,給出與自相關函數(shù)相聯(lián)系的矩陣M。M矩陣的特征值是自相關函數(shù)的一階曲率,如果兩個曲率值(分別在X,Y方向)都高,那么就認為該點是興趣點。在認識到Moravec角點算子的缺陷以后,Harris和Stephens針對不同缺陷分別采取了以下方法改進。
(1) Harris算子用高斯函數(shù)代替了Moravec角點算子中的二值窗口函數(shù),以減少噪聲影響。
(2).Harris和Stephens用Taylor級數(shù)展開算法去近似選取任意方向,用來改進Moravec角點算子只考慮每隔45o方向的缺陷。
改寫成矩陣的形式為:
說明:Ia為a方向的差分,Ib為b方向的差分,w(a,b)為高斯函數(shù)。
(3)Harris角點算法采用了一種新的興趣點判定方法。矩陣M的兩個特征向量la和lb與矩陣M的主曲率成正比,利用la,lb來表征變化最快和最慢的兩個方向,則有三種情況,la,lb都比較快,la比 lb表征變化快,la比 lb表征變化慢。其中,若la, lb表征變化都很快則表明該點就是興趣點,但是利用此方法來解特征向量需要很大的計算,并且要求兩個特征值的和等于矩陣M的軌跡,兩個特征值的積等于矩陣M的行列式。因此我們用式(5)來判定角點質(zhì)量。(k常取0.04-0.06)
圖1 用矩陣M的特征向量分類圖像像素點
圖2 系統(tǒng)框架
圖像配準是數(shù)字圖像處理的一個重要步驟,為圖像融合、圖像遙感等提供支持。圖像配準是利用兩幅到多幅基準圖像,對其中一幅或幾幅圖像作幾何變換或灰度變換后,使得變換后的圖像與另一幅基準圖像的內(nèi)容在拓撲上相對應。
由此我們可以得出如下結(jié)論:如果兩幅或多幅圖像能進行圖像配準,那么這幾幅圖像各分量之間有一部分或者多個部分在邏輯上是相同的,或者至少是相似的,即相鄰的圖像之間有一部分是可以重合的,這就是實現(xiàn)圖像配準的基本條件。基于此我們可以通過對兩幅圖像的所有像素點進行對比來找到重合的那一部分,但是確定圖像所有像素之間的坐標關系是很復雜的,需要投入的工作量也是巨大的。所以研究者通常所使用的方法是確定一定數(shù)量的同名像素點(即兩幅或多幅圖像中代表相同特征的像素),根據(jù)所采用的圖像之間的數(shù)學模型(在本文中我們使用了Harris角點檢測算法),可以表示圖像中其它所有像素之間的坐標關系,從而完成圖像的配準。
本系統(tǒng)有三個基本模塊,即Harris角點檢測、角點匹配和基于角點檢測的圖像配準,系統(tǒng)框架如圖2所示。Harris角點檢測是圖像配準的基礎,為圖像配準提供依據(jù)。角點匹配為圖像配準做基礎,將圖像中所有的角點用紅色點標記出來,最后圖像配準體現(xiàn)算法正確性和顯示實驗結(jié)果。
Harris角點檢測
Harris角點檢測取目標像素點為中心的一個小部分,計算該部分沿任何方向移動后的灰度變化,并用解析形式表達。當兩個特征值均較小時,表明目標點附近區(qū)域為“平坦區(qū)域”。當特征值一大一小時,表明在“邊緣”兩個值都比較大時為角點。Harris角點響應函數(shù)(CRF)表達式得到:CRF(x,y)=det(M)-k*(trace(M))2,其中,det(M)表示矩陣M 的行列式,trace(M)表示矩陣的軌跡,當目標像素點的CRF值大于給的閾值時,該像素點即為角點。Harris角點檢測流程圖如圖3所示。
其中關鍵的函數(shù)有:
[Points]=kp_harris(im)
輸入?yún)?shù):img1 = rgb2gray(img11); 將彩色圖像轉(zhuǎn)化后的灰度圖像1。
img2 = rgb2gray(img21); 將彩色圖像轉(zhuǎn)化后的灰度圖像2。
輸出參數(shù):points 輸出圖像的Harris角點。
函數(shù)功能:檢測圖像的Harris角點。
圖3
圖像配準
當Harris角點檢測完成后,就要進行圖像配準,即匹配過程。匹配過程是先得到角點對于該圖像的位置坐標,然后以該坐標為中心,分別取附近的8個像素值,然后與另一幅圖像進行匹配,找出距離最小的點作為匹配點。之后將圖一中的角點與圖二中的所有角點相減求最小誤差值,之后重復該操作,可得到兩幅圖像的最佳匹配點,圖像配準流程圖如圖4所示。
其中關鍵的函數(shù)有:
[draw2(img1,img2,pt1,pt2,result)]
輸入?yún)?shù):img11 讀入第一幅圖像。
img21 讀入第二幅圖像。
輸出參數(shù):match 角點匹配子程序。
draw2 顯示匹配到的特征點。
函數(shù)功能:通過角點匹配子程序匹配兩幅圖的特征點,并利用draw2函數(shù)在圖像上表示出來。
圖4
系統(tǒng)介紹
本實驗使用MATLAB2014a軟件實現(xiàn),利用MATLAB下的GUI界面對結(jié)果進行展示,有助于交互式使用,在圖像配準的過程中,先提取圖像的灰度圖像并且將圖像中所有符合要求的角點展示以圖框的形式分別顯示出來,再將配準結(jié)果在GUI界面顯示,有助于理解和驗證。在實現(xiàn)本實驗的同時對客戶端添加了一些圖像處理的其他基本功能,方便大家的學習。本次實驗所用的圖片均來源于千圖網(wǎng)(http://www.58pic.com/),只用于實驗結(jié)果的展示,不作為他用。
圖5
圖6
圖7
圖8
實驗結(jié)果
實驗主界面如圖5所示。
首先我們利用角點檢測算法單獨提取實驗圖中的所有Harris角點,首先是將圖像轉(zhuǎn)化為灰度圖像,再利用Harris角點算法找出所有角點并將其用紅色的點標識在圖像上,實驗結(jié)果顯示出了圖像中符合條件的特征點,如圖6、圖7和圖8所示。
為了便于匹配和研究的方便,在圖9和圖10中,對于每個成功配準的興趣點以數(shù)字代號進行標識,從圖中可以很清楚的看到兩幅圖片中以相同代號標識的興趣點進行了配準,并將實驗結(jié)果利用MATLAB圖形用戶界面進行展示,實驗結(jié)果表明利用Harris角點算法進行圖像配準可以提高配準的穩(wěn)定性和準確度。
圖9
圖10
圖11
為了使實驗更具準確性,我們另外選取了兩幅已知匹配角點較少的圖像進行實驗驗證,驗證結(jié)果如圖11,實驗結(jié)果表明,雖然圖中依然有很多被檢測到的角點,但是兩幅圖像匹配到的點只有兩個,說明Harris角點算法準確性較強。
利用Harris角點算法進行圖像配準,降低了檢測
失誤的機率,配準位置準確,檢測的興趣點合理有效。MATLAB R2014a軟件作為實現(xiàn)實驗的平臺,操作方便、代碼清晰、交互性強,對實驗的順利完成提供了有效的保障。
致謝
本文由北京市教委面上項目“基于嵌入式多核處理器的圖像自動標注”(KM201510009006)和北京市大學生科學研究與創(chuàng)業(yè)行動計劃項目(15006)“數(shù)字圖像處理雙語教學仿真平臺”資助,在此表示感謝!
10.3969/j.issn.1001-8972.2015.24.017