Python OpenCV';s视频捕获未返回图像

Python OpenCV';s视频捕获未返回图像,python,opencv,Python,Opencv,因此,我正在尝试在OpenCV中开始图像检测。我在用Python编程 我从openCV2的人脸检测示例开始。但是,即使相机设备已打开,也不会返回任何图像 违规代码: cam = cv2.VideoCapture(0) print cam.isOpened() while True: ret, img = cam.read() print img gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) gray = cv2.equa

因此,我正在尝试在OpenCV中开始图像检测。我在用Python编程

我从openCV2的人脸检测示例开始。但是,即使相机设备已打开,也不会返回任何图像

违规代码:

cam = cv2.VideoCapture(0)
print cam.isOpened()
while True:
    ret, img = cam.read()
    print img
    gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
    gray = cv2.equalizeHist(gray)
使用时,打印语句将显示我的相机已打开。但是,当调用cam.read()时,它将返回False,NoneType

所以很明显,它无法将不存在的图像转换为灰度。有人对如何做到这一点有什么建议吗


我使用的是嵌入式网络摄像头,因此网络摄像头为“0”。

我也面临同样的问题

有时视频/网络摄像头驱动程序会出现问题,它会返回无效的前几帧。 检查的返回值以处理错误条件。 同时重新启动内核,它应该可以工作


可能是由于以前的一些错误情况,没有调用cap.release()。

一些蹩脚的视频驱动程序返回无效的第一帧。检查ret,如果它是false@berak-这帮我解决了我的问题!谢谢你的回答@leoshnoire,啊,不错;)