Giter VIP home page Giter VIP logo

rknn-multi-threaded's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

rknn-multi-threaded's Issues

使用自己得模型进行视频推理效果差

我测试得时候图片推理是正常的,但是视频推理就错了,我用你的模型又是正常的,但是视频推理本质就是图片推理吧,所以图片推理正常视频为什么会错,但能想到得问题就是模型问题了,模型最大的问题可能就是没改先验框,所以先验框是必须要修改的?每个模型都需要与自己对应得先验框?还请博主赐教
QQ图片20230809145057

from rknnpool import rknnPoolExecutor

想问一下为什么不是from rknnlite.api import RKNNLite or from rknn.api import RKNN像这样的?还是这意味它包含它们?
还有rknpu和rknnlite之间是什么关系?希望得到你的答案xiexie

改用自己训练的模型后报错

I RKNN: [18:07:17.903] RKNN Runtime Information: librknnrt version: 1.5.0 (e6fe0c678@2023-05-25T08:09:20) I RKNN: [18:07:17.903] RKNN Driver Information: version: 0.8.8 I RKNN: [18:07:17.904] RKNN Model Information: version: 4, toolkit version: 1.5.0+1fa95b5c(compiler version: 1.5.0 (e6fe0c678@2023-05-25T16:15:03)), target: RKNPU v2, target platform: rk3588, framework name: PyTorch, framework layout: NCHW, model inference type: static_shape W RKNN: [18:07:17.905] Model initializer tensor data is empty, name: 762_Resize_input1 W RKNN: [18:07:17.905] Model initializer tensor data is empty, name: 762_Resize_input2 W RKNN: [18:07:17.905] Model initializer tensor data is empty, name: 863_Resize_input1 W RKNN: [18:07:17.905] Model initializer tensor data is empty, name: 863_Resize_input2 ./yolov5s_RK3588_i8.rknn done I RKNN: [18:07:18.350] RKNN Runtime Information: librknnrt version: 1.5.0 (e6fe0c678@2023-05-25T08:09:20) I RKNN: [18:07:18.350] RKNN Driver Information: version: 0.8.8 I RKNN: [18:07:18.351] RKNN Model Information: version: 4, toolkit version: 1.5.0+1fa95b5c(compiler version: 1.5.0 (e6fe0c678@2023-05-25T16:15:03)), target: RKNPU v2, target platform: rk3588, framework name: PyTorch, framework layout: NCHW, model inference type: static_shape W RKNN: [18:07:18.351] Model initializer tensor data is empty, name: 762_Resize_input1 W RKNN: [18:07:18.351] Model initializer tensor data is empty, name: 762_Resize_input2 W RKNN: [18:07:18.351] Model initializer tensor data is empty, name: 863_Resize_input1 W RKNN: [18:07:18.351] Model initializer tensor data is empty, name: 863_Resize_input2 ./yolov5s_RK3588_i8.rknn done I RKNN: [18:07:18.764] RKNN Runtime Information: librknnrt version: 1.5.0 (e6fe0c678@2023-05-25T08:09:20) I RKNN: [18:07:18.764] RKNN Driver Information: version: 0.8.8 I RKNN: [18:07:18.765] RKNN Model Information: version: 4, toolkit version: 1.5.0+1fa95b5c(compiler version: 1.5.0 (e6fe0c678@2023-05-25T16:15:03)), target: RKNPU v2, target platform: rk3588, framework name: PyTorch, framework layout: NCHW, model inference type: static_shape W RKNN: [18:07:18.765] Model initializer tensor data is empty, name: 762_Resize_input1 W RKNN: [18:07:18.765] Model initializer tensor data is empty, name: 762_Resize_input2 W RKNN: [18:07:18.765] Model initializer tensor data is empty, name: 863_Resize_input1 W RKNN: [18:07:18.765] Model initializer tensor data is empty, name: 863_Resize_input2 ./yolov5s_RK3588_i8.rknn done W RKNN: [18:07:19.259] Output(1304): size_with_stride larger than model origin size, if need run OutputOperator in NPU, please call rknn_create_memory using size_with_stride. W RKNN: [18:07:19.282] Output(1304): size_with_stride larger than model origin size, if need run OutputOperator in NPU, please call rknn_create_memory using size_with_stride. W RKNN: [18:07:19.319] Output(1304): size_with_stride larger than model origin size, if need run OutputOperator in NPU, please call rknn_create_memory using size_with_stride. W RKNN: [18:07:19.365] Output(1304): size_with_stride larger than model origin size, if need run OutputOperator in NPU, please call rknn_create_memory using size_with_stride. Traceback (most recent call last): File "main.py", line 35, in <module> frame, flag = pool.get() File "/home/cat/Code/rknn-multi-threaded/rknnpool.py", line 54, in get return fut.result(), True File "/usr/lib/python3.8/concurrent/futures/_base.py", line 444, in result return self.__get_result() File "/usr/lib/python3.8/concurrent/futures/_base.py", line 389, in __get_result raise self._exception File "/usr/lib/python3.8/concurrent/futures/thread.py", line 57, in run result = self.fn(*self.args, **self.kwargs) File "/home/cat/Code/rknn-multi-threaded/func.py", line 208, in myFunc input1_data = outputs[1].reshape([3, -1]+list(outputs[1].shape[-2:])) IndexError: list index out of range W RKNN: [18:07:19.433] Output(1304): size_with_stride larger than model origin size, if need run OutputOperator in NPU, please call rknn_create_memory using size_with_stride.

