顧秀秀 朱明亮 吳瓊 史洪瑋
摘要:車牌識別是智能交通中信息化管理車輛的重要環(huán)節(jié),對構(gòu)建智慧城市具有重要意義。針對國內(nèi)車牌的結(jié)構(gòu)特點(diǎn),設(shè)計了一種基于BP神經(jīng)網(wǎng)絡(luò)的智能車牌識別系統(tǒng)。系統(tǒng)利用去噪算法及數(shù)學(xué)形態(tài)學(xué)方法對車牌照片中的車牌位置進(jìn)行定位,針對國內(nèi)車牌特征分割字符,然后基于白像素點(diǎn)提取13維特征并將車牌不同位置的字符分別輸入到不同的BP神經(jīng)網(wǎng)絡(luò)進(jìn)行分類。系統(tǒng)的平均識別正確率為96.4%,可廣泛應(yīng)用于城市道路 、智慧停車場等多個領(lǐng)域的車輛自動化信息管理。
關(guān)鍵詞: 車牌識別;BP神經(jīng)網(wǎng)絡(luò);邊緣檢測;字符識別;特征提取
中圖分類號: TP391? ? ? ? 文獻(xiàn)標(biāo)識碼:A
文章編號:1009-3044(2021)03-0019-04
Abstract: License plate recognition is an important part of information management of vehicles in intelligent transportation, and is very important for the construction of smart cities. According to the structural characteristics of domestic license plates, an intelligent license plate recognition system based on BP neural network is designed. The system uses the denoising algorithm and mathematical morphology to locate the license plate position in the license plate photo, segment the characters for the domestic license plate features, and then extract 13-dimensional features based on the white pixel points and input the characters at different positions of the license plate to different BP neural. network classification. The average accuracy rate of the system is 96.4%, which can be widely used in vehicle automation information management in many fields such as urban roads and smart parking lots.
Key words:license plate recognition; BP neural network; edge detection; character recognition; feature extraction
1 引言
隨著智慧城市的概念越來越普及,智能交通作為智慧城市重要的一環(huán),其相關(guān)技術(shù)也在飛速發(fā)展。智能車牌識別技術(shù)作為促進(jìn)智能交通信息化、自動化的重要手段,基于圖像識別技術(shù),可應(yīng)用于智慧停車場、高速公路收費(fèi)、交通違法違章處理等多個領(lǐng)域[1-2]。國外車牌識別技術(shù)已經(jīng)發(fā)展的比較成熟,但國外的車牌形狀、顏色、編碼方式與國內(nèi)車牌均有較大不同[3]。因此,針對我國常見的車牌主要為藍(lán)底、7字符、矩形的特點(diǎn)[4],設(shè)計了一種基于BP神經(jīng)網(wǎng)絡(luò)的智能車牌識別系統(tǒng)。系統(tǒng)分為車牌圖像預(yù)處理、特征提取及BP神經(jīng)網(wǎng)絡(luò)分類三部分,可對國內(nèi)常見的車牌進(jìn)行快速、簡單、高效的自動識別。
2 車牌識別系統(tǒng)設(shè)計與實現(xiàn)
車牌識別系統(tǒng)主要分為三部分:車牌圖像預(yù)處理、特征提取以及基于BP神經(jīng)網(wǎng)絡(luò)對特征進(jìn)行訓(xùn)練和分類,流程圖如圖1所示。
2.1 車牌圖像預(yù)處理
車牌圖像預(yù)處理是對車牌進(jìn)行智能識別的基礎(chǔ),處理結(jié)果直接影響后續(xù)車牌識別的精度。車牌圖像預(yù)處理過程主要包括車牌定位和字符分割,作用是將車牌從復(fù)雜的背景中分割出來,并按照國內(nèi)車牌的設(shè)計規(guī)則,將其分割為7個字符塊,以便進(jìn)行后續(xù)的特征提取及字符識別[5]。
2.1.1 車牌定位
車牌定位主要采用圖像處理中的一些去噪算法及數(shù)學(xué)形態(tài)學(xué)方法,流程圖如圖2所示。
主要步驟包括:
1)將圖像灰度化以增強(qiáng)圖像效果,如圖3所示;
2)采用均值濾波平滑圖像,去除圖像中的噪聲;
3)利用Sobel算子對圖像進(jìn)行邊緣提取[3],將圖片中的車牌邊緣保留,如圖4所示;
4)利用HSV模型和RGB模型中的藍(lán)色區(qū)域取交集,得到疑似藍(lán)色區(qū)域位置,如圖5所示;
5)利用[1 5]的矩形結(jié)構(gòu)元素對圖像先進(jìn)行膨脹,再進(jìn)行腐蝕,并和Sobel算子提取到的邊緣信息取交集,去掉無用的邊緣信息,選出豎向紋理復(fù)雜的疑似車牌區(qū)域,如圖6所示;
6)利用結(jié)構(gòu)元素為[10 40]的矩形對疑似車牌區(qū)域進(jìn)行閉運(yùn)算,得到一些內(nèi)部填充較為完整的區(qū)域,如圖7所示;
7)刪除連通區(qū)域小于1300的小區(qū)域,如圖8所示;
8)通過計算矩形區(qū)域的長寬比,去除長寬比低于2.5或大于3.8的區(qū)域[6],得到真正的車牌區(qū)域,并將車牌區(qū)域剪切出來,如圖9所示。
2.1.2 字符分割
根據(jù)《中華人民共和國機(jī)動車號牌》行業(yè)標(biāo)準(zhǔn),國內(nèi)普通汽車車牌寬度為44 cm,高度為14 cm,字符寬度為4.5 cm,高度為9 cm[7]。對車牌定位后得到的剪切后的車牌區(qū)域首先進(jìn)行灰度化,再進(jìn)行二值化,如圖10所示。對圖10中二值化后的車牌圖像進(jìn)行垂直方向像素統(tǒng)計,根據(jù)車牌字符的寬度和高度、字符間距離等特征,將車牌分為七個區(qū)域,最后歸一化為32×40像素的統(tǒng)一格式,如圖11所示。
2.2? 車牌字符特征提取
對分割后的每個車牌字符二值圖像進(jìn)行基于白像素的特征提取,共提取13維特征。以上述字符分割后的第5個字符為例,將單個字符按照兩行兩列分為8塊小區(qū)域,統(tǒng)計每個小區(qū)域中白像素的個數(shù),得到第1-8維特征,如圖12所示。在水平方向畫兩條橫線,將單個字符在水平方向上分為三部分,統(tǒng)計兩條橫線上的白色像素個數(shù),得到第9-10維特征,如圖13所示。在垂直方向上畫兩條豎線,將單個字符在垂直方向上分為三部分,統(tǒng)計兩條豎線上的白色像素個數(shù),得到第11-12維特征,如圖14所示。最后,統(tǒng)計整個字符圖片上白色像素的總點(diǎn)數(shù),作為第13維特征。
2.3? BP神經(jīng)網(wǎng)絡(luò)訓(xùn)練與分類
神經(jīng)網(wǎng)絡(luò)是由多輸入、單輸出或多輸出的神經(jīng)元連接而成的網(wǎng)絡(luò),能通過學(xué)習(xí)外界環(huán)境中的知識不斷優(yōu)化自身的網(wǎng)絡(luò)參數(shù),從而提高自身性能[8]。由于神經(jīng)網(wǎng)絡(luò)可以采用并行方式大規(guī)模、高速地處理大型問題,目前已經(jīng)被廣泛應(yīng)用在車牌識別領(lǐng)域[9]。
BP神經(jīng)網(wǎng)絡(luò)是一種基于最速下降法的多層前饋神經(jīng)網(wǎng)絡(luò),由輸入層、隱含層、輸出層三部分構(gòu)成,其拓?fù)浣Y(jié)構(gòu)如圖15所示。BP神經(jīng)網(wǎng)絡(luò)的激活函數(shù)通常采用非線性轉(zhuǎn)移函數(shù),即S型函數(shù)-Sigmoid函數(shù)。BP神經(jīng)網(wǎng)絡(luò)主要通過來自每個神經(jīng)元信息的前向傳播和誤差的反向傳播來不斷調(diào)整自身網(wǎng)絡(luò)的權(quán)重和閾值,從而使整個網(wǎng)絡(luò)的平方誤差之和最小化。
基于BP神經(jīng)網(wǎng)絡(luò)的車牌字符識別算法主要分為以下三個步驟:建立BP神經(jīng)網(wǎng)絡(luò)、利用字符特征對BP神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練、對輸入車牌的字符特征進(jìn)行分類。
2.3.1 建立BP神經(jīng)網(wǎng)絡(luò)
根據(jù)國內(nèi)普通車牌字符內(nèi)容的特點(diǎn),基于MATLAB平臺建立了三個BP子網(wǎng)分別識別不同位置的字符。其中第一個BP子網(wǎng)用于識別車牌的第一個漢字字符(由于數(shù)據(jù)采集局限性,選取6個漢字字符進(jìn)行訓(xùn)練和測試),第二個BP子網(wǎng)用于識別車牌的第二個英文字母字符,第三個BP子網(wǎng)用于識別車牌的第3-7個字符,這5個字符為英文字母+數(shù)字組合形式。在數(shù)據(jù)進(jìn)入神經(jīng)網(wǎng)絡(luò)之前,首先采用premnmx函數(shù)對數(shù)據(jù)進(jìn)行歸一化,防止出現(xiàn)較大誤差。
對于第一個BP子網(wǎng),建立13個輸入、4個隱含層、6個輸出的BP神經(jīng)網(wǎng)絡(luò);對于第二個BP子網(wǎng),建立13個輸入、6個隱含層、24個輸出的BP神經(jīng)網(wǎng)絡(luò);對于第三個BP子網(wǎng),建立13個輸入、10個隱含層、34個輸出的BP神經(jīng)網(wǎng)絡(luò)。三個BP子網(wǎng)的第一層神經(jīng)元的激活函數(shù)均為logsig,第二層均為purelin,學(xué)習(xí)方法均采用traingdx。
2.3.2 訓(xùn)練BP神經(jīng)網(wǎng)絡(luò)
對于三個BP子網(wǎng),分別輸入其對應(yīng)種類字符的13維特征值進(jìn)行訓(xùn)練。對于第一個BP子網(wǎng),收集了“滬”“京” “閩”“蘇”“粵”“浙”六種漢字字符,共計1249幅字符圖片進(jìn)行13維特征提取,并輸入BP子網(wǎng)進(jìn)行訓(xùn)練,部分訓(xùn)練樣本如圖16所示。
對于第二個BP子網(wǎng),由于車牌號中不含有字母“I”和“O”,收集了除這兩種字母之外的24種英文字母字符,共計3198幅字符圖片進(jìn)行13維特征提取,并輸入BP子網(wǎng)進(jìn)行訓(xùn)練,部分訓(xùn)練樣本如圖17所示。
對于第三個BP子網(wǎng),收集了上述24種英文字母字符以及數(shù)字0-9共34種字符,共計4285幅字符圖片進(jìn)行13維特征提取,并輸入BP子網(wǎng)進(jìn)行訓(xùn)練,部分訓(xùn)練樣本如圖18所示。
2.3.3 BP神經(jīng)網(wǎng)絡(luò)分類結(jié)果
對于每個測試字符,將提取到的13維特征輸入訓(xùn)練好的BP神經(jīng)網(wǎng)絡(luò)進(jìn)行分類,輸出BP神經(jīng)網(wǎng)絡(luò)識別結(jié)果。對于上述車牌號為“京PKR676”的原圖,識別結(jié)果正確顯示為“京PKR676”,如圖19所示。
實驗收集了37個漢字字符、112個英文字母字符及157個數(shù)字字符共306個車牌字符,對這些字符分別進(jìn)行識別,漢字識別正確率為94.6%,英文字母識別正確率為96.4%,數(shù)字識別正確率為96.8%,平均識別正確率為96.4%,結(jié)果如表1所示。
3? 結(jié) 論
本文針對智能交通場景下的車輛信息化管理要求,設(shè)計了基于BP神經(jīng)網(wǎng)絡(luò)的智能車牌識別系統(tǒng)。系統(tǒng)能夠?qū)嚺普掌M(jìn)行車牌定位、字符分割,并提取13維特征輸入到BP神經(jīng)網(wǎng)絡(luò)進(jìn)行分類。經(jīng)測試,系統(tǒng)的漢字識別正確率為94.6%,英文字母識別正確率為96.4%,數(shù)字識別正確率為96.8%,平均識別正確率為96.4%,簡單高效,具有較強(qiáng)的實用性。
參考文獻(xiàn):
[1] 張帆,王曉東,郝賢鵬.基于邊緣特征的智能車輛字符識別[J].自動化與儀器儀表,2020(6):11-14,20.
[2] 朱鳳霞.基于神經(jīng)網(wǎng)絡(luò)和圖像識別的車牌識別技術(shù)[J].電子設(shè)計工程,2020,28(2):130-133,138.
[3] 張晨.最大似然分類的國內(nèi)車牌字符識別方法研究[J].延安職業(yè)技術(shù)學(xué)院學(xué)報,2020,34(2):88-91.
[4] 高強(qiáng).基于MATLAB的車牌智能識別設(shè)計[J].電腦知識與技術(shù),2020,16(5):194-196.
[5] 吳林輝,楊晨耀,張文龍,等.基于OpenCV與深度學(xué)習(xí)的車牌識別軟件的設(shè)計與開發(fā)[J].電腦知識與技術(shù),2020,16(1):203-204,212.
[6] 馬志遠(yuǎn),余粟.基于改進(jìn)K近鄰算法的小型汽車號牌識別系統(tǒng)[J].軟件導(dǎo)刊,2020,19(6):231-234.
[7] 曾泉,譚北海.基于SVM和BP神經(jīng)網(wǎng)絡(luò)的車牌識別系統(tǒng)[J].電子科技,2016,29(1):98-101.
[8] 咼潤華,蘇婷婷,馬曉偉.BP神經(jīng)網(wǎng)絡(luò)聯(lián)合模板匹配的車牌識別系統(tǒng)[J].清華大學(xué)學(xué)報(自然科學(xué)版),2013,53(9):1221-1226.
[9] 張旭蘭.基于BP人工神經(jīng)網(wǎng)絡(luò)的車牌字符識別優(yōu)化算法[J].計算機(jī)工程與應(yīng)用,2012,48(35):182-185.
【通聯(lián)編輯:唐一東】