c++ - 在 opencv 中获取 cv::VideoCaputre 的正确分辨率?=

标签 c++ c opencv

我有一台分辨率为 1280x1024 的相机,当我启动我的程序时,我得到了一个 680x420 的帧,但我无法使用它。所以这是我所做的

cv::VideoCapture cap(0);
cap.set(CV_CAP_PROP_FRAME_WIDTH,1280);
cap.set(CV_CAP_PROP_FRAME_HEIGHT,1024);

我遇到的问题是我的程序应该适用于不同的相机,我如何才能确保 opencv 单独获得正确的分辨率?

最佳答案

就 openCV 而言,680 x 420 是“正确”的分辨率。如果您想要一张具有特定分辨率的图像,您需要告诉 opencv 使用什么分辨率(就像您现在所做的那样)。

如果 openCV 无法使用提供的分辨率,它将使用最接近的可能值。

关于c++ - 在 opencv 中获取 cv::VideoCaputre 的正确分辨率?=,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18512292/

相关文章:

c++ - for 循环异常 C++

c++ - C++ 中自定义类的 HashMap 中的默认值

c - 禁止 C 预处理器更改缩进

c - 使用 printf 打印 clock_t 的正确方法是什么?

python - 我如何在opencv python中解决 “NoneType Error”

c++ - 未设置 SDL_Texture

c++ - 使用概念的模板类方法特化

如果在调用任何函数后调用 gtkfilechooser,C GTK+ 段错误

python - 在矩形python中绘制图像

c++ - 写入 InputOutputArray 抛出异常