学习目标:

OpenCV允许我们对窗口上的鼠标进行操作

  • 掌握 python-OpenCV如何操作鼠标的

学习时间:

`1分钟学废

学习产出:

·setMouseCallback(winname,callback,userdata):
winname是窗口名字,callback是回调函数,userdata是给回调函数的参数
·callback(event,x,y,flags,userdata)回调函数包含5个参数:
event是事件(鼠标移动,左键,右键
x,y是点鼠标的坐标点
flags用于组合键
userdata是setMouseCallback的uesrdata

event:
EVENT_MOUSEMOVE 0 鼠标移动
EVENT_LBUTTONDOWN 1 按下鼠标左键
EVENT_RBUTTONDOWN 2 按下鼠标右键
EVENT_MBUTTONDOWN 3 按下鼠标中键
EVENT_LBUTTONUP 4 左键释放
EVENT_RBUTTONUP 5 右键释放
EVENT_MBUTTONUP 6 中键释放
EVENT_LBUTTONDBLCLK 7 左键双击
EVENT_RBUTTONDBLCLK 8 右键双击
EVENT_MBUTTONDBLCLK 9 中键双击
EVENT_MOUSEWHEEL 10 鼠标滚轮上下滚动
EVENT_MOUSEHWHEEL 11 鼠标左右滚动

flags:
EVENT_FLAG_LBUTTON 1 按下左键
EVENT_FLAG_RBUTTON 2 按下右键
EVENT_FLAG_MBUTTON 4 按下中键
EVENT_FLAG_CRTLKEY 8 按下ctrl键
ECENT_FLAG_SHIFTKEY 16 按下shift键
EVENT_FLAG_ALTKEY 32 按下alt键

import cv2 as cv
import numpy as npdef mouse_callback(event,x,y,flags,userdata):print(event,x,y,flags,userdata)# 按下鼠标右键推出if event == 2:   # 数字2上面文字有解释cv.destroyALLWindows()cv.namedWindow('mouse',cv.WINDOW_NORMAL)   # 设置个窗口
# 宽度和高度
cv.resizeWindow('mouse',640,360)  # 设置下窗口大小# 设置鼠标回调函数
# '123'为userdata数据
cv.setMouseCallback('mouse',mouse_callback,'123')# 显示窗口和背景
# 生成全黑图片
# 高度和宽度
img = np.zeros((360,640,3),np.uint8)
while True:cv.imshow('mouse',img)cv.waitKey(1) & 0xff == ord('q')cv.destroyALLWindows()

运行结果:打印的数字是指鼠标执行的操作

python-opencv控制鼠标操作相关推荐

  1. Python脚本控制鼠标键盘完成机械化操作

    Python直接控制鼠标键盘 使用Python脚本直接控制键盘鼠标 安装 $ sudo pip install pyautogui 安装的依赖包可能比较多,只要耐心等待即可 控制鼠标操作 # -*- ...

  2. python如何控制鼠标键盘_Python如何控制鼠标键盘

    Python如何控制鼠标键盘 发布时间:2020-12-15 09:14:59 来源:亿速云 阅读:88 作者:小新 这篇文章将为大家详细讲解有关Python如何控制鼠标键盘,小编觉得挺实用的,因此分 ...

  3. Python直接控制鼠标键盘模块 pyautogui

    Python直接控制鼠标键盘模块 pyautogui 参考文章:http://www.chenxm.cc/post/547.html 安装 pip install pyautogui 官网: http ...

  4. Python OpenCV实现鼠标画框

    Python OpenCV实现鼠标画框 使用Python+OpenCV实现鼠标画框的代码: # -*-coding: utf-8 -*- """@Project: Int ...

  5. Python 模拟键盘鼠标操作实战教程

    在某些情况下,如果我们需要进行自动化操作的应用没有提供相应的接口,我们无法直接通过Python来调用API实现自动化.这种情况下,Python也不是完全没有办法的,我们可以采用模拟键盘和鼠标的方式实现 ...

  6. OpenCV利用鼠标操作测量角度

    前言 本文介绍一种在OpenCV中定义鼠标事件来进行对两条直线之间夹角的计算以及输出. 一.本文内容 利用OpenCV设置鼠标操作来进行测量角度,基本思路是通过定义鼠标事件得到三角形的三个点的坐标位置 ...

  7. Python OpenCV 图片模糊操作 blur 与 medianBlur

    Python OpenCV 365 天学习计划,与橡皮擦一起进入图像领域吧. Python OpenCV 基础知识铺垫 函数原型介绍 均值模糊 中值模糊 2D 卷积(图像滤波),自定义模糊 橡皮擦的小 ...

  8. 用Mouse_event()来控制鼠标操作

    用Mouse_event()来控制鼠标操作 在自动化测试的开发中,有一些控件的ID是很难找到的,所以有些时候,我们直接设置鼠标的位置,然后是用click事件,会收到很好的效果.在Windows API ...

  9. opencv控制鼠标

    openCV控制鼠标 SetMouseCallback(winname,callback,userdata): 设置鼠标回调函数 winname:窗口名字 callback:自定义回调函数 userd ...

  10. Python自动化控制鼠标和键盘操作—— PyAutoGUI

    简 介:PyAutoGUI是一个Python语言的键鼠自动化库,简单来说和按键精灵的功能一样.但是因为是Python的类库,所以可以使用Python代码配合一些其他类库完成更加强大的功能,本文对PyA ...

最新文章

  1. Manifest merger failed : Attribute application@allowBackup value=(false) 解决方法
  2. 【数理知识】《积分变换与场论》王振老师-第4章-矢量分析
  3. golang基本数据类型string字符串常用方法代码示例
  4. 832. Flipping an Image
  5. php asp 语法,ASP 语法
  6. java 中类型后面三个点的用法
  7. rabbitMQ linux 安装步骤
  8. android实战开发02
  9. 虚拟机上搭git服务器,搭建gitlab服务器
  10. 第8天 NSD NETWOEK
  11. Android中Webview自适应屏幕
  12. php 1970毫秒数,php – date()返回1970-01-01
  13. 怎么用计算机作word文档,大学计算机作业word使用(6页)-原创力文档
  14. 关于抢红包的_关于抢红包的作文600
  15. Shell小脚本实现一键关机/重启虚拟机
  16. 简单聊聊Long Short Term Memory Network (LSTM)和 Gated Recurrent Unit (GRU)两种强大的RNN变体
  17. c语言 乘法运算符,C 乘法运算符
  18. TopCoder 介绍
  19. Torch.arange函数详解
  20. mathematica入门(一)

热门文章

  1. SQL进阶教程——自连接的用法(第二章)
  2. 慕课学习史上最全零基础入门HTML5和CSS笔记
  3. Android Activity内嵌Fragment,当Activity recreate时Fragment被添加多次,造成界面重叠
  4. 讲讲自己一天入门Python的一些心得
  5. 如何扩展VMware xp虚拟机磁盘
  6. 堆——神奇的优先队列 大根堆小根堆详解,附小根堆C++代码实现与STL相关
  7. 视频教程-SpringBoot Web项目案例视频课程-Java
  8. 一级计算机B理论知识和答案,计算机一级B试题+理论答案 10秋06
  9. 计算机专业哪些课程好难,计算机专业课程有哪些 学计算机难不难
  10. 面渣逆袭:RocketMQ二十三问