Toybrick

【Official Release】rknn-toolkit-1.2.0&rknn-api-0.9.9 Release

zhangzj

超级版主

积分
609
发表于 2019-2-15 14:37:59    查看: 11031|回复: 48 | [复制链接]    打印 | 显示全部楼层
本帖最后由 zhangzj 于 2019-9-10 17:05 编辑

rknn-toolkit-V1.2.0
Baidu Cloud:https://eyun.baidu.com/s/3qZUVUEg
OneDrive:rknn-onedrive

2019-08-23
1.  Add support for model with multiple inputs.
2.  New feature: batch inference.
3.  New feature: model segmentation.
4.  New feature: custom op.

rknn-api-V0.9.9
Baidu Cloud:https://eyun.baidu.com/s/3dzAtcy
OneDrive:rknn-onedrive

Changelog:
1. add support of multi-input.
2. fix inference error when input channel > 3.
3. modify the name of documents.

Note
1.Maintain the version of rknn-toolkit/rknn-api/npuservice correspondence.

2.For ARM platform, the rknn-toolkit and rknn-api released here are for RK3399Pro, NOT for RK1808!


Update Method

1.Update all firmware

Download and flash the V1.5 firmware:http://t.rock-chips.com/portal.php?mod=list&catid=11&product_id=4

2.Update NPU related component only

1) Linux

Update rknn-api and npuservice:
  1. sudo dnf clean all
  2. sudo dnf update -y
复制代码

Update rknn-toolkit:
  1. pip3 install --user rknn_toolkit-1.2.0-cp36-cp36m-linux_aarch64.whl
复制代码

Confirm version:
  1. [toybrick@toybrick work]$ rpm -qa rknn-api npuservice
  2. rknn-api-0.9.9-1.rockchip.fc28.aarch64
  3. npuservice-1.0.5-1.rockchip.fc28.aarch64
复制代码

  1. [toybrick@toybrick packages]$ pip3 show rknn-toolkit
  2. Name: rknn-toolkit
  3. Version: 1.2.0
  4. Summary: Rockchip Neural Network Toolkit
  5. Home-page: UNKNOWN
  6. Author: Rockchip
  7. Author-email: None
  8. License: UNKNOWN
  9. Location: /home/toybrick/.local/lib/python3.6/site-packages
  10. Requires: Pillow, scipy, numpy, flask, onnx, ruamel.yaml, protobuf, lmdb, onnx-tf, h5py, dill, networkx, psutil, flatbuffers
复制代码

The log info when running rknn-api:

D RKNNAPI: ==============================================
D RKNNAPI: RKNN VERSION:
D RKNNAPI:   API: 0.9.9 (80bad59 build: 2019-07-16 09:39:49)
D RKNNAPI:   DRV: 0.9.9 (8509ec7 build: 2019-08-05 10:54:34)
D RKNNAPI: ==============================================

Attention: reboot the board after update!


2.Android(Update V1.5 firmware)

Download and flash the V1.5 firmware:http://t.rock-chips.com/portal.php?mod=list&catid=11&product_id=4


=========================================== 华丽的分割线 ===========================================================

rknn-toolkit-V1.1.0
官方已发布rknn-toolkit-1.1.0版本。百度网盘下载地址:https://eyun.baidu.com/s/3qZUVUEg
海外OneDrive下载地址:rknn-onedrive
2019-08-07
版本:v1.1.0
1. 新增对TB-RK1808 AI计算棒的支持。
2. 新增接口list_devices,用来查询已连接设备信息。
3. 支持使用Python 3.5的ARM64 Linux平台。
4. 支持Windows / Mac OS X操作系统。

rknn-api-V0.9.8
百度网盘下载地址:https://eyun.baidu.com/s/3dzAtcy
海外OneDrive下载地址:rknn-onedrive
changelog:
1.add rknn_init2 function for multi-device support
2.support precompile function for rknn-toolkit
3.add x86 linux support
4.add support of rknn_batch_size.
5.add devices query function.


Note:
1.rknn-toolkit、rknn-api、npuservice三个组件最好保持更新的版本一致,即.rknn模型用新版本的rknn-toolkit重新转换生成。

更新方法:
1.Linux更新:
  sudo dnf clean all
  sudo dnf update -y
  更新完成后需要重启开发板。
  版本确认:
