国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于深度卷積神經(jīng)網(wǎng)絡(luò)的街景門牌號識別方法

2018-08-01 01:10:00韓鵬承胡西川
現(xiàn)代計算機 2018年20期
關(guān)鍵詞:識別率步長卷積

韓鵬承,胡西川

(上海海事大學(xué)信息工程學(xué)院,上海 201306)

0 引言

現(xiàn)如今在計算機視覺領(lǐng)域中已經(jīng)取得了很多的研究成果,例如像光學(xué)字符識別(OCR)[1]從掃描文檔中提取文本信息已經(jīng)取得了成功。但與此不同的是對于自然場景中的字符識別問題,由于像街景門牌號這樣的自然場景中的字符擁有復(fù)雜的圖像背景和各種各樣的噪聲,通過人工提取特征的方法無法達到很好的效果,這就導(dǎo)致對此類字符的識別存在著挑戰(zhàn)。直到以卷積神經(jīng)網(wǎng)絡(luò)(Convoluted Neural Network,CNN)[2]為代表的深度學(xué)習(xí)興起才給這個難題帶來了突破性的進展。

20世紀90年代,由LeCun[3]等人發(fā)表了論文,確立了CNN的現(xiàn)代結(jié)構(gòu),并設(shè)計出了經(jīng)典的LeNet-5網(wǎng)絡(luò)結(jié)構(gòu)用來識別手寫數(shù)字,取得了很好的效果,這個成果也首次展示出卷積神經(jīng)網(wǎng)絡(luò)在實際應(yīng)用中的潛力和價值。由于當時可用于研究的樣本數(shù)據(jù)很少以及計算機性能不足,使得CNN的發(fā)展進程很緩慢。直到現(xiàn)在,大數(shù)據(jù)時代背景下,可用于研究的數(shù)據(jù)集得到了很大的擴展;CNN網(wǎng)絡(luò)經(jīng)過多年的發(fā)展,它的結(jié)構(gòu)得到了不斷的改進和完善網(wǎng)絡(luò)的性能進一步提高;現(xiàn)代計算機性能與之前相比有了很大幅度的進步,并提出利用GPU加速神經(jīng)網(wǎng)絡(luò)的訓(xùn)練和識別[4],與CPU相比GPU在單位面積/單位功耗上擁有更高的計算能力和吞吐帶寬,因此通過GPU訓(xùn)練網(wǎng)絡(luò)可以大大提高效率并且GPU強大的計算能力可以使網(wǎng)絡(luò)在更大的數(shù)據(jù)集訓(xùn)練提高精度。多方面的原因使得卷積神經(jīng)網(wǎng)絡(luò)得到了發(fā)展。2012年Alex Krizhevsky等人發(fā)布了AlexNet網(wǎng)絡(luò)結(jié)構(gòu)[5],該網(wǎng)絡(luò)是具有八層結(jié)構(gòu)的深度卷積網(wǎng)絡(luò),并用它在當年的ImageNet圖像分類競賽中取得了第一名的成績。除此之外,近年來還推出了很多比較有名的CNN 結(jié) 構(gòu) 有 VGGNet[6]、GoogleNet[7]和 ResNet[8]。 將CNN應(yīng)用在文本識別、圖像分類、情感識別、目標檢測等多個領(lǐng)域都取得了很多的研究成果。

傳統(tǒng)的圖像識別方法需要人工提取特征,由于人工提取特征的局限性,這種方法往往無法達到實際中對精度的要求。CNN是一種多層的網(wǎng)絡(luò)結(jié),它通過從大量的數(shù)據(jù)中逐層學(xué)習(xí)和提取特征,自主地完成對數(shù)據(jù)的抽象。相比人工提取的特征使用CNN自動提取的特征進行識別可以達到更好的效果,且特征提取的過程變得更加簡潔有效。因此,越來越多的研究人員將CNN運用在字符識別上。如QIang Guo構(gòu)造出了CNN-HMM混合模型[9],對街景門牌號的(Street View House Number,SVHN)數(shù)據(jù)集的識別率為81.07%。王強等人將主成分分析法(Principal Componets Analysis,PCA)和 CNN相結(jié)合[10],利用快速 PCA和 CNN對SVHN數(shù)據(jù)集的識別率為95.10%,這在識別效果上得到了很大的提高,但是需要花費很大的時間代價,該方法需要的訓(xùn)練時間約為1周。Ma Miao[11]等人構(gòu)造的改進LeNet-5在SVHN數(shù)據(jù)集上經(jīng)過7個小時的訓(xùn)練識別率達到90.35%,時間大大縮短但是識別率不高。

