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