RE: NPU Demo and source code

我的意思是,我现在可以修改和编译。
我可以跑。
但是当我运行程序detect_demo时,
它停止如上清单

prepare 1080p image ok
[ HANG ]

@RichardG 你将你编译生成的.so和.nb复制到 https://gitlab.com/khadas/aml_npu_demo_binaries 里面替换了么

谢谢。
可以了。
在1920x1080 rtsp视频流上以8 fps的速度运行。
如何显示NPU负载?

@RichardG 目前没有显示NPU负载的方法

谢谢。
这是我们跑步的视频
https://youtu.be/A0b0toV0k1E Khadas VIM3 Yolo

Thank you.
Here is the video of our run
https://youtu.be/A0b0toV0k1E Khadas VIM3 Yolo

3 Likes

Oh you’re in Singapore - cool! :smile:

haha yes, and you? in SG or PRC?

PRC at the moment :smile:

Hi Frank,

我发现yolo示例无法检测车牌,是否有一个示例可以检测车辆牌。
如果没有任何示例,该怎么办?使用yolov3进行训练并将yolov3模型转换为Khadas?
感谢任何建议。

@ahmetkemal You should move it to a new topic.THX

@RichardG 是的,示例里面没有做关于车牌的检测。车牌的检测是需要做专门的训练,而且需要使用专门的模型。是跟物体检测使用的卷积网络是不同的。如果你有车牌识别的需要,你需要自己训练一个网络。转成NPU支持的代码,可以通过SDK转换。但是转换完以后未必可以替换进yolo的demo里。毕竟使用的原理是不用。输出也是不同的。你可能还需要自己专门写一写接口去实现这个过程。

谢谢。
我正在尝试转换yolov3权重。
步骤0和步骤1,执行没有错误。
但是步骤2有以下错误

ValueError: File “yolov3.quantize” is missing.

这个正确吗?

#!/bin/bash

NAME=yolov3
ACUITY_PATH=…/bin/

tensorzone=${ACUITY_PATH}tensorzonex

#asymmetric_quantized-u8 dynamic_fixed_point-8 dynamic_fixed_point-16
$tensorzone
–action quantization
–source text
–source-file ./val.txt
–channel-mean-value ‘0 0 0 256’
–model-input ${NAME}.json
–model-data ${NAME}.data
–quantized-dtype dynamic_fixed_point-8
–quantized-rebuild

$tensorzone
–action inference
–source text
–source-file ./val.txt
–channel-mean-value ‘0 0 0 256’
–model-input ${NAME}.json
–model-data ${NAME}.data
–dtype quantized

I Start tensor porvider …
2019-12-13 11:49:43.885146: W tensorflow/core/framework/allocator.cc:108] Allocation of 2215116800 exceeds 10% of system memory.
2019-12-13 11:49:45.565635: W tensorflow/core/framework/allocator.cc:108] Allocation of 2215116800 exceeds 10% of system memory.
2019-12-13 11:49:46.195827: W tensorflow/core/framework/allocator.cc:108] Allocation of 2236467200 exceeds 10% of system memory.
2019-12-13 11:49:46.945798: W tensorflow/core/framework/allocator.cc:108] Allocation of 1107558400 exceeds 10% of system memory.
2019-12-13 11:51:28.140472: W tensorflow/core/framework/allocator.cc:108] Allocation of 1107558400 exceeds 10% of system memory.
I Clean.
D Saving input_0_out0_100_3_416_416.tensor
D Saving output_199_out0_100_18_13_13.tensor
D Saving output_225_out0_100_18_26_26.tensor
D Saving output_251_out0_100_18_52_52.tensor
I ----------------Warning(0)----------------
stratton:root:/synnfs/khadas/npu/aml_npu_sdk/acuity-toolkit/conversion_scripts >
stratton:root:/synnfs/khadas/npu/aml_npu_sdk/acuity-toolkit/conversion_scripts >
stratton:root:/synnfs/khadas/npu/aml_npu_sdk/acuity-toolkit/conversion_scripts >
stratton:root:/synnfs/khadas/npu/aml_npu_sdk/acuity-toolkit/conversion_scripts >./2_export_case_code.sh
ValueError: File “yolov3.quantize” is missing.

@RichardG 你执行完3个脚本,生成需要的文件了么,我在文档上写名了如何转换的。

可以编译
libnn_yolo_v3.so

但是 没有 detect_demo binary 制文件使用
libnn_yolo_v3.so

他们都在用
libnn_detect .so ??

strings detect_demo_khadas / detect_demo_uvc | grep libnn
libnn_detect.so

ldd detect_demo_khadas / detect_demo_uvc | grep libnn
libnn_detect.so => /usr/lib/libnn_detect.so(0x0000007fa3162000)

@RichardG 你这样子是看不到的,你可以尝试运行./UNINSTALL,然后删除lib目录的libnn_yolo_v3.so。再INSTALL,是跑不起来的

谢谢
它是否正确?

change the lastest value of size[3] to num_class*3

@RichardG 你想表达的而是什么意思

num_class*3 or
(num_class+5)*3 ?

哪一个是正确的?
还是两者都正确?

====
没关系
可以跑了

谢谢

感谢您的支持。

我们设法运行了定制模型。

这是录音

Thanks for your support.

We have managed to run customised model.

Here is the recording

7 Likes

Hi there, what is the inference time using 5 TOPS NPU and full Yolov3 model? Is it capable of achieving real-time FPS? Thanks.