Introduction
SLAM main component:
Sensor data retrievation
Visual Odoemtry
Front End: feature abstract and matching
Back End: optimiation
Loop detection / loop closure
Goal: Location and Mapping
Types:
Monocular SLAM / stereo / Laser / distance odometry /
dense/sparse IMU
Scale Ambiguity
accumulating drift
movement equation vs observeration equation
Programming
cmake minimum version / library / target
c++
cmake tutorial
Movement in 3d space
-
skew-symmetric matrix A(T) = -A :
a^: right upper corner: a3 a2 a1 -
direction cosine matrix –> rotation matrix –> transform matrix
a1 = R12 * a2 + t12
-
rotation matrix / angle-axis or axis-angle / rotation vector - theta
trace(matrix) = 1 - 2 cos(theta)
rotate ‘rotation vector’ does not change the ‘rotation vector’, thus R * n = n
euler: yaw-pitch-roll / gimbal lock
quaternion
ij = k, guess i - 90 and j -90 whether equal k - 90: no. acutually i - 180
-
useful link:
understand euler angle and rotation matrix (also angle-axis)