K210在Windows10的本地训练

该教程主要记录自己使用K210在Windows10下面的训练过程,请严格按照教程的步骤一步步来。所需要的文件我都已经放在了阿里云盘
阿里云盘链接:
Python3.8.10
cuda10

百度网盘链接:

链接:https://pan.baidu.com/s/1fbZhCQlHQs91d7J5yi1cHA 
提取码:qdeb

一、 安装python3.8和pip

推荐安装

python3.8.10

由于python3.9有一些不知名问题导致了环境可能会配置失败
点击下载安装python3.8.10,具体的安装教程各位可以自行百度安装,需要注意的是,需要把Python添加到环境变量中。与此同时,用于安装Python的软件管理工具pip也需要安添加到系统环境变量中,具体的添加教程也是可以在CSDN搜索到的,这里就不细讲。
在这里插入python3.8.10图片描述

安装之后的python,按win+r,输入cmd打开命令行,然后输入python + 回车,出现下图则表示python安装成功
在这里插入图片描述
在Python安装完成了之后,需要检查pip是否安装完成(在Python安装的时候是默认安装pip的)
检查方法:按win+r,输入cmd打开命令行,然后输入pip -v回车,出现下图则表示pip安装成功
在这里插入图片描述

二、CUDA和CUDNN环境配置

对于模型的训练,可以使用CPU或者是GPU进行训练,本教程是针对GPU训练的环境配置的。
不同版本的CUDA有所对应不同的显卡驱动版本要求,对于K210的环境,我们推荐的是CUDA10.1搭配
cudnn v7.6.5.32 for cuda 10.1,同样,我们把安装包也一起放置在了阿里云盘中。
在这里插入图片描述
CUDA的安装:在下载好了CUDA的压缩包之后,解压打开。会达到一个安装包文件

在这里插入图片描述
以管理员身份运行,具体的安装方法新手推荐默认,不需要修改任何地方。

cudnn v7.6.5.32 for cuda 10.1的安装:解压文件夹,将解压后的文件夹下的文件拷贝到cuda安装目录下,与之相对应的文件夹下。
在这里插入图片描述
这时CUDA的环境已经配置好了!!!

在安装完成了之后可以使用以下方法检查CUDA的环境是否配置好。
在命令行中输入python,然后再输入

import tensorflow as tf
tf.test.is_gpu_available()

回车在这里插入图片描述检查一下这些文件有没有找到,和最后一行是否打印出True!!!!!如果没有,则说明你的前面的cuda和cudnn环境没有安装好,请将所有关于英伟达的软件驱动进行卸载,是卸载!!!不是将文件删除。然后再重新进行cuda和cudnn的环境配置。

三、Tensorflow安装

对于Tensorflow的安装,这是也是有要求的,需要安装tensorflow-gpu 2.3.0版
win+r,输入cmd,打开命令行

在命令行中输入:

pip install tensorflow-gpu==2.3.0

如果下载的很慢,请输入:

pip install tensorflow-gpu==2.3.0 -i https://pypi.mirrors.ustc.edu.cn/simple

然后等待安装成功即可。

四、MiaxHub本地训练

本地训练所需要的环境我们已经基本配置完成了,接下来就是对数据集的制作和运行代码进行模型训练。
1、安装依赖
首先打开我们下载好的项目文件—K210_Project
可以看到有如下几个文件
在这里插入图片描述
打开maix_train
在这里插入图片描述
再在上方地址栏输入cmd,回车,进入命令行模式
在这里插入图片描述

在这里插入图片描述
输入

pip install -r requirements.txt

(下载速度很慢的时候可以使用以下指令来提高下载速度)

pip install -r requirements.txt -i https://mirrors.aliyun.com/pypi/simple/

回车,等待安装结束

2、数据集的制作
数据集的制作这里就不再详细描述,按照Sipeed官网的示例制作即可,个人建议在进行标注的时候选用Python来下载安装LabelImg来进行数据的标注。
但要注意,K210支持两种识别方式

 1、目标分类
 2、目标检测

两者所需要的数据集格式存在一定的差异,本文着重介绍目标检测。

3、开始训练

在前面我们打开的CMD命令行输入以下命令
对训练的环境进行初始化

python train.py init

运行训练代码

python train.py -t detector -z datasets/fruit_test.zip train

