摘 要: 無人機(jī)低空拍攝的圖像具有成本低,、方便快捷的優(yōu)點(diǎn),但也存在重疊度高,、覆蓋范圍小等問題,,需通過圖像拼接來獲得更大范圍的圖像。目前,,無人機(jī)圖像拼接效率不高,。針對此問題,提出了一種結(jié)合Harris與SURF算法優(yōu)點(diǎn)的改進(jìn)Harris-SURF算法,,并將該算法應(yīng)用于無人機(jī)圖像的自動配準(zhǔn),;采用加權(quán)平滑融合算法消除亮度差異,較好地實(shí)現(xiàn)了無人機(jī)圖像的無縫拼接,。實(shí)驗(yàn)結(jié)果表明,,該算法在效率方面較SURF算法有較大提高,對存在旋轉(zhuǎn),、光照及視角變化的圖像均有較好的匹配效果,,實(shí)現(xiàn)了無人機(jī)圖像的快速拼接。
關(guān)鍵詞: 無人機(jī),;Harris,;SURF;圖像匹配,;圖像拼接
無人機(jī)UAV(Unmanned Aerial Vehicle)具有運(yùn)行簡單,、反應(yīng)迅速、飛行靈活,、成本低等優(yōu)點(diǎn),,已被廣泛應(yīng)用于抗災(zāi)救災(zāi)、軍事偵察,、海上監(jiān)測,、環(huán)境保護(hù)和土地動態(tài)監(jiān)測等領(lǐng)域[1-2]。受飛機(jī)飛行高度和相機(jī)焦距的限制,,無人機(jī)圖像具有數(shù)量多,、像幅小,、重疊度高、航帶多等特點(diǎn),,為了得到整個測區(qū)的全景圖像,,圖像的快速自動拼接成為必不可少的一步[1-3]。
圖像拼接是指將具有一定重疊區(qū)域的兩幅或多幅圖像進(jìn)行無縫連接,,以獲得更高分辨率和更寬視場的圖像[4],。圖像拼接主要包括圖像配準(zhǔn)和圖像融合兩部分,其中圖像配準(zhǔn)是其核心,。目前,,圖像配準(zhǔn)主要采用基于灰度信息和基于圖像特征兩類算法?;诨叶刃畔⒌乃惴òw一化互相關(guān)匹配[5],、模板匹配等,該算法實(shí)現(xiàn)簡單,,但計(jì)算量大,,尤其是存在平移、旋轉(zhuǎn),、縮放等圖像畸變時(shí),,該算法性能急劇下降?;谔卣鞯钠ヅ渌惴ㄖ饕休喞?、矩、點(diǎn)等,,由于點(diǎn)特征對圖像的平移,、旋轉(zhuǎn)、分辨率,、光照等具有不變性,,因此廣泛應(yīng)用于圖像配準(zhǔn),如Harris算法,、SUSAN算法等,。2004年,LOWE DG等人[6-7]提出的SIFT(Scale Invariant Feature Transform)算法得到的特征點(diǎn)穩(wěn)定性好,,且對旋轉(zhuǎn),、光照改變等情況具有較好的適應(yīng)性,但該算法也存在計(jì)算數(shù)據(jù)量大,、時(shí)間復(fù)雜度高等問題,。針對以上問題,Ke Yan等人[8]提出用PCA-SIFT方法降維特征描述數(shù)據(jù),;DELPONTE E等人[9]提出基于SVD的特征匹配方法,;GRABNER M[10]等人用積分圖像提高計(jì)算速度,;BAY H等人[11]提出的SURF(Speeded Up Robust Features)算法速度明顯快于SIFT。這些算法雖然提高了運(yùn)算速度,,但仍難滿足應(yīng)用需要,。
為提高無人機(jī)圖像拼接速度,本文提出一種改進(jìn)Harris-SURF的圖像拼接算法,。首先利用改進(jìn)的Harris算子提取特征點(diǎn),,再用SURF算法生成64維特征向量,然后用最近鄰匹配法得到匹配對,,再利用RANSAC剔除誤匹配對并求解圖像間的透視變換矩陣,最后使用加權(quán)平滑法融合圖像以實(shí)現(xiàn)圖像的無縫自動拼接,。為提高Harris特征點(diǎn)的穩(wěn)定性,,本文在Canny算子邊緣圖像上提取角點(diǎn)以限制其出現(xiàn)的位置,同時(shí)通過限制其個數(shù)來提高特征描述及匹配效率,。
1 Harris算子和SURF算法
1.1 Harris算子
HARRIS C和STEPHENS M J[12]提出的Harris算子具有計(jì)算簡單,、可定量提取特征點(diǎn)、提取的角點(diǎn)均勻穩(wěn)定等特點(diǎn),。定義矩陣M:
?。?G?茚Ix2 IxIyIxIy Iy2 ->R-1λ1 00 λ2R(1)
其中,Ix是圖像I在x方向的梯度,,Iy是圖像I在y方向的梯度,,G為高斯模板,?茚為高斯模型和函數(shù)卷積,,R是旋轉(zhuǎn)因子,,λ1、λ2是矩陣的兩個特征值,。
角點(diǎn)響應(yīng)函數(shù)CRF定義為:
CRF=det(M)-Ktr2(M)(2)
det(M)=λ1λ2=Ix2Iy2-(IxIy)2(3)
tr(M)=λ1+λ2=Ix2+Iy2(4)
其中,,det為矩陣的行列式;tr為矩陣的跡(矩陣對角線的和),;K為經(jīng)驗(yàn)值,,一般取0.04~0.06。若某點(diǎn)的CRF值大于設(shè)定的閾值T時(shí)則為角點(diǎn),。
1.2 SURF算法
SURF算法[11]利用盒子濾波,、積分圖像及Haar小波加速算法,該算法包括5個步驟:(1)建立尺度空間,,確定極值點(diǎn)位置,;(2)剔除不穩(wěn)定極值點(diǎn),精確確定特征點(diǎn)位置,,提高匹配的穩(wěn)定性和抗噪能力,;(3)計(jì)算特征點(diǎn)主方向,,使其具備旋轉(zhuǎn)不變性;(4)提取特征點(diǎn)描述符,,生成SURF特征向量,;(5)利用特征描述符尋找匹配點(diǎn)。
1.2.1 構(gòu)建尺度空間檢測極值
SURF算法利用盒子濾波構(gòu)建尺度空間,,并用積分圖像來加速卷積以提高計(jì)算速度,。SURF算法尺度空間金字塔的最底層利用一個大小為9×9的盒子濾波得到,為保證盒子濾波的結(jié)構(gòu)不變,,后面的盒子濾波大小至少要有6個像素步長的變換,,即第一層為9×9,第二層最小為15×15,。式(5)為當(dāng)前大小的盒子濾波對應(yīng)的高斯尺度值的計(jì)算公式:
其中,,N表示當(dāng)前的盒子濾波尺寸。
若要構(gòu)建4度4層的尺度空間,,如圖1所示,,最低層的盒子濾波器的大小為9×9,各層中盒子濾波器的大小變化分別為6,、12,、24、48,。
為了尋找尺度空間中的極值點(diǎn),,每一采樣點(diǎn)需要與它同尺度的8個相鄰點(diǎn)及上下相鄰尺度對應(yīng)的9×2個點(diǎn)共26個點(diǎn)比較,以確保在尺度空間和二維圖像空間均檢測到極值點(diǎn),。若采樣點(diǎn)為最大或最小值,,則該點(diǎn)是圖像在該尺度下的一個極值點(diǎn)。
1.2.2 確定特征點(diǎn)位置
得到極值點(diǎn)后需要消除不穩(wěn)定的極值點(diǎn),,以確定特征點(diǎn)的位置,。在SURF算法中利用一個近似det(H)的 ?駐(H)確定特征點(diǎn)的位置:
?駐(H)=DxxDyy-(0.9Dxy)2(6)
若?駐(H)為正,則該點(diǎn)為一個特征點(diǎn),。
SURF算法具有較強(qiáng)的魯棒性,,但時(shí)間復(fù)雜度較高。為了分析SURF耗時(shí)情況,,對一張480×360的圖片進(jìn)行實(shí)驗(yàn),,共檢測特征點(diǎn)592個。為分析特征個數(shù)對運(yùn)算時(shí)間的影響,,通過人為設(shè)定檢測到200個特征點(diǎn)就終止檢測,,使其繼續(xù)實(shí)現(xiàn)后續(xù)步驟。各步耗時(shí)情況如表1所示,。
從表1可以看出,,SURF耗時(shí)主要在構(gòu)建尺度空間檢測特征點(diǎn)和特征描述上,,而且特征點(diǎn)數(shù)直接影響特征描述速度。對于大旋轉(zhuǎn),、小尺度縮放的圖像拼接應(yīng)用,,可采用一種能快速檢測到穩(wěn)定特征點(diǎn)的方法減少特征檢測時(shí)間。對于特征描述耗時(shí)長問題,,則可通過提高特征點(diǎn)的穩(wěn)定性來降低個數(shù),,從而有效地提高運(yùn)算速度。本文將在Canny算子邊緣圖像上使用改進(jìn)的Harris算法檢測特征點(diǎn)以提高特征的穩(wěn)定性和檢測速度,。
2 改進(jìn)的Harris-SURF算法
2.1 改進(jìn)的Harris算子
對于經(jīng)典的Harris算子,,其穩(wěn)定性與K有關(guān),但K是個經(jīng)驗(yàn)值,。為此,,改進(jìn)的Harris方法不計(jì)算Harris響應(yīng)函數(shù)而直接計(jì)算λ1、λ2兩個特征值,。對于一個點(diǎn),若M的特征值λ1,、λ2有:
min(λ1,,λ2)>λ(7)
則該點(diǎn)為角點(diǎn)。其中,,λ是一個預(yù)定閾值,。
為使角點(diǎn)分布均勻,改進(jìn)的方法不再用非極大值抑制,,而選取容忍距離:對于兩個候選角點(diǎn)I1(x,,y)和I2(x,y),,若其距離d12>dt(dt為容忍距離),,則兩點(diǎn)均為角點(diǎn),否則舍棄后者,,即容忍距離內(nèi)只有一個角點(diǎn),。
在上面的實(shí)驗(yàn)中已知,特征點(diǎn)越多,,特征描述時(shí)間越長,,而對于圖像匹配,只需適量的特征點(diǎn)便可實(shí)現(xiàn),。為避免不必要的計(jì)算,,可將角點(diǎn)min(λ1,λ2)>λ從大到小排列,,即:
max(min(λ1,,λ2))(8)
順序選取角點(diǎn),,當(dāng)角點(diǎn)數(shù)滿足預(yù)先設(shè)定個數(shù)則停止檢測。
2.2 SURF特征描述
2.2.1 計(jì)算特征點(diǎn)主方向
為了提高魯棒性,,SURF算法利用了Haar小波,。首先以特征點(diǎn)為圓心,以6δ為半徑做圓,,在這個圓形區(qū)域內(nèi)計(jì)算其中的點(diǎn)在x方向和y方向上大小為4δ的Haar小波響應(yīng),,其中δ表示特征點(diǎn)所在的尺度空間的尺度值。然后對這些響應(yīng)加權(quán)值,,使距離特征點(diǎn)越近的響應(yīng)具有越大的權(quán)重值,,而距離特征點(diǎn)越遠(yuǎn)的響應(yīng)具有較小的權(quán)重值。最后以60°范圍為一個區(qū)域遍歷整個圓形區(qū)域,,可得到6個扇形區(qū)域,。把每個區(qū)域內(nèi)的響應(yīng)相加形成一個新的矢量,在6個新的矢量中找到模值最大的矢量,,把其方向作為該特征點(diǎn)的主方向,,如圖2所示。這樣就得到了SURF特征點(diǎn)的主方向,,同時(shí)也保證了SURF特征的旋轉(zhuǎn)不變性,。
2.2.2 生成SURF特征描述符
生成SURF特征描述符首先需把坐標(biāo)軸旋轉(zhuǎn)到SURF特征的主方向,再以特征點(diǎn)為中心構(gòu)造一個20δ×20δ的正方形窗口,,其中δ為特征點(diǎn)所在尺度空間的尺度值,。以5×5大小為一個小塊劃分窗口,計(jì)算每個小塊中采樣點(diǎn)相對于主方向水平與垂直方向的Haar小波的響應(yīng),,把每一個小塊中的25個采樣點(diǎn)的響應(yīng)值及其絕對值分別進(jìn)行累加,,所得結(jié)果記為dx,dy,,|dx|,,dy。這樣,,每一子區(qū)域就形成一個4×4×4=64維的向量,,對其歸一化去除亮度變化的影響,就得到了SURF特征的描述符,。
2.2.3 特征點(diǎn)匹配
常用的特征匹配方法有相似性度量法,、不變距、相關(guān)系數(shù)法,、Hausdorff距離,、各種距離度量值等。本文采用向量的最近鄰匹配法匹配特征,并用簡單有效的歐式距離準(zhǔn)則作為特征匹配的相似性度量準(zhǔn)則,,利用K-D樹搜索每一個特征點(diǎn)的歐氏距離最近鄰特征點(diǎn)和次近鄰特征點(diǎn),。設(shè)特征點(diǎn)p的最近特征點(diǎn)為q,次近特征點(diǎn)為q′,,分別計(jì)算p與q的歐氏距離d1及p與q′的歐氏距離d2,。r為d1與d2的比值,若r小于閾值T,,則(p,,q)是一個匹配的特征點(diǎn)對。閾值T一般取0.4~0.6,,為保證匹配對的穩(wěn)定性,,本文取T=0.5,。
2.3 透視變換
利用最近鄰匹配法得到的匹配對必然存在誤匹配對,,需要提純匹配對并求解圖像間的變換模型參數(shù)以實(shí)現(xiàn)圖像配準(zhǔn)。消除誤匹配對的方法主要有霍夫聚類法,、最小中位數(shù)法和RANSAC[13](Random Sample Consensus)等,,本文采用RANSAC算法。對于圖像間的變換模型,,本文則用透視變換表示,。設(shè)I1和I2分別為待拼接的兩幅圖像,點(diǎn)(x,,y)和點(diǎn)(x′,y′)為這兩幅圖上的一個匹配點(diǎn)對,,根據(jù)透視變換模型有:
x′y′1=m0 m1 m2m3 m4 m5m6 m7 1xy1(9)
模型變換參數(shù)矩陣M一共有8個參數(shù),,只要知道4對任意3點(diǎn)不共線的特征點(diǎn)就可求出矩陣M。
利用RANSAC算法[13]和八參數(shù)模型估計(jì)方法計(jì)算變換模型參數(shù)矩陣步驟如下:(1)在特征點(diǎn)對中隨機(jī)抽取4對任意3點(diǎn)不共線的特征點(diǎn)對,,如果存在3點(diǎn)共線的情況則重新選取,,直到不存在3點(diǎn)共線的情況為止;(2)利用最小二乘法根據(jù)步驟(1)選取的4對匹配特征點(diǎn)求出變換模型的參數(shù)矩陣,;(3)計(jì)算出所有匹配點(diǎn)對的距離d,,當(dāng)d小于閾值時(shí),這對匹配特征點(diǎn)為內(nèi)點(diǎn),,并記錄下內(nèi)點(diǎn)的個數(shù)n,,若d大于閾值則此對匹配特征點(diǎn)為外點(diǎn);(4)重復(fù)步驟(1)~(3),,直到內(nèi)點(diǎn)的數(shù)目n足夠大為止,,把具有最大內(nèi)點(diǎn)數(shù)目n的模型作為最后的計(jì)算結(jié)果,并記錄下所有內(nèi)點(diǎn)的位置。
3 圖像融合
對配準(zhǔn)后的圖像進(jìn)行融合就可得到全景圖像,。因?yàn)閳D像間一般存在亮度差異,,拼接后的圖像會出現(xiàn)明顯的亮度變化,所以需要處理縫合線,。圖像拼接縫合線處理方法較多,,如多分辨率樣條技術(shù)、顏色插值等,。為實(shí)現(xiàn)快速拼接,,本文采用簡單快速的加權(quán)平滑融合算法。該算法的主要思想是:圖像重疊區(qū)域中像素點(diǎn)的灰度值由兩幅圖像中對應(yīng)點(diǎn)的灰度值加權(quán)得到,。設(shè)f1(x,,y)和f2(x,y)分別是待融合的兩幅圖像,,則融合結(jié)果圖像F(x,,y)的像素值通過式(10)求解。
F(x,,y)=f1(x,,y) (x,y)∈f1kf1(x,,y)+(1-k)f2(x,,y) (x,y)∈f1∩f2 f2(x,,y) (x,,y)∈f2(10)其中,k是可調(diào)因子,,0<k<1,。本文令k=d1/(d1+d2),其中d1,、d2表示重疊區(qū)域中的點(diǎn)到兩圖像重疊區(qū)域左,、右邊界的距離,即重疊區(qū)域像素值為:
F(x,,y)=f1(x,,y)+f2(x,y)(11)
4 實(shí)驗(yàn)結(jié)果與分析
本實(shí)驗(yàn)環(huán)境為:Pentium Dual-Core E5500 2.80 GHz CPU,、2 GB內(nèi)存的PC,,Windows XP操作系統(tǒng),VC++6.0,,OpenCV1.0,。本文選取兩組存在旋轉(zhuǎn),、光照差異和尺度縮放的480×360尺寸的圖像進(jìn)行實(shí)驗(yàn)。
圖3和圖4為特征匹配結(jié)果,,其中圖3(a)和圖4(a)為SIFT算法匹配結(jié)果,,圖3(b)和圖4(b)為SURF算法匹配結(jié)果,圖3(c)和圖4(c)為本文算法匹配結(jié)果,??梢钥闯鲞@4種算法對旋轉(zhuǎn)、光照和較小尺度縮放均有一定的魯棒性,,但得到的匹配對數(shù)有較大差異,,經(jīng)過RANSAC提純處理的匹配結(jié)果較精確。
表2和表3分別為圖3和圖4匹配實(shí)驗(yàn)的統(tǒng)計(jì)數(shù)據(jù),,其主要記錄了3種算法得到的特征點(diǎn)數(shù),、匹配對數(shù)及各階段耗時(shí)情況??梢钥闯?,基于SIFT的圖像配準(zhǔn)得到的特征點(diǎn)數(shù)、匹配對數(shù)眾多,,但耗時(shí)較長,;基于SURF的圖像配準(zhǔn)得到的特征點(diǎn)數(shù)、匹配對數(shù)較SIFT算法有所減少,,但運(yùn)算速度明顯提高,;本文提出的改進(jìn)Harris-SURF圖像配準(zhǔn)算法采用Harris算子提高了特征檢測速度,通過限制Harris角點(diǎn)個數(shù)(綜合考慮算法準(zhǔn)確性及速度,,本文取為200)使生成SURF特征描述符階段速度明顯提高,,較少的特征點(diǎn)也使得特征匹配階段速度加快,從而縮減了整個圖像配準(zhǔn)時(shí)間,。雖然較少的特征點(diǎn)減少了匹配對,,但仍能準(zhǔn)確求得圖像間的變換參數(shù)。在整個配準(zhǔn)過程中,,本文提出的圖像配準(zhǔn)方法運(yùn)行速度快,,在保證正確匹配的前提下大幅提高了運(yùn)算速度,。
圖5為用本文算法進(jìn)行圖像拼接的結(jié)果,,5(a)為待拼接3張?jiān)瓱o人機(jī)圖像,其中前兩張是匹配實(shí)驗(yàn)中的原圖,,尺寸均為480×360,。首先采用本文提出的算法配準(zhǔn)圖像,再用加權(quán)平滑算法融合圖像,,其結(jié)果如圖5(b)所示,。從圖5(b)可以看出,本算法較好地完成了圖像的無縫拼接,有效擴(kuò)大了測區(qū)范圍,。
本文將Harris與SURF算法結(jié)合應(yīng)用于無人機(jī)圖像拼接,。通過改進(jìn)的Harris算法對Canny算子邊緣圖像進(jìn)行特征點(diǎn)提取,有效地限制了特征點(diǎn)出現(xiàn)的位置,,從而提高了Harris角點(diǎn)的穩(wěn)定性,;利用SURF特征描述方法減小了圖像旋轉(zhuǎn)和光照的影響,同時(shí)通過限制角點(diǎn)個數(shù)提高了特征描述及匹配效率,;結(jié)合RANSAC算法提純匹配對,,準(zhǔn)確求解透視變換模型參數(shù);采用加權(quán)平滑算法消除亮度差異,,實(shí)現(xiàn)了對無人機(jī)圖像的無縫拼接,。實(shí)驗(yàn)證明,本方法準(zhǔn)確實(shí)現(xiàn)了無人機(jī)圖像拼接,,更大幅提高了運(yùn)算速度,,為解決無人機(jī)圖像拼接問題提供了一種新的快速有效的方法。
參考文獻(xiàn)
[1] 王曉麗,,戴華陽,,余濤,等.基于多分辨率融合的無人機(jī)圖像拼接勻色研究[J].測繪通報(bào),,2013(4):27-30.
[2] 袁媛,,李冬梅,田金炎,,等.無人機(jī)序列影像快速無縫拼接方法研究[J].計(jì)算機(jī)工程與應(yīng)用,,2013,49(17):139-142.
[3] 劉如飛,,劉冰,,盧秀山,等.無人機(jī)原始影像快速拼接系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].測繪科學(xué),,2013,,38(5):170-171,182.
[4] 尹衍升,,趙秀陽,,田曉峰,等.基于特征點(diǎn)提取的復(fù)合材料顯微圖像自動拼接[J].科學(xué)通報(bào),,2006,,51(22):2695-2698.
[5] Zhang Zhengyou, DERICHE R,, FAUGERAS O,, et al. A robust technique for matching two uncalibrated images through the recovery of the unknown epipolar geometry[J]. Artificial Intelligence,, 1995(78):87-119.
[6] LOWE D G. Object recognition from local scale-invariant features[C]. International Conference on Computer Vision, 1999:1150-1157.
[7] LOWE D G. Distinctive image features from scale-invariant keypoints[J]. International Journal of Computer Vision,, 2004,, 60(2):91-110.
[8] Ke Yan, SUKTHANKAR R. PCA-SIFT: a more distinctive representation for local image descriptors[C]. Proceedings of the 2004 IEEE Computer Society Conference on Computer Vision and Pattern Recognition,, 2004:511-517.
[9] DELPONTE E,, ISGRO F, ODONE F,, et al. SVD-matching using SIFT features[J]. Graphical Models,, 2006(68):415-431.
[10] GRABNER M, GRABNER H,, BISCHOF H. Fast approximated SIFT[C]. Proceedings of Asian Conference on Computer Vision,, 2006:918-927.
[11] BAY H, TUYTELAARS T,, GOOL L V. SURF: speeded up robust Features[C]. Proceedings of the European Conference on Computer Vision,, 2006:404-417.
[12] HARRIS C, STEPHENS M. A combine dcorner and edge detector[C]. Processings Fourth Alvey Vision Conference,, 1988:147-151.
[13] FISCHLER M A,, BOLLES R C . Random sample consensus: A Paradigm for model fitting with apphcatlons to image analysis and automated cartography[J]. Graphics and Image Processing, 1981,, 24(6):381-395.