【发布时间】:2012-06-12 09:29:39
【问题描述】:
我有一个能够支持 1080p 30fps 的网络摄像头,我已通过使用 VirtualDub 来预览和保存来自网络摄像头本身的视频来确认这一点。
出于某种原因,OpenCV 只会给我大约 4FPS,CPU 没有使任何内核最大化,所以我不明白为什么? (顺便说一句,这并没有实际输出提要,只是获取帧)。
有OpenCV经验的人知道为什么吗?可能是 OpenCV 没有使用 DirectShow 从网络摄像头读取数据(假设 DirectShow 是 30fps/1080p 所需的 - 我相信这就是 virtualdub 使用的)。 OpenCV 将图像读入其专有数据类型Mat 的事实是否会成为瓶颈?
我的相机是 Microsoft LifeCam Studio,我的操作系统是带有 Visual Studios 2010 的 Windows 7。
有人有什么想法吗?
【问题讨论】:
-
我也有这个问题。你解决了吗?你能在这里发布一些可能的解决方案吗?
-
使用 DirectX 进行捕获。