OpenCV-Python实战(3)——OpenCV中绘制图形与文本

0. 前言

OpenCV 作为计算机视觉库,其中一项基本功能就是绘制图形;OpenCV 提供了绘制直线、圆、矩形、椭圆等的函数。在构建计算机视觉项目时,通常希望通过绘制一些图形来显式的标注图像。例如,在人脸检测算法中,会通过绘制一个矩形,突出显示计算图像中检测到的人脸。此外,如果开发人脸识别算法,除了绘制一个矩形突出显示检测到的人脸外,通常还会绘制文本标识检测到的人脸的身份。最后,项目可能还会需要输出一些调试信息,例如,可以显示检测到的人脸数量或处理时间(用于查看算法的性能)。本文,将介绍如何使用 OpenCV 库绘制图形和文本。

1. OpenCV 绘图基础

OpenCV 提供了许多绘制基本图形的函数,包括直线、矩形和圆形等;除此之外,使用 OpenCV,也可以绘制其它更多的基本图形。图像上绘制基本形状有许多实用的场景,常见的用例主要包括:

  1. 显示算法的一些中间结果
  2. 显示算法的最终结果
  3. 显示一些调试信息

在下图中,可以看到一张绘制有矩形检测框的图像,其中实用矩形来显式的标示检测到的人脸图片(人脸检测),文本信息用于显示算法输出的其它相关的有用信息。通过这种方式,可以查看算法检测到面孔的位置:

  • 222
    点赞
  • 200
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 211
    评论
OpenCV是一款非常强大的计算机视觉库,其包含了很多功能强大的图像处理和计算机视觉算法。而在这个系列的第三篇文章,我们将重点介绍如何在OpenCV绘制图形文本OpenCV绘制图形的函数包括cv2.line(直线),cv2.rectangle(矩形),cv2.circle(圆),cv2.ellipse(椭圆)和cv2.putText(文本)。这些函数的使用非常简单,只需要指定图像,开始点和结束点(或心点和半径),颜色和线宽即可。 例如,我们可以使用cv2.rectangle函数在图像上绘制一个矩形: ``` import cv2 import numpy as np img = np.zeros((512,512,3), np.uint8) # 创建一个黑色的图像 cv2.rectangle(img,(384,0),(510,128),(0,255,0),3) # 绘制矩形 cv2.imshow("image",img) cv2.waitKey(0) cv2.destroyAllWindows() ``` 在这个例子,我们首先创建了一个512x512的黑色图像,然后使用cv2.rectangle函数在图像上绘制了一个矩形,并将其显示出来。在这里,矩形的左上角坐标是(384,0),右下角坐标是(510,128),颜色是绿色(0,255,0),线宽为3。 除了绘制图形,我们也可以使用cv2.putText函数在图像上绘制文本。这个函数的使用也非常简单,只需要指定图像,文本内容,位置,字体,字体大小和颜色即可。 例如,我们可以使用cv2.putText函数在图像上写入一个“Hello World!”的文本: ``` import cv2 import numpy as np img = np.zeros((512,512,3), np.uint8) # 创建一个黑色的图像 font = cv2.FONT_HERSHEY_SIMPLEX # 设置字体 cv2.putText(img,'Hello World!',(10,500), font, 1,(255,255,255),2,cv2.LINE_AA) # 绘制文本 cv2.imshow("image",img) cv2.waitKey(0) cv2.destroyAllWindows() ``` 在这个例子,我们使用cv2.putText函数在左下角绘制了一个“Hello World!”的文本,并将其显示出来。在这里,我们首先选取了字体类型为cv2.FONT_HERSHEY_SIMPLEX,然后指定了文本的位置(10,500),字体大小为1,颜色为白色(255,255,255),线宽为2,并且使用了cv2.LINE_AA参数,以实现更好的文本渲染效果。 综上所述,OpenCV可以很方便地对图像进行绘制文本处理,这对于图像处理和计算机视觉应用来说是非常重要的一步。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

盼小辉丶

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

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

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

打赏作者

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

抵扣说明:

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

余额充值