OpenCV 设置分辨率导致阅读框失败
OpenCV setting resolution results failing in reading frames
我试图用我的 raspberry pi 4 b 更改 raspicam v2 的分辨率,但每次我尝试读取帧时,这段代码都会给我错误...我是否遗漏了什么?我可以在不设置这些参数的情况下轻松读取帧,但它给我的分辨率真的很差。
#include "opencv2/opencv.hpp"
using namespace cv;
int main(int argc, char **argv)
{
VideoCapture cap;
if (!cap.open(0))
return 0;
cap.set(CAP_PROP_FRAME_WIDTH, 1920);
cap.set(CAP_PROP_FRAME_HEIGHT, 1080);
cap.set(CAP_PROP_FPS, 1);
for (;;)
{
Mat frame;
if(cap.read(frame))
{
std::cout << "I'm trying out" << std::endl;
imwrite("test.jpg",frame);
return 0;
} else{
std::cout << "doesn't went as planned" << std::endl;
}
}
return 0;
}
问题出在raspi-config
,我以为我已经通过config.txt启用了摄像头,但我没有。所以当我进入接口选项卡并启用相机时,一切都运行良好。谢谢大家的帮助:)
我试图用我的 raspberry pi 4 b 更改 raspicam v2 的分辨率,但每次我尝试读取帧时,这段代码都会给我错误...我是否遗漏了什么?我可以在不设置这些参数的情况下轻松读取帧,但它给我的分辨率真的很差。
#include "opencv2/opencv.hpp"
using namespace cv;
int main(int argc, char **argv)
{
VideoCapture cap;
if (!cap.open(0))
return 0;
cap.set(CAP_PROP_FRAME_WIDTH, 1920);
cap.set(CAP_PROP_FRAME_HEIGHT, 1080);
cap.set(CAP_PROP_FPS, 1);
for (;;)
{
Mat frame;
if(cap.read(frame))
{
std::cout << "I'm trying out" << std::endl;
imwrite("test.jpg",frame);
return 0;
} else{
std::cout << "doesn't went as planned" << std::endl;
}
}
return 0;
}
问题出在raspi-config
,我以为我已经通过config.txt启用了摄像头,但我没有。所以当我进入接口选项卡并启用相机时,一切都运行良好。谢谢大家的帮助:)