前言
老师在进阶班课程中讲解了一个课程实例,讲的是基于Caffe ResNet-50网络实现图片分类,而且步骤比较基础和重要,在此记录下来。
架结构
这个可以直接在源文件中的readme中查看得到,对源文件的每一个文件夹都有着详细的讲解。
案例目标
该样例主要是基于Caffe ResNet-50网络(单输入、单Batch)实现图片分类的功能。
在该样例中:
- 先使用样例提供的脚本transferPic.py,将2张*.jpg图片都转换为*.bin格式,同时将图片从1024*683的分辨率缩放为224*224。
- 加载离线模型om文件,对2张图片进行同步推理,分别得到推理结果,再对推理结果进行处理,输出top5置信度的类别标识。
- 在加载离线模型前,提前将Caffe ResNet-50网络的模型文件转换为适配昇腾AI处理器的离线模型。
准备工作
查看SSH配置
确认无误后进行下一步
点击Tools-Start SSH session
控制远程远端的terminal
创建一个名为test1的文件夹并进入
mkdir test1
cd test1
下载模型文件、权重文件
wget https://obs-9be7.obs.cn-east-2.myhuaweicloud.com/003_Atc_Models/AE/ATC%20Model/resnet50/resnet50.prototxt --no-check-certificate
wget https://obs-9be7.obs.cn-east-2.myhuaweicloud.com/003_Atc_Models/AE/ATC%20Model/resnet50/resnet50.caffemodel --no-check-certificate
转换为离线om模型
按照图片进行操作
选择刚下载好的文件
修改路径名称后,正常
开始模型转换
转换成功,记住最终的文件路径
图片jpg转换为bin格式
在resnet50_imagenet_classification下新建model文件夹
在resnet50_imagenet_classification下新建model文件夹
下载两张图片放入data文件夹
https://obs-9be7.obs.cn-east2.myhuaweicloud.com/models/aclsample/dog1\_1024\_683.jpg
https://obs-9be7.obs.cn-east2.myhuaweicloud.com/models/aclsample/dog2\_1024\_683.jpg
进入data文件夹
cd .\cplusplus\level2_simple_inference\1_classification\resnet50_imagenet_classification\data
进入build配置,到远端执行
进行远程编译
File-Setting中找到远端工程地址
’
进入该目录
/root/tmp/18d49515-4b15-4c11-b057-d61fd5cfe553
输入代码将图片从jpg转换为bin格式
cd data/
python3 ../script/transferPic.py
远端服务器运行cmake
用命令行运行
./main
最终结果