韩鲁佳 李松维
(中国人民解放军空军航空大学军事仿真技术研究所,吉林 长春 130022)
【摘 要】现实世界是一个三维立体世界,可以轻易地分辨出物体的形状大小、远近高低及其之间的相对位置。而在显示器和绘图机上仅能用二维空间来表示三维空间,因此需要应用投影变换使其维数降低,达到合理逼真的显示。投影变换是一种重要而基本的三维几何图形变换,在实际中应用广泛。针对投影变换,主要介绍了其分类方法、基本原理,并浅析了投影变换的一些应用,给出了具体的推导步骤和方法,最后说明了投影变换在飞行模拟器视景仿真中的应用及其重要性。
教育期刊网 http://www.jyqkw.com
关键词 投影变换;透视投影;平行投影;斜投影;视景仿真
The Principle and Application Elementary Analysis of Projection Transformation
HAN Lu-jia LI Song-wei
(Aviation University of Air Force Military Simulation Technique Institution, Changchun Jilin 130022, China)
【Abstract】The real world is a 3D world. We can easily recognize the shape,the size,the height,the distance and the relative position of the objects. In the display and the drawing machine, the three-dimension space can only be represented in two-dimension space.Therefore,we need to reduce the dimension to aquire a reasonable and realistic display.The projection transform is an important and basic 3D geometry transform, which is widely used in practice. Aiming at the projection transformation, mainly introduces the classification method,the basic principle,analyzes some application of projection transformation and gives the specific procedures and methods. Finally, explains the projection transform is viewed the importance and application of scene simulation in a flight simulator.
【Key words】Projection transform; Perspective projection; Parallel projection; Oblique projection; Visual simulation
通讯作者:韩鲁佳(1990—),男,硕士研究生。
作者简介:李松维,男,高级工程师,研究生。
在计算机显示、地图、工程图、机械图中,经常要用到投影变换。在三维立体空间中,我们可以轻易辨别出物体的大小、形状及其空间位置关系。然而,当需要将真实物体显示或记录时,往往要将其变换为二维空间图形。投影变换可以降低三维物体的空间维度,使其能够在显示器和绘图机等二维图形显示器中表达三维空间物体的一些必要信息。投影变换在计算机图形学中有着广泛的应用。
1 投影变换的分类
投影变换是将三维物体变为二维图形表示的过程[1],投影变换的目的是显示图形[2],变换过程中用到的矩阵称为投影矩阵[3]。根据投影中心和投影平面之间的距离不同,基本的投影变换有两种,分别是平行投影和透视投影[4],如图1所示。平行投影的投影中心位于无穷远,投影线互相平行。这样产生的投影结果和物体与投影平面的相对位置无关,对实际物体信息的反映较差。例如在三视图中只能够表达物体两个方向的信息[5],如果改变物体的位置或是投影方向,则可以让平面投影图表达物体在三个方向上的信息,使图形的真实感大大增强。而透视投影能够根据观察点与物体的远近位置不同,采用中心投影法,正确地描述出物体在三维空间中的远近位置和相互层次之间的关系,使人获得有立体感,有深度的空间视觉效果。
在平行投影中,根据投影方向是否与投影平面垂直,可以分为正交投影和斜投影[6]。投影方向与投影平面垂直叫做正交投影,不垂直则称作斜投影。在正交投影中,根据视向与坐标轴的关系分为多视角正投影和正轴测投影。正轴测投影又依据有多少个主轴被同等地缩短,分为正等测、正二测、正三测投影。同理,斜平行投影分为斜等测和斜二测投影。
在透视投影中,依据视向与世界坐标系的相对关系,可以分为一点、两点和三点透视。它们的视向区别和灭点个数如图2所示。
2 投影变换的原理
在坐标系oxyz中,假设投影平面就是z=0,推导透视投影的计算公式。设视点为V(xv yv zv),空间中任一点M(x y z)在平面z=0上的投影为N(x1 y1 0),则:
在实际应用当中,如果我们能够采用自己规定的坐标系,可以将投影平面设置在面z=0处,则用上面推出的公式计算即可。但是这样做有一定弊端,一旦投影平面固定在面z=0,对于某些物体只能得到物体的一点透视且与视点位置无关,而往往二点透视、三点透视具有更好地空间感、立体感,更加生动逼真。因此,通常情况下我们不能要求投影平面的位置,需要允许投影平面的改变。下面我们讨论在坐标系oxyz中,投影平面是任意平面的情况。
3 几种典型的投影变换
3.1 三视图
我们通常所说的三视图属于正平行投影。正投影由空间三个坐标轴中的任意两个表达[8],由于其仍保有其深度信息,在有多个物体显示时具有可以反映前后关系的特点。而采用变换矩阵将第三个坐标值变为0,则无法达到此效果。生成三视图就是将三维物体投影分别投影到面xoy、面xoz和面yoz上,而通常我们还要将其画在同一平面上,如图3所示。
3.2 轴测图
把一个物体投影到一个投影面上,使它在投影面上的投影能反映它在长、宽、高3个方向的形状,并能沿轴向测量,这样的投影叫做轴测投影图[9]。
3.3 斜投影
把物体沿方向V向z=0平面作平行投影,且保持x,y方向长度不变,称为斜轴测投影。设V与xoy面的交角为α,V在xoy面的投影矢量与x轴的交角为φ。利用特殊投影点坐标得斜轴测变换矩阵为:
3.4 透视投影
物体透视图具有较强的立体感,直观,逼真,符合人的视觉习惯,在建筑、设计、广告、艺术绘画应用广泛[10]。
计算物体透视投影时,应当将物体放入视点坐标系里,原点重合,绕视点坐标系y轴旋转α,绕x轴旋转φ,最后平移一段距离L、M、N,则:
4 透视投影变换在飞行模拟器视景显示中的应用
在飞行模拟器中,需要将实际地景显示在屏幕上,为飞行员提供逼真的视景显示画面,使飞行员能够在模拟飞行训练中感觉更真实,更贴近实际飞行。在将三维空间景物转换到二维投影屏幕上显示的过程中,由于需要变现出空间景物的远近,纵深,而不改变物体的真实形状和拓扑结构[11],这就要用到透视投影变换。我们在PC平台下使用视景仿真显示相关软件驱动,并得到了经过透视投影变换后的图像,如图8所示。 运行环境为:Inter Core CPU 3.10GHz,内存4GB,显卡GeForce GTX 980 4GB。
5 结束语
投影变换在计算机图形学中应用广泛,具有重要的作用和地位[12]。介绍了投影变换的分类方法,及其基本原理,详细给出了透视投影和平行投影推导的具体步骤,并计算了一些投影变换的具体应用,最后将透视投影应用在飞行模拟器的显示系统中,并在PC环境中证明了投影变换能够达到良好的显示效果,获得逼真的视觉反馈。
教育期刊网 http://www.jyqkw.com
参考文献
[1]范贤德,李松维.计算机成像技术与应用[M].吉林:吉林人民出版社,2008:70-71.
[2]Bjorn Bollensdorff,Uwe Hahnet,Marc Alexa. The Effect of Perspective Projection in Multi-Touch 3D Interaction[J]. Graphics Interface Conference 2012.
[3]陈杰.空间曲面的平行正投影原理[J].水利科技,2002(3):61-62.
[4]王长波,高岩.3D计算机图形学[M].北京:机械工业出版社,2010:49-50.
[5]钟韬,袁威,左炜亮.系统标定中的透视投影模型[J].兵工自动化,2011-03:30-35.
[6]Donald Hearn,M,Pauline Baker.计算机图形学[M].北京:电子工业出版社,2013:294-295.
[7]唐荣锡.计算机图形学教程[M].北京:科学出版社,2008:59-60.
[8]何援军.计算机图形学[M].北京:机械工业出版社,2006:99-100.
[9]范幸义.计算机图形学[M].3版.重庆:重庆大学出版社,2008:110-111.
[10]Yang Zhang. Fisheye Distorted Image Calibration using Parabolic Perspective Proj ection Constraint[C]//2012 5th International Congress on Image and Signal Processing.
[11]陈自强.投影透视研究[J].华东理工大学学报,2000,26(2):201-205.
[12]李佳田.球面Delaunay三角网的透视投影算法[J].武汉大学学报,2011,36(9):1116-1119.
[责任编辑:汤静]