針對存在的不足,提出的基于深度卷積神經(jīng)網(wǎng)絡(luò)的識別方法在網(wǎng)絡(luò)的結(jié)構(gòu)上做出了改進,加深了網(wǎng)絡(luò)的深度增加了網(wǎng)絡(luò)的卷積層數(shù)和卷積核的數(shù)量并優(yōu)化網(wǎng)絡(luò)結(jié)構(gòu);對圖像進行預(yù)處理,將原始圖像灰度化來弱化圖像背景顏色、光照條件等無關(guān)的特征,突出重要的特征。改進后該網(wǎng)絡(luò)在SVHN數(shù)據(jù)集上可以達到94.58%的識別率,訓(xùn)練時間約為13小時。

1 深度卷積網(wǎng)絡(luò)設(shè)計

1.1 卷積神經(jīng)網(wǎng)絡(luò)

卷積神經(jīng)網(wǎng)絡(luò)是一種局部感知和權(quán)值共享的網(wǎng)絡(luò)結(jié)構(gòu),本質(zhì)上就是指它相比較其他網(wǎng)絡(luò)會產(chǎn)生更少的可調(diào)參數(shù),降低了學(xué)習(xí)復(fù)雜度;并且卷積神經(jīng)網(wǎng)絡(luò)對圖像的平移、傾斜、縮放或其他形式的形變具有高度不變性,說明了卷積神經(jīng)網(wǎng)絡(luò)具有優(yōu)良的特性。

卷積神經(jīng)網(wǎng)絡(luò)的典型結(jié)構(gòu)如圖1所示,該網(wǎng)絡(luò)由輸人層、卷積層、池化層、全連接層及輸出層組成。輸入層是整個網(wǎng)絡(luò)的起點,網(wǎng)絡(luò)的輸入是二維的圖像;卷積層的作用是提取特征;池化層對輸入的特征圖尺寸進行壓縮使特征圖變小,降低網(wǎng)絡(luò)計算復(fù)雜度,并且進行特征壓縮提取主要特征;全連接層學(xué)習(xí)全局特征,將前面得到的局部特征整合到一起輸出給分類器;最后的輸出層是整個網(wǎng)絡(luò)的輸出。

圖1 典型卷積網(wǎng)絡(luò)結(jié)構(gòu)

1.2 卷積網(wǎng)絡(luò)的設(shè)計

網(wǎng)絡(luò)結(jié)構(gòu)基于AlexNet進行改進,共有7個卷積層。網(wǎng)絡(luò)的輸入是32×32的圖片,輸出是每個門牌號字符對應(yīng)的分類。第一層卷積層的卷積核大小為5×5,卷積步長為2,卷積核數(shù)量為64個,使用ReLU作為非線性激活函數(shù),然后使用 BN(Batch Normalization)[12]進行歸一化處理,最后連接了一個Max pooling層,大小為2×2,步長為1。第二層卷積層卷積核的大小為3x3,卷積步長為1,該層共有128個卷積核,隨后采用和第一層同樣的策略。第三層使用大小為3×3的卷積核,步長為1,共有256個卷積核,隨后采用同上的策略。第四層卷積核大小為3×3,步長為1,共有384個卷積核,后面也是采用同上的策略。從第五個卷積層開始連續(xù)堆疊了三個卷積層,卷積核大小都是3×3,步長為1,前兩個各有256個卷積核,最后一層有192個卷積核,之后使用ReLU作為激活函數(shù),然后使用BN進行歸一化處理,最后連接一個窗口大小為2×2,步長為1的Max pooling層。此后連接3個全連接層,前兩個全連接層神經(jīng)元的個數(shù)為1024,利用BN對結(jié)果進行歸一化,并采用Dropout策略來忽略一定量的神經(jīng)元,可以明顯地減少過擬合現(xiàn)象,比例設(shè)置為0.2。最后一個全連接層神經(jīng)元個數(shù)設(shè)置為10,也就是字符識別后的分類,連接Softmax分類器進行分類。

1.3 激活函數(shù)

如果不使用激勵函數(shù),神經(jīng)網(wǎng)絡(luò)的每層都只是做線性變換,但是線性模型的表達能力不足無法處理復(fù)雜的非線性問題,所以通過激勵函數(shù)引入非線性因素可以提高模型的表達能力。經(jīng)常用到的激活函數(shù)有sigmoid、tanh、和ReLU,他們各自的公式如下。其中ReLU函數(shù)要比sigmoid和tanh等函數(shù)具有更快的收斂速度,能節(jié)省大量的訓(xùn)練時間。

sigmoid函數(shù):

tanh函數(shù):

ReLU函數(shù):

1.4 BN歸一化

