学习Opencv3---利用VideoWriter读取视频到本地

保存视频图像,Opencv提供了简单的方法,可以将帧依次输入到视频文件中。
VideoWriter的构造函数

    CV_WRAP VideoWriter(const String& filename, int fourcc, double fps,Size frameSize, bool isColor = true);

filename:保存视频的路径
fourcc:保存视频的编码格式,若为-1会弹出个编码选择框
fps:视频的帧率
frameSize:视频的分辨率
isColor :默认为真(保存彩色帧),反之为灰度帧

//    cv::VideoCapture cap("C:\\Users\\chuan\\Desktop\\123.mp4");  //读取视频文件
//    double fps = cap.get(cv::CAP_PROP_FPS);
    cv::VideoCapture cap(0);   //摄像头序号
    double fps = 30;
    cv::Size size((int)cap.get(cv::CAP_PROP_FRAME_WIDTH), (int)cap.get(cv::CAP_PROP_FRAME_HEIGHT));   //视频的分辨率

    cv::VideoWriter writer;
    writer.open("C:\\Users\\chuan\\Desktop\\321.mp4", CV_FOURCC('D','I','V','X'),fps,size);
    cv::Mat frame;
    for(;;)
    {
    
    
        cap >> frame;
        if(frame.empty()) break;
        cv::imshow("examp",frame);
        writer << frame;
        char c = cv::waitKey(10);
        if(c==27)break;
    }
    writer.release();

猜你喜欢

转载自blog.csdn.net/qq_42401265/article/details/107689058