尚晉霞
(云南大學 旅游文化學院,云南 麗江674100)
目前已有許多陰影去除算法,主要分為基于模型的方法和基于屬性的方法。基于模型的方法需要事先利用場景、運動目標和光照條件等建立陰影模型,根據陰影模型可以精確計算出陰影的形狀和位置,很多情況下一些先驗知識很難獲得,只在一些特定的場合使用。基于屬性的方法主要利用陰影的顏色、紋理、梯度、邊緣等變化特性去除陰影。實驗表明像素點被陰影覆蓋前和被陰影覆蓋后,該點顏色的亮度會變暗、飽和度有所下降,但色度變化不大[1],所以基于顏色變化特性的陰影去除主要是通過轉化表示像素點顏色的空間,如從RGB轉化到HSV、YUV(YCbCr)、歸一化的RGB(rgb)等空間,利用上述特性去除陰影。紋理信息的陰影去除主要基于被陰影覆蓋的背景區域與覆蓋前相比只是亮度顯著變化,而紋理基本保持不變。但是,基于顏色特性的陰影去除算法容易把亮度低于背景、色度與陰影相近的目標區域去除,所以基于LBP算子的紋理算法在紋理特征變化很小的區域往往失效,如天空、草地等相鄰像素的灰度值差異較小的情況。鑒于兩種算法的優劣,本文提出一種陰影去除算法,該算法的主要流程如下:
(1)運動目標檢測,利用混合高斯背景建模得到背景圖像以及前景的二值圖像。
(2)提取與二值前景圖像相對應的當前圖像、背景圖像處的R、G、B值,利用第1節以及第2節提到的方法同時計算當前圖像與背景圖像各自的Y、U、V值及LCA值并去除陰影。
(3)圖像歸一化YUV顏色空間陰影去除結果與三通道同時應用LCA值方法去除陰影所得結果相或。
(4)對兩種去除陰影方法相或所得前景圖像進行形態學運算得到最終去除陰影的前景圖像。
在RGB 三通道上處理圖像非常復雜。為了更好地進行運動目標視頻檢測中對陰影的處理,把顏色空間從RGB轉換到YUV空間。YUV顏色空間便于在灰度圖像和彩色圖像之間進行轉換,即便于對顏色的色彩信息和亮度信息進行分離。
YUV顏色空間中,Y表示亮度,U、V分別是R_Y、B_Y的分量,又稱色度,描述色彩飽和度的信息。YUV顏色空間的優點是它的亮度信息Y和色度信息(U、V)相互獨立,只需要U、V即可表示色彩信息。從視頻序列得到的圖像信息一般采用RGB顏色模型,轉換到YUV顏色空間的傳統方法如下:

根據視覺經驗可得如下結論[2]:在一定的亮度條件下,同一物體在陰影區內和不在陰影區內色調近似一致。在視頻序列運動檢測的過程中,運動陰影的產生是前景運動物體擋住射向背景的光線所致,運動陰影與背景模型相比,只是亮度信息有所降低,色彩信息變化不大。歸一化的顏色空間(Normalized Color)對陰影造成的像素點色度、亮度值變化更不敏感,更具魯棒性,因此本文采用在歸一化的YUV空間進行運動陰影抑制[3]。步驟如下:
(1)利用式(1)轉換像素點的RGB顏色值到YUV空間,同時考慮到實際場景中光照以及攝像機抖動等帶來的噪聲影響,對一個待處理點像素的R、G、B值,用以該像素為中心的3×3窗口內的均值替代:

(2)利用陰影色調近似一致的原則,歸一化YUV顏色空間,定義U°=U/Y,V°=V/Y,陰影檢測算法如下:

