> ## Documentation Index
> Fetch the complete documentation index at: https://dragonwingdocs-staging.qualcomm.com/llms.txt
> Use this file to discover all available pages before exploring further.

# QIR SDK 示例应用程序

QIR SDK 提供了多种示例应用程序。您可以使用 ROS 2 获取设备 CPU 负载、在 Qualcomm 平台上从 ROS 2 节点加速 AI 模型推理，以及执行机器人仿真。示例应用程序分为不同类别：AI、机器人和平台。

通过组合不同的示例，您可以实现各种功能。

## QIR SDK 中的示例摘要

<Note>
  **注意**

  某些示例需要特定的硬件外设。有关所需硬件，请参阅下表。
</Note>

<Warning>
  **警告**

  您从[下载预构建软件包](./download-the-prebuilt-packages)下载的镜像是与相应开发套件匹配的 `qcom-robotics-proprietary-image`。
</Warning>

### AI 示例应用程序

QIR SDK 提供以下示例应用程序，展示平台的 AI 能力。

<table className="sample-table">
  <caption>表：AI 示例应用程序</caption>

  <thead>
    <tr>
      <th style={{ width: '32%', verticalAlign: 'top' }}>示例应用程序</th>
      <th style={{ width: '8%', verticalAlign: 'top' }}>需要外设</th>
      <th style={{ width: '8%', verticalAlign: 'top' }}>需要移动机器人</th>
      <th style={{ width: '8%', verticalAlign: 'top' }}>支持 IQ-9075 EVK</th>
      <th style={{ width: '8%', verticalAlign: 'top' }}>支持 IQ-8275 EVK</th>
      <th style={{ width: '8%', verticalAlign: 'top' }}>支持 qcom-robotics-image</th>
      <th style={{ width: '8%', verticalAlign: 'top' }}>支持 qcom-robotics-proprietary-image</th>
    </tr>
  </thead>

  <tbody>
    <tr>
      <td><Tooltip tip="sample_hand_detection 是一个机器学习管线，可预测图像中手部的边界框和姿态骨架。"><a href="./detect-hands-with-sample-hand-detection">检测手部</a>（<code>sample\_hand\_detection</code>）</Tooltip></td>
      <td><Badge color="gray" size="sm">N</Badge></td>
      <td><Badge color="gray" size="sm">N</Badge></td>
      <td><Badge color="green" size="sm">Y</Badge></td>
      <td><Badge color="gray" size="sm">N</Badge></td>
      <td><Badge color="gray" size="sm">N</Badge></td>
      <td><Badge color="green" size="sm">Y</Badge></td>
    </tr>

    <tr>
      <td><Tooltip tip="sample_resnet101 是一个机器学习模型，可对来自 Imagenet 数据集的图像进行分类。"><a href="./classify-images-with-sample-resnet101">图像分类</a>（<code>sample\_resnet101</code>）</Tooltip></td>
      <td><Badge color="gray" size="sm">N</Badge></td>
      <td><Badge color="gray" size="sm">N</Badge></td>
      <td><Badge color="green" size="sm">Y</Badge></td>
      <td><Badge color="gray" size="sm">N</Badge></td>
      <td><Badge color="gray" size="sm">N</Badge></td>
      <td><Badge color="green" size="sm">Y</Badge></td>
    </tr>

    <tr>
      <td><Tooltip tip="sample_depth_estimation 是一个机器学习模型，可估计图像中每个像素的深度。"><a href="./estimate-image-depth-values-with-sample-depth-estimation">估计图像深度</a>（<code>sample\_depth\_estimation</code>）</Tooltip></td>
      <td><Badge color="gray" size="sm">N</Badge></td>
      <td><Badge color="gray" size="sm">N</Badge></td>
      <td><Badge color="green" size="sm">Y</Badge></td>
      <td><Badge color="gray" size="sm">N</Badge></td>
      <td><Badge color="gray" size="sm">N</Badge></td>
      <td><Badge color="green" size="sm">Y</Badge></td>
    </tr>

    <tr>
      <td><Tooltip tip="sample_face_detection 是一个机器学习模型，可检测图像中的人脸。"><a href="./detect-faces-with-sample-face-detection">检测人脸</a>（<code>sample\_face\_detection</code>）</Tooltip></td>
      <td><Badge color="gray" size="sm">N</Badge></td>
      <td><Badge color="gray" size="sm">N</Badge></td>
      <td><Badge color="green" size="sm">Y</Badge></td>
      <td><Badge color="gray" size="sm">N</Badge></td>
      <td><Badge color="gray" size="sm">N</Badge></td>
      <td><Badge color="green" size="sm">Y</Badge></td>
    </tr>

    <tr>
      <td><Tooltip tip="sample_hrnet_pose_estimation 是一个机器学习模型，可估计图像中人物的姿态。"><a href="./estimate-human-poses-with-sample-hrnet-pose-estimation">估计人体姿态</a>（<code>sample\_hrnet\_pose\_estimation</code>）</Tooltip></td>
      <td><Badge color="gray" size="sm">N</Badge></td>
      <td><Badge color="gray" size="sm">N</Badge></td>
      <td><Badge color="green" size="sm">Y</Badge></td>
      <td><Badge color="gray" size="sm">N</Badge></td>
      <td><Badge color="gray" size="sm">N</Badge></td>
      <td><Badge color="green" size="sm">Y</Badge></td>
    </tr>

    <tr>
      <td><Tooltip tip="sample_object_detection 是一个使用 QNN 进行模型推理的 Python 启动文件。它演示了摄像头数据流、基于 AI 的推理以及目标检测结果的实时可视化。"><a href="./detect-objects-with-sample-object-detection">检测对象</a>（<code>sample\_object\_detection</code>）</Tooltip></td>
      <td><Badge color="gray" size="sm">N</Badge></td>
      <td><Badge color="gray" size="sm">N</Badge></td>
      <td><Badge color="green" size="sm">Y</Badge></td>
      <td><Badge color="gray" size="sm">N</Badge></td>
      <td><Badge color="gray" size="sm">N</Badge></td>
      <td><Badge color="green" size="sm">Y</Badge></td>
    </tr>

    <tr>
      <td><Tooltip tip="sample_object_segmentation 是一个使用 QNN 进行模型推理的 Python 启动文件。它演示了摄像头数据流、基于 AI 的推理以及目标分割结果的实时可视化。"><a href="./segment-objects-with-sample-object-segmentation">分割对象</a>（<code>sample\_object\_segmentation</code>）</Tooltip></td>
      <td><Badge color="gray" size="sm">N</Badge></td>
      <td><Badge color="gray" size="sm">N</Badge></td>
      <td><Badge color="green" size="sm">Y</Badge></td>
      <td><Badge color="gray" size="sm">N</Badge></td>
      <td><Badge color="gray" size="sm">N</Badge></td>
      <td><Badge color="green" size="sm">Y</Badge></td>
    </tr>
  </tbody>
