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

Track object with radar postprocess input test #311

Open
wants to merge 21 commits into
base: develop
Choose a base branch
from

Conversation

nebraszka
Copy link
Collaborator

Added tests to verify that RadarTrackObjectsNode works correctly with input from RadarPostprocessPointsNode.

In addition, a radarHelpers.hpp file was created to include helper functions and structures. The corrected function for generating radar rays, previously located in radarTest.cpp, was also moved to this file.

prybicki and others added 21 commits April 24, 2024 11:07
* Implement sub-sampling in raytracing code

* Review fixes
* Add radar object tracking node and test placeholders.

Signed-off-by: Paweł Liberadzki <[email protected]>

* Add test for basic node run.

Signed-off-by: Paweł Liberadzki <[email protected]>

* Add first implementation for detections clusterization.

Signed-off-by: Paweł Liberadzki <[email protected]>

* Add working detections clusterization.

Signed-off-by: Paweł Liberadzki <[email protected]>

* Add complete debug test. Make minor cleanup in node implementation.

Signed-off-by: Paweł Liberadzki <[email protected]>

* Add milliseconds cast to helper Time structure.

Signed-off-by: Paweł Liberadzki <[email protected]>

* Add disabling Vector initializer list constructor, when there is only one dimension.

Signed-off-by: Paweł Liberadzki <[email protected]>

* Add RunningStats helper structer for running mean and standard deviation.

Signed-off-by: Paweł Liberadzki <[email protected]>

* Add basic object state handling to RadarTrackObjectsNode.

Signed-off-by: Paweł Liberadzki <[email protected]>

* Add fixed objects count test. Make some cleanup in object tracking tests.

Signed-off-by: Paweł Liberadzki <[email protected]>

* Fix ROS 2 for radar track objects test.

Signed-off-by: Paweł Liberadzki <[email protected]>

* Update local constants to be node parameters. Add API call documentation for object tracking.

Signed-off-by: Paweł Liberadzki <[email protected]>

* Update object tracking node documentation with parameter units.

Signed-off-by: Paweł Liberadzki <[email protected]>

* Make changes according to review for #280.

Signed-off-by: Paweł Liberadzki <[email protected]>

---------

Signed-off-by: Paweł Liberadzki <[email protected]>
* Fix compilation error

* Store last sample value in RunningStats

* Micro optimization

* Add missing class

* Rename RuningStats -> RunningStats

* Change target branch for udp extension to run CI properly
* Add API call to configure beam divergence

* Review fixes
* Add more details in documentation for object tracking node.

* Remove not necessary overload.

* Update type traits on RunningStats to be more precise.

* Add covariance calculation.  Add RunningStats specialization for Vector types.

* Change function signature in RunningStats specialization.

* Add prototype implementation of object tracking.

* Add minor comments to RunningStats.

* Move object position prediction to node. Fix predicted position calculation. Update prediction to include acceleration if available. Add getter for samples count to RunningStats.

* Update velocity calculation. Add assert on delta time and object ID.

* Fix object acceleration calculation.

* Add object orientation and orientation rate calculation.

* Make minor fixes to types in track objects node.

* Fix typos and add missing include in RunningStats header.

* Add axis-aligned bounding box implementation.

* Add aliases and staic asserts for aabb.

* Add max prediction time frame - how long object can be predicted until declared lost.

* Add option to reset aabb.

* Add keeping orientation from previous frame, when object did not move.

* Add operator overloads to Aabb. Fix field names mistake.

* Fix Aabb members naming.

* Update RadarPostprocessPointsNode to provide cluster (detection) aabbs.

* Add handling detection (and object) aabbs to RadarTrackObjectsNode.

* Rename predictionSensitivity parameter to maxMatchingDistance.

* Add remaining tracking parameters to API.

* Add kinematic object tracking test. Make object tracking tests more clear.

* Add runtime object tracking test for rviz2 preview, skipped by default.

* Add linear and angular velocity getters to IPointsNode. Add relative velocity and relative acceleration calculation to RadarTrackObjectsNode.

* Make changes according to review for #288.

---------

Signed-off-by: Paweł Liberadzki <[email protected]>
* Architectural changes to support multi-return feature
* Add RGL_RETURN_TYPE_NOT_DIVERGENT

* Compute XYZ based on raydir and distance

* Fix XYZ computation, run beam sample processing conditionally
Co-authored-by: Piotr Rybicki <[email protected]>
Signed-off-by: Paweł Liberadzki <[email protected]>
Signed-off-by: Paweł Liberadzki <[email protected]>
Add handling nan radial speeds in radar postprocess and object tracking nodes.

Signed-off-by: Paweł Liberadzki <[email protected]>
Base automatically changed from feature/radar-object-classification to feature/q2-features June 20, 2024 13:53
@msz-rai msz-rai force-pushed the feature/q2-features branch from 5941780 to 86ab331 Compare July 13, 2024 15:16
Base automatically changed from feature/q2-features to develop July 15, 2024 08:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants