2.1绘制直线
cv.line(img,start,end,color,thickness)
参数:
- img: 要绘制直线的图像
- Start,end :直线的起点和终点
- color; 线条的颜色
- thickness : 线条的宽度
2.2绘制圆形
cv.circle(img ,centerpoint,r,color,thickness)
参数:
- img : 要绘制圆形的图像
- centerpoint ,r :圆心和半径
- color :线条的颜色
- thickness : 线条宽度,为-1时生成闭合图案并填充颜色
2.3绘制矩形
cv.rectangle(img,leftupper,rightdown,color,thickness)
- img :要绘制矩形的图像
- Leftupper,rightdown:矩形的左上角和右下角坐标
- color:线条的颜色
- Thickness:线条宽度
2.4向图像中添加文字
cv.puText(img,text,station,font,fontsize,color,thickness,cv.LINE_AA)
- img:图像
- text:要写入的文本数据
- station:文本的故置位置
- font:字体
- Fontsize :字体大小
效果展示
import cv2 as cv
import matplotlib.pyplot as plt
#1,创建一个空白的图像
img = np.zeros((512,512,3),np.uint8)
#2,绘制图形
cv.line(img,(0,0),(511,511),(255,0,0),5)
cv.rectangle(img,(384,0),(510,128),(0,255,0),3)
cv.circle(img,(477,63),63,(0,0,255),-1)
font = cv.FONT_HERSHEY_SIMPLEX
cv.putText(img,'OpenCV',(10,500),font,4,(255,255,255),2,cv.LINE_AA)
#3,图像展示
plt.imshow(img[:,:,::-1])
plt.title('匹配结果'),plt.xticks([]),plt.yticks([])
plt.show()
OpenCV是一个强大的图像处理库,可以实现各种图像处理和计算机视觉任务。其中包括绘制几何图形,如直线、矩形、圆等。在绘制几何图形时需要注意以下几点:
图像格式与通道数
在使用OpenCV绘制几何图形之前,需要先了解输入的图像格式和通道数。一般情况下,OpenCV支持常见的图像格式(如灰度图、BGR图、RGBA图等)和通道数(如单通道、三通道、四通道等)。不同的输入图像格式和通道数对应着不同的绘制方式,需要根据实际情况选择相应的绘制函数。
坐标系和绘制范围
使用OpenCV绘制几何图形时也需要了解坐标系和绘制范围。OpenCV默认使用左上角为原点的坐标系,横轴向右延伸,纵轴向下延伸。绘制函数的参数通常包括起始坐标点和终止坐标点,需要根据坐标系将坐标点转换到实际绘制范围内。
颜色和线宽
在绘制几何图形时还需定义颜色和线宽。OpenCV中支持各种颜色和线宽的设定,可以通过参数传递来设置绘制的颜色和线宽。颜色可以是RGB或BGR的数值表示,也可以是预定义的颜色常量(如红色、绿色、蓝色等)。线宽一般为正整数,表示线条的宽度。
抗锯齿和图像大小
在绘制几何图形时还需要考虑抗锯齿和图像大小。抗锯齿是指减少线条的锯齿状边缘,使画线更加平滑。OpenCV中提供了抗锯齿选项,可以通过参数传递来设定是否使用抗锯齿。另外,绘制几何图形时还需要根据实际需求确定图像的大小和比例,以确保图像绘制效果合理。
综上所述,OpenCV是一个强大的图像处理库,可以实现各种图像处理和计算机视觉任务。在绘制几何图形时需要注意图像格式与通道数、坐标系和绘制范围、颜色和线宽、抗锯齿和图像大小等问题。遵循这些注意事项,可以更好地使用OpenCV绘制几何图形,并实现各种图像处理任务。