一種快速高效的視頻穩定方法與流程
2023-12-02 05:16:01 1

本發明屬於圖像處理技術領域,涉及圖像的穩定處理,特指一種快速高效的視頻穩定方法。
背景技術:
近年來,隨著拍照手機、攝像機、行車記錄儀等攝像產品在民用消費電子領域的普及,人們越來越多地採用視頻來滿足生活和工作的各種需要。然而,無論是手持拍攝設備,還是其他裝載攝像設備,常會因為載體的抖動,使得拍攝的畫面不穩定、模糊。這種不穩定的視頻會使觀察者感覺疲勞,影響觀察者的判斷力和觀察的精度。如何將這些不穩定的視頻信號轉化成穩定的高質量的視頻圖像序列具有重要的理論意義和實用價值。
穩像技術就是為了解決上述應用場景的需求而產生的。以穩像技術的手段劃分,穩像技術可以分為機械穩像、光學穩像和電子穩像。與機械或光學穩像技術相比,電子穩像具有成本低、硬體結構簡單、功耗低等特點,是目前視頻穩像技術研究的重點方向。
現有的電子穩像系統一般包括運動估計模塊和運動平滑補償模塊兩個部分。運動估計模塊是通過數字圖像處理技術,計算出相鄰兩幀視頻圖像的相對運動偏移量,從而得到視頻圖像序列的運動軌跡。常用的方法有塊匹配法、位平面匹配法、灰度投影法以及特徵點匹配法等。運動平滑補償模塊是根據運動估計所得到的偏移量確定圖像的抖動量,利用圖像處理的方法對圖像的像素點進行處理,補償掉抖動矢量,從而實現輸出穩定視頻圖像序列的過程。常見的方法有均值濾波、高斯濾波、卡爾曼濾波、曲線擬合法等。
為了取得較好的穩像效果,現有的電子穩像系統大都採用特徵匹配加運動濾波的方式。然而,特徵點提取和描述子的匹配時間過長會嚴重影響運動估計的速度,然後再通過運動濾波對運動估計矢量進行分離,導致整個系統處理時間較長,很難滿足一些實時處理系統的需要。
技術實現要素:
針對現有電子穩像方法的不足,本發明提出一種快速高效的視頻穩定方法。本發明通過一種改進的粒子濾波方法對運動模型的參數進行精確估計,對每個粒子進行操作時,採用了三對圖像進行計算,因此每個粒子能夠提高更多的信息,本發明方法在不需要太多數目粒子的條件下依然可以達到很好的計算精度。
為實現上述技術目的,本發明的技術方案是,
一種快速高效的視頻穩定方法,包括以下步驟:
(1)對於視頻序列圖像{Pn(x,y)|n=1,2,…N},採用下述運動模型表示視頻序列圖像中相鄰兩幀圖像的映射關係:
其中(xn,yn)表示第n幀的一個像素點所在的位置坐標,(xn+1,yn+1)是其對應的第n+1幀的像素點所在的位置坐標,θn是旋轉角度,(Txn,Tyn)為運動補償參數。
(2)求解相鄰兩幀圖像的運動模型,也即求解公式(1)中的3個參數(θn,Txn,Tyn)。
2.1選取粒子數量M,本發明中選取M=50;每個粒子都有3個參數和一個權重其中標號m∈{1,…,M}表示粒子的序號。
首先給每個粒子的權重賦初值,初始權重設為1/M;然後對粒子的三個參數進行初始化:
其中ε1,ε2,ε3均為[-1,1]內的隨機數,β是一個常數,表示單幀旋轉角度範圍,這裡取值10,α是一個常數,表示單幀補償範圍,這裡取值30。
根據步驟2.1,每個粒子的初始權重和參數信息都已經得到。
2.2計算每個粒子的觀測概率密度,然後根據該密度計算出新的權重;
對每個粒子進行觀測,觀察每個粒子所代表的可能狀態和真實狀態之間的相似程度,接近真實狀態的粒子賦予較大的權值,反之權值較小。
任取M個粒子中一個粒子為例說明本發明的具體求得相似程度和權重的步驟。
2.2.1從第n幀圖像裡面隨機選擇3幅大小為50×50的子圖像{Hi(x,y)|i=1,2,3},然後計算每個子圖像在第n+1幀對應的子圖像,這裡記為{Qi(x,y)|i=1,2,3}。具體計算方法如下:
對於任一子圖像Hi(x,y),在第n幀圖像上有4個頂點坐標{(x1,y1),(x2,y2),(x3,y3),(x4,y4)},將當前粒子信息代入公式1,可以得到第n幀和第n+1幀的坐標映射關係,於是可以求得這4個頂點坐標在第n+1幀對應的坐標{(x′1,y′1),(x′2,y′2),(x′3,y′3),(x′4,y′4)},即得到對應在第n+1幀的子圖像Qi(x,y)。
2.2.2分別計算三對子圖像{Hi(x,y),Qi(x,y)|i=1,2,3}的相似度。
以其中一對Hi(x,y),Qi(x,y)為例,將空間劃分成16份,分別計算Hi(x,y)和Qi(x,y)的直方圖,記為HistAi和HistBi。則直方圖HistAi和HistBi均為一個長度為16的一維向量,記為HistAi={pj|j=1,2,…,16},HistBi={qj|j=1,2,…,16}。
定義兩個直方圖的相似度disti:
採用上述方法分別計算三對子圖像{Hi(x,y),Qi(x,y)|i=1,2,3}的相似度,得到三對子圖像{Hi(x,y),Qi(x,y)|i=1,2,3}的相似度分別為dist1,dist2,dist3;然後進行平均,得到最終的相似度
由於相似度是通過三對子圖像信息獲得的,所以準確度較高,使得單個粒子能夠表徵更多的信息,這樣是的本發明算法在不需要太多數目的粒子的條件下依然可以達到很好的計算精度。
2.2.3根據2.2.2中得到的最終相似度dist計算當前粒子的觀測概率密度其中δ是個常數。然後更新當前粒子的權重:
對於所有的50個粒子都進行上述操作,計算出新的權重,然後再進行歸一化得到最終權重
2.3根據新的權重對所有粒子的3個參數進行加權求和,即得到相鄰兩幀圖像的映射關係,也即為公式1中的3個參數(θn,Txn,Tyn);
所有粒子的權重都進行更新後,就可以計算從第n幀圖像到第n+1幀圖像的映射關係,也即為公式1中的3個參數(θn,Txn,Tyn)。3個參數可以由所有粒子的加權和來表示:
通過上述方法,可以計算出相鄰兩幀圖像之間的映射關係,也即為公式1中的3個參數。
這樣從第2幀開始,每一幀都可以通過步驟2中的方法計算出與之相鄰的前一幀對應的運動參數{(θn,Txn,Tyn)|n=1,…,N-1}。
(3)依次對每一幀圖像進行視頻穩定,獲得穩定視頻序列圖像。
從第2幀開始,每一幀都通過步驟2中的方法計算出與之相鄰的前一幀對應的運動參數{(θn,Txn,Tyn)|n=1,…,N-1}。
最後根據每一幀的運動參數對視頻圖像進行穩定,以第n幀為例,通過累加獲得第n幀相對於第1幀的運動補償:
根據旋轉角度對對第n幀圖像進行旋轉,然後根據對旋轉後的圖像進行平移,獲得穩定視頻序列圖像。
本發明提出了一種快速高效的視頻穩定方法,通過一種改進的粒子濾波方法對運動模型的參數進行精確估計,對每個粒子進行操作時,採用了三對圖像進行計算,因此每個粒子能夠提高更多的信息,本發明方法在不需要太多數目粒子的條件下依然可以達到很好的計算精度。本發明提出的方法複雜度小,實時性強,能夠有效的對視頻進行穩定補償,適用於車載、船載、機載等攝像系統。
附圖說明
圖1為本發明的流程圖;
具體實施方式
為使本發明的目的、技術方案和優點更加清楚,下面將結合附圖對本發明實施方式作進一步地詳細描述。
理論上當載體的運動反映到視頻圖像上時,連續兩幀間發生的全局運動可以分解為整體的平移、繞某個定點的旋轉等。因此對於視頻序列圖像{Pn(x,y)|n=1,2,…N},本發明採用下述模型表示相鄰兩幀圖像的映射關係:
其中(xn,yn)表示第n幀的一個像素點所在的位置坐標,(xn+1,yn+1)是其對應的第n+1幀的像素點所在的位置坐標,θn是旋轉角度,(Txn,Tyn)為運動補償參數,本模型一共有3個參數(θn,Txn,Tyn)。
粒子濾波器具有較好的平滑性、收斂性和魯棒性,能逼近狀態的最優估計,且使用於任何非線性非高斯的動態系統。理論上,當粒子的數目為無窮多時,精度達到最優。但與此同時,粒子的數目太多會嚴重影響計算的效率。本發明借鑑了粒子濾波的思想,對其進行一定的改進,在不需要太多數目的粒子的條件下依然可以達到很好的計算精度。
下面以相鄰兩幀圖像第n幀和第n+1幀為例,詳細介紹如何用粒子濾波的思想求解公式(1)中的3個參數(θn,Txn,Tyn)。
為了提高效率,本實施例選取粒子數量M=50,每個粒子都有3個參數和一個權重其中標號m∈{1,…,M}表示粒子的序號。
首先給每個粒子的權重賦初值,初始權重設為1/M;然後對粒子的三個參數進行初始化:
其中ε1,ε2,ε3均為[-1,1]內的隨機數,β是一個常數,表示單幀旋轉角度範圍,這裡取值10,α是一個常數,表示單幀補償範圍,這裡取值30。
根據上述方法,每個粒子的初始權重和參數信息都已經得到。
然後對每個粒子進行觀測,觀察每個粒子所代表的可能狀態和真實狀態之間的相似程度,接近真實狀態的粒子賦予較大的權值,反之權值較小。下面任取一個粒子為例說明本發明的具體求得相似程度和權重的步驟。
從第n幀圖像裡面隨機選擇3幅大小為50×50的子圖像{Hi(x,y)|i=1,2,3},然後計算每個子圖像在第n+1幀對應的子圖像,這裡記為{Qi(x,y)|i=1,2,3}。具體計算方法如下:
對於任一子圖像Hi(x,y),在第n幀圖像上有4個頂點坐標{(x1,y1),(x2,y2),(x3,y3),(x4,y4)},將當前粒子信息代入公式(1),可以得到第n幀和第n+1幀的坐標映射關係,於是可以求得這4個頂點坐標在第n+1幀對應的坐標{(x′1,y′1),(x′2,y′2),(x′3,y′3),(x′4,y′4)},即得到對應在第n+1幀的子圖像Qi(x,y)。
接下來分別計算三對子圖像{Hi(x,y),Qi(x,y)|i=1,2,3}的相似度。以其中一對Hi(x,y),Qi(x,y)為例,將空間劃分成16份,分別計算Hi(x,y)和Qi(x,y)的直方圖,記為HistAi和HistBi。則直方圖HistAi和HistBi均為一個長度為16的一維向量,記為HistAi={pj|j=1,2,…,16},HistBi={qj|j=1,2,…,16}。
在此定義兩個直方圖的相似度disti如下:
根據上述方法,計算三對子圖像{Hi(x,y),Qi(x,y)|i=1,2,3}的相似度分別為dist1,dist2,dist3,然後進行平均,得到最終的相似度
由於相似度是通過三對子圖像信息獲得的,所以準確度較高,使得單個粒子能夠表徵更多的信息,這樣是的本發明方法在不需要太多數目的粒子的條件下依然可以達到很好的計算精度。
接著根據相似度計算當前粒子的觀測概率密度其中δ是個常數。然後更新當前粒子的權重:
對於所有的50個粒子都進行上述操作,計算出新的權重,然後再進行歸一化得到最終權重
所有粒子的權重都進行更新後,就可以計算從第n幀圖像到第n+1幀圖像的映射關係,也即為公式(1)中的3個參數(θn,Txn,Tyn)。3個參數可以有所有粒子的加權和來表示:
通過上述方法,可以計算出相鄰兩幀圖像之間的映射關係,也即為公式(1)中的3個參數。這樣從第2幀開始,每一幀都通過上述步驟計算出與之相鄰的前一幀對應的運動參數{(θn,Txn,Tyn)|n=1,…,N-1}。
最後根據每一幀的運動參數對視頻圖像進行穩定,以第n幀為例,通過累加獲得第n幀相對於第1幀的運動補償:
根據旋轉角度對對第n幀圖像進行旋轉,然後根據對旋轉後的圖像進行平移,獲得穩定視頻序列圖像。
以上包含了本發明優選實施例的說明,這是為了詳細說明本發明的技術特徵,並不是想要將發明內容限制在實施例所描述的具體形式中,依據本發明內容主旨進行的其他修改和變型也受本專利保護。本發明內容的主旨是由權利要求書所界定,而非由實施例的具體描述所界定。