-
-
Notifications
You must be signed in to change notification settings - Fork 22
Open
Description
| cur_lidar_to_ref_lidar = (curr_l2e_transform.T @ |
cur_lidar_to_ref_lidar = (curr_l2e_transform.T @ curr_e2g_transform.T @ ref_g2e_transform.T @ ref_e2l_transform.T)
I've noticed an issue in the transformation chain calculation where matrix transpose (.T) is used instead of proper matrix inverse (np.linalg.inv), which eliminates the translation components from the transformation.
Why this matters:
- For rigid transformation matrices in homogeneous coordinates, the transpose is NOT equivalent to the inverse
- Transpose only preserves rotation components but eliminates translation: [R^T 0] vs proper inverse: [R^T -R^T*t]
- This results in transformations that maintain orientation but lose all positional information
Questions:
- Was this intentional or is it a bug?
- If intentional, what was the reasoning behind using transpose instead of inverse?
- The current implementation produces transformations without translation - is this the desired behavior?
Metadata
Metadata
Assignees
Labels
No labels