自学内容网 自学内容网

opencv VideoCapture

videocapture顾名思义视频捕捉,主要是从视频文件、摄像头或网络摄像头获取视频流数据,并将其作为一系列帧进行处理。
我们这里主要实现了获取项目文件夹下的1.mp4视频文件,然后经过灰度变化、均值滤波、边缘检测然后将视频显示出来

#include <opencv2/highgui/highgui.hpp>
#include <opencv2/imgproc/imgproc.hpp>
using namespace cv;
int main() {
VideoCapture capture("1.mp4");
Mat edges;
while (1) {
Mat frame;
capture >> frame;
cvtColor(frame, edges, COLOR_BGR2GRAY);
blur(edges, edges, Size(7, 7));
Canny(edges, edges, 0, 30, 3);
imshow("读取视频", edges);
waitKey(30);
}
return 0;
}

下面就是显示的视频流,在一个循环里,一次只拿到一帧数据处理
在这里插入图片描述
对了,我尝试了注释waitKey函数,发现注释其后,视频无法播放。
waitKey函数的作用不仅是等待指定的时间,还可以处理键盘输入事件,确保图像窗口能够正确显示并保持打开状态。因此,保留waitKey函数对于视频播放和显示是非常重要的。
VideoCapture capture(0);这个里面也可以把视频路径改为0,会调用笔记本的摄像头。


原文地址:https://blog.csdn.net/weixin_48657573/article/details/136396354

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!