当前位置: 首页 > news >正文

OpenCV高级图形用户界面(21)暂停程序执行并等待用户按键输入函数waitKey()的使用

  • 操作系统:ubuntu22.04
  • OpenCV版本:OpenCV4.9
  • IDE:Visual Studio Code
  • 编程语言:C++11

算法描述

等待按键

该函数 waitKey 在 delay≤0 时无限等待按键事件,或者在 delay 为正数时等待 delay 毫秒。由于操作系统在切换线程时有最小时间间隔,因此函数不会精确等待 delay 毫秒,而是至少等待 delay 毫秒,具体取决于计算机当时正在运行的其他任务。函数返回按下的键的代码,如果没有按键在指定时间内被按下,则返回 -1。如果只想检查是否有按键但不等待,可以使用 pollKey。

注意事项
函数 waitKey 和 pollKey 是 HighGUI 中唯一可以获取和处理 GUI 事件的方法,因此除非 HighGUI 在一个负责事件处理的环境中使用,否则需要定期调用其中一个函数来进行正常的事件处理。

该函数只有在至少创建了一个 HighGUI 窗口并且该窗口处于活动状态时才有效。如果有多个 HighGUI 窗口,任何一个都可以是活动的。

函数原型

int cv::waitKey	
(int 	delay = 0
)	

参数

  • 参数delay:等待的时间,单位是毫秒。
    • 如果 delay 大于 0,则函数等待指定的毫秒数。
    • 如果 delay 等于 0 或小于 0,则函数无限期等待,直到用户按下键盘键。

代码示例


#include <iostream>
#include <opencv2/opencv.hpp>using namespace cv;
using namespace std;int main()
{// 加载一张图片Mat image = imread( "/media/dingxin/data/study/OpenCV/sources/images/hawk.jpg" );if ( image.empty() ){cout << "无法加载图片,请检查路径是否正确。" << endl;return -1;}// 创建一个窗口namedWindow( "Image Window", WINDOW_AUTOSIZE );// 显示图片imshow( "Image Window", image );// 等待用户按键int key = waitKey( 0 );  // 无限期等待,直到用户按下按键// 输出用户按下的键的ASCII码值cout << "用户按下的键的ASCII码值为: " << key << endl;// 清理资源destroyAllWindows();return 0;
}
http://www.lryc.cn/news/463795.html

相关文章:

  • 其他css的用途
  • json路径 [‘a‘].b.c[0].d[‘1‘].f,具体代表什么意思
  • 等保测评:如何进行有效的安全合规性审查
  • FFmpeg 4.3 音视频-多路H265监控录放C++开发二 : 18.04ubuntu安装,linux 下build ffmpeg 4.3 源码 并测试
  • 将两张图片的不同标记出来
  • HarmonyOS开发(State模型)
  • 在 WPF 中使用 OpenTK:从入门到进阶
  • 【最新华为OD机试E卷-支持在线评测】水仙花数(100分)多语言题解-(Python/C/JavaScript/Java/Cpp)
  • C# WinForm 用名字name字符串查找子控件
  • Ubuntu下安装并初始化Git同时添加SSH密钥
  • 好用的AI工具:探索智能生活的无限可能
  • -bash: conda: command not found
  • STM32-CubeIDE用串口通讯
  • FloodFill 算法(DFS)
  • 计算机通信与网络实验笔记
  • 闲聊【干龙头】的重要性
  • Ubuntu22.04安装RTX3080
  • 嵌入式学习-IO进程-Day04
  • RAII - 安卓中的智能指针
  • linux--库指令
  • 展讯方案-内置多张开机logo
  • Stable Diffusion模型资源合集(附整合包)
  • 机器学习|Pytorch实现天气预测
  • 【Kuberntes】k8s权限管理
  • C++,STL 033(24.10.15)
  • AdmX_new
  • 【python3】函数注解
  • leetcode hot100 之【LeetCode 42. 接雨水】 java实现
  • 10月18日,每日信息差
  • Axure科技感元件:打造可视化大屏设计的得力助手