柳勝超,王夏黎,王麗紅,柳秋萍
(1.長(zhǎng)安大學(xué) 信息工程學(xué)院,陜西 西安 710061;2.陜西航天動(dòng)力高科技股份有限公司,陜西 西安 710077)
伴隨著計(jì)算機(jī)視覺(jué)的飛速發(fā)展,目標(biāo)檢測(cè)算法在自動(dòng)駕駛和輔助駕駛領(lǐng)域也取得了重大突破,而在交通領(lǐng)域目標(biāo)檢測(cè)算法主要應(yīng)用于對(duì)交通警察、信號(hào)燈、行人和道路標(biāo)線等的檢測(cè)。交通警察作為交通網(wǎng)絡(luò)的重要一員,能夠有效疏導(dǎo)交通防止交通擁堵,對(duì)城市交通網(wǎng)絡(luò)更好更快的發(fā)展有積極促進(jìn)作用。因此對(duì)交通警察的檢測(cè)算法的研究對(duì)于保護(hù)交通警察人身安全和保障交通網(wǎng)絡(luò)健康發(fā)展具有重要意義。
傳統(tǒng)的目標(biāo)檢測(cè)算法有很多,包括基于HOG和SVM的跟蹤[1]、學(xué)習(xí)和檢測(cè)的算法,但是該方法容易受到光照、遮擋和尺度變化等因素的影響,并且提取的特征單一,魯棒性不強(qiáng)。如今深度學(xué)習(xí)的快速發(fā)展也極大地推動(dòng)了目標(biāo)檢測(cè)算法的研究,基于卷積神經(jīng)網(wǎng)絡(luò)的目標(biāo)檢測(cè)算法也成為當(dāng)前主流的方法,其中主要包括兩種,一種是基于回歸思想的One-stage類(lèi)別的目標(biāo)檢測(cè)算法,另一種是基于候選框思想的Two-stage類(lèi)別的目標(biāo)檢測(cè)算法。目前常用的典型的One-stage目標(biāo)檢測(cè)網(wǎng)絡(luò)包括YOLOV1、YOLOV2[2]、YOLOV3[3]和SSD[4]等直接回歸目標(biāo)物體的類(lèi)別和位置。Two-stage目標(biāo)檢測(cè)網(wǎng)絡(luò)包括Faster R-CNN[5]、Fast R-CNN[6]和RCNN[7-8]等,該類(lèi)型的網(wǎng)絡(luò)主要分兩步,一步是由算法生成一系列作為樣本的候選框,另一步是由卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行樣本分類(lèi)[9]。兩種類(lèi)別的方法各有優(yōu)缺點(diǎn),該文分別對(duì)基于SSD網(wǎng)絡(luò)和基于Faster R-CNN網(wǎng)絡(luò)的交通警察的檢測(cè)進(jìn)行實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果最終表明基于Faster R-CNN網(wǎng)絡(luò)可以有效提高交通警察檢測(cè)的精確率和檢測(cè)速度。
數(shù)字圖像在傳輸和數(shù)值化過(guò)程中會(huì)受到諸多因素的影響造成圖像質(zhì)量下降,對(duì)后續(xù)圖像的處理和目標(biāo)的檢測(cè)帶來(lái)困難。比如圖像噪聲和成像設(shè)備的影響,因此需要對(duì)圖像進(jìn)行去噪處理來(lái)提高圖像質(zhì)量,增加信噪比,更好地突出需要的某些信息和特征。該文將分別采用中值濾波和小波變換去噪[10]的方法對(duì)圖像進(jìn)行去噪,實(shí)驗(yàn)結(jié)果表明基于小波變換去噪的方法滿(mǎn)足了后續(xù)交通警察的目標(biāo)檢測(cè)要求。
(1)中值濾波。
中值濾波是由Tukey在1977年提出的一種非線性平滑濾波器[11],基本原理是該像素點(diǎn)的灰度值由該像素點(diǎn)鄰域灰度值的中值來(lái)取代。令fx,y=Med,(x,y)∈E2表示圖像各個(gè)點(diǎn)的灰度值。則濾波窗口為A的二維中值濾波表達(dá)式為:
A(i,j)∈E2
(1)
在圖像處理中,中值濾波可以在較完整保留圖像部分邊緣信息的前提下有效去除如椒鹽噪聲、脈沖噪聲的影響[12]。但是當(dāng)待處理圖像細(xì)節(jié)部分較多時(shí),中值濾波去噪會(huì)使得圖像缺失部分關(guān)鍵信息。
(2)小波變換去噪。
基于小波變換(wavelet transform,WT)的圖像去噪方法結(jié)合特征提取和低通濾波的綜合作用,小波降噪常根據(jù)閾值的選擇來(lái)進(jìn)行降噪處理。一般步驟分為圖像對(duì)數(shù)變換、小波分解變換和高頻系化數(shù)閾值處理。閾值函數(shù)一般分為軟閾值函數(shù)和硬閾值函數(shù),表達(dá)式分別為式(3)和式(4)。小波變換的表達(dá)式為:
(2)
其中,只有兩個(gè)變量平移a和平移量τ,a控制圖像而ψ(t)是給定的函數(shù)。
(3)
(4)
其中,a是變量,b是閾值。對(duì)于閾值的選擇應(yīng)滿(mǎn)足式(5)。
(5)
其中,wn表示噪聲標(biāo)準(zhǔn)方差,N表示信號(hào)的長(zhǎng)度。
小波變換具有多分辨率、多尺度和穩(wěn)定的信號(hào)的特性,能夠有效獲得待處理圖像細(xì)節(jié)處的信息和輪廓信息。該文通過(guò)對(duì)同一包含交通警察目標(biāo)圖像做小波變換去噪和中值濾波去噪來(lái)消除圖像噪聲的預(yù)處理,得到的實(shí)驗(yàn)結(jié)果如圖1所示。對(duì)比實(shí)驗(yàn)結(jié)果可以看出,小波變換去噪的方法能有效保留交通警察圖像的細(xì)節(jié)信息和邊緣特征,符合交通警察目標(biāo)檢測(cè)的需要。所以該文采用基于小波變換去噪的方法對(duì)圖像進(jìn)行去噪處理。
圖1 圖像去噪結(jié)果
Gamma[13]曲線是一種特殊的色調(diào)曲線,當(dāng)Gamma值等于1時(shí),如圖2中灰色虛線,輸入和輸出的密度相同;當(dāng)Gamma值大于1時(shí),如圖2中g(shù)amma2曲線,輸出圖像結(jié)果出現(xiàn)亮化;當(dāng)Gamma值小于1時(shí),如圖2中g(shù)amma1曲線,輸出圖像結(jié)果出現(xiàn)暗化。在計(jì)算機(jī)系統(tǒng)中,由于硬件設(shè)備如顯卡和顯示器的原因會(huì)導(dǎo)致最后輸出的圖像存在亮度上的差異,而Gamma曲線校正就是通過(guò)一定的方法來(lái)校正圖像的這種偏差的方法。實(shí)際情況下,當(dāng)用于Gamma校正的值大于1時(shí),將會(huì)使得圖像的高光部分被壓縮而暗調(diào)部分被擴(kuò)展;當(dāng)Gamma校正的值小于1時(shí),會(huì)使得圖像的暗調(diào)部分被壓縮而高光部分被擴(kuò)展,Gamma校正一般用于平滑的擴(kuò)展暗調(diào)的細(xì)節(jié)。Gamma校正的曲線如圖2所示。當(dāng)已經(jīng)知道Gamma值時(shí)可以通過(guò)式(6)的方法進(jìn)行Gamma校正。
Ψ=λμγ
(6)
其中,μ為圖像的像素值,λ,γ為常數(shù)。當(dāng)γ>1時(shí)圖像的亮度會(huì)降低,圖像變暗。當(dāng)γ<1時(shí),圖像的亮度增加。
圖2 Gamma曲線
通過(guò)對(duì)小波變換去噪后的圖像進(jìn)行Gamma校正得到增強(qiáng)后的圖像實(shí)驗(yàn)結(jié)果,如圖3所示,可以看出Gamma曲線校正的結(jié)果滿(mǎn)足該文待檢測(cè)圖像的需要,在圖像未失真的前提下有效增強(qiáng)了圖像的細(xì)節(jié)信息。
圖3 圖像增強(qiáng)
Faster R-CNN可以看成基于“區(qū)域生成網(wǎng)絡(luò)RPN+Fast R-CNN”的系統(tǒng),而Fast R-CNN中的Search方法是由區(qū)域生成網(wǎng)絡(luò)代替的。通過(guò)區(qū)域生成網(wǎng)絡(luò)(RPN)來(lái)提取候選區(qū)域,有效地將RPN網(wǎng)絡(luò)和Fast R-CNN網(wǎng)絡(luò)統(tǒng)一到一個(gè)網(wǎng)絡(luò)共享卷積層,并且解決了R-CNN和Fast R-CNN特征提取中存在的冗余問(wèn)題。
由Girshick等人提出的區(qū)域卷積神經(jīng)網(wǎng)絡(luò)(region-based convolutional neural network,R-CNN)[14]根據(jù)傳統(tǒng)的目標(biāo)檢測(cè)思路,R-CNN算法將目標(biāo)檢測(cè)分為提取框內(nèi)圖像特征提取、對(duì)圖像進(jìn)行特征分類(lèi)、非極大值抑制的步驟實(shí)現(xiàn)目標(biāo)檢測(cè),在特征提取階段利用深度學(xué)習(xí)的方法提取特征[15]。采用Selective Search方法得到2 000個(gè)左右的候選區(qū)域,在固定大小后輸入到卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行特征提取,利用多個(gè)SVM對(duì)特征進(jìn)行分類(lèi),最后校準(zhǔn)候選區(qū)域的位置。
Fast R-CNN模型[16]通過(guò)整張圖像歸一化后直接送入深度網(wǎng)絡(luò),隨后送入提取的候選區(qū)域,避免了前幾層特征不必要的重復(fù)計(jì)算,優(yōu)化了R-CNN模型訓(xùn)練、測(cè)試速度慢和訓(xùn)練空間大的問(wèn)題。具體的實(shí)現(xiàn)過(guò)程如圖4所示。相較于R-CNN模型,一方面Fast R-CNN模型增加了池化層(region of interest,ROI),可以把任意大小的輸入降維成設(shè)定固定尺度特征向量,另一方面,邊框回歸和分類(lèi)可以同時(shí)進(jìn)行,共享卷積層并相互促進(jìn)。
圖4 Fast R-CNN網(wǎng)絡(luò)結(jié)構(gòu)
Faster R-CNN網(wǎng)絡(luò)模型將候選區(qū)域獲取、深度信息提取與目標(biāo)檢測(cè)識(shí)別融入到同一卷積神經(jīng)網(wǎng)絡(luò)模型中,實(shí)現(xiàn)了端到端的目標(biāo)檢測(cè)與訓(xùn)練[17-20]。主要步驟為:
(1)卷積層特征提?。和ㄟ^(guò)一系列的激化、卷積和池化層的組合,對(duì)輸入圖像進(jìn)行特征的提取。
(2)RPN獲取候選區(qū)域:通過(guò)RPN的滑動(dòng)窗口生成候選框,設(shè)置候選框的尺寸和比例可以看作一個(gè)尺度51*39的256通道圖像,對(duì)于該圖像的每一個(gè)位置,共組合為9個(gè)可能的候選窗口:三種面積三種比例,這些候選窗口稱(chēng)為錨框(anchors boxes)。通過(guò)利用邊框回歸修正anchors boxes獲得更加準(zhǔn)確的候選框,根據(jù)非極大值抑制算法(NMS)進(jìn)行輸出區(qū)域篩選,得到M個(gè)不同大小和比例的目標(biāo)候選框輸入到ROI池化層。
(3)ROI池化層獲取區(qū)域建議特征:利用RPN得到M個(gè)不同比例的候選框和卷積層提取到的特征得到固定大小的特征向量[21]。
(4)分類(lèi)和回歸:利用Softmax和Proposals判斷目標(biāo)候選區(qū)域的具體類(lèi)別,利用Bounding-box回歸的思想預(yù)測(cè)目標(biāo)物體的準(zhǔn)確位置[22]。
Faster R-CNN損失主要包括兩部分,分別為RPN損失和Fast RCNN損失,計(jì)算公式如式(7)所示,并且兩者都包括分類(lèi)損失和回歸損失。
(7)
分類(lèi)損失表達(dá)式為:
(8)
其中,t表示Faster R-CNN階段的預(yù)測(cè)偏移量;t*表示Faster R-CNN階段前景實(shí)際偏移量。
回歸損失表達(dá)式為:
(9)
交通警察在指揮交通時(shí)一般身體在局部運(yùn)動(dòng)狀態(tài),因此利用幀間差分法進(jìn)一步對(duì)視頻幀中的目標(biāo)進(jìn)行檢測(cè),對(duì)于提高目標(biāo)檢測(cè)的精確率有較為理想的幫助。對(duì)運(yùn)動(dòng)目標(biāo)具體檢測(cè)的方法是:幀間差分法通過(guò)差分運(yùn)算對(duì)時(shí)間上相鄰2-3幀圖像中的像素點(diǎn)做減法運(yùn)算,當(dāng)灰度差的絕對(duì)值超過(guò)一定閾值時(shí),判斷為所檢測(cè)的運(yùn)動(dòng)目標(biāo)[23-24]。通過(guò)統(tǒng)計(jì)各個(gè)交通警察局部運(yùn)動(dòng)非黑像素閾值范圍,以此來(lái)進(jìn)一步實(shí)現(xiàn)對(duì)目標(biāo)區(qū)域中指揮交通警察的定位。圖5(a)是對(duì)交通警察變道信號(hào)非黑像素占比的統(tǒng)計(jì),圖5(b)是對(duì)左轉(zhuǎn)待轉(zhuǎn)非黑像素占比。
(a)變道非黑像素占比 (b)左轉(zhuǎn)非黑像素占比
仿真實(shí)驗(yàn)環(huán)境:處理器AMD Ryzen 5 3600 6-Core Processor 3.59 Hz;GPU為NVIDIA GeForce RTX2060 SUPER,編程語(yǔ)言為python;操作系統(tǒng)為Ubuntu16.04;深度學(xué)習(xí)框架采用Tensorflow[25]。
對(duì)整個(gè)網(wǎng)絡(luò)訓(xùn)練的參數(shù)設(shè)置如表1所示。
表1 實(shí)驗(yàn)參數(shù)
分別使用Faster R-CNN網(wǎng)絡(luò)和SSD網(wǎng)絡(luò)對(duì)測(cè)試集中的11 228張圖片進(jìn)行實(shí)驗(yàn)測(cè)試,得到的部分檢測(cè)效果圖如圖6所示。
圖6中,(a)、(c)表示Faster R-CNN網(wǎng)絡(luò)檢測(cè)的效果圖,(b)、(d)表示SSD網(wǎng)絡(luò)檢測(cè)的效果圖。通過(guò)對(duì)比可以發(fā)現(xiàn),SSD網(wǎng)絡(luò)對(duì)交通警察的檢測(cè)率均低于Faster R-CNN網(wǎng)絡(luò)的檢測(cè)率,并且對(duì)比圖(c)和(d)可以發(fā)現(xiàn)SSD網(wǎng)絡(luò)存在漏檢的問(wèn)題,而Faster R-CNN網(wǎng)絡(luò)則成功地檢測(cè)出了圖像中存在的第三位交通警察。
圖6 檢測(cè)效果
通過(guò)網(wǎng)絡(luò)對(duì)比實(shí)驗(yàn),分別對(duì)兩種基于深度學(xué)習(xí)的方法和傳統(tǒng)的基于HOG和SVM的方法進(jìn)行檢測(cè),實(shí)驗(yàn)結(jié)果如表2所示。通過(guò)表2可以直觀地看出,F(xiàn)aster R-CNN網(wǎng)絡(luò)的檢測(cè)速度為61.523 ms,準(zhǔn)確率為98.75%,相較于SSD網(wǎng)絡(luò)和傳統(tǒng)的方法都具有明顯優(yōu)勢(shì)。
表2 實(shí)驗(yàn)結(jié)果對(duì)比
通過(guò)實(shí)驗(yàn)同時(shí)得出了兩種方法的損失值曲線,從圖7中可以看出損失值呈下降的趨勢(shì),F(xiàn)aster R-CNN網(wǎng)絡(luò)的損失值在20 000次左右已經(jīng)下降到0.3以下,最終在30 000次迭代停止時(shí)損失值為0.112 5,表明Faster R-CNN模型訓(xùn)練效果較好。SSD模型最終在30 000次迭代時(shí)停止學(xué)習(xí),損失值在0.204 5左右,從曲線中可以看出SSD模型的波動(dòng)較大,訓(xùn)練效果無(wú)法滿(mǎn)足檢測(cè)的要求。
圖7 損失曲線
綜上,對(duì)于交通警察的檢測(cè)Faster R-CNN模型檢測(cè)的成功率和速度均高于SSD模型,F(xiàn)aster R-CNN模型能夠精確地定位到復(fù)雜背景下的交通警察。
該文提出一種基于Faster R-CNN模型與幀間差分法結(jié)合的方法來(lái)實(shí)現(xiàn)交通警察的檢測(cè),通過(guò)對(duì)比SSD模型和Faster R-CNN模型的實(shí)驗(yàn)數(shù)據(jù)結(jié)果可以看到,雖然兩種方法均能檢測(cè)出目標(biāo),但Faster R-CNN模型的檢測(cè)準(zhǔn)確率達(dá)到98.5%,檢測(cè)速度僅為50 ms,檢測(cè)的召回率達(dá)到98.2%,均比SSD模型有較高的提升。該方法能夠有效解決目前交通警察存在的漏檢、誤檢和檢測(cè)效果不佳的問(wèn)題,并且能夠有效排除光照和遮擋物的影響,提高對(duì)交通視頻幀中交通警察檢測(cè)的精確性和魯棒性。