閾值,邊緣檢測

2021-08-28 16:30:57 字數 899 閱讀 3626

#include #include #include #include using namespace cv;

using namespace std;

#define path "/users/mac/clionprojects/opencv_test/"

// 濾波: 以高斯濾波為例,低通是模糊(邊緣不明顯),高通是銳化(強調邊緣和噪音)

// 膨脹和腐蝕都是相對於高亮區域, 膨脹dilate是擴充套件高亮區域,腐蝕是縮小

// 膨脹用核周圍最大值代替核中心, 腐蝕用核周圍最小值代替

// 高斯金字塔:高斯核卷積後池化 層層降取樣

// 拉普拉斯金字塔:

// 一般值為-1或者size()為預設型別

// 自適應閾值:根據臨近畫素值決定閾值大小(而不是全域性固定乙個閾值),但是二值化後的值仍是全域性一致的

int main()

邊緣檢測(canny)

#include #include #include #include using namespace cv;

using namespace std;

#define path "/users/mac/clionprojects/opencv_test/"

/** cannya檢測:

1.高斯濾波消除雜訊

2.計算梯度和方向,利用sobel運算元計算x,y方向梯度,合成後有幅值和方向,方向背量化為0,45,90,135

3.非極大值抑制,消除非邊緣畫素

4.滯後閾值(雙閾值)

高過高閾值則保留為邊緣畫素

低於低閾值則被排除

處於中間的若連線至高閾值畫素時保留

*/int main()

Canny邊緣檢測

1.canny邊緣檢測基本原理 1 圖象邊緣檢測必須滿足兩個條件 一能有效地抑制雜訊 二必須盡量精確確定邊緣的位置。2 根據對訊雜比與定位乘積進行測度,得到最優化逼近運算元。這就是canny邊緣檢測運算元。3 類似與marr log 邊緣檢測方法,也屬於先平滑後求導數的方法。2.canny邊緣檢測演...

Canny邊緣檢測

canny運算元是邊緣檢測運算元中最常用的一種,是公認效能優良的一種運算元,常被其它邊緣檢測運算元作為標準運算元進行優劣分析。canny演算法基本可以分為3個步驟 平滑 梯度計算 基於梯度值及梯度方向的候選點過濾 1 平滑 影象梯度的計算對雜訊很敏感,因此必須首先對其進行低通濾波。在這裡使用5 5的...

Sobel 邊緣檢測

sobel邊緣檢測演算法 索貝爾運算元 sobel operator 主要用作邊緣檢測,在技術上,它是一離散性差分運算元,用來運算影象亮度函式的灰度之近似值。在影象的任何一點使用此運算元,將會產生對應的灰度向量或是其法向量 sobel 卷積因子為 該運算元包含兩組 3x3的矩陣,分別為橫向及縱向,將...