一段基于OpenCV2的代码。
作用是从摄像头获取帧并将帧写入指定的视频文件中。
需要注意的是,视频文件所在的路径需要存在,例如D:/images/1.avi。images这个目录需要存在。调用VideoWrite类对象的成员函数open时,编解码方式参数设置为-1,代码运行时会弹出对话框,手动选择编解码方式。
#include<opencv2\highgui\highgui.hpp>
#include<opencv2\imgproc\imgproc.hpp>
#include<opencv2\core\core.hpp>
int main()
{
//打开摄像头
cv::VideoCapture captrue(0);
//视频写入对象
cv::VideoWriter write;
//写入视频文件名
std::string outFlie = "D:/1.avi";
//获得帧的宽高
int w = static_cast<int>(captrue.get(CV_CAP_PROP_ _WIDTH));
int h = static_cast<int>(captrue.get(CV_CAP_PROP_ _HEIGHT));
cv::Size S(w, h);
//获得帧率
double r = captrue.get(CV_CAP_PROP_FPS);
//打开视频文件,准备写入
write.open(outFlie, -1, r, S, true);
//打开失败
if (!captrue.isOpened())
{
return 1;
}
bool stop = false;
cv::Mat ;
//循环
while (!stop)
{
//读取帧
if (!captrue.read( ))
break;
cv::imshow("Video", );
//写入文件
write.write( );
if (cv::waitKey(10) > 0)
{
stop = true;
}
}
//释放对象
captrue.release();
write.release();
}
以上这篇OpenCV2从摄像头获取帧并写入视频文件的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。
继续阅读与本文标签相同的文章
-
“捅破”自动驾驶量产神话,Arm从幕后走到台前“GGAI视角”
2026-05-15栏目: 教程
-
综合续航里程达520km,试驾小鹏G3
2026-05-15栏目: 教程
-
谷歌Pixel 4闭眼、睡着都能解锁?
2026-05-15栏目: 教程
-
搭载L2自动驾驶,起售价7.58万,名爵ZS动力配置全面升级
2026-05-15栏目: 教程
-
敢和百万豪车叫板的Aion LX,实现L3级别自动驾驶!
2026-05-15栏目: 教程
