gpt4 book ai didi

c - OpenCV 无法识别网络摄像头,但 mplayer 成功

转载 作者:太空宇宙 更新时间:2023-11-04 12:00:07 25 4
gpt4 key购买 nike

作为一个更大项目的第一步,我尝试使用 OpenCV 从我的网络摄像头显示图像:

#include <stdlib.h>                                                         
#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>

int
main()
{
cv::VideoCapture cap(-1);
if (!cap.isOpened())
exit(EXIT_FAILURE);
cv::Mat frame;
bool done = false;
while (!done) {
cap >> frame;
cv::imshow("webcam", frame);
done = (cv::waitKey(30) >= 0);
}
return EXIT_SUCCESS;
}

这将返回错误代码(!cap.isOpened() 通过,已通过 gdb 确认)。最初我有 0 而不是 -1。搜索本站时提示-1,但无济于事。正如另一位用户所建议的,我还尝试了 13

我可以使用 mplayer 显示我的网络摄像头,更具体地说是 mplayer tv://-tv driver=v4l2

最佳答案

v4l2 是“video for linux”驱动程序。我注意到 OpenCV 可以通过使用 -DWITH_V4L-DWITH_LIBV4L(v4l 在 Gentoo 中使用标志)编译来安装这样的驱动程序。用它重新编译OpenCV后,成功识别网络摄像头。似乎需要 GTK 支持才能显示图像。

关于c - OpenCV 无法识别网络摄像头,但 mplayer 成功,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52809317/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com