ITPub博客

首页 > 嵌入式/内核开发 > 嵌入式/内核开发 > [嵌入式AI从0开始到入土]3_官方模型适配工具使用

[嵌入式AI从0开始到入土]3_官方模型适配工具使用

原创 嵌入式/内核开发 作者:工具人呵呵 时间:2023-11-03 10:31:10 0 删除 编辑

文章目录

[嵌入式AI从0开始到入土]嵌入式AI系列教程

前言

一、下载安装

1、下载Ascend AI Devkit Model Adapter

2、下载安装Anaconda

3、导入虚拟环境

4、git安装

二、启动

1、制作数据集

2、训练

3、查看输出文件

三、推理

1、解压

2、转换

3、运行

四、问题

1、ERROR: model not exists

2、打开提示没有安装git或者conda环境

总结

前言

注:目前仅支持win平台,且需要32G及以上的内存,否则无法训练。本文用于快速上手,模型种类被官方限制了

模型适配工具(Ascend AI Devkit Model Adapter )是一款集成数据集管理、模型训练、模型打包为一体的开发者工具套件,预置了4个典型模型,分别用于目标检测场景(YOLO V5模型)、图像分类场景(Mobilenet V3模型)、图像分割场景(Unet ++模型)、关键点检测场景(Alphapose模型)。使用PC的CPU算力训练模型并对模型进行打包,拷贝到开发者套件进行推理。

在这里插入图片描述

内存不满足要求的就散了吧。等后面几篇,用GPU去训练,反正我8G显存,8G内存炼个YOLO还是没问题的。


配置类型  推荐配置

系统类型  Windows 10、11

CPU 8  core CPU

内存RAM  32GB

磁盘  100G SSD存储

一、下载安装

1、下载Ascend AI Devkit Model Adapter

没什么可以说的,直接上下载链接。


2、下载安装Anaconda

我们使用Anaconda个人版就可以了,点击这里直接下载。如果有特定版本需求请自行百度下载。

安装的时候把Add Anaconda3 to my PATH environment variable这个选项选上,不然每次启动会比较麻烦,其他随意。


3、导入虚拟环境

点击这里下载。为了防止资源失效,我往CSDN搬运了一份,点这里跳转。

你可能需要一个解压软件(我的win11可以使用tar命令解压,360压缩也不错)。

接下来查询Anaconda安装位置。也就是base环境的位置。cmd输入命令


conda info -e


我的Anaconda在D盘。

在这里插入图片描述

把你下载的model-adapter-tool.tar.gz放入Anaconda安装目录下的envs文件夹。右键,在终端中打开,执行以下命令解压到当前文件夹


tar -xf .\model-adapter-tool.tar.gz



解压完成后,再次运行conda info -e命令,查看回显路径除安装目录外是否和我一致。一致的话,运行conda activate model-adapter-tool激活虚拟环境。

在这里插入图片描述

如果没有报错,就证明我们的环境安装没有问题。


4、git安装

直接运行就可以,似乎不需要配置git。

conda install git --channel https://mirrors.ustc.edu.cn/anaconda/pkgs/main/

二、启动

在这里插入图片描述

这个黑色的窗口不要关,最小化就可以

接下来以目标检测为例,都一样。


1、制作数据集

看了下文档中的要求,4个场景的要求都是图片分辨率不高于1080P,单张图片不小于1MB,推荐每个类别的图片数量在100张左右,并放置在全英文路径下。

首先我们添加待标注的图片。

在这里插入图片描述


这里用2021年电赛送药小车的数字识别为例。

在这里插入图片描述

这里可以使用“A”和“D”快捷键换图,第一次需要点击上方的”绘制矩形“,然后选择左上和右下两个点,就会跳出添加标签的页面。第一次输入标签后,之后同一标签直接确定就可以(似乎不能按enter)。

这就是标注完成的。

在这里插入图片描述


2、训练

全部标注完成后,点击左下角的一键迁移

在这里插入图片描述

大家参考我的路径,部分人可能卡在数据集路径报错(选择你刚才标注的图片所在的文件夹)

调整好参数后,点击一键迁移即可。这里有部分人会报错ERROR: model not exists.,看后面的问题。

进度会先卡在5%,然后你的cpu应该跑满了,占用率会有0,100这种起伏。等待就行。实测16G内存,直接撑不到6%就爆内存强制退出了,可能是我300张图(虽然是224*224的)有点多。这个在后面那个黑色的界面有打印报错信息。


3、查看输出文件

训练完成后会有如下提示

在这里插入图片描述

在这里插入图片描述


我们需要的是”infer_project.tar.gz“。将其上传至开发板就可以。建议建个空的,或者专用文件夹。


三、推理

这一小节因为我内存不足,没法训练出来,所以用的是文档里的图,可能会有点不一样,毕竟文档更新周期大家都知道


1、解压

到我们上传文件的目录运行以下指令


tar -zxvf infer_project.tar.gz#解压到当前目录
cd infer_project/ && dos2unix `find .` #将Windows格式文件转换为Unix、Linux格式



2、转换

进入解压出来的目录,转换模型。如果成功会有如下回显。


python3 onnx2om.py


在这里插入图片描述


3、运行

执行命令,进行推理


python3 om_infer.py --model=output/yolov5s_bs1.om --eval --visible

成功输出如下

在这里插入图片描述

推理结果在output文件夹


四、问题

1、ERROR: model not exists

在这里插入图片描述

在模型适配工具的安装目录下按照以下路径Ascend AI Devkit Model Adapter\src\models_adaption\classification\mobilenetv3\train_code查找是否有这个“weights”文件夹,没有的话新建一个就可以了。

在这里插入图片描述


2、打开提示没有安装git或者conda 环境

在这里插入图片描述


运行conda info -e看下是不是和我上面第一节第三步里的路径一样。大概率是conda的问题。git只要按照上面说的安装就行了。

总结

截至目前,我们已经能够进行简单的训练,推理。接下来就是调用GPU进行训练(cpu实在太慢了)或者更换成我们自己的模型,然后转换成昇腾310支持的模型进行推理。后面才是头疼的东西。


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/70050091/viewspace-3117689/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2019-01-01

  • 博文量
    35
  • 访问量
    5032