葉慶偉,謝永昌,狄紅衛
視頻監控以其直觀、方便、信息內容豐富而廣泛應用于安防、監控等場合,成為金融、商業、交通乃至住宅、社區等領域安全防范的重要手段,為這些行業的安全防范和環境監控起到了不可忽視的作用。然而受監控環境、光照變化等影響,噪聲一直是實時視頻監控中不可回避的問題,也成為影響視頻質量的重要因素。
在視頻監控應用中,降噪技術是增強視頻質量的一種非常重要的手段。目前降噪方法大多是在空域內基于低通濾波的方法,這些方法去除了主要集中在信號高頻內的噪聲,可是也造成了集中在信號高頻內視頻細節的丟失,導致了降噪和保護細節的矛盾。視頻在幀間具有很強的相關性,時域降噪法既可以有效地去除噪聲也可以很好地保護圖像的細節,可是單純的時域濾波會引入運動拖影現象。文獻[1]提出了一種基于運動補償的時域自適應視頻降噪算法,由于是基于運動補償,該算法時間復雜度相對較高,為了滿足實時性,不能結合多幀數據進行濾波,只考慮了前一幀數據,因而影響了降噪效果。文獻[2]提出結合運動檢測區分每幀圖像的運動區域和非運動區域,再分別對不同的區域采用不同的濾波策略。這種結合了時域、空域的視頻濾波降噪算法,充分利用了視頻的時域、空域信息,能夠避免使用單個算法的缺點,得到了不錯的效果,然而,這種時空聯合去噪方法的效果取決于運動檢測的精確度。
針對監控視頻圖像的特點,本文提出了一種基于Non_local means的時空聯合實時視頻降噪算法。通過結合多幀圖像采用基于區域相似程度的運動檢測方法進行運動檢測,自適應地區分圖像的運動區域和靜止區域,對靜止區域采用時域加權均值濾波,對運動區域采用空域ANL濾波。實驗結果表明,該方法能夠顯著提高視頻的信噪比和圖像的主觀質量,而且沒有造成運動拖影和明顯的細節信息丟失,并已在視頻監控系統中得到商業化的應用。
在空域降噪的算法中,Non_local means是一種性能優良的算法,特別是基于Non_local means的鄰域自適應算法簡稱ANL算法[3],這種算法降噪效果很好。借鑒ANL算法的思想,本文利用區域的相似程度進行運動檢測,使運動檢測的結果更準確。

其中:

式(1)中,w(x,y)是權值,根據像素點x和像素點y之間的相似程度來計算,并且滿足。這種相似程度并不是簡單對這兩個像素點的直接差值進行度量,而是通過比較v(Nx)和v(Ny)的相似程度以求得權值,v(Nk)表示以像素k為中心的一個矩形區域。像素之間的相似程度的判定是根據這個矩形區域內的對應像素相減之后的平方和的大小來度量的,差值的平方和越小,表明像素越相似,則相對應的權值就會越大,相反,差值的平方和越大,表明像素的相似程度就小,相對應的權值就會越小。dis小于閾值T1的像素,可以認為是由于噪聲帶來的影響,其區域是相對比較平坦的區域,因此可以直接求其平均,這樣就會較好地去除噪聲,而對dis大于閾值T2的像素,其權值為0,這樣的截斷會減少圖像模糊現象,較好地保持圖像的邊緣,而對大于T1小于T2的像素,可以按照其實際的dis來計算其權值。
如圖1所示:

