移动终端定位方法及系统与流程

文档序号:21202565发布日期:2020-06-23 19:29阅读:571来源:国知局
移动终端定位方法及系统与流程

本发明实施例涉及移动通信领域,更具体地,涉及一种移动终端定位方法及系统。



背景技术:

在移动通信领域,对移动终端进行精准定位是一种非常重要的能力,又被称为位置服务lbs(location-basedservices)。通过定位技术获取移动终端的位置信息,提供给移动用户本人或者其他通信系统,实现各种与位置相关的业务,给用户提供多元化的位置服务。随着互联网的迅速发展以及通信技术的不断完善,对移动终端进行定位的技术也日新月异。目前电信运营商对移动终端进行定位的方式主要有以下几种:基于lac_id和cell_id的定位方式、基于gps的定位方式和基于特征库指纹定位方式。但上述方式各有利弊:基站定位目前覆盖用户较多,但是定位精准度不高;基于上网日志中的gps数据定位比较准确,但样本量较少;基于特征库指纹定位方式较为准确,但计算复杂度高,难以满足实时性的要求。



技术实现要素:

为了解决上述问题,本发明实施例提供一种克服上述问题或者至少部分地解决上述问题的移动终端定位方法及系统。

根据本发明实施例的第一方面,提供一种移动终端定位方法,该方法包括:根据采集获得的移动终端的基础数据,基于多种定位算法对移动终端进行定位,获得每种定位算法分别对应的定位信息;其中,定位算法包括基于基站的定位算法、基于mr的定位算法以及基于gps的定位算法中的至少两种,相应地,定位信息包括基站定位信息、mr定位信息以及gps定位信息中的至少两种;对多个定位信息进行筛选,获得移动终端的目标定位信息。

根据本发明实施例第二方面,提供了一种移动终端定位系统,该系统包括:定位模块,用于根据采集获得的移动终端的基础数据,基于多种定位算法对移动终端进行定位,获得每种定位算法分别对应的定位信息;其中,定位算法包括基于基站的定位算法、基于mr的定位算法以及基于gps的定位算法中的至少两种,相应地,定位信息包括基站定位信息、mr定位信息以及gps定位信息中的至少两种;筛选模块,用于对多个定位信息进行筛选,获得移动终端的目标定位信息。

根据本发明实施例的第三方面,提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行程序时实现如第一方面的各种可能的实现方式中任一种可能的实现方式所提供的移动终端定位方法。

根据本发明实施例的第四方面,提供了一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如第一方面的各种可能的实现方式中任一种可能的实现方式所提供的移动终端定位方法。

本发明实施例提供的移动终端定位方法及系统,通过基于多种定位算法对移动终端进行定位,获得每种定位算法分别对应的定位信息;并对多个定位信息进行筛选,获得移动终端的目标定位信息,从而实现了多种定位方式的融合,更好地满足了终端定位服务的实时性、准确性和覆盖全面性的需求,能够提供满足室内外多场景的数据服务。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些图获得其他的附图。

图1为本发明实施例提供的移动终端定位方法的流程示意图;

图2为本发明实施例提供的融合处理的流程示意图;

图3为本发明实施例提供的筛选定位信息的流程示意图;

图4为本发明实施例提供的移动终端定位系统的结构示意图;

图5为本发明实施例提供的电子设备的实体结构示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

现有技术中,运营商对移动终端进行定位的方式主要有以下几种:

方法一、基于lac_id和cell_id的定位方式:移动网络是通过一个个基站连接起来的,而一个基站又被划分为若干小区。电信运营商通过收集2/3/4g控制面的位置信令数据,获取无线网络上报的终端所在的基站编号lac_id和小区编号cell_id,位置业务平台将小区编号翻译成经纬度坐标,从而获取用户终端所在位置。这种方式能够实现简单的基于手机的位置信令,无需额外设备接入,只要用户手机处于移动通信网络的有效范围之内,就可以随时进行位置定位。

方法二、基于gps的定位方式:gps(globalpositioningsystem)即全球定位系统,是由美国建立的一个卫星导航定位系统,利用该系统,用户能够进行高精度的时间传递和高精度的精密定位。目前该方法应用广泛且定位较为精准,大多数的移动app均采用该定位方式。

