• 基于OpenVINO工具套件简单实现YOLOv7预训练模型的部署


    一、YOLOv7简介

    官方版的YOLOv7相同体量下比YOLOv5精度更高,速度快120%(FPS),比 YOLOX 快180%(FPS),比 Dual-Swin-T 快1200%(FPS),比 ConvNext 快550%(FPS),比 SWIN-L快500%(FPS)。在5FPS到160FPS的范围内,无论是速度或是精度,YOLOv7都超过了目前已知的检测器,并且在GPU V100上进行测试, 精度为56.8% AP的模型可达到30 FPS(batch=1)以上的检测速率,与此同时,这是目前唯一一款在如此高精度下仍能超过30FPS的检测器。

    论文链接:https://arxiv.org/abs/2207.02696

    代码链接:https://github.com/WongKinYiu/yolov7

    在这里插入图片描述

    二、预训练模型准备

    模型权重下载

    可以从官方github仓库提供的链接中下载基于COCO数据集的YOLOv7预训练模型权重。
    在这里插入图片描述

    模型转换
    可以从官方github仓库提供的链接中下载基于COCO数据集的YOLOv7预训练模型权重。

    下载YOLOv7官方仓库:
    $ git clone git@github.com:WongKinYiu/yolov7.git
    $ cd yolov7/models
    $ python export.py --weights yolov7.pt

    三、模型部署

    在这里插入图片描述
    通过Netron工具打开yolov7.onnx文件后可以看到,官方提供的预训练模型的output部分包含三个特征层的预测结果,因此需要根据每一层的先验框(anchor)对输出数据进行调整后,再进行堆叠。

    由于YOLOv7的模型前后处理基本和YOLOv5一致,大部分数据处理模块可以直接复用。话不多说直接上代码:

    在这里插入图片描述

    六、运行结果

    运行python示例后,会在本地data目录下生成代bounding box以及label的图片,这里我们用到官方仓库中附带的马匹数据进行测试,具体结果如下:

    运行代码
    $ python YOLOV7.py -i horse.jpg -m yolov7.onnx

    在这里插入图片描述

    Github地址:

    https://github.com/OpenVINO-dev-contest/YOLOv7_OpenVINO

  • 相关阅读:
    linux升级glibc-2.28
    卷积神经网络梯度消失,神经网络中梯度的概念
    Python潮流周刊#10:Twitter 的强敌 Threads 是用 Python 开发的
    太空射击第17课: Game Over (結束)
    电脑可以通过蓝牙发送文件吗?电脑蓝牙怎么发送文件
    8 常规聚类
    淘宝平台API接口,爬虫数据(数据参数汇总)
    22 OpenCV 直方图计算
    软件设计师2010上午题基础知识(易错整理)
    在 Node.js 中操作 Redis
  • 原文地址:https://blog.csdn.net/OpenVINOCC/article/details/127430141