圖1 對應像素示意圖
中粗線區域中心A表示待處理點,其右上方鄰域的點B為要加權平均的點,即虛線區域中心像素點,為了計算此點的權值,以待處理點A為中心的3×3的矩形窗口和B點為中心的3×3矩形窗口內像素點對應相減的平方和,即來度量權值。本文采用9×9大小的搜索范圍,相似矩形區域為3×3。
運動檢測算法是本算法的核心,它決定整個算法的性能。運動檢測的方法主要有:背景差分法、時間差分法和光流法。光流法計算方法復雜而且抗干擾性差,一般無法做到實時處理。幀間差分法只檢測相對運動的物體,因兩幅圖像之間的時間間隔較短,差分圖像受光線變化影響小,檢測有效而穩定,但該方法存在忽視兩幀間物體重疊部位形成空洞和檢測出的物體的位置不精確的缺陷。與幀間差分法相比,背景差分法一般能夠提供較完全的特征數據,得到較精確的目標圖像,但在實際應用中,由于進行比較的兩幅圖像攝自不同的時刻,因此容易受光照變化、風等自然因素和其他人為因素的影響,出現許多偽運動目標點,影響目標檢測的效果[4]。
在視頻監控中,時域降噪的效果遠比空域降噪要好,在不造成運動拖影的前提下應以時域降噪為主,使降噪的效果最優,因此運動檢測相當關鍵。文獻[2]采用幀間差分法,但是該文獻判斷運動和靜止塊的準則是:若當前幀的當前子塊與前L幀對應子塊中超過80%的塊滿足設定條件,當前子塊才被判斷為靜止區域。這種方法使得很多靜止的區域被誤判為運動的區域,從而降低了去噪的效果,同時帶來過多的使用空域降噪而引起的在視頻序列應用上的閃爍問題。本文提出只要當前幀的當前子塊與前L幀對應子塊中有一個子塊滿足設定條件,當前子塊就被判斷為靜止區域,進而采用加權時域均值濾波[5]。
首先將待處理的視頻幀劃分成4×4的宏塊。宏塊的大小選取不宜過大也不宜過小,宏塊越大檢測出來的運動區域越不精細,從而導致運動的區域過多影響降噪的效果。宏塊選取過小會造成運動檢測不準確,特別是在高噪聲背景下檢測。為了進一步減少噪聲的干擾,一般采用宏塊的像素值之和或者是平均值作為運動檢測的判斷準則,這相當于做了一次簡單的均值濾波。但是若當前宏塊已經受到嚴重的污染時還使用這個宏塊的像素值之和或均值作為運動檢測的判斷準則,必然會導致運動檢測的不準確,而且不一樣的宏塊同樣會有一樣的像素值之和或均值,例如對稱的宏塊。因此,本文并不是直接對兩幀圖像當前對應宏塊的像素值之和的差值進行比較,而是以宏塊為單位,結合兩幀圖像以當前宏塊為中心3×3個宏塊的區域,通過ANL算法中的相似程度來進行運動檢測。這里相似程度的判定是根據3×3宏塊區域內的對應宏塊像素和相減之后的平方和的大小來度量的,平方和小于閾值T,表明兩幀圖像的當前對應宏塊很相似沒有運動,否則表明兩幀圖像的當前對應宏塊的相似程度很小,即產生了運動。具體的步驟如下(記當前幀為k,宏塊的橫坐標和縱坐標分別為i,j):
(1)初始化前L幀的每個宏塊的運動狀態為靜止狀態,為0時表示為靜止狀態,為1時表示運動狀態。
(2)求當前宏塊B(i,j,k)的像素值之和SB(i,j,k)。
(3)若完成所有宏塊像素值之和的計算則轉到(4),否則轉到(2)進行下一個宏塊的計算。
(5)若l>L,則轉到(6);否則l=l+1,轉到(4)進行下一幀對應宏塊的檢測。
(6)若完成所有宏塊的檢測則轉到(7);否則轉到(2)進行下一個宏塊的檢測。
(7)完成所有宏塊的運動檢測。
基于運動檢測的時空聯合視頻降噪流程,如圖2所示:

圖2 基于時空聯合的實時視頻降噪算法流程圖
具體步驟如下:
(1)以4×4像素大小的宏塊為基本處理單位,進行噪聲方差的估計。
(2)結合噪聲方差設置運動檢測的閾值T。
(3)利用宏塊相似程度進行運動檢測。
(4)針對不同的區域,對運動區域進行ANL濾波,對非運動區域進行時域均值濾波。
對于當前幀中判定為靜止區域的塊,采用時域加權均值濾波實現降噪。具體如下:

式中:

ANL降噪算法,如圖3所示:

圖3 ANL降噪算法流程
為了說明算法的有效性,本文對添加了高斯噪聲的bridge-far測試序列進行了仿真實驗,實驗結果,如圖4所示:

圖4 實驗結果
圖4中,從(c)和(d)的背景可以發現(d)的去噪效果比(c)的要好,說明本文提出的運動檢測算法對運動和靜止區域的判斷更合理。對于(e)和(f)兩種空域降噪算法,ANL算法明顯要比空域自適應降噪算法好很多。從(g)和(h)中可以看出,本文提出的時空聯合降噪算法比文獻2中的算法更好,而且從快速飛入的小鳥和緩慢前進的大船可以看出本算法可以準確檢測出運動區域,沒有造成運動拖影;從湖面的波紋可以說明本算法沒有造成明顯的細節信息丟失。相應的實驗數據,如表1所示:

表1 實驗數據PSNR比較(單位:dB)
針對監控視頻圖像的特點,提出了一種基于時空聯合的實時視頻降噪算法。通過結合多幀圖像采用區域相似程度進行運動檢測,分別對非運動區域做時域均值濾和對運動區域做空域ANL濾波。實驗結果表明本文提出的降噪算法不僅可以實時有效地去除噪聲,而且沒有造成運動拖影和明顯的細節信息丟失。提出的算法已在視頻監控系統中得到商業化的應用。
[1]李巖,喬彥峰,高豐端,等.一種基于運動補償的時域自適應視頻降噪算法[J].電子器件,
[2]2007,3(5):166-169.
[3]張文杰.一種基于運動檢測的智能視頻序列降噪算法[J].電子工程師,2007,33(12):37-39.
[4]Buades A,Coll B,Morel J M.A non-local algorithm for image denoising[A].IEEE Proceeding of Computer Society Conference on Computer Vision and Pattern Recognition.San Diego,USA,2005,2:60-65.
[5]Chen Zihui,Wang Li,Yu Youjian.Algorithm study of motion detection based on background
[6]difference and time difference[J],Journal of Tianjin Institute of Urban Construction 2009,15(4):298-300
[7]Dabov,K.Foi,A.and Egiazarian.K.Video denoising by sparse 3D transform-domain collaborative filtering[A].Proc.15th European Signal Processing Conference.EUSI- PCO 2007,Poznan,Poland,September 2007.