logo
0
0
Login
Randall Zhuo<randall.zhuo@rock-chips.com>
Update rknn_model_zoo to V2.3.2

简体中文 | English

RKNN Model Zoo

简介

RKNN Model Zoo基于 RKNPU SDK 工具链开发, 提供了目前主流算法的部署例程. 例程包含导出RKNN模型, 使用 Python API, CAPI 推理 RKNN 模型的流程.

  • 支持 RK3562, RK3566, RK3568, RK3576, RK3588, RV1126B 平台。
  • 部分支持RV1103, RV1106
  • 支持 RV1109, RV1126, RK1808 平台。

依赖库安装

RKNN Model Zoo依赖 RKNN-Toolkit2 进行模型转换, 编译安卓demo时需要安卓编译工具链, 编译Linux demo时需要Linux编译工具链。这些依赖的安装请参考 https://github.com/airockchip/rknn-toolkit2/tree/master/doc 的 Quick Start 文档.

  • 请注意, 安卓编译工具链建议使用 r18r19 版本. 使用其他版本可能会遇到 Cdemo 编译失败的问题.
  • 请注意, Linux编译工具链建议使用gcc-linaro-6.3.1(aarch64)/gcc-arm-8.3(armhf)/armhf-uclibcgnueabihf(armhf, 用于RV1106/RV1103系列),使用其他版本可能会遇到Cdemo编译失败的问题。详细编译指南请参考 Compilation_Environment_Setup_Guide_CN.md

模型支持说明

以下demo除了从对应的仓库导出模型, 也可从网盘 https://console.zbox.filez.com/l/8ufwtG (提取码: rknn) 下载模型文件.

