一种快速的三维地物模型构建方法

文档序号:10613734阅读:534来源:国知局
一种快速的三维地物模型构建方法
【专利摘要】本发明公开了一种快速的三维地物模型构建方法,包括如下步骤:1、获取地物的经纬度、高度数据,构建地物三维框架模型;2、在三维数字地球模型中提取地物的地理栅格数据和影像数据;3、生成地物顶面纹理二维影像图片;4、对三维地物模型顶面进行纹理覆盖。本发明有效地实现了三维场景中通过地表影像快速构建立体的三维模型。
【专利说明】
一种快速的三维地物模型构建方法
技术领域
[0001]本发明涉及计算机三维模型构建方法,具体地说是一种三维场景中地物模型的构建方法。
【背景技术】
[0002]三维数字城市是三维场景表现中一种重要的模型展现手段,其能真实的表现出地形、地貌以及街区与道路概况。但三维城市的构建一个复杂且庞大的过程,目前主要包括预先人工精细建模、无人机倾斜摄影并批量建模、根据矢量数据自动建模等方法,前两种方法制作成本高、效率低且软件适应性处理能力较弱,第三种方法在保证模型形象直观的基础上,具备软件处理能力较强、制作成本低的特点。
[0003]三维数字地球模型是常用的矢量数据,其将高分辨率的遥感影像覆盖全球,并通过建立覆盖全球的数字高程模型及矢量数据,建立地球景观模型。由于地球表面积非常大,三维数字地球的数据量特别巨大而且数据类型复杂,数据量随着分辨率的提高呈几何级数递增。通常将三维数字地球的数据从粗到细分层组织,每一层的数据又分割成小的数据块,常用的结构是四叉树结构。附图1是三维数字地球模型中地形细分示意图,第O层构建两棵四叉树,由本初子午线将地球分为两部分,分别作为两棵四叉树的根节点;第一层按地理区域的经玮度进行细分,分为四个相等的部分,每个部分称作地形瓦块;按同样的方法对每个地形瓦块再进行细分,这样到第η层将得到22n+1个瓦块。用这样的方法将地理区域栅格化,每个栅格,即每个瓦块由一个数据结构来表示,其包含如下信息:层行列号、标识号、经玮度范围,数据结构定义如图2所示。瓦块的层号表示的是三维数字地球的细分程度,即表示的是瓦块的精度,层号越高精度越高,网格也越细密。
[0004]除大量的地形数据外,三维数字地球模型还包括大量的影像数据。与地形数据相同,影像数据也采用四叉树结构分层存储,如图3所示。影像数据结构只包含以下几个信息:层号、行号、列号、具体的影像数据,即影像纹理。根据三维数字地球场景构建原理,影像数据理论上应该与瓦块一一对应,但是这样将会导致P级别以上的数据管理,且实用性不大,因此在实际工程中允许影像数据不完整,即某些瓦块对应的影像数据的纹理可能不存在,当瓦块的层行列号与影像数据的层行列号不相等时,即该节点的影像纹理不存在。当某节点的影像纹理不存在时,取其父节点中相应部分的纹理,如图4所示。
[0005]由于三维数字地球模型包括了海量的数据,根据这些海量数据来构建地物模型需要处理大量数据,影响了构建效率。

【发明内容】

