信息推送方法和装置

阅读:1054发布:2020-06-17

专利汇可以提供信息推送方法和装置专利检索,专利查询,专利分析的服务。并且本 发明 涉及一种信息推送方法和装置,该方法包括:接收信息推送方输入的区域 选定 指令;在 电子 地图中确定与所述区域选定指令对应的选定区域;查找与所述选定区域重叠的预设街区边界区域;确定所述预设街区边界区域所 覆盖 的目标街区;查询与目标街区对应的用户标识,并向所述用户标识相应的用户推送信息。本 申请 的方案能够提高信息推送的准确性。,下面是信息推送方法和装置专利的具体信息内容。

1.一种信息推送方法,所述方法包括:
接收信息推送方输入的区域选定指令;
电子地图中确定与所述区域选定指令对应的选定区域;
查找与所述选定区域重叠的预设街区边界区域;
确定所述预设街区边界区域所覆盖的目标街区;
查询与目标街区对应的用户标识,并向所述用户标识相应的用户推送信息。
2.根据权利要求1所述的方法,其特征在于,所述在电子地图中确定与所述区域选定指令对应的选定区域包括:
根据所述区域选定指令,获取输入的与预设规则形状相匹配的区域指定参数;
根据所述区域指定参数,从电子地图中选定预设规则形状的区域,得到选定区域。
3.根据权利要求2所述的方法,其特征在于,所述预设规则形状为圆形;所述区域指定参数包括指定的圆点坐标和半径;
所述根据所述区域指定参数,从电子地图中选定预设规则形状的区域,得到选定区域包括:
在电子地图中,根据所述圆点坐标和所述半径确定圆形区域;
根据所述圆形区域确定选定区域。
4.根据权利要求3所述的方法,其特征在于,所述根据所述圆形区域确定选定区域包括:
确定覆盖所述圆形区域的矩形区域;
将所述矩形区域确定为选定区域。
5.根据权利要求3所述的方法,其特征在于,所述确定所述预设街区边界区域所覆盖的目标街区包括:
获取与所述预设街区边界区域对应的街区标识;
在所述电子地图中,确定与所述街区标识对应的街区轮廓;
确定所述圆点坐标到所述街区轮廓的最短距离;
当最短距离小于所述半径时,判定与所述街区标识相应的街区为目标街区。
6.根据权利要求5所述的方法,其特征在于,所述确定所述圆点坐标到所述街区轮廓的最短距离包括:
将所述街区轮廓中相邻的坐标点连接得到相应的线段;
确定所述圆点坐标到各所述线段的直线距离;
将最小的所述直线距离作为所述圆点坐标到所述街区轮廓的最短距离。
7.根据权利要求2所述的方法,其特征在于,所述区域指定参数包括指定的边界数据;
所述根据所述区域指定参数,从电子地图中选定预设规则形状的区域,得到选定区域包括:
从所述电子地图中选定所述指定的边界数据所表示的区域,得到选定区域;
所述确定所述预设街区边界区域所覆盖的目标街区包括:
获取与所述预设街区边界区域对应的街区标识;
根据获取的所述街区标识相应的街区确定目标街区。
8.根据权利要求1所述的方法,其特征在于,所述预设街区边界区域是通过对电子地图中街区的街区轮廓进行规则化处理得到的规则图形;所述预设街区边界区域覆盖相应规则化处理的街区。
9.根据权利要求1所述的方法,其特征在于,所述预设街区边界区域为规则图形;所述查找与所述选定区域重叠的预设街区边界区域包括:
获取预先建立的街区边界树;所述街区边界树中父节点对应的边界区域覆盖相应子节点对应的边界区域,叶子节点对应预设街区边界区域,所述边界区域为所述规则图形;
从所述街区边界树的根节点开始,逐级查找所对应的边界区域与所述选定区域重叠的节点,直至达到叶子节点;
从与达到的叶子节点对应的预设街区边界区域中,确定与所述选定区域重叠的预设街区边界区域。
10.根据权利要求9所述的方法,其特征在于,所述街区边界树的建立步骤包括:
获取与预设的街区标识对应的街区边界数据,所述街区边界数据用于表示预设街区边界区域;
根据所述街区边界数据,确定对应于街区边界树中各节点的边界数据;
将确定的各边界数据记录于所对应的节点中,以建立街区边界树;
其中,所述街区边界树的父节点中记录的边界数据所表示的边界区域覆盖相应子节点中记录的边界数据所表示的边界区域,所述边界区域为所述规则图形,叶子节点中记录所述街区边界数据。
11.根据权利要求10所述的方法,其特征在于,所述获取与预设的街区标识对应的街区边界数据包括:
确定与预设的所述街区标识对应的街区轮廓;
分别确定所述街区轮廓中的最大和最小经度,以及最大和最小纬度;
将确定出的最小经度和最小纬度所组成的坐标作为第一顶点坐标;
将确定出的最大经度和最大纬度所组成的坐标作为第二顶点坐标;
根据所述第一顶点坐标和所述第二顶点坐标,确定与相应街区标识对应的街区边界数据。
12.根据权利要求1所述的方法,其特征在于,所述查询与目标街区对应的用户标识包括:
查询用户标识;查询的用户标识所对应的定位位置位于所述目标街区内。
13.根据权利要求12所述的方法,其特征在于,还包括:
确定所收集的用户标识在所述电子地图中所对应的定位位置;
在所述电子地图中,确定与预设的街区标识对应的街区轮廓;
当所收集的用户标识所对应的定位位置位于所述街区轮廓内时,则将所收集的用户标识与所述街区轮廓所对应的街区标识相关联;
所述查询用户标识包括:
查询与所述目标街区所对应的街区标识相关联的用户标识。
14.根据权利要求1至13中任一项所述的方法,其特征在于,所述向所述用户标识相应的用户推送信息包括:
获取查询到的用户标识所对应的用户特征;
获取推广信息和与所述推广信息对应的目标用户特征;
确定与所述目标用户特征匹配的用户特征所对应的用户标识;
向与所述用户标识相应的用户推送所述推广信息。
15.一种信息推送装置,其特征在于,所述装置包括:
区域选定模,用于接收信息推送方输入的区域选定指令;在电子地图中确定与所述区域选定指令对应的选定区域;
查找模块,用于查找与所述选定区域重叠的预设街区边界区域;
街区确定模块,用于确定所述预设街区边界区域所覆盖的目标街区;
信息推送模块,用于查询与目标街区对应的用户标识,并向与所述用户标识对应的用户推送信息。

说明书全文

信息推送方法和装置

技术领域

[0001] 本发明涉及计算机技术领域,特别是涉及一种信息推送方法和装置。

背景技术

[0002] 随着科学技术的飞速发展,信息化时代已然到来。由于信息推送的准确与否对成本消耗等方面起到非常重要的影响,所以信息的自动化推送越来越受到大家的重视。
[0003] 传统方法中,是按照信息推送发起者的指定操作,简单暴地划分出一个目标区域,向目标区域所覆盖的用户推送信息。由于传统这种方式是暴力地划分区域,因此,向暴力划分出的目标区域覆盖的用户推送信息容易导致信息推送不够准确。

发明内容

