李宗陽 王劍雄 黨 然 劉超超 李晨昊 施 陶 方 彬*
(1.河北建筑工程學(xué)院,河北 張家口 075000;2.衡水第三中學(xué),河北 衡水 053000)
隨著科技和經(jīng)濟的發(fā)展,很多傳統(tǒng)行業(yè)和科技行業(yè)進行深度融合.在交通方面,“車聯(lián)網(wǎng)”一直被人們推在風(fēng)頭的首位.其中實現(xiàn)“車聯(lián)網(wǎng)”的關(guān)鍵技術(shù)就是本文要介紹的智能車牌檢測技術(shù).本次車牌識別算法,首先通過OpenCV對原始拍攝圖像進行預(yù)處理,包括高斯模糊、圖像灰化、圖像二值化、膨脹腐蝕等.之后,把OpenCV處理過的圖片放入過濾器中,統(tǒng)一切分為單個數(shù)字形態(tài)的圖片.最后,把切分的單個小圖片循環(huán)放入卷積神經(jīng)網(wǎng)絡(luò)(CNN)中進行智能識別,最后動態(tài)輸出到界面上,實現(xiàn)對車牌的智能識別.
原圖像預(yù)處理階段的核心操作為:原圖像車牌位置鎖定和圖形信息增強處理.其中,我國車牌有很多固有特征,如車牌外圍有明顯邊框,車牌第一個字符為漢字,第二個為大寫英文字母等.根據(jù)這些明顯的特征就比較容易定位出車牌的具體位置.因此,本文中所使用程序執(zhí)行功能順序為:先進行圖片具體信息定位,再進行圖片信息增強處理.
其中,本文中定位車牌的方法是,原始汽車圖片中肯定會包含很多的不規(guī)則和規(guī)則的邊緣.關(guān)鍵判定是否為車牌區(qū)域的條件之一就是,是否包含大量的線性邊緣.而且為了確保識別準(zhǔn)確性,還需要判定線性邊緣內(nèi)部顏色是否為黃、藍(lán)、綠.其中,圖1為邊緣提取后的圖.
圖1 邊緣提取圖
確定完成大體邊緣框架之后,采用判斷邊緣內(nèi)部顏色方法,來判斷是否為車牌區(qū)域.利用顏色信息特征進行顏色定位,利用HSV顏色空間中車牌RGB顏色空間值對應(yīng)的色域進行顏色定位.顏色值在200到280之間為藍(lán)色.在30到80之間為黃色,在80到165之間為綠色.進行完成這兩步之后就可以精確定位出圖片中車牌的位置.如圖2為自動提取出來的車牌圖.
圖2 自動提取出的車牌部分
2.2.1 高斯模糊
高斯模糊,也稱為高斯平滑,通常用于減少圖像噪聲和降低細(xì)節(jié)水平.從數(shù)學(xué)的角度來看,圖像的高斯模糊過程是圖像和正態(tài)分布的卷積.由于正態(tài)分布也被稱為高斯分布,這種技術(shù)被稱為高斯模糊.本實驗的目的是利用高斯模糊來增強不同比例的圖像效果.圖3為高斯平滑后的作用效果圖.
圖3 高斯平滑去噪
2.2.2 灰度處理及自適應(yīng)閥值處理
圖片灰度處理是為了減少圖像原始數(shù)據(jù)量,便于后續(xù)處理時計算量更少,因為在車牌圖像處理中不需要對彩色圖像的RGB三個分量都進行處理.
自適應(yīng)閾值處理:對于光影變化較多的圖像,或者色彩差異不太明顯的圖像,通過計算機確定并計算二次圖像區(qū)域的平均閾值是一種迭代過程.兩個技術(shù)處理完成后為圖4.
圖4 灰度處理和自適應(yīng)閥值處理后的效果圖
2.2.3 輪廓描述
經(jīng)過上述的一系列處理之后的圖片,對于計算機而言已經(jīng)相對較為清晰了.接下來只要連通黑白交界位置,再根據(jù)車牌位置圖片面積和寬高比,大致使用自適應(yīng)描邊工具進行處理即可得到大致車牌樣貌,如圖5.
圖5 輪廓描邊效果圖
2.2.4 圖像切分
本次實驗中用到的切分方放為:基于投影的字符切分.在經(jīng)過灰度化、去噪化和輪廓描述之后,將取輪廓后的車牌區(qū)域圖做垂直方向的投影,基于投影相間隔的波峰和波谷進行垂直切割,如圖6所示.
圖6 車牌切割效果圖
卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network,CNN)是一個包含卷積計算并且具有較復(fù)雜的拓?fù)浣Y(jié)構(gòu)的反饋型神經(jīng)網(wǎng)絡(luò).它具有極強的學(xué)習(xí)能力并且能夠根據(jù)它們的層次結(jié)構(gòu)以可轉(zhuǎn)置和恒定的方式對傳入的信息進行分類,所以本次研究中首選CNN.CNN能否識別正確的關(guān)鍵在是否將隱藏層、卷積層和池化層的神經(jīng)元中的權(quán)重訓(xùn)練好,準(zhǔn)確成功的的前提是需要大量的訓(xùn)練集,為此本論文使用爬蟲技術(shù)爬取網(wǎng)上大量圖片,作為訓(xùn)練集,如圖7所示.
圖7 大量訓(xùn)練集
本次研究實驗是在Linux(Ubuntu5.8.0)環(huán)境下使用tensorflow的keras框架進行搭建和運行,成功運行后如圖8所示.
圖8 成功識別效果圖
本文通過結(jié)合CNN和OpenCV技術(shù),進行了一系列操作,包括信息提取,高斯模糊,自動切分和智能識別等操作,實現(xiàn)了對現(xiàn)實中車輛圖片的車牌智能識別.從實驗結(jié)果分析,操作的準(zhǔn)確率高、識別時間快.但是美中不足的是,由于下雪、下雨等原因造成了部分車牌被遮擋,形成了識別準(zhǔn)確率低,對于此類問題還有待研究和改進,以后多找一些由于天氣原因而形成的遮擋圖片的訓(xùn)練集,加以訓(xùn)練研究,提高識別精度.