# DepthAI ROS

> **正在寻找旧版 ROS 驱动？**
> 如果你正在寻找旧版
> **v2**
> 驱动文档，请访问
> [V2 文档](https://docs.luxonis.com/software/ros/depthai-ros.md)
> 。

[luxonis/depthai-ros](https://github.com/luxonis/depthai-ros) 允许你：

 * 将相机用作经典的 RGBD 传感器，满足你的 3D 视觉需求。
 * 加载神经网络，直接从相机获取推理结果！

你可以通过以下方式开发 ROS 应用：

 * 使用 depthai_bridge 提供的类构建自己的驱动（参见
   [rgb_publisher](https://github.com/luxonis/depthai-ros/blob/kilted/depthai_examples/src/rgb_publisher.cpp) 示例了解操作方法）
 * 使用适用于你发行版的默认 ROS 驱动包（详情见 [ROS 驱动](https://docs.luxonis.com/software-v3/depthai/ros/driver.md)）：
   * Humble / Jazzy: depthai_ros_driver_v3
   * Kilted 及更新版本: depthai_ros_driver

支持的 ROS 版本：

 * Humble
 * Jazzy
 * Kilted

> **包命名**
> ROS v3 驱动现已支持
> **Humble**
> 、
> **Jazzy**
> 和
> **Kilted**
> 。
> - **Humble / Jazzy:**
> 使用
> `_v3`
> 包名，例如
> `depthai_ros_v3`
> 和
> `depthai_ros_driver_v3`
> 。
> - **Kilted 及更新版本:**
> v3 是默认驱动，因此包名不再带有
> `_v3`
> 后缀，例如
> `depthai_ros_driver`
> 。
> 目前，如果你希望在 Humble/Jazzy 稳定版 ROS apt 仓库同步之前获取最新二进制包，请使用
> **ROS 测试仓库**
> 。

## 从 ROS 二进制包安装

安装与你 ROS 发行版匹配的包。

#### Humble/Jazzy

```bash
sudo apt install ros2-testing-apt-source
sudo apt update
sudo apt install ros-$ROS_DISTRO-depthai-ros-v3
```

#### Kilted 及更新版本

```bash
sudo apt install ros-$ROS_DISTRO-depthai-ros
```

## 从源码安装

如需从源码安装，请参考[本指南](https://docs.luxonis.com/software-v3/depthai/ros/build-from-source.md)。

## DepthAI 滤波器

depthai_filters 包含一些小型可组合节点示例，展示如何处理来自多个主题的数据。 可用滤波器：

 * Detection2DOverlay - 订阅 /nn/detections 和 nn/passthrough/image_raw 主题。要查看效果，运行 ros2 launch depthai_filters
   example_det2d_overlay.launch.py。
 * SegmentationOverlay，将来自 nn/image_raw 的语义分割结果叠加到来自 nn/passthrough/image_raw 的图像上。要查看效果，运行 ros2 launch depthai_filters
   example_seg_overlay.launch.py
 * SpatialBB - 根据来自驱动节点的空间检测结果，将边界框发布为 3D 线标记。运行：ros2 launch depthai_filters spatial_bb.launch.py
 * FeatureTrackerOverlay - 根据来自驱动的特征和图像发布跟踪特征叠加
 * Features3D - 使用深度图像将特征重新发布为 3D 点云。运行 ros2 launch depthai_filters example_feature_3d.launch.py
 * ThermalTemp - 可视化 OAK-T 热成像流数据，你可以用鼠标查看图像某部分的温度。运行 ros2 launch depthai_filters thermal_temp.launch.py

## 自定义转换器

用户可以编写自定义转换器并将其插入到 bridge 发布器中。 如果存在我们尚未提供 ROS 消息或转换器的标准消息或用例，欢迎创建 issue 或通过我们的 Discord 社区联系我们。我们很乐意添加更多支持。
