鄭 暉,姜 城,孫 敏*,黎 曉 東,任 翔,劉 磊
(1.中國礦業(yè)大學(xué)(北京)地球科學(xué)與測繪工程學(xué)院,北京 100083;2.北京大學(xué)遙感與地理信息系統(tǒng)研究所,北京 100871)
?
一種近實(shí)時(shí)的無人機(jī)視頻流拼接方法
鄭 暉1,2,姜 城2,孫 敏2*,黎 曉 東2,任 翔2,劉 磊2
(1.中國礦業(yè)大學(xué)(北京)地球科學(xué)與測繪工程學(xué)院,北京 100083;2.北京大學(xué)遙感與地理信息系統(tǒng)研究所,北京 100871)
為了解決無人機(jī)視頻流的快速拼接問題,提出一種近實(shí)時(shí)的視頻流拼接方法。該方法校正了傾斜拍攝帶來的變形,改進(jìn)了ORB算法特征提取和構(gòu)建描述子的策略,提高了特征點(diǎn)的穩(wěn)定性和描述子的判別性,在保證較高匹配率和足夠匹配點(diǎn)對的同時(shí)提高了幀間變換模型的精度;最后為降低拼接誤差,根據(jù)GPS數(shù)據(jù)和給定重疊度構(gòu)建平衡二叉樹,選取離二叉樹節(jié)點(diǎn)最近的圖像作為參考投影面完成拼接。實(shí)驗(yàn)結(jié)果表明:該方法減少了級聯(lián)誤差累積帶來的影響,提高了拼接影像的質(zhì)量,可用于無人機(jī)視頻流的近實(shí)時(shí)拼接。
無人機(jī);視頻流拼接;傾斜拍攝;幾何校正;級聯(lián)誤差
無人機(jī)作為一種新的航空遙感平臺,可以在人力無法進(jìn)入的危險(xiǎn)區(qū)域進(jìn)行低空作業(yè),快速獲取大范圍清晰的航拍視頻,為抗震救災(zāi)、應(yīng)急救援及時(shí)提供參考資料。但是,實(shí)時(shí)傳輸?shù)囊曨l流幀幅較小,難以全面表達(dá)拍攝區(qū)域的完整信息。為了快速獲取拍攝區(qū)域大范圍的影像,滿足突發(fā)事件和災(zāi)害發(fā)生時(shí)的應(yīng)急需求,無人機(jī)視頻流的快速拼接可以有效地彌補(bǔ)攝像機(jī)拍攝角度和視野狹小的限制,更全面地展現(xiàn)拍攝區(qū)域的全貌。
現(xiàn)有的航拍視頻拼接的主流算法是基于特征匹配的方法,通過提取、匹配視頻圖像的特征點(diǎn),快速計(jì)算視頻圖像間的變換參數(shù),進(jìn)而完成視頻的拼接。如王家寶等[1]通過降低差分金字塔層數(shù)、減少特征點(diǎn)提取個(gè)數(shù)提高SIFT特征提取和匹配的效率,分別對29幀分辨率為704×480的視頻幀圖像和70幀分辨率為640×360的視頻幀圖像進(jìn)行實(shí)驗(yàn),雖然達(dá)到了近實(shí)時(shí)的處理速度,但并沒有給出最后的拼接結(jié)果。劉善磊等[2]利用相位相關(guān)法給定視頻幀間重疊度提取關(guān)鍵幀,用改進(jìn)的SURF算法完成了視頻幀的匹配和拼接,但只選取10幀圖像做實(shí)驗(yàn),并且最后的全景圖有明顯的扭曲和變形;程詠梅等[3]將圖像形狀信息引入SIFT特征描述子,利用雙向匹配對無人機(jī)航拍視頻圖像進(jìn)行了拼接,在一定程度上提高了配準(zhǔn)的魯棒性,但計(jì)算復(fù)雜,很難用于實(shí)時(shí)拼接;楊濤等[4]將Harris角點(diǎn)和SIFT特征描述子結(jié)合,對小分辨率(320×240)的航拍序列圖像實(shí)時(shí)處理,達(dá)到了精確的圖像配準(zhǔn)效果,但處理后的幀圖像分辨率低、時(shí)長較短。上述方法都沒有探討長航時(shí)、大范圍、高分辨率的視頻流拼接產(chǎn)生的畸變和誤差問題。
由于基于特征的方法偏重于紋理豐富的區(qū)域,而在紋理單一的區(qū)域(如湖泊、海洋),甚至無法提取出特征點(diǎn)。針對由圖像紋理分布不均勻?qū)е绿卣鼽c(diǎn)分布不均勻的問題,申浩等[5]通過空間約束和限制角點(diǎn)數(shù)量獲得分布均勻的FAST角點(diǎn),然后分析不同采樣方法對構(gòu)建描述子的影響,最后簡單實(shí)現(xiàn)拼接,但未討論拼接縫的消除和勻光。楊宇博等[6]提出了一種基于分塊Harris特征的航拍視頻拼接方法,分別對29幀分辨率為720×576的航拍視頻幀圖像和50幀分辨率為1 200×1 000的模擬航空視頻幀圖像進(jìn)行實(shí)驗(yàn),雖然可以均勻地提取圖像中心區(qū)域的角點(diǎn),但仍未研究長航時(shí)、大范圍的視頻流拼接產(chǎn)生的畸變和誤差。周國清[7]在1 m分辨率的數(shù)字正射影像圖上選取分布均勻的地面控制點(diǎn)計(jì)算視頻幀的內(nèi)外方位元素,并通過光束法平差將幀圖像校正為正射圖像后將按照地理坐標(biāo)鑲嵌,其處理方法可達(dá)到近實(shí)時(shí)的效果,但在突發(fā)事件和災(zāi)害發(fā)生時(shí),很難及時(shí)獲取地面控制點(diǎn)的信息。
本文從應(yīng)急救援需求出發(fā),提出一種近實(shí)時(shí)的視頻流拼接方法。該方法首先校正了傾斜拍攝帶來的變形,然后利用飛行姿態(tài)參數(shù)對無人機(jī)視頻圖像進(jìn)行幾何校正,通過匹配均勻提取的特征點(diǎn),快速得到幀間變換模型進(jìn)行拼接,可以近實(shí)時(shí)獲取拍攝區(qū)域的完整信息,及時(shí)為抗震救災(zāi)、災(zāi)后重建與恢復(fù)提供參考資料。
為了解決較大范圍視頻流的快速拼接問題,本文首先根據(jù)POSE數(shù)據(jù)和航跡規(guī)劃時(shí)給定的重疊度選取關(guān)鍵幀并確定相鄰幀間的重疊區(qū)域;然后將重疊區(qū)域分塊,利用最佳鄰域魯棒描述子,提高ORB算法中描述子的判別性,在保證高匹配率的同時(shí)提高匹配速度;最后利用RANSAC算法估計(jì)幀間變換模型的參數(shù)建立變換模型,遞歸構(gòu)建平衡二叉樹,選取離節(jié)點(diǎn)位置最近的圖像作為投影面,完成視頻幀的拼接和融合。
1.1 關(guān)鍵幀選取算法
關(guān)鍵幀的選取是視頻流拼接的基礎(chǔ),本文根據(jù)無人機(jī)實(shí)時(shí)下傳的航跡數(shù)據(jù)(離線情況下,使用無人機(jī)記錄的航跡數(shù)據(jù)),在給定重疊度下推導(dǎo)自動(dòng)提取關(guān)鍵幀時(shí)間間隔的公式。在自動(dòng)提取關(guān)鍵幀時(shí),以平均航高作為標(biāo)準(zhǔn)確定開始和結(jié)束選取關(guān)鍵幀的時(shí)刻,從而剔除爬升和降落兩個(gè)階段的視頻幀圖像。
假設(shè)某時(shí)刻無人機(jī)的航高為H(單位:m),速度為v(單位:m/s),所采用攝像機(jī)的傳感器寬、高、焦距分別為w、h、f(單位:mm),考慮傾斜拍攝(相機(jī)與水平面之間的夾角為θ,導(dǎo)致圖像代表的實(shí)際地面寬度呈現(xiàn)下窄上寬)的影響,在給定重疊度D的情況下,自動(dòng)提取視頻幀的時(shí)間間隔推導(dǎo)如下:
幀幅下寬:
(1)
幀幅上寬:
(2)
幀幅高:
(3)
為保證x方向的重疊度,在t秒后攝像機(jī)在x方向上的重疊度為:
(4)
在y方向上的重疊度為:
(5)
在保證重疊度的情況下,x方向和y方向上的時(shí)間間隔可表示為:
(6)
1.2 構(gòu)建最佳鄰域魯棒描述子
目前,特征檢測算法主要有SIFT[8]、SURF[9]、FAST[10]、BRIEF[11]、ORB[12]、BRISK[13]等,這些算法針對不同情況下圖像的變化問題,分別提出了各自的特征檢測策略。如SIFT、SURF算法對圖像的旋轉(zhuǎn)、尺度、模糊、光照均有較好的魯棒性,但其計(jì)算復(fù)雜,不適合視頻的實(shí)時(shí)處理;FAST、BRIEF、ORB、BRISK等算法計(jì)算簡單,可以對視頻高效處理,其中ORB算法不但不受旋轉(zhuǎn)變化的影響,而且對噪聲和光照變化也有一定的魯棒性。
本文在特征提取部分,采用ORB算法中的策略,在不同尺度空間計(jì)算FAST特征候選點(diǎn),通過非極大值抑制的方法確定特征點(diǎn),并計(jì)算其主方向。在特征描述部分,為了尋找最佳二值描述方式,對鄰域大小和進(jìn)行對比時(shí)選取的像素個(gè)數(shù)進(jìn)行了分析,并以匹配率和匹配點(diǎn)對數(shù)量為判斷標(biāo)準(zhǔn)進(jìn)行實(shí)驗(yàn)。
構(gòu)建描述子時(shí),在特征點(diǎn)周圍N×N個(gè)像素范圍內(nèi)隨機(jī)選取像素點(diǎn)比較灰度值,將比較結(jié)果組合成一個(gè)二進(jìn)制的描述子串。由于在大范圍內(nèi)選取對比點(diǎn)對相比小范圍描述子的相關(guān)性較低,判別性較高,在匹配時(shí)更容易成功,但是范圍太大會導(dǎo)致描述子差異性過大而無法匹配。因此,為了確定構(gòu)建描述子的最佳鄰域,在實(shí)驗(yàn)時(shí)N的取值范圍設(shè)置為[10,70],遞增步長為5個(gè)像素。另外,為了分析選取對比點(diǎn)個(gè)數(shù)n對匹配數(shù)量和匹配率的影響,實(shí)驗(yàn)中分別隨機(jī)選取2個(gè)和4個(gè)像素點(diǎn)構(gòu)建描述子進(jìn)行對比。為了評估描述子的判別性,在無人機(jī)視頻序列中選取了3組照片(圖1),分別是紋理豐富的城區(qū)圖像、紋理單一的麥田道路圖像和飛機(jī)轉(zhuǎn)彎時(shí)具有不同尺度且有較大旋角的圖像進(jìn)行匹配實(shí)驗(yàn)。
圖1 實(shí)驗(yàn)采用的圖像
Fig.1 Images used in experiments
圖2表示鄰域大小和隨機(jī)點(diǎn)對個(gè)數(shù)對匹配率和匹配點(diǎn)對數(shù)量的影響,圖中橫坐標(biāo)軸表示選取對比點(diǎn)對時(shí)特征點(diǎn)的鄰域范圍。實(shí)驗(yàn)結(jié)果表明:較小范圍內(nèi)的匹配點(diǎn)對數(shù)目較多,但匹配率較低,與上文“小范圍內(nèi)構(gòu)建的描述子相關(guān)性大、判別性低”結(jié)論一致。在較大范圍內(nèi)隨機(jī)選取對比點(diǎn)對時(shí),由于描述子的不相關(guān)性過大使得匹配點(diǎn)對數(shù)量急劇減少,會大大降低變換模型的精度,導(dǎo)致拼接失敗。
圖2 不同鄰域大小和隨機(jī)點(diǎn)對個(gè)數(shù)的結(jié)果
Fig.2 The results of different neighborhood size and random points
從對比圖可看出當(dāng)鄰域范圍在40×40個(gè)像素左右時(shí),匹配率在80%以上,保證了匹配的有效性,減少了剔除誤匹配時(shí)的迭代時(shí)間。此時(shí),匹配點(diǎn)對在40對以上,數(shù)量適中,可將其用于估計(jì)變換模型進(jìn)行拼接。因此,建議鄰域大小的最佳范圍為[35,45],拼接實(shí)驗(yàn)中選擇N=40。對于選擇對比點(diǎn)對的個(gè)數(shù),當(dāng)n=2時(shí),特征點(diǎn)描述子判別性較低,即便用RANSAC算法剔除誤匹配,仍不能保證錯(cuò)誤匹配完全消除;當(dāng)n=4時(shí),特征點(diǎn)描述子判別性較高,雖然匹配點(diǎn)對數(shù)量有所下降,仍然獲得了較好的匹配結(jié)果。拼接實(shí)驗(yàn)取n=4。以上3組圖的匹配結(jié)果如圖3所示,其中左列圖N=40,n=4,右列圖N=30,n=2。該實(shí)驗(yàn)部分,所有圖像在特征檢測、特征匹配平均耗時(shí)分別為98.97 ms、50.16 ms,因此,對640×480分辨率的視頻流可以實(shí)時(shí)處理。
1.3 基于平衡二叉樹的動(dòng)態(tài)航帶拼接
無人機(jī)視頻流的拼接一般選擇第一幀圖像作為投影面,最后一幅圖像需要經(jīng)過n-1次透視投影變換,這樣就造成航帶尾部偏離航線。本文通過構(gòu)建平衡二叉樹進(jìn)行拼接,不僅減少了投影變換次數(shù),并且減小了航帶尾部的變形。具體算法過程如下:1)根據(jù)式(1)-式(6)選取關(guān)鍵幀,然后提取特征點(diǎn)并構(gòu)建最近鄰域內(nèi)的魯棒描述子,用漢明距離匹配,并用RANSAC算法剔除誤匹配,計(jì)算幀間變換模型參數(shù);2)根據(jù)傳感器尺寸、航高和圖像間重疊度確定航帶中心位置及航帶兩端的經(jīng)緯度坐標(biāo)和圖像數(shù)量;以航帶中心位置的經(jīng)緯度作為根節(jié)點(diǎn),航帶兩端的經(jīng)緯度坐標(biāo)作為最底層的左右葉子節(jié)點(diǎn)構(gòu)建平衡二叉樹;3)在透視投影變換時(shí),以離各節(jié)點(diǎn)位置最近的幀圖像為投影面進(jìn)行拼接。該遍歷過程從平衡二叉樹最底層的左葉子節(jié)點(diǎn)開始,到平衡二叉樹最底層的右葉子節(jié)點(diǎn)為止。
圖3 采用不同鄰域范圍和對比點(diǎn)對時(shí)的匹配率
Fig.3 Matching rate with different neighborhood range and contrast points pair
實(shí)驗(yàn)平臺為Intel Pentium雙核處理器,主頻2.8 GHz,內(nèi)存3.25 GB,顯卡為英偉達(dá)GT640 2 GB顯存,采用了C實(shí)現(xiàn)代碼編寫。實(shí)驗(yàn)數(shù)據(jù)為一段20 min的航空視頻,攝像機(jī)與水平面夾角為23°,分辨率為640×480,幀率為30幀/s。
2.1 選取關(guān)鍵幀
本實(shí)驗(yàn)首先讀取POSE數(shù)據(jù),得到無人機(jī)飛行的平均航高為174.43 m,平均速度為9.27 m/s,攝像機(jī)采用索尼HDR-CX180E,傳感器尺寸為4 mm,攝像機(jī)焦距為2.1 mm,給定重疊度為60%,通過式(6)可求出選取關(guān)鍵幀的時(shí)間間隔為11.17 s。表1是取視頻中10幀圖像時(shí)的采樣間隔。由于平均航高中包含了部分爬升和降落過程,因此,平均選取關(guān)鍵幀的間隔為10 s,共取得37幀圖像。
表1 10幀圖像的采樣間隔
Table 1 Sampling interval of 10 frames
幀數(shù)12345678910當(dāng)前幀id5935622465596939728276317992834987099059采樣間隔(s)…9.6311.1712.711.4311.612.0311.912.011.7…
2.2 關(guān)鍵幀快速拼接
由于視頻采集時(shí)為傾斜拍攝,并且攝像機(jī)不規(guī)律的抖動(dòng)會導(dǎo)致每幀圖像都有不同程度的形變,拼接時(shí)需要校正。圖4是利用未經(jīng)過校正的圖像拼接的結(jié)果,圖中的道路有明顯的錯(cuò)位,并且級聯(lián)誤差累積造成航帶尾端偏離;圖5利用的幀圖像首先校正了傾斜拍攝帶來的變形,然后利用改進(jìn)的ORB算法對其進(jìn)行特征提取、特征匹配,利用CUDA C編程加速融合拼接,最終獲得完整航線的拼接圖。圖中的道路連接良好,并且保證了透視變換的直線特征。為了對比本文算法效果,分別采用PTGui和Hugin軟件進(jìn)行拼接處理,圖6展示了兩者的拼接結(jié)果,由于傾斜拍攝造成的圖像變形較大,這兩種軟件都不能完全拼接,只能拼接部分圖像(圖5中虛線框內(nèi)部分),并且圖像中的道路呈現(xiàn)不同程度的彎曲,航帶尾部嚴(yán)重變形,視覺效果很差。
圖4 原始圖像拼接結(jié)果
Fig.4 The mosaic result of original image
圖5 校正后圖像拼接的全景圖
Fig.5 Panorama after calibration
圖6 利用其他軟件拼接的結(jié)果
Fig.6 The mosaic results using other softwares
2.3 拼接誤差分析
按照重疊率為60%,如果將第一幅圖像作為投影面,則每幅圖像在保證至少30%的重疊度的情況下,n-1幅圖像都投影到第一幅圖像的級聯(lián)次數(shù)為:
(7)
本文方法中構(gòu)建平衡二叉樹的層數(shù)為i,每層節(jié)點(diǎn)個(gè)數(shù)為2i-1,第i層余n%2個(gè)節(jié)點(diǎn),投影變換的級聯(lián)次數(shù)為:
(8)
實(shí)驗(yàn)中n=37,所以N1=306,i=5,N2=125。本文方法遞歸構(gòu)建平衡二叉樹,動(dòng)態(tài)選取投影面,不僅減少了級聯(lián)次數(shù),而且最終以航帶中間幀作為投影面減小了航帶尾部的變形。
本文充分利用了航線規(guī)劃獲取的數(shù)據(jù)和無人機(jī)的飛行數(shù)據(jù),針對大范圍、大旋角的航拍視頻提出了一種近實(shí)時(shí)的視頻流拼接方法。該方法對傾斜視頻拍攝進(jìn)行補(bǔ)償,利用POSE數(shù)據(jù)確定幀間重疊區(qū)域并對其分塊,在提高了ORB算法穩(wěn)定性的同時(shí)保證了特征點(diǎn)在重疊區(qū)域的均勻分布,完成了復(fù)雜相機(jī)運(yùn)動(dòng)模型下視頻流的近實(shí)時(shí)拼接。實(shí)驗(yàn)結(jié)果表明:該方法減少了級聯(lián)誤差累積帶來的影響,提高了拼接影像的質(zhì)量,可用于航拍視頻的近實(shí)時(shí)拼接。但是,由于航帶間不同的傾斜角度導(dǎo)致圖像完全相反的變形,因此并未實(shí)現(xiàn)無人機(jī)視頻傾斜拍攝情況下的多航帶拼接問題。
[1] 王家寶,張亞非,陸建江,等.基于特征的航空視頻序列拼接方法[J].解放軍理工大學(xué)學(xué)報(bào)(自然科學(xué)版),2012,13(2):159-164.
[2] 劉善磊,王光輝,石善球,等.一種無人機(jī)視頻幀自動(dòng)拼接方法[J].測繪科學(xué),2013,38(5):69-71.
[3] 程詠梅,張紹武,花永強(qiáng),等.基于SIFT聯(lián)合描述子的航拍視頻圖像鑲嵌[J].西北工業(yè)大學(xué)學(xué)報(bào),2010,28(1):51-56.
[4] 楊濤,張艷寧,張秀偉,等.基于場景復(fù)雜度與不變特征的航拍視頻實(shí)時(shí)配準(zhǔn)算法[J].電子學(xué)報(bào),2010,38(5):1069-1077.
[5] 申浩,李書曉,申意萍,等.航拍視頻幀間快速配準(zhǔn)算法[J].航空學(xué)報(bào),2013,34(6):1405-1413.
[6] 楊宇博,程承旗.基于分塊Harris特征的航拍視頻拼接方法[J].北京大學(xué)學(xué)報(bào)(自然科學(xué)版),2013(4):657-661.
[7]ZHOUGQ.Geo-referencingofvideoflowfromsmalllow-costcivilianUAV[J].AutomationScience&EngineeringIEEETransactionsOn,2010,7(1):156-166.
[8]LOWEDG.Distinctiveimagefeaturesfromscale-invariantkeypoints[J].InternationalJournalofComputerVision,2004,60(2):91-110.
[9]HEBERTB,ANDREASE,TINNET,etal.SURF:Speededuprobustfeatures[J].ComputerVision&ImageUnderstandingCviu,2008,110(3):404-417.
[10] ROSTEN E,TOM D.Machine learning for high-speed corner detection[A].Proceedings of the 9th European Conference on Computer Vision(ECCV)[C].2006.430-443.
[11] MICHAEL C,VINCENT L,CHRISTOPH S,et al.Brief:Binary robust independent elementary features[A].Proceedings of the 11th European Conference on Computer Vision(ECCV)[C].2010.778-792.
[12] RUBLEE E,RABAUD V,KONOLIGE K,et al.ORB:An efficient alternative to SIFT or SURF[J].ICCV,2011,58(11):2564-2571.
[13] LEUTENEGGER S,CHLI M,SIEGWART R Y.BRISK:Binary robust invariant scalable keypoints[J].ICCV,2011,58(11):2548-2555.
A Nearly Real-Time UAV Video Frame Mosaic Method
ZHENG Hui1,2,JIANG Cheng2,SUN Min2,LI Xiao-dong2,REN Xiang2,LIU Lei2
(1.CollegeofGeoscienceandSurveyingEngineering,ChinaUniversityofMining&Technology(Beijing),Beijing100083;2.InstituteofRS&GIS,PekingUniversity,Beijing100871,China)
In order to solve the problem of quick UAV video frame mosaic,a nearly real-time method is proposed.In this method,the image distortion resulted from oblique shooting is corrected,the strategy of feature extraction and descriptor construction in the ORB algorithm are improved,and the stability of feature points is increased,as well as distinction of descriptors.As a result,the precision of transformation models between frames is improved without decreasing the matching ratio or the number of matching points.In addition,the frame nearest to the node of the balanced binary tree is chosen as the projective plane,so that mosaic errors can be minimized.The experiment result shows that after applying this method to the mosaic processing,the cascading error is reduced,and the quality of result mosaic images is improved.What′s more,this method is qualified for nearly real-time tasks.
UAV;video flow mosaic;inclined shooting;geometric correction;cascading error
2015-05-25
國家科技支撐計(jì)劃項(xiàng)目(2012BAH27B02;2012BAK12B02)
鄭暉(1987-),男,博士研究生,研究方向?yàn)闊o人機(jī)視頻流處理。*通訊作者E-mail:sunmin@pku.edu.cn
10.3969/j.issn.1672-0504.2015.05.001
P231
A
1672-0504(2015)05-0001-05