梁辰 張文博 高鑫
摘 要:經(jīng)典的Canny算子在邊緣檢測時,首先會采用高斯濾波對圖像進行平滑處理,但該濾波方法并不能很好地去除圖片中的椒鹽噪聲,當圖片中椒鹽噪聲過多時,檢測效果不理想。為了解決此問題,文中在圖像平滑階段提出了一種基于均值濾波和中值濾波的混合濾波器,對圖像進行平滑處理,在MATLAB環(huán)境下仿真實現(xiàn),仿真結(jié)果表明,混合濾波器在平滑圖像上表現(xiàn)良好。
關(guān)鍵詞:圖像平滑;邊緣檢測;Canny算子;混合濾波;MATLAB;椒鹽噪聲
中圖分類號:TP751.1文獻標識碼:A文章編號:2095-1302(2020)07-00-03
0 引 言
圖像是對客觀對象的一種描述,是人類視覺的基礎(chǔ),也是人類在社會生活中最常見的信息載體之一。隨著計算機技術(shù)的飛速發(fā)展,數(shù)字圖像隨之誕生。數(shù)字圖像是在計算機內(nèi)存儲數(shù)據(jù)來記錄圖像,而數(shù)字圖像處理技術(shù)是一種處理數(shù)字圖像的技術(shù),遍布在我們生活的各個領(lǐng)域。通過研究人類視覺感官可以發(fā)現(xiàn),圖像的邊界能夠幫助人們更好地識別圖像,通過圖像的輪廓,人們可以快速識別圖像所要描繪的物體,而幫助人們識別圖像的輪廓,即為圖像的邊緣。邊緣檢測作為人類識別物體的重要手段之一,對圖像邊緣的研究已經(jīng)有較長的歷史。邊緣檢測技術(shù)于1959年被提出,但實際研究是1965年由L.GRoberts著手。至此之后,眾多在邊緣檢測領(lǐng)域的研究者提出了許多新理論和新技術(shù),但直到現(xiàn)在仍然沒有一種能夠完全符合人們要求的完美算法,因此依然有許多專家、學者在研究這一課題,并且不斷有新的理論和方法被提出。
1 邊緣檢測概念與步驟
圖像邊緣實質(zhì)上是圖像灰度值變化劇烈的部分,所以圖像的邊緣檢測就意在提取這些灰度變化劇烈的點,然后將這些位置的點連起來構(gòu)成圖像邊緣[1-2]。
邊緣檢測包括濾波、增強、檢測、定位,具體過程如圖1所示。
(1)濾波:由于圖像不可避免地會受到噪聲的影響,所以在檢測之前需要通過濾波器平滑待檢測圖像,去除噪聲對檢測的影響;
(2)圖像的邊緣增強:圖像增強的目的是對待檢測圖像灰度值相差較大的地方突出強調(diào),從而將圖像邊緣部分突出;
(3)圖像的邊緣檢測:將圖像灰度顯著變化的點提取出來,構(gòu)成邊緣圖像;
(4)圖像邊緣定位:連接檢測到的邊緣點,得到圖像邊緣。
Canny邊緣檢測算法于1986年John Canny在其論文《A Computational Approach to Edge Detection》中提出,它的實現(xiàn)主要包括以下幾個步驟[1]。
(1)采用高斯濾波器平滑圖像,消除噪聲對檢測的影響。
(2)計算圖像中每個像素點的梯度強度和方向。
(3)對圖像進行非極大值抑制,將當前像素點和其左右相鄰的兩個像素點進行比較,若當前像素點大于左右兩個相鄰像素點,則將該點定為邊緣點,否則該點將被抑制為非邊緣點。
(4)在對圖像進行非極大值抑制處理后,剩余像素點可以準確代表圖像的邊緣,但由于平滑噪聲不徹底,圖像中還會存留一些虛假邊緣,為了剔除這些虛假邊緣,需要進行雙閾值檢測。首先設(shè)定低閾值TL和高閾值TH,然后將邊緣像素的梯度幅值G和雙閾值進行對比,若G>TH,則將該點設(shè)定為強邊緣點;若TH >G>TL,則將該點設(shè)置為弱邊緣點;若TL>G,則將該點剔除,設(shè)定為非邊緣點。依次遍歷剩余像素點,連接左右邊緣點,形成邊緣圖像。
Canny算子邊緣檢測流程如圖2所示。
2 混合濾波器設(shè)計及算法實現(xiàn)
2.1 混合濾波器設(shè)計
經(jīng)典的Canny算子在邊緣檢測時首先會用高斯濾波對圖像進行平滑處理,但該濾波方法并不能很好地去除圖片中的椒鹽噪聲,當圖片中椒鹽噪聲過多時,檢測效果不佳,為了解決此問題,本文提出了一種基于均值濾波和中值濾波的混合濾波器代替高斯濾波對圖像進行平滑處理。
(1)混合濾波器
均值濾波是一種線性平滑技術(shù),算法思想為給定一個目標像素點,在其鄰域內(nèi)(一般為其周邊8個像素點),用8個
本文提出的改進算法將均值濾波的輸出作為中值濾波的輸入。改進算法降噪流程如圖3所示。
2.2 算法改進
改進算法的思想在于選用混合濾波器代替經(jīng)典Canny算法中的高斯濾波器對圖像進行平滑處理。算法實現(xiàn)步驟如下:
(1)混合降噪;
(2)計算圖像的梯度幅值和方向;
(3)對圖像進行非極大值抑制;
(4)雙閾值檢測,連接邊緣;
(5)得到邊緣圖像。
算法實現(xiàn)流程如圖4所示。
2.3 仿真與實驗結(jié)果分析
本次實驗環(huán)境:在MATLAB 2016下對同一幅圖像在有噪聲和無噪聲兩種條件下運用算法進行檢測,對比檢測結(jié)果,發(fā)現(xiàn)密度為0.01的椒鹽噪聲。
傳統(tǒng)的Canny算法與改進算法的實驗結(jié)果如圖5所示。
從實驗結(jié)果可以看出,在無噪聲條件下,改進算法與經(jīng)典的Canny算法檢測結(jié)果幾乎一致,當加入大量椒鹽噪聲時,改進算法表現(xiàn)較好,不僅去除了椒鹽噪聲,邊緣檢測質(zhì)量也較為理想。而傳統(tǒng)Canny算法由于對椒鹽噪聲去噪能力欠佳,將大量椒鹽噪聲誤檢測為圖像邊緣。算法客觀評價標準見表1所列。
3 結(jié) 語
為了解決傳統(tǒng)高斯濾波椒鹽噪聲去噪能力差的問題,本文在Canny算子的檢測步驟中用混合濾波器代替?zhèn)鹘y(tǒng)的高斯濾波。從實驗結(jié)果可以看出,改進算法在無噪條件下與傳統(tǒng)Canny算子的檢測結(jié)果近乎一致,當添加椒鹽噪聲后,改進算法較傳統(tǒng)Canny算子呈現(xiàn)出較大優(yōu)勢。
盡管改進算法對椒鹽噪聲的處理具有很大優(yōu)勢,但在實際檢測過程中,圖像中的噪聲較為復雜,不限于椒鹽噪聲,如何選取一種濾波器使其能夠處理多種復雜噪聲是今后研究的方向。
注:本文通訊作者為梁辰。
參考文獻
[1] CANNY J F.A Computational approach to edge detection [J]. IEEE trans. pattern analysis and machine intelligence,1986(8):679-714.
[2] LIU Qingmin,ZHANG Lei,LI Xue. Improved canny image edge detection algorithm for chip image [J]. Computer engineering and design,2016,37(11):3063-3067.
[3] CHEN X F,GUAN H B,GU J N,et al. A study and improvements on Canny algorithm [J]. Advanced engineering forum,2012,6(9):205-209.
[4] [US] Rafael C Gonzalez,Richard E Woods. Digital image processing (Third Edition)[M]. Ruan Qiuqi,Ruan Yuzhi,et al.Beijing: Electronic Industry Press,2011.
[5] ZHANG Yujin. Computer vision course [M]. 2nd Edition.Beijing: Peoples post and Telecommunications Press,2017.
[6] Deng Qianwei. Research on the improvement and application of image edge detection algorithm [D]. Changsha: Hunan Normal University,2016.
[7] XU Deming,WAN Changlin. Noise resistant canny improved edge detection algorithm [J]. Computer system application,2017,26(1):201-205.
[8] DUAN Jun,ZHANG Bo. Research on improved Canny operator edge detection algorithm [J]. Software guide,2018,17(10):68-71.
[9] DUAN Suolin,YIN Congcong,LI Dawei.Improved adaptive Canny edge detection algorithm [J]. Computer engineering and design,2018,39(6):1645-1652.
[10]王佐成,劉曉東,薛麗霞.Canny算子邊緣檢測的一種改進方法
[J].計算機工程與應(yīng)用,2010,46(34):202-204.
[11]王植,賀賽先.一種基于Canny理論的自適應(yīng)邊緣檢測算法[J].計算機圖像圖形學報,2004,9(8):957-962.
[12]薛麗霞,李濤,王佐成.一種自適應(yīng)的Canny邊緣檢測算法[J].計算機應(yīng)用研究,2010,27(9):3588-3590.