隨著深度學(xué)習(xí)的發(fā)展,隨機梯度下降成了訓(xùn)練深度網(wǎng)絡(luò)的主流方法。但是該方法存在不足,大量參數(shù)的設(shè)置需要人為的去完成,例如網(wǎng)絡(luò)的初始權(quán)重和bias、網(wǎng)絡(luò)的學(xué)習(xí)率、權(quán)重變化系數(shù)、Dropout比例等。這些參數(shù)對網(wǎng)絡(luò)的性能有很大的影響,而調(diào)節(jié)這些參數(shù)需要花費很多的時間。BN的出現(xiàn)使得這些調(diào)參變得不再那么重要。BN可以將卷積層輸出的數(shù)據(jù)歸一化為0均值和單位方差,如下式:

其中k為一個訓(xùn)練批次中包含的樣本個數(shù),但是僅僅使用這樣的處理方式,對前一層網(wǎng)絡(luò)的輸出數(shù)據(jù)歸一化后再送入下一層網(wǎng)絡(luò),會使得前一層網(wǎng)絡(luò)所學(xué)習(xí)到的特征分布遭到破壞。于是提出了一個很好的方案:變換重構(gòu),引入了可學(xué)習(xí)參數(shù)γ、β如下式所示:

其中,每個神經(jīng)元xk都會有一對參數(shù)γ、β。當時就可以恢復(fù)前一層網(wǎng)絡(luò)所學(xué)到的特征。所以引入可學(xué)習(xí)重構(gòu)參數(shù),可以讓原始網(wǎng)絡(luò)學(xué)習(xí)到的特征分布不被破壞。

此外,對于BN的位置也做了相應(yīng)的調(diào)整,此前很多的文獻都是將其放在了激活函數(shù)的前面,但在該方法中將BN放在了激活函數(shù)的后面。本文采用的是ReLU 激活函數(shù),即 ReLU=max(Wx+b,0),這么做的原因是因為初始的W是從標準高斯分布中采樣得到的,而W中元素的數(shù)量遠大于x,Wx+b每維的均值本身就接近0、方差接近1,所以在Wx+b后使用BN歸一化處理能得到更穩(wěn)定的結(jié)果。

2 實驗

2.1 實驗所用的數(shù)據(jù)集

SVHN數(shù)據(jù)集包含訓(xùn)練集,測試集,額外集3個子集。其中訓(xùn)練集包含了73257張數(shù)字圖像,測試集包含26032張數(shù)字圖像,額外集由531131張數(shù)字圖像組成。該數(shù)據(jù)集被分為10類,每一個類別代表一個數(shù)字,例如字符“1”類別標簽是 1,以此類推字符“9”的類別標簽是9,在這個數(shù)據(jù)集中字符“0”的類別標簽是“10”。實驗采用的是SVHN Formate2格式的數(shù)據(jù),將原始的圖像都歸一化為大小為32x32的彩色圖像并將多個字符劃分為單個的字符進行識別。實驗中對數(shù)據(jù)的label進行了調(diào)整,使得字符“0”的類別標簽為“0”。部分數(shù)據(jù)集如圖2所示。

2.2 數(shù)據(jù)處理

對原始的彩色圖像進行灰度化處理來舍去圖像背景顏色、光照條件等無用的特征,采用加權(quán)平均值法。根據(jù)人眼對RGB三個分量的敏感程度的不同,給這三個分量賦予不同的權(quán)值進行加權(quán)平均。一般采用的公式如下:

式中的Gray代表處理后的圖像,RGB為三個不同的分量,前面的系數(shù)代表每個分量占有不同的比重。事實上這樣的處理方式,計算機在計算的時候已經(jīng)可以很快了,但是為了進一步提高效率,本文采用的公式如下:

采用(7)方法要比(6)快近3/4。

圖2 SVHN部分數(shù)據(jù)集

2.3 實驗過程和結(jié)果

實驗環(huán)境為:GPU為NVIDIA GTX 960M,顯存2G;64位Microsoft Windows 10操作系統(tǒng);使用TensorFlow開源庫,Python編程語言。實驗過程分為訓(xùn)練和測試兩個階段。在進行網(wǎng)絡(luò)訓(xùn)練之前,針對SVHN數(shù)據(jù)的特點進行灰度化預(yù)處理舍去顏色、光照等無用信息,使網(wǎng)絡(luò)更容易提取到重要的特征,之后用預(yù)處理后的數(shù)據(jù)作為卷積網(wǎng)絡(luò)的輸入進行訓(xùn)練,得出模型,最后將用于測試的數(shù)據(jù)進行相同的預(yù)處理之后進行測試進行分類,統(tǒng)計正確識別率。具體過程如圖3所示:

圖3 實驗流程圖

