【正文】
因此下一步深入的方向是結合實際應用需要,對于邊緣檢測的圖像進行細節(jié)處理,去掉其他無用的邊緣信息,保留有利的邊緣信息,并且實現在邊緣檢測的基礎上進行圖像特征的提取,為后續(xù)的圖像分類識別做準備。同樣,對于 couple 圖像,弱邊緣主要體現在墻壁上的一些豎線上,觀察圖 和圖 可以看出,用改進的 Canny 算法檢測出的邊緣圖像在原始算法的邊緣圖像基礎上增加了更多的細節(jié)邊緣部分。 最大熵算法的改進 受 最大熵 算法的啟示,針對傳統 Canny算子在閾值確定上的困難,本文提出一種基于梯度幅度直方圖和 熵取值 最大法的自動閾值選取方法。 濾波改進 西戈瑪濾波:有對孤立的噪聲點進行判斷,與噪聲門限法類似,都是等值加權平均,不同的是對噪聲點的判斷 方式不一樣,具有邊界保持的效果,降低了對圖像的模糊程度。此外,因為傳統 Canny 算子高、低閾值 的參數不是由圖像邊緣的特征信息決定,而是需要人為設定,且不同的閾值對邊緣檢測的結果影響很大。Canny 準則是一個連續(xù) 準則,也就是說在假設圖像和濾波器都是一個連續(xù)函數的情形下給出的。對 非極大值抑制幅值進行閾值化的結果是一個圖像 I(i,j)的邊緣陣列。在非極大值抑制過程中,保留了屋脊的高度值。 26 (3)非極大值抑制 幅值圖像陣列 M(i,j)的值越 大,其對應的圖像梯度值也越大,但這還不足以確定邊緣,因為這里僅把圖像快速變換的問題轉化成求幅值矩陣 M(i,j)的局部最大值問題。算法流程 如圖 : 圖 Canny 算法流程圖 (1)高斯平滑 用 ),( jif 表示輸入圖像,使用可分離濾波方法求圖像與高斯平滑濾波器卷積,得到的結果是一個已平滑的數據矩陣 ),(*)。39。? () ? 也是一個決定于圖像濾波器 的系數。 定位精度指標 標記 的邊緣點與實際邊緣點的位置偏差的導數。)()()(???????????????????WW dxxhdxxhfD ? () 其中, )(39。 L越 大表明定位精度越高。定義信噪比 SNR 為 : ?????? ??WWWWdxxhdxxhxGS N R)()()(2? () 其中 G(x)代表邊緣函數, h(x)代表寬度為 W 的濾波器的脈沖響應, ? 代表高斯噪聲的均方差。 根據對信噪比與定位乘積進行測度,得到最優(yōu)化逼近算子。 4)LOG 算子:該算子結合 Laplacian 算子 和高斯函數,解決 Laplacian 算子存在的去除噪聲努力較差的問題,對圖像進行高斯函數濾波時,參數 ? 的不同往往有不同的檢測效果 : ? 越大,對噪聲抑制作用越大,同時圖像也模糊了,邊緣細節(jié)容易丟失 ; ? 越小,能夠保留圖像的邊緣細節(jié),減弱了去除噪聲 能力 。 應用 LOG 算子對 lena 圖像進行邊緣檢測的結果如下 : 圖 LOG 邊緣檢測 結果 各邊緣檢測算子的仿真結果分析 根據 前人 分析以及上述小結各個算子的具體算法流程和實驗結果可以得出以下結論: 19 1) Roberts 交叉算子主要是用 4 鄰域的 差分 算子來檢測邊緣,因此能夠較為精確地定位邊緣, 但是容易丟失細節(jié)信息,該算子 沒有 對圖像進行濾波平滑處理,所以 Roberts 不能進行噪聲去除。 這兩種方法在數學上是等價的。將圖像 ),( yxG 與 ),( yxf 進行卷積,可以得到一個平滑的圖像,即: ),(*),(),( yxGyxfyxg ? () ( 2)增強:對 平滑圖像 ),( yxg 進行 拉普拉斯運算,即: 17 ? ?),(*),(),( 2 yxGyxfyxh ?? () ( 3) 檢測:邊 緣檢測 判據是 二階導數的零交叉點(即 0),( ?yxh 的點)并對應一階導數的較大峰值。 Laplacian 算子是二階微分算子,利用邊緣點處二階導數出現零交叉原理檢測邊緣。 該算法 與 Sobel 算子相比只 是權值有所不同。 Sobel算子利用像素點上下、左右鄰點的灰度加權算法,根據在邊緣點處達到極值這一現象進行邊緣的檢測。但是在進行差分計算的過程中對噪聲敏感,即有噪聲影響的像素點可能被檢測為邊緣點。 3) 檢測:通過梯度算子計算出梯度幅值,由于圖像的很多像素點具有較大的梯度幅值,但是這些像素點有的是邊緣而有的不是邊緣點,此時需要對邊緣點進行判斷,可以通過設定梯度幅值閾值進行邊緣點的判斷。所以通過一階導數的幅值 來判斷是否存在邊緣,其中一階導數的幅值 最值點 通常就是邊緣點。由于物體表面某一部分被另一物體遮擋,使得它得不到光源的照射或照射不充分,從而引起邊緣點兩側灰度值有較大的差異。 一般 認為沿邊緣方向的灰度變化比較平緩,而邊緣法線方向的灰度變化比較劇烈。在不少 基于 區(qū)域的分割算法中,首先分割出來的 是 很多差別不大的小區(qū)域,需要進一步按照一定的一致性要求實現小區(qū)域的合并,形成最終的分割。 根據分割對象的狀態(tài)不同,圖像分割可分為靜態(tài)圖像分割和動態(tài)圖像分割。 如不同目標物體所占的圖像區(qū)域、前景所占的圖像區(qū)域等;連通是指集合中任意兩個點之間都存在著完全屬于該集合的連通路徑;對于離散圖像而言,連通有 4 連通和 8 連通之分,如下圖所示 : ( 3)對于 i=1,2,… ,n;有 P(Ri)=TRUE。例如在工業(yè)自動化,在線產品檢測、生產過程控制,文檔圖像處理, 生物醫(yī)學圖像分析,保安監(jiān)視,以及軍事 、農業(yè)工程等方面。本文主要介紹幾種經典的邊緣提取算法, 然后 用 MATLAB 語言編程實現, 并對 Canny 算子進行改進。 Filtering。邊緣檢測 是數字圖像分析處理的前提,檢測結果的優(yōu)劣影響著下一步圖像壓縮、計算機視覺、模式識別 等 的應用 。 關鍵詞 :圖像處理; 邊緣檢測; Canny 算子; 濾波; 自適應閾值 II ABSTRACT Edge detection is mainly aimed at measurement, detection and location of the change of image intensity, its essence is to extract the characteristic of the discontinuous parts of images. So the edge detection is part of the image segmentation. Edge detection is the premise of digital image procession, its detection result plays an important impression on the next processing, such as image pression, puter vision, pattern recognition, and so on. Hence, the study of it has practical significance and theoretical significance, and it occupies a very important role in engineering applications. This paper makes an indepth study on the theory and algorithms of edge detection. Based on specific analysis of various types of traditional edge detection algorithm, this paper focuses on the Canny algorithm. In this paper, we use the Sigma smoothing filter to improve the filtering of Canny, and the improved MEC to refine the dualthreshold in the Canny algorithm to make the thresh adaptive. Finally, using MATLAB software tools to implement the algorithm. The experimental results show that the improved algorithm gains better edge detection results than the traditional Canny algorithm. Key words: Image Segmentation。它在圖像識別,圖像分割,圖像增強以及圖像壓縮等的領域中有較為廣泛的應用,也是它們的基礎。一方面,圖像分割高于一般意義上的圖像處理,研究對象通常是目標所在 的區(qū)域或者是目標的特征,并非單個像素灰度值;另一方面,由于圖像分割、目標 分割 、特征提取和參數測量都是將原始圖像轉化為更抽象、更緊湊的形式 ,使得 更高層的分析和理解成為 可能 。即分割成的所有子區(qū)域 的并應能構成原來的區(qū)域 R。即同一子區(qū)域內的像素應當是連通的。 格局應用要求的不同,圖像分割可分為粗分割、細分割兩大類。圖像直方圖是一種像素灰度加噪聲的概率密度分布,分割問題實際上就是像素分類的參數估計問題,易受噪聲和像素灰度分布的波動影響。局部邊緣是圖像中局部會聚集以簡單(即單調)的方式做極快變換的小區(qū)域。 3) 不同材料組成的邊緣線。 (a)斜坡邊緣 (b)階梯邊緣 (c)屋頂邊緣 (d)線性邊緣 圖 邊緣類型 邊緣 的判定 由此可見,邊緣表現為灰度值不連續(xù),在數學中不連續(xù)特性可以用函數的一階導數和二階導數來檢測。很多濾波器在去除噪聲的同時使得圖像模糊化,帶來邊緣細節(jié)的丟失 。 10 梯度算子 梯度對應一階導數,對于一個 連續(xù)圖像函數 f(x,y): 梯度矢量定義 : () 梯度的幅度 : ()梯度的方向 : () 用差分來近似梯度: [ , 1] [ , ]xG f i j f i j? ? ? [ , ] [ 1, ]yG f i j f i j? ? ? () 其中, j 對應于 x 軸方向, i對應于 y負軸方向,用簡單卷積模板表示 : ? ?11xG ?? 11yG ???????? () Roberts 邊緣算子 Roberts 邊緣檢測算子根據任意一對互相垂直方向上的差分可用來計算梯度的原理,采用對角線方向 相鄰兩像素之差,即 【 4】 ( , ) ( 1 , 1 )( , 1 ) ( 1 , )xyf f i j f i jf f i j f i j? ? ? ? ???? ? ? ? ?? () 22( , ) ( , )x y x yR i j f f R i j f f? ? ? ? ? ? ? ? 或 ()它們的卷積模板 為 10= 01x f ??? ????? 01=10y f ??? ????? () 有了 xf? , yf? 之后,很容易計算出 Roberts 的梯度幅值 R(i,j), 適當取門限 T, 做 如下判斷: R(i,j)T,(i,j)為階躍狀邊緣點, {R(i,j)}為邊緣圖像。 當使用達到領域時,抗噪聲特性會更好,但這樣做會增加計算量,并且得出的邊緣也較粗糙。這些算子模板由理想的邊緣子圖像構成。而對屋頂狀邊緣,邊緣點的二階導數取極小值,這時對 {f(i,j)}的每個像素取它關于 x 方向和 y 方向的二階差分之和的相反數。 Marr 和 Hildreth 將高斯濾波和拉普拉斯邊緣檢測結合在一起,形成 LOG(Laplacian— Gauss)算法。在實際應用中為了避免檢測出非顯著邊緣,應選擇一階導數大于某一閾值的零交叉點作為邊緣點。 LOG 算子是根據圖像的信噪比來檢測邊緣的最優(yōu)設計,綜合考慮了 對噪聲的一致和邊緣的檢測。 優(yōu)點: a、邊緣檢測各向同性。 但在 提高 邊緣檢測 算子對邊緣的敏感性 的 同時也提高了對噪聲的敏感。根據這個模型,Canny 考察了以往的邊緣檢測算子及其在邊緣檢測中的應用,于 1986 年提出了一個最