CN104614704B - 一种确定移动终端位置的方法和装置 - Google Patents
一种确定移动终端位置的方法和装置 Download PDFInfo
- Publication number
- CN104614704B CN104614704B CN201510047914.8A CN201510047914A CN104614704B CN 104614704 B CN104614704 B CN 104614704B CN 201510047914 A CN201510047914 A CN 201510047914A CN 104614704 B CN104614704 B CN 104614704B
- Authority
- CN
- China
- Prior art keywords
- mobile terminal
- time
- timestamp
- single locus
- update
- 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.)
- Active
Links
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S1/00—Beacons or beacon systems transmitting signals having a characteristic or characteristics capable of being detected by non-directional receivers and defining directions, positions, or position lines fixed relatively to the beacon transmitters; Receivers co-operating therewith
- G01S1/02—Beacons or beacon systems transmitting signals having a characteristic or characteristics capable of being detected by non-directional receivers and defining directions, positions, or position lines fixed relatively to the beacon transmitters; Receivers co-operating therewith using radio waves
- G01S1/08—Systems for determining direction or position line
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W64/00—Locating users or terminals or network equipment for network management purposes, e.g. mobility management
- H04W64/003—Locating users or terminals or network equipment for network management purposes, e.g. mobility management locating network equipment
Abstract
本发明公开了一种确定移动终端位置的方法和装置,其中,所述方法包括:接收请求消息,所述请求消息用于触发确定所述移动终端位置的处理,并且携带有用于标识目标时间的第一时间戳;根据第一时间戳、预保存的所述移动终端的单点位置和第二时间戳,确定所述移动终端在所述目标时间的位置;其中,所述单点位置是指所述移动终端的一个位置,所述第二时间戳与所述单点位置对应。采用本发明,能够准确、实时地确定移动终端的位置,进而能提高针对所述请求消息的响应的时效性。
Description
技术领域
本发明涉及移动设备定位领域,更为具体而言,涉及一种确定移动终端位置的方法和装置。
背景技术
随着移动互联网的发展,在很多应用或服务中需要确定移动终端的位置。例如,在广告投放场景中,精确、实时地确定移动终端的位置,是无线广告精准投放的前提。
现有的确定移动终端位置的方法包括以下两种:
现有技术一:由移动终端在需要请求某项服务时进行定位处理,并将定位结果携带于用于请求服务的请求消息中,以便服务器根据请求消息确定移动终端的位置,进而执行处理。
现有技术二:在服务器保存移动终端的历史定位记录,根据移动终端的历史轨迹预测当前或未来的位置。
其中,现有技术一存在以下缺陷:
一方面,受制于权限设置(例如,用户禁用定位浏览器或相关应用程序的定位权限),无法保证成功获取移动终端的位置,服务器自然也就无法基于移动终端的位置进行相关处理。另一方面,临时进行定位处理往往需要几十毫秒到几秒的时间,进而延迟了服务器确定移动终端位置的时间和服务器基于移动终端的位置执行相关处理的时间。
现有技术二存在以下缺陷:
需要保存移动终端在一段时间内的历史轨迹,在移动终端的数量达到一定规模的情况下,保存数据的成本极高,并且巨大的数据量会影响预测结果的实时性。
发明内容
为了解决现有技术所存在的缺陷,本发明实施方式提供一种确定移动终端位置的方法和装置,能够精确、实时地确定移动终端的位置。
一方面,本发明实施方式提供了一种确定移动终端位置的方法,包括:
接收请求消息,所述请求消息用于触发确定所述移动终端位置的处理,并且携带有用于标识目标时间的第一时间戳;
根据第一时间戳、预保存的所述移动终端的单点位置和第二时间戳,确定所述移动终端在所述目标时间的位置;
其中,所述单点位置是指所述移动终端的一个位置,所述第二时间戳与所述单点位置对应。
可选地,在本发明实施例的一种实现方式中,根据第一时间戳、预保存的所述移动终端的单点位置和第二时间戳,确定所述移动终端在所述目标时间的位置,包括:
根据所述第一时间戳和第二时间戳确定二者之间的时间差;如果所述时间差小于预设值,则将所述单点位置作为所述移动终端在所述目标时间的位置,或者,如果时间差不小于预设值,则将所述单点位置作为在先位置,采用卡尔曼滤波方法预测所述移动终端在所述目标时间的位置,并将预测结果作为所述移动终端在所述目标时间的位置。
进一步可选地,采用卡尔曼滤波方法预测所述移动终端在所述目标时间的位置,包括:
根据以下公式预测所述移动终端在所述目标时间的位置 其中,Fk是在将所述移动终端的运动设定为阻尼运动的情况下确定的状态转移矩阵,是所述单点位置。
其中,
xk和yk用于表示所述移动终端的位置坐标,vxk和vyk用于表示所述移动终端在墨卡托坐标系的x和y方向上的速度;
其中,△tk为第一时间戳与第二时间戳之间的时间差,a为预设的阻尼系数。
可选地,在本实施例的另一种实现方式中,所述方法还包括:采集所述移动终端的定位信息;根据采集到的定位信息更新所述单点位置和所述第二时间戳。
进一步可选地,所述定位信息包含位置数据和与所述位置数据对应的定位时间戳;根据采集到的定位信息更新所述单点位置和所述第二时间戳,包括:根据所述定位时间戳更新所述第二时间戳,采用卡尔曼滤波方法执行以下处理:将所述第二时间戳在更新前所对应的单点位置作为在先位置,预测所述移动终端在所述定位时间戳所标识的时间的位置,得到预测结果,基于所述位置数据对预测结果进行优化,并将优化结果作为所述第二时间戳在更新后所对应的单点位置。
进一步可选地,在采用卡尔曼滤波方法执行处理时,还根据所述第二时间戳在更新前所对应的协方差矩阵,确定所述第二时间戳在更新后所对应的协方差矩阵。以及,在采用卡尔曼滤波方法执行处理时,将所述位置数据设置为以下矩阵形式:
其中,x和y用于表示所述移动终端在墨卡托坐标系中的位置坐标,vx和vy用于表示所述移动终端在墨卡托坐标系的x和y方向上的速度;
在采用卡尔曼滤波方法执行处理时,采用以下形式的状态转移矩阵:
其中,△t为所述第二时间戳在更新后与更新前之间的时间差,a为预设的阻尼系数。
相应地,本发明实施例提供一种移动终端位置的装置,包括:
接收模块,用于接收请求消息,所述请求消息用于触发确定所述移动终端位置的处理,并且携带有用于标识目标时间的第一时间戳;
位置确定模块,用于根据第一时间戳、预保存的所述移动终端的单点位置和第二时间戳,确定所述移动终端在所述目标时间的位置,其中,所述单点位置是指所述移动终端的一个位置,所述第二时间戳与所述单点位置对应。
可选地,在本实施例的一种实现方式中,所述位置确定模块包括:
判断子模块,用于根据所述第一时间戳和第二时间戳确定二者之间的时间差,如果所述时间差小于预设值,则触发第一位置确定子模块,否则触发第二位置确定子模块;
第一位置确定子模块,用于将预保存的所述单点位置作为所述移动终端在所述目标时间的位置;
第二位置确定子模块,用于将所述单点位置作为在先位置,采用卡尔曼滤波方法预测所述移动终端在所述目标时间的位置,并将预测结果作为所述移动终端在所述目标时间的位置。
进一步可选地,所述第二位置确定子模块具体用于根据以下公式预测所述移动终端在所述目标时间的位置 其中,Fk是在将所述移动终端的运动设定为阻尼运动的情况下确定的状态转移矩阵,是所述单点位置。
其中,
xk和yk用于表示所述移动终端在墨卡托坐标系中的位置坐标,vxk和vyk用于表示所述移动终端在墨卡托坐标系的x和y方向上的速度;
其中,△tk为第一时间戳与第二时间戳之间的时间差,a为预设的阻尼系数。
可选地,在本实施例的另一种实现方式中,所述装置还包括:采集模块,用于采集所述移动终端的定位信息;更新模块,用于根据采集到的定位信息更新所述单点位置和所述第二时间戳。
进一步可选地,所述定位信息包含位置数据和与所述位置数据对应的定位时间戳;所述更新模块包括:第一更新子模块,用于根据所述定位时间戳更新所述第二时间戳,第二更新子模块,用于采用卡尔曼滤波方法执行以下处理:将所述第二时间戳在更新前所对应的单点位置作为在先位置,预测所述移动终端在所述定位时间戳所标识的时间的位置,得到预测结果,基于所述位置数据对预测结果进行优化,并将优化结果作为所述第二时间戳在更新后所对应的单点位置。
进一步可选地,第二更新子模块还用于根据所述第二时间戳在更新前所对应的协方差矩阵,确定所述第二时间戳在更新后所对应的协方差矩阵。以及,在采用卡尔曼滤波方法执行处理时,将所述位置数据设置为以下矩阵形式:
其中,x和y用于表示所述移动终端在墨卡托坐标系中的位置坐标,vx和vy用于表示所述移动终端在墨卡托坐标系的x和y方向上的速度;
在采用卡尔曼滤波方法执行处理时,采用以下形式的状态转移矩阵:
其中,△t为所述第二时间戳在更新后与更新前之间的时间差,a为预设的阻尼系数
采用本发明实施例提供的方法和装置,通过基于第一时间戳、预保存的移动终端的单点位置和第二时间戳确定移动终端在目标时间的位置,具有以下有益效果:
相对于现有技术一而言,一方面避免了因权限设置导致无法确定移动终端位置的缺陷,另一方面避免了因临时进行定位处理导致的时延,提高了服务器针对请求消息进行响应的时效性;
相对于现有技术二而言,一方面无需保存巨大的数据量,降低了数据维护成本;另一方面,不存在因数据量大而导致的系统性能下降的问题,提高了确定移动终端位置的实时性。
附图说明
图1是根据本发明实施例的一种确定移动终端位置的方法的流程示意图;
图2是根据本发明实施例的一种实现处理12的方法的流程示意图;
图3A是根据本发明实施例的一种确定移动终端位置的方法的流程示意图;
图3B是根据本发明实施例的一种实现处理32的方法的流程示意图;
图4A是根据本发明实施例的一种确定移动终端位置的装置的方块示意图;
图4B是图4A中的位置确定模块42的一种方块示意图;
图5A是根据本发明实施例的一种确定移动终端位置的装置的方块示意图;
图5B是图5A中的更新模块52的一种方块示意图。
具体实施方式
以下结合附图和具体实施方式对本发明的各个方面进行详细阐述。其中,众所周知的模块、单元及其相互之间的连接、链接、通信或操作没有示出或未作详细说明。并且,所描述的特征、架构或功能可在一个或一个以上实施方式中以任何方式组合。本领域技术人员应当理解,下述的各种实施方式只用于举例说明,而非用于限制本发明的保护范围。还可以容易理解,本文所述和附图所示的各实施方式中的模块或单元或步骤可以按各种不同配置进行组合和设计。
图1是根据本发明实施例的一种确定移动终端(例如,手机等)位置的方法的流程示意图,参照图1,所述方法包括:
10:接收请求消息。该请求消息用于触发确定所述移动终端位置的处理,并且携带有用于标识目标时间的第一时间戳。
需要说明的是,本发明实施例中的请求消息并不限于某种特定场景下的特定请求消息,只要该请求消息能够触发确定移动终端位置的处理(例如,触发下文提及的位置确定装置来执行确定移动终端位置的处理)即可。例如,请求消息可以是移动终端自身发送的广告请求消息,该广告请求消息会触发相关装置(例如,下文提及的位置确定装置)执行确定移动终端位置的处理,更具体而言,会触发装置执行确定移动终端在目标时间的位置的处理。再例如,请求消息可以是第三方发送的位置请求消息,该位置请求消息用于请求移动终端在目标时间的位置。
在请求消息中,需要确定移动终端在哪个时间的位置,就在请求消息中携带用于标识相应时间(即,目标时间)的第一时间戳。以广告请求消息为例,其中的第一时间戳具体可用于标识发送广告请求消息的时间;以位置请求消息为例,其中的第一时间戳具体可用于标识发送位置请求消息的时间或某一指定时间;等。
12:根据第一时间戳、预保存的移动终端的单点位置和第二时间戳,确定移动终端在目标时间的位置。其中,单点位置是指移动终端的一个位置(例如,在一个时间点的位置),即,在处理12中仅需基于移动终端的一个位置而无需基于移动终端的历史轨迹进行处理。第二时间戳与单点位置对应,换言之,第二时间戳用于标识单点位置所对应的时间。
采用本发明实施例提供的方法,与现有技术一相比,一方面避免了因权限设置导致无法确定移动终端位置的缺陷,另一方面避免了因临时进行定位处理导致的时延,提高了服务器针对请求消息进行响应的时效性;与现有技术二相比,一方面降低了数据维护成本,另一方面提高了确定移动终端位置的实时性。概言之,采用本发明实施例提供的方法,能够精确、实时地确定移动终端的位置。
可选地,在本实施例的一种实现方式中,在处理12之后,所述方法还包括:根据移动终端在目标时间的位置,执行对请求消息的响应处理。例如,当请求消息为广告请求消息时,根据移动终端在目标时间的位置向移动终端投放相应的广告;当请求消息为位置请求消息时,生成包含移动终端在目标时间的位置的响应消息等。
本领域技术人员应当理解,由于本实现方式提供的方法可以应用于不同场景中,因此,执行的响应处理可以因本发明实施例所应用的不同场景而不同,本实现方式并不对具体的响应处理进行限定,只要该响应处理是基于移动终端在目标时间的位置而做出的,即落在本实现方式的保护范围内。
图2是根据本发明实施例的一种实现处理12的方法的流程示意图,参照图2,所述方法包括:
120:根据第一时间戳和第二时间戳确定二者之间的时间差;
122:判断时间差是否小于预设值,如果是,则执行124,否则执行126。在本实施例中,本领域技术人员可以根据需要灵活地设置预设值,并且本领域人员应当理解,预设值的大小会影响最终确定的位置的准确性。本发明对预设值的具体值不做限制。
124:将单点位置作为移动终端在目标时间的位置。在本实施例中,通过处理124能够针对部分请求消息(即,携带的第一时间戳与第二时间戳的时间间隔小于预设值的请求消息)做出快速处理或响应。
126:执行预测处理。具体而言,将单点位置作为在先位置,采用卡尔曼滤波方法预测移动终端在目标时间的位置(在本说明书中又称作目标位置),并将预测结果作为移动终端在目标时间的位置。
可选地,在本实施例的一种实现方式中,在处理126中根据以下公式预测目标位置
其中,Fk是在将所述移动终端的运动设定为阻尼运动的情况下确定的状态转移矩阵,是所述单点位置。
可选地,可以采用如下形式:
其中,xk和yk用于表示所述移动终端的位置坐标,vxk和vyk用于表示所述移动终端在墨卡托坐标系的x和y方向上的速度。在本发明中提及的“位置坐标”是指例如移动终端所在地点的经纬度。
相应地,Fk可以采用如下形式:
其中,△tk为第一时间戳与第二时间戳之间的时间差,a为预设的阻尼系数。a的取值可以根据实际情况确定,本发明对此不做具体限制。
在将移动终端的运动设定为阻尼运动的情况下,采用如上形式的Fk进行计算能够较准确地预测目标位置,原因如下:
假设物体当前运动速度为v,阻尼系数为a(-1<a<0),也即速度随时间衰减系数为(1+a),则t时间后的速度vt为:
vt=v·(1+a)t 公式1。
最终速度会随时间越来越趋近0。上述指数方程的积分公式为:
根据公式2可知,t时间后的运动位移为:
假设当前状态Xn为:
根据公式1、2和3可以推算出以下四个公式:
vxn=vxn-1(1+a)△tk
vyn=vyn-1(1+a)△tk
其中,xn和yn用于表示移动终端的位置坐标,vxn和vyn用于表示移动终端在墨卡托坐标系的x和y方向上的速度。
根据上述4个公式可以得到根据上一个时刻状态估计下一个时刻的状态转换方程为:
因此,在采用前述形式的时,采用前述形式的Fk进行计算能够较准确地预测目标位置。当然,本领域技术人员应当理解,的形式可以根据需要灵活变化,相应地,Fk的形式也可以做出改变,但只要是不脱离本实现方式所提供的思想而做出的改变,均落在本实施例的保护范围内。
可选地,在本实施例的另一种实现方式中,在126中根据以下公式预测目标位置
其中,Bk与uk为控制矩阵与控制向量,二者可以根据应用实际情况设定,例如当不需要Bk与uk时,可以将Bk设为单位矩阵,将uk设为0向量。上述公式也是卡尔曼滤波方法的预测阶段所采用的公式,关于其详细说明请见下文。
图3A是根据本发明实施例的一种确定移动终端位置的方法的流程示意图,参照图3A,所述方法包括(对于本实施例中涉及到的名词或术语的说明,请参见图1所示实施例中的相关说明,此处不赘述):
30:采集移动终端的定位信息。
在本实施例中,在30中可以采集通过不同渠道获取的定位信息,例如,直接采集由用户上传的定位信息,或通过第三方服务器获取定位信息等。在本实施例中,采集移动终端的定位信息的方式可以是现有的任意方式,本发明对此不做具体说明,
32:根据采集到的定位信息更新预保存的单点位置和第二时间戳。
34:当接收到请求消息时,根据第一时间戳、移动终端的单点位置和第二时间戳,确定移动终端在目标时间的位置。其中,请求消息用于触发确定移动终端位置的处理,并且携带有用于标识目标时间的第一时间戳。
本领域技术人员应当理解,处理30和32二者与处理34并没有严格的先后顺序。即,在本实施例中,可以随时执行处理30和32以更新单点位置和第二时间戳。
采用本实施例提供的方法,能够根据采集到的定位信息及时更新单点位置和第二时间戳,从而有效提高最终确定的目标位置的准确性。
可选地,在本实施例的一种实现方式中,在处理30中采集到的定位信息包含位置数据和与位置数据对应的定位时间戳。其中,位置数据可以包含移动终端的位置坐标,还可以同时包含位置坐标和速度。在位置数据不包含速度的情况下,如果需要,可以根据在后采集到的位置坐标和在先采集到的位置坐标以及二者之间的时间间隔计算速度。
位置数据在采集过程中的一种示例性格式如下:
移动终端ID | 定位时间戳 | 定位坐标 |
可选地,在本实施例的一种实现方式中,如图3B所示,处理32可以通过以下方式实现:
320:根据定位时间戳更新第二时间戳,例如,记录定位时间戳作为第二时间戳。
322:采用卡尔曼滤波方法执行预测处理和优化处理。预测处理包括:将第二时间戳在更新前所对应的单点位置作为在先位置,预测移动终端在定位时间戳所标识的时间的位置,得到预测结果。优化处理包括:基于位置数据对预测结果进行优化,并将优化结果作为第二时间戳在更新后所对应的单点位置。
当然,在处理322的实现过程中,还可根据第二时间戳在更新前所对应的协方差矩阵,确定/更新第二时间戳在更新后所对应的协方差矩阵。在本实施例中可以在更新/保存单点位置的同时更新/保存相应的协方差矩阵。
下面结合具体的公式对在本发明中采用的卡尔曼滤波方法进行详细说明。
卡尔曼滤波方法采用以下两个变量表示状态:
在时刻k的状态估计优化值;
Pk|k,误差相关矩阵(又称作协方差矩阵),用于度量状态估计优化值的精确程度。
卡尔曼滤波方法包括两个阶段:预测与更新。在预测阶段,根据上一状态的状态估计优化值(对应于本发明中的“单点位置”)确定对当前状态的状态估计值(可以作为本发明中的目标位置)。在更新阶段,根据对当前状态的观测值xk(对应于本发明中的“位置数据”)优化在预测阶段获得的状态估计值以获得一个更精确的状态估计优化值(对应于更新后的“单点位置”)。
在预测阶段涉及的公式及相关解释如下:
(计算状态估计值)
(计算协方差矩阵估计值)
其中,Fk是状态转移矩阵。Bk与uk为控制矩阵与控制向量,可以根据应用实际情况设定,例如,当不需要Bk与uk时,可以将Bk设为单位矩阵,将uk设为0向量。Qk是处理过程噪声的协方差矩阵,可以根据实际过程统计Qk,简单起见,也可以假设为0矩阵。
更新阶段首先计算以下值:
(计算测量余量)
(计算测量余量协方差)
(计算最优卡尔曼增益)
zk=Hkxk+vk(计算在时刻k对观测值xk的测量)
vk~N(0,Rk)
其中,Hk是观测矩阵,用于把真实状态空间映射成观测空间。Vk是观测噪声,其均值为零。初始状态以及每一时刻的噪声都认为是互相独立的。Rk是观测噪声的协方差矩阵且服从正态分布,可以根据实际过程统计Rk,简单起见,也可以假设为单位矩阵。
然后根据以下公式更新表示状态的两个变量:
(计算状态估计优化值)
Pk|k=(I-KkHk)Pk|k-1(计算协方差矩阵)
如前所述,卡尔曼滤波方法是一种递归处理,因此,初始的状态估计优化值和初始的协方差矩阵可以根据实际情况设定,例如,分别设置为0和单位矩阵,以便后续迭代更新。
将以上公式与本发明实施例相结合第来看,用于表示在先位置(更新前的单点位置),用于表示计算得到的在后位置(更新后的单点位置)。由于在本实施例中需要更新单点位置,因此在根据在先位置计算在后位置的过程中,会根据前述的相关公式更新协方差矩阵。具体到处理322中而言,在采用卡尔曼滤波方法执行预测处理和优化处理时,还根据第二时间戳在更新前所对应的协方差矩阵,确定第二时间戳在更新后所对应的协方差矩阵(计算方法请参见上述公式)。
可选地,在本实施例的一种实现方式中,在处理322中,将位置信息中的位置数据设置为如下矩阵形式(用于作为xk代入相关公式):
其中,x和y用于表示移动终端的位置坐标,vx和vy用于表示移动终端在墨卡托坐标系的x和y方向上的速度。
在处理322中,采用如下形式的状态转移矩阵(用于作为Fk代入相关公式):
其中,△t为第二时间戳在更新后与更新前之间的时间差,a为预设的阻尼系数。
当然,也可以根据需要灵活地变更位置数据的形式以及状态转移矩阵的形式。
以上结合附图对根据本发明实施例的方法实施例进行了说明,下面结合附图对根据本发明实施例的装置实施例进行说明。
图4A是根据本发明实施例的一种确定移动终端位置的装置的方块示意图,参照图4A,位置确定装置4包括接收模块41和位置确定模块42,下面分别进行说明。
接收模块41,用于接收请求消息。该请求消息用于触发确定移动终端位置的处理,并且携带有用于标识目标时间的第一时间戳。
位置确定模块42,用于根据第一时间戳、预保存的移动终端的单点位置和第二时间戳,确定移动终端在目标时间的位置,其中,单点位置是指移动终端的一个位置,第二时间戳与单点位置对应。
可选地,在本实施例的一种实现方式中,如图4A中的虚线框所示,位置确定装置4还包括响应处理模块43,用于根据确定的目标位置执行对请求消息的响应处理。
可选地,在本实施例的一种实现方式中,如图4B所示,位置确定模块42包括判断子模块421、第一位置确定子模块422和第二位置确定子模块423,下面分别进行说明。
判断子模块421,用于根据第一时间戳和第二时间戳确定二者之间的时间差,如果时间差小于预设值,则触发第一位置确定子模块422,否则触发第二位置确定子模块423。
第一位置确定子模块422,用于将预保存的单点位置作为移动终端在目标时间的位置。
第二位置确定子模块423,用于将单点位置作为在先位置,采用卡尔曼滤波方法预测移动终端在目标时间的位置,并将预测结果作为移动终端在目标时间的位置。
其中,第二位置确定子模块423具体可根据以下公式预测移动终端在目标时间的位置
关于该公式的详细说明请参见方法实施例中的说明,此处不再赘述。
采用本实施例提供的位置确定装置4,能够精准、实时地确定移动终端的位置。
图5A是根据本发明实施例的一种确定移动终端位置的装置的方块示意图,参照图5A,位置确定装置5除了包括接收模块41和位置确定模块42外,还包括采集模块51和更新模块52,下面分别进行说明。
采集模块51,用于采集移动终端的定位信息。其中,定位信息包括位置数据和与所述位置数据对应的定位时间戳。
更新模块52,用于根据采集到的定位信息更新单点位置和第二时间戳。
可选地,在本实施例的一种实现方式中,如图5B所示,更新模块52包括:
第一更新子模块521,用于根据定位时间戳更新第二时间戳,例如,记录定位时间戳作为第二时间戳。
第二更新子模块522,用于采用卡尔曼滤波方法执行如下处理:将第二时间戳在更新前所对应的单点位置作为在先位置,预测移动终端在定位时间戳所标识的时间(即更新后的第二时间戳所标识的时间)的位置,得到预测结果;基于采集到的位置数据对预测结果进行优化,并将优化结果作为第二时间戳在更新后所对应的单点位置。
此外,第二更新子模块522还可以根据第二时间戳在更新前所对应的协方差矩阵(可以预保存该协方差矩阵),确定/更新第二时间戳在更新后所对应的协方差矩阵。
采用本实施例提供的位置确定装置5,能够及时更新单点位置和第二时间戳,提高后续确定的目标位置的准确性。
在本发明的装置实施例中,关于相关名词、术语的解释,以及关于各个模块/子模块所执行的处理的详细说明,请参见方法实施例中的详细说明,此处不赘述。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可借助软件结合硬件平台的方式来实现。基于这样的理解,本发明的技术方案对背景技术做出贡献的全部或者部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,智能手机或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
本发明说明书中使用的术语和措辞仅仅为了举例说明,并不意味构成限定。本领域技术人员应当理解,在不脱离所公开的实施方式的基本原理的前提下,对上述实施方式中的各细节可进行各种变化。因此,本发明的范围只由权利要求确定,在权利要求中,除非另有说明,所有的术语应按最宽泛合理的意思进行理解。
Claims (10)
1.一种确定移动终端位置的方法,其特征在于,所述方法包括:
接收请求消息,所述请求消息用于触发确定所述移动终端位置的处理,并且携带有用于标识目标时间的第一时间戳;
根据第一时间戳、预保存的所述移动终端的单点位置和第二时间戳,确定所述移动终端在所述目标时间的位置,包括:
根据所述第一时间戳和第二时间戳确定二者之间的时间差;
如果所述时间差小于预设值,则将所述单点位置作为所述移动终端在所述目标时间的位置,或者,
如果时间差不小于预设值,则将所述单点位置作为在先位置,采用卡尔曼滤波方法预测所述移动终端在所述目标时间的位置,并将预测结果作为所述移动终端在所述目标时间的位置;
其中,采用卡尔曼滤波方法预测所述移动终端在所述目标时间的位置,包括:
根据以下公式预测所述移动终端在所述目标时间的位置
其中,Fk是在将所述移动终端的运动设定为阻尼运动的情况下确定的状态转移矩阵,是所述单点位置;
其中,xk和yk用于表示所述移动终端在墨卡托坐标系中的位置坐标,vxk和vyk用于表示所述移动终端在墨卡托坐标系的x和y方向上的速度;
其中,Δtk为第一时间戳与第二时间戳之间的时间差,a为预设的阻尼系数;
所述单点位置包括位置坐标和速度;
其中,所述单点位置是指所述移动终端的一个位置,所述第二时间戳与所述单点位置对应,所述目标时间晚于所述第二时间戳所标识的时间。
2.如权利要求1所述的方法,其特征在于,所述方法还包括:
采集所述移动终端的定位信息;
根据采集到的定位信息更新所述单点位置和所述第二时间戳。
3.如权利要求2所述的方法,其特征在于,
所述定位信息包含位置数据和与所述位置数据对应的定位时间戳;
根据采集到的定位信息更新所述单点位置和所述第二时间戳,包括:
根据所述定位时间戳更新所述第二时间戳,
采用卡尔曼滤波方法执行以下处理:
将所述第二时间戳在更新前所对应的单点位置作为在先位置,预测所述移动终端在所述定位时间戳所标识的时间的位置,得到预测结果,
基于所述位置数据对预测结果进行优化,并将优化结果作为所述第二时间戳在更新后所对应的单点位置。
4.如权利要求3所述的方法,其特征在于,在采用卡尔曼滤波方法执行处理时,还根据所述第二时间戳在更新前所对应的协方差矩阵,确定所述第二时间戳在更新后所对应的协方差矩阵。
5.如权利要求3或4所述的方法,其特征在于,
在采用卡尔曼滤波方法执行处理时,将所述位置数据设置为以下矩阵形式:
其中,x和y用于表示所述移动终端在墨卡托坐标系中的位置坐标,vx和vy用于表示所述移动终端在墨卡托坐标系的x和y方向上的速度;
在采用卡尔曼滤波方法执行处理时,采用以下形式的状态转移矩阵:
其中,Δt为所述第二时间戳在更新后与更新前之间的时间差,a为预设的阻尼系数。
6.一种确定移动终端位置的装置,其特征在于,所述装置包括:
接收模块,用于接收请求消息,所述请求消息用于触发确定所述移动终端位置的处理,并且携带有用于标识目标时间的第一时间戳;
位置确定模块,用于根据第一时间戳、预保存的所述移动终端的单点位置和第二时间戳,确定所述移动终端在所述目标时间的位置,其中,所述单点位置是指所述移动终端的一个位置,所述单点位置包括位置坐标和速度,所述第二时间戳与所述单点位置对应,所述目标时间晚于所述第二时间戳所标识的时间;
其中,所述位置确定模块包括:
判断子模块,用于根据所述第一时间戳和第二时间戳确定二者之间的时间差,如果所述时间差小于预设值,则触发第一位置确定子模块,否则触发第二位置确定子模块;
第一位置确定子模块,用于将预保存的所述单点位置作为所述移动终端在所述目标时间的位置;
第二位置确定子模块,用于将所述单点位置作为在先位置,采用卡尔曼滤波方法预测所述移动终端在所述目标时间的位置,并将预测结果作为所述移动终端在所述目标时间的位置;
所述第二位置确定子模块具体用于根据以下公式预测所述移动终端在所述目标时间的位置
其中,Fk是在将所述移动终端的运动设定为阻尼运动的情况下确定的状态转移矩阵,是所述单点位置;
其中,xk和yk用于表示所述移动终端在墨卡托坐标系中的位置坐标,vxk和vyk用于表示所述移动终端在墨卡托坐标系的x和y方向上的速度;
其中,Δtk为第一时间戳与第二时间戳之间的时间差,a为预设的阻尼系数。
7.如权利要求6所述的装置,其特征在于,所述装置还包括:
采集模块,用于采集所述移动终端的定位信息;
更新模块,用于根据采集到的定位信息更新所述单点位置和所述第二时间戳。
8.如权利要求7所述的装置,其特征在于,
所述定位信息包含位置数据和与所述位置数据对应的定位时间戳;
所述更新模块包括:
第一更新子模块,用于根据所述定位时间戳更新所述第二时间戳,
第二更新子模块,用于采用卡尔曼滤波方法执行以下处理:
将所述第二时间戳在更新前所对应的单点位置作为在先位置,预测所述移动终端在所述定位时间戳所标识的时间的位置,得到预测结果,
基于所述位置数据对预测结果进行优化,并将优化结果作为所述第二时间戳在更新后所对应的单点位置。
9.如权利要求8所述的装置,其特征在于,所述第二更新子模块还用于:
根据所述第二时间戳在更新前所对应的协方差矩阵,确定所述第二时间戳在更新后所对应的协方差矩阵。
10.如权利要求8或9所述的装置,其特征在于,所述第二更新子模块具体用于,
在采用卡尔曼滤波方法执行处理时,将所述位置数据设置为以下矩阵形式:
其中,x和y用于表示所述移动终端在墨卡托坐标系中的位置坐标,vx和vy用于表示所述移动终端在墨卡托坐标系的x和y方向上的速度;
在采用卡尔曼滤波方法执行处理时,采用以下形式的状态转移矩阵:
其中,Δt为所述第二时间戳在更新后与更新前之间的时间差,a为预设的阻尼系数。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510047914.8A CN104614704B (zh) | 2015-01-29 | 2015-01-29 | 一种确定移动终端位置的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510047914.8A CN104614704B (zh) | 2015-01-29 | 2015-01-29 | 一种确定移动终端位置的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104614704A CN104614704A (zh) | 2015-05-13 |
CN104614704B true CN104614704B (zh) | 2019-05-24 |
Family
ID=53149238
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510047914.8A Active CN104614704B (zh) | 2015-01-29 | 2015-01-29 | 一种确定移动终端位置的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104614704B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107862217B (zh) * | 2017-10-31 | 2021-09-07 | 努比亚技术有限公司 | 一种位置信息获取方法、移动终端以及计算机存储介质 |
KR102434580B1 (ko) * | 2017-11-09 | 2022-08-22 | 삼성전자주식회사 | 가상 경로를 디스플레이하는 방법 및 장치 |
CN111033423B (zh) * | 2018-04-18 | 2023-11-21 | 百度时代网络技术(北京)有限公司 | 用于评估自动驾驶车辆的定位系统的方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1849523A (zh) * | 2003-07-23 | 2006-10-18 | 高通股份有限公司 | 在异步无线网络内的移动站中设定粗略gps时间的系统 |
CN101770018A (zh) * | 2008-12-29 | 2010-07-07 | 华晶科技股份有限公司 | 当前位置坐标的计算方法 |
CN102692635A (zh) * | 2011-12-27 | 2012-09-26 | 厦门雅迅网络股份有限公司 | 一种门店拜访过程中gps定位与基站定位的筛选方法 |
-
2015
- 2015-01-29 CN CN201510047914.8A patent/CN104614704B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1849523A (zh) * | 2003-07-23 | 2006-10-18 | 高通股份有限公司 | 在异步无线网络内的移动站中设定粗略gps时间的系统 |
CN101770018A (zh) * | 2008-12-29 | 2010-07-07 | 华晶科技股份有限公司 | 当前位置坐标的计算方法 |
CN102692635A (zh) * | 2011-12-27 | 2012-09-26 | 厦门雅迅网络股份有限公司 | 一种门店拜访过程中gps定位与基站定位的筛选方法 |
Also Published As
Publication number | Publication date |
---|---|
CN104614704A (zh) | 2015-05-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107333232B (zh) | 一种终端定位方法及网络设备 | |
CN100425027C (zh) | 确定gps信号不能到达的网络设备的近似位置的方法和设备 | |
CN104614704B (zh) | 一种确定移动终端位置的方法和装置 | |
FI113730B (fi) | Paikannusmenetelmä matkaviestin verkoille | |
CN110245565A (zh) | 车辆跟踪方法、装置、计算机可读存储介质及电子设备 | |
CN112364439A (zh) | 自动驾驶系统的仿真测试方法、装置以及存储介质 | |
CN111225439B (zh) | 确定终端位置的方法、装置及存储介质 | |
CA2667601A1 (en) | Cooperative localization for wireless networks | |
KR20110002861A (ko) | 포지셔닝된 무선 측정 리포트에 기초한 위치 서비스 | |
CN110503071A (zh) | 基于变分贝叶斯标签多伯努利叠加模型的多目标跟踪方法 | |
JP2011158459A (ja) | パターン分類を使用した、無線端末が屋内にあるかどうかの推定 | |
CN106658701A (zh) | 一种定位方法及装置 | |
US20120040637A1 (en) | Dynamic Tag Control and Fingerprinting Event Localization | |
CN106353722A (zh) | 基于代价参考粒子滤波的rssi测距方法 | |
CN110519687A (zh) | 适于机器人的精确定位方法和系统、机器人 | |
CN107943859A (zh) | 海量传感器数据收集处理及反馈的系统和方法 | |
KR101819099B1 (ko) | 무선 네트워크에서의 사용자 장비의 속도를 추정하기 위한 방법, 처리 유닛, 기지국 및 컴퓨터 판독 가능 기록 매체 | |
CN104518913B (zh) | 一种基于人工免疫的云服务异常检测方法 | |
CN112380126A (zh) | Web系统健康预测装置及方法 | |
CN105338487B (zh) | 用于多遍地理定位的技术 | |
CN110972071A (zh) | 一种多模定位方法、定位服务器、终端和存储介质 | |
CN108260204B (zh) | 一种基于电信定位的方法及装置 | |
CN105050037A (zh) | 一种获取等待时长的方法和装置 | |
KR20220084508A (ko) | 파라미터 서버 기반 비대칭 분산 학습 기법 | |
Chen et al. | The analysis of speed-reporting rates from a cellular network based on a fingerprint-positioning algorithm |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |