热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

OpenCV2鼠标回调函数画矩形和圆

一个回调鼠标函数的例子,基于OpenCV2,比起网上一些基于OpenCV1的例子简单、明了许多。#include

一个回调鼠标函数的例子,基于OpenCV2,比起网上一些基于OpenCV1的例子简单、明了许多。

#include
//鼠标回调函数
void my_mouse_callback(int event, int x, int y, int flags, void* param);
//保存绘制所用的点
cv::Point pt;
cv::Point pt1;
//判断是否绘制
bool t = false;
int main(int argc, char *argv[])
{//原图片cv::Mat image = cv::imread("0001.jpg");cv::imshow("原图", image);//注册鼠标回调函数cvSetMouseCallback("原图",my_mouse_callback); //循环while (1){if (t){//重新读取图片cv::Mat image = cv::imread("0001.jpg");//画圆,蓝色cv::circle(image, pt, 20, cv::Scalar(255, 0, 0));//画矩形,绿色cv::rectangle(image, cv::Rect(pt, pt1), cv::Scalar(0, 255, 0));imshow("原图", image);t = false;}//按ESC键退出循环if (cv::waitKey(100) == 27)break;}
}
//鼠标回调函数
void my_mouse_callback(int event, int x, int y, int flags, void* param)
{switch (event){//左键按下case CV_EVENT_LBUTTONDOWN:{t = true;//保存当前点pt = cv::Point(x, y);pt1 = cv::Point(x, y);break;}//左键抬起case CV_EVENT_LBUTTONUP:{t = true;//保存当前点pt1 = cv::Point(x, y);break;}}
}

OpenCV2系列


  • OpenCV2帧间差分检测运动目标
  • OpenCV2从摄像头获取帧并写入视频文件
  • OpenCV相机标定
  • OpenCV检测图像SURF特征
  • OpenCV特征点检测
  • Opecv霍夫变换检测直线
  • OpenCV拉普拉斯变换
  • 图像分割:Grabcut算法小程序
  • Opencv2相似图像检索
  • OpenCV2应用Meanshift查找相似物体
  • OpenCV查找表应用
  • OPENCV人脸检测实现
  • Opencv2打开摄像头并显示图像

推荐阅读
  • 本文探讨了如何在PHP与MySQL环境中实现高效的分页查询,包括基本的分页实现、性能优化技巧以及高级的分页策略。 ... [详细]
  • Gradle 是 Android Studio 中默认的构建工具,了解其基本配置对于开发效率的提升至关重要。本文将详细介绍如何在 Gradle 中定义和使用共享变量,以确保项目的一致性和可维护性。 ... [详细]
  • Excel技巧:单元格中显示公式而非结果的解决方法
    本文探讨了在Excel中如何通过简单的方法解决单元格显示公式而非计算结果的问题,包括使用快捷键和调整单元格格式两种方法。 ... [详细]
  • 本文探讨了如何使用Scrapy框架构建高效的数据采集系统,以及如何通过异步处理技术提升数据存储的效率。同时,文章还介绍了针对不同网站采用的不同采集策略。 ... [详细]
  • 题目描述:Balala Power! 时间限制:4000/2000 MS (Java/Other) 内存限制:131072/131072 K (Java/Other)。题目背景及问题描述详见正文。 ... [详细]
  • 【MySQL】frm文件解析
    官网说明:http:dev.mysql.comdocinternalsenfrm-file-format.htmlfrm是MySQL表结构定义文件,通常frm文件是不会损坏的,但是如果 ... [详细]
  • 编程解析:CF989C 花朵之雾 (构造算法)
    本文深入探讨了CF989C '花朵之雾'问题的构造算法,提供了详细的解题思路和代码实现。 ... [详细]
  • 视觉Transformer综述
    本文综述了视觉Transformer在计算机视觉领域的应用,从原始Transformer出发,详细介绍了其在图像分类、目标检测和图像分割等任务中的最新进展。文章不仅涵盖了基础的Transformer架构,还深入探讨了各类增强版Transformer模型的设计思路和技术细节。 ... [详细]
  • OpenCV中的霍夫圆检测技术解析
    本文详细介绍了如何使用OpenCV库中的HoughCircles函数实现霍夫圆检测,并提供了具体的代码示例及参数解释。 ... [详细]
  • 在使用mybatis进行mapper.xml测试的时候发生必须为元素类型“mapper”声明属性“namespace”的错误项目目录结构UserMapper和UserMappe ... [详细]
  • 本文详细介绍了如何在PyQt5中创建简易对话框,包括对话框的基本结构、布局管理以及源代码实现。通过实例代码,展示了如何设置窗口部件、布局方式及对话框的基本操作。 ... [详细]
  • 本文介绍了如何使用 Python 的 Pyglet 库加载并显示图像。Pyglet 是一个用于开发图形用户界面应用的强大工具,特别适用于游戏和多媒体项目。 ... [详细]
  • 本文详细介绍如何在SSM(Spring + Spring MVC + MyBatis)框架中实现分页功能。包括分页的基本概念、数据准备、前端分页栏的设计与实现、后端分页逻辑的编写以及最终的测试步骤。 ... [详细]
  • 本文探讨了互联网服务提供商(ISP)如何可能篡改或插入用户请求的数据流,并提供了有效的技术手段来防止此类劫持行为,确保网络环境的安全与纯净。 ... [详细]
  • 在开发过程中,有时需要提供用户创建数据库的功能。本文介绍了如何利用 .NET 和 ADOX 在应用程序中实现创建 Access 数据库,并详细说明了创建数据库及表的具体步骤。 ... [详细]
author-avatar
--cathrine--
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有