python opencv 绘制矩形、圆、线、多边形

利用cv2.rectangle()绘制半透明方框(python) 目录前言一、cv2.rectangle二、cv2.addWeighted三、绘制半透明方框 前言 仅仅用cv2.rectangle()函数是无法在原图像的基础上绘制出半透明方框的,想要达到半透明的效 果,需要利用到cv2.addWeighted()函数... 一、cv2.rectangle import cv2 picture_path = 'E://...' picture = cv2.imread(picture_path) # picture_path为图片路径;(cv读取的文件为BG 阅读详情
AI摘要

本文主要介绍了OpenCV中用于图像绘制的函数,包括cv2.rectangle绘制矩形、cv2.circle()绘制圆、cv2.polylines()绘制多边形以及cv2.line()绘制线。详细说明了各函数的语法和参数含义,并给出了示例代码。

1. cv2.rectangle 绘制矩形

cv2.rectangle()函数是OpenCV中用于在图像上绘制矩形的函数。其语法如下:

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

参数说明:

  • img:输入的图像矩阵;
  • pt1:矩形的左上角顶点坐标,类型为(x,y);
  • pt2:矩形的右下角顶点坐标,类型为(x,y);
  • color:矩形的颜色,可以是RGB元组或灰度值;
  • thickness:可选参数,指定矩形边框的宽度,默认为1,-1 为实心矩形;
  • lineType:可选参数,指定矩形边框的类型,默认为8;
  • shift:可选参数,指定坐标点小数位数,默认为0。

下面是一个例子:

import cv2
import numpy as np

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

# 在图像上绘制一个红色矩形
cv2.rectangle(img, (100, 100), (300, 300), (0, 0, 255), 3)

# 显示图像
cv2.imshow("rectangle", img)
cv2.waitKey(0)
cv2.destroyAllWindows()

示例效果:
在这里插入图片描述

2. cv2.circle() 绘制圆

cv2.circle()函数是OpenCV中用于在图像上绘制圆形的函数。其语法如下:

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

参数说明:

  • img:输入的图像矩阵;
  • center:圆心的坐标,类型为(x,y);
  • radius:圆的半径;
  • color:圆的颜色,可以是RGB元组或灰度值;
  • thickness:可选参数,指定圆边框的宽度,默认为1,-1为实心;
  • lineType:可选参数,指定圆边框的类型,默认为8;
  • shift:可选参数,指定坐标点小数位数,默认为0。

下面是一个例子:

import cv2
import numpy as np

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

# 在图像上绘制一个半径为100的蓝色圆
cv2.circle(img, (256, 256), 100, (255, 0, 0), 3)

# 显示图像
cv2.imshow("circle", img)
cv2.waitKey(0)
cv2.destroyAllWindows()

示例效果:
在这里插入图片描述

3. cv2.polylines() 绘制多边形

在OpenCV中,绘制多边形的函数为cv2.polylines(),该函数的调用格式如下:

cv2.polylines(img, pts, isClosed, color[, thickness[, lineType[, shift]]])

其中,各参数的含义如下:

  • img:要绘制多边形的图像。
  • pts:要绘制的多边形的顶点坐标,类型为numpy.ndarray,其形状**(n,1,2),其中n为多边形的边数,2表示每个点有x和y两个坐标。**
  • isClosed:表示多边形是否封闭,如果为True,则表示多边形是封闭的,会从最后一个点连线到第一个点。
  • color:多边形的颜色,为一个(B,G,R)格式的元组或一个标量。
  • thickness:线条的粗细,默认值为1。
  • lineType:线条的类型,默认值为cv2.LINE_8。
  • shift:坐标点小数位数的位数。

下面是一个绘制多边形的示例代码:

import numpy as np
import cv2

# 创建一张黑色背景图像
img = np.zeros((512, 512, 3), dtype=np.uint8)

# 定义多边形的顶点坐标
pts = np.array([[100, 100], [200, 400], [400, 400], [400, 100]], np.int32)

# 将多边形的顶点坐标转换为需要的格式
pts = pts.reshape((-1, 1, 2))

# 绘制多边形
cv2.polylines(img, [pts], True, (0, 255, 0), thickness=2)

# 显示结果
cv2.imshow('Polygon', img)
cv2.waitKey(0)
cv2.destroyAllWindows()

需要注意的是,在使用cv2.polylines()函数绘制多边形时,要注意坐标的格式和维度,否则会出现绘制失败或者图像错位的情况。同时,可以通过调整线条的粗细、颜色等参数来实现不同的效果。

绘制效果:
在这里插入图片描述

4. cv2.line() 绘制线

cv2.line()函数是OpenCV中用于在图像上绘制直线的函数。其语法如下:

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

