路 陽,高慧敏
(1.太原科技大學計算機科學與技術學院,太原030024;2.嘉興學院機電學院,浙江 嘉興314001)
隨著條碼技術的發(fā)展和社會信息化的普及,在人們?nèi)粘I畹脑S多領域都采用了條碼技術,使得條碼已經(jīng)無處不在,隨之產(chǎn)生的就是如何對進行條碼快速有效的識別。條碼在生活中的不斷滲透和智能手機技術的發(fā)展,利用手機對條碼進行讀取識別已經(jīng)成為可能,而不需要采用專業(yè)的條碼識讀設備,這為商品防偽等方面做出了巨大貢獻。然而利用手機識別條碼具有很大的局限性:采集的條碼圖像數(shù)據(jù)量不能過大,條碼圖像不能出現(xiàn)污損等。因此,為了條碼能夠得到快速有效識別,在解碼前還需要對攝像頭采集的條碼圖像進行圖像預處理。
條碼圖像預處理影響著條碼能否正確識讀,是整個條碼識別系統(tǒng)的一個核心內(nèi)容之一。而條碼圖像的二值化是圖像處理過程中的一個關鍵步驟,圖像的二值化效果影響著條碼圖像后續(xù)的處理。通常我們用圖像采集終端拍攝得到的是彩色的條碼圖像,彩色圖像的存儲容量和數(shù)據(jù)量大,圖像處理速度緩慢,因此要對采集到的條碼圖像進行二值化處理。二值化是指將圖像轉(zhuǎn)換為灰度值只有0和255的圖像,使得圖像呈現(xiàn)出明顯的黑白效果。圖像二值化算法有很多,國內(nèi)外也對二值化算法做了諸多改進,以求達到最佳的處理效果。本文所用的Ostu算法是一種全局二值化算法,Bernsen算法是一種局部二值化算法,它是針對Ostu算法的全局性所做的一種改進,Ostu算法是將整幅圖像最為處理對象,而Bernsen算法首先要將圖像分割為多個子圖像,分別選取各個子圖像的閾值對圖像進行二值化處理。國內(nèi)的王廷杰、宋建中等人在二值化原理的基礎上提出實時自適應二值化算法,但該算法需要統(tǒng)計圖像的灰度直方圖,而且該統(tǒng)計工作需要由硬件支持來完成,增加了算法實現(xiàn)的成本。正常狀態(tài)下的QR碼圖像只要根據(jù)條碼圖像的特性選擇合適的圖像算法都能達到預期的效果,但是在圖像采集和傳輸過程中,由于采集設備或者傳輸通道等方面的問題會使得采集到得QR條碼圖像受到污損,圖像質(zhì)量下降。比如在復雜的光照條件下得到的QR碼圖像會出現(xiàn)不均勻光照、光異常反射,QR條碼所在商品(特別是金屬類)出現(xiàn)高光現(xiàn)象等,這些都會掩蓋一部分的條碼信息,條碼圖像質(zhì)量嚴重下降。如果二值化算法對這類特殊狀態(tài)下的條碼圖像的處理不能令人滿意,將影響進一步的處理效果?,F(xiàn)有的圖像二值化算法有很多,最大類間方差算法是最常用的圖像二值化算法之一,但其對于低對比度和光照不均勻的圖像效果不佳,抗噪聲能力差,因而應用范圍受到極大限制。針對算法的這一缺點,本文提出先用改進同態(tài)濾波算法消除不均勻光照對條碼圖像的影響,然后使用最大類間方差算法對光照不均的QR碼圖像進行二值化處理。
用攝像頭采集條碼圖像,由于光照環(huán)境或條碼所在物體表面反光等原因容易造成所采集到的條碼圖像整體光照不均。光照不均在一定程度上影響了條碼圖像的本來面貌,不利于圖像的進一步處理。
通過分析條碼圖像的灰度直方圖,我們可以將光照不均問題分為下面三種:如果圖像整體灰度值偏低,那么將會導致整個圖像無法辨認,這種現(xiàn)象常在夜間圖像和紅外圖像[1]等中常見;如果條碼圖像的局部灰度值偏低,而且圖像動態(tài)范圍大,那么將會導致條碼圖像信息無法提取;如果條碼圖像所在物體表面為金屬等光滑表面,那么采集到的條碼圖像將有可能出現(xiàn)高光現(xiàn)象或者部分圖像有可能位于高光區(qū)內(nèi)。
(a)圖像的整體灰度值低
由于條碼圖像在采集時,周圍環(huán)境光照條件不理想或者圖像采集終端設備本身的問題,將會導致采集到的條碼圖像出現(xiàn)整體灰度值偏低、圖像對比度低的現(xiàn)象,那么會難以識別條碼圖像的目標區(qū)域,如紅外圖像[1]、夜間拍攝的圖像。
(b)圖像的局部灰度值低
如果圖像中一部分獲取光照不足或者圖像位于陰影區(qū)域,圖像的灰度直方圖將會呈現(xiàn)灰度值較低,那么該部分圖像將會與背景融合在一起,盡管與圖像的其他部分對比度高,但是由于圖像的動態(tài)范圍擴大,原始圖像中的這一部分信息將會難以提取出來。
(c)圖像出現(xiàn)反光現(xiàn)象
如果條碼圖像位于金屬光滑表面或者有弧度的物體表面,那么由于物體反光將會使得采集到的條碼圖像出現(xiàn)高光現(xiàn)象,如圖1所示。高光現(xiàn)象導致提取條碼圖像信息困難,圖像的原始面貌很大程度上改變,加大了后續(xù)圖像處理的困難度。
圖1 金屬表面高光現(xiàn)象Fig.1 High optical phenomena on metal surface
圖像光照不均勻是一個常見現(xiàn)象,因此有許多的算法可以解決這個問題。常用的解決圖像光照不均問題的算法主要包括灰度變換法(直方圖均衡化是灰度變換法中常用的算法之一)、基于照明—反射模型的同態(tài)濾波法、Retinex增強方法以及梯度域增強方法等。以直方圖均衡化法為代表的灰度變換法將會壓縮圖像的動態(tài)范圍,使得圖像的灰度分布趨于均衡化,達到增強圖像對比度的效果;這種算法的缺點是沒有將圖像的頻率信息以及圖像細節(jié)信息考慮在內(nèi),將會過度增強圖像的部分信息。頻域處理方法則針對圖像高頻和低頻代表圖像不同信息的特點,充分利用頻率信息通過對數(shù)變換將代表圖像基本原貌的低頻部分與代表圖像邊緣信息的高頻部分相分離。基于照明一反射模型的同態(tài)濾波法是典型的頻率域處理算法。該算法將圖像分為高頻和低頻兩部分信息,通過低通濾波處理,使得圖像對比度得到增強,同時也使得圖像動態(tài)范圍得到壓縮[3]。Retinex圖像增強方法是通過高斯平滑函數(shù)以此來估算原圖像的亮度分量,然后運用光照補償方法來近似反射圖像。梯度域增強方法將圖像梯度信息考慮在內(nèi),克服了頻域增強方法在增強圖像的同時模糊圖像邊緣信息的缺點,該算法是針對原圖像的梯度進行處理,通過減小圖像的梯度值從而達到壓縮圖像動態(tài)范圍的目的,通過增大圖像的局部梯度值來增強圖像的邊緣。
本文采用改進的基于照明一反射模型的同態(tài)濾波法對圖像進行光照補償。
同態(tài)濾波是典型的頻率域圖像光照增強方法,能夠消除照度不均勻而引起的圖像質(zhì)量下降。圖像f(x,y)可以表示為照度分量 i(x,y)與反射分量r(x,y)的乘積,即 f(x,y)=i(x,y)r(x,y)。圖像的灰度由照射分量和反射分量合成。反射分量即低頻信息反映圖像內(nèi)容,隨著圖像細節(jié)不同在空間上發(fā)生快速變化。與反射分量相反,照射分量即高頻信息在空間上通常是緩慢變化的。空間的低頻區(qū)域是照射分量的頻譜所在區(qū)域,空間的高頻區(qū)域則是反射分量的頻譜所在區(qū)域。
傳統(tǒng)的同態(tài)濾波算法:
傳統(tǒng)的同態(tài)濾波需要進行兩次傅里葉變換,孫賢慧、羅飛路、張玉華[2]對基于傅里葉變換的同態(tài)濾波算法進行了一些改進,提出了一種基于小波變換的同態(tài)濾波方法,采用快速小波變換代替?zhèn)鹘y(tǒng)的傅里葉變換,在變換域中對不同尺度上的小波變換進行非線性增強,實現(xiàn)圖像對比度增強。不論是采用傅里葉變換還是快速小波變換,都涉及到空域與頻域的轉(zhuǎn)換,需要進行兩次的傅里葉變換或小波變換,算法空間復雜度高,在轉(zhuǎn)換處理域上花費時間。而一般的條碼識別設備對條碼的解碼速率和實時性要求較高,針對這一缺點而提出了改進的空間域處理方法。
采用的空間域同態(tài)濾波方法不進行FFT和IFFT操作,對QR碼圖像進行低通濾波后,對濾波結(jié)果進行反相處理,將反相結(jié)果作為補償模型來平衡圖像的非均勻光照[9]。
(a)利用取對數(shù)的方法將入射分量和反射分量分離:
(b)因為入射光分量對應圖像的低頻部分,而反射光分量對應圖像的高頻部分,于是對g(x,y)進行低通濾波后,就能近似地將入射光分量分離出來:
(c)補償模型
(d)光照平衡
A、B 為加權值;
(e)因為開始利用取對數(shù)將入射光和反射光分量分離,所以還要對結(jié)果做指數(shù)運算,才能得到最后結(jié)果:
圖2 QR碼圖像同態(tài)濾波前后對比Fig.2 Effect figure of QR-Coded image homomorphic filtering
采用matlab做為算法實現(xiàn)工具,圖2是同態(tài)濾波算法的效果圖,由圖2可以看出,進行同態(tài)濾波后的QR碼圖像的光照得到均衡。由于此時的條碼圖像是具有多個灰度級的灰度圖像,所以同態(tài)濾波后的圖像灰度級會增加,圖像背景發(fā)灰,但對圖像后續(xù)處理沒有影響,二值化后圖像將會呈現(xiàn)黑白分明的二值圖像(如圖3所示)。
QR碼二值化算法即選擇一個恰當?shù)拈撝?,將條碼與圖像進行分離。現(xiàn)有的閾值選取法主要有兩種:全局閾值法和局部閾值法。全局閾值法是根據(jù)整幅圖像的像素選取閾值,局部閾值法是將圖像分割為幾個子圖像,針對每個子圖像來確定閾值[5]。直方圖法、最大類間方差法[4]是常用的整體閾值選取法,常用的局部閾值選取法主要有Bernsen 法、Kaneko 法[6]、Bruckstein 法[7]和 Pietikainen法[8]。整體閾值法由于是將整幅圖像作為處理對象,因此算法具有實現(xiàn)簡單等特點,而局部閾值法由于需要首先將圖像劃分為若干子圖像,再對每個子圖像分別選取合適的閾值,算法復雜度較高。因為手機條碼識別設備終端所能處理數(shù)據(jù)量有限,因此本文采用整體閾值法中的Ostu算法。
最大類間方差法的推出是基于判決分析最小二乘法原理的基礎上的。其算法實現(xiàn)簡單,是一種常用的閾值選取方法。該算法的基本思想是:假設選取的閾值將圖像灰度值分割成兩組,一組灰度對應目標圖像,另一組灰度對應圖像背景,選取的閾值使得這兩組灰度值的類內(nèi)方差最小,兩組類間方差最大。最好的閾值應該是被所選取的閾值分開的兩組的方差的加權達到最小。其中每組的加權系數(shù)就是改組的概率(其實就是該組像素數(shù)目占總像素數(shù)目的比例)[4]。對圖像Image,記t為目標與背景的分割閾值,目標像素數(shù)占圖像比例為ω0,平均灰度為μ0;背景像素數(shù)占圖像比例為ω1,平均灰度為μ1.圖像的總平均灰度為:μ =ω0(t)μ0(t)+ω1(t)μ1(t).從最小灰度值到最大灰度值遍歷t,當t使得值g= ω0(μ0- μ)2+ ω1(μ1- μ)2最大時,t即為分割的最佳閾值。對大津法可作如下理解:該式實際上就是類間方差值,閾值t分割出的目標和背景兩部分構成了整幅圖像,而目標取值μ0,概率為ω0,背景取值 μ1,概率為 ω1,總均值為 μ,根據(jù)方差的定義即得該式。因方差是灰度分布均勻性的一種度量,方差值越大說明構成圖像的兩部分差別越大,當部分目標點錯分為背景或部分背景點錯分為目標點都會導致兩部分差別變小,因此使類間方差最大的分割意味著錯分概率最小。算法描述如下:
假設閾值t將具有L級灰度的圖像劃分為兩類:C0∈[0,t],C1∈[t+1,L-1]。并對圖像直方圖進行歸一化,由此可得:I,其中N為圖像總像素數(shù),ni為灰度為i的像素數(shù)。則C0和C1類出現(xiàn)的概率及均值分別為:
C0和C1類的類間方差為:
最佳閾值t應該使類間方差最大,即:
為了驗證本文所提出方法的有效性,使用攝像頭設備采集QR碼圖像,分辨率為640*480,分別用Ostu算法和同態(tài)濾波Ostu算法對采集到的條碼圖像進行二值化處理,使用Matlab編程,結(jié)果對比如圖3所示。
圖3 不同二值化處理方法結(jié)果對比Fig.3 Comparsion results from different algorithms of binary
從圖3(a)可以看出,QR碼的上半部分圖像基本處于陰影區(qū)域,光線獲取不足,導致條碼圖像部分信息被掩蓋。圖3(b)是直接運用Ostu算法對原始圖像進行二值化后的處理結(jié)果,一部分條碼信息的灰度值被徹底賦于255,條碼信息無法完全提取。圖3(c)是經(jīng)過同態(tài)濾波后二值化的效果圖,可以看出,經(jīng)過對原始圖像光照補償后進行二值化,能夠較好地增強被陰影遮掩的QR碼圖像的上半部分細節(jié)信息,保持條碼圖像的完整性。
采用改進的空間域同態(tài)濾波Ostu算法消除了QR碼圖像的不均勻光照影響,達到了增強圖像的效果,利于條碼圖像的進一步處理。
[1]康志亮.基于小波的紅外圖像增強算法研究[D].成都:電子科技大學,2005.
[2]孫賢慧,羅飛路,張玉華.基于小波變換和同態(tài)濾波的內(nèi)窺圖像增強算法[J].探測與控制學報,2008(5):32-34.
[3]FATTAL R,LISCHINSKI D,WERMAN M.Gradient domain high dynamic range compression[C]//Proc of the 29th Annual Conference on Computer Graphica and Interactive Techniques.New York:ACM Press,2002:249-256.
[4]OSTU N.A threshold selection method from gray-level histograms[J].IEEE Transictions Oil Systems:Man and Cybernetics,1979,9(1):62-66.
[5]呂俊哲.圖像二值化算法研究及其實現(xiàn)[J].科技情報開發(fā)與經(jīng)濟,2004(12):24-26.
[6]陳丹,張峰,賀貴明.一種改進的文本二值化算法[J].計算機工程,2003,29(13):85-86.
[7]YANOWITZ S D,BRUCKSTEIN A M.A new method for image segmentation[J].Computer Graphics:Vision and Image Processing,1989,46:82-95.
[8]SAUVOLA J,PIETIKAINEN M.Adaptive document image binarization[J].Pattern Recognition,2000,20(33):225-236.
[9]肖俊,宋壽鵬,丁麗娟.空域同態(tài)濾波算法研究[J].中國圖像圖形學報,2008,13(12):2302-2306.
[10]劉喜榮,田啟川.數(shù)字圖像信息安全保密方法研究[J].太原科技大學學報,2011,32(1):1-5.