本发明涉及定位技术领域,具体涉及一种基于二维码的室内定位方法、装置、移动终端和存储介质。
背景技术:
现有定位技术主要有wifi定位和蓝牙定位,而wifi定位技术主要有近邻法和指纹法两种。其中,近邻法中,选取最为靠近的wifi设备认为是当前位置,如果附近有三个或者三个以上的设备,则可通过三角定位来进行判断。由于wifi设备信号强度受周围环境影响较大,因此精度较低。指纹法中,对定位区域进行网格划分,针对每个网格采集wifi指纹,而后可通过特征提取算法生成对应模型,通过对比需要定位的设备采集到的wifi指纹即可确定当前位置。
但由于wifi指纹定位多依赖于现场部署环境,并需要持续采集wifi指纹库,造成基础设施成本以及人工成本高。另外,当wifi指纹过于相似时,导致定位错误,造成指纹定位准确率下降。
技术实现要素:
有鉴于此,提供一种基于二维码的室内定位方法、装置、移动终端和存储介质,以解决相关技术中室内定位成本高以及wifi指纹过于相似导致的定位错误的问题。
本发明采用如下技术方案:
第一方面,本申请实施例提供了一种基于二维码的室内定位方法,该方法包括:
扫描设置在初始标定点的二维码以获取初始位置的初始位置信息;
根据所述初始位置信息、目标位置的目标位置信息,以及,移动终端在初始时刻的传感器数据,应用pdr算法确定由所述初始位置到所述目标位置的运动轨迹;
获取所述移动终端按照所述运动轨迹运动过程中的下一标定点的位置信息,其中,各个所述运动轨迹设定距离范围内包括至少一个标定点;
根据所述下一标定点的位置信息、所述目标位置信息,根据所述移动终端在当前时刻传感器数据,应用所述pdr算法更新所述运动轨迹,直到所述移动终端按照更新后运动轨迹运动到目标位置,确定由所述初始位置到所述目标位置的目标运动轨迹;其中,各个运动轨迹包括实时位置信息。
第二方面,本申请实施例提供了一种基于二维码的室内定位装置,该装置包括:
初始位置信息获取模块,用于扫描设置在初始标定点的二维码以获取初始位置的初始位置信息;
第一运动轨迹确定模块,用于根据所述初始位置信息、目标位置的目标位置信息,以及,移动终端在初始时刻的传感器数据,应用pdr算法确定由所述初始位置到所述目标位置的运动轨迹;
位置信息更新模块,用于获取所述移动终端按照所述运动轨迹运动过程中的下一标定点的位置信息,其中,各个所述运动轨迹设定距离范围内包括至少一个标定点;
目标运动轨迹确定模块,用于根据所述下一标定点的位置信息、所述目标位置信息,根据所述移动终端在当前时刻传感器数据,应用所述pdr算法更新所述运动轨迹,直到所述移动终端按照更新后运动轨迹运动到目标位置,确定由所述初始位置到所述目标位置的目标运动轨迹;其中,各个运动轨迹包括实时位置信息。
第三方面,本申请实施例提供了一种移动终端,该移动终端包括:
处理器,以及与所述处理器相连接的存储器;
加速度计,用于测量当前移动终端的加速度数据,并将所述加速度数据发送至处理器;
陀螺仪,用于测量所述当前移动终端的姿态数据,并将所述姿态数据发送至所述处理器;
磁罗盘,用于测量所述当前移动终端的方位数据,并将所述方位数据发送至所述处理器;
所述存储器用于存储计算机程序,所述计算机程序至少用于执行如第一方面所述的基于二维码的室内定位方法;
所述处理器用于调用并执行所述存储器中的所述计算机程序。
第四方面,本申请实施例提供了一种存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时,实现如第一方面所述的基于二维码的室内定位方法中各个步骤。
本申请实施例中,应用二维码标定并融合pdr算法,来实现室内定位,一方面利用了通过二维码标定点来获取各个区域的位置时的高准确度,另一方面应用各个标定点的当前位置对pdr算法应用过程的实时位置进行更新,提高了定位精度。另外,与现有技术中大多依赖高昂的基础设施相比,高昂的基础设施比如wifi模块和beacon模块,本申请中应用到的二维码贴纸成本较低,降低了维护成本。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种基于二维码的室内定位方法的流程图;
图2是本发明实施例中适用的一种二维码部署示意图;
图3是本发明实施例提供的一种基于二维码的室内定位装置的结构示意图;
图4是本发明实施例提供的一种移动终端的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将对本发明的技术方案进行详细的描述。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所得到的所有其它实施方式,都属于本发明所保护的范围。
实施例
图1为本发明实施例提供的一种基于二维码的室内定位方法的流程图,该方法可以由本发明实施例提供的基于二维码的室内定位装置来执行,该装置可采用软件和/或硬件的方式实现。参考图1,该方法具体可以包括如下步骤:
s101、扫描设置在初始标定点的二维码以获取初始位置的初始位置信息。
具体的,针对一栋建筑,划分不同的楼层与区域,将各个划分好的区域称为目标区域,每个目标区域包括至少一个标定点,各个标定点之间的间隔小于设定间隔阈值。在一个具体的例子中,设定间隔阈值可以是预先设定,例如可以是10米或20米。可选的,二维码部署在各个目标区域的地板、天花板或立柱上。通过扫描各个标定点的二维码可以得到各个标定点的位置信息。
在实际的应用场景中,用户将车停在停车场后去到会议室开会,在会议结束时想从会议室回到停车场,此时,会议室为初始位置,对应的标定点称为初始标定点,停车场为目标位置,对应的标定点称为目标标定点。用户应用携带的移动终端,例如可以是智能手机,扫描设置在会议室的二维码来获取初始位置的初始位置信息。
在一个具体的例子中,图2示出了一种二维码部署示意图,其中,通过行和列可以唯一确定一个二维码,比如,第2行第2列的二维码为2楼201的位置信息,该二维码可以以二维码贴纸的形式贴在201房间的门上。
在实际的应用过程中,各个二维码中的位置信息可以是预先通过专门的定位设备进行获取,然后将其写入二维码,贴在对应的各个区域的相关位置处。
s102、根据初始位置信息、目标位置的目标位置信息,以及,移动终端在初始时刻的传感器数据,应用pdr算法确定由初始位置到目标位置的运动轨迹。
其中,传感器数据包括加速度数据、姿态数据和方位数据。用户的移动终端中包括加速度计、陀螺仪和磁罗盘,加速度计可以测量移动终端的实时加速度数据;陀螺仪可以测量移动移动终端的实时姿态数据,比如,偏航角、俯仰角和滚转角;磁罗盘可以测量移动终端的方位数据,比如,南偏东48度。
具体的,根据初始位置信息、目标位置的目标位置信息,以及,移动终端在初始时刻的传感器数据确定行走步数、步长和方向;根据行走步数、步长和方向确定运动轨迹。pdr(pedestriandeadreckoning,步行者航位推算)算法主要是对步行者行走的步数、步长、方向进行测量和统计,推算出步行者行走轨迹,和位置等信息。主要是在无信标环境下使用惯性测量单元(inertialmeasurementunit,imu)感知人员在行进过程中的加速度、角速度、磁力和压力等数据,并利用这些数据对行进人员进行步长与方向的推算,从而达到对人员进行定位跟踪的目的,其中主要涉及的过程有步态检测、步长和方向计算。这样可以计算出从初始位置到目标位置的任意时刻的位置,以生成从初始位置到目标位置的运动轨迹。
s103、获取移动终端按照运动轨迹运动过程中的下一标定点的位置信息,其中,各个运动轨迹设定距离范围内包括至少一个标定点。
具体的,仍以上述示例进行说明,移动终端按照运动轨迹进行运动,目的是从会议室回到停车场,但是,用户在按照运动轨迹向停车场运动的过程中,可能会出现偏离,这样需要实时修正用户的当前位置。示例性的,各个阶段的运动轨迹的设定距离范围内均包括至少一个标定点,当用户运动到某个标定点a附近时,获取标定点a的位置信息,将标定点a的位置信息作为当前的位置信息。
s104、根据下一标定点的位置信息、目标位置信息,根据移动终端在当前时刻传感器数据,应用pdr算法更新运动轨迹,直到移动终端按照更新后运动轨迹运动到目标位置,确定由初始位置到目标位置的目标运动轨迹;其中,各个运动轨迹包括实时位置信息。
同样的,将标定点a的位置信息作为修正后的当前位置信息,然后根据目标位置信息,以及,移动终端在当前时刻的传感器数据,继续应用pdr算法更新运动轨迹,这样运动轨迹被实时更新。然后用户按照更新后的运动轨迹继续运动,将下一个遇到的标定点称为b,同理,继续应用标定点b的位置信息对运动轨迹进行更新,直到移动终端按照更新后的运动轨迹运动到目标位置,此时,可以确定由初始位置到目标位置的目标运动轨迹,该目标运动轨迹中包括实时位置信息。
本申请实施例中,应用二维码标定并融合pdr算法,来实现室内定位,一方面利用了通过二维码标定点来获取各个区域的位置时的高准确度,另一方面应用各个标定点的当前位置对pdr算法应用过程的实时位置进行更新,提高了定位精度。另外,与现有技术中大多依赖高昂的基础设施相比,高昂的基础设施比如wifi模块和beacon模块,本申请中应用到的二维码贴纸成本较低,降低了维护成本。
图3是本发明是实施例提供的一种基于二维码的室内定位装置的结构示意图,该装置适用于执行本发明实施例提供给的一种基于二维码的室内定位方法。如图3所示,该装置具体可以包括初始位置信息获取模块301、第一运动轨迹确定模块302、位置信息更新模块303和目标运动轨迹确定模块304。
其中,初始位置信息获取模块301,用于扫描设置在初始标定点的二维码以获取初始位置的初始位置信息;第一运动轨迹确定模块302,用于根据初始位置信息、目标位置的目标位置信息,以及,移动终端在初始时刻的传感器数据,应用pdr算法确定由初始位置到目标位置的运动轨迹;位置信息更新模块303,用于获取移动终端按照运动轨迹运动过程中的下一标定点的位置信息,其中,各个运动轨迹设定距离范围内包括至少一个标定点;目标运动轨迹确定模块304,用于根据下一标定点的位置信息、目标位置信息,根据移动终端在当前时刻传感器数据,应用pdr算法更新运动轨迹,直到移动终端按照更新后运动轨迹运动到目标位置,确定由初始位置到目标位置的目标运动轨迹;其中,各个运动轨迹包括实时位置信息。
本申请实施例中,应用二维码标定并融合pdr算法,来实现室内定位,一方面利用了通过二维码标定点来获取各个区域的位置时的高准确度,另一方面应用各个标定点的当前位置对pdr算法应用过程的实时位置进行更新,提高了定位精度。另外,与现有技术中大多依赖高昂的基础设施相比,高昂的基础设施比如wifi模块和beacon模块,本申请中应用到的二维码贴纸成本较低,降低了维护成本。
可选的,第一运动轨迹确定模块302具体用于:
根据初始位置信息、目标位置的目标位置信息,以及,移动终端在初始时刻的传感器数据确定行走步数、步长和方向;
根据行走步数、步长和方向确定运动轨迹。
可选的,每个目标区域包括至少一个标定点,各个标定点之间的间隔小于设定间隔阈值。
可选的,二维码部署在各个目标区域的地板、天花板或立柱上。
可选的,传感器数据包括加速度数据、姿态数据和方位数据。
本发明实施例提供的基于二维码的室内定位装置可执行本发明任意实施例提供的基于二维码的室内定位方法,具备执行方法相应的功能模块和有益效果。
本发明实施例还提供一种移动终端,请参阅图4,图4为一种移动终端的结构示意图,如图4所示,该移动终端包括:处理器410,以及与处理器410相连接的存储器420;加速度计430,用于测量当前移动终端的加速度数据,并将加速度数据发送至处理器410;陀螺仪440,用于测量当前移动终端的姿态数据,并将姿态数据发送至处理器410;磁罗盘450,用于测量当前移动终端的方位数据,并将方位数据发送至处理器410;存储器420用于存储计算机程序,计算机程序至少用于执行本发明实施例中的基于二维码的室内定位方法;处理器410用于调用并执行所述存储器中的所述计算机程序;上述基于二维码的室内定位至少包括如下步骤:扫描设置在初始标定点的二维码以获取初始位置的初始位置信息;根据初始位置信息、目标位置的目标位置信息,以及,移动终端在初始时刻的传感器数据,应用pdr算法确定由初始位置到目标位置的运动轨迹;获取移动终端按照运动轨迹运动过程中的下一标定点的位置信息,其中,各个运动轨迹设定距离范围内包括至少一个标定点;根据下一标定点的位置信息、目标位置信息,根据移动终端在当前时刻传感器数据,应用pdr算法更新运动轨迹,直到移动终端按照更新后运动轨迹运动到目标位置,确定由初始位置到目标位置的目标运动轨迹;其中,各个运动轨迹包括实时位置信息。
本发明实施例还提供一种存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时,实现如本发明实施例中的基于二维码的室内定位方法中各个步骤:扫描设置在初始标定点的二维码以获取初始位置的初始位置信息;根据初始位置信息、目标位置的目标位置信息,以及,移动终端在初始时刻的传感器数据,应用pdr算法确定由初始位置到目标位置的运动轨迹;获取移动终端按照运动轨迹运动过程中的下一标定点的位置信息,其中,各个运动轨迹设定距离范围内包括至少一个标定点;根据下一标定点的位置信息、目标位置信息,根据移动终端在当前时刻传感器数据,应用pdr算法更新运动轨迹,直到移动终端按照更新后运动轨迹运动到目标位置,确定由初始位置到目标位置的目标运动轨迹;其中,各个运动轨迹包括实时位置信息。
可以理解的是,上述各实施例中相同或相似部分可以相互参考,在一些实施例中未详细说明的内容可以参见其他实施例中相同或相似的内容。
需要说明的是,在本发明的描述中,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。此外,在本发明的描述中,除非另有说明,“多个”的含义是指至少两个。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(pga),现场可编程门阵列(fpga)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。