leafqycc / rknn-cpp-Multithreading

A simple demo of yolov5s running on rk3588/3588s using c++ (about 142 frames). / 一个使用c++在rk3588/3588s上运行的yolov5s简单demo(142帧/s)。
Apache License 2.0
472 stars 87 forks source link

rk3588 yolov5 npu占用稍微高一点就会出现乱框 #58

Open Czhazha opened 1 week ago

Czhazha commented 1 week ago

之前使用没有npu超过50%的情况,最近想试试最大的路数时,发现有这个问题 image 请问下有人遇到过类似情况吗?就是会乱框,没有任何规律,查了模型输出就是这个乱七八糟的结果。

qianfeng-star commented 5 days ago

路数低是正常吗

Czhazha commented 5 days ago

路数低是正常吗

测过4路也会偶尔出这个问题,概率很低就是。 我查了一下,定位到还是转模型的问题。 走rk官方的rknn_model_zoo里面的方式,就会有这个问题。toolkit用的2.3版本。 现在用别人给了一个1.6的版本,基于toolkit里面的onnx例子转的,能解决这个问题。 我现在还在查,这个1.6版本和官方的有什么差异,因为里面有个yolo.py还做了源码的调整。 另外就是,不知道有没有其他人用其他版本转的,多路不会遇到这个问题。

qianfeng-star commented 5 days ago

应该跟NPU没关系,多线程占用CPU很多,可以看下cpu占用,可能占用过高,然后对yolov5后处理有影响

Czhazha commented 5 days ago

应该跟NPU没关系,多线程占用CPU很多,可以看下cpu占用,可能占用过高,然后对yolov5后处理有影响

感谢回复。 我也怀疑过,所以打印了模型直接的输出,模型输入用的是同一张图片。 发现模型输出,那三个output就会有异常值,还没有走到后处理。