艾合麥提江·麥提托合提,艾斯卡爾·艾木都拉,阿布都薩拉木·達吾提
1.新疆大學 信息科學與工程學院,烏魯木齊 830046
2.新疆大學 軟件學院,烏魯木齊 830046
近幾年,隨著各種多媒體技術以及互聯網技術的迅速發展,各類圖像的數量大幅增加。圖像中不僅包含豐富的色彩、形狀、圖案等物體視覺信息,還可能包含大量豐富而精確的文本信息,準確有效地提取這些文本信息對基于內容的圖像檢索、圖像自動分類、人機交互和工業自動化等應用具有重要價值,因此從圖像中自動提取文本信息已成為模式識別領域研究的熱點[1]。
圖像中的文本根據其形成方式可以劃分為兩類,場景文本和圖像文本。場景文本是指文本作為固有的自然場景內容隨機地存在于圖像中,比如廣告牌、道路指示牌、商品名稱等;而圖像文本則是指有目的地加入圖像以便于對視覺內容進行補充的文本,例如電影海報、互聯網廣告圖像等。通常從圖像中提取文本都需要精確定位包含文本的圖像區域,然后從定位區域把文本提取出來,為進一步的文本識別做好準備,因此圖像中文本區域的定位是文本提取和識別的基礎和核心工作。然而,圖像本身以及圖像中的文本具有多變性,圖像中的文本種類比較多,方向任意排列,文本行的組成方式、大小以及長寬比也不確定,圖像中文本與背景也有一定的相似性,這些因素增加了圖像中文本區域定位的難度。為了準確有效地定位到文本區域,許多學者提出了很多相應的文本區域定位方法,主要分為基于連通域分析的方法、基于滑動檢測窗口的方法和基于深度學習的方法[2]。
基于連通域分析的方法主要通過分析圖像中的像素點在空間結構上的特征,以及對特征相似的像素點進行特定處理來構造連通域,以便獲取文本候選區域。最為代表性的基于連通域分析的方法主要包括:筆畫寬度變換(Stroke Width Transform,SWT)方法[3]、最大穩定極值區域(Maximally Stable Extremal Region,MSER)方法[4-11]以及基于SWT 和MSER 結合的方法[12]。基于SWT 的方法首先獲取圖像的邊緣,然后計算像素點到最近邊緣的垂直距離作為筆畫寬度的值,再根據像素點筆畫寬度的值構造連通區域。基于SWT的方法可以提取不同尺度和方向的文本候選區域,然而該方法在圖像邊緣檢測不準確并且背景復雜的情況下魯棒性較差。基于MSER的方法根據分水嶺概念,通過設定不同的閾值對圖像進行二值化,隨著閾值的變化有些連通區域變化比較小,此類連通區域就定義為最大穩定極值區域(MSER),并將這些連通區域作為文字候選區。無論是英文、數字還是其他文本,MSER 檢測算法都能快速有效地從圖像中提取出文本候選區域,具有很強的魯棒性和實用性,因此ICDAR 大賽組委會將MSER 列為最有希望的文本定位基礎算法[10]。
圖像中文本的語言種類通常較多,甚至會加上一些數字,并且每一種文本包含了不同規模的文本類型,然而不同文本或者相同文本的不同文本類型之間具有很大的視覺特征差異。本文主要研究以維吾爾文本為主的文本圖像。維吾爾文本包括了主體部分和附加部分兩個層次,如圖1所示。主體部分是字母和詞匯書寫時不間斷地一次寫成的部分,屬于一個連通域;附加部分是一個字母和詞匯的次要但又不能省略的部分,即使附加部分與主體部分不連通,但間距比較近;維吾爾文本主要以詞匯為基本單元,每個詞匯包含主體部分和附加部分,詞匯大小不一致,詞匯之間存在較小的詞間間距,而詞內存在更小的詞內間距;維吾爾文本存在一條基線,同一行字體大小一致的詞匯都在基線上分布,高度基本一致,間距大小基本一樣,這些特點為維吾爾文本區域定位提供了思路。

圖1 圖像文本的特點
為了在背景復雜、文本變化不一致的圖像中有效地獲取維吾爾文本候選區域,宋云、謝洪濤等[7]采用增強MSER和基于HoG(Histogram of Oriented Gradient)特征的SVM(Support Vector Machine)分類方法定位維吾爾文本區域。該方法可以獲取比較全面的文本候選區域,但是對維吾爾文本的提取效果不太理想,而且基于HoG 特征的SVM 分類方法去除非文本區域效果不佳,但該文獻提出的遺失文本區域召回方法提高了文本區域定位的召回率。文獻[10]提出基于MSER和卷積神經網絡的自然場景文本定位方法,首先在R、G、B 通道下進行光線補償,緊接著在三個通道下提取MSER連通區域作為字符候選區域,采用更加嚴格的篩選方法和基于CNN(Convolutional Neural Network)過濾的方法比較準確地去除偽字符區域,該方法在文本定位準確率上有了很大的提高,但是沒有對遺失的文本區域進行召回,導致召回率不高。本文借鑒文獻[10]中單通道上進行光線補償的思路,在單通道圖像進行膨脹操作來增加文本區域的連通性,這樣可以獲取更完整有效的文本候選區域,去除非文本區域時采用分類效果更好的CNN 網絡,同時提出詞級別文本區域的概念以及形成算法,然后根據文獻[7]中的遺失文本區域召回方法規定了本文的遺失文本區域召回方法。
本文的主要貢獻是研究如何有效地定位圖像中的維吾爾文本區域,根據上述對維吾爾文本特點的分析提出一種基于通道增強MSER和CNN網絡相結合的圖像文本區域定位方法。本文定位方法準確度高,綜合性能較好,為構建基于內容的文本圖像檢索和自動分類系統提供了理論基礎。
本文方法應用通道增強MSER和CNN網絡完成圖像中維吾爾文本區域的定位任務,算法流程框架如圖2所示。首先利用通道增強MSER 檢測方法提取大量的候選區域,根據圖像文本特點設計的啟發式規則過濾大量的重復區域和非文本區域;利用CNN 網絡對候選區域進行分類并保留文本區域,通過區域融合算法得到詞級別文本區域。根據詞級別文本區域的色彩相近程度和空間關系進行左右尋找,召回滿足條件的遺漏文本區域,再利用CNN網絡進行分類,將預測為文本的召回區域融合到詞級別的文本區域中;根據文本區域空間特征進行鏈接,定位出最終的圖像文本區域。

圖2 文本區域定位算法框架圖
針對文本候選區域的建立而言,最難解決的問題是在背景復雜、文本變化不一致的圖像中有效地提取到文本并建立文本候選區域。為了獲取有效完整的文本候選區域,避免文本區域漏檢現象發生,本文采用通道增強MSER算法提取文本候選區域。
最大穩定極值區域(MSER)是在灰度圖像下進行計算。首先設定一個閾值,然后將灰度圖像每個像素值跟閾值比較,如果該像素值大于閾值,則將此像素值設置為1,反之,將此像素值設置為0。這樣就會出現一系列的連通區域,隨著亮度閾值的不斷調整,區域面積也跟著增加或者減小,兩個不同閾值間的區域變化不超過一定閾值就被認為是穩定極值區域。根據Matas 等人的研究[4],其數學定義如下:

其中,pi表示灰度閾值為i時的某一極值區域,Δ為灰度閾值的微小變化量,qi為當閾值為i時極值區域pi的變化率,在i處取得局部極小值時,則極值區域pi為MSER區域。原始的MSER檢測算法運行速度較慢,因此Nister 等[13]對該算法進行了優化,大大提高了運行速度。本文算法借助于OpenCV 提供的MSER 檢測算子。OpenCV中MSER檢測算子不是利用式(1)計算,而是利用更易于實現的式(2)進行優化。

