【发布时间】:2020-08-03 02:38:18
【问题描述】:
我正在 Python 上使用 OpenCV,就在昨天我遇到了一个非常奇怪的问题。
当我调用一个非常简单的方法 imshow() 时,程序总是会生成与主窗口同名的附加窗口,并且中间有一个黑条。
有时,不会调用额外的窗口,而有时会在永远循环中生成大约 50 或 100 个窗口。
这很奇怪,从昨天我卸载opencv-python库并下载opencv-contrib-python时就遇到了。我第一次遇到这个问题时,控制台日志也给了我关于缺少 GTK-Cambera 模块的警告
Gtk-Message: Failed to load module "canberra-gtk-module"
但是,我确实尝试修复它并在 Ubuntu 上下载库,这样警告现在就消失了。此外,我尝试通过删除 opencv-contrib-python 并重用 opencv-python 来反转 opencv 库。不幸的是,问题仍然存在。
另外,我有一种感觉,程序需要的功率越大,“附加窗口”出现的机会就越大。
我实现的代码:
import numpy as np
import cv2
cap = cv2.VideoCapture(4)
while(cap.isOpened()):
# Capture frame-by-frame
ret, frame = cap.read()
# Our operations on the frame come here
gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
# Display the resulting frame
cv2.imshow('frame',gray)
if cv2.waitKey(1) & 0xFF == ord('q'):
break
cap.release()
cv2.destroyAllWindows()
这是错误的图像:
【问题讨论】:
-
当我卸载了 opencv-python 库并下载了 opencv-contrib-python。 发生了什么变化?
-
我想使用 ximgproc 模块 :))