我使用wsl2和VScode作为编辑器。所讨论的代码很简单:
image = cv2.imread('sample.png')
cv2.imshow('image', image)
cv2.waitKey(0)
第一次运行很顺利,让我检查图像,直到我按下一个按钮。然而,在第一次运行后,图片显示了四分之一秒,然后消失。知道是什么引起的吗?
然而,在第一次运行后,图片显示了四分之一秒,然后消失了。
这似乎是第一次运行触发的问题。您是否需要将cv2.destroyAllWindows()
添加到代码的末尾?
import cv2
image = cv2.imread('sample.png')
cv2.imshow('image', image)
cv2.waitKey(0)
cv2.destroyAllWindows()
我不知道是什么问题,但是一个解决方法对我有效。
我没有按任何键来关闭OpenCV窗口。我使用VSCode终端中的🗑️按钮终止终端。
请考虑如果你按任何键关闭OpenCV窗口1次,那么你必须重新启动你的WSL。所以,从一开始,杀了终端,而不是按任何键。
但这只是一个临时的解决方案。我希望其他人能帮助找到根本原因。
我有同样的问题,并能够通过更新我的WSL version
在这里修复它:
aka.ms/wslstorepage