张正友标定数学原理推导
整体概述:
1.先求解单应性矩阵,单应性矩阵是从一个平面 到另一个平面的投影映射
2.通过单应性矩阵求解相机内参参数
3.求解外参参数
4.几何解释
求解单应性矩阵
其实质对应空间坐标系旋转平移变换后通过相机内参矩阵映射到像素坐标。

A称为相机的内参矩阵,内参矩阵取决于相机的内部参数。其中, f f f 是通过欧拉积分为像距, d X , d Y dX,dY dX,dY分别表示 X , Y X,Y X,Y方向上的一个像素在相机感光板上的物理长度(即一个像素在感光板上是多少毫米), u 0 , v 0 u_0,v_0 u0,v0分别表示相机感光板中心在像素坐标系下的坐标, θ \theta θ表示感光板的横边和纵边之间的角度( 90 ° 90° 90°表示无误差)。


我们的关注点不是定义在所有空间的坐标,只是定义在我们所观察的平面的坐标,我们可以选择物体平面为Z=0,

写为单应性矩阵形式

在opencv中提到单应性矩阵中只有8个自由参数,我们进行标准化使H33 = 1(通常是可行的,除了非常罕见的奇异情况H33=0)。单应性矩阵的缩放可以应用于第九个单应性矩阵的参数,但通常倾向于将整个单应性矩阵乘以比例因子来缩。
我个人的理解就是把H33归一化为1,因为前面的比例因子不会对映射关系产生影响,可以将其提到比例因子中。
将单应性矩阵拆分方程求解,将第三行乘上ui与第一行消去比例因子s,第二行与第一行操作相同得到


对应的一组点有两个方程,所以棋盘格四个角点8个方程即可解的8个未知数。
求解相机内参参数

通过两个约束求解,r1和r2是单位正交向量,用h表示

令B为

令b为

B为对称矩阵,所以b的6维向量可以囊括所有B元素
上面两个约束可以表示为通用形式

上面的一幅标定板图像取得的约束等式,假如有n幅图像,则
V b = 0 Vb = 0 Vb=0
n幅图即2n×6的矩阵,b有6个未知数用三幅图以上会得到6个以上方程即可求解。
其中,V是一个2n×6的矩阵,bb是一个6维向量,所以
- 当n≥3,可以得到bb的唯一解;
- 当n=2,则可以假设扭曲参数γ=0γ=0作为额外的约束条件
- 当n=1,则值能计算两个相机的内参数
对于方程Vb=0可以使用SVD求得其最小二乘解。对VTV进行SVD分解,其最小特征值对应的特征向量就是Vb=0的最小二乘解,从而求得矩阵B。由于这里得到的B的估计值是在相差一个常量因子下得到的,所以有:
B = λ ( A − ) T A B=λ(A^-)^TA B=λ(A−)TA
通过b也就知道了B,通过B可以提取内参参数

上述公式就是内参的解析解,内参参数获得后,外参矩阵便可以求解。
求解外参矩阵
利用上面H与A的关系,R矩阵的三向量为正交向量可得

且r1和r2是单位向量,所以

最大似然估计
上面使用最小二乘法得到估计得到的解,并没有物理上的实际意义,。为了进一步增加标定结果的可靠性,可以使用最大似然估计(Maximum likelihood estimation)来优化上面估计得到的结果。
假设同一相机从n个不同的角度的得到了n幅标定板的图像,每幅图像上有m个像点。Mij表示第ii幅图像上第j个像点对应的标定板上的三维点,则

一般图像噪声默认为高斯噪声,所以使用最大似然估计进行优化,角点mij的概率密度函数为
f ( m i j ) = 1 2 π e − ( ( ^ m ) ( K , R i , t i , M i j ) ) σ 2 f(m_{ij})=\frac{1}{\sqrt{2\pi}}e^{\frac{-(\hat(m)(K, R_i, t_i, M_{ij}))}{\sigma^2}} f(mij)=2π<

最低0.47元/天 解锁文章
2671

被折叠的 条评论
为什么被折叠?



