说明:转发请注明作者和出处;以下文章内容为精简版,详细版以pdf格式的幻灯片形式呈现,请见链接:视觉SLAM_06_指数与对数映射.pdf
0.目录
1.SO(3)上的指数映射
  任意矩阵的指数映射可以写成一个泰勒展开,但是只有在收敛的情况下才会有结果,其结果仍是一个矩阵:
 
     
      
       
        
         
         
          
           
            
             e
            
            
             A
            
           
           
            =
           
           
            
             ∑
            
            
             
              n
             
             
              =
             
             
              0
             
            
            
             ∞
            
           
           
            
             1
            
            
             
              n
             
             
              !
             
            
           
           
            
             A
            
            
             n
            
           
          
         
         
         
          
           (1)
          
         
        
       
       
         e^{\boldsymbol A} = \sum_{n=0}^{\infty} \frac{1}{n!} \boldsymbol{A} ^ n \tag{1} 
       
      
     eA=n=0∑∞n!1An(1)  同样地,对
    
     
      
       
        
         s
        
        
         o
        
       
       
        (
       
       
        3
       
       
        )
       
      
      
       \mathfrak{so}(3)
      
     
    so(3)中的任意元素
    
     
      
       
        ϕ
       
      
      
       \boldsymbol \phi
      
     
    ϕ,也可以按此方式定义其指数映射:
 
     
      
       
        
         
         
          
           
            
             e
            
            
             
              ϕ
             
             
              
                
               
                ^
               
              
              
             
            
           
           
            =
           
           
            
             ∑
            
            
             
              n
             
             
              =
             
             
              0
             
            
            
             ∞
            
           
           
            
             1
            
            
             
              n
             
             
              !
             
            
           
           
            (
           
           
            ϕ
           
           
            
              
             
              ^
             
            
            
           
           
            
             )
            
            
             n
            
           
          
         
         
         
          
           (2)
          
         
        
       
       
         e^{\boldsymbol \phi \hat{\,} ^{}} = \sum_{n=0}^{\infty} \frac{1}{n!} (\boldsymbol \phi \hat{\,} ^{} ) ^ n \tag{2} 
       
      
     eϕ^=n=0∑∞n!1(ϕ^)n(2)但此定义无法直接计算,下面推导一种计算指数映射的简便方法。
  由于
    
     
      
       
        ϕ
       
      
      
       \boldsymbol \phi
      
     
    ϕ是三维向量,定义它的模长和方向分别为
    
     
      
       
        θ
       
      
      
       \theta
      
     
    θ和
    
     
      
       
        a
       
      
      
       \boldsymbol a
      
     
    a,于是有
    
     
      
       
        ϕ
       
       
        =
       
       
        θ
       
       
        a
       
      
      
       \boldsymbol \phi = \theta \boldsymbol a
      
     
    ϕ=θa,其中,
    
     
      
       
        ∥
       
       
        a
       
       
        ∥
       
       
        =
       
       
        1
       
      
      
       \| \boldsymbol a \| = 1
      
     
    ∥a∥=1。
 对于
    
     
      
       
        a
       
       
        
          
         
          ^
         
        
        
       
      
      
       \boldsymbol a \hat{\,} ^ {}
      
     
    a^有以下两条性质:
 
     
      
       
        
         
         
          
           
            a
           
           
            
              
             
              ^
             
            
            
           
           
            a
           
           
            
              
             
              ^
             
            
            
           
           
            =
           
           
            
             [
            
            
             
              
               
                
                 
                  −
                 
                 
                  
                   a
                  
                  
                   2
                  
                  
                   2
                  
                 
                 
                  −
                 
                 
                  
                   a
                  
                  
                   3
                  
                  
                   2
                  
                 
                
               
              
              
               
                
                 
                  
                   a
                  
                  
                   1
                  
                 
                 
                  
                   a
                  
                  
                   2
                  
                 
                
               
              
              
               
                
                 
                  
                   a
                  
                  
                   1
                  
                 
                 
                  
                   a
                  
                  
                   3
                  
                 
                
               
              
             
             
              
               
                
                 
                  
                   a
                  
                  
                   1
                  
                 
                 
                  
                   a
                  
                  
                   2
                  
                 
                
               
              
              
               
                
                 
                  −
                 
                 
                  
                   a
                  
                  
                   1
                  
                  
                   2
                  
                 
                 
                  −
                 
                 
                  
                   a
                  
                  
                   3
                  
                  
                   2
                  
                 
                
               
              
              
               
                
                 
                  
                   a
                  
                  
                   2
                  
                 
                 
                  
                   a
                  
                  
                   3
                  
                 
                
               
              
             
             
              
               
                
                 
                  
                   a
                  
                  
                   1
                  
                 
                 
                  
                   a
                  
                  
                   3
                  
                 
                
               
              
              
               
                
                 
                  
                   a
                  
                  
                   2
                  
                 
                 
                  
                   a
                  
                  
                   3
                  
                 
                
               
              
              
               
                
                 
                  −
                 
                 
                  
                   a
                  
                  
                   1
                  
                  
                   2
                  
                 
                 
                  −
                 
                 
                  
                   a
                  
                  
                   2
                  
                  
                   2
                  
                 
                
               
              
             
            
            
             ]
            
           
          
         
         
         
          
           (3)
          
         
        
       
       
         \boldsymbol a \hat{\,} ^ {} \boldsymbol a \hat{\,} ^ {} = \begin{bmatrix} -a^2_2 - a^2_3 & a_1 a_2 & a_1 a_3 \\ a_1 a_2 & -a^2_1 - a^2_3 & a_2 a_3 \\ a_1 a_3 & a_2 a_3 & -a^2_1 - a^2_2 \end{bmatrix} \tag{3} 
       
      
     a^a^=⎣⎡−a22−a32a1a2a1a3a1a2−a12−a32a2a3a1a3a2a3−a12−a22⎦⎤(3) 
     
      
       
        
         
         
          
           
            a
           
           
            
              
             
              ^
             
            
            
           
           
            a
           
           
            
              
             
              ^
             
            
            
           
           
            a
           
           
            
              
             
              ^
             
            
            
           
           
            =
           
           
            a
           
           
            
              
             
              ^
             
            
            
           
           
            (
           
           
            a
           
           
            
             a
            
            
             T
            
           
           
            −
           
           
            I
           
           
            )
           
           
            =
           
           
            −
           
           
            a
           
           
            
              
             
              ^
             
            
            
           
          
         
         
         
          
           (4)
          
         
        
       
       
         \boldsymbol a \hat{\,} ^ {} \boldsymbol a \hat{\,} ^ {} \boldsymbol a \hat{\,} ^ {} = \boldsymbol a \hat{\,} ^ {} (\boldsymbol a \boldsymbol a ^T - \boldsymbol I) = - \boldsymbol a \hat{\,} ^ {} \tag{4} 
       
      
     a^a^a^=a^(aaT−I)=−a^(4)这两个式子提供了处理
    
     
      
       
        a
       
       
        
          
         
          ^
         
        
        
       
      
      
       \boldsymbol a \hat{\,} ^{}
      
     
    a^高阶项的方法。指数映射可以写成:
 
     
      
       
        
         
          
           
            
             e
            
            
             
              ϕ
             
             
              
                
               
                ^
               
              
              
             
            
           
          
         
         
          
           
            
            
             =
            
            
             
              e
             
             
              
               θ
              
              
               a
              
              
               
                 
                
                 ^
                
               
               
              
             
            
            
             =
            
            
             
              ∑
             
             
              
               n
              
              
               =
              
              
               0
              
             
             
              ∞
             
            
            
             
              1
             
             
              
               n
              
              
               !
              
             
            
            
             (
            
            
             θ
            
            
             a
            
            
             
               
              
               ^
              
             
             
            
            
             
              )
             
             
              n
             
            
           
          
         
        
        
         
          
           
          
         
         
          
           
            
            
             =
            
            
             I
            
            
             +
            
            
             θ
            
            
             a
            
            
             
               
              
               ^
              
             
             
            
            
             +
            
            
             
              1
             
             
              
               2
              
              
               !
              
             
            
            
             
              θ
             
             
              2
             
            
            
             a
            
            
             
               
              
               ^
              
             
             
            
            
             a
            
            
             
               
              
               ^
              
             
             
            
            
             +
            
            
             
              1
             
             
              
               3
              
              
               !
              
             
            
            
             
              θ
             
             
              3
             
            
            
             a
            
            
             
               
              
               ^
              
             
             
            
            
             a
            
            
             
               
              
               ^
              
             
             
            
            
             a
            
            
             
               
              
               ^
              
             
             
            
            
             +
            
            
             
              1
             
             
              
               4
              
              
               !
              
             
            
            
             (
            
            
             a
            
            
             
               
              
               ^
              
             
             
            
            
             
              )
             
             
              4
             
            
            
             +
            
            
             .
            
            
             .
            
            
             .
            
           
          
         
        
        
         
          
           
          
         
         
          
           
            
            
             =
            
            
             a
            
            
             
              a
             
             
              T
             
            
            
             −
            
            
             a
            
            
             
               
              
               ^
              
             
             
            
            
             a
            
            
             
               
              
               ^
              
             
             
            
            
             +
            
            
             θ
            
            
             a
            
            
             
               
              
               ^
              
             
             
            
            
             +
            
            
             
              1
             
             
              
               2
              
              
               !
              
             
            
            
             θ
            
            
             a
            
            
             
               
              
               ^
              
             
             
            
            
             a
            
            
             
               
              
               ^
              
             
             
            
            
             −
            
            
             
              1
             
             
              
               3
              
              
               !
              
             
            
            
             
              θ
             
             
              3
             
            
            
             a
            
            
             
               
              
               ^
              
             
             
            
            
             −
            
            
             
              1
             
             
              
               4
              
              
               !
              
             
            
            
             
              θ
             
             
              4
             
            
            
             (
            
            
             a
            
            
             
               
              
               ^
              
             
             
            
            
             
              )
             
             
              2
             
            
            
             +
            
            
             .
            
            
             .
            
            
             .
            
           
          
         
        
        
         
          
           
          
         
         
          
           
            
            
             =
            
            
             a
            
            
             
              a
             
             
              T
             
            
            
             +
            
            
             (
            
            
             θ
            
            
             −
            
            
             
              1
             
             
              
               3
              
              
               !
              
             
            
            
             
              θ
             
             
              3
             
            
            
             +
            
            
             
              1
             
             
              
               5
              
              
               !
              
             
            
            
             
              θ
             
             
              5
             
            
            
             −
            
            
             .
            
            
             .
            
            
             .
            
            
             )
            
            
             a
            
            
             
               
              
               ^
              
             
             
            
            
             −
            
            
             (
            
            
             1
            
            
             −
            
            
             
              1
             
             
              
               2
              
              
               !
              
             
            
            
             
              θ
             
             
              2
             
            
            
             +
            
            
             
              1
             
             
              
               4
              
              
               !
              
             
            
            
             −
            
            
             .
            
            
             .
            
            
             .
            
            
             )
            
            
             a
            
            
             
               
              
               ^
              
             
             
            
            
             a
            
            
             
               
              
               ^
              
             
             
            
           
          
         
        
        
         
          
           
          
         
         
          
           
            
            
             =
            
            
             a
            
            
             
               
              
               ^
              
             
             
            
            
             a
            
            
             
               
              
               ^
              
             
             
            
            
             +
            
            
             I
            
            
             +
            
            
             sin
            
            
             
            
            
             θ
            
            
             a
            
            
             
               
              
               ^
              
             
             
            
            
             −
            
            
             cos
            
            
             
            
            
             θ
            
            
             a
            
            
             
               
              
               ^
              
             
             
            
            
             a
            
            
             
               
              
               ^
              
             
             
            
           
          
         
        
        
         
          
           
          
         
         
          
           
            
            
             =
            
            
             (
            
            
             1
            
            
             −
            
            
             cos
            
            
             
            
            
             θ
            
            
             )
            
            
             a
            
            
             
               
              
               ^
              
             
             
            
            
             a
            
            
             
               
              
               ^
              
             
             
            
            
             +
            
            
             I
            
            
             +
            
            
             sin
            
            
             
            
            
             θ
            
            
             a
            
            
             
               
              
               ^
              
             
             
            
           
          
         
        
        
         
          
           
          
         
         
          
           
            
            
             =
            
            
             cos
            
            
             
            
            
             θ
            
            
             I
            
            
             +
            
            
             (
            
            
             1
            
            
             −
            
            
             cos
            
            
             
            
            
             θ
            
            
             )
            
            
             a
            
            
             
              a
             
             
              T
             
            
            
             +
            
            
             sin
            
            
             
            
            
             θ
            
            
             a
            
            
             
               
              
               ^
              
             
             
            
           
          
         
        
       
       
         \begin{aligned} e^{\boldsymbol \phi \hat{\,} ^{}} &= e^{\theta \boldsymbol a \hat{\,} ^{}} = \sum_{n=0}^{\infty} \frac{1}{n!} (\theta \boldsymbol a \hat{\,} ^{}) ^ n \\ &= \boldsymbol I + \theta \boldsymbol a \hat{\,} ^ {} + \frac{1}{2!} \theta^2 \boldsymbol a \hat{\,} ^ {} \boldsymbol a \hat{\,} ^ {} + \frac{1}{3!} \theta^3 \boldsymbol a \hat{\,} ^ {} \boldsymbol a \hat{\,} ^ {} \boldsymbol a \hat{\,} ^ {} + \frac{1}{4!} (\boldsymbol a \hat{\,} ^ {})^4 + ... \\ &= \boldsymbol a \boldsymbol a ^T - \boldsymbol a \hat{\,} ^ {} \boldsymbol a \hat{\,} ^ {} + \theta \boldsymbol a \hat{\,} ^ {} + \frac{1}{2!} \theta \boldsymbol a \hat{\,} ^ {} \boldsymbol a \hat{\,} ^ {} - \frac{1}{3!} \theta^3 \boldsymbol a \hat{\,} ^ {} - \frac{1}{4!} \theta^4 (\boldsymbol a \hat{\,} ^ {})^2 + ... \\ &= \boldsymbol a \boldsymbol a ^T + (\theta - \frac{1}{3!} \theta^3 + \frac{1}{5!} \theta^5 - ...) \boldsymbol a \hat{\,} ^ {} - (1 - \frac{1}{2!} \theta^2 + \frac{1}{4!} - ...) \boldsymbol a \hat{\,} ^ {} \boldsymbol a \hat{\,} ^ {} \\ &= \boldsymbol a \hat{\,} ^ {} \boldsymbol a \hat{\,} ^ {} + \boldsymbol I + \sin \theta \boldsymbol a \hat{\,} ^ {} - \cos \theta \boldsymbol a \hat{\,} ^ {} \boldsymbol a \hat{\,} ^ {} \\ &= (1 - \cos \theta) \boldsymbol a \hat{\,} ^ {} \boldsymbol a \hat{\,} ^ {} + \boldsymbol I + \sin \theta \boldsymbol a \hat{\,} ^ {} \\ &= \cos \theta \boldsymbol I + (1 - \cos \theta) \boldsymbol a \boldsymbol a ^T + \sin \theta \boldsymbol a \hat{\,} ^ {} \end{aligned} 
       
      
     eϕ^=eθa^=n=0∑∞n!1(θa^)n=I+θa^+2!1θ2a^a^+3!1θ3a^a^a^+4!1(a^)4+...=aaT−a^a^+θa^+2!1θa^a^−3!1θ3a^−4!1θ4(a^)2+...=aaT+(θ−3!1θ3+5!1θ5−...)a^−(1−2!1θ2+4!1−...)a^a^=a^a^+I+sinθa^−cosθa^a^=(1−cosθ)a^a^+I+sinθa^=cosθI+(1−cosθ)aaT+sinθa^ 即:
     
      
       
        
         
         
          
           
            
             
              
               
                
                 e
                
                
                 
                  θ
                 
                 
                  a
                 
                 
                  
                    
                   
                    ^
                   
                  
                  
                 
                
               
               
                =
               
               
                cos
               
               
                
               
               
                θ
               
               
                I
               
               
                +
               
               
                (
               
               
                1
               
               
                −
               
               
                cos
               
               
                
               
               
                θ
               
               
                )
               
               
                a
               
               
                
                 a
                
                
                 T
                
               
               
                +
               
               
                sin
               
               
                
               
               
                θ
               
               
                a
               
               
                
                  
                 
                  ^
                 
                
                
               
              
             
            
           
          
         
         
         
          
           (5)
          
         
        
       
       
         \begin{aligned} e^{\theta \boldsymbol a \hat{\,} ^{}} = \cos \theta \boldsymbol I + (1 - \cos \theta) \boldsymbol a \boldsymbol a ^T + \sin \theta \boldsymbol a \hat{\,} ^ {} \end{aligned} \tag{5} 
       
      
     eθa^=cosθI+(1−cosθ)aaT+sinθa^(5) 
    
     
      
       
        
         s
        
        
         o
        
       
       
        (
       
       
        3
       
       
        )
       
      
      
       \mathfrak{so}(3)
      
     
    so(3)实际上就是由所谓的旋转向量组成的空间,通过指数映射,可以把
    
     
      
       
        
         s
        
        
         o
        
       
       
        (
       
       
        3
       
       
        )
       
      
      
       \mathfrak{so}(3)
      
     
    so(3)中任意一个向量对应到了一个位于SO(3)中的旋转矩阵。反之,也能把SO(3)中的元素对应到
    
     
      
       
        
         s
        
        
         o
        
       
       
        (
       
       
        3
       
       
        )
       
      
      
       \mathfrak{so}(3)
      
     
    so(3)中:
 
     
      
       
        
         
         
          
           
            ϕ
           
           
            =
           
           
            ln
           
           
            
           
           
            (
           
           
            R
           
           
            
             )
            
            
             ∨
            
           
           
            =
           
           
            
             
              (
             
             
              
               ∑
              
              
               
                n
               
               
                =
               
               
                0
               
              
              
               ∞
              
             
             
              
               
                (
               
               
                −
               
               
                1
               
               
                
                 )
                
                
                 n
                
               
              
              
               
                n
               
               
                +
               
               
                1
               
              
             
             
              (
             
             
              R
             
             
              −
             
             
              I
             
             
              
               )
              
              
               
                n
               
               
                +
               
               
                1
               
              
             
             
              )
             
            
            
             ∨
            
           
          
         
         
         
          
           (6)
          
         
        
       
       
         \boldsymbol \phi = \ln (\boldsymbol R)^{\vee} = \left(\sum_{n=0}^{\infty} \frac{(-1)^n}{n+1} (\boldsymbol R - \boldsymbol I)^{n + 1} \right)^{\vee} \tag{6} 
       
      
     ϕ=ln(R)∨=(n=0∑∞n+1(−1)n(R−I)n+1)∨(6)
