在YOLOv5实时检测画面上打印信息

这篇具有很好参考价值的文章主要介绍了在YOLOv5实时检测画面上打印信息。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

       为了使结果呈现更加直观,可以在摄像头实时检测的画面上打印计数结果、帧率等信息,本文以单摄像头实时检测为例,介绍实现方法。

实现方法

       在detect.py文件中进行操作,找到下面这个位置(你的行数和我可能不一样,直接Ctrl+F查找cv2.imshow就行)

在YOLOv5实时检测画面上打印信息

        cv2.imshow()函数是用来打印画面的,因此在它之前添加如下代码即可。

#############################在窗口中显示标签#############################
text = 'count = %d, FPS=30, Albert_yeager'%(count)
cv2.putText(im0, text, (40, 100), cv2.FONT_HERSHEY_SIMPLEX, 1, (0, 0, 255), 4)
# 要绘制的图像(im0)
# 要绘制的文本字符串(text)
# 文本的位置(x, y),窗口左上角为(0,0)
# 要使用的字体类型(font),这里用OpenCV的内嵌字体
# 字体大小(font_scale),在此处为1
# 字体颜色(font_color),在此处为红色(0, 0, 255)
# 字体线宽(thickness),在此处为4
#########################################################################

在YOLOv5实时检测画面上打印信息

       其实加的代码就两行,第一行是定义打印的内容,格式就用标准输出格式即可,这里的count是对目标的计数,详细的实现方法可以看我之前的博客:

 YOLOv5实现目标计数_Albert_yeager的博客-CSDN博客

       计数功能涉及的主要代码(在之前博客里都有)如下:

