潘 立 劉亮亮 張再躍
(1.江蘇科技大學計算機科學與工程學院 鎮江 212003)(2.上海對外經貿大學統計與信息學院 上海 201620)
在人們的生活空間中,存在大量的環境信息,如街道上的標識、商場里的廣告牌、貨柜上的商品信息等,這些環境信息可以為人們的日常生活和工作提供極大便利。隨著信息處理智能化程度的不斷提高,人們對智能信息的依賴也與日俱增。因此,對環境信息的智能化處理與應用越來越受到人們的重視。環境信息文本處理是環境信息智能處理的重要內容,其中,文本定位與文本識別是文本智能化處理的關鍵[1]。
環境信息智能處理又稱自然場景信息智能處理。近年來許多國內外學者對自然場景中文本檢測和定位進行了研究。目前,文本定位方法主要分為滑動窗口法和連通域分析法兩種類型。滑動窗口方法[2]實現的原理是在給定的自然場景圖片中,使用一個移動的窗口對所有位置進行文本檢測。該方法可以獲得較高的召回率,但其計算量十分龐大且計算時間過長。連通域分析方法[3]主要是通過選取圖像的特征,例如基于顏色特征[4]、幾何特征[5]、最大穩定極值域[6]、筆畫寬度變化特征[7]等,并根據特征來獲取候選連通域,最后對連通域進行篩選及合并,最終實現文本定位。該方法計算速度快,但易出現誤篩等情況,致使召回率較低。Lee等[8]提出一種基于Canny 算子檢測文本域的算法,首先通過Canny 檢測算子對圖像進行邊緣化處理,然后進行水平投影分析,并結合先驗規則過濾非文本域,最終獲取文本域位置。Matas 等[10]提出了最大極值穩定區域算法,通過對灰度圖像閾值的變化尋找到最大穩定極值區域,并利用最大極值穩定區域的仿射不變性來獲取文本區域。Epshtein 等[11]提出了一個基于筆畫寬度特征的方法來檢測自然場景中的文本。該方法通過提取筆畫寬度特征生成連通域,然后判斷并濾除非文本域,最后合并得到最終結果。該方法能夠很好地解決多字體的問題,但定位效果依賴邊緣檢測效果。
本文對目前常用文本定位方法的特點進行分析,提出一種將最大極值穩定區域(maximally stable extremal regions,MSER)和筆畫寬度變化特征(SWT)相結合的文本定位方法,并優化筆畫寬度變化特征提取,以達到提高其文本定位的準確度的目的。實驗結果表明,該方法能夠很好地在自然場景中檢測到文本域,并對多樣化呈現的文本信息具有較好的定位與檢測能力,并且適用于多種字體語言。
自然場景圖像中的文本會由于拍攝角度不同而產生不同程度的形變,Matas 等[10]提出的最大極值穩定區域算法能夠在不同視角中仍取得較好的文本檢測效果。最大穩定極值區域是一種依賴于區域內部和邊界像素關系,根據穩定性判定條件來獲取最大穩定極值區域的算法。該算法借鑒了分水嶺算法的思想,具有仿射不變性、良好的穩定性以及快捷高效等特點。最大穩定極值區域可用數學的方法定義如下:
1)灰度函數:定義映射I:D?Z2→S,其中Z是整數集,D 表示圖像像素區域,S={0,1,…,255}表示灰度值序列。對任意p∈D,I(p)表示像素點p的灰度值。
2)鄰接關系。考慮4-鄰域鄰接關系,記為A?D×D。對任意D 中的像素點p=(p1,p2) 和q=(q1,q2),如果則稱p,q是鄰接的,記為pAq。
3)連續區域:設Q是D的一個子集。如果對于任意p,q∈Q,均存在一個序列p,a1,…,an,q,使得pAa1,…,ai Aai+1,…,anAq,則稱Q是D的一個連續區域。
5)極 值 區 域 :對 區 域Q?D,如 果 對 任 意p∈Q,q∈?Q,均有I(p)>I(q),則區域Q是極大區域,反之為極小區域。
6)MSER:Q1,…,Qi-1,Qi,… 是一系列嵌套極值區域,有Qi?Qi+1。如果滿足q(i)=|Qi+ΔQi-Δ|/|Qi|在i*有局部最小值,則Qi*是最大極值穩定區域MSER,其中Qi表示二值化閾值對應的圖像中任意極值區域,當二值化閾值在[i-Δ,i+Δ]變化時,極值區域也相應地從Qi-Δ變化為Qi+Δ,|·|代表集合的基數,本文中表示極值區域的面積,q(i)代表在閾值為i時極值區域的變化率,若閾值為i*時,變化率q(i)局部最小,則該極值區域Qi*為最大穩定極值區域(即當閾值的變化對區域面積的影響很小時,該極值區域為最大穩定極值區域)。
筆畫寬度變換[11]是一種計算圖像中最有可能是筆畫的像素點所包含的寬度信息的方法。一般來說,自然場景中的文本具有較為固定的筆畫寬度,因此可以基于這一特征獲取文本區域。
首先將每個元素的初始筆畫寬度值設為無窮大,在用邊緣算子獲取到邊緣信息以后,將每個邊緣像素點a的梯度方向稱為da。由于邊緣像素點a是在邊緣上的,因此梯度方向da一定垂直于邊緣方向。定義一條射線r=a+n?da,n>0。沿著這條射線方向找另一個邊緣像素點b。如果b的梯度方向 db與 da方向近似相反(db=-da+π/6),則a、b兩像素間的距離就是該像素點的筆畫寬度值,記作如果沒有找到對應的邊緣像素點b或者邊緣像素點b的梯度方向db和da不相反,則將該射線r丟棄。
然而在如筆畫拐角這樣更為復雜的筆畫環境中,根據上述的計算流程得到的筆畫寬度值并不準確。因此需計算出所有未丟棄射線的筆畫寬度中值m,若射線上有像素點筆畫寬度值大于m,則將其筆畫寬度值設置為m。
傳統的MSER 算法盡管能夠獲取大多數的文本區域,但對于受光照強度影響較大的文本域,效果不夠理想。因此本文提出了一種融合MSER 及SWT的文本定位方法,并優化了傳統筆畫寬度計算方法。本文在用MSER 算法檢測獲得初定文本域的基礎上,對文本域提取優化的筆畫寬度變化特征,以此提高文本定位的準確度。首先計算灰度圖像的最大極值穩定區域并獲得文本域,然后對圖像進行Canny 算子[12]邊緣檢測提取圖像的邊緣特征,加入形態學操作處理邊緣圖像來優化圖像邊緣化效果。基于圖像邊緣像素點計算筆畫寬度值,并根據筆畫寬度變化特征等生成候選連通域,最后通過規則過濾非文本域并合并連通域得到最終結果。本文方法利用最大穩定極值區域的仿射不變性和筆畫寬度特征可以檢測不同字體文本的特點,提高結果的準確度。具體流程如圖1所示。

