肖映彩,徐光輝,朱 森
(中國(guó)人民解放軍理工大學(xué) 通信工程學(xué)院,江蘇 南京 210007)
無(wú)人機(jī)航拍圖像拼接的研究與實(shí)現(xiàn)*
肖映彩,徐光輝,朱 森
(中國(guó)人民解放軍理工大學(xué) 通信工程學(xué)院,江蘇 南京 210007)
針對(duì)無(wú)人機(jī)航拍圖像的特點(diǎn),采用基于圖像特征的拼接技術(shù),實(shí)現(xiàn)了無(wú)人機(jī)航拍圖像的無(wú)縫拼接。首先提出一種改進(jìn)的自適應(yīng)閾值的Harris算法來(lái)提取圖像的特征點(diǎn),并用歸一化互相關(guān)函數(shù)對(duì)特征點(diǎn)進(jìn)行雙向匹配,采用RANSAC算法剔除誤匹配點(diǎn)對(duì)并估算出變換模型,最后用漸入漸出的加權(quán)平均融合法融合圖像。實(shí)驗(yàn)結(jié)果表明,本文采用的方法有很好的穩(wěn)定性和魯棒性,能很好地實(shí)現(xiàn)無(wú)人機(jī)航拍圖像的拼接。
無(wú)人機(jī);圖像拼接;Harris算法;RANSAC
近年來(lái),隨著無(wú)人機(jī)技術(shù)的發(fā)展,無(wú)人機(jī)在高空航拍、電力巡檢、邊防巡邏、安全監(jiān)控等領(lǐng)域得到了廣泛應(yīng)用[1]。其中,基于無(wú)人機(jī)航拍視頻、圖像的應(yīng)用越來(lái)越多,其應(yīng)用價(jià)值也越來(lái)越大。把無(wú)人機(jī)航拍的圖像序列進(jìn)行拼接,獲得某個(gè)局部區(qū)域的全景圖像,這在地質(zhì)勘察、環(huán)境監(jiān)測(cè)、軍事指揮等活動(dòng)中具有重要意義。
圖像拼接一般包括三個(gè)步驟:特征提取、特征匹配和圖像融合[2]。根據(jù)圖像特征匹配的方法,可將圖像拼接技術(shù)分為三類(lèi):基于圖像灰度的方法、基于變換域的方法和基于圖像特征的方法[3]?;趫D像特征的拼接方法運(yùn)算量較其他兩種方法低,并且具有良好的精確度和魯棒性,能很好地處理無(wú)人機(jī)航拍圖像中存在的變形、噪聲和亮度變化等問(wèn)題。
本文采用基于圖像特征的拼接技術(shù),利用改進(jìn)的Harris算法提取圖像的特征點(diǎn),并用歸一化互相關(guān)函數(shù)對(duì)特征點(diǎn)進(jìn)行雙向匹配,通過(guò)RANSAC算法剔除誤匹配點(diǎn)對(duì)并估算出變換模型,最后用漸入漸出的加權(quán)平均圖像融合法,實(shí)現(xiàn)了無(wú)人機(jī)航拍圖像的無(wú)縫拼接。
1.1特征點(diǎn)提取
1.1.1常用的特征點(diǎn)提取算法比較
目前,應(yīng)用比較廣泛的特征點(diǎn)提取算法有Moravec、Harris、SUSAN、SURF、SIFT等算法。Moravec算法對(duì)圖像邊緣、孤立點(diǎn)和噪聲特別敏感,檢測(cè)出的偽角點(diǎn)較多[4]。文獻(xiàn)[5]從穩(wěn)定性、抗噪聲能力和算法復(fù)雜度三個(gè)方面對(duì)Harris算法和SUSAN算法進(jìn)行比較。實(shí)驗(yàn)結(jié)果表明,Harris算法在這三項(xiàng)指標(biāo)上都優(yōu)于SUSAN算法。文獻(xiàn)[6]從計(jì)算復(fù)雜度和精確性?xún)煞矫姹容^Harris、SURF等幾種特征點(diǎn)提取算法。測(cè)試結(jié)果表明,SURF雖然具有較高的精確度,但是運(yùn)算速度遠(yuǎn)遠(yuǎn)不如Harris算法。文獻(xiàn)[7]則從圖像拼接的應(yīng)用中比較了Harris和SIFT算法。SIFT算法具有良好的尺度和旋轉(zhuǎn)不變性,但是算法復(fù)雜運(yùn)算速度慢;而Harris算法運(yùn)算速度快且在旋轉(zhuǎn)圖像的拼接上效果更好。由于Harris算法計(jì)算簡(jiǎn)單、穩(wěn)定性高、具有很好的魯棒性,即使圖像存在旋轉(zhuǎn)、亮度變化和干擾噪聲,也能精確檢測(cè)出圖像中的特征點(diǎn),因此本文采用Harris算法提取待拼接圖像的特征點(diǎn)。
1.1.2Harris算法的原理
Harris特征點(diǎn)檢測(cè)算法是C.Harris和M.Stephens在Moravec算法的基礎(chǔ)上,提出的一種經(jīng)典的基于信號(hào)的特征點(diǎn)提取算法[8]。Harris算法的原理是在圖像中的一個(gè)小的觀察窗口內(nèi),在特征點(diǎn)處窗口沿任意方向移動(dòng)微小的距離都會(huì)觀察到圖像灰度值的劇烈變化。
定義窗口內(nèi)灰度值的變化量:
式中w(x,y)為窗口函數(shù)。
為了較好地抑制噪聲,窗口函數(shù)選用高斯函數(shù):
對(duì)式(1)用泰勒級(jí)數(shù)展開(kāi),取一階近似可得:
式中,
Ix、Iy分別為圖像在x和y方向上的一階偏導(dǎo)數(shù):
令:
則,
設(shè)λ1、λ2分別是矩陣M的兩個(gè)特征值,根據(jù)λ1和λ2的值可以判斷觀察窗口內(nèi)灰度變化量E的變化情況,可以分為以下三種情況:
(1)λ1和λ2都很小,說(shuō)明是在圖像的平坦區(qū)域,窗口沿任意方向移動(dòng)E的變化都很小。
(2)λ1和E一個(gè)很大而另一個(gè)很小,說(shuō)明此時(shí)是在圖像的邊緣區(qū)域,窗口沿邊緣方向移動(dòng)E變化很小,而沿邊緣法線方向E變化很大。
(3)λ1和λ2都很大,說(shuō)明此時(shí)是在圖像中的角點(diǎn)位置,窗口沿任意方向移動(dòng)都會(huì)引起E值的劇烈變化。
根據(jù)上述原理,Harris特征點(diǎn)檢測(cè)算法的實(shí)現(xiàn)過(guò)程可以概括為以下幾步:
(1)根據(jù)式(5)、式(6),計(jì)算圖像在水平和垂直方向上的一階偏導(dǎo)數(shù)Ix、Iy。
(2)根據(jù)式(7),用均值為零的離散二維高斯函數(shù)對(duì)Ix和Iy濾波,計(jì)算矩陣M中每個(gè)元素的值。
(3)定義角點(diǎn)響應(yīng)函數(shù):
式中Det(M)為M的行列式,Trace(M)為M的跡,k為經(jīng)驗(yàn)值,一般取0.04~0.06。
根據(jù)式(9)計(jì)算圖像中每個(gè)像素的響應(yīng)值R。如果R為當(dāng)前窗口的局部最大值,則把該點(diǎn)作為候選點(diǎn)。
(4)如果候選點(diǎn)的響應(yīng)值R大于設(shè)定的閾值T,則把該點(diǎn)作為有效特征點(diǎn)保留。
1.1.3Harris算法的改進(jìn)
Harris算法根據(jù)像素點(diǎn)的角點(diǎn)響應(yīng)值R是否為局部最大值且是否大于手動(dòng)設(shè)定的閾值T來(lái)判斷該像素點(diǎn)是否為特征點(diǎn)。手動(dòng)設(shè)置閾值的方法只能根據(jù)圖像的特征不斷試驗(yàn)調(diào)整,很難找到適合不同圖像的閾值,即不具有自適應(yīng)性。閾值決定了特征點(diǎn)的數(shù)量,閾值設(shè)置的低則特征點(diǎn)數(shù)量多,反之特征點(diǎn)數(shù)量少。在圖像拼接中,如果特征點(diǎn)數(shù)量少,則有可能造成待拼接的兩幅圖像成功匹配的特征點(diǎn)對(duì)很少,從而使估算出的變換矩陣誤差較大,最終導(dǎo)致拼接后的圖像效果不理想;反之,如果特征點(diǎn)較多,則會(huì)增加特征點(diǎn)匹配過(guò)程中的冗余計(jì)算量。
為了解決上述閾值的設(shè)置問(wèn)題,可以采用一種自適應(yīng)的閾值設(shè)置方法:將圖像中所有角點(diǎn)響應(yīng)值R的最大值Rmax作為參考,將閾值設(shè)置為cRmax,c的取值范圍為0.01~0.05。采用這種方法,就可以不用針對(duì)每幅圖像手動(dòng)調(diào)整閾值,具有較好的自適應(yīng)性。
1.2特征點(diǎn)匹配
特征點(diǎn)匹配基于歸一化互相關(guān)函數(shù)來(lái)實(shí)現(xiàn)。該方法以特征點(diǎn)相關(guān)窗口內(nèi)所有像素點(diǎn)灰度值的歸一化互相關(guān)系數(shù)作為判斷依據(jù)來(lái)實(shí)現(xiàn)特征點(diǎn)匹配[9]。一個(gè)(2N+1)×(2N+1)相關(guān)窗口內(nèi)的歸一化互相關(guān)函數(shù)定義如下:
式中I1和I2表示待拼接的圖像分別表示圖像I1和I2在窗口內(nèi)的平均灰度。當(dāng)NCC=1時(shí),表示兩幅圖像的該對(duì)特征點(diǎn)完全相關(guān);NCC=0時(shí),表示該對(duì)特征點(diǎn)相互獨(dú)立。實(shí)際應(yīng)用中,可以設(shè)定一個(gè)閾值。當(dāng)NCC的值大于該閾值時(shí),則認(rèn)為這對(duì)特征點(diǎn)是匹配的。
為了提高匹配精度,本文采用雙向的歸一化互相關(guān)方法實(shí)現(xiàn)特征點(diǎn)的匹配,具體實(shí)現(xiàn)過(guò)程如下:
(1)對(duì)于圖像I1中的一個(gè)特征點(diǎn),根據(jù)式(12)計(jì)算與I2中每個(gè)特征點(diǎn)的NCC值,保留最大值。如果該最大值大于設(shè)定的閾值,則記錄與該特征點(diǎn)匹配的I2中的特征點(diǎn)。按照此方法在I2中尋找I1中每個(gè)特征點(diǎn)的匹配點(diǎn),得到一個(gè)匹配點(diǎn)集合S1。
(2)按照第一步的方法,對(duì)S1中的每個(gè)點(diǎn)在I1中尋找匹配點(diǎn),得到另一個(gè)匹配集合S2。
(3)如果S1和S2中有相互對(duì)應(yīng)的點(diǎn),即I1中的某一特征點(diǎn)a1,通過(guò)步驟(1)計(jì)算出的匹配點(diǎn)為I2中的點(diǎn)a2,而點(diǎn)a2通過(guò)步驟(2)計(jì)算出的匹配點(diǎn)為a1,則認(rèn)為特征點(diǎn)a1和a2是一對(duì)相互匹配的點(diǎn)。
與單向匹配的方法相比,雙向匹配能夠更加精確地找出待拼接的兩幅圖像中相互匹配的特征點(diǎn)對(duì)。
1.3變換模型估計(jì)
待拼接的兩幅圖像在確定匹配的特征點(diǎn)對(duì)后,將其中一幅圖像I1作為參考圖像,另一幅圖像I2作為待配準(zhǔn)圖像。拼接前,需尋找一個(gè)合適的坐標(biāo)變換模型,利用該模型建立I2和I1之間的變換關(guān)系。I1和I2之間的變換模型可以用投影變換模型描述:
式中,H為變換矩陣,(x1,y1)為I1中匹配點(diǎn)的坐標(biāo),(x2, y2)為I2中匹配點(diǎn)的坐標(biāo)。矩陣H中有8個(gè)自由度,因此至少需要用4對(duì)匹配點(diǎn)才能求出H中的全部參數(shù)。
用雙向的歸一化互相關(guān)方法找到的特征點(diǎn)對(duì)還可能會(huì)存在一些誤匹配點(diǎn)對(duì),這時(shí)可以通過(guò)RANSAC(隨機(jī)抽樣一致性)算法把這些誤匹配點(diǎn)剔除。RANSAC算法是一種魯棒的數(shù)據(jù)擬合方法,被廣泛用于圖像特征點(diǎn)匹配和變換模型的估計(jì)中。用該算法可以有效剔除誤匹配點(diǎn)對(duì),并估計(jì)出最佳變換模型。具體實(shí)現(xiàn)步驟如下:
(1)從兩幅圖像的匹配點(diǎn)對(duì)中隨機(jī)抽取4對(duì)匹配點(diǎn),并保證每幅圖像中的任意3點(diǎn)不在同一條直線上。
(2)利用抽取的4對(duì)匹配點(diǎn)求解變換矩陣H。
(3)根據(jù)變換矩陣H,計(jì)算每一對(duì)匹配點(diǎn)的距離誤差。如果誤差小于設(shè)定的閾值,則判斷該匹配點(diǎn)對(duì)為內(nèi)點(diǎn),同時(shí)記錄內(nèi)點(diǎn)個(gè)數(shù);如果內(nèi)點(diǎn)數(shù)滿足期望,則用所有局內(nèi)點(diǎn)重新估計(jì)模型,求取更精確的變換矩陣H。距離誤差的計(jì)算公式為:
式中,m1i和m2i是一對(duì)匹配點(diǎn),由變換矩陣H計(jì)算出的在對(duì)應(yīng)圖像中的投影點(diǎn)分別為||·||則表示歐氏距離。
(4)重復(fù)執(zhí)行上述過(guò)程足夠多次。
(5)選擇內(nèi)點(diǎn)數(shù)最多的模型,得到最終的變換矩陣H。
1.4圖像融合
圖像融合的目的是選擇合適的方法來(lái)完成圖像拼接,避免拼接后的圖像出現(xiàn)明顯的拼接縫隙,甚至有模糊和失真等現(xiàn)象。目前,常用的圖像融合技術(shù)有直接平均融合法和加權(quán)平均融合法。采用直接平均融合法拼接出來(lái)的圖像往往會(huì)有比較明顯的拼接痕跡[3]。
本文采用漸入漸出的加權(quán)平均融合法進(jìn)行圖像融合。令I(lǐng)1和I2表示待拼接的兩幅圖像,I表示拼接后的圖像,則用該方法融合的圖像可以描述如下:
式中,w1和w2表示重疊區(qū)域的權(quán)重,它們與重疊區(qū)域的寬度width滿足如下關(guān)系:
其中0<w1,w2<1。
在重疊區(qū)域,w1從1漸變?yōu)?,w2從0漸變?yōu)?,這樣就可以在圖像融合過(guò)程中,重疊區(qū)域由I1平滑地過(guò)渡到I2。采用這種方法拼接的圖像能有效消除拼接縫隙,實(shí)現(xiàn)無(wú)縫拼接。
實(shí)驗(yàn)環(huán)境為運(yùn)行MATLAB R2014a的PC機(jī)、Intel Core i3處理器、主頻3.6 GHz、運(yùn)行內(nèi)存4 GB、64位Windows7操作系統(tǒng)。實(shí)驗(yàn)選用的兩張無(wú)人機(jī)拍攝的圖像分別如圖1中(a)、(b)所示。
圖1 原無(wú)人機(jī)航拍圖像
利用改進(jìn)的Harris算法提取兩幅圖片的特征點(diǎn),閾值設(shè)置為0.04Rmax。圖2為兩幅圖像提取的特征點(diǎn),其中“+”代表特征點(diǎn)。
圖2 特征點(diǎn)提取結(jié)果
用雙向歸一化互相關(guān)函數(shù)對(duì)兩幅圖像的特征點(diǎn)進(jìn)行初步匹配,互相關(guān)閾值設(shè)置為0.85。特性點(diǎn)匹配的結(jié)果如圖3所示,兩幅圖片共檢測(cè)到19對(duì)匹配點(diǎn)。為了方便觀察,匹配的特征點(diǎn)對(duì)用直線連接。從圖中可以看出,匹配的結(jié)果中存在誤匹配點(diǎn)對(duì),需要做進(jìn)一步處理。
圖3 特征點(diǎn)初步匹配結(jié)果
特征點(diǎn)初步匹配后,為了得到精確的匹配結(jié)果,可采用RANSAC算法進(jìn)行優(yōu)化,剔除誤匹配點(diǎn)對(duì)。RANSAC算法最大迭代次數(shù)設(shè)置為1 000次,距離誤差設(shè)置為3,得到的匹配結(jié)果如圖4所示。剔除誤匹配點(diǎn)對(duì)后,剩下13對(duì)有效的匹配點(diǎn)。
圖4 去除偽匹配點(diǎn)對(duì)的結(jié)果
最后,利用RANSAC算法估算出的變換模型,用漸入漸出的加權(quán)平均融合法對(duì)兩張圖像進(jìn)行融合,融合的結(jié)果如圖5所示。從圖5中可以看出,兩幅圖像融合的效果比較理想,重疊區(qū)域過(guò)渡平滑,沒(méi)有出現(xiàn)明顯的拼接痕跡。
圖5 圖像拼接后的結(jié)果
本文詳細(xì)討論基于圖像特征的圖像拼接方法,借助MATLAB仿真平臺(tái)進(jìn)行相關(guān)實(shí)驗(yàn),結(jié)果表明,本文使用的方法能很好地滿足無(wú)人機(jī)航拍圖像拼接的要求,實(shí)現(xiàn)圖像的無(wú)縫拼接,具有重要的實(shí)際意義。下一步的工作將進(jìn)一步優(yōu)化算法,并用C/C++語(yǔ)言在具體的應(yīng)用平臺(tái)上實(shí)現(xiàn)無(wú)人機(jī)航拍圖像拼接。
[1] 謝相博,徐光輝,范凱鑫等.基于4G的無(wú)人機(jī)遠(yuǎn)程巡邏系統(tǒng)[J].通信技術(shù),2015,48(11):1305-1309. XIE Xiang-bo,XU Guang-hui,FAN Kai-xin,et al.UAV Remote Patrol System based on 4G[J].Communications Technology,2015,48(11):1305-1309.
[2] 王娟,師君,吳憲祥.圖像拼接技術(shù)綜述[J].計(jì)算機(jī)應(yīng)用技術(shù)研究,2008,5(07):1940-1947. WANG Juan,SHI Jun,WU Xian-xiang.Survey of Image Mosaics Techniques[J].Application Research of Computers,2008,5(07):1940-1947.
[3] 楊楊.無(wú)人機(jī)航拍視頻圖像實(shí)時(shí)拼接軟件系統(tǒng)的設(shè)計(jì)與開(kāi)發(fā)[D].北京:北京工業(yè)大學(xué),2013. YANG Yang.Design and Development A Real Time Mosaic Method for Remote Sensing Video Images from UAV[D].Beijing:Beijing University of Technology,2013.
[4] 盧瑜,郝興文,王永俊.Moravec和Harris角點(diǎn)檢測(cè)方法比較研究[J].計(jì)算機(jī)技術(shù)與發(fā)展,2011,21(06):95-97. LU Yu,HAO Xing-wen,WANG Yong-jun.Research on Moravec and Harris Corner Algorithm[J].Computer Technology and Development,2011,21(06):95-97.
[5] Chen J,Zou L H,Zhang J.The Comparison and Application of Corner Detection Algorithms[J].Journal of Multimedia,2009,4(06):435-441.
[6] Ghosh P,Pandey A,Pati U C.Comparison of Different Feature Detection Techniques for Image Mosaicing[J]. ACCENTS Transactions on Image Processing and Computer Vision,2015,1(01):1-7.
[7] Chandratre R,Chakkarwar V.Image Stitching Using Harris Feature Detection and Random Sampling[J].International Journal of Computer Applications,2014,89(05):14-19.
[8] Harris C,Stephens M.A Combined Corner and Edge Detector[A]//.Proceedings of the 4th Alvey Vision Conference[C]. Manchester,England:[s.n.],1988.
[9] 趙璐璐.基于特征匹配的全景圖像拼接算法研究[D].西安:西北大學(xué),2013. ZHAO Lu-lu.Research of Panoramic Image Stitching Algorithm Based on Feature Matching[D].Xi'an:Northwest University,2013.
肖映彩(1989—),男,碩士研究生,主要研究方向?yàn)榍度胧较到y(tǒng)設(shè)計(jì)、計(jì)算機(jī)視覺(jué);
徐光輝(1973—),男,博士,副教授,主要研究方向?yàn)镾OC技術(shù)與嵌入式系統(tǒng)設(shè)計(jì);
朱 森(1990—),男,碩士研究生,主要研究方向?yàn)檎f(shuō)話人識(shí)別。
Research and Implementation of UAV Aerial Images Mosaic
XIAO Ying-cai, XU Guang-hui, ZHU Sen
(College of Communications Engineering, PLAUST, Nanjing Jiangsu 210007,China)
Aiming at the characteristics of UAV aerial images, and with mosaic technology based on the features of images, the seamless mosaic of UAV aerial images is implemented. First, a modified Harris algorithm with adaptive threshold is proposed to extract the feature points of images. Then the normalized cross-correlation function is used to make two-way match of the feature points, and with RANSAC algorithm the false pairs of matching points are eliminated, and the transformation model also estimated. Finally, a gradually fade-out weighted fusion method is adopted to implement image fusion. The experimental results indicate that the proposed algorithm has good reliability and robustness, and performs well in implementing mosaic of UAV aerial images.
UAV; image mosaic; Harris algorithm; RANSAC
TP391.41
A
1002-0802(2016)-08-01006-05
10.3969/j.issn.1002-0802.2016.08.010
2016-04-20;
2016-07-20
date:2016-04-20;Revised date:2016-07-20