Когда я и мой друг запускаем этот код, вывод — просто черное окно. Мы ожидали, что он начнет потоковое видео с нашей камеры RaspberryPi. Мы используем RaspberryPi, RaspberryPi Camera, openCv и библиотеку Raspicam.
Вот наш код:
#include <opencv2/opencv.hpp>
#include "opencv2/highgui/highgui.hpp"#include <raspicam_cv.h>
#include <iostream>
using namespace std;
using namespace cv;
int main()
{
raspicam::RaspiCam_Cv Camera;
namedWindow("color", CV_WINDOW_AUTOSIZE);
while(1)
{
Mat image;
Camera.grab();
Camera.retrieve(image);
imshow("color", image);
waitKey(33);
}
return (0);
}
Вот это ссылка на учебник, который мы использовали для установки библиотеки RaspiCam. Если вам нужна дополнительная информация, пожалуйста, дайте мне знать. Спасибо!
Вам нужно открыть камеру, чтобы использовать ее.
Перед вашей петлей:
if( !Camera.open() )
{
std::cerr << "Cannot open the camera" << std::endl;
}
Метод grab () возвращает логическое значение. Вы можете проверить, есть ли ошибка или нет, когда вы хотите получить изображение.
Кроме того, вы должны указать желаемую цветовую кодировку. По умолчанию используется RGB, но он потребляет много ресурсов процессора.
Других решений пока нет …