背景
在某些特殊的情况下,也许只能触摸屏幕控制树莓派。但是用OpenCV实时检测时,弹出的窗口即使点击了右上角x号还是会继续弹出来。需要一种方法使它能被直接关掉。
问题分析
下面截取常规代码中一部分
while True:
#省略省略省略省略
cv2.imshow('xxxxxx', frame)
#有键盘在这可以按Q键退出循环
if cv2.waitKey(1) & 0xFF==ord('q'):
print('quit')
break
#省略省略省略省略
显然可知imshow在无限循环内,即使点击x号关闭窗口,到下一个循环执行这条代码时窗口又会跳出来
解决方法
通过如下函数。如果窗口不存在会返回 -1
cv2.getWindowProperty('xxxxxx',1)#xxxxxx