余 偉
(西安思源學(xué)院 陜西 西安 710038)
隨著信息技術(shù)的發(fā)展,計(jì)算機(jī)圖像識(shí)別場(chǎng)景已深入到人們的生活、工作場(chǎng)景中,如條碼識(shí)別、OCR文本識(shí)別等,并從特定物體識(shí)別、物體類別識(shí)別向圖像語義層面分析與理解方向發(fā)展。計(jì)算機(jī)圖像識(shí)別主要包括“特征提取”與“分類識(shí)別”兩個(gè)階段,特征提取是對(duì)圖像內(nèi)容的刻畫,經(jīng)模型訓(xùn)練實(shí)現(xiàn)已標(biāo)記數(shù)據(jù)集提取圖像特征,而分類識(shí)別則是對(duì)已識(shí)別圖像特征的預(yù)測(cè)判定。在圖像識(shí)別中,圖像特征提取直接影響圖像識(shí)別準(zhǔn)確率,在相對(duì)復(fù)雜的自然環(huán)境中,圖像受光影、角度、尺度、遮擋干擾、背景摻雜、類內(nèi)差異等因素影響,導(dǎo)致計(jì)算機(jī)視覺難以獲取圖像抽象表示與理解表達(dá)。
在車牌識(shí)別中,特征提取和分類識(shí)別是圖像識(shí)別的重點(diǎn)和關(guān)鍵,識(shí)別算法主要集中于特征提取任務(wù),一般涉及大量的人工標(biāo)記工作量和高昂的人工費(fèi)用,且人工標(biāo)記效率低。針對(duì)人工圖像識(shí)別存在的弊端,可借助卷積神經(jīng)網(wǎng)絡(luò)實(shí)現(xiàn)端對(duì)端的圖像分類識(shí)別。在車牌圖像字符識(shí)別中,圖像識(shí)別主要任務(wù)為車輛檢測(cè)、車牌檢測(cè)和車牌字符識(shí)別等環(huán)節(jié),其中,車牌字符識(shí)別是車輛識(shí)別系統(tǒng)的關(guān)鍵環(huán)節(jié),但在自然場(chǎng)景下車牌字符識(shí)別存在一定的問題,如車牌字符類型多、字符像素低、受環(huán)境和車牌污漬影響大、結(jié)構(gòu)相似字符誤識(shí)等問題,導(dǎo)致車輛字符識(shí)別準(zhǔn)確率下降。近年來,隨著車輛識(shí)別技術(shù)不斷發(fā)展,新的車牌識(shí)別技術(shù)不斷涌現(xiàn),如模板匹配法、特征匹配法、機(jī)器學(xué)習(xí)識(shí)別法等。卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Networks,CNN)是深度學(xué)習(xí)神經(jīng)網(wǎng)絡(luò)的代表算法之一,能夠有效將大數(shù)據(jù)量圖片降維為小數(shù)據(jù)量,在有效保留圖片特征的前提下將大數(shù)據(jù)量圖片降維為小數(shù)據(jù)量,目前已廣泛應(yīng)用于人臉識(shí)別、自動(dòng)駕駛、安防等領(lǐng)域[1]。本文在深入研究CNN技術(shù)原理的基礎(chǔ)上,分析卷積神經(jīng)網(wǎng)絡(luò)在車牌圖像識(shí)別中的應(yīng)用。
卷積神經(jīng)網(wǎng)絡(luò)是一種深度神經(jīng)網(wǎng)絡(luò)算法,其算法原理基于模仿生物視知覺機(jī)制構(gòu)建,該算法基于多層感知器變體設(shè)計(jì),可實(shí)現(xiàn)不變形特征平移,將底層特征提升為抽象的高層特征,并借助不變形特征遷移學(xué)習(xí)提升了模型表達(dá)能力,實(shí)現(xiàn)將大數(shù)據(jù)量圖像降維處理為小數(shù)據(jù)量[2],并保留圖像特征。在圖像識(shí)別領(lǐng)域中,卷積神經(jīng)網(wǎng)絡(luò)算法有效解決了模板匹配法、特征匹配法、機(jī)器學(xué)習(xí)識(shí)別法等算法存在的圖像處理效率低、圖像數(shù)據(jù)化處理丟失特征問題[3],在圖像分類檢索、圖像目標(biāo)分割、人臉識(shí)別等領(lǐng)域應(yīng)用日益廣泛。
典型卷積神經(jīng)網(wǎng)絡(luò)由卷積層、池化層、全連接層等組成。
1.2.1 卷積層
卷積層主要功能是對(duì)輸入數(shù)據(jù)進(jìn)行特征提取,其內(nèi)部由多個(gè)卷積核組成,經(jīng)多層感知層器卷積層提取圖像特征,可實(shí)現(xiàn)像素級(jí)圖像特征提取[4],卷積運(yùn)算輸出結(jié)果經(jīng)激活層函數(shù)變換后輸出特定映射關(guān)系。卷積運(yùn)算中,各卷積核遍歷特征圖,并完成各小塊圖像區(qū)域特征信息運(yùn)算,最終完成圖像局部特征提取、刻畫。卷積層輸入輸出計(jì)算公式可表示為:
式中,f為卷積層輸入圖像,g為卷積核;m、n分別為卷積核尺。
1.2.2 激活層
激活層在卷積神經(jīng)網(wǎng)絡(luò)中通過激活函數(shù)建立輸入到輸出的映射關(guān)系[5],其實(shí)質(zhì)是一種函數(shù)變換映射關(guān)系,通過對(duì)卷積運(yùn)算輸入結(jié)果進(jìn)行映射變換,增強(qiáng)了卷積神經(jīng)網(wǎng)絡(luò)算法特征建模與表達(dá)能力[6],在卷積神經(jīng)網(wǎng)絡(luò)中,常見的激活函數(shù)包括Logstic-Sigmoid函數(shù)、Tanh-Sigmoid雙曲正切函數(shù)、ReLU函數(shù)等[7],激活算法選擇中,學(xué)術(shù)領(lǐng)域尚無形成統(tǒng)一的標(biāo)準(zhǔn),主要以實(shí)驗(yàn)對(duì)比方法確定準(zhǔn)確性較高的算法。在圖像分類中,在不引入額外參數(shù)的情況下,可選擇ReLU函數(shù)以降低模型難度,并有效解決梯度彌散問題[8],提高算法性能。ReLU函數(shù)形式可表示為:
當(dāng)x<0時(shí),ReLU函數(shù)具有硬飽和性,當(dāng)x≥0時(shí),ReLU函數(shù)導(dǎo)數(shù)為1,在該情況下,可保持訓(xùn)練梯度不發(fā)生衰減,防止模型訓(xùn)練出現(xiàn)梯度消失問題,但隨模型迭代訓(xùn)練,激活層部分輸入硬飽和區(qū),導(dǎo)致激活層函數(shù)對(duì)應(yīng)權(quán)重?zé)o法更新,即出現(xiàn)“神經(jīng)元死亡”問題,可借助Xavier初始化方法和設(shè)置較小學(xué)習(xí)率優(yōu)化算法,以此規(guī)避該問題[9]。
1.2.3 池化層
池化層主要功能是將近似語義特征合并,通過減少特征輸出向量,防止出現(xiàn)特征過擬合問題。在卷積神經(jīng)網(wǎng)絡(luò)中,池化單元通過計(jì)算特征圖中局部塊的值,并讀取、對(duì)比相鄰池化單元數(shù)據(jù),以此降低數(shù)據(jù)表達(dá)維度,實(shí)現(xiàn)了低維特征向高緯特征平移不變形,在保證圖像特征提取的同時(shí)降低特征數(shù)量與計(jì)算量[10]。常見的池化方法包括最大化池化、均值池化、隨機(jī)池化,分別以最大值、均值、隨機(jī)概率選擇值作為區(qū)域池化后結(jié)果值,經(jīng)池化計(jì)算就可丟棄75%的結(jié)果值,并在迭代訓(xùn)練中保持良好的特征表達(dá)能力。
1.2.4 全連接層
全連接層位于卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)的末端,輸出圖像的高層特征,并經(jīng)分類器統(tǒng)計(jì)計(jì)算輸出該輸入圖像對(duì)應(yīng)類別標(biāo)簽的概率。全連接層運(yùn)算方法包括前向運(yùn)算和后向運(yùn)算兩種,前向運(yùn)算計(jì)算各神經(jīng)元輸出值,后向運(yùn)算則輸出各神經(jīng)元誤差值。
在車牌識(shí)別中,相較于模板匹配法、特征識(shí)別法、機(jī)器學(xué)習(xí)識(shí)別方法等圖像識(shí)別方法,可通過連續(xù)的“卷積-激活-池化”分層結(jié)構(gòu)提取圖像特征,并將底層特征提升為抽象的高層特征,使往來賬具備良好的特征學(xué)習(xí)能力。滿足車牌圖像識(shí)別要求?;诖耍狙芯吭O(shè)計(jì)了11層的車牌字符卷積識(shí)別模型,其中,第1層為輸入層,2、4、6層為卷積層,3、5、7層為池化層,8、9、10層為池化層,11層為輸出層。模型中,輸入層輸入RGB三通道車牌字符圖像,經(jīng)3個(gè)階段卷積池化特征提取后采用ReLU函數(shù)激活,每個(gè)卷積層分別包含2個(gè)小卷積單元,小卷積單元之間采用Dropout層銜接,特征圖數(shù)量與大卷積層保持一致。卷積核尺寸設(shè)計(jì)為3×3,步幅按1設(shè)計(jì),即在輸入層輸入32×32×3的圖像后,卷積層1、2、3分別生成32、64、128個(gè)特征圖,經(jīng)兩層Dropout層銜接,全連接層1、2、3分別包含1 024、512、65個(gè)隱含神經(jīng)節(jié)點(diǎn),最后采用Softmax回歸分類區(qū)作為模型輸出。
收集自然場(chǎng)景下完整車牌數(shù)據(jù)11 035幅,經(jīng)字符分割后得到約5萬幅字符圖像,在按車牌類型分為31個(gè)漢字字符、24個(gè)英文字母(去掉I和O)和在10類阿拉伯字符,由于安字符分割質(zhì)量參差不齊,建立2個(gè)標(biāo)準(zhǔn)字符圖像數(shù)據(jù)集,一個(gè)為較大規(guī)模字符圖像數(shù)據(jù)集(LLPC),每類500幅圖像,共計(jì)32 500幅。一個(gè)為相對(duì)較小的圖像集(SLPC),每類80幅,共計(jì)5 200幅。LLPC、SLPC按4∶1比例作為訓(xùn)練數(shù)據(jù)集和測(cè)試數(shù)據(jù)集,訓(xùn)練集樣本每類400幅,測(cè)試集樣本每類100幅。
新Bobath建立在傳統(tǒng)Bobath基礎(chǔ)之上,在理論方面有運(yùn)動(dòng)控制理論、可塑性理論、運(yùn)動(dòng)再學(xué)習(xí)理論,身體圖式理論,生物力學(xué)、運(yùn)動(dòng)發(fā)育等為依據(jù)。隨著康復(fù)治療不斷發(fā)展完善中,新Bobath技術(shù)發(fā)展更新為影響張力性姿勢(shì)、誘導(dǎo)姿勢(shì)模式及活動(dòng)性負(fù)重、改善核心穩(wěn)定、近端穩(wěn)定性、選擇性運(yùn)動(dòng)、觸變性、關(guān)健區(qū)及任務(wù)解決型方法等治療技術(shù),體現(xiàn)了對(duì)運(yùn)動(dòng)控制障礙的基本技術(shù)不同。
卷積神經(jīng)網(wǎng)絡(luò)中,常規(guī)的網(wǎng)絡(luò)訓(xùn)練方法為誤差反向傳播算法,但在處理多個(gè)非線性處理單元層的深度結(jié)構(gòu)時(shí),存在梯度小或梯度彌散、梯度溢出、模型收斂到局部最小值和標(biāo)簽學(xué)習(xí)困難等問題。針對(duì)此類問題,卷積神經(jīng)網(wǎng)絡(luò)主要通過建立多層結(jié)構(gòu)方法解決,即逐層構(gòu)建神經(jīng)元和分次訓(xùn)練單層網(wǎng)網(wǎng)絡(luò),使運(yùn)算誤差自頂向下傳播并將誤差控制在允許誤差范圍內(nèi),獲得準(zhǔn)確度較高的模型運(yùn)算結(jié)果。
本實(shí)驗(yàn)中,采用反向傳播算法進(jìn)行模型訓(xùn)練,并借助梯度下降算法求取目標(biāo)函數(shù)最小參數(shù)。模型訓(xùn)練過程中,采用batch-size為64、動(dòng)量參數(shù)momentum 0.9、學(xué)習(xí)率0.01的隨機(jī)梯度下降算法優(yōu)化模型訓(xùn)練,取m個(gè)數(shù)據(jù)作為一個(gè)訓(xùn)練批次,根據(jù)每批次計(jì)算結(jié)果對(duì)參數(shù)進(jìn)行更新,以此實(shí)現(xiàn)局部收斂最優(yōu)的效果。
由于該實(shí)驗(yàn)樣本量較小,容易出現(xiàn)模型訓(xùn)練過擬合問題。為充分利用現(xiàn)有訓(xùn)練數(shù)據(jù)提高圖像識(shí)別準(zhǔn)確率,本實(shí)驗(yàn)引入數(shù)據(jù)增強(qiáng)變換技術(shù),采用平移變換、翻轉(zhuǎn)變換、縮放變換和剪切變化等技術(shù)對(duì)輸入圖像進(jìn)行變換,變換因子0.1,可將輸入數(shù)據(jù)規(guī)模擴(kuò)大1倍。
平移變換將圖像所有像素坐標(biāo)分別加上指定水平偏移量和垂直偏移量后變換,如圖像x、y向平移量為x0、y0,則平移變換可表示為:
旋轉(zhuǎn)變換將圖像繞原點(diǎn)θ沿順時(shí)針角度旋轉(zhuǎn),經(jīng)旋轉(zhuǎn)變換后的像素坐標(biāo)可表示為:
縮放變換將圖像水平向與垂直向按縮放比例因子φx、φy縮放變換后得到像素坐標(biāo):
剪切變換將原圖像水平向和垂直向按剪切比例因子α、β剪切,經(jīng)剪切變換后像素坐標(biāo)為:
網(wǎng)絡(luò)訓(xùn)練誤差損失函數(shù)可表示為:
本研究采用驗(yàn)證準(zhǔn)確率和過擬合比率作為評(píng)價(jià)實(shí)驗(yàn)結(jié)果標(biāo)準(zhǔn),驗(yàn)證準(zhǔn)確率表示為:
訓(xùn)練準(zhǔn)確率可表示為:
為便于研究卷積神經(jīng)網(wǎng)絡(luò)算法圖像識(shí)別效果,本研究對(duì)比了卷積神經(jīng)網(wǎng)絡(luò)與BP神經(jīng)網(wǎng)絡(luò)算法、LeNet-5網(wǎng)絡(luò)算法,分別訓(xùn)練模型50次,獲得實(shí)驗(yàn)數(shù)據(jù),見表1。
表1 卷積神經(jīng)網(wǎng)絡(luò)與BP神經(jīng)網(wǎng)絡(luò)算法、LeNet-5網(wǎng)絡(luò)算法實(shí)驗(yàn)結(jié)果比較
本實(shí)驗(yàn)中,BP神經(jīng)網(wǎng)絡(luò)算法采用3層網(wǎng)絡(luò)結(jié)構(gòu),輸入神經(jīng)元數(shù)量為1 024個(gè),隱含層節(jié)點(diǎn)數(shù)量為260,輸出層節(jié)點(diǎn)數(shù)量為65。輸入數(shù)據(jù)集LLPC為經(jīng)歸一化處理的32×32像素矩陣。LeNet-5網(wǎng)絡(luò)算法輸出層接地?cái)?shù)量65。卷積神經(jīng)網(wǎng)絡(luò)和LeNet-5網(wǎng)絡(luò)算法均采用未經(jīng)處理的LLPC數(shù)據(jù)集輸入。
基于卷積神經(jīng)網(wǎng)絡(luò)算法設(shè)計(jì)并構(gòu)建11層圖像分類識(shí)別模型,并結(jié)合誤差反向傳播算法對(duì)網(wǎng)絡(luò)模型進(jìn)行訓(xùn)練,驗(yàn)證了自然場(chǎng)景下車牌字符數(shù)據(jù)圖像分類識(shí)別性能,結(jié)果表明,卷積神經(jīng)網(wǎng)絡(luò)在圖像識(shí)別中具有良好的特征提取能力和圖像識(shí)別能力,針對(duì)過擬合問題,可借助數(shù)據(jù)增強(qiáng)變換優(yōu)化技術(shù)進(jìn)行優(yōu)化,提高圖像識(shí)別準(zhǔn)確率。