本發(fā)明屬于圖像處理及模式識(shí)別技術(shù)領(lǐng)域,特別涉及一種基于深度卷積神經(jīng)網(wǎng)絡(luò)的車牌識(shí)別方法。
背景技術(shù):
車牌識(shí)別技術(shù)是現(xiàn)代智能交通系統(tǒng)中的關(guān)鍵技術(shù),在日常生活中得到了廣泛的應(yīng)用,當(dāng)今深度學(xué)習(xí)已經(jīng)成為了計(jì)算機(jī)模式識(shí)別領(lǐng)域研究的熱門,利用深度學(xué)習(xí)算法能夠提升車牌識(shí)別的識(shí)別率,對(duì)提升車牌識(shí)別系統(tǒng)的魯棒性具有重要的意義。
現(xiàn)有技術(shù)中的車牌識(shí)別方法在惡劣天氣下、晚上、角度過(guò)于傾斜的情況下對(duì)車牌的識(shí)別率依然不高,字符模糊影響到了特征提取,特殊字符識(shí)別容易混淆,如8與B、2與Z、0與D、5與S等,因此亟需提出一種當(dāng)車牌字符處在惡劣環(huán)境下提升車牌字符的識(shí)別率和魯棒性的車牌識(shí)別方法。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明為了克服上述現(xiàn)有技術(shù)的不足,提供了一種基于深度卷積神經(jīng)網(wǎng)絡(luò)的車牌識(shí)別方法,本發(fā)明能夠提高車牌識(shí)別的準(zhǔn)確率,而且當(dāng)車牌字符處在惡劣環(huán)境下能夠提升車牌字符的識(shí)別率和魯棒性。
為實(shí)現(xiàn)上述目的,本發(fā)明采用了以下技術(shù)措施:
一種基于深度卷積神經(jīng)網(wǎng)絡(luò)的車牌識(shí)別方法,包括以下步驟:
S1、對(duì)車輛圖像進(jìn)行車牌檢測(cè)得到車牌;
S2、將已檢測(cè)的車牌進(jìn)行圖像分割得到車牌字符,將所述車牌字符作為訓(xùn)練樣本;
S3、對(duì)所述訓(xùn)練樣本進(jìn)行隨機(jī)采樣得到訓(xùn)練樣本塊集,將所述訓(xùn)練樣本塊集輸入至深度自編碼器來(lái)實(shí)現(xiàn)訓(xùn)練深度自編碼器;
S4、將經(jīng)過(guò)訓(xùn)練的深度自編碼器作為卷積神經(jīng)網(wǎng)絡(luò)的卷積核,提取所述訓(xùn)練樣本塊集的卷積特征,再對(duì)訓(xùn)練樣本塊集的卷積特征進(jìn)行池化操作,得到所述訓(xùn)練樣本塊集的特征向量;
S5、對(duì)所述訓(xùn)練樣本塊集的特征向量進(jìn)行歸一化處理,將歸一化處理的訓(xùn)練樣本塊集的特征向量送入SVM分類器來(lái)實(shí)現(xiàn)訓(xùn)練SVM分類器;
S6、對(duì)待識(shí)別車輛進(jìn)行識(shí)別。
優(yōu)選的,采用adaboost方法對(duì)車輛圖像進(jìn)行車牌檢測(cè)得到車牌。
優(yōu)選的,所述車牌檢測(cè)具體包括以下步驟:
S11、對(duì)車輛圖像進(jìn)行預(yù)處理;
S12、再提取車牌的Haar特征,然后訓(xùn)練adaboost級(jí)聯(lián)分類器;
S13、采用所述adaboost級(jí)聯(lián)分類器進(jìn)行車牌檢測(cè)。
優(yōu)選的,所述訓(xùn)練深度自編碼器具體包括以下步驟:
S31、預(yù)訓(xùn)練:設(shè)計(jì)具備四個(gè)隱層的深度自編碼器,四個(gè)隱層的隱藏節(jié)點(diǎn)分別為200、200、100、50;
S311、利用前向傳導(dǎo)計(jì)算公式,求卷積神經(jīng)網(wǎng)絡(luò)中四個(gè)隱層以及輸入層的激活值;
S312、計(jì)算卷積神經(jīng)網(wǎng)絡(luò)的輸出層即為第ni層中每一個(gè)輸出單元i的殘差,其計(jì)算公式如下:
其中,J(W,b;x,y)為訓(xùn)練樣本(x,y)的損失函數(shù),hW,b(x)為恒等函數(shù),為第i輸入單元總的加權(quán)和,W為權(quán)重,b為偏置項(xiàng),yi為第i個(gè)樣本的縱坐標(biāo),為第i個(gè)單元ni的激活值,為第ni層第i輸入單元總的加權(quán)和;
S313、利用第l+1層即為卷積神經(jīng)網(wǎng)絡(luò)中四個(gè)隱層、輸入層以及輸出層的殘差計(jì)算第l層的殘差,其計(jì)算公式如下:
其中,為第l層的權(quán)值,為第l+1的殘差,sl+1為第l+1層的節(jié)點(diǎn)數(shù),為第nl層第i輸入單元總的加權(quán)和;
S314、計(jì)算J(W,b;x,y)的偏導(dǎo)數(shù),其計(jì)算公式如下:
為第l層第i個(gè)單元與第j個(gè)單元的連接權(quán)值,為第l層第j個(gè)單元的激活值,為第l層第i個(gè)單元的偏置項(xiàng);
S315、采用梯度下降法對(duì)參數(shù)W和b進(jìn)行迭代更新,將卷積神經(jīng)網(wǎng)絡(luò)中四個(gè)隱層、輸入層以及輸出層采用正態(tài)分布將參數(shù)W和b初始化為接近0的數(shù)值;
S316、對(duì)于i=1到m,使用反向傳播算法計(jì)算和再利用和計(jì)算出和
S317、更新權(quán)重參數(shù):
為第l層J(W,b;x,y)對(duì)W的偏導(dǎo)數(shù),為第l層J(W,b;x,y)對(duì)b的偏導(dǎo)數(shù),α為學(xué)習(xí)速率,m為訓(xùn)練樣本的個(gè)數(shù),W(l)為第l層的權(quán)值,ΔW(l)為第l層J(W,b;x,y)對(duì)W的偏導(dǎo)的增量,λ為特征值,b(l)為第l層的偏置,Δb(l)為第l層J(W,b;x,y)對(duì)b偏導(dǎo)的增量;
S318、重復(fù)步驟S311~S317操作,求出損失函數(shù)J(W,b)的最小值,解出接近最優(yōu)的卷積神經(jīng)網(wǎng)絡(luò)模型;
S32、微調(diào):對(duì)所述深度自編碼器的所有參數(shù)進(jìn)行二次調(diào)整,具體步驟如下:
S321、使用前向傳播計(jì)算層即為四個(gè)隱層、輸入層以及輸出層的激勵(lì)響應(yīng);
S322、對(duì)輸出層nl層,令
S323、對(duì)于l=nl-1,nl-2,nl-3,...,2,令σ(l)=((W(l))Tσ(l+1))·f'(z(l))
為代價(jià)函數(shù)的導(dǎo)數(shù),z(l)為l層的加權(quán)和;
S324、計(jì)算所需要的偏導(dǎo)數(shù):
S325、更新權(quán)重參數(shù):
S326、重復(fù)步驟S321~S325操作,進(jìn)一步優(yōu)化卷積神經(jīng)網(wǎng)絡(luò)參數(shù),得到最優(yōu)化的卷積神經(jīng)網(wǎng)絡(luò)模型。
進(jìn)一步的,所述訓(xùn)練SVM分類器具體包括以下步驟:
S51、將所述訓(xùn)練樣本塊集的特征向量進(jìn)行歸一化處理;
S52、根據(jù)選定的線性核函數(shù)分別計(jì)算每個(gè)SVM分類器中的特征向量的特征相關(guān)值;
S53、根據(jù)所述特征相關(guān)值計(jì)算協(xié)方差矩陣空間;
S54、對(duì)所述協(xié)方差矩陣空間進(jìn)行HouseHolder變換;
S55、計(jì)算SVM分類器的特征系數(shù);
S56、獲取SVM分類器的模型參數(shù)。
進(jìn)一步的,步驟S6的具體操作步驟包括:
S61、對(duì)待識(shí)別車輛圖像進(jìn)行車牌檢測(cè);
S62、將已檢測(cè)的車牌進(jìn)行圖像分割得到測(cè)試車牌字符,將所述測(cè)試車牌字符作為測(cè)試樣本;
S63、將所述測(cè)試樣本塊集輸入至卷積神經(jīng)網(wǎng)絡(luò);
S64、利用經(jīng)過(guò)訓(xùn)練的深度自編碼器提取所述測(cè)試樣本塊集的卷積特征,并對(duì)測(cè)試樣本塊集的卷積特征進(jìn)行池化操作,得到特征向量;
S65、將所述特征向量送入經(jīng)過(guò)訓(xùn)練的SVM分類器得到車牌識(shí)別結(jié)果。
更進(jìn)一步的,所述預(yù)處理依次包括采用直方圖處理、高斯濾波算法處理。
本發(fā)明的有益效果在于:
1)、本發(fā)明通過(guò)訓(xùn)練深度自編碼器和SVM分類器來(lái)對(duì)待識(shí)別的車輛進(jìn)行檢測(cè),與現(xiàn)有技術(shù)相比大大提高了車牌識(shí)別的準(zhǔn)確率,而且當(dāng)車牌字符處在惡劣環(huán)境下能夠提升車牌字符的識(shí)別率和魯棒性。
2)、所述訓(xùn)練深度自編碼器具體包括預(yù)訓(xùn)練和微調(diào)兩個(gè)階段,在預(yù)訓(xùn)練的過(guò)程中設(shè)計(jì)具備四個(gè)隱層的深度自編碼器,四個(gè)隱層的隱藏節(jié)點(diǎn)分別為200、200、100、50,設(shè)計(jì)特定的隱藏節(jié)點(diǎn)大大降低了本發(fā)明的訓(xùn)練時(shí)間,增強(qiáng)了車牌識(shí)別的準(zhǔn)確率。
附圖說(shuō)明
圖1為本發(fā)明的原理圖;
圖2為本發(fā)明的流程圖;
圖3為本發(fā)明的訓(xùn)練SVM分類器的流程圖;
圖4為本發(fā)明的對(duì)待識(shí)別車輛進(jìn)行測(cè)試的流程圖。
具體實(shí)施方式
下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒(méi)有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
如圖1、2所示,一種基于深度卷積神經(jīng)網(wǎng)絡(luò)的車牌識(shí)別方法,包括以下步驟:
S1、對(duì)車輛圖像進(jìn)行車牌檢測(cè)得到車牌;
S2、將已檢測(cè)的車牌進(jìn)行圖像分割得到車牌字符,將所述車牌字符作為訓(xùn)練樣本;
S3、對(duì)所述訓(xùn)練樣本進(jìn)行隨機(jī)采樣得到訓(xùn)練樣本塊集,將所述訓(xùn)練樣本塊集輸入至深度自編碼器來(lái)實(shí)現(xiàn)訓(xùn)練深度自編碼器;
S4、將經(jīng)過(guò)訓(xùn)練的深度自編碼器作為卷積神經(jīng)網(wǎng)絡(luò)的卷積核,提取所述訓(xùn)練樣本塊集的卷積特征,再對(duì)訓(xùn)練樣本塊集的卷積特征進(jìn)行池化操作,得到所述訓(xùn)練樣本塊集的特征向量;
S5、對(duì)所述訓(xùn)練樣本塊集的特征向量進(jìn)行歸一化處理,將歸一化處理的訓(xùn)練樣本塊集的特征向量送入SVM分類器來(lái)實(shí)現(xiàn)訓(xùn)練SVM分類器;
S6、對(duì)待識(shí)別車輛進(jìn)行識(shí)別。
采用adaboost方法對(duì)車輛圖像進(jìn)行車牌檢測(cè)得到車牌。
所述車牌檢測(cè)具體包括以下步驟:
S11、對(duì)車輛圖像進(jìn)行預(yù)處理;
S12、再提取車牌的Haar特征,然后訓(xùn)練adaboost級(jí)聯(lián)分類器;
S13、采用所述adaboost級(jí)聯(lián)分類器進(jìn)行車牌檢測(cè)。
所述預(yù)處理依次包括采用直方圖處理、高斯濾波算法處理。
對(duì)海量的車輛圖像進(jìn)行預(yù)處理,將車牌統(tǒng)一像素大小至28×18,選擇車輛圖像的正樣本10000張,反樣本15000張,對(duì)車輛圖像進(jìn)行直方圖處理消除光照影響,采用高斯濾波算法處理消除噪聲影響,提取車牌的Haar特征,訓(xùn)練adaboost級(jí)聯(lián)分類器,將已檢測(cè)的車牌進(jìn)行圖像分割得到車牌字符,將所述車牌字符作為訓(xùn)練樣本,將車牌字符像素大小統(tǒng)一至19×38。
所述訓(xùn)練深度自編碼器具體包括以下步驟:
S31、預(yù)訓(xùn)練:設(shè)計(jì)具備四個(gè)隱層的深度自編碼器,四個(gè)隱層的隱藏節(jié)點(diǎn)分別為200、200、100、50;;設(shè)計(jì)特定的隱藏節(jié)點(diǎn)大大降低了本發(fā)明的訓(xùn)練時(shí)間,增強(qiáng)了車牌識(shí)別的準(zhǔn)確率。
S311、利用前向傳導(dǎo)計(jì)算公式,求卷積神經(jīng)網(wǎng)絡(luò)中四個(gè)隱層以及輸入層的激活值;
S312、計(jì)算卷積神經(jīng)網(wǎng)絡(luò)的輸出層即為第ni層中每一個(gè)輸出單元i的殘差,其計(jì)算公式如下:
其中,J(W,b;x,y)為訓(xùn)練樣本(x,y)的損失函數(shù),hW,b(x)為恒等函數(shù),為第i輸入單元總的加權(quán)和,W為權(quán)重,b為偏置項(xiàng),yi為第i個(gè)樣本的縱坐標(biāo),為第i個(gè)單元ni的激活值,為第ni層第i輸入單元總的加權(quán)和;
S313、利用第l+1層即為卷積神經(jīng)網(wǎng)絡(luò)中四個(gè)隱層、輸入層以及輸出層的殘差計(jì)算第l層的殘差,其計(jì)算公式如下:
其中,為第l層的權(quán)值,為第l+1的殘差,sl+1為第l+1層的節(jié)點(diǎn)數(shù),為第nl層第i輸入單元總的加權(quán)和;
S314、計(jì)算J(W,b;x,y)的偏導(dǎo)數(shù),其計(jì)算公式如下:
為第l層第i個(gè)單元與第j個(gè)單元的連接權(quán)值,為第l層第j個(gè)單元的激活值,為第l層第i個(gè)單元的偏置項(xiàng);
S315、采用梯度下降法對(duì)參數(shù)W和b進(jìn)行迭代更新,將卷積神經(jīng)網(wǎng)絡(luò)中四個(gè)隱層、輸入層以及輸出層采用正態(tài)分布將參數(shù)W和b初始化為接近0的數(shù)值;
S316、對(duì)于i=1到m,使用反向傳播算法計(jì)算和再利用和計(jì)算出和
S317、更新權(quán)重參數(shù):
為第l層J(W,b;x,y)對(duì)W的偏導(dǎo)數(shù),為第l層J(W,b;x,y)對(duì)b的偏導(dǎo)數(shù),α為學(xué)習(xí)速率,m為訓(xùn)練樣本的個(gè)數(shù),W(l)為第l層的權(quán)值,ΔW(l)為第l層J(W,b;x,y)對(duì)W的偏導(dǎo)的增量,λ為特征值,b(l)為第l層的偏置,Δb(l)為第l層J(W,b;x,y)對(duì)b偏導(dǎo)的增量;
S318、重復(fù)步驟S311~S317操作,求出損失函數(shù)J(W,b)的最小值,解出接近最優(yōu)的卷積神經(jīng)網(wǎng)絡(luò)模型;
S32、微調(diào):對(duì)所述深度自編碼器的所有參數(shù)進(jìn)行二次調(diào)整,具體步驟如下:
S321、使用前向傳播計(jì)算層即為四個(gè)隱層、輸入層以及輸出層的激勵(lì)響應(yīng);
S322、對(duì)輸出層nl層,令
S323、對(duì)于l=nl-1,nl-2,nl-3,...,2,令σ(l)=((W(l))Tσ(l+1))·f'(z(l))
為代價(jià)函數(shù)的導(dǎo)數(shù),z(l)為l層的加權(quán)和;
S324、計(jì)算所需要的偏導(dǎo)數(shù):
S325、更新權(quán)重參數(shù):
S326、重復(fù)步驟S321~S325操作,進(jìn)一步優(yōu)化卷積神經(jīng)網(wǎng)絡(luò)參數(shù),得到最優(yōu)化的卷積神經(jīng)網(wǎng)絡(luò)模型。
如圖3所示,所述訓(xùn)練SVM分類器具體包括以下步驟:
S51、將所述訓(xùn)練樣本塊集的特征向量進(jìn)行歸一化處理;
S52、根據(jù)選定的線性核函數(shù)分別計(jì)算每個(gè)SVM分類器中的特征向量的特征相關(guān)值;
S53、根據(jù)所述特征相關(guān)值計(jì)算協(xié)方差矩陣空間;
S54、對(duì)所述協(xié)方差矩陣空間進(jìn)行HouseHolder變換;
S55、計(jì)算SVM分類器的特征系數(shù);
S56、獲取SVM分類器的模型參數(shù)。
如圖1、4所示,對(duì)待識(shí)別車輛進(jìn)行測(cè)試。
S61、對(duì)待識(shí)別車輛圖像進(jìn)行車牌檢測(cè);
S62、將已檢測(cè)的車牌進(jìn)行圖像分割得到測(cè)試車牌字符,將所述測(cè)試車牌字符作為測(cè)試樣本;
S63、將所述測(cè)試樣本塊集輸入至卷積神經(jīng)網(wǎng)絡(luò);
S64、利用經(jīng)過(guò)訓(xùn)練的深度自編碼器提取所述測(cè)試樣本塊集的卷積特征,并對(duì)測(cè)試樣本塊集的卷積特征進(jìn)行池化操作,得到特征向量;
S65、將所述特征向量送入經(jīng)過(guò)訓(xùn)練的SVM分類器得到車牌識(shí)別結(jié)果。
表一為在惡劣環(huán)境下,如下雨天或夜里通過(guò)不同車牌識(shí)別方法來(lái)識(shí)別車牌的識(shí)別率與時(shí)間效率的對(duì)比。
表一:
通過(guò)表一的測(cè)試結(jié)果可以看出,本發(fā)明所提出的基于深度卷積神經(jīng)網(wǎng)絡(luò)的車牌識(shí)別方法在識(shí)別率與性能上均優(yōu)于現(xiàn)有技術(shù)的其他方法,而且時(shí)間效率也相對(duì)較短,其應(yīng)用有效并合理,大大提高了車牌識(shí)別的準(zhǔn)確率,而且當(dāng)車牌字符處在惡劣環(huán)境下能夠提升車牌字符的識(shí)別率和魯棒性,本發(fā)明所提出的方法具有較強(qiáng)的實(shí)用價(jià)值。