亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

python進(jìn)行圖像邊緣檢測的詳細(xì)教程

 更新時間:2023年04月01日 09:39:46   作者:Love?_YourSelf_CS  
相信大家對于邊緣檢測這幾個詞并不陌生,但是相對于如何處理,如何進(jìn)行圖像的邊緣檢測卻無能為力、束手無策了,下面這篇文章主要給大家介紹了關(guān)于python進(jìn)行圖像邊緣檢測的詳細(xì)教程,需要的朋友可以參考下

邊緣檢測

圖像邊緣是指圖像中表達(dá)物體的周圍像素灰度發(fā)生階躍變化的那些像素集合。

圖像中兩個灰度不同的相鄰區(qū)域的交界處,必然存在灰度的快速過渡或稱為跳變,它們與圖像中各區(qū)域邊緣的位置相對應(yīng),邊緣蘊含了豐富的內(nèi)在信息,如方向、階躍性質(zhì)、形狀等,沿邊緣走向的像素變化平緩,而垂直于邊緣方向的像素變化劇烈。

圖像的大部分信息都集中在邊緣部分,邊緣確定后實際上就實現(xiàn)了不同區(qū)域的分割。

邊緣檢測算子

求取邊緣往往要借助一些邊緣檢測算子,這些算子有的是基于一階導(dǎo)數(shù)的算子,有的是二階微分算子

Roberts算子、Prewitt算子、Sobel算子它們包含x、y兩個方向的模板,每種模板只對相應(yīng)的方向敏感,對該方向上的方向有明顯的輸出,而對其他方向的變化響應(yīng)不大。以下是一些常見的一階微分算子及其特點:

算子名稱特點
簡單微分算子對噪聲敏感,對噪聲具有一定放大作用
Roberts算子去噪聲作用小,邊緣檢測能力優(yōu)于簡單微分算子
Prewitt算子能夠有效抑制噪聲的影響,同時能夠檢測邊緣點
Sobel算子得到的邊緣較寬,噪聲抑制效果更強
Canny算子檢測的邊緣位置準(zhǔn)確且邊緣較窄

1、Roberts算子

2、Prewitt算子

3、Sobel算子

Sobel算子檢測到的邊緣相比于Roberts算子的檢測結(jié)果要連續(xù)一些,并且對于圖像的細(xì)節(jié)檢測能力更好,且Sobel邊緣檢測器引入了局部平均,對噪聲的影響比較小,效果較好。

4、Canny算子

Canny得到的檢測結(jié)果優(yōu)于Roberts、Sobel算子的檢測結(jié)果,邊緣細(xì)節(jié)更豐富,邊緣定位準(zhǔn)確連續(xù)性較好,虛假邊緣少且邊緣均具有單像素寬度。
其算法實現(xiàn)具體分為以下4步:

  • 用高斯濾波器平滑圖像
  • 用一階偏導(dǎo)的有限差分來計算梯度的幅度和方向
  • 對梯度幅值進(jìn)行非極大值抑制
  • 用雙閾值算法檢測和連接邊緣

5、拉普拉斯算子

常見的二階微分算子包括拉普拉斯算子,它是一種二階導(dǎo)師算子,對圖像中的噪聲相當(dāng)敏感,而且檢測出的邊緣常常是雙像素寬,沒有方向信息,所以拉普拉斯算子很少直接用于檢測邊緣,而主要用于已知邊緣像素后,確定該像素是在圖像的暗區(qū)還是明區(qū)。另外,一階差分算子會在較寬范圍內(nèi)形成較大的梯度值,因此不能準(zhǔn)確定位,而利用二階差分算子的過零點可以精確定位邊緣。
Laplace算子的噪聲明顯比Sobel算子的噪聲大,但其邊緣比Sobel要細(xì)很多,且Laplace變換作為二階微分算子對噪聲特別敏感,并且會產(chǎn)生雙邊沿,不能檢測邊緣方向。

效果實驗

1、 Roberts邊緣檢測

Prewitt 算子代碼:

