相机模型下的矩阵

记录科研中的一些 Not Trival Points

一、在齐次坐标下一种特殊矩阵

[ 1 0 0 0 0 1 0 0 0 0 0 1 ] [ x y z 1 ] : = [ x y 1 ] \begin{bmatrix} 1 & 0 &0&0\\ 0 & 1 & 0&0\\ 0 & 0 & 0&1 \end{bmatrix} \begin{bmatrix} x\\y\\z\\1 \end{bmatrix} := \begin{bmatrix} x\\y\\1 \end{bmatrix} 100010000001xyz1:=xy1

A : = [ 1 0 0 0 0 1 0 0 0 0 0 1 ] \bold A := \begin{bmatrix} 1 & 0 &0&0\\ 0 & 1 & 0&0\\ 0 & 0 & 0&1 \end{bmatrix} A:=100010000001
在矩阵 A \bold A A 的作用下,4维向量
[ x y z 1 ] \begin{bmatrix} x\\y\\z\\1 \end{bmatrix} xyz1
第三维被直接抹去了。这个矩阵 A \bold{A} A 第三列的元素都是0。在矩阵 A \bold{A} A中, 如果抽掉第三列,剩下的重新组成一个矩阵。这会得到一个 3 × 3 3\times3 3×3单位矩阵。一个三维点(齐次坐标下)乘上矩阵 A \bold A A表示它做了一个 三维空间下的平行投影(orthographic projection)
平行投影

其实,与矩阵 A A A 类似的矩阵不仅仅可以抹去向量的一个分量,本质是可以抹去矩阵的一行。如下
[ 1 0 0 0 0 1 0 0 0 0 1 0 ] [ b 11 b 12 b 13 b 14 b 21 b 22 b 23 b 24 b 31 b 32 b 33 b 34 b 41 b 42 b 43 b 44 ] : = [ b 11 b 12 b 13 b 14 b 21 b 22 b 23 b 24 b 31 b 32 b 33 b 34 ] \begin{bmatrix} 1 & 0 &0&0\\ 0 & 1 & 0&0\\ 0 & 0 & 1&0 \end{bmatrix} \begin{bmatrix} b_{11} & b_{12} &b_{13} &b_{14} \\ b_{21} & b_{22} &b_{23} &b_{24} \\ b_{31} & b_{32} &b_{33} &b_{34} \\ b_{41} & b_{42} &b_{43} &b_{44} \\ \end{bmatrix} := \begin{bmatrix} b_{11} & b_{12} &b_{13} &b_{14} \\ b_{21} & b_{22} &b_{23} &b_{24} \\ b_{31} & b_{32} &b_{33} &b_{34} \\ \end{bmatrix} 100010001000b11b21b31b41b12b22b32b42b13b23b33b43b14b24b34b44:=b11b21b31b12b22b32b13b23b33b14b24b34
B : = [ 1 0 0 0 0 1 0 0 0 0 1 0 ] : = [ I 3 × 3 0 3 ] \bold B := \begin{bmatrix} 1 & 0 &0&0\\ 0 & 1 & 0&0\\ 0 & 0 & 1&0 \end{bmatrix} := \begin{bmatrix} \bold{I}_{3\times 3}&\bold{0}_3 \end{bmatrix} B:=100010001000:=[I3×303]
这个矩阵 B \bold{B} B 第四列的元素都是0,如果抽掉第四列,剩下的重新组成一个矩阵。这是一个 3 × 3 3\times3 3×3 的单位矩阵。
这个矩阵可以 去掉矩阵的第四行,在齐次坐标下需要用到。

这种类型的矩阵其实可以推广。但是推广比较显然。而且3d计算机视觉中这些已经够用了。

二、特殊的增广矩阵

在这里插入图片描述首先谈谈
[ R − R c ] \left [ \begin{array}{c|c} \begin{matrix} \bold{R} \end{matrix}& \begin{matrix} \bold{-Rc} \end{matrix} \end{array} \right ] [RRc]
它是一个增广矩阵,我一开始没看懂,还以为是 R \bold{R} R 或者 − R c -\bold{Rc} Rc。这个增广矩阵是三个矩阵的乘积,它们分别是projectionrotationtranslationprojection负责把齐次坐标转换到非齐次,方便接着和相机内参矩阵相乘。rotationtransation分别表示三维空间的旋转和平移
当然也有书(比如高翔老师的《视觉SLAM十四讲》)把旋转和平移放在一个矩阵 T T T 里。 T T T 也被称之为所谓的 “变换矩阵”,即为 欧式变换。想得到 T T T,只需要把上图中的代表 translation 的矩阵的 − R c -Rc Rc 替换掉 表示 rotation 矩阵中 R R R 右边的三个 0 0 0元素 ,即可得到
T : = [ R − R c 0 T 1 ] \bold{T}:= \begin{bmatrix} \bold{R} &-\bold{Rc}\\ \bold{0}^{T}&1 \end{bmatrix} T:=[R0TRc1]
注意,在高翔老师的书中,用 t \bold{t} t 表示这里的 − R c \bold{-Rc} Rc

上面所述的一个世界坐标系下的三维点首先经过世界坐标系到相机坐标系的平移和旋转,再来一个齐次坐标到非齐次坐标的转换。
剩下的是矩阵 K \bold{K} K ,它刻画相机内参。乘上它,就完成了相机坐标系下三维坐标到像素坐标的转换。其中包括相机坐标系下三维坐标点小孔成像到相机平面和相机平面到像素平面的平移和缩放。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

培之

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

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

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

打赏作者

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

抵扣说明:

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

余额充值