当前位置: 首页 > news >正文

RDK新一代模型转换可视化工具!!!

作者:SkyXZ

CSDN:SkyXZ~-CSDN博客

博客园:SkyXZ - 博客园

        之前在使用的RDK X3的时候,吴诺老师@wunuo发布了新一代量化转换工具链使用教程,这个工具真的非常的方便,能非常快速的完成X3上模型的量化,唯一的缺点便是不支持X5,于是我便想着仿照老师的X3可视化工具链来弄一个适配X5的可视化量化转换工具链,我的初步构想便是这个可视化工具链能够逐步适配地瓜ModelZoo里的所有模型实现一站式从模型的训练到模型的转换最后到部署,使之能够更加轻松便捷的服务新拿到RDK的同学们,于是在经过一段时间的努力后,我的工具链初版完成啦!,可遗憾的是目前模型训练和模型导出部分仅支持YOLO的系列,其他的模型诸如ResNet、FCOS则暂时不支持从训练到转换,但是由于模型的量化和转化部分的自由度非常的高,现在应该是能覆盖绝大多数模型的转换了!

        现在这个版本非常的粗糙,本来都有点不敢发出来的,希望大家能够多多提出意见帮助这个项目改进!(qaq:JS真的太难了)

  • 项目地址:https://github.com/xiongqi123123/RDK_ToolChain.git (求求Star~仓库中仅有前后端代码没有修改过的模型及权重文件,完整版请从网盘下载)
  • 项目网盘:https://pan.baidu.com/s/1fz_DueWNr3uKDLO7KkNwZw?pwd=7jy3

使用方法:

        默认启动地址:127.0.0.1:5000

        Docker安装详见:Linux下Docker及Nvidia Container ToolKit安装教程 - SkyXZ - 博客园

  1. Docker使用(推荐):
# step 1 拉取docker镜像(阿里云仓库)
docker pull crpi-0uog49363mcubexr.cn-hangzhou.personal.cr.aliyuncs.com/skyxz/rdk_toolchain:v1.3
# step 2 创建文件夹映射
mkdir ~/dataset
export dataset_path=~/dataset
# Run-Method-1 临时创建容器(自行修改--shm-size配置)
docker run -it --rm --gpus all --shm-size=32g --ipc=host -e PYTORCH_CUDA_ALLOC_CONF=max_split_size_mb:128 -e CUDA_LAUNCH_BLOCKING=1 -p 5000:5000 -p 8080:8080 -v "$dataset_path":/data crpi-0uog49363mcubexr.cn-hangzhou.personal.cr.aliyuncs.com/skyxz/rdk_toolchain:v1.3
# Run-Method-2 永久创建容器(自行修改--shm-size配置)
docker run -it --rm --gpus all --shm-size={你的内存大小例如:32g} --ipc=host -e PYTORCH_CUDA_ALLOC_CONF=max_split_size_mb:128 -e CUDA_LAUNCH_BLOCKING=1 -p 5000:5000 -p 8080:8080 -v "$dataset_path":/data crpi-0uog49363mcubexr.cn-hangzhou.personal.cr.aliyuncs.com/skyxz/rdk_toolchain:v1.3
  1. 手动构建docker镜像:
# step 1 :从百度云下载源码(仓库中仅有前端后端实现)
https://pan.baidu.com/s/1fz_DueWNr3uKDLO7KkNwZw?pwd=7jy3
# step 2 解压并进入项目目录
# step 3 构建docker
docker build -t rdk_toolchain .
# step 4 创建文件夹映射
mkdir ~/dataset
export dataset_path=~/dataset
# Run-Method-1 临时创建容器(自行修改--shm-size配置)
docker run -it --rm --gpus all --shm-size=32g --ipc=host -e PYTORCH_CUDA_ALLOC_CONF=max_split_size_mb:128 -e CUDA_LAUNCH_BLOCKING=1 -p 5000:5000 -p 8080:8080 -v "$dataset_path":/data crpi-0uog49363mcubexr.cn-hangzhou.personal.cr.aliyuncs.com/skyxz/rdk_toolchain:v1.3
# Run-Method-2 永久创建容器(自行修改--shm-size配置)
docker run -it --rm --gpus all --shm-size={你的内存大小例如:32g} --ipc=host -e PYTORCH_CUDA_ALLOC_CONF=max_split_size_mb:128 -e CUDA_LAUNCH_BLOCKING=1 -p 5000:5000 -p 8080:8080 -v "$dataset_path":/data crpi-0uog49363mcubexr.cn-hangzhou.personal.cr.aliyuncs.com/skyxz/rdk_toolchain:v1.3
  1. 直接下载源码使用:
