一種基于改進的surf算法的實時視頻拼接方法
【專利摘要】本發(fā)明公開了一種實時視頻拼接方法,屬于視頻圖像處理技術(shù)領(lǐng)域。本發(fā)明的實時視頻拼接方法利用相位相關(guān)法計算待拼接視頻幀圖像的重疊區(qū)域。對SURF(Speeded UP Robust Features)算法進行了改進,簡化了SURF算法中特征點描述子的生成過程并降低了描述子維數(shù),利用改進的SURF算法提取視頻幀重疊區(qū)域的特征點;提出一種基于特征分塊匹配的圖像配準方法,對特征點進行匹配,減少了計算量,提高了計算效率,并利用特征分塊匹配快速求取圖像變換模型;最后提出一種基于相關(guān)系數(shù)的投影矩陣更新方法,用于更新投影矩陣,防止出現(xiàn)錯誤的拼接結(jié)果。最后對視頻幀圖像進行融合,從而實現(xiàn)實時視頻拼接。
【專利說明】
一種基于改進的SURF算法的實時視頻拼接方法
技術(shù)領(lǐng)域
[0001 ]本發(fā)明涉及一種視頻拼接方法,將來自兩個攝像頭的視頻流進行實時拼接,屬于 圖像視頻處理技術(shù)領(lǐng)域。
【背景技術(shù)】
[0002] 視頻拼接是將相互之間有部分重疊區(qū)域的多個視頻拼接成一段寬視野、高分辨率 的全景視頻,它是在圖像拼接的基礎(chǔ)上發(fā)展起來的,是圖像拼接技術(shù)的應(yīng)用和擴展。視頻拼 接技術(shù)被廣泛的應(yīng)用在智能監(jiān)控、視頻會議、醫(yī)學(xué)顯微視頻、航拍視頻等領(lǐng)域。
[0003] 視頻拼接是將多個攝像頭拍攝到的視頻流拼接成一個全景視頻。不同于圖像拼接 的是視頻拼接對時間要求比較高,所以現(xiàn)有的視頻拼接方法都考慮到了時間復(fù)雜度,但是 實時性比較差。Zheng M等人[參見文獻Zheng M, Chen X,Guo L. Stitching Video from ffebcams[C].Lecture Notes In Computer Science; Proceedings of the 4th International Symposium on Advances in Visual Computing, Part II,2008:420-429]開發(fā)了一個基于攝像頭的視頻實時拼接系統(tǒng),該系統(tǒng)只在初始化階段計算投影矩陣, 之后就不再計算投影矩陣,整個過程就利用同一個投影矩陣進行拼接。該系統(tǒng)可以實現(xiàn)實 時性,但是算法不穩(wěn)定,容易出現(xiàn)拼接錯誤。Zhang H等人[參見文獻:Zhang H, Zeng W. Foreground based Borderline Adjusting for Real Time Multi-Camera Video Stitching[C]. Fifth International Conference on Image and Graphics( ICIG), 2009: 355-360]提出了一種采用前景信息調(diào)整邊界的算法,對于處理前景物體通常會在拼 接邊界處產(chǎn)生裂縫有較好的處理效果,但是不能實現(xiàn)實時性。雷中鋒[參見文獻:雷中鋒. 視頻拼接及在可視化網(wǎng)上購物中的應(yīng)用[D].北京:北京工業(yè)大學(xué),2004]提出了針對多 個攝像頭的基于視頻幀圖像不同序列進行加權(quán)平均圖像拼接算法,運算簡單、速度快,但是 得到的參數(shù)精確性差、誤差大,從而使得最終拼接的視頻幀圖像質(zhì)量不理想。
[0004] 在圖像拼接技術(shù)中,基于特征點的拼接方法由于具有穩(wěn)定性、魯棒性和精確性等 優(yōu)點而得到廣泛應(yīng)用。但是檢測特征點是個耗時的過程,所以在視頻拼接中不適合檢測每 一幀圖像的特征點。視頻幀圖像之間存在空間相關(guān)性,可以利用該相關(guān)性省去部分幀圖像 的特征點檢測。T. Shimizu 等人[參見文獻:T. Shimizu, A. Yoneyama and Y. Takishima, "A fast video stitching method for motion-compensated frames in compressed video streams", International Conference on Consumer Electronics, 2006]給出了一個簡化方法,利用相鄰幀圖像的空間相關(guān)性、結(jié)合全局運動矢量跟蹤特征 點,跟蹤到的特征點作為后續(xù)幀的特征點。張朝偉等人[參見文獻:張朝偉,周焰,王耀康, 程焱.基于SIFT特征跟蹤匹配的視頻拼接方法[J].計算機工程與應(yīng)用.2008,44(10): 169-172]通過對相鄰幀間特征運動估計得到后續(xù)幀的匹配特征,加快了拼接速度,但是也 只能達到5幀/秒。
[0005] 基于上述講到的問題和方法,本文提出一種新的實時視頻拼接方法。該方法對現(xiàn) 有的視頻拼接方法進行三方面的改進:第一是對特征檢測SURF算法進行改進,提高特征檢 測的速度;第二是對特征匹配進行分塊匹配,提高特征匹配的效率;第三是利用相關(guān)系數(shù)實 現(xiàn)投影矩陣的更新,得到效率和精度相對較為均衡的效果。通過以上改進,實現(xiàn)了視頻的實 時拼接。
[0006] 由于圖像中往往可以提取出很多特征點,對于視頻拼接而言,只需要找到兩幅待 拼接視頻幀的匹配特征點即可,所以本文只對視頻幀重疊區(qū)域提取特征點,以降低計算量。 本文利用吳學(xué)文(參見文獻:吳學(xué)文.一種基于重疊區(qū)域SIFT特征點的圖像拼接方法[P]. 中國.102968777. 2013-03-13)中的方法計算重疊區(qū)域范圍。
[0007] SIFT(Scale_Invariant Feature)算法[參見文獻:David G. Lowe. Distinctive Image Features from Scale-Invariant Keypoints[J]. International Journal of Computer Vision, 2004,60(2) :91_110]和SURF(Speeded UP Robust Features)算法[參 見文獻:Bay H, Tuvtellars T, Gool L Van. SURF: Speeded UP Robust Features[C]. Conference on Computer Vision. 2006]是常用的兩種提取特征點的方法,并且都比較穩(wěn) 定、魯棒性較好,對光照、旋轉(zhuǎn)等都適用。由于SURF算法比SIFT算法執(zhí)行速度快,所以在對時 間要求嚴格的視頻拼接中,選用SURF算法提取特征點。
[0008] SURF算法檢測特征點是基于尺度空間技術(shù)實現(xiàn)的,實現(xiàn)的主要步驟如下:(1)構(gòu) 建尺度空間;(2)尺度空間極值檢測;(3)確定特征點方向;(4)生成64維特征點描述符。
[0009] 利用SURF算法檢測到的特征點非常多,分布密集,而且步驟(3)和步驟(4)中,均需 要計算小波響應(yīng)。由于本文要實現(xiàn)的是視頻實時拼接,所以需要快速的檢測特征點和快速 的進行特征匹配。SURF算法中耗時較長的兩個過程是特征點檢測和特征描述子的生成,本 文針對這兩個過程對SURF算法進行了改進。
[0010] 本發(fā)明利用改進的SURF算法提取視頻幀重疊區(qū)域的特征點,利用特征分塊匹配法 對視頻幀進行配準,獲得投影矩陣。根據(jù)相鄰視頻幀的相位相關(guān)系數(shù)更新投影矩陣,從而實 現(xiàn)實時視頻拼接。
[0011]
【發(fā)明內(nèi)容】
[0012] 本發(fā)明所要解決的技術(shù)問題在于克服現(xiàn)有技術(shù)不足,提供一種基于改進的SURF算 法的視頻拼接方法,在保證視頻拼接良好性能的同時,提高了視頻拼接方法的計算效率和 匹配率,實現(xiàn)視頻實時拼接。
[0013] 本發(fā)明具體采用以下技術(shù)方案解決上述技術(shù)問題:一種基于改進的SURF算法的實 時視頻拼接方法,其特征在于,包括以下步驟: 步驟1、獲取兩個攝像頭首幀圖像,利用相位相關(guān)系數(shù)確定攝像頭重疊范圍; 步驟2、提取相鄰幀間重疊區(qū)域內(nèi)的SURF特征點,并建立32維特征描述子; 步驟3、將特征點進行分塊匹配,求得投影矩陣; 步驟4、利用相關(guān)系數(shù)更新投影矩陣 步驟5、幀圖像融合,實現(xiàn)視頻拼接。
[0014] 進一步地,步驟2具體包括以下步驟: 步驟201、計算以特征點為中心,以65為半徑的圓形鄰域內(nèi)像素對Haar小波的響應(yīng)值, 并對各響應(yīng)值進行高斯加權(quán),其中J為特征點所在空間的尺度值,Haar小波的大小為25X2 5; 步驟202、用45°的扇形滑動窗口滑動遍歷該圓形鄰域,滑動步長為0.25瓦弧度,每滑動 一次,就對該窗口內(nèi)元素的Haar小波響應(yīng)值累加,得到一個特征子矢量[S也、HU辦、 2: kH]和矢量⑷見),其中~=吾辦+5辦;%=肌一吾辦/5辦); 步驟203、扇形滑動窗口遍歷完整個圓形鄰域后,共得到8個特征子矢量和8個Haar小波響 應(yīng)累加值^?,比較,最大的所對應(yīng)的方向即為特征點的主方向,S時=化丨max{ ; 步驟204、從主方向?qū)?yīng)的特征子矢量開始,按Haar響應(yīng)累加值遞減的順序依次取各個 特征子矢量,得到4 X 8=32維的特征描述子。
[0015] 進一步地,步驟3具體包括以下步驟: 步驟301、對待配準圖像上半部分的特征點匹配時,只搜索配準圖像上半部分的特征 占. 步驟302、對待配準圖像下半部分的特征點匹配時,只搜索配準圖像下半部分的特征 點。
[0016] 進一步地,步驟4具體包括一下步驟: 步驟401、計算當前幀與前一幀重疊范圍之間的相位相關(guān)系數(shù); 步驟402、如果相位相關(guān)系數(shù)大于等于設(shè)定的閾值,則不更新投影矩陣;如果相位相關(guān) 系數(shù)小于設(shè)定的閾值,則更新投影矩陣。
[0017]本發(fā)明通過對SURF算法進行改進,簡化SURF算法中的特征點描述子的生成步驟, 并減少描述子的維數(shù),提高SURF算法的執(zhí)行速度;然后通過特征點的分塊匹配方法實現(xiàn)特 征匹配,減少特征點匹配計算量;最后,根據(jù)相鄰幀重疊區(qū)域的相位相關(guān)系數(shù)實現(xiàn) 投影矩陣的更新,實現(xiàn)了視頻的實時拼接。
【附圖說明】
[0018] 圖1是本發(fā)明改進的視頻拼接算法的流程圖; 圖2是改進SURF的特征點鄰域劃分示意圖; 圖3是現(xiàn)有技術(shù)中的特征匹配方法的分塊匹配特征點的示意圖; 圖4是本發(fā)明的特征分塊匹配法的分塊匹配特征點的示意圖; 圖5是30段普通的監(jiān)控視頻進行相關(guān)系數(shù)統(tǒng)計結(jié)果圖。
【具體實施方式】
[0019] 本發(fā)明針對視頻實時拼接對時間的嚴格要求以及現(xiàn)有的視頻拼接方法中的一些 不足,實現(xiàn)了一種視頻實時拼接方法。該方法首先利用相位相關(guān)系數(shù)求取兩個攝像頭的重 疊范圍,后文將只針對重疊范圍內(nèi)的圖像進行處理;然后對SURF算法進行改進,改進SURF算 法中特征點描述子的生成方法并降低描述子的維數(shù),利用改進的SURF算法提取視頻幀重疊 區(qū)域內(nèi)的特征;利用分塊匹配的特征配準方法實現(xiàn)視頻幀的配準,得到變換矩陣,最后根據(jù) 相鄰幀之間的相關(guān)系數(shù)實現(xiàn)投影矩陣的實時更新,實現(xiàn)視頻的拼接。為了便于公眾理解,下 面結(jié)合附圖對本發(fā)明的技術(shù)方案進行詳細說明。
[0020] SURF算法是基于尺度空間技術(shù)的,實現(xiàn)特征點的檢測有以下幾個步驟:(1)尺度空 間極值的檢測;(2)特征點方向的確定;(3)特征點描述符的生成。在步驟(2)和步驟(3)中, 需要兩次求取特征點鄰域內(nèi)的Haar小波響應(yīng)向量,并且生成的是64維的特征點描述符。由 于在視頻拼接中對時間要求特別嚴格,需要對SURF算法進行改進,對步驟(2)和步驟(3)進 行改進,減少重復(fù)的計算,降低特征點描述符的維數(shù),以實現(xiàn)快速提取視頻幀的特征點。本 發(fā)明對SURF算法的改進,具體步驟如下: 步驟1、以特征點為中心,以站為半徑得到特征點的圓形鄰域。計算該圓形區(qū)域內(nèi)像素 對Haar小波(大小為2(3 X2S)的響應(yīng)值,并對各響應(yīng)值進行高斯加權(quán)。
[0021 ] 步驟2、用45°的扇形滑動窗口滑動遍歷該圓形鄰域,滑動步長為0.25瓦弧度,如圖2 所示,圖中不同顏色代表扇形窗口不同的滑動位置,圖中8種不同顏色區(qū)域代表了8次滑動 位置。每滑動一次,就對該窗口內(nèi)兀素的Haar小波響應(yīng)值累加,得到一個特征子矢量[藝^、 刻辦|、2辦、E |a辦口矢量(~見),其中~g $辦,化=時31^氣/)。
[0022] 步驟3、扇形滑動窗口遍歷整個圓形鄰域后,共得到8個特征子矢量和8個Haar小波響 應(yīng)累加值^。比較最大的^所對應(yīng)的方向即為特征點的主方向,即^'=4
[0023] 步驟4、從主方向?qū)?yīng)的特征子矢量開始,按Haar響應(yīng)累加值遞減的順序依次取各 個特征子矢量,得到4 X 8=32維的特征描述子。
[0024]從上述改進步驟中可以看到,描述子的維數(shù)從原來的64維減少為32維,而且將兩 次計算Haar小波響應(yīng)合成一次計算,將會減少描述子的生成時間。又由于在生成描述子時 是從主方向開始的,即主方向所對應(yīng)區(qū)域的特征矢量是在特征描述子的最前面,主方向?qū)?特征描述子的權(quán)重最大,從而保持了 SURF算法的旋轉(zhuǎn)不變性。利用改進后的SURF算法可以 快速提取圖像的特征點。
[0025] 由于視頻幀中往往可以提取出很多特征點,而且對于攝像機相對固定的情況,匹 配的特征點的位移差相對固定,這樣造成了大量的徒勞計算。本發(fā)明提出了特征分塊匹配 的方法,將視頻幀分成兩塊,上塊中的特征點與上塊中的特征點進行匹配,下塊中的特征點 與下塊中的特征點匹配,如圖3所示,圖中紅色虛連線表示無效的匹配,其中共需匹配4*6= 24次,圖4中只需匹配4*3=12次,減少了一半的計算量。特征點匹配后,為了進一步剔除誤匹 配對以獲得較精確的投影矩陣,再使用RANSAC算法對特征點對提純。根據(jù)投影變換模型,利 用提純后得到的兩幅圖像間的映射點集,可以求得投影變換矩陣。
[0026] 視頻中運動物體的存在會影響投影矩陣,為了防止出現(xiàn)錯誤的拼接,需要對投影 矩陣實時更新。本發(fā)明利用相鄰幀之間的相關(guān)系數(shù)實現(xiàn)投影矩陣的更新。相關(guān)系數(shù)越大,說 明相鄰幀間的空間相關(guān)性越強,說明運動物體造成的影響越小,不需更新投影矩陣。設(shè)定閾 值,相關(guān)系數(shù)大于等于閾值時,不需更新投影矩陣;相關(guān)系數(shù)小于閾值時,需要更新投影矩 陣。圖5是統(tǒng)計許多視頻相鄰幀之間相關(guān)系數(shù)的結(jié)果圖,根據(jù)統(tǒng)計結(jié)果,本發(fā)明設(shè)定閾值為 0.3〇
[0027] 本發(fā)明采用漸入漸出融合法對圖像進行融合,以消除重疊區(qū)域處的接縫或亮度差 異,從而完成了視頻的拼接。
【主權(quán)項】
1. 一種基于改進的SURF算法的實時視頻拼接方法,其特征在于,包括以下步驟: 步驟1、、獲取兩個攝像頭首幀圖像,利用相位相關(guān)系數(shù)確定攝像頭重疊范圍; 步驟2、提取相鄰幀間重疊區(qū)域內(nèi)的SURF特征點,并建立32維特征描述子; 步驟3、將特征點進行分塊匹配,求得投影矩陣; 步驟4、利用相關(guān)系數(shù)更新投影矩陣 步驟5、幀圖像融合,實現(xiàn)視頻拼接。2. 如權(quán)利要求1所述的一種基于改進的SURF算法的實時視頻拼接方法,其特征在于,步 驟2具體包括以下步驟:步驟204、從主方向?qū)?yīng)的特征子矢量開始,按Haar響應(yīng)累加值遞減的順序依次取各個 特征子矢量,得到4 X 8=32維的特征描述子。3. 如權(quán)利要求1所述的一種基于改進的SURF算法的實時視頻拼接方法,其特征在于,步 驟3具體包括以下步驟: 步驟301、對待配準圖像上半部分的特征點匹配時,只搜索配準圖像上半部分的特征 占. 步驟302、對待配準圖像下半部分的特征點匹配時,只搜索配準圖像下半部分的特征 點。4. 如權(quán)利要求1所述的一種基于改進的SURF算法的實時視頻拼接方法,其特征在于,步 驟4具體包括一下步驟: 步驟401、計算當前幀與前一幀重疊范圍之間的相位相關(guān)系數(shù); 步驟402、如果相位相關(guān)系數(shù)大于等于設(shè)定的閾值,則不更新投影矩陣;如果相位相關(guān) 系數(shù)小于設(shè)定的閾值,則更新投影矩陣。
【文檔編號】G06T3/00GK105894443SQ201610193675
【公開日】2016年8月24日
【申請日】2016年3月31日
【發(fā)明人】吳學(xué)文, 原帥, 周燕, 劉娜
【申請人】河海大學(xué)