2.SE(3)上的指数映射
  
    
     
      
       
        
         s
        
        
         e
        
       
       
        (
       
       
        3
       
       
        )
       
      
      
       \mathfrak{se}(3)
      
     
    se(3)上的指数映射形式如下:
 
     
      
       
        
         
         
          
           
            
             
              
               
                e
               
               
                
                 ξ
                
                
                 
                   
                  
                   ^
                  
                 
                 
                
               
              
             
            
            
             
              
               
               
                =
               
               
                
                 [
                
                
                 
                  
                   
                    
                     
                      
                       ∑
                      
                      
                       
                        n
                       
                       
                        =
                       
                       
                        0
                       
                      
                      
                       ∞
                      
                     
                     
                      
                       1
                      
                      
                       
                        n
                       
                       
                        !
                       
                      
                     
                     
                      
                       
                        (
                       
                       
                        ϕ
                       
                       
                        
                          
                         
                          ^
                         
                        
                        
                       
                       
                        )
                       
                      
                      
                       n
                      
                     
                    
                   
                  
                  
                   
                    
                     
                      
                       ∑
                      
                      
                       
                        n
                       
                       
                        =
                       
                       
                        0
                       
                      
                      
                       ∞
                      
                     
                     
                      
                       1
                      
                      
                       
                        (
                       
                       
                        n
                       
                       
                        +
                       
                       
                        1
                       
                       
                        )
                       
                       
                        !
                       
                      
                     
                     
                      (
                     
                     
                      ϕ
                     
                     
                      
                        
                       
                        ^
                       
                      
                      
                     
                     
                      
                       )
                      
                      
                       n
                      
                     
                     
                      ρ
                     
                    
                   
                  
                 
                 
                  
                   
                    
                     
                      0
                     
                     
                      T
                     
                    
                   
                  
                  
                   
                    
                     1
                    
                   
                  
                 
                
                
                 ]
                
               
              
             
            
           
           
            
             
              
             
            
            
             
              
               
               
                
                 
                  =
                 
                
                
                 Δ
                
               
               
                
                 [
                
                
                 
                  
                   
                    
                     R
                    
                   
                  
                  
                   
                    
                     
                      J
                     
                     
                      ρ
                     
                    
                   
                  
                 
                 
                  
                   
                    
                     
                      0
                     
                     
                      T
                     
                    
                   
                  
                  
                   
                    
                     1
                    
                   
                  
                 
                
                
                 ]
                
               
               
                =
               
               
                T
               
              
             
            
           
          
         
         
         
          
           (7)
          
         
        
       
       
         \begin{aligned} e^{\boldsymbol \xi \hat{\,} ^ {}} &= \begin{bmatrix} \sum_{n=0}^{\infty} \frac{1}{n!} \left( \boldsymbol \phi \hat{\,}^{} \right)^n & \sum_{n=0}^{\infty} \frac{1}{(n+1)!}(\boldsymbol \phi \hat{\,}^{})^n \boldsymbol \rho \\ \boldsymbol 0^T & 1 \end{bmatrix} \\ &\overset{\Delta}{=} \begin{bmatrix} \boldsymbol R & \boldsymbol {J\rho} \\ \boldsymbol 0^T & 1 \end{bmatrix} = \boldsymbol T \end{aligned} \tag{7} 
       
      
     eξ^=[∑n=0∞n!1(ϕ^)n0T∑n=0∞(n+1)!1(ϕ^)nρ1]=Δ[R0TJρ1]=T(7)
 令
    
     
      
       
        ϕ
       
       
        =
       
       
        θ
       
       
        a
       
      
      
       \boldsymbol \phi = \theta \boldsymbol a
      
     
    ϕ=θa,其中
    
     
      
       
        a
       
      
      
       \boldsymbol a
      
     
    a为单位向量,则:
 
     
      
       
        
         
         
          
           
            J
           
           
            =
           
           
            
             ∑
            
            
             
              n
             
             
              =
             
             
              0
             
            
            
             ∞
            
           
           
            
             1
            
            
             
              (
             
             
              n
             
             
              +
             
             
              1
             
             
              )
             
             
              !
             
            
           
           
            (
           
           
            ϕ
           
           
            
              
             
              ^
             
            
            
           
           
            
             )
            
            
             n
            
           
           
            =
           
           
            
             
              sin
             
             
              
             
             
              θ
             
            
            
             θ
            
           
           
            I
           
           
            +
           
           
            
             (
            
            
             1
            
            
             −
            
            
             
              
               sin
              
              
               
              
              
               θ
              
             
             
              θ
             
            
            
             )
            
           
           
            a
           
           
            
             a
            
            
             T
            
           
           
            +
           
           
            
             
              1
             
             
              −
             
             
              cos
             
             
              
             
             
              θ
             
            
            
             θ
            
           
           
            a
           
           
            
              
             
              ^
             
            
            
           
          
         
         
         
          
           (8)
          
         
        
       
       
         \boldsymbol J = \sum_{n=0}^{\infty} \frac{1}{(n+1)!} (\boldsymbol \phi \hat{\,} ^{})^n = \frac{\sin \theta}{\theta} \boldsymbol I + \left(1- \frac{\sin \theta}{\theta}\right) \boldsymbol a \boldsymbol a^T + \frac{1-\cos \theta}{\theta} \boldsymbol a \hat{\,}^{} \tag{8} 
       
      
     J=n=0∑∞(n+1)!1(ϕ^)n=θsinθI+(1−θsinθ)aaT+θ1−cosθa^(8)
  李群李代数的对应关系如图1-1所示:
 
图1-1 SO(3),SE(3), so(3), se(3)对应关系(摘自参考文献)
3.参考文献
- 高翔等. 视觉SLAM十四讲:从理论到实践第二版. 北京:电子工业出版社,2019.8.
 










