1. 程式人生 > >視訊穩像(Video Stabilization)

視訊穩像(Video Stabilization)

簡介

視訊穩定(簡稱穩像),是指利用相關的演算法,對視訊裝置採集的原始視訊序列進行處理,去除其中的抖動。視訊穩像的目的,一方面是為了讓人眼觀感舒適,有利於人工觀測、判別等,另一方面也作為諸多其他後續處理的預處理階段,如檢測、跟蹤和壓縮。

穩像按作用機制分為光學、機械和電子穩像。

1.      光學穩像通過主動光學部件自適應調整光路,補償由於攝像平臺抖動造成的影象運動,達到穩定影象的的目的;

2.      機械穩像通過陀螺感測器等器件檢測攝像平臺的抖動,然後對伺服系統進行調整而達到穩定影象的目的;

3.      電子(數字)穩像基於在連續視訊影象之間進行運動估計,然後對視訊中的每一幀影象進行運動濾波和運動補償處理得到穩定的影象。

視訊穩像原理概述

一般來講,由於連續視訊兩幀影象之間相隔較短,所以相鄰的兩幀影象大部分內容是相同的,基於這種假設,兩幀影象之間的相對運動可以分解為,大部分場景的全域性運動和小部分場景的區域性運動,而全域性運動一般代表著攝像機的主觀運動。圖3-1示意了相鄰兩幀影象的全域性運動與區域性運動,四個小圓圈的平移代表了整幅影象的全域性運動,而中間的小三角的運動則代表了局部運動。


由於攝像載體的不穩定,導致在連續的幀間全域性運動出現了抖動,如圖3-2所示。圖中小圓圈在連續幀間上下起伏的運動軌跡就是由全域性運動受到抖動干擾後形成的。視訊穩像演算法就是要保證得到正確的全域性運動向量,而消除掉抖動對於全域性運動的影響。


運動模型

由於影象的運動方式各不相同,可採用不同的運動模型來表示。對於相鄰的兩幀影象,常從平移、旋轉和縮放等方面來考慮兩者的相對變化。圖3-5表示了第T幀影象與第T+1幀影象之間的平移、旋轉和縮放變化。


如果影象只有平移運動,那麼使用平移模型:


其中p1、p0分別是當前幀和參考幀中對應的座標,T是二維平移量。當影象具有平移旋轉和縮放的變化時,運動模型為:


其中T是二維平移向量,s是變焦係數,。Re是正交的旋轉矩陣。即為


當影象具有扭轉變化時,需要使用6引數的模型才可以表示扭轉的變化


針對於視訊穩像技術而言,由於相鄰兩幀影象的間隔很短,幾乎沒有扭轉變化,所以一般採用平移、旋轉加縮放的模型對其運動進行建模。


電子穩像

經典的電子穩像包含3個步驟:

1.      全域性運動估計

2.      運動補償

3.      影象生成

全域性運動一般指的是視訊中背景的運動。在做全域性運動估計時,一個難點是如何獲得準確的運動資訊,排除區域性運動等各種干擾的影響。主要途徑有微分方法和特徵點對應法。

運動補償是指對全域性運動進行修正,使主觀運動與抖動分離,是視訊穩像的實質所在。如圖1所示其目標是生成平滑的運動。運動補償分為2 類:

1.      基於引數濾波;基於引數濾波是指把描述運動的引數看成需要的主觀運動和加性抖動的疊加,採用一定的濾波方法使得加性噪聲運動被抑制,如採用概率模型的Kalman 濾波。

2.      基於軌跡平滑。基於軌跡平滑則將攝像機的運動軌跡看成帶噪聲的運動軌跡,採用相應的平滑方法來去除高頻噪聲。


影象生成是穩定演算法的後續階段,其目標是根據補償後的運動生成穩定視訊輸出流,涉及到影象拼接、去模糊、融合等技術。相對簡單的實現是輸出與輸入幀一對一變換,如圖2所示。在這種模式下,輸出視訊時會出現空白區域。許多學者也研究瞭如何保持影象精度(全幀輸出)。通常的方法是通過相鄰幀的拼接來獲得全幀輸出,其缺點是可能會使得拼接區域過渡不連續、不自然。在影象生成時另一個思路是把這個過程看成一個渲染生成的過程,其思想是綜合影象資訊,在此基礎上根據特定的約束和一定的準則生成影象,而不是侷限於影象的一一對應關係。如圖3所示,該方法不是一對一的影象變換,而是基於一個子序列。將子序列送渲染系統,經過插值、融合等操作,生成不同視點的輸出序列。這種方法的優點是生成的視訊序列資訊更全,也有更好的連貫性與視覺效果。


補充:

根據演算法中運動估計方式的不同,數字穩像可分為2D穩像演算法和3D穩像演算法。

1.      2D穩像演算法通過估計相鄰幀影象間的平移、旋轉、縮放等引數來確定運動向量。這些引數計算了在二維空間內影象之間的變化,將影象內所有點旳運動方式設定為僅在平面上的移動。2D演算法的模型比較簡單,對於大部分運動情況比較簡單的視訊可以成功得到穩定的輸出結果。2D演算法魯棒性較高,而且容易達到實時處理的要求。但是2D演算法無法解決視訊中普遍存在的視差問題,也無法計算出影象運動的深度資訊以得出理想的攝像頭運動路徑。視差就是從有一定距離的兩個點上觀察同一個目標所產生的方向差異,圖1.1為視差示意圖。

2.      3D演算法利用多幀影象資料構建3D點雲,經過資料分析可以計算深度資訊,並針對影象中不同區域的運動方式差異釆取不同的補償方式,以解決視差產生的問題。3D穩像利用豐富的視訊資訊,可以達到較為理想的穩像效果並模擬合適的攝像頭運動路徑,但3D演算法運算量較大,比較難以達到實時處理要求,而且魯棒性略差。在後處理方式中3D演算法優勢明顯。



說明:以上內容均摘抄自下列3篇文章中,僅用於學術交流。

陳啟立, 宋利, 餘鬆煜. 視訊穩像技術綜述[J]. 電視技術, 2011, 35(7):15-17.

趙菲. 視訊穩像技術研究[D]. 國防科學技術大學, 2007.

李稜銥. 基於塊匹配和區域性子空間的視訊穩像方法研究[D]. 大連理工大學, 2015.