張全法, 任朝棟, 李 煥, 楊海彬
(鄭州大學(xué) 物理工程學(xué)院 河南 鄭州 450001)
視頻車輛監(jiān)控系統(tǒng)圖像抖動快速消除算法研究
張全法, 任朝棟, 李 煥, 楊海彬
(鄭州大學(xué) 物理工程學(xué)院 河南 鄭州 450001)
在開發(fā)智能視頻車輛監(jiān)控系統(tǒng)時,為滿足圖像抖動消除速度和效果的要求,通過分析系統(tǒng)特點提出了一種基于圖像匹配的新算法.新算法利用在基準(zhǔn)幀中預(yù)先劃定的適合于進行圖像匹配的區(qū)域,在當(dāng)前幀中根據(jù)像素灰度的絕對差值和尋找其最佳匹配,通過預(yù)測的方法快速求出當(dāng)前幀相對于基準(zhǔn)幀的偏移量,從而用來消除抖動.實驗表明,新算法在確保抖動消除效果的同時大幅度地提高了處理速度,滿足了系統(tǒng)要求.
視頻圖像處理; 車輛監(jiān)控系統(tǒng); 視頻圖像抖動消除; 圖像匹配
智能視頻車輛監(jiān)控系統(tǒng)中的圖像抖動會嚴(yán)重影響車輛的識別和跟蹤、交通參數(shù)的統(tǒng)計、交通違章的判定等.即使采用高成本的龍門支架安裝攝像頭,在受到強風(fēng)、重型車輛駛過等因素影響的時候,所拍攝的視頻圖像仍然可能出現(xiàn)抖動.采用加速度傳感器、濾鏡等硬件設(shè)備來消除圖像抖動,效率低,應(yīng)用環(huán)境有限[1],成本也高.于是在設(shè)計該系統(tǒng)時提出利用軟件來消除圖像抖動.為了不影響系統(tǒng)的實時性,既要求其速度盡量快,還要求抖動消除效果盡量好.
視頻圖像抖動消除系統(tǒng)一般包括運動參數(shù)估計和運動補償兩個模塊[2],而運動參數(shù)估計模塊是其中的關(guān)鍵.目前用來估計運動參數(shù)的方法主要有基于圖像匹配的方法[3-4]、基于光流的方法[5]和基于特征匹配的方法[2,6].基于光流的方法非常復(fù)雜,運算量太大[4].基于特征匹配的方法運算量也很大,因為進行特征提取往往涉及大量的幾何與圖像形態(tài)學(xué)計算[7].基于圖像匹配的方法對于只含有平移和微小旋轉(zhuǎn)的圖像序列具有較高的檢測精度,通過采用快速搜索算法,如三步搜索法、兩維對數(shù)下降法和兩步搜索法等,可以大大減少計算量[8].然而,通過分析與嘗試發(fā)現(xiàn),已有算法的處理速度還不能滿足系統(tǒng)要求.為此,針對系統(tǒng)特點提出一種新的基于圖像匹配的快速算法,不僅滿足了系統(tǒng)的速度要求,而且滿足了系統(tǒng)的效果要求.
1.1系統(tǒng)特點分析
智能視頻車輛監(jiān)控系統(tǒng)的特點:
①前景中存在大量的運動物體,如各種車輛和行人等.因此在已有算法中所產(chǎn)生的匹配區(qū)域有可能包含運動物體,在估計運動參數(shù)時,只能采取復(fù)雜的措施如迭代最小二乘法[2]、M魯棒估計方法、快速M估計算法[4]、運動一致性原則[3]等來減小其影響,從而導(dǎo)致已有算法的處理速度達不到系統(tǒng)要求.為此,提出利用預(yù)先劃定的不包含運動物體的區(qū)域作為匹配區(qū)域.這樣既可以避免復(fù)雜措施對速度的影響,又可以縮短匹配時間,提高處理效果.當(dāng)然,若想獲得比較好的處理效果,所劃定的匹配區(qū)域還應(yīng)該具有明顯的特征.
②在所開發(fā)的智能視頻車輛監(jiān)控系統(tǒng)中,用于車輛行為智能分析的攝像頭在安裝調(diào)試之后參數(shù)固定不變,不存在旋轉(zhuǎn)、平移或調(diào)焦等主觀運動.可以選取特征明顯又不會被遮擋的固定物體作為匹配區(qū)域,必要時甚至可以設(shè)立標(biāo)識性物體.而且可以僅劃定1個匹配區(qū)域,從而可以將其局部運動矢量直接作為全局運動矢量,使得在運動補償模塊中不必再根據(jù)相鄰幀之間全局運動矢量夾角大于90 °的出現(xiàn)頻率等[3]來區(qū)分?jǐn)z像頭的主觀運動和非主觀運動,可以將所有運動看作非主觀運動即抖動,直接進行運動補償即可.已有算法則不然.
③攝像頭抖動造成圖像可能同時有水平方向和垂直方向的運動,但旋轉(zhuǎn)運動和縮放運動可以忽略.前者使得不適合采用文獻[9]中所述的投影法來提高匹配區(qū)域的搜索速度[7].后者使得可以應(yīng)用基于圖像匹配的方法來消除抖動,提高運動參數(shù)的估計速度,同時提高運動補償模塊的處理速度.在圖像域中進行圖像匹配時,為避免運算量太大,采用根據(jù)像素灰度信息的方法.
④一般情況下攝像頭抖動的頻率比較低、幅度比較小.可以將所劃定的匹配區(qū)域在基準(zhǔn)幀中的位置作為搜索中心,根據(jù)工程實際在其附近限定搜索范圍.在低頻抖動下,可以根據(jù)上一幀的運動趨勢預(yù)測下一幀的運動趨勢,并將上一幀中的最佳匹配位置作為下一幀的搜索起點,從而加快匹配區(qū)域的搜索速度.實際中確實可能出現(xiàn)低頻、大幅度的抖動,可以采用超出搜索范圍即跳過去不處理的方法,因為一方面這種情況的出現(xiàn)概率很低,另一方面即使能夠消除抖動圖像的可用信息也會大幅度減少.
⑤環(huán)境光隨時間改變,但是一般情況下改變緩慢.根據(jù)像素灰度信息進行圖像匹配時,衡量兩個區(qū)域相似程度的測度函數(shù)絕對差值和受光照變化的影響比較大,但速度最快,故選用它來提高計算速度.至于環(huán)境光緩慢改變的影響,則通過定期更新匹配區(qū)域的方法來減小.雖然更新匹配區(qū)域也需要時間,但是每次更新耗時很短,況且可以間隔很多幀才進行一次,對速度的影響要比采用復(fù)雜的測度函數(shù)小得多.環(huán)境光也有急劇改變的時候,如閃電導(dǎo)致的瞬間改變等,可以采取不處理對應(yīng)幀的方法,這并不影響系統(tǒng)整體性能.
1.2新算法描述
在進行抖動消除之前需要將每幀彩色圖像轉(zhuǎn)換為灰度圖像,為了提高轉(zhuǎn)換速度并且盡量地不失真,采用了文獻[10]中所述的灰度化方法.事實上,所求運動參數(shù)完全可以用來對原始的彩色圖像進行抖動消除,差別僅在于需要平移的數(shù)據(jù)量比較大.
假設(shè)每幀圖像水平、垂直方向像素數(shù)分別為S、T.建立基準(zhǔn)幀坐標(biāo)系OXY,原點位于基準(zhǔn)幀左上角,X軸水平向右,Y軸垂直向下.由于圖像是離散化的,每個像素可以用一個小矩形表示出來,但是坐標(biāo)系不便繪制,故采用在最上面一行像素旁邊標(biāo)出0,1,…,S-1的方法表示X軸,采用在最左邊一列像素旁邊標(biāo)出0,1,…,T-1的方法表示Y軸,如圖1所示.假設(shè)在第一幀即基準(zhǔn)幀中預(yù)先劃定的匹配區(qū)域如圖1中陰影部分所示,水平、垂直方向像素數(shù)分別為M、N,左上角即“·”所在像素在基準(zhǔn)幀坐標(biāo)系里的坐標(biāo)為(X0,Y0).建立匹配區(qū)域坐標(biāo)系oxy,原點位于匹配區(qū)域左上角,x、y軸分別與X、Y軸平行(圖1).
假設(shè)根據(jù)工程實際確定的最大水平、垂直抖動幅度分別為H、V像素.顯然,劃定匹配區(qū)域時必須由軟件將匹配區(qū)域左上角限制在圖1中粗線框所示的矩形之內(nèi),此矩形左上角的坐標(biāo)為(H,V),寬度為S-M-2H像素,高度為T-N-2V像素.當(dāng)前幀坐標(biāo)系與基準(zhǔn)幀坐標(biāo)系相同,如圖2所示.用來進行圖像匹配的子圖如圖2中陰影部分所示,尺寸與匹配區(qū)域相同,左上角即“·”所在像素在當(dāng)前幀坐標(biāo)系中的坐標(biāo)為(X,Y).子圖坐標(biāo)系與匹配區(qū)域坐標(biāo)系相同.

