изображение появляется зеленым после захвата OpenCV

У меня есть этот код, который захватывает изображение с веб-камеры с помощью OpenCV:

#include <opencv2/objdetect/objdetect.hpp>
#include <opencv2/highgui/highgui.hpp>
#include <opencv2/imgproc/imgproc.hpp>

#include <iostream>
#include <stdio.h>

using namespace std;
using namespace cv;

int main( )
{
VideoCapture cap(0); // open the default camera
if(!cap.isOpened())  // check if we succeeded
return -1;

Mat meter_image;
cap >> meter_image;

imwrite("/boneCV-master/img.jpg", meter_image);

return 0;
}

Я получаю следующее изображение в качестве вывода.

введите описание изображения здесь

Раньше все работало нормально. Я не знаю, что происходит. Я попробовал самый простой из всех кодов при поиске, но ничего не получалось. Пожалуйста, дайте мне знать, что может быть не так с этим.

заранее спасибо.

РЕДАКТИРОВАТЬ

Одна вещь, которую я забыл упомянуть, это то, что я работаю над beagleBone Black. этот же кусок кода прекрасно работает с моим Mac.

1

Решение

Может быть, добавление проверки кадров будет полезно.

Mat meter_image;
while(meter_image.empty()){
cap >> meter_image;
}

Но есть риск бесконечного цикла.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]