十年匠心定制 · 商业建站与技术教学双线并行 咨询热线:400-886-1026 service@lmnt.cn
ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

全文 - Isaac ROS 05 - Getting Started

全文 - Isaac ROS 05 - Getting Started Isaac ROS 文档翻译第五部分页面 22Isaac ROS Image Segmentation — 图像分割原文https://nvidia-isaac-ros.github.io/repositories_and_packages/isaac_ros_image_segmentation/index.html概述Isaac ROS Image Segmentation 包含用于语义图像分割的 ROS 包。这些包提供通过在 DNN 模型上运行 GPU 加速推理来对输入图像进行像素级分类的方法。输入图像的每个像素都被预测为属于一组预定义的类别。输出预测可以被感知功能用于理解每个类别在 2D 图像中的空间位置或与 3D 场景中对应的深度位置融合。输入图像可能需要裁剪和调整大小以保持宽高比并匹配 DNN 模型预期的输入分辨率图像分辨率可能会降低以提高 DNN 推理性能这通常与图像中的像素数量直接成比例。图像分割比目标检测提供更多信息并使用更多计算以产生每个像素的分类而目标检测仅对图像坐标中更简单的边界框矩形进行分类。目标检测用于了解对象是否存在以及其在 2D 图像中的空间位置。另一方面图像分割用于了解哪些像素属于该类别。一个应用是使用分割结果并将其与相应的深度信息融合以了解对象在 3D 场景中的位置。快速入门Isaac ROS U-NETIsaac ROS SegformerIsaac ROS Segment AnythingIsaac ROS Segment Anything2Isaac ROS NITROS 加速此包由 NVIDIA Isaac Transport for ROS (NITROS) 提供支持NITROS 利用类型适配和协商来优化消息格式并显著加速参与节点之间的通信。DNN 模型每个图像分割包都依赖预训练的 DNN 模型。您可以训练自己的模型或从众多在线模型库之一下载预训练模型或从 NGC 下载NGC 提供预训练模型供您的机器人应用使用。NGC 预训练模型可以使用 TAO 为您的应用进行微调。有关如何使用 NVIDIA 在 NGC 上托管的各种模型的更多信息请参阅此处。U-NET需要使用 U-NET 模型来运行isaac_ros_unet。PeopleSemSegNet 提供用于最佳实时人员分割的预训练模型。此包已针对以下模型进行验证。Segformer需要使用 Segformer 模型来运行isaac_ros_segformer。PeopleSemSegFormer 提供用于更有效的实时人员分割的预训练模型。此包已针对以下模型进行验证。Segment Anything需要使用 Segment Anything (SAM) 模型来运行isaac_ros_segment_anything。此模型需要一个额外的提示值来指示应分割图像中的哪个对象。此包已针对以下版本的 SAM 进行验证模型名称描述SAM完整精度模型可消耗超过 8GB GPU 显存并需要更多计算能力Mobile SAMSAM 的更精简变体针对更小的内存和计算占用进行了优化Segment Anything2需要使用 Segment Anything2 (SAM2) 模型来运行isaac_ros_segment_anything2。此模型需要一个额外的提示值来指示应分割和跟踪视频流中的哪个对象。此包已针对以下版本的 SAM2 进行验证模型名称描述SAM2分割和跟踪视频流中的任何对象包isaac_ros_segformer快速入门尝试更多示例故障排除APIisaac_ros_segment_anything快速入门尝试更多示例故障排除APIisaac_ros_segment_anything2快速入门故障排除APIisaac_ros_segment_anything2_interfacesisaac_ros_unet快速入门尝试更多示例故障排除API支持的平台此包设计并测试为与在以下平台上运行的 ROS 2 Jazzy 兼容Jetson配备 NVIDIA GPU 的 x86_64 系统DGX Spark 工作站其他基于 GB10 的平台可能可以运行但不在测试矩阵中我们无法保证其行为。Isaac ROS 环境为简化开发我们强烈建议利用 Isaac ROS CLI按照以下步骤操作。这可以简化所有支持平台上依赖项正确版本的开发环境设置。注意所有 Isaac ROS 快速入门、教程和示例都设计为以 Isaac ROS CLI 管理的环境为前提。自定义开发环境要自定义开发环境请参阅本指南。更新日志日期变更2026-04-30Isaac ROS 4.4.0 版本的兼容性和集成更新2026-03-23引入 SIPL 相机框架和 LI Eagle 立体 CoE/HSB 相机的早期支持2026-02-19支持 DGX Spark 和 JetPack 7.12026-02-02支持两种新的 Docker 可选开发和部署模式2025-10-24添加 Segment Anything2 包2024-12-10兼容 JetPack 6.12024-09-26ZED 兼容性更新2024-05-30添加 SegFormer 和 Segment Anything 包2023-10-18Isaac ROS 2.0.0 更新2023-05-25性能改进2023-04-05源码可用的 GXF 扩展2022-10-19更新开源许可2022-08-31兼容 JetPack 5.0.22022-06-30移除 frame_id、queue_size 和 tensor_output_order 参数。添加 network_output_type 参数支持 sigmoid 和 argmax 输出层。切换到 NITROS 实现。移除对奇数尺寸图像的支持。将教程切换到使用 PeopleSemSegNet ShuffleSeg 并将不必要的细节移至其他 README。2021-11-15Isaac Sim HIL 文档更新2021-10-20初始版本页面 23Isaac ROS Pose Estimation — 姿态估计原文https://nvidia-isaac-ros.github.io/repositories_and_packages/isaac_ros_pose_estimation/index.html概述Isaac ROS Pose Estimation 包含三个用于预测对象姿态的 ROS 2 包。请参阅下表了解它们之间的差异节点无需重新训练的新对象TAO 支持速度质量成熟度isaac_ros_foundationpose✓不适用快最佳新isaac_ros_dope✗✗最快良好久经考验isaac_ros_centerpose✗✓更快更好已建立这些包使用 GPU 加速进行 DNN 推理以估计对象的姿态。输出预测可以被感知功能在与相应深度融合时使用以提供对象的 3D 姿态和距离用于导航或操作。isaac_ros_foundationpose用于节点图中使用 3D 边界立方体尺寸估计新对象的姿态。它基于 FoundationPose 模型构建这是 NVLabs 开发的预训练深度学习模型。FoundationPose 能够在无需微调的情况下对未见对象进行姿态估计和跟踪其精度优于现有最先进的方法。FoundationPose 包含两个不同的模型优化模型和评分模型。优化模型处理初始姿态假设迭代优化它们然后将这些优化后的假设传递给评分模型评分模型选择并最终确定姿态估计。此外优化模型可以用于跟踪基于新的图像输入和前一帧的姿态估计更新姿态估计。此跟踪过程比姿态估计更高效在 Jetson Thor 平台上的速度超过 120 FPS。isaac_ros_dope用于节点图中使用 3D 边界立方体尺寸估计已知对象的姿态。要产生估计需要 DOPEDeep Object Pose Estimation预训练模型。输入图像可能需要裁剪和调整大小以保持宽高比并匹配 DOPE 的输入分辨率。DNN 推理产生估计后DNN 解码器将使用指定的对象类型以及模型推理产生的置信度图来输出对象姿态。NVLabs 提供了使用 HOPE 数据集的 DOPE 预训练模型。HOPE 代表「用于姿态估计的家庭物品」Household Objects for Pose Estimation。HOPE 是一个面向研究的数据集使用玩具杂货物品和物品的 3D 纹理网格进行合成数据训练。要将 DOPE 用于与您的应用相关的其他对象需要使用针对这些对象的数据集重新训练模型。例如DOPE 已被训练用于检测移动机器人导航、提升和移动的那种台车。要训练您自己的 DOPE 模型请参阅「训练您自己的 DOPE 模型」教程。isaac_ros_centerpose与isaac_ros_dope有相似之处两者都估计对象姿态然而isaac_ros_centerpose提供了额外的功能。CenterPose DNN 对图像执行目标检测为对象生成 2D 关键点估计 6-DoF 姿态精确到尺度并回归相对 3D 边界立方体尺寸。这针对已知对象类别执行而无需知道具体实例——例如CenterPose 模型可以检测椅子而无需在该特定椅子的图像上进行训练。姿态估计是一项计算密集型任务因此不会以输入相机的帧率执行。为了有效利用资源对单帧估计对象姿态并用作导航的输入。以低于典型相机输入速率的频率计算额外的对象姿态估计以进一步细化正在进行的导航。此仓库中的包依赖加速的 DNN 模型推理使用来自 Isaac ROS DNN Inference 的 Triton 或 TensorRT。对于预处理此仓库中的包依赖「Isaac ROS DNN Image Encoder」也可在 Isaac ROS DNN Inference 中找到。快速入门Isaac ROS CenterPoseIsaac ROS DOPEIsaac ROS FoundationPose包isaac_ros_centerpose快速入门故障排除APIisaac_ros_dope快速入门尝试更多示例使用不同的模型故障排除APIisaac_ros_foundationpose快速入门尝试更多示例API支持的平台此包设计并测试为与在以下平台上运行的 ROS 2 Jazzy 兼容Jetson配备 NVIDIA GPU 的 x86_64 系统DGX Spark 工作站其他基于 GB10 的平台可能可以运行但不在测试矩阵中我们无法保证其行为。Isaac ROS 环境为简化开发我们强烈建议利用 Isaac ROS CLI按照以下步骤操作。这可以简化所有支持平台上依赖项正确版本的开发环境设置。注意所有 Isaac ROS 快速入门、教程和示例都设计为以 Isaac ROS CLI 管理的环境为前提。自定义开发环境要自定义开发环境请参阅本指南。更新日志日期变更2026-04-30Isaac ROS 4.4.0 版本的兼容性和集成更新2026-03-23引入 SIPL 相机框架和 LI Eagle 立体 CoE/HSB 相机的早期支持2026-02-19支持 DGX Spark 和 JetPack 7.12026-02-02支持两种新的 Docker 可选开发和部署模式2025-10-24添加针对实时性能优化的同步节点以及针对 TensorRT 10.13 的 FoundationPose 模型小幅更新2024-12-10添加姿态估计后处理工具2024-09-26ZED 兼容性更新2024-05-30添加 FoundationPose 姿态估计包2023-10-18添加 NITROS CenterPose 解码器2023-05-25性能改进2023-04-05源码可用的 GXF 扩展2022-06-30更新以使用 NITROS 提高性能并兼容 JetPack 5.0.22022-06-30重构 README更新启动文件并添加nvidia命名空间移除 CenterPose 的 Jetson 支持2021-10-20初始更新页面 24Isaac ROS Compression — H.264 图像压缩原文https://nvidia-isaac-ros.github.io/repositories_and_packages/isaac_ros_compression/index.html概述Isaac ROS Compression 提供 H.264 图像编码器和解码器利用 NVIDIA GPU 和 Jetson 平台中的专用硬件。isaac_ros_h264_encoder包可以使用 NVENC 将图像压缩为 H.264 数据。isaac_ros_h264_decoder包可以使用 NVDEC 将 H.264 数据解码为原始图像。图像压缩在写入存储或在计算机之间传输时减少图像的数据占用。1080p 相机以 30fps 产生 177MB/s 的数据图像压缩将其减少约 10 倍至 17MB/s 的数据减少将此数据发送到另一台计算机或写入存储所需的吞吐量一分钟的 1080p 相机录制从约 10GB 减少到约 1GB。这种压缩由专用的 NVIDIA 加速NvEnc提供与其他硬件引擎如 GPU分离。在机器人开发过程中图像压缩的一个常见用例是将相机图像捕获到存储。这些捕获的数据在机器人之外离线处理以生成 AI 模型的训练数据集、感知功能的测试数据集以及使用真实数据对开发中的软件进行开环重新模拟的测试数据。压缩参数经过调整以最小化有损压缩对视觉质量的降低用于 AI 模型和感知功能开发。压缩减少了写入存储的数据量、卸载录制所需的时间以及数据湖中的静态数据占用。压缩可以与事件数据记录器一起使用在发生感兴趣的事件通常由于机器人故障时将相机图像捕获到存储。这提供了视觉信息以协助调试事件或改进感知和机器人功能。H.264 是一种高效且流行的压缩算法在许多平台上得到广泛支持。isaac_ros_h264_encoder包的输出可以使用isaac_ros_h264_decoder在 Jetson 和 x86_64 系统上使用 NVIDIA 加速进行解码或使用非 NVIDIA 平台上的第三方 H.264 解码器包进行解码。此包由 NVIDIA Isaac Transport for ROS (NITROS) 提供支持NITROS 利用类型适配和协商来优化消息格式并显著加速参与节点之间的通信。快速入门Isaac ROS H.264 EncoderIsaac ROS H.264 DecoderH.264 与 JPEG image_transport_plugins 的比较ROS image_transport_plugins 使用 JPEG 标准在 CPU 上进行图像压缩其中每帧在 2D 图像内空间压缩。isaac_ros_h264_encoder使用 H.264 标准进行视频压缩通过使用更高级的空间和时间压缩使其比 JPEG 更高效。isaac_ros_h264_encoder使用 GPU 获得更高性能同时将计算工作从 CPU 卸载。H.264 视频压缩的单个图像或 I 帧比同等质量的 JPEG 图像更小H.264 使用改进的压缩函数处理平滑区域并在图像的高频区域产生更少的伪影。H.264 通过使用 P 帧预测帧从先前的 I 或 P 帧对图像序列添加时间压缩。P 帧受益于相机流中帧与帧之间的图像相似性。P 帧约为 I 帧大小的 25%。图像序列被压缩为一个 I 帧后跟一个或多个 P 帧。P 帧需要更少的计算提高了压缩的帧率。因此isaac_ros_h264_encoder可以以与 JPEGimage_transport_plugins相同的质量将数据压缩到更小的大小以更高的帧率吞吐量进行压缩同时将 CPU 从此压缩计算中卸载。包isaac_ros_h264_decoder快速入门故障排除APIisaac_ros_h264_encoder快速入门API支持的平台节点Jetsonaarch64GPU x86_64isaac_ros_h264_encoder✓✓isaac_ros_h264_decoder✓✓此包设计并测试为与在以下平台上运行的 ROS 2 Jazzy 兼容Jetson配备 NVIDIA GPU 的 x86_64 系统DGX Spark 工作站其他基于 GB10 的平台可能可以运行但不在测试矩阵中我们无法保证其行为。更新日志日期变更2026-08-18Isaac ROS 4.6.0 版本的兼容性和集成更新2026-07-06Isaac ROS 4.5.0 版本的兼容性和集成更新2026-04-30Isaac ROS 4.4.0 版本的兼容性和集成更新2026-03-23引入 SIPL 相机框架和 LI Eagle 立体 CoE/HSB 相机的早期支持2026-02-19支持 DGX Spark 和 JetPack 7.12026-02-02支持两种新的 Docker 可选开发和部署模式2025-10-24支持 ROS 2 Jazzy2024-12-10兼容 JetPack 6.12024-09-26Isaac ROS 3.1 更新2024-05-30兼容 JetPack 6.02023-10-18Isaac ROS 2.0.0 更新2023-05-25性能改进2023-04-05源码可用的 GXF 扩展2022-10-19更新开源许可2022-08-31兼容 JetPack 5.0.22022-06-30添加 H.264 P 帧编码以获得更高性能和更小的 rosbag2022-06-30在 Jetson (aarch64) 上添加 H.264 解压支持页面 25Isaac ROS cuMotion — CUDA 加速机器人运动规划原文https://nvidia-isaac-ros.github.io/repositories_and_packages/isaac_ros_cumotion/index.html概述Isaac ROS cuMotion 为 ROS 2 中的机器人提供 CUDA 加速的操作能力。它将 cuMotion 集成到 MoveIt 2 中以生成平滑、无碰撞的轨迹还通过 ROS 2 动作/服务公开 cuMotion 逆运动学和轨迹生成能力。支持从深度流中分割和过滤机器人自身。使用 Isaac ROS cuMotion 的主要优势包括改进的循环时间cuMotion 在存在障碍物的情况下产生平滑、最优时间的轨迹与先前最先进的规划器相比通常减少运动时间。在杂乱环境和其他具有挑战性的场景中cuMotion 通常可以在其他规划器可能完全失败的情况下产生有效的轨迹。改进的规划时间cuMotion 利用 CUDA 加速在不到一秒的时间内产生无碰撞、最优时间的轨迹。避免深度相机捕获的障碍物cuMotion 可选地利用 nvblox 从一个或多个深度图像流执行环境的 3D 重建。环境被表示为符号距离场 (SDF) 以进行高效的障碍物感知规划。支持从深度流中分割和过滤机器人自身。灵活性模块化设计简化了与现有 ROS 2 工作流的集成特别是那些已经使用 MoveIt 2 的工作流。警告在使用或开发 cuMotion 或其他 Isaac for Manipulation 软件之前请熟悉机器人制造商提供的相关安全信息。此外我们提供以下最佳实践熟悉紧急停止按钮的位置并在必要时准备使用。操作前确保工作区域没有任何人员或其他潜在危险。操作前提醒工作区域附近的所有人员机器人操作即将开始。操作前和操作期间注意任何进入工作区域附近的人员并准备发出必要的警告、指示或采取其他必要行动。在测试或部署新功能或代码时格外小心。提供了三种运行模式的示例运动生成cuMotion 规划器节点提供的运动生成能力通过 MoveIt 2 的插件公开。请参阅相应的快速入门以开始使用。机器人分割快速入门设置开发环境按照入门指南中的说明设置您的开发环境。在${ISAAC_ROS_WS}/src下克隆isaac_ros_common。可选按照传感器特定指南安装您想使用的任何传感器的依赖项。警告我们强烈建议在开始任何快速入门之前安装所有传感器依赖项。某些传感器依赖项需要在安装期间重新启动 Isaac ROS Dev 容器这会中断快速入门过程。下载机器人分割快速入门资源从 NGC 上的 r2b 2024 数据集下载r2b_robotarm数据集。将数据集放置在${ISAAC_ROS_WS}/isaac_ros_assets/r2b_2024/r2b_robotarm。构建isaac_ros_cumotion使用run_dev.sh脚本启动 Docker 容器。安装预构建的 Debian 包sudoapt-getinstall-yros-humble-isaac-ros-cumotion支持的平台此包设计并测试为与在以下平台上运行的 ROS 2 Jazzy 兼容Jetson配备 NVIDIA GPU 的 x86_64 系统DGX Spark 工作站其他基于 GB10 的平台可能可以运行但不在测试矩阵中我们无法保证其行为。更新日志日期变更2026-08-18Isaac ROS 4.6.0 版本的兼容性和集成更新2026-07-06Isaac ROS 4.5.0 版本的兼容性和集成更新2026-04-30Isaac ROS 4.4.0 版本的兼容性和集成更新2026-03-23引入 SIPL 相机框架和 LI Eagle 立体 CoE/HSB 相机的早期支持2026-02-19支持 DGX Spark 和 JetPack 7.12026-02-02支持两种新的 Docker 可选开发和部署模式2025-10-24支持 ROS 2 Jazzy2024-12-10兼容 JetPack 6.12024-09-26Isaac ROS 3.1 更新2024-05-30兼容 JetPack 6.02023-10-18Isaac ROS 2.0.0 更新页面 26Isaac ROS Map Localization — 地图定位原文https://nvidia-isaac-ros.github.io/repositories_and_packages/isaac_ros_mapping_and_localization/index.html概述Isaac ROS Map Localization 模块包含用于激光雷达处理以估计相对于地图的姿态的 ROS 2 包。Occupancy Grid Localizer 处理平面范围扫描以在占用栅格地图中估计姿态对于大多数地图这发生在不到 1 秒的时间内。此初始姿态可用于引导移动机器人的导航并已集成和测试与 Nav2 配合使用。这可以消除使用 RViz 手动估计机器人位置和方向所需的 30 秒或更长时间。Occupancy Grid Localizer 设计用于与平面和 3D 激光雷达配合使用。它使用 Flatscan 作为输入进行 GPU 加速计算以估计姿态。Flatscan 允许表示 3D 激光雷达其多个光束之间具有可变的角度增量。LaserScan to Flatscan 提供从 LaserScan根据定义光束之间具有相等的角度增量到 Flatscan 的转换。PointCloud to FlatScan 提供从 3D 激光雷达的点云输出到 Flatscan 的转换。注意定位可以在导航期间执行多次。注意输入 FlatScan 消息头/frame_id 用于获取激光雷达相对于机器人 base_link 坐标系的变换。注意输出localization_result是base_link相对于loc_result_frame地图ROS 参数中指定的坐标系的变换。注意定位可以通过以下两种方式之一触发缓冲在主题上接收到的 FlatScan 消息并使用std_srvs/Empty服务调用触发定位。每次将 FlatScan 消息发送到主题时触发定位。有关更多详细信息请参阅 Isaac ROS Occupancy Grid Localizer/Usage 部分。快速入门Isaac ROS Occupancy Grid LocalizerIsaac ROS NITROS 加速此包由 NVIDIA Isaac Transport for ROS (NITROS) 提供支持NITROS 利用类型适配和协商来优化消息格式并显著加速参与节点之间的通信。包isaac_ros_occupancy_grid_localizer快速入门尝试更多示例故障排除APIisaac_ros_pointcloud_utils概述API支持的平台此包设计并测试为与在以下平台上运行的 ROS 2 Jazzy 兼容Jetson配备 NVIDIA GPU 的 x86_64 系统DGX Spark 工作站其他基于 GB10 的平台可能可以运行但不在测试矩阵中我们无法保证其行为。Isaac ROS 环境为简化开发我们强烈建议利用 Isaac ROS CLI按照以下步骤操作。这可以简化所有支持平台上依赖项正确版本的开发环境设置。注意所有 Isaac ROS 快速入门、教程和示例都设计为以 Isaac ROS CLI 管理的环境为前提。自定义开发环境要自定义开发环境请参阅本指南。更新日志日期变更2026-04-30Isaac ROS 4.4.0 版本的兼容性和集成更新2026-03-23引入 SIPL 相机框架和 LI Eagle 立体 CoE/HSB 相机的早期支持2026-02-19支持 DGX Spark 和 JetPack 7.12026-02-02支持两种新的 Docker 可选开发和部署模式2025-10-24支持 ROS 2 Jazzy2024-12-10兼容 JetPack 6.12024-09-26Isaac ROS 3.1 更新2024-05-30兼容 JetPack 6.02023-10-18Isaac ROS 2.0.0 更新2023-05-25性能改进2023-04-05源码可用的 GXF 扩展2022-10-19更新开源许可2022-08-31兼容 JetPack 5.0.22022-06-30支持 ROS 2 Humble 和杂项错误修复
返回列表