海口手机版网站建设,seo网站管理,做网站是比特币的,福建工程建设中心网站一、学习目标
了解如何使用line方法了解如何使用rectangle方法了解如何使用ellipse方法
如有错误欢迎指出~
二、了解OpenCV的绘图方法
2.1 了解直线绘图方法
我们在前两节中有了解使用OpenCV中的矩形绘制#xff0c;接下来我们了解一下更多的图形绘制方法。我们在OpenCV中…一、学习目标
了解如何使用line方法了解如何使用rectangle方法了解如何使用ellipse方法
如有错误欢迎指出~
二、了解OpenCV的绘图方法
2.1 了解直线绘图方法
我们在前两节中有了解使用OpenCV中的矩形绘制接下来我们了解一下更多的图形绘制方法。我们在OpenCV中若需要绘制直线需要使用line方法line方法的原型如下
cv2.line(img, pt1, pt2, color[, thickness[, lineType[, shift]]])其中img表示需要在哪一张图片上进行绘图pt1表示起始点位置pt2表示终点位置color表示需要绘制的颜色thickness表示需要绘制的线段宽度lineType表示线段的类型可以为8、 4以及CV_AA shift表示坐标点的小数点位
我们先创建一张图片
import cv2
import numpy as npimgnp.zeros((400,400,3), np.uint8)以上创建了一张400*400的3通道图片数据并且将图片颜色赋予为纯黑。我们可以显示一下
cv2.imshow(Image, img)
cv2.waitKey (0)
cv2.destroyAllWindows()随后我们使用line方法在当前图片上进行绘图。
cv2.line(img,(0,0),(400,400),(255,0,0),2)以上使用line方法传入img表示在img图片上进行绘图绘图的起始点位置为(0,0)终点位置是(400,400)然后绘制的颜色纯白色(255,255,255)线段粗细为2个单位。我们来看一下绘制的效果
我们可以更改rgb值对线段的颜色进行更改
cv2.line(img,(0,0),(400,400),(124,252,0),2)以上改为黄青色结果如下 再试试更改绘制的起始坐标与终点坐标
cv2.line(img,(200,200),(350,350),(124,252,0),2)2.2 了解矩形绘图方法
矩形绘图我们在前两节有过了了解使用的是rectangle方法。rectangle方法与line方法参数类似参数都是接收一个图片、起始绘制坐标、终点坐标、绘制颜色、绘制线段粗细。代码如下
cv2.rectangle(img,(384,0),(350,350),(0,255,0),3)以上方法在img图片上绘制矩形起始坐标是(384,0)、终点坐标是(350,350)绘制颜色是(0,255,0)线段粗细为3。结果如下
2.3 了解圆形绘图方法
在opencv中绘制圆形需要使用circle方法circle方法的参数和直线line方法、矩形rectangle方法所接收的参数有所区别。circle方法的原型如下
cv2.circle(img, center_coordinates, radius, color, thickness)circle方法接收img作为图片参数center_coordinates为圆的中心坐标radius是圆形的半径color表示绘制圆形的颜色thickness表示线段的粗细
代码如下
cv2.circle(img,(200,200),63, (0,0,255),1)以上代码img为需要绘制的图片(200,200)为绘制的中心坐标63为绘制的半径(0,0,255)为绘制的颜色1为线段的粗细。 那如何进行形状的填充呢只需要将线段的粗细1改为负一就可以将这个原型给填充颜色。
cv2.circle(img,(200,200),63, (0,0,255),-1)结果如下 其实我们的矩形把线段改为-1也可以进行填充
cv2.rectangle(img,(384,0),(350,350),(0,255,0),-1)我们不仅可以画圆形也可以画椭圆椭圆使用ellipse方法ellipse原型如下
cv2.ellipse(image, centerCoordinates, axesLength, angle, startAngle, endAngle, color [, thickness[, lineType[, shift]]])image为绘制的图像centerCoordinates为椭圆的中心坐标axesLength有两个变量包含椭圆长轴和短轴angle为椭圆的旋转角度startAngle为椭圆弧的起始角度endAngle为椭圆弧的终止角度color为绘制颜色thickness为绘制的线段粗细lineType为边界类型shift为中心坐标中的小数位
代码为
cv2.ellipse(img, (200, 200), (170, 130), 0, 0, 360, (255, 255, 255), 3)结果为 该系列首发于ebaina
三、总结
了解使用line方法绘制直线了解使用rectangle方法绘制矩形了解使用ellipse方法绘制原型