實驗中 epoch設(shè)置為 100,學(xué)習(xí)率為0.01,每個batch的大小設(shè)置為50。得出平均的正確識別率為94.58%。在實驗過程中epoch如果設(shè)置的太小,網(wǎng)絡(luò)得不到充分的訓(xùn)練導(dǎo)致最終模型的識別正確率不高;如果設(shè)置的太大這無疑會增加訓(xùn)練的時間且模型的識別率也不會有所提高。另一個重要的參數(shù)是網(wǎng)絡(luò)的學(xué)習(xí)率,如果學(xué)習(xí)率太大在訓(xùn)練過程中l(wèi)ost值會一直大幅度的震蕩,隨著迭代次數(shù)增加loss也不會減??;如果太小lost就找不到很好的下降方向,在整個訓(xùn)練過程中基本不變,網(wǎng)絡(luò)無法收斂。圖4是當epoch為100、學(xué)習(xí)率為0.01、batch大小為50時損失函數(shù)變化情況,可以看出在經(jīng)過訓(xùn)練后得到了很好的收斂,收斂的速度也是很快的;圖5則是對應(yīng)的識別正確率變化情況。

圖4 網(wǎng)絡(luò)損失函數(shù)

圖5網(wǎng)絡(luò)的準確率

圖6 給出了本文方法在驗證集上的實驗結(jié)果的歸一化混淆矩陣,以便于能夠更清楚地觀察到每類圖像被正確分類的比例和被錯分到其他各個類別的比例。驗證集來源于從測試集中隨機抽取的10000張圖片。其中混淆矩陣中的縱軸表示圖像的實際類別標簽,橫軸則表示圖像經(jīng)過卷積網(wǎng)絡(luò)預(yù)測的類別標簽,第i行j列的值表示第i類圖像被分為第j類圖像的比例,混淆矩陣對角線上的值代表每類圖像正確分類的個數(shù)所占的比例。表1則給出了基于不同方法的平均分類準確率的比較。

由表1的結(jié)果可以看出,本文的方法的分類準確率與除去PCA-CNN方法之外的其他方法相比有明顯的提高。PCA-CNN方法的分類準確率略高,但是PCA過程計算量很大導(dǎo)致整個網(wǎng)絡(luò)訓(xùn)練時間大約為1周,本文提出的算法經(jīng)過13小時的訓(xùn)練就可以達到94.58%準確率,所需要的時間代價要小得多。

圖6 模型分類結(jié)果的混淆矩陣

3 結(jié)語

表1 不同方法的分類結(jié)果比較

針對自然背景下的門牌號的識別問題,提出了一種基于深度卷積網(wǎng)絡(luò)的自動識別方法。對原始的圖像數(shù)據(jù)做了灰度化處理,舍去了顏色、光照等無用的特征,之后將數(shù)據(jù)輸入給卷積網(wǎng)絡(luò)讓它自己在不斷的學(xué)習(xí)過程中提取深層次的圖像特征。網(wǎng)絡(luò)在經(jīng)過近13小時的訓(xùn)練平均識別率可以達到94.58%,具有訓(xùn)練時間短識別率高的特點。

猜你喜歡
識別率步長卷積
基于Armijo搜索步長的BFGS與DFP擬牛頓法的比較研究
基于3D-Winograd的快速卷積算法設(shè)計及FPGA實現(xiàn)
基于類圖像處理與向量化的大數(shù)據(jù)腳本攻擊智能檢測
計算機工程(2020年3期)2020-03-19 12:24:50
從濾波器理解卷積
電子制作(2019年11期)2019-07-04 00:34:38
基于真耳分析的助聽器配戴者言語可懂度指數(shù)與言語識別率的關(guān)系
提升高速公路MTC二次抓拍車牌識別率方案研究
基于傅里葉域卷積表示的目標跟蹤算法
高速公路機電日常維護中車牌識別率分析系統(tǒng)的應(yīng)用
基于逐維改進的自適應(yīng)步長布谷鳥搜索算法
一種新型光伏系統(tǒng)MPPT變步長滯環(huán)比較P&O法
電測與儀表(2014年2期)2014-04-04 09:04:00
汝州市| 屯门区| 烟台市| 塔河县| 政和县| 凯里市| 泾阳县| 宣汉县| 金乡县| 如东县| 达孜县| 黄冈市| 舟曲县| 阿城市| 明光市| 当雄县| 正宁县| 侯马市| 阳山县| 嘉义县| 玉龙| 修武县| 新丰县| 内黄县| 兰西县| 清河县| 襄垣县| 剑川县| 赫章县| 资溪县| 大石桥市| 南江县| 靖宇县| 望谟县| 凌源市| 东源县| 贵南县| 平湖市| 鲁山县| 威海市| 红安县|