</table>

### 机器人示例应用程序

QIR SDK 提供以下示例应用程序，展示平台的机器人功能。

<Warning>
  **警告**

  机器人示例应用程序需要主机和开发套件协同工作。
</Warning>

<table className="sample-table">
  <caption>表：机器人示例应用</caption>

  <thead>
    <tr>
      <th style={{ width: '32%', verticalAlign: 'top' }}>示例应用</th>
      <th style={{ width: '8%', verticalAlign: 'top' }}>需要外设</th>
      <th style={{ width: '8%', verticalAlign: 'top' }}>需要移动机器人</th>
      <th style={{ width: '8%', verticalAlign: 'top' }}>支持 IQ-9075 EVK</th>
      <th style={{ width: '8%', verticalAlign: 'top' }}>支持 IQ-8275 EVK</th>
      <th style={{ width: '8%', verticalAlign: 'top' }}>支持 qcom-robotics-image</th>
      <th style={{ width: '8%', verticalAlign: 'top' }}>支持 qcom-robotics-proprietary-image</th>
    </tr>
  </thead>

  <tbody>
    <tr>
      <td><Tooltip tip="simulation_sample_amr_simple_motion 是一个基于 Python 的 ROS 节点，用于在模拟器中控制 QRB AMR 的简单运动。该示例允许你通过向 /qrb_robot_base/cmd_vel 话题发布 ROS 消息来控制 QRB AMR 的运动。"><a href="./control-amr-in-the-simulator-with-simulation-sample-amr-simple-motion">在模拟器中控制 AMR</a> (<code>simulation\_sample\_amr\_simple\_motion</code>)</Tooltip></td>
      <td><Badge color="gray" size="sm">N</Badge></td>
      <td><Badge color="gray" size="sm">N</Badge></td>
      <td><Badge color="green" size="sm">Y</Badge></td>
      <td><Badge color="green" size="sm">Y</Badge></td>
      <td><Badge color="green" size="sm">Y</Badge></td>
      <td><Badge color="green" size="sm">Y</Badge></td>
    </tr>

    <tr>
      <td><Tooltip tip="2D 激光雷达 SLAM 示例使用 Cartographer，能够基于 2D 激光雷达传感器完成室内地图构建和定位。"><a href="./enable-2-d-lidar-slam-with-cartographer-ros">启用 2D 激光雷达 SLAM</a> (<code>cartographer\_ros</code>)</Tooltip></td>
      <td>RPLIDAR A3M1</td>
      <td><Badge color="green" size="sm">Y</Badge></td>
      <td><Badge color="green" size="sm">Y</Badge></td>
      <td><Badge color="green" size="sm">Y</Badge></td>
      <td><Badge color="green" size="sm">Y</Badge></td>
      <td><Badge color="green" size="sm">Y</Badge></td>
    </tr>

    <tr>
      <td><Tooltip tip="sample_apriltag 是一个 ROS 软件包，为 Qualcomm 机器人平台提供 AprilTag 流水线示例。"><a href="./enable-april-tag-pipeline-with-sample-apriltag">启用 AprilTag 流水线</a> (<code>sample\_apriltag</code>)</Tooltip></td>
      <td><Badge color="gray" size="sm">N</Badge></td>
      <td><Badge color="gray" size="sm">N</Badge></td>
      <td><Badge color="green" size="sm">Y</Badge></td>
      <td><Badge color="green" size="sm">Y</Badge></td>
      <td><Badge color="gray" size="sm">N</Badge></td>
      <td><Badge color="green" size="sm">Y</Badge></td>
    </tr>

    <tr>
      <td><Tooltip tip="simulation_sample_pick_and_place 是一个演示机械臂抓取和放置操作的示例应用。"><a href="./enable-pick-and-place-in-the-simulator-with-simulation-sample-pick-and-place">在模拟器中启用抓取和放置</a> (<code>simulation\_sample\_pick\_and\_place</code>)</Tooltip></td>
      <td><Badge color="gray" size="sm">N</Badge></td>
      <td><Badge color="gray" size="sm">N</Badge></td>
      <td><Badge color="green" size="sm">Y</Badge></td>
      <td><Badge color="green" size="sm">Y</Badge></td>
      <td><Badge color="green" size="sm">Y</Badge></td>
      <td><Badge color="green" size="sm">Y</Badge></td>
    </tr>

    <tr>
      <td><Tooltip tip="simulation_remote_assistant 示例应用是一个 ROS 软件包，在虚拟办公环境中将 AMR 用作远程助手。"><a href="./experience-remote-assistant-in-the-simulator-with-simulation-remote-assistant">在模拟器中体验远程助手</a> (<code>simulation\_remote\_assistant</code>)</Tooltip></td>
      <td><Badge color="gray" size="sm">N</Badge></td>
      <td><Badge color="gray" size="sm">N</Badge></td>
      <td><Badge color="green" size="sm">Y</Badge></td>
      <td><Badge color="green" size="sm">Y</Badge></td>
      <td><Badge color="green" size="sm">Y</Badge></td>
      <td><Badge color="green" size="sm">Y</Badge></td>
    </tr>

    <tr>
      <td><Tooltip tip="simulation_2d_lidar_slam 是一个仿真示例应用，演示如何在模拟器中的 Qualcomm 机器人平台上运行 2D 激光雷达 SLAM。"><a href="./enable-2-d-lidar-slam-in-the-simulator-with-cartographer-ros">使用 `cartographer_ros` 在模拟器中启用 2D 激光雷达 SLAM</a> (<code>simulation\_2d\_lidar\_slam</code>)</Tooltip></td>
      <td><Badge color="gray" size="sm">N</Badge></td>
      <td><Badge color="gray" size="sm">N</Badge></td>
      <td><Badge color="green" size="sm">Y</Badge></td>
      <td><Badge color="green" size="sm">Y</Badge></td>
      <td><Badge color="green" size="sm">Y</Badge></td>
      <td><Badge color="green" size="sm">Y</Badge></td>
    </tr>

    <tr>
      <td><Tooltip tip="simulation_amr_navigation 是一个仿真示例应用，演示如何在模拟器中的 Qualcomm 机器人平台上运行 navigation2。"><a href="./enable-navigation-in-the-simulator-with-navigation2">使用 navigation2 在模拟器中启用导航</a> (<code>simulation\_amr\_navigation</code>)</Tooltip></td>
      <td><Badge color="gray" size="sm">N</Badge></td>
      <td><Badge color="gray" size="sm">N</Badge></td>
      <td><Badge color="green" size="sm">Y</Badge></td>
      <td><Badge color="green" size="sm">Y</Badge></td>
      <td><Badge color="green" size="sm">Y</Badge></td>
      <td><Badge color="green" size="sm">Y</Badge></td>
    </tr>
  </tbody>
