尹芳 鄭亮 陳田田
摘要:提出了一種基于Adaboost的視頻文本定位的新方法。首先我們提取視頻圖像中的連通域,經過對視頻文本區域分析,提取了視頻文本的5類特征,然后利用這5類特征經過分類與回歸決策樹構造了Adaboost強分類器,最后將候選文本區域送入強分類器,得到正確的文本區域。實驗結果表明本方法不僅對視頻幀圖像中字體、大小和顏色多變的文本具有很好的定位效果而且還實現了視頻文本定位要求的快速性和準確性的特點。
關鍵詞:文本定位;文本識別;連通域;強分類器;分類與回歸決策樹
中圖分類號:TP391 文獻標志碼:A 文章編號:1007-2683(2017)01-0103-06
0 引言
隨著多媒體網絡技術的發展,大量的視頻進入了人們的學習、生活和工作當中。然而視頻中的文本信息作為一種重要的語義信息,對視頻的理解、分析和檢索有著重要的作用。視頻文本識別主要包括兩步。第一步,對視頻幀中的文本進行定位;第二步,獲取文本定位區域中的文本信息。然后將獲取的文本信息送入到OCR或利用其他的文本識別技
最近幾年,不少視頻文本提取的相關算法應運而生。Li等通過利用混合小波神經網絡對16×16像素塊的視頻幀進行檢測;Zhong和Crandall利用文本圖像在垂直和水平方向亮度的變化規律在8×8的DCT壓縮域直接實現了文本檢測。但是基于塊的方法在文本定位不夠精確。數學形態學,角點檢測和邊緣檢測也是大多學者經常采用的方法。工作人員在制作視頻時,對于具有文本的區域,往往使其前景與背景具有鮮明的對比度,在頻域上這種對比度表現為高頻特征,而在空域上可以通過角點和邊緣點來表現,因此角點和邊緣檢測經常是文本定位采用的方法。例如,Hua等人先利用SUSAN角點檢測算子獲得視頻幀的角點圖,然后對角點按照一定的規律進行合并和過濾最終定位文本區域。這種方法應用起來比較簡單,速度較快,但是對噪聲比較敏感,只能處理背景簡單的視頻文本。
近幾年基于Adaboost的學習方法也被大量應用于文本識別,并且取得了良好的效果。例如,Chen和Yuille利用文本圖像的X和Y偏導數、灰度直方圖和邊緣連接特征進行Adaboost學習實現文本定位。
以上方法雖然可以實現文本定位,但是效果并不理想。由于視頻文本本身的低分辨率,復雜的背景,文本的顏色,字體以及大小多變性等因素使視頻文本定位存在不小的難度。
1 Adaboost算法
AdaBoost算法通過將大量分類能力一般的弱分類器按照一定方法組合起來,構成一個分類能力很強的強分類器。Keams和Valiant已經證明,只要有足夠的分類能力比隨機猜測好的分類器,就能將組合成誤分率趨于0的強分類器。Adaboost算法根據每次訓練集中各樣本的分類是否正確以及上一次的總體分類準確率來確定每個樣本的權值,將修改權值的新數據送給下層分類器進行訓練,然后將每次訓練得到的分類器融合起來,作為最后的決策分類器,實現對目標的搜索檢測。
假設輸入n個訓練樣本:{x1,y1},{x2,y2},…,{x2n/sub>,yn},其中yi={0,1},i=1,2,…,n;0表示假樣本,1表示真樣本。已知訓練樣本中有a個假樣本和b個真樣本,則第.j個生成的簡單分類器如式(1)所示。
(1)其中:hi表示簡單分類器的值;θi表示閾值;pi表示不等號的方向,只能取±1;fi表示特征值,j=1,2,…,n。
步驟1:初始化誤差權值,對于yi=0的假樣本,W1,i=1/2a;對于yi=1的真樣本,W1,i=1/2b;
步驟2:For t=1,2,…,T,其中T為訓練的次數;
2)對每個特征j,循環生成相應的弱分類器hj,計算相對于當前權重的誤差:
(2)
3)選擇具有最小誤差εj的弱分類器ht加入到強分類器中去;
4)更新每個樣本所對應的權重;
(3)
步驟3:形成強分類器為
(4)
Adaboost算法相比于其他機器學習算法所具備的優點:第一,構造一個弱分類器比直接構造一個高精度的強分類器簡單的多;第二,不會過度擬合,不會隨著迭代次數的增加而降低其泛化能力。
2 候選區域檢測
候選區域生成的主要任務是提取圖像中的連通區域。其中包括文本區域和非文本區域。然后將這些連通域送入利用Adaboost生成的強分類器。從而將連通區域中的非文本區域剔除,最終得到準確的文本區域。
2.1 灰度化處理
文進行邊緣檢測,首先將彩色的視頻幀圖像灰度化,以減少后續圖像處理計算量。
灰度化處理的方法有,最大值法、平均值法和加權平均值法,最大值法產生的灰度圖像亮度過高,平均值法產生的灰度圖像過于柔和,所以本文采用加權平均值法將視頻幀圖像灰度化,首先如式(5)給每個像素的R、G、B分量賦予權值,然后取得3個分量的加權平均值
R=G=B=(WR×R+WG×G+WB×B)/3 (5)其中WR、WG、WB分別是R、G、B的權值,根據先驗知識,其中WR=0.30、WG=0.59、WB=0.11得到的灰度圖像較為合理,即:
Vgray=R=G=B
=(0.30R+0.59G+0.11B)/3 (6)
實驗結果比較如圖1所示。
2.2 邊緣檢測
為了能給讀者提供有關視頻的信息及幫助理解,視頻文本大多是疊加的,而且一般會與背景有較大的對比度。因此本文根據梯度特征來獲得文本區域邊緣。
依賴于圖像梯度的邊緣檢測方法根據X、Y方向濾波器計算梯度估計的不同分為不同類型,例如Robeas算子、Sobel算子和Prewitt算子等。本文通過實驗比較,選擇Sobel算子。
Sobel算子是一種離散性差分算子,與Roberts算子相比,它能夠在噪聲情況下精確定位圖像邊緣方向的差分。它利用水平卷積因子和垂直卷積因子(8),在橫向x和縱向y方向上對圖像G(x,y)做平面卷積,得到亮度差分:
(7)
(9)設定閾值T,提取大于閾值T的點作為邊緣點。
實驗結果如圖2所示。
3 基于Adaboost的視頻文本定位
3.1 總體系統設計
整個系統分為預處理,特征提取和基于Ada-boost強分類器3部分,如圖3所示。
其中CART(classification and regression trees)即分類與回歸決策樹,是運用二元遞歸分割的過程來分析大數據集。因具有具有分類速度快、精度高、較其他模型更容易理解等優點,被選為本系統Ada-boost的基本弱分類器(即Adaboost with CART)。
3.2 預處理
現有視頻類型及播放工具多種多樣,因此所采集的視頻圖像也是大小不一。本系統為了將大小不同的數字圖像縮放到統一標準,首先進行邊界掃描,確定圖像的大小,然后利用差值算法,將圖像縮放為64×32,為分類做好準備。圖像尺寸選擇主要考慮圖像的變化關系為2n,n為正整數;同時由于文字形狀一般為長方形結構,因此在保證形狀不失真的情況下盡可能縮小尺寸,以減少計算量,提高處理速度。
3.3 特征提取
特征提取是視頻定位系統的重要部分,本文為構建分類與回歸決策樹的Adaboost強分類器提供了5類特征。
3.3.1 Gabor特征
視頻文本的筆畫特征豐富且表現出一定的周期性,本文將視頻文本看作一種特殊的紋理,利用Gabor濾波器提取文本特征。本文利用二位Ga-bor濾波器進行分析,其函數如下定義:
(10)
3.3.2 連通性分析
1)文本尺寸特征。文本區域在整幅圖像中通常占有一定的比例,文本區域的大小通常通過文本區的寬高信息來表示。設S(cc)表示連通區面積,S(pic)表示整個圖像區域的面積,w(cc)和h(cc)分別表示區域的寬高,MinWH表示最小長寬,S_Ratio表示面積比,其中:
(11)
(12)
2)文本區域的邊緣密度特征。筆畫是構成文本的單位元素,因此文本區域具有很強的邊緣密度(Edge_Density)。假設P(cc)為邊緣像素點的數量,則:
(13)
結合先驗知識,實驗時閾值定義為MinWH>8,0.05
3.3.3 筆畫密度
文本筆畫以,π/2,π/2,3π/4,π4個方向為主,且前景與背景間存在較大差異。根據此特性,在亮底暗字的正向文中,利用式(14)計算筆畫強度,而對于暗底亮字的負向文本將其進行反色,統一為正向文本進行處理。
(14)
(15)式中:p=0,1,2,3表示π/4,π/2,3π/4,π這4個方向;W表示筆畫寬度上限;fp(q+1)表示p方向上與點q距離為j的像素點的灰度值。
筆畫特征表示4個方向上筆畫特征的最大值,用式(16)表示:
DEp(q)=max(op3){DEp(q)}
(16)
對筆畫特征圖做二值化處理,采用Otsu求得閾值,即:
(17)這種方法對筆畫均勻的文字區域具有較好效果。
3.3.4 紋理統計特征
紋理統計是文本定位的常用方法,本文使用4種紋理特征來區分文本區域和非文本區域。設p(i,d,j,θ)為特征圖像中點(i,j)關于距離d和方向θ分離的聯合概率,則能量、熵、對比度和逆差距4種紋理統計特征定義如下:
能量:E(d,θ)=Ei,jp2(d,θ)
熵:H(d,θ)=Ei,jP2(d,θ)logp(d,θ)
對比度:I(d,θ)=Ei,j(i-j)2p(d,θ)
3.3.5 圖像的X,Y導數的方差和期望
Chen和YuiHe使用X-Y導數的平均值和標準差提取文本特征。對于文本圖像,X方向的偏導數具有極小值,而Y方向的偏導數具有極大值,根據X偏導數的極大值和極小值來進行區域分割,然后計算被分割區域的方差和期望作為特征。
本文利用這5類特征生成弱分類器,通過Ada-boost進行結合,生成一個精度較高的強分類器。
3.4 基于Adaboost的強分類器構建和實驗結果分析
3.4.1 數據庫的構建
目前還沒有統一標準的視頻文本數據庫,本文在自建視頻文本數據庫上進行實驗。在網絡上共搜集了300幅圖像,其中包括新聞、電影和廣告等視頻文本圖像,圖像中的文本大多數為中文,還有少量的英文和數字,并且這些文本在尺寸,顏色,對比度以及字體方面都有所不同。從300幅圖像中選出200幅圖像作為訓練樣本,其余100幅圖像作為測試樣本測試本文提出的文本定位方法的效果及泛化能力。訓練中的正樣本是通過手動標記圖像中的文本區域獲得的,負樣本是通過程序對背景圖像隨機抽取得到的。實驗過程中共采集1 860個正樣本和8 000個負樣本作為Adaboost分類器的訓練樣本,正、負樣本的部分圖像如圖4。
3.4.2 基于Adaboost的強分類器構建
為了給正負樣本分配恰當的權值,我們使用了非對稱Adaboost的方法,通過改進經典Adaboost算法,定義弱分類器為
(18)其中m=1…M,M為迭代的次數。設置迭代次數M為100。
從1 860個正樣本和8 000個負樣中提取5類特征集,并利用這些特征集構建了一個最大深度為4的分類與回歸決策樹。樹的每個節點都是Ada—boost弱分類器,而節點后繼分支表示文本區域和非文本區域屬性的可能值。最終結果是由最終的Ad—aboost強分類器輸出。
利用正確率p(提取出的正確文本區域/提取出的區域)、召回率r(提取出的正確文本區域/總文本區域)及其兩者的調和平均數f(正確率×召回率×2/(正確率+召回率))作為評價的性能指標。利用100幅檢測樣本圖像,對5類特征集的分類性能作了比較,如圖5所示。
盡管每個分類器的分類性能并不佳,但是經過分類與回歸樹的Adaboost算法合并后,表現出了強大的分類性能。
3.4.3 實驗結果分析
為了體現方法的優越性,采用同樣的訓練樣本訓練了SVM(支持向量機),并利用同組測試樣本進行兩者分類性能的比較。兩者對同一圖像的實驗結果部分圖像如圖6,結果比較如表1。所用100幅測試樣本包括視頻疊加文本和場景文本,在這100個樣本中,人工標注197個文本行。
通過表1可以看出本文提出的方法不管在準確率還是召回率上都是優于使用基于SVM分類器的效果的。并且在實驗過程中,在同樣的機器上本文方法的執行效率也比基于SVM方法的分類器的執行效率高。這也恰恰滿足了視頻文本定位快速性的特別要求要求。
本文使用100幅圖像作為測試樣本,測試結果準確率達到73%。由于訓練樣本有限,通過增加訓練的次數,提高文本定位的準確率和召回率。
4 結論
本文基于Adaboost算法將視頻文本定位問題轉化為二分類問題,將多個弱分類器組合成一個強分類器,實現了對視頻文本的定位。并且在視頻文本定位的正確率、實時性和泛化能力上取得了良好的效果。但是,在實驗過程中發現系統對噪聲比較敏感,所以在訓練的后期階段對去噪方面集中了不少注意力,因此我們在選取樣本時,應該選取更加全面的樣本,以解決這一問題。
(編輯:溫澤宇)