Qt+opencv调用摄像头显示实时视频并保存视频文件

目录

前言        

配置

代码

结果

结语


前言        

        毕业几年了,没有做图像处理方面的工作,但一直对此保持着热爱,目前感觉有点陌生了,所以从头开始温习。《今日温习调用摄像头》

配置

        新建Qt控制台程序,引入opencv库(440版本):

win32: LIBS += -LD:/other/learn/cpp/thirdpart/opencv440/mingw/x64/lib/ -llibopencv_world440.dll

INCLUDEPATH += D:/other/learn/cpp/thirdpart/opencv440/mingw/x64/include
DEPENDPATH += D:/other/learn/cpp/thirdpart/opencv440/mingw/x64/include

代码

#include <QCoreApplication>
#include <QDebug>
#include <iostream>
#include <opencv2/opencv.hpp>
using namespace cv;
using namespace std;

int main()
{
    VideoCapture cap(0);
    VideoWriter writer;

    if(!cap.isOpened())
    {
        cout << "cap open failed!"<<endl;
        return -1;
    }

    //获取当前摄像头的视频信息
    Size S = Size((int)cap.get(CAP_PROP_FRAME_WIDTH),(int)cap.get(CAP_PROP_FRAME_HEIGHT));

    writer.open("D:/test.avi", VideoWriter::fourcc('M','J','P','G'), 30, S, true);

    if(!writer.isOpened())
    {
        cout << "writer open failed!"<<endl;
        return -1;
    }


    while (1) {
        Mat frame;
        cap >> frame;

        writer << frame;

        if(frame.empty())
        {
            cout << "Finish"<< endl;
        }

        imshow("Input video", frame);

        waitKey(30);
    }

    cap.release();
    writer.release();

    return 0;
}

结果

https://live.csdn.net/v/233838https://live.csdn.net/v/233838

结语

        opencv的更新换代确实是强,功能也确实强,几年前用的还是2版本,顶多用上3,目前已经很高版本了,且功能比之前稳定丰富了许多。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

我啥都会

如果觉得对您有帮助,打赏一下吧

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值