CategoryNameDtypeModel Download LinkSupport platform
图像分类mobilenetFP16/INT8mobilenetv2-12.onnxRK3562|RK3566|RK3568|RK3576|RK3588|RV1126B
RV1103|RV1106
RK1808|RK3399PRO
RV1109|RV1126
图像分类resnetFP16/INT8resnet50-v2-7.onnxRK3562|RK3566|RK3568|RK3576|RK3588|RV1126B
RK1808|RK3399PRO
RV1109|RV1126
物体检测yolov5FP16/INT8./yolov5s_relu.onnx
./yolov5n.onnx
./yolov5s.onnx
./yolov5m.onnx
RK3562|RK3566|RK3568|RK3576|RK3588|RV1126B
RV1103|RV1106
RK1808|RK3399PRO
RV1109|RV1126
物体检测yolov6FP16/INT8./yolov6n.onnx
./yolov6s.onnx
./yolov6m.onnx
RK3562|RK3566|RK3568|RK3576|RK3588|RV1126B
RK1808|RK3399PRO
RV1109|RV1126
物体检测yolov7FP16/INT8./yolov7-tiny.onnx
./yolov7.onnx
RK3562|RK3566|RK3568|RK3576|RK3588|RV1126B
RK1808|RK3399PRO
RV1109|RV1126
物体检测yolov8FP16/INT8./yolov8n.onnx
./yolov8s.onnx
./yolov8m.onnx
RK3562|RK3566|RK3568|RK3576|RK3588|RV1126B
RK1808|RK3399PRO
RV1109|RV1126
物体检测yolov8_obbINT8./yolov8n-obb.onnxRK3562|RK3566|RK3568|RK3576|RK3588|RV1126B
RK1808|RK3399PRO
RV1109|RV1126
物体检测yolov10FP16/INT8./yolov10n.onnx
./yolov10s.onnx
RK3562|RK3566|RK3568|RK3576|RK3588|RV1126B
RV1103|RV1106
RK1808|RK3399PRO
RV1109|RV1126
物体检测yolo11FP16/INT8./yolo11n.onnx
./yolo11s.onnx
./yolo11m.onnx
RK3562|RK3566|RK3568|RK3576|RK3588|RV1126B
RV1103|RV1106
RK1808|RK3399PRO
RV1109|RV1126
物体检测yoloxFP16/INT8./yolox_s.onnx
./yolox_m.onnx
RK3562|RK3566|RK3568|RK3576|RK3588|RV1126B
RK1808|RK3399PRO
RV1109|RV1126
物体检测ppyoloeFP16/INT8./ppyoloe_s.onnx
./ppyoloe_m.onnx
RK3562|RK3566|RK3568|RK3576|RK3588|RV1126B
RK1808|RK3399PRO
RV1109|RV1126
物体检测yolo_worldFP16/INT8./yolo_world_v2s.onnx
./clip_text.onnx
RK3562|RK3566|RK3568|RK3576|RK3588|RV1126B
人体关键点yolov8_poseINT8./yolov8n-pose.onnxRK3562|RK3566|RK3568|RK3576|RK3588|RV1126B
图像分割deeplabv3FP16/INT8./deeplab-v3-plus-mobilenet-v2.pbRK3562|RK3566|RK3568|RK3576|RK3588|RV1126B
RK1808|RK3399PRO
RV1109|RV1126
图像分割yolov5_segFP16/INT8./yolov5n-seg.onnx
./yolov5s-seg.onnx
./yolov5m-seg.onnx
RK3562|RK3566|RK3568|RK3576|RK3588|RV1126B
RK1808|RK3399PRO
RV1109|RV1126
图像分割yolov8_segFP16/INT8./yolov8n-seg.onnx
./yolov8s-seg.onnx
./yolov8m-seg.onnx
RK3562|RK3566|RK3568|RK3576|RK3588|RV1126B
RK1808|RK3399PRO
RV1109|RV1126
图像分割ppsegFP16/INT8pp_liteseg_cityscapes.onnxRK3562|RK3566|RK3568|RK3576|RK3588|RV1126B
RK1808|RK3399PRO
RV1109|RV1126
图像分割mobilesamFP16mobilesam_encoder_tiny.onnx
mobilesam_decoder.onnx
RK3562|RK3566|RK3568|RK3576|RK3588|RV1126B
人脸关键点RetinaFaceINT8RetinaFace_mobile320.onnx
RetinaFace_resnet50_320.onnx
RK3562|RK3566|RK3568|RK3576|RK3588|RV1126B
RK1808|RK3399PRO
RV1109|RV1126
车牌识别LPRNetFP16/INT8./lprnet.onnxRK3562|RK3566|RK3568|RK3576|RK3588|RV1126B
RV1103|RV1106
RK1808|RK3399PRO
RV1109|RV1126
文字检测PPOCR-DetFP16/INT8../ppocrv4_det.onnxRK3562|RK3566|RK3568|RK3576|RK3588|RV1126B
RK1808|RK3399PRO
RV1109|RV1126
文字识别PPOCR-RecFP16../ppocrv4_rec.onnxRK3562|RK3566|RK3568|RK3576|RK3588|RV1126B
RK1808|RK3399PRO
RV1109|RV1126
自然语言翻译lite_transformerFP16lite-transformer-encoder-16.onnx
lite-transformer-decoder-16.onnx
RK3562|RK3566|RK3568|RK3576|RK3588|RV1126B
RK1808|RK3399PRO
RV1109|RV1126
图文匹配clipFP16./clip_images.onnx
./clip_text.onnx
RK3562|RK3566|RK3568|RK3576|RK3588|RV1126B
语音识别wav2vec2FP16wav2vec2_base_960h_20s.onnxRK3562|RK3566|RK3568|RK3576|RK3588|RV1126B
语音识别whisperFP16whisper_encoder_base_20s.onnx
whisper_decoder_base_20s.onnx
RK3562|RK3566|RK3568|RK3576|RK3588|RV1126B
语音识别zipformerFP16encoder-epoch-99-avg-1.onnx
decoder-epoch-99-avg-1.onnx
joiner-epoch-99-avg-1.onnx
RK3562|RK3566|RK3568|RK3576|RK3588|RV1126B
语音分类yamnetFP16yamnet_3s.onnxRK3562|RK3566|RK3568|RK3576|RK3588|RV1126B
文字转语音mms_ttsFP16mms_tts_eng_encoder_200.onnx
mms_tts_eng_decoder_200.onnx
RK3562|RK3566|RK3568|RK3576|RK3588|RV1126B

Model performance benchmark(FPS)

