您的位置:首页 > 其它

相机的坐标转换(2):单应性矩阵的求解

2017-03-07 15:29 134 查看
在这篇文章里我们继续上一话题,对得到的转换矩阵进行求解。

1.前文

在上篇文章里,我们最终得到如下公式:

s⎛⎝⎜uv1⎞⎠⎟=⎛⎝⎜α00−αcotθβ0u0v01⎞⎠⎟(R0TT1)⎛⎝⎜⎜⎜xwywzw1⎞⎠⎟⎟⎟(1)

上述式子只是为了行文方便,如果要求解,我们得写成下面的样子:

s⎛⎝⎜uv1⎞⎠⎟=⎛⎝⎜α00−αcotθβ0u0v01⎞⎠⎟(r1r2r3t)⎛⎝⎜⎜⎜xwywzw1⎞⎠⎟⎟⎟(2)

2.(u,v)与(xw,yw,zw)的求解

在张正友标定法当中,我们一般用棋盘格作为标定模板,通过图像处理上的方法我们可以得到棋盘格上的角点坐标,这样我们就得到了(u,v).



那么,我们如何得到对应的空间点坐标呢。

我们假设标定模板位于zw=0上,结合棋盘格的边长我们就可以得到相应的角点的空间位置。譬如,假设每一个小格子的大小为300*300,那么,红点1的坐标为(0,0,0),则红点2的坐标为(0,300,0),依次类推,这样我们就得到对应点的空间坐标。



3.单应性矩阵的求解

当zw=0时,公式(2)可变为:

s⎛⎝⎜uv1⎞⎠⎟=⎛⎝⎜α00−αcotθβ0u0v01⎞⎠⎟(r1r2t)⎛⎝⎜xwyw1⎞⎠⎟(3)

用单应性矩阵的形式可表示成:

s⎛⎝⎜uv1⎞⎠⎟=⎛⎝⎜h11h21h31h12h22h32h13h23h33⎞⎠⎟⎛⎝⎜xwyw1⎞⎠⎟(4)

作为一个单应性矩阵,H并没有看上去的那样风光,哦,我是说,尽管看起来H是一个3×3的矩阵,其实单应性矩阵的自由度只有8个。好了,划重点的时间又到了,图像平面间的单应矩阵(Homography Matrix)H,具有8个自由度。在这篇文章里,我们只具体研究图像平面间的单应性矩阵。一般而言,为了归一化,我们可以设h33=1,于是,公式4就变成了如下所示:

s⎛⎝⎜uv1⎞⎠⎟=⎛⎝⎜h11h21h31h12h22h32h13h231⎞⎠⎟⎛⎝⎜xwyw1⎞⎠⎟(4)

显然可得,

⎧⎩⎨⎪⎪⎪⎪⎪⎪u=sus=h11xw+h12yw+h13h31xw+h32yw+h33v=svs=h21xw+h22yw+h23h31xw+h32yw+h33(5)

简单地变个形,我们就可以得到:

{0=h31xwu+h32ywu+h33u−(h11xw+h12yw+h13)0=h31xwv+h32ywv+h33v−(h21xw+h22yw+h23)(6)

但是作为一个大学生,如果只会列公式,那么我们和咸鱼,,,嗯,我是说我们和小学生有什么区别。我们要列,矩,阵。唯有如此,才能体现出我们曾上过矩阵这门课,或者说,被它上过。

[−xw0−yw0−100−xw0−yw0−1xwuxwvywuywvuv]h=0(7)

其中,h=[h11,h12,h13,h21,h22,h23,h31,h32]T(8)

我们共有8个未知参数,需要四个像公式(7)这样的式子才能求解,棋盘格里的一个小格子刚好能提供四个角点,看来选棋盘格是有原因的。

我们用下角标来区别四个角点的坐标,那么我们可以用下面的式子来唯一求解:

⎡⎣⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢−xw10−xw20−xw30−xw40−yw10−yw20−yw30−yw40−10−10−10−100−xw10−xw20−xw30−xw40−yw10−yw20−yw30−yw40−10−10−10−1xw1uxw1vxw2uxw2vxw3uxw3vxw4uxw4vyw1uyw1vyw2uyw2vyw3uyw3vyw4uyw4vuvuvuvuv⎤⎦⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎡⎣⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢h11h12h13h21h22h23h31h32⎤⎦⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥=0(9)。

对应Ah=0这样的矩阵求解,我们目前的技术手段已经非常成熟了,譬如,熟读矩阵论的我们一定知道:我们可以采用SVD分解的方法来求。当然,要想结果准确,排除噪声、检测误差等因素带来的影响,还是要采取一些手段的,譬如采用最大似然的思想,采用随机抽样一致的方法等。

4下文

尽管已经可以求出单应性矩阵了,但我们的任务还没有结束。单应性矩阵里既包含相机内参也包括相机外参。相机标定的目的在于求出内参。毕竟不同张的图片都对应着不同的外参,而相机不变,则内参不变。所以,内参才是我们要追求的唯一。

关于如何求出相机内参,我们下篇再讲。

ps:单应性矩阵不仅应用在相机标定的过程中,同时也用在图像拼接的过程中。更多关于单应性矩阵求解的内容,请戳这里
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: