潘廣貞,孫艷青,王 鳳
(中北大學 軟件學院,山西 太原 030051)
目前視頻車輛檢測中移動陰影[1]檢測去除方法有兩種:①基于模型的方法。采用先驗知識、如場景、照明條件、三維幾何計算陰影位置,建立陰影模型。代表性方法有Li J等提出基于統計模型的陰影檢測去除方法,引入統計參數,建立陰影高斯模型,提高不同場景陰影檢測去除準確率,然而對于有標記的視頻圖像檢測過程存在缺陷[2]。②基于屬性的方法。通過分析幾何結構和顏色特征識別陰影,如顏色、紋理、亮度、梯度。代表性方法有Kar A等提出的結合陰影特征和HSV顏色空間的陰影去除算法,利用投影機特征梯度投影分離陰影和車輛特征,提高陰影消除效率,但無法快速檢測海量視頻圖像目標[3]。
針對大量視頻車輛檢測中需快速檢測并去除陰影問題,本文提出基于Fast RCNN目標檢測模型,采用Hessenberg分解法和PCA分析法實時快速檢測運動車輛并去除陰影,采用深度學習思想自主學習運動車輛特征和陰影區域特征。
基于RCNN和SPP Net思想,Girshick提出Fast RCNN算法。Fast RCNN模型亮點在于[4]:①訓練過程運用多任務損失,實現單步驟完成;②訓練過程中所有層都可以得到更新;③不再需要磁盤存儲器作為特征緩存;④比RCNN的訓練、測試時間快。對比VOC 2007數據可知在PASCAL VOC 2012上獲得mAP也更高,見表1。

表1 Fast RCNN等算法mAP效率比較
Fast RCNN模型原理[5]如圖1所示:通過深度卷積網絡(deep ConvNet)得到特征圖(feature map),在特征圖上以感興趣區域ROI(region of interesting)投影方式找出原圖候選目標區域的對應區域,用ROI池化方式獲得統一尺寸的候選目標區域特征圖(ROI feature vector),經過全連接層(FC)得到特征向量后,分別得到一個分類器(softmax)和一個回歸器(bbox)兩個輸出向量。

圖1 Fast RCNN目標檢測模型
陰影由兩部分組成:自身和投射陰影。投影是由對象投影在場景上的區域,并且可進一步分類為umbra(本影)和penumbra(半影)[6]。umbra對應于直接光被對象完全阻擋的區域,而penumbra帶被部分阻擋,如圖2所示。

圖2 本影,半影的幾何關系
Hessenberg分解(HD)是一種特殊的方形矩陣,即上部Hessenberg分解在第一子對角線下方具有零條目,并且較低的Hessenberg分解在第一超對角線上方具有零條目。該矩陣具有與原始矩陣相同特征值。在特征值算法中,Hessenberg分解可通過與縮減步驟結合Shifted QR因式分解進一步簡化為三角矩陣[7]。Hessenberg矩陣的形式可通過計算QTAQ獲得。
在監控視頻中提取的前景分量包括車輛及其陰影(檢測到的陰影作為移動物體),這種現象可能導致對象合并,對象形狀畸變,甚至對象損失這些問題。因而基于移動陰影的檢測去除問題Moghimi M K等提出一種解決運動陰影存在的算法,首先,檢測通過背景減除方法的運動像素,這些移動像素包括車輛及其陰影[8]。然后,識別由Hessenberg分解的可能的陰影區域。關于檢測車輛的一些部分作為陰影,需要通過另一種方法檢測車輛區域,可使用PCA主成分分析法。因此,在通過PCA分析法進行陰影細化之后,陰影將被正確檢測[9]。流程如圖3所示。

圖3 原有算法框架
移動陰影會導致運動對象檢測中的混亂和錯誤,前文提出的陰影檢測去除方法解決在前景提取中移動陰影被誤認為移動車輛的一部分問題,但不能快速有效的檢測并去除,當車輛較多,環境比較復雜的情況下(照明情況不同),上述人工特征提取算法已經不能很好地檢測并去除陰影,因此本文提出基于Fast RCNN目標檢測模型下的運動車輛陰影檢測去除的方法[10],算法實現過程如圖4所示。
(1)候選區域生成:一張圖像生成1 K~2 K個候選區域(采用Selective Search法)??刹捎肏essenberg分解估計候選陰影區域,通過計算前景圖像的HD并確定陰影和對象區域,將前景圖像分解為陰影和對象兩個部分。
Hessenberg特征用于從物體分離陰影區域,必須計算前景區域并且決定前景部分中的哪一個是陰影。因此,可在圖像的第一點提供m×m塊,向下滾動該塊大約1個像素的整個圖像,以保留任何區域,然后計算其中心像素在前景中的整個塊的Hessenberg分解
HESSENBERG=Hessenberg(blocks)
(1)

