Files
OrbbecSDK_ROS2/source/6_benchmark/performance/benchmark.html
T

401 lines
36 KiB
HTML

<!DOCTYPE html>
<html class="writer-html5" lang="en" data-content_root="../../../">
<head>
<meta charset="utf-8" /><meta name="viewport" content="width=device-width, initial-scale=1" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Ob_benchmark tool &mdash; OrbbecSDK V2 ROS2 Wrapper documentation</title>
<link rel="stylesheet" type="text/css" href="../../../_static/pygments.css?v=b86133f3" />
<link rel="stylesheet" type="text/css" href="../../../_static/css/theme.css?v=e59714d7" />
<link rel="stylesheet" type="text/css" href="../../../_static/custom.css?v=a2eacb60" />
<link rel="shortcut icon" href="../../../_static/orbbec_footerlogo_3d_world.svg"/>
<script src="../../../_static/jquery.js?v=5d32c60e"></script>
<script src="../../../_static/_sphinx_javascript_frameworks_compat.js?v=2cd50e6c"></script>
<script src="../../../_static/documentation_options.js?v=5929fcd5"></script>
<script src="../../../_static/doctools.js?v=9bcbadda"></script>
<script src="../../../_static/sphinx_highlight.js?v=dc90522c"></script>
<script src="../../../_static/js/theme.js"></script>
<link rel="index" title="Index" href="../../../genindex.html" />
<link rel="search" title="Search" href="../../../search.html" />
</head>
<body class="wy-body-for-nav">
<div class="wy-grid-for-nav">
<nav data-toggle="wy-nav-shift" class="wy-nav-side">
<div class="wy-side-scroll">
<div class="wy-side-nav-search" >
<a href="../../../index.html" class="icon icon-home">
OrbbecSDK V2 ROS2 Wrapper
</a>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="../../../search.html" method="get">
<input type="text" name="q" placeholder="Search docs" aria-label="Search docs" />
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
</form>
</div>
</div><div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="Navigation menu">
<ul>
<li class="toctree-l1"><a class="reference internal" href="../../1_overview/overview.html">1. Overview</a><ul>
<li class="toctree-l2"><a class="reference internal" href="../../1_overview/introduction.html">1.1. Introduction</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../../1_overview/introduction.html#support-hardware-products">1.1.1. Support Hardware Products</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../1_overview/introduction.html#orbbec-camera-datasheet">1.1.2. Orbbec camera datasheet</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../1_overview/introduction.html#support-platforms">1.1.3. Support Platforms</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../../1_overview/orbbecsdk_overview.html">1.2. Orbbec SDK Overview</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../../1_overview/orbbecsdk_overview.html#terms">1.2.1. Terms</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../1_overview/orbbecsdk_overview.html#orbbec-sdk-v2-architecture-overview">1.2.2. Orbbec SDK v2 Architecture Overview</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../1_overview/orbbecsdk_overview.html#sdk-concept-overview">1.2.3. SDK Concept Overview</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../1_overview/orbbecsdk_overview.html#sdk-programming-model">1.2.4. SDK Programming Model</a></li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="../../2_installation/installation.html">2. Installation</a><ul>
<li class="toctree-l2"><a class="reference internal" href="../../2_installation/build_the_package.html">2.1. Build from Source</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../../2_installation/build_the_package.html#environment">2.1.1. Environment</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../2_installation/build_the_package.html#linux-ros2-wrapper-compilation">2.1.2. Linux ROS2 Wrapper Compilation</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../../2_installation/registration_script.html">2.2. Registration script (required)</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="../../3_quickstarts/quickstarts.html">3. Quickstarts</a><ul>
<li class="toctree-l2"><a class="reference internal" href="../../3_quickstarts/quickstart.html">3.1. QuickStarts</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../../3_quickstarts/quickstart.html#introduction">3.1.1. Introduction</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../3_quickstarts/quickstart.html#build-your-first-camera-application">3.1.2. Build your First Camera Application</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../../3_quickstarts/quickstart.html#step-1-source-ros-2-and-workspace">3.1.2.1. Step 1: Source ROS 2 and Workspace</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../3_quickstarts/quickstart.html#step-2-launch-the-camera-node">3.1.2.2. Step 2: Launch the Camera Node</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../3_quickstarts/quickstart.html#step-3-visualize-in-rviz2">3.1.2.3. Step 3: Visualize in RViz2</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../../3_quickstarts/quickstart.html#sample-features">3.1.3. Sample Features</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../../3_quickstarts/quickstart.html#list-available-topics-services-parameters">3.1.3.1. List available topics / services/ parameters</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../3_quickstarts/quickstart.html#echo-a-topic">3.1.3.2. Echo a topic</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../3_quickstarts/quickstart.html#call-a-service">3.1.3.3. Call a service</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../3_quickstarts/quickstart.html#record-with-rosbag2">3.1.3.4. Record with rosbag2</a></li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../../3_quickstarts/orbbecviewer.html">3.2. OrbbecViewer tutorial</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../../3_quickstarts/orbbecviewer.html#download">3.2.1. Download</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../3_quickstarts/orbbecviewer.html#connect-the-device">3.2.2. Connect the device</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../3_quickstarts/orbbecviewer.html#camera-control">3.2.3. Camera Control</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../3_quickstarts/orbbecviewer.html#device-information-and-firmware-upgrade">3.2.4. Device information and firmware upgrade</a></li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="../../4_application_guide/application_guide.html">4. Application Guide</a><ul>
<li class="toctree-l2"><a class="reference internal" href="../../4_application_guide/launch_parameters.html">4.1. Launch parameters</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../../4_application_guide/launch_parameters.html#core-stream-configuration">4.1.1. Core &amp; Stream Configuration</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../4_application_guide/launch_parameters.html#sensor-controls">4.1.2. Sensor Controls</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../../4_application_guide/launch_parameters.html#color-stream">4.1.2.1. Color Stream</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../4_application_guide/launch_parameters.html#depth-stream">4.1.2.2. Depth Stream</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../4_application_guide/launch_parameters.html#ir-stream">4.1.2.3. IR Stream</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../4_application_guide/launch_parameters.html#laser-ldp">4.1.2.4. Laser / LDP</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../../4_application_guide/launch_parameters.html#device-sync-advanced-features">4.1.3. Device, Sync &amp; Advanced Features</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../../4_application_guide/launch_parameters.html#multi-camera-synchronization">4.1.3.1. Multi-Camera Synchronization</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../4_application_guide/launch_parameters.html#network-cameras">4.1.3.2. Network Cameras</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../4_application_guide/launch_parameters.html#device-specific">4.1.3.3. Device-Specific</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../4_application_guide/launch_parameters.html#disparity">4.1.3.4. Disparity</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../4_application_guide/launch_parameters.html#interleave-ae-mode">4.1.3.5. Interleave AE Mode</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../../4_application_guide/launch_parameters.html#basic-general-parameters">4.1.4. Basic &amp; General Parameters</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../../4_application_guide/launch_parameters.html#firmware-backend">4.1.4.1. Firmware &amp; Backend</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../4_application_guide/launch_parameters.html#tf-extrinsics-calibration">4.1.4.2. TF, Extrinsics &amp; Calibration</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../4_application_guide/launch_parameters.html#time-synchronization">4.1.4.3. Time Synchronization</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../4_application_guide/launch_parameters.html#logging-diagnostics">4.1.4.4. Logging &amp; Diagnostics</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../4_application_guide/launch_parameters.html#miscellaneous">4.1.4.5. Miscellaneous</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../../4_application_guide/launch_parameters.html#imu">4.1.5. IMU</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../4_application_guide/launch_parameters.html#depth-filters">4.1.6. Depth Filters</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../../4_application_guide/services.html">4.2. All available services for camera control</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../../4_application_guide/services.html#stream-control">4.2.1. Stream Control</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../../4_application_guide/services.html#color-stream">4.2.1.1. Color Stream</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../4_application_guide/services.html#depth-stream">4.2.1.2. Depth Stream</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../4_application_guide/services.html#ir-stream">4.2.1.3. IR Stream</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../4_application_guide/services.html#all-streams">4.2.1.4. All Streams</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../../4_application_guide/services.html#sensor-emitter-control">4.2.2. Sensor &amp; Emitter Control</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../4_application_guide/services.html#device-information-management">4.2.3. Device Information &amp; Management</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../4_application_guide/services.html#synchronization-triggering">4.2.4. Synchronization &amp; Triggering</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../4_application_guide/services.html#depth-filter-configuration">4.2.5. Depth Filter Configuration</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../4_application_guide/services.html#data-capture-calibration-management">4.2.6. Data Capture &amp; Calibration Management</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../../4_application_guide/topics.html">4.3. Available Topics</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../../4_application_guide/topics.html#image-streams">4.3.1. Image Streams</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../4_application_guide/topics.html#point-cloud-topics">4.3.2. Point Cloud Topics</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../4_application_guide/topics.html#imu-topics">4.3.3. IMU Topics</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../4_application_guide/topics.html#device-status-diagnostics">4.3.4. Device Status &amp; Diagnostics</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../../4_application_guide/coordinate_systems.html">4.4. ROS2(Robot) vs Optical(Camera) Coordination Systems</a></li>
<li class="toctree-l2"><a class="reference internal" href="../../4_application_guide/camera_sensor_structure.html">4.5. Camera sensor structure</a></li>
<li class="toctree-l2"><a class="reference internal" href="../../4_application_guide/tf_transformations.html">4.6. TF from coordinate A to coordinate B:</a></li>
<li class="toctree-l2"><a class="reference internal" href="../../4_application_guide/compressed_image.html">4.7. Compressed Image</a></li>
<li class="toctree-l2"><a class="reference internal" href="../../4_application_guide/point_cloud.html">4.8. Enabling and Visualizing Point Cloud in ROS 2</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../../4_application_guide/point_cloud.html#enabling-depth-point-cloud">4.8.1. Enabling Depth Point Cloud</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../../4_application_guide/point_cloud.html#command-to-enable-depth-point-cloud">4.8.1.1. Command to Enable Depth Point Cloud</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../4_application_guide/point_cloud.html#visualizing-depth-point-cloud-in-rviz2">4.8.1.2. Visualizing Depth Point Cloud in RViz2</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../../4_application_guide/point_cloud.html#enabling-colored-point-cloud">4.8.2. Enabling Colored Point Cloud</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../../4_application_guide/point_cloud.html#command-to-enable-colored-point-cloud">4.8.2.1. Command to Enable Colored Point Cloud</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../4_application_guide/point_cloud.html#visualizing-colored-point-cloud-in-rviz2">4.8.2.2. Visualizing Colored Point Cloud in RViz2</a></li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="../../5_advanced_guide/advanced_guide.html">5. Advanced Guide</a><ul>
<li class="toctree-l2"><a class="reference internal" href="../../5_advanced_guide/advanced_guide.html#multi-camera">5.1. Multi-Camera</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../../5_advanced_guide/multi_camera/multi_camera.html">5.1.1. Multi-Camera</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../../5_advanced_guide/multi_camera/multi_camera.html#no-data-stream-from-multiple-cameras">5.1.1.1. No Data Stream from Multiple Cameras</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../5_advanced_guide/multi_camera/multi_camera.html#image-topic-frame-rate-too-low-from-multiple-cameras">5.1.1.2. Image topic frame rate too low from Multiple Cameras</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../../5_advanced_guide/multi_camera/multi_camera_synced.html">5.1.2. Multi_camera synced Instructions</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../../5_advanced_guide/multi_camera/multi_camera_synced.html#setup-instructions">5.1.2.1. Setup instructions</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../5_advanced_guide/multi_camera/multi_camera_synced.html#checking-camera-port-with-orbbecsdk-ros2">5.1.2.2. Checking camera port with OrbbecSDK_ROS2</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../5_advanced_guide/multi_camera/multi_camera_synced.html#orbbecsdk-ros2-multi-camera-synced-configuration">5.1.2.3. OrbbecSDK_ROS2 multi-camera synced configuration</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../5_advanced_guide/multi_camera/multi_camera_synced.html#run-the-following-command-to-start-the-multi-camera-synced">5.1.2.4. Run the following command to start the multi-camera synced</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../../5_advanced_guide/multi_camera/multi_camera_synced_verification_tool.html">5.1.3. Multi_camera_synced_verification_tool</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../../5_advanced_guide/multi_camera/multi_camera_synced_verification_tool.html#directory-structure">5.1.3.1. Directory Structure</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../5_advanced_guide/multi_camera/multi_camera_synced_verification_tool.html#preparation-for-operation">5.1.3.2. Preparation for operation</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../5_advanced_guide/multi_camera/multi_camera_synced_verification_tool.html#run-this-example">5.1.3.3. Run this example</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../5_advanced_guide/multi_camera/multi_camera_synced_verification_tool.html#files-that-need-to-be-changed">5.1.3.4. Files that need to be changed</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../../5_advanced_guide/multi_camera/gmsl_camera.html">5.1.4. GMSL_camera</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../../5_advanced_guide/multi_camera/gmsl_camera.html#single-gmsl-camera">5.1.4.1. Single GMSL camera</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../5_advanced_guide/multi_camera/gmsl_camera.html#multi-gmsl-camera">5.1.4.2. Multi GMSL camera</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../5_advanced_guide/multi_camera/gmsl_camera.html#multi-gmsl-camera-synced">5.1.4.3. Multi GMSL camera synced</a></li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../../5_advanced_guide/advanced_guide.html#configuration-modes">5.2. Configuration &amp; Modes</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../../5_advanced_guide/configuration/align_depth_color.html">5.2.1. Aligning Depth to Color in ROS 2</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../../5_advanced_guide/configuration/align_depth_color.html#commands-to-align-and-view-depth-and-color-images">5.2.1.1. Commands to Align and View Depth and Color Images</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../5_advanced_guide/configuration/align_depth_color.html#selecting-topics-in-rviz2">5.2.1.2. Selecting Topics in RViz2</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../5_advanced_guide/configuration/align_depth_color.html#example-of-depth-to-color-overlay">5.2.1.3. Example of Depth to Color Overlay</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../../5_advanced_guide/configuration/configuration_of_depth_NFOV_and_WFOV_modes.html">5.2.2. Configuration of depth NFOV and WFOV modes</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../5_advanced_guide/configuration/depth_work_mode_switch.html">5.2.3. Depth work mode switch</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../5_advanced_guide/configuration/disparity_search_offset.html">5.2.4. Disparity_search_offset</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../../5_advanced_guide/configuration/disparity_search_offset.html#function-introduction">5.2.4.1. Function Introduction</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../5_advanced_guide/configuration/disparity_search_offset.html#parameter-introduction">5.2.4.2. Parameter Introduction</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../5_advanced_guide/configuration/disparity_search_offset.html#run-the-launch">5.2.4.3. Run the launch</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../../5_advanced_guide/configuration/interleave_ae_mode.html">5.2.5. Using interleave_ae with Gemini330 series cameras</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../../5_advanced_guide/configuration/interleave_ae_mode.html#parameter-introduction">5.2.5.1. Parameter Introduction</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../5_advanced_guide/configuration/interleave_ae_mode.html#run-the-launch">5.2.5.2. Run the launch</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../5_advanced_guide/configuration/interleave_ae_mode.html#multi-camera-synced-interleave-ae">5.2.5.3. Multi_camera_synced + Interleave_ae</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../../5_advanced_guide/configuration/predefined_presets.html">5.2.6. Predefined presets</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../5_advanced_guide/configuration/net_camera.html">5.2.7. Net_camera</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../../5_advanced_guide/configuration/net_camera.html#femto-mega-gemini-435le">5.2.7.1. Femto Mega &amp; Gemini 435Le</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../5_advanced_guide/configuration/net_camera.html#gemini-335le">5.2.7.2. Gemini 335Le</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../5_advanced_guide/configuration/net_camera.html#multi-net-camera">5.2.7.3. Multi Net camera</a></li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="../benchmark.html">6. Benchmark</a><ul>
<li class="toctree-l2"><a class="reference internal" href="../introduction.html">6.1. Introduction</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../introduction.html#common-benchmark-node">6.1.1. common benchmark node</a></li>
<li class="toctree-l3"><a class="reference internal" href="../introduction.html#service-benchmark-node">6.1.2. service benchmark node</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../benchmark_usage.html">6.2. Benchmark Usage</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../benchmark_usage.html#using-common-benchmark-node">6.2.1. Using common benchmark node</a></li>
<li class="toctree-l3"><a class="reference internal" href="../benchmark_usage.html#using-service-benchmark-node">6.2.2. Using service benchmark node</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../benchmark_usage.html#ros2-c">6.2.2.1. ROS2 C++</a></li>
<li class="toctree-l4"><a class="reference internal" href="../benchmark_usage.html#ros2-python">6.2.2.2. ROS2 Python</a></li>
<li class="toctree-l4"><a class="reference internal" href="../benchmark_usage.html#example-yaml-configuration">6.2.2.3. <strong>Example YAML configuration</strong></a></li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../benchmark_data.html">6.3. Benchmark Data</a></li>
<li class="toctree-l2"><a class="reference internal" href="../performance.html">6.4. Performance &amp; Optimization</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../performance.html#ob-benchmark-tool">6.4.1. Ob_benchmark tool</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../performance.html#tool-configuration-start-benchmark-params-json">6.4.1.1. Tool Configuration (start_benchmark_params.json)</a></li>
<li class="toctree-l4"><a class="reference internal" href="../performance.html#camera-configuration-launch-files">6.4.1.2. Camera configuration (launch files)</a></li>
<li class="toctree-l4"><a class="reference internal" href="../performance.html#running-the-ob-benchmark-tool">6.4.1.3. Running the ob_benchmark tool</a></li>
<li class="toctree-l4"><a class="reference internal" href="../performance.html#output-data-files">6.4.1.4. Output Data Files</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../performance.html#reducing-cpu-usage-with-orbbec-ros-package">6.4.2. Reducing CPU Usage with Orbbec ROS Package</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../performance.html#recommended-settings-for-lower-cpu-usage">6.4.2.1. Recommended Settings for Lower CPU Usage</a></li>
<li class="toctree-l4"><a class="reference internal" href="../performance.html#launch-files-used-for-testing">6.4.2.2. Launch Files Used for Testing</a></li>
<li class="toctree-l4"><a class="reference internal" href="../performance.html#test-environment">6.4.2.3. Test environment</a></li>
<li class="toctree-l4"><a class="reference internal" href="../performance.html#test-setup">6.4.2.4. Test Setup</a></li>
<li class="toctree-l4"><a class="reference internal" href="../performance.html#test-results">6.4.2.5. Test Results</a></li>
<li class="toctree-l4"><a class="reference internal" href="../performance.html#further-optimizationa">6.4.2.6. Further Optimizationa</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../performance.html#efficient-intra-process-communication">6.4.3. Efficient intra-process communication</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../performance.html#introduction">6.4.3.1. Introduction</a></li>
<li class="toctree-l4"><a class="reference internal" href="../performance.html#example">6.4.3.2. Example</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../performance.html#fast-dds-optimization-for-orbbec-camera-with-ros2">6.4.4. Fast DDS Optimization for Orbbec Camera with ROS2</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../performance.html#adjusting-system-parameters">6.4.4.1. Adjusting System Parameters</a></li>
<li class="toctree-l4"><a class="reference internal" href="../performance.html#fast-dds-configuration">6.4.4.2. Fast DDS Configuration</a></li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="../../7_developer_guide/developer_guide.html">7. Developer Guide</a><ul>
<li class="toctree-l2"><a class="reference internal" href="../../7_developer_guide/building_a_Debian_Package.html">7.1. Building a Debian Package</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../../7_developer_guide/building_a_Debian_Package.html#preparing-the-environment">7.1.1. Preparing the Environment</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../7_developer_guide/building_a_Debian_Package.html#configuring-ros-dependencies">7.1.2. Configuring ROS Dependencies</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../7_developer_guide/building_a_Debian_Package.html#building-the-package">7.1.3. Building the Package</a></li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="../../8_FAQ/FAQ.html">8. Frequently Asked Questions</a><ul>
<li class="toctree-l2"><a class="reference internal" href="../../8_FAQ/FAQ.html#unexpected-crash">8.1. Unexpected Crash</a></li>
<li class="toctree-l2"><a class="reference internal" href="../../8_FAQ/FAQ.html#no-data-stream-from-multiple-cameras">8.2. No Data Stream from Multiple Cameras</a></li>
<li class="toctree-l2"><a class="reference internal" href="../../8_FAQ/FAQ.html#additional-troubleshooting">8.3. Additional Troubleshooting</a></li>
<li class="toctree-l2"><a class="reference internal" href="../../8_FAQ/FAQ.html#why-are-there-so-many-launch-files">8.4. Why Are There So Many Launch Files?</a></li>
</ul>
</li>
</ul>
</div>
</div>
</nav>
<section data-toggle="wy-nav-shift" class="wy-nav-content-wrap"><nav class="wy-nav-top" aria-label="Mobile navigation menu" >
<i data-toggle="wy-nav-top" class="fa fa-bars"></i>
<a href="../../../index.html">OrbbecSDK V2 ROS2 Wrapper</a>
</nav>
<div class="wy-nav-content">
<div class="rst-content">
<div role="navigation" aria-label="Page navigation">
<ul class="wy-breadcrumbs">
<li><a href="../../../index.html" class="icon icon-home" aria-label="Home"></a></li>
<li class="breadcrumb-item active">Ob_benchmark tool</li>
<li class="wy-breadcrumbs-aside">
<a href="../../../_sources/source/6_benchmark/performance/benchmark.md.txt" rel="nofollow"> View page source</a>
</li>
</ul>
<hr/>
</div>
<div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
<div itemprop="articleBody">
<section id="ob-benchmark-tool">
<h1>Ob_benchmark tool<a class="headerlink" href="#ob-benchmark-tool" title="Link to this heading"></a></h1>
<blockquote>
<div><p>The goal of this tool is to benchmark the performance of various OrbbecSDK_ROS2 camera configurations. The benchmark results depend on the camera and settings used.(Currently only works with ROS2 Humble)</p>
</div></blockquote>
<p>You can find example usage code in the <a class="reference external" href="https://github.com/orbbec/OrbbecSDK_ROS2/tree/v2-main/orbbec_camera/examples">example</a>.</p>
<section id="tool-configuration-start-benchmark-params-json">
<h2>Tool Configuration (<a class="reference external" href="https://github.com/orbbec/OrbbecSDK_ROS2/blob/v2-main/orbbec_camera/config/tools/startbenchmark/start_benchmark_params.json">start_benchmark_params.json</a>)<a class="headerlink" href="#tool-configuration-start-benchmark-params-json" title="Link to this heading"></a></h2>
<div class="highlight-json notranslate"><div class="highlight"><pre><span></span><span class="p">{</span>
<span class="w"> </span><span class="nt">&quot;start_benchmark_params&quot;</span><span class="p">:</span><span class="w"> </span><span class="p">{</span>
<span class="w"> </span><span class="nt">&quot;camera_name&quot;</span><span class="p">:</span><span class="w"> </span><span class="p">[</span>
<span class="w"> </span><span class="s2">&quot;camera_01&quot;</span><span class="p">,</span>
<span class="w"> </span><span class="s2">&quot;camera_02&quot;</span><span class="p">,</span>
<span class="w"> </span><span class="s2">&quot;camera_03&quot;</span><span class="p">,</span>
<span class="w"> </span><span class="s2">&quot;camera_04&quot;</span>
<span class="w"> </span><span class="p">],</span>
<span class="w"> </span><span class="nt">&quot;process_name&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;component_conta&quot;</span><span class="p">,</span>
<span class="w"> </span><span class="nt">&quot;switch_cycle&quot;</span><span class="p">:</span><span class="w"> </span><span class="mi">300</span><span class="p">,</span>
<span class="w"> </span><span class="nt">&quot;test_cycle&quot;</span><span class="p">:</span><span class="w"> </span><span class="mi">1</span><span class="p">,</span>
<span class="w"> </span><span class="nt">&quot;skip_number&quot;</span><span class="p">:</span><span class="w"> </span><span class="mi">30</span>
<span class="w"> </span><span class="p">}</span>
<span class="p">}</span>
</pre></div>
</div>
<ul class="simple">
<li><p><code class="docutils literal notranslate"><span class="pre">camera_name</span></code>: Names of the cameras to be configured. Example: <code class="docutils literal notranslate"><span class="pre">&quot;camera_01&quot;</span></code>, <code class="docutils literal notranslate"><span class="pre">&quot;camera_02&quot;</span></code>, etc.</p></li>
<li><p><code class="docutils literal notranslate"><span class="pre">process_name</span></code>: The name of the process to be monitored. For example, <code class="docutils literal notranslate"><span class="pre">&quot;component_conta&quot;</span></code> will monitor the data of the container process.</p></li>
<li><p><code class="docutils literal notranslate"><span class="pre">switch_cycle</span></code>: The cycle time for switching configurations, in seconds. For example, setting it to <code class="docutils literal notranslate"><span class="pre">300</span></code> means the configuration will switch every 300 seconds.</p></li>
<li><p><code class="docutils literal notranslate"><span class="pre">test_cycle</span></code>: The testing cycle, in seconds. For example, setting it to <code class="docutils literal notranslate"><span class="pre">1</span></code> means the tool will collect data for the monitored process every 1 second.</p></li>
<li><p><code class="docutils literal notranslate"><span class="pre">skip_number</span></code>: The number of data points to skip. For example, setting it to <code class="docutils literal notranslate"><span class="pre">30</span></code> means that the first 30 data points will be ignored.</p></li>
</ul>
</section>
<section id="camera-configuration-launch-files">
<h2>Camera configuration (launch files)<a class="headerlink" href="#camera-configuration-launch-files" title="Link to this heading"></a></h2>
<p>In the launch folder, there are multiple.launch.py files (<code class="docutils literal notranslate"><span class="pre">ob_benchmark_0.launch.py</span></code>, <code class="docutils literal notranslate"><span class="pre">ob_benchmark_1.launch.py</span></code>, …, <code class="docutils literal notranslate"><span class="pre">ob_benchmark_19.launch.py</span></code>). Each file corresponds to a different camera configuration.</p>
</section>
<section id="running-the-ob-benchmark-tool">
<h2>Running the ob_benchmark tool<a class="headerlink" href="#running-the-ob-benchmark-tool" title="Link to this heading"></a></h2>
<p>To run the tool, use the following commands:</p>
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span><span class="nb">source</span><span class="w"> </span>install/setup.bash
ros2<span class="w"> </span>run<span class="w"> </span>orbbec_camera<span class="w"> </span>ob_benchmark_node
</pre></div>
</div>
</section>
<section id="output-data-files">
<h2>Output Data Files<a class="headerlink" href="#output-data-files" title="Link to this heading"></a></h2>
<p>The output data files will be stored in the ob_benchmark folder with filenames like <code class="docutils literal notranslate"><span class="pre">0.csv</span></code>, <code class="docutils literal notranslate"><span class="pre">1.csv</span></code>, …, 19.csv. For example:</p>
<ul class="simple">
<li><p><code class="docutils literal notranslate"><span class="pre">0.csv</span></code> contains data from the <code class="docutils literal notranslate"><span class="pre">ob_benchmark_0.launch.py</span></code> configuration.</p></li>
<li><p><code class="docutils literal notranslate"><span class="pre">1.csv</span></code> contains data from the <code class="docutils literal notranslate"><span class="pre">ob_benchmark_1.launch.py</span></code> configuration.</p></li>
</ul>
</section>
</section>
</div>
</div>
<footer>
<hr/>
<div role="contentinfo">
<p>&#169; Copyright 2025, ORBBEC INC. www.orbbec.com..
<span class="lastupdated">Last updated on 2025-09-25 13:04:17.
</span></p>
</div>
</footer>
</div>
</div>
</section>
</div>
<script>
jQuery(function () {
SphinxRtdTheme.Navigation.enable(true);
});
</script>
</body>
</html>