[toybrick@localhost build]$ rpm -qa rknn-api npuservice
rknn-api-0.9.8-1.rockchip.fc28.aarch64
npuservice-1.0.4-1.rockchip.fc28.aarch64
运行时版本打印如下:
D RKNNAPI: ==============================================
D RKNNAPI: RKNN VERSION:
D RKNNAPI:   API: 0.9.8 (e0c7840 build: 2019-06-28 10:49:53)
D RKNNAPI:   DRV: 0.9.8 (943f8e8 build: 2019-07-03 17:51:17)
D RKNNAPI: ==============================================


2.Android更新(V1.4版本固件中更新):
下载官方更新的固件:http://t.rock-chips.com/wiki.php?mod=view&id=11

=========================================== 华丽的分割线 ===========================================================

rknn-toolkit-V1.0.0
官方已发布rknn-toolkit-1.0.0版本。百度网盘下载地址:https://eyun.baidu.com/s/3qZUVUEg
海外OneDrive下载地址:rknn-onedrive
2019-05-08
版本:v1.0.0
1. inference接口支持输入透传模式。
2. 初始化运行环境时支持异步模型。
3. 新功能:混合量化。
4. 优化pre-compile模型的加载时间。新版本工具生成的预编译模型无法在NPU驱动版本号小于0.9.6的设备上运行;旧版本生成的预编译模型也无法在新版本驱动上运行。
5. 调整模型推理结果的排列顺序:在1.0.0以前,如果原始模型输出的结果是按"NHWC"排列(例如TensorFlow模型),则工具会把结果转成"NCHW";从1.0.0版本开始,将不做这个转换,而是保持跟原始模型的排列一致。

rknn-api-V0.9.5
百度网盘下载地址:https://eyun.baidu.com/s/3dzAtcy
海外OneDrive下载地址:rknn-onedrive
changelog:
update reorder support;
optimize preprocess for input data;

Note:
1.本次更新api接口没有变化
2.更新到V1.0.0后,如果需要预编译功能,需要重新用V1.0.0 rknn-toolkit生成rknn模型,rknn-toolkit V1.0.0之前版本生成的rknn预编译模型运行在V1.0.0环境中会有兼容性问题。
3.此次更新可以大幅减少预编译模型的加载时间,模型转换时需要开启pre_compile

更新方法:
1.Linux更新:
  sudo dnf clean all
  sudo dnf update -y
  更新完成后需要重启开发板。
  版本确认:
[toybrick@localhost ~]$ rpm -aq rknn-api npuservice
npuservice-1.0.3-1.rockchip.fc28.aarch64
rknn-api-0.9.5-2.rockchip.fc28.aarch64
运行时版本打印如下:
D RKNNAPI: ==============================================
D RKNNAPI: RKNN VERSION:
D RKNNAPI:   API: 0.9.5 (a949908 build: 2019-05-07 22:20:43)
D RKNNAPI:   DRV: 0.9.6 (c12de8a build: 2019-05-06 20:10:17)
D RKNNAPI: ==============================================


2.Android更新(5月14日起才可以更新):
下载官方更新的固件:http://t.rock-chips.com/wiki.php?mod=view&pid=4

=========================================== 华丽的分割线 ===========================================================

rknn-toolkit-V0.9.9
官方已发布rknn-toolkit-0.9.9版本,网盘下载地址:https://eyun.baidu.com/s/3qZUVUEg
changelog:
2019-03-06
版本:v0.9.9
1. 新增eval_memory接口,用来获取模型运行时的内存使用情况。
2. inference接口优化;错误信息优化。
3. init_runtime接口优化。

另外,建议更新scipy与onnx版本(网盘上已更新至scipy-1.2.0与onnx-1.4.1):
pip3 install scipy-1.2.0-cp36-cp36m-linux_aarch64.whl
pip3 install onnx-1.4.1-cp36-cp36m-linux_aarch64.whl


rknn-api-V0.9.4
网盘下载地址:https://eyun.baidu.com/s/3dzAtcy
changelog:
修复 channel_mean 没有生效的问题

1.Linux更新:
  sudo dnf clean all
  sudo dnf update
2.Android更新:
repo sync更新Android工程,编译新固件

=========================================== 华丽的分割线 ===========================================================
  
V0.9.8.1
临时版本rknn-toolkit-0.9.8.1已发布到官方网盘,下载地址:rknn-toolkit-0.9.8.1

