c++ - 带有网络摄像头 c930e 罗技的 OpenCv

标签 c++ qt opencv logitech

情况是这样的:

我们已经设法让相机与 OpenCv 2.4.0 和 Qt 5.0.2 一起工作。 相机应该能够以 30 fps 的速度录制 1080p 视频。

但是,在以 1920x1080 录制时,我们卡在了 10 fps。

这是我们使用的代码:

Capture cv::VideoCapture;
Capture.open(0);
Capture.set(CV_CAP_PROP_FRAME_WIDTH, 1920):
Capture.set(CV_CAP_PROP_FRAME_HEIGHT, 1080);

我们已经尝试使用此命令(我们从 Capturing 1080p at 30fps from logitech c920 with openCV 2.4.3 获得):

Capture.set(CV_CAP_PROP_FOURCC, 'M', 'J', 'P', 'G');

但没有任何成功。

我们相信相机的流可以以 h264(由于相机进行的内部转换)或 mjpg 格式捕获。

就像我们说的,我们有点困惑/迷茫。

欢迎任何建议! 谢谢

最佳答案

你的问题的解决方案已经在你链接到的另一个问题中提到:你必须在设置所需的分辨率之前设置编解码器:

Capture cv::VideoCapture;
Capture.open(0);
Capture.set(CV_CAP_PROP_FOURCC, CV_FOURCC('M','J','P','G'))
Capture.set(CV_CAP_PROP_FRAME_WIDTH, 1920):
Capture.set(CV_CAP_PROP_FRAME_HEIGHT, 1080);

关于c++ - 带有网络摄像头 c930e 罗技的 OpenCv,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18785362/

相关文章:

c++ - SDL2 操纵杆事件未触发

c++ - 使用 Rcpp 的 R 快速 cbind 矩阵

c++ - 计算字符串中子字符串的出现次数

java - 混合 C++/Qt/Java 应用程序

c++ - 如何仅使用 OpenCV HighGui 制作一个简单的一键式窗口?

c++ - 使用智能指针时递归函数中的段错误

python - ipython qt 控制台 : change the default working directory

c++ - Qt QML 和 3d : are these two frameworks the same?

python - 如何防止 HoughLines 多次检测某些行

opencv - 无法在64位Windows 7上运行Opencv GPU