我一直在使用anaconda在python中的opencv中遇到网络摄像头问题.
问题如下:
如果通过以下两种方式之一安装了opencv,则无法打开网络摄像头:
pip install opencv-python(可用的3.1、3.2、3.3),或
pip install opencv-contrib-python(可用3.2,3.3)
但是,只有当我从
conda安装opencv(可用的opencv 3.1)
但是,opencv的某些功能仅在较新版本或condab版本中才提供,而contrib版本当前无法通过conda获得.
有谁知道为什么pip版本不起作用?
更新=> pypi上的Pip Packgage未与FFMPEG for Linux链接:
conda install -c conda-forge opencv提供3.3,但没有contrib
?=>如果需要其他版本,则需要从源代码构建
以下是用于使用网络摄像头的代码:
(是的,我尝试了各种变体建议
import cv2
print (cv2.__version__)
camera = cv2.VideoCapture(0) #tried -1,0,1,...
if camera.isOpened(): # isOpened is always False for pip version
print ("successfully opened Webcam")
else:
print ("Webcam error")
success,img = camera.read() # success is always False for pip version
print (success,img.shape)
camera.release()
我尝试了各种网络摄像头,并按照网络上的建议对代码进行了各种更改.