模型训练用的是从yolov5官方克隆下来的v7.0版本,使用默认export.py 导出torch模型后使用rknn_model_zoo中的model/CV/objection/yolo/RKNN_model_convert文件下的convert.sh文件进行转换

报错原因似乎是size不对?
大佬有空能不能指点一下

推理速度很慢

在firefly的RK3588开发板上,运行python的demo,帧率只有4,5帧,读取一帧视频流就快200ms了,博主知道咋结局这个问题嘛?

运行示例出错:E Catch exception when setting inputs.

错误信息如下,求大佬指点,用的是项目自带的模型,板子是orange pi 5 plus
E Catch exception when setting inputs.
E Catch exception when setting inputs.
E Traceback (most recent call last):
File "/usr/local/lib/python3.10/dist-packages/rknnlite/api/rknn_lite.py", line 200, in inference
self.rknn_runtime.set_inputs(inputs, data_type, data_format, inputs_pass_through=inputs_pass_through)
File "rknnlite/api/rknn_runtime.py", line 1067, in rknnlite.api.rknn_runtime.RKNNRuntime.set_inputs
Exception: The input[0] need 4dims input, but 3dims input buffer feed.

E Traceback (most recent call last):
File "/usr/local/lib/python3.10/dist-packages/rknnlite/api/rknn_lite.py", line 200, in inference
self.rknn_runtime.set_inputs(inputs, data_type, data_format, inputs_pass_through=inputs_pass_through)
File "rknnlite/api/rknn_runtime.py", line 1067, in rknnlite.api.rknn_runtime.RKNNRuntime.set_inputs
Exception: The input[0] need 4dims input, but 3dims input buffer feed.

E Catch exception when setting inputs.
E Traceback (most recent call last):
File "/usr/local/lib/python3.10/dist-packages/rknnlite/api/rknn_lite.py", line 200, in inference
self.rknn_runtime.set_inputs(inputs, data_type, data_format, inputs_pass_through=inputs_pass_through)
File "rknnlite/api/rknn_runtime.py", line 1067, in rknnlite.api.rknn_runtime.RKNNRuntime.set_inputs
Exception: The input[0] need 4dims input, but 3dims input buffer feed.

E Catch exception when setting inputs.
E Traceback (most recent call last):
File "/usr/local/lib/python3.10/dist-packages/rknnlite/api/rknn_lite.py", line 200, in inference
self.rknn_runtime.set_inputs(inputs, data_type, data_format, inputs_pass_through=inputs_pass_through)
File "rknnlite/api/rknn_runtime.py", line 1067, in rknnlite.api.rknn_runtime.RKNNRuntime.set_inputs
Exception: The input[0] need 4dims input, but 3dims input buffer feed.

E Catch exception when setting inputs.
E Traceback (most recent call last):
File "/usr/local/lib/python3.10/dist-packages/rknnlite/api/rknn_lite.py", line 200, in inference
self.rknn_runtime.set_inputs(inputs, data_type, data_format, inputs_pass_through=inputs_pass_through)
File "rknnlite/api/rknn_runtime.py", line 1067, in rknnlite.api.rknn_runtime.RKNNRuntime.set_inputs
Exception: The input[0] need 4dims input, but 3dims input buffer feed.

