No version for distro humble. Known supported distros are highlighted in the buttons above.
No version for distro jazzy. Known supported distros are highlighted in the buttons above.
No version for distro kilted. Known supported distros are highlighted in the buttons above.
No version for distro rolling. Known supported distros are highlighted in the buttons above.

autoware_map_loader package from autoware_core repo

autoware_core autoware_component_interface_specs autoware_geography_utils autoware_global_parameter_loader autoware_interpolation autoware_kalman_filter autoware_lanelet2_utils autoware_motion_utils autoware_node autoware_object_recognition_utils autoware_osqp_interface autoware_point_types autoware_qp_interface autoware_signal_processing autoware_trajectory autoware_vehicle_info_utils autoware_core_control autoware_simple_pure_pursuit autoware_core_localization autoware_ekf_localizer autoware_gyro_odometer autoware_localization_util autoware_ndt_scan_matcher autoware_pose_initializer autoware_stop_filter autoware_twist2accel autoware_core_map autoware_lanelet2_map_visualizer autoware_map_height_fitter autoware_map_loader autoware_map_projection_loader autoware_core_perception autoware_euclidean_cluster_object_detector autoware_ground_filter autoware_perception_objects_converter autoware_core_planning autoware_mission_planner autoware_objects_of_interest_marker_interface autoware_path_generator autoware_planning_factor_interface autoware_planning_topic_converter autoware_route_handler autoware_velocity_smoother autoware_behavior_velocity_planner autoware_behavior_velocity_planner_common autoware_behavior_velocity_stop_line_module autoware_motion_velocity_obstacle_stop_module autoware_motion_velocity_planner autoware_motion_velocity_planner_common autoware_core_sensing autoware_crop_box_filter autoware_downsample_filters autoware_gnss_poser autoware_vehicle_velocity_converter autoware_planning_test_manager autoware_pyplot autoware_test_node autoware_test_utils autoware_testing autoware_core_vehicle

Package Summary

Tags No category tags.
Version 1.1.0
License Apache License 2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Description
Checkout URI https://github.com/autowarefoundation/autoware_core.git
VCS Type git
VCS Version main
Last Updated 2025-06-07
Dev Status UNKNOWN
CI status No Continuous Integration
Released UNRELEASED
Tags planner ros calibration self-driving-car autonomous-driving autonomous-vehicles ros2 3d-map autoware
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

The autoware_map_loader package

Additional Links

No additional links.

Maintainers

  • Yamato Ando
  • Ryu Yamamoto
  • Masahiro Sakamoto
  • Kento Yabuuchi
  • NGUYEN Viet Anh
  • Taiki Yamada
  • Shintaro Sakoda

Authors

  • Ryohsuke Mitsudome
  • Koji Minoda

autoware_map_loader package

This package provides the features of loading various maps.

pointcloud_map_loader

Feature

pointcloud_map_loader provides pointcloud maps to the other Autoware nodes in various configurations. Currently, it supports the following two types:

  • Publish raw pointcloud map
  • Publish downsampled pointcloud map
  • Send partial pointcloud map loading via ROS 2 service
  • Send differential pointcloud map loading via ROS 2 service

NOTE: We strongly recommend to use divided maps when using large pointcloud map to enable the latter two features (partial and differential load). Please go through the prerequisites section for more details, and follow the instruction for dividing the map and preparing the metadata.

Prerequisites

Prerequisites on pointcloud map file(s)

You may provide either a single .pcd file or multiple .pcd files. If you are using multiple PCD data, it MUST obey the following rules:

  1. The pointcloud map should be projected on the same coordinate defined in map_projection_loader, in order to be consistent with the lanelet2 map and other packages that converts between local and geodetic coordinates. For more information, please refer to the readme of map_projection_loader.
  2. It must be divided by straight lines parallel to the x-axis and y-axis. The system does not support division by diagonal lines or curved lines.
  3. The division size along each axis should be equal.
  4. The division size should be about 20m x 20m. Particularly, care should be taken as using too large division size (for example, more than 100m) may have adverse effects on dynamic map loading features in ndt_scan_matcher and autoware_compare_map_segmentation.
  5. All the split maps should not overlap with each other.
  6. Metadata file should also be provided. The metadata structure description is provided below.

Metadata structure

The metadata should look like this:

x_resolution: 20.0
y_resolution: 20.0
A.pcd: [1200, 2500] # -> 1200 < x < 1220, 2500 < y < 2520
B.pcd: [1220, 2500] # -> 1220 < x < 1240, 2500 < y < 2520
C.pcd: [1200, 2520] # -> 1200 < x < 1220, 2520 < y < 2540
D.pcd: [1240, 2520] # -> 1240 < x < 1260, 2520 < y < 2540

where,

  • x_resolution and y_resolution
  • A.pcd, B.pcd, etc, are the names of PCD files.
  • List such as [1200, 2500] are the values indicate that for this PCD file, x coordinates are between 1200 and 1220 (x_resolution + x_coordinate) and y coordinates are between 2500 and 2520 (y_resolution + y_coordinate).

You may use pointcloud_divider for dividing pointcloud map as well as generating the compatible metadata.yaml.

Directory structure of these files

If you only have one pointcloud map, Autoware will assume the following directory structure by default.

sample-map-rosbag
├── lanelet2_map.osm
├── pointcloud_map.pcd

If you have multiple rosbags, an example directory structure would be as follows. Note that you need to have a metadata when you have multiple pointcloud map files.

