一种三维模型生成方法、系统及计算机可读存储介质与流程

文档序号:17733000发布日期:2019-05-22 02:58阅读:170来源:国知局
一种三维模型生成方法、系统及计算机可读存储介质与流程

本申请涉及计算机技术领域,尤其涉及一种三维模型生成方法、系统及计算机可读存储介质。



背景技术:

通常的地理测绘数据存储在多个数据表中,大量的数据表使得地理测绘数据管理起来比较繁琐,容易出错,人工处理该地理测绘数据耗时且资源浪费,经常会因为数据处理量过大造成加载时间长、数据处理速率较慢、系统加载崩溃等问题。



技术实现要素:

为了解决上述技术问题或者至少部分地解决上述技术问题,本申请提供了一种三维模型生成方法、系统及计算机可读存储介质。

有鉴于此,第一方面,本申请提供了一种三维模型生成方法,所述三维模型生成方法包括以下步骤:

获取待处理的数据文件;

对所述待处理的数据文件进行预处理,以得到目标数据结构;

利用所述目标数据结构生成网格模型;

对所述网格模型进行颜色填充,以生成所述三维模型。

结合第一方面,在第一方面第一种可能的实施方式中,所述对所述待处理的数据文件进行预处理包括:

提取所述待处理的数据文件的经纬度坐标信息;

根据所述经纬度坐标信息,判断所述待处理的数据文件的经度和纬度分布是否均匀;

当所述待处理的数据文件的经度和纬度分布不均匀时,利用插值法补充缺失的经纬度坐标信息。

结合第一方面,在第一方面第二种可能的实施方式中,所述对所述待处理的数据文件进行预处理还包括:

按照预设扫描方式对所述待处理的数据文件进行扫描;

判断是否检测到所述待处理的数据文件的缺失数据;

当检测到所述数据文件的缺失数据时,利用插值法补充所述缺失数据。

结合第一方面,在第一方面第三种可能的实施方式中,所述方法包括:

利用所述待处理的数据文件和所述三维模型的预设精度,得到符合所述预设精度的目标数据结构。

结合第一方面,在第一方面第四种可能的实施方式中,所述利用所述待处理的数据文件和所述三维模型的预设精度,得到符合所述预设精度的目标数据结构包括:

基于所述三维模型的预设精度,对所述待处理的数据文件中的数据进行插值计算以得到所述目标数据结构。

结合第一方面,在第一方面第五种可能的实施方式中,所述利用所述目标数据结构生成网格模型包括:

为所述目标数据结构上的每个阵列排布的目标点分配相应的坐标值;

利用每个所述目标点生成对应的三角面;

利用所有的所述三角面生成网格模型。

结合第一方面,在第一方面第六种可能的实施方式中,还包括:

预先设置所述坐标值中的z值和颜色的映射关系;

对所述网格模型进行颜色填充,以生成所述三维模型包括:

根据所述目标点的坐标值中的z值和所述映射关系,确定所述目标点的填充颜色,并输出所述填充颜色的rgb颜色值;

对所有的目标点进行颜色填充,以生成所述三维模型。

结合第一方面,在第一方面第七种可能的实施方式中,所述方法包括:

判断所述待处理的数据文件的存储容量是否达到存储容量阈值;

当所述数据文件的存储容量达到存储容量阈值时,将所述数据文件按照对应的顺序进行分块处理。

第二方面,本申请提供了一种三维模型生成系统,所述系统包括:

获取单元,配置为获取数据文件,并对所述数据文件进行解析;

预处理单元,配置为对所述数据文件进行预处理;

设置单元,配置为根据预设配置参数对预处理后的所述数据文件的数据结构进行设置,以确定目标数据结构;

模型生成单元,配置为利用所述目标数据结构生成相应的三维模型。

第三方面,本申请提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有三维模型生成程序,所述三维模型生成程序被处理器执行时实现如第一方面所述的三维模型生成方法的步骤。

本申请实施例提供的上述技术方案与现有技术相比具有如下优点:

本申请实施例提供的该方法,对待处理的数据文件进行预处理,以得到目标数据结构,利用所述目标数据结构生成网格模型,对所述网格模型进行颜色填充,以生成所述三维模型,本申请实施例可以利用待处理的数据文件中的数据快速生成三维模型,该三维模型可以很直观的展示待处理数据,缩短数据处理的加载时间,提高数据处理速率,保证数据处理量较大时的系统稳定性,有效避免系统加载崩溃问题。

附图说明

此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1为本申请实施例提供的一种三维模型生成方法的流程示意图;

图2为本申请实施例提供的另一种三维模型生成方法的流程示意图;

图3为本申请实施例提供的另一种三维模型生成方法的流程示意图;

图4为本申请实施例提供的另一种三维模型生成方法的流程示意图;

图5为本申请实施例提供的又一种三维模型生成方法的流程示意图;

图6为本申请实施例提供的一种三维模型生成系统的结构示意图。

具体实施方式

为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请的一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。

现在将参考附图描述实现本发明各个实施例的服务器。在后续的描述中,使用用于表示元件的诸如“模块”、“部件”或“单元”的后缀仅为了有利于本发明的说明,其本身并没有特定的意义。因此,“模块”与“部件”可以混合地使用。

参照图1,图1为本申请实施例提供的一种三维模型生成方法,该三维模型生成方法可以包括以下步骤:

s101、获取待处理的数据文件。

s102、对所述待处理的数据文件进行预处理,以得到目标数据结构。

s103、利用所述目标数据结构生成网格模型。

s104、对所述网格模型进行颜色填充,以生成所述三维模型。

本申请实施例提供的该方法,对待处理的数据文件进行预处理,以得到目标数据结构,利用所述目标数据结构生成网格模型,对所述网格模型进行颜色填充,以生成所述三维模型,本申请实施例可以利用待处理的数据文件中的数据快速生成三维模型,该三维模型可以很直观的展示待处理数据,缩短数据处理的加载时间,提高数据处理速率,保证数据处理量较大时的系统稳定性,有效避免系统加载崩溃问题。

参照图2,在本申请另一实施例中,上述步骤s102、对所述待处理的数据文件进行预处理,包括:

s201、提取所述待处理的数据文件的经纬度坐标信息。

s202、根据所述经纬度坐标信息,判断所述待处理的数据文件的经度和纬度分布是否均匀。

s203、当所述待处理的数据文件的经度和纬度分布不均匀时,利用插值法补充缺失的经纬度坐标信息。

参照图3,在本申请另一实施例中,上述步骤s102、对所述待处理的数据文件进行预处理,包括:

s301、按照预设扫描方式对所述待处理的数据文件进行扫描。

s302、判断是否检测到所述待处理的数据文件的缺失数据。

s303、当检测到所述数据文件的缺失数据时,利用插值法补充所述缺失数据。

本申请实施例中的插值法是指两个相邻的数据相加之后除以2,得到的数即为插值。

在本申请另一实施例中,所述方法包括:利用所述待处理的数据文件和所述三维模型的预设精度,得到符合所述预设精度的目标数据结构。

在本申请另一实施例中,所述利用所述待处理的数据文件和所述三维模型的预设精度,得到符合所述预设精度的目标数据结构包括:

基于所述三维模型的预设精度,对所述待处理的数据文件中的数据进行插值计算以得到所述目标数据结构。

在本申请实施例中,对于不同精度的数据,可以根据生成的三维模型的精度要求,将数据进行进一步处理,本申请实施例的三维模型生成方法主要针对地理测绘数据的快速建模,传统的地理测绘数据通常是一堆数据表,数据处理起来比较繁琐,而本申请实施例直接将待处理的数据文件中数据快速生成三维模型。

地图测绘数据具有相应的精度,一般情况下,地图的1:5000是指同经度/纬度每隔5000米测绘一个点,如果用1:5000的地图测绘数据生成三维模型,由于数据点的数量是一定的,则该三维模型的最大精度为1:5000,而本申请实施例生成的三维模型,可以根据三维模型的精度要求,对地图测绘数据进行相应处理。

示例性的,如果三维模型的精度要求为1:10000,但是地图测绘数据的精度为1:5000,则需要对这些地图测绘数据进行相应处理。可以在读取数据的时候,只读取单数行的数据,保留双数行的数据,数据处理后生成的三维模型的精度为数据处理之前生成的三维模型的精度的50%;也可以只读取三行数据中的两行数据,保留一行数据,数据处理后生成的三维模型的精度为数据处理之前生成的三维模型的精度的66%;本申请实施例也可以只读取双数行的数据,保留单数行的数据,本申请实施例对此不做限定。

参照图4,在本申请另一实施例中,上述步骤s103、利用所述目标数据结构生成网格模型包括:

s401、为所述目标数据结构上的每个阵列排布的目标点分配相应的坐标值。

s402、利用每个所述目标点生成对应的三角面。

s403、利用所有的所述三角面生成网格模型。

在本申请另一实施例中,所述三维模型生成方法还包括:

预先设置所述坐标值中的z值和颜色的映射关系。

对所述网格模型进行颜色填充,以生成所述三维模型包括:

根据所述目标点的坐标值中的z值和所述映射关系,确定所述目标点的填充颜色,并输出所述填充颜色的rgb颜色值;

对所有的目标点进行颜色填充,以生成所述三维模型。

在本申请实施例中,对三维模型中的等高线,若左右两侧的点,或上下两侧的点,高度刚好是跨越等高线的高度,则对此点进行等高线的着色;对三维模型中的高度数据图,对每一个点的高度,将高度的浮点值,乘以一个较大的整型值,然后四舍五入得到另一个整型值,获取此整型值的32位二进制编码,利用颜色的rgba4个分量记录该整型值,每个分量占8位,生成一个颜色,每个点使用各自对应的颜色,创建贴图。

参照图5,在本申请另一实施例中,所述三维模型生成方法包括:

s501、判断所述待处理的数据文件的存储容量是否达到存储容量阈值。

s502、当所述数据文件的存储容量达到存储容量阈值时,将所述数据文件按照对应的顺序进行分块处理。

在本申请实施例中,如果数据文件过大,则需要按对应的顺序对该数据文件进行分块处理,可以提高数据处理速率,保证数据处理量较大时的系统稳定性,有效避免系统加载崩溃问题。

参照图6,本申请实施例提供了一种三维模型生成系统,所述系统包括:

获取单元11,配置为获取数据文件,并对所述数据文件进行解析;

预处理单元12,配置为对所述数据文件进行预处理;

设置单元13,配置为根据预设配置参数对预处理后的所述数据文件的数据结构进行设置,以确定目标数据结构;

模型生成单元14,配置为利用所述目标数据结构生成相应的三维模型。

本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有三维模型生成程序,所述三维模型生成程序被处理器执行时实现如图1所述的三维模型生成方法的步骤。

为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本发明时可以把各单元的功能在同一个或多个软件和/或硬件中实现。

本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置或系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的装置及系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。

本发明可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本发明,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。

需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

以上所述仅是本发明的具体实施方式,使本领域技术人员能够理解或实现本发明。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所申请的原理和新颖特点相一致的最宽的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1