Roberts_kernel_x = np.array([[-1, 0], [0, 1]], dtype=int)
Roberts_kernel_y = np.array([[0, -1], [1, 0]], dtype=int)

2、Prewitt 邊緣檢測

Prewitt 算子代碼:

Roberts_kernel_x = np.array([[-1, 0], [0, 1]], dtype=int)
Roberts_kernel_y = np.array([[0, -1], [1, 0]], dtype=int)

3、Sobel邊緣檢測

Sobel函數(shù):

edges = cv2.Sobel(img, -1, 1, 1)

4、Canny邊緣檢測

Canny函數(shù):

edges = cv2.Canny(img, 5, 100)

5、Laplacian 邊緣檢測

Laplacian 函數(shù):

edges = cv2.Laplacian(img, -1)

總結(jié) 

到此這篇關(guān)于python進(jìn)行圖像邊緣檢測的文章就介紹到這了,更多相關(guān)python圖像邊緣檢測內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • python3.5安裝python3-tk詳解

    python3.5安裝python3-tk詳解

    這篇文章主要介紹了python3.5安裝python3-tk詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-04-04
  • 在Pytorch中使用Mask R-CNN進(jìn)行實例分割操作

    在Pytorch中使用Mask R-CNN進(jìn)行實例分割操作

    這篇文章主要介紹了在Pytorch中使用Mask R-CNN進(jìn)行實例分割操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-06-06
  • python interpret庫訓(xùn)練模型助力機(jī)器學(xué)習(xí)

    python interpret庫訓(xùn)練模型助力機(jī)器學(xué)習(xí)

    這篇文章主要為大家介紹了python interpret庫訓(xùn)練模型功能特性,為你的機(jī)器學(xué)習(xí)提供便捷的路徑,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2024-01-01
  • python將數(shù)據(jù)插入數(shù)據(jù)庫的代碼分享

    python將數(shù)據(jù)插入數(shù)據(jù)庫的代碼分享

    在本篇文章里小編給大家整理的是關(guān)于python將數(shù)據(jù)插入數(shù)據(jù)庫的代碼內(nèi)容,有興趣的朋友們可以參考下。
    2020-08-08
  • Python fileinput模塊使用實例

    Python fileinput模塊使用實例

    這篇文章主要介紹了Python fileinput模塊使用實例,fileinput模塊可以遍歷文本文件的所有行,本文就給出它的使用代碼實例,需要的朋友可以參考下
    2015-05-05
  • Python sklearn中的K-Means聚類使用方法淺析

    Python sklearn中的K-Means聚類使用方法淺析

    這篇文章主要介紹了Python sklearn中的K-Means聚類使用方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2022-12-12
  • python使用os.listdir和os.walk獲得文件的路徑的方法

    python使用os.listdir和os.walk獲得文件的路徑的方法

    本篇文章主要介紹了python使用os.listdir和os.walk獲得文件的路徑的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-12-12
  • python檢測空間儲存剩余大小和指定文件夾內(nèi)存占用的實例

    python檢測空間儲存剩余大小和指定文件夾內(nèi)存占用的實例

    今天小編就為大家分享一篇python檢測空間儲存剩余大小和指定文件夾內(nèi)存占用的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-06-06
  • 利用python實現(xiàn)數(shù)據(jù)分析

    利用python實現(xiàn)數(shù)據(jù)分析

    為什么要利用python進(jìn)行數(shù)據(jù)分析?python擁有一個巨大的活躍的科學(xué)計算社區(qū),擁有不斷改良的庫,能夠輕松的集成C,C++,Fortran代碼(Cython項目),可以同時用于研究和原型的構(gòu)建以及生產(chǎn)系統(tǒng)的構(gòu)建。
    2017-01-01
  • tensorflow實現(xiàn)邏輯回歸模型

    tensorflow實現(xiàn)邏輯回歸模型

    這篇文章主要為大家詳細(xì)介紹了tensorflow實現(xiàn)邏輯回歸模型的相關(guān)資料,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-09-09

最新評論