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

OpenCV 键盘响应来切换图像


一、知识点
1、int waitKey(int delay = 0);
  (1)、等待按键。 等待指定的毫秒数,返回按键的ASCII码。
  (2)、返回值: int型,表示按键ASCII码。 若没有按键,指定时间过去,返回-1。
  (3)、参数delay: 等待时间,单位毫秒ms。 默认0,表示一直等待。


二、示例代码

#include <iostream>
#include <opencv2/opencv.hpp>void TestWaitKey(cv::Mat & src)
{cv::Mat dst = cv::Mat::zeros(src.size(), CV_8UC3);while (true){int c = cv::waitKey(100);if (c == 27){break;}else if (c == 49){std::cout << "you entered key #1" << std::endl;cv::cvtColor(src, dst, cv::COLOR_BGR2GRAY);}else if (c == 50){std::cout << "you entered key #2" << std::endl;cv::cvtColor(src, dst, cv::COLOR_BGR2HSV);}else if (c == 51){std::cout << "you entered key #3" << std::endl;dst = cv::Scalar(50, 50, 50);cv::add(src, dst, dst);}cv::imshow("按键后图像", dst);}
}int main()
{cv::Mat src = cv::imread("../images/2.png");if (src.empty()){std::cout << "load src image error..." << std::endl;return -1;}cv::imshow("原始图像", src);TestWaitKey(src);return 0;
}

http://www.lryc.cn/news/2404340.html

相关文章:

  • ARM SMMUv3简介(一)
  • C#提取CAN ASC文件时间戳:实现与性能优化
  • hadoop集群datanode启动显示init failed,不能解析hostname
  • Android 视图系统入门指南
  • 浏览器工作原理05 [#] 渲染流程(上):HTML、CSS和JavaScript是如何变成页面的
  • 青少年编程与数学 01-011 系统软件简介 03 NetWare操作系统
  • AI编程提示词
  • Android学习总结-GetX库常见问题和解决方案
  • |从零开始的Pyside2界面编程| 用Pyside2打造一个AI助手界面
  • React 中 HTML 插入的全场景实践与安全指南
  • 一键更新依赖全指南:Flutter、Node.js、Kotlin、Java、Go、Python 等主流语言全覆盖
  • Java异步编程难题拆解技术
  • NoSQL 之 Redis 配置与优化
  • pikachu靶场通关笔记20 SQL注入03-搜索型注入(GET)
  • 产品笔试专业名词梳理
  • 【前端】es6相关,柯里化
  • 51单片机基础部分——矩阵按键检测
  • onSaveInstanceState() 和 ViewModel 在数据保存能力差异
  • SpringBoot2.3.1集成Knife4j接口文档
  • Java Fork/Join框架:三大核心组件深度解析
  • 【envoy】-1.安装与下载源码
  • B站的视频怎么下载下来——Best Video下载器
  • Mysql-定时删除数据库中的验证码
  • 容器安全最佳实践:云原生环境下的零信任架构实施
  • [BIOS]VSCode zx-6000 编译问题
  • MySQL连接报SSL错误
  • 在WPF项目中集成Python:Python.NET深度实战指南
  • Nuxt.js 布局系统详解:构建可复用页面框架
  • CICD实战(二)-----gitlab的安装与配置
  • [GitHub] 优秀开源项目