在Python中,您可以使用OpenCV库来显示Webcam捕获的实时视频。当您想要关闭窗口时,通常会按下“q”键来退出程序。但是,有时您可能会发现窗口未正常关闭。
这可能是由于您没有正确处理键盘事件所造成的。您需要添加一个循环来检测键盘事件并响应它们。以下是一个代码示例,以便您在关闭Webcam窗口时能够正确响应“q”键:
import cv2
cap = cv2.VideoCapture(0)
while True:
ret, frame = cap.read()
cv2.imshow('Webcam', frame)
# 检测按键事件
key = cv2.waitKey(1)
if key == ord('q'):
break
cap.release()
cv2.destroyAllWindows()
在这个示例中,我们添加了一个无限循环来检测按键事件。在每次循环中,我们都会读取Webcam的捕获帧并将其显示在窗口中。随着循环的进行,它将检测到键盘事件(cv2.waitKey(1))并响应它们。
当检测到“q”键按下时,循环会break并关闭窗口。最后,我们还需要调用cap.release()来释放Webcam资源,并调用cv2.destroyAllWindows()以关闭所有打开的窗口。