目录
目录README.md

基于昇思MindSpore的工地智能巡检机器人

项目简介

我们设计了一款工地智能巡检机器人,并将基于MindSpore的YOLO算法部署到ROS中,机器人可实现以下功能:

  • 三维高精度地图构建(基于FAST-LIO)
  • 工地智能巡检,可识别出工地环境中未戴安全帽、未穿安全服的工作人员
  • 自主定位与导航
  • 远程上位机任务分配及控制

image-20241030200455383

环境说明

本项目基于以下环境运行

  • NVIDIA Jetson Orin NX 16GB
  • Ubuntu 21.04
  • Python 3.9
  • MindSpore 2.2.15
  • CUDA 11.4

运行步骤

克隆项目

git clone https://gitlink.org.cn/edl_rain/ms-robot.git

编译ROS工程

# 进入目录
cd ./MindYOLO_ROS

# 编译ROS工程
catkin_make

# 使环环境变量生效
source devel/setup.bash

工地三维地图构建

# 启动ros
roscore

# 启动Livox MID-360激光雷达
roslaunch livox_ros_driver2 msg_MID360.launch

# 构建地图
roslaunch fast_lio_localization sentry_build_map.launch

# 保存地图
rosrun map_server map_saver map:=/projected_map -f ~/work/datasets/map/scans

自主定位与导航

# 启动定位节点
roslaunch fast_lio_localization sentry_localize.launch

# 用rviz发布初始位姿或者 
rosrun fast_lio_localization publish_initial_pose.py 0 0 0 0 0 0

# 启动导航节点
roslaunch sentry_nav sentry_movebase.launch

启动工地安全检测

# 激活conda
conda activate mindspore2.2

# 启动摄像头
rosrun usb_cam usb_cam_node _video_device:="/dev/video0"

# 启动检测(可更改模型与配置文件)
rosrun yolo_detector yolo_detector_node.py --config /home/jetson/work/mindspore2.2/mindyolo/configs/yolov7/yolov7-tiny_shwd.yaml --weight /home/jetson/work/mindspore2.2/mindyolo/weights/yolov7-tiny_shwd-299_250.ckpt --device_target=GPU

打开RVIZ 即可查看检查测结果

rviz

image-20241030200503956

image-20241030200508757


致谢

本项目是基于 MindSpore YOLOv7 教程项目 的 fork 版本。感谢原作者的贡献,当前项目在原始项目的基础上进行了进一步的修改和优化。

原始项目地址:https://github.com/mindspore-lab/mindyolo

关于

基于昇思MindSpore的工地智能巡检机器人

189.8 MB
邀请码