本文在獲取候選區域的時候采取通道增強的MSER檢測算法,算法流程如圖3所示。首先對輸入圖像的大小進行動態調整,減少圖像太大而消耗較多的檢測時間,以及圖像太小而遺漏文本候選區域。然后對輸入圖像進行通道分離,并分別在R、G、B 三個通道下對單通道圖像進行膨脹操作,使得圖像中維吾爾文本的附加部分盡可能地加入到主體部分形成一個連通域。通常MSER算法用于檢測灰度圖像,但將彩色圖像轉換為灰度圖像時,前景與背景的對比度變弱。一般來說,許多前景在單個R、G 和B 通道中比在灰度圖像中有更明顯的對比度。為了在彩色圖像中盡可能多地保留原始信息和提取文本候選區域,本文分別在增強處理后的R、G、B三個通道上進行MSER區域檢測,合并三個通道下提取的MSER區域作為最后的候選區域,然后將所有候選區域在原始彩色圖像中以最小矩形的形式框出來,如實驗部分的圖11所示。幾乎所有的文本候選區域都可以用通道增強的MSER算法提取出來,候選區域提取結果如圖4(a)所示。

圖3 通道增強MSER檢測算法提取候選區域流程圖

圖4 部分算法結果
通過通道增強MSER 檢測算法能夠提取出大量的候選區域,并在原圖像上以矩形框標定,但其中包括大量的重復區域和非文本區域。根據圖像中維吾爾文的文本特征,通過設定一些簡單的啟發式規則可以過濾明顯的重復區域和非文本區域。本文首先根據標定矩形框的位置關系去除大量完全重復的區域,然后通過計算標定矩形框的面積來去除過大和過小的區域。在一幅圖像中文本區域的尺寸有一定的范圍,本文用矩形框標定區域的面積來表示文本區域的尺寸。根據圖像中維吾爾文本的空間特征以及維吾爾詞匯的大小,將面積小于80的區域作為過小區域,并將面積大于8 000的區域作為過大區域,同時計算標定區域的縱橫比,根據維吾爾文本區域特征分析限定其范圍[0.1,5.0],然后根據區域面積的大小和縱橫比刪除明顯的非文本區域。
通過上面的步驟可以去除大量的重復區域和非文本區域,但仍有一些大面積重疊的區域,如何有效地去除這些重疊區域并盡可能地保留文本區域也很重要。因此,定義區域重疊率r如下:

其中,r(a,b)表示兩個區域的重疊率,area(a)、area(b)表示兩個區域的面積。根據圖像文本的空間特征規定當重疊率r(a)大于等于0.8時,去除面積小的區域,保留面積大的區域。啟發式規則去除重復區域和非文本區域結果如圖4(b)所示。
雖然啟發式規則去除了大量的重復區域和非文本區域,但仍需進一步判定候選區域是否為文本區域。對于一般的分類器而言,往往需要人工設計特征,但這消耗大量的時間,而且特征提取不當,其分類結果也會不太理想。近年來,深度學習在模式識別問題上取得了巨大成功,它通過對訓練樣本進行學習以自動地獲取描述特征的方式,而不需要先進行人工特征提取,因而避免了繁瑣低效的人工特征提取工程[14]。
卷積神經網絡(CNN)是一種用于特征提取以及分類的自動機器學習模型。CNN 網絡包括卷積層、池化層、全連接層、激活函數和評估函數[15]。卷積層的作用是提取圖像的各種特征;池化層的作用是對原始特征信息進行抽象,從而大幅度減少訓練參數,另外還可以減輕模型過擬合的程度;卷積神經網絡最后一層一般是全連接層,在整個卷積神經網絡中起到分類的作用;激活函數的作用是能夠給神經網絡加入一些非線性因素,使得神經網絡可以更好地解決較為復雜的問題;評估函數又稱為損失函數(Loss Function),用來量化在訓練過程中網絡輸出和真實目標間的差距。
為了快速有效地判定候選區域是否為文本區域,本文參考AlexNet[15]設計了一個CNN 二元分類網絡,其深度僅采用5層結構,如圖5所示。該網絡有兩個卷積層、兩個池化層,最后網絡的所有輸出連接了一個二元分類器。首先輸入一個48×32像素的彩色圖像,然后用16個3×3的卷積核去提取輸入圖像的特征,得到一個48×32×16的卷積層,接著使用平均池化來降低卷積層的維度,得到24×16×16 的池化層,緊接著使用32 個5×5 的卷積核提取更高層次的特征,最后通過平均池化來降低卷積層的維度,得到12×8×32 的輸出,將這些特征的輸出全部連接在一個全連接層。其實全連接層就相當于是一個分類器,將上層抽取出來的特征向量在里面做一個權重計算,輸出兩個類別的概率,根據概率值大小來判斷輸入的區域是否為文本區域。
CNN網絡中每個節點參數的有效訓練是取得良好分類性能的關鍵。在訓練CNN模型時,本文采用了可以替代傳統隨機梯度下降過程的一階優化算法Adam,其學習效率設定為0.001,學習率下降的乘數因子(γ)設為0.1,損失函數采用交叉熵損失函數(CrossEntropyLoss)[14]。訓練樣本數據方面,將候選區域從原始圖像中裁剪出來,建立了正負訓練樣本,其中正樣本為文本區域裁剪圖像,負樣本為非文本區域裁剪圖像。根據CNN 網絡的預測結果,去除非文本區域而保留文本區域,如圖6(a)和(c)所示。
經CNN網絡分類之后,保留預測為文本的區域,得到許多文本區域。然而其中一些區域可能存在重疊部分,同時有的附加部分區域沒有完全加入到主體部分區域,如圖6(a)和(c),為此本文根據維吾爾文本特點設計了一個形成詞級別文本區域的融合算法。


