劉光宇 劉 彪 曾志勇 趙恩銘 邢傳璽
(1. 大理大學(xué) 工程學(xué)院, 云南 大理 671003;2. 哈爾濱工程大學(xué) 物理與光電工程學(xué)院, 哈爾濱 150001;3. 云南民族大學(xué) 電氣信息工程學(xué)院, 昆明 650031)
邊緣檢測是圖像處理的關(guān)鍵技術(shù),在圖像分割、識別等領(lǐng)域有著重要的應(yīng)用[1-2]。邊緣檢測一般包括圖像濾波、圖像增強(qiáng)、圖像檢測以及圖像定位等 4個(gè)步驟[3]。傳統(tǒng)的圖像邊緣檢測方法有2種:一種是基于查找的一階微分算子,包括Sobel算子[4]、Roberts算子、Prewitt算子等;另一種是基于零穿越的方法,該方法是尋找圖像像素點(diǎn)二階導(dǎo)數(shù)的零交叉點(diǎn),并采用平滑濾波,降低噪聲的影響。但是,采用這些算子提取的圖像效果并不理想。文獻(xiàn)[5]中,Roberts算子對復(fù)雜邊緣信息提取不全。文獻(xiàn)[6]中,Canny算子具有很好的信噪比,圖像定位更加準(zhǔn)確,但提取的圖像存在部分虛假邊緣,在具體應(yīng)用上,具有一定的局限性。文獻(xiàn)[7]中,由傳統(tǒng)小波變換得到的邊緣定位不良,圖像容易產(chǎn)生偽邊緣。文獻(xiàn)[8]中,傳統(tǒng)Sobel算子結(jié)構(gòu)簡單,但其并沒有對圖像的主體與背景進(jìn)行嚴(yán)格區(qū)分。針對以上問題,考慮在小波變換的基礎(chǔ)上,采用 Roberts算子對圖像的邊緣信息進(jìn)行提取。
Roberts算子是利用局部差分,尋找邊緣的梯度算法[9]。首先,對每一個(gè)梯度的像素值進(jìn)行計(jì)算;然后,依次求取每個(gè)梯度的絕對值;最后,在一定閾值下,進(jìn)行梯度運(yùn)算的綜合操作。Roberts算子常用來處理低噪聲圖像,當(dāng)圖像邊緣接近+45°或-45°時(shí),該算子的處理效果更理想。
Roberts算子公式如式(1)所示:
(1)
式中:g(x,y)表示梯度幅值的近似值;f(x,y)表示坐標(biāo)點(diǎn)(x,y)處的二維信號。
通過差分運(yùn)算,計(jì)算g(x,y),并設(shè)定合理的閾值Th。若g(x,y)>Th,說明該點(diǎn)為階躍狀邊緣點(diǎn)[3];反之,則說明該點(diǎn)不是邊緣點(diǎn)。Roberts算子的物理聚焦效果較好,但沒有對圖像進(jìn)行均值化處理,因此不適用于提取具有陡峭邊緣的圖像。
圖像邊緣是指特定區(qū)域灰度值發(fā)生突變的地方。小波變換具有良好的局部特性和多分辨率分析等特點(diǎn),能實(shí)際多尺度逼近邊緣,因此適用于邊緣檢測[5]。通過小波變換的模極大值點(diǎn),可以判斷圖像邊緣的具體位置。
圖像存在于x軸和y軸的交叉區(qū)域,其中每個(gè)像素點(diǎn)都有其對應(yīng)的坐標(biāo)點(diǎn),每個(gè)坐標(biāo)點(diǎn)的時(shí)域,顯示為一個(gè)連續(xù)的二維信號。小波變換一般采用二維離散的方法,即對二維圖像信號在水平和垂直方向,進(jìn)行一維離散小波變換。
二維連續(xù)小波公式如式(2)所示[10]:
(2)
式中:ψ(x1,y1)表示二維基本小波;ψa;x2,y2(x1,y1)表示ψ(x1,y1)的尺度伸縮和二維位移;a表示伸縮因子;b表示位移因子;x2、y2表示發(fā)生位移后的坐標(biāo)。
對二維連續(xù)小波進(jìn)行小波變換,如式(3)所示:
WTf(a;x2,y2)=
(3)
式中:f(x1,y1)表示坐標(biāo)點(diǎn)(x1,y1)的二維信號,f(x1,x2)∈L2(R2)。
與一維小波相比,二維小波操作相對復(fù)雜,需要對其進(jìn)行尺度收縮和坐標(biāo)旋轉(zhuǎn),如式(4) — 式(5)所示:
A=crθ
(4)
(5)
式中:c表示尺度因子;rθ表示旋轉(zhuǎn)因子。
二維小波的變換方程如式(6)所示:
(6)
Mallat算法的原理是,通過信號f(x,y),將尺度J轉(zhuǎn)換到Vj和Wj,得到離散逼近值ajf、djf。其中,Vj和Wj為存在于L2(R)的兩個(gè)相交空間。分解尺度設(shè)置為J+1,將ajf分解到對應(yīng)的子空間Vj+1和Wj+1上,按照上述方法依次迭代,從而實(shí)現(xiàn)多分辨率的分解。信號f(x,y)的多尺度分解過程,如圖1所示。
圖1 信號f(x,y)的多尺度分解過程
二維離散小波變換Mallat分解,如式(7) — 式(8)所示:
(7)
(8)
將式(7)和式(8)代入小波函數(shù),得到Mallat的塔式算法,如式(9)所示:
(9)
對于任意圖像像素點(diǎn)p(x,y),小波變換在水平和垂直方向得到的小波系數(shù)都是獨(dú)立的,可以利用向量原理計(jì)算它的模和幅角[11]。
設(shè)θ(x,y)為二維光滑函數(shù),滿足式(10):
(10)
求取θ(x,y)在x,y方向的一階導(dǎo)數(shù),得到2個(gè)基本小波,如式(11)所示:
(11)
其相應(yīng)的二維小波變換,如式(12)所示:
(12)
小波變換模定義,如式(13)所示:
(13)
將梯度的模轉(zhuǎn)化為梯度相角,可得到式(14):
(14)
采用Mallat算法,得到梯度矢量,梯度矢量方向即為梯度模局部極大值的方向。沿著梯度矢量方向檢測小波變換系數(shù)模的局部極大值點(diǎn),即可得到圖像的邊緣點(diǎn)[12]。
利用小波變換的邊緣檢測算法,對圖像進(jìn)行邊緣檢測,具體操作如下(見圖2):
圖2 基于小波變換的圖像邊緣檢測步驟
(1) 輸入圖像。
(2) 對圖像進(jìn)行小波分解。
(3) 求取小波變換系數(shù)的模值。如式(15)所示:
(15)
(4) 模值轉(zhuǎn)化為輻值。對幅角進(jìn)行4等分(見圖3),計(jì)算0°、45°、90°、135°等方向的偏導(dǎo)數(shù)、水平和垂直方法的差方,計(jì)算特殊區(qū)域的模值,并將其轉(zhuǎn)換為幅值。
圖3 幅度劃分圖
(5) 求最大邊緣點(diǎn)。按前面各方向依次對每一個(gè)像素點(diǎn)進(jìn)行檢測。如果檢測到極大值點(diǎn),保留并記錄為邊緣點(diǎn);否則,梯度值設(shè)為0。
(6) 整合圖像中的最大邊緣點(diǎn)。利用小波變換尺度的多樣性,對圖像中的邊緣點(diǎn)進(jìn)行融合。
(7) 輸出圖像。
選取一張像素為512×512的瓷磚圖像,對其進(jìn)行灰度值計(jì)算,結(jié)果如圖4所示。
圖4 圖像對比
設(shè)置分解尺度J=1,采用低通、高通濾波器對圖4進(jìn)行卷積和偏導(dǎo),生成第一級小波分解圖像,如圖5所示。第一級小波分解提取的圖像邊緣輪廓信息較少,無法分辨出所有地磚的模型,只能分辨出明顯的突變點(diǎn),并且圖像背景中包含許多虛假信息。
圖5 第一級小波分解的圖像邊緣
設(shè)置分解尺度J=2,更新低通、高通濾波器,進(jìn)行卷積和偏導(dǎo),生成第二級小波分解,結(jié)果如圖6所示。與第一級分解相比,第二級小波分解得到的圖像擁有更多的邊緣細(xì)節(jié),但圖像邊緣仍然比較模糊。
圖6 第二級小波分解的圖像邊緣
選取絕對值相對大的小波系數(shù),對分解的小波圖像進(jìn)行融合,其處理區(qū)域?yàn)?×3。首先,求取圖像中模的極大值,并轉(zhuǎn)換為幅值,尋找各方向最大值點(diǎn),并將其設(shè)置為邊緣點(diǎn);然后,連接圖像所有的邊緣點(diǎn),形成圖像邊緣(見圖7a)。在Matlab中,調(diào)取Roberts函數(shù),對圖4進(jìn)行邊緣提取(見圖7b)。
圖7 不同方法提取的圖像邊緣
由圖7可知,與傳統(tǒng)Roberts算子相比,經(jīng)過小波處理后得到的圖像邊緣,擁有更多的細(xì)節(jié)信息。采用傳統(tǒng)Roberts算子提取的圖像,地磚樣貌缺少一些重要的邊緣信息;采用本次研究方法提取的圖像邊緣幾乎連續(xù),能夠得到較為清晰的地磚輪廓和紋理,定位更加精確,檢測到的邊緣信息更加完整。
采用Dice(Dice Coefficient)系數(shù)和召回率(Recall)等指標(biāo),對圖像邊緣提取效果進(jìn)行評價(jià)。
Dice系數(shù)是一種集合相似度度量函數(shù),通常用于計(jì)算兩個(gè)樣本的相似度,計(jì)算結(jié)果的范圍為[0,1]。其計(jì)算如式(16)所示:
(16)
式中:|X∩Y|表示集合X與集合Y的交集; |X|和|Y|分別表示元素個(gè)數(shù)。
分別采用本文次研究的方法和傳統(tǒng)Roberts算子,對圖像邊緣信息進(jìn)行提取,得到的圖像相似度對比,如圖8所示。對圖像邊緣提取效果進(jìn)行評價(jià),結(jié)果如表1所示。表中召回率為判定正確的數(shù)據(jù)所占比重。
圖8 圖像邊緣提取相似度對比
表1 圖像邊緣提取效果評價(jià)
圖8中,白色線條為提取的圖像與理想圖像重合相似的地方,綠色是除去瓷磚之外的紋理點(diǎn)。由圖可知,采用本次研究的方法提取的圖像邊緣,與理想邊緣圖像更加相似。
由表1可知,傳統(tǒng)Roberts算子與本次研究的方法的Dice系數(shù)相差5倍左右,召回率相差6倍左右。采用本次研究方法對圖像邊緣進(jìn)行提取,效果更好。
本次研究在小波變換基礎(chǔ)上,采用Roberts算子對圖像邊緣進(jìn)行檢測。首先,對圖像進(jìn)行小波分解,利用Roberts算子求各方向的模極大值,從而確定圖像的真實(shí)邊緣;然后,對圖像進(jìn)行融合,得到邊緣檢測圖。研究結(jié)果顯示,采用本次研究方法對圖像邊緣進(jìn)行提取,可獲得更多的紋理信息,邊緣細(xì)節(jié)更突出,邊緣定位的精確度更高。