林財(cái)明 衛(wèi)志敏
(華僑大學(xué),福建 廈門 361021)
特定場景大視角視頻拼接技術(shù)研究與實(shí)現(xiàn)
林財(cái)明 衛(wèi)志敏
(華僑大學(xué),福建 廈門 361021)
本文對(duì)視頻拼接設(shè)計(jì)了一個(gè)簡單的框架,主要是采用三路固定攝像進(jìn)行實(shí)時(shí)拼接,在U u n t u 16.04系統(tǒng)安裝O p e n C V開源庫和C U D A 8.0軟件包,并使用該系統(tǒng)搭建視頻拼接框架系統(tǒng)。利用G PU編程技術(shù),對(duì)視頻拼接技術(shù)中最耗時(shí)的特征匹配算法、細(xì)縫估計(jì)、多波段融合和扭曲映射算法進(jìn)行加速。在計(jì)算資源足夠的情況下,利用C U D A進(jìn)行在線實(shí)時(shí)視頻流拼接。
實(shí)時(shí)拼接;多波段融合;加速
由于互聯(lián)網(wǎng)、云計(jì)算、大數(shù)據(jù)的快速發(fā)展,VR(Virtual Reality,即虛擬現(xiàn)實(shí))直播是目前繼體驗(yàn)店最容易商業(yè)化的領(lǐng)域。華人文化(CMC,華人文化基金、華人文化控股的并稱)宣布,旗下體奧動(dòng)力與微鯨科技進(jìn)入體育賽事VR內(nèi)容制作領(lǐng)域,將嘗試在中國國家隊(duì)、中超聯(lián)賽、足協(xié)杯賽、業(yè)余足球聯(lián)賽等足球賽事中提供VR直播信號(hào)。VR技術(shù)是一項(xiàng)目前來說前景不錯(cuò)的技術(shù),在體育賽事領(lǐng)域已有一定應(yīng)用。
視頻拼接技術(shù)是屬于較新的研究領(lǐng)域,存在很大的研究空間。國內(nèi)外對(duì)于視頻拼接都朝著各種方向進(jìn)行研究,并且取得一些成果。該技術(shù)在視頻會(huì)議、軍事監(jiān)控、交通導(dǎo)航等領(lǐng)域得到了廣泛的應(yīng)用。視頻拼接技術(shù)也在VR中是一項(xiàng)非常重要的技術(shù),在此背景下,本文對(duì)特定場景大視角視頻拼接技術(shù)進(jìn)行了研究。
目前,常用的拼接技術(shù)是以AutoStitch軟件的拼接框架為主,該拼接框架已經(jīng)非常成熟,是影像拼接的一個(gè)里程碑。AutoStitch必須滿足兩個(gè)條件:第一,影像疊區(qū)域要近似一個(gè)平面;第二,每個(gè)攝像機(jī)拍攝的光心要在同一點(diǎn)上。如果這兩個(gè)條件不滿足的話,那么因?yàn)橐暡顔栴}帶來的鬼影和模糊現(xiàn)象將會(huì)非常嚴(yán)重。
本文采用的是基于足球場三路攝像頭+算法+CUDA編程的大視角拼接方案,覆蓋整個(gè)足球場。讓三路攝像頭光心盡量重合在一起,三路攝像頭擺放在一個(gè)圓盤上,這樣就可以減少因?yàn)槲锢韱栴}帶來的重疊區(qū)域的鬼影和模糊現(xiàn)象。