该版本为临时版本,主要修复了inference接口耗时过久的bug,实测可以提升20倍速度。

考虑到很多童鞋反馈这个问题,因此先发布了修复这个bug的临时版本。

赶紧更新安装测试看看吧!

=========================================== 华丽的分割线 ===========================================================
  
V0.9.8
官方已发布rknn-toolkit-0.9.8版本,下载地址:rknn-toolkit-0.9.8
该版本新增调试模式功能:通过在初始化RKNN对象时设置verbose和verbose_file参数,用户可以看到模型加载、构建等阶段的详细日志信息,并写到指定的文件中。
举例如下:

  1. #  将详细的日志信息输出到屏幕,并写到 mobilenet_build.log 文件中
  2. rknn = RKNN(verbose=True, verbose_file='./mobilenet_build.log')
  3. #  只在屏幕打印详细的日志信息
  4. rknn = RKNN(verbose=True)

  5. rknn.release()
复制代码


有兴趣的童鞋可以更新安装使用了。















回复

使用道具 举报

慢慢的大米饭

新手上路

积分
43
发表于 2019-2-15 14:39:17 | 显示全部楼层
已安装并按照要求输出日志,caffe模型转换失败 请帮忙查看下 谢谢了
回复

使用道具 举报

someone9388

注册会员

积分
66
发表于 2019-2-21 14:16:25 | 显示全部楼层
[toybrick@localhost rknn_test]$ python3 rknn_transfer.py
/usr/lib64/python3.6/site-packages/h5py/__init__.py:36: FutureWarning: Conversion of the second argument of issubdtype from `float` to `np.floating` is deprecated. In future, it will be treated as `np.float64 == np.dtype(float).type`.
  from ._conv import register_converters as _register_converters
--> Init runtime environment
Traceback (most recent call last):
  File "rknn_transfer.py", line 12, in <module>
    ret = rknn.init_runtime(host='rk3399pro')
TypeError: init_runtime() got an unexpected keyword argument 'host'
回复

使用道具 举报

程子

中级会员

积分
383
发表于 2019-2-21 15:08:42 | 显示全部楼层
someone9388 发表于 2019-2-21 14:16
[toybrick@localhost rknn_test]$ python3 rknn_transfer.py
/usr/lib64/python3.6/site-packages/h5py/__ ...

如果你用的RKNN 0.9.8,此处host应该改为target。
回复

使用道具 举报

karbon

注册会员

积分
62
发表于 2019-2-23 10:23:12 | 显示全部楼层
用python的API做目标检测 一秒多才能有一帧
回复

使用道具 举报

zhangzj

超级版主

积分
609
 楼主| 发表于 2019-2-25 09:27:51 | 显示全部楼层
karbon 发表于 2019-2-23 10:23
用python的API做目标检测 一秒多才能有一帧

这个是rknn Python包inference接口耗时有bug,下个版本会解决
回复

使用道具 举报

程子

中级会员

积分
383
发表于 2019-2-26 23:45:20 | 显示全部楼层
赞      
回复

使用道具 举报

Lee

注册会员

积分
151
发表于 2019-2-27 11:59:33 | 显示全部楼层
您好,请问时只有arm rknn_toolkit-0.9.8.1-cp36-cp36m-linux_aarch64.whl更新啦吗?还是其他python版本和架构也更新了?
回复

使用道具 举报

程子

中级会员

积分
383
发表于 2019-2-27 12:03:23 | 显示全部楼层
Lee 发表于 2019-2-27 11:59
您好,请问时只有arm rknn_toolkit-0.9.8.1-cp36-cp36m-linux_aarch64.whl更新啦吗?还是其他python版本和 ...

应该是只有arm的更新了,毕竟修的BUG是在板子上的BUG。
回复

使用道具 举报

Lee

注册会员

积分
151
发表于 2019-2-27 12:11:07 | 显示全部楼层
程子 发表于 2019-2-27 12:03
应该是只有arm的更新了,毕竟修的BUG是在板子上的BUG。

哦,顺便咨询下,那开发板连到pc板上跑,和直接在板子上跑 ,差异大吗?pc连开发板,是不是实际也跑的arm
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

产品中心 购买渠道 开源社区 Wiki教程 资料下载 关于Toybrick


快速回复 返回顶部 返回列表