方法三:基于特征库指纹定位方式:指纹库是指基于工参、5m三维地图、扫频/路测、mr历史数据,计算训练得来的反应地理上5m×5m栅格各项特征的数据集合。利用用户终端在mr消息使用mr测量报告,以及xdr信令构建区域基于坐标点的测量信号分布特征库,基于该特征库进行准实时定位。位置指纹定位的实施一般分为两个阶段:第一阶段为训练/离线阶段,主要工作是采集所需定位区域各参考节点位置的信号特征参数,包含邻近各小区的场强分布信息、移动性特征信息等,将一组指纹信息对应一个特定的位置形成位置指纹数据库。第二阶段是定位/在线阶段,利用接收机测定接收信号的参数,利用匹配算法来确定与数据库中哪一组数据相匹配,从而得到用户的实际位置。

但是,上述移动终端定位方式存在如下不足:

针对上述方法一:由于基站定位可以在室内定位,能够覆盖大部分区域,但是定位精度低,在市区一般300到500米之间,在郊区一般1000米到2000米,并且受环境影响较大。目前有很多室分基站,定位相对准确,但仅限于室内建筑,无法覆盖全部区域。

针对上述方法二:基于gps的定位方式定位比较准确,但是只有当用户主动开启gps定位或者使用某些有gps定位功能的软件的时候才会有位置信息。目前gps不能100%定位,室内定位更加不精准,会受到很多方面的影响,包含大楼、高架桥、电波等等,一般来说,gps在越空旷的地方定位越精准。

针对上述方法三:基于特征库指纹定位方式。这种方式通过在已建立的特征库(指纹库)中查找与当前mr点的特征最接近的位置点,来确定mr的位置。该方式要收集三维矢量电子地图(包括建筑物),准确的网络工参数据、用户的mr数据、室内室外扫频数据、路测数据等,在离线采样阶段生成指纹库,因此前期工作量较大。由于基站工参信息等经常发生变化,要定期或不定期进行指纹库的更新,如果更新一个省的指纹库信息大概需要1-2个星期的时间。由于在实时计算步骤要与数据库中的指纹进行匹配,因此计算耗时较长,一般要延时1-2个小时,无法满足准实时的要求。目前很多地区的原始ue-mr数据质量不高,邻区个数比较少,在实际定位过程中也难以达到预期50米以内的目标。

以上方法均各有利弊,基站定位目前覆盖用户较多,但是定位精准度不高;基于上网日志中的gps数据定位比较准确,但样本量较少;基于特征库指纹定位方式较为准确,但计算复杂度高,难以满足实时性的要求。

基于此,本发明实施例提供一种移动终端定位方法,该方法将不同的定位算法进行融合,从而更好地满足对于终端定位服务的实时性、准确性和覆盖全面性等要求。参见图1,该方法包括:

101、根据采集获得的移动终端的基础数据,基于多种定位算法对移动终端进行定位,获得每种定位算法分别对应的定位信息;其中,定位算法包括基于基站的定位算法、基于mr的定位算法以及基于gps的定位算法中的至少两种,相应地,定位信息包括基站定位信息、mr定位信息以及gps定位信息中的至少两种。

其中,基础数据主要来源于b域、o域数据。其中b域数据主要为流量话单、语音话单中涉及的位置信息,该位置信息为产生流量、语音所连接的基站信息;o域数据为网络侧采集数据,包括用户面和控制面数据,主要有mc信令、lte控制面信令、gn上网日志、lte用户面信令。本发明实施例中的定位算法包括基于基站的定位算法、基于mr的定位算法和基于gps的定位算法,基础数据能够为上述算法提供定位的数据基础。具体地,基于mr的定位算法所需的mr数据来源于lte控制面的ue-mr数据;基于gps的定位算法所需的gps数据主要来源于s1-u接口的http协议信令,并基于互联网位置知识库,提取出url中的gps信息;基于基站的定位算法所需的基站定位数据来源于mc/mme中的位置信令数据及流量话单、gprs话单中的位置数据。本发明实施例对基于基础数据获得每种定位算法分别对应的定位信息的方式不作限定。

102、对多个定位信息进行筛选,获得移动终端的目标定位信息。

具体地,执行步骤101后可获得一个移动终端对应的多个定位信息,由于不同的定位算法具有不同的优势,因此多个定位信息能够全面的反映移动终端的所处的位置。之后可对获得的多个定位信息进行筛选,获得最终的一个定位信息作为移动终端的目标定位信息,该目标定位信息即为对终端的定位结果。本发明实施例对筛选的方式不作限定,例如可以选择多个定位信息中的一个作为目标定位信息,也可以将多个定位信息的中间值作为目标定位信息。另外,本发明实施例对筛选所基于的原理不作限定,例如针对不同的应用场景进行筛选。

本发明实施例提供的移动终端定位方法,通过基于多种定位算法对移动终端进行定位,获得每种定位算法分别对应的定位信息;并对多个定位信息进行筛选,获得移动终端的目标定位信息,从而实现了多种定位方式的融合,更好地满足了终端定位服务的实时性、准确性和覆盖全面性的需求,能够提供满足室内外多场景的数据服务。

针对上述步骤101,该步骤是数据的融合处理过程。由于需要采用不同的定位算法分别对移动终端进行定位,因此,数据源较多且数据量较大,一天的数据为tb级,因此,对于数据融合处理的方法的要求非常高。为了对基础数据融合处理,基于上述实施例的内容,作为一种可选实施例,提供一种根据采集获得的移动终端的基础数据,基于多种定位算法对移动终端进行定位,获得每种定位算法分别对应的定位信息的方法,参见图2,包括但不限于:

步骤1、将基础数据写入kafka的不同topic中。

其中,kafka是一个分布式消息系统,kafka中的信息是通过主题topic来进行组织的。

基于上述实施例的内容,作为一种可选实施例,基础数据包括信令数据和/或话单数据;相应地,将基础数据写入kafka的方法包括但不限于:将信令数据从网络侧socket接口解码写入kafka;和/或,通过boss将话单数据传输至大数据接口机,并将话单数据写入kafka。

具体地,信令数据和话单数据包括mc/mme/http/gsm/gprs等数据源,上述数据源被分别写入到kafka的不同topic中。根据数据源提供方式有两种实现:

(1)对于mc/mme/mr/gn/s1-u信令数据,从网络侧socket接口实时解码写入kafka。

(2)对于gsm/gprs话单数据,由boss实时传输文件到大数据接口机,并使用ibmstreams写入到kafka。

步骤2、通过sparkstreaming并行读取kafka中的各topic,并对topic中的基础数据进行相应的处理,获得以imsi为唯一标识的各类位置数据。具体地,使用sparkstreaming并行读取kafka中的各个topic,并对数据使用对应逻辑对消息进行处理。保留以imsi(国际移动用户识别码)为唯一标识的各类位置数据。结果如下表1所示:

表1位置数据

另外,spark执行过程中依赖的各种维度数据和缓存数据被放置在codis集群中;处理结果数据回写codis,用作后续缓存,缓存中包含所有用户的最新信息缓存。

步骤3、基于多种定位算法对位置数据进行融合计算,获得每种定位算法分别对应的定位信息。

针对不同的定位算法具有不同的融合计算方式,首先,基于基站的定位方式如下:

基于上述实施例的内容,作为一种可选实施例,定位算法为基于基站的定位算法,话单数据包括gprs话单和语音话单;相应地,根据采集获得的移动终端的基础数据,基于多种定位算法对移动终端进行定位,获得每种定位算法分别对应的定位信息,包括:根据基础数据获得基站初始定位信息,基站初始定位信息包括包含于信令数据中的第一初始基站定位信息、包含于gprs话单中的第二初始基站定位信息以及包含于语音话单中的第三初始基站定位信息;若第一初始基站定位信息、第二初始基站定位信息及第三初始基站定位信息相同,则保留任意一个初始基站定位信息作为基站定位信息;若第一初始基站定位信息、第二初始基站定位信息及第三初始基站定位信息中的两个相同,则采用相同的两个初始基站定位信息对另一个初始基站定位信息进行纠错,并选择两个相同的初始基站定位信息中的一个作为基站定位信息;若第一初始基站定位信息、第二初始基站定位信息及第三初始基站定位信息均不相同,则选择距离最近的两个初始基站定位信息之间的中点的位置信息作为基站定位信息。

换言之,不仅信令数据中含有初始基站定位信息,gprs话单和语音话单中均有初始基站定位信息。如果三者信息相同,则保留一个;若三者有其中一个定位信息与其他两个定位信息不同,考虑定位漂移,则利用两个相同的基站信息对另外一个进行纠错,其余两个定位信息保留一个;若三者均不相同,则选择距离最近的两个点的中点作为此次定位最终点。

