[Proposal] Using GNSS/INS and NDT Together in Localization #4134
Replies: 5 comments 10 replies
-
Hi! Thank you for the interesting proposal. Currently, I am proposing a pose_estimator_arbiter for realizing multi-pose_estimator, and the PR is under review. autowarefoundation/autoware.universe#6144 I am concerned about potential conflicts with your proposal. 😨 I believe it would be fine to implement your proposal by extending my pose_estimator_arbiter. This is because my pose_estimator_arbiter already supports pose_estimators other than NDT, and by adding additional rules, we can control the ON/OFF status of each pose_estimator. example video So, to better understand your proposal, I have a few questions:
I appreciate your clarification on these points. |
Beta Was this translation helpful? Give feedback.
-
Hello, Thanks for the update. Yes, we can collect them under one package with your work.I will examine it in more detail.
|
Beta Was this translation helpful? Give feedback.
-
The Localization team at TIER IV discussed this proposal. Honestly, from an architectural perspective, we prefer not to use GNSS and NDT in this way. 😢 For example, there are the following concerns:
As an alternative, though it may take some time to implement, we suggest:
I will describe the detailed plan and its advantages and disadvantages later... |
Beta Was this translation helpful? Give feedback.
-
Hello @KYabuuchi This is how current PR currently works. (like here--> https://github.com/orgs/autowarefoundation/discussions/4134#discussioncomment-8378581) However, when we talked about this PR with our team again, we decided to change the structure a little more. I plan to move all the processes made without interfering with the NDT node to the extra package that I will add. I will update the PR accordingly. In this way, we decided that all operations would be carried out by an external package without adding any extra features to the NDT in Default AW or complicating the code. Below I share diagrams to explain the new architecture we are planning. Existing Autoware ArchitectureProposed ChangeI will update PR according to this architecture as soon as possible. Please share your opinions with us |
Beta Was this translation helpful? Give feedback.
-
We decided that instead of changing the topic names entering the EKF, it would be more appropriate to change the name of the topic that is the pose output of NDT. I updated proposal architecture: I also updated the test video: |
Beta Was this translation helpful? Give feedback.
-
In the localization system currently used in AW, we can use GNSS/INS and NDT separately. There are cases where NDT and GNSS work well and badly. For example, we know that NDT does not work well if there are bridges or open areas where there are not enough features. Likewise, GNSS does not perform well enough when passing near tall buildings or under trees.
Using these two pose sources together will ensure that localization works properly in these different situations. Our goal is to obtain the healthiest localization output by using GNSS and NDT together without restarting AW when moving from one situation to another while driving.
To do this, we need to feed both pose sources to EKF. EKF basically uses covariance values as reference to evaluate the poses it receives. There is no suitable real-time method to calculate covariance values of NDT. However, GNSS provides us with its own covariance accurately.
Default Autoware Architecture:
This method recommends assigning covariance to NDT by reference to GNSS covariance values.
Here is the proposal diagram:
Case I --> GNSS RMSE values in most reliable boundaries (GNSS Position RMSE ~ <= 0.10 meters):
In cases where GNSS covariance values are low, driving directly with GNSS seems appropriate.
For this reason, while the covariance values of GNSS are within reliable limits, the covariance of NDT is set to a range that EKF will perceive as outlier.
Case II --> When GNSS RMSE values start to go beyond reliable limits ( ~0.10 meters <= GNSS Position RMSE <= ~0.25 meters):
When GNSS covariance values start to increase, NDT covariance values are gradually reduced. This process should be set dependent on GNSS covariance values.
Case III --> When GNSS RMSE values are completely outside the reliable limits (GNSS Position RMSE >= ~0.25 meters):
In this case, it is accepted that GNSS cannot produce reliable data and NDT covariance is reduced to its minimum value (0.15 meters). At the same time, at this point, the covariance values of GNSS were moved to a range that EKF would consider as outlier, thus ensuring that EKF did not evaluate these values. In other words, driving is carried out only by reference to NDT poses.
In this way, a method that allows driving in different environments together with NDT and GNSS is proposed. First version tests have been carried out.
Example Test Video:
It is seen that there are fast transitions at some points in these tests. Efforts are being made to soften these transitions.
The method can be improved with your suggestions. We would be happy to hear any suggestions or opinions you would like to add.
Beta Was this translation helpful? Give feedback.
All reactions