, (2.7)
, (2.8)
上式中,反射镜面的形状与k、c有关,当k、c取不一样的值时,反射镜面所对应的截面 形状不同,就拥有不同的二次曲线,下面就是不同k值与c值所对应的不同反射镜面:
(1) 当式(2.7)中,若 且 ,平面镜;
(2) 当式(2.7)中,若 且 ,锥面镜;
(3) 当式(2.8)中,若 且 ,球面镜;
(4) 当式(2.8)中,若 且 ,椭球面镜;
(5) 当式(2.7)中,若 且 ,双曲面镜;
(6) 当式(2.7)中,若 , 且 ( 为常数),抛物面镜。
由于本文中所设计的全方位立体相机的反射镜面为双曲面镜,下面就让我们简单了解一下双曲面镜:
在双曲面镜中,k>2并且c>0,再通过式(2.7)可得以下方程:
(2.9)
上式中, , 。
图2.5 双曲面镜的成像原理
如上图2.5所示,有效视点p处于双曲面镜的一个焦点处,有效视点v处于双曲面镜的另一个焦点上,空间中的某光源经双曲面镜反射通过有效视点而在成像平面成像。在此模型中,单视点约束条件可以得到满足,并且视场大小得到增强。其中视场随着k值得增大而增大。
2.3 POV-Ray软件简介
POV-Ray是一个三文绘图软件,它的基本思想是使用光线跟踪技术进行图象绘制工作,它是基于DKBTrace制作出来的,可以绘制出许多美丽的图象。
POV-Ray是一个可以绘制高质量三文图象的开源软件,可应用与多个系统。目前为止,POV-Ray已经相当完善,内含背景、光源、观察角度、氛围效果等多个要素,下面主要从以下几个方面进行介绍:
(1)头文件设定
在POV-Ray的软件中,在绘制图象之前,有些实体需要预先定义,如:材料、形状、颜色等。常用头文件定义如下所示:
#include “textures.inc” //材料头文件设定
#include “shapes.inc” //外形头文件设定
#include “colors.inc” //色彩头文件设定
(2)观察方向定义以及摄像机设定
观察方向定义即假象的观察点,不同的观察点所查看的物体形状等特性不同,从同一观察点向不同方向观察也可以得到不同的结果。摄像机定义即定义观察视角等问题。具体格式如下所示:
camera {
perspective //默认设置,投影为透视
location <3,4,5 > //摄像机位置设定,如此时设置摄像机摆放位置为坐标(3,4,5)
look_at <11,12,13 > //确定摄像机位置后,所设定的观察方向,如此时所观察方向为由原点向坐标(11,12,13)观察
direction < > //设定物体距离摄像机方向,距离
up < > //
right < > //up和right定义了横纵视角比例,可对图象缩放操作
sky < > //摄像机的倾斜角设定
}
其中,在摄像机设定中必有条件为location和look_at,其余设定根据具体情况具体分析。若不进行具体设定,则为系统默认值。
(3)光源设定
在POV-Ray的三文绘图软件中,主要运用到的光源有三种:聚光灯和点、面光源。它们的定义如下所示
点光源:light_source { < > color},其中首项定义了点光源的位置,尾项定义了点光源的颜色。 matlab小巧轻便型立体相机的设计+POV-Ray仿真(4):http://www.751com.cn/zidonghua/lunwen_14108.html