進行陰影檢測,首先判斷當前像素點Pfront與背景像素點Bback的亮度值Y分量的差值,如果差值為正值,則一定不是陰影像素點;如果差值為一定的閾值Yc,且diffc LBP算子[4]具有極強的灰度和旋轉不變性,相對較低的計算復雜度,是一種高效的局部紋理描述算子。LBP算子紋理描述原理為:選定某一像素為中心點,以半徑R為步長,比較中心點和與其相距R的鄰域點的灰度值,把中心點作為比較的閾值,得到一組代表半徑R內灰度變化的二進制值作為灰度變化的描述,并計算其LBP值: 其中,gc為中心點(xc,yc)的灰度值,P為半徑R上選定的鄰居數,gp為鄰居點P的灰度值。LBP算子通常以半徑為R的圓周上對稱的點集為鄰居,圓周半徑和鄰居點數由用戶決定,半徑越大描述的局部像素的灰度變化越準確,但計算量也越大。 LBP紋理算子的實質是通過比較中心點像素與鄰域像素灰度值的大小關系來描述局部紋理變化,但它只體現了大小變化并沒有體現值的變化,尤其在一些灰度較平坦的地區,僅僅是大小關系的比較,根本無法體現細微紋理;又由于基于視頻序列的目標檢測是在彩色視頻序列中進行,以及灰度換算中R、G、B值的不確定性損失,同時為了突出中心像素點取值的重要性,用鄰域像素的均值作為比較的基準,用式(4)計算中心像素點的R、G、B值,且通過分別比較中心像素點與半徑R內像素點的RGB三通道值,用兩者絕對差值的均值來描述局部紋理,即LCA,用式(5)計算中心像素點RGB三通道各自的LCA。 其中gcR、gcG、gcB分別表示在中心像素點(xc,yc)處,半徑R內各個像素點RGB三通道的均值;gpR、gpG、gpB分別表示半徑R內各個像素點的RGB三通道值;LCAR(xc,yc)、LCAG(xc,yc)、LCAB(xc,yc)分別表示在中心像素點(xc,yc)處,半徑R內RGB三通道的LCA。 陰影區域是一個半透明區域,被陰影覆蓋前后背景區的紋理近似不變[5]。本文使用2.2節提出的RGB三通道的LCA值表示半徑R內中心像素點(xc,yc)處的局部紋理。本文陰影去除中半徑R選擇為1個像素距離,即p=8,且使用式(5)提取混合高斯背景模型獲得的含有陰影的前景像素點在當前圖像與背景圖像中的局部紋理,通過比較它們的絕對差值,閾值化判斷前景像素點是否屬于陰影區域。因此陰影像素點SDtexture(x,y)可表示為: 其中LCAbR(xc,yc)、LCAbG(xc,yc)、LCAbB(xc,yc)、LCAfR(xc,yc)、LCAfG(xc,yc)、LCAfB(xc,yc)分別表示在背景幀和當前幀中待處理像素點(xc,yc)處RGB三通道的LCA值;ThreR、ThreG、ThreB為根據實驗所取的閾值,在光照強烈的情況下,閾值選取過小會存在陰影的邊緣,閾值選取過大會丟失目標信息;0、1表示待處理像素點在二值化前景圖像中的取值,判斷為陰影時像素點取值為0,否則為1。 基于rg/V空間的陰影去除,由于閾值選取的關系,容易把亮度與背景接近、但高于陰影區域的前景區域作為陰影去除。基于LCA的陰影去除方法在前景這種較亮區卻有很好的保留作用,因為此種亮區相比前景的其他暗區像素之間的變化更明顯,即紋理更清晰。所以這兩種方法可以結合使用,起到互補作用。因此或運算的陰影像素點SDor(x,y)可表示為: 式(7)中,0、1的含義與式(6)相同。 腐蝕(Erosion)與膨脹(Dilation)是形態學的基本運算,在圖像處理中腐蝕可用于消除圖像中不相關的細節,膨脹能夠修復圖像間斷,填補孔洞,而且通過組合的腐蝕與膨脹運算還可以進行圖像的邊界提取、區域填充、連通分量提取以及提取骨架等操作。形態學運算多用于二值圖像,其作用與結構算子的大小、類型以及算子原點的選取有關。使用式(7)所得的前景二值圖像,在光照強烈的條件下,陰影的邊緣不能很好地去除,且由于光照的不均勻使得圖像存在噪聲以及細小的空洞,使用形態學運算可以得到更好的前景圖像。本文使用組合算子的形態學方法對式(7)所得圖像進行處理,先采用3×3的矩形算子B3×3對圖像進行膨脹,接著用9×9的交叉算子B9×9對其進行腐蝕,因為如果存在陰影邊緣,對其進行膨脹運算后,其邊緣會更明顯,所以采用了不對稱算子以更好地去除陰影邊緣。其處理如式(8)所示: 其中F表示待處理圖像,·E表示形態學運算,⊕、⊙分別表示膨脹與腐蝕運算。 本實驗在VC平臺上實現,選取了室外強光、室外弱光以及室內3個典型環境進行實驗,其中陰影去除結果如圖1所示。為了定量評價算法性能,本文采用類似參考文獻[6]中提出的陰影檢測率η和陰影的實際占有率δ進行比較,利用它們之間的絕對差值σ作為客觀評價的依據。 其中Sfact手動獲得,Sdetect、Tf、Sfact分別表示實驗檢測到的陰影像素點數。實驗中式(3)方法中所選的閾值Tthr在3個場景下分別為0.60、0.55、0.50;LCA方法在3個場景下ThreR、ThreG、ThreB三個值都相等,為5.5,其他實驗方法的閾值根據實際情況都取較小值。表1~表3給出了定量的評估結果。 表1 室外強光下陰影的檢測率和陰影的實際占有率 從圖1的實驗結果以及表1~表3可以看出,LCA算子優于LBP算子的陰影去除結果,LCA算子可以保留很好的目標輪廓與亮區信息,UV/Y(歸一化的YUV空間)空間優于YUV空間,可以較好地保留目標的暗區,兩者結合充分發揮了優勢互補的作用,最后通過形態學運算,可以得到較好的前景運動目標。 表2 室外弱光下陰影的檢測率和陰影的實際占有率 表3 室內環境下陰影的檢測率和陰影的實際占有率 本文提出了一種陰影去除算法,結合歸一化的YUV顏色空間與基于LBP紋理思想的LCA局部紋理描述可以很好地保留前景目標,最后通過形態學運算可以得到滿意的陰影去除結果。在實際應用中,可以滿足視頻監控中運動目標陰影去除的需要。 [1]PRATI A,MIKIC I,MOHAN M,et al.Detecting moving shadows:algorithms and evaluation[J].IEEE transactions on pattern analysis and machine intelligence,2003,25(7):918-923. [2]海因維希·朗格.色度學與彩色電視(第1版)[M].張永輝,譯.北京:中國電影出版社,1985:1-45. [3]ZHOU J,HOANG J.Real time robust human detection and tracking system[C].In Computer Vision and Pattern Recognition,IEEE Computer Society Conference,2005:149-149. [4]OJALA T,PIETIKA¨INEN M,MAENPA¨A¨T.Multiresolution gray-scale and rotation invariant texture classification with local binary pattern[J].IEEE Transactions on Pattern Analysis and Machine Intelligence,2002,24(7):971-987. [5]LEONE A,DISTANTE C,BUCCOLIERI F.A texture based approach for shadow detection[C].IEEE Conference on Advanced Video and Signal Based Surveillance,Washington,2005:371-376. [6]PRATI A,MIKIC I,TRIVEDI M.Detecting moving shadows:algorithms and evaluation[J].IEEE Transactions on Pattern Analysis and Machine Intelligence,2003,25(7):918-923.2 局部紋理陰影去除算法
2.1 局部紋理描述LBP算子

2.2 改進的局部紋理描述LCA

2.3 LCA陰影去除

3 歸一化的UV值與LCA方法去除陰影后或運算

4 形態學(Morphology)處理

5 實驗結果與分析