参数说明:

  • img:输入的图像矩阵;
  • pt1:直线的起点坐标,类型为(x,y);
  • pt2:直线的终点坐标,类型为(x,y);
  • color:直线的颜色,可以是RGB元组或灰度值;
  • thickness:可选参数,指定直线的宽度,默认为1;
  • lineType:可选参数,指定直线的类型,默认为8;
  • shift:可选参数,指定坐标点小数位数,默认为0。

下面是一个例子:

import cv2
import numpy as np

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

# 在图像上绘制一条红色直线
cv2.line(img, (0, 0), (511, 511), (0, 0, 255), 5)

# 显示图像
cv2.imshow("line", img)
cv2.waitKey(0)
cv2.destroyAllWindows()

示例效果:
在这里插入图片描述

OpenCV笔记:模板匹配 cv2.matchTemplate()、cv2.minMaxLoc() 与 绘制矩形 cv2.rectangle() 方法介绍 模板匹配实现简单(2~3行代码),计算效率高,不需要执行阈值化、边缘检测等操作来生成二值化图像。 阅读详情

相关推荐

Python Opencv 绘制图形详解(包含一个练习)——线/矩形/圆/多边形/文字

Python Opencv 绘制图形详解(包含一个练习)——线/矩形/圆/多边形/文字绘制线条函数详解代码实例绘制矩形函数详解代码实例绘制圆函数详解代码实例绘制文字函数详解代码实例★★★绘制多边形函数详解补充:多边形/折线顶点设置规则代码实例一个小练习(放手练练吧)设计内容效果展示实现代码如下小案例总结 QQ:3020889729 ...

笔岸柳影 2325

利用cv2.rectangle()绘制矩形框(python)

cv2.rectangle包含的参数有:(img, pt1, pt2, color, thickness=None, lineType=None, shift=None ) 各参数的含义如下: 总结 cv2.rectangle(读取图片变量, (左上角点坐标)(右下角点坐标),(颜色),(线宽))cv2.addWeighted 的原理是:将复制图片(以下称 blk)绘制实心矩形并调整透明度,叠加到原图中。 各参数的含义如下: 总结 使用cv2.addWeighted主要是确定好前景和后景图片,指定透明度即可

helloworld_Fly的博客 3万+

41-OpenCVSharp —- Cv2.Rectangle()函数功能(绘制矩形)详解

是 OpenCVSharp 中常用的绘制矩形的函数,广泛应用于图像标注、目标检测、图形绘制等领域。通过合理选择矩形的坐标、颜色和线宽等参数,能够满足多种应用需求。在使用时要注意坐标范围和性能优化。

weixin_45590420的博客 3905

python绘制照片_python opencv如何实现图片绘制

这篇文章主要介绍了python opencv如何实现图片绘制,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下点和圆 :circle(img,center,radius,color,thickness=None,lineType=None,shift=None)。各参数意义及作用如下。img:待画圆所在的图像。center:待画圆的圆心坐标。radi...

weixin_40004960的博客 384

使用Python,OpenCV进行涂鸦(绘制文字、线、圆、矩形、椭圆、多边形轮廓、多边形填充、箭头~)

这篇博客将介绍使用Python,OpenCV绘制文字、线、圆、矩形、椭圆、多边形轮廓、多边形填充、箭头。

qq_40985985的博客 2675

内网(极空间)搭建gitlab跳板机转发端口及域名配置

然后,回头尝试用内网地址+15022 clone,成功,用公网的ip+15222 clone失败,那就是定位到时nginx转发的问题了。首先想到的就是 git clone是通过ssh的22端口进行下载的,那就需要打通22端口,则又配置22端口的nginx转发。然后,我通过ssh命令,做一个端口转发,以实现内网穿透,将服务端口链接到跳板机上。然后穿透到阿里云服务器跳板机的端口,只能内网访问,需要用nginx做个转发,才能用公网ip进行访问。然后,如上,我的80端口,映射15080,22端口映射15022。

God丶Davide的博客 6074

opencv绘制图形

opencv绘制图形

qq_41803556的博客 740

【详细】芯片设计全流程(包括每个流程需要用到的工具以及需要参与的工作人员)

一颗芯片的诞生经历了设计、制造和测试(分别对应集成电路产业链的设计业、制造业和封测业),而每一步都包含了复杂的步骤和流程。 图0-1 集成电路产业链 现在,我们重点介绍芯片设计的全流程以及每个流程需要用到的设计工具和需要参与的工作人员。 一、IC设计分类 首先对IC设计的分类做个介绍,如图1-1所示。 图1-1 IC设计分类 如图1-1所示,IC设计可以粗分为数字IC设计和射频/模拟IC设计,数字IC设计又可分为ASIC设计和FPGA/CPLD设计,此外还有一部分IC设计.

qq_36045093的博客 8万+

OpenCV--绘制各种图形

