基于无人机影像自动恢复三维场景系统数据库的设计与实现
2017-03-30刘锟铭李永树郭加伟
刘锟铭,唐 敏,李永树,李 政,郭加伟
(1.西南交通大学 地球科学与环境工程学院,四川 成都 610031;2.中铁二院工程集团有限责任公司,四川 成都 610031)
基于无人机影像自动恢复三维场景系统数据库的设计与实现
刘锟铭1,唐 敏2,李永树1,李 政1,郭加伟1
(1.西南交通大学 地球科学与环境工程学院,四川 成都 610031;2.中铁二院工程集团有限责任公司,四川 成都 610031)
无人机影像自动恢复三维场景所需的数据种类多、数据量大、结构复杂,如何高效一体化组织管理数据成为恢复三维场景系统的关键。从数据库的概念模型、逻辑模型和物理模型出发,开发一套高效的三维场景数据库管理系统,根据地物的特点对地物模型设置点位坐标和方位坐标,并设计出相应的数据存储表结构,有效解决地物模型自动精确置入地形模型的问题。最后通过海南省某条铁路线段数据进行验证,实验结果表明该数据库的有效性。
三维场景;数据库;建模;无人机影像
无人机遥感系统具有成本低、机动灵活、携带方便、适宜高危地区勘测的特点,对载人飞机、航空遥感和卫星遥感进行有效的补充,具有广泛的市场开发前景[1-2]。随着立体视觉三维重建技术的发展,人们对测量精度、测量范围、操作复杂度、经济效益及自动化程度等方面提出更高的要求。如何结合序列无人机影像,建立一套自动高效的精细化三维场景系统具有重要而深远的意义。由于无人机影像数量级达到TB级以上,生产的产品差异较大,而且地物种类繁多,大小各异,每个地物要求精细化建模程度也不一样。因此造成基于无人机影像恢复三维场景的数据具有海量性和复杂性等特点,这些数据特征影响数据的存储与管理,因此良好的数据库设计是高效组织与管理数据和实现自动恢复三维场景的关键。
目前三维建模数据库大部分都针对特定领域的数据,其通用性与扩展性不强[3]。李强等运用IDL交互式数据语言实现了数据库中图像的查询、检索、显示、分析等[4];袁伟韬等以Oracel数据库为平台,提出利用Spatial结合传统数据库索引B树和hash结构,以及基于线性四叉树空间数据库的索引机制对点云数据进行组织管理[5]。张为等通过界址模型制作、建筑模型制作和数据检查及入库等手段,来建设三维地籍数据库[6]。许平等对我国林地现状和布局的空间数据和矢量数据按照统一规范和标准进行采集、组织和管理,从而完成林地“一张图”数据库的建设[7]。
本文根据DOM、DEM、点云、纹理、三维模型、地形模型等数据的特性,对三维场景系统数据库从概念模型、逻辑模型和物理模型进行设计[8],结合SQLServer数据库开发出一套高效一体化的自动三维场景数据库系统,从而实现了数据的有效存储与管理,提高三维场景系统的运行效率,并对恢复的三维场景进行可视化。
1 数据库的总体设计与实现
1.1 概念模型
针对无人机影像自动恢复三维场景系统数据库的特点,从概念上建立对三维场景系统数据库的表达模型。数据库通过专题层、表达层和几何层3个层次进行完整的表达,图1为数据库的总体设计思想,其中,▽表示对象之间的继承关系,◇表示组成关系,“1 1..*”表示一对多关系。
图1 三维场景系统数据库概念模型
在专题层,地形和地物同构成系统数据库的专题内容。三维地形建模是恢复三维场景的基础性工作,主要通过DOM叠加到DEM上实现地形的可视化。在三维场景系统中,需要表达的地物主要包括:建筑物、道路网络和其他设施。根据需求将地物类别分成简单地物与复杂地物,简单地物利用参数化建模方法批量生成并存储,复杂地物由于表达较精细,继承性和可复用性较弱,需要用3D MAX三维建模软件去构建。在表达层,由无人机影像构建好的三维模型组成三维对象,并通过LOD对象实现三维对象的多尺度表达。在几何层,面要素的模型主要有:格网结构(Grid)、边界表示(BR)法、不规则三角网(TIN)等,体要素的模型主要有:3D栅格(array)、四面体格网(TEN)、八叉树(Octree)、结构实体几何法(CSG)等,本文通过点、线、面、体等几何要素实现三维对象的表达。
1.2 逻辑模型设计
为了提高无人机影像自动恢复三维场景系统运行效率,实现系统数据库的有序组织,需要对数据库进行逻辑模型设计。图2为系统数据库的逻辑模型,该模型的设计按照存储数据类型可以分成地形数据库、纹理数据库和三维模型数据库。地形数据库由数字高程模型与DOM组成,其中,DOM不仅可以作为地形模型和地物模型顶面的纹理,还可以用来观察地物的顶面,分析地物的几何特征,为后续的建模提供重要的模型框架。
图2 三维场景系统数据库逻辑模型
在模型中添加纹理使模型更加形象,同时增加模型的逼真程度。三维场景里的地物大小各异,详尽不同,如果所有地物模型都采用实地采集的纹理将会增加系统的冗余度,降低系统运行效率,同时也没有实际意义。并且每个地物模型的重要程度和需要表达的详尽程度都不一样,因此一些重要地物采用实地采集的纹理,一般地物调用公共纹理库的纹理,这样可以最大程度地减少资源的投入。纹理数据的来源包括无人机影像处理得到的数字正射影像、野外数码相机拍摄的纹理以及公共纹理库的纹理。
三维模型数据库是三维场景系统数据库的核心,因为地物模型的建模、存储、管理和展示都与三维模型数据库有关,并且三维模型数据库设计直接影响到系统的运行效率。地物的重要程度和需要表达的详尽程度除了通过纹理还可以通过建模的方式来控制。简单模型的构建采用参数化建模方法,这种方法继承性与可复用性较高,可以实现批量建模。复杂模型采用专业的建模软件构建,构建的三维模型继承性与可复用性都比较差,适合构建复杂地物。三维场景需要恢复的地物包括:建筑物、道路网络和其他设施,建筑物按照功能分成居住建筑、公共建筑、工业建筑和农业建筑等;道路网络按照功能分成桥梁、隧道、涵洞、铁路和交通灯等;其他设施包括植被、雕塑等等。
1.3 物理模型设计
针对地形数据库、纹理数据库和三维模型数据库在数据存储环境及数据管理上的差异,分别设计不同的物理存储方式。地形数据库主要由DEM数据集和DOM数据集组成,由于DEM和DOM数据存储量巨大,需将DEM数据集和DOM数据集按照“金字塔分层+均匀分块”[9-11]的技术进行存储管理,并建立明确的映射关系,地形的三维重建正是将多个DEM金字塔层数据集和多个DOM金字塔层数据集按照建立好的映射关系进行叠加显示。
纹理数据库存储的主要是模型的纹理,但是地物种类繁多、差异较大的特性导致纹理数据库数据量巨大,本文采用纹理名称文件与纹理文件映射的方法来管理纹理数据,可以实现属性信息和位置信息等多种查询。贴图纹理的命名要求唯一性,采用“地区_地物类别_地物名称_地物具体面”的方式命名,如“成都_建筑物_人字形房屋_左侧面”。
三维模型数据库的设计包括简单模型的构建、存储与复杂模型的修改、存储。三维场景系统采用DirectX作为图形渲染API,模型文件格式采用微软常用的“.X文件”格式,即模型纹理文件与模型文件分开存储,这样不但可以减少资源的使用,还能提高模型渲染效率。为了提高模型管理,查询和检索的效率,对模型的存储进行了设计,其中ID为模型编号,Name为模型名称,Type为模型种类,Properly为模型属性描述,Model为模型文件,Texture为映射到纹理数据库的路径。
2 三维建模系统数据库关键技术
2.1 简单模型的构建与表结构设计
简单地物采用参数化建模方法批量生成并存储,此处采用基于圆柱投影的参数化建模方法[12]。基于柱面投影[13]的参数化建模是根据点云数据和DOM获取地物点参数信息,通过地物点的参数信息反解地物的三维空间数据,将三维空间数据投影到平面上进行Delaunay三角形平面构网,利用平面上的拓扑信息映射到三维空间,最终达到建模目的。为了使简单地物能够批量生成并自动精确置入地形模型中,需要对构建地物模型的参数数据进行表结构存储设计。
构建好的地物模型如果不进行方位调整,置入地形模型中的位置是随机的。如图3所示,地物B为置入地形模型中的随机位置,它是通过Lenght,Width,Height,a(Point_1)等参数构建的地物模型,它没有进行方位坐标的设计,地物A为地形模型中的真实位置,a,b,c与a′,b′,c′分别为地物A与地物B对应的坐标点。为了使构建好的地物能够自动精确置入地形模型中,需要增加一个坐标方位点进行控制,如图3点b即为选择好的坐标方位点,利用式(1)求出点c′坐标,同理,地物其他点坐标根据参数求出。此时,忽略影像误差和量测误差的影响,b点c点将会与b′点c′点重合,即地物可以精确置入地形模型中。
图3 地物方位坐标的设计
(1)
根据上述原则,对人字形房屋模型的构建进行表结构设计,其中ID表示模型的编号,Point_1,Length,Width,Height,Slant_height为模型构建参数,Point_2为确定房屋方位的点坐标,Texture为映射到纹理数据库的路径。将人字形房屋的建模数据录入数据库便可批量生产模型,并可根据点位坐标与方位坐标自动精确置入地形模型中。
2.2 复杂地物模型置入场景的表结构设计
以3DMAX为平台进行复杂地物三维模型的构建,导入数据库进行坐标方位设计,使模型自动精准地置入地形模型中。在3DMAX构建模型时设定以模型铅垂线上的点为建模坐标的原点,沿模型任意一角点方向为建模坐标系的y轴,形成右手坐标系,这样在调整模型方位时可以避免平移操作,减少计算量。通过DOM或实地量测得到该原点和角点对应的大地坐标,通过此步骤可以解决不可复用性地物的模型置入问题,如地方性火车站、标志性建筑物等。具有可复用性且不对称地物的模型需要进一步确定模型方位,如接触网杆、路灯等。图4(a)为铁路两旁接触网杆的正确位置,图4(b),(c),(d)为可能出现的错误位置,置入场景后还需判断模型是否旋转180°。
图4 接触网杆
对于这类具有可复用性且不对称的地物模型,在量测原点和角点对应的大地坐标时,需额外量测从原点沿角点方向的任意点作为模型是否旋转的判断点。假定原点对应的大地坐标为Point_1,角点对应的大地坐标为Point_2,判断点对应的大地坐标为Point_3,对应的判断参数为Whril。如果式(2)成立,Whril为0,即不旋转;否则Whril为1,旋转。基于上述原则,设计出如表1的复杂地物模型置入场景的表结构。其中ID为地物编号,Type为地物类型,Point_1、Point_2为地物坐标,Point_3为判断点,为空值,即不进行判断,Texture为模型纹理,Whril为判断参数。
(2)
表1 复杂地物模型置入场景的表结构设计
3 数据入库与读取及三维场景显示
3.1 数据整理与编辑入库
以某条铁路段为例,铁路全长51.9 km,从铁路中线向两旁各延伸500 m区域进行三维场景的恢复。实验数据为2015年拍摄的序列无人机影像,其分辨率为0.02 m,经过处理得到DOM,DEM和点云数据,数据大小分别为258 G,7.48 G和25.8 G。纹理数据为后期野外采集的影像和部分公共纹理库的纹理,总数约为16 000张。
将采集的纹理编辑整理录入纹理数据库,同时将DOM,DEM数据生成金字塔文件并均匀分割成8块区域录入地形数据库。对于简单地物模型,通过点云数据量测地物特征点坐标来获取模型参数,并将参数录入三维模型数据库,利用参数化建模方法批量构建地物模型并存储。对于复杂地物模型,用3DMAX实现模型的构建,并将模型编辑整理录入三维模型数据库。
3.2 数据库的批量读取
三维场景的恢复需要把地物模型置入地形模型中,读取相应地区的DEM,用纹理映射技术将DOM与地形叠加显示生成地形模型,再读取模型位置表即可将模型批量置入。复杂地物模型按照表1数据结构生成相应的模型位置表,如图5为部分地物模型位置表,通过Point_1、Point_2和Point_3字段就可将模型自动精确置入地形模型中。利用参数化建模方法构建的地物模型可直接置入地形模型中。
图5 地物模型位置表
3.3 三维场景显示
通过三维场景数据库系统将上述数据采用SQLServer数据库管理系统编辑入库,实现数据的一体化管理与建库,总共恢复地物模型为8 000个,将DOM与DEM叠加得到单位为700×1 000 m2的8个地形模型。如图6(a)为单位区域的DOM,图6(b)为对应恢复的单位区域三维场景。如图7(a)为单个地物的DOM,图7(b)为对应恢复的公路桥梁、火车站广场与火车站、人字形房屋和栏杆,通过图7(b)可以看出,除去影像处理误差和量测误差的影响,地物模型置入场景中的位置与DOM基本叠合。
图6 DOM与恢复的三维场景对比
图7 DOM与模型置入位置对比
4 结 论
本文对如何利用无人机影像自动恢复三维场景系统数据库进行详细分析,对系统数据库的概念模型、逻辑模型、物理模型进行设计,实现数据存储、管理的一体化。根据地物的复杂程度,运用基于圆柱投影的参数化建模方法和3D MAX建模方法对地物进行建模,同时为地物模型的存储设计相应的表结构。采用参数化建模的规则和设定建模世界坐标系的方法,对点位坐标与方位坐标进行设计,使地物模型能够自动精确的批量化置入地形模型中,实现基于无人机影像自动恢复三维场景系数数据库的设计,可以实现复杂场景中三维场景的快速重建。并结合海南省某条铁路线段进行恢复三维场景的实验,验证三维场景数据库系统的有效性。
[1] 吕书强,晏磊,张兵,等. 无人机遥感系统的集成与飞行试验研究[J]. 测绘科学,2007,31(1):84-86.
[2] 晏磊,吕书强,赵红颖,等. 无人机航空遥感系统关键技术研究[J]. 武汉大学学报(工学版),2004(6):67-70.
[3] 郑坤,贠新莉,刘修国,等. 基于规则库的三维空间数据模型[J]. 中国地质大学学报(地球科学),2010(3):369-374.
[4] 李强. 基于IDL遥感图像数据库的设计与实现[D].兰州:兰州大学,2008:1-8.
[5] 袁伟韬. 基于三维激光扫描数据的数据库建库与管理[D].昆明:昆明理工大学,2014:10.
[6] 张为. 基于Arcgis平台的三维地籍数据库系统的设计与实现[D].长春:吉林大学,2015:1-18.
[7] 许等平,李晖,庞丽杰,等. 全国林地“一张图”数据库建设及扩展应用[J]. 林业资源管理,2015(5):36-43.
[8] 刘刚,吴冲龙,何珍文,等. 地上下一体化的三维空间数据库模型设计与应用[J]. 中国地质大学学报(地球科学),2011(2):367-374.
[9] 朱庆,李晓明,张叶廷,等. 一种高效的三维GIS数据库引擎设计与实现[J]. 武汉大学学报(信息科学版),2011(2):127-132.
[10] 吕磊,单宝麟,闫松.基于三维GIS的地下电力管线管理系统的设计与实现[J].测绘与空间地理信息,2016,39(3):95-98.
[11] 周敏,范冲.基于UNITY3D的虚拟测量实验设计与初步实现[J].测绘与空间地理信息,2016,39(1):179-181.
[12] 刘锟铭,李永树,唐敏,等.铁路沿线地物参数化建模方法研究[J].测绘科学技术学报,2015(6):75-80.
[13] 李厚朴,边少锋.不同变形性质正轴圆柱投影和正轴圆锥投影间的直接变换[J]. 测绘学报,2012,41(4):536-542.
[责任编辑:李铭娜]
Design and realization of UAV image automatically recovering 3D scene system database
LIU Kunming1, TANG Min2, LI Yongshu1, LI Zheng1, GUO Jiawei1
(1.School of Earth Sciences and Environmental Engineering,Southwest Jiaotong University, Chengdu 610031,China;2.China Railway No. Two Bureau Engineering Group Co.Ltd,Chengdu 610031,China)
UAV image can automatically recover 3D scene, which needs a large variety and number of data, and complicated structure, And to organize and manage data in hige efficience and integration becomes the key to recover the 3D scene system. This paper, starting from analysis of concept model,logical model and physical model of database, designs an efficient management system for 3D scene database. According to the characteristics of ground object, it sets point coordinate and azimuth coordinate of terrain model, and devises a corresponding data storage table structure. By this way, it can help ground object model imbedded into terrain model automatically and accurately. Finally the data in some railway of Hainan Province are used to verify the validity of this database.
3D scene; database; modeling; UAV image
引用著录:刘锟铭,唐敏,李永树,等.基于无人机影像自动恢复三维场景系统数据库的设计与实现[J].测绘工程,2017,26(6):60-65.
10.19349/j.cnki.issn1006-7949.2017.06.011
2016-05-23;
2016-06-28
国家“十二五”科技支撑计划课题(2014BAL01B04);四川省教育厅自然科学项目(15ZB0453);中央高校基本科研业务费专项资金资助(2682013ZT26);国土资源部地学空间信息技术重点实验室开放基金支持(KLGSIT2015-03)
刘锟铭(1992-),男,硕士研究生.
P208
A
1006-7949(2017)06-0060-06