yolov5从英伟达平台移植到华为昇腾开发板上的思路

作者:朱金灿

来源:clever101的专栏
为什么大多数人学不会人工智能编程?>>>

最近需要将yolov5代码从英伟达平台移植到华为昇腾开发板上。搜了一些代码和资料,大致明白了二者的差别。

1.二者使用的模型文件不一样

yolov5官方用的模型文件为pt文件,华为昇腾开发板用的是om模型文件。具体怎么转换参考文末的参考资料1.

2.代码方面的差别

因为模型文件不一样,因此加载模型文件中生成的模型对象也是不一样的。yolov5官方代码如下:

python 复制代码
    # Load model
    device = select_device(device)
    # weights为输入的模型文件
    model = DetectMultiBackend(weights, device=device, dnn=dnn, data=data, fp16=half)

从上面可以知道模型对象是从调用DetectMultiBackend函数返回的。

华为昇腾开发板的开发示例代码如下:

python 复制代码
 # 1.Load model
    print("Loading model %s" % opt.weights)
    model_path = str(opt.weights)
    net = Net(device_id, model_path)

可以看到模型对象是调用Net函数生成的。因此后面要移植的话就得把二者对应起来。

参考资料:

1.Atlas200DK部署YOLOV5

2.YOLOv5 ascend

3.Atlas_ACL_E2E_Demo

4.yolov5的推理输出detect.py部分

5.华为Atlas 200I DK A2开发者套件--基础使用配置

相关推荐
交叉编译之王 hahaha1 小时前
RK3568-鸿蒙5.1镜像烧录与调试
华为·harmonyos
Raink老师1 小时前
鸿蒙页面布局入门
华为·harmonyos·鸿蒙·移动端布局
yidaqiqi2 小时前
[目标检测] YOLO系列算法讲解
算法·yolo·目标检测
lqj_本人3 小时前
鸿蒙OS&UniApp制作支持多图上传的图片选择器:打造高性能移动端上传体验#三方框架 #Uniapp
华为·uni-app·harmonyos
晚秋大魔王3 小时前
OpenHarmony 开源鸿蒙南向开发——linux下使用make交叉编译第三方库——wget
java·linux·运维·开发语言·华为·harmonyos
周胡杰14 小时前
组件导航 (HMRouter)+flutter项目搭建-混合开发+分栏效果
前端·flutter·华为·harmonyos·鸿蒙·鸿蒙系统
hao_wujing15 小时前
YOLOv8在单目向下多车辆目标检测中的应用
人工智能·yolo·目标检测
SuperHeroWu716 小时前
【HarmonyOS 5】鸿蒙星闪NearLink详解
华为·蓝牙·harmonyos·nearlink·鸿蒙星闪·绿牙
积跬步DEV18 小时前
RN 鸿蒙混合开发实践(踩坑)
react native·华为·harmonyos
Dneccc21 小时前
YOLO+UI(C#)开发
yolo