基于mr的定位方式如下:基于上述实施例的内容,作为一种可选实施例,定位算法为基于mr的定位算法,相应地,根据采集获得的移动终端的基础数据,基于多种定位算法对移动终端进行定位,获得每种定位算法分别对应的定位信息,包括但不限于:将移动终端在mr消息中上报的移动终端收到的各小区的信号强度输入至特征库,计算获得mr定位信息。

具体地,利用ue在mr消息(周期性和事件型)中上报的ue收到的各小区信号强度,作为特征库的输入,计算得到ue的位置。首先将场强信息栅格化,即按照一定尺度将网络划分为一个个正方形栅格,仿真得到每个栅格(5m×5m×5m)的特征向量;然后构建mr的小区场强向量,并根据其与指纹库栅格特征向量之间的向量距离来判别mr归属的栅格。两向量距离是利用两向量的欧式距离来计算的。栅格中的指纹特征包含邻近各小区的场强分布信息、移动性特征信息、邻区数等。定位过程中mr点与指纹库中向量距离最短的指纹将被锁定,该指纹所对应的栅格位置即可认为是相应mr的定位位置。

基于上网日志gps定位方式如下:根据采集的gn和s1-u接口的http话单,基于互联网位置知识库,提取url中的gps位置,根据定位时间和前后两个点之前的距离,去除定位漂移点。

基于上述实施例的内容,作为一种可选实施例,获得每种定位算法分别对应的定位信息之后,还包括:将定位信息写入kafka、phoenix和codis中。

具体地,处理结果数据(即定位信息)写入到kafka,提供后续流处理能力,此部分数据根据处理批次时长内排重。处理结果数据还写入phoenix(onhbase),留存位置轨迹信息。hbase作为底层存储提供高性能读写能力,使用phoenix提供即时查询能力。hbase数据以5分钟时长进行排重,以月为周期进行分表。使用hiveonphoenix或hiveonhbase提供后续批处理能力。通过hive外部表实现直接查询phoenix(onhbase)数据进行分析。最终输出结果为:

表2定位信息

基于上述实施例的内容,作为一种可选实施例,提供一种对多个定位信息进行筛选,获得移动终端的目标定位信息的方法,包括但不限于:

s1,按照时间顺序对在设定时段内获取的移动终端的定位信息进行排序,获得位置序列;

s2,判断位置序列中是否存在定位信息,若不存在则进入s3,若存在则进入s4;

s3,将移动终端的上个设定时段的定位信息作为移动终端的目标定位信息;

s4,判断位置序列中的定位信息是否全部相同,若不相同则进入s5;若相同,则合并相同的定位信息,并将定位信息作为移动终端的目标定位信息;

s5,判断位置序列中是否存在gps定位信息,若存在,则将设定时段内移动终端驻留时间最长的gps定位信息作为移动终端的目标定位信息;若不存在,则进入s6;

s6,判断位置序列中是否存在mr定位信息,若存在,则将设定时段内移动终端驻留时间最长的mr定位信息作为移动终端的目标定位信息;若不存在,则进入s7;

s7,判断位置序列中是否存在基站定位信息,若存在,则将设定时段内驻留时间最长的基站定位信息作为移动终端的目标定位信息。

参见图3,以下以一个具体实例对上述获得移动终端的目标定位信息的方法进行说明:

步骤1,对同一用户(即移动终端)在五分钟内(即设定时段)所出现的位置信令(定位信息)按时间顺序排序,形成单个用户五分钟内的位置序列。

步骤2,判断用户有无位置信息(即定位信息),若没有,则进入步骤3,若无,则进入步骤4。

步骤3,取用户上个五分钟的位置作为用户的当前位置(即目标定位信息)。

步骤4,判断位置信息是否相同,若不同进入步骤5;若相同进入步骤8,合并相同位置信息。

步骤5,判断用户是否有gps定位信息,若有,则取五分钟内用户驻留时间最长的gps位置为用户当前五分钟的最终位置(即目标定位信息);若无,则进入步骤6。

步骤6,判断用户是否有mr定位信息,若有,则取五分钟内用户mr定位驻留时间最长的点为用户当前五分钟的最终位置;若无,则进入步骤7。

步骤7,判断用户是否有基站定位信息,若有,则取用户五分钟内通过信令和话单数据驻留时间最长的基站位置为用户当前五分钟的最终位置;

步骤8,用户最终位置信息输出,输出给各种位置服务应用。

综上,本发明实施例对现行位置信令流处理平台进行技术改造,新增一个综合位置能力平台以及最优位置选择方法。通过对运营商现有流处理系统进行改造,使得系统能够满足多个定位方法的要求,实现每个移动终端都有多个定位位置,包括基于基站扇区的定位信息、基于mr的定位信息、基于上网gps的定位信息、基于语音、流量话单位置的定位信息;同时能够基于这些位置信息及服务请求方的需求,利用最优位置选择方法选择用户需要的位置提供给请求方。

本发明实施例提供的移动终端定位方法与现有技术相比,更具有普适性,无需仅仅依赖于mr数据,如在一些运营商,mr原始数据的邻区个数比较少,导致在mr定位的时候精确度比较低;二是,定位更加全面,能够满足用户多种定位的需求。本发明实施例不仅有mr定位,也有基于上网日志的gps定位,基于基站的定位,能够保证定位信息的全面性。另外,本发明实施例是在现有流处理系统上进行改造,能够保证定位信息准实时性,五分钟更新一个最新位置,具有非常高的通用性。在对外提供位置服务时,可以替代原有的基于信令的服务,减小对外提供位置服务对系统的压力。

基于上述实施例的内容,本发明实施例提供了一种移动终端定位系统,该移动终端定位系统用于执行上述方法实施例中的移动终端定位方法。参见图4,该系统包括:定位模块401和筛选模块402;其中,定位模块401,用于根据采集获得的移动终端的基础数据,基于多种定位算法对移动终端进行定位,获得每种定位算法分别对应的定位信息;其中,定位算法包括基于基站的定位算法、基于mr的定位算法以及基于gps的定位算法中的至少两种,相应地,定位信息包括基站定位信息、mr定位信息以及gps定位信息中的至少两种;筛选模块402,用于对多个定位信息进行筛选,获得移动终端的目标定位信息。

具体地,本发明实施例中的定位算法包括基于基站的定位算法、基于mr的定位算法和基于gps的定位算法,基础数据能够为上述算法提供定位的数据基础。本发明实施例对定位模块401基于基础数据获得每种定位算法分别对应的定位信息的方式不作限定。由于不同的定位算法具有不同的优势,因此多个定位信息能够全面的反映移动终端的所处的位置。之后筛选模块402可对获得的多个定位信息进行筛选,获得最终的一个定位信息作为移动终端的目标定位信息,该目标定位信息即为对终端的定位结果。

本发明实施例提供的移动终端定位系统,通过基于多种定位算法对移动终端进行定位,获得每种定位算法分别对应的定位信息;并对多个定位信息进行筛选,获得移动终端的目标定位信息,从而实现了多种定位方式的融合,更好地满足了终端定位服务的实时性、准确性和覆盖全面性的需求,能够提供满足室内外多场景的数据服务。

本发明实施例提供了一种电子设备,如图5所示,该设备包括:处理器(processor)501、通信接口(communicationsinterface)502、存储器(memory)503和通信总线504,其中,处理器501,通信接口502,存储器503通过通信总线504完成相互间的通信。处理器501可以调用存储器503上并可在处理器501上运行的计算机程序,以执行上述各实施例提供的移动终端定位方法,例如包括:根据采集获得的移动终端的基础数据,基于多种定位算法对移动终端进行定位,获得每种定位算法分别对应的定位信息;其中,定位算法包括基于基站的定位算法、基于mr的定位算法以及基于gps的定位算法中的至少两种,相应地,定位信息包括基站定位信息、mr定位信息以及gps定位信息中的至少两种;对多个定位信息进行筛选,获得移动终端的目标定位信息。

此外,上述的存储器503中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

本发明实施例还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各实施例提供的移动终端定位方法,例如包括:根据采集获得的移动终端的基础数据,基于多种定位算法对移动终端进行定位,获得每种定位算法分别对应的定位信息;其中,定位算法包括基于基站的定位算法、基于mr的定位算法以及基于gps的定位算法中的至少两种,相应地,定位信息包括基站定位信息、mr定位信息以及gps定位信息中的至少两种;对多个定位信息进行筛选,获得移动终端的目标定位信息。

以上所描述的电子设备等实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分方法。

最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1