基于卷積神經(jīng)網(wǎng)絡(luò)的車牌檢測方法及系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及的是一種圖像處理和人工智能領(lǐng)域的技術(shù),具體是一種基于卷積神經(jīng) 網(wǎng)絡(luò)的車牌檢測方法及系統(tǒng)。
【背景技術(shù)】
[0002] 智能交通違章監(jiān)攝管理系統(tǒng)(俗稱電子眼)對機動車闖紅燈、逆行、超速、越線行 駛、違例??康冗`章行為進行監(jiān)控管理。該系統(tǒng)通過監(jiān)攝得到違章車輛的圖片,再從圖片中 進一步提取車輛信息,如:車牌、車型、車標(biāo)等。本發(fā)明基于此應(yīng)用背景,提出了一種基于卷 積神經(jīng)網(wǎng)絡(luò)的車牌檢測方法,該方法是一種基于機器學(xué)習(xí)的方法。
[0003] 機器學(xué)習(xí)是人工智能領(lǐng)域的一個重要學(xué)科。早期的機器學(xué)習(xí)主要是淺層學(xué)習(xí),隨 著科學(xué)技術(shù)發(fā)展,深度學(xué)習(xí)于2006年正式提出。深度學(xué)習(xí)起源于多層人工神經(jīng)網(wǎng)絡(luò),目前 已成功應(yīng)用于模式分類、機器視覺、數(shù)據(jù)挖掘及輔助決策等領(lǐng)域。當(dāng)前已有的深度學(xué)習(xí)網(wǎng)絡(luò) 主要包括卷積神經(jīng)網(wǎng)絡(luò)、深度置信網(wǎng)和堆疊自動編碼機。卷積神經(jīng)網(wǎng)絡(luò)由于其層間聯(lián)系和 空域信息的緊密關(guān)系,使其適于圖像處理。
[0004] 圖像中的車牌檢測流程一般包括創(chuàng)建用于訓(xùn)練二分類器的正負樣本集,圖像特征 提取,訓(xùn)練二分類器,利用訓(xùn)練好的分類器進行目標(biāo)檢測。在圖像特征提取方面,傳統(tǒng)方法 通常使用方向梯度直方圖(H0G)、局部二值模式(LBP)及Haar等特征提取方法。然而,不同 的特征提取方法都有其適用范圍,若脫離其適用范圍,則會導(dǎo)致欠佳的分類結(jié)果,具有局限 性。而卷積神經(jīng)網(wǎng)絡(luò)替代了以上特征提取方法,其深層結(jié)構(gòu)使其能夠自動提取圖像的深度 魯棒信息,利于分類器的訓(xùn)練和最終的目標(biāo)檢測。
[0005] 經(jīng)過對現(xiàn)有技術(shù)的檢索發(fā)現(xiàn),中國專利文獻號CN104298976A公開(公告)日 2015. 01. 21,公開了一種基于卷積神經(jīng)網(wǎng)絡(luò)的車牌檢測方法;具體包括通過基于Haar特 征的Adaboost車牌檢測器對待檢測車牌圖像進行檢測獲取車牌粗選區(qū)域、通過卷積神經(jīng) 網(wǎng)絡(luò)完整車牌識別模型對車牌粗選區(qū)域進行識別獲取車牌最終候選區(qū)域、通過多閾值分割 算法對車牌最終候選區(qū)域進行分割獲取車牌漢字、字母和數(shù)字、通過漢字、字母和數(shù)字卷積 神經(jīng)網(wǎng)絡(luò)識別模型對車牌漢字、字母和數(shù)字進行識別得到車牌識別結(jié)果。該技術(shù)利用基于 Haar特征的Adaboost車牌檢測器和卷積神經(jīng)網(wǎng)絡(luò)完整車牌識別模型可以實現(xiàn)對不用條件 下的車牌圖像準(zhǔn)確識別,同時利用多閾值分割算法對字符進行分割可以更簡便的對字符圖 像進行分割,在工程應(yīng)用具有良好效果。但該技術(shù)中獲取車牌最終候選區(qū)域完全依賴于其 通過基于Haar特征的Adaboost車牌檢測器獲取的車牌粗選區(qū)域,若粗選出來的車牌區(qū)域 沒有包含車牌區(qū)域,那么車牌區(qū)域的最終獲取必然失敗;同時,這種迂回的檢測方法,需要 兩個步驟來完成車牌區(qū)域的檢測,增加了運算時間。
【發(fā)明內(nèi)容】
[0006] 本發(fā)明針對現(xiàn)有技術(shù)存在的上述不足,提出一種基于卷積神經(jīng)網(wǎng)絡(luò)的車牌檢測方 法及系統(tǒng),本發(fā)明直接選取CNN最后一層的softmax回歸值最大的部分作為車牌區(qū)域的檢 測結(jié)果,檢測一步到位,既減少了運算時間,又不依賴于可能導(dǎo)致檢測失敗的步驟。本發(fā)明 能夠提高識別和檢測精度,具有較好的可行性和魯棒性。
[0007] 本發(fā)明是通過以下技術(shù)方案實現(xiàn)的:
[0008] 本發(fā)明涉及一種基于卷積神經(jīng)網(wǎng)絡(luò)的車牌檢測方法,通過構(gòu)建帶有標(biāo)簽的圖片庫 作為樣本集對卷積神經(jīng)網(wǎng)絡(luò)進行訓(xùn)練,并將訓(xùn)練后的卷積神經(jīng)網(wǎng)絡(luò)處理待測圖片,根據(jù)卷 積神經(jīng)網(wǎng)絡(luò)的輸出向量判斷是否為車牌圖片以及最匹配車牌。
[0009] 本發(fā)明具體包括如下步驟:
[0010] 步驟A,將樣本集中的圖片預(yù)處理為灰度圖像塊:從已有圖片庫中分類出車牌和 非車牌圖片,并貼上標(biāo)簽(車牌或非車牌),保存在樣本集中,得到相同數(shù)量的正樣本和負 樣本,將樣本集中的彩色圖片轉(zhuǎn)化為灰度圖像,把得到的灰度圖像尺寸歸一化為32*32的 灰度圖像塊;
[0011] 步驟B,構(gòu)造七層卷積神經(jīng)網(wǎng)絡(luò)(CNN,ConvolutionalNeuralNetwork):該7層卷 積神經(jīng)網(wǎng)絡(luò)包括:三個卷積層、兩個次采樣層、一個全連接層和一個softmax回歸層,其中: 輸入是32*32的灰度圖像塊,卷積層C1有6張?zhí)卣鲌D,次采樣層S2有6張?zhí)卣鲌D,卷積層 C3由S2層的6張?zhí)卣鲌D經(jīng)卷積后組合而得16張?zhí)卣鲌D,次采樣層S4有16張?zhí)卣鲌D,卷積 層C5有100個節(jié)點,全連接層F6有50個節(jié)點,輸出層有兩個節(jié)點;
[0012] 步驟C,訓(xùn)練CNN:將樣本集中的正、負樣本輸入到CNN中,采用交叉熵損失函數(shù),結(jié) 合反向傳播BP算法調(diào)整CNN參數(shù),利用softmax回歸作為分類算法,完成CNN的訓(xùn)練,具體 步驟如下:
[0013] 步驟C1 :對CNN進行初始化:用一些不同的小隨機數(shù)初始化網(wǎng)絡(luò)中待訓(xùn)練參數(shù);
[0014] 步驟C2:向初始化后的CNN中輸入10000個訓(xùn)練樣本來訓(xùn)練CNN并得到實際輸出 向量。
[0015] 所述的訓(xùn)練樣本包括:輸入向量和理想輸出向量,當(dāng)輸入向量輸入CNN中后經(jīng)過 逐層變換,傳送到輸出層,得到實際輸出向量。
[0016] 步驟C3:使用交叉j:商損失函數(shù),結(jié)合反向傳播BP算法調(diào)整CNN參數(shù),利用softmax 回歸作為分類算法,完成CNN的訓(xùn)練。
[0017] 步驟D,檢測車牌:將待測圖片輸入訓(xùn)練后的CNN,檢測出該圖片中是否有車牌,并 得到檢測結(jié)果,具體步驟如下:
[0018] 步驟D1 :把待檢測圖片轉(zhuǎn)化為灰度圖,并放大至原圖的1.5倍作為圖片金字塔的 塔底;
[0019] 步驟D2 :以0. 9倍率連續(xù)7次縮小塔底圖片,得到圖片金字塔的上面7層;
[0020] 步驟D3 :以固定大小的掃描框依次掃描8層金字塔的每張圖片,每次掃描框內(nèi)的 圖片輸入訓(xùn)練后的CNN,得到二維的輸出向量(ul,u2),當(dāng)ul>u2,則檢測結(jié)果為車牌;否則, 檢測結(jié)果為非車牌。
[0021] 步驟D4 :所有檢測為車牌的結(jié)果中,選擇出ul值最大的輸出向量對應(yīng)的圖片,作 為最終的車牌檢測結(jié)果。
[0022] 本發(fā)明涉及一種實現(xiàn)上述方法的系統(tǒng),包括:訓(xùn)練樣本獲取模塊、卷積神經(jīng)網(wǎng)絡(luò)模 塊、車牌區(qū)域檢測模塊,其中:訓(xùn)練樣本獲取模塊的正負樣本輸入卷積神經(jīng)網(wǎng)絡(luò)模塊,把卷 積神經(jīng)網(wǎng)絡(luò)訓(xùn)練成一個能夠識別車牌和非車牌圖片的二分類器。車牌區(qū)域檢測模塊創(chuàng)建圖 片金字塔并利用訓(xùn)練好的卷積神經(jīng)網(wǎng)絡(luò)模塊來檢測金字塔中圖片的車牌區(qū)域。 技術(shù)效果
[0023] 與