OpenCV захват видео с камеры в Qt

Надеюсь, компиляция прошла успешно =)

[note]Обновил под OpenCV 4.1[/note]

Создаём новый консольный проект, в .pro файле дописываем:

INCLUDEPATH += "/usr/local/opencv/3.1/include/"
LIBS += -L"/usr/local/opencv/3.1/lib/"
LIBS += -lopencv_core \
        -lopencv_features2d \
        -lopencv_highgui \
        -lopencv_imgcodecs \
        -lopencv_imgproc \
        -lopencv_video \
        -lopencv_videoio \
        -lopencv_videostab

Теперь основное main.cpp:

#include <QApplication>
#include <QDebug>

#include "opencv2/opencv.hpp"
#include "opencv2/highgui.hpp"

using namespace std;
using namespace cv;

int main(int argc, char *argv[])
{
    QApplication app(argc, argv);
    qDebug()<<"Hello world";

    //-- Выбираем первую попавшуюся камеру
    VideoCapture cap(0);

    //-- Проверяем, удалось ли подключиться
    if (!cap.isOpened()) {
        qDebug()<<"Camera not opened!";
        return 0;
    }

    //-- Выставляем параметры камеры ширину и высоту кадра в пикселях
    cap.set(CAP_PROP_FRAME_WIDTH, 1280);
    cap.set(CAP_PROP_FRAME_HEIGHT, 960);

    Mat frame;

    while (true) {
        cap >> frame; //-- захватываем очередной кадр

        imshow("Video", frame); //-- показываем его

        char c = waitKey(33); //-- если была нажата клавиша, узнаём её код

        if (c==27) { //-- нажата ESC, прерываем цикл
            break;
        }

    }


    return app.exec();
}

Впринципе, ничего сложного.

Related posts

QML Сделать задержку перед началом анимации

QtCreator не открывает диалог выбора файлов, проектов, не открывает проект

Сборка Qt 6.8 (Dev) из исходников в Docker контейнере (Linux)