在 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