圖1 算法流程圖
由于自然場景中獲取的圖像會因拍攝角度不同,導致文字產生不同程度的形變,而最大極值穩定區域算法能夠在不同視角中仍取得較好的文本檢測效果。因此文本首先采用了最大極值穩定區域算法來獲取部分文本域。對輸入圖像進行灰度化處理,并根據4-鄰域定義及極值區域定義在灰度圖形中產生一系列嵌套的極值區域,通過計算|Qi+ΔQi-Δ|/ |Qi|的局部最小值來獲得最大穩定極值區域,即初定的文本域區域,處理結果如圖2所示。

圖2 MSER檢測
傳統的SWT 特征計算方法是基于邊緣像素點進行計算的,因此筆畫寬度變換特征提取效果的好壞很大程度上依賴于圖像邊緣化的效果。為此,本文對比了常用的邊緣檢測算子Sobel算子、Robel算子和Canny 算子的邊緣化效果,采用了邊緣化效果最好的Canny 算子來進行邊緣化處理。首先使用二維高斯函數,按行和列對圖像f(x,y)進行平滑去噪,高斯函數G(x,y)和高斯濾波器濾波后的圖像I(x,y)如下:

其中σ是高斯曲線的標準差,然后計算濾波后圖像梯度的幅度和方向,求出每個像素點的梯度幅度和方向。設梯度為(gx,gy) ,則梯度的幅度M(x,y)和方向θ(x,y)的計算公式如下:

然后對梯度圖像進行非極大值抑制處理,沿梯度方向比較每一個像素的8-鄰域的梯度幅度。找出圖像梯度中的局部極大值點,把其他非局部極大值點置零,對邊緣進行細化,再用雙閾值算法檢測和連接邊緣,選擇兩個閾值,根據高閾值得到一個含有很少的假邊緣的邊緣圖像,但是由于閾值較高,產生的圖像邊緣可能不閉合,因此采用了另外一個低閾值。在高閾值圖像中把邊緣鏈接成輪廓,當到達輪廓的端點時,該算法會在斷點的8-鄰域點中尋找滿足低閾值的點,再根據此點收集新的邊緣,直到整個圖像邊緣閉合。不同邊緣檢測算子實驗對比如圖3所示,根據對比圖可以看出,Canny算子的邊緣化效果優于另外兩種邊緣檢測算子。因此本文方法選用Canny算子來邊緣化圖像。

