基于三维GIS的物联设备可视化渲染方法及系统转让专利

申请号 : CN202210971728.3

文献号 : CN115063520B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 王兵寒闫跃郛徐凯黄晓强

申请人 : 武汉智景可视科技有限公司

摘要 :

本发明涉及一种基于三维GIS的物联设备可视化渲染方法及系统,其包括如下步骤:获取设备点位数据;构建场景呈现容器;获取相机参数;根据相机参数获取视图矩阵以及投影矩阵;将每个点位数据所对应的设备点位进行坐标转换;根据视图矩阵以及投影矩阵计算每个设备点位在当前视角下投影到场景呈现容器的坐标;判断该设备点位是否落入某一网格内;获取每一网格中的设备点位数量,并进行该网格内的设备点位进行聚合或抽稀处理;获得不同地图比例尺下的设备点位设备渲染效果。本发明可以实现对十万以上级别设备点位数据的快速、流畅可视化渲染,并且提高了不同地图比例尺下设备点位数据加载的加载速度和流畅度。

权利要求 :

1.一种基于三维GIS的设备可视化渲染方法,其特征在于,包括如下步骤:建立点位数据集合S,且该点位数据集合S初始为空集合;

从设备接口获取设备点位总数,每一设备点位均对应一个点位数据;

构建场景呈现容器,且所述场景呈现容器中划分有网格;

获取某时刻t时的相机参数;

根据所述相机参数获取视图矩阵以及投影矩阵;

遍历点位数据集合S中的点位数据,且将每个点位数据所对应的设备点位的经度、纬度、高程转换为三维空间直角坐标系下的世界坐标 ;

根据视图矩阵以及投影矩阵计算每个设备点位在当前视角下投影到场景呈现容器的坐标 ;

遍历网格,将某一设备点位与每一网格坐标及尺寸进行匹配,以判断该设备点位是否落入某一网格内;

获取每一网格中的设备点位数量 ,且设定聚合/抽稀阈值为 ;若某网格中的设备点位数量 满足 ,则遍历该网格内的设备点位,在各设备点位的坐标处渲染点位图标;否则,对该网格内的设备点位进行聚合或抽稀处理;若进行聚合处理,则计算该网格内所有设备点位的坐标均值,以该坐标均值为坐标、点位数量为文本构建一个聚合点位,并对该聚合点位进行渲染,以获得聚合点位图标,若进行抽稀处理,则对该网格中第一个或最后一个或随机某个设备点位进行渲染,其他设备点位不作渲染;

改变相机参数和/或设备点位数量和/或设备点位位置,以获得不同地图比例尺下的设备点位设备渲染效果;

通过公式(1)获取视图矩阵:

(1)

其中, 为视图矩阵;

通过公式(2)获取投影矩阵:

(2)

其中, 为投影矩阵;

通过公式(3)计算获得每个设备点位在当前视角下投影到场景呈现容器的坐标 :  (3)。

2.如权利要求1所述的设备可视化渲染方法,其特征在于,所述点位数据包括经度、纬度以及高程。

3.如权利要求1所述的设备可视化渲染方法,其特征在于,所述设备包括物联网设备。

4.如权利要求1所述的设备可视化渲染方法,其特征在于,s为网格尺寸与图标尺寸的比值,取值为0.8‑2。

5.一种基于三维GIS的设备可视化渲染系统,其特征在于,包括:点位数据采集单元,其用于从设备接口获取设备点位总数,每一设备点位均对应一个点位数据;

数据追加单元,其用于将点位数据追加至已建立的点位数据集合S中,且该点位数据集合S初始为空集合;

容器构建单元,其用于构建场景呈现容器,且所述场景呈现容器中划分有网格;

视图矩阵计算单元,其用于根据相机参数获取视图矩阵;

投影矩阵计算单元,其用于根据相机参数获取投影矩阵;

坐标转换单元,其用于遍历点位数据集合S中的点位数据,且将每个点位数据所对应的设备点位的经度、纬度、高程转换为三维空间直角坐标系下的 ;

投影坐标计算单元,其用于根据视图矩阵以及投影矩阵计算每个设备点位在当前视角下投影到场景呈现容器的坐标 ;

点位匹配单元,其用于网格,将某一设备点位与每一网格坐标及尺寸进行匹配,以判断该设备点位是否落入某一网格内;

聚合处理单元,其用于当某网格中的设备点位数量 不满足 时,对该网格内的设备点位进行聚合处理;

抽稀处理单元,其用于当某网格中的设备点位数量 不满足 时,对该网格内的设备点位进行抽稀处理。

说明书 :

基于三维GIS的物联设备可视化渲染方法及系统

技术领域

