• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于TensorFlow深度學(xué)習(xí)的車牌識(shí)別算法研究

      2018-05-14 08:55李兵易嘉聞黃鋒晏鵬程張一鳴
      關(guān)鍵詞:車牌識(shí)別卷積神經(jīng)網(wǎng)絡(luò)深度學(xué)習(xí)

      李兵 易嘉聞 黃鋒 晏鵬程 張一鳴

      摘要:基于TensorFlow深度學(xué)習(xí)平臺(tái)在Python開發(fā)環(huán)境下搭建8層卷積神經(jīng)網(wǎng)絡(luò)模型。將采集自全國的原始的車牌圖片進(jìn)行定位、分割、歸一化化處理后投入卷積神經(jīng)模型進(jìn)行訓(xùn)練,并采用RELU激活函數(shù)來提高模型收斂速度,在經(jīng)過200次迭代訓(xùn)后模型精度收斂于99.95%,實(shí)際測(cè)試中隨機(jī)抽取全國各省份的車牌進(jìn)行實(shí)際預(yù)測(cè)檢驗(yàn),車牌漢字字符均預(yù)測(cè)精度為99.86%、英文字符均預(yù)測(cè)精度99.70%、數(shù)字部分均預(yù)測(cè)精度99.10%、車牌整體預(yù)測(cè)精度99.30%。

      關(guān)鍵詞:深度學(xué)習(xí);卷積神經(jīng)網(wǎng)絡(luò);車牌識(shí)別;TensorFlow

      中圖分類號(hào):TP391文獻(xiàn)標(biāo)志碼:A

      文章編號(hào):2095-5383(2018)04-0028-06

      車牌字符識(shí)別是交通、安防等領(lǐng)域的一項(xiàng)重要技術(shù),具有重要的實(shí)際應(yīng)用價(jià)值。近年來,國內(nèi)外廣大科研人員圍繞車牌字符識(shí)別開展了廣泛的研究,針對(duì)車牌上的字符提出了一些有針對(duì)性的算法,取得了一定的識(shí)別效果。在非機(jī)器學(xué)習(xí)方法上,文獻(xiàn)[1]提出了基于評(píng)分模型的車牌字符識(shí)別方法,首先對(duì)待識(shí)別字符進(jìn)行分區(qū),然后對(duì)分區(qū)的各個(gè)方格進(jìn)行評(píng)分,采用類似模板匹配的方式,最終得分高的字符模板作為識(shí)別結(jié)果;文獻(xiàn)[2]針對(duì)車牌字符識(shí)別中大部分單一特征提取方法在字符識(shí)別上的局限性,提出了一種車牌字符多特征提取方法,該方法具有一定的魯棒性;文獻(xiàn)[3]將尺度不變特征應(yīng)用到車牌識(shí)別系統(tǒng)中來,有效改善了不同環(huán)境、不同光照下的車牌識(shí)別結(jié)果。而在基于機(jī)器學(xué)習(xí)的識(shí)別方法上,文獻(xiàn)[4]提出了采用BP(Back Propagation)神經(jīng)網(wǎng)絡(luò)的識(shí)別方法;文獻(xiàn)[5]提出了SVM(Support Vector Machine)和正交蓋氏矩相結(jié)合的車牌字符識(shí)別方法;文獻(xiàn)[6]采用SVM機(jī)器學(xué)習(xí)方法與HSV顏色空間和邊緣特征相結(jié)合的辦法進(jìn)行車牌位置進(jìn)行精確定位,使用BP神經(jīng)網(wǎng)絡(luò)對(duì)車牌字符進(jìn)行識(shí)別。這些方法針對(duì)特定的車牌字符,都取得了一定的識(shí)別效果。然而,基于特征的非機(jī)器學(xué)習(xí)方法[7-9]盡管不需要訓(xùn)練可以直接應(yīng)用,卻存在易受干擾,且單字符識(shí)別時(shí)間較長(zhǎng)的問題,通用的經(jīng)典SVM和BP網(wǎng)絡(luò)方法由于受到訓(xùn)練樣本的影響,因此很多研究人員采用與其他方法相結(jié)合的方式進(jìn)行識(shí)別,影響了其應(yīng)用的通用性。

      針對(duì)這些問題,本文采用TensorFlow深度學(xué)習(xí)框架,并在其平臺(tái)上搭建8層卷積神經(jīng)網(wǎng)絡(luò)來實(shí)現(xiàn)車牌數(shù)字字符識(shí)別。實(shí)驗(yàn)結(jié)果表明,本文方法在識(shí)別不同干擾程度的字符時(shí),識(shí)別率均達(dá)到99.30%以上,具有很強(qiáng)的魯棒性。

      深度學(xué)習(xí)[10-11]的概念源于對(duì)人工神經(jīng)網(wǎng)絡(luò)的研究。在本質(zhì)上是指一類對(duì)具有深層結(jié)構(gòu)的神經(jīng)網(wǎng)絡(luò)進(jìn)行有效訓(xùn)練的方法。普遍認(rèn)為,深度學(xué)習(xí)正式發(fā)端于2006年,以Hinton及其合作者發(fā)表在《Neural Computatin》和《Science》上兩篇重要論文為標(biāo)志。近年來,隨著各大科技巨頭公司對(duì)深度學(xué)習(xí)研究的投入,深度學(xué)習(xí)取得了蓬勃的發(fā)展和喜人的成績(jī),目前在深度語音識(shí)別[12]、機(jī)器視覺[13]、圖片分類領(lǐng)域[14-16]具有廣泛的應(yīng)用。

      目前主流開源的深度學(xué)習(xí)框架有Google公司主導(dǎo)開發(fā)的TensorFlow,加州大學(xué)伯克利Ph.D賈楊清開發(fā)的Caffe,蒙特利爾大學(xué)Lisalab開發(fā)和維護(hù)的Theano以及Facebook的Torch。TensorFlow憑借其神經(jīng)網(wǎng)絡(luò)代碼的簡(jiǎn)潔性,分布式深度學(xué)習(xí)算法的執(zhí)行效率以及部署的靈活性,漸漸在各種深度學(xué)習(xí)框架中占領(lǐng)地位。

      2TensorFlow實(shí)現(xiàn)車牌識(shí)別

      2.1TensorFlow平臺(tái)

      TensorFlow是一個(gè)采用數(shù)據(jù)流圖(data graphs)用于數(shù)值計(jì)算的開源軟件庫,在其中使用圖(graph)來表示計(jì)算任務(wù),圖中的節(jié)點(diǎn)(nodes)被稱之為op(operation的縮寫)。一個(gè)op獲得0個(gè)或多個(gè)張量(Tensor),執(zhí)行計(jì)算,產(chǎn)生0個(gè)或多個(gè)Tensor。每個(gè)Tensor是一個(gè)類型化的多維數(shù)組。計(jì)算任務(wù)在被稱為會(huì)話(session)的上下文(context)中被執(zhí)行。與其他深度學(xué)習(xí)框架相比,TensorFlow具有高度的靈活性和可移植性,可以在CPU和GPU上運(yùn)行,以及臺(tái)式機(jī)、服務(wù)器以及移動(dòng)終端設(shè)備上運(yùn)行。

      2.2數(shù)據(jù)集

      本車牌識(shí)別數(shù)據(jù)集收集自互聯(lián)網(wǎng)以及公開庫,由作者進(jìn)行整理分類,本數(shù)據(jù)集包括訓(xùn)練集圖像,訓(xùn)練集標(biāo)簽,測(cè)試集圖像,其中訓(xùn)練集共包含1 250張各省份簡(jiǎn)寫漢字字符,3 640張各英文字母圖以及4 200張各阿拉伯?dāng)?shù)字集,每個(gè)樣本圖像為32×40像素大小,每個(gè)像素值范圍在0~255之間。圖3與圖4是部分實(shí)驗(yàn)樣本圖。

      2.3代碼實(shí)現(xiàn)

      原始車牌數(shù)據(jù)經(jīng)過圖像的識(shí)別、切割、灰度化后將車牌分為漢字字符部分,阿拉伯?dāng)?shù)字部分和英文字母部分。分別將其作為卷積神經(jīng)網(wǎng)絡(luò)的輸入,經(jīng)卷積神經(jīng)網(wǎng)絡(luò)處理得到識(shí)別結(jié)果。原始車牌字符圖片已裁剪為32×40的灰度化圖,在圖5中,第一層卷積層的卷積核大小設(shè)置為18×18,通過卷積運(yùn)算對(duì)原始圖片進(jìn)行特征提取,提取到16張?jiān)紙D片的低層次特征,再通過第一層2×2的池化層對(duì)提取到的低層次特征進(jìn)行取樣,第二層卷積層的卷積核大小為5×5通過與第一層池化進(jìn)行卷積運(yùn)算實(shí)現(xiàn)特征提取并得到32張高層次特征圖,再經(jīng)過1×1的池化層;最后通過全連接層實(shí)現(xiàn)第二個(gè)卷積層到輸出層的映射。

      第一個(gè)卷積層(conv1),也是模型的第一層,將輸入圖片(x_image)與權(quán)重(W_con1)進(jìn)行卷積運(yùn)算,再加上偏置(b_conv1)值,將輸入的圖片權(quán)重定義為從截?cái)嗟臉?biāo)準(zhǔn)差為0.1的正態(tài)分布中輸出隨機(jī)值。偏置為初始值為0.1的一維向量,權(quán)重的張量為[8,8,1,16],一維、二維表示卷積核的大小為8×8的二維向量,第三維是輸入的通道數(shù),因輸入的是原始圖片所以通道數(shù)為1,第四維是輸出的通道數(shù),即卷積運(yùn)算后生成了16張?zhí)卣鲌D,故對(duì)應(yīng)的偏置為16。

      W_conv1 = tf.Variable(tf.truncated_normal([8, 8, 1, 16], stddev=0.1), name=“W_conv1”)

      b_conv1= tf.Variable(tf.constant(0.1, shape=[16]), name=“b_conv1”)

      第一個(gè)池化層(L1_pool),池化是一種特殊卷積形式,SAME和VALID是進(jìn)行卷積運(yùn)算時(shí)對(duì)卷積時(shí)邊界的不同處理方法,其中SAME方法采用0 邊距來保證輸出和輸入的圖片是同樣的大小,而VALID沒有0邊距,所以經(jīng)過池化處理后,輸出的圖片比輸入的小,kernel_size表示池化卷積核的大小,pool_strides表示步長(zhǎng)與卷積層中步長(zhǎng)的概念一樣。這里池化在水平方向和垂直方向的步長(zhǎng)設(shè)置為2。經(jīng)池化處理輸出得16張16×20的特征圖。

      L1_pool=conv_layer(x_image,W_conv1,b_conv1,conv_strides,kernel_size,pool_strides,padding=‘SAME)

      第二個(gè)卷積層(conv2)與第一個(gè)卷積層相似,僅僅在于權(quán)重和偏置形狀(sharp)的變化。與第一層相類似,卷積核大小為5×5的二維向量,輸入通道變成了32,輸出通道為32,對(duì)應(yīng)的偏置值也變?yōu)?2,經(jīng)過這一層的卷積運(yùn)算后得到的輸出為32張16×20大小的特征圖。

      W_conv2= tf.Variable(tf.truncated_normal([5, 5, 16, 32], stddev=0.1), name=“W_conv2”)

      b_conv2= tf.Variable(tf.constant(0.1, shape=[32]), name=“b_conv2”)

      第二個(gè)池化層(L2_pool),卷積核(kernel_size)大小設(shè)為 [1, 1, 1, 1],對(duì)特征圖再次進(jìn)行采樣,得到32張16×20大小的特征圖。

      L2_pool=conv_layer(L1_pool,W_conv2,b_conv2,conv_strides,kernel_size,pool_strides,padding=‘SAME)

      全連接層(fc1)也就是模型的第五層,經(jīng)過前面兩層卷積,兩層池化的處理,將圖片的大小已縮小為16×20大小,接著加入第五層全連接層對(duì)整張圖片進(jìn)行處理,將L2_pool層輸出的特征圖調(diào)整為含有512個(gè)神經(jīng)元的行向量,然后與權(quán)重矩陣相乘,加上偏置,最后對(duì)其使用RELU激活函數(shù)。

      W_fc1= tf.Variable(tf.truncated_normal([16*20* 32, 512], stddev=0.1), name=“W_fc1”)

      h_fc1= full_connect(h_pool2_flat, W_fc1, b_fc1)

      為了防止過度擬合,在輸出層之前加入Dropout。Dropout就是在訓(xùn)練過程中以一定的概率讓部分神經(jīng)元輸出為0,但是其當(dāng)前的權(quán)重值保持不變,下次訓(xùn)練過程中又恢復(fù)它的權(quán)重。keep_prob用來定義訓(xùn)練過程中神經(jīng)元的輸出為0的概率。

      h_fc1_drop = tf.nn.dropout(h_fc1, keep_prob)

      輸出層(fc2),采用回歸線性模型對(duì)圖片進(jìn)行分類,在對(duì)多分類問題上有很大的應(yīng)用,可以解決不同字符間的分類問題。

      W_fc2=sess.graph.get_tensor_by_name(“W_fc2:0”)

      定義優(yōu)化器和訓(xùn)練OP,通過構(gòu)建損失值函數(shù)(cross_entropy)調(diào)用AdamOptimizer優(yōu)化其不斷被調(diào)整參數(shù)使損失值達(dá)到最小。

      cross_entropy=tf.reduce_mean(tf.nn.softmax_cross_entropy_with_logits(labels=y_, logits=y_conv))

      train_step=tf.train.AdamOptimizer((1e4)).minimize(cross_entropy)

      2.4結(jié)果分析

      基于卷積神經(jīng)網(wǎng)絡(luò)的車牌識(shí)別模型包括神經(jīng)網(wǎng)絡(luò)模型的訓(xùn)練和模型的應(yīng)用,每張采集好的車牌經(jīng)過定位、分割、灰度化處理后分為3個(gè)部分,省份部分(漢字字符)、城市代號(hào)以及車牌編號(hào)。將以上3個(gè)部分整理成數(shù)據(jù)集分別放入搭建好的神經(jīng)網(wǎng)絡(luò)模型中進(jìn)行200次迭代訓(xùn)練,各模型精度達(dá)

      99.500 0%以上。在車牌編號(hào)模型的訓(xùn)練中,該模型的具有良好的收斂性,初始精度為2.000 0%在經(jīng)過15次迭代訓(xùn)練后精度達(dá)到

      91.500 0%,其后模型精度呈現(xiàn)緩慢增加,在迭代次數(shù)到25次時(shí)精度達(dá)到95.500 0%,當(dāng)?shù)?45次時(shí)精度達(dá)到99.500 0%,其后在此精度上小幅波動(dòng),并在174次時(shí)趨于99.500 0%的穩(wěn)定精度(如圖6所示)。在城市編號(hào)模型的訓(xùn)練中,模型初始精度為2.469 1%在迭代為19次時(shí)達(dá)到95.061 7%的精度,其后在此精度下呈現(xiàn)緩慢的波動(dòng)增長(zhǎng),并在迭代106次時(shí)達(dá)到99.510 6%的精度,其后精度趨于穩(wěn)定在

      99.500 0%附近(如圖7所示)。

      車牌識(shí)別模型由3部分模型組成:省份識(shí)別,城市代號(hào)識(shí)別以及車牌編號(hào)。每個(gè)模型在經(jīng)過200次迭代訓(xùn)練后,得到99.500%以上的準(zhǔn)確率后將其模型保存下來并加載測(cè)試集(見圖11),測(cè)試車牌在經(jīng)過模型的預(yù)測(cè)之后得到了車牌各部分準(zhǔn)確的識(shí)別結(jié)果,其中對(duì)于省份的識(shí)別精度達(dá)到100%(見圖8),城市編號(hào)識(shí)別率達(dá)到99.90%(見圖9),車牌編號(hào)識(shí)別精度結(jié)果達(dá)到99.80%(見圖10)。根據(jù)以上的識(shí)別結(jié)果分析得,該模型平均識(shí)別精度達(dá)到99.90%。

      車牌識(shí)別模型在進(jìn)行多次迭代訓(xùn)練后模型取得了比較好的預(yù)測(cè)精度,通過該神經(jīng)網(wǎng)絡(luò)模型對(duì)從全國各省份匯集而來的車牌進(jìn)行識(shí)別,隨機(jī)選中江蘇、廣州、福建、浙江、上海等省份的車牌,并對(duì)選中省份中抽中的車牌進(jìn)行識(shí)別預(yù)測(cè),分別統(tǒng)計(jì)該模型對(duì)漢字字符、英文字母、阿拉伯?dāng)?shù)字的預(yù)測(cè)精度,統(tǒng)計(jì)預(yù)測(cè)結(jié)果和精度如表1所示,所有車牌均識(shí)別成功,各字符間最低預(yù)測(cè)精度達(dá)98.5%以上,其中對(duì)漢字字符的平均識(shí)別精度達(dá)99.86%,英文字母的平均識(shí)別精度達(dá)99.70%,阿拉伯?dāng)?shù)字平均識(shí)別精度達(dá)99.10%,車牌平均識(shí)別精度高達(dá)99.30%以上。說明該模型具有良好的應(yīng)用價(jià)值和推廣能力。

      由表2可知本文的8層卷積神經(jīng)網(wǎng)絡(luò)模型,相比于傳統(tǒng)的卷積神經(jīng)網(wǎng)絡(luò),BP神經(jīng)網(wǎng)絡(luò)識(shí)別算法模型,在識(shí)別率方面有了一定的提高,且識(shí)別的波動(dòng)范圍較小,對(duì)圖像的旋轉(zhuǎn),形狀變化方面有著良好的魯棒性,車牌分割處理后的結(jié)果如圖11所示。

      3結(jié)論

      本文通過Google的開源深度學(xué)習(xí)平臺(tái)TensorFlow搭建卷積神經(jīng)網(wǎng)絡(luò)車牌識(shí)別系統(tǒng),由于卷積神經(jīng)網(wǎng)絡(luò)對(duì)樣本的形變和畸變有一定的容忍度,通過避免顯示的特征提取過程,隱式地從訓(xùn)練樣本獲取對(duì)構(gòu)建訓(xùn)練樣本空間貢獻(xiàn)較大的特征,與傳統(tǒng)網(wǎng)絡(luò)相比有著更高的識(shí)別率和抗干擾性。通過收集的數(shù)據(jù)對(duì)模型進(jìn)行訓(xùn)練,最終對(duì)測(cè)試車牌進(jìn)行識(shí)別,各部分的平均識(shí)別精度達(dá)到99.30%以上。

      參考文獻(xiàn):

      [1]莫林,凌文彪,張福元,等.基于評(píng)分模型的車牌字符識(shí)別方法[J].計(jì)算機(jī)應(yīng)用與軟件,2015,32(5):203206.

      [2]何兆成,佘錫偉,余文進(jìn),等.字符多特征提取方法及其在車牌識(shí)別中的應(yīng)用[J].計(jì)算機(jī)工程與應(yīng)用,2011,47(23):228231.

      [3]ZAHEDI M, SALEHI S M.License plate recognition system based on SIFT features[J].Procedia Computer Science, 2011(3):9981002.

      [4]李雅雯, 童璟蕓, 胡旭東,等.基于BP神經(jīng)網(wǎng)絡(luò)算法的車牌自動(dòng)識(shí)別[J].工業(yè)控制計(jì)算機(jī), 2018,31(6):3031,34.

      [5]王桂文,孫涵.基于正交蓋氏矩和SVM的車牌字符識(shí)別[J].計(jì)算機(jī)工程,2012,38(13):192195,198.

      [6]曾泉, 譚北海.基于SVM和BP神經(jīng)網(wǎng)絡(luò)的車牌識(shí)別系統(tǒng)[J].電子科技, 2016, 29(1):98101.

      [7]LIU X, LIU W, MEI T, et al.A deep learningbased approach to progressive vehicle reidentification for urban surveillance[C]// European Conference on Computer Vision.Springer International Publishing, 2016:869884.

      [8]LIU Y, HUANG H, CAO J, et al.Convolutional neural networksbased intelligent recognition of Chinese license plates[J].Soft Computing, 2017:117.

      [9]MESNIL G, BORDES A, WESTON J, et al.Learning semantic representations of objects and their parts[J].Machine Learning, 2014, 94(2):281301.

      [10]TABRIZI S S, CAVUS N.A hybrid KNNSVM model for iranianlicense

      plate recognition ☆[J].Procedia Computer Science, 2016, 102:588594.

      [11]鄭顧平, 閆勃勃, 李剛.基于機(jī)器學(xué)習(xí)的多車牌識(shí)別算法應(yīng)用研究[J].計(jì)算機(jī)技術(shù)與發(fā)展,2018,28(6):129132.

      [12]PEREIRA T, PAIVA J S, CORREIA C, et al.An automatic method for arterial pulse waveform recognition using KNN and SVM classifiers [J].Medical & Biological Engineering & Computing, 2016, 54(7):111.

      [13]徐勝舟, 周煜.基于CNN的車牌識(shí)別系統(tǒng)[J].中南民族大學(xué)學(xué)報(bào)(自然科學(xué)版), 2017, 36(3):125130.

      [14]歐先鋒, 向燦群, 湛西羊,等.基于CNN的車牌數(shù)字字符識(shí)別算法[J].成都工業(yè)學(xué)院學(xué)報(bào), 2016, 19(4):2630.

      [15]陳利.基于深度學(xué)習(xí)的車牌識(shí)別系統(tǒng)設(shè)計(jì)[J].計(jì)算機(jī)技術(shù)與發(fā)展, 2018(6):85-89.

      [16]PANDIYAN V, CAESARENDRA W, TJAHJOWIDODO T, et al.Inprocess tool condition monitoring in compliant abrasive belt grinding process using support vector machine and genetic algorithm[J].Journal of Manufacturing Processes, 2018, 31:199213.

      猜你喜歡
      車牌識(shí)別卷積神經(jīng)網(wǎng)絡(luò)深度學(xué)習(xí)
      基于深度卷積神經(jīng)網(wǎng)絡(luò)的物體識(shí)別算法
      MOOC與翻轉(zhuǎn)課堂融合的深度學(xué)習(xí)場(chǎng)域建構(gòu)
      大數(shù)據(jù)技術(shù)在反恐怖主義中的應(yīng)用展望
      基于支持向量機(jī)的車牌字符識(shí)別方法
      深度學(xué)習(xí)算法應(yīng)用于巖石圖像處理的可行性研究
      車牌識(shí)別系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
      基于深度卷積網(wǎng)絡(luò)的人臉年齡分析算法與實(shí)現(xiàn)
      基于車牌識(shí)別的機(jī)器視覺課程研究
      基于卷積神經(jīng)網(wǎng)絡(luò)的樹葉識(shí)別的算法的研究
      沾益县| 交城县| 类乌齐县| 塔河县| 仁布县| 泰安市| 大丰市| 高密市| 新营市| 博乐市| 景泰县| 葫芦岛市| 嘉黎县| 井冈山市| 隆尧县| 江西省| 锦州市| 四子王旗| 綦江县| 萨嘎县| 满洲里市| 屏东县| 大渡口区| 新干县| 任丘市| 永宁县| 湖州市| 宿松县| 招远市| 黄平县| 漠河县| 奇台县| 平山县| 道孚县| 河南省| 彰化市| 东乌珠穆沁旗| 育儿| 乌审旗| 兴国县| 来安县|