我试图实时捕获我的屏幕(视频)并使用Python中的OpenCV进行显示。
当我运行代码时,它会打开许多窗口,而不是仅替换一个窗口上的框架。
请帮忙 :)
这是代码:
import numpy as np
import cv2
from mss import mss
sct = mss()
monitor = {'top': 0, 'left': 0, 'width': 1920, 'height': 1080}
while True:
img = sct.grab(monitor)
cv2.imshow("Netstream", np.array(img))
if cv2.waitKey(1) & 0xFF == ord('q'):
break
cv2.destroyAllWindows()
最佳答案
它仅打开一个窗口,但似乎会打开多个窗口,因为它会捕获您自己的屏幕并在该屏幕上显示。因此,一旦打开一个窗口,您的程序就会捕获屏幕并在流上显示一个新的帧,并且此过程继续进行,从而产生了打开多个窗口的效果。如果您捕获一个屏幕并显示在另一个屏幕上可能会有所帮助
关于python - OpenCV “imshow”函数可打开许多窗口,而不是替换一个窗口上的框架-Python,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54117819/