[0001] 本发明涉及三维建模技术领域,具体涉及一种基于三维GIS系统(地理信息系统)的物联设备可视化渲染方法及系统。

背景技术

[0002] 在智慧城市可视化项目中,物联设备(即物联网(IoT)设备)的集成越来越普遍,在一个城市可视化项目中,通常会有十万以上的物联设备点需要通过可视化渲染技术进行可视化显示,但现有的可视化渲染技术无法加载大数据量(即十万以上)的物联设备三维点,或者即使能加载,后续也会实现卡顿、崩溃等现象,无法满足大数据量物联设备点的可视化渲染需求。

发明内容

[0003] 为了解决上述技术问题,本发明的目的在于提供了一种基于三维GIS的物联设备可视化渲染方法及系统,其可以实现对十万以上级别设备点位数据的快速、流畅可视化渲染,并且提高了不同地图比例尺下设备点位数据加载的加载速度和流畅度。
[0004] 为实现上述目的,本发明实施例提供了如下的技术方案:
[0005] 一方面,提供了一种基于三维GIS的设备可视化渲染方法,其包括如下步骤:
[0006] 建立点位数据集合S,且该点位数据集合S初始为空集合;
[0007] 从设备接口获取设备点位总数,每一设备点位均对应一个点位数据;
[0008] 构建场景呈现容器,且所述场景呈现容器中划分有网格;
[0009] 获取某时刻t时的相机参数;
[0010] 根据所述相机参数获取视图矩阵以及投影矩阵;
[0011] 遍历点位数据集合S中的点位数据,且将每个点位数据所对应的设备点位的经度、纬度、高程转换为三维空间直角坐标系下的世界坐标 ;
[0012] 根据视图矩阵以及投影矩阵计算每个设备点位在当前视角下投影到场景呈现容器的坐标pis;
[0013] 遍历网格,将某一设备点位与每一网格坐标及尺寸进行匹配,以判断该设备点位是否落入某一网格内;
[0014] 获取每一网格中的设备点位数量 ,且设定聚合/抽稀阀值为 ;若某网格中的设备点位数量 满足 ,则遍历该网格内的设备点位,在各设备点位的坐标处渲染点位图标;否则,对该网格内的设备点位进行聚合或抽稀处理;
[0015] 改变相机参数和/或设备点位数量和/或设备点位位置,以获得不同地图比例尺下的设备点位设备渲染效果。
[0016] 优选的,所述点位数据包括经度、纬度以及高程。
[0017] 优选的,所述设备包括物联网设备。
[0018] 优选的,s取值为0.8‑2。
[0019] 优选的,通过公式(1)获取视图矩阵:
[0020] (1)
[0021] 其中,mv为视图矩阵。
[0022] 优选的,通过公式(2)获取投影矩阵:
[0023] (2)
[0024] 其中,mp为投影矩阵。
[0025] 优选的,通过公式(3)计算获得每个设备点位在当前视角下投影到场景呈现容器的坐标pis:
[0026]   (3)。
[0027] 优选的,若进行聚合处理,则计算该网格内所有设备点位的坐标均值,以该坐标均值为坐标、点位数量为文本构建一个聚合点位,并对该聚合点位进行渲染,以获得聚合点位图标。
[0028] 优选的,若进行抽稀处理,则对该网格中第一个或最后一个或随机某个设备点位进行渲染,其他设备点位不作渲染。
[0029] 另一方面,还提供一种基于三维GIS的设备可视化渲染系统,其包括:
[0030] 点位数据采集单元,其用于从设备接口获取设备点位总数,每一设备点位均对应一个点位数据;
[0031] 数据追加单元,其用于将点位数据追加至已建立的点位数据集合S中,且且该点位数据集合S初始为空集合;
[0032] 容器构建单元,其用于构建场景呈现容器,且所述场景呈现容器中划分有网格;
[0033] 视图矩阵计算单元,其用于根据相机参数获取视图矩阵;
[0034] 投影矩阵计算单元,其用于根据相机参数获取投影矩阵;
[0035] 坐标转换单元,其用于遍历点位数据集合S中的点位数据,且将每个点位数据所对应的设备点位的经度、纬度、高程转换为三维空间直角坐标系下的世界坐标 ;
[0036] 投影坐标计算单元,其用于根据视图矩阵以及投影矩阵计算每个设备点位在当前视角下投影到场景呈现容器的坐标pis;
[0037] 点位匹配单元,其用于网格,将某一设备点位与每一网格坐标及尺寸进行匹配,以判断该设备点位是否落入某一网格内;
[0038] 聚合处理单元,其用于当某网格中的设备点位数量 不满足 时,对该网格内的设备点位进行聚合处理;
[0039] 抽稀处理单元,其用于当某网格中的设备点位数量 不满足 时,对该网格内的设备点位进行抽稀处理。
[0040] 本发明提供的技术方案,具有如下有益效果:
[0041] 本发明可实现对十万以上级别设备点位数据的快速、流畅可视化渲染,并且提高了不同地图比例尺下设备点位数据加载的加载速度和流畅度,极大提高了当前城市级别大数据设备在三维GIS中的应用效果。
[0042] 本发明的这些方面或其他方面在以下实施例的描述中会更加简明易懂。应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本发明。

附图说明

[0043] 为了更清楚地说明本发明实施例或相关技术中的技术方案,下面将对示例性实施例或相关技术描述中所需要使用的附图作一简单地介绍,附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。在附图中:
[0044] 图1为本发明实施例提供的基于三维GIS的设备可视化渲染方法的流程图。
[0045] 图2为本发明实施例中经过聚合/抽稀处理后的渲染效果图。
[0046] 图3为本发明实施例中在第一地图比例尺下的渲染效果图。
[0047] 图4为本发明实施例中在第二地图比例尺下的渲染效果图。
[0048] 图5为本发明实施例中在第三地图比例尺下的渲染效果图。
[0049] 图6为本发明又一实施例提供的基于三维GIS的设备可视化渲染系统的系统框图。

具体实施方式

[0050] 为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
[0051] 在本发明的说明书和权利要求书及上述附图中的描述的一些流程中,包含了按照特定顺序出现的多个操作,但是应该清楚了解,这些操作可以不按照其在本文中出现的顺序来执行或并行执行,仅仅是用于区分开各个不同的操作,序号本身不代表任何的执行顺序。另外,这些流程可以包括更多或更少的操作,并且这些操作可以按顺序执行或并行执行。需要说明的是,本文中的“第一”、“第二”等描述,是用于区分不同的消息、设备、模块等,不代表先后顺序,也不限定“第一”和“第二”是不同的类型。
[0052] 下面将结合本发明示例性实施例中的附图,对本发明示例性实施例中的技术方案进行清楚、完整地描述,显然,所描述的示例性实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0053] 以下结合附图并通过具体实施方式来进一步说明本发明的技术方案。
[0054] 实施例1
[0055] 参阅图1所示,本发明提供了一种基于三维GIS的设备可视化渲染方法,其包括如下步骤:
[0056] S1、建立点位数据集合S,且该点位数据集合S初始为空集合;
[0057] S2、从设备接口获取设备点位总数,每一设备点位均对应一个点位数据,同时,所述点位数据包括唯一标识、经度、纬度、高程以及自定义属性;
[0058] 每次取pS个点位数据,共取pn次,由此获得pS*pn个点位数据,且每次取得点位数据后,均将点位数据追加至点位数据集合S中;
[0059] 进一步的,pS的取值根据单个点位数据的字节大小来确定,如单个点位数据大小为500B时,pS的取值可为10000,由此避免因数据量大,导致一次传输时间过长;所述设备包括物联网(IoT)设备;
[0060] S3、构建宽wc、高hc的场景呈现容器,且所述场景呈现容器中划分有网格,且将渲染设备点所使用的图标尺寸设定为:宽 、高 ,网格尺寸设定为宽 ,高,其中,s为网格尺寸与图标尺寸的比值,通过调整s的大小来调节设备点之间的距离,一般取值为0.8‑2;
[0061] 并在此基础上计算网格列数 ,行数 ,第i行j列的网格坐标为,其中 ;
[0062] S4、获取某时刻t时的相机参数,且所述相机参数包括:世界坐标 ,朝向的单位向量 ,上方向的单位向量 ,右方向的单位向量,近裁剪面 ,远裁剪面 ,视场角f以及宽高比a,其中,所述朝向、上方向、右方向分别为为相机正立放置时,相机视线的方向、相机上方的方向以及相机右侧的方向,三者构成右手系坐标系;
[0063] 并根据所述相机参数获取视图矩阵以及投影矩阵;具体的,本实施例中通过公式(1)获取视图矩阵,以及通过公式(2)获取投影矩阵:
[0064] (1)
[0065] 其中,mv为视图矩阵;
[0066] (2)
[0067] 其中,mp为投影矩阵;
[0068] S5、遍历点位数据集合S中的点位数据,且将每个点位数据所对应的设备点位的经度、纬度、高程转换为三维空间直角坐标系下的世界坐标 ,坐标系原点为地球参考椭球体的中心;
[0069] S6、根据视图矩阵以及投影矩阵计算每个设备点位在当前视角下投影到场景呈现容器的坐标pis,具体的,本实施例中,根据公式(3)计算获得每个设备点位在当前视角下投影到场景呈现容器的坐标pis:
[0070]   (3)
[0071] S7、遍历S3中得到的网格,将某一设备点位 与每一网格坐标及尺寸进行匹配,以判断该设备点位是否落入某一网格内, 由于步骤S6中已将设备点位投影到网格所在的同一坐标空间中,且网格为矩形或正方形,因此,若某设备点位和某网格满足且 ,则认为该设备点位落入该网格内;
[0072] 若该设备点位落入某一网格内,则确定该点需要被渲染;
[0073] 若该设备点位未落入任一网格内,则确定该点无需被渲染;
[0074] S8、获取每一网格中的设备点位数量 ,且设定聚合/抽稀阀值为 ;
[0075] 若某网格中的设备点位数量 满足 ,则遍历该网格内的设备点位,在各设备点位的坐标处渲染点位图标;否则,对该网格内的设备点位进行聚合或抽稀处理,以获得如图2所示的聚合/抽稀效果图;
[0076] 具体的,若进行聚合处理,则计算该网格内所有设备点位的坐标均值,以该坐标均值为坐标、点位数量为文本构建一个聚合点位,并对该聚合点位进行渲染,以获得聚合点位图标;进一步的,当系数s小于或等于1.2时,也可将该网格内第一个或最后一个或随机某个设备点位的坐标作为聚合点位的坐标;
[0077] 若进行抽稀处理,则对该网格中第一个或最后一个或随机某个设备点位进行渲染,其他设备点位不作渲染;
[0078] S9、改变相机参数和/或设备点位数量和/或设备点位位置,重复S4至S8过程,以获得不同地图比例尺下的设备点位设备渲染效果。
[0079] 如图3‑5即示出了在第一地图比例尺、第二地图比例尺以及第三地图比例尺下的设备点位渲染效果,且第一地图比例尺、第二地图比例尺以及第三地图比例尺依次减小。
[0080] 应该理解的是,上述虽然是按照某一顺序描述的,但是这些步骤并不是必然按照上述顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,本实施例的一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
[0081] 由此,本实施例通过三维地图撒点即可实现对十万以上级别设备点位数据的快速、流畅可视化渲染,并且提高了不同地图比例尺下设备点位数据加载的加载速度和流畅度,极大提高了当前城市级别大数据设备在三维GIS中的应用效果,使其在智慧城市数字孪生等应用领域具有更为广泛的应用前景。
[0082] 实施例2:
[0083] 本实施例提供了一种用于实现实施例1所述设备可视化渲染方法的设备可视化渲染系统,如图6所示,包括:
[0084] 点位数据采集单元1,其用于从设备接口获取设备点位总数,每一设备点位均对应一个点位数据;
[0085] 数据追加单元2,其用于将点位数据追加至已建立的点位数据集合S中,且且该点位数据集合S初始为空集合;
[0086] 容器构建单元3,其用于构建宽wc、高hc的场景呈现容器,且所述场景呈现容器中划分有网格,且将渲染设备点所使用的图标尺寸设定为:宽 、高 ,网格尺寸设定为宽,高 ;
[0087] 视图矩阵计算单元4,其用于根据相机参数获取视图矩阵,具体获取方式与步骤S4相同;
[0088] 投影矩阵计算单元5,其用于根据相机参数获取投影矩阵,具体获取方式与步骤S4相同;
[0089] 坐标转换单元6,其用于遍历点位数据集合S中的点位数据,且将每个点位数据所对应的设备点位的经度、纬度、高程转换为三维空间直角坐标系下的世界坐标;
[0090] 投影坐标计算单元7,其用于根据视图矩阵以及投影矩阵计算每个设备点位在当前视角下投影到场景呈现容器的坐标pis,具体获取方式与步骤S6相同;
[0091] 点位匹配单元8,其用于遍历S3中得到的网格,将某一设备点位与每一网格坐标及尺寸进行匹配,以判断该设备点位是否落入某一网格内;
[0092] 聚合处理单元9,其用于当某网格中的设备点位数量 不满足 时,对该网格内的设备点位进行聚合处理,具体获取方式与步骤S8相同;
[0093] 抽稀处理单元10,其用于当某网格中的设备点位数量 不满足 时,对该网格内的设备点位进行抽稀处理,具体获取方式与步骤S8相同。
[0094] 综上所述,本发明提供的技术方案具有以下优点:
[0095] 本发明能够实现对十万以上级别设备点位数据的快速、流畅可视化渲染,并且提高了不同地图比例尺下设备点位数据加载的加载速度和流畅度,极大提高了当前城市级别大数据设备在三维GIS中的应用效果,解决了当前智慧城市应用中,对三维场景下物联设备集成的瓶颈问题,使其在智慧城市数字孪生等应用领域具有更为广泛的应用前景。
[0096] 以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。