圖3 邊緣算子圖像效果對比
為了進一步提升圖像邊緣化效果,本文對筆畫寬度值計算進行了優化。本文加入了形態學[13]操作的開、閉運算來提升邊緣圖像效果。開運算[17]即先對圖像進行腐蝕操作,然后對圖像進行膨脹操作,使圖像邊緣更加平滑,去掉邊緣上的一些參差的毛刺,去除狹窄的區域。閉運算[17]即先對圖像進行膨脹操作,然后對圖像進行腐蝕操作,它能去除區域中的噪聲,填充狹窄斷裂的部分以及邊緣的缺口。本文通過形態學操作強化的圖像的邊緣特征,接下來筆畫寬度變化特征的提取提供更好的環境。圖4 為傳統邊緣化方法效果以及本文方法優化邊緣化方法效果對比圖,可以清楚地看到優化后的圖像邊緣化效果有了明顯的提高。

圖4 邊緣圖像優化前、后對比
在邊緣圖像優化后,對邊緣圖像進行筆畫寬度特征(SWT)提取。沿著邊緣化圖像中的每一個邊緣像素點a的梯度方向da尋找與其梯度方向相反的另一個邊緣像素點b,若b的梯度方向db與da方向近似相反,即db=-da+π/6,則這兩個像素點間距離為筆畫寬度值。將兩像素點連線上所有像素點筆畫寬度值均設為該筆畫寬度值。若在兩像素點間存在一像素點s已被設置筆畫寬度值,則比較原有筆畫寬度值和現有筆畫寬度值sswt,并將小的筆畫寬度值賦給像素點s。在對一些在筆畫拐角出的像素點進行筆畫寬度值計算時,可以遍歷有效筆畫寬度射線r上所有像素點,若存在像素點的筆畫寬度值大于射線r上像素點的筆畫寬度中值m,則將筆畫寬度中值m賦給該像素點。常見的語言文字都具有筆畫寬度平穩變化的特征,因此該方法能夠很好地適用于多變的自然場景。
在獲取文本域的筆畫寬度變化特征后,基于該特征生成候選連通域。常見的文本其筆畫寬度是均勻變化的,因此在計算出像素點筆畫寬度值后,可將像素點的筆畫寬度信息用于結合算法,將筆畫寬度值相似的相鄰像素點歸為同一連通域,從而得到若干單字文本域。因此本文定義了一些規則使得能夠生成連通域。若相鄰的兩個像素點的筆畫寬度值相似,則可將這兩個像素點歸為同一連通域。因此若相鄰兩像素點間筆畫寬度值比不超過3 倍,那么將這兩像素點結合。這樣可以保證那些筆畫寬度平穩變化的像素點也能夠被歸為同一連通域,即使是不同字體或者有部分形變的文本,也一樣可以被檢測出來。其次我們需要定義一些規則來判斷連通域中是否包含文字,定義規則如下:
1)計算每個連通域中筆畫寬度的方差,定義連通域為R,連通域內筆畫邊緣對應的像素點ai和像素點bi,i=1,2,3,…,N,則像素點的筆畫寬度筆畫寬度值方差的計算公式為其中μ是連通域內筆畫寬度均值,σ2為連通域

swtswt內筆畫寬度方差。若連通域間筆畫寬度方差過大或過小,則將該連通域刪除。本文將筆畫寬度方差的閾值設為該連通域筆畫寬度均值的2 倍,若超過閾值則去除連通域。
2)計算每個連通域的寬高比并為其寬高比設置閾值。自然場景中的一些背景可能會致使一些過度狹長的連通域出現,通過限定寬高比閾值,可以過濾掉寬高比不合理的區域。定義連通域寬高比l=dheight/dwidth,l的閾值區間為[1/t,t]。本文中t值取2,如果連通域超出閾值則將該連通域刪除。
3)計算連通域的面積比,如果連通域間面積比過大或者過小,則都應該被去除。本文設置連通域面積比范圍在0.5~2 之間,如果面積比超過這個范圍,則將偏差較大的濾除。
經過以上規則的篩選,留下的連通域被認為是包含文本內容的區域,候選連通域生成結果如圖5所示。接下來將介紹如何將連通域連接起來,生成最終的文本區域。

