opencv3/python 鼠标响应操作详解
作者:阿卡蒂奥 时间:2022-10-11 09:29:52
鼠标回调函数:
def setMouseCallback(
windowName, #窗口名称
onMouse, #鼠标响应处理函数
param=None) #处理函数的ID
event鼠标事件:
event:
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 右键释放
flags:
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 按Shift不放事件
示例
在图像上用鼠标点击左键拖拽画一矩形,并输出矩形信息:
import cv2
def draw_rectangle(event,x,y,flags,param):
global ix, iy
if event==cv2.EVENT_LBUTTONDOWN:
ix, iy = x, y
print("point1:=", x, y)
elif event==cv2.EVENT_LBUTTONUP:
print("point2:=", x, y)
print("width=",x-ix)
print("height=", y - iy)
cv2.rectangle(img, (ix, iy), (x, y), (0, 255, 0), 2)
img = cv2.imread("max.png") #加载图片
cv2.namedWindow('image')
cv2.setMouseCallback('image', draw_rectangle)
while(1):
cv2.imshow('image', img)
if cv2.waitKey(20) & 0xFF == 27:
break
cv2.destroyAllWindows()
输出:
point1:= 254 64
point2:= 708 569
width= 454
height= 505
来源:https://blog.csdn.net/akadiao/article/details/80312254
标签:opencv3,python,鼠标响应
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
关于python 的legend图例,参数使用说明
2022-07-21 10:10:13
![](https://img.aspxhome.com/file/2023/1/78661_0s.jpg)
jRaiser与jQuery的冲突问题
2010-07-27 12:36:00
PyQt5创建一个新窗口的实例
2021-12-31 02:49:44
![](https://img.aspxhome.com/file/2023/6/93516_0s.jpg)
pyhon如何把程序打包为whl
2023-06-16 11:30:48
![](https://img.aspxhome.com/file/2023/6/60976_0s.png)
对DJango视图(views)和模版(templates)的使用详解
2021-05-30 00:37:51
OpenCV-Python模板匹配人眼的实例
2022-10-22 06:09:23
![](https://img.aspxhome.com/file/2023/5/84965_0s.png)
纯CSS Tooltips提示
2008-10-18 16:01:00
django执行原生SQL查询的实现
2023-11-11 13:34:04
详解python日期时间处理2
2021-05-20 19:27:15
![](https://img.aspxhome.com/file/2023/3/86613_0s.png)
Python实现学生成绩管理系统
2023-08-13 09:51:17
![](https://img.aspxhome.com/file/2023/1/62301_0s.jpg)
Pycharm2020.1安装中文语言插件的详细教程(不需要汉化)
2022-10-16 00:45:24
![](https://img.aspxhome.com/file/2023/9/81439_0s.jpg)
类型转换的小乐趣
2010-11-30 21:37:00
客户认同的就是好商品
2009-08-31 16:41:00
从if else到switch case再到抽象
2010-11-05 18:30:00
python基于pygame实现飞机大作战小游戏
2021-04-27 07:59:17
![](https://img.aspxhome.com/file/2023/8/81528_0s.jpg)
Go Gin实现文件上传下载的示例代码
2023-06-21 15:11:13
Python标准库之time库的使用教程详解
2023-07-25 05:25:57
![](https://img.aspxhome.com/file/2023/2/61702_0s.jpg)
基于PHP实现解密或加密Cloudflar邮箱保护
2023-07-22 13:22:37
查看已安装tensorflow版本的方法示例
2021-09-21 03:49:11
![](https://img.aspxhome.com/file/2023/0/75170_0s.png)
Python竟能画这么漂亮的花,帅呆了(代码分享)
2021-02-04 15:50:00
![](https://img.aspxhome.com/file/2023/7/82577_0s.jpg)