摘 要:現存的基于空間域的圖像邊緣檢測算法只能有效檢測出圖像有限方向的邊緣。針對這一問題,根據Contourlet變換子帶的各方向子帶代表的方向信息及其梯度方向,提出了一種基于Contourlet變換和Susan算子的邊緣檢測算法。邊緣檢測算法首先對源圖像進行Contourlet變換,然后分別對高、低頻子圖像進行邊緣提取,最后通過一定的融合規則進行融合,得到邊緣圖。實驗結果表明,這種邊緣檢測方法具有有效地抑制噪聲、邊緣檢測精度高等特點,是一種有效的圖像邊緣提取算法。關鍵詞:邊緣檢測; Contourlet變換; Susan算子; 空間域
中圖分類號:TN911-34;TP391 文獻標識碼:A
文章編號:1004-373X(2010)16-0137-03
Image Edge Detection Based on Contourlet Transform and Susan Operator
LI Jie, XIANG Jing-bo
(China Airborne Missile Academy, Luoyang 471009, China)
Abstract: The available image edge detection algorithm based on the spatial-domain can capture only limited directional edge in image. An improved algorithm for the image edge detection based on the directions of each directional sub-band and its gradient is proposed to overcome the disadvantages. By the algorithm, firstly, multi-scale decomposition of the image is performed with Contourlet transform. Then the edge detection of low-frequency sub-image and high-frequency sub-image are obtained. Finally, this edge diction method combines the advantages of both methods together to fuse the two edge information obtained by different methods according to certain rule. Experimental results show that the new edge detection method is effective to suppression of noise, and has advantages of high precision image edge detection.Keywords: edge detection; Contourlet transform; Susan operator; spatial domain
收稿日期:2010-03-30
基金項目:航空科學基金資助項目(20090112004)
邊緣是圖像最基本的特征,圖像的邊緣定義為周圍像素灰度變化不連續的像素點的集合,也就是圖像中具有奇異性的像素點的集合。邊緣檢測是圖像分析、目標識別以及圖像濾波的前提和基礎。
圖像信號的奇異性通常包含了圖像最本質的信息,圖像中的邊緣是圖像中的奇異點的集合,邊緣檢測算法則需要發現這些奇異點并對其進行準確定位,加強圖像的輪廓特征,以便于人眼和機器的識別。
傳統的圖像邊緣檢測方法有Prewitt 算子、Sobel算子、Roberts算子、Kirsch算子、 Canny算子、Log算子等[1-4]。但這些算法以一階導數極大值點或二階導數過零點作為候選邊緣點,通過選取合適的閾值,從中提取圖像邊緣,因為微分運算對噪聲比較敏感,不能抑制噪聲,常把噪聲當作邊緣點檢測出來,而真正的邊緣卻可能被漏檢。基于圖像全局信息獲得的閾值作用于整幅圖像,盡管其邊緣檢測效果較好,但卻難于或無法提取圖像中灰度變化較小的細節邊緣,而這些細節邊緣在某些應用場合卻是圖像分析和識別過程中相對重要的特征。由于圖像邊緣存在于不同的尺度空間中,傳統的基于空間域邊緣檢測算法在單一尺度上進行邊緣檢測不可能精確地檢測到不同尺度空間中的所有邊緣。利用小波在多尺度上的特性,能夠更好地分析圖像信號奇異點的位置和奇異性的強弱。描述和綜合邊緣結構的多樣性。在低分辨率下抑制噪聲和細節,快速可靠地識別邊緣;在高分辨率下精確定位,以得到邊緣的真實位置;再通過合成的方法,獲得圖像的實際邊緣。然而小波的基函數是各向同性的,只能檢測點奇異性,不能有效檢測線奇異,且只具有有限的方向。Contourlet變換是新興的第二代小波變換,其基函數具有各向異性,使得Contourlet 變換在理論上具有無限的方向性,能最佳地表征自然圖像邊緣的幾何正則性和方向性。本文將利用傳統邊緣檢測算法(Susan算法)的優勢,通過利用Contourlet變換將圖像進行分解,得到適合于相應方向邊緣檢測算子的子圖像,綜合使用邊緣檢測算子[5]來分別對低、高頻分量進行邊緣提取,經過合成得到原始圖像的邊緣,該算法不僅有效地抑制噪聲,保留連續、清晰的邊緣為邊緣提取提供了一種更快速的實現方法。
1 Contourlet變換
Contourlet變換也稱塔型方向濾波器組(PDFB)分解,是小波變換的一種新擴展,具有多分辨率、局部定位、多方向性、近鄰界采樣和各向異性等性質[6-7],其基函數分布于多尺度、多方向上,少量系數即可有效地捕捉圖像中的邊緣輪廓,而邊緣輪廓正是自然圖像中的主要特征。首先利用拉普拉斯金字塔(laplacian pyramid,LP)變換[8]對圖像進行多尺度分解,有效地捕獲圖像中的點狀奇異性。原始圖像經一級LP分解可產生一個低通子帶圖像(低頻分量)和一個帶通子帶圖像(高頻分量),以后對得到的低通圖像繼續分解,迭代進行。接下來對每一級LP分解所獲得的高頻分量采用方向濾波器組(directional filter bank,DFB)進行方向分解;最后將分布在同方向上的奇異點連接成輪廓段。Contourlet 變換最終以類似于輪廓段的基結構來逼近源圖像,因為采用正交濾波器組來實現的LP分解算法,得到的是一個框架界為1的緊框架。正是這種結構使得Contourlet有較優的非線性逼近性能,可以近似最優的逼近任意含線性奇異的二維分段光滑函數。圖1給出了Contourlet 變換的濾波器組結構,原始圖像經PDFB 結構分解,得到一個低通圖像和分布于多尺度、多方向上的高頻分量。
圖1 Contourlet變換濾波器組結構圖
圖像經Contourlet 分解后的系數相當稀疏,絕大部分系數幅值接近零,幅值較大的系數往往聚集在輪廓邊緣附近,且在尺度間有一定的相關性和延續性。Contourlet 變換是小波變換的一種新擴展,在任意尺度上能分解成2 的任意次方個方向子帶,表現出了高度的方向性,能很好地恢復圖像的邊緣紋理。
2 Susan算子
1997年牛津大學的Smith和Brady提出了一種低層次圖像處理小核值相似區的方法,稱為Susan算法[9]。Susan算子是一種直接利用圖像灰度有效地進行邊緣、角點檢測和濾波等的低層次圖像處理算法,它不僅方法簡單,能在較強噪聲中提取出目標的特征(邊緣、角點),而且定位準確,并對局部噪聲不敏感[10]。
Susan算法的基本原理如圖2所示。
若模板內的像素與模板中心(核)的像素灰度差值小于一定的門限,則認為該點與中心點具有相同的灰度是同值(或相似)的灰度,而由滿足這樣條件的像素組成的區域則稱為吸收核同值區(univalue segment assimilating nucleus, USAN)。核心點的鄰域被劃分為2個區域,核值相似區和另外一個灰度值不相似于核心點灰度的區域。對于一個像素點,這兩個區域的劃分可以考慮3種情況,如圖1所示。當圓形模板完成在背景或木板中時,USAN區域最大;當核心在邊緣時,USAN區域減少一半;當核心在角點時,USAN區域最小。USAN區域包含了圖像局部區域許多重要的結構信息,而它的大小則反映了圖像局部特征的強度。
圖2 USAN的3種典型形狀
為了計算每個像素的USAN面積,需事先設定核心點與其圓鄰域中其他像素灰度值的差值門限t,具體執行Susan時的判別函數如下:
c(r,r0)=1, if|I(r)-I(r0)|≤t
0, if|I(r)-I(r0)|>t(1)
式中:c(r,r0)是以r0為核心的圓模板內的像素r是否屬于USAN的判別函數;I(r0)為模板中心點r0的灰度值;I(r)為模板內其它任意像素r的灰度值。則圖像中任一點r0的USAN區域面積可表示如下:
n(r0)=∑r∈C(r0)c(r,r0)(2)
式中:C(r0)代表以r0為核心的圓形模板。計算完每個像素點的USAN面積后,采用一個局部非極大值抑制模板來確定最終角點。
R(r0)=g-n(r0),if n(r0) 0,otherwise (3) 式中:g為非極大值抑制門限。 如果以在圖像每點上的USAN區大小作為該處特征的顯著性度量,則USAN區越小的點特征越顯著。該方法不但可一次性快速檢測出角點、交點、邊緣點,而且無方向性。因為USAN區域是由模板內與模板中心像素具有相似灰度的像素累加而得,實際上是模板內積分,不需要求導數運算,因此具有較強的定位精度和抗噪性。Susan算子的計算速度快,適用于實時圖像處理。 3 基于Contourlet變換的邊緣檢測算法 傳統的邊緣檢測方法只能從單一方面反映圖像的邊緣信息。然而由于圖像的邊緣常常與噪聲點混雜在一起,在抑制噪聲的過程中易丟失一些細節邊緣。Canny 算子利用圖像的梯度信息能得到比較完整的邊緣,但若閾值選取不當,邊緣檢測就會出現錯誤給圖像分割、目標識別等后續處理帶來困難。本文有效地結合了Contourlet變換與Susan算子2種方法各自的優點,使得提取的邊緣圖像既能夠有效地抑制噪聲,又能保留連續、清晰的邊緣,為后續的圖像處理奠定良好的基礎。基于Contourlet和Susan算子的邊緣檢測方法步驟: (1) 對源圖像進行Contourlet分解,得到源圖像的低頻近似子圖像及高頻細節子圖像; (2) 在低頻子圖像中,采用極大值方法,將近似圖像中的輪廓檢測出來,但是邊緣定位精度差,需要高頻圖像的邊緣信息來進行修正; (3) 高頻細節子圖像用Susan算子進行角點檢測。因為在各尺度相應位置上的變換域系數具有較強的相關性,尤其是在邊緣輪廓附近,相關性更為明顯。計算同一空間、相鄰尺度上,不同方向的角點的相關系數。這樣就可以將相鄰尺度上的角點按照不同方向的類別進行分類。利用相關量和閾值同時分離信號和噪聲,同時也將不同的方向的信號進行分離。根據相同方向上的角點在不同尺度上,同樣的空間存在著較高的相關性,而不同的方向的角點的相關性較差。根據這一原則,得到了一個高頻細節子圖像的邊緣圖像; (4) 對步驟(2)和(3)中確定的邊緣圖像采用加權法進行圖像融合; (5) 對新的系數矩陣進行Contourlet 逆變換,得到最終的邊緣圖像。 4 實驗結果及分析 為了驗證本文提出的邊緣檢測算法,實驗采用標準測試圖像Cameraman和一幅紅外圖像進行了邊緣檢測。對傳統Canny邊緣檢測方法和本文提出的邊緣檢測算法進行了比較,檢測結果如圖3和圖4所示。實驗中,Contourlet變換采用3級分解,LP分解采用了“9/7”雙正交濾波器。 圖3 Cameraman圖像及其仿真結果 從實驗結果可以看出,運用經典的Canny算子進行邊緣檢測,所得的邊緣圖像丟失了較多的邊緣信息,而且對細節部分的處理較差,邊緣的平滑性較差。基于Contourlet變換和Susan算子的邊緣檢測算法對于細節上獲得了更有效的逼近,能夠檢測出傳統Canny算法所不能檢測出的弱小邊緣,檢測出的邊緣平滑性較好。 圖4 小屋圖像及其仿真結果 5 結 語 從以上分析結果可看,本文提出的基于Contourlet變換和Susan算子的圖像邊緣檢測算法,克服了Canny算子對于弱邊緣檢測不準確的缺點,具有能夠準確檢測出弱邊緣等優點,是一種有效的邊緣檢測算法。 參考文獻 [1]ZIOU D, TABBONE S. Edge detection techniques-an overview [J] . International Journal of Pattern Recognition and Image Analysis, 1998, 8 (4): 537-559. [2]PELLEGRINO F A, VANZELLA W. Edge detection revisited [J] . IEEE Trans. on Systems, Man and Cybernetics, 2004, 34(3): 1500-1518. [3]RAJAB M I, WOOLFSON M S, MORGAN S P. Application of region based segmentation and neural network edge detection to skin lesions [J]. Computerized Medical Imaging and Graphics, 2004, 28 (1): 61-68. [4]張斌,賀賽先.基于Canny算子的邊緣提取改善方法[J].紅外技術,2006(3):44-48. [5]范曉文,陳普春,祁芳芳.基于邊緣檢測的圖像提升小波降噪方法[J].現代電子技術,2007,30(24):121-123. [6]DO M N,VETTERLI M. Contourlets: a directional multi-resolution image representation[C]//Proc. of IEEE International Conference on Image Processing. Rochester, NY:[s. n.], 2002: 357-360. [7]張悅庭,孟曉鋒,尹忠科,等.基于Contourlet模極大值的圖像邊緣檢測[J].鐵道學報,2008,30(5):41-45. [8]石軍,徐汀榮.基于Laplacian算子的圖像邊緣檢測方法研究[J].終端與顯示技術,2004(21):92-94. [9]SMITH S M, BRADY J M. Susan2A new approach to low level image processing[J]. Computer Vision, 1997, 23 (1): 45-78. [10]馬桂珍,房宗良,姚宗中.Susan邊緣檢測算法性能分析與比較[J].現代電子技術,2007,30(8):189-191.