···386386template <typename T> struct OptimizerHand
387387{
388388 T hand_size;
389389- Vec3<T> wrist_location = {};
390390- // This is constant, a ceres::Rotation.h quat,, taken from last frame.
391391- Quat<T> wrist_pre_orientation_quat = {};
392392- // This is optimized - angle-axis rotation vector. Starts at 0, loss goes up the higher it goes because it
393393- // indicates more of a rotation.
389389+ Vec3<T> wrist_post_location = {};
394390 Vec3<T> wrist_post_orientation_aax = {};
391391+392392+ Vec3<T> wrist_final_location = {};
393393+ Quat<T> wrist_final_orientation = {};
394394+395395 OptimizerThumb<T> thumb = {};
396396 OptimizerFinger<T> finger[4] = {};
397397};
···517517518518 u_logging_level log_level = U_LOGGING_INFO;
519519520520- Quat<HandScalar> last_frame_pre_rotation = {};
520520+ // Squashed final pose from last frame. We start from here.
521521+ // At some point this might turn into a pose-prediction instead, we'll see :)
522522+ Quat<HandScalar> this_frame_pre_rotation = {};
523523+ Vec3<HandScalar> this_frame_pre_position = {};
524524+521525 OptimizerHand<HandScalar> last_frame = {};
522526523527 // The pose that will take you from the right camera's space to the left camera's space.