南宁网站怎么制作公司,青岛关键词排名系统,au网站怎么注册,怪兽网站模板7 Computation of the Camera Matrix P P P
这章讲的是摄像机参数估计。摄像机标定#xff0c;本质上就是求摄像机矩阵 P P P#xff0c;当我们知道足够多的 X ↔ x X \leftrightarrow x X↔x#xff0c;我们该如何计算 P P P#xff1f;如果知道3D和2D点的对应#xff…7 Computation of the Camera Matrix P P P
这章讲的是摄像机参数估计。摄像机标定本质上就是求摄像机矩阵 P P P当我们知道足够多的 X ↔ x X \leftrightarrow x X↔x我们该如何计算 P P P如果知道3D和2D点的对应那么内参和外参可以由基本的线性方程求解问题算出。遇到超定解时的解决办法也跟前面讲的第4章射影变换的情况非常类似。值得注意的是第4章求的是 3 × 3 3 \times 3 3×3射影变换矩阵而本章求的是 3 × 4 3 \times 4 3×4相机矩阵。 文章目录 7 Computation of the Camera Matrix P P P7.1 Basic equations7.2 Geometric error7.2.1 Geometric interpretation of algebraic error7.2.2 Estimation of an affine camera 7.3 Restricted camera estimation7.4 Radial distortion 7.1 Basic equations
问题描述我们假设有一些3D空间上的点 X i X_{i} Xi和2D图像上的点 x i x_{i} xi的对应关系已经给出。我们的目标是找到一个 3 × 4 3 \times 4 3×4的摄像机矩阵 P P P满足对于所有 i i i都满足 x i P X i x_{i}PX_{i} xiPXi。
我们可以发现这个问题和在第4章里面说的求解2D射影变换矩阵 H H H非常像唯一的区别是需要求解的矩阵维度变了而已。
最基本的方法就是方程 P X x PXx PXx然后变成 x × P X 0 x \times PX 0 x×PX0 取该矩阵前两行因为第三行是线性相关的。这样我们可以写成 A p 0 Ap0 Ap0这 A A A就是一个 2 n × 12 2n \times 12 2n×12的矩阵。我们要求解摄像机矩阵其实也就是要求解这个等式里面的 p p p。
最小解 因为 P P P是 3 × 4 12 3 \times 4 12 3×412个元素那么就有11个自由度理论上我们需要5.5对对应点就行0.5对对应点就是知道x或者y坐标就可以了。
超定的情况 如果我们有多于6对点那我们就求 m i n ∣ ∣ A p ∣ ∣ 0 min||Ap||0 min∣∣Ap∣∣0并且让他满足约束 ∣ ∣ p ∣ ∣ 1 ||p||1 ∣∣p∣∣1 ∣ ∣ p ^ 3 ∣ ∣ ||\hat{p}^3|| ∣∣p^3∣∣1 p ^ 3 \hat{p}^3 p^3就是p最后一行的前三个元素。
退化的情况 有两种情况可以使我们不能唯一确定 p p p
相机和点都在一个扭曲的立方体上相机和点都在平面上且该平面一直线通过相机的中心
对于这样的配置不能从点的图像中唯一地获得相机。 相反它可以分别沿着扭曲的立方体或直线任意移动。 如果数据接近退化的情况则获得的 P P P估计值很差。 例如如果相机距离场景较远例如鸟瞰图则这种情况接近平面退化。
点的归一化 我们需要把所有点到直线的平均距离归一化到 3 \sqrt{3} 3 。
从线对应来计算 P P P 如果我们能找到一对对应线那么我们就有方程 l T P X j 0 l^TPX_j0 lTPXj0其中 j 0 , 1 j0,1 j0,1 X X X在 l l l上。
7.2 Geometric error
回忆我们在第4章提到的几何损失函数我们可以把它用在这里 min P ∑ i d ( x , P X ) 2 \min_P \sum_{i} d(x,PX)^2 Pmini∑d(x,PX)2 世界坐标系里的误差 我们考虑世界坐标系也就是标定板上的误差。因为 P X PX PX不可能完全等于 x x x。反过来 x x x对应的世界坐标系里的点也不会完全是 X X X那么我们就假设 x x x对应的世界坐标系里的点是 X ^ \hat{X} X^然后我们同时考虑世界坐标系的误差和图像上的误差 ∑ i 1 n d M a h ( x i , P X i ^ ) 2 d M a h ( X i , X i ^ ) 2 \sum_{i1}^{n} d_{Mah}(x_{i}, P \hat{X_{i}})^2 d_{Mah}(X_{i}, \hat{X_{i}})^2 i1∑ndMah(xi,PXi^)2dMah(Xi,Xi^)2
也就是说在图像上 x i x_{i} xi要靠近 P X i ^ P \hat{X_{i}} PXi^在世界坐标系里 X i X_{i} Xi也要靠近 P X i ^ P \hat{X_{i}} PXi^。
7.2.1 Geometric interpretation of algebraic error
代数误差的几何解释代数误差找一个点 X ′ X X′尽可能的接近 X X X。
7.2.2 Estimation of an affine camera
上述所有方法都可以直接用在仿射摄像机上。
7.3 Restricted camera estimation
通常我们会对 P P P矩阵做出一些限制
偏斜系数 s s s是0像素是正方形即 a x a y a_{x}a_{y} axay主点 ( x 0 , y 0 ) (x_{0},y_{0}) (x0,y0)已知 K K K已知
这几点假设不是同时成立的。比如我们可以只用1和2那么 P P P矩阵就只剩下369个系数了。
迭代方法的初始化 如果我们求几何损失函数要用迭代的方法。那么迭代的初值从哪里来? 可以用DLT先解出一个值作为初始值。
7.4 Radial distortion
相机畸变主要是径向畸变所谓径向就是圆的直径的方向。该畸变会使正方形变得接近于一个圆所以叫径向畸变。
校正的思想很简单。所谓畸变就是给像素坐标 ( x , y ) (x,y) (x,y)乘上一个函数 L ( r ) L(r) L(r)我们只需要用泰勒展开去近似这个函数就好了剩下的工作就是确定泰勒展开的系数。这个展开的系数作为内参把它们一起标定出来就可以了。