OpenCV图像处理:显示图片并标注坐标
5星 · 超过95%的资源 需积分: 50 122 浏览量
更新于2024-09-11
4
收藏 13KB TXT 举报
本篇代码是使用OpenCV(Open Source Computer Vision Library)来处理图像并实现鼠标事件驱动的功能。主要目标是在图片上显示鼠标点击的位置,并用矩形框框出该位置。OpenCV是一个广泛用于计算机视觉和机器学习的开源库,它提供了一系列强大的图像处理和分析工具。
首先,我们来看一下代码的主要部分:
1. **包含头文件**:
- `#include<cv.h>`:引入OpenCV的基本库。
- `#include<highgui.h>`:包含图形用户界面相关的函数。
- `#include<stdio.h>`:用于标准输入输出操作。
2. **变量声明**:
- `IplImage* src = 0;`:声明一个指向IplImage类型的指针,用于存储加载的图片数据。
3. **on_mouse()函数**:
- 这个函数是鼠标回调函数,当鼠标左键按下时被调用。
- 函数参数包括:event类型(如左键点击、移动等)、x和y坐标值、鼠标状态标志和用户自定义数据(在这里是空指针)。
- 使用`cvInitFont()`设置字体样式,然后根据`CV_EVENT_LBUTTONDOWN`判断是鼠标左键点击事件。
- 当点击发生时,计算点击点`pt`,然后将其转换为字符串`temp`,在图像上显示该坐标以及用`cvCircle()`和`cvPutText()`函数在原点处画一个绿色填充的圆形和白色文本表示点击位置。
4. **main()函数**:
- `src = cvLoadImage("d:\\2.bmp", 1);`:通过指定路径和颜色深度(1表示8位灰度图像)加载图片。
- `cvNamedWindow("src", 1);`:创建一个名为"src"的窗口,第一个参数是窗口名称,第二个参数表示窗口是否自动调整大小。
- `cvSetMouseCallback("src", on_mouse, 0);`:设置鼠标事件监听器,将`on_mouse`函数与窗口"src"关联。
- `cvShowImage("src", src);`:显示图片。
- `cvWaitKey(0)`:等待用户按键,直到按下任意键后退出程序。
- 清理资源:关闭所有窗口,释放图像内存。
5. **附加注释**:
- 有关获取RGB图像像素值的函数`//===============================================//`及其作者和日期信息,这表明可能还有其他辅助功能或工具用于读取和操作图像像素。
这段代码展示了如何使用OpenCV在图像上实时标记鼠标点击位置并显示坐标。这在很多场景下很有用,例如图像标注、对象跟踪或简单的交互式图像分析。理解这个例子有助于掌握OpenCV的基本图像处理和事件驱动编程。
2020-09-18 上传
2014-05-12 上传
2023-06-07 上传
2016-06-21 上传
289 浏览量
2020-08-28 上传
2013-10-09 上传
2020-09-19 上传
ogrefeng
- 粉丝: 0
- 资源: 2
最新资源
- VFP命令和函数以及程序语句大全
- Jquery1.2.6源码分析.pdf
- jpg图像vc编程实现
- powerDesigner建模工具
- 如何进行软件需求分析
- 使用VB2005设计Smartphone智能手机应用程序入门
- WPF(Silverlight)+Getstarted.pdf
- Fedora下搭建FTP服务器
- 16x2字符型带背光液晶显示模块
- c语言程序设计课程(学生成绩管理系统)
- spring开发指南(夏昕)
- c#面试题及答案(二).txt
- jmail中文手册 帮助文档 pdf
- informix informix esql -c文档 c中嵌入sql esql/c总结 比较 笔记 详细
- C#语言进行编译的命名空间详解
- 华为面试题及答案.txt