圖1 設(shè)計(jì)框架圖
設(shè)計(jì)方案如圖1所示,首先輸入三路視頻流,然后對(duì)三路視頻流的第一幀影像進(jìn)行特征點(diǎn)計(jì)算、匹配,并由特征點(diǎn)計(jì)算出相機(jī)參數(shù),最終配準(zhǔn)出正確的數(shù)據(jù),并計(jì)算出相應(yīng)的單應(yīng)性矩陣;根據(jù)變形的模型和單應(yīng)性矩陣把最終三幅影像映射為一幅影像的關(guān)系式計(jì)算出來,然后進(jìn)行縫隙估計(jì)和曝光補(bǔ)償,使得拼接后的視頻更加自然,最后用多波段融合技術(shù)對(duì)每三幀進(jìn)行融合處理,最終得出視頻拼接的大視角全景圖。
下面分四點(diǎn)闡述拼接的主要技術(shù):
(1)找特征點(diǎn)
本文采用ORB算法,ORB特征是將FAST特征點(diǎn)的檢測方法與BRIEF特征描述子結(jié)合起來,并在它們?cè)瓉淼幕A(chǔ)上做了改進(jìn)與優(yōu)化。首先,它利用FAST特征點(diǎn)檢測的方法來檢測特征點(diǎn),然后利用Harris角點(diǎn)的度量方法,從FAST特征點(diǎn)中挑選出Harris角點(diǎn)響應(yīng)值最大的N個(gè)特征點(diǎn)。其中Harris角點(diǎn)的響應(yīng)函數(shù)定義為:
R=detM-α(traceM)2(1)
我們知道FAST特征點(diǎn)是沒有尺度不變性的,所以我們可以通過構(gòu)建高斯金字塔,然后在每一層金字塔圖像上檢測角點(diǎn),來實(shí)現(xiàn)尺度不變性。那么,對(duì)于局部不變性,我們還差一個(gè)問題沒有解決,就是FAST特征點(diǎn)不具有方向,ORB[1]的論文中提出了利用灰度質(zhì)心法來解決這個(gè)問題。灰度質(zhì)心法假設(shè)角點(diǎn)的灰度與質(zhì)心之間存在一個(gè)偏移,這個(gè)向量可以用于表示一個(gè)方向。對(duì)于任意一個(gè)特征點(diǎn)p來說,我們定義p的鄰域像素的矩為:

其中I(x,y)為點(diǎn)(x,y)處的灰度值。那么可以計(jì)算出圖像的質(zhì)心為:

那么特征點(diǎn)與質(zhì)心的夾角定義為FAST特征點(diǎn)的方向:

要保證該算法具有旋轉(zhuǎn)不變性,需要確保x和y在半徑為r的圓形區(qū)域內(nèi),即x,y∈[-r,r],r等于鄰域半徑。
ORB選擇BRIEF作為特征描述方法,但是特征不具有旋轉(zhuǎn)不變性,所以給BRIEF加上旋轉(zhuǎn)不變性。對(duì)于任意的特征點(diǎn),該描述子是一個(gè)長度為n的二值碼串,該二值串是由特征點(diǎn)周圍的n個(gè)點(diǎn)對(duì)(2n個(gè)點(diǎn))組成的,我們把這2n個(gè)點(diǎn)組成一個(gè)矩陣S:

使用鄰域方向θ和對(duì)應(yīng)旋轉(zhuǎn)矩陣Rθ,構(gòu)建S的一個(gè)校正版本Sθ=RθS其中

而θ就是公式(4)所求,把360o分為12份,然后對(duì)每一份求得Sθ,這樣一個(gè)查找表就創(chuàng)建成功,對(duì)于每一個(gè)θ,我們只需查找表即可快速得到它的點(diǎn)對(duì)集合Sθ。本文將ORB算法編寫成CUDA程序,使其效率更加高效,并用RANSAC算法篩選特征點(diǎn)。
(2)找縫隙
縫合線(Seam Line)是圖像拼接后在重疊區(qū)域內(nèi)形成的一條把兩幅拼接在一起的圖像明顯可區(qū)分開的分界線(又稱“拼接線”)。不消除它,對(duì)拼接圖像的視覺效果將產(chǎn)生不良影響,消除它可采用某種圖像融合策略。消除“拼接線”之前,需先找到“拼接線”在全景圖中的準(zhǔn)確位置,即找到縫合線。目前用于縫合線搜索的主要技術(shù)有基于動(dòng)態(tài)規(guī)劃法,該種方法依據(jù)一定的相似性準(zhǔn)則找出符合最優(yōu)條件的縫合線。
(3)融合圖像
簡單的線性融合會(huì)使得影像的高頻部分被模糊,而多波段融合可以很好地解決這個(gè)問題,本文對(duì)于每一幅影像融合掩模公式(7)如下:

