我在Windows 10 64位上使用OpenCV 3.1.0。我希望能夠設置攝像頭的分辨率,同時攝像頭仍然工作。相機工作後設置分辨率很容易。但是當攝像頭捕捉時我無法設置分辨率。OpenCV:在捕獲時更改VideoCapture的分辨率
這裏是我的代碼:
cv::VideoCapture cap(0);
cap.set(cv::CAP_PROP_FRAME_WIDTH, 0x7FFFFFFF); // working
cap.set(cv::CAP_PROP_FRAME_HEIGHT, 0x7FFFFFFF); // working
while (true) {
cv::Mat frame;
cap >> frame;
if (!frame.data) continue;
cv::imshow("test", frame);
if (cv::waitKey(1) >= 0) break;
int newHeight = 500 + rand() % 4 * 100;
cap.set(cv::CAP_PROP_FRAME_HEIGHT, newHeight); // not working
}
int newHeight = 500 + rand() % 4 * 100;
cap.set(cv::CAP_PROP_FRAME_HEIGHT, newHeight); // not working
我很狡猾,我的攝像頭支持。我從你的評論中得到了一條小貼士,並找到了問題。謝謝你了。 –