铁路三维地形及仿真场景快速建立技术研究
2016-09-10赵亮亮卢文渊
■ 赵亮亮 卢文渊
铁路三维地形及仿真场景快速建立技术研究
■ 赵亮亮 卢文渊
通过四叉树空间索引原理计算地形和影像金字塔,实现三维地形的快速建立和浏览,同时根据既有铁路三维线位,提出铁路中线分段投影、三维模型自动匹配等方法,可快速搭建铁路沿线三维仿真场景。
金字塔;三维地形;分段投影;自动匹配;仿真
当前铁路勘察设计、施工建设、后期运营均通过二维图纸的方式进行,不能全面参考各方因素,如地形(地物、地貌)、水文、地质、交通量、工程投资、运营费用及环境和社会等,难以满足铁路建设需求。三维仿真系统直观性强,具有海量数量的管理能力,能够以逼真方式查看铁路沿线地形地貌和设施设备状况,可有效解决上述问题。通过三维方式资料利用率高,参考信息全,因此建设可用于铁路规划、设计、施工和运营管理全生命周期的铁路信息可视化仿真场景是发展所需、时代所趋。
1 三维地形建立
地形数据包括DEM和DOM数据,即数字高程模型和正射影像。在客户端展示时,若将海量地形数据同时展现,客户端无法同时承受如此大数据量的压力。因此需要对地形数据进行特殊处理,主要采用基于四叉树空间索引的方式建立层次格网(金字塔)[1]。高程数据和影像数据切片方式一样,此处介绍影像数据的切片建立方法。
1.1 基本概念
四叉树索引基本思想是将地理空间递归划分为不同层次树结构。将已知范围空间等分成4个相等子空间,如此递归下去,直至树的层次达到一定深度或满足某种要求后停止分割。此方法在空间数据对象分布较均匀时,具有较高的空间数据插入和查询效率。
1.2 建立影像数据金字塔
影像金字塔指在同一空间参照下,根据用户需要,以不同分辨率进行存储与显示,形成分辨率由粗到细、数据量由小到大的金字塔结构。影像金字塔结构用于图像编码和渐进式图像传输,是一种基于四叉树空间索引的分层数据结构形式,适合于栅格数据和影像数据的多分辨率组织(见图1)。
图1 金字塔结构及数据切片
金字塔建立完成后,为改善客户端浏览效果,需将各层金字塔进行切片,大小为256×256。
在铁路三维地形建立过程中,经常需要将铁路沿线高分辨率航测数据和低分辨率卫星遥感数据进行展示。因此在进行切片时需要特别注意多分辨率影像结合展示及接边问题,处理方法如下:
(1)针对多分辨率影像建立统一切片网格。在影像切片过程中,若多分辨率影像分开切片,则可能造成在同一分辨率切片级别下格网错位或同一级别切片数据的分辨率不同(见图2)。
图2 切片错位
因此,为了保证调度时后期每层数据统一规范,需要对多分辨率数据进行统一切片,流程如下:
①切片范围计算,一般为所有影像的最大外包范围。
②根据最大分辨率影像进行切片级数计算最大分辨率影像切片级数Lmax。一般来说,影像分辨率越高级数切得越多,其对应关系见表1。但在一般计算过程中,其影像分辨率可能不一定正好为相应级数的分辨率,如分辨率为0.35 m,在表格中找不到相应级数,则其切片级数为大于该分辨率的最近级数,计算公式如下:
式中:δmax为最高影像的分辨率;L为切片级数;min为的最小差值。
表1 切片级别与分辨率对应关系
③按照式(1)的算法,分别计算每张影像的切片级数。
④根据Lmax和各影像相应影像切片级数Ln计算各影像区域的切片格网。当相应切片级数还没有达到其切片范围内最高分辨率级数时,则继续划分切片。
(2)切片数据计算。计算切片数据时,需要顾及高低分辨率结合展示和接边问题。处理方法如下:当Tn(n表示金字塔层级,Tn为第n层的切片)只位于A影像内时,其像素值取A影像;当Tn位于A和B影像内时,取较大影像分辨率的像素;当Tn位于A、B影像交汇处时,相应位置像素值取较高分辨率影像像素值(见图3、图4)。
图3 切片划分计算示意图
图4 像素取值
1.3 铁路沿线三维地形实时分级显示
每层的影像和高程金字塔都有其分辨率,计算出进行放大(无论是拉框放大、还是固定比例放大)、缩小、漫游(此操作不涉及分辨率的改变)等操作后所需的影像分辨率及在当前视图范围内会显示的地理坐标范围,然后根据该分辨率和已经建好的影像金字塔分辨率匹配,搜索出最接近的影像金字塔层和地形金字塔层进行显示,并根据操作后当前视图应该显示的范围求取在该层影像和高程金字塔上对应的切片,然后取出进行绘制[2](见图5)。
图5 三维地形绘制
2 铁路中线分段投影与三维模型自动匹配
2.1 铁路三维线位恢复
铁路是一个空间三维的工程结构物。它的中线是一条空间曲线,其中线在水平面的投影就是平面线形。在线路方向发生改变的转折处,为了满足行车要求,需要用适当的曲线把前、后直线连接起来,这种曲线称为平曲线[3]。平曲线包括圆曲线和缓和曲线。道路平面线形是由直线、圆曲线、缓和曲线三要素组成。圆曲线是具有一定曲率半径的圆弧。缓和曲线是在直线与圆曲线之间或两个不同半径的圆曲线之间设置的曲率连续变化的曲线。在铁路的纵坡变换处,为了行车平稳、改善行车视距,一般采用圆曲线将两段直线进行连接,这种在竖直面内设置的圆曲线称为竖曲线[4]。竖曲线又有凹形和凸形两种形式,顶点在曲线之上的为凸形竖曲线,顶点在曲线之下的为凹形竖曲线,其计算方法如下(其中,JD、ZH、HZ、HY、YH为交点、直缓点、缓直点、缓圆点、圆缓点):
(1)从线路数据中依次读取线路起始里程、起点、交点、终点的E坐标和N坐标、圆曲线半径、前缓和曲线长、后缓和曲线长,以及变坡点里程和设计高程、竖曲线半径和长度;
(2)从起点后的第一个JD开始;
(3)计算ZH、HY、YH、HZ的里程、转角、转角符号(正负)、方位角;
(4)计算JD的曲线长、前切线长、后切线长、外距、切曲,若前后缓和曲线相等则用对称缓和曲线坐标公式计算,不等则用非对称缓和曲线公式计算;
(5)计算JD的主点HY、YH、HZ的x坐标、y坐标、z坐标,里程、切线方位角;
(6)若没有到达终点,则从下一个交点开始跳至第(3)步。
2.2 铁路线路坐标转换
由于铁路线路数据可能涉及不同坐标系,为了在三维系统中正确显示,需要将这些不同坐标系转换到统一坐标系下。根据数据情况,有两种解决方式:
(1)如果原椭球和目标椭球都是WGS84椭球,则用高斯反算实现转换[5]。
(2)如果原椭球不是WGS84椭球,目标椭球是WGS84椭球,首先将独立坐标转换为标准分带,再转换为WGS84标准分带,然后按(1)中同样方法进行高斯反算即可[6]。
2.3 三维模型自动匹配
铁路沿线部分构筑物和设施设备的模型大都一样(道砟、轨道板、信号机、扣件等),因此可针对此类型数据建立铁路模型数据库[7],然后通过其设计坐标快速匹配到三维场景中进行展示。其中也存在一些不可复用的模型,此类模型可将相关专业的三维设计成果导出为统一三维仿真平台格式,然后再融入三维场景中[8],思路如下:
(1)根据铁路三维线位生成可复用模型(道砟、轨道板、信号机、扣件)的数据索引,包括位置、姿态和比例尺。
(2)对于不可复用模型,根据各专业三维设计成果,将其转换为三维仿真场景数据格式,并生成坐标索引文件[9](见表2)。
表2 索引文件
铁路各种设施设备是设计人员根据相应地形、地貌、地质条件等其他相关影响因素综合考虑进行设计的,因此铁路三维仿真场景的搭建仅根据模型库进行建设并不符合实际。需要集合各专业三维设计成果来实现,但各设计软件中的模型并不能直接导入仿真系统,需要相应的二次开发才能完成。
图6 Revit模型集成到仿真系统模型示意图
以Revit软件为例,分析Revit模型转换为仿真系统格式的思路(其他软件设计成果导出可参照此方法进行)。RVT格式为Revit系列软件的存储格式。RVT格式并不开源,不能直接读取RVT文件,需要通过对Revit进行二次开发。二次开发可通过C#、VB.NET、Managed C++语言进行,并要引用RevitAPI.DLL和RevitAPIUI.dll[10]。Revit所有类型对象都是从Elememt类派生而来,主要包括模型元素(Model Elements)、基准元素(Datum Elements)、查看的具体元素(View-specific Elements)三大类。将RVT数据转换为三维仿真场景的数据格式,由几何信息转换、材质信息转换两步组成,转换流程如下:
①几何信息转换。首先,在Revit中遍历出所有Revit模型构件,通过ElementCollector针对每类进行过滤;其次,遍历所有模型,若其Solid不为空,则通过Triangulate函数进行三角分割,可直接获得顶点坐标和三角面片,若为空,则判断GeometryInstance是否为空,如果不为空则将其变量SymbolGeometry作为GeometryElement重复上面循环;最后,将几何信息提取出备用。
②材质信息读取:通过Material类,构件相应过滤器,得到相应材质元素。
Revit模型集成到仿真系统模型示意见图6。
(3)根据索引文件,将各类设施设备三维模型导入三维软件平台并自动定位。
(4)在三维软件平台中对模型微调,完成设计成果的集成展示(见图7)。
3 模型与三维地形融合
模型集成到三维场景后,部分涵洞模型或隧道模型可能出现地形淹没模型的情况,因此需要将地形与模型进行融合,完成三维仿真场景的最终建立,实现流程如下:
第一步:地形三角网建立。
在三维仿真场景中,可采集任意区域的高程点数据,根据该高程点数据可建立该区域的地形三角网模型(TIN)。TIN是一个典型矢量数据结构,主要通过节点(地表采样点)、三角形边和三角形面间的关系来显式或隐式表达底细功能散点的拓扑关系。
第二步:地形三角网与模型三维网求交。
地形三角网与模型三角网求交的目的是将交线求出,并在三维GIS平台中对地形进行开挖。主要通过布尔运算进行,布尔运算是数字符号化的逻辑推演法,包括联合、相交、相减。在图形处理操作中引用这种逻辑运算方法使简单基本图形组合产生新的形体(主要采用第三方开源库(OpenCascad)通过求交实现)。
图7 模型在3D GIS平台中展示
模型与地形融合效果示意见图8。
图8 模型与地形融合效果示意图
4 结束语
首先提出一种基于四叉树空间索引原理,实现了基于多尺度、多分辨率影像和高程数据的三维地形自动生成方法,同时有效避免了切面数据错位和分辨率不统一的问题。其次通过建立铁路设施设备模型库,根据铁路三维线位和相应三维设计软件的二次开发,生成铁路模型三维索引文件,将设计成果快速批量集成到仿真场景。最后通过建立地形三角网和模型三角网并进行求交,完成铁路三维仿真场景的快速搭建。将上述方法应用到成昆铁路、海南东环高铁、沪昆铁路等线路的三维仿真场景建立,结果表明,采用的研究思路和技术方案先进易用、切实可行,为铁路信息化和科学化管理开辟了新途径,同时有助于推动铁路的建设发展。
[1] 韩飞.面向虚拟环境的三维地形生成方法[J].计算机工程,2010,36(19):261-262.
[2] 佘江峰,陈景广,程亮,等.三维地形场景并行渲染技术进展[J].武汉大学学报(信息科学版),2012,37(4):463-467.
[3] 石少华.铁路线路三维可视化建模研究[D].兰州:兰州交通大学,2014.
[4] 王金委,曾学贵,李家稳,等.铁路线路设计中三维可视化辅助设计系统研究[J].铁路航测,2002(3):11-14.
[5] 赵长胜.高斯投影坐标反算的迭代算法[J].测绘通报,2004(3):16-17.
[6] 邓兴升,汤仲安,花向红,等.椭球变换后的高斯投影正反算法[J].大地测量与地球动力学,2010,30(2):49-52.
[7] 何莉,易思蓉.铁路线路视景仿真中构造物三维模型库的研究[J].铁道勘察,2006(6):25-27.
[8] 张恒,朱军,徐柱,等.面向高速铁路的三维模型数据库管理与建模服务[J].计算机应用研究,2015(9):2 708-2 711.
[9] 朱颖,闵世平,代强玲.面向铁路行业三维场景快速构建一体化技术研究[J].铁道工程学报,2011(12):4-10.
[10] 张艺晶,杜守军,赵坤,等.Revit软件二次开发和项目上的应用研究[J].河北企业,2015(11):121-123.
赵亮亮:中国中铁二院工程集团有限责任公司,工程师,四川 成都,610031
卢文渊:四川省第二测绘地理信息工程院,助理工程师,四川 成都,610031
责任编辑 高红义
TP39
A
1672-061X(2016)03-0065-05