openvino - 将 yolov5s.pt 转换为 openvino IR 格式成功,预测内容失败
问题描述
这是从好奇开始的......我从公共谷歌驱动器下载了预训练的yolov5s.pt,并使用yolov5的models/export.py将其转换为输入形状为[1,3,640,640]的yolov5s.onnx文件。然后我使用openvino的部署工具/mo.py将yolov5s.onnx转换成openvino推理引擎文件(.xml+.bin)。转换成功,没有错误。最后,我尝试使用openvino的演示程序使用这些文件运行预测,预测成功返回结果。但是所有的结果都返回负数,并且数组级别是错误的。是否无法将 yolov5 权重转换为 openvino?
解决方案
YOLOv5 目前不是 OpenVINO 工具包官方支持的拓扑。请在此处查看经过验证的 ONNX 和 PyTorch 拓扑列表https://docs.openvinotoolkit.org/latest/openvino_docs_MO_DG_prepare_model_convert_model_Convert_Model_From_ONNX.html
但是,我们有一项建议供您尝试,但不能保证它会成功。您可以通过更改 export.py 以包含检测层来做到这一点: yolov5/models/export.py
a1c8406 中的第 28 行
model.model[-1].export = True # set Detect() layer export=True
以上需要从True更改为False。有关更多详细信息,您可以在此处关注此线程。
推荐阅读
- android - 如何在打开活动之前获取 api 结果(等待屏幕)
- pytorch - 无法使用两个 csv 输入文件为循环 gans 创建 Dataloader
- laravel - 如何与许多用户一起托管 Angular 前端和 Laravel 后端信使机器人
- rust - 有没有办法让一个特征为它扩展的另一个特征中的关联类型指定自己?
- apache - 带有 Docker 的 Apache Web 服务器和微服务
- c - 无法取消映射共享内存
- solr - Solr SnowballPorterFilterFactory 和葡萄牙语StemFilterFactory 之间的区别
- php - 引用不为空的自引用表
- excel - 如何避免组合框列表中的最后一个空字段
- metadata - 开源中有哪些可用的数据目录选项