圖4 Fast RCNN+HD+PCA算法陰影檢測過程
其中,塊指示在前景中的可用塊,并且HESSENBERG是對這些塊計算Hessenberg分解的結果。在下一級中,整個Hessenberg分解元素的絕對值之和被計算為
(2)
其中,SAV是Hessenberg矩陣的絕對值之和,用于將運動像素分類為運動陰影和運動對象。經驗證,移動陰影的SAV具有不同分布特征,可以通過對SAV設置合適閾值來檢測可能的陰影區域,如圖5所示。

圖5 HD法得到可能的陰影區域
(2)特征提?。簩γ總€候選區域,使用深度網絡(VGG16)進行特征提取。
在(1)過程中,類似于陰影的暗區和擋風的車輛的一些部分被檢測為運動陰影。因此,可采用PCA技術降維提取部分特征識別運動陰影和車輛區域,采用深度網絡計算特征圖。對于通過PCA的車輛檢測,需要各種種類車輛的數據庫,然后,計算數據庫中所有圖像的以下平均值,用于刪除不當的照明效果
(3)
其中,si是每個數據庫圖像的列矩陣,其大小為:η是數據庫中所有可用圖像的平均值,n是數據庫中等于576的可用圖像的數量。計算的η從所有數據庫圖像中減去
(4)
其中,M是尺寸矩陣。該矩陣包括所有數據庫圖像減去方程式中計算的η。然后,計算數據庫的協方差矩陣

(5)
I是在用于檢測形狀像列矩陣的車輛的前景圖像中應用的窗口,為了歸一化輸入圖像,前景中的窗口I減去等式(3)中獲得的η所得到的(具有與剩余數據庫相同的照明條件)圖像到PC中的投影由下式給出
P=PCT·(I-η)
(6)
其中,PC是主成分矩陣,其總能量是計算方差協方差矩陣(式(5))特征值的總能量的99%,并且P是應用窗口在PC矩陣上的前景圖像中的投影。重建圖像I′由下式給出
I′=PC·P+η
(7)
其中,I′是數據庫的PC的新窗口的重建圖像??梢酝ㄟ^比較重建圖像和主圖像來分類這個新窗口。重建誤差由下式給出

(8)
其中,重建誤差是重建圖像和主圖像之間的誤差率。然后,可以將此窗口視為車輛類,否則應將其視為非車輛類

(9)
可以通過確定合適的值Th,將前景圖像中的應用窗口的可用圖像分為兩類作為車輛和非車輛。為了合并一個車輛周圍所有窗口,需要計算點(x,y)的平均值;指出它們之間的距離應小于兩輛車之間的距離。最后,獲得的坐標被認為是候選車窗(依次為轎車、卡車、巴士、皮卡)如圖6所示。

圖6 PCA檢測結果
(3)類別判斷:將誤差率Error作為區分移動陰影與車輛特征送入具體的SVM分類器,判別是否屬于該類,也即將特征提取和分類融合到一個分類框架[11]。
(4)最后把得到的特征圖作為訓練樣本進行訓練,測試。
本實驗采用的視頻數據來源于Pascal VOC2012數據集,采用不同環境、不同車型如轎車、卡車、巴士等大量視頻圖像,實驗環境如下:Intel(R)Pentium(R)CPU G645 @2.90GHz,4.00GB內存Windows7 64位操作系統。開發平臺CNTK,可從git-hub中獲取基于CNTK深度學習框架的實驗代碼和訓練參數[12]。
為了檢驗評價陰影消除的結果,需使用多目標檢測準確度MODA(multiple object detection accuracy)、多目標檢測精度參數MODP(multiple object detection precision),綜合指數F。精度參數意味著多少可用的移動陰影檢測和分辨率意味著移動物體,像影子不確定陰影。在本文中可以通過使用HD特征影響準確度參數,并利用PCA提高精確度。準確度、精度參數定義如下
(10)
(11)
(12)

該實驗是在訓練樣本和測試樣本同等光照條件下進行的,HD參數SAV一定,PCA參數Threshold為0~4,將傳統HSV顏色空間、統計參數SNP方法、原有算法及本文算法運用到視頻車輛圖像上,得到算法的陰影檢測準確度MODA,檢測精度MODP,綜合指數F見表2。

表2 各種方法評價指標分析
實驗采用由低到高三階段的光照強度,通過對不同運動車輛陰影檢測去除方法的應用,對比MODA的結果,得出如圖7所示(圖中的白色區域表示檢測到的陰影)。

圖7 不同光照條件下的MODA比較
不同光照條件下傳統算法和改進算法在MODA的結果比較見表3。

