专栏算法工具链模型部署系列之3(基于J5工具链)--DETR

模型部署系列之3(基于J5工具链)--DETR

Kevin2024-06-06
107
0
一. DETR简要介绍
DETR是第一篇将Transformer应用到目标检测方向的算法。DETR是一个经典的Encoder-Decoder结构的算法,它的骨干网络是一个卷积网络,Encoder和Decoder则是两个基于Transformer的结构。DETR的输出层则是一个MLP。
它使用了一个基于二部图匹配(bipartite matching)的损失函数,这个二部图是基于ground truth和预测的bounding box进行匹配的。
二. 训练环境安装,验证
三. 模型转换
1.将.pth 模型转换成.onnx 文件
用 torch.onnx.export() 导出.onnx , 这边提供现有文件,可以直接用:export_onnx.py
如果没有训练,可以下载官方提供的,如下图:
Description

我这边也提供有现成的,可以直接用:detr-r50-e632da11.pth

四. 用J5工具链完成PTQ量化
1.浮点模型准备
Description

2.校准数据集准备

校准数据集准备:

由于yolov5也是coco数据集训练,我这边就直接用yolov5的校准数据。在yolov5的工程目录下,运行00_init.sh 文件,下载相应的数据集。一般如果是自己采集的数据,用来训练的模型,需要自己准备校准数据。

校准数据预处理 ,修改预处理代码文件:

Description

运行预处理脚本:

Description

3.模型PTQ量化

修改配置参数文件:

DescriptionDescription
运行编译脚本:
Description
Description

五. 性能分析

静态性能验证,使用hb_perf工具:

Description

生成的性能统计文件:

Description
算法工具链
征程5官方教程
评论0
0/1000