一种匹配真实三维环境的动态水域可视化方法及系统的制作方法

文档序号:6515694阅读:386来源:国知局
一种匹配真实三维环境的动态水域可视化方法及系统的制作方法
【专利摘要】本发明提供一种匹配真实三维环境的动态水域可视化方法,该方法包括:步骤1,构建三维环境的基础地形,所述基础地形包括:地面的高程数据以及对应匹配的影像数据;步骤2,依据三维环境的基础地形设置水波面所覆盖的形状,构建符合基础地形变化的水域面;步骤3,按照水域面限定的各个顶点信息和三角面片信息控制、更新水波面所覆盖的形状;步骤4,将水域面的各个顶点按照时间序列更新对应的位置点,同时将水域面对应的各个三角面片实时更新面片颜色,并反映出光照的反射与折射现象,获得的动态水域信息;步骤5,将动态水域信息呈现给用户。本发明能实现在任意球体三维真实环境下绘制既符合流域形态且遵循地形起伏变化的三维动态水面。
【专利说明】一种匹配真实三维环境的动态水域可视化方法及系统
【技术领域】
[0001]本发明属于水体可视化领域,尤其涉及匹配真实三维环境的动态水域可视化方法及系统。
【背景技术】
[0002]随着三维数字化城市与数字化地球的全面扩展,人们开始不仅仅是研究三维复杂陆地环境的表达,同时也开展了对三维水体环境的表达。水体可视化技术已经广泛应用于军事演练、动漫游戏、数字规划、水利监测等各个领域。
[0003]水体可视化的核心是水波面的模拟。水波面的构建包含两个部分:一是水波面覆盖范围的表达;二是水面波纹的表达。对于水波面覆盖范围的表达一般参考的是平面坐标下任意矩形范围的表达或椭球体(球体)坐标下全域球面范围的表达;而对于水面波纹的表达一般借助于水波模型进行模拟,水波模型主要分为两类:一类是几何建模方法,通常是在一个平面上根据每个象素法向量进行搅动形成凹凸纹理来模拟水面波动的状态。二类是形象得变更高度场的水波模型,如Tessendorf模型利用快速傅立叶变换函数变更高度场的频谱域转化到空间域的方法来模拟水体表面的动态变化;Peachey模型采用正弦函数和二次函数线性组合的高度场算法模拟波动的水面等,这类模型相对于几何模型的仿真效果要逼真的多。
[0004]如今,基于变更高度场的水波模型已经可以表达全域范围内的球面或任意矩形的平面。但是此类水波模型在模拟对应的水波范围时,因为自定义的水波面初始高程是固定值,且水波范围一般设置为横纵面四点的管理或是全球球面的管理,导致无法正确的模拟符合地形起伏变化的水流路径。这样的模拟会出现的两类问题包括水流的流动区域因为地形高程过高而被掩盖以及出现非水流流域范围的水流聚集现象,整体或多或少的失真。为了使水波模型绘制出符合自身三维系统的地形高程起伏变化,且不出现异地水流聚集现象,需要解决两个关键问题:一是构建的水波面覆盖范围应当限定在流域可见范围内;二是水波面任意点的高程值应当大于或等于实际三维系统中所对应地形位置点的高程值。综上所述其关键问题是如何在任意真实三维环境下绘制既符合流域形态且遵循地形起伏变化的三维动态水面。

【发明内容】

[0005]为解决上述问题,本发明提供一种匹配真实三维环境的动态水域可视化方法及装置,该方法及装置借助Tessendorf水波模型实现在任意球体三维真实环境下绘制既符合流域形态且遵循地形起伏变化的三维动态水面。
[0006]本发明的匹配真实三维环境的动态水域可视化方法,包括:
[0007]步骤1,构建三维环境的基础地形,所述基础地形包括:地面的高程数据以及对应匹配的影像数据;
[0008]步骤2,依据所述三维环境的基础地形设置水波面所覆盖的形状,构建符合基础地形变化的水域面;
[0009]步骤3,按照所述水域面限定的各个顶点信息和三角面片信息控制、更新所述水波面所覆盖的形状;
[0010]步骤4,将所述水域面的各个顶点按照时间序列更新对应的位置点,同时将所述水域面对应的各个三角面片实时更新面片颜色,并反映出光照的反射与折射现象,获得的动态水域信息;
[0011]步骤5,将所述动态水域信息呈现给用户;
[0012]进一步的,所述步骤2包括:
[0013]步骤21,依据所述高程数据插值获取水域面边界的高程值,提取所述水域面的边界线;
[0014]步骤22,依据所述高程值插值的水域边界线高程点,获得水域面所覆盖的数字高程数据;
[0015]步骤23,使用扫描射线方法,获取所述数字高程数据中的每个格网的顶点位置,根据所述顶点位置绘制三角网,并记录三角网的绘制方式,构建三角网的索引列表,根据该索弓I列表构建符合基础地形变化的水域面。
[0016]进一步的,所述步骤21包括:
[0017]步骤211,对绘制的边界线段进行固定分段,获取细节线段,进行的固定分段是依据自定义划分的每条线段数量获取平均的球面夹角进行的分裂;
[0018]步骤212,对所述的细节线段进行细节划分,直到遍历的细节线段之间的弧度值小于或等于I弧度;
[0019]步骤213,判读各个线段是否与地形数据相交,如果没有交集则直接输出水域面边界的位置点(包括高程值),如果存在交集需要做夹角中间值切断,直到没有交集后输出水域面边界的位置点(包括高程值)。
[0020]进一步的,所述步骤22包括
[0021]步骤221,设置位置点的缓冲值,其要求是按照向内陆拓展的过程,本发明中的缓冲值为10米;
[0022]步骤222,设置缓冲延续点的高程值低于实际地形数据值,缓冲延续点的高程值可以为距离最近位置点的高程值;
[0023]步骤223,将所有的位置点借助反距离插值方法生成不同位置高程值,且插值要参考覆盖水域的对侧位置点;
[0024]步骤224,将插值的信息生成标准的数字高程数据。
[0025]本发明还提供一种匹配真实三维环境的动态水域可视化装置,包括:
[0026]基础地形构建单元,构建三维环境的基础地形,所述基础地形包括:地面的高程数据以及对应匹配的影像数据;
[0027]水域面构建单元,依据所述三维环境的基础地形设置水波面所覆盖的形状,构建符合基础地形变化的水域面;
[0028]更新单元,按照所述水域面限定的各个顶点信息和三角面片信息控制、更新所述水波面所覆盖的形状;
[0029]获取单元,将所述水域面的各个顶点按照时间序列更新对应的位置点,同时将所述水域面对应的各个三角面片实时更新面片颜色,并反映出光照的反射与折射现象,获得的动态水域信息;
[0030]呈现单元,将所述动态水域信息呈现给用户;
[0031]进一步的,所述水域面构建单元包括:
[0032]插值单元,依据所述高程数据插值获取水域面边界的高程值,提取所述水域面的边界线;
[0033]数字高程数据获得单元,依据所述高程值的水域边界线插值高程点,获得水域面所覆盖的数字高程数据;
[0034]处理单元,使用扫描射线方法,获取所述数字高程数据中的每个格网的顶点位置,并记录三角网的绘制方式,构建三角网的索引列表,根据该索引列表构建符合基础地形变化的水域面。
[0035]进一步的,所述插值单元包括:
[0036]分段单元,对绘制的边界线段进行固定分段,获取细节线段,进行的固定分段是依据自定义划分的每条线段数量获取平均的球面夹角进行的分裂;
[0037]细划单元,对所述的细节线段进行细节划分,直到遍历的细节线段之间的弧度值小于或等于I弧度;
[0038]判读处理单元,判读各个线段是否与地形数据相交,如果没有交集则直接输出水域面边界的位置点(包括高程值),如果存在交集需要做夹角中间值切断,直到没有交集后输出水域面边界的位置点(包括高程值)。
[0039]进一步的,所述数字高程数据获得单元包括:
[0040]第一设置单元,设置位置点的缓冲范围,其要求是按照向内陆拓展的过程;
[0041]第二设置单元,设置缓冲延续点的高程值低于实际地形数据值,缓冲延续点的高程值可以为距离最近位置点的高程值;
[0042]覆盖单元,将所有的位置点借助反距离插值方法生成不同位置高程值,且插值点的参考范围覆盖水域的对侧位置点;
[0043]生成单元,将插值的信息生成标准的数字高程数据。
[0044]本发明的有益效果在于,借助Tessendorf水波模型实现在任意球体三维真实环境下绘制既符合流域形态且遵循地形起伏变化的三维动态水面。
【专利附图】

