首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >OpenCV未初始化USB摄像头

OpenCV未初始化USB摄像头
EN

Stack Overflow用户
提问于 2012-10-15 23:35:31
回答 2查看 2.5K关注 0票数 5

我正在尝试使用OpenCV从USB摄像头捕获视频。

代码语言:javascript
复制
#include <highgui.h>
#include <iostream>

using namespace std;
using namespace cv;

int main()
{
    VideoCapture cap (-1);
    if (!cap.isOpened())
         cout << "Cam initialize failed";
    else cout << "Cam initialized";

    return 0;
}

它无法初始化摄像头。cap.isOpened()返回零。

同样的程序,使用相同版本的OpenCV和相同的USB摄像头,在我朋友的机器上正常运行。我正在运行Fedora 16。摄像头在另一个应用程序(例如,Cheese)中工作正常。

我在Google和Stack Overflow上做了一些搜索。但是没有什么有用的帮助。有什么想法吗?

EN

回答 2

Stack Overflow用户

发布于 2014-03-16 03:41:50

尝试以root身份运行您的程序。你可能没有权限,而且opencv不会告诉你这是否是cap.isOpened()失败的原因。

票数 1
EN

Stack Overflow用户

发布于 2012-10-17 01:18:02

manual here表示VideoCapture::VideoCapture(int device)接受

设备:打开的视频采集设备的id (即摄像头索引)。如果只有一个摄像头连接,只需传入0即可。

我认为如果您的系统中有一个摄像头,则应该将-1更改为0

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12899039

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档