Bootstrap

pytorch 49 GroundingDINO导出为onnx模型实现python与c++部署

本博文实现了在win环境下,将GroundingDINO模型导出为onnx模型,并基于cmakelist生成c++项目实现模型的部署。并分析了官方项目为什么不能直接导出onnx,主要基于https://github.com/wenyi5608/GroundingDINO项目公开的代码实现项目,只是补充了c++配置项,实现了模型转tensorrt格式。

在600x600的输入下,3060显卡,torch推理、python-onnx、c+±onxx推理速度均在0.1s左右。将模型转换为tensorrt后基于trtexec 工具测速,发现可以达到50ms一张图,后续将实现tensorrt c++的部署。

1、项目差异分析

1.1 IDEA-Research

项目地址:https://github.com/IDEA-Research/GroundingDINO

外层推理代码:
可以发现是直接将image和text输入到模型,基于这种方式是无法导出onnx模型

    caption = preprocess_caption
;