白 斐,周 雯,吕晓军,吴兴华
(1 .郑州铁路局 郑州东站,郑州 450018;2 .中国铁道科学研究院 电子计算技术研究所,北京 100081)
高铁站三维电子地图的设计与实现
白 斐1,周 雯2,吕晓军2,吴兴华2
(1 .郑州铁路局 郑州东站,郑州 450018;2 .中国铁道科学研究院 电子计算技术研究所,北京 100081)
在三维建模和电子地图基本理论的基础上,提出一种建立高铁站三维电子地图的方法及框架,并运用Auto CAD,Maya、Photoshop、OpenGL完成电子地图的创建。对高铁站地理信息和建筑物信息进行实地收集并归纳;基于所采集的信息建立车站的三维模型,并通过三维模型贴图的方法直观地再现车站的建筑和设备;通过人机交互的方式实现信息检索和智能导航的功能。为了验证该地图创建方法的有效性,对许昌东站真实环境进行虚拟仿真,创建了许昌东站的三维电子地图。
三维电子地图;三维建模;人机交互;高速铁路;车站
随着计算机图形学、三维仿真技术和虚拟现实技术的迅速发展,以虚拟现实技术为代表的三维环境仿真技术和产品的出现,打破了人们对地理空间中信息表达和处理方法的限制。在虚拟现实、三维可视化、三维地理空间建模技术的基础上,结合电子地图的运用产生了三维电子地图[1]。三维电子地图的日益发展和成熟,可以实现比二维地图更真实的场景展示,支持直观的用户交互和分析查询。
将三维电子地图服务于高铁站的管理,实现了高铁站资源的合理配置和设备的有效管理,提高高铁站的运营效率,是高铁站管理自动化、信息化、科学化、网络化和智能化的一种趋势。
主要在三维建模和电子地图基本理论的基础上,提出一种建立高铁站三维电子地图的方法及框架,为了验证该方法的有效性,应用Maya、Photoshop、 OpenGL、Auto CAD对许昌东站真实环境进行虚拟仿真,建立许昌东站的三维电子地图,实现许昌东站的信息检索和智能导航。
1.1 三维电子地图的制作
高铁站三维电子地图的实现包括数据的采集、三维模型的建立、三维模型的贴图、OpenGL读取三维模型及人机交互的实现[2]。三维电子地图的制作流程如图1所示。
1.2 数据采集
三维电子地图的数据包括地形数据、建筑物模型数据和纹理数据。为了得到更准确的许昌东站的地理信息,本文在设计中利用许昌东站站房CAD设计图,用于辅助绘制许昌东站的二维平面图。
三维模型的建立需要参考实际建筑物,才能真实直观的再现三维场景。本文设计过程中,为了再现许昌东站站房及设施的真实场景,对许昌东站的站房建筑进行实地拍摄。在拍摄过程中,为了抓住建筑物的主要特征,至少从3个角度进行拍摄。这些影像资料,在场景的三维建模过程中将作为参考。
使用Maya三维图形软件可以建立逼真的三维模型,但为了使三维建筑及设施等场景更具有真实感,可以使用贴图方式,通过材质编辑器给各个模型贴图。因此,在建立模型贴图前,需要收集不同的纹理贴图。收集的部分纹理贴图如图2所示。
图1 三维电子地图制作流程
图2 纹理贴图
1.3 三维模型建立
Maya功能完善、工作灵活、易学易用,制作效率高,渲染真实感极强,广泛应用于影视广告、角色动画、电影特技等领域。在设计过程中运用Maya进行三维场景的建模、贴图及渲染[3]。
站房及设施是高铁站三维场景中重要的组成部分,站房和设施三维模型的建立效果关系到高铁站三维电子地图的整体效果。
站房建模步骤如下:
(1)将Auto CAD制作的站房二维平面图导入Maya中,作为三维建模参考底图;
(2)根据站房二维参考底图在Maya系统坐标中绘制站房的三维坐标位置,将站房的基本轮廓绘制完成后,再在此基础上绘制出站房的门窗等附属建筑;
(3)使用材质编辑器对站房的组成元素进行材质编辑,展现一个逼真的站房三维模型。
许昌东站站房三维模型如图3 和图4所示。
图3 站房整体模型
图4 站房局部模型
1.4 三维模型贴图
为了使三维场景更加接近现实,达到更好的效果,需要为三维模型进行贴图。贴图不但能带来很强的真实感,而且能够在不增加模型复杂程度的前提下,节省大量的模型运算,并能突出表现对象的细节。
对于材质的二维贴图,模型需要有贴图坐标,这个坐标确定二维贴图以何种方式映射到三维模型上,即模型的UV坐标。
三维模型的贴图步骤如下:
(1)在Maya 中分解三维模型的UV坐标,整理并导出;(2)将三维模型的UV图导入Photoshop,为三维模型制作贴图;(3)在Maya中,为三维模型赋予材质球,并链接贴图。
贴图后的三维模型如图5和图6所示。
图5 站房整体模型贴图
图6 站房局部模型贴图
OpenGL(GL图形库,Graphics Library)图形系统是图形硬件的一个软接口,它允许创建交互性的程序,产生移动三维物体的彩色图像。从本质上说,它是一个3D图形和模型库,具有高度的可移植性,并具有很快的渲染速度。如今,OpenGL广泛应用于游戏、医学影像、地理信息、气象模拟等领域,是高性能图形和交互性场景处理的行业标准[4]。
OpenGL独立于窗口系统和操作系统,适用于多种硬件平台及操作系统,以OpenGL为基础开发的应用程序可以十分方便移植于各种平台。OpenGL与Visual C++接口紧密,保证算法的正确性与准确性[5]。
运用OpenGL读取三维模型OBJ文件,实现三维场景的人机交互。
2.1 OBJ文件的导出
OBJ文件是一种标准3D模型文件格式,它定义了对象的几何特性。OBJ文件格式支持直线(Line)、多边形(Polygon)、表面(Surface)和自由形态曲线(Free-form Curve)。其中,直线和多边形通过他们的点(顶点)来描述,曲面和表面根据它们控制点和依附于曲线的额外信息来定义,例如,法向量等。
Maya的开放系统输出数据文件类型有MEL,DXF,Explore,Geo,OBJ,IGES等,其中,OBJ模型文件为文本类型,它的文件结构比较简单,保存一些多边形的信息,包括顶点的几何坐标、纹理坐标、法向量坐标等,适合在应用程序中读取或进行3D文件格式的转换。
在Maya中将三维模型建模完毕之后,按照下列步骤导出三维场景的OBJ文件,如图7所示。
(1)需要Maya中加装导出OBJ格式的插件,在Windows插件管理器中(Plug-in Manager),勾选objExport.mll;
(2)选择要导出的模型,选择Export Selection,在文件类型(Flies of type)中选择OBJ 。
读取的OBJ文件如图8所示。
图7 OBJ文件导出
图8 OBJ文本文件
2.2 OpenGL读取OBJ文件
2.2.1 OBJ文件基本结构
OBJ文件尽管经常使用几行文件信息的注释作为文件的开头,但不需要任何文件头。OBJ文件由一行行文本组成,注释行以符号“#”开头。内容行由一个或两个标记字母,即关键字开头,关键字说明这行是什么样的数据,如图8所示。OBJ文件中主要关键字及其意义如下。
V:几何体顶点,表示指定一个顶点,后面的3个浮点数表示该顶点的X、Y、Z坐标值;
Vt:贴图坐标点,表示指定一个纹理坐标,后面的2个浮点数表示该纹理坐标的U、V值;
Vn:顶点法线,表示指定一个法线向量,后面的3个浮点数表示该法向量的X、Y、Z坐标值;
Vp:参数空格顶点。
OBJ文件中不包含面的颜色定义信息,但Maya导出OBJ文件同时会生成一个后缀为.mtl文件,该文件为模型的材质库信息,包含三维模型的材质信息及贴图信息,包括材质的漫反射(diffuse)、环境(ambient)、光泽(specular)的RGB定义值,及反射(specularity)、折射(refraction)、透明度(transparency)等特性。“usemtl”指定了材质,后面的面都使用这一材质,直到遇到下个“usemtl”来指定新的材质。
也可以运用OpenGL为三维模型贴图及渲染,生成逼真的三维场景。
2.2.2 OBJ文件OpenGL中输入处理
基于OBJ文件的基本结构,为了将三维模型读入程序中,需要先建立对应的模型数据结构。
(1)定义OBJ文件对应的结构体,包括对象顶点的结构体、颜色列表的结构体、材质描述结构体和整体模型描述结构体。
(2)获取了全局变量后,可以在视图类中绘制读取的模型对象,之后对三维模型进行交互式处理和操作。如图9所示为读取的三维模型及交互式操作。
图9 OpenGL读取模型及交互式操作
本文结合当前三维电子地图的设计与开发技术,从三维电子地图的特点及制作流程入手,对高铁站三维电子地图的实现方法进行深入分析,首先,对高铁站的信息进行收集、归纳与整理,制作二维平面图,然后,构建高铁站的三维模型,最后通过OpenGL实现三维模型的简单人机交互。但将高铁站业务流程和三维电子地图结合的人机交互仍需进一步研究,完善高铁站三维电子地图的功能。
[1]龙 毅,温永宁,盛业华.电子地图学[M].北京:科学出版社,2006.
[2]ZHAO Z Y.Research on 3D digital map system and key technology[J].Procedia Environmental Sciences,2012(12):514-520.
[3]王 琦.Autodesk Maya 2015标准教材[M].北京:人民邮电出版社,2014.
[4]Dave Shreiner .OpenGL编程指南 (美)[M].李 军,徐 波,译.北京:机械工业出版社,2010.
[5]Richard S.Wright,Jr.Nicholas Haeme,Graham Sellers,Benjamin Lipchak OpenGL超级宝典[M].付 飞,李艳辉,译.北京:人民邮电出版社,2012.
责任编辑 徐侃春
3D electronic map for high-speed railway station
BAI Fei1,ZHOU Wen2,LV Xiaojun2,WU Xinghua2
( 1.Zhengzhou East Railway Station,Zhengzhou Railway Administration,Zhengzhou 450018,China;2.Institute of Computing Technologies,China Academy of Railway Sciences,Beijing 100081,China)
This paper was on the basis of the basic theory of 3D modeling and electronic map,proposed a method to build a framework of 3D electronic map for high-speed railway station,implemented the creation of electronic map by using Auto CAD,Maya,Photoshop,OpenGL.It was collected and summarized the information of geographic and building of railway station,established the 3D model of the station based on the information,reproduced buildings and equipment information of station truly and intuitively by the method of 3D model mapping,implemented the functions of information retrieval and intelligent navigation by human-computer interaction.The 3D electronic map for Xvchang East Railway station was created to validate the effectiveness of this method.
3D electronic map;3D modeling;human-computer interaction;high-speed railway;station
U291.61∶TP39
A
1005-8451(2016)11-0032-04
2016-04-06
白 斐,工程师;周 雯,工程师。