【附图说明】
[0045]图1为本发明的匹配真实三维环境的动态水域可视化方法流程图;
[0046]图2为本发明的设置的两点自动生成的40个边界高程点示意图;
[0047]图3为本发明的依据两侧不同的缓冲延续点生成的数字高程数据示意图;
[0048]图4为本发明的提取的三角网所构建的水域面示意图。
【具体实施方式】
[0049]图1为本发明的匹配真实三维环境的动态水域可视化方法流程图。如图1所示,本发明的匹配真实三维环境的动态水域可视化方法,包括:
[0050]步骤1,构建三维环境的基础地形,所述基础地形包括:地面的高程数据以及对应匹配的影像数据;
[0051]步骤2,依据所述三维环境的基础地形设置水波面所覆盖的形状,构建符合基础地形变化的水域面;
[0052]步骤3,按照所述水域面限定的各个顶点信息和三角面片信息控制、更新所述水波面所覆盖的形状;
[0053]步骤4,利用GPU(图形处理器)将所述水域面的各个顶点按照时间序列更新对应的位置点(位置点的更新是依托快速傅立叶变换函数计算出来),同时将所述水域面对应的各个三角面片实时更新面片颜色,并反映出光照的反射与折射现象,获得的动态水域信息;
[0054]步骤5,将所述动态水域信息呈现给用户;
[0055]进一步的,所述步骤2包括:
[0056]步骤21,依据所述高程数据插值获取水域面边界的高程值,提取所述水域面的边界线;
[0057]步骤22,依据所述高程值插值的水域边界线高程点,获得水域面所覆盖的数字高程数据;
[0058]步骤23,使用扫描射线方法,获取所述数字高程数据中的每个格网的顶点位置,并记录三角网的绘制方式,构建三角网的索引列表,根据该索引列表构建符合基础地形变化的水域面。
[0059]步骤21与23的实施基于VC++编写,分别实现水域边界线提取和符合地形变化的水域面任意水面形状的构建。步骤22实施基于ArcGIS应用,获取出对应水域范围内的高程插值信息。通过上述方法,不但脱离基础地形数据高精度的需求,而且能够模拟出符合地形高程起伏变化的任意形状水体。为各类水域特征的信息提供有效地处理方式,实现水体高效且合理的表达过程。
[0060]进一步的,所述步骤21包括:
[0061]步骤211,对绘制的边界线段进行固定分段,获取细节线段,进行的固定分段是依据自定义划分的每条线段数量获取平均的球面夹角进行的分裂。
[0062]步骤212,对所述的细节线段进行细节划分,直到遍历的细节线段之间的弧度值小于或等于I弧度。
[0063]步骤213,判读各个线段是否与地形数据相交,如果没有交集则直接输出水域面边界的位置点(包括高程值),如果存在交集需要做夹角中间值切断,直到没有交集后输出水域面边界的位置点(包括高程值)。
[0064]一实施例是:获取绘制的一条线划数据,包括组织该条线划数据的各个线段的起点与终点坐标内容。判读获取的各个线段后,是否需要按照定制打断的个数再次更新分裂,如果已经定制线段的分裂个数,直接粗略的先对每条线段依据两点之间的球面弧度夹角方式进行平均分裂、分段插值,获得更加细化的线段分段列表,包括细分后的线段列表和线段起终点位置内容。判读对已经定制打断的个数而生成较为细化的分裂数据后,依据细节分割的阈值范围(通常设定为I弧度),如果遍历的线段之间的夹角弧度值小于I弧度,则跳过;反之需要再次以夹角中间值的方式分割位置点,同时更新对应的起终点,直到满足两点连线之间的夹角是符合分割阈值之内的。获取判读分割阈值以内的线段顶点的正确高程值。借助顶点位置经过原点(0,0,0)的延长线(一般其延长线的长度为椭球体长半轴的一半)与地球交点作为该顶点的高程值。判读各个线段是否与地形数据相交,如果相交,需要按照取得两点夹角的中间点作为打断点,再次分割线段,循环处理,直到取得出现无法分割的列表为止。获取对应的线段列表的顶点位置,包括经纬度坐标和高程值内容。如图2所示,图2为本发明的设置的两点自动生成的40个边界高程点示意图。
[0065]进一步的,所述步骤22包括
[0066]步骤221,设置位置点的缓冲范围,其要求是按照向内陆拓展的过程。
[0067]步骤222,设置缓冲延续点的高程值低于实际地形数据值,缓冲延续点的高程值为距离最近位置点的高程值;此过程中延续点的高程值可以为距离最近位置点的高程值。
[0068]步骤223,将所有的位置点借助反距离插值方法生成不同位置高程值,且插值点的参考范围覆盖水域的对侧位置点,此过程需要保证插值点的参考范围覆盖水域的对侧位置点,这样的做法能够确保水域高程变化是符合一定倾斜的。如图3所示,图3为本发明的依据两侧不同的缓冲延续点生成的数字高程数据示意图。
[0069]步骤224,将插值的信息生成标准的数字高程数据。(*.1mg格式),便于提取内部水域的各个顶点与三角面片。注意对非流域范围内的位置点高程设置一个标识值(如-9999),保证后续检索只提取水面形态对应的三角网。如图4所示,图4为本发明的提取的三角网所构建的水域面示意图。
[0070]本发明还提供一种匹配真实三维环境的动态水域可视化装置,包括:
[0071]基础地形构建单元,构建三维环境的基础地形,所述基础地形包括:地面的高程数据以及对应匹配的影像数据;
[0072]水域面构建单元,依据所述三维环境的基础地形设置水波面所覆盖的形状,构建符合基础地形变化的水域面;
[0073]更新单元,按照所述水域面限定的各个顶点信息和三角面片信息控制、更新所述水波面所覆盖的形状;
[0074]获取单元,将所述水域面的各个顶点按照时间序列更新对应的位置点,同时将所述水域面对应的各个三角面片实时更新面片颜色,并反映出光照的反射与折射现象,获得的动态水域信息;
[0075]呈现单元,将所述动态水域信息呈现给用户;
[0076]进一步的,所述水域面构建单元包括:
[0077]插值单元,依据所述高程数据插值获取水域面边界的高程值,提取所述水域面的边界线;
[0078]数字高程数据获得单元,依据所述高程值的水域边界线插值高程点,获得水域面所覆盖的数字高程数据;
[0079]处理单元,使用扫描射线方法,获取所述数字高程数据中的每个格网的顶点位置,并记录三角网的绘制方式,构建三角网的索引列表,根据该索引列表构建符合基础地形变化的水域面。
[0080]进一步的,所述插值单元包括:
[0081]分段单元,对绘制的边界线段进行固定分段,获取细节线段,进行的固定分段是依据自定义划分的每条线段数量获取平均的球面夹角进行的分裂;[0082]细划单元,对所述的细节线段进行细节划分,直到遍历的细节线段之间的弧度值小于或等于I弧度;
[0083]判读处理单元,判读各个线段是否与地形数据相交,如果没有交集则直接输出水域面边界的位置点(包括高程值),如果存在交集需要做夹角中间值切断,直到没有交集后输出水域面边界的位置点(包括高程值)。
[0084]进一步的,所述数字高程数据获得单元包括:
[0085]第一设置单元,设置位置点的缓冲范围,其要求是按照向内陆拓展的过程;
[0086]第二设置单元,设置缓冲延续点的高程值低于实际地形数据值,缓冲延续点的高程值可以为距离最近位置点的高程值;
[0087]覆盖单元,将所有的位置点借助反距离插值方法生成不同位置高程值,且插值点的参考范围覆盖水域的对侧位置点;
[0088]生成单元,将插值的信息生成标准的数字高程数据。
[0089]当然,本发明还可有其他多种实施例,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员当可根据本发明作出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。
【权利要求】
1.一种匹配真实三维环境的动态水域可视化方法,其特征在于,包括: 步骤1,构建三维环境的基础地形,所述基础地形包括:地面的高程数据以及对应匹配的影像数据; 步骤2,依据所述三维环境的基础地形设置水波面所覆盖的形状,构建符合基础地形变化的水域面; 步骤3,按照所述水域面限定的各个顶点信息和三角面片信息控制、更新所述水波面所覆盖的形状; 步骤4,将所述水域面的各个顶点按照时间序列更新对应的位置点,同时将所述水域面对应的各个三角面片实时更新面片颜色,并反映出光照的反射与折射现象,获得的动态水域信息; 步骤5,将所述动态水域信息呈现给用户; 进一步的,所述步骤2包括: 步骤21,依据所述高程数据插值获取水域面边界的高程值,提取所述水域面的边界线.步骤22,依据所述高程值插值的水域边界线高程点,获得水域面所覆盖的数字高程数 据; 步骤23,使用扫描射线方法,获取所述数字高程数据中的每个格网的顶点位置,根据所述顶点位置绘制三角网,并记录三角网的绘制方式,构建三角网的索引列表,根据该索引列表构建符合基础地形变化的水域面。
2.如权利要求1所述的匹配真实三维环境的动态水域可视化方法,其特征在于,所述步骤21包括: 步骤211,对绘制的边界线段进行固定分段,获取细节线段,进行的固定分段是依据自定义划分的每条线段数量获取平均的球面夹角进行的分裂; 步骤212,对所述的细节线段进行细节划分,直到遍历的细节线段之间的弧度值小于或等于I弧度; 步骤213,判读各个线段是否与地形数据相交,如果没有交集则直接输出水域面边界的位置点,如果存在交集需要做球面夹角中间值的切断,直到没有交集后输出水域面边界的位置点。
3.如权利要求1所述的匹配真实三维环境的动态水域可视化方法,其特征在于,所述步骤22包括 步骤221,设置位置点的缓冲值,其设置要求是按照向内陆拓展的过程; 步骤222,设置缓冲延续点的高程值低于实际地形数据值,缓冲延续点的高程值为距离最近位置点的高程值; 步骤223,将所有的位置点借助反距离插值方法生成不同位置高程值,且插值要参考覆盖水域的对侧位置点; 步骤224,将插值的信息生成标准的数字高程数据。
4.一种匹配真实三维环境的动态水域可视化装置,其特征在于,包括: 基础地形构建单元,构建三维环境的基础地形,所述基础地形包括:地面的高程数据以及对应匹配的影像数据;水域面构建单元,依据所述三维环境的基础地形设置水波面所覆盖的形状,构建符合基础地形变化的水域面; 更新单元,按照所述水域面限定的各个顶点信息和三角面片信息控制、更新所述水波面所覆盖的形状; 获取单元,将所述水域面的各个顶点按照时间序列更新对应的位置点,同时将所述水域面对应的各个三角面片实时更新面片颜色,并反映出光照的反射与折射现象,获得的动态水域信息; 呈现单元,将所述动态水域信息呈现给用户; 进一步的,所述水域面构建单元包括: 插值单元,依据所述高程数据插值获取水域面边界的高程值,提取所述水域面的边界线.数字高程数据获得单元,依据所述高程值的水域边界线插值高程点,获得水域面所覆盖的数字高程数据; 处理单元,使用扫描射线方法,获取所述数字高程数据中的每个格网的顶点位置,并记录三角网的绘制方式,构建三角网的索引列表,根据该索引列表构建符合基础地形变化的水域面。
5.如权利要求4所述的匹配真实三维环境的动态水域可视化装置,其特征在于,所述插值单元包括: 分段单元,对绘制的边界线段进行固定分段,获取细节线段,进行的固定分段是依据自定义划分的每条线段数量获取平均的球面夹角进行的分裂;· 细划单元,对所述的细节线段进行细节划分,直到遍历的细节线段之间的弧度值小于或等于I弧度; 判读处理单元,判读各个线段是否与地形数据相交,如果没有交集则直接输出水域面边界的位置点,如果存在交集需要做夹角中间值切断,直到没有交集后输出水域面边界的位置点。
6.如权利要求4所述的匹配真实三维环境的动态水域可视化装置,其特征在于,所述数字高程数据获得单元包括: 第一设置单元,设置位置点的缓冲范围,其设置要求是按照向内陆拓展的过程; 第二设置单元,设置缓冲延续点的高程值低于实际地形数据值,缓冲延续点的高程值为距离最近位置点的高程值; 覆盖单元,将所有的位置点借助反距离插值方法生成不同位置高程值,且插值点的参考范围覆盖水域的对侧位置点; 生成单元,将插值的信息生成标准的数字高程数据。
【文档编号】G06T17/00GK103530901SQ201310487386
【公开日】2014年1月22日 申请日期:2013年10月17日 优先权日:2013年10月17日
【发明者】王亮, 刘媛, 赵荣, 刘小标, 何望君 申请人:中国测绘科学研究院
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1