Usando la función waitKey en OpenCV

Ammar Ali 21 junio 2023
Usando la función waitKey en OpenCV

Este tutorial discutirá cómo cerrar una ventana de imagen usando la función waitKey() de OpenCV.

Usando la función waitKey() en OpenCV

La función waitKey() en OpenCV se usa para esperar un intervalo de tiempo específico y luego cerrar la ventana de la imagen activa.

Podemos pasar el retraso en milisegundos dentro de la función waitKey(), y la función esperará ese tiempo específico, y luego cerrará la ventana de la imagen activa.

Si pulsamos una tecla del teclado mientras la ventana de la imagen está activa, la ventana se cerrará.

Por ejemplo, supongamos que queremos que la imagen se cierre automáticamente después de 5 segundos; se cerrará a los 5 segundos si no pulsamos ninguna tecla del teclado. Aún así, si pulsamos una tecla del teclado antes de 5 segundos, la ventana se cerrará.

Si no queremos esperar un tiempo determinado y queremos cerrar la imagen al pulsar una tecla, tenemos que pasar 0 o nada dentro de la función waitKey(). En este caso, la función esperará la tecla y, cuando se presione una tecla, cerrará la ventana.

Vea el código de ejemplo a continuación.

import cv2

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

cv2.waitKey(5000)
cv2.destroyAllWindows()

El código anterior esperará cinco segundos y luego cerrará la ventana, y si hay una tecla presente en ese momento, la ventana se cerrará. Tenga en cuenta que tenemos que usar la función destroyAllWindows() para que la función waitKey() funcione correctamente en el cuaderno Jupyter.

La función destroyAllWindows() cerrará todas las ventanas abiertas. Pero si estamos en algún otro software como PyCharm, no tenemos que usar la función destroyAllWindows().

Autor: 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