葛繼空 葉業輝 楊 靜 李衛軍
(1. 誠邦測繪信息科技(浙江)有限公司, 浙江 寧波 315000; 2. 海南迪奧普科技有限公司, 海南 海口 570000;3. 中國水利水電第八工程局有限公司, 湖南 長沙 410000)
隨著無人機技術的快速發展,借助航拍制作輸電線路和電力塔圖像已經成為一種主流[1-3],限于機載相機畫幅,一次拍攝很難得到完整的輸電線路圖像,因此提出使用圖像拼接的方式得到全局輸電線或者電力塔圖像[4]。
為了得到輸電線路全景圖像,有學者提出基于地理信息的電力線路拼接算法[5],首先使用尺度不變特征算法[6]實現特征匹配,然后結合全球定位系統(global positioning system,GPS)信息實現電力圖像拼接,該方法配準過程簡單易出現重影。Brown M等人[7]提出自動拼接算法(auto stitching),首先借助尺度不變算法完成特征匹配,然后計算待拼接圖像的配準參數,最后對全局待拼接圖像配準模型最優化處理,完成拼接。文獻[8]提出基于加速魯棒性算法(speeded up robust features, SURF)[9]輸電線路全景圖拼接方法,先使用SURF算法進行特征提取,然后使用隨機采樣一致性算法剔除外點,最后計算單應性矩陣配準融合。針對特征匹配算法計算得到單應性矩陣配準效果較差,文獻[10]提出顯著性檢測分離輸電線路圖像前后景,然后使用ORB算法(oriented fast and rotated brief)[11]特征匹配,最后分別計算前后景單應性矩陣配準的方法。高陽等人[12]提出去除拼接圖像重疊區域內冗余特征點,然后歸一化處理并篩選內點,并求出拼接參數。
上述算法對無明顯視差輸電線路圖像拼接效果較好,但相鄰圖像具有視差時,配準效果較差。為此,文獻[13]提出盡可能投影(as-projective-as-possible image stitching,APAP)算法,該方法把目標拼接圖像劃分成網格,建立Moving DLT(moving direct linear transformation)模型,然后得到每個網格的形變矩陣完成配準。龐榮等人[14]對APAP算法改進,提出雙向圖像拼接方法,先使用雙向Moving DLT算法對重疊區域對齊,再使用單應性變換和相似變換對非重疊區域畸變矯正,使拼接圖像更接近真實場景。文獻[15]提出SPHP算法(shape-preserving-half-projective warps for image stitching),該方法先通過APAP算法粗配準圖像,然后從重疊區域漸變至圖像非重疊區域,完成待拼接圖像形變,該方法可有效防止拼接圖像失真。王紅君等人[16]提出一種改進SPHP算法,首先使用SURF算法特征匹配,然后解拼接圖像重疊區域配準參數,并替代SPHP算法原配準參數,增加了圖像重疊區域配準精度,使拼接圖像更符合真實場景。
常用算法對電力線圖像拼接效果較好,但仍有兩個問題亟待解決:①APAP算法對成對特征質量要求較高,常見的輸電線路航拍圖像紋理較為復雜,特征點易出現集聚,致使單應性矩陣配準精度下降;②APAP算法對非重疊區域未進行約束,易出現畸變。
針對APAP算法在配準航拍圖像,特征點集聚造成局部單應性矩陣配準精度下降和非重疊區域易失真等問題,提出一種基于網格運動統計算法的電力航拍圖像拼接算法。首先通過加速“風”算法(accelerated KAZE)[17]完成特征粗匹配,然后借助網格運動統計(grid-based motion statistics,GMS)算法[18]保留盡可能多的成對匹配點,隨后使用海森矩陣計算特征強度并均勻化處理,再使用APAP算法按照特征分布計算局部單應性矩陣,最后通過隨機采樣一致性算法對成對匹配點擬合得到最優相似變換矩陣,并與局部單應性矩陣加權疊加,配準融合得到輸電線路拼接圖像。
基于局部特征點的圖像匹配算法根據描述符數據類型可分為:①浮點型描述符和二進制描述符,浮點型描述符攜帶的特征性較多,穩定性好,但是匹配效率較低;②二進制描述符匹配效率較高,但魯棒性較差。AKAZE算法雖是二進制描述符,但該算法通過非線性濾波構建尺度空間,有效保護圖像邊緣和角點信息。不僅對特征采樣區域內像素強度編碼,還對梯度信息編碼,故AKAZE算法的效率和魯棒性均較好。因此,本文借助AKAZE算法匹配特征,具體過程見文獻[17]。
AKAZE算法對待拼接圖像粗匹配后,為了得到較好的成對匹配點,本文提出通過網格運動統計算法篩選特征點。網格運動統計算法是一種基于網格運動統計鄰域支持估計量篩選匹配特征內點的方法,該算法具有效率高、魯棒性好等特點。若航拍圖像Ia和Ib重疊,若區域a與區域b中共有n對匹配點x={x1,x2,…,xn},其中xi={Mi,Ni}為一對匹配點,M、N分別為Ia、Ib上的匹配點。正確匹配點附近會有更多的正確匹配點,而錯誤匹配點附近不存在或者正確匹配點數量較少,根據該假設,在a區域上有一特征點Mi匹配到b區域中的點Ni,其中匹配點對xi為正確匹配點,xj為錯誤匹配點對。用si表示xi鄰域支持估計量,式(1)表示去除區域a中特征點Mi,可寫成
(1)


