【MindStudio训练营第一季】使用MindStudio复现resnet50分类任务

一、前言

在训练营进阶班的课程中,老师使用了resnet50的样例,分析了其中的ACL代码,本文将复现这个resnet50分类项目,为后面ACL编程学习做铺垫。

项目的Gitee仓如下:

cplusplus/level2_simple_inference/1_classification/resnet50_imagenet_classification · Ascend/samples - 码云 - 开源中国 (gitee.com)

二、环境配置

1、模型转换

这里我依旧使用的是Atlas 200 DK开发者套件的环境,使用官方镜像也是同理。

我们首先需要下载ResNet-50的模型文件和权重文件:

[https://obs-9be7.obs.cn-east-2.myhuaweicloud.com/003_Atc_Models/AE/ATC%20Model/resnet50/resnet50.prototxt](https://obs-9be7.obs.cn-east-2.myhuaweicloud.com/003_Atc_Models/AE/ATC Model/resnet50/resnet50.prototxt)

[https://obs-9be7.obs.cn-east-2.myhuaweicloud.com/003_Atc_Models/AE/ATC%20Model/resnet50/resnet50.caffemodel](https://obs-9be7.obs.cn-east-2.myhuaweicloud.com/003_Atc_Models/AE/ATC Model/resnet50/resnet50.caffemodel)

我们在项目根目录新建一个model文件夹,将下载的模型文件和权重文件放入其中。

使用MindStudio的模型转换功能将模型转换成能部署在昇腾设备上的离线om格式:

点击上方Ascend栏,选择Model Converter,配置CANN的路径和模型文件路径,其会自动匹配权重文件路径,配置模型输出路径,点击”Next“–>”Finish“,即可开始转模型。

转模型成功!

2、下载测试图片

点击下方链接下载测试图片,放入data文件中:

https://obs-9be7.obs.cn-east-2.myhuaweicloud.com/models/aclsample/dog1_1024_683.jpg

https://obs-9be7.obs.cn-east-2.myhuaweicloud.com/models/aclsample/dog2_1024_683.jpg

我们需要将这两张图片转换成二进制bin格式,使用transferPic.py脚本:

cd /data
python3 ../script/transferPic.py

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-GkH0w1JZ-1671962071997)(null)]

三、编译运行

创建个文件夹用于存放编译文件:

mkdir -p build/intermediates/host

执行如下命令生成编译文件:

cd build/intermediates/host
cmake ../../../src -DCMAKE_CXX_COMPILER=g++ -DCMAKE_SKIP_RPATH=TRUE
make

生成的可执行文件将会在out文件夹中。

运行生成的可执行文件:

./main

我们可以看到两张测试图片Top5的置信度。

四、后话

在本次样例的代码中,我们可以看到使用了大量ACL语言,我们可以以这个项目为基础,学习ACL语言的功能与使用。学有余力的小伙伴还可以完成进阶班的大作业喔~

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值