import cv2
import numpy as np
# 创建图像
# 注意这里是(h,w,c),下面写参数的时候格式为(w,h)
img = np.zeros((1000,1000,3),np.uint8)
圆
# 参数:(图像,圆心坐标,半径,圆的颜色,线条粗细,线的样式(-1,4,8,16,默认是8))
cv2.circle(img,(40,40),40,(0,0,255),5,8)
椭圆
# 参数(图像,中心点,短半轴和长半轴,角度,从哪个角度开始(逆时针绘制),从哪个角度结束,线的颜色,线的样式(省略))
# 这里要注意中心点是宽高,图像是高宽,
cv2.ellipse(img,(200,100),(30,50),360,0,180,(0,0,255))
直线
# 参数:(图像,起点坐标,终点坐标,线的颜色,线的粗细,线的样式(-1,4,8,16,默认是8),坐标缩放比例)
cv2.line(img,(10,20),(200,200),(0,0,255),5,8,1)
矩形
# 参数:(图像,左上角坐标,右下角坐标,线的颜色,线的粗细,线的样式(-1,4,8,16,默认是8),坐标缩放比例)
cv2.rectangle(img,(10,20),(200,200),(0,0,255),5,8)
多边形的绘制
# 创建坐标
pos = np.array([(130,200),(200,300),(600,566)],np.int32)
# 绘制多边形及填充
参数(图像,顶点坐标,是否封闭,线的颜色,线的粗细)
cv2.polylines(img,[pos,True,(0,0,255),5)
cv2.fillPoly(img,[pos],(0,0,255))
填充
# 第二个参数为:图形的各个坐标,多边形有示例,如果是圆形,就要用轮廓坐标,以后会介绍找到轮廓坐标的方式
cv2.fillPoly(img,[x],(0,0,255))