王壵壵 李 竹*
(山西師范大學物理與信息工程學院,山西 臨汾 041004)
圖像邊緣是指像素的灰度級變化較大的區域邊界。邊緣檢測包括利用圖像的邊緣點處的灰度級變化提取圖像的不連續部分的特征,并從封閉邊緣確定區域。邊緣檢測是諸如數字圖像處理和計算機視覺等領域的重要基礎,也是圖像分析和形狀識別的基礎。它在人類以及信息科學的發展方面扮演著尤為重要的角色。
經典的Sobel 算子的缺點是由于計算方向較為單一,無法準確定位圖像邊緣。面對復雜紋理的情況同時也就顯得十分乏力。同時原始圖像各種條件的限制和種種干擾,如果不進行預處理,往往會對后續的操作存在影響。本文針對傳統Sobel的這些不足進行了一定的改進,有效降低了圖像對噪聲的敏感度,凸顯了邊緣線條,增強了Sobel算子的定位精度。
在圖像的邊緣檢測中,圖像質量直接影響邊緣提取的精度。在沒有預處理的情況下,圖像中的無用信息以及噪聲將會對后續的特征提取及檢測準確度造成不可忽視的影響。因此,要想保證圖像質量,關鍵一點就是刪除其中不相關的信息,找回真正有用的信息,使數據盡可能地被簡化,并提高對相關信息的檢測能力,即采用圖像的預處理技術,也為后續使用Sobel 算子進行邊緣檢測定位精確性的提高打下基礎。
從頻率域來考慮,頻率低的地方說明較為平滑,因為平滑的地方灰度值變化小,而頻率高的地方則通常是邊緣和噪聲,因為這些地方往往是灰度值突變的。因此高頻分量被衰減就會致使圖像模糊,因而選擇使用高通濾波器。
選用BHPF(Butterworth high-pass filter,巴特沃斯高通濾波器)的優勢是:在通頻帶內其頻率響應極大限度平緩,曲線幾乎沒有波動,不會在截止頻率D0處突然不連續。相較于IHPF(Ideal high-pass filter,理想高通濾波器),BHPF 的對圖像的平滑程度往往會更優。采用巴特沃斯高通濾波器預處理對圖像進行銳化,能夠強調邊緣細節、改善圖像對比度,另一個好處是保持了Sobel 算子本身所特有的噪聲抑制作用,在干擾減小的情況下灰度值也不會劇烈變化,因此不會對圖像的平滑產生消極影響。
截止頻率位于距D0(原點)處的n 階BHPF 的系統函數定義為:
公式(1)中n 表示的是巴特沃斯濾波器的階數,D0表示頻域中心,D(u,v)表示頻域中心到頻域平面的距離,即為截止頻率。當D(u,v)?D0時HBHPF(u,v)接近1,因而高頻部分可以通過;當D(u,v)?D0,HBHPF(u,v)接近0,使低頻部分過濾。
濾波器階數n越大,在阻頻帶其振幅衰減速度加快,振鈴現象也會愈發明顯,經實驗仿真,選用2階巴特沃斯高通濾波器、截止頻率設置為30時濾波效果較為理想。
基于巴特沃斯高通濾波,可通過高頻強調濾波提升加強,其原理是利用偏移量a與將濾波器的傳遞函數乘以一個常數b結合的方法實現。
其系統函數為:
公式(2)中HBHPF(u,v)為巴特沃斯高通濾波器的系統函數,a為偏移量,b為大于1的常數(b>1,使得高頻成分得到加強)。
基于MATLAB.2014軟件環境下,實驗結果:
如圖1 所示,(a)為原圖,(b)是原圖經濾波后得到的結果,圖像失去了原圖中所呈現出的大部分灰色調。圖(c)為增加偏移量,采用高頻強調濾波補償后的結果,有效解決了這一問題,而且圖像邊界更清晰。
Sobel 算子是一種圖像邊界信息檢測算子,它是通過提取圖像的明度和暗度的近似值來進行操作。其基本原理:根據像素上下點與左右相鄰點之間的灰度加權差值來檢測邊緣。
傳統Sobel算法僅有0°和90°兩個方向的模板:
公式(3)、(4)中fx、fy表示兩個方向的邊緣檢測灰度值。
經典的Sobel 算子雖然具有速度快、算法簡單的特點,但是由于其只有水平、垂直兩個方向的模板,使Sobel算子邊緣檢測能力大打折扣,計算方向的單一性讓其邊緣檢測精度有限,面對紋理較為復雜的情況顯得十分乏力,抗噪能力也較弱,這就導致邊緣檢測結果較差。
如圖3所示,在經典算子的基礎上增加6個方向的模板,采用8個方向的模板對圖像進行卷積運算,會使得邊緣檢測低精度這一缺陷有效改善,邊緣定位不準確的弊端得到解決。
為了強調圖像邊緣和細節,在邊緣檢測前對圖像進行銳化處理,提高對比度,才更有利于Sobel算子的邊緣檢測。一般來說,圖像的低頻區域匯集了其主要能量,噪聲所在的頻帶主要在高頻區域,同時圖像邊緣信息也主要匯集在高頻部分。原始圖像在平滑處理之后,其結果是:圖像邊緣、輪廓出現了模糊的情況。
利用巴特沃斯高通濾波和改進型Sobel算子相結合的技術,不僅使圖像的邊緣、輪廓線條更加清晰,使Sobel 算子在邊緣檢測過程中免受這種不利效果的影響,而且有效降低了Sobel算子對噪聲的敏感度。
上述方法的步驟:
(1)若目標圖像為彩色圖像,首先將圖像轉換為灰度圖像。
(2)利用巴特沃斯高通濾波進行圖像銳化。
(3)使用已擴展方向的改進型Sobel 算子對經預處理銳化的圖像進行邊緣檢測。
用該方法進行目標圖像的要素提取和邊緣檢測,圖像邊緣更加凸顯、連續性更好。
使用本文提出的邊緣檢測方法,基于MATLAB 進行實驗,檢測結果如圖4所示。依次展示的為原圖、原圖不進行濾波直接用原算法檢測接結果、改進后8 方向的Sobel 算子進行邊緣檢測結果。
如圖5所示,展示的是原圖先進行巴特沃斯濾波,再用經典Sobel算子進行邊緣檢測結果。從實驗結果中,可以看出:采用巴特沃斯高通濾波法對圖像進行預處理后,原本模糊的圖片變得清晰,證明圖像邊緣等高頻信號得到了加強。
如圖6所示,圖中展示的是原圖進行巴特沃斯高通濾波,再用改進后8方向的Sobel算子進行邊緣檢測結果。
經過這三組實驗結果中可得到結論:通過預處理,圖像靠近頻譜中心的低頻部分給舍棄掉,遠離頻譜中心的高頻部分被保留。此時對處理后的圖像利用增加方向模板的改進型Sobel算子進行邊緣檢測,從圖6結果中可以明顯看出:本文所述方法對圖像檢測的邊緣線條加粗,圖像邊緣信息更加豐富,定位更加精確。傳統Sobel 算子檢測出的邊緣不是連通的,存在著高度的斷開,經過改進后,邊緣連通性得到了較好的改善,同時降低了噪聲敏感度。
通過采用巴特沃斯高通濾波與改進型Sobel算子相結合的圖像邊緣檢測算法,經實驗仿真,該算法的邊緣檢測提取效果較好,檢測到的邊緣較經典算子在定位準確度、邊緣連通性和抗噪聲性方面都有了較大程度的改善,且邊緣信息更加豐富。同時,該方法較為簡單、操作性強,對Sobel 算子拓展的其他方向模板同樣適用。