如果坐標(biāo)(x,y)的值有最大權(quán)重,那么相應(yīng)映射的位置設(shè)為1,否則設(shè)為0。最大權(quán)重映射通過和連續(xù)的高斯函數(shù)進(jìn)行卷積產(chǎn)生融合映射:

在這個(gè)公式中,wiσ(x,y)是0到σ寬度的融合權(quán)重。新的波段頻率由公式(10)產(chǎn)生,相應(yīng)的權(quán)重由公式(11)產(chǎn)生。


本文利用GPU對(duì)高斯金字塔和拉普拉斯金字塔算法進(jìn)行編程,提高算法的執(zhí)行速度,以實(shí)現(xiàn)視頻實(shí)時(shí)拼接。
(4)Warps image部分
可以采用很多模型來進(jìn)行圖像扭曲,因?yàn)閷?duì)于不同的場景,全局單應(yīng)性矩陣的對(duì)齊能力并不是十分完美,所以需要用更厲害的矩陣或者更多的單應(yīng)性矩陣來解決。J Gao提出將場景劃分為背景平面和前景平面,用兩個(gè)單應(yīng)性矩陣分別對(duì)齊背景和前景,這種方法可以無縫拼接大部分現(xiàn)實(shí)場景,但是需要拼接影像具有可以劃分為前景和背景的約束[2]。林溫燕提出用多個(gè)仿射變換,六參數(shù)的homography矩陣,經(jīng)過仿射變換的平行線依舊保持平行,能把正方形變成四邊形,局部變形和對(duì)齊能力很好,在某種程度上可以處理由視差帶來的重影問題[3]。J Zaragoza提出一種新的homography,主要將圖像劃分為密集網(wǎng)格,每個(gè)網(wǎng)格都用一個(gè)單應(yīng)性矩陣對(duì)齊,并給出一套高效的計(jì)算方法Moving DLT。但是計(jì)算如此多單應(yīng)性矩陣,計(jì)算量極大,所以此處必須用GPU編程實(shí)現(xiàn),否則實(shí)時(shí)拼接是不可能的。2014年張帆提出的拼接方案是在整個(gè)重疊區(qū)域所有的輸入圖像并不需要精確對(duì)齊。采用混合對(duì)齊模型,開發(fā)一種隨機(jī)算法來尋找最佳的單應(yīng)性矩陣,將單應(yīng)性矩陣和content-preserving warping進(jìn)行結(jié)合,最后將對(duì)齊的影像用標(biāo)準(zhǔn)的seam-cuting算法和多波段融合算法組合起來,可以有效處理視差和局部畸變問題[4]。張哲瀚提出的變形方法則是采用分三大塊處理,借鑒圖像縮放形狀保持的方法,非重疊區(qū)域逐漸過渡到全局相似變換,能把正方形變成矩形,并對(duì)整個(gè)圖像增加相似變換約束,矯正拼接圖像的形狀,減小由于投影帶來的畸變問題[5]。林宗慶提出的變形方法是用對(duì)單應(yīng)性矩陣進(jìn)行約束,不過它采用兩種線性單應(yīng)性矩陣和全局相似變換相結(jié)合來進(jìn)行影像的拼接[6]。
以上的變形方案都是對(duì)單應(yīng)性矩陣做文章,但不同方案相應(yīng)的計(jì)算量都很大,對(duì)于不同場景,如果想利用比較好的單應(yīng)性矩陣,就得優(yōu)先考慮GPU編程。
三路視頻拼接最重要的問題就是實(shí)時(shí)性,還有本文采用的大視角拼接系統(tǒng),三路攝像頭擺放位置都是固定的,所以針對(duì)影像拼接框架中,利用特征點(diǎn)計(jì)算單應(yīng)性矩陣,本文只計(jì)算一次,然后利用它進(jìn)行后續(xù)的處理。

圖2 輸入影像

