D-Robotics
USX51算力飞控是由D-Robotics的 RDK X5 Module组成,其提供10TOPS INT8的BPU AI算力和21.6 DMIPS/MHz的CPU通用计算能力。D-Robotics面向机器人厂商和生态开发者推出了基于TogetheROS.Bot的智能算法包,旨在提升基于D-Robotics RDK机器人操作系统进行机器人智能算法集成和落地的效率。
算法汇总
以下是部分算法示例汇总表格:
| 分类 | 具体算法 |
|---|---|
| 目标检测 | FCOS、YOLO、MobileNet_SSD、EfficientNet_Det、YOLO-World、DOSOD |
| 图像分类 | mobilenetv2 |
| 图像分割 | mobilenet_unet、Ultralytics YOLOv8-Seg、EdgeSAM 分割一切、MobileSAM 分割一切 |
| 人体识别 | 人体检测和跟踪、人手关键点检测、手势识别、人脸年龄检测、人脸 106 关键点检测、人体实例跟踪、人体检测和跟踪 (Ultralytics YOLO Pose)、人手关键点及手势识别 (mediapipe) |
| 空间感知 | 单目高程网络检测、单目 3D 室内检测、视觉惯性里程计算法、双目深度算法、双目 OCC 算法 |
| 智能语音 | 智能语音、Sensevoice |
| 生成式大模型 | llama.cpp、InternVL3、Smolvlm2、Qwen2.5 |
| 建图导航 | SLAM-Toolbox建图、Navigation2 |
| 交互控制 | 姿态检测、人体跟随、手势控制、语音控制、语音追踪 |
| 智能终端 | RTSP视频智能盒子、视觉语音盒子 |
| 其他算法 | CLIP文本图片特征检索、Mono-PwcNet光流估计 |
YOLO示例
YOLO目标检测算法示例使用图片作为输入,利用BPU进行算法推理,发布包含目标类别和检测框的算法msg。目前支持YOLOv2、YOLOv3、Ultralytics YOLOv5、YOLOv5x、Ultralytics YOLOv8、YOLOv10等版本。
| 模型 | 平台 | 输入尺寸 | 推理帧 率(fps) |
|---|---|---|---|
| yolov2 | X5 | 1x608x608x3 | 38.33 |
| yolov3 | X5 | 1x416x416x3 | 31.28 |
| yolov5 | X5 | 1x512x512x3 | 10.37 |
| yolov8n | X5 | 1x3x640x640 | 140.46 |
| yolov10n | X5 | 1x3x640x640 | 36.47 |
代码仓库 https://github.com/D-Robotics/hobot_dnn
模型使用COCO数据集进行训练,支持的目标检测类型包括人、动物、水果、交通工具等共80种类型。
也可以使用Ultralytics软件包来进行自定义数据集的训练. https://docs.ultralytics.com/zh/modes/train
自定义模型量化部署
目前在GPU上训练的模型大部分都是浮点模型,即参数使用的是float类型存储;D-Robotics BPU架构的处理器使用的是 INT8 的计算精度(业内处理器的通用精度),只能运行定点量化模型。
D-Robotics 算法工具链主要使用的是训练后量化PTQ方法,只需使用一批校准数据对训练好的浮点模型进行校准, 将训练过的FP32网络直接转换为定点计算的网络,此过程中无需对原始浮点模型进行任何训练,只对几个超参数调整就可完成量化过程, 整个过程简单快速, 目前在端侧和云侧场景已得到广泛应用。
更多信息请查阅D-Robotics 算法工具链开发指南 https://developer.d-robotics.cc/rdk_doc/Advanced_development/toolchain_development/overview
问题求助
在开始无人机AI算法开发前,推荐先详细阅读D-Robotics社区官方文档 https://developer.d-robotics.cc/rdk_doc/RDK
在AI算法工具链使用过程中,若遇到问题可以去D-Robotics官方论坛 https://forum.d-robotics.cc/ 搜索或创建相关问题帖子。