Merge pull request #160 from fengyuentau/add_new_hardware
Browse filesAdd benchmark results on Toybrick RV1126, Khadas Edge2, Horizon Sunrise X3 PI and MAIX-III AX-PI
- benchmark/README.md +235 -22
- benchmark/color_table.svg +0 -0
benchmark/README.md
CHANGED
@@ -58,28 +58,28 @@ python benchmark.py --all --cfg_overwrite_backend_target 1
|
|
58 |
Benchmark is done with latest `opencv-python==4.7.0.72` and `opencv-contrib-python==4.7.0.72` on the following platforms. Some models are excluded because of support issues.
|
59 |
|
60 |
|
61 |
-
| Model | Task | Input Size |
|
62 |
-
|
63 |
-
| [YuNet](../models/face_detection_yunet) | Face Detection | 160x120 | 0.72
|
64 |
-
| [SFace](../models/face_recognition_sface) | Face Recognition | 112x112 | 6.04
|
65 |
-
| [FER](../models/facial_expression_recognition/) | Facial Expression Recognition | 112x112 | 3.16
|
66 |
-
| [LPD-YuNet](../models/license_plate_detection_yunet/) | License Plate Detection | 320x240 | 8.63
|
67 |
-
| [YOLOX](../models/object_detection_yolox/) | Object Detection | 640x640 | 141.20
|
68 |
-
| [NanoDet](../models/object_detection_nanodet/) | Object Detection | 416x416 | 66.03
|
69 |
-
| [DB-IC15](../models/text_detection_db) (EN) | Text Detection | 640x480 | 71.03
|
70 |
-
| [DB-TD500](../models/text_detection_db) (EN&CN) | Text Detection | 640x480 | 72.31
|
71 |
-
| [CRNN-EN](../models/text_recognition_crnn) | Text Recognition | 100x32 | 20.16
|
72 |
-
| [CRNN-CN](../models/text_recognition_crnn) | Text Recognition | 100x32 | 23.07
|
73 |
-
| [PP-ResNet](../models/image_classification_ppresnet) | Image Classification | 224x224 | 34.71
|
74 |
-
| [MobileNet-V1](../models/image_classification_mobilenet) | Image Classification | 224x224 | 5.90
|
75 |
-
| [MobileNet-V2](../models/image_classification_mobilenet) | Image Classification | 224x224 | 5.97
|
76 |
-
| [PP-HumanSeg](../models/human_segmentation_pphumanseg) | Human Segmentation | 192x192 | 8.81
|
77 |
-
| [WeChatQRCode](../models/qrcode_wechatqrcode) | QR Code Detection and Parsing | 100x100 | 1.29
|
78 |
-
| [DaSiamRPN](../models/object_tracking_dasiamrpn) | Object Tracking | 1280x720 | 29.05
|
79 |
-
| [YoutuReID](../models/person_reid_youtureid) | Person Re-Identification | 128x256 | 30.39
|
80 |
-
| [MP-PalmDet](../models/palm_detection_mediapipe) | Palm Detection | 192x192 | 6.29
|
81 |
-
| [MP-HandPose](../models/handpose_estimation_mediapipe) | Hand Pose Estimation | 224x224 | 4.68
|
82 |
-
| [MP-PersonDet](./models/person_detection_mediapipe) | Person Detection | 224x224 | 13.88
|
83 |
|
84 |
\*: Models are quantized in per-channel mode, which run slower than per-tensor quantized models on NPU.
|
85 |
|
@@ -460,3 +460,216 @@ mean median min input size model
|
|
460 |
17.15 17.18 16.83 [640, 480] DB with ['text_detection_DB_IC15_resnet18_2021sep.onnx']
|
461 |
17.95 18.61 16.83 [640, 480] DB with ['text_detection_DB_TD500_resnet18_2021sep.onnx']
|
462 |
```
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
58 |
Benchmark is done with latest `opencv-python==4.7.0.72` and `opencv-contrib-python==4.7.0.72` on the following platforms. Some models are excluded because of support issues.
|
59 |
|
60 |
|
61 |
+
| Model | Task | Input Size | CPU-INTEL (ms) | CPU-RPI (ms) | CPU-RV1126 (ms) | CPU-KVE2 (ms) | CPU-HSX3 (ms) | CPU-AXP (ms) | GPU-JETSON (ms) | NPU-KV3 (ms) | NPU-Ascend310 (ms) | CPU-D1 (ms) |
|
62 |
+
| -------------------------------------------------------- | ----------------------------- | ---------- | -------------- | ------------ | --------------- | ------------- | ------------- | ------------ | --------------- | ------------ | ------------------ | ----------- |
|
63 |
+
| [YuNet](../models/face_detection_yunet) | Face Detection | 160x120 | 0.72 | 5.43 | 68.89 | 2.47 | 11.04 | 98.16 | 12.18 | 4.04 | 2.24 | 86.69 |
|
64 |
+
| [SFace](../models/face_recognition_sface) | Face Recognition | 112x112 | 6.04 | 78.83 | 1550.71 | 33.79 | 140.83 | 2093.12 | 24.88 | 46.25 | 2.66 | --- |
|
65 |
+
| [FER](../models/facial_expression_recognition/) | Facial Expression Recognition | 112x112 | 3.16 | 32.53 | 604.36 | 15.99 | 64.96 | 811.32 | 31.07 | 29.80 | 2.19 | --- |
|
66 |
+
| [LPD-YuNet](../models/license_plate_detection_yunet/) | License Plate Detection | 320x240 | 8.63 | 167.70 | 3222.92 | 57.57 | 283.75 | 4300.13 | 56.12 | 29.53 | 7.63 | --- |
|
67 |
+
| [YOLOX](../models/object_detection_yolox/) | Object Detection | 640x640 | 141.20 | 1805.87 | 38359.93 | 577.93 | 2749.22 | 49994.75 | 388.95 | 420.98 | 28.59 | --- |
|
68 |
+
| [NanoDet](../models/object_detection_nanodet/) | Object Detection | 416x416 | 66.03 | 225.10 | 2303.55 | 118.38 | 408.16 | 3360.20 | 64.94 | 116.64 | 20.62 | --- |
|
69 |
+
| [DB-IC15](../models/text_detection_db) (EN) | Text Detection | 640x480 | 71.03 | 1862.75 | 49065.03 | 394.77 | 1908.87 | 65681.91 | 208.41 | --- | 17.15 | --- |
|
70 |
+
| [DB-TD500](../models/text_detection_db) (EN&CN) | Text Detection | 640x480 | 72.31 | 1878.45 | 49052.24 | 392.52 | 1922.34 | 65630.56 | 210.51 | --- | 17.95 | --- |
|
71 |
+
| [CRNN-EN](../models/text_recognition_crnn) | Text Recognition | 100x32 | 20.16 | 278.11 | 2230.12 | 77.51 | 464.58 | 3277.07 | 196.15 | 125.30 | --- | --- |
|
72 |
+
| [CRNN-CN](../models/text_recognition_crnn) | Text Recognition | 100x32 | 23.07 | 297.48 | 2244.03 | 82.93 | 495.94 | 3330.69 | 239.76 | 166.79 | --- | --- |
|
73 |
+
| [PP-ResNet](../models/image_classification_ppresnet) | Image Classification | 224x224 | 34.71 | 463.93 | 11793.09 | 178.87 | 759.81 | 15753.56 | 98.64 | 75.45 | 6.99 | --- |
|
74 |
+
| [MobileNet-V1](../models/image_classification_mobilenet) | Image Classification | 224x224 | 5.90 | 72.33 | 1546.16 | 32.78 | 140.60 | 2091.13 | 33.18 | 145.66\* | 5.15 | --- |
|
75 |
+
| [MobileNet-V2](../models/image_classification_mobilenet) | Image Classification | 224x224 | 5.97 | 66.56 | 1166.56 | 28.38 | 122.53 | 1583.25 | 31.92 | 146.31\* | 5.41 | --- |
|
76 |
+
| [PP-HumanSeg](../models/human_segmentation_pphumanseg) | Human Segmentation | 192x192 | 8.81 | 73.13 | 1610.78 | 34.58 | 144.23 | 2157.86 | 67.97 | 74.77 | 6.94 | --- |
|
77 |
+
| [WeChatQRCode](../models/qrcode_wechatqrcode) | QR Code Detection and Parsing | 100x100 | 1.29 | 5.71 | --- | --- | --- | --- | --- | --- | --- | --- |
|
78 |
+
| [DaSiamRPN](../models/object_tracking_dasiamrpn) | Object Tracking | 1280x720 | 29.05 | 712.94 | 14738.64 | 152.78 | 929.63 | 19800.14 | 76.82 | --- | --- | --- |
|
79 |
+
| [YoutuReID](../models/person_reid_youtureid) | Person Re-Identification | 128x256 | 30.39 | 625.56 | 11117.07 | 195.67 | 898.23 | 14886.02 | 90.07 | 44.61 | 5.58 | --- |
|
80 |
+
| [MP-PalmDet](../models/palm_detection_mediapipe) | Palm Detection | 192x192 | 6.29 | 86.83 | 872.09 | 38.03 | 142.23 | 1191.81 | 83.20 | 33.81 | 5.17 | --- |
|
81 |
+
| [MP-HandPose](../models/handpose_estimation_mediapipe) | Hand Pose Estimation | 224x224 | 4.68 | 43.57 | 460.56 | 20.27 | 80.67 | 636.22 | 40.10 | 19.47 | 6.27 | --- |
|
82 |
+
| [MP-PersonDet](./models/person_detection_mediapipe) | Person Detection | 224x224 | 13.88 | 98.52 | 1326.56 | 46.07 | 191.41 | 1835.97 | 56.69 | --- | 16.45 | --- |
|
83 |
|
84 |
\*: Models are quantized in per-channel mode, which run slower than per-tensor quantized models on NPU.
|
85 |
|
|
|
460 |
17.15 17.18 16.83 [640, 480] DB with ['text_detection_DB_IC15_resnet18_2021sep.onnx']
|
461 |
17.95 18.61 16.83 [640, 480] DB with ['text_detection_DB_TD500_resnet18_2021sep.onnx']
|
462 |
```
|
463 |
+
|
464 |
+
### Toybrick RV1126
|
465 |
+
|
466 |
+
Specs: [details](https://t.rock-chips.com/en/portal.php?mod=view&aid=26)
|
467 |
+
- CPU: Quard core ARM Cortex-A7, up to 1.5GHz
|
468 |
+
- NPU (Not supported by OpenCV): 2.0TOPS, support 8bit / 16bit
|
469 |
+
|
470 |
+
CPU:
|
471 |
+
|
472 |
+
```
|
473 |
+
$ python3 benchmark.py --all --cfg_exclude wechat --model_exclude license_plate_detection_lpd_yunet_2023mar_int8.onnx:human_segmentation_pphumanseg_2023mar_int8.onnx
|
474 |
+
Benchmarking ...
|
475 |
+
backend=cv.dnn.DNN_BACKEND_OPENCV
|
476 |
+
target=cv.dnn.DNN_TARGET_CPU
|
477 |
+
mean median min input size model
|
478 |
+
68.89 68.59 68.23 [160, 120] YuNet with ['face_detection_yunet_2022mar.onnx']
|
479 |
+
60.98 61.11 52.00 [160, 120] YuNet with ['face_detection_yunet_2022mar_int8.onnx']
|
480 |
+
1550.71 1578.99 1527.58 [150, 150] SFace with ['face_recognition_sface_2021dec.onnx']
|
481 |
+
1214.15 1261.66 920.50 [150, 150] SFace with ['face_recognition_sface_2021dec_int8.onnx']
|
482 |
+
604.36 611.24 578.99 [112, 112] FacialExpressionRecog with ['facial_expression_recognition_mobilefacenet_2022july.onnx']
|
483 |
+
496.42 537.75 397.23 [112, 112] FacialExpressionRecog with ['facial_expression_recognition_mobilefacenet_2022july_int8.onnx']
|
484 |
+
460.56 470.15 440.77 [224, 224] MPHandPose with ['handpose_estimation_mediapipe_2023feb.onnx']
|
485 |
+
387.63 379.96 318.71 [224, 224] MPHandPose with ['handpose_estimation_mediapipe_2023feb_int8.onnx']
|
486 |
+
1610.78 1599.92 1583.95 [192, 192] PPHumanSeg with ['human_segmentation_pphumanseg_2023mar.onnx']
|
487 |
+
1546.16 1539.50 1513.14 [224, 224] MobileNet with ['image_classification_mobilenetv1_2022apr.onnx']
|
488 |
+
1166.56 1211.97 827.10 [224, 224] MobileNet with ['image_classification_mobilenetv2_2022apr.onnx']
|
489 |
+
983.80 868.18 689.32 [224, 224] MobileNet with ['image_classification_mobilenetv1_2022apr_int8.onnx']
|
490 |
+
840.38 801.83 504.54 [224, 224] MobileNet with ['image_classification_mobilenetv2_2022apr_int8.onnx']
|
491 |
+
11793.09 11817.73 11741.04 [224, 224] PPResNet with ['image_classification_ppresnet50_2022jan.onnx']
|
492 |
+
7740.03 8134.99 4464.30 [224, 224] PPResNet with ['image_classification_ppresnet50_2022jan_int8.onnx']
|
493 |
+
3222.92 3225.18 3170.71 [320, 240] LPD_YuNet with ['license_plate_detection_lpd_yunet_2023mar.onnx']
|
494 |
+
2303.55 2307.46 2289.41 [416, 416] NanoDet with ['object_detection_nanodet_2022nov.onnx']
|
495 |
+
1888.15 1920.41 1528.78 [416, 416] NanoDet with ['object_detection_nanodet_2022nov_int8.onnx']
|
496 |
+
38359.93 39021.21 37180.85 [640, 640] YoloX with ['object_detection_yolox_2022nov.onnx']
|
497 |
+
24504.50 25439.34 13443.63 [640, 640] YoloX with ['object_detection_yolox_2022nov_int8.onnx']
|
498 |
+
14738.64 14764.84 14655.76 [1280, 720] DaSiamRPN with ['object_tracking_dasiamrpn_kernel_cls1_2021nov.onnx', 'object_tracking_dasiamrpn_kernel_r1_2021nov.onnx', 'object_tracking_dasiamrpn_model_2021nov.onnx']
|
499 |
+
872.09 877.72 838.99 [192, 192] MPPalmDet with ['palm_detection_mediapipe_2023feb.onnx']
|
500 |
+
764.48 775.55 653.25 [192, 192] MPPalmDet with ['palm_detection_mediapipe_2023feb_int8.onnx']
|
501 |
+
1326.56 1327.10 1305.18 [224, 224] MPPersonDet with ['person_detection_mediapipe_2023mar.onnx']
|
502 |
+
11117.07 11109.12 11058.49 [128, 256] YoutuReID with ['person_reid_youtu_2021nov.onnx']
|
503 |
+
7037.96 7424.89 3750.12 [128, 256] YoutuReID with ['person_reid_youtu_2021nov_int8.onnx']
|
504 |
+
49065.03 49144.55 48943.50 [640, 480] DB with ['text_detection_DB_IC15_resnet18_2021sep.onnx']
|
505 |
+
49052.24 48992.64 48927.44 [640, 480] DB with ['text_detection_DB_TD500_resnet18_2021sep.onnx']
|
506 |
+
2200.08 2193.78 2175.77 [1280, 720] CRNN with ['text_recognition_CRNN_CH_2021sep.onnx']
|
507 |
+
2244.03 2240.25 2175.77 [1280, 720] CRNN with ['text_recognition_CRNN_CN_2021nov.onnx']
|
508 |
+
2230.12 2290.28 2175.77 [1280, 720] CRNN with ['text_recognition_CRNN_EN_2021sep.onnx']
|
509 |
+
[ WARN:[email protected]] global onnx_graph_simplifier.cpp:804 getMatFromTensor DNN: load FP16 model as FP32 model, and it takes twice the FP16 RAM requirement.
|
510 |
+
2220.33 2281.75 2171.61 [1280, 720] CRNN with ['text_recognition_CRNN_CH_2023feb_fp16.onnx']
|
511 |
+
2216.44 2212.48 2171.61 [1280, 720] CRNN with ['text_recognition_CRNN_EN_2023feb_fp16.onnx']
|
512 |
+
2041.65 2209.50 1268.91 [1280, 720] CRNN with ['text_recognition_CRNN_CH_2022oct_int8.onnx']
|
513 |
+
1933.06 2210.81 1268.91 [1280, 720] CRNN with ['text_recognition_CRNN_CN_2021nov_int8.onnx']
|
514 |
+
1826.34 2234.66 1184.53 [1280, 720] CRNN with ['text_recognition_CRNN_EN_2022oct_int8.onnx']
|
515 |
+
```
|
516 |
+
|
517 |
+
### Khadas Edge2 (with RK3588)
|
518 |
+
|
519 |
+
Board specs: [details](https://www.khadas.com/edge2)
|
520 |
+
SoC specs: [details](https://www.rock-chips.com/a/en/products/RK35_Series/2022/0926/1660.html)
|
521 |
+
- CPU: 2.25GHz Quad Core ARM Cortex-A76 + 1.8GHz Quad Core Cortex-A55
|
522 |
+
- NPU (Not supported by OpenCV): Build-in 6 TOPS Performance NPU, triple core, support int4 / int8 / int16 / fp16 / bf16 / tf32
|
523 |
+
|
524 |
+
CPU:
|
525 |
+
|
526 |
+
```
|
527 |
+
$ python3 benchmark.py --all --cfg_exclude wechat --model_exclude license_plate_detection_lpd_yunet_2023mar_int8.onnx:human_segmentation_pphumanseg_2023mar_int8.onnx
|
528 |
+
Benchmarking ...
|
529 |
+
backend=cv.dnn.DNN_BACKEND_OPENCV
|
530 |
+
target=cv.dnn.DNN_TARGET_CPU
|
531 |
+
mean median min input size model
|
532 |
+
2.47 2.55 2.44 [160, 120] YuNet with ['face_detection_yunet_2022mar.onnx']
|
533 |
+
2.81 2.84 2.44 [160, 120] YuNet with ['face_detection_yunet_2022mar_int8.onnx']
|
534 |
+
33.79 33.83 33.24 [150, 150] SFace with ['face_recognition_sface_2021dec.onnx']
|
535 |
+
39.96 40.77 33.24 [150, 150] SFace with ['face_recognition_sface_2021dec_int8.onnx']
|
536 |
+
15.99 16.12 15.92 [112, 112] FacialExpressionRecog with ['facial_expression_recognition_mobilefacenet_2022july.onnx']
|
537 |
+
19.09 19.48 15.92 [112, 112] FacialExpressionRecog with ['facial_expression_recognition_mobilefacenet_2022july_int8.onnx']
|
538 |
+
20.27 20.45 20.11 [224, 224] MPHandPose with ['handpose_estimation_mediapipe_2023feb.onnx']
|
539 |
+
23.14 23.62 20.11 [224, 224] MPHandPose with ['handpose_estimation_mediapipe_2023feb_int8.onnx']
|
540 |
+
34.58 34.53 33.55 [192, 192] PPHumanSeg with ['human_segmentation_pphumanseg_2023mar.onnx']
|
541 |
+
32.78 32.94 31.99 [224, 224] MobileNet with ['image_classification_mobilenetv1_2022apr.onnx']
|
542 |
+
28.38 28.80 24.59 [224, 224] MobileNet with ['image_classification_mobilenetv2_2022apr.onnx']
|
543 |
+
31.49 24.66 24.59 [224, 224] MobileNet with ['image_classification_mobilenetv1_2022apr_int8.onnx']
|
544 |
+
31.45 32.34 24.59 [224, 224] MobileNet with ['image_classification_mobilenetv2_2022apr_int8.onnx']
|
545 |
+
178.87 178.49 173.57 [224, 224] PPResNet with ['image_classification_ppresnet50_2022jan.onnx']
|
546 |
+
197.19 200.06 173.57 [224, 224] PPResNet with ['image_classification_ppresnet50_2022jan_int8.onnx']
|
547 |
+
57.57 65.48 51.34 [320, 240] LPD_YuNet with ['license_plate_detection_lpd_yunet_2023mar.onnx']
|
548 |
+
118.38 132.59 88.34 [416, 416] NanoDet with ['object_detection_nanodet_2022nov.onnx']
|
549 |
+
120.74 110.82 88.34 [416, 416] NanoDet with ['object_detection_nanodet_2022nov_int8.onnx']
|
550 |
+
577.93 577.17 553.81 [640, 640] YoloX with ['object_detection_yolox_2022nov.onnx']
|
551 |
+
607.96 604.88 553.81 [640, 640] YoloX with ['object_detection_yolox_2022nov_int8.onnx']
|
552 |
+
152.78 155.89 121.26 [1280, 720] DaSiamRPN with ['object_tracking_dasiamrpn_kernel_cls1_2021nov.onnx', 'object_tracking_dasiamrpn_kernel_r1_2021nov.onnx', 'object_tracking_dasiamrpn_model_2021nov.onnx']
|
553 |
+
38.03 38.26 37.51 [192, 192] MPPalmDet with ['palm_detection_mediapipe_2023feb.onnx']
|
554 |
+
47.12 48.12 37.51 [192, 192] MPPalmDet with ['palm_detection_mediapipe_2023feb_int8.onnx']
|
555 |
+
46.07 46.77 45.10 [224, 224] MPPersonDet with ['person_detection_mediapipe_2023mar.onnx']
|
556 |
+
195.67 198.02 182.97 [128, 256] YoutuReID with ['person_reid_youtu_2021nov.onnx']
|
557 |
+
181.91 182.28 169.98 [128, 256] YoutuReID with ['person_reid_youtu_2021nov_int8.onnx']
|
558 |
+
394.77 407.60 371.95 [640, 480] DB with ['text_detection_DB_IC15_resnet18_2021sep.onnx']
|
559 |
+
392.52 404.80 367.96 [640, 480] DB with ['text_detection_DB_TD500_resnet18_2021sep.onnx']
|
560 |
+
77.32 77.72 75.27 [1280, 720] CRNN with ['text_recognition_CRNN_CH_2021sep.onnx']
|
561 |
+
82.93 82.93 75.27 [1280, 720] CRNN with ['text_recognition_CRNN_CN_2021nov.onnx']
|
562 |
+
77.51 93.01 67.44 [1280, 720] CRNN with ['text_recognition_CRNN_EN_2021sep.onnx']
|
563 |
+
[ WARN:[email protected]] global onnx_graph_simplifier.cpp:804 getMatFromTensor DNN: load FP16 model as FP32 model, and it takes twice the FP16 RAM requirement.
|
564 |
+
77.02 84.11 67.44 [1280, 720] CRNN with ['text_recognition_CRNN_CH_2023feb_fp16.onnx']
|
565 |
+
75.11 69.82 63.98 [1280, 720] CRNN with ['text_recognition_CRNN_EN_2023feb_fp16.onnx']
|
566 |
+
74.55 73.36 63.98 [1280, 720] CRNN with ['text_recognition_CRNN_CH_2022oct_int8.onnx']
|
567 |
+
75.06 77.44 63.98 [1280, 720] CRNN with ['text_recognition_CRNN_CN_2021nov_int8.onnx']
|
568 |
+
73.91 74.25 63.98 [1280, 720] CRNN with ['text_recognition_CRNN_EN_2022oct_int8.onnx']
|
569 |
+
```
|
570 |
+
|
571 |
+
### Horizon Sunrise X3 PI
|
572 |
+
|
573 |
+
Specs: [details_cn](https://developer.horizon.ai/sunrise)
|
574 |
+
- CPU: ARM Cortex-A53,4xCore, 1.2G
|
575 |
+
- BPU (aka NPU, not supported by OpenCV): (Bernoulli Arch) 2×Core,up to 1.0G, ~5Tops
|
576 |
+
|
577 |
+
CPU:
|
578 |
+
|
579 |
+
```
|
580 |
+
$ python3 benchmark.py --all --cfg_exclude wechat --model_exclude license_plate_detection_lpd_yunet_2023mar_int8.onnx:human_segmentation_pphumanseg_2023mar_int8.onnx
|
581 |
+
Benchmarking ...
|
582 |
+
backend=cv.dnn.DNN_BACKEND_OPENCV
|
583 |
+
target=cv.dnn.DNN_TARGET_CPU
|
584 |
+
mean median min input size model
|
585 |
+
11.04 11.01 10.98 [160, 120] YuNet with ['face_detection_yunet_2022mar.onnx']
|
586 |
+
12.59 12.75 10.98 [160, 120] YuNet with ['face_detection_yunet_2022mar_int8.onnx']
|
587 |
+
140.83 140.85 140.52 [150, 150] SFace with ['face_recognition_sface_2021dec.onnx']
|
588 |
+
171.71 175.65 140.52 [150, 150] SFace with ['face_recognition_sface_2021dec_int8.onnx']
|
589 |
+
64.96 64.94 64.77 [112, 112] FacialExpressionRecog with ['facial_expression_recognition_mobilefacenet_2022july.onnx']
|
590 |
+
80.20 81.82 64.77 [112, 112] FacialExpressionRecog with ['facial_expression_recognition_mobilefacenet_2022july_int8.onnx']
|
591 |
+
80.67 80.72 80.45 [224, 224] MPHandPose with ['handpose_estimation_mediapipe_2023feb.onnx']
|
592 |
+
89.25 90.39 80.45 [224, 224] MPHandPose with ['handpose_estimation_mediapipe_2023feb_int8.onnx']
|
593 |
+
144.23 144.34 143.84 [192, 192] PPHumanSeg with ['human_segmentation_pphumanseg_2023mar.onnx']
|
594 |
+
140.60 140.62 140.33 [224, 224] MobileNet with ['image_classification_mobilenetv1_2022apr.onnx']
|
595 |
+
122.53 124.23 107.71 [224, 224] MobileNet with ['image_classification_mobilenetv2_2022apr.onnx']
|
596 |
+
128.22 107.87 107.71 [224, 224] MobileNet with ['image_classification_mobilenetv1_2022apr_int8.onnx']
|
597 |
+
125.77 123.77 107.71 [224, 224] MobileNet with ['image_classification_mobilenetv2_2022apr_int8.onnx']
|
598 |
+
759.81 760.01 759.11 [224, 224] PPResNet with ['image_classification_ppresnet50_2022jan.onnx']
|
599 |
+
764.17 764.43 759.11 [224, 224] PPResNet with ['image_classification_ppresnet50_2022jan_int8.onnx']
|
600 |
+
283.75 284.17 282.15 [320, 240] LPD_YuNet with ['license_plate_detection_lpd_yunet_2023mar.onnx']
|
601 |
+
408.16 408.31 402.71 [416, 416] NanoDet with ['object_detection_nanodet_2022nov.onnx']
|
602 |
+
408.82 407.99 402.71 [416, 416] NanoDet with ['object_detection_nanodet_2022nov_int8.onnx']
|
603 |
+
2749.22 2756.23 2737.96 [640, 640] YoloX with ['object_detection_yolox_2022nov.onnx']
|
604 |
+
2671.54 2692.18 2601.24 [640, 640] YoloX with ['object_detection_yolox_2022nov_int8.onnx']
|
605 |
+
929.63 936.01 914.86 [1280, 720] DaSiamRPN with ['object_tracking_dasiamrpn_kernel_cls1_2021nov.onnx', 'object_tracking_dasiamrpn_kernel_r1_2021nov.onnx', 'object_tracking_dasiamrpn_model_2021nov.onnx']
|
606 |
+
142.23 142.03 141.78 [192, 192] MPPalmDet with ['palm_detection_mediapipe_2023feb.onnx']
|
607 |
+
179.74 184.79 141.78 [192, 192] MPPalmDet with ['palm_detection_mediapipe_2023feb_int8.onnx']
|
608 |
+
191.41 191.48 191.00 [224, 224] MPPersonDet with ['person_detection_mediapipe_2023mar.onnx']
|
609 |
+
898.23 897.52 896.58 [128, 256] YoutuReID with ['person_reid_youtu_2021nov.onnx']
|
610 |
+
749.83 765.90 630.39 [128, 256] YoutuReID with ['person_reid_youtu_2021nov_int8.onnx']
|
611 |
+
1908.87 1905.00 1903.13 [640, 480] DB with ['text_detection_DB_IC15_resnet18_2021sep.onnx']
|
612 |
+
1922.34 1920.65 1896.97 [640, 480] DB with ['text_detection_DB_TD500_resnet18_2021sep.onnx']
|
613 |
+
470.78 469.17 467.92 [1280, 720] CRNN with ['text_recognition_CRNN_CH_2021sep.onnx']
|
614 |
+
495.94 497.12 467.92 [1280, 720] CRNN with ['text_recognition_CRNN_CN_2021nov.onnx']
|
615 |
+
464.58 528.72 408.69 [1280, 720] CRNN with ['text_recognition_CRNN_EN_2021sep.onnx']
|
616 |
+
[ WARN:[email protected]] global onnx_graph_simplifier.cpp:804 getMatFromTensor DNN: load FP16 model as FP32 model, and it takes twice the FP16 RAM requirement.
|
617 |
+
465.04 467.01 408.69 [1280, 720] CRNN with ['text_recognition_CRNN_CH_2023feb_fp16.onnx']
|
618 |
+
452.90 409.34 408.69 [1280, 720] CRNN with ['text_recognition_CRNN_EN_2023feb_fp16.onnx']
|
619 |
+
450.23 438.57 408.69 [1280, 720] CRNN with ['text_recognition_CRNN_CH_2022oct_int8.onnx']
|
620 |
+
453.52 468.72 408.69 [1280, 720] CRNN with ['text_recognition_CRNN_CN_2021nov_int8.onnx']
|
621 |
+
443.38 447.29 381.90 [1280, 720] CRNN with ['text_recognition_CRNN_EN_2022oct_int8.onnx']
|
622 |
+
```
|
623 |
+
|
624 |
+
### MAIX-III AX-PI
|
625 |
+
|
626 |
+
Specs: [details_en](https://wiki.sipeed.com/hardware/en/maixIII/ax-pi/axpi.html#Hardware), [details_cn](https://wiki.sipeed.com/hardware/zh/maixIII/ax-pi/axpi.html#%E7%A1%AC%E4%BB%B6%E5%8F%82%E6%95%B0)
|
627 |
+
- CPU: Quad cores ARM Cortex-A7
|
628 |
+
- NPU (Not supported by OpenCV): 14.4Tops@int4,3.6Tops@int8
|
629 |
+
|
630 |
+
CPU:
|
631 |
+
|
632 |
+
```
|
633 |
+
$ python3 benchmark.py --all --cfg_exclude wechat --model_exclude license_plate_detection_lpd_yunet_2023mar_int8.onnx:human_segmentation_pphumanseg_2023mar_int8.onnx
|
634 |
+
Benchmarking ...
|
635 |
+
backend=cv.dnn.DNN_BACKEND_OPENCV
|
636 |
+
target=cv.dnn.DNN_TARGET_CPU
|
637 |
+
mean median min input size model
|
638 |
+
98.16 98.99 97.73 [160, 120] YuNet with ['face_detection_yunet_2022mar.onnx']
|
639 |
+
93.21 93.81 89.15 [160, 120] YuNet with ['face_detection_yunet_2022mar_int8.onnx']
|
640 |
+
2093.12 2093.02 2092.54 [150, 150] SFace with ['face_recognition_sface_2021dec.onnx']
|
641 |
+
1845.87 1871.17 1646.65 [150, 150] SFace with ['face_recognition_sface_2021dec_int8.onnx']
|
642 |
+
811.32 811.47 810.80 [112, 112] FacialExpressionRecog with ['facial_expression_recognition_mobilefacenet_2022july.onnx']
|
643 |
+
743.24 750.04 688.44 [112, 112] FacialExpressionRecog with ['facial_expression_recognition_mobilefacenet_2022july_int8.onnx']
|
644 |
+
636.22 635.89 635.43 [224, 224] MPHandPose with ['handpose_estimation_mediapipe_2023feb.onnx']
|
645 |
+
588.83 594.01 550.49 [224, 224] MPHandPose with ['handpose_estimation_mediapipe_2023feb_int8.onnx']
|
646 |
+
2157.86 2157.82 2156.99 [192, 192] PPHumanSeg with ['human_segmentation_pphumanseg_2023mar.onnx']
|
647 |
+
2091.13 2091.61 2090.72 [224, 224] MobileNet with ['image_classification_mobilenetv1_2022apr.onnx']
|
648 |
+
1583.25 1634.14 1176.19 [224, 224] MobileNet with ['image_classification_mobilenetv2_2022apr.onnx']
|
649 |
+
1450.55 1177.07 1176.19 [224, 224] MobileNet with ['image_classification_mobilenetv1_2022apr_int8.onnx']
|
650 |
+
1272.81 1226.00 873.94 [224, 224] MobileNet with ['image_classification_mobilenetv2_2022apr_int8.onnx']
|
651 |
+
15753.56 15751.29 15748.97 [224, 224] PPResNet with ['image_classification_ppresnet50_2022jan.onnx']
|
652 |
+
11610.11 12023.99 8290.04 [224, 224] PPResNet with ['image_classification_ppresnet50_2022jan_int8.onnx']
|
653 |
+
4300.13 4301.43 4298.29 [320, 240] LPD_YuNet with ['license_plate_detection_lpd_yunet_2023mar.onnx']
|
654 |
+
3360.20 3357.84 3356.70 [416, 416] NanoDet with ['object_detection_nanodet_2022nov.onnx']
|
655 |
+
2961.58 3005.40 2641.27 [416, 416] NanoDet with ['object_detection_nanodet_2022nov_int8.onnx']
|
656 |
+
49994.75 49968.90 49958.48 [640, 640] YoloX with ['object_detection_yolox_2022nov.onnx']
|
657 |
+
35966.66 37391.40 24670.30 [640, 640] YoloX with ['object_detection_yolox_2022nov_int8.onnx']
|
658 |
+
19800.14 19816.02 19754.69 [1280, 720] DaSiamRPN with ['object_tracking_dasiamrpn_kernel_cls1_2021nov.onnx', 'object_tracking_dasiamrpn_kernel_r1_2021nov.onnx', 'object_tracking_dasiamrpn_model_2021nov.onnx']
|
659 |
+
1191.81 1192.42 1191.40 [192, 192] MPPalmDet with ['palm_detection_mediapipe_2023feb.onnx']
|
660 |
+
1162.64 1165.77 1138.35 [192, 192] MPPalmDet with ['palm_detection_mediapipe_2023feb_int8.onnx']
|
661 |
+
1835.97 1836.24 1835.34 [224, 224] MPPersonDet with ['person_detection_mediapipe_2023mar.onnx']
|
662 |
+
14886.02 14884.48 14881.73 [128, 256] YoutuReID with ['person_reid_youtu_2021nov.onnx']
|
663 |
+
10491.63 10930.80 6975.34 [128, 256] YoutuReID with ['person_reid_youtu_2021nov_int8.onnx']
|
664 |
+
65681.91 65674.89 65612.09 [640, 480] DB with ['text_detection_DB_IC15_resnet18_2021sep.onnx']
|
665 |
+
65630.56 65652.90 65531.21 [640, 480] DB with ['text_detection_DB_TD500_resnet18_2021sep.onnx']
|
666 |
+
3248.11 3242.59 3241.18 [1280, 720] CRNN with ['text_recognition_CRNN_CH_2021sep.onnx']
|
667 |
+
3330.69 3350.38 3241.18 [1280, 720] CRNN with ['text_recognition_CRNN_CN_2021nov.onnx']
|
668 |
+
3277.07 3427.65 3195.84 [1280, 720] CRNN with ['text_recognition_CRNN_EN_2021sep.onnx']
|
669 |
+
[ WARN:[email protected]] global onnx_graph_simplifier.cpp:804 getMatFromTensor DNN: load FP16 model as FP32 model, and it takes twice the FP16 RAM requirement.
|
670 |
+
3263.48 3319.83 3195.84 [1280, 720] CRNN with ['text_recognition_CRNN_CH_2023feb_fp16.onnx']
|
671 |
+
3258.78 3196.90 3195.84 [1280, 720] CRNN with ['text_recognition_CRNN_EN_2023feb_fp16.onnx']
|
672 |
+
3090.12 3224.64 2353.81 [1280, 720] CRNN with ['text_recognition_CRNN_CH_2022oct_int8.onnx']
|
673 |
+
3001.31 3237.93 2353.81 [1280, 720] CRNN with ['text_recognition_CRNN_CN_2021nov_int8.onnx']
|
674 |
+
2887.05 3224.12 2206.89 [1280, 720] CRNN with ['text_recognition_CRNN_EN_2022oct_int8.onnx']
|
675 |
+
```
|
benchmark/color_table.svg
CHANGED
|
|