圖3 輸出影像
由于本文的實(shí)現(xiàn)目標(biāo)是想達(dá)到實(shí)時(shí)性,但是由于細(xì)縫估計(jì)和多波段融合方面的耗時(shí)比較大,所以將這兩部分算法用GPU編程實(shí)現(xiàn),目前所能達(dá)到的效果是720p三路視頻每秒20幀左右,實(shí)現(xiàn)平臺(tái)i7-7700hq,系統(tǒng)ubuntu16.04,GPU為TITAN BLACK。本文采用扭曲方式是圓柱映射,這部分算法代碼也需要用GPU編程來實(shí)現(xiàn)。
本文采用三路視頻對(duì)足球場進(jìn)行拼接,首先計(jì)算速度慢,因?yàn)獒槍?duì)單應(yīng)性矩陣的優(yōu)化方法,很多文章都有提及,但是想擴(kuò)展到視頻拼接上,最直接的思路是利用GPU的并行來加速單應(yīng)性矩陣的計(jì)算。對(duì)拉普拉斯金字塔融合算法進(jìn)行優(yōu)化,并移植在GPU上運(yùn)行,可以消除小部分的重影問題。對(duì)視頻進(jìn)行實(shí)時(shí)拼接,利用CUDA進(jìn)行加速,是一個(gè)目前來說最完美的方案。
[1]Rublee E,Rabaud V,Konolige K,et al. ORB: an efficient alternative to SIFT or SURF. Proceedings of the IEEE International Conference on Computer Vision,Barcelona,Spain,2011: 2564—2571.
[2]Gao, J., Kim, S.J., Brown, M.S.: Constructing image panoramas using dual-homography warping. In: Proceedings of the 2011 IEEE Conference on Computer Vision and Pattern Recognition. pp. 49{56. CVPR '11 (2011).
[3]W.-Y. Lin, S. Liu, Y. Matsushita, T.-T. Ng, and L.-F. Cheong. Smoothly varying affine stitching. In Computer Vision and Pattern Recognition (CVPR), 2011 IEEE Conference on, pages 345–352. IEEE, 2011.
[4]F. Zhang and F. Liu. Parallax-tolerant image stitching. In Computer Vision and Pattern Recognition (CVPR), 2014 IEEE Conference on. IEEE,2014.
[5]Chang, C.H., Sato, Y., Chuang, Y.Y.: Shape-preserving half-projective warps for image stitching. In: Proceedings of the 2014 IEEE Conference on Computer Vision and Pattern Recognition. pp. 3254{3261. CVPR ' 14 (2014).
[6]C.-C. Lin, S. U. Pankanti, K. N. Ramamurthy, and A. Y. Aravkin, “Adaptive as- natural- as- possible image stitching,”in Proc. IEEE Conf.Comput. Vis. Pattern Recog., Jun. 2015, pp. 1155–1163.
[7]Brown, M., Lowe, D.G.: Recognizing panoramas. In: Proceedings of the Ninth IEEE International Conference on Computer Vision - Volume 2. pp. 1218{. ICCV'03 (2003).
[8]Brown, M., Lowe, D.G.: Automatic panoramic image stitching using invariant features. Int. J. Comput. Vision 74(1), 59{73 (Aug 2007).
[9]Carroll, R., Agrawal, M., Agarwala, A.: Optimizing content- preserving projections for wide- angle images. ACM Transactions on Graphics 28(3), 43 (2009).
Research and Realization of Large-angle Video Stitching Technology in Specific Scene
Lin Caiming Wei Zhimin
(Huaqiao University,Xiamen 361021,Fujian)
tract】 This paper designs a simple framework for video stitching,mainly using three fixed camera for real-time stitching;installs OpenCV base and CUDA8.0 software package in the Uuntu16.04 system;and uses the system to build video stitching frame system.It uses GPU programming technology to accelerate the most time-consuming algorithms of video stitching technology,such as feature matching,slit estimation,multi-band fusion and twist mapping.With sufficient calculation resources,CUDA is used for the online real-time video stream stitching.
words】 real-time stitching;multi-band fusion;accelerate
TP391.41
A
1008-6609(2017)04-0025-03
林財(cái)明(1991-),男,福建泉州人,碩士研究生,研究方向?yàn)閳D像處理、機(jī)器學(xué)習(xí)、深度學(xué)習(xí)。
華僑大學(xué)研究生科研創(chuàng)新能力培育計(jì)劃資助項(xiàng)目,項(xiàng)目編號(hào):1511401021。