Skip to content

RK1808S_AI计算棒—RK1808被动模式下mobilenet_v1模型测试

0、引言

被动模式开发流程简介

被动模式下:RK1808 人工智能计算棒是一个通用AI加速器。主机端通过RKNN-Toolkit将模型及前处理后的数据传输给RK1808 人工智能计算棒,RK1808 人工智能计算棒完成推理,并把结果返回主控端,主机端进行后处理以及显示等操作。 更多关于被动模式开发流程的介绍,可以参考官网wiki

这里以mobilenet_v1为例,在搭建好的windows环境下使用mobilenet_v1模型,示例实现的功能是对一张图片进行特征提取,并识别这张图片所属分类。

本文将实现基于上篇文章实现的 Anaconda3+TensorFlow(1.15)+Python3.6+RKNN(计算棒专用接口)+VSCode+OpenCV-Python环境下的mobilenet_v1模型测试

1、下载源代码

从官方FTP文件服务器下载mobilenet_v1压缩包,并解压出来:

wget http://repo.rock-chips.com/rk1808/mobilenet_v1.tar.gz
tar xvf mobilenet_v1.tar.gz //win使用右键解压

2、源代码目录说明

以下是mobilenet_v1示例的目录结构及说明如下:

  • dataset.txt: 包含测试图片路径的文本文件。

  • dog_224x224.jpg: 作为mobilenet_v1示例的测试图片。

  • mobilenet_v1.tflite: TensorFlow Lite模型文件。

  • mobilenet_v1.rknn: rknn模型文件。由非rknn模型文件(这里是TensorFlow Lite模型)经过RKNN-Toolkit模型转换生成的该rknn模型文件。

  • test.py: 示例运行脚本(包含rknn模型转换部分)。

  • test_inference.py: 示例运行脚本(仅加载rknn模型进行推理)。

3、运行测试:

使用VScode打开test.py 文件,如图所示,选择正确的运行环境:

运行效果:

--> config model
done
--> Loading model
done
--> Building model
done
--> Export RKNN model
done
--> Init runtime environment
done
--> Running model
mobilenet_v1
-----TOP 5-----
[156]: 0.8837890625
[155]: 0.0677490234375
[188 205]: 0.00867462158203125
[188 205]: 0.00867462158203125
[263]: 0.0057525634765625

done
--> Begin evaluate model performance
========================================================================
   Performance
========================================================================
FPS: 136.30
========================================================================

done

4、结果说明:

根据以上执行结果可知,TOP5表示模型预测出来的排名前5的分类的结果,其中[156]表示狗的标签,0.8837890625表示预测为该标签的概率,可以看出预测结果为狗的可能性最大,从测试图片(dog_224x224.jpg)可以看出预测结果是准确的。