当前位置: 首页 > news >正文

OpenCV学习(二)——OpenCV中绘图功能

    • 2. OpenCV中绘图功能
      • 2.1 画线
      • 2.2 画矩形
      • 2.3 画圆
      • 2.4 画多边形
      • 2.5 添加文本

2. OpenCV中绘图功能

绘图可以实现画线、画矩形、画圆、画多边形和添加文本等操作。

import cv2
import numpy as np# 读取图像
img = cv2.imread('lena.jpg')# 画直线
cv2.line(img, (0, 0), (512, 512), (255, 0, 0), 5)# 画矩形
cv2.rectangle(img, (100, 150), (150, 200), (0, 255, 0), 3)# 画圆
cv2.circle(img, (200, 300), 40, (0, 0, 255), -1)# 画多边形
pts = np.array([[15, 10], [20, 30], [70, 20], [50, 60]], np.int32)
pts = pts.reshape((-1, 1, 2))
cv2.polylines(img, [pts], True, (0, 255, 255), 3)# 添加文本
font = cv2.FONT_HERSHEY_SIMPLEX
cv2.putText(img, 'lena', (120, 450), font, 4, (255, 255, 255), 2, cv2.LINE_AA)# 显示图像
cv2.imshow('image', img)
cv2.waitKey(0)
cv2.destroyAllWindows()

请添加图片描述

2.1 画线

cv2.line(img, pt1, pt2, color, thickness=None)

  • img:绘制形状的图像
  • pt1:线的开始坐标
  • pt2:线的结束坐标
  • color:形状的颜色
  • thickness:厚度,线或圆等的粗细。如果对闭合图形(如圆)传递-1 ,它将填充形状。

2.2 画矩形

cv2.rectangle(img, pt1, pt2, color, thickness=None)

  • img:绘制形状的图像
  • pt1:矩形左上角点坐标
  • pt2:矩形右上角点坐标
  • color:形状的颜色
  • thickness:厚度,线或圆等的粗细。如果对闭合图形(如圆)传递-1 ,它将填充形状。

2.3 画圆

cv2.circle(img, center, radius, color, thickness=None)

  • img:绘制形状的图像
  • center:中心坐标
  • radius:半径
  • color:形状的颜色
  • thickness:厚度,线或圆等的粗细。如果对闭合图形(如圆)传递-1 ,它将填充形状。

2.4 画多边形

cv2.polylines(img, pts, isClosed, color, thickness=None)

  • img:绘制形状的图像
  • pts:顶点的坐标,为数组且类型为int32
  • isClosed:是否闭合
  • color:形状的颜色
  • thickness:厚度,线或圆等的粗细。如果对闭合图形(如圆)传递-1 ,它将填充形状。

2.5 添加文本

cv2.putText(img, text, org, fontFace, fontScale, color, thickness=None, lineType=None)

  • img:添加文本的图像
  • text:写入的文字数据
  • org:位置坐标(即数据开始的左下角)
  • fontFace:字体类型
  • fontScale:字体比例(指定字体大小)
  • color:文本的颜色
  • thickness:文本的粗细
  • lineType:线条类型
http://www.lryc.cn/news/211062.html

相关文章:

  • 业务架构、应用架构、技术架构、数据架构
  • 独创改进 | RT-DETR 引入 Asymptotic Hybrid Encoder | 渐进混合特征解码结构
  • SpringCloudAlibaba实战-nacos集群部署
  • Elasticsearch安装IK分词器
  • 『51单片机』 DS1302时钟
  • ubuntu部署个人网盘nextCloud使用docker-compose方式
  • 【ChatGPT 01】ChatGPT基础科普
  • 2317.操作后的最大异或和
  • Python爬虫-经典案例详解
  • 【信创】银河麒麟V10 安装postgis
  • OpenCV常用功能——灰度处理和图像二值化处理
  • excel巧用拼接函数CONCAT输出JSON、SQL字符串
  • Redis桌面管理工具:Redis Desktop Manager for Mac
  • 基于SSM的汽车维修管理系统
  • volatile 系列之如何解决可见性问题
  • 网络安全(黑客技术)—小白自学
  • MTK AEE_EXP调试方法及user版本打开方案
  • 京东平台数据分析:2023年9月京东扫地机器人行业品牌销售排行榜
  • pytorch 笔记:index_select
  • 面试算法43:在完全二叉树中添加节点
  • Python算法例3 检测2的幂次
  • 线扫相机DALSA--采集卡Base模式设置
  • Gitee 发行版
  • python面向对象
  • Go基础——数组、切片、集合
  • Error: no matching distribution found for tensorflow-cpu==2.6.*
  • nginx 进程模型
  • TypeScript - 枚举类型 -字符型枚举
  • 分布式锁-Redis红锁解决方案
  • 【Ubuntu 终端终结者Ctrl shift e无法垂直分页解决办法】