VS2013+OpenCV 经过Canny边缘检测后的视频图

#include <iostream>
#include "opencv2\opencv.hpp"
using namespace std;
using namespace cv;
int main()
{
	
	VideoCapture capture("SampleVideo.avi");//读入视频
	Mat edges;
	//循环显示每一帧
	while (1)
	{	
		Mat frame;//定义一个Mat变量,用于存储每一帧的图像
		capture >> frame;//读取当前帧

		//若视频播放完成,退出循环
		if (frame.empty())
		{
			break;
		}
		
		//将原图像转换为灰度图
		cvtColor(frame, edges, CV_BGR2GRAY);
	  
		//使用内核来降噪
		blur(edges,edges,Size(7,7));//进行模糊
		//进行Canny边缘检测并显示
		Canny(edges,edges,0,30,3);

		imshow("video", edges);		//显示当前帧
		waitKey(100);//延时30ms
		
	}
	return 0;
}

检测结果图,如下图所示:

经过Canny边缘检测后的视频图

猜你喜欢

转载自blog.csdn.net/any1234567890/article/details/82800433