首页 > 其他分享 >OpenCV(cv::waitKey())

OpenCV(cv::waitKey())

时间:2024-08-14 11:16:51浏览次数:9  
标签:窗口 函数 用户 OpenCV 图像 cv waitKey

目录



cv::waitKey() 是 OpenCV 库中的一个函数,用于等待用户的键盘输入。它在处理图像和视频时非常有用,特别是在显示图像窗口时,用于控制图像的显示和响应用户输入。



1. 函数解析

int cv::waitKey(int delay = 0);

参数

  • delay: 指定等待时间,单位是毫秒。函数将在这个时间内等待用户的按键输入。如果设置为 0,函数将无限期等待直到用户按下键盘上的任意键。

返回值

  • 返回值: 函数返回一个整数值,该值是用户按下的键的 ASCII 码。如果没有按键被按下(例如,delay 为 0),则返回 -1。


2. 示例

以下是一个简单的示例,展示如何使用 cv::waitKey() 来显示图像并等待用户按键关闭窗口:

#include <opencv2/opencv.hpp>

int main() {
    // 创建一个简单的图像
    cv::Mat image = cv::Mat::zeros(300, 300, CV_8UC3);
    cv::rectangle(image, cv::Point(50, 50), cv::Point(250, 250), cv::Scalar(0, 255, 0), -1);

    // 创建一个窗口并显示图像
    cv::namedWindow("Image Window", cv::WINDOW_AUTOSIZE);
    cv::imshow("Image Window", image);

    // 等待用户按下任意键
    int key = cv::waitKey(0);

    // 输出按下的键的 ASCII 码
    std::cout << "Key pressed: " << key << std::endl;

    return 0;
}


3. 说明

  • 窗口更新: cv::waitKey() 在等待键盘输入的同时,还会更新窗口。这对于动态显示图像或视频流非常重要。
  • 多窗口应用: 如果有多个窗口同时打开,cv::waitKey() 将对最前面的窗口进行键盘输入检测。
  • 处理按键事件: 根据返回的键值,可以实现特定的按键事件处理,例如关闭窗口或执行其他操作。


4. 注意事项

  • 阻塞行为: 如果 delay 设置为 0,函数将无限阻塞,直到用户按下键。可以用于在应用程序中暂停显示,直到用户做出某些操作。
  • 跨平台兼容性: cv::waitKey() 在不同操作系统下的行为略有不同,但基本功能是一致的。


标签:窗口,函数,用户,OpenCV,图像,cv,waitKey
From: https://www.cnblogs.com/keye/p/18358506

相关文章

  • 浅述TSINGSEE青犀EasyCVR视频汇聚平台与海康安防平台的区别对比
    在我们的很多项目中都遇到过用户的咨询:TSINGSEE青犀EasyCVR视频汇聚平台与海康平台的区别在哪里?确实,在安防视频监控领域,EasyCVR视频汇聚平台与海康威视平台是两个备受关注的选择。它们各自具有独特的功能和优势,适用于不同的应用场景和需求。今天我们将从多个方面对这两个平台进......
  • DeiT-LT:印度科学院提出针对长尾数据的`DeiT`升级模型 | CVPR 2024
    DeiT-LT为ViT在长尾数据集上的应用,通过蒸馏DIST标记引入CNN知识,以及使用分布外图像并重新加权蒸馏损失来增强对尾类的关注。此外,为了减轻过拟合,论文建议用经过SAM训练的CNN教师进行蒸馏,促使所有ViT块中DIST标记学习低秩泛化特征。经过DeiT-LT的训练方案,DIST标记成为尾类的专家,分......
  • StarNet:关于 Element-wise Multiplication 的高性能解释研究 | CVPR 2024
    论文揭示了staroperation(元素乘法)在无需加宽网络下,将输入映射到高维非线性特征空间的能力。基于此提出了StarNet,在紧凑的网络结构和较低的能耗下展示了令人印象深刻的性能和低延迟来源:晓飞的算法工程笔记公众号论文:RewritetheStars论文地址:https://arxiv.org/abs/240......
  • 安防监控综合平台EasyCVR接入海康私有协议EHOME显示失败是什么原因?
    安防监控/视频综合管理平台/视频集中存储/磁盘阵列EasyCVR视频汇聚平台,支持多种视频格式和编码方式(H.264/H.265),能够轻松对接各类前端监控设备,实现视频流的统一接入与集中管理。安防监控EasyCVR平台支持多种流媒体传输协议,包括国标GB/T28181协议、RTMP、RTSP/ONVIF、部标JT808协议......
  • 视频汇聚/安防综合管理系统EasyCVR非管理员账户能调用分配给其他用户的通道是什么原因
    视频汇聚/安防综合管理系统EasyCVR视频监控平台,作为一款智能视频监控综合管理平台,凭借其强大的视频融合汇聚能力和灵活的视频能力,在各行各业的应用中发挥着越来越重要的作用。平台不仅具备视频资源管理、设备管理、用户管理、网络管理和安全管理等功能,还支持多种主流标准协议,如GB2......
  • 高危漏洞CVE-2024-38077的修复指南
    “根据2024年8月9日,国家信息安全漏洞共享平台(CNVD)收录了Windows远程桌面许可服务远程代码执行漏洞(CNVD-2024-34918,对应CVE-2024-38077)。未经身份认证的攻击者可利用漏洞远程执行代码,获取服务器控制权限。目前,该漏洞的部分技术原理和概念验证伪代码已公开,厂商已发布安......
  • 春秋云境 | 逻辑漏洞 | CVE-2022-23134
    目录靶标介绍开启靶场获取flag靶标介绍ZabbixSiaZabbix是拉脱维亚ZabbixSIA(ZabbixSia)公司的一套开源的监控系统。该系统支持网络监控、服务器监控、云监控和应用监控等。Zabbix存在安全漏洞,该漏洞源于在初始设置过程之后,setup.php文件的某些步骤不仅可以由超级......
  • 春秋云境 | 逻辑漏洞 | CVE-2020-13933
    靶标介绍<p>ApahceShiro由于处理身份验证请求时出错存在权限绕过漏洞,远程攻击者可以发送特制的HTTP请求,绕过身份验证过程并获得对应用程序的未授权访问。</p>开启靶场发现不管拿点哪里都是登录页面,发现登录框那里写着flag在/admin里访问之后并没有反应,在后......
  • 春秋云境 | RCE | CVE-2022-25578
    目录靶标介绍开启靶场蚁剑连接获取flag 靶标介绍taocmsv3.0.2允许攻击者通过编辑.htaccess文件执行任意代码开启靶场点击下面的管理发现是一个登录页面,默认用户名是admin密码是tao登录上来之后,进入到文件管理,编辑.htaccess文件,插入下面这条代码SetH......
  • 春秋云境 | RCE | CVE-2019-12422
    目录靶标介绍开启靶场漏洞利用靶标介绍ApacheShiro是美国阿帕奇(Apache)软件基金会的一套用于执行认证、授权、加密和会话管理的Java安全框架。ApacheShiro1.4.2之前版本中存在安全漏洞。当ApacheShiro使用了默认的‘记住我’配置时,攻击者可利用该漏洞对cookies实施......