天天看點

圖像邊緣檢測 Canny邊緣檢測底下有詳細代碼

底下有詳細代碼

一、介紹

1、圖像檢測的原理。

        圖像檢測的原理是檢測相鄰的幾個點像素值之間的變化率,相對于對函數求導。求點P(x,y)的變換率,可以在點P周圍選取一些點,求x方向的距離Gx,再求y方向上的距離Gy。最後變換率G等于Gx平方加上Gy平方的和的平方差,即G=Math.sqrt(Gx^2+Gy^2)。

2、Canny算子。

        Canny算子對噪聲不敏感。Canny邊緣檢測算子是John F. Canny于1986年開發出來的一個多級邊緣檢測算法。更為重要的是Canny創立了“邊緣檢測計算理論”(computational theory of edge detection)解釋這項技術如何工作。

        Canny的目标是找到一個最優的邊緣檢測算法,最優邊緣檢測的含義是:好的檢測- 算法能夠盡可能多地辨別出圖像中的實際邊緣。好的定位- 辨別出的邊緣要與實際圖像中的實際邊緣盡可能接近。最小響應- 圖像中的邊緣隻能辨別一次,并且可能存在的圖像噪聲不應辨別為邊緣。為了滿足這些要求Canny使用了變分法,這是一種尋找滿足特定功能的函數的方法。最優檢測使用四個指數函數項的和表示,但是它非常近似于高斯函數的一階導數。

3、步驟。

        (1)高斯過濾。

        (2)Sobel邊緣檢測(其他的邊緣檢測方法也可以)。

        (3)非極大值抑制。

        (4)雙門檻值檢測。

二、高斯過濾

1、介紹。

        任何邊緣檢測算法都不可能在未經處理的原始資料上很好地處理,是以第一步是對原始資料與高斯平滑模闆作卷積,得到的圖像與原始圖

繼續閱讀