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: add gnss/imu localizer #3063

Merged
merged 39 commits into from
Apr 26, 2023
Merged

feat: add gnss/imu localizer #3063

merged 39 commits into from
Apr 26, 2023

Conversation

rsasaki0109
Copy link
Contributor

@rsasaki0109 rsasaki0109 commented Mar 13, 2023

Description

The following PR for autoware.universe changes for eagleye (GNSS/IMU) had a problem with the commit log, so I created another PR.
#2848

This is the PR for integrating GNSS/IMU localizar discussed in the discussion below.
https://github.com/orgs/autowarefoundation/discussions/3257

  • Added gnss imu localizar related launch,param
  • Added pose_estimator_mode(lidar, gnss),twist_estimator_mode(gyro_odom_fusion, gyro_odom_gnss_fusion) parameter in localization.launch.xml to switch between pose,twist
  • In gyro_odom_gnss_fusion mode, twist is corrected by gnss.
  • You can adjust the eagleye pose output in launch/tier4_localization_launch/launch/eagleye/fix2pose.xml.

The above conditional branching for each pose_estimator and twist_estimator within the tier4_localization_launch package is complex and has been changed.
Instead, we have introduced the map4_localization_launch packages.
A discussion on this is provided below.
(This is a private social networking site for the TIEV IV group.)
https://map4-inc.slack.com/archives/CEL0DR2S2/p1680144103464929?thread_ts=1680143206.632879&cid=CEL0DR2S2

Switch localization launch for each structure in map4_localization_component.launch.xml.

localization launch  twist estimator pose estimator
tier4_localization_launch gyro_odometry  ndt_scan_matcher
map4_localization_launch/eagleye_twist_localization_launch eagleye_rt(gyro/odom/gnss fusion) ndt_scan_matcher
map4_localization_launch/eagleye_pose_twist_localization_launch eagleye_rt(gyro/odom/gnss fusion) eagleye_rt(gyro/odom/gnss fusion)

Related links

autowarefoundation/autoware#3261
autowarefoundation/autoware_launch#200
autowarefoundation/autoware-documentation#334

Tests performed

Localizaiton methods are expected to work as normal, even if they change.
Sample rosbag is available for simple operation tests.
Also, if you have a rosbag of a system with the same configuration of sensors, you can check the operation to some extent.

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 Reviewers must check the checkboxes below before approval.

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.

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

Signed-off-by: Ryohei Sasaki <ryohei.sasaki@map4.jp>
Signed-off-by: Ryohei Sasaki <ryohei.sasaki@map4.jp>
Signed-off-by: Ryohei Sasaki <ryohei.sasaki@map4.jp>
Signed-off-by: Ryohei Sasaki <ryohei.sasaki@map4.jp>
Signed-off-by: Ryohei Sasaki <ryohei.sasaki@map4.jp>
Signed-off-by: Ryohei Sasaki <ryohei.sasaki@map4.jp>
Signed-off-by: Ryohei Sasaki <ryohei.sasaki@map4.jp>
Signed-off-by: Ryohei Sasaki <ryohei.sasaki@map4.jp>
Signed-off-by: Ryohei Sasaki <ryohei.sasaki@map4.jp>
Signed-off-by: Ryohei Sasaki <ryohei.sasaki@map4.jp>
Signed-off-by: Ryohei Sasaki <ryohei.sasaki@map4.jp>
Signed-off-by: Ryohei Sasaki <ryohei.sasaki@map4.jp>
Signed-off-by: Ryohei Sasaki <ryohei.sasaki@map4.jp>
@github-actions github-actions bot added component:launch Launch files, scripts and initialization tools. (auto-assigned) component:localization Vehicle's position determination in its environment. (auto-assigned) component:system System design and integration. (auto-assigned) labels Mar 13, 2023
@codecov
Copy link

codecov bot commented Mar 13, 2023

Codecov Report

Patch coverage has no change and project coverage change: -2.14 ⚠️

Comparison is base (aba954f) 14.61% compared to head (895456e) 12.48%.

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #3063      +/-   ##
==========================================
- Coverage   14.61%   12.48%   -2.14%     
==========================================
  Files        1294     1351      +57     
  Lines       92007    92662     +655     
  Branches    29071    26027    -3044     
==========================================
- Hits        13451    11571    -1880     
- Misses      64111    68878    +4767     
+ Partials    14445    12213    -2232     
Flag Coverage Δ *Carryforward flag
differential 8.53% <ø> (?)
total 12.48% <0.00%> (-2.14%) ⬇️ Carriedforward from 006e353

*This pull request uses carry forward flags. Click here to find out more.

Impacted Files Coverage Δ
...ane_change/external_request_lane_change_module.hpp 0.00% <ø> (ø)
...ane_change/external_request_lane_change_module.cpp 0.00% <0.00%> (-12.68%) ⬇️
...rc/scene_module/lane_change/lane_change_module.cpp 0.00% <ø> (-15.63%) ⬇️
..._planner/src/scene_module/intersection/manager.cpp 0.00% <ø> (ø)
...c/scene_module/intersection/scene_intersection.cpp 0.00% <ø> (ø)

... and 449 files with indirect coverage changes

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

☔ View full report in Codecov by Sentry.
📢 Do you have feedback about the report comment? Let us know in this issue.

Signed-off-by: Ryohei Sasaki <ryohei.sasaki@map4.jp>
@rsasaki0109 rsasaki0109 changed the title Feat/add gnss imu localizar feat: add gnss/imu localizer Mar 13, 2023
@rsasaki0109
Copy link
Contributor Author

Mention the previous reviewer who is not in the "Reviewers".
@yukkysaito @KYabuuchi @kminoda

Signed-off-by: Ryohei Sasaki <ryohei.sasaki@map4.jp>
@rsasaki0109 rsasaki0109 marked this pull request as ready for review March 14, 2023 01:59
@rsasaki0109 rsasaki0109 requested review from ito-san, kenji-miyake and a team as code owners March 14, 2023 01:59
@rsasaki0109
Copy link
Contributor Author

@KYabuuchi
Your point is well taken. I have made the necessary corrections

@KYabuuchi
Copy link
Contributor

Thank you for reflecting my review! 👍
I think this PR has become simple enough.
In my opinion, this PR will be ready when the associated PRs (documentation and autoware_launch) reflect the current launch file structure.

@rsasaki0109
Copy link
Contributor Author

rsasaki0109 commented Apr 10, 2023

I have already reflected it in autoware_launch. Please wait a little for the modification in autoware-documentation.

@rsasaki0109
Copy link
Contributor Author

documentation was also updated

Copy link
Contributor

@KYabuuchi KYabuuchi left a comment

Choose a reason for hiding this comment

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

I think there is no major problem.
The following two comments will be the last review from me.

Copy link
Contributor

@kminoda kminoda left a comment

Choose a reason for hiding this comment

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

Mostly LGTM, but left some minor comments. Thank you for all of your work on our review 🙏

Also, please make sure that you've got an agreement from architects about this specific directory structure, as IMHO this is the most challenging (and also the most interesting) part where we have to design carefully so that the contributers can easily add their implementation.

launch/map4_localization_launch/README.md Outdated Show resolved Hide resolved
Signed-off-by: Ryohei Sasaki <ryohei.sasaki@map4.jp>
Signed-off-by: Ryohei Sasaki <ryohei.sasaki@map4.jp>
Signed-off-by: Ryohei Sasaki <ryohei.sasaki@map4.jp>
Signed-off-by: Ryohei Sasaki <ryohei.sasaki@map4.jp>
Signed-off-by: Ryohei Sasaki <ryohei.sasaki@map4.jp>
rsasaki0109 and others added 4 commits April 17, 2023 14:37
Signed-off-by: Ryohei Sasaki <ryohei.sasaki@map4.jp>
Signed-off-by: Ryohei Sasaki <ryohei.sasaki@map4.jp>
Signed-off-by: Ryohei Sasaki <ryohei.sasaki@map4.jp>
Copy link
Member

@mitsudome-r mitsudome-r left a comment

Choose a reason for hiding this comment

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

LGTM, but we should also have approval from Localization engineers before merging.

Copy link
Contributor

@yukkysaito yukkysaito left a comment

Choose a reason for hiding this comment

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

LGTM

Copy link
Contributor

@kminoda kminoda left a comment

Choose a reason for hiding this comment

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

LGTM

Signed-off-by: Ryohei Sasaki <ryohei.sasaki@map4.jp>
Copy link
Contributor

@KYabuuchi KYabuuchi left a comment

Choose a reason for hiding this comment

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

I tested all localizers(NDT, NDT+eagleye, eagleye) again, and they worked well.

@kminoda kminoda merged commit 2894c4b into autowarefoundation:main Apr 26, 2023
Mingyu1991 pushed a commit to Mingyu1991/autoware.universe that referenced this pull request Jun 26, 2023
* Add gnss_imu_localizar

