光流法基本原理


摘自百度百科

光流是一種簡單實用的圖像運動的表達方式[1],通常定義為一個圖像序列中的圖像亮度模式的表觀運動,即空間物體表面上的點的運動速度在視覺傳感器的成像平面上的表達。這種定義認為光流只表示一種幾何變化。1998年Negahdaripour將光流重新定義為動態圖像的幾何變化和輻射度變化的全面表示[2]。光流的研究是利用圖像序列中的像素強度數據的時域變化和相關性來確定各自像素位置的“運動”,即研究圖像灰度在時間上的變化與景象中物體結構及其運動的關系。一般情況下,光流由相機運動、場景中目標運動或兩者的共同運動產生的相對運動引起的。光流計算方法大致可分為三類:基於匹配的方法、頻域的方法和梯度的方法。

  (1) 基於匹配的光流計算方法包括基於特征和基於區域兩種。基於特征的方法不斷地對目標主要特征進行定位和跟蹤,對大目標的運動和亮度變化具有魯棒性。存在的問題是光流通常很稀疏,而且特征提取和精確匹配也十分困難。基於區域的方法先對類似的區域進行定位,然后通過相似區域的位移計算光流。這種方法在視頻編碼中得到了廣泛的應用。然而,它計算的光流仍不稠密。

  (2) 基於頻域的方法,也稱為基於能量的方法[3],利用速度可調的濾波組輸出頻率或相位信息。雖然能獲得高精度的初始光流估計,但往往涉及復雜的計算。另外,進行可靠性評價也十分困難。

  (3) 基於梯度的方法利用圖像序列亮度的時空微分計算2D速度場(光流)。由於計算簡單和較好的效果,基於梯度的方法得到了廣泛的研究。雖然很多基於梯度的光流估計方法取得了較好的光流估計,但由於在計算光流時涉及到可調參數的人工選取、可靠性評價因子的選擇困難,以及預處理對光流計算結果的影響,少量幀中噪聲的存在以及圖像采集地過程中形成的頻譜混疊都將嚴重影響基於梯度的方法的結果精度[3]

  光流法檢測運動物體的基本原理是:給圖像中的每一個像素點賦予一個速度矢量,這就形成了一個圖像運動場,在運動的一個特定時刻,圖像上的點與三維物體上的點一一對應,這種對應關系可由投影關系得到,根據各個像素點的速度矢量特征,可以對圖像進行動態分析。如果圖像中沒有運動物體,則光流矢量在整個圖像區域是連續變化的。當圖像中有運動物體時,目標和圖像背景存在相對運動,運動物體所形成的速度矢量必然和鄰域背景速度矢量不同,從而檢測出運動物體及位置。采用光流法進行運動物體檢測的問題主要在於大多數光流法計算耗時,實時性和實用性都較差。但是光流法的優點在於光流不僅攜帶了運動物體的運動信息,而且還攜帶了有關景物三維結構的豐富信息,它能夠在不知道場景的任何信息的情況下,檢測出運動對象。

  對於視頻監控系統來說,所用的圖像基本都是攝像機靜止狀態下攝取得,所以對有實時性和准確性要求的系統來說,純粹使用光流法來檢測目標不太實際。更多的是利用光流計算方法與其它方法相結合來實現對目標檢測和運動估計。

  然而,在實際應用中,由於遮擋性、多光源、透明性和噪聲等原因,使得光流場基本方程的灰度守恆假設條件不能滿足,不能求解出正確的光流場,同時大多數的光流計算方法相當復雜,計算量巨大,不能滿足實時的要求,因此,一般不被對精度和實時性要求比較高的監控系統所采用。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM