Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(lanelet2_map_validator): check whether intersection_area satisfies vm-03-08 #171

Conversation

TaikiYamada4
Copy link
Contributor

@TaikiYamada4 TaikiYamada4 commented Dec 9, 2024

Description

This PR adds validators to autoware_lanelet2_map_validator whether the lanelet2 map satisfies the map requirement vm-03-08 written in Autoware Documentation.

Two validators are added to achieve this goal.

  • mapping.intersection.intersection_area_validity
    • This validator checks whether the intersection_area polygon satisfies boost::geometry::is_valid.
  • mapping.intersection.intersection_area_segment_type
    • This validator checks whether the intersection_area polygon consists of only road_border type linestrings and starting/ending edges of lanelets.

In short, this PR adds the following implementation

  • New validator mapping.intersection.intersection_area_validity
  • New validator mapping.intersection.intersection_area_segment_type
  • Test codes and maps for both mapping.intersection.intersection_area_validity and mapping.intersection.intersection_area_segment_type
  • Documents for both mapping.intersection.intersection_area_validity and mapping.intersection.intersection_area_segment_type
  • Added two validators to autoware_requirement_set.json

Related links

Map requirement vm-03-08

Tests performed

  1. Confirmed that colcon test --packages-select autoware_lanelet2_map_validator --event-handlers console_cohesion+ passes.
  2. Confirmed that the following command shows no errors nor warnings.
ros2 run autoware_lanelet2_map_validator autoware_lanelet2_map_validator -p mgrs -m <PATH_TO_sample_map.osm> -i <PATH_TO_autoware_requirement_set.json> -o ./

Notes for reviewers

In the test code I've only made a test map to detect self-intersections and wrong orientations. Please let me know if there are other error modes to be tested.

Interface changes

None

Effects on system behavior

None

Pre-review checklist for the PR author

The PR author must check the checkboxes below when creating the PR.

In-review checklist for the PR reviewers

The PR reviewers must check the checkboxes below before approval.

  • The PR follows the pull request guidelines.
  • The PR has been properly tested.
  • The PR has been reviewed by the code owners.

Post-review checklist for the PR author

The PR author must check the checkboxes below before merging.

  • There are no open discussions or they are tracked via tickets.
  • The PR is ready for merge.

After all checkboxes are checked, anyone who has write access can merge the PR.

@TaikiYamada4 TaikiYamada4 self-assigned this Dec 9, 2024
Signed-off-by: TaikiYamada4 <[email protected]>
Copy link
Contributor

@satoshi-ota satoshi-ota left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

looks good.

@TaikiYamada4 TaikiYamada4 merged commit 85a88fe into autowarefoundation:main Dec 17, 2024
16 checks passed
@TaikiYamada4 TaikiYamada4 deleted the feat/lanelet2_map_validator/intersection_area_validation branch December 17, 2024 09:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants