图像处理之Canny边缘检测
2014-08-21 09:31
281 查看
Canny边缘检测是目前最有效的边缘检测。
因为边缘检测使用一阶微分或二阶微分,微分对噪声敏感,因此进行微分前,需对图像进行降噪处理。
#include "cv.h"
#include "highgui.h"
using namespace std;
using namespace cv;
int main(int argc,char *argv[])
{
Mat src,srcGray,srcEdge,dst;
src=imread("src2.jpg");
imshow("src",src);
cvtColor(src,srcGray,CV_BGR2GRAY);
blur(srcGray,srcGray,Size(3,3));
Canny(srcGray,srcEdge,20,80);
dst.create(src.size(),src.type());
dst=Scalar::all(0);
src.copyTo(dst,srcEdge);
imshow("dst",dst);
waitKey(0);
destroyAllWindows();
return 0;
}重要函数
实验效果:
因为边缘检测使用一阶微分或二阶微分,微分对噪声敏感,因此进行微分前,需对图像进行降噪处理。
#include "cv.h"
#include "highgui.h"
using namespace std;
using namespace cv;
int main(int argc,char *argv[])
{
Mat src,srcGray,srcEdge,dst;
src=imread("src2.jpg");
imshow("src",src);
cvtColor(src,srcGray,CV_BGR2GRAY);
blur(srcGray,srcGray,Size(3,3));
Canny(srcGray,srcEdge,20,80);
dst.create(src.size(),src.type());
dst=Scalar::all(0);
src.copyTo(dst,srcEdge);
imshow("dst",dst);
waitKey(0);
destroyAllWindows();
return 0;
}重要函数
实验效果:
相关文章推荐
- 图像处理中各种边缘检测的微分算子简单比较(Sobel,Robert, Prewitt,Laplacian,Canny)
- OpenCV之imgproc 模块. 图像处理(2)实现自己的线性滤波器 给图像添加边界 Sobel 导数 Laplace 算子 Canny 边缘检测
- 【数字图像处理】Canny边缘检测详解及编程实现
- 图像处理之Canny边缘检测
- 【数字图像处理】Canny边缘检测详解及编程实现
- 图像处理(四):边缘检测(二):sobel和canny
- 【数字图像处理】Canny边缘检测详解及编程实现
- 图像处理中各种边缘检测的微分算子简单比较(Sobel,Robert, Prewitt,Laplacian,Canny)
- 【数字图像处理】Canny边缘检测详解及编程实现
- 图像处理中各种边缘检测的微分算子简单比较(Sobel,Robert, Prewitt,Laplacian,Canny)
- 图像处理中各种边缘检测的微分算子简单比较(Sobel,Robert, Prewitt,Laplacian,Canny)
- 图像处理--opencv2 canny边缘检测
- 图像处理之Canny边缘检测
- [转]图像处理中各种边缘检测的微分算子简单比较(Sobel,Robert,Priwitt,Laplacian,Canny)
- 图像处理中各种边缘检测的微分算子简单比较(Sobel,Robert, Prewitt,Laplacian,Canny)
- 【数字图像处理】Canny边缘检测详解及编程实现
- 图像处理中各种边缘检测的微分算子简单比较(Sobel,Robert, Prewitt,Laplacian,Canny)
- 图像处理------Canny边缘检测
- 图像处理之Canny边缘检测
- 图像处理中各种边缘检测的微分算子简单比较(Sobel,Robert, Prewitt,Laplacian,Canny)