bundle adjustment(光速平差法)残差和雅克比详细推导

​ 本文主要补充slam十四讲中关于ba推导有疑问的地方。

设输入位姿为世界坐标系在当前cam坐标系下的位姿,表示为 T w c T^c_w Twc​。
输入的点为当前点在世界坐标系下的位置,表示为 P w P^w Pw,点在cam坐标系下表示为 P c P^c Pc

得到点在cam坐标系下的位姿
P c = R w c ∗ P w + t w c   ( 1 ) P^c=R^c_w*P^w+t^c_w \quad (1) Pc=Rwc​∗Pw+twc​ (1)

ba的残差雅克比求导需要对于位置求导,链式法则中这一项求导是关键

设ba的残差为
e = u − 1 s K e x p ( ς ) P w e = u-\frac{1}{s} Kexp( \varsigma )P^w e=u−s1​Kexp(ς)Pw
由链式法则可得
∂ e ∂ δ ς = ∂ e ∂ P c ∂ P c ∂ δ ς \frac{\partial e}{\partial \delta \varsigma }=\frac{\partial e}{\partial P^c} \frac{\partial P^c}{\partial \delta \varsigma } ∂δς∂e​=∂Pc∂e​∂δς∂Pc​

前面一项分别求导就行了,不展开推导

这里写成了李代数扰动的形式,后面一项就是公式(1)的求导,可以对旋转和平移分开来求导,旋转和平移用李代数表示为 [ ϕ , ρ ] [\phi,\rho] [ϕ,ρ],扰动表示为 [ δ ϕ , δ ρ ] [\delta\phi,\delta\rho] [δϕ,δρ],也可以写成直接对变量求导。注意,下面公式中的反对称符号。因为旋转矩阵和另外一个反对称矩阵通过指数关系发生了联系。所以旋转写成指数形式后要加这个反对称符号。

中间用到了泰勒展开
e x p ( ϕ Λ ) = 1 + δ ϕ Λ exp({ \phi}^{\Lambda})=1+{ \delta \phi}^{\Lambda} exp(ϕΛ)=1+δϕΛ

还用到了叉乘的性质负交换律
a × b = a Λ b = − b Λ a a\times b=a^{\Lambda}b=-b^{\Lambda}a a×b=aΛb=−bΛa
证明方法为利用叉乘表示平行四边形的有向面积参考

https://jingyan.baidu.com/article/414eccf62f611e2b431f0ad7.html

∂ P c ∂ R w c = ∂ ( R w c ∗ P w + t w c ) ∂ R w c = lim ⁡ δ ϕ → 0 ( e x p ( δ ϕ Λ ) e x p ( ϕ Λ ) P w + t w c ) − e x p ( ϕ Λ ) P w + t w c ) δ ϕ = lim ⁡ δ ϕ → 0 e x p ( δ ϕ Λ ) e x p ( ϕ Λ ) P w − e x p ( ϕ Λ P w ) δ ϕ = lim ⁡ δ ϕ → 0 ( 1 + δ ϕ Λ ) e x p ( ϕ Λ ) P w − e x p ( ϕ Λ P w ) δ ϕ = lim ⁡ δ ϕ → 0 δ ϕ Λ e x p ( ϕ Λ ) P w δ ϕ = lim ⁡ δ ϕ → 0 − ( R w c P w ) Λ δ ϕ δ ϕ = − ( R w c P w ) Λ \frac{\partial{ P^c}}{\partial{R^c_w}}=\frac{\partial{ (R^c_w*P^w+t^c_w)}}{\partial{R^c_w}}= \lim_{\delta \phi \to 0}\frac{(exp({\delta \phi}^{\Lambda})exp({ \phi}^{\Lambda})P^w+t^c_w)-exp({ \phi}^{\Lambda})P^w+t^c_w)}{{\delta \phi}}\\ =\lim_{\delta \phi \to 0}\frac{exp({\delta \phi}^{\Lambda})exp({ \phi}^{\Lambda})P^w-exp({ \phi}^{\Lambda}P^w)}{{\delta \phi}}\\ =\lim_{\delta \phi \to 0}\frac{(1+{\delta \phi}^{\Lambda})exp({ \phi}^{\Lambda})P^w-exp({ \phi}^{\Lambda}P^w)}{{\delta \phi}}\\ =\lim_{\delta \phi \to 0}\frac{{\delta \phi}^{\Lambda}exp({ \phi}^{\Lambda})P^w}{{\delta \phi}}\\ =\lim_{\delta \phi \to 0}-\frac{(R^c_wP^w)^{\Lambda}{\delta \phi}}{{\delta \phi}}\\ =-(R^c_wP^w)^{\Lambda} ∂Rwc​∂Pc​=∂Rwc​∂(Rwc​∗Pw+twc​)​=δϕ→0lim​δϕ(exp(δϕΛ)exp(ϕΛ)Pw+twc​)−exp(ϕΛ)Pw+twc​)​=δϕ→0lim​δϕexp(δϕΛ)exp(ϕΛ)Pw−exp(ϕΛPw)​=δϕ→0lim​δϕ(1+δϕΛ)exp(ϕΛ)Pw−exp(ϕΛPw)​=δϕ→0lim​δϕδϕΛexp(ϕΛ)Pw​=δϕ→0lim​−δϕ(Rwc​Pw)Λδϕ​=−(Rwc​Pw)Λ
平移求导
∂ P c ∂ t w c = ∂ ( R w c ∗ P w + t w c ) ∂ t w c = I \frac{\partial{ P^c}}{\partial{t^c_w}}=\frac{\partial{ (R^c_w*P^w+t^c_w)}}{\partial{t^c_w}}= I ∂twc​∂Pc​=∂twc​∂(Rwc​∗Pw+twc​)​=I

上一篇:牛客练习赛76 F phi and phi (莫比乌斯反演)


下一篇:牛客练习赛76 F-phi and phi 莫比乌斯反演+差分