python - cv2.imshow() 在循环中打开多个窗口
问题描述
当我在笔记本中使用 opencv-python 版本 v4.3.0 运行这个简单的代码时。然后我的屏幕充满了如图所示的窗口。
# importing the required modules
import cv2
import numpy as np
# capturing from the first camera attached
cap = cv2.VideoCapture(0)
# will continue to capture until 'q' key is pressed
while True:
ret, frame = cap.read()
# Capturing in grayscale
gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
cv2.imshow('frame', frame)
cv2.imshow('gray', gray)
# Program will terminate when 'q' key is pressed
if cv2.waitKey(1) & 0xFF == ord('q'):
break
# Releasing all the resources
cap.release()
cv2.destroyAllWindows()
解决方案
我对 OpenCV 4.3.0 有同样的问题。我是如何解决的:
1/卸载以前的版本:
$ pip uninstall opencv-contrib-python
2/ 安装以前的版本:
$ pip install opencv-contrib-python==4.2.0.34
它现在应该可以工作了。
推荐阅读
- azure - 如何向 SQL 数据库添加新列?
- c# - C# - 以天、小时和分钟计算 SLA,不包括非工作时间、周末和公共假期
- primefaces - Primefaces 6.1 p:inputTextarea 取消展开文本框
- javascript - 减少重复代码,尝试将函数分配给变量 - 不起作用
- html - 验证 HTML 输入字段
- javascript - 无痛脚本中的未定义变量
- java - 如何修复“类实例的标识符已从 id 更改为 null”(Java)
- arrays - 如何在matlab中用三个一维数组绘制3d网格图
- python - 使用 Python 搜索 Pandas 系列中的单词
- node.js - node.js 中的测试类,模拟请求