使用opencv读取视频并对视频进行canny边缘检测
代码如下:
#include <opencv2\opencv.hpp>
using namespace cv;
int main()
{
VideoCapture capture("1.avi");
Mat edges;//定义一个Mat变量,用于存储每一帧经过处理后的图像图像
while(1)
{
Mat frame;//定义一个Mat变量,用于存储每一帧图像
capture>>frame;//读取当前帧
cvtColor(frame, edges, COLOR_BGR2GRAY);//转化RBG图像为灰度图像
blur(edges, edges, Size(7, 7));//使用3*3内核来降噪(2*3+1=7),进行模糊
Canny(edges, edges, 0, 30, 3);//进行canny边缘检测
if(frame.empty())
{
break;
}
imshow("被canny后的视频", edges);
waitKey(30);
}
return 0;
}
视频运行效果截图:
所用的视频下载:链接:http://pan.baidu.com/s/1dENxmhV 密码:u8i2