OpenCV Quick Start - Canny边缘检测

OpenCV Quick Start - Canny边缘检测

John Canny
OpenCV Quick Start - Canny边缘检测_第1张图片
关于他

#include 
#include 
#include //imgproc.hpp>
using namespace cv;
#pragma comment(lib,"opencv_world452d.lib")


int main(int argc, char** argv)
{
	std::printf("OpenCV: %s\n", CV_VERSION);

	Mat srcImg = imread("res/pig.jpg");
	imshow("【原图】", srcImg);


	Mat dstImg, edge, grayImage;
	dstImg.create(srcImg.size(), srcImg.type());	 // 新的大小一样的存储空间

	cvtColor(srcImg, grayImage, COLOR_BGR2GRAY);	// 彩色转灰度图
	
	blur(grayImage, edge, Size(5, 5));	// 稍微模糊一下

//CV_EXPORTS_W void Canny( InputArray image, OutputArray edges,
//double threshold1, double threshold2,
//int apertureSize = 3, bool L2gradient = false );
	Canny(edge, edge, 3, 9, 3);	// Canny边缘检测


	imshow("【处理】", edge);

	waitKey(0);

	return 0;
}

Canny函数前2个参数一个输入,一个输出,后面就是算法公式的参数了。这里需要注意,不进行降噪处理Blur也是可以的,但会比较多的小点。根据你的图片情况选择。

OpenCV Quick Start - Canny边缘检测_第2张图片

你可能感兴趣的:(OpenCV,Quick,Start,算法,opencv,计算机视觉,c++,边缘检测)