<强>鼠标回调函数:强>
def setMouseCallback ( windowName #窗口名称 onMouse #鼠标响应处理函数 param=None) #处理函数的ID
<强>事件鼠标事件:强>
事件: EVENT_LBUTTONDBLCLK=7左键双击 EVENT_LBUTTONDOWN=1左键点击 EVENT_LBUTTONUP=4左键释放 EVENT_MBUTTONDBLCLK=9中间释放 EVENT_MBUTTONDOWN=3中间点击 EVENT_MBUTTONUP=6中间释放 EVENT_MOUSEHWHEEL=11滚轮事件 EVENT_MOUSEMOVE=0滑动 EVENT_MOUSEWHEEL=10滚轮事件 EVENT_RBUTTONDBLCLK=8右键双击 EVENT_RBUTTONDOWN=2右键点击 EVENT_RBUTTONUP=5右键释放 国旗: EVENT_FLAG_ALTKEY=32按Alt键不放事件 EVENT_FLAG_CTRLKEY=8按Ctrl不放事件 EVENT_FLAG_LBUTTON=1左键拖拽 EVENT_FLAG_MBUTTON=4中键拖拽 EVENT_FLAG_RBUTTON=2右键拖拽 EVENT_FLAG_SHIFTKEY=16按转变不放事件
<强>示例强>
在图像上用鼠标点击左键拖拽画一矩形,并输出矩形信息:
进口cv2 def draw_rectangle(事件,x, y,旗帜,参数): 全球第九,iy 如果事件==cv2.EVENT_LBUTTONDOWN: 第九,iy=x, y print(“point1:=", x, y) elif事件==cv2.EVENT_LBUTTONUP: print(“卷帘窗:=",x, y) 打印(“宽度=",x-ix) 打印("高度=" y - iy) cv2。iy矩形(img (ix), (x, y) (0 255 0), 2) img=cv2.imread (max.png) #加载图片 cv2.namedWindow('图像') cv2。setMouseCallback(“形象”,draw_rectangle) 而(1): cv2。img imshow('图像') 如果cv2.waitKey (20),0 xff==27日: 打破 cv2.destroyAllWindows ()
<强>输出:强>
point1:=254 64 卷帘窗:=708 569 宽度=454 身高=505
以上这篇opencv3/python鼠标响应操作详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。