///出发鼠标响应的函数读取了点击的位置,然后直接显示在点击位置的旁边
#include<opencv/cv.h>
#include<opencv\highgui.h>
#include<stdio.h>
IplImage* src = 0;
IplImage* dst = 0;
void on_mouse(int event, int x, int y, int flags, void *ustc)
{
static CvPoint pre_pt = { -1,-1 };//Cv_Point一个坐标为整数的二维点,是一个包含integer类型成员x和y的简单结构体。
static CvPoint cur_pt = { -1,-1 };
CvFont font;//声明一个CvFont变量
//该函数采用一组参数配置一些用于屏幕输出的基本个特定字体。
//为了建立一个可以传值给cvPutText()的CvFont,首先必须声明一个CvFont变量,然后把它传递给cvInitFont()。
//调用cvInitFont()时,初始化一个已经准备好的CvFont结构(这意味着你创建了一个变量,并传给cvInitFont()函数一个指向新建的变量指针
cvInitFont(&font, CV_FONT_HERSHEY_SIMPLEX, 0.5, 0.5, 0, 1, CV_AA);
char temp[16];
if (event == CV_EVENT_LBUTTONDOWN)//鼠标左按钮按下
{
cvCopy(dst, src);//只会复制ROI区域,源图像消失后,复制的图像不变
int j;
sprintf_s(temp, "(%d,%d)", x, y);//把格式化的数据写入某个字符串中。
cvPutText(src, temp, pre_pt, &font, cvScalar(0, 0, 0, 255))
获取图像边缘点像素位置
最新推荐文章于 2022-08-31 00:03:06 发布