许多其他人都有这个问题,但他们的解决方案对我不起作用。我正在尝试使用OpenCV使用以下脚本显示实时网络摄像头源:
import cv2
import numpy as np
cap = cv2.VideoCapture(0)
while (cap.isOpended()):
ret,img = cap.read()
cv2.imshow("input",img)
k = cv2.waitKey(10)
if k == 27:
break
这就像在OpenCV网站上给出的一样,但我只得到一个近黑屏。几个红色,绿色和蓝色像素随机出现(如下图所示)。
我知道我的网络摄像头是有效的,因为我已对其进行了测试,因此这不是问题所在。有些人建议不要在IDLE中运行脚本,更改VideoCapture()中的索引,然后打印图像数组以测试是否有数据。如果我从命令提示符运行它,我仍然得到相同的结果,我将索引更改为几个不同的数字(包括-1),并打印数组以测试数据,它只显示杂散像素值(没有别的) 。
任何帮助都会受到质疑。
P.S。在Windows 10上运行Python 3.5.2。