opencv学习笔记Day03:opencv画图

初始化

  • 创建三通道矩阵的黑色图像,
  • img=np.zeros((512,512,3),np.uint8),width*height,颜色通道

直线

  • cv2.line(img,(0,0),(511,511),(255,0,0),5)
  • 在黑色图像上绘图,指定直线起点和终点,还有线条颜色(BGR),字体粗细程度

矩形

  • cv2.rectangle(img,(384,0),(510,128),(0,255,0),3)
  • 在黑色图像上绘图,指定起点和终点,边框颜色,线条粗细。

圆形

  • cv2.circle(img,(447,447),63,(0,0,255),-1)
  • 指定圆形的圆形和半径,曲线颜色,最后参数为-1是填充的圆形,为其他数是挖空的圆。

椭圆形

  • cv2.ellipse(img,(256,256),(100,50),0,0,360,255,-1)
  • 一个参数是中心位置(x,y)。下一个参数是轴长度(长轴长度,短轴长度)。角是椭圆逆时针旋转的角度。开始角度和角度表示从主轴顺时针方向测量的椭圆弧的起点和终点。即给出值0和360给出完整的椭圆

多边形

  • cv2.polylines(img,[pts],True,(0,255,255))
  • 首先你需要顶点的坐标。将这些点组成一个形状数组ROWSx1x2其中ROWS是顶点数,它应该是类型int32

文本

  • font = cv2.FONT_HERSHEY_SIMPLEX
  • cv2.putText(img,‘OpenCV’,(10,255), font, 4,(255,255,255),2,cv2.LINE_AA)
  • 要在图像中放置文本,您需要指定以下内容。
  • 要写入的文本数据
  • 您想要放置它的位置坐标(即数据开始的左下角)。
  • 字体类型(检查cv2.putText()支持字体的文档)
  • 字体比例(指定字体大小)
  • 像颜色、厚度、线型等常规的东西。

测试

"""drawing functions in opencv"""

"""line"""
import numpy as np
import cv2

img=np.zeros((512,512,3),np.uint8)

cv2.line(img,(0,0),(511,511),(255,0,0),5)
cv2.line(img,(511,0),(0,511),(255,0,0),5)

cv2.rectangle(img,(384,0),(510,128),(0,255,0),3)
cv2.rectangle(img,(0,0),(128,128),(0,255,0),3)
cv2.rectangle(img,(0,384),(128,510),(0,255,0),3)
cv2.rectangle(img,(384,384),(510,510),(0,255,0),3)

cv2.circle(img,(447,63),63,(0,0,255),-1)
cv2.circle(img,(63,63),63,(0,0,255),-1)
cv2.circle(img,(63,447),63,(0,0,255),-1)
cv2.circle(img,(447,447),63,(0,0,255),-1)

cv2.ellipse(img,(256,256),(100,50),0,0,360,255,-1)

pts = np.array([[10,5],[20,30],[70,20],[50,10]], np.int32)
pts = pts.reshape((-1,1,2))
cv2.polylines(img,[pts],True,(0,255,255))

font = cv2.FONT_HERSHEY_SIMPLEX
cv2.putText(img,'OpenCV',(10,255), font, 4,(255,255,255),2,cv2.LINE_AA)

cv2.imshow('image', img)
cv2.waitKey(0)
cv2.destroyAllWindows()

运行截图:
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Siri_only

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值