表3 不同光照條件下的MODA比較
本實驗在不同閾值Threshold基礎上將原有算法和改進后加入的深度學習算法運用到視頻圖像數據庫中,運用CNTK工具對數據進行訓練以及測試得到如下結果[14],如圖8所示。

圖8 不同閾值Threshold下mAP比較
實驗結果表明:由表2知在加入深度學習思想基礎上,改進后的算法在準確度MODA、精度MODP方面都有所提升,由表3知在不同光照強度下改進后的算法在MODA、mAP指標方面也優于原先算法。
移動對象的陰影通常會導致圖像分析中的嚴重錯誤,正確檢測目標陰影并去除在智能交通系統應用中至關重要。因此本文通過分析基于改進的HD在監控視頻中的車輛模型,引入一種移動陰影檢測算法。實驗過程引入深度學習思想,采用Fast RCNN模型對大量視頻車輛圖像進行陰影檢測去除處理,將特征提取和分類結合,實現端到端的訓練、測試。實驗結果表明,該方法在不同光照條件下可有效檢測運動陰影,比以往檢測算法MODA提高3.16%,mAP提高2.78%。
[1]Movia A,Beinat A,Crosilla F.Shadow detection and removal in RGB VHR images for land use unsupervised classification[J].ISPRS Journal of Photogrammetry & Remote Sensing,2016,119:485-495.
[2]Li J,Wang G.A shadow detection method based on improved Gaussian mixture model[C]//International Conference on Electronics Information and Emergency Communication.IEEE,2014:62-65.
[3]Kar A,Deb K.Moving cast shadow detection and removal from video based on HSV color space[C]//International Conference on Electrical Engineering and Information Communication Technology.IEEE,2015:1-6.
[4]Mao H,Yao S,Tang T.Towards real-time object detection on embedded systems[J].IEEE Transactions on Emerging Topics in Computing,2016,PP(99):1-1.
[5]LU Hongtao,ZHANG Qinchuan.Application of deep convolutional neural network in computer vision[J].Journal of Data Acquisition and Processing,2016,31(1):1-17(in Chinese).[盧宏濤,張秦川.深度卷積神經網絡在計算機視覺中的應用研究綜述[J].數據采集與處理,2016,31(1):1-17.]
[6]LI Haoliang,SHUI Qinghe,FAN Wenbing,et al.A new method of vehicle shadow removal based on edge detection[J].Journal of Zhengzhou University (Engineering Science),2014,35(5):11-14(in Chinese).[李浩亮,水清河,范文兵,等.一種新穎的基于邊緣檢測的車輛陰影去除方法[J].鄭州大學學報(工學版),2014,35(5):11-14.]
[7]Moghimi M K,Pourghassem H.Shadow detection based on combinations of hessenberg decomposition and principal component analysis in surveillance applications[J].IETE Journal of Research,2015,61(3):269-284.
[8]WANG Yang,YAN Yunyang,WANG Hongyuan.Bidirectional 2DPCA and SVM face recognition algorithms based on difference space[J].Computer Science,2012,39(12):268-271(in Chinese).[汪洋,嚴云洋,王洪元.基于差空間的雙向2DPCA和SVM人臉識別算法[J].計算機科學,2012,39(12):268-271.]
[9]TU Zhengzheng.Research on video target detection and segmentation based on visual cognition theory[D].Hefei:Anhui University,2015(in Chinese).[涂錚錚.基于視覺認知理論的視頻目標檢測及分割研究[D].合肥:安徽大學,2015.]
[10]Ren S,He K,Girshick R,et al.Faster R-CNN:Towards real-time object detection with region proposal networks[J].IEEE Transactions on Pattern Analysis & Machine Intelligence,2016,39(6):1137.
[11]Gao C,Li P,Zhang Y,et al.People counting based on head detection combining Adaboost and CNN in crowded surveillance environment[J].Neurocomputing,2016,208(C):108-116.
[12]SUN Xiao,PAN Ting,REN Fuji,et al.Facial expression recognition based on ROI-KNN convolutional neural network[J].Journal of Automation,2016,42(6):883-891(in Chinese).[孫曉,潘汀,任福繼,等.基于ROI-KNN卷積神經網絡的面部表情識別[J].自動化學報,2016,42(6):883-891.]
[13]Oron S,Bar-Hillel A,Avidan S.Real-time tracking-with-detection for coping with viewpoint change[J].Machine Vision and Applications,2015,26(4):507-518.
[14]HUANG Jianqiang,CAO Tengfei,GUO Wenjing,et al.Joint shadow detection algorithm for two color spaces[J].Computer Technology and Development,2014(7):95-98(in Chinese).[黃建強,曹騰飛,郭文靜,等.聯合兩種顏色空間的陰影檢測算法[J].計算機技術與發展,2014(7):95-98.]