在 VSLAM 的后端优化中的重投影误差的雅可比计算详细推导

本文探讨了相机位姿变换的数学表示方法,包括旋转矩阵和四元数,并介绍了李群与李代数在相机位姿优化中的应用。文中详细解释了如何利用李代数求导数以及扰动模型来简化优化过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

对于相机位姿的变换可以通过旋转矩阵或者四元数进行表示,对于旋转矩阵的定义满足:
R { ∣ R ∣ = 1 R R T = I R \begin{cases} |R| = 1 \\ RR^T = I\\ \end{cases} R{R=1RRT=I
R R R 为正交矩阵,且行列式为1 。 旋转矩阵的行列式为什么等于1?

除了旋转矩阵外,还需要仿射矩阵,仿射矩阵是在经过线性变换后进行平移变换。因为平移变换无法用两个矩阵相乘的方式表示,因此通过齐次坐标可以很好的解决这个问题,所谓齐次坐标就是将一个原本是 n n n维的向量用一个 n + 1 n+1 n+1维向量来表示。

相机的位姿变换为一个连续且平滑的过程,连续指的是左连续等于右连续,而平滑指的是存在高阶导数。那么这些连续的位姿变换再加上乘法即构成了李群 S O ( 3 ) SO(3) SO(3)(特殊正交群)。

在后端优化的过程中,导入李代数的原因有: 关于李群与李代数的的理解与总结
(1)旋转矩阵需要满足正交矩阵的约束,额外的约束会增加优化的困难。
(2)解决李群中不存在加法运算,无法描述求导的问题。

已知旋转矩阵的导数可以用一个反对称矩阵和旋转矩阵本身表示:
R ( t ) ˙ = ϕ ( t ) ∧ R ( t ) \dot{R(t)}= \phi(t) ^∧R(t) R(t)˙=ϕ(t)R(t)那么根据微分方程,可以得到 I R ( t ) d R ( t ) = ϕ ( t ) ∧ d t {I \over R(t)}dR(t)= \phi(t) ^∧dt R(t)IdR(t)=ϕ(t)dt l n R ( t ) = ϕ ( t ) ∧ t + c lnR(t)= \phi(t) ^∧t+c lnR(t)=ϕ(t)t+c R ( t ) = e ϕ ( t ) ∧ t + c R(t)= e^{\phi(t) ^∧t+c } R(t)=eϕ(t)t+c且当 t = 0 t=0 t=0时, R R R为单位阵 I I I,因此可简化得到: R ( t ) = e ϕ ( t ) ∧ t R(t)= e^{\phi(t) ^∧t } R(t)=eϕ(t)t由此便引出了李代数与李群之间的关系。


在解决旋转矩阵求导之前,需要了解BCH(baker Campbell hausdorff)公式,描述了当两个李群的矩阵相乘时,李代数如何运算。
e ϕ 1 ∧ e ϕ 2 ∧ = e ( ϕ 1 + ϕ 2 ) ∧ e^{\phi_1 ^∧}e^{\phi_2^∧} = e^{(\phi_1+\phi_2) ^∧} eϕ1eϕ2=e(ϕ1+ϕ2) l n ( e x p ( ϕ 1 ∧ ) e x p ( ϕ 2 ∧ ) ) = ϕ 1 ∧ + ϕ 2 ∧ + 1 2 [ ϕ 1 ∧ , ϕ 2 ∧ ] + 1 12 [ ϕ 1 ∧ , [ ϕ 1 ∧ , ϕ 2 ∧ ] ] − 1 12 [ ϕ 2 ∧ , [ ϕ 1 ∧ , ϕ 2 ∧ ] ] ⋯ ln(exp(\phi_1 ^∧)exp(\phi_2^∧)) = \phi_1 ^∧+\phi_2 ^∧+{1\over 2}[\phi_1 ^∧,\phi_2 ^∧]+{1\over 12}[\phi_1 ^∧,[\phi_1 ^∧,\phi_2 ^∧]]-{1\over 12}[\phi_2 ^∧,[\phi_1 ^∧,\phi_2 ^∧]]\cdots ln(exp(ϕ1)exp(ϕ2))=ϕ1+ϕ2+21[ϕ1,ϕ2]+121[ϕ1,[ϕ1,ϕ2]]121[ϕ2,[ϕ1,ϕ2]]
其中 [ , ] [,] [,]为李括号,李括号的运算为: [ ϕ 1 , ϕ 2 ] = [ Φ 1 Φ 2 − Φ 2 Φ 1 ] ∨ [\phi_1,\phi_2]=[\Phi_1\Phi_2-\Phi_2\Phi_1]^\vee [ϕ1,ϕ2]=[Φ1Φ2Φ2Φ1]
BCH公式中,当向量为小量时,二次以上的项都将被忽略,所以BCH公式的近似表达式为:
l n ( e x p ( ϕ 1 ∧ ) e x p ( ϕ 2 ∧ ) ) ≈ { J l ( ϕ 2 ) − 1 ϕ 1 + ϕ 2 , 当 ϕ 1 为小量时 J r ( ϕ 1 ) − 1 ϕ 2 + ϕ 1 , 当 ϕ 2 为小量时 ln(exp(\phi_1 ^∧)exp(\phi_2^∧)) \approx \begin{cases} J_l (\phi_2)^{-1}\phi_1 +\phi_2,当\phi_1为小量时\\ J_r (\phi_1)^{-1}\phi_2 +\phi_1, 当\phi_2为小量时\\ \end{cases} ln(exp(ϕ1)exp(ϕ2)){Jl(ϕ2)1ϕ1+ϕ2,ϕ1为小量时Jr(ϕ1)1ϕ2+ϕ1,ϕ2为小量时
近似的BCH公式按 ϕ \phi ϕ的大小不同,可以将两式分为左乘右乘
左乘近似雅可比可以表示成下式:

J r = J = s i n θ θ I + ( 1 − s i n θ θ ) a a T + 1 − c o s θ θ a ∧ J_r = J = {sin\theta\over \theta}I+(1-{sin \theta \over \theta})aa^T+{1-cos \theta \over \theta }a^∧ Jr=J=θsinθI+(1θsinθ)aaT+θ1cosθa J r − 1 = θ 2 c o t θ 2 I + ( 1 − θ 2 c o t θ 2 ) a a T − θ 2 a ∧ J_r^{-1} = {\theta\over 2}cot{\theta\over 2}I+(1-{\theta\over 2}cot{\theta\over 2})aa^T-{\theta\over 2}a^∧ Jr1=2θcot2θI+(12θcot2θ)aaT2θa

右乘近似雅可比仅需要对自变量取负号:
J r ( ϕ ) = J l ( − ϕ ) J_r(\phi) = J_l(-\phi) Jr(ϕ)=Jl(ϕ)


参考文章:李代数求导与扰动模型
在SLAM中,我们经常会构建与位姿有关的残差函数,然后讨论该函数关于位姿的雅克比,优化当前的估计值。使用李代数解决求导问题的思路分为两种:
(1)用李代数表示姿态,然后对根据李代数加法来对李代数求导。
根据导数的定义,在李代数上做加法:
e x p ( ( ϕ + Δ ϕ ) ∧ = e x p ( ( J l Δ ϕ ) ∧ ) e x p ( ϕ ∧ ) = e x p ( ϕ ∧ ) e x p ( ( J r Δ ϕ ) ∧ ) exp((\phi+\Delta\phi)^∧ = exp((J_l \Delta \phi)^∧)exp(\phi^∧) = exp(\phi^∧)exp((J_r \Delta\phi)^∧) exp((ϕ+Δϕ)=exp((JlΔϕ))exp(ϕ)=exp(ϕ)exp((JrΔϕ))
用李代数表示姿态: R = e x p ( ϕ ∧ ) R=exp(\phi^∧) R=exp(ϕ) d ( R P ) d R    ⟹    d ( e x p ( ϕ ∧ ) p ) d ϕ = lim ⁡ δ ϕ →   0 e x p ( ϕ + δ ϕ ) ∧ p − e x p ( ϕ ∧ ) p δ ϕ {d(RP) \over dR} \implies {d( exp(\phi^∧)p) \over d\phi} = \lim_{\delta \phi\to\ 0}{exp(\phi+\delta \phi)^∧p-exp(\phi^∧)p \over \delta \phi} dRd(RP)dϕd(exp(ϕ)p)=δϕ 0limδϕexp(ϕ+δϕ)pexp(ϕ)p = lim ⁡ δ ϕ →   0 e x p ( ( J l δ ϕ ) ∧ ) e x p ( ϕ ∧ ) p − e x p ( ϕ ∧ ) p δ ϕ = \lim_{\delta \phi\to\ 0}{ exp((J_l \delta \phi)^∧)exp(\phi^∧) p-exp(\phi^∧)p \over \delta \phi} =δϕ 0limδϕexp((Jlδϕ))exp(ϕ)pexp(ϕ)p
利用极限公式: e x = 1 + x e^{x} = 1+x ex=1+x = lim ⁡ δ ϕ →   0 ( I + ( J l δ ϕ ) ∧ ) e x p ( ϕ ∧ ) p − e x p ( ϕ ∧ ) p δ ϕ = \lim_{\delta \phi\to\ 0}{ (I+(J_l \delta \phi)^∧)exp(\phi^∧) p-exp(\phi^∧)p \over \delta \phi} =δϕ 0limδϕ(I+(Jlδϕ))exp(ϕ)pexp(ϕ)p = lim ⁡ δ ϕ →   0 ( J l δ ϕ ) ∧ e x p ( ϕ ∧ ) p δ ϕ = \lim_{\delta \phi\to\ 0}{ (J_l \delta \phi)^∧exp(\phi^∧) p \over \delta \phi} =δϕ 0limδϕ(Jlδϕ)exp(ϕ)p 根据反对称矩阵: A T B = − B T A A^TB = -B^TA ATB=BTA = lim ⁡ δ ϕ →   0 ( J l δ ϕ ) ∧ e x p ( ϕ ∧ ) p δ ϕ = lim ⁡ δ ϕ →   0 − ( e x p ( ϕ ∧ ) p ) ∧ J l δ ϕ δ ϕ = − ( R p ) ∧ J l = \lim_{\delta \phi\to\ 0}{ (J_l \delta \phi)^∧exp(\phi^∧) p \over \delta \phi}= \lim_{\delta \phi\to\ 0}{ -(exp(\phi^∧) p)^∧J_l \delta \phi \over \delta \phi} = -(Rp)^∧J_l =δϕ 0limδϕ(Jlδϕ)exp(ϕ)p=δϕ 0limδϕ(exp(ϕ)p)Jlδϕ=(Rp)Jl

(2)对李群左乘或右乘微小扰动,然后对该扰动求导,称为左扰动和右扰动模型。
把增量扰动直接添加在李群上,然后使用李代数表示此扰动(左扰动):
d ( R P ) d φ = lim ⁡ φ →   0 e x p ( φ ∧ ) e x p ( ϕ ∧ ) p − e x p ( ϕ ∧ ) p φ {d(RP) \over d\varphi} = \lim_{\varphi\to\ 0}{exp(\varphi^∧)exp(\phi^∧)p-exp(\phi^∧)p \over \varphi} dφd(RP)=φ 0limφexp(φ)exp(ϕ)pexp(ϕ)p = lim ⁡ φ →   0 ( I + φ ∧ ) e x p ( ϕ ∧ ) p − e x p ( ϕ ∧ ) p φ = \lim_{\varphi\to\ 0}{(I+\varphi^∧)exp(\phi^∧)p-exp(\phi^∧)p \over \varphi} =φ 0limφ(I+φ)exp(ϕ)pexp(ϕ)p = lim ⁡ φ →   0 φ ∧ e x p ( ϕ ∧ ) p φ = lim ⁡ φ →   0 φ ∧ R p φ = lim ⁡ φ →   0 − ( R p ) ∧ φ φ = − ( R p ) ∧ = \lim_{\varphi\to\ 0}{\varphi^∧exp(\phi^∧)p \over \varphi} = \lim_{\varphi\to\ 0}{\varphi^∧Rp \over \varphi} = \lim_{\varphi\to\ 0}{- (Rp)^∧\varphi \over \varphi} =- (Rp)^∧ =φ 0limφφexp(ϕ)p=φ 0limφφRp=φ 0limφ(Rp)φ=(Rp) 因此,左扰动模型比微分模型要少一个雅可比矩阵。

对于如何选择右扰动还是左扰动,参考知乎文章旋转的左扰动和右扰动

一般旋转扰动的定义是在机体 b o d y body body坐标系上添加一个小的旋转 θ b ′ b \theta^b_{b'} θbb ,这样扰动的旋转角比较小,可以保证比较好的线性而且避免奇异性,即 R b ′ b = [ θ b ′ b ] ∧ R_{b'}^b = [\theta^b_{b'}]^∧ Rbb=[θbb]

(1)当 p o s e pose pose 表达在 w o r l d world world 坐标系时,根据旋转的叠加方式,添加的是右扰动:
R b ′ w = R b w R b ′ b = R b w ( I + [ θ b ′ b ] ∧ ) R_{b'}^w = R_{b}^w R_{b'}^b = R_{b}^w(I+ [\theta^b_{b'}]^∧) Rbw=RbwRbb=Rbw(I+[θbb])
(2)当 p o s e pose pose 表达在 b o d y body body 坐标系时,根据旋转的叠加方式,添加的是左扰动:
R w b ′ = R b b ′ R w b = ( I + [ θ b b ′ ] ∧ ) R w b = ( I − [ θ b ′ b ] ∧ ) R w b R^{b'}_w = R^{b'}_b R^{b}_w = (I+ [\theta_b^{b'}]^∧)R^{b}_w = (I- [\theta^b_{b'}]^∧)R^{b}_w Rwb=RbbRwb=(I+[θbb])Rwb=(I[θbb])Rwb


参考博客:VINS-MONO ProjectionFactor代码分析及公式推导
在重投影误差中,以VINS为例,重投影误差计算的是单位球面切平面上的误差,单位球面模型相对于单位平面模型可以适用的相机模型更广泛。其中确定的常量为切平面基构成的矩阵 B B B和输入的特征点 l l l在单位相机平面的投影 ( P l c i , P l c j ) (P_l^{c_i},P_l^{cj}) (Plci,Plcj),需要优化的变量包括第 i 、 j i、j ij两帧在世界坐标系下的姿态 ( R b i w , R b j w ) (R_{b_i}^w,R_{b_j}^w) (Rbiw,Rbjw),IMU与相机之间的外参关系 ( R c b , t c b ) (R_c^b,t_c^b) (Rcb,tcb),逆深度 ( λ l ) (\lambda_l) (λl)

那么第 l l l特征点在第 j j j帧下的重投影坐标 P l c j ′ P_l^{c_j'} Plcj为:
P l c j ′ = R c b T { R b j w T [ R b i w ( R c b P l c i λ l + t c b ⏟ 转换到IMU坐标系 ) + t b i w ⏞ 转换到世界坐标系 ] − t c b ⏟ 转换到第 j 帧IMU坐标系下 } ⏟ 转换到第 j 帧相机坐标系下 P_l^{c_j'}= \underbrace{{R_c^b}^T \{ \underbrace{{R_{b_j}^{w}}^T[\overbrace{R_{b_i}^w(\underbrace{R_c^b{P_l^{c_i} \over \lambda_l}+t_c^b}_{\text{转换到IMU坐标系}} )+t_{b_i}^w}^{\text{转换到世界坐标系}}] - t_c^b}_{\text{转换到第}j\text{帧IMU坐标系下}} \}}_{\text{转换到第}j\text{帧相机坐标系下}} Plcj=转换到第j帧相机坐标系下 RcbT{转换到第jIMU坐标系下 RbjwT[Rbiw(转换到IMU坐标系 RcbλlPlci+tcb)+tbiw 转换到世界坐标系]tcb}

//pts_i为l个特征点在第i帧单位相机平面的投影,pts_j同理(常量)
// 下列变量中其中只有 tangent_base、pts_i、pts_j为常量,其他都是待优化变量
// 第i帧单位相机坐标系 -> 第i帧相机坐标系 -> 第i帧IMU 坐标系 -> 世界坐标系 -> 第j帧IMU 坐标系 ->  第j帧相机坐标系
Eigen::Vector3d pts_camera_i = pts_i / inv_dep_i; // 特征点的逆深度 inv_dep_i
Eigen::Vector3d pts_imu_i = qic * pts_camera_i + tic; // imu和相机间的外参
Eigen::Vector3d pts_w = Qi * pts_imu_i + Pi; // 第i帧的位姿
Eigen::Vector3d pts_imu_j = Qj.inverse() * (pts_w - Pj); // 第j帧的位姿
Eigen::Vector3d pts_camera_j = qic.inverse() * (pts_imu_j - tic); // pts_i在第j帧的重投影
Eigen::Map<Eigen::Vector2d> residual(residuals);

因此残差公式可以表示为:
e = B ∗ ( P l c j ′ ∥ P l c j ′ ∥ 2 − P l c j ∥ P l c j ∥ 2 ) e = B *({P_l^{c_j'} \over \lVert P_l^{c'_j} \rVert_2}-{P_l^{c_j} \over \lVert P_l^{c_j} \rVert_2}) e=B(Plcj2PlcjPlcj2Plcj) T T T为待优化的变量, r r r表示投影前的残差,即 r = P l c j ′ ∥ P l c j ′ ∥ 2 − P l c j ∥ P l c j ∥ 2 r={P_l^{c_j'} \over \lVert P_l^{c'_j} \rVert_2}-{P_l^{c_j} \over \lVert P_l^{c_j} \rVert_2} r=Plcj2PlcjPlcj2Plcj,通过链式法则,可得: ∂ e ∂ T = ∂ e ∂ r ∂ r ∂ P l c j ′ ∥ P l c j ′ ∥ 2 P l c j ′ ∥ P l c j ′ ∥ 2 ∂ T {∂e \over ∂T} ={∂e \over ∂r} {∂r \over ∂{P_l^{c_j'} \over \lVert P_l^{c'_j} \rVert_2}} {{P_l^{c_j'} \over \lVert P_l^{c'_j} \rVert_2} \over ∂T} Te=rePlcj2PlcjrTPlcj2Plcj其中因为 P l c j ∥ P l c j ∥ 2 {P_l^{c_j} \over \lVert P_l^{c_j} \rVert_2} Plcj2Plcj为常量,因此: ∂ e ∂ r ∂ r ∂ P l c j ′ ∥ P l c j ′ ∥ 2 = B {∂e \over ∂r} {∂r \over ∂{P_l^{c_j'} \over \lVert P_l^{c'_j} \rVert_2}} = B rePlcj2Plcjr=B 化简得到: ∂ e ∂ T = B P l c j ′ ∥ P l c j ′ ∥ 2 ∂ T {∂e \over ∂T} = B {{P_l^{c_j'} \over \lVert P_l^{c'_j} \rVert_2} \over ∂T} Te=BTPlcj2Plcj
综上,残差的雅可比矩阵,等于 P l c j ′ ∥ P l c j ′ ∥ 2 {{P_l^{c_j'} \over \lVert P_l^{c'_j} \rVert_2}} Plcj2Plcj的雅可比矩阵在切平面上的投影。

那么对于该雅可比矩阵如何求,设 f ( x ) = P l c j ′ f(x) = P_l^{c_j'} f(x)=Plcj,由链式法则可以得到:
d f ( x ) ∥ f ( x ) ∥ 2 d x = ( 1 ∥ f ( x ) ∥ 2 − ∥ f ( x ) ∥ 2 3 ) f ( x ) f ( x ) T ) f ′ ( x ) {d{f(x) \over \lVert f(x) \rVert_2}\over dx} =({1 \over \lVert f(x) \rVert_2}- \lVert f(x) \rVert_2^3)f(x)f(x)^T)f'(x) dxdf(x)2f(x)=(f(x)21f(x)23)f(x)f(x)T)f(x)
具体求导过程省略,上式中前半部分是关于重投影坐标的已知函数,因此只需要求解得到 f ′ ( x ) f'(x) f(x),就可以得到残差的雅可比矩阵,接下来对 P l c j ′ P_l^{c_j'} Plcj求导。


上一部分已经推导出第 j j j帧下的重投影坐标 P l c j ′ P_l^{c_j'} Plcj,将该公式展开:
P l c j ′ = R c b T R b j w T R b i w R c b P l c i 1 λ l + R c b T R b j w T R b i w t c b + R c b T R b j w T t b i w − R c b T R b j w T t b j w − R c b T t c b T P_l^{c_j'} = {R_c^b}^T {R_{b_j}^w}^T {R_{b_i}^w} {R_{c}^b} {P_{l}^{c_i}}{1 \over \lambda_l} + {R_{c}^b}^T {R_{b_j}^w}^T {R_{b_i}^w} {t_{c}^b} + {R_{c}^b}^T {R_{b_j}^w}^T {t_{b_i}^w} - {R_{c}^b}^T {R_{b_j}^w}^T {t_{b_j}^w}- {R_{c}^b}^T {t_{c}^b}^T Plcj=RcbTRbjwTRbiwRcbPlciλl1+RcbTRbjwTRbiwtcb+RcbTRbjwTtbiwRcbTRbjwTtbjwRcbTtcbT 需要优化的变量都需要进行求导。包括 ( R b i w , R b j w ) , ( R c b , t c b ) , ( λ l ) (R_{b_i}^w,R_{b_j}^w),(R_c^b,t_c^b),(\lambda_l) (Rbiw,Rbjw),(Rcb,tcb),(λl)

(1)第 i 、 j i、j ij两帧在世界坐标系下的姿态 ( R b i w , R b j w ) (R_{b_i}^w,R_{b_j}^w) (Rbiw,Rbjw)
(2)IMU与相机之间的外参关系 ( R c b , t c b ) (R_c^b,t_c^b) (Rcb,tcb)
(3)逆深度 ( λ l ) (\lambda_l) (λl)

以第 i i i帧为例,需要对旋转 R b i w {R_{b_i}^w} Rbiw和平移 t b i w {t_{b_i}^w} tbiw进行求导。将除此之外的变量设为 A = R c b T R b j w T A = {R_{c}^b}^T {R_{b_j}^w}^T A=RcbTRbjwT x = R c b P l c i 1 λ l + t c b x = {R_{c}^b} {P_{l}^{c_i}}{1 \over \lambda_l} + {t_{c}^b} x=RcbPlciλl1+tcb
即化简得到(与优化量无关的后两项舍去): P l c j ′ = A ( R b j w x + t b i w ) P_l^{c_j'} = A(R_{b_j}^wx+t_{b_i}^w) Plcj=A(Rbjwx+tbiw) t b i w {t_{b_i}^w} tbiw进行求导:
∂ P l c j ′ ∂ t b i w = A = R c b T R b j w T {∂P_l^{c_j'} \over ∂{t_{b_i}^w}} =A= {R_{c}^b}^T {R_{b_j}^w}^T tbiwPlcj=A=RcbTRbjwT
R b i w {R_{b_i}^w} Rbiw进行求导,因为 p o s e pose pose 表达在 w o r l d world world 坐标系,根据旋转的叠加方式,添加的是右扰动:
∂ P l c i ′ ∂ φ = lim ⁡ φ →   0 A ( e x p ( ϕ i ∧ ) e x p ( φ ∧ ) x + t b i w ) − A ( e x p ( ϕ i ∧ ) x + t b i w ) φ {∂P_l^{c_i'} \over ∂\varphi} = \lim_{\varphi\to\ 0}{ A({exp(\phi_i^∧)} {exp(\varphi^∧)}x+t_{b_i}^w)-A({exp(\phi^∧_i)}x+t_{b_i}^w)\over \varphi} φPlci=φ 0limφA(exp(ϕi)exp(φ)x+tbiw)A(exp(ϕi)x+tbiw) = lim ⁡ φ →   0 A e x p ( ϕ i ∧ ) [ e x p ( φ ∧ ) − I ] x φ = \lim_{\varphi\to\ 0}{ A{exp(\phi_i^∧)} [{exp(\varphi^∧)}-I]x\over \varphi} =φ 0limφAexp(ϕi)[exp(φ)I]x = lim ⁡ φ →   0 A e x p ( ϕ i ∧ ) [ I + φ ∧ − I ] x φ = \lim_{\varphi\to\ 0}{ A{exp(\phi_i^∧)} [{I+\varphi^∧}-I]x\over \varphi} =φ 0limφAexp(ϕi)[I+φI]x = lim ⁡ φ →   0 A e x p ( ϕ i ∧ ) φ ∧ x φ = lim ⁡ φ →   0 − A e x p ( ϕ i ∧ ) x ∧ φ φ = lim ⁡ φ →   0 − A e x p ( ϕ i ∧ ) x ∧ = \lim_{\varphi\to\ 0}{ A{exp(\phi_i^∧)} {\varphi^∧}x\over \varphi} = \lim_{\varphi\to\ 0}{- A{exp(\phi_i^∧)}x^∧ {\varphi}\over \varphi} = \lim_{\varphi\to\ 0}{- A{exp(\phi_i^∧)}x^∧} =φ 0limφAexp(ϕi)φx=φ 0limφAexp(ϕi)xφ=φ 0limAexp(ϕi)x A A A x x x带入可得到:
∂ P l c i ′ ∂ φ = − R c b T R b j w T R b i w ( R c b P l c i 1 λ l + t c b ) ∧ {∂P_l^{c_i'} \over ∂\varphi} = - {R_{c}^b}^T {R_{b_j}^w}^T{R_{b_i}^w}( {R_{c}^b} {P_{l}^{c_i}}{1 \over \lambda_l} + {t_{c}^b})^∧ φPlci=RcbTRbjwTRbiw(RcbPlciλl1+tcb)

综上重投影坐标 P l c j ′ P_l^{c_j'} Plcj对位姿的求导已经推导完成,其余求导相似的方法,略略略!

扰动模型的求导可以替代关于状态量的雅可比,扰动模型 F F F下误差状态的求导 ,将它在 d x = 0 dx=0 dx=0处做泰勒展开:
f ( x 0 + d x ) = F ( d x ) = F ( 0 ) + F ′ ( 0 ) ( d x − 0 ) = f ( x 0 ) + ∂ f ( x 0 ⨁ d x ) ∂ d x d x f(x_0+dx) = F(dx) \\ =F(0)+F'(0)(dx-0) \\ =f(x_0)+{∂f(x_0\bigoplus dx) \over ∂dx}dx f(x0+dx)=F(dx)=F(0)+F(0)(dx0)=f(x0)+dxf(x0dx)dx


在单位平面模型下:视觉残差函数及雅可比公式推导

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

秃头队长

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值