Traceback (most recent call last):
File "/rknn-multi-threaded/main.py", line 35, in
frame, flag = pool.get()
File "/rknn-multi-threaded/rknnpool.py", line 54, in get
return fut.result(), True
File "/usr/lib/python3.10/concurrent/futures/_base.py", line 451, in result
return self.__get_result()
File "/usr/lib/python3.10/concurrent/futures/_base.py", line 403, in __get_result
raise self._exception
File "/usr/lib/python3.10/concurrent/futures/thread.py", line 58, in run
result = self.fn(*self.args, **self.kwargs)
File "/rknn-multi-threaded/func.py", line 207, in myFunc
input0_data = outputs[0].reshape([3, -1]+list(outputs[0].shape[-2:]))
TypeError: 'NoneType' object is not subscriptable
root@orangepi5plus:/rknn-multi-threaded#

OpenCV出错

在运行build-linux_RK3588.sh时报错
/usr/local/lib/libopencv_stitching.so.4.9.0: error adding symbols: 文件格式错误
修改CMkaelist.txt中OpenCV的路径之后报同样错,OpenCV版本为自己手动安装为4.9.0,请问应该如何修改呢

When adding trackers, the result lags " TPEs + 1" frames

hi @leafqycc , do you try to add trackers like DeepSort? when I infer my model yolov6 + DeepSort, the final result will lag " TPEs + 1" frames. I print the detetction result and tracking results, then I find the detection result of "TPEs + 2" frame is same as the first frame. This leads to the final error. But I don' t know how to solve it.

NPU 使用率异常

您好,我设置并发数量>1 的时候就会出现报错

E RKNN: [06:51:01.403] failed to submit!, op id: 1, op name: Conv:Conv_0, flags: 0x5, task start: 0, task number: 170, run task counter: 0, int status: 0, please try updating to the latest version of the toolkit2 and runtime from: https://eyun.baidu.com/s/3eTDMk6Y (PWD: rknn)

同时查看NPU 使用情况会发现 他并不是使用多个 NPU, 而是单个NPU 100%
image

请问应该如何解决呢?

Add png mask file

Hi, Very nice work and I am impressed by the result on this small RK3588 Sbc. What would be the simplest way to add a png mask.png file to perform the detecting only in the unmaked area and display the final result on the full video?

npu占用率上不去

python推理yolov8s 发现不管是9线程还是6线程 npu占用率始终在80以下,改动了Func后处理部分其他代码均未改动,大佬有大概思路知道问题所在吗

大佬您好,请教一下您运行后终端出现这个信息是怎么回事?

W RKNN: [03:07:58.718] Output(output0): size_with_stride larger than model origin size, if need run OutputOperator in NPU, please call rknn_create_memory using size_with_stride.
W RKNN: [03:07:58.718] Output(283): size_with_stride larger than model origin size, if need run OutputOperator in NPU, please call rknn_create_memory using size_with_stride.
W RKNN: [03:07:58.718] Output(285): size_with_stride larger than model origin size, if need run OutputOperator in NPU, please call rknn_create_memory using size_with_stride.
W RKNN: [03:07:58.751] Output(output0): size_with_stride larger than model origin size, if need run OutputOperator in NPU, please call rknn_create_memory using size_with_stride.
W RKNN: [03:07:58.752] Output(283): size_with_stride larger than model origin size, if need run OutputOperator in NPU, please call rknn_create_memory using size_with_stride.
W RKNN: [03:07:58.752] Output(285): size_with_stride larger than model origin size, if need run OutputOperator in NPU, please call rknn_create_memory using size_with_stride.

rk3568应该怎么玩,谢谢

请切换到root用户

CPU定频

echo "CPU0-3 可用频率:"
sudo cat /sys/devices/system/cpu/cpufreq/policy0/scaling_available_frequencies
sudo echo userspace > /sys/devices/system/cpu/cpufreq/policy0/scaling_governor
sudo echo 1992000 > /sys/devices/system/cpu/cpufreq/policy0/scaling_setspeed
echo "CPU0-3 当前频率:"
sudo cat /sys/devices/system/cpu/cpufreq/policy0/cpuinfo_cur_freq

NPU定频

echo "NPU 可用频率:"
sudo cat /sys/class/devfreq/fde40000.npu/available_frequencies
sudo echo userspace > /sys/class/devfreq/fde40000.npu/governor
sudo echo 900000000 > /sys/class/devfreq/fde40000.npu/userspace/set_freq
echo "NPU 当前频率:"
sudo cat /sys/class/devfreq/fde40000.npu/cur_freq
参照3588的定频脚本,对3568做了以上修改,帧率无变化。
貌似3568不支持多核,在rknnpool.py文件中都修改成了RKNNLite.NPU_CORE_AUTO
现在RKNNLite 为1.6版本,ubuntu20,

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.