demomodel_nameinputs_shape    dtypeRK3566
RK3568
RK3562RK3588
@single_core
RK3576
@single_core
RV1109RV1126RK1808
mobilenetmobilenetv2-12[1, 3, 224, 224]INT8180.7281.3450.7467.0212.9322.3170.3
resnetresnet50-v2-7[1, 3, 224, 224]INT837.954.9110.199.024.436.237.1
yolov5yolov5s_relu[1, 3, 640, 640]INT825.533.266.165.020.229.237.2
yolov5n[1, 3, 640, 640]INT839.747.482.5112.736.353.261.2
yolov5s[1, 3, 640, 640]INT819.323.648.457.513.620.028.2
yolov5m[1, 3, 640, 640]INT88.610.820.923.75.88.513.3
yolov6yolov6n[1, 3, 640, 640]INT848.856.4106.4109.137.856.866.8
yolov6s[1, 3, 640, 640]INT815.217.336.435.010.816.324.1
yolov6m[1, 3, 640, 640]INT87.28.617.817.45.68.311.5
yolov7yolov7-tiny[1, 3, 640, 640]INT827.936.572.774.815.422.437.2
yolov7[1, 3, 640, 640]INT84.65.911.413.03.34.87.4
yolov8yolov8n[1, 3, 640, 640]INT834.040.973.590.224.035.442.3
yolov8s[1, 3, 640, 640]INT815.118.438.040.88.913.119.1
yolov8m[1, 3, 640, 640]INT86.58.216.216.73.95.89.1
yolov8_obbyolov8n-obb[1, 3, 640, 640]INT833.941.374.090.225.137.342.8
yolov10yolov10n[1, 3, 640, 640]INT820.734.161.280.2///
yolov10s[1, 3, 640, 640]INT810.316.933.839.9///
yolo11yolo11n[1, 3, 640, 640]INT820.634.060.077.911.717.017.6
yolo11s[1, 3, 640, 640]INT810.216.733.038.25.07.38.4
yolo11m[1, 3, 640, 640]INT84.66.512.714.62.84.05.1
yoloxyolox_s[1, 3, 640, 640]INT815.218.337.141.510.615.723.0
yolox_m[1, 3, 640, 640]INT86.68.216.017.64.66.810.7
ppyoloeppyoloe_s[1, 3, 640, 640]INT817.120.032.541.311.216.421.1
ppyoloe_m[1, 3, 640, 640]INT87.89.215.817.85.27.79.4
yolo_worldyolo_world_v2s[1, 3, 640, 640]INT87.49.622.122.3///
clip_text[1, 20]FP1629.867.495.863.5///
yolov8_poseyolov8n-pose[1, 3, 640, 640]INT822.631.055.966.8///
deeplabv3deeplab-v3-plus-mobilenet-v2[1, 513, 513, 1]INT810.921.434.039.410.113.04.4
yolov5_segyolov5n-seg[1, 3, 640, 640]INT832.238.569.388.328.642.249.6
yolov5s-seg[1, 3, 640, 640]INT815.018.136.841.69.614.022.5
yolov5m-seg[1, 3, 640, 640]INT86.88.416.418.04.76.810.8
yolov8_segyolov8n-seg[1, 3, 640, 640]INT827.833.060.871.118.627.632.9
yolov8s-seg[1, 3, 640, 640]INT811.714.128.930.86.69.814.6
yolov8m-seg[1, 3, 640, 640]INT85.26.412.612.73.14.66.9
ppsegppseg_lite_1024x512[1, 3, 512, 512]INT85.913.935.733.618.427.120.9
mobilesammobilesam_encoder_tiny[1, 3, 448, 448]FP161.06.610.011.9///
mobilesam_decoder[1, 1, 112, 112]FP1624.369.6116.4108.6///
RetinaFaceRetinaFace_mobile320[1, 3, 320, 320]INT8156.4300.8227.2470.5144.8212.5198.5
RetinaFace_resnet50_320[1, 3, 320, 320]INT818.726.949.256.614.620.824.6
LPRNetlprnet[1, 3, 24, 94]FP16143.2420.6586.4647.830.6(INT8)47.6(INT8)30.1(INT8)
PPOCR-Detppocrv4_det[1, 3, 480, 480]INT822.128.050.764.311.016.114.2
PPOCR-Recppocrv4_rec[1, 3, 48, 320]FP1619.554.373.996.81.01.66.7
lite_transformerlite-transformer-encoder-16embedding-256, token-16FP16337.5725.8867.6784.122.735.498.3
lite-transformer-decoder-16embedding-256, token-16FP16142.5252.0343.8272.348.065.8109.9
clipclip_images[1, 3, 224, 224]FP162.33.46.56.7///
clip_text[1, 20]FP1629.766.696.063.7///
wav2vec2wav2vec2_base_960h_20s20s audioFP16RTF
0.817
RTF
0.323
RTF
0.133
RTF
0.073
///
whisperwhisper_base_20s20s audioFP16RTF
1.178
RTF
0.420
RTF
0.215
RTF
0.218
///
zipformerzipformer-bilingual-zh-en-tstreaming audioFP16RTF
0.196
RTF
0.116
RTF
0.065
RTF
0.082
///
yamnetyamnet_3s3s audioFP16RTF
0.013
RTF
0.008
RTF
0.004
RTF
0.005
///
mms_ttsmms_tts_eng_200token-200FP16RTF
0.311
RTF
0.138
RTF
0.069
RTF
0.069
///
  • 该性能数据基于各平台的最大NPU频率进行测试
  • 该性能数据指模型推理的耗时, 不包含前后处理的耗时
  • /表示当前版本暂不支持