【代码】OpenCV--绘制各种图形。

GamBleout的博客 354

【electron】- 从零到一:在electron-vite项目中集成better-sqlite3的工程化实践

本文详细介绍了在electron-vite项目中集成better-sqlite3数据库的完整工程化实践。针对原生模块的编译挑战,提供了从环境配置、路径规划、服务封装到IPC通信的解决方案,并重点解决了开发与生产环境的数据库路径分离及打包部署等核心问题,帮助开发者构建稳定高效的Electron桌面应用数据层。

weixin_29306571的博客 205

别再手动改文献了!手把手教你定制Mendeley的GB/T 7714-2005引用格式(附常见问题修复)

本文详细指导如何定制Mendeley的GB/T 7714-2005引用格式,解决科研文献管理中的常见问题。通过深度解析Mendeley样式编辑器,精准控制作者显示规则、出版社信息精简及期刊页码处理,实现参考文献一键合规。附常见问题修复和实战调试方法,大幅提升学术写作效率。

weixin_26833503的博客 374

OpenCV_03图形绘制

绘制基本图形 圆 椭圆 多边形 文本 实战演练 代码如下:

weixin_45231460的博客 3874

ComfyUI-controlnet控制出图

提供加载预处理器节点。

Bu2n的博客 5494

OpenCV快速入门八:图形与文字绘制

opencv画线、opencv画矩形、opencv画圆、opencv画椭圆、opencv写字、opencv画多边形、cv2.line、cv2.rectangle、cv2.circle、cv2.ellipse、cv2.polylines、cv2.putText、opencv绘图 opencv图形绘制

小柒的博客 1093

python:实现矩阵SVD分解(附完整源码)

python:实现矩阵SVD分解(附完整源码)

希望我的博客,能帮上你解决学习中工作中所遇到的问题 603

RK3568平台开发系列讲解(UBOOT篇)u-boot启动流程

U-Boot(Universal Bootloader)是一种开源的引导加载程序,广泛用于嵌入式系统中。它的主要功能是初始化硬件设备,加载操作系统内核,并将控制权交给操作系统。U-Boot的启动流程可以分为多个阶段,以下是典型的U-Boot启动流程:

内核笔记 1234

python +oponcv的line,rectangle(),circle(),ellipse(),polylines(),putText()函数

python + openCV 进行最简单的图片绘制,我会尽量把所有涉及的参数讲明白。全填充的图像thickness是-1,别说你不知道全填充的意思。 标题中的所有函数基本上都涉及这么几个参数,大家需要注意一下: line()函数:画一条线 import cv2 import numpy as np #create a black image #图片是512*512大小三通道的黑色图片...

h201601060805的博客 473

史上最全!研究生科研必备科研工具(含AI科研工具),附使用说明和示例

这些工具在科研中的应用非常广泛,可以帮助研究生更高效地完成研究任务。为了更好地利用这些工具,建议深入学习它们的官方文档和教程,或者参加相关的工作坊和培训。

智能AI让学术科研更容易 3943

opencv入门到精通——OpenCV中的绘图功能

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

weixin_45303602的博客 1468

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

利用OpenCV绘制基本的图形

Open CV绘制图形

ShawLee0925的博客 1305

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

python+opencv画图

1.安装python www.python.org/downloads/ 2.安装opencv+numpy 打开python安装目录,地址栏输入cmd回车,输入pip install opencv-python,完成后输入pip install numpy 3.编辑代码 打开IDLE ,菜单栏file->new file,输入代码,ctrl+S保存文件,F5运行。以下是代码。 # 创建和操作数值数据 import numpy as np # 创建opencv图形处理 import

qq_44233281的博客 339

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

OpenCV-Python 中文教程2——OpenCV 中的绘图函数

OpenCV-Python 中文教程2——OpenCV 中的绘图函数目标• 学习使用 OpenCV 绘制不同几何图形• 你将会学习到这些函数:cv2.line(), cv2.circle(), cv2.rectangle(),cv2.ellipse(), cv2.putText() 等。 代码上面所有的这些绘图函数需要设置下面这些参数:• img:你想要绘制图形的那幅图像。• color:形状的颜...

GeekZW的博客 1841

OpenCV 图形绘制与书写

图片画线、矩形、圆、多边形 并添加文字。

机械搬砖工の博客 198

Python OpenCV 绘图

使用 Python OpenCV 绘图相关 API 学习笔记,补充一些官网教程中没有的细节,画个篮球场作为实例训练。

秋山丶雪绪的博客 1557
上一篇: 图片数据增强-resize(不同插值)、各种模糊
下一篇: 基于yolov8、yolov5的烟雾检测系统(含UI界面、训练好的模型、Python代码、数据集)
Python图像识别-1
博客等级 码龄2年 1010粉丝 199原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值