C++ Implementation of Pose Local Parameterization for 3D Optimization
This code defines a local parameterization for a 3D pose represented by a position vector and a quaternion rotation. The 'Plus' function updates the input pose by adding a small perturbation represented by a 6-dimensional vector (3 for position and 3 for rotation). The rotation perturbation is converted to a quaternion and applied to the input quaternion using quaternion multiplication. The result is normalized to ensure it represents a valid rotation. The 'ComputeJacobian' function computes the Jacobian matrix of the 'Plus' function with respect to the input pose, which is a 7x6 matrix with the top 6x6 being the identity matrix and the bottom row being all zeros. This Jacobian is used in optimization algorithms like Levenberg-Marquardt to efficiently update the pose estimate.
原文地址: https://www.cveoy.top/t/topic/n96u 著作权归作者所有。请勿转载和采集!