diff --git a/install/ros_viz_adapter/lib/ros_viz_adapter/adapter b/install/ros_viz_adapter/lib/ros_viz_adapter/adapter index 42c1888..261fe63 100755 Binary files a/install/ros_viz_adapter/lib/ros_viz_adapter/adapter and b/install/ros_viz_adapter/lib/ros_viz_adapter/adapter differ diff --git a/install/ros_viz_adapter/share/ros_viz_adapter/README.md b/install/ros_viz_adapter/share/ros_viz_adapter/README.md index bcf981e..a0ccec9 100644 --- a/install/ros_viz_adapter/share/ros_viz_adapter/README.md +++ b/install/ros_viz_adapter/share/ros_viz_adapter/README.md @@ -24,6 +24,16 @@ colcon build --packages-select ros_viz_adapter --symlink-install ros2 launch ros_viz_adapter adapter.launch.py ``` +点云可视化示例: + +```bash +ros2 launch ros_viz_adapter adapter.launch.py \ + input_fps_limit:=10 \ + output_fps:=5 \ + voxel_size_m:=0.10 \ + max_points:=50000 +``` + 参数: ```text @@ -35,6 +45,13 @@ voxel_size_m 默认 0.05 max_points 默认 100000 ``` +调参规律: +input_fps_limit 越低,适配器接收和处理次数越少; +output_fps 越低,平台网络和渲染负载越低; +voxel_size_m 越大,点越少、处理越快,但细节损失越明显,=0 可以关闭体素降采样,但通常不建议这么做; +max_points 越小,输出消息越小,但点云显示更稀疏; +input_fps_limit:=0 或 output_fps:=0 表示不限制频率。 + QoS 为 `BEST_EFFORT + KEEP_LAST + depth=1`。限频降低的是适配器处理、网络和 平台负载;如果还要降低源容器 CPU,应同时调整相机/上游发布频率。 diff --git a/install/ros_viz_adapter/share/ros_viz_adapter/launch/adapter.launch.py b/install/ros_viz_adapter/share/ros_viz_adapter/launch/adapter.launch.py index f822e51..d331c52 100644 --- a/install/ros_viz_adapter/share/ros_viz_adapter/launch/adapter.launch.py +++ b/install/ros_viz_adapter/share/ros_viz_adapter/launch/adapter.launch.py @@ -7,11 +7,19 @@ from launch_ros.actions import Node def generate_launch_description(): return LaunchDescription([ DeclareLaunchArgument('output_namespace', default_value='/viz'), + DeclareLaunchArgument('input_fps_limit', default_value='30.0'), + DeclareLaunchArgument('output_fps', default_value='10.0'), + DeclareLaunchArgument('voxel_size_m', default_value='0.05'), + DeclareLaunchArgument('max_points', default_value='100000'), Node( package='ros_viz_adapter', executable='adapter', name='ros_viz_adapter', output='screen', parameters=[{ 'output_namespace': LaunchConfiguration('output_namespace'), + 'input_fps_limit': LaunchConfiguration('input_fps_limit'), + 'output_fps': LaunchConfiguration('output_fps'), + 'voxel_size_m': LaunchConfiguration('voxel_size_m'), + 'max_points': LaunchConfiguration('max_points'), }], ), ]) diff --git a/src/ros_viz_adapter/README.md b/src/ros_viz_adapter/README.md index 1046d1d..a0ccec9 100644 --- a/src/ros_viz_adapter/README.md +++ b/src/ros_viz_adapter/README.md @@ -45,6 +45,13 @@ voxel_size_m 默认 0.05 max_points 默认 100000 ``` +调参规律: +input_fps_limit 越低,适配器接收和处理次数越少; +output_fps 越低,平台网络和渲染负载越低; +voxel_size_m 越大,点越少、处理越快,但细节损失越明显,=0 可以关闭体素降采样,但通常不建议这么做; +max_points 越小,输出消息越小,但点云显示更稀疏; +input_fps_limit:=0 或 output_fps:=0 表示不限制频率。 + QoS 为 `BEST_EFFORT + KEEP_LAST + depth=1`。限频降低的是适配器处理、网络和 平台负载;如果还要降低源容器 CPU,应同时调整相机/上游发布频率。