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

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

2. OpenCV中绘图功能

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

python 复制代码
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:线条类型
相关推荐
Cyltcc4 分钟前
如何安装和使用 Claude Code 教程 - Windows 用户篇
人工智能·claude·visual studio code
吹风看太阳36 分钟前
机器学习16-总体架构
人工智能·机器学习
moonsims1 小时前
全国产化行业自主无人机智能处理单元-AI飞控+通信一体化模块SkyCore-I
人工智能·无人机
MUTA️1 小时前
ELMo——Embeddings from Language Models原理速学
人工智能·语言模型·自然语言处理
海豚调度1 小时前
Linux 基金会报告解读:开源 AI 重塑经济格局,有人失业,有人涨薪!
大数据·人工智能·ai·开源
T__TIII2 小时前
Dify 插件非正式打包
人工智能
jerwey2 小时前
大语言模型(LLM)按架构分类
人工智能·语言模型·分类
令狐少侠20112 小时前
ai之RAG本地知识库--基于OCR和文本解析器的新一代RAG引擎:RAGFlow 认识和源码剖析
人工智能·ai
小叮当爱咖啡2 小时前
Seq2seq+Attention 机器翻译
人工智能·自然语言处理·机器翻译
shadowcz0072 小时前
奥特曼论人工智能、OpenAI与创业
人工智能·百度