摄像头读取视频帧

复制代码
#include <opencv2/opencv.hpp>
#include <iostream>

using namespace cv;
using namespace std;

int main(int argc, char** argv) {
    VideoCapture capture(0);
    if (!capture.isOpened()) {
        printf("could not load video data...\n");
        return -1;
    }
    
    double fps = capture.get(CV_CAP_PROP_FPS);  // 获取视频帧fps
    Size size = Size(capture.get(CV_CAP_PROP_FRAME_WIDTH), capture.get(CV_CAP_PROP_FRAME_HEIGHT));
    //获取帧图像的宽度和高度 size( , )
    printf("FPS : %f", fps);
    VideoWriter writer("L:/opencv_picture/wv_demo.mp4", CV_FOURCC('D', 'I', 'V', 'X'), 15.0, size, true);
    //将摄像头采集的视频写到一个mp4的文件中
    //VideoWriter writer 函数的参数:
    //1.文件位置名称格式  2.编码器(为-1时可以选着编码方式)3.录制帧数 4.录制视频的size 5.true


    // create window
    Mat frame;
    namedWindow("video-demo", CV_WINDOW_AUTOSIZE);

    // show each frame and save
    while (capture.read(frame)) {
        imshow("video-demo", frame);
        writer.write(frame);
        char c = waitKey(100);
        if (c == 27) {
            break;
        }
    }

    waitKey(0);
    return 0;
}
复制代码

 

posted @   量子与太极  阅读(113)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
点击右上角即可分享
微信分享提示