**依賴opencv來做一些資料結構和顯示的工作,但主要的計算法部分是自己實現的。後面爭取依次給出常見的集中邊緣提取的演算法實現。下次補上原理推到說明。
// sobel.cpp : 定義控制台應用程式的入口點。
//#include "stdafx.h"
#include "cv.h"
#include "highgui.h"
#include "math.h"
#include "stdio.h"
#include "malloc.h"
iplimage *image; //宣告iplimage指標
int height,width;
cvscalar sclr;
int sobel_y[9]=; //y方向sobel運算元
int sobel_x[9]=; //x方向sobel運算元
//顯示矩陣bgr
inline void cv3doublematprint( const cvmat* mat )
printf( "\n" ); }}
//sobel演算法
void sobel()
sobel運算元進行邊緣檢測
首先進行高斯模糊,降噪 mat gauimage gaussianblur srcimage,gauimage,size 3,3 0,0,4 原圖如下 將轉換成灰度圖 mat grayimage cvtcolor gauimage,grayimage,color bgr2gray 進行x和y方向的s...
邊緣檢測之Sobel檢測運算元
在討論邊緣運算元之前,首先給出一些術語的定義 1 邊緣 灰度或結構等資訊的突變處,邊緣是乙個區域的結束,也是另乙個區域的開始,利用該特徵可以分割影象。2 邊緣點 影象中具有座標 x,y 且處在強度顯著變化的位置上的點。3 邊緣段 對應於邊緣點座標 x,y 及其方位 邊緣的方位可能是梯度角。二 sob...
Opencv學習 邊緣檢測(sobel運算元)
sobel運算元是乙個主要用於邊緣檢測的離散微分運算元。它結合了高斯平滑和微分求導,用來計算灰度函式的近似梯度。void sobel inputarray src,outputarray dst,int ddepth,int dx,int dy,int ksize 3,double scale 1,...