isaac_ros_object_detection

NVIDIA-ISAAC-ROSApache-2.0活跃维护

面向 ROS2 机器人的 GPU 加速目标检测包,基于 TensorRT 和 Triton 推理深度学习模型,可在 Jetson 上实时运行。

NVIDIA-accelerated, deep learned model support for image space object detection

v5.0-0发布于 2026-09-22 03:29 UTC205star52fork同步于 2026-11-07 07:30 UTC

怎么上手

由 README 提炼,执行前请确认
README 未提供安装命令
硬件要求按 README 说明

README 性能表覆盖 AGX Thor T5000/T4000、AGX Orin、Orin Nano Super 8GB、DGX Spark 及 x86_64 配 RTX 5090/5070;未给出具体显存要求,也未说明能否纯 CPU 运行。

需要 CUDA
下载:源码 zip·GitHub Releases(安装包)本站不镜像安装包

项目说明

由 README 自动翻译提炼

NVIDIA 加速的 ROS 2 目标检测包集合,支持 DetectNet、RT-DETR、YOLOv8、Grounding DINO 模型

面向 ROS2 机器人的 GPU 加速目标检测包,基于 TensorRT 和 Triton 推理深度学习模型,可在 Jetson 上实时运行。

核心能力

  • 提供 isaac_ros_detectnet、rtdetr、yolov8、grounding_dino 四个独立 ROS 2 包
  • 用 GPU 加速模型做图像空间检测并输出带类别的边界框数组
  • 通过 isaac_ros_dnn_image_encoder 把输入图像裁剪缩放并转成张量
  • 按模型解码预测,用聚类和阈值合并同一目标的多次检测
  • 基于 ROS 2 Lyrical 的 rosidl::Buffer 减少 CPU 与加速器间大负载拷贝

容易踩的坑

需要自行准备对应架构的已训练模型才能产出检测结果;输入图像需裁剪缩放以匹配模型输入分辨率,降分辨率可能漏检小目标;README 未给出安装与运行命令,需查阅官方文档。

内容由模型根据 README 生成,可能不完整或不准确,以官方文档为准。看原文 README

最近发版

5 个版本v5.0-0
  1. v5.0-05.0.0最新正式版2026-09-22 · 2026-09-22 03:29 UTC

    这个版本没有写更新说明。

  2. v4.6-04.6.02026-08-19 · 2026-08-19 02:50 UTC

    这个版本没有写更新说明。

  3. v4.5-04.5.02026-07-07 · 2026-07-07 01:04 UTC

    这个版本没有写更新说明。

  4. v4.4-04.4.02026-05-01 · 2026-05-01 03:46 UTC

    这个版本没有写更新说明。

  5. v4.3-04.3.02026-03-24 · 2026-03-24 03:51 UTC

    这个版本没有写更新说明。

用户点评

登录用户的真实使用记录,可按版本和硬件筛选
共 0 条

    还没有人点评。第一个说出真实体验的人最有价值。

    README 原文

    未翻译

    Isaac ROS Object Detection

    NVIDIA-accelerated, deep learned model support for object detection including DetectNet.

    Overview

    Isaac ROS Object Detection contains ROS 2 packages to perform object detection. isaac_ros_rtdetr, isaac_ros_detectnet, isaac_ros_yolov8, and isaac_ros_grounding_dino each provide a method for spatial classification using bounding boxes with an input image. Classification is performed by a GPU-accelerated model of the appropriate architecture:

    The output prediction can be used by perception functions to understand the presence and spatial location of an object in an image.

    Each Isaac ROS Object Detection package is used in a graph of nodes to provide a bounding box detection array with object classes from an input image. A trained model of the appropriate architecture is required to produce the detection array.

    Input images may need to be cropped and resized to maintain the aspect ratio and match the input resolution of the specific object detection model; image resolution may be reduced to improve DNN inference performance, which typically scales directly with the number of pixels in the image. isaac_ros_dnn_image_encoder provides DNN encoder utilities to process the input image into Tensors for the object detection models. Prediction results are decoded in model-specific ways, often involving clustering and thresholding to group multiple detections on the same object and reduce spurious detections. Output is provided as a detection array with object classes.

    DNNs have a minimum number of pixels that need to be visible on the object to provide a classification prediction. If a person cannot see the object in the image, it’s unlikely the DNN will. Reducing input resolution to reduce compute may reduce what is detected in the image. For example, a 1920x1080 image containing a distant person occupying 1k pixels (64x16) would have 0.25K pixels (32x8) when downscaled by 1/2 in both X and Y. The DNN may detect the person with the original input image, which provides 1K pixels for the person, and fail to detect the same person in the downscaled resolution, which only provides 0.25K pixels for the person.

    Object detection classifies a rectangle of pixels as containing an object, whereas image segmentation provides more information and uses more compute to produce a classification per pixel. Object detection is used to know if, and where in a 2D image, the object exists. If a 3D spacial understanding or size of an object in pixels is required, use image segmentation.

    ROS 2 Native rosidl::Buffer Acceleration

    This package uses rosidl::Buffer, a feature built into ROS 2 Lyrical, to avoid unnecessary copies of large payloads between CPU and accelerator memory. The CUDA buffer backend builds on this native ROS 2 feature to provide CUDA memory storage and transport. Most applications can use standard ROS messages and conversion packages without depending directly on a buffer backend. See rosidl::Buffer and Buffer Backends for details.

    Performance

    Sample GraphInput SizeAGX Thor T5000AGX Thor T4000AGX OrinOrin Nano Super 8GBDGX Sparkx86_64 w/ RTX 5090x86_64 w/ RTX 5070
    DetectNet Object Detection Graph544p216 fps7.7 ms @ 30Hz157 fps8.4 ms @ 30Hz73.5 fps15 ms @ 30Hz30.4 fps37 ms @ 30Hz120 fps8.9 ms @ 30Hz291 fps4.7 ms @ 30Hz166 fps7.1 ms @ 30Hz
    Grounding DINO Object Detection Graph544p25.3 fps17.5 fps13.6 fps–17.3 fps156 fps8.0 ms @ 30Hz65.6 fps17 ms @ 30Hz
    RT-DETR Object Detection GraphSyntheticaDETR720p195 fps6.7 ms @ 30Hz177 fps8.3 ms @ 30Hz87.3 fps13 ms @ 30Hz40.0 fps27 ms @ 30Hz181 fps6.8 ms @ 30Hz718 fps2.3 ms @ 30Hz374 fps3.6 ms @ 30Hz

    Documentation

    Please visit the Isaac ROS Documentation to learn how to use this repository.


    Packages

    Latest

    Update 2026-09-21: Migrated the object detection nodes from NITROS to rosidl::Buffer with the CUDA buffer backend