内容来自OpenCV-Python Tutorials 自己翻译整理

目标:

  1. 使用opencv画几何图形
  2. 学习如下函数 cv2.line(), cv2.circle() , cv2.rectangle(), cv2.ellipse(), cv2.putText()

画线:

import numpy as np
import cv2
#画图窗口大小设置为512*512 通常参数,可选1,3,4
img = np.zeros((512,512,4),np.uint8)
#画直线,参数为绘图窗口,起点,终点,颜色,粗细,连通性(可选4联通或8联通)
img = cv2.line(img,(100,0),(511,511),(255,0,0),5,8)cv2.imshow('img',img)
cv2.waitKey(0)
cv2.destroyAllWindows()

矩形:

import numpy as np
import cv2
img = np.zeros((512,512,4),np.uint8)
#画矩形,参数为窗口,左上角坐标,右下角坐标,颜色,粗度
img = cv2.rectangle(img,(384,0),(510,128),(0,255,0),3)
cv2.imshow('img',img)
cv2.waitKey(0)
cv2.destroyAllWindows()

画圆:

import numpy as np
import cv2
img = np.zeros((512,512,4),np.uint8)
#画圆函数,参数为窗口,圆心,半径,颜色,粗度(如果粗度为-1标示实心),连通性
img = cv2.circle(img,(447,63),50,(0,0,255),1,8)cv2.imshow('img',img)
cv2.waitKey(0)
cv2.destroyAllWindows()

椭圆:

import numpy as np
import cv2
img = np.zeros((512,512,4),np.uint8)#画椭圆函数,参数为窗口,椭圆中心,椭圆长轴短轴,椭圆逆时针旋转角度,椭圆起绘制起始角度,椭圆绘制结束角度,颜色,粗度,连通性
img = cv2.ellipse(img,(256,256),(100,50),100,36,360,(0,255,255),1,8)cv2.imshow('img',img)
cv2.waitKey(0)
cv2.destroyAllWindows()

画多边形:

import numpy as np
import cv2
img = np.zeros((512,512,4),np.uint8)pts = np.array([[10,5],[20,30],[70,20],[50,10]], np.int32)
#转换成三维数组,表示每一维里有一个点坐标
pts = pts.reshape((-1,1,2))
#画多边形函数,参数为窗口,坐标,是否封闭,颜色
img = cv2.polylines(img,[pts],True,(0,255,255))cv2.imshow('img',img)
cv2.waitKey(0)
cv2.destroyAllWindows()

写字:

参数如下
1. 窗口
2. 要写到窗口上的字符
3. 字体位置,左下角
4. 字体类型,查询cv2.putText()函数的文档来查看字体
5. 字体大小
6. 常规参数,类似颜色,粗细,线条类型等等

import numpy as np
import cv2
img = np.zeros((512,512,4),np.uint8)font = cv2.FONT_HERSHEY_SIMPLEX
cv2.putText(img,'OpenCV',(10,500), font, 4,(255,255,255),2,cv2.LINE_AA)cv2.imshow('img',img)
cv2.waitKey(0)
cv2.destroyAllWindows()

