December 18, 2022
카메라의 intrinsic parameter
와 CAM_to_IMU에 대한 extrinsic parameter
를 subscribe
최신 calibration된 값을 얻기 위해, 두 토픽을 subscribe
/ov_msckf/loop_intrinsics
/ov_msckf/loop_extrinsic
pose_graph_node.cpp
에서 image, pointcloud, odometry에 해당하는 message들을 OpenVINS로 부터 가져 옴
/camera/infra1/image_rect_raw
/ov_msckf/loop_feats
: global frame 내에서 모든 3D feature들
/ov_msckf/loop_pose
keyframe을 pose graph에 추가
keyframe의 정보들을 처리
loop closure 검출 시도
pose_graph.cpp
에서 addKeyFrame()
함수는 keyframe을 찾기 위해 detectLoop()
를 호출
return된 상위 n개의 match에서, 모든 임계 값을 통과하는 가장 오래된 match를 선택
pose graph optimization 수행
optimize_buf
에 추가되고, optimize4DoF()
thread에서 처리됨최적화 후 new keyframe이 얼마나 수정되어야 하는지 정도를 계산
yaw _drift
, r_drift
, t_drift
등등pose를 publish
수정된 pose는 다시 publish됨
vio_callback()