圖1 基準(zhǔn)幀與匹配區(qū)域坐標(biāo)系Fig.1 Coordinates systems of base frame and matching region

圖2 當(dāng)前幀與子圖坐標(biāo)系Fig.2 Coordinates systems of current frame and sub image
開始處理前將匹配區(qū)域在基準(zhǔn)幀中的像素灰度值及左上角坐標(biāo)(X0,Y0)保存到內(nèi)存中,并且設(shè)置偏移量和運動趨勢的初值.偏移量為(δX,δY),初值是(0,0).運動趨勢為(βX,βY),βX和βY取+1時分別表示向右、向下運動,取-1時分別表示向左、向上運動;運動趨勢的初值可以任意選取,假設(shè)為(+1,+1).開始處理后,假設(shè)對任一幀圖像已經(jīng)求得上一幀中匹配區(qū)域的(δX,δY)和(βX,βY),搜索最佳匹配的步驟是:
①根據(jù)上一幀的偏移量預(yù)測搜索起點.令第1個子圖左上角在當(dāng)前幀坐標(biāo)系里的坐標(biāo)(X,Y)滿足X=X0+δX,Y=Y0+δY.然后按照絕對差值和法求其與匹配區(qū)域的相似程度測度函數(shù)值,即

(1)
式中,(X,Y)為子圖左上角在當(dāng)前幀坐標(biāo)系里的坐標(biāo);D(X,Y)為子圖與匹配區(qū)域的相似程度測度函數(shù)值;M、N分別為匹配區(qū)域水平、垂直方向像素數(shù);(x,y)為子圖與匹配區(qū)域中的對應(yīng)像素在各自坐標(biāo)系里的坐標(biāo);g(x,y),g0(x,y)分別為子圖與匹配區(qū)域中對應(yīng)像素的灰度.由于環(huán)境光是變化的,并且考慮到采用了預(yù)測的方法,求和一直進行到最后,而不是像SSDA算法那樣超過某個閾值就停止[11].
②進行水平方向的搜索.Y保持上一步的值不變,根據(jù)βX預(yù)測下一個子圖的X,即令X=X+βX.按照式(1)重新計算測度函數(shù)值.若測度函數(shù)值變小或不變,說明搜索方向正確,根據(jù)βX規(guī)定的方向繼續(xù)搜索,直到測度函數(shù)值即將變大.若測度函數(shù)值變大,說明搜索方向錯誤,退回原位置,令βX=-βX,并根據(jù)新的βX規(guī)定的方向搜索,直到測度函數(shù)值即將變大.在搜索過程中若超出搜索范圍則停止,認(rèn)為搜索失敗.搜索范圍由圖2中粗線框所示的矩形表示,此矩形左上角的坐標(biāo)為(X0-H,Y0-V),寬度為2H+1像素,高度為2V+1像素.
③進行垂直方向的搜索.類似于步驟②,不同的是將X、Y和βX分別換成Y、X和βY.
④重復(fù)步驟②和步驟③,直到X和Y不再改變.若重復(fù)次數(shù)超過給定值,也認(rèn)為搜索失敗.允許的重復(fù)次數(shù)需要根據(jù)運行時間和處理效果綜合確定.
若通過上述步驟搜索成功則繼續(xù)進行以下處理,包括由最后的X和Y求得δX=X-X0和δY=Y-Y0作為當(dāng)前幀的偏移量、根據(jù)它們與上一幀偏移量的差別重新確定當(dāng)前幀的運動趨勢、對當(dāng)前幀圖像進行平移即消除抖動、利用最佳匹配處的子圖定期地更新匹配區(qū)域、完成系統(tǒng)后續(xù)功能如背景差分和車輛識別與跟蹤等.若失敗,則不進行這些處理.
在配置為奔騰雙核2.5 GHz的微機上利用VC6.0編程實現(xiàn)上述算法,對大小為720×288像素的AVI格式視頻進行抖動消除.由于該段視頻由項目委托單位提供,是在沙盤上拍攝的,景物比例和縱橫比皆存在失真,為了盡量符合實際,下面給出的圖像改變了原來的縱橫比.
首先考察處理速度.實驗連續(xù)處理了720幀圖像,水平方向偏移量平均2.42像素,最大25像素,垂直方向偏移量平均0.47像素,最大5像素.利用VC6.0的Build/Profile功能測出用于消除抖動的函數(shù)總耗時267 ms,平均每幀耗時0.37 ms,可見速度非常快,為實時完成系統(tǒng)的其他各種復(fù)雜處理爭取了時間.
其次考察處理的效果,如圖3所示.圖3(a)為基準(zhǔn)幀,右側(cè)矩形框中的區(qū)域為預(yù)先劃定的匹配區(qū)域,大小為83×50像素,為了醒目繪制矩形框時用了比較粗的線條.圖3(b)為消除抖動后的某一幀,圖中黑色部分(左側(cè)比較明顯)是圖像平移的結(jié)果,水平方向移動了25像素,垂直方向移動了2像素.圖3(c)為消除抖動前該幀與基準(zhǔn)幀的二值化差分圖像,車輛周圍存在著大量抖動造成的噪聲點,無法識別.圖3(d)為消除抖動后該幀與基準(zhǔn)幀的二值化差分圖像,很好地消除了抖動的影響,車輛可以被準(zhǔn)確地識別出來.
針對智能視頻車輛監(jiān)控系統(tǒng)的特點,提出了一種快速消除圖像抖動的算法,對于保證整個系統(tǒng)的實時性起到了很重要的作用.該算法只是整個系統(tǒng)中的很小一部分,其他各部分如車輛識別和跟蹤、車輛行為分析等已經(jīng)完成.在實際現(xiàn)場測試中獲得了很好的抖動消除效果,系統(tǒng)各部分運行良好,達到了設(shè)計要求.該算法還可以推廣到類似的實時視頻圖像處理系統(tǒng)中,只要能夠劃定合適的匹配區(qū)域,就可以利用它既好又快地消除抖動.

