日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

OpenCV边缘检测专题

發(fā)布時間:2025/7/25 编程问答 20 豆豆
生活随笔 收集整理的這篇文章主要介紹了 OpenCV边缘检测专题 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

一階導數(shù)算子

?

????微分算子在圖像處理中扮演重要的角色,其算法實現(xiàn)簡單,而且邊緣檢測的效果又較好,因此這些基本的微分算子是學習圖像處理過程中的必備方法,下面著重討論幾種常見的微分算子。

1.Sobel

?其主要用于邊緣檢測,在技術(shù)上它是以離散型的差分算子,用來運算圖像亮度函數(shù)的梯度的近似值,缺點是Sobel算子并沒有將圖像的主題與背景嚴格地區(qū)分開來,換言之就是Sobel算子并沒有基于圖像灰度進行處理,由于Sobel算子并沒有嚴格地模擬人的視覺生理特征,所以提取的圖像輪廓有時并不能令人滿意,算法具體實現(xiàn)很簡單,就是3*3的兩個不同方向上的模板運算,這里不再寫出。



????Isotropic Sobel算子:加權(quán)平均算子,權(quán)值反比于鄰點與中心點的距離,當沿不同方向檢測邊緣時梯度幅度一致,就是通常所說的各向同性。

?

?

????在邊沿檢測中,常用的一種模板是Sobel 算子。Sobel 算子有兩個,一個是檢測水平邊沿的;另一個是檢測垂直平邊沿的 。Sobel算子另一種形式是各向同性Sobel(Isotropic Sobel)算子,也有兩個,一個是檢測水平邊沿的 ,另一個是檢測垂直平邊沿的 。各向同性Sobel算子和普通Sobel算子相比,它的位置加權(quán)系數(shù)更為準確,在檢測不同方向的邊沿時梯度的幅度一致。由于建筑物圖像的特殊性,我們可以發(fā)現(xiàn),處理該類型圖像輪廓時,并不需要對梯度方向進行運算,所以程序并沒有給出各向同性Sobel算子的處理方法。
????由于Sobel算子是濾波算子的形式,用于提取邊緣,可以利用快速卷積函數(shù),簡單有效,因此應用廣泛。美中不足的是,Sobel算子并沒有將圖像的主體與背景嚴格地區(qū)分開來,換言之就是Sobel算子沒有基于圖像灰度進行處理,由于Sobel算子沒有嚴格地模擬人的視覺生理特征,所以提取的圖像輪廓有時并不能令人滿意。在觀測一幅圖像的時候,我們往往首先注意的是圖像與背景不同的部分,正是這個部分將主體突出顯示,基于該理論,我們可以給出閾值化輪廓提取算法,該算法已在數(shù)學上證明當像素點滿足正態(tài)分布時所求解是最優(yōu)的。




2.Robert算子

根據(jù)任一相互垂直方向上的差分都用來估計梯度,Robert算子采用對角方向相鄰像素之差

??? 邊緣定位準,但是對噪聲敏感。適用于邊緣明顯且噪聲較少的圖像分割。Roberts邊緣檢測算子是一種利用局部差分算子尋找邊緣的算子,Robert算子圖像處理后結(jié)果邊緣不是很平滑。經(jīng)分析,由于Robert算子通常會在圖像邊緣附近的區(qū)域內(nèi)產(chǎn)生較寬的響應,故采用上述算子檢測的邊緣圖像常需做細化處理,邊緣定位的精度不是很高。


3.Prewitt算子

???該算子與Sobel算子類似,只是權(quán)值有所變化,但兩者實現(xiàn)起來功能還是有差距的,據(jù)經(jīng)驗得知Sobel要比Prewitt更能準確檢測圖像邊緣。

??? 對噪聲有抑制作用,抑制噪聲的原理是通過像素平均,但是像素平均相當于對圖像的低通濾波,所以Prewitt算子對邊緣的定位不如Roberts算子。

Sobel算子:Sobel算子和Prewitt算子都是加權(quán)平均,但是Sobel算子認為,鄰域的像素對當前像素產(chǎn)生的影響不是等價的,所以距離不同的像素具有不同的權(quán)值,對算子結(jié)果產(chǎn)生的影響也不同。一般來說,距離越遠,產(chǎn)生的影響越小。


二階導數(shù)算子


4.Laplacian算子

???拉普拉斯算子是一種二階微分算子,若只考慮邊緣點的位置而不考慮周圍的灰度差時可用該算子進行檢測。對于階躍狀邊緣,其二階導數(shù)在邊緣點出現(xiàn)零交叉,并且邊緣點兩旁的像素的二階導數(shù)異號。

????Laplacian算子:這是二階微分算子。其具有各向同性,即與坐標軸方向無關(guān),坐標軸旋轉(zhuǎn)后梯度結(jié)果不變。但是,其對噪聲比較敏感,所以,圖像一般先經(jīng)過平滑處理,因為平滑處理也是用模板進行的,所以,通常的分割算法都是把Laplacian算子和平滑算子結(jié)合起來生成一個新的模板。

????Laplacian算子一般不以其原始形式用于邊緣檢測,因為其作為一個二階導數(shù),Laplacian算子對噪聲具有無法接受的敏感性;同時其幅值產(chǎn)生算邊緣,這是復雜的分割不希望有的結(jié)果;最后Laplacian算子不能檢測邊緣的方向;所以Laplacian在分割中所起的作用包括:(1)利用它的零交叉性質(zhì)進行邊緣定位;(2)確定一個像素是在一條邊緣暗的一面還是亮的一面;一般使用的是高斯型拉普拉斯算子(Laplacian of a Gaussian,LoG),由于二階導數(shù)是線性運算,利用LoG卷積一幅圖像與首先使用高斯型平滑函數(shù)卷積改圖像,然后計算所得結(jié)果的拉普拉斯是一樣的。所以在LoG公式中使用高斯函數(shù)的目的就是對圖像進行平滑處理,使用Laplacian算子的目的是提供一幅用零交叉確定邊緣位置的圖像;圖像的平滑處理減少了噪聲的影響并且它的主要作用還是抵消由Laplacian算子的二階導數(shù)引起的逐漸增加的噪聲影響。


5.Canny算子

該算子功能比前面幾種都要好,但是它實現(xiàn)起來較為麻煩,Canny算子是一個具有濾波,增強,檢測的多階段的優(yōu)化算子,在進行處理前,Canny算子先利用高斯平滑濾波器來平滑圖像以除去噪聲,Canny分割算法采用一階偏導的有限差分來計算梯度幅值和方向,在處理過程中,Canny算子還將經(jīng)過一個非極大值抑制的過程,最后Canny算子還采用兩個閾值來連接邊緣。

?

?



總結(jié)

以上是生活随笔為你收集整理的OpenCV边缘检测专题的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。