目录
前言
毕业几年了,没有做图像处理方面的工作,但一直对此保持着热爱,目前感觉有点陌生了,所以从头开始温习。《今日温习调用摄像头》
配置
新建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,目前已经很高版本了,且功能比之前稳定丰富了许多。