圖5 CNN網絡結構圖

通過區域融合算法就可以得到大部分的詞級別文本區域,如圖6(b)所示。然而由于啟發式規則過濾掉少量文本區域、CNN分類網絡存在誤分類情況等原因,導致一些文本區域被遺失,如圖6(d)所示上面的數字部分,將這些遺失的文本區域盡可能多地加入到詞級別文本區域也極其重要。

圖6 部分算法結果
圖像文本中屬于同一個文本區域的文字一般色彩紋理統一,即具有相近屬性且距離也相近,因此根據詞級別文本區域的顏色相近程度以及空間關系進行左右尋找,可以得到遺漏的文本區域和少量的非文本區域。本文根據空間距離、寬高差和候選區域縱橫比等特征距離[8]以及顏色直方圖中的相關性和巴氏距離[16]作為區域色彩相近程度的度量。首先將詞級別文本區域以寬度為基準分成10 等份,計算兩兩之間的巴氏距離和相關性,對所有的巴氏距離和相關性結果計算平均值分別得到一個閾值。然后以等寬等高的滑動窗口在詞級別文本區域左右尋找,將巴氏距離小于巴氏距離閾值并且相關性大于相關性閾值的區域作為遺失的文本區域再次提取出來。將提取出來的候選區域從原始圖像中裁剪出來,再次使用前面用于分類的CNN網絡進行分類,將預測為文本的區域融合到詞級別文本區域,再根據文本區域空間特征進行鏈接,定位出最終的圖像文本區域,如圖7(a)和(b)所示。

圖7 最終的文本區域
本文定位算法主要以圖像中的維吾爾文本為研究對象,然而目前沒有公開的關于圖像中維吾爾文本區域定位的標準數據庫,因此本文收集了386張包含維吾爾文本的圖像,圖像中的文本有不同的字體、大小和顏色。首先對數據集進行劃分,將其中的266張圖片作為訓練集,用于構建裁剪數據集,裁剪數據集總共16 683個樣本,如圖8(a)和(b)所示,其中正樣本為8 485 個文本區域裁剪圖像,負樣本為8 198 個非文本區域裁剪圖像,裁剪數據集用來訓練和測試本文構建的CNN 網絡模型;剩余的120張圖像用于評估本文提出的文本區域定位算法的性能。