Signed-off-by: Ryohei Sasaki <ryohei.sasaki@map4.jp>

* Fix twist switching bug

Signed-off-by: Ryohei Sasaki <ryohei.sasaki@map4.jp>

* Fix spell and reformat

Signed-off-by: Ryohei Sasaki <ryohei.sasaki@map4.jp>

* Parameterize directories with related launches

Signed-off-by: Ryohei Sasaki <ryohei.sasaki@map4.jp>

* Fix mis-spell

Signed-off-by: Ryohei Sasaki <ryohei.sasaki@map4.jp>

* Correction of characters not registered in the dictionary

Signed-off-by: Ryohei Sasaki <ryohei.sasaki@map4.jp>

* Make ealeye_twist false

Signed-off-by: Ryohei Sasaki <ryohei.sasaki@map4.jp>

* Delete unnecessary parts

Signed-off-by: Ryohei Sasaki <ryohei.sasaki@map4.jp>

* Rename localization switching parameters

Signed-off-by: Ryohei Sasaki <ryohei.sasaki@map4.jp>

* Rename twist_estimator_mode parameter pattern

Signed-off-by: Ryohei Sasaki <ryohei.sasaki@map4.jp>

* Simplify conditional branching

Signed-off-by: Ryohei Sasaki <ryohei.sasaki@map4.jp>

* Support for changes in pose_initializer

Signed-off-by: Ryohei Sasaki <ryohei.sasaki@map4.jp>

* Fix problem of double eagleye activation

Signed-off-by: Ryohei Sasaki <ryohei.sasaki@map4.jp>

* Fix unnecessary changes

Signed-off-by: Ryohei Sasaki <ryohei.sasaki@map4.jp>

* Remove conditional branching by pose_estimatar_mode in system_error_monitor

Signed-off-by: Ryohei Sasaki <ryohei.sasaki@map4.jp>

* Change launch directory structure

Signed-off-by: Ryohei Sasaki <ryohei.sasaki@map4.jp>

* Remove unnecessary parameters and files

Signed-off-by: Ryohei Sasaki <ryohei.sasaki@map4.jp>

* Fix indentations

Signed-off-by: Ryohei Sasaki <ryohei.sasaki@map4.jp>

* Coding modifications based on conventions

Signed-off-by: Ryohei Sasaki <ryohei.sasaki@map4.jp>

* Change the structure diagram in the package

Signed-off-by: Ryohei Sasaki <ryohei.sasaki@map4.jp>

* Integrate map4_localization_component1,2

Signed-off-by: Ryohei Sasaki <ryohei.sasaki@map4.jp>

* Add drawio.svg

Signed-off-by: Ryohei Sasaki <ryohei.sasaki@map4.jp>

* Delete duplicate files

Signed-off-by: Ryohei Sasaki <ryohei.sasaki@map4.jp>

* Change auther and add maintainer

Signed-off-by: Ryohei Sasaki <ryohei.sasaki@map4.jp>

* Delete unnecessary modules in drawio

Signed-off-by: Ryohei Sasaki <ryohei.sasaki@map4.jp>

* Fixing confusing sentences

Signed-off-by: Ryohei Sasaki <ryohei.sasaki@map4.jp>

* Fine-tuning of drawio

Signed-off-by: Ryohei Sasaki <ryohei.sasaki@map4.jp>

* Fix authomaintainerr

Signed-off-by: Ryohei Sasaki <ryohei.sasaki@map4.jp>

* Rename ndt to ndt_scan_matcher

Signed-off-by: Ryohei Sasaki <ryohei.sasaki@map4.jp>

* follow the naming convention

Signed-off-by: Ryohei Sasaki <ryohei.sasaki@map4.jp>

* Add newlines to the end of files to fix end-of-file-fixer hook errors

Signed-off-by: Ryohei Sasaki <ryohei.sasaki@map4.jp>

* List the packages that depend on map4_localization_launch correctly

Signed-off-by: Ryohei Sasaki <ryohei.sasaki@map4.jp>

* Ran precommit locally

Signed-off-by: Ryohei Sasaki <ryohei.sasaki@map4.jp>

---------

Signed-off-by: Ryohei Sasaki <ryohei.sasaki@map4.jp>
Signed-off-by: Mingyu Li <mingyu.li@tier4.jp>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
component:launch Launch files, scripts and initialization tools. (auto-assigned) component:localization Vehicle's position determination in its environment. (auto-assigned) type:documentation Creating or refining documentation. (auto-assigned)
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants