opencv - 在 OpenCV 3 中使用 OSVR 相机

标签 opencv computer-vision osvr

我正在尝试在 OpenCV 3.1 中使用 OSVR 红外摄像头。

初始化工作正常。

相机上的绿色 LED 亮起。

当我调用 VideoCapture.read(mat) 时,它返回 false 并且 mat 为空。 其他相机使用相同的代码工作正常,VLC 可以从 OSVR 相机抓取流。

一些进一步的测试表明:grab() 返回 true,而 retrieve(mat) 再次返回 false。 从相机获取宽度和高度会产生预期结果,但 MODE 和 FORMAT 得到 0。

这是配置问题吗?能否通过 VideoCapture.set 调用的组合来解决?

最佳答案

Alternative 从开发者那里得到的官方回答(在我自己的解决方案之后): 我的相机无法与 OpenCV 开箱即用的原因可能是它有旧固件(pre-v7)。

解决方法(或仅更新固件):

我在浏览与该问题远程链接的任何内容时在这里找到了答案: Fastest way to get frames from webcam

您需要指定它应该使用 DirectShow。

VideoCapture capture( CV_CAP_DSHOW + id_of_camera );

关于opencv - 在 OpenCV 3 中使用 OSVR 相机,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41061113/

相关文章:

c++ - OpenCV:给 imread() 的链接失败

machine-learning - 使用 LIBSVM 的多类

python - Pytorch:交叉熵的维度是正确的,但对于 MSE 来说有点错误?

Python-CV2改变维度和质量

linux - 在 Linux 上安装 OSVR - 设置二进制目录

python - cx_Freeze 未检测到 cv2

opencv VideoCapture.set 灰度?

OpenCV 模板匹配最大最小值返回错误值