圖8 部分訓練樣本實例
本文首先對MSER候選區域提取算子進行實驗,以確保在候選區域獲取過程中提取所有的文本區域。傳統的MSER檢測方法將輸入圖像轉化為灰度圖像,在灰度圖像上提取MSER 區域,如圖9 所示,然而該方法提取的文本候選區域不全面,存在文本區域遺漏現象。針對文本區域遺漏現象,文獻[7]提出分別在R、G、B 單通道上提取MSER 區域,然后合并到彩色圖像上,如圖10所示。該方法可以獲取比較全面的文本候選區域,但是對維吾爾文本的提取效果不太理想,即附加部分沒有完全融合到主體部分的候選區域中。本文針對維吾爾文本特征,提出先分別對R、G、B 單通道圖像進行膨脹操作,使得圖像中維吾爾文本的附加部分盡可能地加入到主體部分形成一個連通域,然后在單通道上進行MSER區域檢測,最后合并到彩色圖像上的方法,如圖11 所示。根據三個方法獲取的候選區域數量和質量的比較,可以得出本文方法能夠提取出更多的候選區域,同時將文本的大部分附加部分加入到主體部分,本文方法更適合維吾爾文本候選區域的提取,具有較好的魯棒性。

圖9 傳統的MSER候選區域提取
本文對CNN網絡訓練方式以及用于訓練和測試的樣本數據大小與CNN 網絡預測性能關系進行了實驗。實驗平臺采用Intel Core i5 CPU、主頻為3.1 GHz 的Mac筆記本,深度學習工具采用PyTorch。本文CNN網絡模型為參考AlexNet設計的一個深度為5層的網絡結構,導入數據時,首先打亂導入數據的順序,并以8∶2的比例對數據進行隨機劃分,分別用于訓練和測試,然后對輸入圖像進行標準化,采用均值為0.485、0.456、0.406,方差為0.229、0.224、0.225 的標準化參數對導入圖像進行變換;訓練時,損失函數采用交叉熵損失函數,優化方法采用可以替代傳統隨機梯度下降過程的一階優化算法Adam。裁剪圖像大小分別為32×24、32×32、48×32、48×48、64×48時CNN網絡預測準確率變化曲線如圖12所示。實驗結果表明,本文構建的CNN 網絡訓練20 到30 輪時模型預測的準確率就趨于穩定。本文采用48×32 裁剪數據集上訓練的網絡模型,同時本文定位算法將候選區域裁剪圖像統一調整為48×32 大小進行分類預測。
為了客觀地評測本文方法的定位性能,采用三個性能參數來衡量,即準確率(Precision,P)、召回率(Recall,R)、綜合評價指標(F-measure,F)[2]。本文采用ICDAR2015評估方法[17],首先定義覆蓋面積比值為:

其中,a0為覆蓋率,Bp和Bgt分別表示定位結果與Ground-truth,area(Bp∩Bgt) 與area(Bp∪Bgt) 分別表示Bp和Bgt之間的交集區域與并集區域。若定位結果與Ground-truth之間的實際面積覆蓋率a0>0.5,則認為該檢測結果為正確的,反之則認為是虛警。準確率(P)與召回率(R)分別定義為:

其中,Tp、E、T分別表示正確的定位結果集合、定位結果集合以及Ground-truth集合。綜合評價指標(F)則定義為:


圖10 增強MSER候選區域提取

圖11 通道增強MSER候選區域提取

圖12 裁剪圖像大小與CNN網絡預測準確率曲線圖
表1 給出了本文算法和文獻[7]、文獻[10]在自建圖像數據集上的性能對比情況。從表中可以看出,本文算法性能優于二者。這主要因為本文算法是基于維吾爾文本的特點提出的,采用通道增強MSER方法提取候選區域,根據維吾爾文本特征的啟發式規則和CNN 網絡去除非文本區域,形成詞級別文本區域以及遺失文本區域召回機制等對于維吾爾文本區域定位都是有效的。

表1 自建數據集上的算法性能對比
本文根據圖像中維吾爾文本區域的空間特征和紋理特征,提出了一種基于通道增強的MSER檢測方法和CNN網絡相結合的圖像文本區域定位方法。該方法利用通道增強的MSER檢測方法提取候選區域,避免了文本區域遺漏現象;采用啟發式規則和CNN 網絡去除非文本區域,提高了去除非文本區域的準確率和速度;最后利用文本的空間特征和紋理特征召回遺失的文本區域,提高了文本區域定位的召回率。實驗結果表明,該算法能夠準確有效地定位文本區域,但在一些質量差、存在模糊、文本區域和背景區域顏色接近的圖像中文本區域定位結果不太理想。因此,如何提高檢測算法的魯棒性及應用性是下一步的研究工作。