
摘 要:傳統(tǒng)Canny算法通過比較圖像梯度值與人為給定閾值,進行圖像邊緣提取,無法自適應確定閾值。一些基于改進的最大類間差算法(Otsu算法),通過計算梯度直方圖和類間方差極大值的,自動尋找出Canny算法需要的分割閾值實現(xiàn)對傳統(tǒng)Canny算法的改進,對于文字圖像邊緣提取效果并不好。本文利用梯度直方圖峰值搜索的方法設定Canny算法的上閾值,通過對圖像分塊計算,自適應處理亮度不均的文字圖像。
關鍵詞:邊緣提取;自適應閾值分割;Canny算子;峰值搜索
引言
當前,數(shù)碼相機,智能手機等設備普及式的應用方便了隨時隨地的采集圖像,基于圖像的即時處理技術得到了廣泛的應用,如車牌識別,指紋識別,光學字符識別(OCR),圖書掃描等。邊緣檢測是圖像分割、機器視覺的基礎,從圖像中提取目標物體,準確高效的邊緣提取算法對非常重要。
傳統(tǒng)的邊緣檢測算子,Sobel,Prewitt,Robbert等[1-2]在實用中檢測圖像邊緣時效果并不理想,Canny算子具有較好的檢測性能,在圖像處理領域有廣泛的應用。然而,傳統(tǒng)的Canny算法閾值是人為固定的,這就限制了它的性能。在實際使用中,圖像的采集受光線,傳感器性能等因素影響,含有較多的噪聲,一張圖片出現(xiàn)亮度不均的情形,這時難以確定一個的固定閾值。針對Canny算法閾值固定的問題, 雒濤、唐路路等[3]提出用Otsu算法自適應計算Canny算法的閾值[4-5]。
在OCR應用中,文字分割提取是重要的一環(huán)。對于很規(guī)則的文本圖像,有成熟文字分割提取方法,對于亮度不均的文字圖像,Derek B等創(chuàng)造了很好的自適應閾值的方法,用于提取掃描圖書中的文字。對于文字大小不規(guī)則,亮度不均的圖案,需要用更有效的方法提取字符。
本文針對復雜的文字圖像,利用邊緣檢測,并結合自適應閾值處理的方法提取文字邊緣。
1 Canny算法簡介
Canny邊緣檢測算法的步驟為:
1.1用高斯函數(shù)對圖像進行低通濾波,平滑,I(x,y)=G(x,y)*f(x,y),其中f(x,y)是原始圖像,G(x,y)是二維高斯函數(shù):
1.2 計算平滑圖像個點的梯度:
利用偏導數(shù)計算梯度幅值及角度:
1.3 對梯度幅度進行非極大值抑制,保留極大值點作為候選邊緣點。具體方法是比較當前點與沿梯度方向兩側兩個相鄰點的梯度幅度,若不是最大,則作為非極大值抑制掉。
1.4 邊緣判別與邊緣連接。設置高低兩個全局閾值,對于梯度值大于高閾值的作為邊緣點保留,梯度值小于低閾值的作為非邊緣點刪除。對于梯度值介于高低閾值之間的點,判斷其八鄰域中有沒有超過高閾值的邊緣點,有則判定為邊緣點,否則判定為非邊緣點。
2 類Otsu改進算法簡介
Otsu方法是利用類間方差最大化的方法確定圖像分割的閾值[6]。它的思想是統(tǒng)計背景圖像和目標物體的灰度值,通過判定背景與目標這兩個類間方差最大值得到分類閾值。
圖像總像素數(shù),灰度級為[0,L-1],灰度級i出現(xiàn)的概率為,pi=ni/N,設分割閾值為T,劃分背景與目標兩個類,分別對應灰度區(qū)間[0,T]及[T+1,L-1],在灰度直方圖中顯示為兩個峰,其均值為?滋0,?滋1,出
現(xiàn)概率為 , ,圖像總的灰度均值為
?滋T,類間方差為,
計算方差?滓■■的最大值,求得分類閾值。
文獻[4],[5]提出的改進方法,將灰度值替換成圖像的灰度梯度值,得到梯度值的統(tǒng)計分布,類似Otsu方法,通過計算灰度梯度值的類間方差最大值得到。
3 梯度圖分塊提取閾值
對于文字圖像的邊緣提取來說,整個圖像的邊緣像素點的比例很小,往往小于5%。這時利用梯度值集中在0附近,利用Otsu類間方差計算分割閾值都接近于0,分割效果不好。圖1是本文所用圖例,圖2是其梯度直方圖。
圖1 待處理的文字圖像
本文對梯度圖像的直方圖進行峰值搜索。經(jīng)過平滑的梯度直方圖,第一峰值點(梯度值P1)對應于背景梯度值,在0附近。其它值點對應于文字邊緣梯度。如圖3所示,局部峰值對應于文字邊緣。
本文通過峰值搜索,找到第二峰值點(梯度值P2)。利用P1,P2計算Canny邊緣提取的上閾值(TH),我們?nèi)H=0.7*P2+0.3*P1。
對于圖像亮度分布不均勻的情形,一個全局閾值并不能反應圖像局部的統(tǒng)計特征,基于開運算閉運算進行對比增強效果并不理想。對圖像的同態(tài)濾波計算量過大,不利于實時處理。因此,我們利用對圖像分塊處理的方法,利用上述方法分塊計算圖像的分割閾值。對本例圖像,等比例分成3×3共9塊,分別對每塊進行梯度直方圖峰值搜索,自適應計算Canny邊緣的上閾值,處理結果見圖4。
4 結束語
我們對比了上述幾個方法的對圖例1的處理結果。圖5是直接利用Canny邊緣提取方法得到的圖像,圖6是利用梯度峰值搜索,對梯度圖像進行全局計算得到Canny方法的上閾值,提取得到的邊緣圖像。
比較上述各方法,盡管梯度圖分塊提取閾值得到的圖像邊緣不如直接進行Canny邊緣提取得到的文字圖像清晰,但利用Canny算法直接進行邊緣提取包含光照不均產(chǎn)生的噪音,若對整個梯度圖像計算Canny閾值容易丟失文字圖像信息。利用梯度直方圖峰值搜索的方法設定Canny算法的上閾值,通過對圖像分塊計算,可自適應應處理亮度不均的文字圖像。后續(xù)研究將改進梯度圖分塊提取閾值算法以提高其清晰度,使之成為最為實用的方法之一。
參考文獻
[1]岡薩雷斯.數(shù)字圖像處理:二版[M].北京:電子工業(yè)出版社,2007:463-492.
[2]John Canny. A Computional Approach to Edge Detection [J]. IEEE Trans. Pattern Analysis and Machine Intelligence(S0162-8828),1986,8(6):679-698.
[3]OTUSU N. A threshold selection method from gray-level histogram[J].IEEE Transactions on Systems,Man and Cybernetics,1979,9(1):62-66.
[4]雒濤,鄭喜鳳,丁鐵夫.改進的自適應閾值Canny邊緣檢測[J].光電工程,2009,36(11):106-111,117.
[5]唐路路,張啟燦,胡松.一種自適應閾值的Canny邊緣檢測算法 [J].光電工程,2011,38(5):127-132.
[6]岡薩雷斯.數(shù)字圖像處理:matlab版[M].北京:電子工業(yè)出版社,2005:305-307.
[7]Derek B,Gerhard R. Adaptive Thresholding using the Integral Image[J].Journal of Graphics,GPU,and Game Tools,2007,12(2):13-21.
作者簡介: 宋建民(1976-),男,河北曲周人,講師,碩士,主要研究方向為算法設計與分析、圖像處理。