本發(fā)明屬于計算機(jī)視覺技術(shù)領(lǐng)域,更具體地,涉及一種基于空間變換的自然場景下文本識別方法。
背景技術(shù):
人們在生產(chǎn)和生活中,會接觸到大量的自然場景下的文字,像路標(biāo)、廣告牌、產(chǎn)品包裝等,這些文字包含著豐富的信息,自動地獲取圖像中的文字信息可以幫助人們更有效地理解圖像,提取這些文字信息具有非常重要的實用價值,對無人駕駛、自動獲取地理位置以及基于圖像的自動翻譯等都有著很強(qiáng)的實用性。自然場景圖像背景通常比較復(fù)雜,文字分布不規(guī)律,且容易受到拍攝角度及光照等因素的影響,因此自然場景中的文本分析一直是計算機(jī)視覺技術(shù)領(lǐng)域的難點之一。
技術(shù)實現(xiàn)要素:
本發(fā)明的目的在于提供一種基于空間變換的自然場景下文本識別方法,該方法文本識別準(zhǔn)確率高,適應(yīng)能力強(qiáng)。為實現(xiàn)上述目的,按照本發(fā)明的一個方面,提供了一種基于空間變換的自然場景下文本識別方法,包括下述步驟:(1)訓(xùn)練得到文本識別的參數(shù),所述參數(shù)包括基準(zhǔn)點定位網(wǎng)絡(luò)模型、圖像預(yù)處理網(wǎng)絡(luò)模型、圖像編碼器網(wǎng)絡(luò)模型以及特征解碼器網(wǎng)絡(luò)模型:(1.1)標(biāo)記訓(xùn)練圖像集中所有文本圖像的文本內(nèi)容,得到訓(xùn)練數(shù)據(jù)集;具體地,對給定的文本圖像,用人工標(biāo)注的方法獲取文本圖像中文本的內(nèi)容;對訓(xùn)練圖像集中的所有文本圖像都進(jìn)行標(biāo)注,就可以得到訓(xùn)練數(shù)據(jù)集,記為其中Itri表示訓(xùn)練圖像集中的第i張圖像,Ltri表示圖像Itri中的文本內(nèi)容,ltri,t表示Ltri中的第t個字符,Ttri表示Ltri中字符個數(shù),Ntr為訓(xùn)練圖像個數(shù);(1.2)定義用于對待識別圖像進(jìn)行識別的級聯(lián)網(wǎng)絡(luò),所述級聯(lián)網(wǎng)絡(luò)由基準(zhǔn)點定位網(wǎng)絡(luò)、圖像預(yù)處理網(wǎng)絡(luò)、圖像編碼器網(wǎng)絡(luò)以及特征解碼器網(wǎng)絡(luò)構(gòu)成,根據(jù)上述訓(xùn)練數(shù)據(jù)集,利用反向傳導(dǎo)方法訓(xùn)練該級聯(lián)網(wǎng)絡(luò),得到基準(zhǔn)點定位網(wǎng)絡(luò)模型、圖像編碼器網(wǎng)絡(luò)模型以及特征解碼器網(wǎng)絡(luò)模型;(1.2.1)對訓(xùn)練圖像Itr,在圖像上取兩條平行的線段,線段的端點都在圖像的左右邊界上,在這兩條線段上分別等間距的取K/2個點作為基準(zhǔn)點,其中K為設(shè)置的基準(zhǔn)點個數(shù),這樣就可以得到K個初始化的基準(zhǔn)點,將這些基準(zhǔn)點的坐標(biāo)保存在基準(zhǔn)點坐標(biāo)矩陣Ctr中,記為Ctr=[ctr1,...,ctrK],其中坐標(biāo)系的原點為圖像的中點,ctrk表示第k個基準(zhǔn)點,且ctrk=[xctrk,yctrk]T,xctrk和yctrk分別表示該基準(zhǔn)點在訓(xùn)練圖像Itri上歸一化后的橫縱坐標(biāo),xctrk∈[-1,1],yctrk∈[-1,1],上標(biāo)T表示矩陣轉(zhuǎn)置;(1.2.2)以卷積神經(jīng)網(wǎng)絡(luò)作為圖像基準(zhǔn)點定位網(wǎng)絡(luò),該卷積神經(jīng)網(wǎng)絡(luò)包含四個卷積層、四個最大池化層、兩個全連接層以及一個雙曲正切輸出層;根據(jù)基準(zhǔn)點坐標(biāo)初始化所述基準(zhǔn)點定位網(wǎng)絡(luò)的的權(quán)重參數(shù)和偏置量,其中權(quán)重參數(shù)均為0,基準(zhǔn)點對應(yīng)的偏置量為1,其他的偏置量均為0;(1.2.3)對訓(xùn)練圖像Itr,令圖像Itr′為Itr經(jīng)過變換后的圖像,且變換后圖像的寬度和高度分別為Wf和Hf,均為固定的值,定義變換后的圖像的基準(zhǔn)點坐標(biāo)矩陣為Ctr′=[ctr′1,...,ctr′K],其中K為基準(zhǔn)點的個數(shù),變換后的圖像中的基準(zhǔn)點與原訓(xùn)練圖像中的基準(zhǔn)點是一一對應(yīng)的,且變換后的圖像的基準(zhǔn)點等間距的分布在圖像Itr′的上下兩條邊上,其中第ktr個基準(zhǔn)點ctr′ktr=[xctr′ktr,yctr′ktr]T,ctr′k對應(yīng)原始訓(xùn)練圖像Itr中的第ktr個基準(zhǔn)點ctrktr,xctr′ktr和yctr′ktr分別表示該基準(zhǔn)點在圖像Itr′上歸一化后的橫縱坐標(biāo),xctr′ktr∈[-1,1],yctr′ktr∈[-1,1];(1.2.4)計算薄板樣條函數(shù)轉(zhuǎn)換矩陣Tps,記為:其中Os為1×K的矩陣,且Os中所有元素的值均為1,Ctr′為變換后的圖像的基準(zhǔn)點坐標(biāo)矩陣,Zs為3×3的矩陣,且Zs中所有元素的值均為0,R為K×K的矩陣,且其第row行、第col列的元素值rrow,col為訓(xùn)練圖像Itr的第row個基準(zhǔn)點Ctrrow和變換后的圖像Itr′的第col個基準(zhǔn)點Ctr′col之間的歐式距離,上標(biāo)T表示矩陣轉(zhuǎn)置,K為基準(zhǔn)點的個數(shù),則利用訓(xùn)練圖像的基準(zhǔn)點坐標(biāo)矩陣Ctr和薄板樣條函數(shù)轉(zhuǎn)換矩陣Tps計算轉(zhuǎn)換參數(shù)矩陣A=[a1,a2,a3]T,B=[b1,b2,b3]T,F(xiàn)=[f1,...,fK]T,G=[g1,...,gK]T,其中矩陣A、B、F、G中的元素為轉(zhuǎn)換參數(shù),轉(zhuǎn)換參數(shù)矩陣計算方程為:CtrT=TpsPa解該方程即可得到轉(zhuǎn)換參數(shù)矩陣Pa,對變換后的圖像Itr′上的一個點ptr′=[xptr′,yptr′]T,計算其對應(yīng)于原始訓(xùn)練圖像Itr的點ptr=[xptr,yptr]T,其中xptr′和yptr′分別表示點ptr′的在Itr′的橫縱坐標(biāo),xptr和yptr分別表示點ptr在Itr的橫縱坐標(biāo),計算公式為:ptr=PaTptr″,ptr″=[1,xptr′,yptr′,rtr′1,...,rtr′K]T,其中dtrktr表示點ptr′與Itr′的第ktr個基準(zhǔn)點ctr′ktr之間的歐式距離,對圖像Itr′中的每個點都執(zhí)行上述運算,就可以得到Itr′上每個點與圖像Itr中點的對應(yīng)關(guān)系;(1.2.5)對圖像Itr′中的每個點ptr′,通過步驟(1.2.4)可以計算出其在原始圖像Itr中對應(yīng)的點ptr,利用雙線性插值的方法通過點ptr周圍的像素點的值計算出點ptr′的像素值,這樣就可以得到原始訓(xùn)練圖相Itr經(jīng)過變換后的圖像Itr′;(1.2.6)以步驟(1.2.5)中得到的經(jīng)過變換的圖像作為輸入,經(jīng)過由卷積層構(gòu)成的圖像預(yù)處理網(wǎng)絡(luò),經(jīng)過圖像預(yù)處理網(wǎng)絡(luò)可以得到D個Wf×Hf的特征圖,其中D為常數(shù),Wf和Hf分別表示預(yù)設(shè)的變換后圖像的寬度和高度;對特征圖的每一列,將其每個像素在D個特征圖上對應(yīng)的值拼接起來,可以組成一個D×Hf的特征向量,一共可以得到Wf個D×Hf的特征向量;然后以雙向長短程記憶網(wǎng)絡(luò)作為圖像編碼器網(wǎng)絡(luò),這些特征向量通過圖像編碼器網(wǎng)絡(luò)進(jìn)行計算得到訓(xùn)練圖像的特征序列PItr={Xtr1,...,XtrWf},其中Xtrwtr表示圖像Itr′第wtr列的特征向量;(1.2.7)以門限遞歸單元網(wǎng)絡(luò)構(gòu)建特征解碼器網(wǎng)絡(luò),特征解碼由Td個過程構(gòu)成,其中Td表示特征解碼器網(wǎng)絡(luò)循環(huán)次數(shù),特征解碼的第td步具體為:首先計算權(quán)重向量αtd,計算方法如下:etd,wtr=vaTtanh(Wastd-1+UaXtrwtr)其中,αtd,wtr表示權(quán)重向量αtd的第wtr維的值,Wf表示預(yù)設(shè)的變換后圖像的寬度,va、Wa、Ua為訓(xùn)練得到的參數(shù)矩陣,std-1表示解碼過程第td-1步的輸出,Xtrwtr表示步驟(1.2.6)中得到的圖像Itr′第wtr列的特征向量,αtd是一個Wf維的向量;然后計算步驟(1.2.6)中得到的圖像特征序列的上下文關(guān)系特征向量,記為:其中αtd,wtr表示權(quán)重向量αtd的第wtr維的值,Xtrwtr表示步驟(1.2.6)中得到的圖像表示序列PItr={Xtr1,...,XtrWf}中的第wtr個向量;然后以得到的上下文關(guān)系特征向量otd、特征解碼過程第td-1步的輸出std-1以及預(yù)測的字符l′td-1為輸入,經(jīng)過該特征解碼過程,可以得到輸出std,然后將std輸入到軟最大分類器進(jìn)行分類,即可得到預(yù)測的概率分布ytd;(1.2.8)將步驟(1.2.2)至(1.2.7)中所述的基準(zhǔn)點定位網(wǎng)絡(luò)、圖像預(yù)處理網(wǎng)絡(luò)、圖像編碼器網(wǎng)絡(luò)以及特征解碼器網(wǎng)絡(luò)級聯(lián)在一起,即為文本識別的網(wǎng)絡(luò),記為級聯(lián)網(wǎng)絡(luò),利用反向傳導(dǎo)的方法對該級聯(lián)網(wǎng)絡(luò)進(jìn)行訓(xùn)練,可以得到步驟(1.2.2)中的基準(zhǔn)點定位網(wǎng)絡(luò)模型θloc、步驟(1.2.6)中的圖像預(yù)處理網(wǎng)絡(luò)模型θconv和圖像編碼器網(wǎng)絡(luò)模型θblstm以及步驟(1.2.7)中的特征解碼器網(wǎng)絡(luò)模型θrnn和軟最大分類器的模型W,組合在一起即為級聯(lián)網(wǎng)絡(luò)的模型,組合在一起即為級聯(lián)網(wǎng)絡(luò)的參數(shù),記為θ,該級聯(lián)網(wǎng)絡(luò)代價函數(shù)為:其中χ為訓(xùn)練數(shù)據(jù)集,Itri和Ltri分別表示第i個訓(xùn)練圖像及其標(biāo)注的文本內(nèi)容,Ttri表示文本內(nèi)容Ltri中字符的個數(shù),ltri,t表示Ltri中的第t個字符,p(ltri,t|Itri,θ)由級聯(lián)網(wǎng)絡(luò)最后輸出;(2)利用基準(zhǔn)點定位網(wǎng)絡(luò)對待識別圖像做空間變換:(2.1)利用基準(zhǔn)點定位網(wǎng)絡(luò)模型計算待識別圖像的基準(zhǔn)點位置;具體地,對待識別圖像集中的每一張圖像Itst,利用步驟(1.2.2)中訓(xùn)練好的基準(zhǔn)點定位網(wǎng)絡(luò)模型θloc,將圖像Itst輸入到基準(zhǔn)點定位網(wǎng)絡(luò)即可得到基準(zhǔn)點的坐標(biāo)矩陣Ctst=[ctst1,...,ctstK],其中ctstktst=[xtstktst,ytstktst]T表示圖像Itst的第ktst個基準(zhǔn)點,K為基準(zhǔn)點個數(shù),xtstktst和ytstktst分別表示第ktst個基準(zhǔn)點的橫縱坐標(biāo),且xtstktst∈(-1,1),ytstktst∈(-1,1),上標(biāo)T表示矩陣轉(zhuǎn)置;(2.2)根據(jù)所述待識別圖像的基準(zhǔn)點位置,利用薄板樣條函數(shù)轉(zhuǎn)換矩陣獲取原待識別圖像和變換后待識別圖像的坐標(biāo)對應(yīng)關(guān)系;具體地,對步驟(2.1)中得到的待識別圖像的基準(zhǔn)點坐標(biāo)矩陣Ctst,利用步驟(1.2.3)和步驟(1.2.4)的方法計算原待識別圖像Itst和變換后待識別圖像Itst′之間坐標(biāo)的對應(yīng)關(guān)系,其中圖像Itst′的寬度和高度分別為既定的值Wf和Hf;(2.3)根據(jù)上述原待識別圖像和變換后待識別圖像的坐標(biāo)對應(yīng)關(guān)系獲取變換后的待識別圖像;具體地,根據(jù)步驟(2.2)中得到的原待識別圖像Itst和變換后待識別圖像Itst′之間坐標(biāo)的對應(yīng)關(guān)系,利用步驟(1.2.5)中所述的方法計算Itst′中各個點的像素值,得到變換后的待識別圖像Itst′;(3)對變換后的待識別圖像進(jìn)行識別:(3.1)利用圖像編碼器網(wǎng)絡(luò)模型獲取變換后的待識別圖像的特征向量;具體地,對步驟(2.3)中獲取的變換后的待識別圖像Itst′,利用步驟(1.2.6)中所述的方法以及訓(xùn)練得到的圖像預(yù)處理網(wǎng)絡(luò)模型θconv和圖像編碼器網(wǎng)絡(luò)模型θblstm,得到圖像Itst′的編碼,即為圖像Itst′的特征向量,記為PItst={Xtst1,...,XtstWf};(3.2)根據(jù)上述待識別圖像的特征向量,利用特征解碼器網(wǎng)絡(luò)模型,獲取待識別圖像的預(yù)測概率序列;具體地,對步驟(3.1)中獲取的圖像Itst′的特征向量序列PItst={Xtst1,...,XtstWf},利用步驟(1.2.7)中所述的方法以及訓(xùn)練好的特征解碼器網(wǎng)絡(luò)模型θrnn和軟最大分類器的模型W,獲取圖像的預(yù)測概率分布序列,記為Y={y1,...,yTd},其中Td為步驟(1.2.7)中所述的特征解碼的步數(shù);(3.3)利用上述得到的預(yù)測概率序列獲取待識別圖像最終的識別結(jié)果;具體地,對于沒有詞典情況,首先由步驟(1.2.7)所述的特征解碼器網(wǎng)絡(luò)的初始狀態(tài)預(yù)測出第一步的概率分布,取最大概率的字符作為第一個字符,并把第一個字符以及第一步特征解碼器網(wǎng)絡(luò)的狀態(tài)作為第二步的輸入,并計算第二個字符的概率分布,同樣的取概率最大的字符作為輸出,并與第二步的狀態(tài)一道作為下一步的輸入,依次類推直到輸出的概率分布中終止符的概率最大為止或者步長到了預(yù)設(shè)的最大值,則預(yù)測結(jié)束,此時輸出的字符串即為預(yù)測的字符串;對于有詞典的情況,對于詞典中的每個單詞,首先由步驟(1.2.7)所述的特征解碼器網(wǎng)絡(luò)的初始狀態(tài)得到第一步的概率分布,并得到單詞中第一個字符的概率,然后把單詞中第一個字符以及第一步的狀態(tài)作為第二步的輸入,并得到第二步的字符概率分布,并得到單詞中第二個字符的概率,依次進(jìn)行下去,把整個單詞中各個字符的概率相乘就可以得到這個單詞對應(yīng)的概率,算出字典中所有單詞的概率,取概率最大的單詞作為最終的輸出。通過本發(fā)明所構(gòu)思的以上技術(shù)方案,與現(xiàn)有技術(shù)相比,本發(fā)明具有以下技術(shù)效果:1、自然場景下獲取的文本經(jīng)常出現(xiàn)排列不規(guī)律的現(xiàn)象,現(xiàn)有的識別方法很難適應(yīng)文本排列的影響,導(dǎo)致識別準(zhǔn)確率非常低;本發(fā)明方法通過自動地進(jìn)行文本空間變換,能夠在一些不規(guī)則的文字上去的更好的識別準(zhǔn)確率,包括非水平方向的文字、非正面拍攝的文字以及彎曲排列的文字;2、現(xiàn)有的對自然場景下的不規(guī)則排列的文本進(jìn)行變換的算法,一般都需要人工標(biāo)注文本圖片中的基準(zhǔn)點,因而需要大量的人工標(biāo)注工作;本發(fā)明方法中網(wǎng)絡(luò)模型的參數(shù)完全從數(shù)據(jù)中學(xué)習(xí)得到,在訓(xùn)練和測試時都不需要人工標(biāo)注變換。附圖說明圖1是本發(fā)明基于空間變換的自然場景下文本識別方法流程圖。具體實施方式為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點更加清楚明白,以下結(jié)合附圖及實施例,對本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說明。應(yīng)當(dāng)理解,此處所描述的具體實施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。此外,下面所描述的本發(fā)明各個實施方式中所涉及到的技術(shù)特征只要彼此之間未構(gòu)成沖突就可以相互組合。以下首先就本發(fā)明的技術(shù)術(shù)語進(jìn)行解釋和說明:卷積神經(jīng)網(wǎng)絡(luò)(ConcolutionalNeuralNetwork,CNN):一種可用于圖像分類、回歸等任務(wù)的神經(jīng)網(wǎng)絡(luò)。網(wǎng)絡(luò)通常由卷積層、降采樣層和全連接層構(gòu)成。卷積層和降采樣層負(fù)責(zé)提取圖像的特征,全連接層負(fù)責(zé)分類或回歸。網(wǎng)絡(luò)的參數(shù)包括卷積核以及全連接層的參數(shù)及偏置,參數(shù)可以通過反向傳導(dǎo)算法,從數(shù)據(jù)中學(xué)習(xí)得到;薄板樣條曲線(ThinPlateSpline,TPS):一種非線性空間變換算法。給定圖像和圖像上的準(zhǔn)點(fiducialpoints),該算法可以對圖像進(jìn)行非線性的扭曲變換;遞歸神經(jīng)網(wǎng)絡(luò)(RecurrentNeuralNetwork,RNN):一種通常用于序列分析的網(wǎng)絡(luò)。網(wǎng)絡(luò)可以接收一個序列作為輸入,通過記憶機(jī)制,分析序列的前后關(guān)系,并最終輸出一個序列或者一個特征向量;長短期記憶(Long-ShortTermMemory,LSTM):遞歸神經(jīng)網(wǎng)絡(luò)的一種。該網(wǎng)絡(luò)包含三個門(gates)結(jié)構(gòu):輸入門、輸出門和遺忘門;它們分別起到調(diào)整輸入、調(diào)整輸出和清除記憶的作用;由于門機(jī)制的作用,該網(wǎng)絡(luò)可以捕捉序列中的長期(long-term)相關(guān)關(guān)系,并且可以避免訓(xùn)練遞歸神經(jīng)網(wǎng)絡(luò)中常出現(xiàn)的梯度爆炸(gradientexplosion)和梯度消失(gradientvanishing)的現(xiàn)象;雙向長短期記憶(BidirectionalLong-ShortTermMemory,BLSTM):由兩個方向相反的LSTM結(jié)合而成??梢酝瑫r分析兩個方向上的上下文關(guān)系;門遞歸神經(jīng)網(wǎng)絡(luò)的一種(GatedRecurrentUnit,GRU):類似LSTM,但只包括更新門和重置門兩種門結(jié)構(gòu)。結(jié)構(gòu)上更為簡單。本發(fā)明基于空間變換的自然場景下文本識別方法包括以下步驟:(1)訓(xùn)練得到文本識別的參數(shù),所述參數(shù)包括基準(zhǔn)點定位網(wǎng)絡(luò)模型、圖像預(yù)處理網(wǎng)絡(luò)模型、圖像編碼器網(wǎng)絡(luò)模型以及特征解碼器網(wǎng)絡(luò)模型:(1.1)標(biāo)記訓(xùn)練圖像集中所有文本圖像的文本內(nèi)容,得到訓(xùn)練數(shù)據(jù)集;具體地,對給定的文本圖像,用人工標(biāo)注的方法獲取文本圖像中文本的內(nèi)容;對訓(xùn)練圖像集中的所有文本圖像都進(jìn)行標(biāo)注,就可以得到訓(xùn)練數(shù)據(jù)集,記為其中Itri表示訓(xùn)練圖像集中的第i張圖像,Ltri表示圖像Itri中的文本內(nèi)容,ltri,t表示Ltri中的第t個字符,Ttri表示Ltri中字符個數(shù),Ntr為訓(xùn)練圖像個數(shù);(1.2)定義用于對待識別圖像進(jìn)行識別的級聯(lián)網(wǎng)絡(luò),所述級聯(lián)網(wǎng)絡(luò)由基準(zhǔn)點定位網(wǎng)絡(luò)、圖像預(yù)處理網(wǎng)絡(luò)、圖像編碼器網(wǎng)絡(luò)以及特征解碼器網(wǎng)絡(luò)構(gòu)成,根據(jù)上述訓(xùn)練數(shù)據(jù)集,利用反向傳導(dǎo)方法訓(xùn)練該級聯(lián)網(wǎng)絡(luò),得到基準(zhǔn)點定位網(wǎng)絡(luò)模型、圖像編碼器網(wǎng)絡(luò)模型以及特征解碼器網(wǎng)絡(luò)模型;(1.2.1)對訓(xùn)練圖像Itr,在圖像上取兩條平行的線段,線段的端點都在圖像的左右邊界上,在這兩條線段上分別等間距的取K/2個點作為基準(zhǔn)點,其中K為設(shè)置的基準(zhǔn)點個數(shù),這樣就可以得到K個初始化的基準(zhǔn)點,將這些基準(zhǔn)點的坐標(biāo)保存在基準(zhǔn)點坐標(biāo)矩陣Ctr中,記為Ctr=[ctr1,...,ctrK],其中坐標(biāo)系的原點為圖像的中點,ctrk表示第k個基準(zhǔn)點,且ctrk=[xctrk,yctrk]T,xctrk和yctrk分別表示該基準(zhǔn)點在訓(xùn)練圖像Itri上歸一化后的橫縱坐標(biāo),xctrk∈[-1,1],yctrk∈[-1,1],上標(biāo)T表示矩陣轉(zhuǎn)置;(1.2.2)以卷積神經(jīng)網(wǎng)絡(luò)作為圖像基準(zhǔn)點定位網(wǎng)絡(luò),該卷積神經(jīng)網(wǎng)絡(luò)包含四個卷積層、四個最大池化層、兩個全連接層以及一個雙曲正切輸出層;根據(jù)基準(zhǔn)點坐標(biāo)初始化所述基準(zhǔn)點定位網(wǎng)絡(luò)的的權(quán)重參數(shù)和偏置量,其中權(quán)重參數(shù)均為0,基準(zhǔn)點對應(yīng)的偏置量為1,其他的偏置量均為0;(1.2.3)對訓(xùn)練圖像Itr,令圖像Itr′為Itr經(jīng)過變換后的圖像,且變換后圖像的寬度和高度分別為Wf和Hf,均為固定的值,定義變換后的圖像的基準(zhǔn)點坐標(biāo)矩陣為Ctr′=[ctr′1,...,ctr′K],其中K為基準(zhǔn)點的個數(shù),變換后的圖像中的基準(zhǔn)點與原訓(xùn)練圖像中的基準(zhǔn)點是一一對應(yīng)的,且變換后的圖像的基準(zhǔn)點等間距的分布在圖像Itr′的上下兩條邊上,其中第ktr個基準(zhǔn)點ctr′ktr=[xctr′ktr,yctr′ktr]T,ctr′k對應(yīng)原始訓(xùn)練圖像Itr中的第ktr個基準(zhǔn)點ctrktr,xctr′ktr和yctr′ktr分別表示該基準(zhǔn)點在圖像Itr′上歸一化后的橫縱坐標(biāo),xctr′ktr∈[-1,1],yctr′ktr∈[-1,1];(1.2.4)計算薄板樣條函數(shù)轉(zhuǎn)換矩陣Tps,記為:其中Os為1×K的矩陣,且Os中所有元素的值均為1,Ctr′為變換后的圖像的基準(zhǔn)點坐標(biāo)矩陣,Zs為3×3的矩陣,且Zs中所有元素的值均為0,R為K×K的矩陣,且其第row行、第col列的元素值rrow,col為訓(xùn)練圖像Itr的第row個基準(zhǔn)點Ctrrow和變換后的圖像Itr′的第col個基準(zhǔn)點Ctr′col之間的歐式距離,上標(biāo)T表示矩陣轉(zhuǎn)置,K為基準(zhǔn)點的個數(shù),則利用訓(xùn)練圖像的基準(zhǔn)點坐標(biāo)矩陣Ctr和薄板樣條函數(shù)轉(zhuǎn)換矩陣Tps計算轉(zhuǎn)換參數(shù)矩陣A=[a1,a2,a3]T,B=[b1,b2,b3]T,F(xiàn)=[f1,...,fK]T,G=[g1,...,gK]T,其中矩陣A、B、F、G中的元素為轉(zhuǎn)換參數(shù),轉(zhuǎn)換參數(shù)矩陣計算方程為:CtrT=TpsPa解該方程即可得到轉(zhuǎn)換參數(shù)矩陣Pa,對變換后的圖像Itr′上的一個點ptr′=[xptr′,yptr′]T,計算其對應(yīng)于原始訓(xùn)練圖像Itr的點ptr=[xptr,yptr]T,其中xptr′和yptr′分別表示點ptr′的在Itr′的橫縱坐標(biāo),xptr和yptr分別表示點ptr在Itr的橫縱坐標(biāo),計算公式為:ptr=PaTptr″,ptr″=[1,xptr′,yptr′,rtr′1,...,rtr′K]T,其中dtrktr表示點ptr′與Itr′的第ktr個基準(zhǔn)點ctr′ktr之間的歐式距離,對圖像Itr′中的每個點都執(zhí)行上述運算,就可以得到Itr′上每個點與圖像Itr中點的對應(yīng)關(guān)系;(1.2.5)對圖像Itr′中的每個點ptr′,通過步驟(1.2.4)可以計算出其在原始圖像Itr中對應(yīng)的點ptr,利用雙線性插值的方法通過點ptr周圍的像素點的值計算出點ptr′的像素值,這樣就可以得到原始訓(xùn)練圖相Itr經(jīng)過變換后的圖像Itr′;(1.2.6)以步驟(1.2.5)中得到的經(jīng)過變換的圖像作為輸入,經(jīng)過由卷積層構(gòu)成的圖像預(yù)處理網(wǎng)絡(luò),經(jīng)過圖像預(yù)處理網(wǎng)絡(luò)可以得到D個Wf×Hf的特征圖,其中D為常數(shù),Wf和Hf分別表示預(yù)設(shè)的變換后圖像的寬度和高度;對特征圖的每一列,將其每個像素在D個特征圖上對應(yīng)的值拼接起來,可以組成一個D×Hf的特征向量,一共可以得到Wf個D×Hf的特征向量;然后以雙向長短程記憶網(wǎng)絡(luò)作為圖像編碼器網(wǎng)絡(luò),這些特征向量通過圖像編碼器網(wǎng)絡(luò)進(jìn)行計算得到訓(xùn)練圖像的特征序列PItr={Xtr1,...,XtrWf},其中Xtrwtr表示圖像Itr′第wtr列的特征向量;(1.2.7)以門限遞歸單元網(wǎng)絡(luò)特征解碼器網(wǎng)絡(luò),特征解碼由Td個過程構(gòu)成,其中Td表示特征解碼器網(wǎng)絡(luò)循環(huán)次數(shù),特征解碼的第td步具體為:首先計算權(quán)重向量αtd,計算方法如下:etd,wtr=vaTtanh(Wastd-1+UaXtrwtr)其中,αtd,wtr表示權(quán)重向量αtd的第wtr維的值,Wf表示預(yù)設(shè)的變換后圖像的寬度,va、Wa、Ua為訓(xùn)練得到的參數(shù)矩陣,std-1表示特征解碼過程第td-1步的輸出,Xtrwtr表示步驟(1.2.6)中得到的圖像Itr′第wtr列的特征向量,αtd是一個Wf維的向量;然后計算步驟(1.2.6)中得到的圖像特征序列的上下文關(guān)系特征向量,記為:其中αtd,wtr表示權(quán)重向量αtd的第wtr維的值,Xtrwtr表示步驟(1.2.6)中得到的圖像表示序列PItr={Xtr1,...,XtrWf}中的第wtr個向量;然后以得到的上下文關(guān)系特征向量otd、特征解碼過程第td-1步的輸出std-1以及預(yù)測的字符l′td-1為輸入,經(jīng)過該特征解碼過程,可以得到輸出std,然后將std輸入到軟最大分類器進(jìn)行分類,即可得到預(yù)測的概率分布ytd;(1.2.8)將步驟(1.2.2)至(1.2.7)中所述的基準(zhǔn)點定位網(wǎng)絡(luò)、圖像預(yù)處理網(wǎng)絡(luò)、圖像編碼器網(wǎng)絡(luò)以及特征解碼器網(wǎng)絡(luò)級聯(lián)在一起,即為文本識別的網(wǎng)絡(luò),記為級聯(lián)網(wǎng)絡(luò),利用反向傳導(dǎo)的方法對該級聯(lián)網(wǎng)絡(luò)進(jìn)行訓(xùn)練,可以得到步驟(1.2.2)中的基準(zhǔn)點定位網(wǎng)絡(luò)模型θloc、步驟(1.2.6)中的圖像預(yù)處理網(wǎng)絡(luò)模型θconv和圖像編碼器網(wǎng)絡(luò)模型θblstm以及步驟(1.2.7)中的特征解碼器網(wǎng)絡(luò)模型θrnn和軟最大分類器的模型W,組合在一起即為級聯(lián)網(wǎng)絡(luò)的模型,記為θ,該級聯(lián)網(wǎng)絡(luò)代價函數(shù)為:其中χ為訓(xùn)練數(shù)據(jù)集,Itri和Ltri分別表示第i個訓(xùn)練圖像及其標(biāo)注的文本內(nèi)容,Ttri表示文本內(nèi)容Ltri中字符的個數(shù),ltri,t表示Ltri中的第t個字符,p(ltri,t|Itri,θ)由級聯(lián)網(wǎng)絡(luò)最后輸出;(2)利用基準(zhǔn)點定位網(wǎng)絡(luò)對待識別圖像做空間變換:(2.1)利用基準(zhǔn)點定位網(wǎng)絡(luò)模型計算待識別圖像的基準(zhǔn)點位置;具體地,對待識別圖像集中的每一張圖像Itst,利用步驟(1.2.2)中訓(xùn)練好的基準(zhǔn)點定位網(wǎng)絡(luò)模型θloc,將圖像Itst輸入到基準(zhǔn)點定位網(wǎng)絡(luò)即可得到基準(zhǔn)點的坐標(biāo)矩陣Ctst=[ctst1,...,ctstK],其中ctstktst=[xtstktst,ytstktst]T表示圖像Itst的第ktst個基準(zhǔn)點,K為基準(zhǔn)點個數(shù),xtstktst和ytstktst分別表示第ktst個基準(zhǔn)點的橫縱坐標(biāo),且xtstktst∈(-1,1),ytstktst∈(-1,1),上標(biāo)T表示矩陣轉(zhuǎn)置;(2.2)獲取原待識別圖像和變換后待識別圖像的坐標(biāo)對應(yīng)關(guān)系;具體地,對步驟(2.1)中得到的待識別圖像的基準(zhǔn)點坐標(biāo)矩陣Ctst,利用步驟(1.2.3)和步驟(1.2.4)的方法計算原待識別圖像Itst和變換后待識別圖像Itst′之間坐標(biāo)的對應(yīng)關(guān)系,其中圖像Itst′的寬度和高度分別為既定的值Wf和Hf;(2.3)根據(jù)上述原待識別圖像和變換后待識別圖像的坐標(biāo)對應(yīng)關(guān)系獲取變換后的待識別圖像;具體地,根據(jù)步驟(2.2)中得到的原待識別圖像Itst和變換后待識別圖像Itst′之間坐標(biāo)的對應(yīng)關(guān)系,利用步驟(1.2.5)中所述的方法計算Itst′中各個點的像素值,得到變換后的待識別圖像Itst′;(3)對變換后的待識別圖像進(jìn)行識別:(3.1)利用圖像編碼器網(wǎng)絡(luò)模型獲取變換后的待識別圖像的特征向量;具體地,對步驟(2.3)中獲取的變換后的待識別圖像Itst′,利用步驟(1.2.6)中所述的方法以及訓(xùn)練得到的圖像預(yù)處理網(wǎng)絡(luò)模型θconv和圖像編碼器網(wǎng)絡(luò)模型θblstm,得到圖像Itst′的編碼,即為圖像Itst′的特征向量,記為PItst={Xtst1,...,XtstWf};(3.2)根據(jù)上述待識別圖像的特征向量,利用特征解碼器網(wǎng)絡(luò)模型,獲取待識別圖像的預(yù)測概率序列;具體地,對步驟(3.1)中獲取的圖像Itst′的特征向量序列PItst={Xtst1,...,XtstWf},利用步驟(1.2.7)中所述的方法以及訓(xùn)練好的特征解碼器網(wǎng)絡(luò)模型θrnn和軟最大分類器的模型W,獲取圖像的預(yù)測概率分布序列,記為Y={y1,...,yTd},其中Td為步驟(1.2.7)中所述的解碼器的步數(shù);(3.3)利用上述得到的預(yù)測概率序列獲取待識別圖像最終的識別結(jié)果;具體地,對于沒有詞典情況,首先由步驟(1.2.7)所述的特征解碼器網(wǎng)絡(luò)的初始狀態(tài)預(yù)測出第一步的概率分布,取最大概率的字符作為第一個字符,并把第一個字符以及第一步特征解碼器網(wǎng)絡(luò)的狀態(tài)作為第二步的輸入,并計算第二個字符的概率分布,同樣的取概率最大的字符作為輸出,并與第二步的狀態(tài)一道作為下一步的輸入,依次類推直到輸出的概率分布中終止符的概率最大為止或者步長到了預(yù)設(shè)的最大值,則預(yù)測結(jié)束,此時輸出的字符串即為預(yù)測的字符串;對于有詞典的情況,對于詞典中的每個單詞,首先由步驟(1.2.7)所述的特征解碼器網(wǎng)絡(luò)的初始狀態(tài)得到第一步的概率分布,并得到單詞中第一個字符的概率,然后把單詞中第一個字符以及第一步的狀態(tài)作為第二步的輸入,并得到第二步的字符概率分布,并得到單詞中第二個字符的概率,依次進(jìn)行下去,把整個單詞中各個字符的概率相乘就可以得到這個單詞對應(yīng)的概率,算出字典中所有單詞的概率,取概率最大的單詞作為最終的輸出。本領(lǐng)域的技術(shù)人員容易理解,以上所述僅為本發(fā)明的較佳實施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換和改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。