Я столкнулся со странной проблемой.
Я могу загрузить и показать изображение. Кроме того, я могу сделать снимок, но не могу увидеть изображение на дисплее. Камера подключена нормально и снимает изображение нормально, но не может видеть изображение.
Моя система — окно 10-64 бит с opencv 3.3.0.
Код ниже.
int main()
{
cv::VideoCapture cap(0);
if (!cap.isOpened()) {
std::cerr << "camera didn't connected." << std::endl;
return 0;
}
int nFrame = 0;
cv::Mat image = cv::imread("orgin102.jpg");
cv::imshow("image", image);
cvWaitKey(0);
while (true) {
cv::Mat origin;
cap >> origin;
//flip orign
flip(origin, origin, 1);
nFrame++;
cv::imshow("image", origin);
//if (cv::waitKey(27) >= 0) break;
cvWaitKey(0);
}
return 0;
}
Я исправил эту проблему, изменив параметр cap.
вот
cv::VideoCapture cap(1);
Для некоторых систем индекс 0 отображается как первая камера. а для других индекс 1 показывает первую камеру.
Надеюсь это поможет.
Ура!
Других решений пока нет …