sample-map-rosbag
├── lanelet2_map.osm
├── pointcloud_map.pcd
│ ├── A.pcd
│ ├── B.pcd
│ ├── C.pcd
│ └── ...
├── map_projector_info.yaml
└── pointcloud_map_metadata.yaml

Specific features

Publish raw pointcloud map (ROS 2 topic)

The node publishes the raw pointcloud map loaded from the .pcd file(s).

Publish downsampled pointcloud map (ROS 2 topic)

The node publishes the downsampled pointcloud map loaded from the .pcd file(s). You can specify the downsample resolution by changing the leaf_size parameter.

Publish metadata of pointcloud map (ROS 2 topic)

The node publishes the pointcloud metadata attached with an ID. Metadata is loaded from the .yaml file. Please see the description of PointCloudMapMetaData.msg for details.

Send partial pointcloud map (ROS 2 service)

Here, we assume that the pointcloud maps are divided into grids.

Given a query from a client node, the node sends a set of pointcloud maps that overlaps with the queried area. Please see the description of GetPartialPointCloudMap.srv for details.

Send differential pointcloud map (ROS 2 service)

Here, we assume that the pointcloud maps are divided into grids.

Given a query and set of map IDs, the node sends a set of pointcloud maps that overlap with the queried area and are not included in the set of map IDs. Please see the description of GetDifferentialPointCloudMap.srv for details.

Send selected pointcloud map (ROS 2 service)

Here, we assume that the pointcloud maps are divided into grids.

Given IDs query from a client node, the node sends a set of pointcloud maps (each of which attached with unique ID) specified by query. Please see the description of GetSelectedPointCloudMap.srv for details.

Parameters

{{ json_to_markdown(“map/autoware_map_loader/schema/pointcloud_map_loader.schema.json”) }}

Interfaces

  • output/pointcloud_map (sensor_msgs/msg/PointCloud2) : Raw pointcloud map
  • output/pointcloud_map_metadata (autoware_map_msgs/msg/PointCloudMapMetaData) : Metadata of pointcloud map
  • output/debug/downsampled_pointcloud_map (sensor_msgs/msg/PointCloud2) : Downsampled pointcloud map
  • service/get_partial_pcd_map (autoware_map_msgs/srv/GetPartialPointCloudMap) : Partial pointcloud map
  • service/get_differential_pcd_map (autoware_map_msgs/srv/GetDifferentialPointCloudMap) : Differential pointcloud map
  • service/get_selected_pcd_map (autoware_map_msgs/srv/GetSelectedPointCloudMap) : Selected pointcloud map
  • pointcloud map file(s) (.pcd)
  • metadata of pointcloud map(s) (.yaml)

lanelet2_map_loader

Feature

lanelet2_map_loader loads Lanelet2 file and publishes the map data as autoware_map_msgs/LaneletMapBin message. The node projects lan/lon coordinates into arbitrary coordinates defined in /map/map_projector_info from map_projection_loader. Please see autoware_map_msgs/msg/MapProjectorInfo.msg for supported projector types.

How to run

ros2 run autoware_map_loader lanelet2_map_loader --ros-args -p lanelet2_map_path:=path/to/map.osm

Subscribed Topics

  • ~input/map_projector_info (autoware_map_msgs/MapProjectorInfo) : Projection type for Autoware

Published Topics

  • ~output/lanelet2_map (autoware_map_msgs/LaneletMapBin) : Binary data of loaded Lanelet2 Map

Parameters

{{ json_to_markdown(“map/autoware_map_loader/schema/lanelet2_map_loader.schema.json”) }}

use_waypoints decides how to handle a centerline. This flag enables to use the overwriteLaneletsCenterlineWithWaypoints function instead of overwriteLaneletsCenterline. Please see the document of the autoware_lanelet2_extension package in detail.

overwrite_lanelets_centerline

CHANGELOG

Changelog for package autoware_map_loader

1.1.0 (2025-05-01)

  • feat(component_interface_specs): use template type in get_qos function (#364) Co-authored-by: Yutaka Kondo <<yutaka.kondo@youtalk.jp>>
  • feat(map_loader): add the explanation of handling use_waypoints (#342)
  • Contributors: Takagi, Isamu, Takayuki Murooka

1.0.0 (2025-03-31)

  • chore: update version in package.xml
  • feat(autoware_map_loader): port autoware_map_loader from Autoware Universe to Core (#326) Co-authored-by: Yutaka Kondo <<yutaka.kondo@youtalk.jp>>
  • Contributors: Ryohsuke Mitsudome

Wiki Tutorials

This package does not provide any links to tutorials in it's rosindex metadata. You can check on the ROS Wiki Tutorials page for the package.

Launch files

  • launch/pointcloud_map_loader.launch.xml
      • pointcloud_map_path
      • pointcloud_map_metadata_path
      • pointcloud_map_loader_param_path [default: $(find-pkg-share autoware_map_loader)/config/pointcloud_map_loader.param.yaml]
  • launch/lanelet2_map_loader.launch.xml
      • lanelet2_map_loader_param_path [default: $(find-pkg-share autoware_map_loader)/config/lanelet2_map_loader.param.yaml]
      • lanelet2_map_path
      • lanelet2_map_topic [default: vector_map]
      • lanelet2_map_marker_topic [default: vector_map_marker]

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged autoware_map_loader at Robotics Stack Exchange

No version for distro noetic. Known supported distros are highlighted in the buttons above.
No version for distro galactic. Known supported distros are highlighted in the buttons above.
No version for distro iron. Known supported distros are highlighted in the buttons above.
No version for distro melodic. Known supported distros are highlighted in the buttons above.