Skip to content

Commit 44aea04

Browse files
add README.md
Signed-off-by: meliketanrikulu <melike@leodrive.ai>
1 parent 6335c47 commit 44aea04

File tree

2 files changed

+45
-2
lines changed

2 files changed

+45
-2
lines changed
Original file line numberDiff line numberDiff line change
@@ -1 +1,44 @@
1-
# autoware_pose_covariance_modifier
1+
# Overview
2+
This package is used to enable GNSS and NDT to be used together in localization.
3+
GNSS and NDT are different sources that generate poses for use in EKF. For EKF,
4+
the covariance values of the pose source are important. The GNSS system can provide
5+
us with its own error (RMSE) values. Using these error values, covariance values for
6+
GNSS can be calculated. However, in default autoware, NDT covariance values are determined
7+
by default values. While this package manages which pose source will be used by reference
8+
to the error values coming from GNSS, it also manages situations where GNSS and NDT are used together.
9+
10+
## Flowchart
11+
Default Autoware Pose Source is only NDT:
12+
13+
![new_proposal-original.drawio.png](..%2F..%2F..%2F..%2F..%2F..%2F..%2FDocuments%2Fnew_proposal-original.drawio.png)
14+
15+
You can see how autoware_pose_covariance_modifier_node works in the diagram below:
16+
17+
![new_proposal-proposal.drawio.png](..%2F..%2F..%2F..%2F..%2F..%2F..%2FDocuments%2Fnew_proposal-proposal.drawio.png)
18+
## Activate This Feuture
19+
This package is not used by default autoware, you need to activate it to use it.
20+
21+
To activate, you need to change the `use_autoware_pose_covariance_modifier` parameter to true within the [tier4_localization_launch](https://github.com/autowarefoundation/autoware.universe/blob/main/launch/tier4_localization_launch/launch/localization.launch.xml
22+
).
23+
# Node
24+
## Subscribed Topics
25+
| Name | Type | Description |
26+
|-------------------------------------| ------------------------------------------------ |------------------------|
27+
| `input_trusted_pose_with_cov_topic` | `geometry_msgs::msg::PoseWithCovarianceStamped` | Input GNSS pose topic. |
28+
| `input_ndt_pose_with_cov_topic` | `geometry_msgs::msg::PoseWithCovarianceStamped` | Input NDT pose topic. |
29+
30+
## Published Topics
31+
| Name | Type | Description |
32+
|-------------------------------------| ------------------------------------------------ |-----------------------------------------------------------------------|
33+
| `output_pose_with_covariance_topic` | `geometry_msgs::msg::PoseWithCovarianceStamped` | Output pose topic. It will be sent as input to ekf_localizer package. |
34+
35+
## Parameters
36+
| Name | Type | Description |
37+
|-----------------------------|------------|--------------------------------------------------------------------------------|
38+
| `gnss_error_reliable_max` | `double` | Threshold value for the range in which GNSS error is most reliable. |
39+
| `gnss_error_unreliable_min` | `double` | Threshold value at which GNSS error is not considered reliable. |
40+
| `yaw_error_deg_threshold` | `double` | Threshold value to understand whether the yaw error is within reliable limits. |
41+
42+
### Important Notes:
43+
* In order to use this package, your GNSS sensor must provide you with the error value. If you do not have a GNSS sensor that provides you with the error value, you cannot use this package.
44+

localization/autoware_pose_covariance_modifier_node/src/autoware_pose_covariance_modifier_node.cpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ void AutowarePoseCovarianceModifierNode::publishPoseSource()
6161
selected_pose_type.data = "GNSS";
6262
break;
6363
case static_cast<int>(AutowarePoseCovarianceModifierNode::PoseSource::GNSS_NDT):
64-
selected_pose_type.data = "GNSS_NDT";
64+
selected_pose_type.data = "GNSS + NDT";
6565
break;
6666
case static_cast<int>(AutowarePoseCovarianceModifierNode::PoseSource::NDT):
6767
selected_pose_type.data = "NDT";

0 commit comments

Comments
 (0)