CN114547548A - 一种地理空间大数据的点密度实现方法及电子设备 - Google Patents
一种地理空间大数据的点密度实现方法及电子设备 Download PDFInfo
- Publication number
- CN114547548A CN114547548A CN202110762093.1A CN202110762093A CN114547548A CN 114547548 A CN114547548 A CN 114547548A CN 202110762093 A CN202110762093 A CN 202110762093A CN 114547548 A CN114547548 A CN 114547548A
- Authority
- CN
- China
- Prior art keywords
- point
- big data
- density
- data
- grid
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/18—Complex mathematical operations for evaluating statistical data, e.g. average values, frequency distributions, probability functions, regression analysis
-
- 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)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Mathematical Physics (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Life Sciences & Earth Sciences (AREA)
- Operations Research (AREA)
- Probability & Statistics with Applications (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Algebra (AREA)
- Evolutionary Biology (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Bioinformatics & Computational Biology (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及计算机工程应用技术领域,具体涉及一种地理空间大数据的点密度实现方法及电子设备,本发明将空间大数据离散化,读取离散后的数据,设置搜索邻域与格网,对数据进行分箱处理、降低维度;将搜索邻域遍历每个格网,计算标志距离,并将该距离设置为遍历的参数,实现搜索领域内的点被单次遍历;计算搜索领域内点密度值,将密度值与离散点坐标分布式存储,直到遍历整个区域;利用降维处理时的key值,对大数据的维度进行恢复,并输出离散点的密度值与对应的经纬度坐标。通过引入大数据快速处理与存储技术、大数据的分箱技术,开发格网快速遍历等技术,在不改变地理空间大数据二维离散特性和相对位置的基础上,快速获取其真实密度。
Description
技术领域
本发明涉及数据处理技术领域,具体涉及一种地理空间大数据的点密度实现方法及电子设备。
背景技术
大数据时代,获取区域内点、线、面等地理实体的统计值(又称 密度),是空间大数据领域的研究热点之一。
目前常用的密度获取方法主要有聚类算法(DBSCAN、CBSCAN、 K-Means、HDBSCAN、OPTICS)、核密度算法等,这些算法在描述地理空 间大数据的点格局发挥重要的作用,市场上已有较多软件与语言也有 其快速实现的平台,如ArcGIS/ArcGIS Pro、Python/R等。
但对于离散的地理空间大数据而言,存在明显的局限:
(1)两类算法改变离散点的二维形状和相对位置,将原来无数据 记录的位置也拟合成有值的区域,存在过度拟合的问题;
(2)获取的密度为加权平均值,而不是真实密度;
(3)输入参数不同时,所获取的结果差异较大,受主观因素较大;
(4)需预先设定计算范围,否则将导致整个范围的形状发生改变。
发明内容
针对现有技术的不足,本发明公开了一种地理空间大数据的点密 度实现方法及电子设备,通过引入大数据快速处理与存储技术、大数 据的分箱技术,开发格网快速遍历等技术,解决了在不改变地理空间 大数据二维离散特性和相对位置的基础上,不能快速获取其真实密度 的问题。
本发明通过以下技术方案予以实现:
第一方面,本发明公开了一种地理空间大数据的点密度实现方法, 包括以下步骤:
S1将空间大数据离散化,读取离散后的数据,设置搜索邻域与格 网,通过近似的方法,对数据进行分箱处理、降低维度;
S2将搜索邻域遍历每个格网,计算标志距离,并将该距离设置为 遍历的参数,实现搜索领域内的点被单次遍历;
S3计算搜索领域内点密度值,将密度值与离散点坐标分布式存储, 直到遍历整个区域;
S4利用降维处理时的key值,对大数据的维度进行恢复,并输出 离散点的密度值与对应的经纬度坐标。
更进一步的,所述方法中,以R语言为运行环境,地理空间大数 据由N个POI点组成,并且人为设置空白区域。其中N为自然数。
更进一步的,所述方法中,在R语言环境下引入data.table功能 包,进行快速聚合大数据,快速排序的连接,按组快速添加/修改/删 除列,且不使用任何副本,进行友好且快速的字符分隔值读/写,以加 快开发速度。
更进一步的,所述方法中,将空间大数据离散化时,包含坐标的 地理空间大数据,若缺少经纬度坐标,需要经过逆地理编码实现坐标 的获取,若数据为线状的,需要提取线状地物的坐标,若为面状地物, 需要提取中心点坐标。
更进一步的,所述方法中,进行分箱处理时设置分箱规则,将研 究区域划分为等距的格网,其中格网大小为g,搜索半径为r,通过近 似的方式获取每个点在其最近格网点的坐标,并返回唯一的key值。
更进一步的,所述方法中,遍历格网时分三重循环,算法如下: 首先遍历m个格网点,获取邻域内格网点F的坐标(lat1,lon1);
其次沿着中央经线方向,依次从F点遍历至G点,当遍历至F点 时,l等于邻域半径r,容忍距t为0;
判断density(lat1,lon1)是否存在,若不存在将其值赋予 bin_density(lat1,lon1)+1,若存在则density_hash(lat1,lon1)值为 bin_density(lat1,lon1)的值;
当遍历至E点时,此时的容忍距t(0<t<r),然后以格网大小 g为步长遍历经度方向的点E1至E4,将其经纬度坐标存储至density() 表中,并记录次数,以此类推直至遍历至点G完成邻域内所有格网点 的循环。
更进一步的,所述方法中,容忍距t是识别领域内点经度的重要 依据,用于保证只有在搜索邻域范围内的点被遍历,当遍历结束后, density(latt,lont)的key值为经过分箱操作后点的经纬度坐标值,地 址值为点真实的密度值,此时数据的维度仍为m。
更进一步的,所述方法中,进行维度的还原时,依次遍历大数据 的维度n,从density()中读取第二步获取的点的个数与key值,最终 得到大数据n个离散点的初始坐标和对应的密度值
第二方面,本发明公开了一种电子设备,包括处理器以及存储有 执行指令的存储器,当所述处理器执行所述存储器存储的所述执行指 令时,所述处理器执行第一方面所述的地理空间大数据的点密度实现 方法。
本发明的有益效果为:
本发明通过编写算法,使用大数据快速处理与存储技术,设定规则,在保持地理空间大数据二维离散特征、投影关系、相对位置的基础上,快速获取区域内大数据点密度的算法,并以可视化方式展示。解决了传统统计方法费时费力的问题、解决了常用的核密度法改变空间大数据离散特征、解决了聚类算法主观归类的计算方法,而难以获 取真实密度的局限。并且可应用于自然资源统计与应用管理等领域。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面 将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而 易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域 普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些 附图获得其他的附图。
图1是地理空间大数据的点密度实现方法流程图;
图2是空间大数据分布图;
图3是本发明技术总体技术流程图;
图4是设定分箱规则示意图;
图5是本发明遍历格网示意图;
图6是ArcGIS/Pro核密度计算结果图;
图7是本发明不同搜索半径的算法实现效果图;
图8是随机抽样原图;
图9是本发明随机抽样的点密度结果图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结 合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、 完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是 全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有 作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护 的范围。
实施例1
本实施例公开如图1所示的一种基础地理空间大数据的点密度实 现方法,所述从空间大数据的降维处理、格网化、计算标志距离、计 算搜索邻域内点密度、大数据维度的恢复、输出点密度与对应的坐标。
本实施例实现大数据快速处理与存储效果,需要部署分布式存储 和空间大数据快速读取的环境。
本实施例中,地理空间大数据的分箱、降维处理,首先将空间大 数据离散化,具体而言:需要包含坐标的地理空间大数据(点、线、 面均可),若缺少经纬度坐标,需要经过逆地理编码实现坐标的获取。 若数据为线状的,需要提取线状地物的坐标,若为面状地物,需要提 取中心点坐标。
读取空间大数据后,设置搜索邻域与格网,通过近似的方法,实 现对大数据的分箱处理、降低维度。
本实施例中,格网快速遍历,将搜索邻域(圆)遍历每个格网, 计算标志距离(flagdistance),将该距离设置为遍历的参数,保证 了搜索领域内的点被单次遍历。
本实施例中,计算领域内点密度,单次遍历后,计算搜索领域内 点密度值,将密度值与离散点坐标分布式存储,直到遍历整个区域。
本实施例中,大数据维度的恢复,通过第一步降维处理时的key 值,对大数据的维度进行恢复。
本实施例中,输出离散点的密度值与对应的经纬度坐标。
实施例2
本实施例以R语言为运行环境,地理空间大数据由江苏省部分区 域的1628742个POI点组成,为保证显示效果,人为设置了空白区域, 该数据量大、覆盖范围广,点位分布如图2所示。
本实施例引用了大数据快速处理与存储技术,具体而言:在R语 言环境下引入了data.table功能包,快速聚合大数据(例如,RAM中 为100GB以上的数据量),快速排序的连接,按组快速添加/修改/删除 列,完全不使用任何副本,友好且快速的字符分隔值读/写,提供自然 而灵活的语法,以加快开发速度。该功能包在数据处理与读取等方面, 速度与效率远优于其他主流语言的数据处理能力。
本实施例同时引入分布式数据存储技术,通过多线程技术和网络 使用每台机器上的磁盘空间,并将这些分散的存储资源构成一个虚拟 的存储设备,数据分散的存储在网络中的各个节点上,在数据处理时 能及时将结果快速存储至本地,整个过程对计算机内存的消耗较少。
实际操作中本发明使用了data.table功能包,与R语言内置的数 据读取函数相比,读取百万级数据量所需的时间在秒级以内(如表1 所示),当数据量越大,优势越明显,因此对大数据的处理能力有了很 大提升。
表1不同样本数量下数据读取的时间对比
实施例3
本实施例公开一种大数据的分箱技术,与核密度分析等算法最大 的不同是,本实施例无需预先设定研究范围,而是依据等距分箱规则, 将研究区域设定成若干个规格相同的格网,近似获取与每个格网点最 近的离散点坐标,当完成分箱操作后大数据的维度降低了,便于算法 的快速迭代和维持算法的稳定性。
本实施例是在保持地理空间大数据点的离散属性与位置的基础 上,通过设定分箱规则对大数据进行降维处理,遍历格网点,通过计 算标志距离获取搜索领域内的点密度,最后通过大数据维度的恢复, 统计并计算每个搜索邻域内点的单位真实数量,快速输出离散点的位 置与点密度,总体流程图如图3所示。
本实施例首先是设定分箱规则,分箱的规则是将研究区域划分为 等距的格网(格网大小为g,搜索半径为r),通过近似的方式获取每 个点在其最近格网点的坐标,并返回唯一的key值,示意图如图4所 示,点1被近似至格网A1点的坐标值,此时点1的坐标值变成tlat1, tlon1,并将结果赋予唯一的key值分布式存储到本地数据库中,用 bin_density()表示。
此时key值保存了最近邻格网点的经纬度坐标,此时tlat1,tlon1为活跃点,用active_grid()表示,新维度m的值由0变成1;遍历至 点2时,由于点2近似至A1,其坐标值仍为tlat1,tlon1,m的值不变, 当执行完成时m的值为6,依次类推,数据的维度由n降至m。此时以key值和近似坐标值两种值分布式保存至本地。
实施例4
本实施例公开一种格网快速遍历技术,创造性解决了格网循环与 遍历过程中出现的遍历次数较多、点位遗漏的问题。格网快速遍历的 关键是计算标志距离(flagdistance),是识别领域内点坐标的重要 标记,保证了搜索领域内的点被单次遍历。
本实施例的第二步遍历格网,分三重循环,算法的示意图如图5 所示。首先遍历m个格网点,获取邻域内格网点F的坐标(lat1,lon1); 其次沿着中央经线方向,依次从F点遍历至G点,当遍历至F点时,l 等于邻域半径r,容忍距t为0。
判断density(lat1,lon1)是否存在,若不存在将其值赋予 bin_density(lat1,lon1)+1,若存在则density_hash(lat1,lon1)值为 bin_density(lat1,lon1)的值,当遍历至E点时,此时的容忍距t(0<t <r),然后以格网大小g为步长遍历经度方向的点E1至E4,并将其经 纬度坐标存储至density()表中,并记录次数,以此类推直至遍历至点 G完成邻域内所有格网点的循环。
容忍距t是识别领域内点经度的重要依据,保证了只有在搜索邻 域范围内的点被遍历,有效地减少了循环遍历的次数。当遍历结束后, density(latt,lont)的key值为经过分箱操作后点的经纬度坐标值,地 址值为点真实的密度值,此时数据的维度仍为m。
第三步为维度的还原,依次遍历大数据的维度n,从density()中 读取第二步获取的点的个数与key值,最终得到大数据n个离散点的 初始坐标和对应的密度值。
实施例5
本实施例对结果及效率对比分析,进行可视化效果对比利用 ArcGIS/Pro KernelDensity Analysis工具生成的核密度结果作为对 比验证,如图6所示,本发明执行的结果如图7所示。
从可视化效果可得知,图6均改变了图2的形状,且部分无值的 区域被拟合为有值,同时也改变了图2所示离散点的二维特征。
图7为本实施例设置不同的搜索半径执行的结果,虽然不同的半 径返回的图例不一样,但所表示真实密度值是相同的,同时与图2进 行对比,完全保持原来的形状与大数据的离散点特征,同时不改变点 的位置,仅改变显示效果。
本实施例执行效率对比,以R语言通用的kde2d核密度算法为对 比,该算法的时间复杂度为O(nm),本发明的时间复杂度为 O(n(2r/g)2)。依次随机抽取5000、10000、50000、100000、500000、 1000000个样本点,取样点的分布图,本发明的执行结果图分别如图8、 9所示。两个算法的执行效率如表2所示。
表2 kde2d与本发明的时间复杂度对比
由此可知,本发明解决了大数据、覆盖范围广的情况下点密度获 取的问题,如表2所示,当数据量较大时本发明的优势明显。
综上,本发明通过编写算法,使用大数据快速处理与存储技术,设定规则,在保持地理空间大数据二维离散特征、投影关系、相对位置的基础上,快速获取区域内大数据点密度的算法,并以可视化方式 展示。解决了传统统计方法费时费力的问题、解决了常用的核密度法 改变空间大数据离散特征、解决了聚类算法主观归类的计算方法,而难以获取真实密度的局限。并且可应用于自然资源统计与应用管理等领域。
以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管 参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员 应当理解:其依然可以对前述各实施例所记载的技术方案进行修改, 或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不 使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (9)
1.一种地理空间大数据的点密度实现方法,其特征在于,所述方法包括以下步骤:
S1将空间大数据离散化,读取离散后的数据,设置搜索邻域与格网,通过近似的方法,对数据进行分箱处理、降低维度;
S2将搜索邻域遍历每个格网,计算标志距离,并将该距离设置为遍历的参数,实现搜索领域内的点被单次遍历;
S3计算搜索领域内点密度值,将密度值与离散点坐标分布式存储,直到遍历整个区域;
S4利用降维处理时的key值,对大数据的维度进行恢复,并输出离散点的密度值与对应的经纬度坐标。
2.根据权利要求1所述的地理空间大数据的点密度实现方法,其特征在于,所述方法中,以R语言为运行环境,地理空间大数据由N个POI点组成,并且人为设置空白区域,其中N为自然数。
3.根据权利要求2所述的地理空间大数据的点密度实现方法,其特征在于,所述方法中,在R语言环境下引入data.table功能包,进行快速聚合大数据,快速排序的连接,按组快速添加/修改/删除列,且不使用任何副本,进行友好且快速的字符分隔值读/写,以加快开发速度。
4.根据权利要求1所述的地理空间大数据的点密度实现方法,其特征在于,所述方法中,将空间大数据离散化时,包含坐标的地理空间大数据,若缺少经纬度坐标,需要经过逆地理编码实现坐标的获取,若数据为线状的,需要提取线状地物的坐标,若为面状地物,需要提取中心点坐标。
5.根据权利要求1所述的地理空间大数据的点密度实现方法,其特征在于,所述方法中,进行分箱处理时设置分箱规则,将研究区域划分为等距的格网,其中格网大小为g,搜索半径为r,通过近似的方式获取每个点在其最近格网点的坐标,并返回唯一的key值。
6.根据权利要求1所述的地理空间大数据的点密度实现方法,其特征在于,所述方法中,遍历格网时分三重循环,算法如下:首先遍历m个格网点,获取邻域内格网点F的坐标(lat1,lon1);
其次沿着中央经线方向,依次从F点遍历至G点,当遍历至F点时,l等于邻域半径r,容忍距t为0;
判断density(lat1,lon1)是否存在,若不存在将其值赋予bin_density (lat1,lon1)+1,若存在则density_hash(lat1,lon1)值为bin_density(lat1,lon1)的值;
当遍历至E点时,此时的容忍距t(0< t < r),然后以格网大小g为步长遍历经度方向的点E1至E4,将其经纬度坐标存储至density()表中,并记录次数,以此类推直至遍历至点G完成邻域内所有格网点的循环。
7.根据权利要求6所述的地理空间大数据的点密度实现方法,其特征在于,所述方法中,容忍距t是识别领域内点经度的重要依据,用于保证只有在搜索邻域范围内的点被遍历,当遍历结束后,density(latt,lont)的key值为经过分箱操作后点的经纬度坐标值,地址值为点真实的密度值,此时数据的维度仍为m。
8.根据权利要求6所述的地理空间大数据的点密度实现方法,其特征在于,所述方法中,进行维度的还原时,依次遍历大数据的维度n,从density()中读取第二步获取的点的个数与key值,最终得到大数据n个离散点的初始坐标和对应的密度值。
9.一种电子设备,包括处理器以及存储有执行指令的存储器,当所述处理器执行所述存储器存储的所述执行指令时,所述处理器执行如权利要求1至8中任一项所述的地理空间大数据的点密度实现方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110762093.1A CN114547548A (zh) | 2021-07-06 | 2021-07-06 | 一种地理空间大数据的点密度实现方法及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110762093.1A CN114547548A (zh) | 2021-07-06 | 2021-07-06 | 一种地理空间大数据的点密度实现方法及电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114547548A true CN114547548A (zh) | 2022-05-27 |
Family
ID=81668438
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110762093.1A Pending CN114547548A (zh) | 2021-07-06 | 2021-07-06 | 一种地理空间大数据的点密度实现方法及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114547548A (zh) |
-
2021
- 2021-07-06 CN CN202110762093.1A patent/CN114547548A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8773422B1 (en) | System, method, and computer program product for grouping linearly ordered primitives | |
Akinci et al. | Parallel surface reconstruction for particle‐based fluids | |
US8072460B2 (en) | System, method, and computer program product for generating a ray tracing data structure utilizing a parallel processor architecture | |
US20160371876A1 (en) | Systems and methods for 3-d scene acceleration structure creation and updating | |
Boissonnat et al. | Incremental construction of the Delaunay triangulation and the Delaunay graph in medium dimension | |
Matsuyama et al. | A file organization for geographic information systems based on spatial proximity | |
US20040024779A1 (en) | Method for traversing quadtrees, octrees, and N-dimensional bi-trees | |
CN112669463A (zh) | 三维点云的曲面重建方法、计算机设备和计算机可读存储介质 | |
JP6863926B2 (ja) | データ分析システム及びデータ分析方法 | |
US7999808B1 (en) | Parallel processing system, method, and computer program product for executing node traversal or primitive intersection | |
US11138283B2 (en) | Device and method for area generation | |
CN110427506A (zh) | 空间数据边界处理方法、装置、计算机设备及存储介质 | |
US7272608B2 (en) | Isosurface extraction into splat hierarchy | |
CN113761093A (zh) | 空间二元组的确定方法、装置、计算机设备和存储介质 | |
CN114547548A (zh) | 一种地理空间大数据的点密度实现方法及电子设备 | |
US11449566B2 (en) | Methods and systems for processing geospatial data | |
US8059123B1 (en) | Parallel processing system, method, and computer program product for postponing the execution of primitive intersection | |
Cao et al. | A Fast and Generalized Broad-Phase Collision Detection Method Based on KD-Tree Spatial Subdivision and Sweep-and-Prune | |
de Gomensoro Malheiros et al. | Spatial sorting: an efficient strategy for approximate nearest neighbor searching | |
CN116401916B (zh) | 高质量三维体网格的生成方法、装置、介质及设备 | |
EP4345644A1 (en) | Processing spatially referenced data | |
Lam | Creating the Medial Axis Transform for billions of LiDAR points using a memory efficient method | |
CN117237503B (zh) | 一种地理要素数据加速渲染及装置 | |
Mandarapu et al. | Arkade: k-Nearest Neighbor Search With Non-Euclidean Distances using GPU Ray Tracing | |
CN115374229A (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 |