opencv 画图函数简介

opencv 画图

Cv 画直线
cv.line(img, (20, 100), (80, 100), (222, 111, 90), 5)
	
	Img : 所要画直线的画板
	
	(20, 100):直线初始坐标
	
	(80, 100):直线的终止坐标
	
	(222, 111, 90):直线的颜色 ----RGB数值
	
	5:直线的宽度,此值不能为负数
Cv 画矩形
cv.rectangle(img, (20, 40), (140, 160), (10, 155, 40), 5)
	
	Img:所要画矩形的画板
	
	(20, 40):矩形的初始坐标
	
	(140, 160):矩形初始坐标的对角坐标
	
	(10, 155, 40):矩形边框线的颜色
	
	5:矩形边框线的宽度,当此值为负数时,会将矩形内填充边框线颜色
Cv 画圆形
cv.circle(img, (80, 100), 60, (310, 234, 215), 5)
	
	Img:所要画圆形的画板
	
	(80, 100):圆心的坐标
	
	60:圆形的半径
	
	(310, 234, 215):圆形的边框线颜色
	
	5:圆形的边框线宽度,当此值为负数时,会将圆形内填充边框线颜色
Cv 画椭圆
cv.ellipse(img, (256, 256), (100, 50), 0, 50, 180, (10, 155, 40), -1)
	
	img:所要画椭圆的画板
	
	(256, 256):椭圆的中心点
	
	(100, 50):椭圆的长轴长和短轴长
	
	0:椭圆整体的旋转角度
	
	50:椭圆切割的起始角度
	
	180:椭圆切割的终止角度
	
	(10, 155, 40):椭圆的颜色
	
	-1:椭圆的边框线宽度,当此值为正数时,颜色只为边框颜色,不填充内部
Cv 画多边形
cv.polylines(img, [pts], True, (0, 255, 255), 3)
	Img:画多边形的画布
	
	[pts]:pts自身是一个 numpy.ndarray 三维数组
				eg:[[[380 250]]
					[[420 320]]
					[[420 370]]
					[[470 310]]
					[[480  50]]]
					
	True:构成图形是否闭合状态,是False时,形成的图形将是一个折线
	
	(0, 255, 255):此图形的边框线颜色
	
	3:边框线的宽度,当为负数时,将会内部填充。
Cv 加入文本
cv.putText(img, 'txt--here', (10, 500), font, 1, (255, 255, 255), 2, cv.LINE_8)
	Img:添加文本的画布
	'txt--here':文本内容
	(10, 500):文本的起始内容
	Font:字体类型
	1:字体大小
	(255, 255, 255):字体颜色
	2:字体描边宽度
	cv.LINE_8:线条类型

综合代码案例

def numpy_ce():
    import numpy as np
    import cv2 as cv
    img = np.zeros((512, 512, 3), np.uint8)
    cv.line(img, (20, 100), (80, 100), (222, 111, 90), 5)
    cv.rectangle(img, (20, 40), (140, 160), (10, 155, 40), 5)
    cv.circle(img, (80, 100), 60, (310, 234, 215), 5)
    cv.ellipse(img, (256, 256), (100, 50), 100, 0, 360, (310, 234, 215), 1)
    cv.ellipse(img, (256, 256), (100, 50), 50, 0, 360, 210, -1)
    cv.ellipse(img, (256, 256), (100, 50), 0, 50, 180, (10, 155, 40), -1)
    pts = np.array([[380, 250], [420, 320], [420, 370], [470, 310], [480, 50]], np.int32)
    print(pts, '--------------------int32')
    pts = pts.reshape(-1, 1, 2)
    print(pts, '----------shape -1,1,2')
    cv.polylines(img, [pts], True, (0, 255, 255), 3)
    font = cv.FONT_HERSHEY_SIMPLEX
    cv.putText(img, 'txt--here', (10, 500), font, 1, (255, 255, 255), 2, cv.LINE_8)
    cv.imshow('img--line', img)
    cv.waitKey(0)
画图结果展示

在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值