Demo编译说明

对于 Linux 系统的开发板:

./build-linux.sh -t <target> -a <arch> -d <build_demo_name> [-b <build_type>] [-m] -t : target (rk356x/rk3576/rk3588/rv1106/rv1126b/rv1126/rk1808) -a : arch (aarch64/armhf) -d : demo name -b : build_type(Debug/Release) -m : enable address sanitizer, build_type need set to Debug Note: 'rk356x' represents rk3562/rk3566/rk3568, 'rv1106' represents rv1103/rv1106, 'rv1126' represents rv1109/rv1126,'rv1126b' is different from 'rv1126'. # 以编译64位Linux RK3566的yolov5 demo为例: ./build-linux.sh -t rk356x -a aarch64 -d yolov5

对于 Android 系统的开发板:

# 对于 Android 系统的开发板, 首先需要根据实际情况, 设置安卓NDK编译工具的路径 export ANDROID_NDK_PATH=~/opts/ndk/android-ndk-r18b ./build-android.sh -t <target> -a <arch> -d <build_demo_name> [-b <build_type>] [-m] -t : target (rk356x/rk3588/rk3576) -a : arch (arm64-v8a/armeabi-v7a) -d : demo name -b : build_type (Debug/Release) -m : enable address sanitizer, build_type need set to Debug # 以编译64位Android RK3566的yolov5 demo为例: ./build-android.sh -t rk356x -a arm64-v8a -d yolov5

版本说明

版本说明
2.3.2新增 RV1126B 平台支持
2.3.0新增 yolo11、zipformer、mms_tts 等示例
2.2.0添加新例程 wav2vec, mobilesam. 更新部分模型的导出说明
2.1.0新例程添加, 包含 yolov8_pose, yolov8_obb, yolov10, yolo_world, clip, whisper, yamnet
部分模型暂不支持 RK1808, RV1109, RV1126 平台, 将在下个版本添加支持
2.0.0新增 RK3576 平台支持
新增 RK1808, RV1109, RV1126 平台支持
1.6.0提供目标检测、图像分割、OCR、车牌识别等多个例程
支持RK3562, RK3566, RK3568, RK3588平台
部分支持RV1103, RV1106平台
1.5.0提供Yolo检测模型的demo

环境依赖

RKNN Model Zoo 的例程基于当前最新的 RKNPU SDK 进行验证。若使用低版本的 RKNPU SDK 进行验证, 推理性能、推理结果可能会有差异。

版本RKNPU2 SDKRKNPU1 SDK
2.3.2>=2.3.2>=1.7.5
2.3.0>=2.3.0>=1.7.5
2.2.0>=2.2.0>=1.7.5
2.1.0>=2.1.0>=1.7.5
2.0.0>=2.0.0>=1.7.5
1.6.0>=1.6.0-
1.5.0>=1.5.0>=1.7.3

RKNPU相关资料

许可证

Apache License 2.0