專利名稱:基于svm的攝像頭運動參數(shù)估計方法
技術(shù)領(lǐng)域:
本發(fā)明屬于計算機視頻分析領(lǐng)域,涉及一種攝像頭運動參數(shù)估計方法。
背景技術(shù):
近些年來,隨著計算機技術(shù)的發(fā)展,大量的數(shù)字視頻涌現(xiàn)。視頻數(shù)據(jù)的分析越來越受到眾人的關(guān)注。對于攝像機拍攝的視頻數(shù)據(jù),攝像機在拍攝過程中的運動參數(shù),是視頻數(shù)據(jù)本身的重要特征。該特征可以用于視頻檢索、視頻分析、版權(quán)檢測等領(lǐng)域。 目前對于攝像頭運動參數(shù)估計技術(shù),普遍采用的是一種成型的數(shù)學(xué)模型,在此數(shù)學(xué)模型的基礎(chǔ)之上,通過分析視頻數(shù)據(jù)中的相關(guān)特征,利用數(shù)學(xué)推導(dǎo)(如最小二乘法等),對模型進(jìn)行回歸,從而確定視頻不同幀(frame)之間攝像頭的運動參數(shù)。但是,這模型的準(zhǔn)確度就無法得到證實,這些提取出的模型在數(shù)學(xué)處理過程中許多地方都是采取了經(jīng)驗的方法,因此這些模型的適應(yīng)性本身只得懷疑。另外,由于視頻分析需要處理大量的數(shù)據(jù),對于處理速度也有較高的要求,因此在處理過程中如何通過篩選信息,在保證參數(shù)估計準(zhǔn)確性的前提下,提高估計的效率,也是一個需要重點考慮的問題。
發(fā)明內(nèi)容
本發(fā)明的目的是,克服現(xiàn)有技術(shù)的上述不足,提供一種能夠在保證參數(shù)估計準(zhǔn)確性的前提下提高估計效率的攝像頭運動參數(shù)估計方法。本發(fā)明通過支持向量機(SVM)的強大的數(shù)學(xué)計算功能,對于壓縮域的mpeg格式的視頻數(shù)據(jù),估計在拍攝該段視頻數(shù)據(jù)時攝像頭的運動參數(shù),并且在保證結(jié)果準(zhǔn)確的前提下,提高攝像頭運動參數(shù)估計的速度。本發(fā)明的技術(shù)方案如下一種基于SVM的攝像頭運動參數(shù)估計方法,包括下列步驟I)獲取攝像頭運動參數(shù)估計的訓(xùn)練數(shù)據(jù)真實值,得到支持向量機訓(xùn)練所需要的標(biāo)定值;2)對于mpeg格式視頻,選取畫面組里的P幀作為處理對象,從中選擇采用幀間編碼的宏塊中存儲的運動向量不為零的宏塊作為宏塊級的處理數(shù)據(jù),從而得到支持向量機的訓(xùn)練數(shù)據(jù);3)將以上過程中得到的數(shù)據(jù),轉(zhuǎn)化成支持向量機可以識別的格式,設(shè)定好支持向量機的各種參數(shù),其中核函數(shù)選擇多項式,訓(xùn)練模型選擇回歸模式,對輸入的訓(xùn)練數(shù)據(jù)進(jìn)行多次迭代,得到訓(xùn)練好的支持向量機模型;4)對于在現(xiàn)實世界中拍攝的視頻片段,通過上述步驟2)中的篩選過程得到該視頻片段的運動向量,將運動向量輸入到已訓(xùn)練好支持向量機模型中,由支持向量機給出預(yù)測結(jié)果,實現(xiàn)對現(xiàn)實世界視頻片段的運動參數(shù)估計。本發(fā)明通過支持向量機得到的攝像頭運動參數(shù)模型是可以重復(fù)利用的。因此,只需要一次訓(xùn)練就可以得到訓(xùn)練模型。此外,本發(fā)明中在壓縮域中處理數(shù)據(jù),并且對要處理的數(shù)據(jù)進(jìn)行合理的篩選,大大縮減了所需處理的數(shù)據(jù)的規(guī)模,提高了運動參數(shù)估計的效率。
圖IMpeg視頻格式結(jié)構(gòu)如圖I ;圖2本發(fā)明的程序流程圖。
具體實施例方式下面首先說明本發(fā)明的技術(shù)方案。I.獲取攝像頭運動參數(shù)估計的訓(xùn)練數(shù)據(jù)真實值,得到支持向量機訓(xùn)練所需要的標(biāo) 定值。利用支持向量機估計數(shù)學(xué)模型必須有盡可能準(zhǔn)確的訓(xùn)練數(shù)據(jù)。具體到攝像頭運動參數(shù)估計這個問題,需要得到盡可能準(zhǔn)確的攝像頭運動參數(shù)的真實值。在本發(fā)明中,主要通過兩種方法來獲取。l)3dmax軟件可以建立3d的模型,并且可以人工的設(shè)定攝像頭的運動參數(shù),然后將整個攝像頭運動過程中,背景和物體的圖像錄制成視頻數(shù)據(jù)。而這些人工設(shè)定的運動參數(shù)可以通過文本的形式保存下來。利用編程語言稍微處理,便可以得到對應(yīng)幀的攝像頭的運動參數(shù)。2)在沒有3dmax軟件的情況下,也可以采用傅立葉梅林變換(Fourier-MerlinTransform)的方法,得到兩張圖片的全局坐標(biāo)變化。這種獲取方法,首先要將視頻的每一幀保存成圖像,然后輸入給傅立葉梅林程序。傅立葉梅變換程序會給出兩幅圖片的全局坐標(biāo)變換值。對于視頻中相鄰兩幀的全局左邊變換可以作為攝像頭運動參數(shù)估計的測試數(shù)據(jù)真值。I.篩選所要處理的數(shù)據(jù),并且最終得到支持向量機的訓(xùn)練數(shù)據(jù)數(shù)據(jù)的篩選環(huán)節(jié)關(guān)系到攝像頭運動參數(shù)估計的準(zhǔn)確性和估計效率的問題,是整個技術(shù)方案的重要組成部分。I)分析的視頻是mpeg格式的視頻視頻分析選擇的數(shù)據(jù)格式是mpeg格式。Mpeg格式是一個很成熟的壓縮視頻存儲格式。目前mpeg格式的視頻有了很廣泛的應(yīng)用。本發(fā)明對視頻數(shù)據(jù)的分析和處理直接在壓縮域中進(jìn)行操作的,這樣避免了視頻解壓縮過程中的開銷,大大減少的需要處理的數(shù)據(jù)量。2) Mpeg格式視頻的幀的選取Mpeg格式中每一個G0P(Group of Pictures,畫面組)都包含三種類型的巾貞,即I幀、B幀、P幀。其組成形式經(jīng)常為如下形式IBBPBBPBBP,其中I幀是完全幀內(nèi)編碼的,I幀可以獨立解壓縮,解壓過程中不需要其他幀的數(shù)據(jù)信息。而P幀也稱向前預(yù)測幀,其解壓過程需要前一個錨幀(可能是I幀或者是P幀。P幀中的宏塊可能是幀內(nèi)編碼,也可能是幀間編碼。幀間編碼的宏塊根據(jù)自身宏塊中的存儲的運動向量和錨幀中的對應(yīng)宏塊,得到該宏塊的解壓后的位置。B幀也稱雙向預(yù)測,其預(yù)測過程中需要前后兩個錨幀(可能是I幀,可能是P幀),其內(nèi)部宏塊的解壓過程需要兩個錨幀和宏塊中保存的運動向量共同生成。本發(fā)明中僅僅選擇了P幀作為處理的對象。因為I幀中的宏塊全部是幀內(nèi)編碼,它與其下一陣之間的攝像頭運動關(guān)系不大,而B幀的計算過程過于復(fù)雜。視頻數(shù)據(jù)中,每秒可以有大約10幀P幀數(shù)據(jù),這對估計攝像頭運動參數(shù)已經(jīng)足夠了。3)每一幀中宏塊的選取視頻中每一巾貞被分成16*16的宏塊,這些宏塊分為巾貞內(nèi)和巾貞間編碼,對于巾貞間編碼的宏塊中存儲了該宏塊與錨幀 對應(yīng)宏塊之間的運動向量。本發(fā)明選擇幀間編碼并且將其存儲的運動向量不為零的宏塊作為宏塊級的處理數(shù)據(jù)。單個宏塊的運動是是攝像頭運動和物體運動共同作用的結(jié)果,但是大量宏塊的共同運動趨勢卻可以反映出攝像頭的運動參數(shù)。將滿足條件的宏塊中存儲的運動向量X和y的值,通過程序?qū)懗芍С窒蛄繖C可以識別的格式。2.訓(xùn)練支持向量機模型將以上過程中得到的數(shù)據(jù),轉(zhuǎn)化成支持向量機可以識別的格式,設(shè)定好支持向量機的各種參數(shù),其中核函數(shù)選擇多項式,訓(xùn)練模型選擇回歸模式。由攝像頭運動參數(shù)和滿足條件的宏塊的運動向量的之間的關(guān)系,選擇多項式作為核函數(shù)的類型更加符合實際情況。對輸入的訓(xùn)練數(shù)據(jù)進(jìn)行多次迭代,得到訓(xùn)練好的模型。3.預(yù)測階段對于在現(xiàn)實世界中拍攝的視頻片段,通過上述2中的篩選過程得到運動向量,將運動向量輸入到已訓(xùn)練好支持向量機模型中,支持向量機給出預(yù)測結(jié)果,實現(xiàn)現(xiàn)實世界視頻片段的運動參數(shù)估計。本發(fā)明的核心是通過支持向量機得到攝像頭運動參數(shù)的模型,因此對于訓(xùn)練數(shù)據(jù)的準(zhǔn)確度要求較高。最佳的訓(xùn)練數(shù)據(jù),應(yīng)是準(zhǔn)確的攝像頭的運動參數(shù),即攝像頭運動參數(shù)的真值。該訓(xùn)練真值的獲取可以通過仿真的形式(如3dmax),導(dǎo)出訓(xùn)練真值。在沒有仿真數(shù)據(jù)的情況下,可以使用傅立葉梅林變換的方法獲取相鄰兩幀的全局坐標(biāo)變換,代替訓(xùn)練真值,但是考慮到其本身就是對攝像頭運動參數(shù)的估計,最終結(jié)果的準(zhǔn)確度可能降低。使用支持向量機訓(xùn)練攝像頭運動參數(shù)模型時,通常是選用多項式形式核函數(shù),這樣的參數(shù)設(shè)置可以得到更為準(zhǔn)確的模型。
權(quán)利要求
1 .一種基于SVM的攝像頭運動參數(shù)估計方法,包括下列步驟 1)獲取攝像頭運動參數(shù)估計的訓(xùn)練數(shù)據(jù)真實值,得到支持向量機訓(xùn)練所需要的標(biāo)定值; 2)對于mpeg格式視頻,選取畫面組里的P幀作為處理對象,從中選擇采用幀間編碼的宏塊中存儲的運動向量不為零的宏塊作為宏塊級的處理數(shù)據(jù),從而得到支持向量機的訓(xùn)練數(shù)據(jù); 3)將以上過程中得到的數(shù)據(jù),轉(zhuǎn)化成支持向量機可以識別的格式,設(shè)定好支持向量機的各種參數(shù),其中核函數(shù)選擇多項式,訓(xùn)練模型選擇回歸模式,對輸入的訓(xùn)練數(shù)據(jù)進(jìn)行多次迭代,得到訓(xùn)練好的支持向量機模型; 4)對于在現(xiàn)實世界中拍攝的視頻片段,通過上述步驟2)中的篩選過程得到該視頻片段的運動向量,將運動向量輸入到已訓(xùn)練好支持向量機模型中,由支持向量機給出預(yù)測結(jié)果,實現(xiàn)對現(xiàn)實世界視頻片段的運動參數(shù)估計。
全文摘要
本發(fā)明屬于計算機視頻分析領(lǐng)域,涉及一種基于SVM的攝像頭運動參數(shù)估計方法獲取攝像頭運動參數(shù)估計的訓(xùn)練數(shù)據(jù)真實值,得到支持向量機訓(xùn)練所需要的標(biāo)定值;對于mpeg格式視頻,選取畫面組里的P幀作為處理對象,從中選擇采用幀間編碼的宏塊中存儲的運動向量不為零的宏塊作為宏塊級的處理數(shù)據(jù),從而得到支持向量機的訓(xùn)練數(shù)據(jù);設(shè)定好支持向量機的各種參數(shù),對輸入的訓(xùn)練數(shù)據(jù)進(jìn)行多次迭代,得到訓(xùn)練好的支持向量機模型。對于在現(xiàn)實世界中拍攝的視頻片段,首先獲取到該視頻片段的運動向量,將運動向量輸入到已訓(xùn)練好支持向量機模型中,由支持向量機給出預(yù)測結(jié)果,實現(xiàn)運動參數(shù)估計。本發(fā)明能夠在保證參數(shù)估計準(zhǔn)確性的前提下提高估計效率。
文檔編號G06T7/20GK102737387SQ20121020600
公開日2012年10月17日 申請日期2012年6月20日 優(yōu)先權(quán)日2012年6月20日
發(fā)明者孫美君, 江健民, 王征, 王語斌 申請人:天津大學(xué)