What is the motivation to use Lie algebra in computer vision?
when optimizing estimations
-> we want that certain constraints still hold (i.e. orthogonality of rotation matrix… RRT = I)
=> difficlt to simultaneously optimize and enforce constraints
=> use Lie algebra to find constraing free optimization strategy
What is a (mathemtaical) group (in general)? What conditions does it satisfy?
algebraic structure of
one set
and
one operator
G = (A,*) (* is operator, not multipication…)
conditions it should satisfy:
closure
∀ a,b ∈ A; a*b ∈ A
associative law
∀ a,b,c ∈ A;
(a*b)*c = a*(b*c)
identity element
∃ a0 ∈ A
so that
∀ a ∈ A
a0 * a = a * a0 = a
inverse
∀ a ∈ A,
∃ a^-1 ∈ A
a*a^-1 = a0
-> element times inverse of element equals identity element
What is the general linear (GL(n)) group we make use of?
invertible n*n matrix (set)
matrix multiplication (operator)
What is the special orthogonal (SO(n)) group we make use of?
Rotation matrix group
-> here, SO(2) (2-dim) and SO(3) (3-dim) is most common
rotation matrices (set)
matrix multiplicatoin (operator)
unity element: identity matrix
identitiy element: inverse
R * R^-1 = I
What are lie groups?
group with continuous properties
-> e.g. SO(n), SE(n) in real space…
What has to be considered w.r.t. availablitly of operators for the SO(3) and SE(3) Lie groups?
can be multiplied
but not aded
=> affects derivative computation!!! (-> and in turn optimization with gradient descent…)
How to solve the problem of Lie groups not being able to use addition?
need derivatives for optimizatoin
-> map Lie gorup in other space
there, we perform addition and multiplication
What is a skew-symmetric matrix?
can be rewritten as vector
transpose equal to negative of itself
How can we denote skewing and un-skewing?
a^ = A
A (reversed hat) = a
Define the Lie algebra so(3)
How can one map from Lie algebra to Lie group?
How is the Lie algebra se(3) defined?
-> 6 dim. vector consisting of translatoin part and rotation(so(3)) part
=> BUT!!! translatoin part not the same as in translation matrix!
i.e. similar to SE(3) we have a rotation and translation part
Here, the so(3) part (I.e. rotation in Lie group) is the phi while the translation part is the p
How can one calculate the mapping(exp) ?
=> Maps so(3) to SO(3)
where theta is the norm of the vector
and n is the unit vector relating to the direction…
Of the 6D rotation vector phi
How can we map back from lie algebra to lie gorup? (log)
SO(3) to so(3)
But basically solve for rotation angle and rotation axis separately… (norm and unit vector…)
=> axis n is eigenvector corresponding to the matrix R's eigenvalue of 1…
Finally, why and how do we use the Lie algebra?
Lie group (SO(3) and SE(3) have no addition)
=> map from Lie group to lie algebra
-> perform addition
-> map back
Is the standard addition possible in Lie algebra?
no
-> we need some approximation (BCH approximation)
What does the phi in so(3) correspond to ?
The derivative of the R matrix (Lie group)
What is the difference between Lie group and Lie algebra?
Lie group:
Lie algebra:
stuff we map our Lie groups into to perform constraint free optimisation
Last changeda year ago