本章主要讲述除了点以外的几何体, 在投影变换下的性质.这些几何体包括:平面, 线, 圆锥曲线, 二次曲线.
讲到这里就明白了, 为啥投影几何这么重要, 因为摄像机就是一个投影几何模型. 为啥无穷远平面重要, 因为它在投影变换下保持不变. 它只和摄像机内参有关系.
同时, 上的点,线,面也很重要. 上的点就是消失点, 上的线就是消失线. 点和线的图像与摄像机内参和旋转有关 (所以可以从他们来估计相机的旋转). 上的圆锥曲线只和相机内参有关.
对于空间中的平面, 我们可以先考虑一个特殊的, 也就是平面, 没有坐标. 所以, , 那么P就变成了, rank为3的单应性矩阵
空间中的线和摄像机中心定义了一个平面, 该平面和成像平面交于一点. 所以说, 如果空间里有两个点A,B, 他们在图像上的坐标是a,b, 那么由A,B构成的直线就被转换到.
如果我们反过来, 图像上一个线, 反投影回去, 就会形成一个平面, 可以表示为
首先我们明确为啥不是圆锥曲线的投影,而是反投影? 因为圆锥曲线投影到图像上是不变的.
其次我们说, 一个圆锥曲线C反投影到空间中, 就成了圆锥Q.
光滑曲面上的点投影到图像上, 其轨迹是一条射线, 该射线于光滑曲面相切. 如果一个线和该点在图像上相切, 反投影回去也会和曲面相切.
二次曲线Q在P的作用下就会变成圆锥曲线:
为什么重要, 因为通过同一个相机中心获取的多个图像之间存在平面变换关系.
比如说我们做一个纯旋转, 没有平移, 那么同一个点在两个不同图像之间的关系可以表达为以下:
如果我们做个纯平移,对物体缩放一个k, 那么就相当于给内参矩阵乘以一个对角矩阵右乘一个
我们首先来讨论一个问题, 如果已知内参K, 那么图像点x反映射回去就是一个射线, 该射线的方向就是. 那么我们如果考虑两条射线间的角度 ,它其实就可以用相机内参来表示.
接下来我们考虑绝对圆锥在图像上的投影. 我们先看, 上的点可以写成, 那我们有以下式子成立:
所以说无穷远处平面投影到图像上的矩阵就是, 那么利用这么结果, 我们可以考虑上的圆锥C. 我们知道点x被H投影到可以表示为, 那么C就会变成, 我们把H 替换成KR, 就会得到
由此我们可以看出绝对圆锥曲线只依赖于相机内参, 所以知道了绝对圆锥曲线的表达式, 就可以恢复出相机内参.
然后图像上两点形成的射线之间的角度也可以通过绝对圆锥计算出来.
那么问题来了, 如果知道绝对圆锥曲线的表达式呢? 我们可以找三个正方形, 然后拍一个图像. 每个正方形世界坐标的四个点可以认为是, 然后我们再找出正方形在图像坐标系下的四个点, 计算一个.
然后, 绝对圆锥曲线上还有两个虚点,分别是, 我们也给他乘上H, 得到, 这样一个H提供2个虚点, 三个H就是6个虚点, 用这6个虚点去拟合一个方程
上文提到绝对圆锥曲线是可以用来计算线段之间角度的. 那么我们有这样一个结论, 一个点x反投影成了一条射线, 一个线l反投影成了一个平面. 射线如果与平面相切, 那么有如下等式存在
消失点是怎么形成的? 可以说消失点是两个平行线交点形成的. 我们也可以说, 消失线是图像平面与一个和地平面平行的射线相交形成的. 所以消失点的方向是重要的, 位置不重要,因为他在无穷远处.
我们假设三维空间有一点A, 他的方向是, 那么该点和方向形成的线就表示成, 如果我们再乘上P, 就有
令, 上式的极限就是Kd, 这个极限记为, 就是无穷远点在图像上形成的点. 反过来, 反投影回去就是一个射线.
那么具体给一个图像, 我们怎么找出? 很简单, 从图中找到若干条平行线, 把他们延长, 交点就是
平行的平面与 相较于一条直线, 这就是消失线. 消失线同样只取决平行平面的方向, 而不是位置. 消失线有一些性质:
具体一点, 我们怎么找消失线? 很简单, 找两个消失点, 然后连起来就行了, 因为消失点都落在消失线上
比方说我们已知一个消失线l,还有图像中的两个点, 我们可以只用图像就测出来两点之间线段的长度,具体细节参见p222页的算法
前文我们说过, 求出绝对圆锥曲线, 我们就知道了内参. 除了前文所述的用点拟合, 我们还可以用消失点和消失线来提供一些约束, 在书中224页提供了6种约束, 每一种约束都可以表达成一个方程, 所以我们可以这样求解
我们先把写成一个向量, 然后224页的6种约束, 每一个都可以写成, 这样就有6个方程组, 6个未知数, 用SVD分解就可以求出, 知道了 再把它用cholesky 分解就求出了内参
略
绝对圆锥曲线是一个想象出来的东西, 所以我们看不见. 但是非要把它画出来的话, 应该怎么办呢?
我们找一个他的替代品, 叫标定圆锥曲线, 它的图像是一个与x轴成45度的圆锥. 他的方程就是