Идентичная программа на C ++ не работает в другом каталоге в Linux - PullRequest
0 голосов
/ 08 мая 2018

Я сделал простую программу, которая открывает веб-камеру и устанавливает для нее некоторые свойства, используя OpenCV в Debian 9. В течение некоторого времени она работала нормально, используя этот файл CMakeLists.txt:

cmake_minimum_required(VERSION 2.8)
project( P )
find_package( OpenCV REQUIRED )

add_executable( capcheck capcheck.cpp )
target_link_libraries( capcheck ${OpenCV_LIBS} )

Однако теперь, когда я собираю точно такую ​​же вещь, но в другой папке, я получаю эту ошибку при запуске программы:

VIDEOIO ERROR: V4L2: setting property #21 is not supported
VIDIOC_S_CTRL: Invalid argument

Вот .cpp:

#include <iostream>
#include <opencv2/opencv.hpp>

using namespace std;
using namespace cv;

int main()
{
    VideoCapture capture;
    Mat sketchMat;
    if (!capture.open(1))
    {
        cout << "ERROR: Could not open camera " << 1 << endl;
        return -1;
    }
    capture.set(CV_CAP_PROP_FRAME_WIDTH, 1920);
    capture.set(CV_CAP_PROP_FRAME_HEIGHT, 1080);
    capture.set(CAP_PROP_AUTO_EXPOSURE, 0.25);
    capture.set(CAP_PROP_EXPOSURE, 0.03);
    capture.read(sketchMat);
    return 0;
}

Спасибо за любую помощь.

...