1. 程式人生 > >《Dynamic Mode Decomposition for Real-Time Background/Foreground Separation in Video》讀書筆記

《Dynamic Mode Decomposition for Real-Time Background/Foreground Separation in Video》讀書筆記

題目:Dynamic Mode Decomposition for Real-Time Background/Foreground Separation in Video

作者:J.Grosek and J.Nathan Kutz

連結:https://pdfs.semanticscholar.org/7254/8ac3f20c7cf7428bcddacbeb778068a5d807.pdf


謝絕任何不標註出處的轉載和百度百家號抄襲

筆記作者:李皮皮


這篇文章也是在介紹動態模式分解(DMD),但是相對於上一篇DMD的筆記,這一篇個人覺得在理念上更全面一點。文章提到DMD是一個非常快速和輕量級的物體識別方法,我個人深有感觸。在我的程式碼中,不論質量,用我個人的筆記本(thinkpad t460,配置算中等8G+i5),1700張高速公路灰度影象的車輛抓取一般130秒左右就能搞定。

我給DMD的定位是一個基於RPCA理念衍生的機器學習前置作業。目前來看,它本身並不是一個像神經網路等能達到高精度低錯的機制,畢竟其起源是流體力學中用於分離氣流和物體的手段,個人感覺可能它更能顯示一個物體在背景上的動態過程。因為車輛的結構和執行方式還有一些未知原因,這個動態過程被抽離的不是很明顯。但是在人的行走方面,就很容易發現有一些顯示人類行走軌跡的人影抽離不乾淨。


文章首先介紹了RPCA(穩健主成分析)。PCA(主成分析)已經是一個降維和視覺化常用的手段了。PCA依賴於歐幾里得距離(L2 norm)來進行優化,主要是向量的內積/投影。但是在處理冗餘資料上,歐氏距離的效果並不是非常好,因為歐氏距離對稀疏outlier極度敏感。因此,就有人使用其他正規化進行替代,曼哈頓距離(L1 norm)就是一個替代選項。曼哈頓距離的本質就是絕對值相加,所以它不會給稀疏outlier太多權重。也有理論證明曼哈頓距離近來在許多物理應用上取得了不錯的成績【1】。

RPCA,就是集成了L1和L2兩個正規化而產生的演算法。因此其在處理冗餘資料和稀疏資料時能表現的穩健。在處理非線性系統時,RPCA會首先尋找資料中的稀疏結構,同時將其它資料用低秩基底表示。用公式表示如下:

X = L + S

其中,X是一個m*n的矩陣,代表原資料。S是一個m*n的稀疏矩陣,代表資料中改變較為明顯的特徵,L就是由低秩部分構成的m*n矩陣。從理解上我們就可以看出,X可以代表原影象,L是幾乎不動的背景,S表示變化明顯的物體/前景。這裡RPCA問題就變成了一個主成追蹤(principal component pursuit,PCP)問題:

\\arg\ min \ ||L||_{*} +\lambda\ ||S||_{1} \\subject \ to \ X = L+S

lambda是一個懲罰項,取值非負實數。當lamda趨近於0,則影象就近似於只有背景;當lambda趨近於1,則影象趨近於原圖。一般lambda的取值都需要考究一番

,常用的公式為:

\lambda = \frac{1}{\sqrt{max(m,n)}}

其中m,n為原矩陣的維度m,n。對於這種PCP問題,可以使用增廣拉格朗日乘子法(Augmented Lagrange multiplier, ALM)解決。ALM是專門用於解決這類等式約束問題的演算法。在使用RPCA處理的時候,假設有m張照片,每張照片對應的畫素為(x,y),那麼我們的資料集就是一個(m,x,y)的矩陣。在進行進一步計算前,需要將這個矩陣轉化成(x*y, m)維度的矩陣。每一張影象被壓縮成一個m*n長度的長條,這就是一個框架(frame)。在視訊問題中,相鄰frame上靜止的物體及其周圍的畫素點會變得高度相關,有助於我們通過frame形成低秩結構。

這裡就可以看出來這類方法的一個缺陷——如何定義background和foreground並且精準分離。假設在一個地鐵站,如果一個人走進鏡頭,那麼無疑地鐵站是背景,人是一個物體;可是當這個人長久佇立於鏡頭前,該如何判斷他屬於哪一類?這個問題我曾經和我的導師探討過,他說目前學術界針對DMD方面產生的背景和前景並沒有一個絕對的定義,大部分都是約定俗成:這個人一開始就是不屬於這個鏡頭背景的,他站的再久,也有離開的時候,因此他依然是一個物體。但是對於RPCA,這個長久站立的人構成的一批圖片在此人及其周圍的畫素點一定是高度相關的,那麼這一部分圖片中的人就很可能被誤判成背景,造成分離錯誤。


接下來論文進入了正題,講述了動態模式分解(DMD)。如上文所述,DMD最原始的作用是在無需完全知曉潛在非線性系統驅動公式的情況下,理解、控制和模擬本質複雜的非線性系統。它的神奇之處就是可以通過運算,讓即使非線性的系統也能通過線性關係來表示。目前DMD的應用並不是非常廣泛(該文章發表於2014年),還是侷限在流體力學層面比較多。DMD中的核心是特徵值分解和庫普曼運算元。使用DMD分離背景的核心則是傅立葉模式。因為核心的計算步驟和之前做過筆記的論文一樣,所以就不再贅述。DMD特別適合做視訊分解,因為DMD要求資料必須均勻地在時間區間delta t上分佈(傅立葉模式計算公式中要求delta t),在視訊拆分成影象中可以得到很好地滿足。

在敘述DMD的效果時,主要影響的點有:

(1)通過傅立葉模式劃分特徵值時threshold的選取

(2)圖片數量的選取

(3)圖片精度的選取,往往高解析度的圖片能得到更好的結果。因為特徵值抓取的好

我在做DMD時,有兩個主要問題,一個是解析度,一個是抓取不乾淨的問題。高解析度的圖片得到的效果好,但是往往監控錄影等是沒有那麼清晰地,尤其受天氣影響。即使錄製效果良好,物體移動時路面等也會存在抓取不乾淨的情況。比如說高速公路的車,因為車在快速移動,所以車下的路面的畫素點也在快速改變,容易在後期圖片中被識別成動態模式。對於第二個問題,論文說可以採用迭代方式精進。目前我還沒有實驗過。DMD是一個可以迭代的方法,一層一層過濾,因為每次過濾速度很快,所以對時間的影響還是在可容忍範圍內的。


總的來說,這是一個擁有理論基礎可行的方法,它在操作的簡易性、執行時間、算力需求上表現出了很大的優勢。主要問題就是精度和麵對惡劣天氣或者惡劣拍攝情況時造成的分離不均。


參考文獻:

【1】E. Cand`es, J. Romberg, and T. Tao. Robust Uncertainty Principles: Exact Signal Reconstruction From Highly Incomplete Frequency Information. IEEE Transactions on Information Theory, 52(2):489–509, 2006.