分享

多视角几何6-相机矩阵的计算-受限相机的估计

 SLAM之路 2022-04-24
K的非零项是具有几何意义的量,是P的内部标定参数。我们希望找到,相机参数满足约束条件下的最好拟合相机矩阵P。公认的假设是,
i.扭转系数s是0;
ii.像素是正方形:αxy
iii.主点(x0,y0)是已知的;
iv.完整的相机标定矩阵K是已知的;
在某些情况下,用线性算法估计受限相机矩阵是可行的;
下面举例一个受限估计的例子,我们希望找到最好的针孔相机模型(射影相机满足s=0,αxy),以满足测量值集合。通过最小化几何误差或代数误差可以求解该问题,下面我们具体讨论;
最小化几何误差.为最小化几何误差,我们选择一个参数集合,表征待计算的相机矩阵。例如,我们希望约束s=0,αxy。我们可以使用剩余9个参数实现相机矩阵参数化。这九个参数是,x0,y0,α,再加上6个表示相机方向R和位置的参数,该参数集记为q。那么相机矩阵P可以用这些参数显示地计算。
使用迭代最小化方法(如LM算法),最小化关于该参数集的几何误差。注:在仅最小化图像误差的情形下,最小化问题的规模是9×2n。换言之,LM最小化是最小化一个函数f:R9->R2n。当最小化3D和2D误差时,函数f是R3n+9->R5n,因为3D点必须包含在测量值中,最小化也应包括3D点真实位置的估计。
最小化代数误差.当迭代最小化问题的规模非常小时,最小化代数误差也是可行的。考虑把参数集q映射到相机矩阵P=K[R | -R],定义映射为g。确切地说,我们有映射p=g(q),p是矩阵P元素的向量。最小化所有匹配点的代数误差等同于最小化||Ag(q)||。
简化测量矩阵.一般来说,2n×12的矩阵A有许多行。用一个方形12×12的矩阵代替A,对任意向量p,||Ap||=pTATAp=||p||,这样的方法是可行的,这样的矩阵称为简化测量矩阵。这样做的一种方法是使用SVD分解。令A=UDVT是A的SVD分解,定义=DVT,那么
这是符合我们要求的。得到另一方法是,使用QR分解A=Q,其中Q有正交列,是方形上三角阵。
注:q->g(q)是从R9->R12的映射,这是一个简单的参数最小化问题,可通过LM方法求解。值得注意的点如下:
若给定n对世界图像对应关系Xi-xi,最小化代数距离和∑idalg(xi,PXi)2寻找受限相机矩阵的问题,可简化为R9->R12的函数最小化,不在依赖于点对应数目。
||g(q)||在参数q的所有值上最小化。注意,如果P=K[R | -R],K是(6.6)中形式,那么P满足条件p231+p232+p233=1,因为这些元素与旋转矩阵R的最后一行相同。因此,最小化Ag(q)会产生矩阵P,并满足约束s=0且αxy,同时通过缩放满足p231+p232+p233=1。而且它还最小化所有点对应的代数误差。
初始化.寻找初始化迭代的相机参数的一种方法如下:
i.使用线性算法,如DLT,寻找初始相机矩阵;
ii.把固定参数强制为所希望的数值(如s=0,αxy并等于DLT算法求得的平均值);
iii.把相机矩阵分解所获得的初始值赋给参数变量;
理想情形下,固定参数假设的值非常接近DLT算法估计的值。但是,在实际中并不总是这种情况。改变这些参数为期望值会造成错误的初始相机矩阵,产生很大的残差并很难收敛。实际中效果比较好的方法是,使用软约束,即增加额外向到损失函数。因此,对于s=0,αxy的情形,我们需要增加ws2+w(αxy)2到损失函数。以图像几何误差为例,损失函数变为,
我们以DLT算法估计的参数值开始,权重以较小的数值开始并随着每次迭代估计而增加。因此,s的值和长宽比将逐渐地接近他们的预期值。最终,它们将固定到所期望的值。
外部校准.假设相机所有内参参数均一致,那么待决定的参数是未知和方向(姿态)。这是外部校准问题,在标定系统分析中非常重要。
为计算外部校准,需对已知准确世界坐标的配置进行成像。然后寻求相机姿态。这种情况出现在机器系统的手眼标定中,相机的姿态是必要的;也出现在使用配准技术的基于模型的识别,物体相对相机的姿态也是必要的;
有六个参数必须确认,3个是方向,3个是位姿。因为每对世界图像对应点产生两个约束,那么3个点显然是足够的。事实也的确如此,产生的非线性方程一般有四个解。
协方差评估.协方差估计和误差在图像中的传播技术可以如2D单应中一样处理。类似地,可根据结论计算最小残差期望值。假设所有误差均在图像测量中,那么期望ML残差等于,
其中d是待拟合相机参数的数目。给定残差,该方程也可用于估计点测量的准确度。在例6.1中n=197,εres=0.365,这使得σ=0.37。这个值比预期的要大,这是因为忽略了径向扭曲。
例6.2 相机估计中的方差椭球
假设,基于一组整个参数集使用最大似然优化估计相机。根据结论,点测量估计的协方差可用于计算向后传播的相机模型协方差。因此给出,
camera=(JT-1pointsJ)-1,其中J是相机参数表示的测量点的雅克比矩阵。相同的方法考虑3D点的不确定性。如果相机用有意义的参数进行参数化,那么每个参数的方差都可以直接从协方差矩阵的对角元素直接得到。
若已知相机参数的协方差,误差边界或方差椭球可以计算。例如,根据所有参数的协方差矩阵,我们可以提取处表示相机位置的3×3协方差矩阵子模块,∑C。相机中心的置信度椭球定义为,
其中k2是置信度期望为α时累计分布的逆,即k=F(α)。这里n是变量数目-对相机中心而言是4.若相机中心所选的置信度是α,它将在此椭球中。
如图表示,对于计算的相机中心椭球不确定范围的例子。若相机的协方差估计矩阵已知,那么可以用来计算3D世界点在图像中位置的不确定性。

    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多