CN116402966A - 一种三维地形可视化仿真建模方法 - Google Patents
一种三维地形可视化仿真建模方法 Download PDFInfo
- Publication number
- CN116402966A CN116402966A CN202310394324.7A CN202310394324A CN116402966A CN 116402966 A CN116402966 A CN 116402966A CN 202310394324 A CN202310394324 A CN 202310394324A CN 116402966 A CN116402966 A CN 116402966A
- Authority
- CN
- China
- Prior art keywords
- elevation
- coordinate
- dimensional
- data
- gray
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 48
- 238000005094 computer simulation Methods 0.000 title claims abstract description 17
- 230000000007 visual effect Effects 0.000 title claims abstract description 9
- 238000013507 mapping Methods 0.000 claims abstract description 35
- 238000012800 visualization Methods 0.000 claims abstract description 27
- 238000009877 rendering Methods 0.000 claims abstract description 10
- 238000006243 chemical reaction Methods 0.000 claims abstract description 7
- 238000010276 construction Methods 0.000 claims abstract description 6
- 238000005070 sampling Methods 0.000 claims description 16
- 238000005516 engineering process Methods 0.000 claims description 9
- 238000012952 Resampling Methods 0.000 claims description 8
- 230000011218 segmentation Effects 0.000 claims description 5
- 238000004364 calculation method Methods 0.000 claims description 3
- 238000004140 cleaning Methods 0.000 claims description 3
- 238000000605 extraction Methods 0.000 claims description 2
- 238000007781 pre-processing Methods 0.000 claims 1
- 239000010410 layer Substances 0.000 description 9
- 238000012876 topography Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 8
- 230000008569 process Effects 0.000 description 8
- 238000012545 processing Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 230000004048 modification Effects 0.000 description 5
- 238000012986 modification Methods 0.000 description 5
- 239000000203 mixture Substances 0.000 description 4
- 230000001788 irregular Effects 0.000 description 3
- 239000000463 material Substances 0.000 description 3
- 230000009467 reduction Effects 0.000 description 3
- 230000004075 alteration Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000018109 developmental process Effects 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 238000003709 image segmentation Methods 0.000 description 2
- 230000008520 organization Effects 0.000 description 2
- 238000004088 simulation Methods 0.000 description 2
- 238000013316 zoning Methods 0.000 description 2
- 208000025174 PANDAS Diseases 0.000 description 1
- 208000021155 Paediatric autoimmune neuropsychiatric disorders associated with streptococcal infection Diseases 0.000 description 1
- 240000000220 Panda oleosa Species 0.000 description 1
- 235000016496 Panda oleosa Nutrition 0.000 description 1
- 230000004308 accommodation Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 238000013499 data model Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 230000035800 maturation Effects 0.000 description 1
- 238000013439 planning Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 239000002356 single layer Substances 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/05—Geographic models
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/005—General purpose rendering architectures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/20—Finite element generation, e.g. wire-frame surface description, tesselation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/50—Depth or shape recovery
- G06T7/55—Depth or shape recovery from multiple images
- G06T7/564—Depth or shape recovery from multiple images from contours
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02A—TECHNOLOGIES FOR ADAPTATION TO CLIMATE CHANGE
- Y02A90/00—Technologies having an indirect contribution to adaptation to climate change
- Y02A90/10—Information and communication technologies [ICT] supporting adaptation to climate change, e.g. for weather forecasting or climate simulation
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Geometry (AREA)
- Software Systems (AREA)
- Computer Graphics (AREA)
- Remote Sensing (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Processing Or Creating Images (AREA)
Abstract
本发明公开了一种三维地形可视化仿真建模方法,涉及三维地形建模技术领域,包括以下步骤:获取遥感影像;提取遥感影像的高程坐标数据、灰度图和贴图;提取灰度图中多个像素点的灰度值,根据多个灰度值的权重对高程坐标数据中对应的多个高程值进行映射,得到多个映射结果;根据多个映射结果对遥感影像进行深度估计,得到地形形状轮廓;基于三角剖分方法将高程坐标数据动态构建为多个三角网面,通过多个三角网面构建网格;通过贴图对网格进行渲染;基于三维构建引擎将地形形状轮廓和渲染后的网格进行三维地形的动态构建。本发明将二维地表信息拓展到三维空间,适用于地形地表结构的同类型数据通用转化方案,实现三维地形数据的可视化。
Description
技术领域
本发明涉及三维地形建模技术领域,特别是涉及一种三维地形可视化仿真建模方法。
背景技术
地图一直是人们表达和传递地表信息的主要手段。地图所固有的抽象的、平面的表达方式已经远远不能满足人们的现实需要。地形数据是地形表面的数字化表达,三维地形的可视化使得地形信息的表达更容易被直观接受和获取。越来越多的人倾向于将二维数据进行三维可视化,从而降低数据的阅读难度,提升数据分析能效。
数据的获取和处理是三维地形可视化的第一步,除了通过传统的地质地理信息获取数据,也可以通过图像等方法进行三维模型构建。相比于其他数据,图形数据更能反映出物体的外观及形态等细节信息。同时随着科学技术的发展,各种硬件设备的改善能够支持获取各种格式、各种清晰度的图像,随着各种无人机和卫星技术的成熟,高分辨率的遥感影像在地理信息的研究中被广泛使用,除了能获取外观结构及纹理信息之外,还能获取到包含物体的位置关系、比例结构等。在卫星拍摄的遥感影像中,通过空间分辨率及相机参数,还可以提取出物体在实际空间中的坐标参数,通过这种方式可以更加快捷高效的构建地形数据。
在三维地形可视化仿真中,可视化的实现依托于三维模型建模技术,对于传统建模方式而言,通过实际环境中测量到的物体点、线、面等数据人工绘制进行环境信息还原,对于环境信息的细节则需要通过实地拍摄影像或者通过实际的建模经验制作贴图材质来模拟还原。但是对于大范围的地形环境,通过传统的人工建模方法来还原实际环境,在地形数据采集阶段就需要耗费大量的时间,并且真实的地形环境错综复杂,很难完整的获取其全部的地貌特征。其次,即使在获取地形数据的前提下,采用原始的建模方式进行还原也会存在较大难度,最后,地形环境并不是一成不变的,如果采用人工建模的方式所得到的模型复用性比较差,不适用于模型的多次修改。因此,在三维地形可视化方面,需要一种复用性高,更加方便高效、还原度高的建模方法。
发明内容
本发明提出了一种三维地形可视化仿真建模方法,针对目前三维地形模型可视化缺乏通用性、规范性、难以被人们理解的现状,将二维地表信息拓展到三维空间,实现三维地形数据的可视化。
本发明提供一种三维地形可视化仿真建模方法,包括以下步骤:
获取遥感影像;
提取遥感影像的高程坐标数据、灰度图和贴图;
提取灰度图中多个像素点的灰度值,根据多个灰度值的权重对高程坐标数据中对应的多个高程值进行映射,得到多个映射结果;
根据多个映射结果对遥感影像进行深度估计,得到地形形状轮廓;
基于三角剖分方法将高程坐标数据动态构建为多个三角网面,通过多个三角网面构建网格;
通过贴图对网格进行渲染;
基于三维构建引擎将地形形状轮廓和渲染后的网格进行三维地形的动态构建。
优选的,提取遥感影像的灰度图,包括以下步骤:
将.GIF格式的遥感影像数据转换为.png格式的贴图图像;
将遥感影像的采样区域边界作为底层图像;
将底层图像的采样区域边界内部进行透明化处理,采样区域边界外部进行黑色化处理;
将处理后的底层图像与贴图图像进行叠加,得到叠加图像;
采用convert函数将叠加图像进行转换,得到灰度图。
优选的,通过下式对高程坐标数据中对应的多个高程值进行映射:
式中,Elevation代表高程值,Heightrange代表高程约束条件,Grayp代表灰度值。
优选的,将高程坐标数据动态构建为多个三角网面之前,通过数字高程模型对高程坐标数据进行预处理,包括以下步骤:
将高程坐标数据按照通用坐标表形式存储高程点坐标值,得到高程坐标数据点集;
通过数据清洗技术将高程坐标数据点集中的经纬度坐标信息进行分割,得到经纬度坐标值;
通过高斯投影正算方法将经纬度坐标值转化为x、z坐标,得到坐标数据表格;
通过数据合并技术将高程信息作为y坐标数据合并至坐标数据表格。
优选的,所述数字高程模型的数学形式如下所示:
Vi=(Xi,Yi,Zi)
式中,(Xi,Yi)是二维坐标信息,Zi是(Xi,Yi)相对应的高程值。
优选的,基于三角剖分方法将高程坐标数据动态构建为多个三角网面,包括以下步骤:
根据转换后的高程坐标点集确定第一三角形;
将转换后的高程坐标点集中的多个坐标点分别与第一三角形中的任意两个顶点连接构成多个第二三角形;
计算当前坐标点与对应的第二三角形外接圆外心的距离;
若当前坐标点与外心的距离小于外接圆的半径时,将当前坐标点构成的第二三角形进行删除;
若当前坐标点与外心的距离大于外接圆的半径时,将外接圆最右侧沿Z轴方向做切线,得到绝对右侧;
若当前坐标点位于绝对右侧的左侧时,删除该坐标点;若当前坐标点位于绝对右侧的右侧时,将当前坐标点构成的第二三角形保留;
遍历点集中的所有坐标点,删除第一三角形及与其顶点直接相连的边,得到高程点集的三角网面。
优选的,通过贴图对网格进行渲染,包括以下步骤:
创建用于存储贴图信息的UV数组,其中U是贴图水平方向上的坐标值,V是二维贴图数值方向上的坐标值;
通过UV数组中坐标值的定位将贴图与网格中的多个三角网面相对应;
将贴图动态传入网格渲染器MeshRenderer中实现渲染。
优选的,当遥感影像的像素点总数大于最大网格顶点数时,需对提取的灰度图进行分割重采样。
优选的,通过下式进行分割重采样:
式中,Pointmax表示最大网格顶点数,Graywidth表示灰度图的水平方向分辨率,Grayheight表示灰度图的竖直方向分辨率,Meshsize表示网格顶点数。
与现有技术相比,本发明的有益效果是:
本发明提出了一种三维地形可视化仿真建模方法,提取遥感影像的高程坐标数据、灰度图和贴图,通过灰度图得到地形形状轮廓,采用三角剖分的思路将高程坐标数据动态构建为多个三角网面,通过多个三角网面构建网格。基于三维引擎通过贴图对网格进行渲染,将地形形状轮廓和渲染后的网格进行三维地形的动态构建。将二维地表信息拓展到三维空间,适用于地形地表结构的同类型数据通用转化方案,实现三维地形数据的可视化。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明的一种三维地形可视化仿真建模方法的流程图;
图2是本发明的规则网格数字高程模型结构图;
图3是本发明的不规则网格数字高程模型结构图;
图4是本发明的提取遥感影像的灰度图的流程示意图;
图5是本发明的地形形状轮廓示意图;
图6是外层图像分割重采样过程示意图;
图7是本发明的内层三角剖分示意图。
图8是本发明的坐标点在外接圆圆外的位置判定图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
参照图1,本发明提供了一种三维地形可视化仿真建模方法,包括以下步骤:
第一步:获取遥感影像。三维地形可视化的关键点是数据的获取以及处理,在可视化之前,需要获取准确稳定的数据来源,通过对地理信息抽象,整理出相关的数据资料,按照需求筛选出合适的数据。本发明的遥感影像来源于国家地理空间数据云及图新地球等地理信息平台。
第二步:提取遥感影像的高程坐标数据、灰度图和原贴图。
(1)提取高程坐标数据
地形的高程坐标数据对于地形结构的起伏变化有直接的关联关系,可以为地形的三维可视化工作开展提供有力的数据支持,通过相关操作提取地形高程坐标数据,并保证数据的可用性、统一性及稳定性。
通过影像数据采集高程信息的方式从遥感影像中提取该影像区域的高程坐标数据,高程坐标数据信息的采集是通过高程点提取工具,直接获取遥感影像采样空间内任意采样间隔的高程坐标点集。
对地形地表高程的数字化表达可以采用数字高程模型,为了实现地形数据的可视化,首先通过对地形高程信息进行抽象,获取能够描述地形地貌的关键信息,按照一定的组织方式处理高程坐标数据。数字高程模型是通过一系列按照一定顺序排列存放的地形离散高度值,来表示地形起伏信息的数据模型,这些有序的离散高度值又称为地形高程值,表达出了地形的起伏程度,用数学形式描述为:
Vi=(Xi,Yi,Zi)
式中,(Xi,Yi)是二维坐标信息,Zi是(Xi,Yi)相对应的高程值。
参照表1,在使用数字高程模型处理数据时,首先需要将获取的数据文件按照通用坐标表形式存储高程点坐标值,得到高程坐标数据点集。通过数据清洗技术即使用pandas函数库中的usecols方法来分割高程坐标系中的经纬度坐标信息,参考坐标系设置为WGS84椭球世界坐标,按照我国地图投影分带标准查找不同区域类的中央子午线度数,使用高斯投影正算方法将经纬坐标值转化为x、z坐标,在得到转换后的坐标信息之后,通过数据合并技术,将高程信息作为y坐标数据合并至坐标数据表格中,统一数据存储格式及路径,得到转换后的高程坐标点集PDEM(X,Y,Z)。
表1高程坐标点的存储
(2)提取灰度图和原贴图
遥感影像是获得地形纹理信息的主体,但是直接获取的.GIF格式的遥感影像包含很多冗余的信息,导致占用的存储空间较大,并且高精度的遥感图像数据体积较大,在后期使用过程中将会影响运行速度,所以在进行三维可视化之前,需要对其进行数据筛选,格式转换和灰度化处理,选择合适的并且不影响精度的图像作为灰度图转换的图源依据。
参照图4,在图像数据转换过程中使用opencv库函数将.GIF格式的遥感影像数据转换为保留alpha通道的.png格式贴图图像数据texture,并将每张遥感影像的采样区域边界kml作为底层图像。边界包围的图像内部像素,在RGB值全部置零的情况下将alpha也设置为0,用来做透明化处理。对于边界以外的部分采用PIL库函数的Img.blend函数进行黑色化处理。PIL库函数的Img.blend函数以如下的形式:
blend=texture*alpha+kml*(1-alpha)
将RGB值置零,将alpha的值控制0到255之间,保证该区域黑色像素的可见性。将处理后的kml与贴图图像进行叠加,再利用PIL库中的convert函数将该图像转换为带GrayImage的灰度图像。
第三步:提取灰度图中多个像素点的灰度值,根据多个灰度值的权重对高程坐标数据中的多个像素点对应的多个高程值进行映射,得到多个映射结果。
在得到遥感图像之后,需要获取图像中物体的部分高度特征值,通过提取遥感影像灰度图中每一个像素点的灰度值Grayp,利用每一个像素点的灰度权重在给定高度范围内对高程值进行映射,实现单张遥感影像深度估计。由于灰度值的范围为0~255,映射公式如下所示:
除了直接从灰度图中读取每一个像素点的灰度值之外,本发明还可以从图像的色彩信息中提炼出图像的灰度信息,当图像像素点的颜色分量值相等,即R=G=B∈[0,255]时,该像素点的值可以被叫做灰度值,使用色彩三分量的算数平均数即可求得像素点的灰度值,如下式:
因此映射公式也可表述为:
第四步:根据多个映射结果对遥感影像进行深度估计,得到地形形状轮廓。参照图5,通过对遥感影像灰度图每个像素点的灰度值进行加权映射,控制高程信息点的Y坐标值增量。对单张遥感影像进行深度估计,实现地形模型的形状轮廓演化设计,当高程约束条件Heightrange的值为200时,地形的形状轮廓效果如图5所示。
第五步:基于三角剖分方法将高程坐标数据动态构建为多个三角网面,通过多个三角网面构建网格。
对于数字高程模型在三维空间内的数据结构表示而言,不同高程坐标点的连接方式形成的结构也不同,在本方法中,处理高程数据的最终目的是实现地形的三维可视化,根据选用面的组织结构方式的不同,可以分为高程规则网格面和高程不规则网格面。
参照图2,高程规则网格面处理是指对某一区域的地形建立规则网格数字高程模型,在平面XOZ上进行等间距的高程信息采样,要求采样的网格面均为对称规则多边形,网格平面内的任意采样点P(Xp,ZP)满足|XP-XP-1|=|XP-XP+1|,即规则网格数字高程模型可以用一个二维数组来表示,数组中的每一个元素A[x][z]表示平面XOZ上的一个采样点,存储一个高程值Yp,即A[x][z]=Yp,如图2所示。对于每一个网格单元只有一个高程值或者采样区域的平均值,表达的是连续的高程信息。
参照图3,高程数据规则与不规则的最大区别是在网面构建过程中使用不规则多边形进行绘制,多边形的面结构多变,一般采用三角形进行构建,三角形结构简单,由最少的边和顶点组成面,且三角形的每一条边在多网面结构中都具有较好的共享性,能够有效降低数据冗余。对于由三角形构成的网面,不仅包含高程坐标点的数据值,还需要记录高程点的连接方式。对于地形的三维可视化而言,混合表示高程点及邻接关系的结构,能够清晰的表示三角形的顶点及连接关系并且不会存在冗余。
在使用三维模型构建技术进行地形建模时,不能直接在空间中渲染离散点集,而是通过面来实现,在建模中通常将由多个面组成的结构体称为网格结构,网格结构体是由点和线构造成的栅格面单元组成。
参照图8,将三维的高程坐标数据简化到X,Z平面坐标内进行平面投影式三角剖分。即复制原始高程坐标点集PDEM(X,Y,Z)的坐标值,并将复制得到的高程坐标点集PDEM-copy(Xcopy,Ycopy,Zcopy)的高程坐标值Ycopy全部设置为0;得到二维坐标系内的高程坐标点集PDEM-2Dcopy(Xcopy,Zcopy)。
基于点集PDEM-2Dcopy(Xcopy,Zcopy)构建二维平面内的三角网面是通过创建一个三角形凸包容纳点集中的所有坐标点,即第一三角形凸包的建立是分别取Xcopy和Zcopy方向的最大值和最小值。在X轴和Z轴分别做竖直方向和水平方向的延长线,延长线相交点确定点集的矩形凸包。对矩形四边的较长两边做中垂线,连接矩形顶点(Xmin,Zmin)到中垂线与矩形凸包的交点,得到矩形的四分之一三角形,沿矩形顶点(Xmin,Zmax)做该三角形的平行线,使得该平行线与中垂线交于一点A,同时该平行线与矩形两条长边相交,得到除点(Xmin,Zmax)之外另一个交点B,沿中垂线做B点的水平对称点C,A、B、C三点即可确定最终所求的三角形凸包。
三角形凸包构建之后,按照三角形外接圆特性对点PDEM-2Dcopy(Xcopy,Zcopy)进行三角网面的构建,对于在构建的凸包内每插入一个点,将该点与ABC任两点连接,构成新三角形。对需要进行该点与外接圆的关系判定,构建三角形外接圆的方法是找到三角形外接圆的圆心,即三角形的外心,根据三角形的外心定理,可以画出三角形三边的垂直平分线,三条垂直平分线的交点即为三角形的外心,同时由于三角形的三个顶点均在其外接圆上,可以判断出外心到三角形任意一个顶点的值即为该外接圆的半径。
例如外心的坐标值P(XP,ZP),平面内任意一点N与外接圆的位置关系,可以通过比较点N到外心的距离PN与外接圆半径r的大小来判断,判断依据如下式:
在进行三角剖分,分别建立包含点集合、缓存边集合、三角形集合与三角形栅格面集合,点集合用于保存PDEM-2Dcopy(Xcopy,Zcopy)中的有序的离散高程坐标点,该点集中的每个点与PDEM(X,Y,Z)的点一一对应,缓存边集合用于保存逐点插入进行三角剖分时产生的临时边以及边的连接信息,三角形集合用于保存构建网面过程中生成的三角形及相关顶点和边的信息,三角形栅格面集合用于保存已确定的三角网的组成因子,即三角网格面单元。
在判断点与外接圆的位置关系时,先将预先构建的三角形凸包加入到三角形集合中,作为第一个判断依据,若点在圆内或圆上,则该三角形不是所要求的三角形,在三角形集合中删除该三角形,保留其三边至缓存边集合中待用,等待一次遍历完成后删除缓存边集合中的公共边,连接该判定点至所有缓存边中的公共顶点,清空缓存边集合,进行下一次判定。
若点在圆外则需要进行第二次判定,由于点集是有序的,该判定点是之后点集中所有点中距离上一个判定点最近的点,具体位置判定图如8所示:若该点如点D所示,不在外接圆右侧,则无法判定接下来的点是否全部在外接圆外侧,跳过该三角形,将其保留在三角形集合中,等待下一次判定;若该点如点E所示,在外接圆的右侧,但不在外接圆的绝对右侧(绝对右侧是指对三角形外接圆最右侧沿Z轴方向做切线,若点在该切线的右侧,则称该点在三角形外接圆的绝对右侧),则也同样无法判定接下来的点是否全部在外接圆外侧,跳过该三角形,将其保留在三角形集合中,等待下一次判定;若该点如点F所示,在外接圆的绝对右侧,则说明点集中接下来的所有点均在外接圆外侧,则该三角形是所要求的三角形,将其加入三角形栅格面集合中,并在三角形集中删除该三角形。
绝对右侧的判断公式:
三角形外接圆外心的X坐标加上半径的绝对值,若小于判定点的X坐标值,且该点在圆外,则说明该点在外接圆的绝对右侧,如下式:
遍历完点集中的所有点之后,删除该三角形凸包及与该凸包顶点直接相连的边即可得到高程点集的三角网面。
第六步:基于三维引擎通过贴图对网格进行渲染,将地形形状轮廓和渲染后的网格进行三维地形的动态构建。
在方法中引入Unity引擎作为实现工具,为了实现三维地形模型的动态创建,需要保证地形的结构信息被网格容器预先存储。网格结构包含顶点坐标、法线、纹理坐标、面单元的绘制序列等主要属性,是包含物体结构信息的容器,而网格过滤器MeshFilter和网格渲染器MeshRenderer是构建网格容器的重要依据,MeshFilter负责保存物体三维模型构建所必须的网格形状信息,并依据指令将其进行传递,MeshRenderer负责记载物体三维模型的贴图材质信息并实现渲染。
在构建网格存储器时,首先需要一个空物体作为网格容器的承载体,通过三角剖分方法将网格存储进MeshFilter中,同时需要注意在三维模型构建引擎中,物体的动态创建依靠的是独立的面结构,而两个相邻的三角形面结构中存储的顶点信息中有两个顶点是互相重复的,因此需要在点集合、缓存边集合、三角形集合与三角形栅格面集合的基础上,使用点集合索引数组表示三角形栅格面,减少不必要的数据冗余,方便数据的管理。
因为最终创建的物体需要渲染显示,所以在三维模型构建时需要创建UV数组来存储物体的贴图信息,其中U是二维贴图水平方向上的坐标值,V是二维贴图竖直方向上的坐标值,通过UV坐标的定位将贴图图像与物体网面相对应,保证UV数组的坐标点数量与离散高程坐标点集中的高程坐标点的数量一致,再将贴图动态传入MeshRenderer中实现渲染。
实施例
在进行实际的地形三维可视化之前,对预处理过的遥感图像数据进行分析,图像本身包含纹理色彩、像素尺寸等参数信息,从像素尺寸中得到图像的分辨率,对于图像分辨率为1920x1080的图像来说,在XOZ平面坐标内每一条X轴方向扫描线上包含有1920个像素点,每一条Z轴方向扫描线上有1080个像素点,实际图像中的像素点数目为2073600个,但由于在三维模型构建引擎中最大支持动态生成的网格顶点数目Pointmax为65000,因此除了选取合适大小的遥感图像数据之外,在实际进行像素点三角剖分的过程中,对于像素点远远超过这一数目限制的遥感影像来说,可以通过分区域创建地形模型,将单层数据的三角剖分转化为两层数据处理,采用嵌套式的方法完成网格的创建。
外层的遥感影像分割重采样是在XOZ平面内,对预处理过的图像的灰度图进行分割,重新划定单次网格生成的高程点采样区域,即通过灰度图的水平方向分辨率Graywidth与竖直方向分辨率Grayheight与X、Z方向上允许容纳的网格顶点的最大数值Meshsize,即分别做商,并进行优化取整,得到动态生成的M网格采样区域及网格面的数量,同时采用同种方法对遥感影像彩色贴图进行分割,保证贴图坐标数组UV在X、Z方向上与动态生成的分割区域一致,在动态生成时能够实现同步贴图信息传递。
在上式中,X、Z方向上允许容纳的网格顶点的最大数值是通过Pointmax来计算的,考虑的是允许存在的相对最大值,当Pointmax值若为65000,则达到了最大极限值,按此规模进行模型生成渲染时,可能会存在影响运行性能的情况,因此为了避免这种情况需要将最大值设置小一些。对Xpoint、zpoint采用向上取整的原则,对于无法保证输入图像的形状时,算法能够保证遥感影像灰度图的动态生成网格区域包含源数据图像所有数据点。例如以某个遥感影像数据为例,在使用遥感数据处理技术整理好灰度图的前提下,该图像的分辨率为7992*5112。将参数Pointmax控制在62500,按照上式重新计算后X轴上的采样点为31,Z轴上的采样点为20,如图6所示。
在对外层进行分割重采样之后。对该遥感影像的网格动态生成的高程点采样区域进行重新规划,在X、Z方向上以新计算出的采样点Xpoint和Zpoint作为网格分界顶点,做内层的地形网面三维重建,将Xpoint*Zpoint阵列上的每个网格面作为一个图像单元,对图像数据中的每一个图像单元通过三维重建演化方法进行三角网面的构建,在三角网面的像素点数量控制在Pointmax之内。如图7所示。
在内层分割重采样时,将每一个图像的网面生成结构信息及贴图UV坐标信息写入MeshFilter中进行预存储,在动态生成过程中直接用MeshRenderer对预先存储的每一个三角网面进行渲染显示,保证每一次动态生成一个图像单元构建的网面顶点数量小于Pointmax。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (9)
1.一种三维地形可视化仿真建模方法,其特征在于,包括以下步骤:
获取遥感影像;
提取遥感影像的高程坐标数据、灰度图和贴图;
提取灰度图中多个像素点的灰度值,根据多个灰度值的权重对高程坐标数据中对应的多个高程值进行映射,得到多个映射结果;
根据多个映射结果对遥感影像进行深度估计,得到地形形状轮廓;
基于三角剖分方法将高程坐标数据动态构建为多个三角网面,通过多个三角网面构建网格;
基于三维引擎通过贴图对网格进行渲染,将地形形状轮廓和渲染后的网格进行三维地形的动态构建。
2.如权利要求1所述的一种三维地形可视化仿真建模方法,其特征在于,提取遥感影像的灰度图,包括以下步骤:
将.GIF格式的遥感影像数据转换为.png格式的贴图图像;
将遥感影像的采样区域边界作为底层图像;
将底层图像的采样区域边界内部进行透明化处理,采样区域边界外部进行黑色化处理;
将处理后的底层图像与贴图图像进行叠加,得到叠加图像;
采用convert函数将叠加图像进行转换,得到灰度图。
4.如权利要求1所述的一种三维地形可视化仿真建模方法,其特征在于,将高程坐标数据动态构建为多个三角网面之前,通过数字高程模型对高程坐标数据进行预处理,包括以下步骤:
将高程坐标数据按照通用坐标表形式存储高程点坐标值,得到高程坐标数据点集;
通过数据清洗技术将高程坐标数据点集中的经纬度坐标信息进行分割,得到经纬度坐标值;
通过高斯投影正算方法将经纬度坐标值转化为x、z坐标,得到坐标数据表格;
通过数据合并技术将高程信息作为y坐标数据合并至坐标数据表格,得到数据转化后的高程坐标点集。
5.如权利要求4所述的一种三维地形可视化仿真建模方法,其特征在于,所述数字高程模型的数学形式如下所示:
Vi=(Xi,Yi,Zi)
式中,(Xi,Yi)是二维坐标信息,Zi是(Xi,Yi)相对应的高程值。
6.如权利要求4所述的一种三维地形可视化仿真建模方法,其特征在于,基于三角剖分方法将高程坐标数据动态构建为多个三角网面,包括以下步骤:
根据转换后的高程坐标点集确定第一三角形;
将转换后的高程坐标点集中的多个坐标点分别与第一三角形中的任意两个顶点连接构成多个第二三角形;
计算当前坐标点与对应的第二三角形外接圆外心的距离;
若当前坐标点与外心的距离小于外接圆的半径时,将当前坐标点构成的第二三角形进行删除;
若当前坐标点与外心的距离大于外接圆的半径时,将外接圆最右侧沿Z轴方向做切线,得到绝对右侧;
若当前坐标点位于绝对右侧的左侧时,删除该坐标点;若当前坐标点位于绝对右侧的右侧时,将当前坐标点构成的第二三角形保留;
遍历点集中的所有坐标点,删除第一三角形及与其顶点直接相连的边,得到高程点集的三角网面。
7.如权利要求6所述的一种三维地形可视化仿真建模方法,其特征在于,基于三维引擎通过贴图对网格进行渲染,包括以下步骤:
将网格存储在网格过滤器MeshFilter中,并将网格进行传递至网格渲染器MeshRenderer中;
创建用于存储贴图坐标值的UV数组,其中U是贴图水平方向上的坐标值,V是二维贴图竖直方向上的坐标值;
根据UV数组中坐标值将贴图与网格中的多个三角网面相对应;
将对应的贴图动态传入网格渲染器MeshRenderer中对网格进行渲染。
8.如权利要求7所述的一种三维地形可视化仿真建模方法,其特征在于,当遥感影像的像素点总数大于最大网格顶点数时,需对提取的灰度图进行分割重采样。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310394324.7A CN116402966A (zh) | 2023-04-13 | 2023-04-13 | 一种三维地形可视化仿真建模方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310394324.7A CN116402966A (zh) | 2023-04-13 | 2023-04-13 | 一种三维地形可视化仿真建模方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116402966A true CN116402966A (zh) | 2023-07-07 |
Family
ID=87012075
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310394324.7A Pending CN116402966A (zh) | 2023-04-13 | 2023-04-13 | 一种三维地形可视化仿真建模方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116402966A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116757004A (zh) * | 2023-08-21 | 2023-09-15 | 长江空间信息技术工程有限公司(武汉) | 基于数字孪生技术的efdc三维水质数据多模式推演方法 |
CN117349463A (zh) * | 2023-10-16 | 2024-01-05 | 自然资源部第一海洋研究所 | 一种海岛数据管理方法及系统 |
CN117609401A (zh) * | 2024-01-19 | 2024-02-27 | 贵州北斗空间信息技术有限公司 | 三维地形场景中的白模可视化展示方法、装置和系统 |
CN117932974A (zh) * | 2024-03-21 | 2024-04-26 | 威海水利工程集团有限公司 | 一种水库水下数字高程模型的构建方法 |
CN118334261A (zh) * | 2024-04-19 | 2024-07-12 | 机械工业勘察设计研究院有限公司 | 一种Mesh面贴合地形的动态生成方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106898045A (zh) * | 2017-02-24 | 2017-06-27 | 郑州大学 | 一种基于sgog瓦块的大区域真三维地理场景自适应构建方法 |
CN113223164A (zh) * | 2021-05-10 | 2021-08-06 | 西安空天仿真科技有限公司 | 一种大地形数据批处理方法 |
CN113506370A (zh) * | 2021-07-28 | 2021-10-15 | 自然资源部国土卫星遥感应用中心 | 基于立体遥感影像的三维地理场景模型构建方法和装置 |
CN113610983A (zh) * | 2021-08-26 | 2021-11-05 | 上海同岩土木工程科技股份有限公司 | 一种离散点空间曲面三角网格自动剖分方法 |
-
2023
- 2023-04-13 CN CN202310394324.7A patent/CN116402966A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106898045A (zh) * | 2017-02-24 | 2017-06-27 | 郑州大学 | 一种基于sgog瓦块的大区域真三维地理场景自适应构建方法 |
CN113223164A (zh) * | 2021-05-10 | 2021-08-06 | 西安空天仿真科技有限公司 | 一种大地形数据批处理方法 |
CN113506370A (zh) * | 2021-07-28 | 2021-10-15 | 自然资源部国土卫星遥感应用中心 | 基于立体遥感影像的三维地理场景模型构建方法和装置 |
CN113610983A (zh) * | 2021-08-26 | 2021-11-05 | 上海同岩土木工程科技股份有限公司 | 一种离散点空间曲面三角网格自动剖分方法 |
Non-Patent Citations (5)
Title |
---|
刘洪华;邓学飞;杨大哲;: "改进的Delaunay三角网在风电厂地形三维表面重建中的应用", 山西电力, no. 05, pages 45 - 47 * |
徐青,朱彩英: "利用遥感图象生成地形三维实景图", 计算机辅助设计与图形学学报, no. 05, pages 340 - 344 * |
王宁;张传林;张文争;: "一种简单的三维地形重建方法", 暨南大学学报(自然科学与医学版), no. 05, pages 467 - 470 * |
舒心: "基于DEM的三维数字地形可视化方法研究", 《中国优秀硕士学位论文全文数据库 信息科技辑》, pages 138 - 522 * |
齐敏;王强;韩一红;张小溪;: "基于数字地形图与分形理论的地形生成", 电子设计工程, no. 15, pages 191 - 193 * |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116757004A (zh) * | 2023-08-21 | 2023-09-15 | 长江空间信息技术工程有限公司(武汉) | 基于数字孪生技术的efdc三维水质数据多模式推演方法 |
CN116757004B (zh) * | 2023-08-21 | 2023-10-20 | 长江空间信息技术工程有限公司(武汉) | 基于数字孪生技术的efdc三维水质数据多模式推演方法 |
CN117349463A (zh) * | 2023-10-16 | 2024-01-05 | 自然资源部第一海洋研究所 | 一种海岛数据管理方法及系统 |
CN117609401A (zh) * | 2024-01-19 | 2024-02-27 | 贵州北斗空间信息技术有限公司 | 三维地形场景中的白模可视化展示方法、装置和系统 |
CN117609401B (zh) * | 2024-01-19 | 2024-04-09 | 贵州北斗空间信息技术有限公司 | 三维地形场景中的白模可视化展示方法、装置和系统 |
CN117932974A (zh) * | 2024-03-21 | 2024-04-26 | 威海水利工程集团有限公司 | 一种水库水下数字高程模型的构建方法 |
CN118334261A (zh) * | 2024-04-19 | 2024-07-12 | 机械工业勘察设计研究院有限公司 | 一种Mesh面贴合地形的动态生成方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110827402B (zh) | 一种基于栅格化技术的类建筑物三维模型简化方法及系统 | |
CN116402966A (zh) | 一种三维地形可视化仿真建模方法 | |
Fabio | From point cloud to surface: the modeling and visualization problem | |
Remondino | From point cloud to surface: the modeling and visualization problem | |
US8665266B2 (en) | Global visualization process terrain database builder | |
CN105336003A (zh) | 结合gpu技术实时流畅绘制出三维地形模型的方法 | |
CN111784840B (zh) | 基于矢量数据自动分割lod层级三维数据单体化方法及系统 | |
CN108717729A (zh) | 一种面向虚拟地球的地形多尺度tin在线可视化方法 | |
CN114998544B (zh) | 一种顾及视觉主体的建筑实体模型轻量化方法 | |
CN115861527A (zh) | 实景三维模型的构建方法、装置、电子设备及存储介质 | |
CN115409957A (zh) | 基于虚幻引擎的地图构建方法、电子设备和存储介质 | |
Zheng et al. | A morphologically preserved multi-resolution TIN surface modeling and visualization method for virtual globes | |
CN112102486A (zh) | 一种基于合并根节点的倾斜摄影数据lod重建方法 | |
CN115186347A (zh) | 户型平面图与倾斜模型相结合的建筑物CityGML建模方法 | |
He et al. | All range and heterogeneous multi-scale 3D city models | |
Gold | Spatial context: an introduction to fundamental computer algorithms for spatial analysis | |
Frommholz et al. | Inlining 3d reconstruction, multi-source texture mapping and semantic analysis using oblique aerial imagery | |
CN115409962A (zh) | 虚幻引擎内构建坐标系统的方法、电子设备和存储介质 | |
CN112730743A (zh) | 空气质量模式预报数据的交互方法及装置 | |
Wenbin et al. | Geometry-based mapping of vector data and DEM based on hierarchical longitude/latitude grids | |
CN114627258B (zh) | 一种重力场双体球同构建模方法与系统 | |
Mulder | Automatic repair of geometrically invalid 3D city building models using a voxel-based repair method | |
CN118396900B (zh) | 一种基于tin的全球数字孪生系统海岸修复方法 | |
CN118052947A (zh) | 基于大数据的三维地理模型建立方法及设备 | |
Rotge et al. | Universal solid 3D format for high performance urban simulation |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |