从“1”开始3D编程
上QQ阅读APP看书,第一时间看更新

3.4 小孔成像

透视投影和小孔成像的原理是一样的。小孔成像的原理如图3-4所示。

图3-4 小孔成像

小孔成像的特点如下。

(1)小孔比较小的时候,蜡烛同一个位置(物点)发出的光线将汇聚在投影面很小的一个范围(近似为一个像点),蜡烛不同位置发出的光线会到达投影面的不同位置,因而不会在屏幕上相互重叠,所以屏幕上的像比较清晰。

(2)当孔比较大的时候,蜡烛同一个位置发出的光线会分散在投影面的一个区域,蜡烛不同部分发出的光线有可能在投影面的同一个位置上重叠,投影面上的像就不清晰了。如图3-5所示,如果孔很大,那么蜡烛两个不同位置发出的光线,可能投影到了投影面的同一个位置。

图3-5 大孔成模糊的像

由于小孔成像画质受孔大小的影响,所以透视投影对小孔成像做了一点假设:透视投影的小孔无限小,小到物体的每个点,只能有一根光线通过小孔。这样的优点是,无论物体到小孔的距离是多少,物体上的每个点都只有一条光线通过小孔,这也就保证了两个点的两条光线,通过小孔后不会发生重叠,因而保证了成像一定是最清晰的。

除了这点假设之外,透视投影的近平面(也就是小孔成像里面的投影面)放在了小孔和物体的同侧。这带来了计算上的便利,但是投影和物体之间的三角形关系并没有改变。唯一改变的是,小孔成像成的是倒立的影像。透视投影,则把这个成像再次倒立了,也就是成为正立的影像。

所以,我们得到的透视投影模型是如图3-6所示的:小孔成了眼睛(或者摄像头);投影面成了近平面。蜡烛就是位于近平面和远平面之间的物体,这意味着用户定义的3D场景,也需要位于近平面与远平面之间,否则不可见。

图3-6 透视投影模型