# Write results+计数
    count = 0
    for *xyxy, conf, cls in reversed(det):
        if save_txt:  # Write to file
        xywh = (xyxy2xywh(torch.tensor(xyxy).view(1, 4)) / gn).view(-1).tolist()  
        line = (cls, *xywh, conf) if opt.save_conf else (cls, *xywh) 
        with open(txt_path + '.txt', 'a') as f:
            f.write(('%g ' * len(line)).rstrip() % line + '\n')

        if save_img or view_img:  # Add bbox to image
            c = int(cls)# integer class分类数
            label = f'{names[int(cls)]} {conf:.2f}'
            plot_one_box(xyxy, im0, label=label, color=colors[int(cls)], line_thickness=3)
            count += 1

       FPS后面即为帧率,这里我是直接给代码的设定值,但实际上在实时检测过程中帧率是会变化的,所以需要考虑一边计算帧率一边打印,这里留个坑,之后来补。 ( ̄ε(# ̄)☆╰╮o( ̄皿 ̄///)

       添加代码的第二行就是用OpenCV自带的文本输出功能,注意几个参数依次如下:

  1. 要绘制的图像,和cv2.imshow()的第一个参数保持一致,表示在捕获、识别、框选处理后的图像上进行绘制操作
  2. 要绘制的文本字符串(即text)
  3. 文本在画面的位置(x, y),注意窗口左上角为坐标原点,向右为x正方向、向下为y正方向(OpenCV的规定)
  4. 要使用的字体类型(font),这里用OpenCV的内嵌字体cv2.FONT_HERSHEY_SIMPLEX
  5. 字体大小(font_scale),在此处为1(你也可以换其他数字试一下,美观就好)
  6. 字体颜色(font_color),在此处为红色(0, 0, 255)
  7. 字体线宽(thickness),在此处为4

效果

       如图所示,能够实现计数、帧率和标签的打印。希望能够帮助到大家。

在YOLOv5实时检测画面上打印信息
在图书馆里试验了一下,效果还行

求学路上,你我共勉(๑•̀ㅂ•́)و✧文章来源地址https://www.toymoban.com/news/detail-470932.html

到了这里,关于在YOLOv5实时检测画面上打印信息的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 使用YOLOv5实现实时目标检测结果保存

           本文将分享保存实时目标检测结果的方法,包括将目标信息逐帧保存到.txt文件中、逐帧输出检测结果图片、以及如何保存所有检测图片(包括视野中无目标的帧)。 目录 0.准备 1.目标信息保存 2.检测图片保存 3.保存所有帧        本文以单摄像头实时目标检测进行演

    2024年02月03日
    浏览(47)
  • 使用YOLOv5实现单摄像头实时目标检测

    我将在上一节的基础上,一步一步展示如何实现单摄像头实时目标检测,其中包括我在配置过程中遇到的报错和解决方法。 将\\\'--source\\\'的默认值改为0 这里的\\\'0\\\'是指系统默认的第一个摄像头,通常是电脑自带的摄像头,所以一定要记得把摄像头打开再运行代码(有些电脑会有摄

    2024年02月03日
    浏览(64)
  • 使用YOLOv5实现多摄像头实时目标检测

    这篇博客将在单摄像头目标检测的基础上,实现单网络多线程的实时目标检测。 在detect.py同级目录下新建streams.txt文件,每个视频流源单独成行: 本地摄像头填0 USB摄像头填1,2,3… IP摄像头要根据摄像头类型,按下面格式填写(我将在之后的博客中讲解实现) 0是电脑自带摄像

    2024年02月05日
    浏览(55)
  • 视频实时行为检测——基于yolov5+deepsort+slowfast算法

    前段时间打算做一个目标行为检测的项目,翻阅了大量资料,也借鉴了不少项目,于是打算通过 yolov5 实现目标检测, deepsort 实现目标跟踪以及 slowfast 实现动作识别,最终实现端到端的目标行为检测模型。 总的来说,我们需要能够实现实时检测视频中的人物,并且能够识别

    2024年02月03日
    浏览(46)
  • YOLOv5姿态估计:HRnet实时检测人体关键点

    前言: Hello大家好,我是Dream。 今天来学习一下 利用YOLOv5进行姿态估计,HRnet与SimDR检测图片、视频以及摄像头中的人体关键点 ,欢迎大家一起前来探讨学习~ 首先需要我们利用Pycharm直接克隆github中的姿态估计原工程文件,如果不知道怎样在本地克隆Pycharm,可以接着往下看,

    2024年01月17日
    浏览(65)
  • YOLOv8/YOLOv7/YOLOv5-火灾检测、烟雾检测系统-界面+视频实时检测+数据集(算法-毕业设计)

    本项目通过yolov8/yolov7/yolov5训练自己的数据集,并开发可视化界面,实现了一个火灾烟雾实时检测系统,操作视频和效果展示如下: 【yolov8/yolov7/yolov5火灾烟雾检测系统-界面+视频实时检测+数据集(原创算法-毕业设计)】 https://www.bilibili.com/video/BV1FG41127H3/?share_source=copy_webvd_sou

    2024年02月04日
    浏览(57)
  • Yolov5口罩佩戴实时检测项目(模型剪枝+opencv+python推理)

    如果只是想体验项目,请直接跳转到本文第2节,或者跳转到我的facemask_detect。 剪枝的代码可以查看我的github:yolov5-6.2-pruning 第1章是讲述如何得到第2章用到的onnx格式的模型文件(我的项目里直接提供了这个文件)。 第2章开始讲述如何使用cv2.dnn加载onnx文件并推理yolov5n模型

    2023年04月08日
    浏览(42)
  • Jetson AGX Xavier实现TensorRT加速YOLOv5进行实时检测

    link 上一篇:Jetson AGX Xavier安装torch、torchvision且成功运行yolov5算法 下一篇:Jetson AGX Xavier测试YOLOv4         由于YOLOv5在Xavier上对实时画面的检测速度较慢,需要采用TensorRT对其进行推理加速。接下来记录一下我的实现过程。  如果还没有搭建YOLOv5的python环境,按照下文步骤

    2024年02月10日
    浏览(41)
  • c++读取yolov5模型进行目标检测(读取摄像头实时监测)

    文章介绍 本文是篇基于yolov5模型的一个工程,主要是利用c++将yolov5模型进行调用并测试,从而实现目标检测任务 任务过程中主要重点有两个,第一 版本问题,第二配置问题 一,所需软件及版本       训练部分 pytorch==1.13.0  opencv==3.4.1   其他的直接pip即可       c++部署 

    2024年02月07日
    浏览(42)
  • 【学习笔记】Yolov5调用手机摄像头实时检测(环境配置+实现步骤)

    我们需要首先从GitHub获取到yolov5的源码,直达链接如下: https://github.com/ultralytics/yolov5 打开后按照如下步骤下载源码压缩包即可 权重文件下载地址:https://download.csdn.net/download/liujiahao123987/87400892 注:我用的iOS,安卓版本没有\\\"Lite\\\" 需要的就是这个局域网,每个人的都不一样 需

    2023年04月25日
    浏览(50)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包