欢迎光临散文网 会员登陆 & 注册

介绍一下yolov7的工业应用步骤

2023-04-06 18:36 作者:深度之眼官方账号  | 我要投稿

来源:投稿 作者:某一个名字
编辑:学姐

导语

目标检测作为视觉项目中的重要一环被工业界广泛应用,考虑到检测速度与精度,使用最多的非yolo系列莫属。

随着yolov5的提出,由于其对于工业数据很强的适应性,使得该算法模型一直处于霸屏的位置。

而yolov7的面世,对yolov5发起了直接的挑战,经过一些数据集的检验在速度与准确度方面有过之而无不及。

现在就开始介绍下yolov7工业应用的相关步骤,希望在大家的实际项目中能够有所帮助。

1、yolov7算法解读

yolov7总体来说在重参化模块、动态标签替换这两方面进行了一些优化。对于结构重参化来说,yolov7通过分析梯度的传播路径来为网络中的不同层进行结构重参化优化,并且提出了不同规划的模型结构重参化。

在动态标签分配方面,因为模型有多个输出层,所以在训练时就难以为不同的分支分配更好地动态目标。因此作者提出了一个新的动态标签分配办法:coarse-to-fine,即由粗到细引导标签分配的策略。

除了以上两点,作者还提出了扩展和复合缩放的方式,通过这种方式可以更高效利用参数量和计算量。这样不仅可以减少大量参数,还可以提高推理速度以及检测精度。

yolov7检测效果对比图

2、代码库地址以及版本

2.1 代码库地址:

https://github.com/WongKinYiu/yolov7

2.2 版本选择

3、环境安装

环境安装教程以及注意事项可参考本人分享的文章《基于deeplabv3+的工业应用流程分析》之后会更新。我使用的版本为:

4、模型训练

4.1训练数据处理

1)首先使用labelimg工具进行标注,得到的是xml标签文件,此时需要将xml转换成训练所需的txt格式,转换代码是:

2)转换完成后数据文件夹设置,如下所示分别存好图片数据以及标签txt数据集即可:

4.2模型训练

1)数据集路径以及类别的设置:

2)该代码库对于模型训练参数的更改设置均在train.py文件中,通常无需更改直接运行即可。

5、模型导出

本篇就以openvino为例来说明下目标检测模型的部署流程,运行export.py文件,只需将导出权重文件weights参数换成训练得到的best.pt即可,最终得到一个best.onnx文件。

6、模型部署

6.1 基于Windows的openvino安装以及vs2019配置在文章《浅谈mobilenet网络在工业数据分类中的应用》(之后会更新)已有描述,按照步骤操作即可完成。

6.2 基于openvino的部署代码如下

至此部署代码就结束了,大家可以移用到yolo系列其他模型的部署当中。

结语

此篇分享完毕,工业应用中的分类、语义分割、目标检测就都已一一介绍,其中涉及到算法模型的训练以及部署工具的使用,希望能够在各自的学习或者工作实践中起到普及的作用,后续会继续细致化分享系统算法、GPU部署相关的知识,但愿大家能够喜欢,谢谢!

YOLO相关论文PDF+代码数据集+课件

关注【学姐带你玩AI】公众号,回复“YOLO”获取

介绍一下yolov7的工业应用步骤的评论 (共 条)

分享到微博请遵守国家法律