模型适配工具 yolov5 模型迁移说明
收藏回复举报
模型适配工具 yolov5 模型迁移说明
发表于2023-12-11 15:53:24
0 查看

模型适配工具,检测样例使用的yolov5代码仓链接如下:

https://gitee.com/HUAWEI-ASCEND/ascend-devkit-model-adapter/tree/master/src/models_adaption/detection/yolov5_deepsort/yolov5_v7/train

生成的模型和yolov5原官方生成的模型没有区别

小藤的notebook sample样例中的yolov5,是基于上述生成的模型,将图片处理中的 /255.0 改成算子,加入到onnx图中(这一步官方并未给出教学文档和说明)

因此如果想直接使用sample样例,改换成模型适配工具生成的模型,只需要修改前处理部分,在倒数第二行补回/255.0:

```

def preprocess_image(image, cfg, bgr2rgb=True): 

    """图片预处理""" 

    img, scale_ratio, pad_size = letterbox(image, new_shape=cfg['input_shape']) 

    if bgr2rgb: 

        img = img[:, :, ::-1] 

    img = img.transpose(2, 0, 1)  # HWC2CHW 

    img = np.ascontiguousarray(img, dtype=np.float32)/255.0 # 这里增加了/255.0,为了提高速度,sample样例这里的/255放到模型里面进去了

    return img, scale_ratio, pad_size

```

如果是使用其他yolov5模型(例如yolov5s),需要将对应的前处理,根据当前格式,修改覆盖掉sample样例的前处理,后处理相同操作。

模型适配工具生成的模型,其他的没有特殊操作,仅有yolov5进行了修改。该问题已向官方反馈,后续应该会修改文档或者样例代码。

本帖最后由 匿名用户2023/12/11 15:57:29 编辑

我要发帖子