-
Notifications
You must be signed in to change notification settings - Fork 682
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(pointcloud_preprocessor): fix distortion corrector unit test #7833
fix(pointcloud_preprocessor): fix distortion corrector unit test #7833
Conversation
Signed-off-by: vividf <yihsiang.fang@tier4.jp>
Signed-off-by: vividf <yihsiang.fang@tier4.jp>
Thank you for contributing to the Autoware project! 🚧 If your pull request is in progress, switch it to draft mode. Please ensure:
|
Signed-off-by: vividf <yihsiang.fang@tier4.jp>
I just cleaned my whole repository and forgot to install pre-commit again. |
sensing/pointcloud_preprocessor/test/test_distortion_corrector_node.cpp
Outdated
Show resolved
Hide resolved
sensing/pointcloud_preprocessor/test/test_distortion_corrector_node.cpp
Outdated
Show resolved
Hide resolved
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.
Left some minor comments and questions
@vividf |
I can not make it into a code suggestion, but |
Signed-off-by: vividf <yihsiang.fang@tier4.jp>
Signed-off-by: vividf <yihsiang.fang@tier4.jp>
Signed-off-by: vividf <yihsiang.fang@tier4.jp>
Signed-off-by: vividf <yihsiang.fang@tier4.jp>
Signed-off-by: vividf <yihsiang.fang@tier4.jp>
Signed-off-by: vividf <yihsiang.fang@tier4.jp>
Signed-off-by: vividf <yihsiang.fang@tier4.jp>
Signed-off-by: vividf <yihsiang.fang@tier4.jp>
Signed-off-by: vividf <yihsiang.fang@tier4.jp>
Signed-off-by: vividf <yihsiang.fang@tier4.jp>
Signed-off-by: vividf <yihsiang.fang@tier4.jp>
Signed-off-by: vividf <yihsiang.fang@tier4.jp>
Signed-off-by: vividf <yihsiang.fang@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.
Still some comments that need addressing
Signed-off-by: vividf <yihsiang.fang@tier4.jp>
…:vividf/autoware.universe into fix/distortion_correction_node_unit_test
Signed-off-by: vividf <yihsiang.fang@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.
@vividf
If it was not clear, there are comments left unattended
Signed-off-by: vividf <yihsiang.fang@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 🎉
@vividf |
Sure, thanks for the reviews! |
* fix: use pointcloud iterator instead of memcpy, remove reinterpret cast Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: set default debugging parameter to false Signed-off-by: vividf <yihsiang.fang@tier4.jp> * style(pre-commit): autofix * chore: run precommit Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: fix TIER IV name Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: changed public variables to protected and add getters Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: add tolerance Signed-off-by: vividf <yihsiang.fang@tier4.jp> * feat: add two tests for pure linear and rotation Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: change naming, fix tolerance value Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: add comment for quat Signed-off-by: vividf <yihsiang.fang@tier4.jp> * fix: remove node_->get_clock() and use self-defined timestamp Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: remove redundant parameters Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: fix spell error and add tests in cmake Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: move all clock->now() to self-defined time Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: change function names Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: remove irrelevant variable Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: fix variables naming Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: change boolen naming: generate_points Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: add assert to make sure ms is not larger than a second Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: add note Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: add unifore initialization and semantic meaning for magic number Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: change vector to Eigen Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: fix explanation Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: fix more eigen Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: fix more magic numbers Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: add unit Signed-off-by: vividf <yihsiang.fang@tier4.jp> * fix: use assert from gtest Signed-off-by: vividf <yihsiang.fang@tier4.jp> --------- Signed-off-by: vividf <yihsiang.fang@tier4.jp> Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Kenzo Lobos Tsunekawa <kenzo.lobos@tier4.jp>
…owarefoundation#7833) * fix: use pointcloud iterator instead of memcpy, remove reinterpret cast Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: set default debugging parameter to false Signed-off-by: vividf <yihsiang.fang@tier4.jp> * style(pre-commit): autofix * chore: run precommit Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: fix TIER IV name Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: changed public variables to protected and add getters Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: add tolerance Signed-off-by: vividf <yihsiang.fang@tier4.jp> * feat: add two tests for pure linear and rotation Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: change naming, fix tolerance value Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: add comment for quat Signed-off-by: vividf <yihsiang.fang@tier4.jp> * fix: remove node_->get_clock() and use self-defined timestamp Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: remove redundant parameters Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: fix spell error and add tests in cmake Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: move all clock->now() to self-defined time Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: change function names Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: remove irrelevant variable Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: fix variables naming Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: change boolen naming: generate_points Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: add assert to make sure ms is not larger than a second Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: add note Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: add unifore initialization and semantic meaning for magic number Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: change vector to Eigen Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: fix explanation Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: fix more eigen Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: fix more magic numbers Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: add unit Signed-off-by: vividf <yihsiang.fang@tier4.jp> * fix: use assert from gtest Signed-off-by: vividf <yihsiang.fang@tier4.jp> --------- Signed-off-by: vividf <yihsiang.fang@tier4.jp> Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Kenzo Lobos Tsunekawa <kenzo.lobos@tier4.jp>
…owarefoundation#7833) * fix: use pointcloud iterator instead of memcpy, remove reinterpret cast Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: set default debugging parameter to false Signed-off-by: vividf <yihsiang.fang@tier4.jp> * style(pre-commit): autofix * chore: run precommit Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: fix TIER IV name Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: changed public variables to protected and add getters Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: add tolerance Signed-off-by: vividf <yihsiang.fang@tier4.jp> * feat: add two tests for pure linear and rotation Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: change naming, fix tolerance value Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: add comment for quat Signed-off-by: vividf <yihsiang.fang@tier4.jp> * fix: remove node_->get_clock() and use self-defined timestamp Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: remove redundant parameters Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: fix spell error and add tests in cmake Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: move all clock->now() to self-defined time Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: change function names Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: remove irrelevant variable Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: fix variables naming Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: change boolen naming: generate_points Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: add assert to make sure ms is not larger than a second Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: add note Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: add unifore initialization and semantic meaning for magic number Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: change vector to Eigen Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: fix explanation Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: fix more eigen Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: fix more magic numbers Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: add unit Signed-off-by: vividf <yihsiang.fang@tier4.jp> * fix: use assert from gtest Signed-off-by: vividf <yihsiang.fang@tier4.jp> --------- Signed-off-by: vividf <yihsiang.fang@tier4.jp> Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Kenzo Lobos Tsunekawa <kenzo.lobos@tier4.jp>
…owarefoundation#7833) * fix: use pointcloud iterator instead of memcpy, remove reinterpret cast Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: set default debugging parameter to false Signed-off-by: vividf <yihsiang.fang@tier4.jp> * style(pre-commit): autofix * chore: run precommit Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: fix TIER IV name Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: changed public variables to protected and add getters Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: add tolerance Signed-off-by: vividf <yihsiang.fang@tier4.jp> * feat: add two tests for pure linear and rotation Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: change naming, fix tolerance value Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: add comment for quat Signed-off-by: vividf <yihsiang.fang@tier4.jp> * fix: remove node_->get_clock() and use self-defined timestamp Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: remove redundant parameters Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: fix spell error and add tests in cmake Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: move all clock->now() to self-defined time Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: change function names Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: remove irrelevant variable Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: fix variables naming Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: change boolen naming: generate_points Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: add assert to make sure ms is not larger than a second Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: add note Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: add unifore initialization and semantic meaning for magic number Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: change vector to Eigen Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: fix explanation Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: fix more eigen Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: fix more magic numbers Signed-off-by: vividf <yihsiang.fang@tier4.jp> * chore: add unit Signed-off-by: vividf <yihsiang.fang@tier4.jp> * fix: use assert from gtest Signed-off-by: vividf <yihsiang.fang@tier4.jp> --------- Signed-off-by: vividf <yihsiang.fang@tier4.jp> Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Kenzo Lobos Tsunekawa <kenzo.lobos@tier4.jp>
Description
@knzo25 gave some feedback on the distortion corrector unit test.
TIER4_INTERNAL_LINK
Original PR #7801
Due to the jitter of the timestamp, the threshold is a bit too strict.
More information is in the description of this PR #7879
Main changes from the previous unit test:
node_->get_clock()->now()
to prevent some jitter between points' stamp.The 2D algorithm in the distortion corrector uses tier4::cos/sin and quat.setvalue(0, 0, 0.5 * angle, 0.5 * angle), both of which can speed up the process. However, the values produced by these methods differ from those obtained using std::cos/sin, quat.setRPY(0, 0, angle) and exponential map. As a result, the 2D and 3D algorithms will not yield equivalent outcomes when comparing pure rotational motions.
Build & Test
Test
Related links
Parent Issue:
How was this PR tested?
Notes for reviewers
None.
Interface changes
None.
Effects on system behavior
None.