移动终端定位方法、装置、电子设备及存储介质与流程

文档序号:18634053发布日期:2019-09-11 22:00阅读:179来源:国知局
移动终端定位方法、装置、电子设备及存储介质与流程
本公开涉及通信
技术领域
,具体而言,涉及一种移动终端定位方法、装置、电子设备及存储介质。
背景技术
:移动定位是指通过特定的定位技术来获取移动终端的位置信息。目前,移动终端定位方法大多是基于支持向量机算法进行定位,这种方法准确度较低。技术实现要素:基于上述研究,本公开提供一种移动终端定位方法、装置、电子设备及存储介质。本公开提供的移动终端定位方法,包括:将包括多个基站的区域划分为多个栅格,获取该区域内各所述基站所位于栅格的位置。基于预先训练得到的定位模型,对该区域内的各移动终端与各所述基站的特征数据进行计算,得到各所述移动终端位于各所述栅格的概率分布,以得到各所述移动终端的位置在该区域内的概率分布。进一步的,所述得到各所述移动终端的位置在该区域内的概率分布的步骤包括:获取各所述栅格中心和边界的经纬度,并根据各所述栅格中心和边界的经纬度,将各所述移动终端位于各所述栅格的概率分布映射成各所述移动终端位于经纬度的概率分布,得到各所述移动终端的位置在该区域内的概率分布。进一步的,所述定位模型通过以下步骤训练得到:将区域划分为多个栅格,并对每个栅格进行标号,以每个栅格的标号为类别标识,以各移动终端与各基站的特征数据构建训练数据集。将所述训练数据集输入至神经网络模型中进行训练,基于预设损失函数,通过反向传播算法对所述神经网络的参数进行调整,直到所述预设损失函数的输出小于预设阈值,得到所述定位模型。进一步的,所述神经网络模型包括输出层,所述输出层的输出元数量为所述栅格的数量。本公开提供一种移动终端定位装置,所述装置包括数据读取模块以及处理模块。所述数据读取模块用于将包括多个基站的区域划分为多个栅格,获取该区域内各所述基站所位于栅格的位置。所述处理模块用于基于预先训练得到的定位模型,对该区域内的各移动终端与各所述基站的特征数据进行计算,得到各所述移动终端位于各所述栅格的概率分布,以得到各所述移动终端的位置在该区域内的概率分布。进一步的,所述处理模块用于:获取各所述栅格中心和边界的经纬度,并根据各所述栅格中心和边界的经纬度,将各所述移动终端位于各所述栅格的概率分布映射成各所述移动终端位于经纬度的概率分布,得到各所述移动终端的位置在该区域内的概率分布。进一步的,所述移动终端定位装置还包括构建模块以及训练模块。所述构建模块用于将区域划分为多个栅格,并对每个栅格进行标号,以每个栅格的标号为类别标识,以各移动终端与各基站的特征数据构建训练数据集。所述训练模块用于将所述训练数据集输入至神经网络模型中进行训练,基于预设损失函数,通过反向传播算法对所述神经网络的参数进行调整,直到所述预设损失函数的输出小于预设阈值,得到所述定位模型。进一步的,所述神经网络模型的输出层的输出元数量为所述栅格的数量。本公开提供一种电子设备,所述电子设备包括存储器、处理器及上述所述的移动终端定位装置,所述移动终端定位装置位于所述存储器并包括一个或多个由所述处理器执行的软件功能模块。本公开提供一种存储介质,其上存储有计算机程序,所述计算机程序在执行时实现上述所述的移动终端定位方法中的步骤。本公开提供的移动终端定位方法、装置、电子设备及存储介质,通过将包括多个基站的区域划分为多个栅格,并获取该区域内各基站所位于栅格的位置,在获取该区域内各基站所位于栅格的位置后,基于预先训练得到的定位模型,对该区域内的各移动终端与各基站的特征数据进行计算,得到各移动终端位于各栅格的概率分布,进而得到各移动终端的位置在该区域内的概率分布,实现了移动终端的准确定位。为使本公开的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。附图说明为了更清楚地说明本公开的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本公开的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。图1为本公开所提供的电子设备的一种方框示意图。图2为本公开所提供的移动终端定位方法的一种流程示意图。图3为本公开所提供的移动终端定位方法的又一种流程示意图。图4为本公开所提供的神经网络模型的一种结构示意图。图5为本公开所提供的移动终端定位装置的一种方框示意图。图标:100-电子设备;10-移动终端定位装置;11-数据读取模块;12-处理模块;13-构建模块;14-训练模块;20-存储器;30-处理器;40-通信单元。具体实施方式下面将结合本公开中附图,对本公开中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本公开的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本公开的实施例的详细描述并非旨在限制要求保护的本公开的范围,而是仅仅表示本公开的选定实施例。基于本公开的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本公开保护的范围。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。移动定位是指通过特定的定位技术来获取移动终端的位置信息。目前,移动终端定位方法大多是基于支持向量机算法进行定位。支持向量机(supportvectormachine,svm)算法是一种二分类算法,现有技术中使用一对一(oneversusone)方法进行多元分类,需要对每两个栅格训练一个分类器。因此对于划分n个栅格的区域,需要训练n·(n-1)/2个支持向量机分类器。若定位区域的面积增加,将引起栅格的数量增大,则需要训练的分类器个数将以n2的方式增长。这种方法需要消耗大量的计算资源才能完成定位。另外,现有技术中,每个分类器只对特定的两个栅格有效,每个分类器对于输出的二元结果有不同的定义标准。因为每个分类器的准确度都无法达到100%,若涉及到多个分类器进行定位,则每个分类器可能会产生矛盾结果,这时,则需要对产生的矛盾结果进行二次分类判断。例如,如下表所示,abcd为4个相邻的栅格,当某个栅格(例如a)判定为1,周围的栅格(包括bcd)判定为0,可以认为移动终端在栅格a的边界之内;当a和b判定为1,其他为0,可以认为移动终端在a和b的边界;当a和d判定为1而b和c判定为0时,根据a和d判定移动终端应该在a和d交接点,但是b和c却给出了相反的判定,而且给出相反判定的分类器数量相等。其准确度有待提高。abcd除此之外,支持向量机算法无法计算出移动终端在整个区域内的概率分布,对于移动终端的位置定位给出的最优结果是目标栅格为1,其他的栅格为0。这种二分类算法在进行分类判断的过程中遗失了有用的特征信息,因此,对于输出的二元结果难以进行后续的分析。基于上述研究,本公开提供一种移动终端定位方法、装置、电子设备及存储介质,以改善上述问题。请结合参阅图1,本公开提供的移动终端定位方法应用于电子设备100,由所述电子设备100执行本公开所提供的移动终端定位方法。在本公开中,所述电子设备100可以是,但不限于,个人电脑(personalcomputer,pc)、笔记本电脑、个人数字助理(personaldigitalassistant,pda)或服务器等具有数据处理能力的电子设备100。所述电子设备100包括图1所示的移动终端定位装置10、存储器20、处理器30以及通信单元40,所述存储器20、处理器30以及通信单元40各个元件相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互直接可通过一条或多条通讯总线或信号线实现电性连接。所述移动终端定位装置10包括至少一个可以软件或固件(firmware)的形式存储于所述存储器20中的软件功能模块,所述处理器30通过运行存储在存储器20内的软件程序以及模块,从而执行各种功能应用以及数据处理。所述存储器20可以是,但不限于,随机存取存储器(randomaccessmemory,ram),只读存储器(readonlymemory,rom),可编程只读存储器(programmableread-onlymemory,prom),可擦除只读存储器(erasableprogrammableread-onlymemory,eprom),电可擦除只读存储器(electricerasableprogrammableread-onlymemory,eeprom)等。所述处理器30可以是一种集成电路芯片,具有信号的处理能力。所述处理器30可以是通用处理器,包括中央处理器(centralprocessingunit,cpu)、网络处理器(networkprocessor,np)等。所述通信单元40用于通过网络建立所述电子设备100与其他外部设备之间的通信连接,并通过所述网络进行数据传输。请结合参阅图2,图2为本公开所提供的移动终端定位方法的流程示意图。下面对图2所示的移动终端定位方法的具体流程进行详细阐述。步骤s10:将包括多个基站的区域划分为多个栅格,获取该区域内各所述基站所位于栅格的位置。步骤s20:基于预先训练得到的定位模型,对该区域内的各移动终端与各所述基站的特征数据进行计算,得到各所述移动终端位于各所述栅格的概率分布,以得到各所述移动终端的位置在该区域内的概率分布。其中,对于需要定位的区域,首先对该区域进行划分,得到多个栅格,并确定每个栅格中心和边界的经纬度,然后再获取该区域内,每个基站所位于栅格的位置,以每个基站所位于栅格的位置为特定位置。在确定每个基站所位于栅格的位置后,获取该区域内,各移动终端与各基站的特征数据,将各移动终端与个基站的特征数据输入到预先训练得到的定位模型中进行计算,得到各移动终端位于各栅格的概率分布,进而即可根据各移动终端位于各栅格的概率,得到各移动终端的位置在该区域内的概率分布。在本公开中,各移动终端与各基站的特征数据为各移动终端在接收区域内与各基站的交互信息,包括基站的位置、基站与移动终端的通信距离等。进一步的,所述得到各所述移动终端的位置在该区域内的概率分布的步骤包括:获取各所述栅格中心和边界的经纬度,并根据各所述栅格中心和边界的经纬度,将各所述移动终端位于各所述栅格的概率分布映射成各所述移动终端位于经纬度的概率分布,得到各所述移动终端的位置在该区域内的概率分布。其中,在得到各移动终端位于各栅格的概率分布,根据各栅格中心和边界的经纬度,将各移动终端位于各栅格的概率分布映射成为一个基于地理空间坐标的概率分布,即各移动终端位于经纬度的概率分布,进而即可得到各移动终端在该区域内的概率分布。本公开提供的移动终端定位方法,基于预先训练得到的定位模型,通过输入整个区域内的各移动终端与各基站的特征数据,对该区域内的各移动终端与各基站的特征数据进行计算,通过一次判定,即可输出各移动终端的位置在该区域内的概率分布,效率高、准确率高,且输出概率分布结果更加有利于基于移动终端定位的后续分析。进一步的,请结合参阅图3,所述定位模型通过步骤s30至步骤s40训练得到。步骤s30:将区域划分为多个栅格,并对每个栅格进行标号,以每个栅格的标号为类别标识,以各移动终端与各基站的特征数据构建训练数据集。其中,将区域化分为多个栅格,并对每个栅格进行标号,例如,对某个区域化分为多个栅格,并对每个栅格进行标号后,栅格标号如[a1,a2,a3,......,an],则a1对应于第1个栅格,a2对应于第2个栅格,a3对应于第3个栅格,an对应于第n个栅格,每个栅格对应一个分类类别。在本公开中,将各基站所位于的栅格指定为特定栅格,各移动终端与各基站的特征数据即可转换为各移动终端所位于的栅格对应于特定栅格的特征数据。在本公开中,训练数据集中,各移动终端所位于的栅格为已知结果,例如,移动终端位于栅格a1中时,对应的结果是[1,0,......,0],n个结果对应于n个栅格,所有结果的和为1。步骤s40:将所述训练数据集输入至神经网络模型中进行训练,基于预设损失函数,通过反向传播算法对所述神经网络的参数进行调整,直到所述预设损失函数的输出小于预设阈值,得到所述定位模型。其中,请结合参阅图4,神经网络模型包括输入层、原始输出层、softmax层、最终输出层以及位于中间的隐含层。本公开对原始输出层进行改造,原始输出层的输出元数量为栅格数量,例如,原始输出层有n个输出元,n个输出元对应于n个栅格,即n个类别。输入层输入训练数据集,基于中间的隐含层进行计算,原始输出层输出初步结果,然后softmax层将原始输出层的输出值转换为概率,进而得到各移动所位于栅格的类别,将得到的各移动终端所位于栅格的类别与训练数据集中各移动终端所位于栅格的类别进行对比,基于预设损失函数,通过反向传播算法对神经网络模型的参数进行调整,直到预设损失函数的输出小于预设阈值,得到定位模型。可选的,所述预设损失函数为交叉熵损失函数。在本公开中,softmax层基于以下公式将原始输出层的输出值转换为概率。其中,yi,yj为原始输出层的输出值,si为第i个类别的概率,即第i个栅格的概率,n为原始输出层的输出元数量。softmax层计算之后,最终输出层的输出结果即为各移动终端所位于各栅格的概率。在得到为各移动终端所位于各栅格的概率后,根据每个栅格的经纬度信息,即可以将输出结果映射成各移动终端位于经纬度的概率分布。在本公开中,定位模型训练得到后,还需对定位模型进行测试,可通过召回率和准确率对定位模型进行评估。本公开提供的移动终端定位方法,基于神经网络构建定位模型,通过输入整个区域内的各移动终端与各基站的特征数据,对该区域内的各移动终端与各基站的特征数据进行计算,通过一次判定,即可输出各移动终端的位置在该区域内的概率分布,效率高且准确率高。在上述基础上,请结合参阅图5,本公开提供一种移动终端定位装置10,所述移动终端定位装置10包括数据读取模块11以及处理模块12。所述数据读取模块11用于将包括多个基站的区域划分为多个栅格,获取该区域内各所述基站所位于栅格的位置。所述处理模块12用于基于预先训练得到的定位模型,对该区域内的各移动终端与各所述基站的特征数据进行计算,得到各所述移动终端位于各所述栅格的概率分布,以得到各所述移动终端的位置在该区域内的概率分布。进一步的,所述处理模块12用于:获取各所述栅格中心和边界的经纬度,并根据各所述栅格中心和边界的经纬度,将各所述移动终端位于各所述栅格的概率分布映射成各所述移动终端位于经纬度的概率分布,得到各所述移动终端的位置在该区域内的概率分布。进一步的,所述移动终端定位装置10还包括构建模块13以及训练模块14。所述构建模块13用于将区域划分为多个栅格,并对每个栅格进行标号,以每个栅格的标号为类别标识,以各移动终端与各基站的特征数据构建训练数据集。所述训练模块14用于将所述训练数据集输入至神经网络模型中进行训练,基于预设损失函数,通过反向传播算法对所述神经网络的参数进行调整,直到所述预设损失函数的输出小于预设阈值,得到所述定位模型。进一步的,所述神经网络模型的输出层的输出元数量为所述栅格的数量。所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的移动终端定位装置10的具体工作过程,可以参考前述方法中的对应过程,在此不再过多赘述。请返回结合参阅图1,本公开提供一种电子设备100,所述电子设备100包括存储器20、处理器30及上述中的移动终端定位装置10,所述移动终端定位装置10位于所述存储器20并包括一个或多个由所述处理器30执行的软件功能模块。本公开提供的一种电子设备100,由于包括上述移动终端定位装置10,因此,该电子设备100具有与上述移动终端定位装置10相同的技术特征,在此不再一一赘述,请参考对上述移动终端定位装置10的解释说明。本公开提供一种存储介质,其上存储有计算机程序,所述计算机程序在执行时实现上述的移动终端定位方法中的步骤。所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的存储介质的具体工作过程,可以参考前述方法中的对应过程,在此不再过多赘述。综上,本公开提供的移动终端定位方法、装置、电子设备及存储介质,通过将包括多个基站的区域划分为多个栅格,并获取该区域内各基站所位于栅格的位置,在获取该区域内各基站所位于栅格的位置后,基于预先训练得到的定位模型,对该区域内的各移动终端与各基站的特征数据进行计算,得到各移动终端位于各栅格的概率分布,进而得到各移动终端的位置在该区域内的概率分布,实现了移动终端的准确定位,且效率高。在本公开所提供的实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置和方法实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本公开的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。另外,在本公开各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本公开的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,电子设备,或者网络设备等)执行本公开各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。以上所述仅为本公开的可选实施例而已,并不用于限制本公开,对于本领域的技术人员来说,本公开可以有各种更改和变化。凡在本公开的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本公开的保护范围之内。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1