Skip to content

Commit

Permalink
fix(multi_object_tracker): consider vehicle twist direction (autoware…
Browse files Browse the repository at this point in the history
…foundation#4637)

* feat(multi_object_tracker): consider vehicle twist direction

Signed-off-by: Takayuki Murooka <takayuki5168@gmail.com>

* fix bicycle model

Signed-off-by: Takayuki Murooka <takayuki5168@gmail.com>

* update doc

Signed-off-by: Takayuki Murooka <takayuki5168@gmail.com>

---------

Signed-off-by: Takayuki Murooka <takayuki5168@gmail.com>
  • Loading branch information
takayuki5168 committed Dec 25, 2023
1 parent 293eed6 commit b96c07f
Show file tree
Hide file tree
Showing 3 changed files with 6 additions and 3 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -427,7 +427,8 @@ bool BicycleTracker::getTrackedObject(
pose_with_cov.covariance[utils::MSG_COV_IDX::YAW_YAW] = P(IDX::YAW, IDX::YAW);

// twist
twist_with_cov.twist.linear.x = X_t(IDX::VX);
twist_with_cov.twist.linear.x = X_t(IDX::VX) * std::cos(X_t(IDX::SLIP));
twist_with_cov.twist.linear.y = X_t(IDX::VX) * std::sin(X_t(IDX::SLIP));
twist_with_cov.twist.angular.z =
X_t(IDX::VX) / lr_ * std::sin(X_t(IDX::SLIP)); // yaw_rate = vx_k / l_r * sin(slip_k)
// twist covariance
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -478,7 +478,8 @@ bool BigVehicleTracker::getTrackedObject(
pose_with_cov.covariance[utils::MSG_COV_IDX::YAW_YAW] = P(IDX::YAW, IDX::YAW);

// twist
twist_with_cov.twist.linear.x = X_t(IDX::VX);
twist_with_cov.twist.linear.x = X_t(IDX::VX) * std::cos(X_t(IDX::SLIP));
twist_with_cov.twist.linear.y = X_t(IDX::VX) * std::sin(X_t(IDX::SLIP));
twist_with_cov.twist.angular.z =
X_t(IDX::VX) / lr_ * std::sin(X_t(IDX::SLIP)); // yaw_rate = vx_k / l_r * sin(slip_k)
// twist covariance
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -494,7 +494,8 @@ bool NormalVehicleTracker::getTrackedObject(
pose_with_cov.covariance[utils::MSG_COV_IDX::YAW_YAW] = P(IDX::YAW, IDX::YAW);

// twist
twist_with_cov.twist.linear.x = X_t(IDX::VX);
twist_with_cov.twist.linear.x = X_t(IDX::VX) * std::cos(X_t(IDX::SLIP));
twist_with_cov.twist.linear.y = X_t(IDX::VX) * std::sin(X_t(IDX::SLIP));
twist_with_cov.twist.angular.z =
X_t(IDX::VX) / lr_ * std::sin(X_t(IDX::SLIP)); // yaw_rate = vx_k / l_r * sin(slip_k)
// twist covariance
Expand Down

0 comments on commit b96c07f

Please sign in to comment.