所以我试图在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)
使用时,print语句会说我的相机已打开。但是,当调用cam.read()时,它将返回False,NoneType。
很明显,它无法将不存在的图像转换为灰度图像。有没有人对如何做到这一点有任何指示?
我使用的是我的嵌入式网络摄像头,因此" 0"对于网络摄像头。
答案 0 :(得分:0)
我遇到了同样的问题。
有时视频/网络摄像头驱动程序是一个问题,它会返回无效的前几帧。 检查处理错误情况的返回值。 还要重新启动内核,它应该可以工作。
可能是由于某些先前的错误情况,您的cap.release()未被调用。