注意!!!这里面的datasets/fruit_test.zip train是你所使用的数据集,我在工程中添加了我自己使用的一份数据集,打开K210_Project\maix_train\datasets 可以看到如下文件
在这里插入图片描述
其中fruit_test里面包含的即为数据集,另外在该文件路径下面,还保存了其他的数据集,感兴趣的话可以自行修改指令进行训练
训练完之后在K210_Project\maix_train路径下就会得到一个out的文件夹,里面的文件就是训练之后得到的模型以及配置文件

4、模型的使用
打开上一步生成的out文件夹,会发现里面有一个压缩包—
maixhub_detector_result_2021_11_12__22_07.zip
对其解压,打开解压之后得到的文件夹,可以发现有如下内容。
在这里插入图片描述
这里介绍以下各个文件各自的作用:

boot.py 里面存放的是给K210使用的运行脚本文件,我们需要在MaixPy IDE里面运行该脚本,确保在IDE上面程序可以正常运行之后,还需要把该文件以脚本的形式下载到板子内部的Flash中,注意该脚本文件需要下载到0x000000地址下面,确保板子上电后首先执行的是该部分程序。此外,这部分代码并不能直接使用,需要对其进行一定的修改才可下载到K210板子上面运行。

labels.txt 里面存放的是模型文件中的分类,在修改boot.py中会根据这一部分进行修改。

m.kmodel 训练之后得到的模型文件,需要下载到板子内部Flash地址为0x300000地址中,供脚本文件调用。
README.txt 训练文件生成的提示文件,暂不需要对其进行修改。
report.jpg 训练结束之后模型内部的loss值,反应了模型内部的迭代程度以及量化程度,可以在一定程度上反应训练之后模型的准确程度,但其目前仅限于针对训练集而言,对新的目标还需要实际验证。
startup.jpg 官方定义的开机JPG界面。

了解文件夹中各个文件的作用之后,开始训练。
首先将m.kmodel利用kflash_gui.exe烧录到板子内部的Flash中,
在这里插入图片描述
点击下载,下载完成之后,打开MaixPy IDE,连接上开发板。
之后把boot.py里面的内容复制到MaixPy IDE开始界面,这里我们需要修改部分参数。
因为我们是直接把模型文件烧录到板子内部的Flash中,所以我们需要修改程序中模型的调用地址为model_addr=0x300000,使得程序可以在该地址下进行模型寻址。
除此之外,我们需要修改labels指向的类别分类,这里我们直接把label.py里面的内容直接替换掉原来的内容即可。
在这里插入图片描述
此外,还有一个需要进行修改的地方,
在这里插入图片描述
训练出来的模型只支持224*224的图片输入,但该部分训练生成的运行脚本默认是240*240,故需要修改该部分参数,方可运行。
程序修改完成之后,点击运行,发现成功识别
在这里插入图片描述
当在IDE成功运行识别程序之后,就可以把改代码以脚本的形式下载到K210中,实现开机自启。

本文章借鉴了以下文章,如有侵权,请联系删除!!!!!
Sipeed官方 K210教程

  • 13
    点赞
  • 82
    收藏
    觉得还不错? 一键收藏
  • 27
    评论
对于K210本地训练模型,你可以按照以下步骤进行操作: 1. 准备数据集:首先,你需要准备一个适合K210的数据集。这可以是图像、声音或其他类型的数据集,取决于你的具体需求。 2. 构建模型:接下来,你需要选择合适的模型架构来训练K210支持多种模型架构,如ResNet、MobileNet等。你可以选择一个适合你任务的模型,并进行相应的修改。 3. 数据预处理:在训练模型之前,你需要对数据进行预处理。这可能包括数据的归一化、裁剪、缩放等操作,以确保数据的质量和一致性。 4. 训练模型:使用准备好的数据集和预处理后的数据,你可以开始训练模型。你可以使用K210提供的开发工具链和库来训练模型。在训练过程中,你可以调整超参数、监控模型性能并进行模型调优。 5. 优化模型:一旦模型训练完成,你可以对模型进行优化,以提高其性能和效率。这可以包括剪枝、量化、深度压缩等技术。 6. 部署模型:最后,你可以将训练好的模型部署到K210上进行推理。这可以是通过编写适合K210的代码,或使用K210提供的开发工具链和库进行部署。 需要注意的是,K210训练资源相对有限,因此在训练过程中可能需要进行一些优化和调整,以适应其硬件限制。此外,K210的本地训练模型与其他平台可能存在一些差异,你可能需要参考K210的文档和示例代码来进行操作。
评论 27
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值