</table>

### 平台示例应用程序

QIR SDK 提供以下示例应用程序，展示平台的基本功能。

<table className="sample-table">
  <caption>表格：平台示例应用程序</caption>

  <thead>
    <tr>
      <th style={{ width: '32%', verticalAlign: 'top' }}>示例应用程序</th>
      <th style={{ width: '8%', verticalAlign: 'top' }}>需要外设</th>
      <th style={{ width: '8%', verticalAlign: 'top' }}>需要移动机器人</th>
      <th style={{ width: '8%', verticalAlign: 'top' }}>支持 IQ-9075 EVK</th>
      <th style={{ width: '8%', verticalAlign: 'top' }}>支持 IQ-8275 EVK</th>
      <th style={{ width: '8%', verticalAlign: 'top' }}>支持 qcom-robotics-image</th>
      <th style={{ width: '8%', verticalAlign: 'top' }}>支持 qcom-robotics-proprietary-image</th>
    </tr>
  </thead>

  <tbody>
    <tr>
      <td><Tooltip tip="orbbec_camera 示例应用程序使 Orbbec Gemini 摄像头 335L 能够以 RGB 或深度模式工作。此应用程序通过主题生成 RGB 和深度信息。"><a href="./enable-orbbec-gemini-335-l-with-orbbec-camera">启用 Orbbec Gemini 335L</a>（<code>orbbec\_camera</code>）</Tooltip></td>
      <td>Gemini 335L</td>
      <td><Badge color="gray" size="sm">N</Badge></td>
      <td><Badge color="green" size="sm">Y</Badge></td>
      <td><Badge color="green" size="sm">Y</Badge></td>
      <td><Badge color="green" size="sm">Y</Badge></td>
      <td><Badge color="green" size="sm">Y</Badge></td>
    </tr>

    <tr>
      <td>
        <Tooltip tip="RPLIDAR-ROS2 示例应用程序为 2D 激光扫描仪 RPLIDAR A1/A2/A3/S1/S2/S3 提供基本的设备处理。"><a href="./enable-basic-rplidar-handling-with-rplidar-ros2">启用基本 RPLIDAR 处理</a>（<code>rplidar-ros2</code>）</Tooltip>
      </td>

      <td>RPLIDAR A3M1</td>
      <td><Badge color="gray" size="sm">N</Badge></td>
      <td><Badge color="green" size="sm">Y</Badge></td>
      <td><Badge color="green" size="sm">Y</Badge></td>
      <td><Badge color="green" size="sm">Y</Badge></td>
      <td><Badge color="green" size="sm">Y</Badge></td>
    </tr>

    <tr>
      <td><Tooltip tip="qrb_ros_system_monitor 示例应用程序提供多个发布系统状态信息的 ROS 节点。"><a href="./publish-system-status-with-qrb-ros-system-monitor">发布系统状态</a>（<code>qrb\_ros\_system\_monitor</code>）</Tooltip></td>
      <td>—</td>
      <td><Badge color="gray" size="sm">N</Badge></td>
      <td><Badge color="green" size="sm">Y</Badge></td>
      <td><Badge color="green" size="sm">Y</Badge></td>
      <td><Badge color="green" size="sm">Y</Badge></td>
      <td><Badge color="green" size="sm">Y</Badge></td>
    </tr>

    <tr>
      <td><Tooltip tip="OCR-service 示例应用程序启用一个提供光学字符识别（OCR）功能的服务。"><a href="./run-basic-ocr-with-ocr-service">运行基本 OCR</a>（<code>ocr\_service</code>）</Tooltip></td>
      <td><Badge color="gray" size="sm">N</Badge></td>
      <td><Badge color="gray" size="sm">N</Badge></td>
      <td><Badge color="green" size="sm">Y</Badge></td>
      <td><Badge color="green" size="sm">Y</Badge></td>
      <td><Badge color="green" size="sm">Y</Badge></td>
      <td><Badge color="green" size="sm">Y</Badge></td>
    </tr>

    <tr>
      <td><Tooltip tip="qrb_ros_camera 实现了一个摄像头 ROS2 节点，在数据从 camera-server 输出时实现零拷贝性能。"><a href="./run-a-zero-copy-camera-with-qrb-ros-camera">运行零拷贝摄像头</a>（<code>qrb\_ros\_camera</code>）</Tooltip></td>
      <td>—</td>
      <td><Badge color="gray" size="sm">N</Badge></td>
      <td><Badge color="green" size="sm">Y</Badge></td>
      <td><Badge color="green" size="sm">Y</Badge></td>
      <td><Badge color="gray" size="sm">N</Badge></td>
      <td><Badge color="green" size="sm">Y</Badge></td>
    </tr>

    <tr>
      <td><Tooltip tip="qrb_ros_colorspace_convert 示例应用程序在 NV12 和 RGB888 格式之间进行转换。"><a href="./convert-between-nv-12-and-rgb-888-with-qrb-ros-colorspace-convert">在 NV12 和 RGB888 之间转换</a>（<code>qrb\_ros\_colorspace\_convert</code>）</Tooltip></td>
      <td>—</td>
      <td><Badge color="gray" size="sm">N</Badge></td>
      <td><Badge color="green" size="sm">Y</Badge></td>
      <td><Badge color="green" size="sm">Y</Badge></td>
      <td><Badge color="gray" size="sm">N</Badge></td>
      <td><Badge color="green" size="sm">Y</Badge></td>
    </tr>

    <tr>
      <td><Tooltip tip="qrb_ros_audio_service 是一个提供核心音频功能的 ROS 软件包，作为 ROS 生态系统中音频能力（目前支持播放和录制）的主要接口。"><a href="./enable-core-audio-with-qrb-ros-audio-service">启用核心音频</a>（<code>qrb\_ros\_audio\_service</code>）</Tooltip></td>
      <td><Badge color="gray" size="sm">N</Badge></td>
      <td><Badge color="gray" size="sm">N</Badge></td>
      <td><Badge color="green" size="sm">Y</Badge></td>
      <td><Badge color="green" size="sm">Y</Badge></td>
      <td><Badge color="gray" size="sm">N</Badge></td>
      <td><Badge color="green" size="sm">Y</Badge></td>
    </tr>

    <tr>
      <td><Tooltip tip="qrb_ros_benchmark 是一款基准测试工具，用于评估 ROS 组件在 Qualcomm 机器人平台上的性能。它提供可重用组件，用于对各种消息类型和 ROS 节点进行基准测试，重点关注零拷贝传输机制。"><a href="./evaluating-performance-of-ros-2-components-with-qrb-ros-benchmark">评估 ROS2 组件的性能</a>（<code>qrb\_ros\_benchmark</code>）</Tooltip></td>
      <td><Badge color="gray" size="sm">N</Badge></td>
      <td><Badge color="gray" size="sm">N</Badge></td>
      <td><Badge color="green" size="sm">Y</Badge></td>
      <td><Badge color="green" size="sm">Y</Badge></td>
      <td><Badge color="green" size="sm">Y</Badge></td>
      <td><Badge color="green" size="sm">Y</Badge></td>
    </tr>

    <tr>
      <td><Tooltip tip="qrb_ros_nn_inference 是一个用于执行神经网络模型的 ROS2 软件包，为机器人应用提供基于 AI 的感知能力。"><a href="./execute-ai-model-inference-with-qrb-ros-nn-inference">执行 AI 模型推理</a>（<code>qrb\_ros\_nn\_inference</code>）</Tooltip></td>
      <td><Badge color="gray" size="sm">N</Badge></td>
      <td><Badge color="gray" size="sm">N</Badge></td>
      <td><Badge color="green" size="sm">Y</Badge></td>
      <td><Badge color="green" size="sm">Y</Badge></td>
      <td><Badge color="green" size="sm">Y</Badge></td>
      <td><Badge color="green" size="sm">Y</Badge></td>
    </tr>
  </tbody>
</table>
