yolo_ros

在 ROS 2 里一行启动 YOLO 检测,图像进结果出

开源 🏷️完全免费 🔧 仅开源项目,无在线服务,需自行部署 计算机视觉 🍴 复刻 276 🐛 待处理 2 👀 关注 5
访问官网 ↗ GitHub ↗
GitHub 星标 ★ 1155
维护状态 活跃
是否开源 开源
定价模式 🏷️完全免费 开源免费,基于AGPL-3.0许可证

项目预览

yolo_ros 项目界面预览图
图片来源:GitHub 官方仓库名片

项目数据

分类计算机视觉
开发团队mgonzs13
定价模式🏷️完全免费
价格说明开源免费,基于AGPL-3.0许可证
访问状态🔧 仅开源项目,无在线服务,需自行部署
是否开源是
开源协议MIT
主要语言C++
技术栈/模型3d-human-pose-estimation,3d-object-detection,human-pose-estimation,instance-segmentation,obb,object-detection,object-tracking,oriented-bounding-box,ros2,ultralytics,yolo,yolo-world,yolo26,yoloe,yolov10,yolov11,yolov12,yolov8,yolov9
GitHub 星标★ 1155
上线时间2023-02-21 00:00:00
代码更新2026-10-29
仓库体积3.8 MB
本站数据更新2026-11-03
维护状态活跃
收录时间2026-09-13
浏览次数3

项目介绍

yolo_ros 是把 Ultralytics YOLO 系列模型(YOLOv8/v9/v10/v11/v12)封装成 ROS 2 节点的开源项目,解决机器人开发者需要在 ROS 2 系统中快速接入目标检测、实例分割、姿态估计、OBB 旋转框和 3D 检测等视觉能力的问题。它提供标准化的发布/订阅接口,把图像话题输入直接转成检测结果话题输出,支持多种任务类型和模型切换,省去自己写推理节点、消息转换和参数配置的重复工作。项目用 Python 实现,依赖 Ultralytics 库,可配合深度相机或点云做 3D 检测与人体姿态估计,适合移动机器人、机械臂抓取、自动驾驶感知等场景快速验证。

Star 增长趋势

本站每日记录该项目 GitHub 星标变化,观测越久曲线越完整

数据来源:GitHub API 逐日快照 · 收录于 2026-09-13 · 当前星标 ★ 1155

使用教程

ℹ 本教程由 AI 依据该项目 README 整理,个别步骤可能需要按你的环境微调。

难度:进阶 约 30 分钟 部署方式:本地安装 7 步

环境要求

  • ROS 2 环境(README 提供 Humble 分支 main 的构建测试)
  • 已配置的 ROS 2 工作空间(README 示例路径为 ~/ros2_ws)
  • Python 3 与 pip3(使用旧版 pip/rosdep 安装方式时需要)
  • Docker(使用 Docker 方式构建运行容器时需要)
  • NVIDIA Container Toolkit 与 CUDA GPU(可选,容器内加速需要)

安装与启动步骤

  1. 1获取项目源码

    把仓库放到 ROS 2 工作空间的 src 目录下,README 中使用的路径是 ~/ros2_ws/src/yolo_ros。

    git clone https://github.com/mgonzs13/yolo_ros.git ~/ros2_ws/src/yolo_ros
  2. 2安装 uv 工具

    README 推荐的安装方式,用官方脚本安装 uv,并重新加载 shell 配置使其生效。

    curl -LsSf https://astral.sh/uv/install.sh | sh
    source ~/.bashrc
  3. 3同步虚拟环境

    进入 yolo_ros 包目录,创建带系统站点包的 .venv,并按 pyproject.toml 同步依赖(不安装项目本身与 dev 依赖)。

    cd ~/ros2_ws/src/yolo_ros/yolo_ros
    uv venv --python python3 --system-site-packages .venv
    uv sync --no-install-project --no-dev
  4. 4安装 rosdep 依赖

    回到工作空间根目录,用 rosdep 安装 apt 安装器对应的系统依赖,-r 忽略错误、-y 自动确认。

    cd ~/ros2_ws
    rosdep install --from-paths src --ignore-src --filter-for-installers "apt" -r -y
  5. 5构建工作空间

    在 ~/ros2_ws 下用 colcon build 构建;已装 uv 时会自动管理虚拟环境,未装则用系统 Python。

    cd ~/ros2_ws
    colcon build
  6. 6构建 Docker 镜像

    在仓库根目录执行 docker build 生成 yolo_ros 镜像,镜像名与 README 中一致。

    docker build -t yolo_ros .
  7. 7运行 Docker 容器

    以交互方式启动容器,--rm 退出即删除;用 GPU 需先装 NVIDIA Container Toolkit 并加 --gpus all。

    docker run -it --rm --gpus all yolo_ros

