羅時婷,顧 磊
南京郵電大學 計算機學院,南京 210023
自然場景圖像中除了含有豐富的紋理、形狀、顏色等低層物理信息,還含有很多蘊涵重要語義的文本信息,這些具有重要語義信息的文本,可以更好地表達場景視覺信息,對描述和人們理解圖片內(nèi)容具有十分重要的作用?,F(xiàn)如今對場景圖像的文本理解,首先是文本檢測,即找到圖像中存在文本的區(qū)域的邊界框;而后是文本識別,對邊界框中的文字進行識別。將這兩步合在一起是端到端文本識別。文本檢測是其中的第一步,也是很重要的一個步驟。目前文本檢測已經(jīng)應用于拍照翻譯軟件、圖書檢索[1]、視頻字幕提取[2]等領(lǐng)域,并且成為近幾年計算機視覺領(lǐng)域的熱門研究話題。
目前,自然場景文本檢測主要分為兩類:基于傳統(tǒng)手工設(shè)計特征的文本檢測和基于深度學習的文本檢測?;趥鹘y(tǒng)手工設(shè)計特征的文本檢測,依賴于手動設(shè)計的特征,大多是基于字符的,即先對字符進行檢測,然后將字符進行關(guān)聯(lián)組合。Epshtein等人提出了筆畫寬度變換算子(Stroke Width Transform,SWT),通過將原圖變換成筆畫寬度映射圖,再結(jié)合幾何推理恢復出文本的形態(tài),提取背景圖像中的文本[3]。Neumann 等人提出的基于最大穩(wěn)定極值區(qū)域(Maximally Stable Extremal Regions,MSER)的算法通過從圖像中提取MSER區(qū)域,利用形態(tài)學操作和幾何規(guī)則來檢測文本所在區(qū)域[4]。趙宇提出基于形態(tài)學濾波的MSER,實驗證明改進后的筆畫寬度變換算法能夠很好地保持字符區(qū)域的完整性[5]。易堯華等人采用MSCR(Maximally Stable Color Regions)算法與MSER算法提取候選字符區(qū)域,然后用檢測器對字符區(qū)域進行檢測[6]。最近,哈恩楠等人將對象建議算法與傳統(tǒng)MSER算法相結(jié)合進行文本檢測,相比傳統(tǒng)MSER 算法檢測效果較好[7]。近年來,隨著神經(jīng)網(wǎng)絡(luò)的發(fā)展[8],先后誕生了R-CNN[9(]Regions with CNN)、Fast R-CNN[10]、SSD[11]、ResNet[12]等目標檢測算法,這些高效的算法在現(xiàn)實生活中得到了廣泛的應用[13-14],并且推動了文本檢測的發(fā)展。在2015年,Zhang等人提出利用全卷積網(wǎng)絡(luò)(Fully Convolutional Networks,F(xiàn)CN)[15]生成特征圖,并使用分量投影進行方向估計,檢測效果較好[16]。在 2016 年,Tian 等人提出CTPN(Connectionist Text Proposal Network)[17],通過垂直候選框機制,構(gòu)建了CNN-RNN(Recurrent Neural Network)聯(lián)合模型來檢測文本行,對于水平方向上的文字檢測效果較好,但是對于多方向上的文字檢測效果不好。Yao 等人提出將圖像以整體的方式來進行文本檢測,將FCN 應用于文本檢測,獲得了較好的檢測結(jié)果[18]。在2017 年,Zhou等人[19]提出了一個高效、準確的檢測器(Efficient and Accurate Scene Text Detector,EAST),是基于U-Net[20]機制的全卷積神經(jīng)網(wǎng)絡(luò),非極大值抑制(Non-Maximum Suppression,NMS)[21]是其后處理部分,通過直接檢測圖像中的文字或文本行,放棄了不必要的中間過程,并且可以檢測不同尺度和不同方向上的文本行,在性能和速度上都明顯優(yōu)于以前的方法。與傳統(tǒng)手工設(shè)計特征方法相比,這些基于深度學習的文本檢測方法[16-19,22]在諸如ICDAR[23-25]的自然場景文本檢測比賽中獲得更好的準確率。
EAST 網(wǎng)絡(luò)盡管在文本檢測中有著較好的表現(xiàn),但是它仍然存在著不足,本文就是在深入研究EAST網(wǎng)絡(luò)的基礎(chǔ)上,針對EAST 的缺陷,對它的損失函數(shù)部分進行了改進,將一種損失函數(shù)Balanced loss,利用加權(quán)方法融入EAST中,形成一種新的深度神經(jīng)網(wǎng)絡(luò)。文中將融入損失函數(shù)后的網(wǎng)絡(luò)簡稱為Balanced EAST,實驗結(jié)果表明能有效提升網(wǎng)絡(luò)的檢測準確性。
EAST 網(wǎng)絡(luò)[23]是一個深度神經(jīng)網(wǎng)絡(luò)模型,整體網(wǎng)絡(luò)結(jié)構(gòu)如圖1 所示。首先,輸入一組圖像,通過網(wǎng)絡(luò)訓練后輸出得分結(jié)果Y^ ;然后,計算Y^ 與真實標簽Y之間的損失值L;最后,將損失值反向傳播到網(wǎng)絡(luò)中,通過優(yōu)化函數(shù)進行網(wǎng)絡(luò)參數(shù)的更新。提取特征圖、合并特征圖、輸出層是EAST網(wǎng)絡(luò)的三個關(guān)鍵部分。
特征圖提取,先用一個通用的網(wǎng)絡(luò)ResNet 作為基礎(chǔ)網(wǎng)絡(luò)用來提取特征圖。輸入尺寸為512×512×3的一組圖像,512×512為圖像的長和寬,由于是彩色圖像,每個像素由3個RGB(紅黃藍)值組成,因此圖像的通道數(shù)為3。這些圖像首先被送入卷積核大小為7×7,個數(shù)為16個的卷積層進行卷積(conv)操作,特征圖尺寸變?yōu)?56×256×16;接著,依次經(jīng)過4 個卷積塊(Block),首先通過Block1,得到尺寸為 128×128×256 特征圖f4,再通過Block2,得到尺寸為 64×64×512 的特征圖f3,再通過Block3,得到尺寸為32×32×1 024 的特征圖f2,最后通過Block4得到尺寸為16×16×2 048的特征圖f1。其中,Block1、Block2、Block3、Block4對應ResNet中的Conv2_x、Conv3_x、Conv4_x、Conv5_x 部分,包含多個卷積層,根據(jù)對圖像不同尺寸的需求,提取ResNet 中對應尺寸的特征圖。
特征圖合并,將提取的特征圖逐步進行合并,合并的規(guī)則采用了U-Net[24]的思想。首先,將特征圖f1進行上池化(unpool)操作,得到擴充后尺寸變?yōu)?2×32×2 048的特征圖g1;其次,將特征圖g1與低一層的特征圖f2沿通道軸合并成為一個特征圖,將合并后的特征圖依次通過卷積核大小為1×1、個數(shù)為128的卷積層,卷積核大小為3×3、個數(shù)為128的卷積層,得到尺寸為32×32×128的特征圖h1;再次,將得到的特征圖h1與f3、f4進行同樣的合并操作;最后,將輸出的特征圖通過卷積核大小為3×3、個數(shù)為32的卷積層,得到尺寸為128×128×32的特征圖。一些相關(guān)公式如下:
其中,gi是合并前的特征圖;hi是合并后的特征圖;fi對應提取的特征圖;[;]代表將特征圖沿通道軸進行連接;conv3×3代表將特征圖送入卷積核大小為3×3 的卷積層進行卷積操作,conv1×1代表將特征圖送入卷積核大小為1×1的卷積層進行卷積操作。
輸出層,輸出包含文本得分和幾何得分。文本得分為1通道的特征圖,尺寸為128×128×1,分數(shù)為每一像素點屬于文字的置信概率。幾何得分為4 通道的特征圖和1通道的特征圖組成,尺寸分別為128×128×4、128×128×1,對應的分數(shù)是像素點到文本框4 個邊界的距離和文本框的旋轉(zhuǎn)角度。i代表特征圖合并的階段數(shù)。
通過網(wǎng)絡(luò)的輸出層,EAST 會對每張圖像檢測出近萬個文本框,為了得到最終的文本檢測結(jié)果,最后還要用到NMS 進行圖像的后處理,對檢測出的文本框去除冗余。
NMS(即引言中介紹的非極大值抑制后處理方法)是文本檢測的后處理過程,如圖2 所示,在網(wǎng)絡(luò)檢測出所有文本框后,用來對這些文本框去除冗余,具體步驟如下:
(1)對所有輸出的文本框進行遍歷,計算兩兩文本框的交疊率(Intersection-over-Union,IOU),將高于閾值β1的文本框通過加權(quán)平均文本框的坐標及得分進行合并,得到合并后的文本框集合。
(2)根據(jù)合并后的文本框置信度做降序排列。
(3)從第一個文本框開始,將剩余文本框中與該文本框的交疊率IOU大于閾值β2的文本框剔除。
(4)對于剩余的文本框集合,如果僅剩一個文本框,算法結(jié)束;否則,重復執(zhí)行(3)操作。
圖2 檢測結(jié)果示例
EAST 網(wǎng)絡(luò)的輸出包含文本得分損失Ls和幾何得分損失Lg。其中Ls為1個通道的像素置信概率,置信區(qū)間為[0,1],越靠近1代表越有可能為文字。Lg由4個通道的軸對稱邊界框(簡稱AABB)和1個通道的旋轉(zhuǎn)角度θ組成,其中AABB的4個通道分別表示從像素位置相對于文本框的頂部、右側(cè)、底部、左側(cè)邊界的偏移,記作旋轉(zhuǎn)角度記作。因此,損失函數(shù)可以表示為:
式中,Ls和Lg分別表示文本得分和幾何得分的損失;Ls采用的是Dice loss[26];λg表示文本得分和幾何得分損失之間的權(quán)重,在實驗中設(shè)置為1;為模型預測得到的文本得分;y為像素點真實得分;Lg中AABB損失采用的是IOU損失,具體如下:
其中,代表預測得到的文本框;R為其對應的真實文本框;|·|用于計算文本框的面積;|計算的是文本框R^ 的面積;|R|計算的是文本框R的面積計算的是文本框相交區(qū)域的面積,|R^ ∪R|計算的是文本框并集的面積;IOU 計算的是兩個文本框的交疊率,文中所提到的交疊率均由此計算得到。
最后,總體的幾何得分損失為AABB損失和角度損失的加權(quán)和,由下式給出:
其中,Lθ為旋轉(zhuǎn)角度的損失;λθ表示AABB 損失與角度損失之間的權(quán)重;是對旋轉(zhuǎn)角度的預測;θ表示真實旋轉(zhuǎn)角度。
在神經(jīng)網(wǎng)絡(luò)的訓練中,定義和優(yōu)化損失函數(shù)能直接影響模型的訓練結(jié)果。因此,損失函數(shù)在整個網(wǎng)絡(luò)的設(shè)計中占有十分重要的地位。在網(wǎng)絡(luò)的訓練過程中,樣本損失值越高,模型越專注于學習這些樣本的特征,從而檢測結(jié)果越準確。在EAST的損失函數(shù)中,文本得分所采用的是Dice loss,計算的是預測的文本框與真實的文本框的交疊率,較為單一,使得模型訓練時忽視了對文本邊界框的修正。同時,由于EAST在進行圖像后處理之前會對每張圖像檢測出近萬個文本框,這些文本框可分為四類:難檢測正文本框、易檢測正文本框、難檢測負文本框和易檢測負文本框。如圖3所示,是四類文本框的示意圖,圖中紅色標記1、2 代表圖像的真實文本框,綠色標記3、4、5、6 代表預測的文本框。其中預測文本框中與真實文本框交疊率大于0.5 的為正文本框,其余為負文本框。正文本框分為難檢測和易檢測兩種,難檢測正文本框中不僅包含背景還包含了文字,易檢測正文本框中僅包含文字,與正文本框一樣,負文本框也分為難檢測和易檢測兩種。圖中標記3為難檢測負文本框,標記4為難檢測正文本框,標記5為易檢測正文本框,標記6為易檢測負文本框。由于圖像中背景區(qū)域較多,將導致易檢測負文本框損失值占總損失值較大比例,這些易檢測文本框本身就能被模型很好地檢測,模型很難從這些文本框的特征中獲得更多的信息,如果訓練中關(guān)注這些易檢測文本框,將影響模型優(yōu)化的方向,而難檢測文本框更能指導模型優(yōu)化的方向。因此,專注易檢測文本框部分的參數(shù)更新并不會改善模型的學習能力,甚至影響模型的訓練效果,從而影響模型的檢測效果,這一問題是EAST中使用的損失函數(shù)無法解決的。本文正是針對這個問題,將一種損失函數(shù)Balanced loss,利用加權(quán)方法融入EAST中,構(gòu)成了Balanced EAST,使網(wǎng)絡(luò)修正文本邊界框的同時專注于學習難檢測文本框中的復雜特征。
圖3 文本框類別示例
Focal loss是用于解決單通道目標檢測過程中存在的難檢測目標與易檢測目標不均衡問題的損失函數(shù),在目標檢測任務(wù)中有效提高了檢測的性能[27]。Focal loss的公式為:
其中,γ取值范圍為大于0,用來對易檢測文本框進行權(quán)重抑制;α是調(diào)節(jié)正負文本框所占權(quán)重而設(shè)置的加權(quán)因子,取值范圍為[0,1],α權(quán)重越小,負文本框所占損失值將越高,在訓練時會更受模型的關(guān)注,反之α越大,正文本框會更受模型關(guān)注。
目標檢測是將圖像中所有目標進行分類,并識別它們的邊界,在文本檢測問題中是識別圖像中所有文本行的邊界。由于文本行的文字與文字之間有空隙,如果將應用于目標檢測的Focal loss 直接應用于EAST 中,存在邊界檢測模糊的障礙,從而會導致文本框邊界定位不準。Balanced loss 在Focal loss 的基礎(chǔ)上進行改進,加入權(quán)重抑制因子d,對于正文本框存在邊界框檢測不準確的情況,相對減少損失函數(shù)中靠近文本框中心區(qū)域像素的損失值,提高靠近文本框邊界像素的損失值,從而弱化模型對于文字與文字間空隙的關(guān)注,使得模型更加關(guān)注于文本行的邊界。Balanced loss的公式為:
其中,y∈{0,1}是真實標簽,是預測值;d用來對靠近文本框中心的像素進行權(quán)重抑制,權(quán)值抑制的對象是圖像中的正文本框,越靠近文本框中心的像素點損失值越低;d1、d2、d3、d4分別表示從一個像素點到其所在真實的文本框的頂部、右側(cè)、底部和左側(cè)邊界的距離。
利用加權(quán)的方法,將Balanced loss 與EAST 的文本得分Ls進行融合,得到的Balanced EAST 損失函數(shù)的文本得分為:
其中,λ表示 Dice loss 與 Balanced loss 之間的權(quán)重,取值范圍為[0,1]。實驗中為驗證融合損失函數(shù)對實驗效果的影響,這里采用平均加權(quán)的方式,將參數(shù)λ設(shè)置為0.5。融合后的Balanced EAST損失函數(shù)為:
針對EAST 解決不了的難易文本框數(shù)量不平衡導致的檢測性能不佳問題,融合后的Balanced EAST進行了解決,保留了EAST整體網(wǎng)絡(luò)設(shè)計簡潔并且可以檢測多尺度文本行的優(yōu)勢,進一步提升了整體檢測的準確性。
CN-Text 是在數(shù)據(jù)集 http://rrc.cvc.uab.es/?ch=15 中選取的590 張中文圖像,其中400 張用于訓練,190 張用于測試,圖像的分辨率在280×210到5 184×3 456內(nèi),場景中文本是多方向的。
為了進一步驗證本文方法,還在公共競賽數(shù)據(jù)集ICDAR 2015 上進行了實驗。ICDAR 2015 是ICDAR 2015 Robust Reading Competition[22]的公開競賽數(shù)據(jù)集,包含英文文本,一共1 500張圖像,其中1 000張用于訓練,500 張用于測試,分辨率均為1 280×720。這些圖像是用手機隨機拍攝的生活場景,存在圖像模糊和低分辨率的情況,并且場景中文本是多方向的。
實驗硬件環(huán)境:64位Intel E5-2603 v4@1.70 GHz×6 CPU,15.6 GB RAM,顯卡為NVIDIA Quadro K640 4 GB,操作系統(tǒng)為ubuntu16.4。
神經(jīng)網(wǎng)絡(luò)參數(shù)設(shè)置:Balanced EAST 中,根據(jù)GPU內(nèi)存大小將每次迭代輸入圖像的數(shù)量設(shè)置為3,將CN-Text最大迭代次數(shù)設(shè)置為10萬次,訓練時間大約為20 h,將ICDAR 2015 最大迭代次數(shù)設(shè)置為5 萬次,訓練時間大約為10 h。由于文獻[27]的實驗中已證明γ取值為2時網(wǎng)絡(luò)效果最好,這里設(shè)置式(8)中γ=2。由于兩個數(shù)據(jù)集中前景背景占比不同,α在兩個數(shù)據(jù)集上設(shè)為不同的值,在CN-Text中文字占比較多,設(shè)置α=0.5,在ICDAR 2015 中背景較多,設(shè)置α=0.3。經(jīng)測試λ=0.5 時檢測效果最好,因此設(shè)置式(10)中λ=0.5。CTPN 中,每次迭代輸入圖像的數(shù)量設(shè)置為3,其余參數(shù)值均不變。以下設(shè)置與EAST 的網(wǎng)絡(luò)設(shè)置保持一致,采用50-layer 的ResNet作為提取特征圖的通用網(wǎng)絡(luò),輸入圖像的尺寸均改變?yōu)?12×512×3,使用ADAM 優(yōu)化函數(shù)進行訓練,學習率初始值為1E-3,每經(jīng)過1 萬次迭代訓練后衰減為原來的0.94,到1E-5停止,式(6)中λθ=20,NMS中閾值β1和β2均設(shè)置為0.35。
在實驗中,對于CN-Text 和ICDAR 2015 這兩個數(shù)據(jù)集采用相同的評估標準,即來自ICDAR 2015比賽的評估標準,有三個評估指標,分別是回歸率(Recall)、準確率(Precision)和F值(F-score),計算公式如下:
其中,G是真實的文本框集合;D是預測的文本框集合;match用于計算兩個集合中互相匹配的文本框數(shù)量,即檢測準確的文本框數(shù)量。F-score綜合Recall與指標Precision的評估指標,用于綜合反映總體結(jié)果的指標。
在CN-Text數(shù)據(jù)集上,本文對提出的Balanced EAST與EAST、CTPN算法進行實驗,并對結(jié)果進行對比分析。在CN-Text 數(shù)據(jù)集上進行模型的訓練,如圖4 所示,是ICDAR 2015數(shù)據(jù)集的圖像在本文提出的Balanced EAST與EAST、CTPN 文本檢測方法上的實驗結(jié)果對比圖。圖4(a)為CTPN實驗結(jié)果圖,圖4(b)為EAST實驗結(jié)果圖,圖4(c)為Balanced EAST 實驗結(jié)果圖,圖4(d)為真實結(jié)果圖。
從圖4可以看出,第一張圖像中文字是一個長的文本行,真實結(jié)果(d)檢測出的是一個長的文本框,其中CTPN 沒有檢測到文本區(qū)域,EAST 檢測出文本行中的三個文字,而且是小尺度的,Balanced EAST 檢測的結(jié)果是三個長尺度的文本框,圖像中的所有文字均包含在文本框中。第二張圖像包含較長文本行與短文本行,字體大小不一,真實結(jié)果(d)檢測出來的是五個文本框,包含小尺度和大尺度的文本框,CTPN僅檢測出一個文本框,EAST檢測出四個文本框,包含的文字為真實結(jié)果的1/2,Balanced EAST 檢測的結(jié)果是五個文本框,包含圖像中的所有文字。可以得出,Balanced EAST能夠更加有效地檢測出圖像中所有文字。
圖4 CN-Text數(shù)據(jù)集的結(jié)果對比
表1 列出的是在CN_Text 數(shù)據(jù)集上,采用相同評估標準,得到的 Balanced EAST 與EAST、CTPN 的評估結(jié)果。從表中結(jié)果可以得出,Balanced EAST得到的回歸率、準確率、F值均優(yōu)于EAST、CTPN。其中F值為綜合指標,最具有說服力,在Balanced EAST 中,F(xiàn)值達到 0.545 6,比EAST 提高0.039 0。由于CN-Text 數(shù)據(jù)集數(shù)量較少,且為中文數(shù)據(jù)集,中文的字符復雜度較高,檢測難度大,Balanced EAST表現(xiàn)出的優(yōu)勢不明顯。
表1 CN-Text數(shù)據(jù)集的評估結(jié)果
在ICDAR 2015 數(shù)據(jù)集上,本文對提出的Balanced EAST 與EAST 進行實驗,對實驗結(jié)果進行分析。在ICDAR 2015數(shù)據(jù)集上進行模型的訓練,如圖5所示,是CN-Text數(shù)據(jù)集的圖像在本文提出的Balanced EAST與EAST上的實驗結(jié)果對比圖。圖5(a)為EAST實驗結(jié)果圖,圖5(b)為 Balanced EAST 實驗結(jié)果圖,圖5(c)為真實結(jié)果圖。
圖5 ICDAR 2015數(shù)據(jù)集的結(jié)果對比
從圖5 第一張圖像的檢測結(jié)果可以看出,EAST 存在兩個誤檢的文本框,Balanced EAST不存在誤檢的文本框,并且檢測出的文本區(qū)域包含的文字比EAST檢測出的更多。第二張圖像中,EAST對邊框的檢測不準確,出現(xiàn)了文本框間重疊的現(xiàn)象,Balanced EAST對邊框的檢測較為準確,不存在文本框重疊現(xiàn)象,檢測結(jié)果最為接近真實結(jié)果(c)。綜上可以得出,Balanced EAST 相比EAST誤檢較少,對文本框的檢測更精確。
為了進一步驗證Balanced EAST的有效性,將Balanced EAST 與 EAST 的評估結(jié)果與文獻[16]、文獻[18]、文獻[28]、ICDAR 2015 比賽的評估結(jié)果進行對比。表2列出的是在 ICDAR 2015 數(shù)據(jù)集上,Balanced EAST 與EAST,以及 Zhang 等人提出的算法 MCLAB_FCN[16]、Yao 等人提出的算法CCNF[18]、Koo 等人提出的算法AJOU[28]、ICDAR 2015 比賽的評估結(jié)果[25]對比,采用的是相同的評估標準,其中ICDAR 2015 比賽結(jié)果包括CNN MSER、NJU、StradVision1。表2 中的EAST*為重設(shè)參數(shù)后復現(xiàn)的實驗結(jié)果。從表2 可以得出,Balanced EAST 的F值達到較高的 0.721 5,Balanced EAST 相比EAST 回歸率提高0.070 3,準確率提高0.068 2,F(xiàn)值提高0.069 3,Balanced EAST的檢測結(jié)果更好,優(yōu)勢明顯。
表2 ICDAR 2015數(shù)據(jù)集的評估結(jié)果
綜合以上CN_Text 和ICDAR 2015 數(shù)據(jù)集的實驗結(jié)果,與EAST相比,損失函數(shù)融合后的Balanced EAST整體檢測效果更好,檢測出的文本框邊框更為精確,漏檢、誤檢的現(xiàn)象較少。
本文提出基于損失函數(shù)融合的深度神經(jīng)網(wǎng)絡(luò),利用加權(quán)的方法在傳統(tǒng)深度神經(jīng)網(wǎng)絡(luò)中融合Balanced loss,對于難檢測像素點,通過增加其得分在損失函數(shù)中所占的比例,使模型更關(guān)注于復雜特征,提升模型的學習能力,同時不影響迭代速度。實驗結(jié)果表明,本文提出的基于特征融合的深度神經(jīng)網(wǎng)絡(luò),在繼承了傳統(tǒng)神經(jīng)網(wǎng)絡(luò)能夠檢測不同尺度、多方向的文本行的基礎(chǔ)上,整體提高了檢測的準確性。