鼠标事件函数介绍
opencv中进行鼠标操作主要用到setMouseCallback这个函数,如下:
void setMouseCallback(const String& winname, MouseCallback onMouse, void* userdata = 0);
winname:窗口名称
onMouse:鼠标响应函数,回调函数
userdata:用户自定义的参数
此函数会在调用之后不断查询鼠标信息直到窗口销毁
主要操作在回调函数onMouse中设置:
void on_Mouse(int event, int x, int y, int flags, void* param);
event:表示鼠标事件类型的常量
x和y:鼠标指针在图像坐标系的坐标
flags:鼠标事件标志的常量
param:用户可自定义的参数
鼠标事件的类型(字母和数字完全等价):
Event:
#define CV_EVENT_MOUSEMOVE 0 //滑动
#define CV_EVENT_LBUTTONDOWN 1 //左键点击
#define CV_EVENT_RBUTTONDOWN 2 //右键点击
#define CV_EVENT_MBUTTONDOWN 3 //中键点击
#define CV_EVENT_LBUTTONUP 4 //左键放开
#define CV_EVENT_RBUTTONUP 5 //右键放开
#define CV_EVENT_MBUTTONUP 6 //中键放开
#define CV_EV