opencv—常用函数学习_“干货“_14

目录

三六、绘制几何与文本

绘制直线 (line)

绘制圆 (circle)

绘制矩形 (rectangle)

绘制椭圆 (ellipse)

绘制多边形 (polylines)

绘制箭头线 (arrowedLine)

绘制标记 (drawMarker)

绘制文本 (putText)

资料整理不易,觉得有用给个赞和搜藏吧

http://t.csdnimg.cn/i8pqt ------ opencv---常用函数学习_"干货"_总(VIP)

散的正在一部分一部分发,不需要VIP。

资料整理不易,有用话给个赞和收藏吧。


三六、绘制几何与文本

在OpenCV中,绘制几何图形和文本是图像处理中的基本操作。OpenCV提供了一些函数来绘制直线、矩形、圆、椭圆、多边形、箭头线、标记和文本。下面介绍这些函数及其使用示例。

|-----------|-------------|------------|---------|
| 绘制几何图形与文本函数 ||||
| line | circle | rectangle | ellipse |
| 绘制直线 | 绘制圆 | 绘制矩形 | 绘制椭圆 |
| polylines | arrowedLine | drawMarker | putText |
| 绘制多边形 | 绘制箭头线 | 绘制标记 | 绘制文本 |

绘制直线 (line)
复制代码
import cv2
import numpy as np

# 创建一个黑色图像
image = np.zeros((512, 512, 3), np.uint8)

# 绘制一条蓝色的直线
cv2.line(image, (0, 0), (511, 511), (255, 0, 0), 5)

# 显示图像
cv2.imshow('Line', image)
cv2.waitKey(0)
cv2.destroyAllWindows()
绘制圆 (circle)
复制代码
# 绘制一个绿色的圆
cv2.circle(image, (256, 256), 100, (0, 255, 0), -1)

# 显示图像
cv2.imshow('Circle', image)
cv2.waitKey(0)
cv2.destroyAllWindows()
绘制矩形 (rectangle)
复制代码
# 绘制一个红色的矩形
cv2.rectangle(image, (100, 100), (400, 400), (0, 0, 255), 3)

# 显示图像
cv2.imshow('Rectangle', image)
cv2.waitKey(0)
cv2.destroyAllWindows()
绘制椭圆 (ellipse)
复制代码
# 绘制一个白色的椭圆
cv2.ellipse(image, (256, 256), (150, 100), 0, 0, 180, (255, 255, 255), -1)

# 显示图像
cv2.imshow('Ellipse', image)
cv2.waitKey(0)
cv2.destroyAllWindows()
绘制多边形 (polylines)
复制代码
# 定义多边形的顶点
points = np.array([[100, 50], [200, 300], [700, 200], [500, 100]], np.int32)
points = points.reshape((-1, 1, 2))

# 绘制多边形
cv2.polylines(image, [points], True, (0, 255, 255), 3)

# 显示图像
cv2.imshow('Polylines', image)
cv2.waitKey(0)
cv2.destroyAllWindows()
绘制箭头线 (arrowedLine)
复制代码
# 绘制一个箭头线
cv2.arrowedLine(image, (50, 50), (450, 450), (255, 255, 0), 5)

# 显示图像
cv2.imshow('Arrowed Line', image)
cv2.waitKey(0)
cv2.destroyAllWindows()
绘制标记 (drawMarker)
复制代码
# 绘制一个标记
cv2.drawMarker(image, (256, 256), (0, 255, 255), markerType=cv2.MARKER_STAR, markerSize=40, thickness=2)

# 显示图像
cv2.imshow('Marker', image)
cv2.waitKey(0)
cv2.destroyAllWindows()
绘制文本 (putText)
复制代码
# 绘制文本
cv2.putText(image, 'OpenCV', (100, 400), cv2.FONT_HERSHEY_SIMPLEX, 4, (255, 255, 255), 2, cv2.LINE_AA)

# 显示图像
cv2.imshow('Text', image)
cv2.waitKey(0)
cv2.destroyAllWindows()

通过这些示例代码,可以看到如何使用OpenCV中的绘图函数在图像上绘制各种几何图形和文本。这些基本的绘图操作在图像处理、计算机视觉、数据可视化等领域有着广泛的应用。

资料整理不易,觉得有用给个赞和搜藏吧

相关推荐
AI Echoes几秒前
LLMOps平台:开源项目LMForge = GPTs + Coze
人工智能·python·langchain·开源·agent
风信子的猫Redamancy4 分钟前
文心大模型 X1.1:百度交出的“新深度思考”答卷
人工智能·百度·大模型·深度思考
聚客AI8 分钟前
🚀从零构建AI智能体:九大核心技术拆解与落地建议
人工智能·agent·mcp
HUIMU_21 分钟前
YOLOv5实战-GPU版本的pytorch虚拟环境配置
人工智能·pytorch·深度学习·yolo
虚行26 分钟前
VisionMaster - 1.图像源
人工智能·计算机视觉
Coovally AI模型快速验证27 分钟前
基于YOLO集成模型的无人机多光谱风电部件缺陷检测
人工智能·安全·yolo·目标跟踪·无人机
猫天意30 分钟前
【CVPR2023】奔跑而非行走:追求更高FLOPS以实现更快神经网络
人工智能·深度学习·神经网络·算法·机器学习·卷积神经网络
杀生丸学AI34 分钟前
【三维重建】3R-GS:优化相机位姿的3DGS最佳实践
人工智能·3d·aigc·三维重建·视觉大模型·高斯泼溅
羊羊小栈38 分钟前
基于「YOLO目标检测 + 多模态AI分析」的PCB缺陷检测分析系统(vue+flask+数据集+模型训练)
vue.js·人工智能·yolo·目标检测·flask·毕业设计·大作业
lihuayong38 分钟前
大模型预训练评估指标
人工智能·大模型评估·预训练评估