我想在python中使用opencv编码简单的人脸检测。 但不幸的是,我的opencv拒绝检测我的摄像头。 我不确定它是如何在内部工作的,因为文档是非常有限的,但是CaptureFromCAM(-1)返回一些对象,但是QueryFrame返回nones。 当我尝试使用我的两个摄像头之一,例如在奶酪,我得到video没有问题。
capture = cv.CaptureFromCAM(-1) faceCascade = cv.Load("haarcascade_frontalface_alt.xml") while (cv.WaitKey(15)==-1): img = cv.QueryFrame(capture) if img != None: image = DetectFace(img,faceCascade) cv.ShowImage("face detection test",image) cv.ReleaseCapture(capture)
有任何想法吗?
OpenCV 2.3(C ++,QtGui),初始化一些特定的USB设备和设置的问题
为什么Windows只允许一个应用程序访问摄像头?
使用Opencv直接从networking摄像头获取灰度图像
在c#应用程序中访问摄像头输出的问题
如何获得在Linux(Ubuntu的)video捕捉设备(networking摄像头)列表? (C / C ++)
好的,我明白了。 基本上我的openvc是用v4l(video for linux)支持编译的。
在解决这个问题时,首先需要确保你的相机使用v4l来处理其他应用程序。 如果是这样的话,那么你可以尝试用v4l支持来重新编译openvc。 gentoo(使用portage)非常简单:
sudo su USE="v4l v4l2" emerge -av opencv
对于其他软件包管理者,可以通过USE_V4L = ON从源代码中找出或编译。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。