在 OpenCV 中使用 waitKey 函数

Ammar Ali 2022年5月17日
在 OpenCV 中使用 waitKey 函数

本教程将讨论使用 OpenCV 的 waitKey() 函数关闭图像窗口。

在 OpenCV 中使用 waitKey() 函数

OpenCV 中的 waitKey() 函数用于等待特定时间间隔,然后关闭活动图像窗口。

我们可以在 waitKey() 函数中传递以毫秒为单位的延迟,该函数将等待该特定时间,然后关闭活动图像窗口。

如果我们在图像窗口处于活动状态时按下键盘上的键,则窗口将关闭。

例如,假设我们希望图像在 5 秒后自动关闭;如果我们不按键盘上的任何键,它将在 5 秒后关闭。尽管如此,如果我们在 5 秒之前按下键盘上的一个键,窗口就会关闭。

如果我们不想等待特定的时间并且想在按下某个键时关闭图像,我们必须在 waitKey() 函数中传递 0 或不传递任何内容。在这种情况下,函数会等待按键,当按键被按下时,它会关闭窗口。

请参阅下面的示例代码。

import cv2

saved_image = cv2.imread('Image_name.jpg')
cv2.imshow('image', saved_image)

cv2.waitKey(5000)
cv2.destroyAllWindows()

上面的代码会等待五秒钟,然后它会关闭窗口,如果此时有一个键,窗口就会关闭。请注意,我们必须使用 destroyAllWindows() 函数才能使 waitKey() 函数在 Jupyter Notebook 中正常工作。

destroyAllWindows() 函数将关闭所有打开的窗口。但是,如果我们在诸如 PyCharm 之类的其他软件中,我们不必使用 destroyAllWindows() 函数。

Author: Ammar Ali
Ammar Ali avatar Ammar Ali avatar

Hello! I am Ammar Ali, a programmer here to learn from experience, people, and docs, and create interesting and useful programming content. I mostly create content about Python, Matlab, and Microcontrollers like Arduino and PIC.

LinkedIn Facebook