CN105260468A - 一种基于坐标的附近点查找方法及装置 - Google Patents

一种基于坐标的附近点查找方法及装置 Download PDF

Info

Publication number
CN105260468A
CN105260468A CN201510675459.6A CN201510675459A CN105260468A CN 105260468 A CN105260468 A CN 105260468A CN 201510675459 A CN201510675459 A CN 201510675459A CN 105260468 A CN105260468 A CN 105260468A
Authority
CN
China
Prior art keywords
information point
grid cell
coordinate
map
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
Application number
CN201510675459.6A
Other languages
English (en)
Inventor
刘凤鸣
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guangzhou Baiguoyuan Network Technology Co Ltd
Original Assignee
Guangzhou Baiguoyuan Network Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Guangzhou Baiguoyuan Network Technology Co Ltd filed Critical Guangzhou Baiguoyuan Network Technology Co Ltd
Priority to CN201510675459.6A priority Critical patent/CN105260468A/zh
Publication of CN105260468A publication Critical patent/CN105260468A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/29Geographical information databases

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 Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明实施例公开了一种基于坐标的附近点查找方法及装置,其中方法包括:接收信息点查找请求,信息点查找请求携带基准点坐标和匹配关键字;获取基准点坐标所属的网格单元;获取与基准点坐标所属的网格单元相邻的第一网格单元并添加到目标网格单元集合中;在目标网格单元集合包含的网格单元中查找属性与匹配关键字匹配的信息点;将查找到的信息点添加到目标点集合中;获取与目标网格单元相邻且未被查找过的第二网格单元,清空目标网格单元集合,将第二网格单元添加到目标网格单元集合中;执行步骤:在目标网格单元集合包含的网格单元中查找属性与匹配关键字匹配的信息点。采用本发明,可以减少查找过程中的计算量,提高了查找的执行效率。

Description

