-
Notifications
You must be signed in to change notification settings - Fork 124
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
[cooperative perception] Move motion model mapping default values to MotionModelMapping
class
#2203
Conversation
The default motion model mapping values were specified in the ROS parameter declarations, but this meant the MotionModelMapper instance never got them. Its values wouldn't be updated unless a user changed them. Now, the default values are stored in the class instance, and the ROS parameter declarations get their default values from the instance.
The parameter declarations for the ExternalObjectListToDetectionListNode got moved to after the on_set_parameter_callback assignment because the callback was previously not being called when the parameters were initially declared. This prevented the motion_model_mapping_ from being updated with the user-overridden mappings.
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.
Discussed during the VRU meeting to change the default values from CV to CTRV because they are not currently supported
@@ -112,7 +112,7 @@ auto make_detection(const carma_cooperative_perception_interfaces::msg::Detectio | |||
return make_ctra_detection(msg); | |||
|
|||
case msg.MOTION_MODEL_CV: | |||
break; | |||
throw std::runtime_error("unsupported motion model type '3: constant velocity (CV)'"); |
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.
actually why is this unsupported again?
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.
pedestrian seems to be using CV model
std::uint8_t pedestrian_model{carma_cooperative_perception_interfaces::msg::Detection::MOTION_MODEL_CV};
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.
That is the default, but in practice we will probably change it through parameters in the launch configuration. I will change the default to be CTRV since that is supported.
We don't support CV models because the multiple_object_tracking
library does not have them. We can add it in, but that would be a different issue.
The previous motion model mapping used CV model for pedestrians and and unknowns, but the CV model is unsupported. This changes the default to CTRV so we don't default to unsupported motion models.
PR Details
Description
The default motion model mapping values were specified in the ROS parameter declarations, but this meant the
MotionModelMapper
instance never got them. Its values wouldn't be updated unless a user changed them. Now, the default values are stored in the class instance, and the ROS parameter declarations get their default values from the instance.Related GitHub Issue
Closes #2202
Related Jira Key
Closes CDAR-531
Motivation and Context
See above
How Has This Been Tested?
Types of changes
Checklist: