一种地理围栏生成方法

文档序号:7773499阅读:326来源:国知局
一种地理围栏生成方法
【专利摘要】所述的一种地理围栏生成方法,其包括以下步骤:步骤a:以兴趣点的经纬度信息为特征,逐个计算以兴趣点为中心、周围一定范围内的点密度,密度大于一定阈值的点标记为核心点;步骤b:计算各核心点之间的连通性,对各核心点进行处理,将所有连通的核心点与局部区域内的其它非核心点归为一个点集;步骤c:将点集进行栅格化与膨胀化处理,对膨胀边界点进行序列化搜索,自动为点集生成光滑闭合的地理边界;该地理边界内包含点集中的所有点,并符合点集的总体形状特征。本发明能够自动挖掘出地理信息的关联性,生成具有明显意义的符合人们主观地理认知的不规则的地理围栏边界,达到自动、智能生成地理围栏的目的。
【专利说明】一种地理围栏生成方法【技术领域】
[0001]本发明涉及移动互联网技术,具体涉及一种地理围栏的生成方法。
【背景技术】
[0002]生成地理围栏即构建虚拟的地理边界,是移动互联网业务中的一项关键技术。当带定位功能的移动终端进入、离开或停留于某个特定地理区域时,能够自动接收、推送该围栏内的相关消息与提醒,形成一种基于地理围栏的信息动态推送与共享服务。地理围栏广泛应用于多个领域,例如广告投放(参考发明专利201110315680.2)、自动化数据收集(参考发明专利201180004573.6)、移动设备功率控制(参考发明专利201210388895.1)、远程监控等等领域都有重要的价值。
[0003]但是现有的应用中的地理围栏的生成,基本上都是根据地理中心点简单划定范围(例如,环绕店铺的半径),或者采用手动标记预定义出一个边界点的集合。这些简单的地理边界生成方法具有很大的局限性,其依赖于个别地理中心点和人的主观判断与操作,当面对数量巨大的地理信息或移动终端用户位置信息时,简单标记方法无法实时动态的自动挖掘出这些信息的内在关联,从而自动生成有意义的地理围栏(如商圈、人群流动热点区域

【发明内容】

[0004]因此,针对现有应用在地理围栏生成上的不足,本发明提出一种基于兴趣点(Ρ0Ι,Point of Interest)密度的地理围栏生成方法,实现实时动态的自动挖掘出移动终端的各种信息的内在关联,从而自动生成有意义的地理围栏。
[0005]为了解决上述技术问题,本发明所采用的思路是,通过聚合模块在同一类别的兴趣点集合中利用位置信息进行POI密度计算与密度连通判断,从而聚合出在地理位置上相对分离、独立的POI点集。在聚合出点集后,利用边界生成模块对每个点集进行栅格量化与形态学膨胀处理,搜索出稀疏点集的不规则边界,从而自动生成地理围栏。
[0006]具体的,本发明的技术方案如下:一种地理围栏生成方法,包括以下步骤:
步骤a:以兴趣点的经纬度信息为特征,逐个计算以兴趣点为中心、周围一定范围内的点密度,密度大于一定阈值的点标记为核心点;其中,对周围一定范围,记范围半径为r,该范围半径r影响生成地理围栏的个数,范围半径r过小可能将一个完整围栏分成多个小个围栏,范围半径r过大可能将多个独立围栏合并成一个大围栏。因此优选范围需要跟据具体POI属性决定,例如对于商业POI,作为优选范围半径r取400-600米,都能够正确的生成商圈围栏;对于楼盘小区Ρ0Ι,作为优选范围半径r取200-300米,都能正确生成生活圈围栏;阈值单位是:个/平方公里,其优选取值范围为10-50个/平方公里,如果要生成相对重要的地理围栏阈值可取较大,如果要生成所有地理围栏阈值取基本值10即可;
步骤b:计算各核心点之间的连通性,对各核心点进行处理,将所有连通的核心点与局部区域内的其它非核心点归为一个点集; 步骤C:将点集进行栅格化与膨胀化处理,对膨胀边界点进行序列化搜索,自动为点集生成光滑闭合的地理边界;地理边界内包含点集中的所有点,并符合点集的总体形状特征。其中,膨胀边界点是膨胀之后的边界点。点集的总体形状特征是指点集的分布形态,地理边界依据点集分布形态生成闭合区域。
[0007]进一步的,所述步骤a具体包括:
步骤al:从某一类的兴趣点集P中取出一个兴趣点,记为兴趣点A ;
步骤a2:以兴趣点A的经纬度位置为中心、以距离r为半径,得到一个局部区域;统计该兴趣点集P中属于该局部区域内的兴趣点的个数M,判断M是否大于预设阈值T ;如果M大于T,则将兴趣点A标记为核心点,进入步骤a3 ;如果M不大于T,则直接进入步骤a3 ;步骤a3:判断是否遍历该兴趣点集P中的所有兴趣点,如果没有,则返回步骤al ;如果已遍历,则所有已标记的核心点构成核心点集,结束该流程。
[0008]进一步的,所述步骤b中对各核心点进行处理,包括标记核心点流程,该标记核心点流程具体包括以下步骤:
步骤bll:建立一个类别缓存,该类别缓存包括多个缓存空间,用于将不同类别的核心点分类存储,同一类别的核心点的集合记为类别点集;
步骤bl2:从核心点集中取出一个核心点,记为核心点B,进入步骤bl3;
步骤bl3:判断类别缓存是否为空,如果为空,则进入步骤bl7 ;如果不为空,进入步骤
bl4 ;
步骤bl4:从类别缓存中取出一个类别点集,记为类别点集C,进入步骤bl5 ;
步骤bl5:判断核心点B与类别点集C是否连通,判断方法是取出类别点集C中的所有点,如果其中有一个点在半径r的范围内包含核心点B,则核心点B与类别点集C连通,否则不连通;如果核心点B与类别点集C不连通,则进入步骤bl6 ;如果核心点B与类别点集C连通,将核心点B加入类别缓存中的类别点集C中,进入步骤bl8 ;
步骤bl6:判断是否遍历类别缓存中的所有类别,如果没有,则返回步骤bl4 ;如果已遍历,则进入步骤bl7 ;
步骤bl7:将核心点B作为新的类别存入类别缓存中,进入步骤bl8 ;
步骤bl8:判断是否遍历所有核心点,如果没有则返回步骤bl2,如果已遍历则结束该流程。
[0009]进一步的,所述步骤b对各核心点进行处理,还包括类别合并流程。由于取出核心点的顺序是随机的,可能造成一个实际类别被暂时分成多个类别,类别合并流程用于解决核心点输入顺序敏感性的问题。该类别合并流程具体包括以下步骤:
步骤b21:从类别缓存中任意取出一个类别点集C作为待处理类别,从类别点集C中取出所有点,进入步骤b22 ;
步骤b22:从类别缓存中取出另一个类别点集D,从类别点集D中取出所有点,如果其中有一个点在半径r的范围内包含类别点集C中的任意点(只要有包含到C中一个点就可以合并),则将类别点集D与类别点集C合并,进入步骤b23 ;
步骤b23:重复执行步骤b22,直到将类别缓存中的所有能与类别点集C合并的类别均与类别点集C合并,完成待处理类别C的处理;
步骤b24:重复执行步骤b21,直到类别缓存中所有类别点集均作为待处理类别被处理过。
[0010]进一步的,所述步骤b对各核心点进行处理,还包括兴趣点聚合过程,该过程具体包括以下步骤:
步骤b31:从类别缓存中取出一个类别点集C,从类别点集C中取出所有点,进入步骤
b32 ;
步骤b32:将每个点在半径r的范围内包含的兴趣点集P中的点取出,作为一个聚合类,存入聚合类缓存K中;
步骤b33:判断是否遍历了类别缓存中的所有类别,如没遍历完返回步骤b31,如遍历完结束该流程。 [0011]上述步骤b中,通过点密度判断来标记核心点,挖掘出地理空间上的关键位置(例如商业类别则核心点代表商业中心)。通过连通性计算,得到地理空间上的关联信息,将关联紧密的核心点归为一类。通过同一类的核心点周边半径为r的范围取出同属性其它兴趣点,得到一个聚合点集。各聚合点集在地理空间上内部相对紧密关联,外部相对彼此独立,成为生成地理围栏边界的基础。
[0012]进一步的,所述步骤c利用步骤b得到的每个聚合类点集数据,自动为点集生成光滑闭合且符合点集分布形态的序列化地理边界。该步骤c中,点集栅格化步骤具体包括:
步骤Cl:从聚合类缓存K中取出一个点集,记为点集K1,进入步骤c2 ;
步骤c2:在点集Kl中寻找经度和纬度的最大值和最小值,经度最小值记为minLon,经度最大值记为maxLon,纟韦度最小值记为minLat,纟韦度最大值记为maxLat,进入步骤c3 ;步骤c3:以半径r的二分之一为步长,将步长换算为经纬度数记为λ,从minLon开始以每λ度划分横向栅格,得到栅格的横向边界位置坐标集:
{minLon, minLon+ λ,minLon+2 λ,minLon+3 λ,......, maxLon};
从minLat开始以每λ度划分纵向栅格,得到栅格的纵向边界位置坐标集:
{minLat, minLat+ λ,minLat+2 λ,minLat+3 λ,......, maxLat};
根据点集边界即可把点集Kl的地理范围规则划分为许多方形栅格,每个栅格M (m, η)的范围为:minLat+n λ <讳度< minLat+(η+1) λ ;minLon+m λ <经度< minLon+(m+1) λ。
[0013]进一步的,所述步骤c中,点集膨胀化步骤具体包括:
步骤c4:循环遍历每一个栅格,如果栅格中包含Kl中的点,则栅格标记为1,否则标记为O ;
步骤C5:循环遍历每一个标记为O的栅格M (m,η) =0,如果在八邻域的栅格中有标记为 I 的栅格,即 M (m+1, n)=l*M(m_l, n)=l*M(m, n+l)=l*M(m, n_l)=l,则将该栅格标记为2,即M (m, η) =2。
[0014]上述处理是,通过标记为2的栅格将原有标记为I的栅格轮廓向外膨胀一个栅格位置,采用这一处理的好处对膨胀栅格搜索边界时能够保证所有的点包含在边界内,同时易于之后的边界点序列化处理。
[0015]进一步的,所述步骤c中,边界搜索包括以下步骤:
步骤c6:循环遍历每一个标记为O的栅格M (m,η) =0,如果在八邻域的栅格中有标记为 2 的栅格,即 M (m+1, n)=2 或 M(m-1, n)=2 或 M(m, n+l)=2 或 M(m, n_l)=2,则将该栅格的中心经纬度坐标取出,作为一个边界候选点P ; 步骤c7:边界点清洗,遍历对所有边界候选点,计算一个边界候选点八邻域栅格内包含其它边界候选点个数,如果不等于2,则删除点P,通过这一步骤删除“凹”形区域经膨胀化产生的多分支边界点,以利于下一步的边界点序列化;
步骤c8:开始边界点序列化搜索,设立一个初始为空的队列Q,从边界候选点中任意取出一点,压入队列中;
步骤c9:从队列Q中取出最新压入的边界候选点,假设为P,遍历所有还未被压入队列的边界候选点,如果找到属于P八领域栅格内的边界候选点P,则将P,压入队列Q,进入
下一步骤;
步骤ClO:判断候选边界点是否搜索完毕,如果否则返回步骤c9,如果是则队列Q中的所有边界点即是按照顺时针或逆时针顺序排列的序列化的边界点,将队列Q中的边界点按顺序连接起来,即生成了该地理围栏的闭合边界。
[0016]采用本发明的点集栅格化与膨胀化处理,并对边界点进行序列化搜索,能够自动为点集生成光滑闭合的序列化地理边界,即使点集数目较为稀疏也不影响地理围栏边界的生成。本发明的地理围栏方法自动挖掘出地理信息的内在关联,使围栏边界符合关键点集的总体形状特征,地理边界划分合理准确,为基于位置的移动互联网服务提供有价值的地理围栏数据。
[0017]本发明有益效果是克服传统地理围栏划分简单、非智能、低效的缺点,能够自动挖掘出地理信息的关联性,生成具有明显意义的符合人们主观地理认知的不规则的地理围栏边界,达到自动、智能生成地理围栏的目的,为基于位置的移动互联网服务提供更有价值的地理分类数据。
[0018]本发明采用上述方案,相比传统的用手动标记或根据地理中心点简单划出地理半径的方法,本方法能够自动挖掘出地理信息的关联性,生成具有明显意义的符合人们主观地理认知的不规则的地理围栏边界,达到自动、智能生成地理围栏的目的,为基于位置的移动互联网服务提供更有价值的地理分类数据。
【专利附图】

【附图说明】
[0019]图1为本发明的实施例的逻辑结构图;
图2为膨胀边界点的示意图;
图3为本发明的实施例的聚合模块的流程图;
图4为本发明的实施例的聚合模块中核心点归类的流程图。
【具体实施方式】
[0020]现结合附图和【具体实施方式】对本发明进一步说明。
[0021]作为一个具体的实施例,本发明所阐述的地理围栏生成方法,参照图1,包括聚合模块和边界生成模块。各模块的功能和作用如下:
聚合模块:以兴趣点经纬度信息为特征,逐个计算以兴趣点为中心,周围一定范围内的点密度,密度大于一定阈值的点标记为核心点;计算各核心点之间的连通性,将所有连通的核心点与局部区域内的其它非核心点归为一个点集,供边界生成模块处理。
[0022]边界生成模块:将点集进行栅格化与膨胀化处理,对膨胀边界点进行序列化搜索,自动为点集生成光滑闭合地理边界;边界包含点集中所有点,并符合点集的总体形状特征。其中,膨胀边界点是膨胀之后的边界点,例如图2中,实心填充的部分为是原始边界点,阴影部分为是膨胀边界点。
[0023]其中,聚合模块主要包括标记核心点、核心点归类、类别合并和兴趣点聚合等过程。下面具体介绍各过程:
1)标记核心点,其流程图参见图3,具体步骤包括:
步骤一:从某一类的兴趣点集P中取出一个点,记为A ;
步骤二:以兴趣点A的经纬度位置为中心,以距离r为半径,划出一个局部区域。统计兴趣点集中属于该局部区域内点的个数M。判断M是否大于预设阈值T,如果大于T则将兴趣点A标记为核心点,进入步骤三,如果不大于T则进直接入步骤三;
步骤三:判断是否遍历P中所有兴趣点,如果没有则返回步骤一,如果已遍历则所有已标记核心点构成核心点集,结束该流程;
2)核心点归类,其流程图参见图4,具体步骤包括:
步骤一:建立一个类别缓存,类别缓存作用是将不同类别的核心点分类存储;
步骤二:从核心点集中取出一个点,记为B,进入步骤三;
步骤三:判断类别缓存是否为空,如果为空进入步骤七,如果不为空,进入步骤四; 步骤四:从类别缓存中取出一个类别点集记为C,进入步骤五;
步骤五:判断点B与类别点集C是否连通。判断方法是取出类别点集C中的所有点,如果其中有一个点在半径r的范围内包含点B,则点B与类别C连通。如果点B与类别C不连通,则进入步骤六;如果B与C连通,将点B加入类别缓存中的类别C中,进入步骤八;步骤六:判断是否遍历类别缓存中的所有类别,如果没有则返回步骤四,如果已遍历则进入步骤七;
步骤七:将点B作为新的类别存入类别缓存中,进入步骤八;
步骤八:判断是否遍历所有核心点,如果没有则返回步骤二,如果已遍历则结束该流程,进入类别合并流程;
3)类别合并,核心点归类流程步骤二中由于取出核心点的顺序是随机的,可能造成一个实际类别被暂时分成多个类别,本类别合并流程用于解决核心输入顺序敏感性的问题,其具体包括以下步骤:
步骤一:从类别缓存中取出一个类别点集C作为待处理类别,从C中取出所有点,进入步骤二 ;
步骤二:从类别缓存中取出另一个类别点集D,从D中取出所有点,如果其中有一个点在半径r的范围内包含点集C中的点,则将类别点集D与类别点集C合并。进入步骤三;步骤三:重复执行步骤二,直到将类别缓存中的所有能与C合并的类别均与C合并,完成待处理类别C的处理;
步骤四:重复执行步骤一,直到类别缓存中所有类别点集均作为待处理类别被处理过。进入兴趣点聚合流程;
4)兴趣点聚合,其具体包括以下步骤:
步骤一:从类别缓存中取出一个类别点集C,从C中取出所有点,进入步骤二 ;
步骤二:将每个点在半径r的范围内包含的兴趣点集P中的点取出,作为一个聚合类,存入聚合类缓存K中;
步骤三:判断是否遍历了类别缓存中的所有类别,如没遍历完返回步骤一,如遍历完结束该流程。
[0024]该聚合模块通过点密度判断来标记核心点,挖掘出地理空间上的关键位置(例如商业类别则核心点代表商业中心)。通过连通性计算,得到地理空间上的关联信息,将关联紧密的核心点归为一类。通过同一类的核心点周边半径为r的范围取出同属性其它兴趣点,得到一个聚合点集。各聚合点集在地理空间上内部相对紧密关联,外部相对彼此独立,成为生成地理围栏边界的基础。
[0025]其中,边界生成模块利用聚合模块得到的每个聚合类点集数据,自动为点集生成光滑闭合且符合点集分布形态的序列化地理边界。该边界生成模块主要包括点集栅格化、膨胀化和边界搜索等过程,下面具体介绍各过程的实现步骤:
1)点集栅格化,具体包括以下步骤:
步骤一:从聚合类缓存K中取出一个点集,记为K1,进入步骤二 ;
步骤二:在点集Kl中寻找经度和纬度的最大最小值,经度最小值记为minLon,经度最大值记为maxLon,纟韦度最小值记为minLat,纟韦度最大值记为maxLat,进入步骤三;
步骤三:以聚合模块中使用的半径r的二分之一为步长,将步长换算为经纬度数记为λ。从minLon开始以每λ度划分横向栅格,得到栅格的横向边界位置坐标集:
{minLon, minLon+ λ,minLon+2 λ,minLon+3 λ,......, maxLon};
从minLat开始以每λ度划`分纵向栅格,得到栅格的纵向边界位置坐标集:
{minLat, minLat+ λ,minLat+2 λ,minLat+3 λ,......, maxLat};
根据点集边界即可把点集Kl的地理范围规则划分为许多方形栅格,每个栅格M (m, η)的范围为:minLat+n λ <讳度< minLat+(η+1) λ ;minLon+m λ <经度< minLon+(m+1) λ ;
2)点集膨胀化,具体包括以下步骤:
步骤一:循环遍历每一个栅格,如果栅格中包含Kl中的点,则栅格标记为1,否则标记为O ;
步骤二:循环遍历每一个标记为O的栅格M (m,n)=0,如果在八邻域的栅格中有标记为
1的栅格,即 M (m+1, n)=l 或 M (m_l, n)=l 或 M (m, n+l)=l 或 M (m, n_l)=l,则将该栅格标记为2,即M (m, η) =2 ;
通过标记为2的栅格将原有标记为I的栅格轮廓向外膨胀一个栅格位置,采用这一处理的好处对膨胀栅格搜索边界时能够保证所有的点包含在边界内,同时易于之后的边界点序列化处理;
3)边界搜索,具体包括以下步骤:
步骤一:循环遍历每一个标记为O的栅格M (m,n)=0,如果在八邻域的栅格中有标记为
2的栅格,即 M (m+1, η) =2 或 M (m_l, η) =2 或 M (m, n+l)=2 或 M (m, n_l )=2,则将该栅格的中心经纬度坐标取出,作为一个边界候选点P ;
步骤二:边界点清洗,遍历对所有边界候选点,计算一个边界候选点八邻域栅格内包含其它边界候选点个数,如果不等于2,则删除点P。通过这一步骤删除“凹”形区域经膨胀化产生的多分支边界点,以利于下一步的边界点序列化;
步骤三:开始边界点序列化搜索,设立一个初始为空的队列Q,从边界候选点中任意取出一点,压入队列中;
步骤四:从队列Q中取出最新压入的边界候选点,假设为P,遍历所有还未被压入队列的边界候选点,如果找到属于P八领域栅格内的边界候选点P,则将P压入队列Q,进入步骤五;
步骤五:判断候选边界点是否搜索完毕,如果否则返回步骤四,如果是则队列Q中的所有边界点即是按照顺时针或逆时针顺序排列的序列化的边界点,将队列Q中的边界点按顺序连接起来,即生成了该地理围栏的闭合边界。
[0026]采用本发明的点集栅格化与膨胀化处理,并对边界点进行序列化搜索,能够自动为点集生成光滑闭合的序列化地理边界,即使点集数目较为稀疏也不影响地理围栏边界的生成。经过试验证明,对某个区域的商业属性POI进行点集聚合与边界生成处理得到的商圈地理围栏,围栏的划分大都符合人们的潜在地理认知,从而显示出本发明的方法的有效性。同理对教育属性POI进行处理可生成学区地理围栏,对楼盘POI处理可生成生活区地理围栏等。本发明的地理围栏方法自动挖掘出地理信息的内在关联,使围栏边界符合关键点集的总体形状特征,地理边界划分合理准确,为基于位置的移动互联网服务提供有价值的地理围栏数据。
[0027]尽管结合优选实施方案具体展示和介绍了本发明,但所属领域的技术人员应该明白,在不脱离所附权利要求书所限定的本发明的精神和范围内,在形式上和细节上可以对本发明做出各种变化,均为本发明的保护范围。
【权利要求】
1.一种地理围栏生成方法,其特征在于:包括以下步骤: 步骤a:以兴趣点的经纬度信息为特征,逐个计算以兴趣点为中心、周围一定范围内的点密度,密度大于一定阈值的点标记为核心点; 步骤b:计算各核心点之间的连通性,对各核心点进行处理,将所有连通的核心点与局部区域内的其它非核心点归为一个点集; 步骤c:将点集进行栅格化与膨胀化处理,对膨胀边界点进行序列化搜索,自动为点集生成光滑闭合的地理边界;该地理边界内包含点集中的所有点,并符合点集的总体形状特征。
2.根据权利要求1所述的一种地理围栏生成方法,其特征在于:所述步骤a具体包括: 步骤al:从某一类的兴趣点集P中取出一个兴趣点,记为兴趣点A ; 步骤a2:以兴趣点A的经纬度位置为中心、以距离r为半径,得到一个局部区域;统计该兴趣点集P中属于该局部区域内的兴趣点的个数M,判断M是否大于预设阈值T ;如果M不大于T,则直接进入步骤a3 ;如果M大于T,则将兴趣点A标记为核心点,进入步骤a3 ;步骤a3:判断是否遍历该兴趣点集P中的所有兴趣点,如果没有,则返回步骤al ;如果已遍历,则所有已标记的核心点构成核心点集,结束该流程。
3.根据权利要求1所述的一种地理围栏生成方法,其特征在于:所述步骤b中对各核心点进行处理,包括标记 核心点流程,该标记核心点流程具体包括以下步骤: 步骤bll:建立一个类别缓存,该类别缓存包括多个缓存空间,用于将不同类别的核心点分类存储,同一类别的核心点的集合记为类别点集; 步骤bl2:从核心点集中取出一个核心点,记为核心点B,进入步骤bl3; 步骤bl3:判断类别缓存是否为空,如果为空,则进入步骤bl7 ;如果不为空,进入步骤bl4 ; 步骤bl4:从类别缓存中取出一个类别点集,记为类别点集C,进入步骤bl5 ; 步骤bl5:判断核心点B与类别点集C是否连通,判断方法是取出类别点集C中的所有点,如果其中有一个点在半径r的范围内包含核心点B,则核心点B与类别点集C连通,否则不连通;如果核心点B与类别点集C不连通,则进入步骤bl6 ;如果核心点B与类别点集C连通,将核心点B加入类别缓存中的类别点集C中,进入步骤bl8 ; 步骤bl6:判断是否遍历类别缓存中的所有类别,如果没有,则返回步骤bl4 ;如果已遍历,则进入步骤bl7 ; 步骤bl7:将核心点B作为新的类别存入类别缓存中,进入步骤bl8 ; 步骤bl8:判断是否遍历所有核心点,如果没有则返回步骤bl2,如果已遍历则结束该流程。
4.根据权利要求3所述的一种地理围栏生成方法,其特征在于:所述步骤b对各核心点进行处理,还包括类别合并流程,该类别合并流程具体包括以下步骤: 步骤b21:从类别缓存中任意取出一个类别点集C作为待处理类别,从类别点集C中取出所有点,进入步骤b22 ; 步骤b22:从类别缓存中取出另一个类别点集D,从类别点集D中取出所有点,如果其中有一个点在半径r的范围内包含类别点集C中的任意点,则将类别点集D与类别点集C合并,进入步骤b23 ;步骤b23:重复执行步骤b22,直到将类别缓存中的所有能与类别点集C合并的类别均与类别点集C合并,完成待处理类别C的处理; 步骤b24:重复执行步骤b21,直到类别缓存中所有类别点集均作为待处理类别被处理过。
5.根据权利要求4所述的一种地理围栏生成方法,其特征在于:所述步骤b对各核心点进行处理,还包括兴趣点聚合过程,该过程具体包括以下步骤: 步骤b31:从类别缓存中取出一个类别点集C,从类别点集C中取出所有点,进入步骤b32 ; 步骤b32:将每个点在半径r的范围内包含的兴趣点集P中的点取出,作为一个聚合类,存入聚合类缓存K中; 步骤b33:判断是否遍历了类别缓存中的所有类别,如没遍历完返回步骤b31,如遍历完结束该流程。
6.根据权利要求1所述的一种地理围栏生成方法,其特征在于:所述步骤c中,点集栅格化步骤具体包括: 步骤Cl:从聚合类缓存K中取出一个点集,记为点集K1,进入步骤c2 ; 步骤c2:在点集Kl中寻找经度和纬度的最大值和最小值,经度最小值记为minLonj^度最大值记为maxLon,纟韦度最小值记为minLat,纟韦度最大值记为maxLat,进入步骤c3 ;步骤c3:以半径r的二分之一为步长,将步长换算为经纬度数记为λ,从minLon开始以每λ度划分横向栅格,得到栅格的横向边界位置坐标集:
{minLon, minLon+ λ,minLon+2 λ,minLon+3 λ,......, maxLon}; 从minLat开始以每λ度划分纵向栅格,得到栅格的纵向边界位置坐标集:
{minLat, minLat+ λ,minLat+2 λ,minLat+3 λ,......, maxLat}; 根据点集边界即可把点集Kl的地理范围规则划分为许多方形栅格,每个栅格M (m, η)的范围为:minLat+n λ <讳度< minLat+(η+1) λ ;minLon+m λ <经度< minLon+(m+1) λ。
7.根据权利要求6所述的一种地理围栏生成方法,其特征在于:所述步骤c中,点集膨胀化步骤具体包括: 步骤c4:循环遍历每一个栅格,如果栅格中包含Kl中的点,则栅格标记为1,否则标记为O ; 步骤c5:循环遍历每一个标记为O的栅格M (m,η) =0,如果在八邻域的栅格中有标记为 I 的栅格,即 M (m+1, n)=l*M(m_l, n)=l*M(m, n+l)=l*M(m, n_l)=l,则将该栅格标记为2,即M (m, n)=2 ;通过标记为2的栅格将原有标记为I的栅格轮廓向外膨胀一个栅格位置。
8.根据权利要求7所述的一种地理围栏生成方法,其特征在于:所述步骤c中,边界搜索包括以下步骤: 步骤c6:循环遍历每一个标记为O的栅格M (m,η) =0,如果在八邻域的栅格中有标记为 2 的栅格,即 M (m+1, n)=2 或 M(m-1, n)=2 或 M(m, n+l)=2 或 M(m, n_l)=2,则将该栅格的中心经纬度坐标取出,作为一个边界候选点P ; 步骤c7:边界点清洗,遍历对所有边界候选点,计算一个边界候选点八邻域栅格内包含其它边界候选点个数,如果不等于2,则删除点P,通过该步骤删除“凹”形区域经膨胀化产生的多分支边界点; 步骤c8:开始边界点序列化搜索,设立一个初始为空的队列Q,从边界候选点中任意取出一点,压入队列中; 步骤c9:从队列Q中取出最新压入的边界候选点,假设为P,遍历所有还未被压入队列的边界候选点,如果找到属于P八领域栅格内的边界候选点P,则将P,压入队列Q,进入 下一步骤; 步骤ClO:判断候选边界点是否搜索完毕,如果否则返回步骤c9,如果是则队列Q中的所有边界点即是按照顺时针或逆时针顺序排列的序列化的边界点,将队列Q中的边界点按顺序连接起来,即生成了该地理围栏的闭合边界。
【文档编号】H04W4/02GK103533501SQ201310480546
【公开日】2014年1月22日 申请日期:2013年10月15日 优先权日:2013年10月15日
【发明者】涂岩恺, 季刚, 时宜, 黄家乾, 曹辉标 申请人:厦门雅迅网络股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1