圖1 匹配點篩選事件空間

(2)
式中,n為區域b特征點個數;N為匹配圖像Ib特征點總數;β為權重值。

由式(3)、式(4)可得到鄰域支持估計量si表示為
(5)
為了更快地篩選匹配點,GMS算法把匹配圖像分割為G=g×g個網格,單個網格相鄰的8個網格可作為網格估計量,則單個網格支持估計量根據式(1)可表示為
(6)
式中,K為中心網格相鄰的網格支持域數量;xakbk∈x表示中心網格xi預測相鄰區域內匹配子集{ak,bk},對于中心網格的相鄰網格支持估計量si可寫為
(7)
由式(7),得到si的均值和標準差為
(8)
由于運動網格劃分,使正確匹配與錯誤匹配概率相差越來越大,即si值逐漸增大。通過計算均值和標準差,可得區域匹配對{ak,bk}二值化為
(9)
式中,i、j分別表示圖像Ia、Ib的第i和j個網格域;pair{i,j}為匹配圖像網格域;α表示為權重;τ是近似值,可寫成
(10)
若中心網格的鄰域估計量si大于τ,則該網格內成對匹配點為正確匹配點,保留正確匹配點并進行特征點均勻化處理。
相鄰電力線圖像重疊部分差異很小,網格運動統計算法可保留大量成對匹配點,而這些匹配特征分布十分不均勻,可能會出現成對匹配點集聚。成對特征點數量巨大,APAP算法中Moving DLT方程為超定,需要借助最小二乘法解超定方程,而特征點是否均勻化分布,直接關系到局部單應性矩陣的配準精度。由此可知,成對特征點若均勻分布在圖像上,可以減小拼接誤差。為了使成對特征點均勻分布,提出自適應非極大值抑制算法選擇固定數量的成對匹配點。
AKAZE算法借助Hessian矩陣提取特征點,則特征點的Hessian矩陣可表示為
(11)
式中,σ為尺度因子初始值;Lxx為x方向的2階導數,Lxy和Lyy類似。式(11)得到角點強度表達式
(12)
式中,λ1和λ2分別為Hessian矩陣的特征值;f(x,y)表示每個特征點的強度。
以特征點為中心選取半徑為r的像素圓作為抑制區域,特征點是否被抑制根據特征點強度f(x,y)決定。當抑制區域半徑r=0時,所有匹配點按照特征強度從大到小依次排列;初始化抑制區域半徑r=+∞,隨著抑制半徑的逐漸減小,特征點按照特征強度依次被保存,直到得到的特征點數量滿足要求nip。則在計算時,最小抑制半徑可表示為
(13)
式中,xi為特征點坐標;I表示圖像坐標;crobust為閾值取值0.9。如圖2所示,經過均勻化處理后,特征分布較為均勻,無集聚點出現。

圖2 特征均勻化
輸電線路圖像完成匹配和成對匹配點均勻化處理后,再借助APAP算法對輸電線路目標圖像計算局部單應性配準矩陣。輸電線路圖像I和I為相鄰的待拼接圖像,對應均勻化匹配點坐標p=[x,y,1]T、p=[x′,y′,1],成對匹配點的變換關系為
(14)
(15)

式(14)滿足03×1=p′×Hp,可寫成
(18)
輸電線路圖像I和I′,經過特征點均勻化處理,保留了N組匹配點,則計算I與I′的單應性矩陣h,可用DLT方程表示為
(19)

APAP算法中提出Moving DLT算法模型,對式(19)添加權值進行估計局部單應性矩陣。pj的局部單應性矩陣為
(20)

無人機在航拍時,相鄰輸電線路圖像不在同一個平面上拍攝,在拼接時可能會造成非重疊區域畸變,在本節中提出按照成對特征點分布計算最優相似變換矩陣。隨機采樣一致性算迭代計算時,可由不簇特征點得到不同參數模型,眾多模型中角度最小的仿射變換矩陣為最優相似變換矩陣[19]。具體計算步驟如下:
(1)AKAZE算法對相鄰待拼接圖像特征匹配后,使用網格運動統計算法篩選正確匹配點,然后對成對匹配點均勻化處理,保留最佳匹配點。
(2)獲得最佳匹配點后,再使隨機采樣一致性算法計算不同參數模型對應匹配點集合Pi={p1,p2,…,pn},閾值為εl。則Pi對應的仿射矩陣為
(21)

(3)最小變換角度tmin對應變換矩陣Si作為最優相似變換矩陣。

(22)

(23)

