我只是在PyCharm中尝试一个简单的OpenCV代码测试,但每次我运行代码时,它都会结束。我知道这不是我的摄像头的问题,因为我已经使用Anaconda的命令提示符运行了代码,它可以工作,尽管它确实需要一些时间才能启动。
我使用的代码是:
import cv2
cap = cv2.VideoCapture(0)
while True:
success, img = cap.read()
cv2.imshow('Image', img)
cv2.waitKey(1)
我觉得OpenCV正在花时间打开我的摄像头,所以最初的几次读取是错误的,导致代码在我的摄像头可以显示之前结束,但我不知道如何修复它。我试着用谷歌搜索,但什么也找不到。如果有人知道我如何解决这个问题,我将非常感谢您的帮助!
编辑:别管我是不是太傻了。?:PyCharm没有执行我所在的文件!
发布于 2021-04-19 14:13:11
我不知道这个问题是否与硬件有关,但是,你可以尝试这样做:
import cv2
cap = cv2.VideoCapture(0)
while True:
try:
success, img = cap.read()
cv2.imshow('Image', img)
cv2.waitKey(1)
except Exception as e:
print("Exception happened: {}".format(e))
continue
这基本上是尝试执行try中的代码,如果发生异常,它将执行except中的代码。它还会通知错误是什么。在尝试再次读取摄像头之前,您还可以使用time.sleep()添加一些睡眠。
对于time.sleep(),您需要导入时间。
希望这能有所帮助。:)
发布于 2021-04-19 17:36:54
我认为你的错误可能来自你的interpreter.Or,你可以试着输入代码并运行它。第一次尝试时,不要使用右上角的三角形符号
发布于 2021-04-19 20:48:38
如果你在Mac上运行,PyCharm通常不能访问网络摄像头。所以,当你需要访问摄像头时,最好从终端运行你的应用程序。
https://stackoverflow.com/questions/67156380
复制相似问题