Драйвер камеры доступа Logitech C270 из OpenCV в C++

Есть ли способ доступа к драйверу камеры из OpenCV, чтобы отключить оптимизацию изображения?

Когда я начал играть с камерой, я написал простое приложение для измерения скорости FPS, но я получал только 15 кадров вместо 30 FPS с разрешением 640x480, как указано в технических характеристиках камеры.

Я провел некоторое исследование и обнаружил, что могу отключить функцию "RightLight" на "программном обеспечении веб-камеры Logitech" (дополнительное программное обеспечение с веб-сайта Logitech). Я сделал это и получил 30 кадров.

Я хотел бы программно убедиться, что функция "RightLight" отключена при запуске приложения без использования дополнительного программного обеспечения. Есть ли способ сделать это?

void testFPS() {

cv::VideoCapture cap(0);

//cap.set(cv::CAP_PROP_SETTINGS, 1); //open the settings menu


cap.set(cv::CAP_PROP_FRAME_WIDTH, 640);
cap.set(cv::CAP_PROP_FRAME_HEIGHT, 480);

cap.set(cv::CAP_PROP_FPS, 30);
cap.set(cv::CAP_PROP_AUTOFOCUS, 0);

int frameCounter = 0;
std::stringstream ss;

cv::Mat mat;
auto start = std::chrono::high_resolution_clock::now();


while (true) {      

    cap >> mat;
    frameCounter++;


    auto finish = std::chrono::high_resolution_clock::now();
    std::chrono::duration<double> elapsed = finish - start;

    double fps = frameCounter / elapsed.count();

    ss.str("");
    ss << "FPS: " << fps;

    cv::putText(mat, ss.str(), cv::Point(30, 30), cv::FONT_HERSHEY_SIMPLEX, 0.8, cv::Scalar(0, 0, 255), 1, cv::LINE_AA);

    cv::imshow("Win", mat);

    if (cv::waitKey(30) >= 0) { //esc
        break;
    }
}
}

PS

Есть еще одна странная вещь (ошибка), которую я обнаружил. Если я отсоединяю камеру и подключаю ее снова, я получаю только 15 кадров, и "Logitech Webcam-Software" показывает мне, что функция "RightLight" отключена. Однако в этом случае я получаю только 15 кадров от объекта VideoCaputre OpenCV. Чтобы решить эту проблему, я должен включить функцию "RightLight" и отключить ее снова, чтобы убедиться, что я получу 30 кадров.

0 ответов

Другие вопросы по тегам