CN111753041B - 数据聚合渲染方法、装置、系统、电子设备及存储介质 - Google Patents
数据聚合渲染方法、装置、系统、电子设备及存储介质 Download PDFInfo
- Publication number
- CN111753041B CN111753041B CN202010624219.4A CN202010624219A CN111753041B CN 111753041 B CN111753041 B CN 111753041B CN 202010624219 A CN202010624219 A CN 202010624219A CN 111753041 B CN111753041 B CN 111753041B
- Authority
- CN
- China
- Prior art keywords
- data
- map
- points
- central point
- information
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/29—Geographical information databases
-
- 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
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Remote Sensing (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Between Computers (AREA)
- Image Generation (AREA)
Abstract
本发明提供的数据聚合渲染方法、装置、系统、电子设备及存储介质,该方法应用于服务器,包括:接收客户端发送数据渲染请求信息;该请求信息中包含当前可视范围对应的多个地图分片信息;依据上述多个地图分片信息和多个数据点的坐标信息对该多个数据点进行聚合,获得在的每个地图分片对应的第一类中心点集合;每个第一类中心点由至少一个数据点聚合而成;相比于将所有数据点传输给客户端的方式,本发明通过数据聚合后将聚合得到的中心点传输给客户端,降低了服务器向客户端传输的数据量和服务器的数据处理量整个过程能够减小带宽占用率以及CPU资源消耗率,提高数据点的渲染效率和数据展示效果。
Description
技术领域
本发明涉及信息处理领域,具体而言,涉及一种数据聚合渲染方法、装置、系统、电子设备及存储介质。
背景技术
随着智慧城市、数据中心等概念的出现,地图在各个行业,例如社区、交通、监控、环保等领域应用越来越广泛。
目前现有的聚合方式主要是前端聚合或者后端聚合,即直接在客户端将数据点进行聚合和展示或者现在服务器端进行数据聚合,然后将聚合结果传输给客户端进行展示,当数据量较小时,这两种方式均可正常展示数据,但是当数据达到数十万,甚至于百万级别时,受网络带宽、服务器性能、客户端性能等影响,客户端和服务器端之间的数据传输量较大,导致带宽占用率高,CPU资源占用大,降低了数据点的展示效率和效果。
因此,针对海量数据的展示问题,如何降低数据传输过程中的带宽占用率以及数据聚合过程中的CPU资源消耗率,提高数据点的渲染效率和数据展示效果,是需要解决的技术问题。
发明内容
有鉴于此,本发明提供一种数据聚合渲染方法、装置、系统、电子设备及存储介质,能够针对海量数据,降低数据传输过程中的带宽占用率以及数据聚合过程中的CPU资源消耗率,提高数据点的渲染效率和数据展示效果。
为了实现上述目的,本发明技术方案如下:
第一方面,本发明实施例提供一种数据聚合渲染方法,应用于服务器;所述服务器用于维护地图的多个数据点的坐标信息;所述方法包括:
接收所述客户端发送数据渲染请求信息;所述请求信息中包含当前可视范围对应的多个地图分片信息;
依据所述多个地图分片信息和所述个数据点的坐标信息对所述多个数据点进行聚合,获得在的每个所述地图分片对应的第一类中心点集合;每个所述第一类中心点由至少一个所述数据点聚合而成;
将每个所述地图分片对应的第一类中心点集合发送至所述客户端,以使所述客户端基于所述第一类中心点集合在所述当前可视范围内进行渲染。
第二方面,本发明实施例提供一种数据聚合渲染方法,应用于客户端,所述方法包括:
向服务器发送数据渲染请求信息;所述请求信息中包含当前可视范围对应的多个地图分片信息;
接收所述服务器发送的每个所述地图分片对应的第一类中心点集合;每个所述第一类中心点由至少一个数据点聚合而成;
基于所述第一类中心点集合在所述当前可视范围内进行渲染。
第三方面,本发明实施例提供一种数据聚合渲染装置,包括:存储模块、接收模块、聚合模块和发送模块;所述存储模块用于存储地图的多个数据点的坐标信息;
所述接收模块,用于接收客户端发送数据渲染请求信息;所述请求信息中包含当前可视范围对应的多个地图分片信息;
所述聚合模块,用于依据所述多个地图分片信息和所述个数据点的位置信息坐标信息对所述多个数据点进行聚合,获得在的每个所述地图分片对应的第一类中心点集合;每个所述第一类中心点由至少一个所述数据点聚合而成;
所述发送模块,用于将每个所述地图分片对应的第一类中心点集合发送至所述客户端,以使所述客户端在基于所述第一类中心点集合在所述当前可视范围内进行渲染。
第四方面,本发明实施例提供一种数据聚合渲染装置,包括:发送模块、接收模块、渲染模块;
所述发送模块,用于向服务器发送数据渲染请求信息;所述请求信息中包含当前可视范围对应的多个地图分片信息;
所述接收模块,用于接收所述服务器发送的每个所述地图分片对应的第一类中心点集合;每个所述第一类中心点由至少一个数据点聚合而成;
所述渲染模块,用于基于所述第一类中心点集合在所述当前可视范围内进行渲染。
第五方面,本发明实施例提供一种数据聚合渲染系统,包括服务器和客户端;所述客户端,用于向服务器发送数据渲染请求信息;所述请求信息中包含当前可视范围对应的多个地图分片信息;所述服务器,用于维护地图的多个数据点的坐标信息;还用于依据所述多个地图分片信息和所述个数据点的位置信息坐标信息对所述多个数据点进行聚合,获得在的每个所述地图分片对应的第一类中心点集合;每个所述第一类中心点由至少一个所述数据点聚合而成;所述服务器,还用于将每个所述地图分片对应的第一类中心点集合发送至所述客户端;所述客户端,还用于基于所述第一类中心点集合在所述当前可视范围内进行渲染。
第六方面,本发明实施例提供一种电子设备,包括处理器和存储器,所述存储器存储有能够被所述处理器执行的机器可执行指令,所述处理器可执行所述机器可执行指令以实现第一方面所述的数据聚合渲染方法或者实现第二方面所述的数据聚合渲染方法。
第七方面,本发明实施例提供一种存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时以实现第一方面所述的数据聚合渲染方法或者实现第二方面所述的数据聚合渲染方法。
本发明实施例提供一种数据聚合渲染方法、装置、系统、电子设备及存储介质,该方法应用于服务器;服务器用于维护地图的多个数据点的坐标信息;所述方法包括:接收所述客户端发送数据渲染请求信息;所述请求信息中包含当前可视范围对应的多个地图分片信息;依据所述多个地图分片信息和所述个数据点的坐标信息对所述多个数据点进行聚合,获得在的每个所述地图分片对应的第一类中心点集合;每个所述第一类中心点由至少一个所述数据点聚合而成;与现有技术相比,服务器通过对地图分片进行处理,能够缓解服务器端数据处理的压力,同时,服务器根据获得的分片信息对数据点进行多次聚合,不仅降低了存储层向服务层传输的数据量以及在服务层的数据计算量,相比于将所有数据点传输给客户端的方式,本发明通过数据聚合后将聚合得到的中心点传输给客户端,降低了服务器向客户端传输的数据量,整个过程能够减小带宽占用率以及CPU资源消耗率,提高数据点的渲染效率和数据展示效果。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本发明实施例提供的一种应用于服务器的数据聚合渲染方法的示意性流程图;
图2A为本发明实施例提供的一种数据聚合渲染结果示意图;
图2B为本发明实施例提供的另一种数据聚合渲染结果示意图;
图3为本发明实施例提供的另一种应用于服务器的数据聚合渲染方法的示意性流程图;
图4为本发明实施例提供的另一种应用于服务器的数据聚合渲染方法的示意性流程图;
图5为本发明实施例提供的一种应用于客户端的数据聚合渲染方法的示意性流程图;
图6为本发明实施例提供的另一种应用于客户端的数据聚合渲染方法的示意性流程图;
图7为本发明实施例提供的另一种应用于客户端的数据聚合渲染方法的示意性流程图;
图8为本发明实施例提供的一种数据聚合渲染装置的功能模块图;
图9为本发明实施例提供的另一种数据聚合渲染装置的功能模块图;
图10为本发明实施例提供的一种数据聚合渲染系统的架构图;
图11为本发明实施例提供的一种电子设备的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。
因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
在本发明的描述中,需要说明的是,若出现术语“上”、“下”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,或者是该发明产品使用时惯常摆放的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。
此外,若出现术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
需要说明的是,在不冲突的情况下,本发明的实施例中的特征可以相互结合。
目前,针对海量地图数据的展示主要是将数据传输至客户端并将所有点展示到地图上,当数据量较小时,这种显示方式能够达到较佳的显示效果,但是当数据达到数十万,甚至于百万级别时,大量的点数据集中显示在用户端界面,影响用户观看,无法清晰的了解对应要素的具体分布情况。
因此,相关技术采用了在数据展示之前先将海量的数据点进行聚合,然后将聚合后的数据点进行展示,现有的聚合方式一种是利用客户端进行聚合,然后基于聚合后的结果进行展示,另一种是通过服务器进行后端聚合,然后将聚合后的数据传输给客户端,当存在海量数据时,针对第一种聚合方式,大数量计算使得客户端的CPU资源的消耗过大,针对第二种聚合方式,不仅会由于数据计算量大而出现CPU资源的消耗过大的问题,还会在数据传输过程中出现带宽占用率高的问题。
也就是说,当遇到了海量的数据点的时候,现有的聚合处理方法,无法解决CPU资源的消耗过大和带宽占用率高的问题,容易造成服务器和客户端超负荷的情况,降低了数据点的展示效率和效果。
为了解决上述技术问题,本发明实施例提供了一种数据聚合渲染方法、装置、电子设备及存储介质,其核心在于,降低服务器和客户端之间的数据传输量以及服务器内部的数据传输量和计算量,能够有效减小计算压力和传输压力,提高数据点的渲染效率和数据展示效果。
参见图1,图1为本发明实施例提供的一种应用于服务器的数据聚合渲染方法的示意性流程图,该方法可以应用于服务器中,其中包括:
S101、接收客户端发送数据渲染请求信息。
在本发明实施例中,上述的请求信息中可以包含当前可视范围对应的多个地图分片信息;该地图分片可以是客户端与服务器建立连接后,预先依据WMTS(WebMapTileService,Web地图瓦片服务)服务规范,将当前可视范围切割成的指定尺寸大小(例如256*256个像素或512*512像素)的瓦片。客户端可以根据当前可视范围的比例尺级别将当前可视范围进行切片。可知,客户端仅仅将与地图分片数据传输给服务器,可以降低向服务器传输的数据量,同时,服务器端通过对地图分片进行处理,能够缓解服务器端数据处理的压力,改善用户体验。
S102、依据多个地图分片信息和多个数据点的坐标信息对多个数据点进行聚合,获得每个地图分片对应的第一类中心点集合。
S103、将每个地图分片对应的第一类中心点集合发送至客户端,以使客户端基于第一类中心点集合在当前可视范围内进行渲染。
在本发明实施例中,由于每个第一类中心点可以是由一个甚至多个数据点聚合而成,因此聚合后的得到的第一类中心点的数据量远小于数据点的数据量,因此,服务器向客户端传输的数据量下降,同时,客户端在地图的当前分辨率下,将聚合后的第一类中心点进行显示,降低了显示的数据量,避免大量的点数据集中显示在用户端界面。
可以理解的是,在当前可视范围的分辨率下,客户端除了将第一类中心点进行显示以外,还可以显示原始没有被聚合的数据点。例如,在当前可视范围的分辨率较低时,也可以理解为地图的比例尺级别越低时,通过上述流程可以将所有数据点进行聚合,得到多个第一类中心点,客户端可以显示所有第一类中心点;在当前可视范围的分辨率较高时,即地图比例尺的级别较高时,通过上述流程进行数据聚合获得第一类中心点,同时可能存在没有被聚合的原始数据点,客户端可以显示所有第一类中心点以及没有被聚合的原始数据点。
为了方便理解本发明实施例所能达到的技术效果,本发明实施例提供的一种数据聚合渲染结果示意,其中,该场景中的数据点以摄像头位置数据为例,但不限于摄像头。
在当前可视范围内,客户端最终显示的是16个中心点位置以及对应的权值,即A(38371)、B(36269)、C(35309)、D(32694)、E(44532)、F(54421)、G(45280)、H(57886)、I(95080)、J(69707)、K(79529)、L(76268)、M(86964)、N(77877)、O(79303)、P(90963)个第一类中心点,括号内的数值表示该中心点对应的摄像头的个数,避免大量的摄像头集中显示在用户端界面。当用户需要了解每个类中心内摄像头的分布情况时,可以通过终端设备在该当前当前可视范围对应的屏幕上执行放大操作,并更当前地图范围区域以及对应的分辨率,通过上述实现过程可以获得如图2A所示显示结果,图2A为本发明实施例提供的一种数据聚合渲染结果示意图。
在图2A所示的当前可视范围内,每个中心点可以看作是上述当前可视范围中其中的一个中心点的进一步显示结果,用户继续将当前可视地图范围进行扩大,变更当前地图范围区域以及对应的分辨率,通过上述实现过程可以获得如图2B所示显示结果,图2B为本发明实施例提供的另一种数据聚合渲染结果示意图,在图2B所示的当前可视范围内,存在聚合后的第一类中心点以及为被聚合的摄像头,如此一来,用户可以了解各个摄像头的分布情况。
本发明实施例提供一种数据聚合渲染方法,应用于服务器;服务器用于维护地图的多个数据点的坐标信息;所述方法包括:接收客户端发送数据渲染请求信息;该请求信息中包含当前可视范围对应的多个地图分片信息;依据多个地图分片信息和所述个数据点的坐标信息对多个数据点进行聚合,获得在的每个地图分片对应的第一类中心点集合;每个第一类中心点由至少一个数据点聚合而成;与现有技术相比,服务器通过对获得的地图分片进行处理,能够缓解服务器端数据处理的压力,同时,服务器根据获得的分片信息对数据点进行多次聚合,不仅降低了服务器内部存储层到服务层的传输数据量以及在服务层的数据计算量,还降低了服务器与客户端之间的数据传输量,相比于将所有数据点传输给客户端或服务器的方式,本发明通过数据聚合后将聚合得到的中心点传输给客户端,降低了服务器向客户端传输的数据量,整个过程能够减小带宽占用率以及CPU资源消耗率,提高数据点的渲染效率和数据展示效果。
可选地,上述实现流程对地图进行分片以及对原始数据点进行聚合后再显示的方式降低了客户端和服务器端之间的数据传输量,降低了带宽占用率,基于上述实现流程,服务器根据获得的分片信息对数据点进行聚合,为了能够减小服务器内部的数据计算量,下面给出一种对数据点进行聚合的实现方式,参见图3,图3为本发明实施例提供的另一种应用于服务器的数据聚合渲染方法的示意性流程图。
S102-1、针对每个地图分片,根据坐标范围和预设像素距离确定待聚合数据点和聚合参数。
在本发明实施例中,每个分片的坐标范围内可以存在一个或者多个数据点,这些数据点可以作为待聚合数据点;聚合参数表征待聚合数据点之间的相似度,通过聚合参数可以确定位置相似度较高的数据点,进而可以将这些相似度较高的数据点进行拟合,能够降低服务器内部从存储层到服务层的数据传输量,节省了传输耗时。
在本发明实施例中,聚合参数可以根据每个分片的坐标范围以及预设像素距离计算得到,下面给出一种确定聚合参数的实现方式:假设某个分片的坐标范围为(X1,Y1;X2,Y2),预设像素距离可以定义为90个像素,通过公式(1)和公式(2)可以计算出当前分片的分辨率。
然后基于得到的分辨率以及预设像素距离,计算分辨率*聚合距离/10,将得到的结果预设的映射关系进行比对,确定出聚合参数。
预设的映射关系可以如表1所示:
例如,假设某个分片的坐标范围为(129.060749,51.188616,79.226765,20.358497),该分片大小为512个像素,计算得到分片的分辨率为4892,通过计算4892*90/10=44,028米=44千米,该像素误差在±78和±20之间,可以取聚合参数为3。
S102-2、根据聚合参数和每个数据点对应的哈希值对待聚合数据点进行聚合,获得至少一组数据点集合。
在本发明实施例中,每个数据点的经纬度坐标具有对应的哈希值;例如,依据数据点的经纬度值计算其GeoHash值,Geohash可以将二维坐标转换为一维字符串,依据GeoHash定义,可用wm7c8ynb84表示数据点P1的二维坐标(106.565676,29.827982),可用wm7c8c79c9表示数据点P2的二维坐标(106.56127729.802099)。
通过上述表示方式可以看出,数据点对应的哈希值是具有一定长度的字符串,根据聚合参数和数据点对应哈希值能较好的对相似数据进行拟合;若存在两个数据点的Hash值前N(N即为本发明实施例中的聚合参数)位相同,则可认为该两点相似度较高,可进行拟合;如此一来,可以获得至少一组数据点集合,在每个集合中,数据点的哈希值前N为均相同;服务器存储层中相似数据点可以拟合在一起,能够降低服务器存储层向服务层传输的数据量。
例如,若聚合参数取4时,可知上述2个数据点的Hash值前4位值一致,均为wm7c,则认为上述两点相似度较高,可以进行拟合;若聚合参数取4取6时,P1取值为wm7c8y,P2取值为wm7c8c,其值不一致,则认为上述两点相离较远,不进行拟合。
S102-3、针对每组数据点集合,根据待聚合数据点的个数和每个待聚合数据点的坐标信息确定第二类中心点集合。
在本发明实施例中,每个第二类中心点具有对应的坐标值和第二权值;该第二权值用于表征第二类中心点对应的数据点的个数,即数据点集合中的数据点的个数;例如,针对一个分片而言,在其坐标范围内存在100个数据点,根据聚合参数确定了10组数据点集合,每组数据点集合中包含10个数据点;则每个第二类中心点对应的权值即为10,根据这10个数据点的坐标信息可以确定每个数据点集合对应的第二类中心点,下面给出两种确定第二类中心点的实现方式:
其中确定第二类中心点的获取有两种方式:
方式一:计算数据点集合内的所有数据点的经度平均值以及纬度平均值,将经度平均值以及纬度平均值对应的点作为第二类中心点。
方式二、由于每个聚合参数足够小,且每个地图分片为规则矩形,因此可近似的认为每个分片的中心点为第二类中心点。
可以理解的是,若每个地图分片内存在的数据量巨大时,方式二相对方式一,其计算效率更快。
在基于上述实现方式对数据点进行聚合后,为了防止在客户端进行显示时可能出现数据点分布重叠的现象,还需要根据预设像素距离对第二类数据点进行聚合,使得获得的聚合中心满足预设像素距离的要求,避免在客户端进行显示时可能出现数据点分布重叠的现象,因此可继续参见步骤S202-4。
S102-4、根据预设像素距离对第二类中心点进行聚合,获得第一类中心点集合。
在本发明实施例中,每个第一类中心点具有对应的坐标值和第一权值;该第一权值用于表征第一类中心点对应的数据点的个数,也可以理解为是聚合成第一类中心点的多个第二类中心点对应的第二权值之和;根据预设像素距离对第二类中心点进行聚合,使得聚合后得到的任意两个第一类中心点之间的像素距离大于或等于预设像素距离,避免出现数据点分布较稀疏或重叠的现象。下面给出一种对第二类中心点进行聚合的实现方式:
步骤一、获取每个第二类中心点对应的坐标值。
步骤二、将每个坐标值转换为与客户端采用的地图坐标系统匹配的坐标并将坐标归一化。
在本发明实施例中,地图坐标系统可以为EPSG:4326,EPSG:3857,China2000中任意一种,本发明实施例可以采用EPSG:3857坐标系统,其对应的地球坐标系为墨卡托坐标,因此,可以将每个坐标值转换为墨卡托坐标并归一化。例如针对数据点的经纬度坐标为(105,29),转化为墨卡托坐标并归一化后可以为(0.7916666666666667,0.4157668214737368),在转换的过程中,若纬度转换结果小于0设其为0,若大于1设其为1。
步骤三、根据kd-tree算法和归一化后的坐标值生成kd-tree。
例如,假设存在12个第二类中心点,将其按照经度坐标X从小到大排列,然后取中间值,假设中间值为105,大于这个值的点有5个,小于这个值的点为6个,等于该值的点为1个;再分别根据拆分出来的两个范围X>105和X<105再次进行分类,本次拆分按纬度值从小到大排列,取中间值;比如在X>105范围中,得到纬度Y=29为分割点,Y<29存在2个点,Y>29存在2个点,Y=29存在1个点。同理对X<105按上述描述划分,直到划分出来的聚合簇内的点数达到设置阈值为止,至此kd-tree构建完成。
步骤四、依据聚合距离,遍历所有待聚合的第二类中心点,获得第一类中心点集合,其中,第一类中心点对应的坐标值可以根据关系式CENTER=∑(Location*Widget)/∑Widget,其中,Location表征第二类中心点对应的坐标;Widget表征第二类中心点对应的第二权值。
例如,假设某一个第一类中心点由第二类中心点a(X1,Y1,2)和第二类中心点b(X2,Y2,3)聚合而成,其中,2表示a对应的数据点个数,3表示b对应的数据点个数。则根据关系式((X1,Y1)*2+(X2,Y2)*3)/(2+3)可以得到由a和b聚合而成的第一类中心点的坐标,第一类中心点对应的第一权值可以为2+3=5,即a与b对应的数据点个数之和。
通过步骤一至步骤四,可以获得第一类中心点集合,同时可以确定每个第一类中心点对应的坐标值和第一权值。
上述实施例中给出了在服务器内部进行多次数据聚合使得最终服务器向客户端传输的数据量大大降低的实现方式,其中,S102-1和S102-3可以看作是对多个数据点进行第一次数据聚合,可以降低服务器内部从存储层到服务层的数据量;S102-4可以看作是对第一次数据聚合后得到的数据点进行第二次数据聚合,可以降低了服务器到客户端之间的数据传输量。
需要说明的是,在本发明实施例中,上述的第一次数据聚合和第二次数据聚合可以在一台服务器内部完成,即该服务器可以用来维护多个数据点的位置信息,既能实现降低了服务器内部从存储层到服务层的数据量,又能降低了服务器到客户端之间的数据传输量;在其他可能的实现方式中,上述的第一次数据聚合和第二次数据聚合可以分别在存储层的存储服务器和服务层的程序运行服务器内完成,存储服务器可以用来维护多个数据点的位置信息,且存储服务器通过第一次数据聚合,降低存储服务器与程序服务器之间的数据传输量,节省传输耗时,程序运行服务器通过第二次数据聚合,降低与客户端之间的数据传输量,用户可以根据实际的情况选择上述任意一种实现方式来针对海量数据,实现降低数据传输过程中的带宽占用率以及数据聚合过程中的CPU资源消耗率,提高数据点的渲染效率和数据展示效果。
可选地,基于上述实现方式对多个数据点进行多次聚合后,可以得到第一类中心点集合,其中,每个第一类中心点对应有多个原始数据点,在一些场景中,客户端展示完第一类中心点之后,有了解第一类中心点对应的原始聚合数据的需求,因此,为了能够根据第一类中心点反查出其对应的数据点信息,有效保障了地图的可交互性,下面在图1的基础上,给出一种可能的实现方式,参见图4,图4为本发明实施例提供的另一种应用于服务器的数据聚合渲染方法的示意性流程图。
S104、接收客户端发送的数据查询请求信息。
可以理解是,数据查询请求信息中包含至少一个待查询第一类中心点。客户端在获得服务器发送的聚合后的第一类中心点集合后,若用户存在了解第一类中心点对应的原始数据点信息的需求,可以通过客户端向服务器端发送数据查询请求信息,将需要查询的第一类中心点发送给服务器端。
S105、依据每个第一类中心点对应的数据点的坐标值和哈希值确定每个第一类中心点对应坐标范围和哈希值列表。
可以理解的是,每个第一类中心点对应有多个原始数据点,每个数据点对应有坐标值和哈希值,因此,针对每个第一类中心点而言,其对应的哈希列表即可以为对应的所有数据点的哈希值集合;而根据第一类中心点对应的数据点的坐标可以确定第一类中心点对应的坐标范围,例如,第一类中心点的坐标范围可以为(Xmin,Ymin;Xmax,Ymax),其中,Xmin,Ymin分别为所有数据点的坐标中的最小经度坐标和最小维度坐标,Xmax,Ymax分别为所有数据点的坐标中的最大经度坐标和最大维度坐标。
S106、根据待查询第一类中心点对应坐标范围和哈希值列表查询待查询第一类中心点对应的数据点,并将查询到的数据点发送至客户端。
可以理解的是,客户端获得服务器端查询的数据点信息之后,可以在地图中进行展示,以方便用户了解每一个第一类中心点对应的原始数据点信息。
需要说明的是,步骤S104与步骤S105之间可以不具有先后顺序,图4仅示出一种可能的顺序关系。但两个步骤也可以同时执行,或者先执行步骤S105,再执行步骤S104,此处不予限定。
通过上述实施例描述的内容可知,本发明实施例提供是数据聚合渲染方法,应用在服务器端,服务器通过接收客户端发送的地图分片信息对数据点进行聚合,降低了最终返回给客户端进行数据显示的数据量,同时,服务器在内部进行数据聚合的过程,首先通过聚合参数将相似的数据点进行拟合,降低了从存储层到服务层的数据传输量和服务层的数据计算量,降低数据传输过程中的带宽占用率以及数据聚合过程中的CPU资源消耗率,能够提高数据点的渲染效率和数据展示效果。
为此,本发明还提供一种数据聚合渲染方法,该方法应用在与服务器进行数据交互的客户端,本发明实施将从客户端侧详细阐述该方降低数据传输过程中的带宽占用率的实现原理,也能够实现提高数据点的渲染效率和数据展示效果的有益效果。
请参见图5,图5为本发明实施例提供的一种应用于客户端的数据聚合渲染方法的示意性流程图。其中包括以下几个步骤:
S504、向服务器发送数据渲染请求信息。
可以理解的是,上述的请求信息中包含当前可视范围对应的多个地图分片信息,该地图分片可以是客户端与服务器建立连接后,预先依据WMTS(WebMapTileService,Web地图瓦片服务)服务规范,将当前可视范围切割成的指定尺寸大小(例如256*256个像素或512*512像素)的瓦片。客户端可以根据当前可视范围的比例尺级别将当前可视范围进行切片。可知,客户端仅仅将与地图分片数据传输给服务器,可以降低向服务器传输的数据量,同时,服务器端通过对地图分片进行处理,能够缓解服务器端数据处理的压力,改善用户体验。
S505、接收服务器发送的每个地图分片对应的第一类中心点集合。
可以理解的是,每个第一类中心点由至少一个数据点聚合而成。
S506、基于第一类中心点集合在当前可视范围内进行渲染。
可选地,为了能够缓解服务器端数据处理的压力,客户端在于服务器进行连接之后,可以预先将当前可视范围切割成地图分片,然后将地图分片数据传输给服务器,服务器可以根据获得的分片数据信息来对数据点进行聚合,减小了数据计算量,为此,在图5的基础上,给出一种将当前可视范围进行分片的实现方式,参见图6,图6为本发明实施例提供的另一种应用于客户端的数据聚合渲染方法的示意性流程图;即在向服务器发送数据渲染请求信息的步骤之前,所述方法还包括:
S501、响应用户操作指令,确定当前可视范围对应的坐标范围和比例尺级别信息。
在本发明实施例中,用户可以在客户端中对地图进行拉拽或缩放,客户端获得用户的操作指令后,确定地图的当前可视范围的坐标范围,即并根据当前可视范围的左上角经纬度坐标、右下角经纬度坐标确定当前可视范围的坐标范围,还可以获取当前可视范围对应的比例尺层级信息,该比例尺层级信息可以用来确定地图分片的行号范围和列号范围,其中,行号和列号用来标识不同的地图分片。
S502、基于预先配置的分片切割算法对当前可视范围进行切割获得多个地图分片。
在本发明实施例中,预设的分片切割算法可以是地图金字塔模型算法。当前可视范围切割得到的多个分片可以看作是一个分片矩阵,每个分片由分片的行(TileRow)列(TileCol)值以及当前地图的比例尺层级进行标识,行列值分别从分片矩阵左上角点所在的分片开始算起,即当前地图的切片原点(-20037508.342787,20037508.342787)开始算起,起始行列值是(0,0),依次向下向右增加,对于行号为11列号为5的分片,其对应的索引信息可以表示为4-5-11,其中,4表征当前可视范围的比例尺层级。
S503、根据当前可视范围的坐标范围、比例尺层级信息确定每个地图分片的坐标范围。
在本发明实施例中,根据当前可视范围的坐标范围可以确定分片矩阵的行号范围和列号范围,为了有效防止地图在小范围变化时,出现数据抖动,本发明实施例设置缓冲距参数(按需自定义),并将分片矩阵的左上角瓦片编号值需减去缓冲距,右下角瓦片编号值需加上缓冲距,并对已加缓冲距的瓦片编号取下限,即可获得可视范围内瓦片编码范围区间,防止出现数据抖动;然后根据得到的瓦片范围编码,反算求得每张瓦片的经纬度范围,并记录每张瓦片相对于屏幕的位置,该结果为一系列坐标对。
为了方便理解上述确定地图分片的坐标范围的实现方式,假设当前可视区域的坐标范围为(129.060749,51.188616;79.226765,20.358497),比例尺层级Z为5,定义可视区域为矩形区域,宽高分别为1100*900。缓冲距为0.25个瓦片宽度。
首先,根据关系式(3)和关系式(4),可以获得瓦片行号(X)范围为(11.5,13.7),瓦片列号(Y)范围为(5.3,7.0),在瓦片范围上添加缓冲距为0.25个瓦片宽度,并取整可得结果行号范围(11,13),列号范围(5,7)。
然后,根据得到的对于行号为11列号为5的瓦片,确定其索引信息为5-5-11。
最后,依据公式(5)和公式(6)可得地图分片的坐标范围为(67.500000,40.979896;90.000003,55.776571)。
通过上述方式可以获得地图分片的坐标范围等信息,将这些信息发送给服务器,服务器即可根据地图分片信息对数据进行聚合。
可以理解的是,由于地图的关注点一般由中心向四周扩散,并且缓冲距区域加载优先级最低,因此客户端在向服务器发送地图分片信息之前,还可以对所有分片的坐标对进行排序,排序方式需以屏幕中心为原点,离屏幕中心点越近,排序越靠前,加载优先级越高,能够提升用户体验。
可选地,地图分片信息还包括预设像素距离,客户端获得第一类中心点集合之后,可以在基于第一类中心点在当前可视范围内进行渲染,为了保障分片边界的数据点在显示的过程中无压盖现象出现,下面给出一种可能的渲染方式实现方式,参见图7,图7为本发明实施例提供的另一种应用于客户端的数据聚合渲染方法的示意性流程图;其中,S506的一种可能的实现方式为:
S506-1、针对每个地图分片,将与地图分片的边界之间的像素距离大于预设像素距离的第一类中心点作为目标第一类中心点。
S506-2、基于目标第一类中心点集合在当前可视范围内进行渲染。
S506-3、将与地图分片的边界之间的像素距离小于预设像素距离的第一类中心点进行聚合,获得第三类中心点集合。
S506-4、基于第三类中心点集合在当前可视范围内进行渲染。
在本发明实施例中,客户端接受到第一类中心点集合后,为了防止分片边界的数据点出现压盖现象,对第一类中心点集合进行筛选,即将距离边界距离大于预设像素距离的第一类中心点绘制到地图中,将与边界之间的距离小于预设像素距离的第一类中心点放入待聚合点集中,对待聚合点集中的所有第一类中心点进行第三次聚合,并将聚合后得到的中心点绘制到地图可视区域内,同时从待聚合池中清除已聚合结果,直到待聚合点集中不存在第一类中心点为止。
例如,假定待聚合点集中存在两个第一类中心点点a,b,其坐标分别为(x1,y1,w1),(x2,y2,w2),其中w1,w2表示其权值,则两点间距离为(x2-x1)2+(y2-y1)2,若该值大于预设像素距离的平方,则不进行聚合;如果小于等于给定预设像素距离的平方,则进行聚合,得到第三类中心点,其包含的子集为a,b,从待聚合点集中移除该两点,第三类中心点的经纬度坐标为该点所有子集的经纬度乘以权重的平均值,按照上述步骤遍历完所有待聚合的第一类中心点,并将聚合后得到第三次聚合点中心绘制到地图上。
经过上述实施例给出的实现方式,可有效防止瓦片边缘的聚合点出现压盖,保障地图界面展示的准确性以及美观性。
可选地,在完成一次数据渲染之后,当当前可视范围的地图状态发生变更时,客户端会再次向服务器端发送数据渲染请求信息,该数据渲染请求信息中包含各个地图分片的索引信息,为了避免对具有相同索引信息的地图分片重复渲染,下面给出一种可能的实现方式:
当存在至少一个地图分片的索引信息和预先存储的索引信息一致时,确定是该地图分片为已请求数据并保持该地图分片的状态为当前状态。为了执行上述实施例及各个可能的方式中的相应步骤,以实现相应的技术效果,下面给出一种数据聚合渲染装置的实现方式,参见图8,图8为本发明实施例提供的一种数据聚合渲染装置的功能模块图。需要说明的是,本实施例所提供的一种数据聚合渲染装置,其基本原理及产生的技术效果和上述实施例相同,为简要描述,本实施例部分未提及之处,可参考上述的实施例中相应内容。该数据聚合渲染装置80包括:存储模块801、接收模块802、聚合模块803和发送模块804;存储模块801用于存储地图的多个数据点的坐标信息。
接收模块802,用于接收客户端发送数据渲染请求信息;请求信息中包含当前可视范围对应的多个地图分片信息。
聚合模块803,用于依据多个地图分片信息和个数据点的位置信息坐标信息对多个数据点进行聚合,获得在的每个地图分片对应的第一类中心点集合;每个第一类中心点由至少一个数据点聚合而成。
发送模块804,用于将每个地图分片对应的第一类中心点集合发送至客户端,以使客户端在基于第一类中心点集合在当前可视范围内进行渲染。
可以理解的是,接收模块802、聚合模块803和发送模块804可以协同的执行S101至S103以实现相应的技术效果。
需要说明的是,上述模块可以软件或固件(Firmware)的形式存储于服务器的存储器中或固化于服务器的处理器中,并可由处理器执行上述数据聚合渲染方法。
可选地,为了能够得到第一类中心点集合,每个数据点的坐标信息包括坐标值和哈希值;地图分片信息包括每个地图分片的坐标范围和预设像素距离;聚合模块803可以具体用于:针对每个地图分片,根据坐标范围和预设像素距离确定待聚合数据点和聚合参数;待聚合数据点为多个数据点中的一个或多个;聚合参数表征待聚合数据点之间的相似度;根据聚合参数和每个数据点对应的哈希值对待聚合数据点进行聚合,获得至少一组数据点集合;每组数据点集合中包含至少一个待聚合数据点;针对每组数据点集合,根据待聚合数据点的个数和每个待聚合数据点的坐标信息确定第二类中心点集合;每个第二类中心点具有对应的坐标值和第二权值;第二权值表征第二类中心点对应的数据点的个数;任意两个第二类中心点之间的像素距离大于或等于或小于预设像素距离;根据预设像素距离对第二类中心点进行聚合,获得第一类中心点集合;每个第一类中心点具有对应的坐标值和第一权值;第一权值用于表征第一类中心点对应的数据点的个数;任意两个第一类中心点之间的像素距离大于或等于预设像素距离。
可以理解的是,聚合模块803可以用来执行步骤S102-1至S102-4以实现相应的技术效果。
可选地,第一类中心点集合中还包含每个第一类中心点对应的数据点的坐标值和哈希值,为了能够实现数据反查的功能,数据聚合渲染装置80还可以包括查询模块和确定模块,接收模块802还用于接收客户端发送的数据查询请求信息;数据查询请求信息中包含至少一个待查询第一类中心点;确定模块用于依据每个所述第一类中心点对应的数据点的坐标值和哈希值确定每个第一类中心点对应坐标范围和哈希值列表;查询模块,用于根据所述待查询第一类中心点对应坐标范围和哈希值列表查询待查询第一类中心点对应的数据点,发送模块804,用于将查询到的数据点发送至客户端。
可以理解的是,接收模块802、查询模块、确定模块、发送模块804可以用来执行步骤S104至S106以实现相应的技术效果。
本发明实施例还提供一种数据聚合渲染装置90,参见图9,图9为本发明实施例提供的另一种数据聚合渲染装置的功能模块图,包括:发送模块901、接收模块902、渲染模块903。
发送模块901,用于向服务器发送数据渲染请求信息;请求信息中包含当前可视范围对应的多个地图分片信息。
接收模块902,用于接收服务器发送的每个地图分片对应的第一类中心点集合;每个第一类中心点由至少一个数据点聚合而成。
渲染模块903,用于基于第一类中心点集合在当前可视范围内进行渲染。
可以理解的是,发送模块901、接收模块902、渲染模块903可以协同的执行S504至S506以实现相应的技术效果。
需要说明的是,上述模块可以软件或固件(Firmware)的形式存储于电客户端的存储器中或固化于客户端的处理器中,并可由处理器执行上述数据聚合渲染方法。
可选地,地图分片信息包括每个地图分片的坐标范围;为了获得地图分片信息,数据聚合渲染装置90还可以包括确定模块和切割模块;确定模块,用于响应用户操作指令,确定当前可视范围对应的坐标范围和比例层级信息;切割模块,用于基于预先配置的分片切割算法对所述当前可视范围进行切割获得所述多个地图分片;确定模块,还用于根据当前可视范围的坐标范围、比例尺层级信息确定每个地图分片的坐标范围。
可以理解的是,确定模块和切割模块可以用来执行步骤S501至S503以实现相应的技术效果。
可选地,地图分片信息还包括预设像素距离;渲染模块903,具体用于:针对每个地图分片,确定与地图分片的边界之间的像素距离大于预设像素距离的第一类中心点为目标第一类中心点;基于目标第一类中心点集合在所述当前可视范围内进行渲染;将与地图分片的边界之间的像素距离小于预设像素距离的第一类中心点进行聚合,获得第三类中心点集合;基于第三类中心点集合在当前可视范围内进行渲染。
可以理解的是,渲染模块903可以用来执行步骤S506-1至S506-4以实现相应的技术效果。
可选地,地图分片信息包括每个地图分片的索引信息,数据聚合渲染装置90还包括保持模块,保持模块,用于当存在至少一个地图分片的索引信息和预先存储的索引信息一致时,确定是地图分片为已请求数据并保持地图分片的状态为当前状态。
本发明实施例还提供一种数据聚合渲染系统,参见图10,图10位本发明实施例提供的一种数据聚合渲染系统的架构图;其中包括客户端101和服务器102,客户端101和服务器102之间可以进行数据传输。客户端101可以是电脑,手机,平板或电子地图等智能设备,服务器102中可以维护有地图的多个数据点的坐标信息。
客户端101,用于向服务器102发送数据渲染请求信息。
在本发明实施例中,上述的请求信息中包含当前可视范围对应的多个地图分片信息。
服务器102,用于维护地图的多个数据点的坐标信息;还用于依据多个地图分片信息和个数据点的位置信息坐标信息对多个数据点进行聚合,获得在的每个地图分片对应的第一类中心点集合;每个第一类中心点由至少一个数据点聚合而成。
服务器102,还用于将每个地图分片对应的第一类中心点集合发送至客户端。
客户端101,还用于基于第一类中心点集合在当前可视范围内进行渲染。
因此,本发明实施例还提供的一种电子设备,参见图11,图11本发明实施例提供的一种电子设备的方框示意图,该电子设备11包括存储器111、处理器112和通信接口113。该存储器111、处理器112和通信接口113相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可通过一条或多条通讯总线或信号线实现电性连接。
存储器111可用于存储软件程序及模块,如本发明实施例所提供的人脸属性识别方法对应的程序指令/模块,处理器112通过执行存储在存储器111内的软件程序及模块,从而执行各种功能应用以及数据处理。该通信接口113可用于与其他节点设备进行信令或数据的通信。在本发明中该电子设备11可以具有多个通信接口113。
其中,存储器111可以是但不限于,随机存取存储器(RandomAccessMemory,RAM),只读存储器(ReadOnlyMemory,ROM),可编程只读存储器(ProgrammableRead-OnlyMemory,PROM),可擦除只读存储器(ErasableProgrammableRead-OnlyMemory,EPROM),电可擦除只读存储器(ElectricErasableProgrammableRead-OnlyMemory,EEPROM)等。
处理器112可以是一种集成电路芯片,具有信号处理能力。该处理器可以是通用处理器,包括中央处理器(CentralProcessingUnit,CPU)、网络处理器(NetworkProcessor,NP)等;还可以是数字信号处理器(DigitalSignalProcessing,DSP)、专用集成电路(ApplicationSpecificIntegratedCircuit,ASIC)、现场可编程门阵列(Field-ProgrammableGateArray,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。
电子设备11可以实现本发明提供的任一种数据聚合渲染方法。该电子设备11可以是,但不限于,手机、平板电脑、笔记本电脑、服务器或其它具有处理能力的电子设备。
本发明实施例还提供一种存储介质,其上存储有计算机程序,例如,当该存储介质存储于图11中的存储器111时,该计算机程序被处理器执行时实现如前述实施方式中任一项的数据聚合渲染方法,该计算机可读存储介质可以是,但不限于,U盘、移动硬盘、ROM、RAM、PROM、EPROM、EEPROM、磁碟或者光盘等各种可以存储程序代码的介质。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
Claims (10)
1.一种数据聚合渲染方法,应用于服务器;其特征在于,所述服务器用于维护地图的多个数据点的坐标信息;每个所述数据点的坐标信息包括坐标值和哈希值;所述方法包括:
接收客户端发送数据渲染请求信息;所述请求信息中包含当前可视范围对应的多个地图分片信息;所述地图分片信息包括每个地图分片的坐标范围和预设像素距离;
依据所述多个地图分片信息和所述多个数据点的坐标信息对所述多个数据点进行聚合,获得在的每个所述地图分片对应的第一类中心点集合;每个所述第一类中心点由至少一个所述数据点聚合而成;
将每个所述地图分片对应的第一类中心点集合发送至所述客户端,以使所述客户端基于所述第一类中心点集合在所述当前可视范围内进行渲染;
所述依据所述多个地图分片信息和所述多个数据点的坐标信息对所述多个数据点进行聚合,获得每个所述地图分片对应的第一类中心点集合的步骤,包括:
针对每个所述地图分片,根据所述坐标范围和所述预设像素距离确定待聚合数据点和聚合参数;所述待聚合数据点为所述多个数据点中的一个或多个;所述聚合参数表征所述待聚合数据点之间的相似度;
根据所述聚合参数和每个所述数据点对应的哈希值对所述待聚合数据点进行聚合,获得至少一组数据点集合;每组所述数据点集合中包含至少一个所述待聚合数据点;
针对每组所述数据点集合,根据所述待聚合数据点的个数和每个所述待聚合数据点的坐标信息确定第二类中心点集合;每个所述第二类中心点具有对应的坐标值和第二权值;所述第二权值表征第二类中心点对应的数据点的个数;任意两个所述第二类中心点之间的像素距离大于或等于或小于预设像素距离;
根据所述预设像素距离对所述第二类中心点进行聚合,获得所述第一类中心点集合;每个所述第一类中心点具有对应的坐标值和第一权值;所述第一权值表征所述第一类中心点对应的数据点的个数;任意两个所述第一类中心点之间的像素距离大于或等于所述预设像素距离。
2.根据权利要求1所述的数据聚合渲染方法,其特征在于;所述第一类中心点集合中还包含每个所述第一类中心点对应的数据点的坐标值和哈希值;所述方法还包括:
接收所述客户端发送的数据查询请求信息;所述数据查询请求信息中包含至少一个待查询第一类中心点;
依据每个所述第一类中心点对应的数据点的坐标值和哈希值确定每个所述第一类中心点对应坐标范围和哈希值列表;
根据所述待查询第一类中心点对应坐标范围和哈希值列表查询所述待查询第一类中心点对应的数据点,并将查询到的所述数据点发送至所述客户端。
3.一种数据聚合渲染方法,应用于客户端,其特征在于,所述方法包括:
向服务器发送数据渲染请求信息;所述请求信息中包含当前可视范围对应的多个地图分片信息;
接收所述服务器发送的每个所述地图分片对应的第一类中心点集合;每个所述第一类中心点由至少一个数据点聚合而成;
基于所述第一类中心点集合在所述当前可视范围内进行渲染;
所述地图分片信息还包括预设像素距离;所述基于所述第一类中心点集合在所述当前可视范围内进行渲染的步骤,包括:针对每个所述地图分片,确定与所述地图分片的边界之间的像素距离大于所述预设像素距离的第一类中心点为目标第一类中心点;基于所述目标第一类中心点集合在所述当前可视范围内进行渲染;将与所述地图分片的边界之间的像素距离小于预设像素距离的第一类中心点进行聚合,获得第三类中心点集合;基于所述第三类中心点集合在所述当前可视范围内进行渲染。
4.根据权利要求3所述的数据聚合渲染方法,其特征在于,所述地图分片信息包括每个地图分片的坐标范围;在向服务器发送数据渲染请求信息的步骤之前,所述方法还包括:
响应用户操作指令,确定所述当前可视范围对应的坐标范围和比例层级信息;
基于预先配置的分片切割算法对所述当前可视范围进行切割获得所述多个地图分片;
根据所述当前可视范围的坐标范围、比例尺层级信息确定每个所述地图分片的坐标范围。
5.根据权利要求3所述的数据聚合渲染方法,其特征在于,所述地图分片信息包括每个地图分片的索引信息,所述方法还包括:
当存在至少一个地图分片的索引信息和预先存储的索引信息一致时,确定所述地图分片为已请求数据并保持所述地图分片的状态为当前状态。
6.一种数据聚合渲染装置,其特征在于,包括:存储模块、接收模块、聚合模块和发送模块;所述存储模块用于存储地图的多个数据点的坐标信息;每个所述数据点的坐标信息包括坐标值和哈希值;
所述接收模块,用于接收客户端发送数据渲染请求信息;所述请求信息中包含当前可视范围对应的多个地图分片信息;所述地图分片信息包括每个地图分片的坐标范围和预设像素距离;
所述聚合模块,用于依据所述多个地图分片信息和所述多个数据点的位置信息坐标信息对所述多个数据点进行聚合,获得在的每个所述地图分片对应的第一类中心点集合;每个所述第一类中心点由至少一个所述数据点聚合而成;
所述发送模块,用于将每个所述地图分片对应的第一类中心点集合发送至所述客户端,以使所述客户端在基于所述第一类中心点集合在所述当前可视范围内进行渲染;
所述聚合模块,具体用于:针对每个所述地图分片,根据所述坐标范围和所述预设像素距离确定待聚合数据点和聚合参数;所述待聚合数据点为所述多个数据点中的一个或多个;所述聚合参数表征所述待聚合数据点之间的相似度;
根据所述聚合参数和每个所述数据点对应的哈希值对所述待聚合数据点进行聚合,获得至少一组数据点集合;每组所述数据点集合中包含至少一个所述待聚合数据点;
针对每组所述数据点集合,根据所述待聚合数据点的个数和每个所述待聚合数据点的坐标信息确定第二类中心点集合;每个所述第二类中心点具有对应的坐标值和第二权值;所述第二权值表征第二类中心点对应的数据点的个数;任意两个所述第二类中心点之间的像素距离大于或等于或小于预设像素距离;
根据所述预设像素距离对所述第二类中心点进行聚合,获得所述第一类中心点集合;每个所述第一类中心点具有对应的坐标值和第一权值;所述第一权值表征所述第一类中心点对应的数据点的个数;任意两个所述第一类中心点之间的像素距离大于或等于所述预设像素距离。
7.一种数据聚合渲染装置,其特征在于,包括:发送模块、接收模块、渲染模块;
所述发送模块,用于向服务器发送数据渲染请求信息;所述请求信息中包含当前可视范围对应的多个地图分片信息;
所述接收模块,用于接收所述服务器发送的每个所述地图分片对应的第一类中心点集合;每个所述第一类中心点由至少一个数据点聚合而成;
所述渲染模块,用于基于所述第一类中心点集合在所述当前可视范围内进行渲染;
所述地图分片信息还包括预设像素距离;所述渲染模块,具体用于:针对每个所述地图分片,确定与所述地图分片的边界之间的像素距离大于所述预设像素距离的第一类中心点为目标第一类中心点;基于所述目标第一类中心点集合在所述当前可视范围内进行渲染;将与所述地图分片的边界之间的像素距离小于预设像素距离的第一类中心点进行聚合,获得第三类中心点集合;基于所述第三类中心点集合在所述当前可视范围内进行渲染。
8.一种数据聚合渲染系统,其特征在于,包括服务器和客户端;
所述客户端,用于向服务器发送数据渲染请求信息;所述请求信息中包含当前可视范围对应的多个地图分片信息;所述地图分片信息包括每个地图分片的坐标范围和预设像素距离;
所述服务器,用于维护地图的多个数据点的坐标信息;每个所述数据点的坐标信息包括坐标值和哈希值;还用于依据所述多个地图分片信息和所述多个数据点的位置信息坐标信息对所述多个数据点进行聚合,获得在的每个所述地图分片对应的第一类中心点集合,具体为:针对每个所述地图分片,根据所述坐标范围和所述预设像素距离确定待聚合数据点和聚合参数;所述待聚合数据点为所述多个数据点中的一个或多个;所述聚合参数表征所述待聚合数据点之间的相似度;根据所述聚合参数和每个所述数据点对应的哈希值对所述待聚合数据点进行聚合,获得至少一组数据点集合;每组所述数据点集合中包含至少一个所述待聚合数据点;针对每组所述数据点集合,根据所述待聚合数据点的个数和每个所述待聚合数据点的坐标信息确定第二类中心点集合;每个所述第二类中心点具有对应的坐标值和第二权值;所述第二权值表征第二类中心点对应的数据点的个数;任意两个所述第二类中心点之间的像素距离大于或等于或小于预设像素距离;根据所述预设像素距离对所述第二类中心点进行聚合,获得所述第一类中心点集合;每个所述第一类中心点具有对应的坐标值和第一权值;所述第一权值表征所述第一类中心点对应的数据点的个数;任意两个所述第一类中心点之间的像素距离大于或等于所述预设像素距离;每个所述第一类中心点由至少一个所述数据点聚合而成;
所述服务器,还用于将每个所述地图分片对应的第一类中心点集合发送至所述客户端;
所述地图分片信息还包括预设像素距离;所述客户端,还用于基于所述第一类中心点集合在所述当前可视范围内进行渲染,具体为:针对每个所述地图分片,确定与所述地图分片的边界之间的像素距离大于所述预设像素距离的第一类中心点为目标第一类中心点;基于所述目标第一类中心点集合在所述当前可视范围内进行渲染;将与所述地图分片的边界之间的像素距离小于预设像素距离的第一类中心点进行聚合,获得第三类中心点集合;基于所述第三类中心点集合在所述当前可视范围内进行渲染。
9.一种电子设备,其特征在于,包括处理器和存储器,所述存储器存储有能够被所述处理器执行的机器可执行指令,所述处理器可执行所述机器可执行指令以实现权利要求1-2任一项所述的数据聚合渲染方法或者实现权利要求3-5任一项所述的数据聚合渲染方法。
10.一种存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时以实现权利要求1-2任一项所述的数据聚合渲染方法或者实现权利要求3-5任一项所述的数据聚合渲染方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010624219.4A CN111753041B (zh) | 2020-06-30 | 2020-06-30 | 数据聚合渲染方法、装置、系统、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010624219.4A CN111753041B (zh) | 2020-06-30 | 2020-06-30 | 数据聚合渲染方法、装置、系统、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111753041A CN111753041A (zh) | 2020-10-09 |
CN111753041B true CN111753041B (zh) | 2022-12-02 |
Family
ID=72680362
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010624219.4A Active CN111753041B (zh) | 2020-06-30 | 2020-06-30 | 数据聚合渲染方法、装置、系统、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111753041B (zh) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112182457B (zh) * | 2020-10-12 | 2024-06-21 | 合肥四相至新科技有限公司 | 定位数据显示方法及系统 |
CN112783994B (zh) * | 2020-11-11 | 2023-08-18 | 上海芯翌智能科技有限公司 | 设备信息显示方法及装置、客户端、服务器 |
CN112395310B (zh) * | 2020-12-02 | 2022-06-17 | 武汉光庭信息技术股份有限公司 | 一种电子地图背景点汇聚处理方法及系统 |
CN112527845A (zh) * | 2020-12-24 | 2021-03-19 | 四川享宇金信金融科技有限公司 | 一种客户海量点数据聚合渲染方法 |
CN113177099B (zh) * | 2021-05-12 | 2022-05-24 | 中移(上海)信息通信科技有限公司 | 终端聚合方法、装置、电子设备和可读存储介质 |
CN113518215B (zh) * | 2021-05-19 | 2022-08-05 | 上海爱客博信息技术有限公司 | 3d动态效果生成方法、装置、计算机设备和存储介质 |
CN114186005A (zh) * | 2021-11-05 | 2022-03-15 | 深圳市震有软件科技有限公司 | 基于地图数据聚合的优化显示处理方法、装置、终端及介质 |
CN114168228A (zh) * | 2021-12-10 | 2022-03-11 | 威创集团股份有限公司 | 一种地图数据渲染方法、装置、电子设备及存储介质 |
CN118096903A (zh) * | 2022-11-25 | 2024-05-28 | 浙江宇视科技有限公司 | 瓦片地图处理方法、装置、电子设备和存储介质 |
CN115858973B (zh) * | 2023-02-23 | 2023-06-13 | 北京德风新征程科技股份有限公司 | 栅格地图解析方法、装置、设备和介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103927933A (zh) * | 2013-01-14 | 2014-07-16 | 北京中交兴路信息科技有限公司 | 一种海量移动目标渲染的方法及装置 |
CN105070185A (zh) * | 2015-08-26 | 2015-11-18 | 中科宇图天下科技有限公司 | 一种点要素群自动综合方法 |
CN105243100A (zh) * | 2015-09-17 | 2016-01-13 | 百度在线网络技术(北京)有限公司 | 地图渲染方法、提供渲染目标信息的方法及装置 |
CN109002452A (zh) * | 2017-06-07 | 2018-12-14 | 杭州海康威视系统技术有限公司 | 地图瓦片更新方法、装置及计算机可读存储介质 |
CN110647608A (zh) * | 2019-08-30 | 2020-01-03 | 深圳震有科技股份有限公司 | 基于地图的海量数据聚合显示方法及系统、设备、介质 |
CN111090712A (zh) * | 2019-12-17 | 2020-05-01 | 国汽(北京)智能网联汽车研究院有限公司 | 一种数据处理方法、装置、设备及计算机存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9600146B2 (en) * | 2015-08-17 | 2017-03-21 | Palantir Technologies Inc. | Interactive geospatial map |
-
2020
- 2020-06-30 CN CN202010624219.4A patent/CN111753041B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103927933A (zh) * | 2013-01-14 | 2014-07-16 | 北京中交兴路信息科技有限公司 | 一种海量移动目标渲染的方法及装置 |
CN105070185A (zh) * | 2015-08-26 | 2015-11-18 | 中科宇图天下科技有限公司 | 一种点要素群自动综合方法 |
CN105243100A (zh) * | 2015-09-17 | 2016-01-13 | 百度在线网络技术(北京)有限公司 | 地图渲染方法、提供渲染目标信息的方法及装置 |
CN109002452A (zh) * | 2017-06-07 | 2018-12-14 | 杭州海康威视系统技术有限公司 | 地图瓦片更新方法、装置及计算机可读存储介质 |
CN110647608A (zh) * | 2019-08-30 | 2020-01-03 | 深圳震有科技股份有限公司 | 基于地图的海量数据聚合显示方法及系统、设备、介质 |
CN111090712A (zh) * | 2019-12-17 | 2020-05-01 | 国汽(北京)智能网联汽车研究院有限公司 | 一种数据处理方法、装置、设备及计算机存储介质 |
Non-Patent Citations (2)
Title |
---|
A Declarative Rendering Model for Multiclass Density Maps;Jaemin Jo et al.;《IEEE Transactions on Visualization and Computer Graphics》;20180820;第25卷(第1期);470-480 * |
基于ArcGIS海量专题数据渲染技术研究;郭朝阳 等;《测绘技术装备》;20150430;第17卷(第4期);26-27 * |
Also Published As
Publication number | Publication date |
---|---|
CN111753041A (zh) | 2020-10-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111753041B (zh) | 数据聚合渲染方法、装置、系统、电子设备及存储介质 | |
CN109992633B (zh) | 基于用户位置的地理围栏确定方法、装置、电子设备 | |
CN113032513B (zh) | 一种针对空间地理数据的切片方法及渲染方法 | |
CN111862292B (zh) | 输电线路走廊的数据渲染方法、装置和计算机设备 | |
US20130271479A1 (en) | Efficient pre-computing of simplified vector data for rendering at multiple zoom levels | |
CN114022790B (zh) | 遥感图像中云层检测及图像压缩方法、装置和存储介质 | |
CN116628123B (zh) | 基于空间数据库的动态切片生成方法和系统 | |
CN111429560A (zh) | 三维地形服务融合方法、装置和服务器 | |
CN108491445A (zh) | 区域内指标数据的展示方法及系统 | |
CN111353008B (zh) | 一种北斗位置流数据实时空间聚合方法 | |
CN115620321A (zh) | 表格识别方法及装置、电子设备和存储介质 | |
CN113449208B (zh) | 空间查询方法、设备、系统及存储介质 | |
CN117520581A (zh) | 一种土地测绘信息管理方法、系统、设备及介质 | |
CN110442719B (zh) | 一种文本处理方法、装置、设备及存储介质 | |
CN115952252B (zh) | 基于动态渲染的语义瓦片数据处理方法、装置和电子设备 | |
CN113360586B (zh) | 地址聚集度查询方法、装置、设备及计算机可读存储介质 | |
CN112948517B (zh) | 区域位置标定方法、装置及电子设备 | |
CN115436936A (zh) | 用于目标检测的雷达图确定方法、装置、设备及介质 | |
CN111966853B (zh) | 一种遥感影像的管理方法 | |
CN109710784B (zh) | 一种基于lerc的遥感影像数据空间快速可视化方法 | |
CN113538468A (zh) | 基于svg格式构建高清卫星地图矢量切片的方法及装置 | |
KR101526490B1 (ko) | 클라우드 컴퓨팅에서의 효율적 자원관리를 위한 시각 데이터 가공장치 및 그 방법 | |
CN105607886A (zh) | 一种基于物联网的教育云视频数据显示处理系统及方法 | |
CN117539971B (zh) | 一种海量地理坐标聚合方法及相关设备 | |
CN116152530B (zh) | 图像差异的确定方法和装置、存储介质及电子设备 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |