在绘制任何图形之前,需要先使用np.zeros()来创建一个黑色图像。
np.zeros()有两个参数,一个是创建的图片矩阵大小,另一个是数据类型。

代码示例:

 img = np.zeros((512,512,3), np.uint8)

512,512是像素(第一个512像素高,第二个是512像素宽),3指BGR三种颜色

uint8是用0-255表示所有颜色。

1.画线

cv.line()共7个参数,分别为:

①要在上面画线的图像对象
②线段起点坐标
③线段终点坐标
④线段颜色
⑤线段厚度
⑥线段类型
⑦坐标精确到小数点后第几位

代码示例:

cv.line(img,(0,0),(511,511),(255,0,0),5)

2.画矩形

cv.rectangle()共7个参数,分别为

①要在上面画矩形的图像对象
②矩形左上角坐标
③矩形右下角坐标
④矩形颜色
⑤矩形线条厚度
⑥矩形线条类型
⑦矩形坐标小数点位数

代码示例:

cv.rectangle(img,(384,0),(510,128),(0,255,0),3)

3.画圆圈

cv.circle()共7个参数,分别为

①要在上面画圆圈的图像对象
②圆心坐标
③圆圈半径
④圆圈颜色
⑤圆圈线条宽度
⑥圆圈线条类型
⑦圆心坐标小数点位数

代码示例:

cv.circle(img,(447,63), 63, (0,0,255), -1)

4.画椭圆

cv.ellipse()共10个参数,分别为

①要在上面画椭圆的图像对象
②椭圆中心坐标
③椭圆的长半轴和短半轴长度
④椭圆逆时针自转的角度
⑤椭圆弧从主轴开始(最常见的二维坐标系的x轴正向)顺时针绘制的开始角度
⑥椭圆弧从主轴开始(最常见的二维坐标系的x轴正向)顺时针绘制的结束角度
⑦椭圆颜色
⑧椭圆线条宽度
⑨椭圆线条类型
⑩椭圆坐标小数点位数

代码示例:

cv.ellipse(img,(256,256),(100,50),0,0,180,255,-1)

5.画多边形

cv.polylines()共有7个参数,分别为

①要在上面画多边形的图像对象
②顶点矩阵
③多边形是否封闭(True为封闭,False为折线)
④多边形颜色
⑤多边形线条宽度
⑥多边形线条类型
⑦多边形顶点坐标小数点位数

代码示例:

pts = np.array([[10,5],[20,30],[70,20],[50,10]], np.int32)
cv.polylines(img,[pts],True,(0,255,255))

6.向图像添加文本

cv.putText()共9个参数,分别为

①要在上面添加文本的图像对象
②文本内容
③文本左下角坐标
④文本字体
⑤文本大小
⑥文本颜色
⑦文本线条宽度
⑧文本线条类型
⑨文本坐标小数点位数

代码示例:

font = cv.FONT_HERSHEY_SIMPLEX
cv.putText(img,'OpenCV',(10,500), font, 4,(255,255,255),10,cv.LINE_AA)

OpenCV绘图功能相关推荐

  1. OpenCV绘图和文本输出功能的实例(附完整代码)

    OpenCV绘图和文本输出功能的实例 OpenCV绘图和文本输出功能的实例 OpenCV绘图和文本输出功能的实例 #include "opencv2/core.hpp" #incl ...

  2. OpenCV中的绘图功能 | 七

    目标 学习使用OpenCV绘制不同的几何形状 您将学习以下功能:cv.line(),cv.circle(),cv.rectangle(),cv.ellipse(),cv.putText()等. 代码 ...

  3. python opencv单通道转多通道_13、OpenCV绘图和文本显示

    我们经常想要绘制各种形状,为此,OpenCV提供了一系列功能,可以绘制直线,矩形,圆等.OpenCV的绘图功能适用于图像,但其中大多数仅影响前三个通道,在单通道图像的情况下仅默认第一个通道.大多数绘图 ...

  4. opencv ellipse函数_13、OpenCV绘图和文本显示

    我们经常想要绘制各种形状,为此,OpenCV提供了一系列功能,可以绘制直线,矩形,圆等.OpenCV的绘图功能适用于图像,但其中大多数仅影响前三个通道,在单通道图像的情况下仅默认第一个通道.大多数绘图 ...

  5. python画空心圆图_OpenCV-Python系列之绘图功能

    在图像中我们经常需要用到将某个局部特征画出来,比如物体检测,物体追踪等等,今天来看看有哪些好玩的绘图工具吧! 画线 首先要为画的线创造出环境,就要生成一个空的黑底图像.我们使用numpy进行实验:im ...

  6. Matplotlib基础绘图功能 — 以折线图为例

    1 完善原始折线图 - 给图形添加辅助功能 为了更好地理解所有基础绘图功能,通过天气温度变化的绘图来融合所有的基础API使用 需求:画出某城市11点到12点1小时内每分钟的温度变化折线图,温度范围在1 ...

  7. java使用重绘实现拖动_原生JS使用Canvas实现拖拽式绘图功能

    一.实现的功能 1.基于oop思想构建,支持坐标点.线条(由坐标点组成,包含方向).多边形(由多个坐标点组成).圆形(包含圆心坐标点和半径)等实体 2.原生JavaScript实现,不依赖任何第三方j ...

  8. Qt 2D绘图功能简单总结

    文章目录 Qt 2D绘图功能简单总结 Qt 2D绘图功能简单总结 Qt 的绘图功能非常强大,它可以绘制一切想要的图形,从最简单的一条直线到其他任何复杂的图形,还可以用来绘制文本和图片. Qt的绘图系统 ...

  9. OpenCV使用功能匹配模板的实例(附完整代码)

    OpenCV使用功能匹配模板的实例 OpenCV使用功能匹配模板的实例 OpenCV使用功能匹配模板的实例 #include "opencv2/imgcodecs.hpp" #in ...

最新文章

  1. 【连载】优秀程序员的 45 个习惯之习惯35
  2. 北京集训:20180323
  3. 阿里云 Ubuntu16.04 部署 LAMP
  4. java创建datetime_Java OffsetDateTime ofInstant()用法及代码示例
  5. VTK:小部件之ImplicitPlaneWidget2
  6. 单元测试 代码里面都绝对路径怎么处理_原创 | 编写单元测试和实践TDD (六)测试哪些内容:Right-BICEP...
  7. 为什么用链路聚合_H3C ComwareV7平台网络设备可靠性配置——链路聚合
  8. uva 10061——How many zero\'s and how many digits ?
  9. Spring开发环境搭建和第一个示例程序
  10. 2022年中国政企采购数字化转型白皮书
  11. 如何将字节数组转换为十六进制字符串,反之亦然?
  12. 服务器机柜内手机信号,手机信号强度是什么
  13. php 中文名称排序 源码,四种排序算法PHP实现类
  14. java 链表插入排序,insertion Sort List (链表的插入排序) leecode java
  15. Knoll Light Factory 3.2 for Mac 完整汉化版 灯光工厂 for Mac中文版 支持PSCC2019
  16. DA转换器原理及应用(报告)
  17. 边境的悍匪—Kaggle—泰坦尼克号生还预测详细教程
  18. Wox - 开源免费强大的快捷启动器辅助工具,快速高效率打开软件/搜索文件!
  19. 游戏陪练 预约交友 语音聊天 双端APP源代码+编译说明
  20. Python学习记录——英文名修改成标准格式

热门文章

  1. 55个有关高考的经典幽默搞笑话段子
  2. 骁龙660是32位还是64位_骁龙660、670和710谁更强?三款处理器差距在哪里?
  3. 语录精华---提升认知持续成长
  4. WPS合并单元格怎么填充序号
  5. 步进电机与伺服电机基础知识
  6. 浏览器缓存库设计总结(localStorage/indexedDB)
  7. 30s教会你在Android模拟器上安装搜狗输入法
  8. 华为轮值CEO郭平首次全面解读华为生态战略
  9. Django实战——待办事项清单
  10. 智能体如何应对环境突变:快速感知和自适应