Skip to content

What’s the difference between Twist2d and Transform2d? #5366

Answered by calcmogul
Gold856 asked this question in Q&A
Discussion options

You must be logged in to vote

Twist2d is an element of the tangent space of SE(2). It represents an arc between two poses and is the closed form solution for mapping encoder position and gyro heading deltas onto change in pose (useful for odometry). Transform2d is a coordinate transform.

A key difference you'll notice when interpolating between two poses with the two is that twists follow an arc while transforms follow a line. In a Kalman filter where it assumes the pose is normally distributed, twists are a more correct interpolant. See https://rpk.lcsr.jhu.edu/wp-content/uploads/2014/08/p34_Long12_The-Banana-Distribution.pdf.

Section 10.2 of https://controls-in-frc.link/ explains more of the abstract algebra involve…

Replies: 1 comment

Comment options

You must be logged in to vote
0 replies
Answer selected by Gold856
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Category
Q&A
Labels
None yet
2 participants