一种基于坐标的附近点查找方法及装置
技术领域
本发明涉及互联网技术领域,尤其涉及一种基于坐标的附近点查找方法及装置。
背景技术
随着移动通信技术的飞速发展,基于位置的服务(英文:LocationBasedServices,简写:LBS)的应用范围越来越广,已经涉及到各大领域的应用中,例如交通、旅游、社交、娱乐等。,利用各种手持终端如平板电脑、手机等,在有无线通信网络环境的情况下(WiFi、3G、4G、2G等),用户可以轻松地向LBS系统发起请求,LBS应用系统得到用户的请求消息后,首先定位出用户的具体位置,根据位置信息以及用户所请求的内容作出相应的服务。例如,某个用户发起请求“查找离我最近的医院”,LBS应用系统就会返回离用户最近的医院的地址以及其他相关信息。
用户可以对某个地点周围的兴趣点进行查找和筛选,例如,附近的美食查找,用户可以查找在所处地点或者某个特定地点的附近一定范围内的餐厅信息,并且,用户还可以对查找的餐厅进行进一步地限制。例如,查找距离用户所在的地点最近的100个评分达到5分的餐厅。在查找附近100个评分达到5分的餐厅的时候,因为在查找之前无法确定满足条件的100个餐厅所覆盖的地理范围大小,也就是说,在查找的过程中无法确定查找范围中经度和纬度的最大最小值;在查找到的满足条件的信息点数量不符合预先设定的数量100时,如第一次查找到的信息点的数量小于100,就需要增加查找的范围,进行第二次查找,甚至需要多次查找。
因此,传统技术的基于位置的服务(LBS)应用中,在对附近满足预设条件的点进行查找时,因为无法预先确定查找范围,可能需要进行多次查找,对同一数据进行多次匹配和计算,造成计算的浪费,增大了查找过程中的计算量,降低了查找的执行效率。
发明内容
基于此,为解决上述提到的传统技术中基于位置的服务(LBS)应用中对附近满足预设条件的点的查找过程中,存在的计算量较大、查找效率不足的技术问题,本发明提供了一种基于坐标的附近点查找方法。
一种基于坐标的附近点查找方法,包括如下步骤:
接收信息点查找请求,所述信息点查找请求携带基准点坐标和匹配关键字;
获取所述基准点坐标所属的网格单元,所述网格单元是根据地图的坐标范围将地图按照预设的网格大小进行网格化划分得到的,所述网格单元与其在所述地图中的覆盖范围内的信息点对应;
获取与所述基准点坐标所属的网格单元相邻的第一网格单元,将所述第一网格单元添加到目标网格单元集合中,所述目标网格单元集合初始为空;
在所述目标网格单元集合包含的网格单元中查找属性与所述匹配关键字匹配的信息点;
将所述查找到的信息点添加到目标点集合中;
获取与所述目标网格单元相邻的且未被查找过的第二网格单元,清空所述目标网格单元集合,将所述第二网格单元添加到目标网格单元集合中;
执行所述在所述目标网格单元集合包含的网格单元中查找属性与所述匹配关键字匹配的信息点的步骤。
可选的,所述获取与所述基准点坐标所属的网格单元相邻的第一网格单元,将所述第一网格单元添加到目标网格单元集合中,所述目标网格单元集合初始为空的步骤之前还包括:在所述基准点坐标所属的网格单元中查找属性与所述匹配关键字匹配的信息点;将所述查找到的信息点添加到所述目标点集合中。
可选的,所述将所述查找到的信息点添加到目标点集合中的步骤之前还包括:获取所述目标点集合中包含的所述信息点的数量,判断获取到的所述信息点的数量是否满足阈值,若是,则返回所述目标点集合。
可选的,所述将查找到的信息点添加到目标点集合中的步骤还包括:将所述查找到的信息点逐一添加到目标点集合中。
可选的,所述接收信息点查找请求的步骤之前还包括:根据所述地图的坐标范围将所述地图按照预设的网格大小划分成至少2个网格单元,所述网格单元的形状为正方形、矩形、平行四边形、正六边形或三角形。
可选的,所述根据所述地图的坐标范围将所述地图按照预设的网格大小划分成至少2个网格单元的步骤之前还包括:将地图划分成不同区域,在不同区域中分别执行所述根据地图的坐标范围将地图按照预设的网格大小划分成若干个网格单元的步骤。
此外,为解决上述提到的传统技术中基于位置的服务(LBS)应用中对附近满足预设条件的点的查找过程中,存在的计算量较大、查找效率不足的技术问题,本发明还提供了一种基于坐标的附近点查找装置。
一种基于坐标的附近点查找装置,包括:
查找请求接收模块,用于接收信息点查找请求,所述信息点查找请求携带基准点坐标和匹配关键字;
网格单元获取模块,用于获取所述基准点坐标所属的网格单元,所述网格单元是根据地图的坐标范围将地图按照预设的网格大小进行网格化划分得到的,所述网格单元与其在所述地图中的覆盖范围内的信息点对应;
第一网格获取模块,用于获取与所述基准点坐标所属的网格单元相邻的第一网格单元,将所述第一网格单元添加到目标网格单元集合中,所述目标网格单元集合初始为空;
第一信息点查找模块,用于在所述目标网格单元集合包含的网格单元中查找属性与所述匹配关键字匹配的信息点;
信息点添加模块,用于将所述查找到的信息点添加到目标点集合中;
第二网格获取模块,用于获取与所述目标网格单元相邻的且未被查找过的第二网格单元,清空所述目标网格单元集合,将所述第二网格单元添加到目标网格单元集合中;
所述第二网格获取模块还用于:调用所述第一信息点查找模块。
可选的,该装置还包括第二信息点查找模块,用于:在所述基准点坐标所属的网格单元中查找属性与所述匹配关键字匹配的信息点;将查找到的信息点添加到目标点集合中。
可选的,该装置还包括数量判断模块,用于获取所述目标点集合中包含的所述信息点的数量,判断获取到的所述信息点的数量是否满足阈值,若是,则返回所述目标点集合。
可选的,该所述信息点添加模块还用于将查找到的信息点逐一添加到目标点集合中。
可选的,该装置还包括网格单元划分模块,用于根据所述地图的坐标范围将所述地图按照预设的网格大小划分成至少2个网格单元,所述网格单元的形状为正方形、矩形、平行四边形、正六边形或三角形。
可选的,该装置还包括地图区域划分模块,用于将地图划分成不同区域,在不同区域中分别执行所述根据地图的坐标范围将地图按照预设的网格大小划分成若干个网格单元。
实施本发明实施例,将具有如下有益效果:
采用上述基于坐标的附近点查找方法及装置之后,在基于位置的服务应用中,地图被划分成若干个网格单元,且每个网格单元与其覆盖的地图上的信息点对应。在地图中对附近满足预设条件的点进行查找时,首先在与基准点所属的网格单元中进行查找,若查找的数量或者范围仍不满足预设值时,再进一步地在与已查找过的网格单元相邻的其他网格单元中查找,直至查找数量或者范围满足预设值。也就是说,在对附近满足预设条件的点进行查找时,从离基准点最近的点开始查找,然后扩散至离基准点较远的点,直至结束查找过程。这样的逐层的查找方式,避免了在查找之前就要确定查找坐标范围,从而避免了因无法确定查找范围带来的重复查找,即对同一数据的只进行一次匹配或计算,而不需要对降低了查找过程中的计算量,提高了基于位置的服务中的查找效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
其中:
图1为一个实施例中一种基于坐标的附近点查找方法的流程示意图;
图2为一个实施例中一个地图的网格单元划分示意图;
图3为一个实施例中一个地图的网格单元划分示意图;
图4为一个实施例中一种基于坐标的附近点查找方法的循环过程的流程示意图;
图5为一个实施例中一个对网格单元的循环查找过程的查找网格示意图;
图6为一个实施例中一种基于坐标的附近点查找装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为解决上述提到的传统技术中基于位置的服务(LBS)应用中对附近满足预设条件的点的查找过程中,存在的计算量较大、查找效率不足的技术问题,在一个实施例中,特提出了一种基于坐标的附近点查找方法,该方法的执行可依赖于计算机程序,该计算机程序可以是桌面地图应用、网页地图应用或手机地图应用等基于位置的服务(LBS)应用程序,也可以是其他基于二维形态下的数据查找的计算机程序。该计算机程序可运行于冯诺依曼体系的计算机系统之上。需要说明的是,该计算机程序即可以运行于终端,也可以是运行于服务器,该计算机系统可以是智能手机、平板电脑或个人电脑等计算机设备。该计算机系统可以是运行于智能手机、平板电脑、笔记本电脑或者个人电脑等计算机设备。
具体的,如图1所示,该基于坐标的附近点查找方法包括如下步骤:
步骤S102:接收信息点查找请求,所述信息点查找请求携带基准点坐标和匹配关键字。
接收用户在终端上对应的LBS应用中的输入的信息点查找请求,所谓信息点(英语:pointofinformation,简称:POI)即为地图上的某个地标、景点,用以标示出该地所代表的政府部门,加油站、百货公司、超市、餐厅、酒店、便利商店、医院等商业机构,公园、公共厕所等旅游景点,古迹名胜,各式车站、停车场、超速照相机、限速标识等交通设施,信息点也可被称为兴趣点。
在用户输入的信息点查找请求中携带了具体要查找的内容,例如查找世界之窗南门附近100个5星好评的餐厅,则地点“世界之窗南门”的地理坐标即为信息查找请求中包含的基准点坐标,“5星好评”、“餐厅”即为信息查找请求中包含的匹配关键字。即查找到的信息点需要与关键字:“5星好评”、“餐厅”匹配,且需要在“世界之窗南门”的地理坐标附近,且需要查找100个满足上述条件的信息点。
例如,在一个运行于智能手机的地图APP中,用户在信息查找页面中输入了查找“我的位置”附近10个粤菜馆的查找请求,即相当于向服务器发送了一个基于位置的服务的请求,在该请求中,其基准点即为该智能手机所处的位置,并且,该位置的获取可以通过智能手机的GPS或者通过无线网络等获取当前的GPS信息,获取当前所处的位置的地理坐标,该坐标即为信息点查找请求包含的基准点坐标,“粤菜馆”即为信息查找请求中包含的匹配关键字。
步骤S104:获取所述基准点坐标所属的网格单元,所述网格单元是根据地图的坐标范围将地图按照预设的网格大小进行网格化划分得到的,所述网格单元与其在所述地图中的覆盖范围内的信息点对应。
在本实施例中,在地图数据的存储过程中,首先要将地图进行网格化,即按照一定的规则将地图划分成多个网格单元,根据每个网格单元所覆盖的范围,建立地图上的每个信息点与覆盖这些信息点的网格单元之间的映射关系,所以,每一个信息点都存在与其对应的网格单元,并且根据地图上任一点的坐标都可以获知其所属的网格单元。例如,根据信息点查找请求中包含的基准点坐标,可以获取该基准点坐标所属的网格单元,也可以获取该网格单元与其他网格单元之间的位置关系,例如,两个网格单元之间是否是相邻的。
可选的,在本实施例中,在地图数据的存储过程中,可以根据所述地图的坐标范围将所述地图按照预设的网格大小划分成至少2个网格单元,所述网格单元的形状为正方形、矩形、平行四边形、正六边形或三角形。
具体的,地图对应的是一个二维平面,且平面上的每一个点都有其对应的坐标,例如该坐标可以为经纬度坐标。根据地图上每一个点的坐标可以确定其坐标的最大值、最小值,从而确定地图的坐标范围。按照预设的规则和预设的网格大小将地图进行网格化,即将地图区域划分成多个网格单元,并对每个网格单元进行编号。
如图2所示,图2展示了一个地图的网格划分的示意图。在图2给出的展示页面中的地图,被等距的划分成了9个正方形网格单元,并且,给出了对应的网格编号,分别为X0Y0、X1Y0等。
需要说明的是,在上述的网格划分中,网格大小和形状可以多样化,例如可以是如图2中给出的相同大小的正方形网格单元。在另一个实施例中,网格单元的形状还可以是矩形行、平行四边形、正六边形或三角形,只要是能平铺整个平面的图形均可以作为划分的网格单元形状。
在一个实施例中,在同一个地图中,所有网格单元的大小还可以是不相同的。如图3所示,图3展示了在一个地图应用场景中,不等距的矩形网格单元划分的示意图。在图3展示的应用场景中,展示页面中的地图被划分成了大小不一致的20个网格单元,并给出了相应的编号。
需要说明的是,在上述的地图的网格化过程中,所有的网格单元是根据某一个原则进行划分得到的,在其他实施例中,还可以根据具体情况有多个划分规则。
例如,将地图划分成不同区域,在不同区域中分别执行所述根据地图的坐标范围将地图按照预设的网格大小划分成若干个网格单元的步骤。具体的,可以根据地图本身的级别的区域划分,如,在深圳市的地图中,所有的区域又可以被分成多个不同的行政区域,在每个行政区域内分别将该区域内的地图进行网格划分,然后将所有区域的网格划分合并,构成整个深圳市的地图的网格单元划分的最终结果。并且,不同的行政区域下地图的网格单元的形状和大小可以是一致的,也可以是不一致的,可以根据该区域内的信息点的分布进行选择。
进一步地,在地图的网格化的过程中,还可以在已经存储的第一网格单元划分结果下,继续进行进一步细化的第二网格单元划分,并且也存储第二网格单元划分的结果。也就是说,对于同一地图,存在两个网格单元划分,并且,二者存在互相包含关系。
需要说明的,对于同一个地图的至少两个网格单元划分,还可以是互相没有包含关系的多个网格单元划分。在存在多个网格单元划分的情况下,具体选择哪一种网格单元划分进行后续的信息点查找,可以根据具体的情况来选择。例如,在查找的信息点数量大、范围广的时候,可以选择大规格的网格单元划分,在查找的范围较小的情况下,选择小规格的网格单元划分来进行查找,即在获取所述基准点坐标所属的网格单元的过程中进行判断。
步骤S106:获取与所述基准点坐标所属的网格单元相邻的第一网格单元,将所述第一网格单元添加到目标网格单元集合中,所述目标网格单元集合初始为空。
步骤S108:在所述目标网格单元集合包含的网格单元中查找属性与所述匹配关键字匹配的信息点。
步骤S110:将所述查找到的信息点添加到目标点集合中。
步骤S112:获取与所述目标网格单元相邻的且未被查找过的第二网格单元,清空所述目标网格单元集合,将所述第二网格单元添加到目标网格单元集合中。
在步骤S104中获取到所述基准点坐标所属的网格单元之后,首先在与该基准点坐标所属的网格单元相邻的网格单元中查找与所述匹配关键字匹配的信息点。具体来讲就是,根据基准点坐标所属的网格单元编号,获取与其相邻的网格单元的编号,从而可以获知是哪些网格单元与该基准点坐标所属的网格单元是相邻的。将这些相邻的网格单元作为第一网格,添加到目标网格单元集合中去,在该目标网格单元集合中查找属性与所述匹配关键字匹配的信息点,即查找目标点。
地图所包含的每一个信息点,均有其对应的属性数据,在地图数据中,存在这些信息点与其对应的属性数据之间的映射关系,在已知其信息点的信息时,可以活着其对应的属性信息。如,信息点的名称与信息点的属性数据之间存在一一对应的关系。例如,地点“深圳威尼斯酒店”对应的属性数据可以包括:“经纬度坐标:东经113.984412°,北纬22.543257°”、“类型:酒店”、“酒店星级:五星级”、“地址:深圳南山区华侨城深南大道9026号”、“用户评价:5.0分”以及“酒店电话:(0755)26936888”等属性项信息。
在步骤S108:在所述目标网格单元集合包含的网格单元中查找属性与所述匹配关键字匹配的信息点中,根据信息点的属性数据,在目标网格单元集合包含的所有网格单元中的所有信息点中,查找其对应的属性项信息与匹配关键字是匹配的信息点。例如,匹配关键字为“5星级”、“酒店”时,在目标网格单元中查找类型与关键字“酒店”是匹配的,且酒店星级与“5星级”是匹配的信息点。需要说明的是,判断属性与匹配关键字是否是匹配的过程中,匹配的方式可以有多种,例如,二者相同即被认定为匹配,再例如,信息点的属性值在匹配关键字给出的阈值范围内即被认定为匹配,再例如,信息点的属性值大于或等于匹配关键字给出的数值时即被认定为匹配。
在步骤S108中查找到其属性与所述匹配关键字匹配的信息点之后,执行步骤S110:将查找到的信息点添加到目标点集合中。所谓目标点集合为即为查找结果的集合,可以在查找结束后以列表形式展示该集合中的元素。
具体的,每查找到一个其属性与所述匹配关键字匹配的信息点之后,就将该信息点添加到目标点集合中去,即上述目标点的添加方式为逐一添加。在其他实施例中,将查找到的信息点添加到目标点集合中去的添加方式还可以为成批添加,例如,在一次查找中,将目标网格单元中查找到的所有结果一次性的添加到目标点集合中。
可选的,在将查找到的信息点添加到目标点集合中的步骤之前,还包括:获取所述目标点集合中包含的所述信息点的数量,判断获取到的所述信息点的数量是否满足阈值,若是,则返回所述目标点集合,若否,则执行将查找到的信息点添加到目标点集合中的步骤。
在信息点查找请求中,携带的信息还可能包括查找的数量,即查找数量的阈值,需要说明的是,查找数量的阈值也是匹配关键字的一种。例如,在一个基于位置的服务应用中,用户发起的请求为查找世界之窗南门附近100个5星好评的餐厅,输入的信息点查找请求中包含查找数量的阈值“100”,即最终的获取结果应该是排在属性与匹配关键字匹配的信息点列表中的前100个。
在将查找到的信息点添加到目标点集合中的步骤中的添加方式为逐一添加时,在每次添加之前均进行一次判断,判断在目标点集合中的信息点的数量是否满足阈值,只有在其数量还不满足阈值时才将查找结果添加到该目标点结合中去。
具体的操作为:获取目标点集合中包含的所述信息点的数量,判断获取到的信息点的数量是否满足阈值;若是,则返回目标点集合,结束查找过程;若否,则将查找到的信息点添加到目标点集合中。
需要说明的是,在步骤将查找到的信息点添加到目标点集合中的添加方式为成批次添加时,为避免添加的信息点数量超过阈值,则可以在每次添加前进行一次判断。
具体的,获取目标点集合中包含的所述信息点的数量,判断获取到的信息点的数量是否满足阈值,若是,则返回目标点集合,结束查找过程。若获取到的信息点的数量不满足阈值,则获取需要查找的信息点的剩余量,该剩余量等于阈值与获取到的目标点集合中的信息点数量的差值;然后获取此次添加操作中的查找到的信息点数量,判断获取到的此次添加操作中的查找到的信息点数量是否小于或等于上述差值,若是,则执行步骤将查找到的信息点添加到目标点集合中;若否,则将此次查找到的信息点进行排序,获取序列中排在前面的若干个信息点,这若干个信息点的数量等于上述差值。
需要说明的是,在上述将信息点进行排序的过程中,排序的规则是根据查找数量的阈值的设置来定的,例如,在查找世界之窗南门附近100个5星好评的餐厅时,阈值100是根据信息点所在的位置与“世界之窗南门”之间的距离决定的,所在,其排序的规则是根据信息点所在的位置与“世界之窗南门”之间的距离远近制定的,距离越近,在序列中的位置越靠前。
因为在基准点坐标所属的网格单元中,在基准点坐标所属的网格单元中,也可能存在属性与匹配关键字是匹配的信息点,所以,在与基准点坐标所属的网格单元相邻的网格单元中查找与所述匹配关键字匹配的信息点的步骤之前,可选的步骤包括有:在基准点坐标所属的网格单元相邻的网格单元中查找与所述匹配关键字匹配的信息点。
具体来讲,就是,在基准点坐标所属的网格单元中查找属性与所述匹配关键字匹配的信息点,然后将查找到的信息点添加到目标点集合中。
步骤S112:获取与所述目标网格单元相邻的且未被查找过的第二网格单元,清空所述目标网格单元集合,将所述第二网格单元添加到目标网格单元集合中。
具体的,在步骤S106-S110中,在与所述基准点坐标所属的网格单元相邻的第一网格单元所在的目标网格单元集合中查找信息点之后,进一步的在与已经查找过的网格单元相邻的网格单元中继续查找信息点,直至满足查找终止条件。
需要说明的是,查找终止条件是根据信息点查找请求设定的。例如,与基于位置的服务请求对应的信息点查找请求为查找世界之窗南门附近100个5星好评的餐厅时,查找终止条件为目标点集合中的信息点数量大于或等于100。再例如,信息点查找请求为查找世界之窗南门附近1000米内的5星好评餐厅时,查找终止条件为信息点与基准点“世界之窗南门”的距离大于1000米,因为在信息点与基准点的距离大于1000米时,该信息点不在目标信息点的范围之内,不应该被添加到目标点集合中,则应该终止上述查找过程,跳出循环,结束查找,返回目标点集合。
具体的循环过程则可如图4所示,图4展示了一种基于坐标的附近点查找方法的循环过程的示意图,在该循环过程中,需要先设置目标点集合为空集{},然后执行如下步骤(需要说明的是,该循环步骤的执行可执行于基于位置的服务应用中关于附近信息点的查找过程中):
步骤S202:获取与所述目标网格单元相邻的且未被查找过的第二网格单元,清空所述目标网格单元集合,将所述第二网格单元添加到目标网格单元集合中。
步骤S204:在所述目标网格单元集合包含的网格单元中查找属性与所述匹配关键字匹配的信息点。
步骤S206:将查找到的信息点添加到目标点集合中。
步骤S208:判断是否满足查找终止条件,若是,则执行步骤S210:返回目标点集合;若否,则执行步骤S202。
经过上述步骤S202至步骤S208的循环过程之后,最终返回的目标点集合为满足用户在终端上输入的信息点查找请求的所有信息点的集合。
如图5所示,图5展示了一个基于位置的服务中对网格单元的循环查找过程的示意图。如图5所示,点A表示基准点所在的位置,在步骤S106-S110中查找了编号“1”的区域内的网格单元下的信息点,然后在上述循环过程中循环的查找编号“2”的区域内的网格单元下的信息点,再查找编号“3”的区域内的网格单元下的信息点,以此类推,直至满足信息点查找的查找终止条件才跳出循环,返回目标点集合。
为解决上述提到的传统技术中地图应用中对附近满足预设条件的点的查找过程中,存在的计算量较大、查找效率不足的技术问题,在另一个实施例中,如图6所示,还提供了一种基于坐标的附近点查找装置,包括查找请求接收模块102、网格单元获取模块104、第一网格获取模块106、第一信息点查找模块108、信息点添加模块110以及第二网格获取模块112,其中:
查找请求接收模块102,用于接收信息点查找请求,所述信息点查找请求携带基准点坐标和匹配关键字;
网格单元获取模块104,用于获取所述基准点坐标所属的网格单元,所述网格单元是根据地图的坐标范围将地图按照预设的网格大小进行网格化划分得到的,所述网格单元与其在所述地图中的覆盖范围内的信息点对应;
第一网格获取模块106,用于获取与所述基准点坐标所属的网格单元相邻的第一网格单元,将所述第一网格单元添加到目标网格单元集合中,所述目标网格单元集合初始为空;
第一信息点查找模块108,用于在所述目标网格单元集合包含的网格单元中查找属性与所述匹配关键字匹配的信息点;
信息点添加模块110,用于将查找到的信息点添加到目标点集合中;
第二网格获取模块112,用于获取与所述目标网格单元相邻的且未被查找过的第二网格单元,清空所述目标网格单元集合,将所述第二网格单元添加到目标网格单元集合中;
第二网格获取模块112还用于:调用所述第一信息点查找模块108。
可选的,该基于坐标的附近点查找装置还包括第二信息点查找模块114,用于在所述基准点坐标所属的网格单元中查找属性与所述匹配关键字匹配的信息点;将查找到的信息点添加到目标点集合中。
可选的,该基于坐标的附近点查找装置还包括数量判断模块116,用于获取所述目标点集合中包含的所述信息点的数量,判断获取到的所述信息点的数量是否满足阈值,若是,则返回所述目标点集合。
可选的,所述信息点添加模块110还用于将查找到的信息点逐一添加到目标点集合中。
可选的,该基于坐标的附近点查找装置还包括网格单元划分模块118,用于根据所述地图的坐标范围将所述地图按照预设的网格大小划分成至少2个网格单元,所述网格单元的形状为正方形、矩形、平行四边形、正六边形或三角形。
可选的,该基于坐标的附近点查找装置还包括地图区域划分模块120,用于将地图划分成不同区域,在不同区域中分别执行所述根据地图的坐标范围将地图按照预设的网格大小划分成若干个网格单元。
实施本发明实施例,将具有如下有益效果:
采用上述基于坐标的附近点查找方法及装置之后,在基于位置的服务应用中,地图被划分成若干个网格单元,且每个网格单元与其覆盖的地图上的信息点对应。在地图中对附近满足预设条件的点进行查找时,首先在与基准点所属的网格单元中进行查找,若查找的数量或者范围仍不满足预设值时,再进一步地在与已查找过的网格单元相邻的其他网格单元中查找,直至查找数量或者范围满足预设值。也就是说,在对附近满足预设条件的点进行查找时,从离基准点最近的点开始查找,然后扩散至离基准点较远的点,直至结束查找过程。这样的逐层的查找方式,避免了在查找之前就要确定查找坐标范围,从而避免了因无法确定查找范围带来的重复查找,即对同一数据的只进行一次匹配或计算,而不需要对降低了查找过程中的计算量,提高了基于位置的服务中的查找效率。
以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。

Claims (12)

1.一种基于坐标的附近点查找方法,其特征在于,包括:
接收信息点查找请求,所述信息点查找请求携带基准点坐标和匹配关键字;
获取所述基准点坐标所属的网格单元,所述网格单元是根据地图的坐标范围将地图按照预设的网格大小进行网格化划分得到的,所述网格单元与其在所述地图中的覆盖范围内的信息点对应;
获取与所述基准点坐标所属的网格单元相邻的第一网格单元,将所述第一网格单元添加到目标网格单元集合中,所述目标网格单元集合初始为空;
在所述目标网格单元集合包含的网格单元中查找属性与所述匹配关键字匹配的信息点;
将所述查找到的信息点添加到目标点集合中;
获取与所述目标网格单元相邻的且未被查找过的第二网格单元,清空所述目标网格单元集合,将所述第二网格单元添加到目标网格单元集合中;
执行所述在所述目标网格单元集合包含的网格单元中查找属性与所述匹配关键字匹配的信息点的步骤。
2.根据权利要求1所述的基于坐标的附近点查找方法,其特征在于,所述获取与所述基准点坐标所属的网格单元相邻的第一网格单元,将所述第一网格单元添加到目标网格单元集合中,所述目标网格单元集合初始为空的步骤之前还包括:
在所述基准点坐标所属的网格单元中查找属性与所述匹配关键字匹配的信息点;
将所述查找到的信息点添加到所述目标点集合中。
3.根据权利要求1所述的基于坐标的附近点查找方法,其特征在于,所述将所述查找到的信息点添加到目标点集合中的步骤之前还包括:
获取所述目标点集合中包含的所述信息点的数量,判断获取到的所述信息点的数量是否满足阈值,若是,则返回所述目标点集合。
4.根据权利要求3所述的基于坐标的附近点查找方法,其特征在于,所述将所述查找到的信息点添加到目标点集合中的步骤还包括:
将所述查找到的信息点逐一添加到目标点集合中。
5.根据权利要求1所述的基于坐标的附近点查找方法,其特征在于,所述接收信息点查找请求的步骤之前还包括:
根据所述地图的坐标范围将所述地图按照预设的网格大小划分成至少2个网格单元,所述网格单元的形状为正方形、矩形、平行四边形、正六边形或三角形。
6.根据权利要求5所述的基于坐标的附近点查找方法,其特征在于,所述根据所述地图的坐标范围将所述地图按照预设的网格大小划分成至少2个网格单元的步骤之前还包括:
将地图划分成不同区域,在不同区域中分别执行所述根据地图的坐标范围将地图按照预设的网格大小划分成若干个网格单元的步骤。
7.一种基于坐标的附近点查找装置,其特征在于,包括:
查找请求接收模块,用于接收信息点查找请求,所述信息点查找请求携带基准点坐标和匹配关键字;
网格单元获取模块,用于获取所述基准点坐标所属的网格单元,所述网格单元是根据地图的坐标范围将地图按照预设的网格大小进行网格化划分得到的,所述网格单元与其在所述地图中的覆盖范围内的信息点对应;
第一网格获取模块,用于获取与所述基准点坐标所属的网格单元相邻的第一网格单元,将所述第一网格单元添加到目标网格单元集合中,所述目标网格单元集合初始为空;
第一信息点查找模块,用于在所述目标网格单元集合包含的网格单元中查找属性与所述匹配关键字匹配的信息点;
信息点添加模块,用于将所述查找到的信息点添加到目标点集合中;
第二网格获取模块,用于获取与所述目标网格单元相邻的且未被查找过的第二网格单元,清空所述目标网格单元集合,将所述第二网格单元添加到目标网格单元集合中;
所述第二网格获取模块还用于:调用所述第一信息点查找模块。
8.根据权利要求7所述的基于坐标的附近点查找装置,其特征在于,所述装置还包括第二信息点查找模块,用于:
在所述基准点坐标所属的网格单元中查找属性与所述匹配关键字匹配的信息点;
将所述查找到的信息点添加到目标点集合中。
9.根据权利要求7所述的基于坐标的附近点查找装置,其特征在于,所述装置还包括数量判断模块,用于获取所述目标点集合中包含的所述信息点的数量,判断获取到的所述信息点的数量是否满足阈值,若是,则返回所述目标点集合。
10.根据权利要求9所述的基于坐标的附近点查找装置,其特征在于,所述信息点添加模块还用于将所述查找到的信息点逐一添加到目标点集合中。
11.根据权利要求7所述的基于坐标的附近点查找装置,其特征在于,所述装置还包括网格单元划分模块,用于根据所述地图的坐标范围将所述地图按照预设的网格大小划分成至少2个网格单元,所述网格单元的形状为正方形、矩形、平行四边形、正六边形或三角形。
12.根据权利要求11所述的基于坐标的附近点查找装置,其特征在于,所述装置还包括地图区域划分模块,用于将地图划分成不同区域,在不同区域中分别执行所述根据地图的坐标范围将地图按照预设的网格大小划分成若干个网格单元。
CN201510675459.6A 2015-10-16 2015-10-16 一种基于坐标的附近点查找方法及装置 Pending CN105260468A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510675459.6A CN105260468A (zh) 2015-10-16 2015-10-16 一种基于坐标的附近点查找方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510675459.6A CN105260468A (zh) 2015-10-16 2015-10-16 一种基于坐标的附近点查找方法及装置

Publications (1)

Publication Number Publication Date
CN105260468A true CN105260468A (zh) 2016-01-20

Family

ID=55100158

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510675459.6A Pending CN105260468A (zh) 2015-10-16 2015-10-16 一种基于坐标的附近点查找方法及装置

Country Status (1)

Country Link
CN (1) CN105260468A (zh)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105975627A (zh) * 2016-05-26 2016-09-28 成都正合地产顾问股份有限公司 选房方法及装置
CN106484845A (zh) * 2016-09-30 2017-03-08 北京百度网讯科技有限公司 基于电子地图的信息点区域确定方法及装置
CN107135244A (zh) * 2016-02-29 2017-09-05 阿里巴巴集团控股有限公司 基于位置的业务实现方法和装置
CN107992522A (zh) * 2017-11-06 2018-05-04 腾讯科技(深圳)有限公司 一种图像处理方法、装置以及终端设备
CN110838180A (zh) * 2019-09-30 2020-02-25 西安合科软件有限公司 一种网格单元组确定方法与装置
CN111651546A (zh) * 2020-06-01 2020-09-11 携程计算机技术(上海)有限公司 在地图中展示酒店周围信息点的方法、系统、设备和介质
CN113377094A (zh) * 2021-08-12 2021-09-10 浙江华睿科技股份有限公司 Agv地图的基准点查找方法及装置、电子设备、存储介质
CN115169276A (zh) * 2022-07-22 2022-10-11 北京云枢创新软件技术有限公司 一种基于叠放模块的引脚区域匹配方法
CN115966095A (zh) * 2022-12-02 2023-04-14 云控智行科技有限公司 基于车辆的交通数据融合处理方法、装置、设备及介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102890676A (zh) * 2011-07-19 2013-01-23 上海博泰悦臻电子设备制造有限公司 在地图中搜索兴趣点的方法及装置,车载系统
CN104252489A (zh) * 2013-06-28 2014-12-31 厦门雅迅网络股份有限公司 一种根据经纬度数据快速获得位置文字描述信息的方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102890676A (zh) * 2011-07-19 2013-01-23 上海博泰悦臻电子设备制造有限公司 在地图中搜索兴趣点的方法及装置,车载系统
CN104252489A (zh) * 2013-06-28 2014-12-31 厦门雅迅网络股份有限公司 一种根据经纬度数据快速获得位置文字描述信息的方法

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107135244A (zh) * 2016-02-29 2017-09-05 阿里巴巴集团控股有限公司 基于位置的业务实现方法和装置
US10904707B2 (en) 2016-02-29 2021-01-26 Advanced New Technologies Co., Ltd. Location-based service implementing method and apparatus
CN105975627A (zh) * 2016-05-26 2016-09-28 成都正合地产顾问股份有限公司 选房方法及装置
CN106484845A (zh) * 2016-09-30 2017-03-08 北京百度网讯科技有限公司 基于电子地图的信息点区域确定方法及装置
CN106484845B (zh) * 2016-09-30 2019-10-15 北京百度网讯科技有限公司 基于电子地图的信息点区域确定方法及装置
CN107992522A (zh) * 2017-11-06 2018-05-04 腾讯科技(深圳)有限公司 一种图像处理方法、装置以及终端设备
CN110838180B (zh) * 2019-09-30 2023-10-13 苏州数设科技有限公司 一种网格单元组确定方法与装置
CN110838180A (zh) * 2019-09-30 2020-02-25 西安合科软件有限公司 一种网格单元组确定方法与装置
CN111651546A (zh) * 2020-06-01 2020-09-11 携程计算机技术(上海)有限公司 在地图中展示酒店周围信息点的方法、系统、设备和介质
CN113377094A (zh) * 2021-08-12 2021-09-10 浙江华睿科技股份有限公司 Agv地图的基准点查找方法及装置、电子设备、存储介质
CN115169276A (zh) * 2022-07-22 2022-10-11 北京云枢创新软件技术有限公司 一种基于叠放模块的引脚区域匹配方法
CN115169276B (zh) * 2022-07-22 2023-04-07 北京云枢创新软件技术有限公司 一种基于叠放模块的引脚区域匹配方法
CN115966095A (zh) * 2022-12-02 2023-04-14 云控智行科技有限公司 基于车辆的交通数据融合处理方法、装置、设备及介质

Similar Documents

Publication Publication Date Title
CN105260468A (zh) 一种基于坐标的附近点查找方法及装置
CN103884345B (zh) 兴趣点信息采集方法、显示方法、装置及系统
US20120303263A1 (en) Optimization of navigation tools using spatial sorting
CN105828292A (zh) 一种基于地理围栏的位置检测方法及装置
US8718922B2 (en) Variable density depthmap
US8352480B2 (en) Methods, apparatuses and computer program products for converting a geographical database into a map tile database
CN107092623B (zh) 一种兴趣点查询方法及装置
US8996551B2 (en) Managing geographic region information
CN111651685A (zh) 一种兴趣点获取方法、装置、电子设备及存储介质
CN103247226B (zh) 一种电子地图的确定方法和装置
CN105373559A (zh) 一种地理信息获取方法及地理信息获取系统
CN103368984A (zh) 一种信息分享方法及系统
CN106708837B (zh) 兴趣点搜索方法、装置
CN104105061A (zh) 信息推送方法及系统
CN103279539A (zh) 兴趣点集合的显示方法、电子地图的显示方法以及装置
CN107135244B (zh) 基于位置的业务实现方法和装置
US11449898B2 (en) Method, device, and storage medium for recommending point of interest for location-based service
CN113342912B (zh) 地理位置区域的编码方法、建立编码模型的方法及装置
KR20140020332A (ko) 사용자 콘텐츠 획득 방법 및 시스템
CN104915393A (zh) 一种用于方向定向搜索的方法与设备
KR101934420B1 (ko) 지도 중의 후보 주소 정보를 획득하기 위한 방법 및 장치
US9811539B2 (en) Hierarchical spatial clustering of photographs
CN106408489A (zh) 精准扶贫信息处理方法及装置
CN103476003A (zh) 针对移动设备的地理信息存储方法及移动设备
CN103714081A (zh) 一种专有地名的识别方法和装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information

Address after: 510000 South Village Town, Panyu District, Guangzhou City, Guangdong Province, 79 Wanbo Second Road Wanbo Business District Wanda Business Square North District B-1 25 floors

Applicant after: All kinds of fruits garden, Guangzhou network technology company limited

Address before: 511442 25 floors, B-1 Building, North Wanda Commercial Plaza, Wanbo Business District, 79 Wanbo Second Road, Nancun Town, Panyu District, Zhuhai City, Guangdong Province

Applicant before: All kinds of fruits garden, Guangzhou network technology company limited

CB02 Change of applicant information
RJ01 Rejection of invention patent application after publication

Application publication date: 20160120

RJ01 Rejection of invention patent application after publication