傅 鵬,謝世朋
(南京郵電大學 通信與信息工程學院,江蘇 南京 210003)
近年來,車牌識別受到了廣泛的關注和研究[1-2],并大量應用于高速公路、停車場、公路自動收費站、居民小區(qū)等環(huán)境中。其中車牌定位是整個車牌識別技術的核心,一直是受關注的熱點。譚同德等[3]提出一種基于開源視覺庫OPENCV的車牌定位方法:利用車牌的顏色特征,將原圖像分別在HSV顏色空間和RGB顏色空間下處理得到兩幅二值圖像,根據(jù)這兩幅二值圖像的紋理特點,通過在HSV顏色空間下得到的二值圖像定位出車牌的上下邊界,再按照定位出的上下邊界坐標從RGB顏色空間下的二值圖像中水平切割出車牌區(qū)域。實驗表明該方法在卡口環(huán)境下有較好的定位效果。
葉必錠等[4]提出一種基于結(jié)構(gòu)特征和紋理特征的車牌定位方法:對車輛圖像進行預處理,檢測垂直方向的邊緣,執(zhí)行數(shù)學形態(tài)學操作,并利用車牌的結(jié)構(gòu)特征粗定位車牌區(qū)域;提取車牌的紋理特征并構(gòu)建特征向量,通過貝葉斯分類器精確定位車牌區(qū)域。實驗表明該方法不受車牌大小、位置等因素的限制,定位率高,速度快,具有較好的魯棒性。羅斌等[5-6]提出了基于角點回歸的全卷積神經(jīng)網(wǎng)絡的車牌定位。該算法不僅能夠在標準交通卡口數(shù)據(jù)上進行有效定位,而且在光照條件低下、車輛傾斜嚴重等一些復雜環(huán)境下,同樣具有較高的魯棒性。但是,以上方法在車牌清晰、車牌大小合適的情況下較適用,但是在交通路口天網(wǎng)攝像頭拍攝到的畫面中,由于車輛數(shù)量較多、目標車牌較小、光線影響等,很難在監(jiān)控視頻中利用車牌自身的邊緣和顏色特征定位到車牌。
深度學習[7-9]作為傳統(tǒng)機器學習的延伸和擴展,已經(jīng)在眾多領域得到廣泛應用。卷積神經(jīng)網(wǎng)絡作為深度學習的一種,具備深度學習自動學習并提取特征的特點,利用局部感受野和權值共享提高計算速度,泛化能力強,識別效率高,廣泛用于圖像識別等方面。Redmon等將卷積神經(jīng)網(wǎng)絡和人類視覺系統(tǒng)原理相結(jié)合,提出了YOLO網(wǎng)絡:將分類問題作為回歸問題處理并直接將原圖像輸入網(wǎng)絡,取得了很好的效果。YOLO模型處理圖像速度達到了45 fps (frames per second),而Fast YOLO網(wǎng)絡處理圖像的速度能達到155 fps。但是YOLO網(wǎng)絡對小物體識別效果不佳,所以在復雜環(huán)境下,直接通過YOLO網(wǎng)絡定位車牌效果并不理想。
人類視覺對物體的認知,是先將其作為統(tǒng)一的整體,而后才以部分的形式認知物體[10-11]。當需要從復雜的場景中尋找并識別車牌時,首先會在場景中尋找到車輛的位置,然后再從車輛上尋找到車牌,從而識別車牌字符?;谶@種思想,提出了將運動區(qū)域檢測[12]和卷積神經(jīng)網(wǎng)絡相結(jié)合的車牌定位方法,用于定位識別交通路口天網(wǎng)攝像頭下的車輛牌照。首先定位車輛的運動區(qū)域,然后在運動區(qū)域中定位車輛,最后從定位到的車輛中提取車牌信息。
流程如圖1所示。
圖1 檢測系統(tǒng)流程
由于該網(wǎng)絡定位于處理復雜場景下的車牌定位問題,所以輸入視頻為復雜場景下天網(wǎng)攝像頭拍攝的視頻,難點在于多車輛、低分辨率、室外環(huán)境等。但是由于視頻中幀間存在大量的冗余信息[13],若將其全部輸入網(wǎng)絡將得到大量的重復信息,導致網(wǎng)絡效率下降,所以在視頻中間隔特定的時間抽取部分幀作為網(wǎng)絡的輸入,一方面可以避免處理重復信息,另一方面可以提高處理速度。
由于車輛處于運動熱點區(qū)域[14],因此可以首先檢測視頻中車輛的運動區(qū)域,該步驟可有效刪除視頻中的部分冗余信息,去除與車輛無關的區(qū)域,從而進一步減少了車牌搜索區(qū)域,提高了網(wǎng)絡的識別效率。實驗結(jié)果表明,經(jīng)過預處理的圖片識別率高于未經(jīng)預處理的圖片識別率。
文中網(wǎng)絡從整個圖像中提取特征,從而對目標進行預測,并改善了YOLO網(wǎng)絡對小物體的識別效果。網(wǎng)絡將圖像分為S×S的網(wǎng)格,如果物體位于某個網(wǎng)格中,則在該網(wǎng)格中檢測該物體。
每個網(wǎng)格預測B個邊界框的位置,每個邊界框包含5個預測值:x,y,w,h,Q。(x,y)表示邊界框的中心,w和h分別表示預測邊界框的寬度和高度,Q代表了預測的邊界框和真實物體位置的交疊率。其中
(1)
同時每個網(wǎng)格還對預測類別的概率進行預測,記為Pr(Classi|Object)。該概率和網(wǎng)格包含的物體有關,由于車牌在整個圖像中較小,所以僅考慮每個網(wǎng)格中只存在一種目標類別,即每個網(wǎng)格只對一類目標進行預測。每個邊界框預測類別C的概率為:
(2)
該值不僅顯示了類別C出現(xiàn)在該邊界框內(nèi)的概率大小,還體現(xiàn)出邊界框的位置與物體準確位置的距離。
網(wǎng)絡最后一層不僅預測類別概率還預測邊界框的位置。其中,將表示位置的寬度和高度通過原圖像的寬度和高度歸一化在0到1之間。同理邊界框中心點x,y也通過該方法進行歸一化,使其值歸一化在0到1之間。
在網(wǎng)絡的最后一層采用線性激活函數(shù),在其他層使用如下的激活函數(shù):
(3)
因為誤差平方和函數(shù)容易優(yōu)化并且能實現(xiàn)平均精度的最大化,所以卷積網(wǎng)絡使用已優(yōu)化的誤差平方和函數(shù)作為損失函數(shù)。但是誤差平方和存在以下問題:誤差平方和函數(shù)錯誤地將邊界框位置錯誤等級等同于分類錯誤等級。由于大部分的網(wǎng)格中沒有包含任何物體,所以這些網(wǎng)格的得分Q接近于0,這會影響存在物體的網(wǎng)格的梯度,可能會導致模型不穩(wěn)定,使訓練過早地發(fā)散。為了解決上述問題,文中網(wǎng)絡加重了位置預測誤差造成的損失,減少了不包含物體的網(wǎng)格的Q值的損失。因此為其分別設置系數(shù)λcoord=5,λnoobj=0.5。由于大面積的邊界框定位容錯率高于小面積邊界框定位容錯率,所以網(wǎng)絡預測的是邊界框的高度和寬度的平方根而不是直接預測邊界框的高度和寬度。
網(wǎng)絡在一個網(wǎng)格中預測很多個邊界框,而對于每個物體只需一個邊界框,所以選擇在真實背景下當前IOU值最高的邊界框作為該物體的定位框。這使得每個定位框在預測物體的大小、物體的類別等方面變得越來越準確。
基于上述理論,在訓練階段使用了如下的多部分損失函數(shù):
(4)
如果在一開始就采用較高的學習率,由于梯度不穩(wěn)定,模型會發(fā)散,所以學習率從10-3到10-2緩慢增加。為了避免過擬合,采用Dropout和數(shù)據(jù)集擴充方法。Dropout在第一層后隨機(rate=0.5)刪除一些隱藏層神經(jīng)元,從而避免層與層之間相互適應。數(shù)據(jù)集擴充方法采用隨機縮放并改變原圖像大小,同時在HVS彩色空間中,以1.5倍的因子隨機調(diào)整圖像的曝光度和飽和度。
在經(jīng)過卷積網(wǎng)絡定位到車輛位置后,得到單個車輛的圖片,并重新調(diào)整大小為225*255像素。在得到的圖片中,車牌大小與圖片大小的比例在一定的范圍內(nèi),如圖2所示。車牌定位部分的卷積神經(jīng)網(wǎng)絡結(jié)構(gòu)和車輛定位部分相同。訓練采用20 000幅車牌圖片,具體細節(jié)和車輛定位部分網(wǎng)絡相同,不再贅述。將車輛圖片再次輸入預訓練好的車牌定位卷積網(wǎng)絡,輸出定位到的車牌。
將文中方法與傳統(tǒng)的車牌定位方法進行對比分析,識別率從平均單幅圖片只能檢測到0.131個車牌提升4.312個車牌,識別率大大提升。
圖2 不同環(huán)境下的對比識別效果
預處理對檢測車輛的影響如表1所示。
表1 預處理對檢測車輛的影響
從表1可以看出,經(jīng)過預處理之后的圖片平均每幀檢測時間略有減少,這是由于在預處理過程中截取了圖像中的運動熱點區(qū)域,排除了大量的冗余信息,增大了每一個網(wǎng)格中包含目標物體的概率。識別車牌數(shù)量從4.346提升到5.471,提升近26個百分點,所以在視頻幀輸入之前進行預處理能取得非常好的效果。
算法對比如表2所示。
文中方法平均每幀檢測時間明顯少于基于顏色特征和邊緣檢測的車牌定位算法,一方面是由于YOLO網(wǎng)絡運行速度較快,另一方面是由于在定位出的車輛圖片中車牌部分特征較原圖明顯,所以定位速度快。定位到的車牌數(shù)目也多于傳統(tǒng)車牌定位算法,大約是傳統(tǒng)車牌定位算法的五倍,車牌定位的效率遠遠大于傳統(tǒng)車牌定位算法。當然,定位到的車輛數(shù)量大于能夠定位到的車牌數(shù)目,一方面是由于車輛定位不完整,沒有包含全部車牌,另一方面是由于圖片的分辨率過低,不能從已經(jīng)定位到的車輛上識別出車牌。
表2 文中方法和基于顏色特征和邊緣檢測的車牌定位算法的對比
表3比較了不同分辨率的圖片的車牌檢測效果。其中測試集采用超清攝像機拍攝的200幅圖片,通過OPENCV函數(shù)將圖片的分辨率從3 264×1 836轉(zhuǎn)化為1 280×720,該操作保證圖片拍攝的內(nèi)容和角度完全相同,不會因為分辨率的不同而導致圖片內(nèi)容的缺失。
表3 不同分辨率下的車牌檢測效果
從表3可以看出,高分辨率的圖片檢測耗時有所增加,但是檢測到的車牌數(shù)目也相應增加。雖然現(xiàn)在天網(wǎng)監(jiān)控分辨率以1 280×720為主,但是隨著硬件的提升,更高分辨率的監(jiān)控也在逐漸部署,所以文中方法在攝像頭硬件提升后有更大的應用空間。
由于在復雜的環(huán)境下,特別是在分辨率有限、車輛數(shù)目多而且車牌不清晰的環(huán)境中,傳統(tǒng)算法無法準確定位車牌。受人類視覺特征啟發(fā),文中首先通過運動區(qū)域檢測縮小車輛的搜索區(qū)域,然后通過卷積網(wǎng)絡定位車輛,最后縮小車牌搜索區(qū)域。實驗結(jié)果表明,在復雜的場景下尤其是在多車輛場景下,該方法有較高的識別率。但是該方法也存在由于車輛的定位誤差導致無法進行車牌定位的問題,因此下一步將提高車輛定位的完整性,從而提高車牌定位率。
[1] YANG F,MA Z.Vehicle license plate location based on histogramming and mathematical morphology[C]//Fourth IEEE workshop on automatic identification advanced technologies.[s.l.]:IEEE,2005:89-94.
[2] LI G,ZENG R,LIN L.Research on vehicle license plate location based on neural networks[C]//International conference on innovative computing,information and control.[s.l.]:IEEE Computer Society,2006:174-177.
[3] 譚同德,王三剛.基于OpenCV的車牌定位方法[J].計算機工程與設計,2013,34(8):2816-2820.
[4] 葉必錠,李 霆.基于特征多樣性的車牌定位方法[J].自動化與信息工程,2012,33(2):17-22.
[5] 羅 斌,郜 偉,湯 進,等.復雜環(huán)境下基于角點回歸的全卷積神經(jīng)網(wǎng)絡的車牌定位[J].數(shù)據(jù)采集與處理,2016,31(1):65-72.
[6] 郜 偉.復雜環(huán)境下車牌定位的研究與應用[D].合肥:安徽大學,2016.
[7] 陳先昌.基于卷積神經(jīng)網(wǎng)絡的深度學習算法與應用研究[D].杭州:浙江工商大學,2013.
[8] KRIZHEVSKY A,SUTSKEVER I,HINTON G E.ImageNet classification with deep convolutional neural networks[C]//International conference on neural information processing systems.[s.l.]:Curran Associates Inc.,2012:1097-1105.
[9] SZEGEDY C,LIU W,JIA Y,et al.Going deeper with convolutions[C]//IEEE conference on computer vision and pattern recognition.[s.l.]:IEEE Computer Society,2015:1-9.
[10] 周昌雄,曹豐文,崔 鳴,等.基于格式塔心理學原理的幾何活動輪廓模型[J].中國圖象圖形學報,2008,13(5):924-929.
[11] ROCK I,PALMER S.The legacy of gestalt psychology[J].Scientific American,1991,263(6):84-90.
[12] 柴 毅,陽小燕,尹宏鵬,等.基于運動區(qū)域檢測的運動目標跟蹤算法[J].計算機應用研究,2010,27(12):4787-4789.
[13] 肖永豪,余英林.基于視頻對象的自適應去幀/插幀視頻處理[J].華南理工大學學報:自然科學版,2003,31(8):6-9.
[14] 伏思華,張小虎.基于序列圖像的運動目標實時檢測方法[J].光學技術,2004,30(2):215-217.