如何确认成功

uv sync 与 rosdep 安装无报错、colcon build 构建成功,或 docker run 后成功进入容器交互终端即可。

常见问题

Q:uv 安装和旧的 pip 安装该选哪个?

A:优先用 uv(README 推荐),它会在包源码树内创建并同步隔离虚拟环境;pip 和 rosdep 方式为旧方案,依赖装进系统环境,可能出现 Python 包版本冲突。

Q:不装 uv 时依赖怎么装?

A:在 ~/ros2_ws/src/yolo_ros/yolo_ros 下执行 pip3 install -r requirements.txt --break-system-packages;或用旧 rosdep 方式:先 pip3 install lap,再执行 PIP_BREAK_SYSTEM_PACKAGES=1 rosdep install --from-paths src --ignore

Q:Docker 里怎么启用 GPU?

A:先安装 NVIDIA Container Toolkit,然后在 docker run 时加上 --gpus all 参数,否则容器只能使用 CPU 运行。

注意事项

  • uv 是 README 推荐方式,会保证 pyproject.toml 中声明的 Python 依赖版本一致。
  • 未安装 uv 时 colcon build 会跳过虚拟环境管理,节点改用系统 Python 解释器运行。
  • 旧版 pip 安装需带 --break-system-packages,旧版 rosdep 安装需设置 PIP_BREAK_SYSTEM_PACKAGES=1。
  • README 中的 ~/ros2_ws 是示例工作空间路径,请按自己的实际路径替换。

核心亮点

  • 覆盖 YOLOv8 到 v12 多版本,检测/分割/姿态/OBB/3D 任务一站式支持
  • 标准 ROS 2 话题接口,图像输入检测输出,接入现有机器人系统成本低
  • Python 实现依赖 Ultralytics,模型替换和参数调整直观,上手快

不足之处

  • Python 推理节点在高帧率或大模型下实时性不如 C++ 方案
  • 3D 检测和姿态估计依赖深度/点云输入,配置门槛相对较高

适用场景

  • 移动机器人用摄像头做行人、障碍物实时检测
  • 机械臂视觉抓取中做目标检测与 OBB 位姿估计
  • 服务机器人或巡检机器人做人体姿态与行为感知

替代项目

ros2_yolo、darknet_ros、vision_msgs

上一篇:TagLab

下一篇:camera.ui

同类项目推荐

Text-Grab 开源

Windows 上按一下就能抓取屏幕任意文字,即取即用

Use OCR in Windows quickly and easily with Text Grab. With optional background proce···

★ 5072 2026-08-10
3dgrut 开源

给高斯泼溅加上光线追踪,渲染出真实反射与阴影

Ray tracing and hybrid rasterization of Gaussian particles

★ 2485 2026-09-17
AnomalyDINO 开源

用少量正常样本,精准揪出图像中的异常区域

[WACV2025] AnomalyDINO: Boosting Patch-based Few-shot Anomaly Detection with DINOv2

★ 272 2026-08-09
Looking-Back-OCR 开源

用 AI 把越南语古籍旧书扫描件转成可编辑文字

Công cụ OCR tài liệu, sách xưa tiếng Việt bằng Gemini hoặc Meta AI.

★ 120 2026-09-19
pyod 开源

一站式异常检测库,60+算法开箱即用,自动选最优模型

A Python library for anomaly detection across tabular, time series, graph, text, ima···

★ 10074 2026-08-09
Pair-VPR 开源

用视觉Transformer让机器人认路更准,不怕光照季节变化

[IEEE RA-L 2025] The official repository for Pair-VPR: Place-Aware Pre-training and ···

★ 67 2026-08-09
GestureGAN 开源

上传一张手势图,一键生成指定新手势,背景身份不变

[ACM MM 2018 Oral] GestureGAN for Hand Gesture-to-Gesture Translation in the Wild

★ 176 2026-08-09
Remote-Sensing-RVSA 开源

让通用ViT适配遥感图像,多方向多尺度目标识别更准

The official repo for [TGRS'22] "Advancing Plain Vision Transformer Towards Remote S···

★ 470 2026-08-09