代码拉取完成,页面将自动刷新
同步操作将从 Q S/qdu-rm-ai 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
Developing.
软件正处在开发初期,只完成了视觉的核心部分,其余部分正在开发中。
本开源软件为青岛大学未来战队机器人的视觉和人工智能的代码。参考了其他战队代码和各种开源机器人项目,从零编写而成。中心思想:
这样做增加代码了的重用,减少了工作量。实现了通过DLA(深度学习加速器)加速妙算上模型的推断速度。利用行为树实现了可控的复杂行为。
![]() |
---|
YOLO识别效果 |
![]() |
---|
本算法识别效果 |
![]() |
---|
TODO:TensorRT加速效果 |
依赖
libtbb-dev
ninja-build
开发测试环境
安装依赖
ldconfig
获得代码
git clone --recursive https://github.com/qsheeeeen/qdu-rm-ai
# or
git clone --recursive https://gitee.com/qsheeeeen/qdu-rm-ai
编译 & 安装
cd qdu-rm-ai
mkdir build
cd build
cmake ..
make -j8 # 根据CPU选择合适的数字
make install
神经网络(可选)
准备
# 安装本项目需要的Python模块。
pip3 install -r qdu-rm-ai/requirements.txt
# 安装YOLOv5需要的Python模块
pip3 install -r qdu-rm-ai/third_party/yolov5/requirements.txt
训练
# 以下脚本涉及相对路径,需要在此文件夹内运行。
cd qdu-rm-ai/utils
# 处理数据集
python3 roco2x.py --dji-roco-dir=path/to/DJI ROCO/
# 训练导出模型
sh ./train_vision.sh
运行
cd qdu-rm-ai/runtime
# 根据应用选择程序
auto-aim # sentry / radar ...
文件夹 | 内容 | 备注 |
---|---|---|
image | 图片 | 包含效果展示、测设产物等 |
runtime | 运行环境 | 包含运行所需文件,和运行过程产生的文件 |
src | 源代码 | |
tests | 测试代码 | |
third_party | 第三方软件 | |
utils | 工具 | 脚本和文件 |
src内 | 内容 | 备注 |
---|---|---|
app | 应用 | 包含哨兵程序、自瞄算法、雷达程序等 |
behavior | 行为库 | 基于行为树开发的AI |
component | 组件库 | 各类算法和数据结构 |
demo | 样例 | 演示用的例子 |
device | 设备库 | 外接设备的抽象 |
vision | 视觉库 | 目标识别等代码 |
vision内 | 内容 | 备注 |
---|---|---|
classifier | 分类器 | 装甲板分类器 |
compensator | 弹道补偿器 | 三维解算、测距、弹道补偿 |
detector | 探测器 | 装甲板探测、能量机关等的探测器 |
object | 对象类 | 图像对象、物理对象和比赛中抽象出的各种基础对象类 |
params | 参数类 | 可视化调参的参数类 |
predictor | 预测器 | 滤波器和集成的预测器 |
process | 流程 | 对视觉处理其余模块的组合 |
![]() |
---|
视觉程序框图 |
![]() |
---|
行为树演示 |
近期:
修缮好测距模块和弹道补偿器模块
引入神经网络
完成各种滤波器进行平滑化处理,并完成预测器
完成其余兵种任务
远期:
实现类似多级流水线的视觉算法流程。参考文章(等待OpenCV完善架构)
多线程进行生产者消费者调度
优化传统视觉算法和参数增强程序鲁棒性
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。