注意,要使用笔刷的话,需首先按下 m 键将默认模式转变

import numpy as np
import cv2 as cv drawing = False # true if mouse is pressed
mode = True # if True,draw rectangle. Press 'm' to toggle to curve
ix,iy = -1,-1#mouse callback function
def draw_circle(event,x,y,flags,param):global ix,iy,drawing,mode#按下鼠标左键时 开始画if event == cv.EVENT_LBUTTONDOWN:drawing = Trueix,iy = x,y#鼠标移动时一直画elif event == cv.EVENT_MOUSEMOVE:if drawing == True:if mode == True:cv.rectangle(img,(ix,iy),(x,y),(0,255,0),-1)else:cv.circle(img,(x,y),3,(0,0,255),-1)#鼠标左键松开时停止画elif event == cv.EVENT_LBUTTONUP:drawing = Falseif mode == True:cv.rectangle(img,(ix,iy),(x,y),(0,255,0),-1)else:cv.circle(img,(x,y),5,(0,0,255),-1)img = np.zeros((512,512,3),np.uint8)
cv.namedWindow('image')
cv.setMouseCallback('image',draw_circle)while(1):cv.imshow('image',img)k = cv.waitKey(1) & 0xFFif k == ord('m'): #按下m键时 在画矩形和画线条之间切换mode = not modeelif k == 27:break# 销毁所有的窗口
cv.destroyAllWindows()

参考文献:https://docs.opencv.org/4.1.0/db/d5b/tutorial_py_mouse_handling.html

opencv 学习第4课 将鼠标作为笔刷使用相关推荐

  1. procreate 笔刷_插画学习必备:2000款Procreate大师级笔刷,超级强大,免费领取

    插画学习必备:2000款Procreate大师级笔刷,超级强大,免费领取. 今天花荞分享给大家2000款Procreate笔刷,基本上常用的笔刷都搜集到了,笔刷之强大超越你想象.需要的小伙伴可免费领取 ...

  2. 【opencv学习手账】1.鼠标相应事件

    虽然从大学开始接触程序好多年了,但依旧是个菜鸟.本来大学毕业以后准备从事软件开发相关的工作,一系列的机缘巧合跑到日本来继续读书了.刚好日本这边学的是数字图像处理.除了使用C语言以外,感觉其他东西都是和 ...

  3. opencv学习第6课官方练习实现 Create a Paint application with adjustable colors and brush radius using trackbars

    练习题目来源(网址最下方):https://docs.opencv.org/4.1.0/d9/dc8/tutorial_py_trackbar.html import numpy as np impo ...

  4. opencv 学习第三课 画线段 圆 椭圆 矩形 多边形 插入文字 代码注释版 保证你每一行都能读懂

    import numpy as np import cv2 as cv # 创建一张大小为512×512,通道数为3的黑色的图片 img = np.zeros((512,512,3), np.uint ...

  5. youcans 的 OpenCV 学习课—3.图像的创建与修改

    youcans 的 OpenCV 学习课-3.图像的创建与修改 本系列面向 Python 小白,从零开始实战解说 OpenCV 项目实战. OpenCV 中图像的数据结构是 ndarray 多维数组, ...

  6. opencv进阶学习笔记6:使用鼠标在图像上绘制矩形框或者多边形框

    基础版笔记传送门: python3+opencv学习笔记汇总目录(适合基础入门学习) 进阶版笔记目录: python+opencv进阶版学习笔记目录(适合有一定基础) 感兴趣区域传统绘制: openc ...

  7. youcans 的 OpenCV 学习课—10. 图像复原与重建

    youcans 的 OpenCV 学习课-10. 图像复原与重建 本系列面向 Python 小白,从零开始实战解说 OpenCV 项目实战. 图像复原是对图像退化过程建模,并以图像退化的先验知识来恢复 ...

  8. youcans 的 OpenCV 学习课—8.频率域图像滤波(上)

    欢迎关注 『OpenCV 例程200篇』 系列,持续更新中 欢迎关注 『youcans 的 OpenCV 学习课』 系列,持续更新中 youcans 的 OpenCV 学习课-1.安装与环境配置 yo ...

  9. youcans 的 OpenCV 学习课—6.灰度变换与直方图处理

    youcans 的 OpenCV 学习课-6.灰度变换与直方图处理 本系列面向 Python 小白,从零开始实战解说 OpenCV 项目实战. 空间域的图像处理方法直接对图像的像素点进行处理,空间域图 ...

最新文章

  1. 中国有超3亿人存在睡眠障碍 收入越高睡眠越少
  2. 吃饭/训觉-工作室应用隐私政策
  3. 信息学奥赛一本通(1010:计算分数的浮点数值)
  4. 进阶的Redis之数据持久化RDB与AOF
  5. Unity 碰撞器和触发器的理解
  6. mybatis报-因为 accessExternalDTD 属性设置的限制导致不允许 http 访问
  7. infopath 小结
  8. Android 四大组件学习之Activity五
  9. 临时号码,接收短信验证码
  10. Windows系统下快速安装、配置Aira2,及图形界面配置、度盘、B站视频下载
  11. jdk1.8的新特性之--Rhion变为Nashorn
  12. C#.NET生成条形码(Code39和Code128)
  13. C语言基础之小写字母转大写
  14. 好用的网页扒图插件-ImageAssistant
  15. 2022兴福村镇银行人员招聘专项练习题及答案
  16. cv2.inRange()函数---提取票据中红色印章
  17. Eclipse 3.5中文汉化包下载,在线更新
  18. 测试修改gcs_server_processes参数
  19. vue 添加favicon.ico 修改favicon.ico
  20. C++ Primer Plus(第六版)第12章 类和动态内存分配

热门文章

  1. python100例详解-Python基础之列表常见操作经典实例详解
  2. python编程入门书籍-编程小白的第一本 Python 入门书
  3. 浅谈语音识别技术的发展趋势与应用前景
  4. 语音识别人工智能解决方案
  5. 联合主键违反唯一性约束_(变强、变秃)Java从零学习024/252数据库之定义约束。...
  6. dd linux 格式化u盘启动盘_Ubuntu to go启动盘制作
  7. java ognl使用_java框架篇---struts之OGNL详解
  8. 曙光天阔服务器文档,曙光天阔服务器远程控制手册(附件).doc
  9. pip安装包报错Could not find a version that satisfies the requirement pymysql (from versions: none)
  10. 【CCCC】L3-025 那就别担心了 (30分),dfs搜索起点到终点的路径条数。