python-opencv-圆、椭圆与任意多边形的绘制

圆形的绘制 :

OpenCV中使用circle(img,center,radius,color,thickness=None,lineType=None,shift=None)函数来绘制圆形

复制代码
import cv2
import numpy as np
image=np.zeros((400,400,3),np.uint8)

cv2.circle(image,(200,200),50,(0,0,255),2)  #画圆
'''
参数2 center:必选参数。圆心坐标
参数3 radius:必选参数。圆形半径
参数4 color:必选参数。用于设置待绘制圆形的颜色
参数5 thickness:可选参数。当该参数为正数时,表示待绘制圆形轮廓的粗细;当该参数为负值时,表示待绘制圆形为实心圆,即填充的圆形
参数6 lineType:可选参数。用于设置线段的类型,可选8(8邻接连接线-默认)、4(4邻接连接线)和cv2.LINE_AA 为抗锯齿
'''
cv2.imshow('image',image)
cv2.waitKey()
复制代码

 

椭圆的绘制:

OpenCV中使用ellipse(img,center,axes,angle,startAngle,endAngle,color,thickness=None,lineType=None,shift=None)函数绘制椭圆

复制代码
import cv2
import numpy as np
image=np.zeros((400,400,3),np.uint8)

cv2.ellipse(image,(200,200),(100,150),0,30,360,(0,255,0),-1)  #画椭圆
'''
参数2 center:必选参数。用于设置待绘制椭圆的中心坐标,确定椭圆的位置
参数3 axes:必选参数。用于设置待绘制椭圆的轴长度,为椭圆轴大小的一半。由于椭圆有两个轴,因此axes为一个包含两个值的元组
参数4 angle:必选参数。用于设置待绘制椭圆的偏转角度(以度为单位)--顺时针为正
参数5 startAngle:必选参数。用于设置待绘制椭圆的弧的起始角度(以度为单位)-x轴方向为0度
参数6 endAngle:必选参数。用于设置待绘制椭圆的弧的终止角度(以度为单位)。
参数7 color:必选参数。用于设置待绘制椭圆的颜色。
参数8 thickness:可选参数。当该参数为正数时,表示待绘制椭圆轮廓的粗细;当该参数为负值时,表示待绘制椭圆是实心的。
参数9 lineType:可选参数。用于设置线段的类型,可选8(8邻接连接线-默认)、4(4邻接连接线)和cv2.LINE_AA 为抗锯齿
'''
cv2.imshow('image',image)
cv2.waitKey()
复制代码

 

任意多边形的绘制: 

OpenCV为我们提供了polylines(img,pts,isClosed,color,thickness=None,lineType=None,shift=None)函数来更方便地绘制任意多边 

复制代码
import cv2
import numpy as np
image=np.zeros((400,400,3),np.uint8)

points=np.array([[150,50],[140,140],[200,170],[250,250]],np.int32)  #多边形的顶点坐标
cv2.polylines(image,[points],True,(255,0,0))  #画任意多边形
'''
参数2 pts:必选参数。表示待绘制多边形的折线数组--多边形的顶点坐标(按顺序)
参数3 isClosed:必选参数。用于设置绘制的折线是否关闭,若设置为True,则从折线的最后一个顶点到其第一个顶点会自动绘制一条线进行闭合。
参数4 color:必选参数。用于设置多边形的颜色
参数5 lineType:可选参数。用于设置线段的类型,可选8(8邻接连接线-默认)、4(4邻接连接线)和cv2.LINE_AA 为抗锯齿
'''
cv2.imshow('image',image)
cv2.waitKey()
复制代码

 

 

posted @   天子骄龙  阅读(1457)  评论(0编辑  收藏  举报
编辑推荐:
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
历史上的今天:
2019-02-06 pyqt5-信号与槽
2019-02-06 pyqt5的使用目录
2019-02-06 QLabel-标签控件的应用
2019-02-06 我的第一个例子
点击右上角即可分享
微信分享提示

目录导航