Do not run NPU Demo

Which Khadas SBC do you use?

VIM3

Which system do you use? Android, Ubuntu, OOWOW or others?

Ubuntu

Which version of system do you use? Khadas official images, self built images, or others?

20.04.5 LTS
https://dl.khadas.com/products/vim3/firmware/ubuntu/emmc/vim3-ubuntu-20.04-gnome-linux-4.9-fenix-1.1.2-220930-emmc.img.xz

Please describe your issue below:

I tried to run NPU demo like below.
NPU SDK Usage [Khadas Docs]
NPU Prebuilt Demo Usage [Khadas Docs]

I got the result of NPU demo following.


khadas@Khadas:~/Project/aml_npu_demo_binaries/detect_demo_picture$ ./detect_demo_x11 0 1080p.bmp
W Detect_api:[det_set_log_level:19]Set log level=1
W Detect_api:[det_set_log_level:21]output_format not support Imperfect, default to DET_LOG_TERMINAL
W Detect_api:[det_set_log_level:26]Not exist VSI_NN_LOG_LEVEL, Setenv set_vsi_log_error_level
det_set_log_config Debug
E [vnn_CreateYoloface:168]Open file nn_data/yolo_face_88.nb failed.
E [model_create:60]CHECK PTR 60
E Detect_api:[det_set_model:225]Model_create fail, file_path=nn_data, dev_type=1
det_set_model fail. ret=-4

So I saw to need yolo_face_88.nb file in nn_data directory, I found that in repository from url below.

After I put yolo_face_88.nb file in nn_data directory, I ran again with making script like run.sh. I reviewed demo code from github repository(GitHub - khadas/aml_npu_app)


run.sh

#!/bin/sh
export VSI_NN_LOG_LEVEL=0
./detect_demo_x11 -m 0 -p /home/khadas/Project/aml_npu_demo_binaries/detect_demo_picture/1080p.bmp


khadas@Khadas:~/Project/aml_npu_demo_binaries/detect_demo_picture$ ./run.sh
W Detect_api:[det_set_log_level:19]Set log level=1
W Detect_api:[det_set_log_level:21]output_format not support Imperfect, default to DET_LOG_TERMINAL
det_set_log_config Debug
E Detect_api:[det_set_model:225]Model_create fail, file_path=nn_data, dev_type=1
det_set_model fail. ret=-4


I don’t know why happened model_create fail. Finally, I attach my directory tree.
khadas@Khadas:~/Project/aml_npu_demo_binaries/detect_demo_picture$ tree
.
├── 1080p.bmp
├── detect_demo_fb
├── detect_demo_x11
├── graph.json
├── INSTALL
├── lib
│ ├── libnn_detect.so
│ ├── libnn_facenet.so
│ ├── libnn_yoloface.so
│ ├── libnn_yolo_tiny.so
│ ├── libnn_yolo_v2.so
│ ├── libnn_yolo_v3.so
│ └── libnn_yolo_v4.so
├── nn_data
│ ├── inception_v3.nb
│ ├── mobilenet_tf.nb
│ ├── yolo_face_88.nb
│ └── yolo_face_88.nb_new
├── README.md
├── run.sh
├── test.py
└── UNINSTALL

Could I know what I was wrong? Or what should I do some more?

Post a console log of your issue below:

khadas@Khadas:~/Project/aml_npu_demo_binaries/detect_demo_picture$ ./detect_demo_x11 0 1080p.bmp
W Detect_api:[det_set_log_level:19]Set log level=1
W Detect_api:[det_set_log_level:21]output_format not support Imperfect, default to DET_LOG_TERMINAL
W Detect_api:[det_set_log_level:26]Not exist VSI_NN_LOG_LEVEL, Setenv set_vsi_log_error_level
det_set_log_config Debug
E [vnn_CreateYoloface:168]Open file nn_data/yolo_face_88.nb failed.
E [model_create:60]CHECK PTR 60
E Detect_api:[det_set_model:225]Model_create fail, file_path=nn_data, dev_type=1
det_set_model fail. ret=-4

khadas@Khadas:~/Project/aml_npu_demo_binaries/detect_demo_picture$ ./run.sh
W Detect_api:[det_set_log_level:19]Set log level=1
W Detect_api:[det_set_log_level:21]output_format not support Imperfect, default to DET_LOG_TERMINAL
det_set_log_config Debug
E Detect_api:[det_set_model:225]Model_create fail, file_path=nn_data, dev_type=1
det_set_model fail. ret=-4

Have you follow the steps from docs?

sudo ./INSTALL

Dear numbqq,

That was mistake when downloading from github(git clone --recursive GitHub - khadas/aml_npu_demo_binaries). I wrote except --recursive when doing git clone.
That works well.
Thank you for your reply.