opencv3/python鼠标响应操作详解

  

<强>鼠标回调函数:

        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鼠标响应操作详解

  

以上这篇opencv3/python鼠标响应操作详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

opencv3/python鼠标响应操作详解