赞
踩
简单说点记录,python要在rk3588安装虚拟环境,
首先我们要知道rk3588环境配置:
Ubuntu 18.04 python3.6/7
Ubuntu 20.04 python3.8/9
Ubuntu 22.04 python3.10/11
我的板子ubantu22.04 所以装python10,,tensorflow2.8.0要单独先下载,转出1.6.0的模型,转的时候要把代码改成rk3588平台,rk3588板子要升级1.6.0版本哦:
sudo cp /home/orangepi/xushuanglong/rknn-toolkit2-master2/rknpu2/runtime/Linux/librknn_api/aarch64/librknnrt.so /usr/lib/librknnrt.so
sudo cp /home/orangepi/xushuanglong/rknn-toolkit2-master2/rknpu2/runtime/Linux/librknn_api/aarch64/librknn_api.so /usr/lib/librknn_api.so
pc端 linux rknn-toolkit2; rk3588板子 aarch rknn_toolkit_lite2
清华源:-i https://pypi.tuna.tsinghua.edu.cn/simple
yolov5 训练的时候选noautoanchor,改激活函数relu,不然一堆乱框。
####### export.py导出onnx时要改,训练不改
def forward(self, x):
z = [] # inference output
for i in range(self.nl):
x[i] = self.m[i](x[i]) # conv
return x
pc上 rknn-toolkit2,onnx导出rknn,要改:
rknn.config(mean_values=[[0, 0, 0]], std_values=[[255, 255, 255]], target_platform='rk3588')
到此,rknn3588模型转换然后到python部署没啥问题了。
c++的话,代码里把CMakeLists.txt里的位置填对,bash编译就完事了。把什么1.6.0 的opencv库, 及librknnrt.so等,粘过来。
要提高摄像头实时fps的话,要写多线程异步提高RK3588的NPU占用率,还有提高NPU,CPU定频命令
查看npu使用率:sudo cat /sys/kernel/debug/rknpu/load
然后就是摄像头,要能支持高频的摄像头才行,比如120fps的摄像头,要把opencv默认的yuyv改为mjep
c++:
// 设置摄像头捕获格式为 MJPG
capture.set(cv::CAP_PROP_FOURCC, cv::VideoWriter::fourcc('M', 'J', 'P', 'G'));
// 设置摄像头分辨率
capture.set(cv::CAP_PROP_FRAME_WIDTH, 640);
capture.set(cv::CAP_PROP_FRAME_HEIGHT, 480);
// 设置摄像头帧率
capture.set(cv::CAP_PROP_FPS, 120);
python:
# 定义摄像头捕获分辨率和帧率 WIDTH, HEIGHT, FPS = 1280, 720, 120 # 初始化摄像头 cap = cv2.VideoCapture(0) cap.set(cv2.CAP_PROP_FOURCC, cv2.VideoWriter_fourcc(*'MJPG')) cap.set(cv2.CAP_PROP_FRAME_WIDTH, WIDTH) cap.set(cv2.CAP_PROP_FRAME_HEIGHT, HEIGHT) cap.set(cv2.CAP_PROP_FPS, FPS) 有问题可联系 最后放结果: python:
python 摄像头实时检测rk3588 65fps
c++:
rk3588,c++摄像头实时检测120fps
赞
踩
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。