opencv學習19 邊緣檢測

2021-08-28 18:40:39 字數 2098 閱讀 8997

一、

1.呼叫api實現邊緣檢測:

1)讀入灰度影象

2)使用高斯濾波去除影象中的一些雜訊點,平滑影象

3)使用canny邊緣檢測演算法

2. cv2.gaussianblur(img,size,sigmax),高斯濾波,去除影象雜訊點,使影象整體平滑

img,原影象

size,濾波視窗/高斯矩陣尺寸(通常為奇數),越大越模糊

sigmax,高斯矩陣標準差,越大越模糊

3.cv2.canny(img, threshold1, threshold2[, edges[, aperturesize[, l2gradient ]]])

img,原影象

threshold1,最小閾值,用於處理不連續的小邊緣

threshold2,最大閾值,用於識別較明顯的連續大邊緣

4.sobel運算元:

1)橫向互相關/卷積模版:

計算得到橫向梯度與縱向梯度

2)計算梯度浮值/畫素值,等於橫向梯度平方加縱向梯度平方的和後再開方。

3)將梯度浮值與閾值比較,判斷是否為邊緣

二、1.api

# sobel 運算元

Opencv學習 邊緣檢測(Laplacian)

laplacian運算元是n維歐幾里德空間中的乙個二階微分運算元,定義為梯度grad的散度div。根據影象處理的原理可知,二階導數可以用來進行檢測邊緣。讓一副影象減去它的laplacian運算元可以增強對比度。void laplacian inputarray src,outputarray dst...

Opencv 邊緣檢測

2018 7 5 凌晨 萬萬要認真,今晚抄書都能抄錯,是在該打。書上的一行 graysrc cv2.cvtcolor blurredsrc,cv2.color bgr2gray 硬生生被我抄成了 graysrc cv2.cvtcolor blurredsrc,cv2.color bayer bgr2...

opencv 邊緣檢測

include stdafx.h include using namespace cv using namespace std int edgethresh 1 宣告 原始,灰度,和 canny邊緣 mat image,cedge mat gray,edge void ontrackbar int,...