图像处理OpenCV:在图像上绘制图形

创建一个空白的图像
img = np.zeros((a, b, c), np.uint8)
前面数值是指定二维矩阵的大小,np.uint8是类型,代表无符号的整型数据。

绘制直线 cv.line(img,start,end,color,thickness)

  • img:要绘制直线的图形
  • start,end:直线的起点和终点
  • color:线条的颜色
  • Thickness:线条宽度

绘制圆形 cv.circle(img,centerpoint,r,color,thickness)

  • img:要绘制圆形的图像
  • centerpoint:圆心
  • r:半径
  • color:线条的颜色
  • thickness:线条宽度,为-1时生成闭合图案并填充颜色。

绘制矩形 cv.rectangle(img,leftupper,rightdown,color,thickness)

  • img:要绘制矩形的图像
  • leftupper:矩形的左上角坐标
  • rightdown:矩形的右下角坐标
  • color:线条的颜色
  • thickness:线条宽度

向图像中添加文字 cv.putText(img,text,station,font,fontsize,color,thickness,cv.lINE_AA)

  • img:图像
  • text:要写入的文本数据
  • station:文本的放置位置
  • font:字体
  • Fontsize:字体大小

代码如下:

import numpy as np
import cv2 as cv
import matplotlib.pyplot as plt

# 创建一个空白的图像
img = np.zeros((512, 512, 3), np.uint8)
# 前面数值是指定二维矩阵的大小,np.uint8是类型,代表无符号的整型数据。
# 绘制图形
'''
    绘制直线 cv.line(img,start,end,color,thickness)
    img:要绘制直线的图形
    start,end:直线的起点和终点
    color:线条的颜色
    Thickness:线条宽度
'''
cv.line(img, (0, 0), (511, 511), (255, 0, 0), 5)
'''
    绘制圆形 cv.circle(img,centerpoint,r,color,thickness)
    img:要绘制圆形的图像
    centerpoint:圆心
    r:半径
    color:线条的颜色
    thickness:线条宽度,为-1时生成闭合图案并填充颜色。
'''
cv.circle(img, (256,256), 60, (0, 0, 255), -1)
# -1可以填充圆形
'''
    绘制矩形 cv.rectangle(img,leftupper,rightdown,color,thickness)
    img:要绘制矩形的图像
    leftupper:矩形的左上角坐标
    rightdown:矩形的右下角坐标
    color:线条的颜色
    thickness:线条宽度
'''
cv.rectangle(img, (100, 100), (300, 300), (0, 255, 0), 5)
'''
    向图像中添加文字 cv.putText(img,text,station,font,fontsize,color,thickness,cv.lINE_AA)
    img:图像
    text:要写入的文本数据
    station:文本的放置位置
    font:字体
    Fontsize:字体大小
'''
cv.putText(img, "hello", (100, 500), cv.FONT_HERSHEY_COMPLEX, 5, (255, 255, 255), 3)
# 显示结果
plt.imshow(img[:, :, ::-1])
plt.show()

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


欢迎大家查看作者的主页,主页中还有关于编程与算法方面的更多内容,欢迎大家相互沟通学习~

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值