孟凡東
(新疆維吾爾自治區(qū)第二測繪院,新疆 烏魯木齊 830001)
無人機(jī)影像拼接技術(shù)在地質(zhì)災(zāi)害監(jiān)測、新農(nóng)村建設(shè)、自然資源調(diào)查等領(lǐng)域具有十分廣闊的應(yīng)用前景[1-2]。但是由于無人機(jī)影像飛行高度與數(shù)碼相機(jī)視場角的限制,像片數(shù)量多,單幅影像覆蓋范圍較小,影像傾角過大等問題[3],難以有效覆蓋目標(biāo)區(qū)域。為了解決影像視場范圍與分辨率之間的矛盾,需要將所獲得的影像快速拼接成大視場全景圖[4]。國外學(xué)者Richard提出基于運(yùn)動(dòng)的全景影像拼接模型[5],Kim 等提出在規(guī)則格網(wǎng)特征空間采用連續(xù)塊匹配的全景影像快速拼接方法[6]。國內(nèi)學(xué)者劉慶元通過DGPS 位置參數(shù)對影像正射糾正,使拼接影像具有了地理位置信息[7];袁曉亞提出基于改進(jìn)Harris 角點(diǎn)特征匹配的圖像拼接方法[8]。
本文詳細(xì)分析了無人機(jī)影像拼接誤差產(chǎn)生的原因,在此基礎(chǔ)上根據(jù)航飛POS 參數(shù),對無人機(jī)影像進(jìn)行正射糾正,采用SIFT 算法和SURF 算法對尺度不變特征進(jìn)行提取,根據(jù)特征描述符間的歐氏距離進(jìn)行特征匹配,利用RANSAC 算法剔除誤匹配點(diǎn)對,并計(jì)算投影變換矩陣,最后利用加權(quán)平均法對影像進(jìn)行融合,得到無拼接縫的影像。
無人機(jī)影像拼接的誤差主要包括影像拼接系統(tǒng)誤差、影像拼接偶然誤差、影像拼接粗差。
(1)首先,無人機(jī)飛行過程中由于質(zhì)量小、慣性小,受氣流影響比較大,飛行不穩(wěn)定,導(dǎo)致飛行航線平移,其曲線軌跡、俯仰角、側(cè)滾角、旋偏角變化較快,相鄰影像的航向和旁向重疊度變化大;其次,由于相鄰影像的旋偏角大,傳統(tǒng)的灰度相關(guān)算法較難實(shí)現(xiàn) ;再次,飛行器的飛行高度、俯仰角和側(cè)滾角受氣流影響發(fā)生變化,造成相鄰影像間的比例尺差異較大,灰度相關(guān)的成功率和準(zhǔn)確性降低。將不同影像投影到同一平面進(jìn)行影像處理時(shí),采用放射變換模型不能很好地消除影像畸變,其誤差會(huì)隨著原影像被傳遞到合成的新影像中[3]。
(2)由于相鄰影像的左右和上下重疊度變化大,在相鄰影像的接邊處,會(huì)出現(xiàn)多張影像同時(shí)存在相同區(qū)域的現(xiàn)象,對重疊區(qū)域進(jìn)行顏色融合拼接處理會(huì)引起誤差[3]。
(3)在影像拼接過程中,由于影像本身的質(zhì)量問題或者算法不合適,會(huì)出現(xiàn)大量的匹配點(diǎn)錯(cuò)誤,從而引起匹配粗差,影響無人機(jī)影像的拼接質(zhì)量。
本文通過POS 參數(shù)對無人機(jī)影像正射糾正,采用基于特征的影像匹配方法,利用RANSAC 算法剔除誤匹配點(diǎn)對,并計(jì)算投影變換矩陣,最后利用加權(quán)平均法對影像進(jìn)行融合,得到無拼接縫的影像。影像拼接的總體流程如圖1 所示。
圖1 影像拼接總體流程
無人機(jī)影像在成像瞬間,由于受地球曲率、大氣遮光、地形起伏等因素影響,影像中各像點(diǎn)均存在不同程度的幾何變形,需要對影像進(jìn)行正射糾正。通常采用共線方程進(jìn)行正射糾正,具體步驟如下。
(1)利用POS 數(shù)據(jù),應(yīng)用公式(1)計(jì)算旋轉(zhuǎn)系數(shù):
(2)根據(jù)相機(jī)檢校參數(shù)所得內(nèi)方位元素焦距f,像主點(diǎn)坐標(biāo)(x0,y0),確定圖像四個(gè)角點(diǎn)在像平面坐標(biāo)系上的坐標(biāo),分別為(-w/2-x0,h/2-y0)(w/2-x0,h/2-y0)(w/2-x0,-h/2-y0)和(-w/2-x0,-h/2-y0)。其中,w為影像的列數(shù),h為影像的行數(shù)。
(3)應(yīng)用公式(2)計(jì)算四個(gè)角點(diǎn)相應(yīng)的大地坐標(biāo)。式中X、Y為角點(diǎn)大地坐標(biāo),Z對應(yīng)為地面點(diǎn)真實(shí)高程,在這里可采用測區(qū)地面平均高程替代。
(4)用四個(gè)角點(diǎn)的大地坐標(biāo)確定糾正后像素的行列數(shù),并以此建立正射影像的框架,計(jì)算框架內(nèi)每個(gè)點(diǎn)的地理坐標(biāo)。
其中,resolution為圖像的分辨率,(i,j)為正攝影像框架中的索引值。
(5)計(jì)算正射影像每個(gè)像素的像平面坐標(biāo)和圖像坐標(biāo)。
zuv取測區(qū)的平均高程,然后應(yīng)用公式(5)計(jì)算像素在影像坐標(biāo)系中的坐標(biāo),如 此即完成影像的正射糾正[9]。
尺度不變特征包括特征點(diǎn)和特征描述符兩部分,其提取算法主要有SIFT 算法和SURF 算法兩種。SIFT 算法是在構(gòu)建的尺度空間中進(jìn)行極值檢測,并對提取到的極值點(diǎn)進(jìn)行篩選,剔除不穩(wěn)定的點(diǎn),定義每個(gè)穩(wěn)定特征點(diǎn)的主方向,最后根據(jù)特征點(diǎn)周圍圖像的局部特性形成特征描述符,用以匹配。SURF算法是SIFT 算法的一種改進(jìn),主要使用Hessian-Laplacian 來近似Gaussian-Laplacian,并使用方框?yàn)V波代替二階高斯濾波進(jìn)行計(jì)算,從而實(shí)現(xiàn)更快的特征提取速度[10]。
兩幅影像經(jīng)過投影變換可以映射至同一坐標(biāo)系下,影像I1和I2的對應(yīng)關(guān)系可以表示為I2=H×I1,H為透視變換矩陣,它是一個(gè)3×3 滿秩矩陣,通常表示為如下形式:
矩陣H共有8 個(gè)未知參數(shù),使用線性方法求解至少需要4 對特征點(diǎn)的坐標(biāo),聯(lián)立8 個(gè)方程,才可以求得變換矩陣。經(jīng)過特征匹配得到的匹配點(diǎn)中一般都存在誤匹配,因此需要根據(jù)幾何限制和其他附加約束消除錯(cuò)誤匹配,提高魯棒性。本文用RANSAC 算法計(jì)算變換矩陣,求出變換矩陣后,進(jìn)行影像融合[4]。影像融合需要消除成像時(shí)間、曝光時(shí)間、大氣等因素的干擾,導(dǎo)致無人機(jī)圖像在重疊區(qū)存在較明顯的灰度、色彩差異,出現(xiàn)影像拼接縫。采用重疊影像處的像素灰度值取加權(quán)算數(shù)平均值法融合影像。
實(shí)驗(yàn)選取固始縣某區(qū)域的航拍影像進(jìn)行拼接,同時(shí)對SIFT 算法和SURF 算法在C++環(huán)境下進(jìn)行測試,第一組是相鄰航帶上的兩幅影像,相機(jī)為索尼a5100,像幅大小為6000×4000 像素,如圖2 所示。第二組是同一條航帶上的兩幅影像,相機(jī)為尼康D810,像幅大小為7360×4912 像素,如圖3 所示。在同樣條件下進(jìn)行兩種情況影像匹配的各項(xiàng)評判因素對比,通過實(shí)驗(yàn)分析確定哪種方法更適合無人機(jī)影像的快速拼接。
在相同環(huán)境下,對兩組影像分別進(jìn)行SIFT 算法和SURF 算法特征匹配實(shí)驗(yàn),實(shí)驗(yàn)中SURF 算法運(yùn)算過程中的Hessian 矩陣行列式閾值設(shè)為3000、匹配閾值取0.6,計(jì)算初始H矩陣時(shí)RANSAC 閾值設(shè)為5。實(shí)驗(yàn)結(jié)果如表1 所示。
圖2 第一組實(shí)驗(yàn)影像
圖3 第二組實(shí)驗(yàn)影像
表1 SIFT算法與SURF算法實(shí)驗(yàn)結(jié)果比較
從實(shí)驗(yàn)數(shù)據(jù)可知,影像越大,特征越豐富,能夠提取出的特征數(shù)量也就越多,匹配的特征點(diǎn)對數(shù)也相應(yīng)增加;在SIFT 算法和SURF 算法的比較中,SIFT 算法的特征提取耗時(shí)較長,SURF 算法的優(yōu)勢明顯;在匹配時(shí)間的比較上,兩種算法的區(qū)別不大,主要與數(shù)據(jù)量的大小有關(guān)。剔除誤匹配點(diǎn)對的特征匹配效果如圖4 所示。
完成精確匹配后,第二組影像的拼接效果如圖5所示。
圖4 特征匹配效果
圖5 影像拼接效果
本文針對無人機(jī)影像拼接存在的問題,采用SIFT和SURF 算法對尺度不變特征進(jìn)行提取,根據(jù)特征描述符間的歐氏距離進(jìn)行特征匹配。實(shí)驗(yàn)結(jié)果最終驗(yàn)證,SURF 算法在提取效果、速度等方面優(yōu)于SIFT 算法,RANSAC 算法也能夠有效地進(jìn)行精確匹配,得到的單應(yīng)性矩陣進(jìn)行無人機(jī)影像拼接效果良好,可提高拼接精度和效率。本文研究的不足之處,如高斯平滑濾波中參數(shù)設(shè)置問題、算法效率問題等,將在以后研究中完善。