本文将讲述如何在window10中利用tensorflow跑代码,并且编译成bin文件,最后在k210中运行
一、在window上安装tensorflow框架(python3.7)
1、安装Anaconda,打开Anaconda Navigator创建一个python3.7的环境(起一个名字叫python3)
###在我们只有其他版本列如python3.5,我们可以利用python3.5创建出一个python3.###
在Anaconda Promp中输入
conda create --name python3 python=3.7
activate python3
############################################################################
2、在pytho3.7的基础上面创建一个tensorflow的环境
在Anaconda Prompt中输入:
conda create -n tensorflow python=3.7
activate tensorflow
切换了就代表成功了我们要安装的是CPU版本,那么在命令下紧接着输入:
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple tensorflow
注意!!!上面这步经常Anaconda安装tensorflow出现Failed building wheel for grpcio问题的解决
我们要手动下载具体自己找
3、测试tensorflow是否安装成功
在tensorflow中输入
在Anaconda Prompt窗口中输入: python
进入python后依次输入:
import tensorflow as tf
sess = tf.Session()
a = tf.constant(10)
注意!!!sess = tf.Session会应为tensoflow版本不同出现表达问题
二、将我们的上面创建的tensorflow环境加入到jupyter编译环境之中
(在Anaconda prompt中输入)
1、列出当前的虚拟环境
conda env list
2、激活想要用的虚拟环境 假设环境名为abc
conda activate abc
3、安装ipykernel
pip install ipykernel
4、再执行'
python -m ipykernel install --name abc
pip install opencv_python
pip install opencv-contrib-python // opencv的扩展包,里边有一些图像处理的算法
四、在jupyter上面跑代码
1、找到形如lab3_mnist_training.ipynb文件的路径的终端,输入jupyter notebook进入编译界面
2、在Kemel中加入tensorflow 之前我第四步把环境命名为abc了
3、运行代码每个模块都要运行,错了就会有显示
注意!!!python版本代码差别较大,新手不要乱换环境
出现l了xx model not define是因为没有安装这个包,我们输入命名
pip install xx
4、在model中出现类似mnist.h5(tensorflow模型)和mnist.tflite(适合RT-AK的模型)的文件表示训练成功了
五、生成bin文件
1、使用RT-AK使得模型量化(可以比原来的模型更加高效)
# 示 例(量 化 模 型, 图 片 数 据 集) $ python aitools.py --project="D:\Project\K210_Demo\k210-test" --model="./Models/ mnist.tflite" --model_name=mnist --platform=k210 --dataset="xxx\Lab1-Mnist\ Datasets\quantize_data"
其中,--project 是你的目标工程路径,--model 是你的模型路径(这里使用的是 RT-AK 自带的模型 文件),--model_name 是转化的模型文件名,--platform 是指定插件支持的目标平台为 K210,--dataset是模型量化所需要用到的数据集。
量化的目的,实际上他这个rt-ak它是整合了,不仅是量化,而且是它生成了那个我们所需要的k model,比如说R工具,它能够把那个模型,它能够以巴比特形式把它裁剪,然后裁剪之后呀,裁剪,压缩之后呢,然后把它转化为我们所需要的k model,以及我们嵌入式工程需要的一些,应该是k model,他附带的一些文件,总共是三个文件,它会生成出来。
2、设置工具链路径
在此路径下打开终端D:\RT-AK-main\RT-AK-main\RT-AK\rt_ai_tools,将生成的三个文件替代
python aitools.py --project=D:\EAI\lab3-mnist --model=D:\EAI\lab3-mnist\Models\mnist.tflite --model_name=mnist --platform=k210 --dataset=D:\EAI\lab3-mnist\Datasets\quantize_data
2、烧录
设置工具链位置
只要找到最后bin文件的位置就可以,注意代码里面已经写了工具链的路径,要把他放在指定位置
set RTT_EXEC_PATH=D:\rt\xpack-riscv-none-embed-gcc-8.3.0-1.2-win32-x64\xpack-riscv-none-embed-gcc-8.3.0-1.2\bin
在D:\EAI\lab3-mnist路径打开终端输入
编译生成bin文件
scons
6、将bin导入k210中,点击flash,最后在env_released_1.2.0(里面有个exe程序)文件中编译
(未完待续!@!!!)