圖5 候選連通域生成
在得到若干候選文本域后,需要將相關單字文本域組合并成長文本域。在自然場景中,相關的文字通常具有相近的文字間距,相近的文字區域面積并且通常以水平或垂直的方向排列。因此可利用這些文本域特征作為判斷是否結合相鄰單字文本域的條件。定義相鄰兩單字連通域筆畫寬度比w=diswt/di+1swt,在本文中w的閾值為2,若w超過閾值,則將偏差較大的連通域過濾掉。同樣,由于自然場景中的文本通常是排列整齊的,因此若同一水平上單字連通域間高度比超過2 倍,也應當濾除。此外,同一場景內的文本顏色通常是一致的,可以對相鄰連通域間顏色均值差設置閾值。定義連通域內每一個像素點的顏色值ci,連通域內顏色均值計算公式為

本文中顏色均值差閾值為40,若連通域間顏色均值相差過大,則視將其作為噪聲過濾。
在經過以上所有操作后,將剩余的連通域聚集成鏈,形成連續的文本域。由于自然場景中的文本通常不會以單字的形式出現,因此對于生成的文本鏈,若其長度超過兩個字符,則認為這是一個文本域。最終得到完整的文本域,圖像中的文本被成功定位,得到最終結果如圖6所示。

圖6 文本域合并
為了驗證本文方法的有效性,本文采用公開發表的ICDAR 2003[16]文本定位競賽數據集,利用測試部分的數據進行實驗,其中包含251 張不同場景、不同光照及不同像素大小的圖片。本文分別使用基于MSER 文本定位方法及本文方法對圖像進行處理,圖7為部分實驗結果圖。

圖7 文本定位結果
通過對傳統MSER 算法定位效果與本文算法定位效果對比,可以發現傳統MSER 算法對于光照強度不均以及背景復雜度高的圖像,定位效果不夠理想。針對這類場景圖像,本文方法的定位效果比傳統的MSER 文本定位方法有了明顯的提高。且本文方法對于不同字體及語言類型的文本都有較好的定位效果。然而對于一些圖片像素質量過低,以及背景中有類似文本筆畫干擾物的環境,定位效果會受到影響。針對這些缺點,在今后的工作中,可以對如何強化場景圖像的特征作進一步研究。例如提升低像素圖像的文本特征或者加強文本與背景顏色對比度,從而提高文本檢測的準確度。也可以加入學習的方法,進一步有效的過濾復雜背景中的噪聲區域。
為了客觀評價本文方法的定位效果,采用正確率P和召回率R作為性能指標來衡量本文方法,定義如下:

其中正確率P等于場景中檢測到的文本域個數C除以場景中檢測到的所有連通域總數C+E,召回率R為場景中檢測到的文本域個數C除以場景中文本域總數C+T。E表示場景圖像中檢測到的非文本域個數,T表示場景圖像中未被檢測到的文本域個數。為了判斷方法的性能,用F表示算法的綜合判定標準。α為權重,本文中將α設為0.5。文本定位算法評估對比如表1所示。

表1 文本定位算法評估結果
通過對各定位算法評估結果對比可發現,C.Yi采用了將筆畫方向與邊緣像素點分布的梯度特征放入Adabost 模型中學習的方法進行文本定位,該方法能夠準確地檢測到文本域位置,但其效果易受圖像復雜背景影響。Epshtein 提出的基于筆畫寬度變換特征文本定位算法其正確率和召回率都不錯,但效果依賴邊緣化效果的好壞。Grzegorzek 采用的基于區域和紋理的文本檢測方法對于圖像質量較低且有遮擋的場景,定位效果易受影響,根據表1 的算法評估結果可以發現,其正確率及召回率均較低。而文本方法采用了形態學處理優化邊緣化操作,得到精度較高的筆畫寬度值,綜合以上的實驗結果,對比各文本定位算法的效果,可以發現本文方法適用于自然場景中文本的檢測,且正確率及召回率較高。
筆畫寬度變化特征能夠很好地降低拍攝角度、光照、復雜背景等自然場景中干擾因素的影響,但該方法的實驗結果過度依賴于邊緣檢測的效果好壞,因此在像素較低模糊不清或強烈光照的情況下,定位效果會受到影響。本文結合了MSER 和SWT 算法,首先對圖像進行MSER 文本檢測獲取多個候選文本域,然后對圖像邊緣化并使用形態學操作優化邊緣效果,在此基礎上提取筆畫寬度變化特征獲得單字連通域,最終獲得文本定位區域。本文在公開發表的ICDAR 2003文本定位競賽數據集上進行測試,驗證了方法的有效性。