# step 1 :从百度云下载源码(仓库中仅有前端后端实现)
https://pan.baidu.com/s/1fz_DueWNr3uKDLO7KkNwZw?pwd=7jy3
# step 2 : 安装依赖
pip3 install -r requirements_docker.txt
# step 3 :运行脚本即可
bash start_services.sh

注意事项:

  1. 当前页面的任务正在进行的时候请不要切换至其他页面!切至其他页面后再切回本页面无法恢复原先内容!也无法结束进行中的进程了!
  2. 当停止某项操作时(如停止训练)有时停止按钮可能会卡住无反应,这不是卡死了!这是后台正在尝试杀死进程中,几秒后再次点击停止即可退出!
  3. 当遇到无法结束进程或是在任务进行中切换至其他页面时请停止Docker以结束后台正在运行中的进程!
  4. 部分日志输出为红色不一定是报错!进程是否因为报错结束请以训练状态标志为准!
  5. 除了模型导出的onnx会放在原pt模型路径下之外,其他所有运行的结果将保存在/app/logs下

版本介绍:

V1.0:
  1. 已支持所有模型的量化转换操作
  2. 已完成ModelZoo中YOLO全系列的训练与导出实现
  3. 即将支持ResNet系列模型、FCOS等模型(TODO V2.0)
  4. 即将实现PC端转换后模型推理检查(TODO V2.0)

地瓜机器人RDK模型一站式开发工具功能展示:

  • 工具总览:
    在这里插入图片描述

  • 模型训练:

在这里插入图片描述

  • 模型导出
    在这里插入图片描述

  • 模型量化检查

在这里插入图片描述

  • 模型转换

在这里插入图片描述

  • 反量化节点摘除

在这里插入图片描述

  • 模型输入输出情况及可视化检查

在这里插入图片描述

http://www.lryc.cn/news/534983.html

相关文章:

  • JVM春招快速学习指南
  • C#中的序列化和反序列化
  • xcode常见设置
  • PG高可用学习@2
  • centos 8和centos 9 stream x64的区别
  • C++基础学习记录—类
  • 云原生时代的后端开发:架构、工具与最佳实践
  • ARM Cortex-M3/M4 权威指南 笔记【一】技术综述
  • 12.项目结构
  • 保研考研机试攻略:python笔记(4)
  • 高阶C语言|枚举与联合
  • 【天梯赛】L1-104 九宫格(C++)
  • 现代C++多线程基础 -忆苦思甜pthread_mutex
  • soular基础教程-使用指南
  • 网络安全网格架构(CSMA) 网络安全框架csf
  • 基于DeepSeek API和VSCode的自动化网页生成流程
  • 【AI时代】Page Assist - 本地 AI 模型的 Web UI (谷歌浏览器) 本地DeepSeek启用联网功能
  • 电脑IP地址自定义
  • python卷积神经网络人脸识别示例实现详解
  • EX_25/2/11
  • 二.2 整数表示(2.1-2.4)
  • 中间件-安装Minio-集成使用(ubantu-docker)
  • 夸克网盘多链接批量保存,自动同步更新,批量分享
  • 2025清华:DeepSeek从入门到精通.pdf(附下载)
  • 【AIGC】在VSCode中集成 DeepSeek(OPEN AI同理)
  • android动态设置是否允许应用卸载
  • 基于微信小程序的博物馆预约系统的设计与实现
  • 使用NPOI自定义导出excel文件
  • 基于vue2 的 vueDraggable 示例,包括组件区、组件放置区、组件参数设置区 在同一个文件中实现
  • 使用rknn进行facenet部署