一、归一化积
设
p
1
(
x
)
p_1(x)
p1(x)和
p
2
(
x
)
p_2(x)
p2(x)是两个不同的概率密度函数,归一化积为:
p
(
x
)
=
η
⋅
p
1
(
x
)
p
2
(
x
)
p(x)=\eta \cdot p_1(x)p_2(x)
p(x)=η⋅p1(x)p2(x)
其中:
η
=
∫
p
1
(
x
)
p
2
(
x
)
d
x
\eta=\int p_1(x)p_2(x)\mathrm{d}x
η=∫p1(x)p2(x)dx
η
\eta
η是为了满足概率公理的归一化常数。
定理:对于
p
(
x
∣
y
1
,
y
2
)
p(x|y_1,y_2)
p(x∣y1,y2),
y
1
y_1
y1和
y
2
y_2
y2是两次独立测量,有:
p
(
x
∣
y
1
,
y
2
)
=
η
⋅
p
(
x
∣
y
1
)
p
(
x
∣
y
2
)
p(x|y_1,y_2) = \eta \cdot p(x|y_1)p(x|y_2)
p(x∣y1,y2)=η⋅p(x∣y1)p(x∣y2)
推导,利用全概率公式我们可以知道:
p
(
x
∣
y
1
,
y
2
)
=
p
(
y
1
,
y
2
∣
x
)
p
(
x
)
p
(
y
1
,
y
2
)
p(x|y_1,y_2) = \frac {p(y_1,y_2|x)p(x)} {p(y_1,y_2)}
p(x∣y1,y2)=p(y1,y2)p(y1,y2∣x)p(x)
这里:
p
(
y
1
,
y
2
∣
x
)
=
p
(
y
1
∣
x
)
p
(
y
2
∣
x
)
=
p
(
x
∣
y
1
)
p
(
y
1
)
p
(
x
)
p
(
x
∣
y
2
)
p
(
y
2
)
p
(
x
)
p(y_1,y_2|x)=p(y_1|x)p(y_2|x)=\frac {p(x|y_1)p(y_1)} {p(x)} \frac {p(x|y_2)p(y_2)} {p(x)}
p(y1,y2∣x)=p(y1∣x)p(y2∣x)=p(x)p(x∣y1)p(y1)p(x)p(x∣y2)p(y2)
则:
η
=
p
(
y
1
)
p
(
y
2
)
p
(
y
1
,
y
2
)
p
(
x
)
\eta = \frac {p(y_1)p(y_2)} {p(y_1,y_2)p(x)}
η=p(y1,y2)p(x)p(y1)p(y2)
若
p
(
x
∣
y
i
)
,
i
=
1
,
2
p(x|y_i),i=1,2
p(x∣yi),i=1,2是高斯分布的概率密度函数;
p
(
x
∣
y
1
)
=
N
(
μ
1
,
σ
1
2
)
p
(
x
∣
y
2
)
=
N
(
μ
2
,
σ
2
2
)
p(x|y_1)=N(\mu_1,\sigma_1^2)\\~\\p(x|y_2)=N(\mu_2,\sigma_2^2)
p(x∣y1)=N(μ1,σ12) p(x∣y2)=N(μ2,σ22)
对于新的分布
p
(
x
∣
y
1
,
y
2
)
=
N
(
μ
,
σ
2
)
p(x|y_1,y_2) =N(\mu,\sigma^2)
p(x∣y1,y2)=N(μ,σ2):
1
σ
2
=
1
σ
1
2
+
1
σ
2
2
μ
σ
2
=
μ
1
σ
1
2
+
μ
2
σ
2
2
⟹
σ
2
=
σ
1
2
σ
2
2
σ
1
2
+
σ
2
2
\frac {1}{\sigma^2} = \frac {1}{\sigma_1^2} +\frac {1}{\sigma_2^2} \\~\\ \frac {\mu}{\sigma^2} = \frac {\mu_1}{\sigma_1^2} +\frac {\mu_2}{\sigma_2^2} \\~\\ \Longrightarrow \sigma^2=\frac {\sigma_1^2\sigma_2^2} {\sigma_1^2+\sigma_2^2}
σ21=σ121+σ221 σ2μ=σ12μ1+σ22μ2 ⟹σ2=σ12+σ22σ12σ22
我们可以推导出K个归一化:
p
(
x
∣
y
1
,
y
2
,
⋯
,
y
k
)
=
η
k
⋅
p
(
x
∣
y
1
)
p
(
x
∣
y
2
)
⋯
p
(
x
∣
y
k
)
p(x|y_1,y_2,\cdots,y_k) = \eta_k\cdot p(x|y_1)p(x|y_2)\cdots p(x|y_k)
p(x∣y1,y2,⋯,yk)=ηk⋅p(x∣y1)p(x∣y2)⋯p(x∣yk)
有:
(
σ
2
)
−
1
=
∑
i
=
1
k
(
σ
i
2
)
−
1
(
σ
2
)
−
1
⋅
μ
=
∑
i
=
1
k
(
σ
i
2
)
−
1
⋅
μ
k
(\sigma^2)^{-1} = \sum_{i=1}^{k} (\sigma_i^2)^{-1}\\~\\ (\sigma^2)^{-1}\cdot \mu= \sum_{i=1}^{k} (\sigma_i^2)^{-1}\cdot \mu_k
(σ2)−1=i=1∑k(σi2)−1 (σ2)−1⋅μ=i=1∑k(σi2)−1⋅μk
二、深度融合
我们假设所有的深度值都是服从高斯分布的,假设有两个状态
ξ
1
\xi_1
ξ1、
ξ
2
\xi_2
ξ2分别对相机坐标
T
w
c
1
T_{wc_1}
Twc1下的深度值进行观测,那么我们可以表示为:
p
(
d
∣
ξ
1
)
=
N
(
μ
1
,
σ
1
2
)
p
(
d
∣
ξ
2
)
=
N
(
μ
2
,
σ
2
2
)
p(d \space|\space \xi_1)= N(\mu_1 \space,\sigma_1^2)\\~\\ p(d \space|\space \xi_2)= N(\mu_2 \space,\sigma_2^2)
p(d ∣ ξ1)=N(μ1 ,σ12) p(d ∣ ξ2)=N(μ2 ,σ22)
我们对这两个观测进行深度融合,即求出在共同观测
ξ
1
\xi_1
ξ1、
ξ
2
\xi_2
ξ2下的分布:
p
(
d
∣
ξ
1
,
ξ
2
)
=
N
(
μ
,
σ
2
)
p(d \space|\space \xi_1,\space \xi_2)= N(\mu \space,\sigma^2)
p(d ∣ ξ1, ξ2)=N(μ ,σ2)
借助上述归一化积的方法,我们可以得到关系:
p
(
d
∣
ξ
1
,
ξ
2
)
=
η
⋅
p
(
d
∣
ξ
1
)
⋅
p
(
d
∣
ξ
2
)
p(d \space|\space \xi_1,\space \xi_2) = \eta \cdot p(d \space|\space \xi_1)\cdot p(d \space|\space \xi_2)
p(d ∣ ξ1, ξ2)=η⋅p(d ∣ ξ1)⋅p(d ∣ ξ2)
所以深度融合可以看作两个高斯分布的乘积(归一化乘积)。
即:
1
σ
2
=
1
σ
1
2
+
1
σ
2
2
μ
σ
2
=
μ
1
σ
1
2
+
μ
2
σ
2
2
\frac {1}{\sigma^2} = \frac {1}{\sigma_1^2} +\frac {1}{\sigma_2^2} \\~\\ \frac {\mu}{\sigma^2} = \frac {\mu_1}{\sigma_1^2} +\frac {\mu_2}{\sigma_2^2} \\
σ21=σ121+σ221 σ2μ=σ12μ1+σ22μ2
然后求出:
σ
2
=
σ
1
2
σ
2
2
σ
1
2
+
σ
2
2
μ
=
σ
2
2
μ
1
+
σ
1
2
μ
2
σ
1
2
+
σ
2
2
\sigma^2=\frac {\sigma_1^2\sigma_2^2} {\sigma_1^2+\sigma_2^2}\\~\\ \mu = \frac {\sigma_2^2\mu_1+\sigma_1^2 \mu_2} {\sigma_1^2+\sigma_2^2}
σ2=σ12+σ22σ12σ22 μ=σ12+σ22σ22μ1+σ12μ2
这就是深度融合的过程。
三、不确定度的计算
这里不考虑光度误差带来的影响,即光度不变性,只考虑几何误差。
我们利用极线搜索的方式,首先考虑对极约束:
p
2
T
F
p
1
=
0
p_2^TFp_1 = 0
p2TFp1=0
p
1
p_1
p1、
p
2
p_2
p2是两个相机下的像素坐标;
假设在相机2的极线方程为:
a
u
2
+
b
v
2
+
c
=
0
,
即
p
2
T
⋅
[
a
b
c
]
=
0
au_2+bv_2+c=0,即\quad p_2^T\cdot \begin{bmatrix} a \\ b \\ c\end{bmatrix} = 0
au2+bv2+c=0,即p2T⋅⎣⎡abc⎦⎤=0
根据对极约束,我们就可以得到:
F
p
1
=
[
a
b
c
]
Fp_1 =\begin{bmatrix} a \\ b \\ c\end{bmatrix}
Fp1=⎣⎡abc⎦⎤
这样利用极线搜索的方式就可以找到最佳的像素匹配点(不考虑光度误差,认为是完全匹配)。
另外我们需要求出原匹配特征点三角计算的深度值
p
′
p'
p′和最佳像素点(极线搜索方式得到)的深度值
p
p
p,如下图:
这样我们就可以计算第k个状态的深度
μ
k
\mu_k
μk和方差
σ
k
2
\sigma_k^2
σk2:
μ
k
=
p
,
σ
k
=
∣
∣
p
∣
∣
−
∣
∣
p
′
∣
∣
p
(
d
k
∣
ξ
k
)
=
N
(
μ
k
,
σ
k
2
)
\mu_k =p,\quad \sigma_k = ||p||-||p' ||\\ ~\\ p(d_k\space | \space \xi_k ) = N(\mu_k,\space \sigma_k^2)
μk=p,σk=∣∣p∣∣−∣∣p′∣∣ p(dk ∣ ξk)=N(μk, σk2)
这样,之后就可以利用深度融合的方法进行更新,直到计算收敛。】
参考文献
- 机器人学中的概率估计 — Timothy D. Barfoot
- 视觉SLAM 十四讲 从理论到实践 ---- 高翔
- Engel J, Sturm J, Cremers D. Semi-dense Visual Odometry for a Monocular Camera. 2013.
- Engel J, Schps T, Cremers D. LSD-SLAM: Large-scale direct monocular SLAM[J]. Springer, Cham, 2014.