21xrx.com
2024-05-20 17:55:31 Monday
登录
文章检索 我的文章 写文章
OpenCV waitKey函数的作用和用法
2023-08-13 12:06:33 深夜i     --     --
OpenCV waitKey函数 作用 用法

OpenCV是一个开源的计算机视觉库,它提供许多功能和工具来处理图像和视频。其中一个重要的函数是waitKey函数,它在图像显示窗口中等待用户按下键盘上的某个键。下面将介绍waitKey函数的作用和用法。

首先,让我们来看一下waitKey函数的基本语法:

key = cv2.waitKey(delay)

其中,delay参数表示等待键盘输入的时间(以毫秒为单位)。如果设置为0或负值,则表示无限等待用户输入。

waitKey函数的作用是等待用户按下键盘上的某个键,并返回用户按下的键码。键码是一个整数值,表示键盘上相应键的唯一标识符。通过检查返回的键码,我们可以根据用户输入执行相应的操作。

现在,让我们来看一些waitKey函数的常见用法。

1. 显示图像并等待用户输入:


import cv2

image = cv2.imread('image.jpg')

cv2.imshow('Image', image)

key = cv2.waitKey(0)

在这个例子中,我们首先使用cv2.imread函数读取一张图像,并用cv2.imshow函数显示它在一个名为"Image"的窗口中。然后,我们调用waitKey函数等待用户按下键盘上的任意键。最后,我们将用户按下的键码保存在变量key中。

2. 实现基本的交互操作:


import cv2

image = cv2.imread('image.jpg')

cv2.imshow('Image', image)

while True:

  key = cv2.waitKey(1)

  

  if key == ord('q'):

    break

在这个例子中,我们使用一个循环来持续地等待用户的键盘输入。每当用户按下一个键时,我们通过调用waitKey函数获取键码,并检查它是否等于字母'q'的键码(ord('q'))。如果是,就跳出循环,否则继续等待用户的输入。

3. 实现按键对图像进行处理:


import cv2

image = cv2.imread('image.jpg')

cv2.imshow('Image', image)

while True:

  key = cv2.waitKey(1)

  

  if key == ord('q'):

    break

  elif key == ord('s'):

    cv2.imwrite('image_processed.jpg', image)

在这个例子中,我们除了检查用户是否按下'q'键外,还检查用户是否按下's'键。如果用户按下's'键,我们通过调用cv2.imwrite函数将图像保存为名为"image_processed.jpg"的文件。

总结起来,waitKey函数在OpenCV中扮演着很重要的角色。它允许我们在图像显示窗口中等待用户的键盘输入,并根据用户的操作来执行相应的操作。通过了解waitKey函数的作用和用法,我们可以更好地使用OpenCV库来处理图像和视频。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复