圖3 抖動消除效果Fig.3 Effect of video stabilization
[1] 朱磊,夏雨人.Diamond搜索運動估計在視頻圖像抖動消除中的應(yīng)用[J].計算機應(yīng)用與軟件,2006,23(3): 89-91.
[2] 徐理東,林行剛.視頻抖動矯正中全局運動參數(shù)的估計[J].清華大學(xué)學(xué)報:自然科學(xué)版,2007,47(1):92-95.
[3] 黃亞博,焦建彬,葉齊祥,等.一種魯棒性的抖動視頻穩(wěn)像算法[J].光電子·激光,2008,19(3):394-399.
[4] 宋利,周源華,周軍.基于運動矢量的視頻去抖動算法[J].上海交通大學(xué)學(xué)報,2004,38(增刊):63-66.
[5] 楊勇,王橋,吳樂南.基于標(biāo)號場的光流法二維運動估計[J].電子與信息學(xué)報,2001,23(12):1321-1325.
[6] 龐洵,李威,高小偉.基于特征匹配與仿射變換的視頻防抖算法[J].微計算機信息,2008,24(3/4):180-182.
[7] 陳皓,馬彩文,陳岳承,等.基于灰度統(tǒng)計的快速模板匹配算法[J].光子學(xué)報,2009,38(6):1586-1590.
[8] 陳躍庭,馮華君,徐之海,等.多參考點三步搜索法快速穩(wěn)像算法[J].光電子·激光,2006,17(6):746-749.
[9] 孫遠,周剛慧,趙立初,等.灰度圖像匹配的快速算法[J].上海交通大學(xué)學(xué)報,2000,34(5):702-704.
[10] 張全法,楊海彬,任朝棟,等.彩色圖像的快速高保真灰度化方法研究[J].鄭州大學(xué)學(xué)報:理學(xué)版,2011,43(3):66-69.
[11] 吳培景,陳光夢.一種改進的SSDA圖像匹配算法[J].計算機工程與應(yīng)用,2005,41(33):76-78.
StudyonFastVideoStabilizationAlgorithmforVehicleMonitoringSystem
ZHANG Quan-fa, REN Chao-dong, LI Huan, YANG Hai-bin
(SchoolofPhysics&Engineering,ZhengzhouUniversity,Zhengzhou450001,China)
To meet the speed and effect requirement of video stabilization for a vehicle monitoring system in developing,a new fast algorithm based on image matching was proposed by analyzing system features. In the new algorithm,a predefined region that was suitable for image matching to calculate motion parameters was used by comparing its original position in base frame and its best matching position in current frame. The best matching position was found by searching the minimum sum of absolute difference of pixel’s gray value,and forecasting method was used in the searching. Then the motion parameters were used for video stabilization. In experiments,the new algorithm demonstrated a very high speed along with a favourable effect,which met the requirements of the system.
video image processing;vehicle monitoring system;video stabilization;image matching
TP 391.41
A
1671-6841(2011)04-0044-04
2011-01-02
張全法(1966-),男,副教授,碩士,主要從事傳感器與計算機應(yīng)用技術(shù)研究,E-mail:zhangquanfa@zzu.edu.cn.