t.rock-chips
RKNN-Toolkit 使用指南
V1.1.0
T o
y b
r i
c k
c o
n f i
d e
n t i
a
t.rock-chips
目 录
1 主要功能说明 ............................................................................................................................................. 1
2 系统依赖说明 ............................................................................................................................................. 2 3
使用说明 ..................................................................................................................................................... 3 3.1
安装 (3)tensorflow版本选择
3.1.1 通过pip install 命令安装 .......................................................................................................... 3 3.1.2 通过DOCKER 镜像安装 . (4)
3.2
RKNN-T OOLKIT 的使用 (5)
3.2.1 场景一:模型运行在PC 上 ..................................................................................................... 5 3.2.2 场景二:模型运行在与PC 相连的RK3399Pro 、RK1808或RK1808计算棒上 .. (8)
3.2.3 场景三:模型运行在RK3399Pro Linux 开发板上 (9)
3.3
混合量化 (9)
3.3.1 混合量化功能用法 (9)
3.3.2 混合量化配置文件 .................................................................................................................. 10 3.3.3
混合量化使用流程 (11)
3.4 示例 .................................................................................................................................................. 12 3.5
API 详细说明 (15)
3.5.1 RKNN 初始化及对象释放 (15)
3.5.2 模型加载 (16)
3.5.3 RKNN 模型配置 (19)
3.5.4 构建RKNN 模型 ...................................................................................................................... 20 3.5.5 导出RKNN 模型 ...................................................................................................................... 21 3.5.6 加载RKNN 模型 ...................................................................................................................... 22 3.5.7 初始化运行时环境 .................................................................................................................. 22 3.5.8
使用模型对输入进行推理 (23)
T o
y b
r i
c k
c
o
n f i
d e
n t i
a
t.rock-chips
3.5.9 评估模型性能 .......................................................................................................................... 25 3.5.10 获取内存使用情况 .................................................................................................................. 28 3.5.11 查询SDK 版本 ......................................................................................................................... 30 3.5.12 混合量化 .................................................................................................................................. 30 3.5.13
获取设备列表 (32)
T o
y b
r i
c k
c o
n f i
d e
n t i
a
1 主要功能说明
RKNN-Toolkit 是为用户提供在PC 、RK3399Pro 、RK1808、TB-RK1808 AI 计算棒或RK3399Pro Linux 开发板上进行模型转换、推理和性能评估的开发套件,用户通过提供的python 接口可以便捷地完成以下功能:
1)模型转换:支持Caffe 、TensorFlow 、TensorFlow Lite 、ONNX 、Darknet 模型转成RKNN 模型,支持RKNN 模型导入导出,后续能够在硬件平台上加载使用。
2)模型推理:能够在PC 上模拟运行模型并获取推理结果;也可以在指定硬件平台RK3399Pro (或RK3399Pro Linux 开发板)、RK1808、TB-RK1808 AI 计算棒上运行模型并获取推理结果。
3)性能评估:能够在PC 上模拟运行并获取模型总耗时及每一层的耗时信息;也可以通过联机调试的方式在指定硬件平台RK3399Pro 、RK1808、TB-RK1808 AI 计算棒上运行模型,或者直接在RK3399Pro Linux 开发板上运行,以获取模型在硬件上完整运行一次所需的总时间和每一层的耗时情况。
4)获取模型运行时的内存使用情况:通过联机调试的方式获取模型在指定硬件平台
RK3399Pro 、RK1808、TB-RK1808 AI 计算棒或RK3399Pro Linux 开发板上运行时的内存使用情况。
5)量化功能:支持将浮点模型转成量化模型,目前支持的量化方法有非对称量化
(asymmetric_quantized-u8),动态定点量化(dynamic_fixed_point-8和dynamic_fixed_point-16)。
T o
y b
r i
c k
c
o
n f i
d e
n t i
2 系统依赖说明
本开发套件支持运行于Ubuntu 、Windows 、MacOS 、Debian 等操作系统。需要满足以下运行环境要求:
表1 运行环境
操作系统版本
Ubuntu16.04(x64)及以上 Windows 7(x64)及以上 Mac OS X 10.13.5(x64)及以上 Debian 9.8(x64)及以上 Python 版本
3.5/3.6
Python 库依赖
'numpy >= 1.16.1'    'scipy >= 1.1.0'    'Pillow >= 3.1.2'    'h5py >= 2.7.1'    'lmdb >= 0.92'
'networkx == 1.11' 'flatbuffers == 1.9',    'protobuf >= 3.5.2'
'onnx >= 1.3.0' 'flask >= 1.0.2' 'tensorflow >= 1.11.0' 'dill==0.2.8.2'
'opencv-python>=3.4.3.18' 'ruamel.yaml==0.15.82' 'psutils>=5.6.2'
注:
1. Windows 及MacOS 只提供Python3.6的安装包。
2. 本文档主要以Ubuntu 16.04 / Python
3.5为例进行说明。其他操作系统请参考相应快速
上手指南:
● Windows 操作系统:《RKNN-Toolkit Windows 平台快速上手指南_V1.1.0.pdf 》。 ● MacOS 操作系统:《RKNN-Toolkit Mac OS X 平台快速上手指南_V1.1.0.pdf 》。 ● Debian 操作系统:《RKNN-Toolkit ARM 平台快速上手指南_V1.1.0.pdf 》。
T o
y b
r i
c k
c o
n f
i
d e
n t i