Python opencv学习-3绘制图片、直线、矩形、圆、椭圆、多边形、文字
程序员文章站
2022-03-31 12:24:39
...
import numpy as np
import cv2
# 画图窗口大小设置为512*512 通常参数,可选1,3,4
img = np.zeros((512, 512, 4), np.uint8)
# 画直线,参数为绘图窗口,起点,终点,颜色,粗细,连通性(可选4联通或8联通)
img = cv2.line(img, (100, 0), (511, 511), (255, 0, 0), 5, 8)
# 画矩形,参数为窗口,左上角坐标,右下角坐标,颜色,粗度
img = cv2.rectangle(img, (384, 0), (510, 128), (0, 255, 0), 3)
# 画圆函数,参数为窗口,圆心,半径,颜色,粗度(如果粗度为-1标示实心),连通性
img = cv2.circle(img, (447, 63), 50, (0, 0, 255), 1, 8)
# 画椭圆函数,参数为窗口,椭圆中心,椭圆长轴短轴,椭圆逆时针旋转角度,椭圆起绘制起始角度,椭圆绘制结束角度,颜色,粗度,连通性
img = cv2.ellipse(img, (256, 256), (100, 50), 100, 36, 360, (0, 255, 255), 1, 8)
# 画多边形
pts = np.array([[10, 5], [20, 30], [70, 20], [50, 10]], np.int32)
# 转换成三维数组,表示每一维里有一个点坐标
pts = pts.reshape((-1, 1, 2))
# 画多边形函数,参数为窗口,坐标,是否封闭,颜色
img = cv2.polylines(img, [pts], True, (0, 255, 255))
# 写字
font = cv2.FONT_HERSHEY_SIMPLEX
cv2.putText(img,'OpenCV',(10,500), font, 4,(255,255,255),2,cv2.LINE_AA)
'''参数如下
1. 窗口
2. 要写到窗口上的字符
3. 字体位置,左下角
4. 字体类型,查询cv2.putText()函数的文档来查看字体
5. 字体大小
6. 常规参数,类似颜色,粗细,线条类型等等'''
cv2.imshow('img', img)
cv2.waitKey(0)
cv2.destroyAllWindows()
推荐阅读
-
Android编程之canvas绘制各种图形(点,直线,弧,圆,椭圆,文字,矩形,多边形,曲线,圆角矩形)
-
opencv学习-013-几何形状绘制(绘制直线line,绘制矩形rectangle,绘制圆circle,绘制椭圆ellipse)
-
【C++】OpenCV之绘制线段、矩形、椭圆、圆、随机线段、多边形、文字
-
opencv学习记录08:绘制形状和文字(直线/椭圆/圆/矩形/多边形/显示字母(putText显示中文乱码解决办法))
-
OpenCVSharp 笔记3 绘制直线、圆、椭圆、矩形、多边形、文本
-
【深度学习】OpenCV——基本图形绘制:矩形、文字、圆、直线、椭圆、多边形
-
Python opencv学习-3绘制图片、直线、矩形、圆、椭圆、多边形、文字