[0006]发明目的:针对现有技术中存在的问题,本发明公开了一种快速构建三维地物模型的方法,该方法基于地物标绘的经玮度与高度信息、三维数字地球的地理栅格数据、地表高清影像数据,通过自动化的三维模型网格构建、多纹理拼接与裁剪等技术,快速的模拟出地理环境中建筑的立体效果。
[0007]技术方案:本发明公开了一种快速构建三维地物模型的方法,包括如下步骤:
[0008](I)获取地物的经玮度、高度数据,构建地物三维框架模型;
[0009](2)在三维数字地球模型中提取地物的地理栅格数据和影像数据,所述三维数字地球模型包括四叉树结构的地理栅格数据和与地理栅格数据对应的影像数据;
[0010](3)生成地物顶面纹理二维影像图片;
[0011](4)对三维地物模型顶面进行纹理覆盖。
[0012]作为一种优选,步骤(I)包括如下步骤:
[0013](101)获取地物的经玮度范围描述信息,包括轮廓边集合ContourList:
[0014]ContourList= {V_l,V_2,V_3,...,V_n};
[0015]其中V_i = {Lng,Lat ,Alt},V_i是地物轮廓边上第i个点,Lng是点V_i的经度,Lat是点V_i的玮度,Alt是点V_i的高度;
[0016](102)对ContourList中的点进行三角切分,构建三维地物的三角网络模型。
[0017]作为另一种优选,步骤(102)中三角切分采用Delaunay三角切分法。
[0018]有益效果:与现有技术相比,本发明公开的三维地物模型构建方法的优点在于:1、生成的三维地物模型能与地形地貌完整匹配,真实性较好;2、使用方便,支持注记标绘,对构建海量地物模型有较大的优势;3、在显示效果、图形拾取等方面与商业模型差异较小,但效率与内存占用有明显提高;4、人机交互性强,通过该方法创建地物模型时,通过鼠标获取地球上的经玮度、高度等信息很快捷;同时创建的地物模型在鼠标拾取方面与商业工具制作的模型是一致的;5、支持地物的经玮度轮廓为任意多边形,且允许每个轮廓点有不同的高度,从而具备构建任意形状建筑模型的能力。
【附图说明】
[0019]图1是本发明使用的三维数字地球模型地形细分示意图;
[0020]图2是地形瓦块数据结构;
[0021 ]图3是影像数据分层示意图;
[0022]图4是影像纹理子纹理继承父纹理的示意图;
[0023]图5是本发明构建三维地物模型的流程图;
[0024I图6是本发明的轮廓边示意图;
[0025]图7是本发明的二角网格不意图;
[0026]图8是进行纹理覆盖的地物模型示意图。
【具体实施方式】
[0027]下面结合附图和【具体实施方式】,进一步阐明本发明。
[0028]如图5所示,实现本发明的技术方案步骤如下:
[0029]步骤1、获取地物的经玮度、高度数据,构建地物三维框架模型。
[0030]首先,在场景中选择该建筑的轮廓,以经玮度的形式表示,其可以是任意形状的多边形。获取建筑物高度信息,生成三维模型,将建筑模型以立体的形式展现在场景中。地物模型的轮廓边信息ContourList,如式I所示:
[0031]ContourList= {V_l,V_2,V_3,…,V_n} (I)
[0032]其中V_i是地物轮廓边上第i个点,V_i = {Lng,Lat,Alt},Lng是点V_i的经度,Lat是点V_i的玮度,Alt是点V_i的高度。
[0033]在该步骤中,主要是建立立体的三维模型,与通过第三方工具制作的模型不同,本发明建立的三维模型以地心为原点,使用世界坐标系下的绝对坐标,其高度参考地理高程数据。由于在三维中,三个点可准确定义一个面,利用纹理寻址技术,即可将指定的纹理覆盖在表面。通过对模型顶面进行三角切分,形成一系列的三角形网格,如图7所示。
[0034]对空间中的点进行三角切分有多种方法,在本实施例中采用Delaunay三角切分法。Delaunay三角切分有最大化最小角的特点,其切分的结果是最接近规则化的三角网格,并且任意四点不能共圆。
[0035]步骤2、在三维数字地球模型中提取地物的地理栅格数据和影像数据。
[0036]首先,获取当前场景的渲染列表,该渲染列表是当前在屏幕范围内正在绘制的一系列地形瓦块集合,由不同精度的瓦块节点构成。遍历搜索出其中最精细层节点,也就是层号最大的瓦块节点。经过上述遍历搜索出的最精细层节点可能不完整包含模型的经玮度范围,因此需要进行纹理扩展与追溯。
[0037]纹理扩展步骤如下:
[0038](I)定义最精细层节点的层号为N,节点数量为X,计算其经玮度覆盖范围,如果该范围完整覆盖模型,则跳转到第(3)步;否则继续下一步;
[0039](2)向周边扩展,增加同层节点,实现最小全覆盖,获取其影像数据。
[0040]经过纹理扩展,得到了覆盖三维模型轮廓的最小瓦片节点集合。查看该最小瓦片节点集合的影像数据,如果有节点对应的影像纹理不存在,则表明其当前纹理是继承自父纹理,为避免纹理不一致,需要就当前所有节点的纹理追溯到同一层影像,使影像纹理的精度一致。纹理追溯的步骤如下:
[0041](I)遍历最小瓦块节点集合,查看集合中节点A1对应影像数据的影像纹理是否存在,如存在则将该节点启用,否则提取该节点的父节点Api ;
[0042](2)查看父节点Api对应影像数据的影像纹理是否存在,如存在,则剔除步骤(I)中的子节点Ai,并从Api对应的纹理中提取出Ai对应的纹理;如不存在,则继续提取Api的父节点Appi的信息,重复步骤(2),直至追溯到第O层;
[0043 ] (3)对最小瓦块节点集合中所有节点的纹理进行分析,依次向上追溯,直至其对应的影像纹理精度一致。
[0044]经过上述算法后,我们得到了最终的地形影像集合,该集合由若干个瓦块数据节点组成,以最小的数量覆盖了模型的经玮度范围,且其每个瓦块数据节点对应影像数据的影像纹理都存在,且其精度一致。
[0045]步骤3、生成三维地物模型顶面纹理二维影像图片。
[0046]由步骤2得到了覆盖三维模型的最小瓦块节点集合和集合中各节点的影像图片,这些图片是离散的。步骤3是对这些离散影像图片进行统一,生成最终的顶面二维影像,步骤如下:
[0047](I)遍历最小瓦块节点集合中所有节点,获取最大与最小行、列号,定义最大行号为RowMax,最小行号为RowMin,最大列号为ColMax,最小列号为ColMin ;
[0048](2)计算合并后图片的像素大小:[0049 ]像素宽度=(RowMax-RowM in+l)*Width;
[0050]像素高度=(Co IMax-Co IMin+l )*Height ;
[0051 ]其中Width是三维数字地球模型中影像数据对应的影像纹理的像素宽度,Height是三维数字地球模型中影像数据对应的影像纹理的像素高度。
[0052](3)创建一幅步骤(2)中计算的像素宽度和像素高度的原始图片,计算出最小瓦块节点集合中每个节点在此原始图片的对应坐标,用节点对应的影像纹理将原始图片各像素填充。
[0053](4)将生成的影像图片创建成纹理,最终生成的纹理如图8所示。
[0054]步骤4、对三维地物模型顶面进行纹理覆盖。
[0055]用步骤3得到的纹理来覆盖三维地物模型的顶面,使三维地物模型与地形地貌相匹配。计算三维地物模型顶面的包围盒,该包围盒的经玮度范围与纹理的经玮度范围一致。定义三维地物模型顶面上任意点P的经度坐标为Lng,玮度坐标为LaU包围盒最大玮度为MaxLat,最小玮度为MinLat,最大经度为MaxLng,最小经度为MinLng,则点P的纹理坐标为:
[0056]U方向纹理坐标=(Lng-MinLng)/(MaxLng-MinLng);
[0057]V方向纹理坐标=(MaxLat-Lat)/(MaxLat-MinLat);
[0058]根据三维地物模型顶面的二维纹理影像图片、三维地物模型顶面上任意点的纹理坐标,可以由显卡的三维底层渲染引擎输出三维立体模型并进行纹理填充。
【主权项】
1.一种三维地物模型构建方法,其特征在于,包括如下步骤: (1)获取地物的经玮度、高度数据,构建地物三维框架模型; (2)在三维数字地球模型中提取地物的地理栅格数据和影像数据,所述三维数字地球模型包括四叉树结构的地理栅格数据和与地理栅格数据对应的影像数据; (3)生成地物顶面纹理二维影像图片; (4)对三维地物模型顶面进行纹理覆盖。2.根据权利要求1所述的三维地物模型构建方法,其特征在于:所述步骤(I)包括如下步骤: (101)获取地物的经玮度范围描述信息,包括轮廓边集合ContourList:ContourList= {V_l,V_2,V_3,...,V_n}; 其中V_i = {Lng,Lat,Alt},V_i是地物轮廓边上第i个点,Lng是点V_i的经度,Lat是点V_i的玮度,Alt是点V_i的高度; (102)对ContourList中的点进行三角切分,构建三维地物的三角网络模型。3.根据权利要求2所述的三维地物模型构建方法,其特征在于:所述三角切分采用De Iaunay三角切分法。
【文档编号】G06T17/00GK105976426SQ201610271037
【公开日】2016年9月28日
【申请日】2016年4月27日
【发明人】李彭伟, 田振兴, 张小强, 张臻, 龙海英, 严逸
【申请人】中国电子科技集团公司第二十八研究所
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1