完成圖像配準后,對重疊區域可通過加權融合得到拼接圖像。
為了驗證改進APAP算法是否對電力線航拍圖像具有較好的拼接效果,選擇AutoStitching算法、APAP算法與改進APAP算法在圖3中對比實驗。圖3為無人機航拍的輸電線路圖像,圖3(a)與圖3(b)為一組待拼接圖像,圖3(c)與圖3(d)為一組待拼接圖像,圖像尺寸為800×1200×3像素。
使用Matlab2014a作為實驗軟件平臺,并使用Opencv3.0數字圖像處理庫,計算機硬件配置為:Intel(R)i7-8700@3.20GHz、內存8 GB。最優相似變換的閾值εl=0.01,APAP算法橫縱網格數C1、C2取值為10,自適應特征點均勻化算法crobust取值0.9,均勻化保留特征數量nip=500。

(a)圖像1

(b)圖像2

(c)圖像3

(d)圖像4
AutoStitching算法使用特征匹配算法得到待拼接圖像的單應性矩陣,以此預測出相機參數,最后利用光束平差法對待拼接圖像聯合優化進行配準;AutoStitching算法在配準時,雖然優化了配準矩陣,但對紋理較為復雜區域配準效果欠佳。圖4(a)中,絕緣子有明顯錯位,高壓線重影嚴重。APAP算法對目標圖像網格劃分并根據特征點分布,計算出局部單應性矩陣配準圖像,故配準精度較高。圖4(b)中,絕緣子錯位較小,高壓線重影較輕。圖4(c)為改進APAP算法拼接效果,由于對特征點均勻化處理,得到局部單應性矩陣精度更高,故圖4(c)絕緣子區域無明顯拼接錯位,高壓電纜線無明顯重影,使得拼接效果更符合人類審美。



(a)AutoStitching算法



(b)APAP算法



(c)改進APAP算法
圖5為第二組輸電線路圖像拼接效果,圖5(a)和圖5(b)拼接效果相差較小,部分絕緣子拼接區域出現失真;圖5(c)拼接圖像有效保護了輸電線路圖像內容,拼接效果更符合圖3(c)、圖3(d)真實場景。

(a)AutoStitching算法

(b)APAP算法

(c)改進APAP算法
本文通過計算航拍輸電線路圖像重疊區域的配準精度,判斷航拍輸電線路圖像拼接算法的優劣。重疊區域配準精度,可通過計算重疊區域兩兩像素差值均方根誤差(root mean square error,RMSE)表示[20],計算方式如下:
(24)


表1 不同算法的RMSE值
AutoStitching算法通過光束平差算法聯合優化單應性矩陣進行配準,但對于紋理較復雜的區域很難得到較小的RMSE值,故誤差均方根值最大。APAP算法對目標圖像網格劃分并依據成對特征點的分布計算每個局部單應性矩陣,局部單應性矩陣對重疊區域可以精確配準,但若網格內的特征點集聚分布將會導致局部單應性矩陣配準精度下降。本文所提算法,首先借助網格運動統計算法得到大量正確匹配點,然后對集聚特征點均勻化處理,隨后使用APAP算法計算局部單應性矩陣,最后借助隨機采樣一致性算法得到最優相似變換矩陣與局部單應性矩陣加權疊加,故配準效果最好,重疊區域誤差均方根值最小。
AutoStitching算法、APAP算法與改進APAP算法代碼配準耗時如表2所示,特征匹配和隨機采樣一致性算法的內點篩選耗時不計。

表2 不同算法配準時間 單位:s
AutoStitching算法先解超定方程,然后利用光束平差法對單應性矩陣調整,故配準速度較快。APAP算法需要解Moving DLT方程,需要解多個超定方程得到局部單應性矩陣,故拼接速度與AutoStitching算法相比較差。改進APAP算法,需要對特征點均勻化,計算局部單應性矩陣和最優相似變換矩陣,故配準速度最慢。
上述幾種拼接方法總耗時如表3所示,AutoStitching算法和APAP算法均使用SIFT算法匹配特征點,借助隨機采樣一致性算法篩選正確匹配點。SIFT算法使用128維梯度值構建特征描述符,衡量不同描述符相似性時耗時較長;AKAZE算法的描述符為二進制,借助漢明距離快速定位成對匹配點。隨機采樣一致性算法需多次迭代計算參數模型,效率較低;網格運動統計算法僅通過支持鄰域篩選正確匹配點,算法效率較高。由表3可知,所提算法的拼接效率最高,AutoStitching算法次之,APAP算法拼接效率最低。

表3 不同算法拼接總耗時間 單位:s
限于電力巡線無人機的機載相機畫幅,一次拍攝得不到完整的輸電線路及電力塔圖像,提出一種基于運動網格統計算法的輸電線路圖像拼接算法。首先使用AKAZE算法對待拼接圖像特征匹配,然后借助運動網格統計算法篩選正確匹配點,再根據特征點強度均勻化特征分布,隨后通過APAP算法計算局部單應性矩陣,再借助隨機采樣一致性算法擬合最優相似變換矩陣,局部單應性矩陣與最優相似變換矩陣加權疊加后對圖像配準,最后融合得到拼接電力線圖像。與現有算法在電力線圖像對比實驗可知:所提算法配準精度更高,拼接效果更好,更符合人類審美要求。