windows11中onnx转换为rknn文件的详细方法

内容分享12小时前发布 Aralelala
0 0 0

windows11中onnx转换为rknn文件的详细方法

1.wsl本机进行转换

用管理员身份打开powershell输入指令

wsl --install
#下载完成后电脑重启
​
#在(普通)PowerShell里依次执行:
wsl --version            # 看看是否能正常显示版本信息
wsl --set-default-version 2
wsl --list --online      # 看可用的发行版名称
#安装 Ubuntu(首选 22.04)
#尝试在线安装:
wsl --install -d Ubuntu-22.04

WSL 的 Ubuntu 正在首启,屏幕上停在:

Enter new UNIX username:

输入用户名和密码创建linux账号

1.1安装python环境和工具链

sudo apt update
sudo apt install -y python3-venv python3-pip
python3 -m venv ~/rk && source ~/rk/bin/activate
python -m pip install -U pip
# 一定用官方 PyPI,镜像常缺 rknn-toolkit2
pip config set global.index-url https://pypi.org/simple
​
# 安装转换所需依赖
pip install --no-cache-dir "protobuf<4" onnx onnxsim rknn-toolkit2
​
# 自检
python -c "from rknn.api import RKNN; print('RKNN-Toolkit2 OK')"

1.2进入工程文件进行转换

cd  convert_to_rknn.py所在文件夹
python convert_to_rknn.py
ls -lh *.rknn

以后进入环境:

wsl -d "Ubuntu 22.04 LTS" 进入发行版
source ~/rk/bin/activate 激活虚拟环境。

2.虚拟机转换

下载vmware,并下载ubuntu,将文件传送到ubuntu系统中,执行一些列linux转换指令即可转换成功

3.开发板自行转换

3.1先找到开发板的 IP

选一种最方便的方法:

有显示器/键盘接在板子上:

hostname
ip -4 addr show | grep -oE 'inet [0-9.]+' | awk '{print $2}'
# 记下例如 192.168.1.123

无显示器(纯远程):

到路由器管理页里看“已连接设备”列表,找到 RK3588/你的板子,记下它的 IP。

或在 Windows PowerShell 里先看 ARP 表:

arp -a

看看新出现的 192.168..地址有哪些。

如果你的镜像启了 mDNS(Avahi),可以试试:

ping topeet.local
ssh 用户名@topeet.local

(很多 Windows 机器默认不解析
.local
,所以不一定行。)

不知道“用户名”?不少镜像首次开机会让你创建;如果是出厂默认,常见有:
rock/rock
(Radxa/ROCK)、
orangepi/orangepi
(OPi)、
topeet/topeet
(rk3588)、
firefly/firefly
(火焰)、
ubuntu/ubuntu
(Ubuntu 服务器,首登强制改密)。登陆后立刻
passwd
改密码。

3.2确认 SSH 服务已开启(只做一次)

能连上串口/屏幕的话,在板子上执行:

sudo systemctl enable --now ssh

3.3在 Windows 上创建远端目录并拷文件

强烈建议先
cd
到文件所在目录
,这样就不用处理 Windows 路径里的冒号和反斜杠问题。

# 在你电脑上
cd 文件所在目录
# 假设板子 IP 是 192.168.1.123,用户名叫 user
ssh user@192.168.1.123 "mkdir -p ~/deploy_rk3588"
# 逐个拷贝
scp best.onnx user@192.168.1.123:~/目录/
scp dataset.txt user@192.168.1.123:~/目录/
scp convert_to_rknn.py user@192.168.1.123:~/目录/

如果你非要用绝对路径,也可以,但要加引号

scp "D:helmetyolov8-safety-helmet-detection-maindeploy_rk3588est.onnx" `
    user@192.168.1.123:~/deploy_rk3588/

3.4上板转换/推理

ssh user@192.168.1.123
python3 -m venv ~/rk && source ~/rk/bin/activate
python -m pip install -U pip
pip config set global.index-url https://pypi.org/simple
pip install --no-cache-dir "protobuf<4" onnx onnxsim rknn-toolkit2
​
cd ~/deploy_rk3588
python 需要转换的文件名
ls -lh *.rknn

推荐使用第一种方法

 

© 版权声明

相关文章

暂无评论

none
暂无评论...