摘要:該文給出了一種基于區域的車輛陰影檢測方法。首先將運動前景像素檢測出來,利用梯度特征分割運動前景的連通域獲取投射陰影的方向,然后再結合區域內的角點及灰度相似性特征分割車輛和其陰影像素。實驗結果表明該方法可以有效的檢測陰影,并且能夠滿足實時性的要求。
關鍵詞:運動目標檢測;陰影檢測;陰影消除
中圖分類號:TP391文獻標識碼:A文章編號:1009-3044(2008)36-2709-03
Region-based Vehicle Cast Shadow Elimination Approach
WANG Jing-jing, LUO Li-min
(Image Science and Technology Laboratory, Southeast University, Nanjing 210096, China)
Abstract: A region-based vehicle cast shadow elimination approach was developed. It first identifies each moving object as a blob, then calculates gradient feature and therefore achieves the direction of the cast shadow, and finally uses corner detection and gray similarity to divide vehicle and its shadow. The experimental result indicates that the approach is effective and can process video sequence in real-time.
Key words: moving object detection; shadow detection; shadow elimination
1 引言
交通視頻監控技術近年來成為了一個非常活躍的研究領域,快速準確的檢測出運動目標成為了運動目標分析和理解的關鍵。在很多現實場景中,陰影由于與背景存在明顯的差異,并且與運動目標具有相同的運動屬性,因此常常會被錯誤的理解為前景,從而導致真正目標的合并、丟失以及變形,影響了運動目標檢測的準確性。物體投射在場景中的陰影按照運動屬性可分為運動陰影和靜止陰影兩類。靜止陰影在各種背景建立算法中均可被吸納為背景,對運動檢測幾乎沒有影響。所以本文的研究重點為車輛投射陰影的消除。
目前針對陰影消除的主要方法可以分為兩類:基于模型和基于特征的方法[1]。基于模型的方法根據對象的形狀、場景、光照等先驗條件建立陰影的模型,通過統計分析來判別每個像素點是否屬于陰影區域,比如文獻[2]采用的高斯混合陰影模型方法(GMSM)。基于模型的方法需要一些先驗知識且計算量大,一般只適用于特定場景的陰影消除。基于特征的方法則是先提取出運動前景,然后通過顏色、紋理、梯度等種種特征來檢測陰影,最終將陰影和目標分開。陰影像素與背景、目標像素顏色的差異是最常利用的特征,不同的學者提出了多種針對不同顏色空間的算法[3,4],但是這些方法對場景光照的變化敏感,當運動目標與陰影具有相似的顏色特征時會引起誤判。文獻[5]對各種基于特征的方法性能優劣做出了詳細的分析。本文提出了一種基于區域的車輛陰影消除方法。先用背景差分檢測出運動前景,再通過計算運動前景區域內的梯度特征判斷陰影所在的方向,最后結合角點和陰影的灰度特征識別出陰影和運動目標以消除陰影。
2 運動陰影檢測
2.1 算法流程
本文的主要算法可以分為陰影方向判斷、特征點檢測和陰影消除三個部分。準確的提取運動前景是整個算法的基礎。采用高斯混合模型[6]為背景建模,獲得自適應更新的背景圖像B,然后使用背景差分法,最后通過形態學濾波獲得二值化的運動前景圖像F。由于和目標一起運動,運動陰影也被當作前景檢測出來,所以本文中提到的運動前景為運動目標及投射陰影組成的連通區域。圖1為算法流程。
2.2 算法原理
2.2.1 判斷陰影方向
利用運動前景的特征判斷陰影的方向,繼而確定陰影出現的區域有利于有針對性的消除陰影,減少對無關像素的計算并且避免將運動目標像素誤判為陰影,從而提高算法的實時性和準確性。
交通監控視頻序列中一般背景為平面,且光源遠離背景,不同物體表面與光源之間的夾角近似相等,因此如果存在投射陰影,則同一光照場景中不同車輛的陰影方向保持一致。不同的光照場景中,由于光照方向和攝像機架設角度的不同,投射陰影的方向有所不同。設當前幀的灰度圖像為G,以運動前景圖像F為掩模,利用公式(1)獲得運動前景灰度圖像MO,圖2(a)所示為實驗視頻序列第99幀的MO圖像,通過連通成分標記算法[7,8]提取MO中每個連通區域的信息并且創建外接矩形Rect。通過公式(2)計算Rect的質心,其中Cx和Cy分別為質心的橫坐標和縱坐標。利用質心將Rect劃分為上、下、左、右四個相互重疊的子矩形區域,分別記為U,D,L,R。通過對大量交通場景的觀察,投射陰影一般集中在這四個子矩形中的一個,如果能夠判斷出陰影出現在哪一個子矩形中,就可以得知陰影的方向。圖2(b)為第99幀中運動前景Rect劃分后的結果。U由1、2標注的區域合并而成;D由3、4標注的區域合并而成;L由1、4標注的區域合并而成 ;R由2、3標注的區域合并而成。
由于投射陰影區域像素值灰度變化不大,紋理均勻;而運動車輛通常包含較豐富的紋理信息[9],因此借助梯度特征可以進一步確定陰影的方向。定義平均邊界密度Eb作為參數,用以度量特定區域中包含的邊界數量。首先利用Sobel算子檢測圖像的梯度特征,結果記為E,第99幀圖像梯度特征圖如圖2(c)所示。通常暗色的運動目標包含的邊界信息較少;如果存在遮擋,現有的連通區域分析方法無法避免把多個車輛和它們的投射陰影檢測為一個運動前景;這兩者都會影響陰影方向判斷的準確性。因此根據同一幀圖像中不同運動目標的投射陰影方向相同的特點,對一幀圖像MO,只選擇其中平均灰度值較大且面積適中的一個運動前景對象進行計算。具體算法如下:選定運動前景對象后首先按照公式(3),(4)分別計算子矩形U,D,L,R的面積和子矩形內的平均邊界密度。Eb值最小且平均灰度值最小的區域即為投射陰影所在的子矩形。經過計算,圖2(b)所示的子矩形L滿足條件,即算法判定陰影在運動目標的左側,與人眼的觀察結果一致。每間隔20幀重新計算一次陰影的方向,以提高算法對光照劇烈變化的場景的魯棒性。
2.2.2 特征點檢測
雖然不同光照場景中的車輛投射陰影方向和形狀不盡相同,但是在車輛和其自身投射陰影的分界處,以及發生遮擋時,車輛與另一個車輛的陰影的分界處都存在明顯的角點,利用這一特征結合已經獲取的陰影方向可以進一步區分車輛和投射陰影。以陰影在車輛的左側為例,考慮到存在遮擋的情況,圖3所示的4類角點為陰影消除所需的特征點。利用圖3(a)所示的特征點可以分割車輛及其向左的投射陰影;利用圖3(b)所示的特征點可以分割發生水平方向遮擋時車輛和其右側相鄰車輛的投射陰影;利用圖3(c)和圖3(d)所示的特征點可以分割發生垂直方向遮擋時相鄰的上下兩個車輛。對于陰影在車輛其他方向的情況可以依照類似的方法分析。
為了提取出運動前景輪廓上的特征點,首先對運動前景二值圖像F進行邊界跟蹤,獲得運動前景的外輪廓圖像記為Cr。對Cr使用Harris角點檢測[10]算法,盡管Harris方法的閾值可以調節,但是檢測后的角點數量較多,車燈等局部形狀也會產生角點,因此需要進一步篩選角點并且按照圖3所示進行分類。不論是否存在遮擋,特征點總是在運動前景形成的凸包內部,所以首先利用這一特征去除一些角點;其次如果兩個角點的歐式距離小于預先設定的閾值,則以它們的中點來替代。經過這兩步處理之后,角點的數量明顯下降。設待定角點為θ(x,y),圖4分別給出了在外輪廓圖Cr上四類特征點的4鄰域像素值應滿足的條件,根據這一準則可以對特征點進行分類標記。圖5為第99幀圖像特征點檢測的結果。
2.2.3 陰影消除
由于陰影為光線被物體遮擋產生,所以被投射陰影覆蓋的像素其灰度值往往小于對應的背景像素;車輛的紋理比較多,而投射陰影區域的灰度相對均勻,變化較小;根據這兩個特征本文采用區域生長方法來消除陰影。種子點的選取直接影響到區域生長的效果,所以首先需要根據陰影方向和特征點的分類結果來合理選取種子點。仍然以陰影在車輛的左側為例,投射陰影的消除可以分為三種情況:
1)如果在運動前景中僅檢測到一個分類為A的特征點,則表明沒有遮擋,前景僅由一個車輛及其自身的投射陰影組成,如圖5(c)所示;
2)如果在運動前景中檢測到多個不同類型的特征點,表明存在遮擋,前景中包含多個車輛和投射陰影,如圖6所示;
3)如果在運動前景中沒有檢測到特征點,如圖5(b)中右上方所示的區域,則運動前景可能僅由投射陰影組成,不包含車輛。
其中,針對第三種情況的陰影消除較為簡單,計算連通區域的面積,如果小于設定的閾值,則將整個區域內的像素值置為0,不需要進行區域生長。第一種和第二種情況的分析相對復雜,本文的方法是基于區域的,所以在區域生長過程中所有的種子點首先必須位于運動前景外接矩形Rect內部。對于第一種無遮擋的情況,初始種子點隨機選取滿足條件:灰度值大于零、小于對應背景像素;位于外接矩形Rect的左邊界右側和特征點A左側之間的N個像素點。實驗中取N=10,隨機選取有利于提高區域生長結果的準確性。對于第二種情況,以圖6所示為例,檢測到兩個A類特征點、一個B類特征點、一個C類特征點,根據前面的分析可以判斷該前景區域有兩個運動目標并且同時存在水平和垂直方向上的遮擋,因此需要對兩個運動目標的陰影分別進行消除。對于位于圖像左側的運動目標,選取方法與第一種情況相同,初始種子點位于外接矩形Rect的左邊界右側和特征點A左側之間;對于右側的運動目標, 初始種子點位于特征點B的右側和特征點A’的左側之間,并且在區域生長的過程中,所有種子點應該位于特征點C的上方。區域生長步驟如下:
1)將初始種子點入棧,并且初始化像素訪問標記;
2)出棧,修改種子點的訪問標記。搜索種子點MO(x0,y0)的8鄰域像素MO(x',y'),該點如果滿足式(5)所示的條件,且沒有被訪問過,即可作為新的種子點入棧,實驗中取Thres=5;
3)重復步驟(2),直到棧空為止,區域生長結束;
區域生長的結果即為檢測到的投射陰影,在運動前景二值圖像上修改其像素值為0。最后利用形態學操作去除陰影消除后的小的孤立點,并且填充目標輪廓包圍的區域,以此為模板即可獲得真正的運動目標。
3 實驗結果
實驗采用了分辨率為320*240背景變化較大且由陰影引起的遮擋情況較多的視頻序列HighwayⅠ(來自http://cvrr.ucsd.edu/aton/shadow)。實驗結果表明該算法有效的抑制了運動陰影,速度約為23幀/s,基本滿足實時處理的要求。圖7分別給出了沒有遮擋和存在遮擋情況下的實驗結果。第三列的兩幅圖像顯示了陰影消除后,根據連通區域分析重新標注的運動目標。
Cucchiara等[5]定義的陰影檢測率η和陰影辨識率ε兩個指標是陰影檢測性能的客觀評價標準,目前為很多文獻所采用,好的陰影檢測算法應該同時具有較高的η和ε。
TPS 指被正確分類的陰影點數量,FNS 指被錯誤分類的陰影點數量,TPF 指被正確分類的目標點數量,FNF 指被錯誤分類的目標點數量。視頻Highway I共有440幀,為了分析性能,等間隔的選取了20幀圖像,手工標注了圖像上的背景、運動目標和陰影作為基準圖像。經過公式(6),(7)計算,本文提出的算法陰影檢測率η=90.36%, ε=87.62%。
4 結論
針對視頻監控中的車輛陰影檢測問題,本文給出了一種基于區域的陰影消除方法。與基于像素的方法不同,該算法考慮了運動前景區域像素的總體特征,通過判斷陰影方向和提取特征點來分割車輛和投射陰影像素,并且最終在區域內利用陰影灰度特征來消除陰影。實驗結果證明:此法計算量小,陰影檢測率高,并且在發生遮擋時也可以準確的消除陰影。
參考文獻:
[1] Prati A,Mikib I, Grana C, et al. Shadow Detection Algorithms for Traffic FlowAnalysis: a Comparative Study[C].The Proceeding of the IEEE International Conference on Intelligent Transportation Systems,2001:340-345.
[2] Martel-Brisson N, Zaccarin A.Moving Cast Shadow Detection from a Gaussian Mixture Shadow Model[C].The Proceeding of the IEEE International Conference on Computer Vision and pattern recognition,CVPR 2005(2):643-648.
[3] Cucchiara R, Grana C. Improving shadow suppression in moving object detection with HSV color information[C].The Proceeding of the IEEE International Conference on Intelligent Transportation Systems,2001:334-339.
[4] Schreer O, Feldmann I, Golz U, et al.Fast and robust shadow detection invideo conference applications[C].Procedings of the 4th EURASIP IEEE Region 8 International Symposium on Video/Image Processing and Multimedia Communications,Zadar,2002:371-375.
[5] Prati A, Mikic I, Cucchiara R,et al.Detecting Moving Shadows: Algorithms and Evaluation[J].IEEE Transactions on Pattern Analysis and Machine Intelligence,2003,25(7):918-923.
[6] Stauffer C, Grimson W. Adaptive background mixture models for real-time tracking[C].Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, Ft.Collins, North Carolina,1999:246-252
[7] Suzuki S, Abe K. Topological Structural Analysis of Digital Binary Images by Border Following[J].Computer Vision, Graphics,and Image Processing,1985,30(1):32-46.
[8] Shapiro L G, George C. Stockman.計算機視覺[M].北京: 機械工業出版社,2005:42-45.
[9] Wang J M, Chun Y C. Shadow Detection and Removal for Traffic Images[C].The Proceeding of the IEEE International Conference on Networking,Sensing and Control,2004(1):649-654.
[10] Harris C,Stephens M. A Combined Corner and Edge Detector[C].Proceedings of Fourth Alvey Vision Conference,1988:147-151.
注:“本文中所涉及到的圖表、注解、公式等內容請以PDF格式閱讀原文。”