感知启动文件#
概述#
Autoware 感知堆栈启动
正如我们在 [Launch Autoware] 中提到的,以 autoware_launch.xml 启动(../index.md) 页面.
autoware_launch 套餐包括 tier4_perception_component.launch.xml
用于从 autoware_launch.xml 启动感知启动文件调用.
此图描述了 autoware_launch 和 autoware_universe 包中的一些 Autoware 感知启动文件流.
注意
Autoware 项目是一个大型项目. 因此,当我们管理 Autoware 项目时,我们会使用特定的 参数. ROS 2 为这些启动文件提供了参数覆盖功能. 有关更多信息,请参阅 官方 ROS 2 启动文档. 例如 如果我们在顶级启动中定义一个参数, 它将覆盖较低级别启动时的值.
tier4_perception_component.launch.xml#
tier4_perception_component.launch.xml 启动文件是 autoware_launch 包中的主要感知组件启动.
此启动文件在 autoware_universe 存储库的 tier4_perception_launch 包中调用 perception.launch.xml.
我们可以在 tier4_perception_component.launch.xml 修改 perception launch 参数.
我们可以添加任何其他必要的参数,我们想要的,更改它,因为 tier4_perception_component.launch.xml 是其他感知启动文件的顶级启动文件.
以下是一些预定义的感知启动参数:
-
occupancy_grid_map_method:此参数确定感知堆栈的占用网格映射方法.请查看 probabilistic_occupancy_grid_map 套件了解详细信息. 默认的概率占用格网地图方法是pointcloud_based_occupancy_grid_map. 如果您想将其更改为laserscan_based_occupancy_grid_map,您可以在此处更改它:- <arg name="occupancy_grid_map_method" default="pointcloud_based_occupancy_grid_map" description="options: pointcloud_based_occupancy_grid_map, laserscan_based_occupancy_grid_map"/> + <arg name="occupancy_grid_map_method" default="laserscan_based_occupancy_grid_map" description="options: pointcloud_based_occupancy_grid_map, laserscan_based_occupancy_grid_map"/>
-
detected_objects_filter_method:此参数确定检测到的对象的过滤方法. 请查看 detected_object_validation 包以获取有关 lanelet 和 position filter 的详细信息. 默认检测到的对象筛选方法是lanelet_filter. 如果您想将其更改为position_filter,您可以在此处更改它:- <arg name="detected_objects_filter_method" default="lanelet_filter" description="options: lanelet_filter, position_filter"/> + <arg name="detected_objects_filter_method" default="position_filter" description="options: lanelet_filter, position_filter"/>
-
detected_objects_validation_method:此参数确定检测到的对象的验证方法. 请查看 detected_object_validation 软件包以获取有关验证方法的详细信息. 默认检测到的对象筛选方法是obstacle_pointcloud. 如果你想把它改成occupancy_grid,你可以在这里改, 但请记住,它需要laserscan_based_occupancy_grid_map方法作为occupancy_grid_map_method:- <arg name="occupancy_grid_map_method" default="pointcloud_based_occupancy_grid_map" description="options: pointcloud_based_occupancy_grid_map, laserscan_based_occupancy_grid_map"/> + <arg name="occupancy_grid_map_method" default="laserscan_based_occupancy_grid_map" description="options: pointcloud_based_occupancy_grid_map, laserscan_based_occupancy_grid_map"/> <arg name="detected_objects_validation_method" - default="obstacle_pointcloud" + default="occupancy_grid" description="options: obstacle_pointcloud, occupancy_grid (occupancy_grid_map_method must be laserscan_based_occupancy_grid_map)" />
注意
您还可以将此参数用作命令行参数:
ros2 launch autoware_launch autoware.launch.xml ... detected_objects_filter_method:=lanelet_filter occupancy_grid_map_method:=laserscan_based_occupancy_grid_map ...
上面解释的预定义 tier4_perception_component.launch.xml 参数,
但有很多看法的争论
包含在 tier4_perception_launch 的 perception.launch.xml 启动文件中.
由于我们没有 fork autoware_universe 仓库,
我们可以将必要的 launch 参数添加到 tier4_perception_component.launch.xml 文件中.
请遵循指南中的一些示例.
perception.launch.xml#
perception.launch.xml 启动文件是 autoware_universe 的主要感知启动.
此启动文件调用必要的感知启动文件
正如我们在上面提到的 Autoware 感知启动流程图.
perception.launch.xml 的顶级启动文件是 tier4_perception_component.launch.xml,
因此,如果我们想更改 perception.launch.xml 上的任何内容,
我们将 tier4_perception_component.launch.xml 而不是 perception.launch.xml 应用这些更改.
以下是感知管道的一些示例更改:
-
remove_unknown:此参数用于确定在相机-激光雷达融合时移除未知对象. 请查看 roi_cluster_fusion 节点了解详细信息. 默认值为true, 如果你想把它改成false, 你可以将这个参数添加到tier4_perception_component.launch.xml中, 所以它会覆盖perception.launch.xml的argument:+ <arg name="remove_unknown" default="false"/>
-
camera topics:如果您使用相机-激光雷达融合或相机-激光雷达-雷达融合作为perception_mode, 您也可以在tier4_perception_component.launch.xml上添加您的相机和信息主题, 它将覆盖perception.launch.xml启动文件参数:+ <arg name="image_raw0" default="/sensing/camera/camera0/image_rect_color" description="image raw topic name"/> + <arg name="camera_info0" default="/sensing/camera/camera0/camera_info" description="camera info topic name"/> + <arg name="detection_rois0" default="/perception/object_recognition/detection/rois0" description="detection rois output topic name"/> ...
您可以添加所有必要的参数,以 tier4_perception_component.launch.xml 启动文件,就像这些例子一样.