[0004] 基于此,有必要针对传统方法导致信息推送不够准确的问题,提供一种信息推送方法、装置、计算机设备和存储介质。
[0005] 一种信息推送方法,所述方法包括:
[0006] 接收信息推送方输入的区域选定指令;
[0007] 在电子地图中确定与所述区域选定指令对应的选定区域;
[0008] 查找与所述选定区域重叠的预设街区边界区域;
[0009] 确定所述预设街区边界区域所覆盖的目标街区;
[0010] 查询与目标街区对应的用户标识,并向所述用户标识相应的用户推送信息。
[0011] 一种信息推送装置,所述装置包括:
[0012] 区域选定模,用于接收信息推送方输入的区域选定指令;在电子地图中确定与所述区域选定指令对应的选定区域;
[0013] 查找模块,用于查找与所述选定区域重叠的预设街区边界区域;
[0014] 街区确定模块,用于确定所述预设街区边界区域所覆盖的目标街区;
[0015] 信息推送模块,用于查询与目标街区对应的用户标识,并向与所述用户标识对应的用户推送信息。
[0016] 一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行如下步骤:
[0017] 接收信息推送方输入的区域选定指令;
[0018] 在电子地图中确定与所述区域选定指令对应的选定区域;
[0019] 查找与所述选定区域重叠的预设街区边界区域;
[0020] 确定所述预设街区边界区域所覆盖的目标街区;
[0021] 查询与目标街区对应的用户标识,并向所述用户标识相应的用户推送信息。
[0022] 一种存储有计算机程序的存储介质,所述计算机程序被处理器执行时,使得处理器执行如下步骤:
[0023] 接收信息推送方输入的区域选定指令;
[0024] 在电子地图中确定与所述区域选定指令对应的选定区域;
[0025] 查找与所述选定区域重叠的预设街区边界区域;
[0026] 确定所述预设街区边界区域所覆盖的目标街区;
[0027] 查询与目标街区对应的用户标识,并向所述用户标识相应的用户推送信息。
[0028] 上述信息推送方法、装置、计算机设备和存储介质,会预先设置预设街区边界区域,在确定从电子地图中选定区域后,会查找与该选定区域重叠的预设街区边界区域。然后,确定查找的预设街区边界区域所覆盖的目标街区,查询与目标街区对应的用户标识,并向用户标识相应的用户推送信息。由于位于同一街区内的用户往往会由于地理相近等原因具有一些方面的共性,所以,以街区为单位,获取与所述目标街区对应的用户标识,向与获取的用户标识对应的用户推送信息,比传统方法直接向暴力划分区域所覆盖的用户推送信息更加的准确。附图说明
[0029] 图1为一个实施例中信息推送方法的应用场景图;
[0030] 图2为一个实施例中信息推送方法的流程示意图;
[0031] 图3为一个实施例中街区边界区域的示意图;
[0032] 图4为一个实施例中目标街区的示意图;
[0033] 图5为一个实施例中选定区域的示意图;
[0034] 图6为一个实施例中确定目标街区的示意图;
[0035] 图7为一个实施例中街区边界树的示意图;
[0036] 图8为一个实施例中与街区边界树相应的区域简化划分图;
[0037] 图9为另一个实施例中信息推送方法的流程示意图;
[0038] 图10为一个实施例中信息推送装置的结构框图
[0039] 图11为另一个实施例中信息推送装置的结构框图;
[0040] 图12为一个实施例中计算机设备的内部结构示意图;
[0041] 图13为另一个实施例中计算机设备的内部结构示意图。

具体实施方式

[0042] 为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
[0043] 图1为一个实施例中信息推送方法的应用场景图。参照图1,该应用场景中包括第一终端110、服务器120以及第二终端130,其中,第一终端110和第二终端130分别通过网络与服务器120之间建立通信连接。其中,第一终端110是具备电子地图处理功能的终端,第二终端130是具备信息接收功能的终端。在一个实施例中,第一终端110还具备信息推送功能。
[0044] 在一个实施例中,可以是第一终端110接收信息推送方输入的区域选定指令;在电子地图中确定与所述区域选定指令对应的选定区域;查找与所述选定区域重叠的预设街区边界区域;确定所述预设街区边界区域所覆盖的目标街区;查询与目标街区对应的用户标识。第一终端110可以请求服务器120向与查找到的用户标识相应的用户所使用的第二终端130推送信息。在一个实施例中,第一终端110还可以自身向与查询到的用户标识相应的用户所使用的第二终端130推送信息。
[0045] 可以理解,在其他实施例中,可以是服务器120接收第一终端110发送的信息推送方所输入的区域选定指令,在电子地图中选定与区域选定指令对应的选定区域。服务器120可以查找与所述选定区域重叠的预设街区边界区域;确定所述预设街区边界区域所覆盖的目标街区;查询与目标街区对应的用户标识,并向用户标识相应的用户推送信息。服务器120可以向与查询到的用户标识相应的用户所使用的第二终端130推送信息。
[0046] 图2为一个实施例中信息推送方法的流程示意图。本实施例主要以该信息推送方法应用于计算机设备来举例说明,该计算机设备可以是图1中的第一终端110或服务器120。参照图2,该方法具体包括如下步骤:
[0047] S202,接收信息推送方输入的区域选定指令。
[0048] 其中,信息推送方,是进行信息推送的一方。区域选定指令,是对区域进行选择的指令。
[0049] 具体地,信息推送方可以基于电子地图进行区域选定操作,以输入区域选定指令,计算机设备接收输入推送方输入的区域选定指令。
[0050] 可以理解,当计算机设备为第一终端时,第一终端可以获取作用于第一终端显示的电子地图界面进行的区域选定操作,以获取输入的区域选定指令。当计算机设备为服务器时,服务器可以接收第一终端所发送的收信息推送方输入的区域选定指令。
[0051] 其中,电子地图(Electronic map),即数字地图,是利用计算机技术,以数字方式存储和查阅的地图。
[0052] S204,在电子地图中确定与区域选定指令对应的选定区域。
[0053] 在一个实施例中,选定区域,可以是根据输入的与预设规则形状相匹配的区域指定参数,从电子地图中选定的预设规则形状的区域。
[0054] 其中,预设规则形状,是预先设置的规则的形状。预设规则形状可以包括圆形和矩形中的至少一个。可以理解,预设规则形状还可以是其他的规则形状,在此不做一一列举。区域指定参数,用于在电子地图中指定符合预设规则形状的区域。
[0055] 在一个实施例中,步骤S204包括:根据区域选定指令,获取输入的与预设规则形状相匹配的区域指定参数;根据区域指定参数,从电子地图中选定预设规则形状的区域,得到选定区域。
[0056] 可以理解,当计算机设备为第一终端时,第一终端可以获取作用于该第一终端输入的与预设规则形状相匹配的区域指定参数。当计算机设备为服务器时,服务器可以接收第一终端所发送的输入的与预设规则形状相匹配的区域指定参数。
[0057] 在一个实施例中,选定区域,也可以是根据检测到的作用于电子地图上的区域选择轨迹,从电子地图中选定的与该区域选择轨迹匹配的闭合区域。可以理解,本实施例中的闭合区域可以为规则形状或不规则形状的图形。
[0058] 其中,区域选择轨迹,是根据作用于电子地图上的区域选择操作所形成的轨迹。区域选择轨迹可以包括光标移动轨迹和/或滑动轨迹。光标移动轨迹可以包括通过按压并拖动鼠标以在电子地图上移动光标所形成的轨迹。滑动轨迹可以包括通过按压计算机设备的界面以对电子地图进行滑动操作所形成的轨迹。比如,信息推送方可以通过手指按压计算机设备的界面以在电子地图上进行滑动操作生成滑动轨迹,计算机设备可以根据检测到的滑动轨迹从电子地图中选定与该滑动轨迹匹配的闭合区域。
[0059] 在一个实施例中,选定区域,还可以是按照输入的多个位置坐标在电子地图上进行定位,并将在电子地图中定位得到的多个定位点连接形成的闭合区域。
[0060] 具体地,信息推送方可以基于电子地图输入多个位置坐标,计算机设备获取该输入的多个位置坐标,并在电子地图上定位该多个位置坐标,以将得到的多个定位点连接形成闭合区域,该闭合区域即为从电子地图中选定区域。可以理解,同样地,当计算机设备为第一终端时,第一终端可以直接获取输入的多个位置坐标。当计算机设备为服务器时,服务器可以获取第一终端发送的输入的多个位置坐标。
[0061] 需要说明的是,本申请各实施例中的坐标,可以是以地理坐标系为参考的坐标。其中,地理坐标系(Geographic Coordinate System)是使用三维球面来定义地球表面位置,以实现通过经纬度对地球表面点位引用的坐标系。
[0062] S206,查找与选定区域重叠的预设街区边界区域。
[0063] 其中,街区,是由道路网络分割而形成的闭合的区域。即街区由道路围合而成。可以理解,具有公共部分的区域之间属于相互重叠,所以,与选定区域重叠的预设街区边界区域,是指与选定区域具有公共部分的预设街区边界区域。
[0064] 预设街区边界区域,是预先设置的街区边界区域。街区边界区域,是通过街区边界表示的区域。
[0065] 在一个实施例中,街区边界区域可以是由街区轮廓表示的街区,即电子地图中实际的街区。可以理解,这里所说的电子地图中的实际街区,是指街区在电子地图中的实际呈现状态。
[0066] 其中,街区轮廓,用于反映街区在电子地图中实际呈现的大小和形状。在一个实施例中,街区轮廓包括多个坐标点。可以理解,针对街区轮廓所包括的坐标点,将相邻的坐标点相连,以及首尾的坐标点相连,可以绘制出一个闭合的街区轮廓。闭合的街区轮廓所表示的区域即为实际的街区。
[0067] 在一个实施例中,街区边界区域也可以是通过对电子地图中街区的街区轮廓进行处理得到的图形;预设街区边界区域覆盖进行相应处理的街区。其中,街区边界区域可以是对街区的街区轮廓进行规则化或非规则化处理得到的图形。即对街区的街区轮廓进行处理得到的街区边界区域可以是规则图形或非规则图形。
[0068] 在一个实施例中,街区边界区域可以是通过对电子地图中街区的街区轮廓进行规则化处理得到的规则图形;预设街区边界区域覆盖相应规则化处理的街区。
[0069] 可以理解,电子地图中的街区通常是不规则图形,那么,相应规则化处理的属于规则图形的街区边界区域可以概略地表示街区在电子地图中所占的区域。可以理解,预设街区边界区域的面积大于或等于电子地图中相应的实际街区。
[0070] 在一个实施例中,计算机设备可以预先对电子地图中街区的街区轮廓进行规则化处理得到属于规则图形的预设街区边界区域。计算机设备可以建立街区与相应预设街区边界区域之间的对应关系。在一个实施例中,计算机设备可以建立街区标识与相应预设街区边界区域之间的对应关系。计算机设备也可以建立街区标识与表示相应预设街区边界区域的街区边界数据之间的对应关系。
[0071] 图3为一个实施例中街区边界区域的示意图。参照图3,实线所表示的不规则图形为街区,虚线所表示的规则的矩形则为该街区的预设街区边界区域。比如,实线闭合区域302a即表示街区,虚线矩形302b即表示该街区的预设街区边界区域。其中,点A、B、C和D为矩形的预设街区边界区域302b的四个顶点。其中,预设街区边界区域302b覆盖街区302a。
[0072] 在一个实施例中,预设街区边界区域由街区边界数据进行表示。街区边界数据,即用于表示街区边界区域的边界数据。边界数据(bound数据),是指位于区域的边界位置的参数。那么,街区边界数据,则是指位于预设街区边界区域的边界位置的参数。
[0073] 在一个实施例中,街区边界数据,可以根据相应街区的街区轮廓中的最大和最小经度,以及最大和最小纬度确定。可以理解,街区边界数据的相应街区,是街区边界数据所表示的预设街区边界区域所覆盖的街区。在一个实施例中,该街区边界数据相应街区的街区轮廓,是指与该街区边界数据所对应的街区标识相应的街区轮廓。
[0074] 在一个实施例中,街区边界数据包括第一顶点坐标和第二顶点坐标。其中,第一顶点坐标是与街区边界数据相应的街区的街区轮廓中的最小经度和最小纬度所组成的坐标,第二顶点坐标是与街区边界数据相应的街区的街区轮廓中的最大经度和最大纬度所组成的坐标。
[0075] 可以理解,顶点坐标是街区边界数据所表示的街区边界区域的顶点的坐标。需要说明的是,本申请实施例中的“第一”、“第二”仅用于区分、并不用于先后、大小、从属等方面的限定。
[0076] 在一个实施例中,当街区边界数据所表示的街区边界区域为矩形时(即规则图形为矩形时),第一顶点坐标可以为矩形的右上顶点坐标,第二顶点坐标可以为矩形的左下角顶点坐标。
[0077] 在一个实施例中,街区边界数据可以为第一顶点坐标和第二顶点坐标本身。
[0078] 在另一个实施例中,街区边界数据除了包括第一顶点坐标和第二顶点坐标以外,还可以包括属于规则图形的街区边界区域的其他顶点坐标。在又一个实施例中,街区边界数据除了包括第一顶点坐标和第二顶点坐标以外,还可以包括按照第一顶点坐标和第二顶点坐标生成的表示规则形状的街区边界的多个边缘点坐标。可以理解,将第一顶点坐标、多个边缘点坐标和第二顶点坐标在电子地图上定位后,将得到的相邻定位点连接,可以得到属于规则图形的闭合的街区边界区域。需要说明的是,这里对街区边界数据具体包括的内容不做限定,只要满足能够根据街区边界数据确定出街区边界区域即可。
[0079] 同样以图3为例,图3中街区边界区域302b所对应的街区边界数据就可以包括左下角顶点A的坐标(即由街区302a的街区轮廓中最小经度和最小纬度组成的第一顶点坐标)和右上角顶点坐标C的坐标(即由街区302a的街区轮廓中最大经度和最大纬度组成的第二顶点坐标)。在一个实施例中,街区边界数据除了包括顶点A和C的坐标以外,还可以包括点B和点D的坐标。在一个实施例中,街区边界数据除了包括顶点A和C的坐标以外,还可以包括表示规则形状的街区边界的多个边缘点坐标,比如,线段AB、AD、BC以及CD上的点都为表示规则形状的街区边界的边缘点,所以,街区边界数据还可以包括多个边缘点坐标。
[0080] 具体地,计算机设备可以将步骤S204中确定的选定区域与预设街区边界区域进行比对,以查找与选定区域重叠的预设街区边界区域。
[0081] 可以理解,计算机设备可以遍历预设街区边界区域,以从中查找出与选定区域重叠的预设街区边界区域。计算机设备也可以通过便捷查找方式,不用遍历预设街区边界区域来查找出与选定区域重叠的预设街区边界区域。
[0082] 在一个实施例中,计算机设备可以通过预先建立的街区边界树,沿街区边界树的分支逐级缩小范围,以查找与选定区域重叠的预设街区边界区域,从而不遍历所有预设街区边界区域就能查找出与选定区域重叠的预设街区边界区域。其中,街区边界树中父节点对应的边界区域覆盖相应子节点对应的边界区域,叶子节点对应预设街区边界区域。各节点所对应的边界区域为预设街区边界区域所属的规则图形。比如,预设街区边界区域所属的规则图形为矩形,则各非叶子节点对应的边界区域也为矩形。
[0083] 可以理解,查找出的与选定区域重叠的预设街区边界区域可以为至少一个。
[0084] S208,确定预设街区边界区域所覆盖的目标街区。
[0085] 在一个实施例中,当预设街区边界为由街区轮廓表示的街区时,查找与选定区域重叠的预设街区边界区域包括:查找与选定区域重叠的由街区轮廓表示的街区;确定预设街区边界区域所覆盖的目标街区包括:从重叠的由街区轮廓表示的街区中,确定所覆盖的目标街区。
[0086] 在一个实施例中,计算机设备可以将重叠的由街区轮廓表示的街区全部作为目标街区。
[0087] 在一个实施例中,计算机设备可以确定重叠的由街区轮廓表示的街区与选定区域间的重叠度,根据重叠度从从重叠的由街区轮廓表示的街区中,确定所覆盖的目标街区。
[0088] 在一个实施例中,计算机设备可以当重叠度大于或等于重叠度阈值时,判定该重叠的由街区轮廓表示的街区为目标区域;当重叠度小于或等于重叠度阈值时,判定该重叠的由街区轮廓表示的街区为非目标区域。
[0089] 在一个实施例中,当预设街区边界区域为规则图形时,计算机设备可以确定查找出的预设街区边界区域所覆盖的街区,根据确定的街区,确定出目标街区。可以理解,计算机设备可以将确定出的街区边界区域所覆盖的街区都作为目标街区。计算机设备也可以从确定的街区中,选取出目标街区。
[0090] 在一个实施例中,计算机设备可以获取与查找出的预设街区边界区域对应的街区标识,根据获取的街区标识,确定出目标街区。
[0091] 在一个实施例中,计算机设备中可以预先建立预设街区边界区域与街区标识之间的对应关系,根据该对应关系,计算机设备可以获取与查找出的预设街区边界区域所对应的街区标识。在一个实施例中,计算机设备也可以预先建立街区边界数据与街区标识之间的对应关系,根据该对应关系,计算机设备可以获取与表示查找出的预设街区边界区域的街区边界数据对应的街区标识。
[0092] 在一个实施例中,计算机设备可以将获取的街区标识所对应的街区作为目标街区。计算机设备也可以从获取的街区标识中选取出目标街区标识,将选取的目标街区标识所对应的街区作为目标街区。
[0093] 图4为一个实施例中目标街区的示意图。参照图4所示,无填充的实线闭合区域为街区,虚线矩形为预设街区边界区域。假设选定区域为S1,查找出的与选定区域S1重叠的预设街区边界区域为402b和404b,预设街区边界区域402b和404b所分别覆盖的街区为402a和404a,那么,计算机设备可以将街区402a和404a确定为目标街区,也可以从街区402a和404a中选出目标街区。
[0094] S210,查询与目标街区对应的用户标识,并向用户标识相应的用户推送信息。
[0095] 其中,用户标识用于唯一标识用户。可以理解,这里的用户是指被推送信息的潜在用户,即可能被推送信息的用户。
[0096] 在一个实施例中,查询与目标街区对应的用户标识包括:根据预设的街区与用户标识间的对应关系,查询与目标街区对应的用户标识。其中,街区与用户标识间的对应关系可以根据信息推送方自定义得到,也可以根据对用户标识进行特征分析,以确定与街区之间的关联性,根据用户标识与街区之间的关联性建立用户标识与街区之间的对应关系。
[0097] 在一个实施中,查询与目标街区对应的用户标识包括:查询用户标识;查询的用户标识所对应的定位位置位于目标街区内。
[0098] 在一个实施例中,计算机设备预先收集了用户标识和相应的定位数据。计算机设备可以获取与所收集的用户标识相应的定位数据,根据该定位数据确定各用户标识在电子地图中所对应的定位位置,查询所对应的定位位置位于目标街区内的用户标识。
[0099] 在一个实施例中,计算机设备预先收集的用户标识可以是基于即时通信应用和/或基于实际地理位置的游戏应用触发定位处理的用户的唯一标识。比如,用户通过微信(WeChat,是腾讯公司推出的一个为智能终端提供即时通讯服务的应用程序)发送位置这一操作就是在触发定位处理。
[0100] 在一个实施例中,计算机设备预先建立了所收集的用户标识与街区之间的关联关系。其中,该关联关系是基于所收集的用户标识对应的定位位置建立,所收集的用户标识关联于其对应的定位位置所位于的街区。
[0101] 具体地,计算机设备预先确定了所收集的用户标识在电子地图中所对应的定位位置;并预先将确定的定位位置与电子地图中的各街区进行比对,当所对应的定位位置位于街区内时,则将所收集的用户标识与该街区相关联,以建立所收集的用户标识与街区之间的关联关系。
[0102] 可以理解,计算机设备可以直接获取收集的用户标识在电子地图中对应的定位位置,计算机设备可以预先收集用户标识和相应的定位数据,根据相应定位数据,确定所收集的用户标识在电子地图中所对应的定位位置。
[0103] 在一个实施例中,该方法还包括:确定所收集的用户标识在电子地图中所对应的定位位置;在电子地图中,确定与预设的街区标识对应的街区轮廓;当所收集的用户标识所对应的定位位置位于街区轮廓内时,则将所收集的用户标识与街区轮廓所对应的街区标识相关联。
[0104] 可以理解,当所收集的用户标识所对应的定位位置位于街区轮廓内时,则可以判定该定位位置位于该街区轮廓所对应的街区内。街区轮廓所对应的街区标识,即为街区轮廓所对应的街区的唯一标识。
[0105] 具体地,计算机设备可以根据射线算法,来判断各定位位置是否位于街区轮廓内。在一个实施例中,计算机设备可以由定位位置发出射线,确定发出的射线与街区轮廓的交点个数,当交点个数为奇数时,则判定该定位位置位于街区轮廓内。
[0106] 需要说明的是,这里并不限定将收集的用户标识与街区标识相关联的步骤与步骤S202~S206之间的先后顺序,只要在步骤S208之前完成即可。
[0107] 可以理解,计算机设备可以向查询到的所有用户标识相应的用户直接推送信息。计算机设备也可以对查询到的用户标识进行筛选,向筛选出的用户标识相应的用户推送信息。
[0108] 具体地,在向用户标识相应的用户推送信息时,计算机设备可以向登录用户标识的终端(即用户标识相应的用户所使用的终端)推送信息。
[0109] 可以理解,当计算机设备为第一终端时,计算机设备可以直接向与用户标识相应的用户推送本地存储的信息。计算机设备也可以根据该查询到的用户标识生成信息推送请求发送至服务器,使服务器向与查询到的用户标识相应的用户推送信息。当计算机设备为服务器时,计算机设备可以直接向与查询到的用户标识相应的用户推送信息。
[0110] 在一个实施例中,向用户标识相应的用户推送信息包括:获取查询到的用户标识所对应的用户特征;获取推广信息和与推广信息对应的目标用户特征;确定与目标用户特征匹配的用户特征所对应的用户标识;向用户标识相应的用户推送推广信息。
[0111] 其中,用户特征,是指用户的特征。用户特征包括用户属性特征和用户行为特征。用户属性特征是用户自身所具备的属性特征。用户行为特征是根据用户行为所体现出的特征。
[0112] 用户属性特征包括年龄、身高、学历和职业等中的至少一种。用户行为特征包括历史消费方式、购物频率、购买物品类型和常用消费地点等中的至少一种。历史消费方式包括线上和线下消费。线上消费又包括支付途径等。购买物品类型可以包括运动类、商务类、教育类或生活类等。
[0113] 推广信息,用于进行信息推广。在一个实施例中,推广信息可以包括资源推广信息和资讯推广信息等中的至少一种。
[0114] 资源推广信息是用于推广资源的信息。资源是可以被利用的事物。资源,包括具象的物品和/或抽象的事物。具象的物品,是具象的、具有实际形态的事物,比如服饰、书、画、电子产品、玩具、工艺品或签名照片等。抽象的事物,是抽象的没有一个特定形态的事物,比如,虚拟物品(比如,账户数值、虚拟形象产品、虚拟充值卡、虚拟游戏装备和虚拟货币等)、创意、设计方案或诗歌等都属于抽象的事物。
[0115] 资讯推广信息是用于推广资讯的信息。资讯是具有时效性和价值含量的信息。资讯包括了新闻、供求、动态、技术、政策、评论、观点和学术等范畴的信息。
[0116] 在一个实施例中,推广信息可以是广告信息。可以理解,广告信息可用于信息推广。
[0117] 在一个实施例中,推广信息可以包括图片、文字、图文结合、音频、视频或二维码等中的至少一种形式。
[0118] 与推广信息对应的目标用户特征,是指推广信息所针对的目标用户所具备的特征。
[0119] 具体地,计算机设备可以从本地或者从服务器获取与查询到的用户标识对应的用户特征,并可以从本地或者从服务器获取推广信息以及与该推广信息对应的目标用户特征。计算机设备可以将与查询到的用户标识对应的用户特征,与推广信息所对应的目标用户特征进行匹配,确定与目标用户特征匹配的用户特征所对应的用户标识,向与用户标识相应的用户推送推广信息。
[0120] 上述信息推送方法,会预先设置预设街区边界区域,在确定从电子地图中选定区域后,会查找与该选定区域重叠的预设街区边界区域。然后,确定查找的预设街区边界区域所覆盖的目标街区,查询与目标街区对应的用户标识,并向用户标识相应的用户推送信息。由于位于同一街区内的用户往往会由于地理相近等原因具有一些方面的共性,所以,以街区为单位,获取与所述目标街区对应的用户标识,向与获取的用户标识对应的用户推送信息,比传统方法直接向暴力划分区域所覆盖的用户推送信息更加的准确。
[0121] 在一个实施例中,预设规则形状为圆形;区域指定参数包括指定的圆点坐标和半径;根据区域指定参数,从电子地图中选定预设规则形状的区域,得到选定区域包括:在电子地图中,根据圆点坐标和半径确定圆形区域;根据圆形区域确定选定区域。
[0122] 在一个实施例中,计算机设备可以直接将圆形区域确定为选定区域。
[0123] 在一个实施例中,根据圆形区域确定选定区域包括:确定覆盖圆形区域的矩形区域;将矩形区域确定为选定区域。
[0124] 其中,矩形是至少有三个内角都是直角的四边形。矩形包括长方形和正方形。
[0125] 具体地,计算机设备可以根据指定的圆点坐标以及按照指定的半径,在电子地图中确定相应的圆形区域。计算机设备可以确定覆盖该圆形区域的矩形区域,将该矩形区域确定为选定区域。其中,覆盖圆形区域的矩形区域,是该圆形区域的矩形表示。
[0126] 在一个实施例中,覆盖圆形区域的矩形区域,为该圆形区域的外切矩形区域。在一个实施例中,计算机设备可以确定该圆形区域的外切矩形区域,并将确定出该外切矩形区域的第一顶点坐标和第二顶点坐标,将该第一顶点坐标和第二顶点坐标记作表示该外切矩形区域的参数。在一个实施例中,第一顶点坐标为外切矩形区域的最小经度和最小纬度所组成的坐标,第二顶点坐标为外切矩形区域的最大经度和最大纬度所组成的坐标。比如,表示该外切矩形区域的参数可以为(left_bottom_lng,left_bottom_lat,right_top_lng,right_top_lat)。
[0127] 在一个实施例中,预设街区边界区域所属的规则图形可以为矩形。
[0128] 图5为一个实施例中选定区域的示意图。参照图5,用户输入了指定的圆点坐标和半径,计算机设备可以在电子地图中,根据圆点坐标和半径确定圆形区域502(图中用较深颜色填充的区域),然后确定覆盖该圆形区域502的矩形区域504(图中用较浅颜色填充的区域),将矩形区域504确定为选定区域。
[0129] 上述实施例中,当获取指定的圆点坐标和半径时,在电子地图中,根据圆点坐标和半径确定圆形区域,对圆形区域做规范化处理,得到覆盖圆形区域的矩形区域,并将矩形区域确定为选定区域。可以理解,规范化后的矩形区域更加符合道路围合的街区形态,便于查找重叠的预设街区边界区域。此外,当预设街区边界区域为矩形时,将圆形区域规范化为矩形区域,能够更加地提高重叠的预设街区边界区域的查找效率。
[0130] 在一个实施例中,步骤S208包括:获取与预设街区边界区域对应的街区标识;在电子地图中,确定与街区标识对应的街区轮廓;确定圆点坐标到街区轮廓的最短距离;当最短距离小于半径时,判定与街区标识相应的街区为目标街区。
[0131] 具体地,计算机设备预先设置了街区标识与预设街区边界区域之间的对应关系。计算机设备可以根据该对应关系,获取与查找到的预设街区边界区域对应的街区标识。计算机设备可以在电子地图中,确定与该街区标识对应的街区轮廓,计算圆点坐标到街区轮廓的最短距离,并将最短距离与指定的半径进行比对。当最短距离小于半径时,计算机设备则可以判定与街区标识对应的街区为目标街区。
[0132] 图6为一个实施例中确定目标街区的示意图。参照图6,覆盖圆形区域的矩形区域602即为选定区域,选定区域602与多个预设街区边界区域重叠。其中,预设街区边界区域
604b虽然与选定区域602重叠,但是,圆点坐标O到预设街区边界区域604b所对应的街区
604a的街区轮廓的最短距离L大于半径R,则判定该街区604a不属于目标街区。预设街区边界区域606b和608b所对应的街区606a和608a已经被选定区域602覆盖,则圆点坐标O到街区
606a和608a的街区轮廓的最短距离小于半径R,因此可以判定街区606a和608a属于目标街区。
[0133] 在一个实施例中,街区轮廓包括多个坐标点。
[0134] 在一个实施例中确定圆点坐标到街区轮廓的最短距离包括:计算圆点坐标到街区轮廓所包括的各坐标点的距离,然后从计算的距离中,选取最短距离作为圆点坐标到街区轮廓的最短距离。可以理解,圆点坐标到各坐标点的距离为直线距离。
[0135] 在另一个实施例中,确定圆点坐标到街区轮廓的最短距离包括:将街区轮廓中相邻坐标点连接得到相应的线段;确定圆点坐标到各线段的直线距离;将最小的直线距离作为圆点坐标到街区轮廓的最短距离。
[0136] 可以理解,街区轮廓中每相邻坐标点连接都可以得到相应的一条线段。计算机设备可以确定圆点坐标到各线段的直线距离,从确定的各直线距离中,选取最小的直线距离作为圆点坐标到街区轮廓的最短距离。
[0137] 上述实施例中,由于将圆形区域规范化为矩形后确定的区域,相较于用户实际指定的区域要大,所以即使规范化为矩形后的区域如果与预设街区边界区域重叠,也可能存在实际想要指定的区域与预设街区边界区域不重叠的情况,因此,在查找到预设街区边界区域后,将圆点坐标到街区轮廓的最短距离与指定的半径进行比对,当最短距离小于半径时,判定与街区标识相应的街区为目标街区,提高了所确定的目标街区的准确性。
[0138] 在一个实施例中,区域指定参数包括指定的边界数据;根据所述区域指定参数,从电子地图中选定预设规则形状的区域,得到选定区域包括:从电子地图中选定指定的边界数据所表示的区域,得到选定区域。本实施例中,步骤S208包括:获取与预设街区边界区域对应的街区标识;根据获取的街区标识相应的街区确定目标街区。
[0139] 其中,边界数据(即bound数据),是指位于区域的边界位置的参数。其中,区域的顶点坐标就位于区域的边界位置,就可以作为边界数据。
[0140] 在一个实施例中,计算机设备所获取的边界数据,用于表示属于规则图形的区域,即得到的选定区域为规则图形。
[0141] 以图5为例进行举例说明,本实施例输入的边界数据可以直接表示图5中的区域504这一规范的边界区域,而简化了绘制圆形区域502再确定规范化边界区域的步骤。
[0142] 在一个实施例中,边界数据可以包括所表示的区域的顶点坐标。可以理解,边界数据可以包括所表示的区域的全部或部分顶点坐标。在一个实施例中,边界数据可以包括左下角顶点坐标和右上角顶点坐标。在一个实施例中,边界数据所表示的区域为矩形区域。
[0143] 具体地,计算机设备可以根据街区标识与预设街区边界区域之间的预先设置的对应关系,获取与查找到的预设街区边界区域对应的街区标识。计算机设备可以根据获取到的街区标识相应的街区确定目标街区。
[0144] 在一个实施例中,计算机设备可以将获取到的街区标识相应的街区确定为目标街区。在一个实施例中,计算机设备也可以从获取到的街区标识相应的街区中选取部分街区作为目标街区。
[0145] 上述实施例中,可以直接指定边界数据,从电子地图中选定指定的边界数据所表示的区域,区域是规则图形。这样一来,查找到的预设街区边界区域所对应的街区标识相应的街区,即可以直接被确定为目标街区,提高了目标街区的确定效率。
[0146] 在一个实施例中,步骤S206包括:获取预先建立的街区边界树;从街区边界树的根节点开始,逐级查找所对应的边界区域与选定区域重叠的节点,直至达到叶子节点;从与达到的叶子节点对应的预设街区边界区域中,确定与选定区域重叠的预设街区边界区域。
[0147] 其中,街区边界树,是在各节点中记录边界数据、且在叶子节点记录街区边界数据的空间索引树。街区边界树中各节点有对应的边界区域,该边界区域为规则图形。叶子节点对应预设街区边界区域。各节点所对应的边界区域,是由该节点所记录的边界数据表示。叶子节点所对应的预设街区边界区域,是由该叶子节点所记录的街区边界数据表示。街区边界树中父节点对应的边界区域覆盖相应子节点对应的边界区域。
[0148] 在一个实施例中,街区边界树可以为R树。其中,R树是GUTTMAN于1984年提出的最早支持有序扩展的对象存取方法之一,也是目前应用最为广泛的一种空间索引结构。
[0149] 图7为一个实施例中街区边界树的示意图。图7为一棵街区边界树,R1为根节点,R6~R13为叶子节点。各节点中记录有用于表示相应边界区域的边界数据。各叶子节点中分别记录有相应的街区边界数据。图8为一个实施例中与图7所示的街区边界树相应的区域简化划分图。图8中的阴影部分表示的是选定区域S选,图8中的区域S6~S13则为预设街区边界区域,分别对应于叶子节点R6~R13(比如,区域S6与节点R6对应,区域S7与节点R7对应等等)。参照图8,各父节点对应的边界区域覆盖相应子节点对应的边界区域,比如,父节点R2在图8中所对应的区域S2覆盖相应子节点R6和R7所对应的区域S6和S7。
[0150] 具体地,计算机设备可以从街区边界树的根节点开始,逐级查找所对应的边界区域与选定区域重叠的节点,直至达到叶子节点;从与达到的叶子节点对应的预设街区边界区域中,确定与选定区域重叠的预设街区边界区域。
[0151] 同样以图7~图8为例,假设图8中阴影部分表示的是选定区域S选,图7中节点R1~R13,分别对应于图8中的区域S1~S13,R6~R13为叶子节点,所以区域S6~S13为预设街区边界区域。从根节点R1开始查找,发现选定区域S选与R1所对应的边界区域S1(参见图8)重叠,则向R1所对应的子节点R2~R5继续查找,发现R3和所对应的边界区域S3以及R4所对应的边界区域S4皆与S选重叠,而R2和R5所对应的边界区域S2和S5与S选不重叠。那么,继续查找R3所对应的子节点R8和R9,以及查找R4所对应的子节点R10和R11。由图8可知,R9和R11所对应的预设街区边界区域S9和S11与S选重叠,而R8和R10所对应的的预设街区边界区域S8和S10与S选不重叠,则预设街区边界区域S9和S11为与选定区域S选重叠的预设街区边界区域。
[0152] 上述实施例中,通过预先建立的街区边界树,来查找与选定区域重叠的预设街区边界区域,实现了缩小范围式的查找,而不用遍历每一个预设街区边界区域进行比对查找,提高了查找效率,同时避免了系统资源的浪费。
[0153] 在一个实施例中,街区边界树的建立步骤包括:获取与预设的街区标识对应的街区边界数据,街区边界数据用于表示预设街区边界区域;根据街区边界数据,确定对应于街区边界树中各节点的边界数据;将确定的各边界数据记录于所对应的节点中,以建立街区边界树。本实施例中,街区边界树的父节点中记录的边界数据所表示的边界区域覆盖相应子节点中记录的边界数据所表示的边界区域,边界区域为规则图形,叶子节点中记录街区边界数据。
[0154] 具体地,计算机设备预先设置了街区标识和与街区标识对应的街区边界数据。其中,街区边界数据用于表示预设街区边界区域,即通过对街区边界数据进行图形处理,可以生成相应的预设街区边界区域,街区边界数据为预设街区边界区域的数字化表示。可以理解,街区标识唯一对应街区边界数据,且唯一对应预设街区边界区域。
[0155] 在一个实施例中,计算机设备可以确定预设的街区边界数据所表示的预设街区边界区域,将满足预设聚类条件的预设街区边界区域聚类划分至同一边界区域,接着将划分得到的边界区域再次按照预设聚类条件,再次聚类划分至同一边界区域,如此迭代,直至得到一个最大的覆盖所有预设街区边界区域的边界区域为止。其中,表示最大的边界区域的边界数据对应于街区边界树中的根节点,其余边界数据在街区边界树中所对应的节点的层级高低,与其所表示的边界区域的大小正相关。即所表示的边界区域越大,在街区边界树中所对应的节点的层级越高。在一个实施例中,预设聚类条件可以为预设距离接近条件。
[0156] 如图8所示,比如,由于距离接近,预设街区边界区域S6和S7划分为同一个边界区域S2,预设街区边界区域S8和S9划分为同一个边界区域S3,以及预设街区边界区域S10和S11划分为同一个边界区域S4,预设街区边界区域S12和S13划分为同一个边界区域S5。
[0157] 上述实施例中,通过用于表示规则图形的预设街区边界区域的街区边界数据来构建街区边界树,即使用规则图形来构建空间索引树,提高了街区边界树的搜索效率。
[0158] 在一个实施例中,获取与预设的街区标识对应的街区边界数据包括:确定与预设的街区标识对应的街区轮廓;分别确定街区轮廓中的最大和最小经度,以及最大和最小纬度;将确定出的最小经度和最小纬度所组成的坐标作为第一顶点坐标;将确定出的最大经度和最大纬度所组成的坐标作为第二顶点坐标;根据第一顶点坐标和第二顶点坐标,确定与相应街区标识对应的街区边界数据,街区边界数据用于表示预设街区边界区域。
[0159] 具体地,计算机设备可以从电子地图中确定与预设的街区标识对应的街区轮廓。计算机设备可以确定街区轮廓中的最大经度和最小经度,以及最大纬度和最小纬度。计算机设备可以将确定出的最小经度和最小纬度所组成的坐标作为第一顶点坐标(即第一顶点坐标为最小经度和最小纬度),计算机设备可以将确定出的最大经度和最大纬度所组成的坐标作为第二顶点坐标(即第二顶点坐标为最大经度和最大纬度)。计算机设备可以根据第一顶点坐标和第二顶点坐标,确定与该街区轮廓相应街区标识对应的街区边界数据,街区边界数据用于表示预设街区边界区域。
[0160] 在一个实施例中,计算机设备可以直接将第一顶点坐标和第二顶点坐标本身作为街区边界数据。比如,街区边界数据可以为(min_lng,min_lat,max_lng,max_lat)。其中,lng为Longitude的简写,表示经度、lat为Latitude的简写,表示纬度。
[0161] 在另一个实施例中,计算机设备还可以根据第一顶点坐标和第二顶点坐标确定属于规则图形的预设街区边界区域的其他顶点坐标,将第一顶点坐标和第二顶点坐标和其他顶点坐标作为街区边界数据。
[0162] 在又一个实施例中,计算机设备还可以根据第一顶点坐标和第二顶点坐标,生成表示规则形状的街区边界的多个边缘点坐标。可以理解,将多个边缘点坐标、第一顶点坐标和第二顶点坐标在电子地图上定位后,将得到的相邻定位点连接,可以得到属于规则图形的闭合的街区边界区域。
[0163] 上述实施例中,通过街区轮廓的最大经度和最大纬度,确定第一顶点坐标,通过街区轮廓的最小经度和最小纬度,确定第二顶点坐标,根据第一顶点坐标和第二顶点坐标,确定与相应街区标识对应的街区边界数据,街区边界数据用于表示预设街区边界区域。实现了对街区轮廓的规范化处理,基于该规范化处理得到的预设街区边界区域进行信息推送相关处理,能够提高信息推送的准确性。此外,基于规范化的预设街区边界区域与选定区域进行重叠与否的比对,能够降低图像处理的难度,提高了处理效率,进而提高了信息推送的效率。
[0164] 如图9所示,在一个实施例中,提供了一种信息推送方法,该方法具体包括以下步骤:
[0165] S902,确定与预设的街区标识对应的街区轮廓;分别确定街区轮廓中的最大和最小经度,以及最大和最小纬度。
[0166] S904,将确定出的最小经度和最小纬度所组成的坐标作为第一顶点坐标;将确定出的最大经度和最大纬度所组成的坐标作为第二顶点坐标。
[0167] S906,根据第一顶点坐标和第二顶点坐标,确定与相应街区标识对应的街区边界数据,街区边界数据用于表示预设街区边界区域。
[0168] S908,根据街区边界数据,确定对应于街区边界树中各节点的边界数据;将确定的各边界数据记录于所对应的节点中,以建立街区边界树。
[0169] 其中,街区边界树的父节点中记录的边界数据所表示的边界区域覆盖相应子节点中记录的边界数据所表示的边界区域,边界区域为规则图形,叶子节点中记录街区边界数据。
[0170] S910,在电子地图中,根据指定的圆点坐标和半径确定圆形区域;确定覆盖圆形区域的矩形区域;将矩形区域确定为选定区域。
[0171] S912,获取预先建立的街区边界树;从街区边界树的根节点开始,逐级查找所对应的边界区域与选定区域重叠的节点,直至达到叶子节点。
[0172] 其中,街区边界树中父节点对应的边界区域覆盖相应子节点对应的边界区域,叶子节点对应预设街区边界区域,边界区域为规则图形;
[0173] S914,从与达到的叶子节点对应的预设街区边界区域中,确定与选定区域重叠的预设街区边界区域;预设街区边界区域是规则图形。
[0174] 其中,预设街区边界区域是通过对电子地图中街区的街区轮廓进行规则化处理得到的规则图形;所述预设街区边界区域覆盖相应规则化处理的街区。
[0175] S916,获取与所确定的预设街区边界区域对应的街区标识;在电子地图中,确定与街区标识对应的街区轮廓。
[0176] 可以理解,这里所说的,所确定的预设街区边界区域,是指与选定区域重叠的预设街区边界区域。
[0177] S918,将街区轮廓中相邻的坐标点连接得到相应的线段;确定圆点坐标到各线段的直线距离;将最小的直线距离作为圆点坐标到街区轮廓的最短距离;当最短距离小于半径时,判定与街区标识相应的街区为目标街区。
[0178] S920,确定所收集的用户标识在电子地图中所对应的定位位置;在电子地图中,确定与预设的街区标识对应的街区轮廓;当所收集的用户标识所对应的定位位置位于街区轮廓内时,则将所收集的用户标识与街区轮廓所对应的街区标识相关联。
[0179] S922,查询与目标街区所对应的街区标识相关联的用户标识;获取查询到的用户标识所对应的用户特征;获取推广信息和与推广信息对应的目标用户特征。
[0180] S924,确定与目标用户特征匹配的用户特征所对应的用户标识;按照确定的用户标识推送推广信息。
[0181] 上述信息推送方法,会预先设置预设街区边界区域,在确定从电子地图中选定区域后,会查找与该选定区域重叠的属于规则图形的预设街区边界区域。然后,确定查找的预设街区边界区域所覆盖的目标街区,按照所对应的定位位置位于目标街区内的用户标识,推送信息。由于位于同一街区内的用户往往会由于地理相近等原因具有一些方面的共性,所以,以街区为单位,获取所对应的定位位置位于所述目标街区内的用户标识,按照获取的用户标识推送信息,比传统方法直接向暴力划分区域所覆盖的用户推送信息更加的准确。
[0182] 其次,通过预先建立的街区边界树,来查找与选定区域重叠的预设街区边界区域,实现了缩小范围式的查找,而不用遍历每一个预设街区边界区域进行比对查找,提高了查找效率,同时避免了系统资源的浪费。
[0183] 然后,通过街区轮廓的最大经度和最大纬度,确定第一顶点坐标,通过街区轮廓的最小经度和最小纬度,确定第二顶点坐标,根据第一顶点坐标和第二顶点坐标,确定与相应街区标识对应的街区边界数据,街区边界数据用于表示预设街区边界区域。实现了对街区轮廓的规范化处理,基于该规范化处理得到的预设街区边界区域进行信息推送相关处理,能够提高信息推送的准确性。此外,基于规范化的预设街区边界区域与选定区域进行重叠与否的比对,能够降低图像处理的难度,提高了处理效率,进而提高了信息推送的效率。
[0184] 如图10所示,在一个实施例中,提供了一种信息推送装置1000,该装置包括:区域选定模块1002、查找模块1004、街区确定模块1006以及信息推送模块1008,其中:
[0185] 区域选定模块1002,用于接收信息推送方输入的区域选定指令;在电子地图中确定与区域选定指令对应的选定区域;
[0186] 查找模块1004,用于查找与选定区域重叠的预设街区边界区域;
[0187] 街区确定模块1006,用于确定预设街区边界区域所覆盖的目标街区;
[0188] 信息推送模块1008,用于查询与目标街区对应的用户标识,并向与用户标识对应的用户推送信息。
[0189] 在一个实施例中,区域选定模块1002还用于根据区域选定指令,获取输入的与预设规则形状相匹配的区域指定参数;根据所述区域指定参数,从电子地图中选定预设规则形状的区域,得到选定区域。
[0190] 在一个实施例中,所述预设规则形状为圆形;所述区域指定参数包括指定的圆点坐标和半径。区域选定模块1002还用于在电子地图中,根据所述圆点坐标和所述半径确定圆形区域;根据所述圆形区域确定选定区域。
[0191] 在一个实施例中,区域选定模块1002还用于确定覆盖所述圆形区域的矩形区域;将所述矩形区域确定为选定区域。
[0192] 在一个实施例中,街区确定模块1006还用于获取与所述预设街区边界区域对应的街区标识;在所述电子地图中,确定与所述街区标识对应的街区轮廓;确定所述圆点坐标到所述街区轮廓的最短距离;当最短距离小于所述半径时,判定与所述街区标识相应的街区为目标街区。
[0193] 在一个实施例中,街区确定模块1006还用于将所述街区轮廓中相邻的坐标点连接得到相应的线段;确定所述圆点坐标到各所述线段的直线距离;将最小的所述直线距离作为所述圆点坐标到所述街区轮廓的最短距离。
[0194] 在一个实施例中,所述区域指定参数包括指定的边界数据;区域选定模块1002还用于从所述电子地图中选定所述指定的边界数据所表示的区域,得到选定区域;街区确定模块1006还用于获取与所述预设街区边界区域对应的街区标识;根据获取的所述街区标识相应的街区确定目标街区。
[0195] 在一个实施例中,预设街区边界区域是通过对电子地图中街区的街区轮廓进行规则化处理得到的规则图形;所述预设街区边界区域覆盖相应规则化处理的街区。
[0196] 在一个实施例中,所述预设街区边界区域为规则图形。所述查找模块1004用于获取预先建立的街区边界树;所述街区边界树中父节点对应的边界区域覆盖相应子节点对应的边界区域,叶子节点对应预设街区边界区域,所述边界区域为所述规则图形;从所述街区边界树的根节点开始,逐级查找所对应的边界区域与所述选定区域重叠的节点,直至达到叶子节点;从与达到的叶子节点对应的预设街区边界区域中,确定与所述选定区域重叠的预设街区边界区域。
[0197] 在一个实施例中,该装置1000还包括:
[0198] 街区边界树建立模块1001,用于获取与预设的街区标识对应的街区边界数据,所述街区边界数据用于表示预设街区边界区域;根据所述街区边界数据,确定对应于街区边界树中各节点的边界数据;将确定的各边界数据记录于所对应的节点中,以建立街区边界树;其中,所述街区边界树的父节点中记录的边界数据所表示的边界区域覆盖相应子节点中记录的边界数据所表示的边界区域,所述边界区域为所述规则图形,叶子节点中记录所述街区边界数据。
[0199] 在一个实施例中,街区边界树建立模块1001还用于确定与预设的所述街区标识对应的街区轮廓;分别确定所述街区轮廓中的最大和最小经度,以及最大和最小纬度;将确定出的最小经度和最小纬度所组成的坐标作为第一顶点坐标;将确定出的最大经度和最大纬度所组成的坐标作为第二顶点坐标;根据所述第一顶点坐标和所述第二顶点坐标,确定与相应街区标识对应的街区边界数据,所述街区边界数据用于表示所述预设街区边界区域。
[0200] 在一个实施例中,信息推送模块1008还用于查询用户标识;查询的用户标识所对应的定位位置位于所述目标街区内。
[0201] 如图11所示,在一个实施例中,该装置1000还包括街区边界树建立模块1001和1007:
[0202] 关联模块1007,用于确定所收集的用户标识在所述电子地图中所对应的定位位置;在所述电子地图中,确定与预设的街区标识对应的街区轮廓;当所收集的用户标识所对应的定位位置位于所述街区轮廓内时,则将所收集的用户标识与所述街区轮廓所对应的街区标识相关联。
[0203] 本实施例中,信息推送模块1008还用于查询与所述目标街区所对应的街区标识相关联的用户标识。
[0204] 在一个实施例中,信息推送模块1008还用于获取查询到的用户标识所对应的用户特征;获取推广信息和与所述推广信息对应的目标用户特征;确定与所述目标用户特征匹配的用户特征所对应的用户标识;向与所述用户标识相应的用户推送所述推广信息。
[0205] 图12为一个实施例中计算机设备的内部结构示意图。参照图12,该计算机设备可以是图1中所示的第一终端,该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、显示屏和输入装置。其中,存储器包括非易失性存储介质和内存储器。该计算机设备的非易失性存储介质可存储操作系统和计算机程序。该计算机程序被执行时,可使得处理器执行一种信息推送方法。该计算机设备的处理器用于提供计算和控制能力,支撑整个计算机设备的运行。该内存储器中可储存有计算机程序,该计算机程序被处理器执行时,可使得处理器执行一种信息推送方法。计算机设备的网络接口用于进行网络通信。计算机设备的显示屏可以是液晶显示屏或者电子墨显示屏等。计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是终端外壳上设置的按键、轨迹球或触控板,也可以是外接的键盘、触控板或鼠标等。该计算机设备可以是个人计算机、移动终端或车载设备,移动终端包括手机、平板电脑个人数字助理或可穿戴设备等中的至少一种。
[0206] 本领域技术人员可以理解,图12中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
[0207] 图13为一个实施例中计算机设备的内部结构示意图。参照图13,该计算机设备可以是图1中所示的服务器,该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,存储器包括非易失性存储介质和内存储器。该计算机设备的非易失性存储介质可存储操作系统和计算机程序。该计算机程序被执行时,可使得处理器执行一种信息推送方法。该计算机设备的处理器用于提供计算和控制能力,支撑整个计算机设备的运行。该内存储器中可储存有计算机程序,该计算机程序被处理器执行时,可使得处理器执行一种信息推送方法。计算机设备的网络接口用于进行网络通信。
[0208] 本领域技术人员可以理解,图13中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
[0209] 在一个实施例中,本申请提供的信息推送装置可以实现为一种计算机程序的形式,计算机程序可在如图12或图13所示的计算机设备上运行,计算机设备的非易失性存储介质可存储组成该信息推送装置的各个程序模块,比如,图10所示的区域选定模块1002、查找模块1004、街区确定模块1006以及信息推送模块1008。各个程序模块所组成的计算机程序用于使该计算机设备执行本说明书中描述的本申请各个实施例的信息推送方法中的步骤,例如,计算机设备可以通过如图10所示的信息推送装置1000中的区域选定模块1002接收信息推送方输入的区域选定指令;在电子地图中确定与所述区域选定指令对应的选定区域;,以及通过查找模块1004查找与选定区域重叠的预设街区边界区域。计算机设备可以通过街区确定模块1006确定预设街区边界区域所覆盖的目标街区,并通过信息推送模块1008查询与目标街区对应的用户标识,并向所述用户标识相应的用户推送信息。
[0210] 在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,计算机程序被处理器执行时,使得处理器执行如下步骤:接收信息推送方输入的区域选定指令;在电子地图中确定与所述区域选定指令对应的选定区域;查找与所述选定区域重叠的预设街区边界区域;确定所述预设街区边界区域所覆盖的目标街区;查询与目标街区对应的用户标识,并向所述用户标识相应的用户推送信息。
[0211] 在一个实施例中,所述在电子地图中确定与所述区域选定指令对应的选定区域包括:根据所述区域选定指令,获取输入的与预设规则形状相匹配的区域指定参数;根据所述区域指定参数,从电子地图中选定预设规则形状的区域,得到选定区域。
[0212] 在一个实施例中,预设规则形状为圆形;区域指定参数包括指定的圆点坐标和半径;所述根据所述区域指定参数,从电子地图中选定预设规则形状的区域,得到选定区域包括:在电子地图中,根据所述圆点坐标和所述半径确定圆形区域;根据所述圆形区域确定选定区域。
[0213] 在一个实施例中,根据所述圆形区域确定选定区域包括:确定覆盖圆形区域的矩形区域;将矩形区域确定为选定区域。
[0214] 在一个实施例中,确定预设街区边界区域所覆盖的目标街区包括:获取与预设街区边界区域对应的街区标识;在电子地图中,确定与街区标识对应的街区轮廓;确定圆点坐标到街区轮廓的最短距离;当最短距离小于半径时,判定与街区标识相应的街区为目标街区。
[0215] 在一个实施例中,确定圆点坐标到街区轮廓的最短距离包括:将街区轮廓中相邻的坐标点连接得到相应的线段;确定圆点坐标到各线段的直线距离;将最小的直线距离作为圆点坐标到街区轮廓的最短距离。
[0216] 在一个实施例中,区域指定参数包括指定的边界数据;根据所述区域指定参数,从电子地图中选定预设规则形状的区域,得到选定区域:从电子地图中选定指定的边界数据所表示的区域,得到选定区域;确定预设街区边界区域所覆盖的目标街区包括:获取与预设街区边界区域对应的街区标识;根据获取的所述街区标识相应的街区确定目标街区。
[0217] 在一个实施例中,所述预设街区边界区域是通过对电子地图中街区的街区轮廓进行规则化处理得到的规则图形;所述预设街区边界区域覆盖相应规则化处理的街区。
[0218] 在一个实施例中,查找与选定区域重叠的预设街区边界区域包括:获取预先建立的街区边界树;街区边界树中父节点对应的边界区域覆盖相应子节点对应的边界区域,叶子节点对应预设街区边界区域,边界区域为规则图形;从街区边界树的根节点开始,逐级查找所对应的边界区域与选定区域重叠的节点,直至达到叶子节点;从与达到的叶子节点对应的预设街区边界区域中,确定与选定区域重叠的预设街区边界区域。
[0219] 在一个实施例中,街区边界树的建立步骤包括:获取与预设的街区标识对应的街区边界数据,街区边界数据用于表示预设街区边界区域;根据街区边界数据,确定对应于街区边界树中各节点的边界数据;将确定的各边界数据记录于所对应的节点中,以建立街区边界树;其中,街区边界树的父节点中记录的边界数据所表示的边界区域覆盖相应子节点中记录的边界数据所表示的边界区域,边界区域为规则图形,叶子节点中记录街区边界数据。
[0220] 在一个实施例中,获取与预设的街区标识对应的街区边界数据包括:确定与预设的街区标识对应的街区轮廓;分别确定街区轮廓中的最大和最小经度,以及最大和最小纬度;将确定出的最小经度和最小纬度所组成的坐标作为第一顶点坐标;将确定出的最大经度和最大纬度所组成的坐标作为第二顶点坐标;根据第一顶点坐标和第二顶点坐标,确定与相应街区标识对应的街区边界数据,街区边界数据用于表示预设街区边界区域。
[0221] 在一个实施例中,所述查询与目标街区对应的用户标识包括:查询用户标识;查询的用户标识所对应的定位位置位于所述目标街区内。
[0222] 在一个实施例中,计算机程序还使得处理器执行以下步骤:确定所收集的用户标识在电子地图中所对应的定位位置;在电子地图中,确定与预设的街区标识对应的街区轮廓;当所收集的用户标识所对应的定位位置位于街区轮廓内时,则将所收集的用户标识与街区轮廓所对应的街区标识相关联;查询用户标识包括:查询与目标街区所对应的街区标识相关联的用户标识。
[0223] 在一个实施例中,向所述用户标识相应的用户推送信息包括:获取查询到的用户标识所对应的用户特征;获取推广信息和与推广信息对应的目标用户特征;确定与目标用户特征匹配的用户特征所对应的用户标识;向与所述用户标识相应的用户推送推广信息。
[0224] 在一个实施例中,提供了一种存储有计算机程序的存储介质,计算机程序被处理器执行时,使得处理器执行如下步骤:接收信息推送方输入的区域选定指令;在电子地图中确定与所述区域选定指令对应的选定区域;查找与所述选定区域重叠的预设街区边界区域;确定所述预设街区边界区域所覆盖的目标街区;查询与目标街区对应的用户标识,并向所述用户标识相应的用户推送信息。
[0225] 在一个实施例中,所述在电子地图中确定与所述区域选定指令对应的选定区域包括:根据所述区域选定指令,获取输入的与预设规则形状相匹配的区域指定参数;根据所述区域指定参数,从电子地图中选定预设规则形状的区域,得到选定区域。
[0226] 在一个实施例中,预设规则形状为圆形;区域指定参数包括指定的圆点坐标和半径;所述根据所述区域指定参数,从电子地图中选定预设规则形状的区域,得到选定区域包括:在电子地图中,根据所述圆点坐标和所述半径确定圆形区域;根据所述圆形区域确定选定区域。
[0227] 在一个实施例中,根据所述圆形区域确定选定区域包括:确定覆盖圆形区域的矩形区域;将矩形区域确定为选定区域。
[0228] 在一个实施例中,确定预设街区边界区域所覆盖的目标街区包括:获取与预设街区边界区域对应的街区标识;在电子地图中,确定与街区标识对应的街区轮廓;确定圆点坐标到街区轮廓的最短距离;当最短距离小于半径时,判定与街区标识相应的街区为目标街区。
[0229] 在一个实施例中,确定圆点坐标到街区轮廓的最短距离包括:将街区轮廓中相邻的坐标点连接得到相应的线段;确定圆点坐标到各线段的直线距离;将最小的直线距离作为圆点坐标到街区轮廓的最短距离。
[0230] 在一个实施例中,区域指定参数包括指定的边界数据;根据所述区域指定参数,从电子地图中选定预设规则形状的区域,得到选定区域:从电子地图中选定指定的边界数据所表示的区域,得到选定区域;确定预设街区边界区域所覆盖的目标街区包括:获取与预设街区边界区域对应的街区标识;根据获取的所述街区标识相应的街区确定目标街区。
[0231] 在一个实施例中,所述预设街区边界区域是通过对电子地图中街区的街区轮廓进行规则化处理得到的规则图形;所述预设街区边界区域覆盖相应规则化处理的街区。
[0232] 在一个实施例中,查找与选定区域重叠的预设街区边界区域包括:获取预先建立的街区边界树;街区边界树中父节点对应的边界区域覆盖相应子节点对应的边界区域,叶子节点对应预设街区边界区域,边界区域为规则图形;从街区边界树的根节点开始,逐级查找所对应的边界区域与选定区域重叠的节点,直至达到叶子节点;从与达到的叶子节点对应的预设街区边界区域中,确定与选定区域重叠的预设街区边界区域。
[0233] 在一个实施例中,街区边界树的建立步骤包括:获取与预设的街区标识对应的街区边界数据,街区边界数据用于表示预设街区边界区域;根据街区边界数据,确定对应于街区边界树中各节点的边界数据;将确定的各边界数据记录于所对应的节点中,以建立街区边界树;其中,街区边界树的父节点中记录的边界数据所表示的边界区域覆盖相应子节点中记录的边界数据所表示的边界区域,边界区域为规则图形,叶子节点中记录街区边界数据。
[0234] 在一个实施例中,获取与预设的街区标识对应的街区边界数据包括:确定与预设的街区标识对应的街区轮廓;分别确定街区轮廓中的最大和最小经度,以及最大和最小纬度;将确定出的最小经度和最小纬度所组成的坐标作为第一顶点坐标;将确定出的最大经度和最大纬度所组成的坐标作为第二顶点坐标;根据第一顶点坐标和第二顶点坐标,确定与相应街区标识对应的街区边界数据,街区边界数据用于表示预设街区边界区域。
[0235] 在一个实施例中,所述查询与目标街区对应的用户标识包括:查询用户标识;查询的用户标识所对应的定位位置位于所述目标街区内。
[0236] 在一个实施例中,计算机程序还使得处理器执行以下步骤:确定所收集的用户标识在电子地图中所对应的定位位置;在电子地图中,确定与预设的街区标识对应的街区轮廓;当所收集的用户标识所对应的定位位置位于街区轮廓内时,则将所收集的用户标识与街区轮廓所对应的街区标识相关联;查询用户标识包括:查询与目标街区所对应的街区标识相关联的用户标识。
[0237] 在一个实施例中,向所述用户标识相应的用户推送信息包括:获取查询到的用户标识所对应的用户特征;获取推广信息和与推广信息对应的目标用户特征;确定与目标用户特征匹配的用户特征所对应的用户标识;向与所述用户标识相应的用户推送推广信息。
[0238] 应该理解的是,虽然本申请各实施例中的各个步骤并不是必然按照步骤标号指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,各实施例中至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
[0239] 本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一非易失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
[0240] 以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
[0241] 以上实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