多视图几何笔记(三)矩阵估计

在多视几何中,我们要面对以下这些问题:

(1)2D单应 给定IP^{2}中点集x_{i}和同在IP^{2}中的对应的点集x_{i}^{'},计算把每个点 x_{i}映射到对应点x_{i}^{'}

的射影变换。实际中, x_{i}和 x_{i}^{'}是在两幅图像中的点。

(2)3D到2D的摄像机投影 给定3D空间的点集X_{i}以及在一幅图像上对应的点集x_{i},求把X_{i}映射到x_{i}的3D到2D的射影映射。这种3D到2D的投影是有射影摄像机来实现的映射。

(3)基本矩阵的计算 给定一幅图像上的点集x_{i}和另一幅图像上的点集x_{i}^{'},计算与这些对应一致的基本矩阵F。

(4)三焦点张量计算 给定跨三幅图像的点对应x_{i}\leftrightarrow x_{i}^{'}\leftrightarrow x_{i}^{''}的集合,计算三焦点张量。

以上的问题之间的解决具有相关,解决一个问题,可以推测其他问题的解决。

1、直接线性变换算法(DLT)

给定2D到2D的四组点对应x_{i}\leftrightarrow x^{'}确定H,由方程x_{i}^{'}=Hx_{i}给出。

需要注意的是,这里涉及到齐次向量的方程,因此x_{i}^{'}Hx_{i}不一定是相等,因为可能存在一个非零因子,但是因为方向相同,则其叉乘为零,所以可以得到下面等式:

X_{i}^{'}\times HX_{i}=0

矩阵H的第j行记为h^{jT},那么

HX_{i}=\begin{pmatrix} h^{1T}X_{i}\\ h^{2T}X_{i}\\ h^{3T}X_{i} \end{pmatrix}

X_{i}^{'}=(x_{i}^{'},y_{i}^{'},w_{i}^{'})^{T},则叉乘的结果如下:

X_{i}^{'}\times HX_{i}=\begin{pmatrix} y_{i}^{'}h^{3T}X_{i}-w_{i}^{'}h^{2T}X_{i}\\ w_{i}^{'}h^{1T}X_{i}-x_{i}^{'}h^{3T}X_{i}\\ x_{i}^{'}h^{2T}X_{i}-y_{i}^{'}h^{1T}X_{i} \end{pmatrix}

因为在j=1,2,3时,h^{jT}X_{i}=X_{i}^{T}h^{j}都成立,因此对上式整理可得:

\begin{bmatrix} 0^{T} & -w_{i}^{'}X_{i}^{T} & y_{i}^{'}X_{i}^{T}\\ w_{i}^{'}X_{i}^{T} & 0^{T} & -x_{i}^{'}X_{i}^{T}\\ -y_{i}^{'}X_{i}^{T} & x_{i}^{'}X_{i}^{T} & 0^{T} \end{bmatrix}\begin{pmatrix} h^{1}\\ h^{2}\\ h^{3} \end{pmatrix}=0                                  (3-1)

上面公式形如A_{i}h=0,其中A_{i}为3x9的矩阵(X_{i}^{T}是1x3的),h是有矩阵H的元素组成的9维向量。

h=\begin{pmatrix} h^{1}\\ h^{2}\\ h^{3} \end{pmatrix},H=\begin{bmatrix} h_{1} & h_{2} & h_{3}\\ h_{4} & h_{5} & h_{6}\\ h_{7} & h_{8} & h_{9} \end{bmatrix}                                                (3-2)

可以得到以下三点内容:

(1)矩阵A_{i}的元素是已知点的坐标的二次多项式;

(2)在式(3-1)中,第三行可以有第一行和第二行组合得到(x_{i}^{'}乘第一行加y_{i}^{'}乘第二行),因此仅有两个是线性独立的。因此每组点对应两个方程。

\begin{bmatrix} 0^{T} & -w_{i}^{'}X_{i}^{T} & y_{i}^{'}X_{i}^{T}\\ w_{i}^{'}X_{i}^{T} & 0^{T} & -x_{i}^{'}X_{i}^{T}\end{bmatrix}\begin{pmatrix} h^{1}\\ h^{2}\\ h^{3} \end{pmatrix}=0                                (3-3)

 (3)该方程组对点x_{i}^{'}的任何齐次坐标(x_{i}^{'},y_{i}^{'},w_{i}^{'})^{T}成立。我们可以取w_{i}=1,此时(x_{i}^{'},y_{i}^{'})^{T}是图像中实际测量的坐标。

基本DLT算法如下:

目标

        给定n\geqslant 4组2D到2D点对应,确定2D单应矩阵H使得x_{i}^{'}=Hx_{i}。

算法

(1)根据每组对应由式(3-1)计算矩阵A_{i}

(2)把n个2x9的矩阵A_{i}组合成一个2nx9的矩阵A;

(3)求A的SVG,对应于最小特征值的单位特征向量便是解h;

(4)矩阵H由h按式(3-2)确定。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

烟云之路

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值