gpt4 book ai didi

Python OpenCV : capture. 读取返回 true,尽管相机已拔出

转载 作者:太空宇宙 更新时间:2023-11-03 22:57:02 25 4
gpt4 key购买 nike

我有相机,我在 python 中使用 cv2 模块。一切正常,也许除了我想要返回错误代码或成功/失败而不是打印到 stderr。

我有一个循环读取图像并返回它。

while True:
ret, img = capture.read()
print ret
........
time.sleep(0.033)

根据 OpenCV 的文档,它应该在失败时返回 False。虽然它有效,但没关系。当我拔下网络摄像头(“模拟”一些故障)时,这会导致许多输出“VIDIOC_DQBUF:没有这样的设备”,但 ret 仍然是 True。这是错误、网络摄像头或操作系统特定行为吗?有什么解决方法吗? (而不是在 python 中重定向 stderr 并检查那里有什么)

最佳答案

是的,它应该在失败时返回 False,但在您的情况下它似乎不能可靠地工作。我可以建议一个解决方法。我假设当拔下网络摄像头时,返回的图像全为零。您也可以结合返回的标志进行检查。

while True:
ret, img = capture.read()
print ret and (not img.any())
........
time.sleep(0.033)

关于Python OpenCV : capture. 读取返回 true,尽管相机已拔出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27439692/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com