-
Notifications
You must be signed in to change notification settings - Fork 650
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
fix(ground segmentation): add elevation grid ground filter #1899
fix(ground segmentation): add elevation grid ground filter #1899
Conversation
Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp>
Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp>
Codecov ReportBase: 10.14% // Head: 10.11% // Decreases project coverage by
Additional details and impacted files@@ Coverage Diff @@
## main #1899 +/- ##
==========================================
- Coverage 10.14% 10.11% -0.03%
==========================================
Files 1256 1256
Lines 90741 90985 +244
Branches 20516 20516
==========================================
Hits 9203 9203
- Misses 72130 72374 +244
Partials 9408 9408
*This pull request uses carry forward flags. Click here to find out more.
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 at Codecov. |
Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp>
Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp>
Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp>
Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp>
Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp>
Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp>
ef3e1bd
to
ab1a1e3
Compare
Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp>
Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp>
@@ -91,6 +150,202 @@ void ScanGroundFilterComponent::calcVirtualGroundOrigin(pcl::PointXYZ & point) | |||
point.z = 0; | |||
} | |||
|
|||
void ScanGroundFilterComponent::gridScan_classifyPointCloud( |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think lower camel case is better because other functions are used lower camel case.
Also, this function has deep nest. Can you remove deep nest by make sub-function or something?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
thanks for your comment. I fixed it by 26c88bd
Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp>
Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp>
Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp>
Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp>
Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp>
...ption_launch/config/obstacle_segmentation/ground_segmentation/ground_segmentation.param.yaml
Show resolved
Hide resolved
perception/ground_segmentation/include/ground_segmentation/scan_ground_filter_nodelet.hpp
Outdated
Show resolved
Hide resolved
Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp>
Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp>
Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp>
...ption_launch/config/obstacle_segmentation/ground_segmentation/ground_segmentation.param.yaml
Show resolved
Hide resolved
perception/ground_segmentation/include/ground_segmentation/scan_ground_filter_nodelet.hpp
Outdated
Show resolved
Hide resolved
Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp>
perception/ground_segmentation/include/ground_segmentation/scan_ground_filter_nodelet.hpp
Outdated
Show resolved
Hide resolved
for (size_t i = 0; i < in_cloud->points.size(); ++i) { | ||
auto x{ | ||
in_cloud->points[i].x - vehicle_info_.wheel_base_m / 2.0f - | ||
center_pcl_shift_}; // base on front wheel center |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
[Q] When do you need to tune center_pcl_shift ? What is the purpose of this parameter?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
When some addition LiDARs setup on rear or front of vehicle is used. It is better to move the ray division center to be close to location with LiDAR.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
OK 👍
Could you add some description about this to README?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I added here 9143f38
perception/ground_segmentation/src/scan_ground_filter_nodelet.cpp
Outdated
Show resolved
Hide resolved
perception/ground_segmentation/src/scan_ground_filter_nodelet.cpp
Outdated
Show resolved
Hide resolved
perception/ground_segmentation/src/scan_ground_filter_nodelet.cpp
Outdated
Show resolved
Hide resolved
perception/ground_segmentation/src/scan_ground_filter_nodelet.cpp
Outdated
Show resolved
Hide resolved
perception/ground_segmentation/src/scan_ground_filter_nodelet.cpp
Outdated
Show resolved
Hide resolved
perception/ground_segmentation/src/scan_ground_filter_nodelet.cpp
Outdated
Show resolved
Hide resolved
@badai-nguyen Could you add you and me to the maintainer in package.xml ? |
Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp>
@badai-nguyen Could you add TIER IV JIRA Link to "Related links"? |
Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
@yukkysaito If you are ok, could you approve this? |
LGTM |
…oundation#1899) * fix: add grid elevation scan ground filter Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * chore: typo Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * fix: merge with scan ground filter Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * ci(pre-commit): autofix * chore: update docs Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * chore: remove debug variables Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * chore: add switchable param for grid scan mode Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * chore: typo Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * chore: refactoring Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * ci(pre-commit): autofix * chore: refactoring Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * chore: typo Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * chore: refactoring Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * chore: refactoring Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * chore: refactoring Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * chore: refactoring Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * chore: refactoring Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * chore: typo Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * docs: update docs Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * ci(pre-commit): autofix * chore: typo Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * chores: typo Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * chore: typo Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * docs: update Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
* fix(ground_filter): remove base_frame and fix ray_ground_filter (#1614) * fix(ray_ground_filter): cannot remove ground pcl Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * fix: remove base_frame Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * docs: update docs Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * chores: remove unnecessary calculation Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * chores: remove unnecessary calculation Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * docs: update parameters Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * docs: update parameters Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * fix(ground segmentation): add elevation grid ground filter (autowarefoundation#1899) * fix: add grid elevation scan ground filter Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * chore: typo Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * fix: merge with scan ground filter Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * ci(pre-commit): autofix * chore: update docs Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * chore: remove debug variables Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * chore: add switchable param for grid scan mode Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * chore: typo Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * chore: refactoring Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * ci(pre-commit): autofix * chore: refactoring Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * chore: typo Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * chore: refactoring Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * chore: refactoring Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * chore: refactoring Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * chore: refactoring Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * chore: refactoring Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * chore: typo Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * docs: update docs Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * ci(pre-commit): autofix * chore: typo Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * chores: typo Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * chore: typo Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * docs: update Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> Co-authored-by: badai nguyen <94814556+badai-nguyen@users.noreply.github.com> Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
* fix(ground_filter): remove base_frame and fix ray_ground_filter (autowarefoundation#1614) * fix(ray_ground_filter): cannot remove ground pcl Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * fix: remove base_frame Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * docs: update docs Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * chores: remove unnecessary calculation Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * chores: remove unnecessary calculation Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * docs: update parameters Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * docs: update parameters Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * fix(ground segmentation): add elevation grid ground filter (autowarefoundation#1899) * fix: add grid elevation scan ground filter Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * chore: typo Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * fix: merge with scan ground filter Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * ci(pre-commit): autofix * chore: update docs Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * chore: remove debug variables Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * chore: add switchable param for grid scan mode Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * chore: typo Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * chore: refactoring Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * ci(pre-commit): autofix * chore: refactoring Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * chore: typo Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * chore: refactoring Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * chore: refactoring Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * chore: refactoring Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * chore: refactoring Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * chore: refactoring Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * chore: typo Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * docs: update docs Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * ci(pre-commit): autofix * chore: typo Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * chores: typo Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * chore: typo Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * docs: update Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> Co-authored-by: badai nguyen <94814556+badai-nguyen@users.noreply.github.com> Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
…oundation#1899) * fix: add grid elevation scan ground filter Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * chore: typo Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * fix: merge with scan ground filter Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * ci(pre-commit): autofix * chore: update docs Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * chore: remove debug variables Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * chore: add switchable param for grid scan mode Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * chore: typo Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * chore: refactoring Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * ci(pre-commit): autofix * chore: refactoring Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * chore: typo Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * chore: refactoring Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * chore: refactoring Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * chore: refactoring Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * chore: refactoring Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * chore: refactoring Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * chore: typo Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * docs: update docs Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * ci(pre-commit): autofix * chore: typo Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * chores: typo Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * chore: typo Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> * docs: update Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> Signed-off-by: badai-nguyen <dai.nguyen@tier4.jp> Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Description
Current scan_ground_filter use the input from cropped_box_filter which limited from 0 < z < vehicle_height. Therefore, in case of uneven road or slope, the ground pcl might be filtered out and failure to initialize initial point cloud by scan_ground_filter.
Extending range of crop_box_filter might cause height computation cost and unexpected miss-classification.
This makes sure ground filter to detect object on slope and uneven road while keep reasonable range of detection.
Current issue:
To cover a slope, crop_box_filter range should be extended:
Related links
JIRA link: TIERIV INTERNAL LINK
Tests performed
Notes for reviewers
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.
Post-review checklist for the PR author
The PR author must check the checkboxes below before merging.
After all checkboxes are checked, anyone who has write access can merge the PR.