沈偉生
摘 要:在互聯(lián)網(wǎng)世界中,圖片是傳遞信息的重要媒介。特別是電子商務(wù)、社交、搜索等領(lǐng)域,每天都有數(shù)以億兆級別的圖像在傳播。自然場景就是我們所處的生活環(huán)境,自然場景圖像中存在著大量的文本信息,例如路標(biāo)信息、商店門店信息、商品包裝信息等。隨著深度學(xué)習(xí)的發(fā)展,基于深度學(xué)習(xí)的文本檢測技術(shù)也逐漸流行起來。文章主要提出的是基于R2CNN的文本檢測算法。在R2CNN算法的基礎(chǔ)上對算法的結(jié)構(gòu)進(jìn)行改進(jìn),最終算法在ICDAR2015數(shù)據(jù)集上的召回率為87.2%,精確率為81.43%。
關(guān)鍵詞:自然場景圖像;文本檢測;R2CNN算法
隨著互聯(lián)網(wǎng)技術(shù)以及便捷式移動設(shè)備的高速發(fā)展,圖像在許許多多場景中取得廣泛的應(yīng)用,如通過手機(jī)拍攝的照片在微信上發(fā)布來分享自己的生活和工作等,圖像中的文本信息更能直觀地呈現(xiàn)出圖像所表達(dá)的內(nèi)容[1]。自然場景就是我們所處的生活環(huán)境,自然場景圖像中的文本多為路標(biāo)信息、商店門店信息、商品包裝信息等,如圖1所示。這些文本信息也發(fā)揮著很重要的應(yīng)用,目前主要應(yīng)用于圖像內(nèi)容識別與檢索、無人駕駛、視覺輔助系統(tǒng)等。因此,自然場景中的文本檢測與識別扮演著越來越重要的角色。
隨著深度學(xué)習(xí)的快速發(fā)展,自然場景下的文本檢測逐漸得到了國際的重視。國際文檔分析與識別會議(International Conference on Document Analysis and Recognition,ICDAR)每兩年都會舉行一次,會上科研人員分享最新的研究成果。雖然傳統(tǒng)的文檔文本檢測與光學(xué)字符識別技術(shù)已經(jīng)趨向于成熟,但是自然場景下的文本檢測仍然是一項極具挑戰(zhàn)性的任務(wù),具有的挑戰(zhàn)有:圖像背景的復(fù)雜性、場景文本的多樣性、圖像分辨率的不確定性[2]。
1 研究現(xiàn)狀
自然場景下的文本檢測是文本識別的核心前端模塊,檢測結(jié)果的好壞直接影響后端的識別效果。目前主流的文本檢測算法都是基于深度學(xué)習(xí)技術(shù)的,主要是對通用的目標(biāo)檢測框架的針對性改進(jìn),使得新改進(jìn)算法滿足新的需求。
深度學(xué)習(xí)強(qiáng)大的特征提取能力,使其在目標(biāo)檢測領(lǐng)域取得出色的檢測效果?;谏疃葘W(xué)習(xí)的文本檢測算法主要可以分為兩類,一類是基于候選區(qū)域的檢測方法,一類是基于回歸的檢測方法[3]。
基于候選區(qū)域的檢測方法主要代表有:(1)Faster RCNN[4]使用區(qū)域候選網(wǎng)絡(luò)(Region Proposal Network,RPN)進(jìn)行候選框的篩選,再使用了感興趣區(qū)域池化(Region of Interest pooling,ROIpooling)將RPN篩選到的候選框進(jìn)行一個統(tǒng)一尺度(7×7)的池化,控制輸入全連接層的維度。(2)R2CNN[5]算法是對Faster RCNN算法的改進(jìn),RPN篩選得到的候選框進(jìn)行ROIpooling的時候,不再是一種尺度(7×7),而是多增加了兩種尺度(3×11,11×3),另外增加了一個傾斜框的回歸。
基于回歸的檢測方法的主要代表有:(1)SSD[6]加入了特征金字塔(Pyramidal Feature Hierarchy),在不同感受野的Feature map上設(shè)置預(yù)置框然后進(jìn)行分類和回歸,這極大地提高檢測的速度。(2)YOLO[7]首選將圖像劃成等分相同大小的格子,然后對每個格子進(jìn)行分類和回歸,檢測速度很快,但是精度不高。
2 本文方法
本文是基于R2CNN算法進(jìn)行改進(jìn)的,R2CNN算法采用的是預(yù)訓(xùn)練網(wǎng)絡(luò)模型的最后一層特征圖輸入RPN網(wǎng)絡(luò),如ResNet101網(wǎng)絡(luò)中的C5層,如圖2所示。雖然高層的特征語義比較豐富,但是往往文本目標(biāo)的位置比較粗糙,常常會造成文本框的定位不準(zhǔn)確以及小文本目標(biāo)被忽略的問題。除此之外,ROIpooling的尺寸過多會造成計算內(nèi)存的溢出,實際情況下實現(xiàn)起來有難度。本文針對R2CNN存在的問題,對R2CNN算法做了如下改進(jìn)。
(1)算法的輸入不再是特征網(wǎng)絡(luò)ResNet101中的C5層,而是將C4層做下采樣操作后和C5層相加得到P1層再輸入RPN1中。除此之外,將C3層做上采樣操作和C2層相加得到P2層再輸入RPN2中。RPN1和RPN2中的scale和ratio的設(shè)置也不同。
(2)對ROIpooling的尺寸進(jìn)行改進(jìn),保留原來的7×7尺寸。由于ICDAR2015數(shù)據(jù)集圖像中絕大數(shù)文本是水平長文本,因此,去除原來的11×3豎直的尺寸,將原來水平的尺寸修改為4×12尺寸。
改進(jìn)后的R2CNN算法步驟如下:
①將C4層做下采樣操作后和C5層相加得到P1層再輸入RPN1中,RPN1中的scale為[256],ratio為[1,1/2,2,3,1/3,4,1/4,5,1/5,6,1/6,7,1/7,8,1/8],得到文本候選框Proposals1。
②將C3層做上采樣操作和C2層相加得到P2層再輸入RPN2中,RPN2中的scale為[32],ratio為[1,1/2,2,3,1/3,4,1/4,5,1/5],得到Proposals2。
③將①和②中得到的候選框合并(concat)起來得到Proposals。
④此時的損失函數(shù)為:
(1)
(2)
其中:Ncls表示RPN中參與訓(xùn)練softmax的候選框個數(shù),Nreg表示RPN中訓(xùn)練邊界框回歸的候選框個數(shù),λ是一個平衡參數(shù)。loss_cls是交叉熵?fù)p失函數(shù),loss_reg是平滑的L1損失函數(shù)。
⑤將③得到的Proposals進(jìn)行ROIpooling操作,ROIpooling的尺寸為7×7和4×12。ROIpooling的操作得到特征圖扁平化(flatten),再輸入全連接操作。
⑥全連接操作后進(jìn)行softmax分類和兩次回歸,一次是水平回歸,一次是旋轉(zhuǎn)回歸,水平回歸有助于旋轉(zhuǎn)回歸。
⑦此時的損失函數(shù)為:
(3)
Lcls(p,t)為交叉熵?fù)p失函數(shù),Lreg(w,w*)為平滑的L1損失函數(shù),λ1,λ2是平衡參數(shù),x,y,w,h分別代表候選框的中心點、寬和高,x1,y1,x2,y2,h代表的是候選框順時針方向的兩點坐標(biāo)和高。
⑧綜上,算法訓(xùn)練過程的總的損失函數(shù)為:
⑨本文改進(jìn)的算法結(jié)構(gòu)如圖3所示。
3 實驗與分析
3.1 實驗數(shù)據(jù)
本實驗采用的是ICDAR2015自然場景文本數(shù)據(jù)集,原訓(xùn)練集圖像為1 000張,通過旋轉(zhuǎn)數(shù)據(jù)增強(qiáng),將訓(xùn)練集擴(kuò)充至20 000張。
3.2 環(huán)境配置
操作系統(tǒng):Ubuntu16.04 LTS,CPU:intel7代8700k,內(nèi)存:16G,GPU:GTX1080ti,深度學(xué)習(xí)框架:Tensorflow-gpu1.2版本。
3.3 參數(shù)設(shè)置
本實驗采用的是在ImageNet數(shù)據(jù)集上預(yù)訓(xùn)練的ResNet101模型,訓(xùn)練的學(xué)習(xí)率設(shè)置為0.000 3,采用固定步長更新學(xué)習(xí)率,訓(xùn)練的迭代次數(shù)為10萬次。
3.4 結(jié)果分析
評價算法的性能與表現(xiàn)采用的是精確率P和召回率R,公式如下:
4 結(jié)語
通過利用多層特征圖的信息,使得文本目標(biāo)的定位更加精確,也使得小的文本目標(biāo)能夠被檢測到,極大地提高了R值。多ROIpooling的操作也使得候選框的信息能夠被更多的提取出送入后續(xù)全連接層等操作,這么做使得P值提高。綜上以上的兩個點改進(jìn),使得改進(jìn)后的算法更加具有魯棒性,可以應(yīng)用于多種自然場景數(shù)據(jù)集(ICDAR2011、ICDAR2013、MSRA-TD500等),并且可以取得可觀的效果。
[參考文獻(xiàn)]
[1]王潤民,桑農(nóng),丁丁,等.自然場景圖像中的文本檢測綜述[J].自動化學(xué)報,2018(12):2113-2141.
[2]夏勇.基于深度學(xué)習(xí)的自然場景文本檢測與識別算法研究[D].西安:西安電子科技大學(xué),2017.
[3]方清.基于深度學(xué)習(xí)的自然場景文本檢測與識別[D].成都:電子科技大學(xué),2018.
[4]REN S,HE K,GIRSHICK R,et al.Faster R-CNN: towards real-time object detection with region proposal networks[J].IEEE Transactions on Pattern Analysis & Machine Intelligence,2015(6):1137-1149.
[5]JIANG Y,ZHU X,WANG X,et al.R2CNN: rotational region CNN for orientation robust scene text detection[J].IEEE Access,2017(7):126-129.
[6]LIU W,ANGUELOV D,ERHAN D,et al.SSD: single shot multibox detector[C].Crete:European Conference on Computer Vision,2016.
[7]REDMON J,DIVVALA S,GIRSHICK R,et al.You only look once: unified,real-time object detection[J].Computer Vision & Pattern Recognition,2015(6):67-71.