python opencv 入门 绘图函数 (3)相关推荐

  1. python绘图实例-Python matplotlib基础绘图函数示例

    原标题:Python matplotlib基础绘图函数示例 Pyplot基础图标函数: 函数 说明 plt.plot(x,y,fmt,-) 绘制一个坐标图 plt.boxplot(data,notch ...

  2. python opencv cv2.resize()函数

    **def resize(src, dsize, dst=None, fx=None, fy=None, interpolation=None): # real signature unknown; ...

  3. python——opencv入门(一)

    1. OpenCV的结构 和Python一样,当前的OpenCV也有两个大版本,OpenCV2和OpenCV3.相比OpenCV2,OpenCV3提供了更强的功能和更多方便的特性.不过考虑到和深度学习 ...

  4. python opencv入门 鼠标绘图(4)

    内容来自OpenCV-Python Tutorials 自己翻译整理 目标: 学习如何操作鼠标事件 学习cv2.setMouseCallback()函数 简单样例: 首先创建一个鼠标的回调函数,当鼠标 ...

  5. python opencv入门 光流法(41)

    内容来自OpenCV-Python Tutorials 自己翻译整理 目标: 了解光流的概念,使用lucas-kanade估算方法 使用cv2.calcOpticalFlowPyrLK() 方法来追踪 ...

  6. python OpenCV 入门教程等你来取

    虽然python 很强大,而且也有自己的图像处理库PIL,但是相对于OpenCV 来讲,OpenCV更加强大, 可以做更多更复杂的应用,比如人脸识别等.跟很多开源软件一样OpenCV 也提供了完善的p ...

  7. Python中Turtle绘图函数-绘制时钟程序

    Turtle常用的一些函数, 参考博客:http://blog.csdn.net/zengxiantao1994/article/details/76588580 时钟代码设计 我们可以通过main函 ...

  8. python opencv入门 SURF算法(34)

    内容来自OpenCV-Python Tutorials 自己翻译整理 目标: SURF算法基础 opencv总SURF算法的使用 原理: 上节课使用了SIFT算法,当时这种算法效率不高,需要更快速的算 ...

  9. python opencv入门 Hough圆变换(28)

    内容来自OpenCV-Python Tutorials 自己翻译整理 目标: 使用霍夫变换在图像中寻找圆 使用函数cv2.HoughCircles() 原理: 圆形的表达式为(x−xcenter)2+ ...

最新文章

  1. Oracle如何代码编辑,配置UltraEdit为Oracle PL/SQL代码编辑器
  2. 【学习笔记】关于DOM4J:使用DOM4J解析XML文档
  3. POJ - 2549 Sumsets
  4. 高校c语言程序设计比赛,分秒必争,力争上游,计算机学院举办第八届C语言程序设计挑战杯...
  5. mysql表引擎修改
  6. Sqoop 1.99.3 hadoop-1.2.1 安装配置
  7. 六. 异常处理9.finally块
  8. ajax点击事件无法触发,解决jQuery Ajax动态新增节点无法触发点击事件的问题_婳祎_前端开发者...
  9. 云计算精华问答 | 边缘计算、雾计算、霾计算,它们究竟是什么?
  10. vim高级技巧(split)_小花_新浪博客
  11. 词汇表生成(C语言)
  12. 川大计算机考研录取率高吗,四川大学考研难不难?看完这篇你就知道了!
  13. Windows装机必备软件列表
  14. C语言标准库函数大全(ctype、time 、stdio、stdlib、math、string)
  15. mouseover和mouseenter区别
  16. Aptana Studio3的安装问题
  17. Linux管道通信多次读写,linux进程通信之(二):管道的读与写
  18. 【媒体管家】媒体邀约以及媒介投放策略
  19. 已经开源的阿里云播放器的播放内核
  20. iOS 指纹解锁 检测指纹信息变更

热门文章

  1. 冰蝎3 冰蝎2 behinder流量分析 流量解密
  2. 为什么要使用异常及java异常的使用--及js、php、golang的异常机制
  3. 结合本科C++项目的MFC学习总结
  4. java.sql.SQLSyntaxErrorException: Table ‘H_PERSION‘ doesn‘t exist
  5. 乐鑫esp8266学习rtos3.0笔记第3篇: 一篇文章带你搞掂存储技术 NVS 的认识和使用,如何利用NVS保存整型、字符串、数组以及结构体。(附带demo)
  6. 计算一个字符串里面特定字符的个数
  7. 高通SDX12:基于sgm4151x的充电IC代码架构
  8. sketchup画圆柱面
  9. 性能评测方法、各评测项标准总结
  10. 地图经纬度坐标转换BD-09/GCJ-02/WGS84坐标转换