模型适配工具,检测样例使用的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进行了修改。该问题已向官方反馈,后续应该会修改文档或者样例代码。
模型适配工具,检测样例使用的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进行了修改。该问题已向官方反馈,后续应该会修改文档或者样例代码。