CN114674317A - 基于活动识别和融合滤波的自校正航位推算系统及方法 - Google Patents
基于活动识别和融合滤波的自校正航位推算系统及方法 Download PDFInfo
- Publication number
- CN114674317A CN114674317A CN202210188317.7A CN202210188317A CN114674317A CN 114674317 A CN114674317 A CN 114674317A CN 202210188317 A CN202210188317 A CN 202210188317A CN 114674317 A CN114674317 A CN 114674317A
- Authority
- CN
- China
- Prior art keywords
- data
- pedestrian
- module
- activity recognition
- angle
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/20—Instruments for performing navigational calculations
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/10—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration
- G01C21/12—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning
- G01C21/16—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning by integrating acceleration or speed, i.e. inertial navigation
- G01C21/165—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning by integrating acceleration or speed, i.e. inertial navigation combined with non-inertial navigation instruments
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C25/00—Manufacturing, calibrating, cleaning, or repairing instruments or devices referred to in the other groups of this subclass
Landscapes
- Engineering & Computer Science (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Manufacturing & Machinery (AREA)
- Navigation (AREA)
Abstract
本发明公开了一种基于活动识别和融合滤波的自校正航位推算方法,该方法基于航位推算系统,具体包括以下步骤:首先通过数据收集模块采集行人数据并将该数据输送至数据处理模块,然后通过数据处理模块处理采集到的行人数据并将处理后的行人数据输送至活动识别模块,接着通过活动识别模块基于进行数据处理后的数据,使用活动识别模型识别行人动作并将该结果输送至位置预估模块,再通过位置预估模块基于行人动作预估行人位置且将该结果输送至位置校正模块,再通过位置校正模块基于行人位置结果根据磁强序列校正行人位置且将该结果输送至数据输出模块,最后通过数据输出模块将校正后的行人位置结果输出,本发明方法可以有效提高航位定位准确性。
Description
技术领域
本发明属于航位导航技术领域,具体是涉及一种基于活动识别和融合滤波的自校正航位推算系统及方法。
背景技术
卫星定位系统(例如北斗、GPS等)在室外环境中可以实现亚米级的位置估算,但在室内场景中由于信号传播中的折射、衍射等现象无法实现精确定位导航。因此研究人员提出了多种室内定位和导航方法,包括采用Wi-Fi、蓝牙、RFID、UWB、ZigBee、计算机视觉、红外及可见光等方法,取得了较好的定位精度。然而,这些技术大多都需要部署硬件设施,且对室内场景的要求较高。例如,基于Wi-Fi或蓝牙的定位要求部署多个信号发射设备(AccessPoint),且定位精度取决于采集的指纹地图密度;基于计算机视觉的定位则要求室内场景有较高的稳定性,同时需要大量的图像用以定位匹配;基于信号测距定位的方式,如RFID、UWB等,易受环境影响,难以保证复杂室内场景中的定位精度。更重要的是,由于其需要较高的设备成本,无法实现广泛应用。
随着无线通信技术的发展和传感器的微型化,被嵌入各类微型传感器的智能设备应用越来越广泛,随着移动智能设备的普及,人们对使用移动智能设备进行定位导航提出更高的要求,现阶段要求嵌入各类传感器的智能设备能够进行准确的行人航位推算,包含步数检测、步长计算以及航位角计算。但是这类嵌入到智能设备中的各类传感器采集到的数据包含大量的环境噪音,这类含有大量环境噪音的数据导致行人航位推算的准确度下降,且随着系统运行时长变长准确度下降更快。
综上所述,目前利用商用智能设备如智能手机等中嵌入的MEMS传感器组件进行航位推算的室内定位技术受到广泛的关注,这一技术无需预先部署辅助设备,同样,传感器设备的微型化使得智能设备中嵌入越来越多的感知元件,其感知能力也在不断提升,然而MEMS传感器在收集数据时不可避免地会包含到许多噪音数据,因此当前大多数地基于行人航位推算方法都存在着误差累积大的问题,导致航迹推算偏差较大。智能设备中的内嵌式传感器未经过专业校准,因此测量结果与实际数据有着一定程度的误差,且不同设备的内置传感器型号不一也使得实际使用时定位精度不达预期。不正确的数据测量结果会导致航位推算算法累积误差随着步行距离和时间的增加而增加;而基于Wi-Fi信号辅助定位需要预先部署基础设施,基于计算机视觉的位置修正则对智能设备的摆放位置及室内场景有一定的要求,不利于大规模部署。Bang Wu等人使用多种神经网络模型对不同的动作进行识别,并与航位推算算法结合使用,在多层建筑内平均定位误差仅1.79m,然而该方法涉及多种神经网络模型,复杂度较高,不适合在智能设备上运行。此外,目前大多数的航位推算算法要求行人水平手持智能设备,并在使用过程中保持姿势不变,这限制了该方法的实用性。
发明内容
发明目的:为了克服现有技术中存在的不足,本发明提供一种基于活动识别和融合滤波的自校正航位推算系统和方法,该系统和方法可以提高航迹推算的准确性。
技术方案:为实现上述目的,本发明的基于活动识别和融合滤波的自校正航位推算系统,该系统具体包括数据收集模块、数据处理模块、活动识别模块、位置预估模块、位置校正模块以及数据输出模块;
其中所述数据收集模块包括若干个MEMS传感器,通过该若干个MEMS传感器采集行人数据;
所述数据处理模块用于将采集到的数据进行数据处理;
所述活动识别模块基于进行数据处理后的数据,使用活动识别模型识别行人动作;
所述位置预估模块用于预估行人位置,预估行人位置具体包括根据上述行人动作识别结果估算步长和计算航位角;
所述位置校正模块用于根据磁场强度序列校正行人位置;
首先通过数据收集模块采集行人数据并将该数据输送至数据处理模块,然后通过数据处理模块处理采集到的行人数据并将处理后的行人数据输送至活动识别模块,接着通过活动识别模块基于进行数据处理后的数据,使用活动识别模型识别行人动作并将该结果输送至位置预估模块,再通过位置预估模块基于行人动作预估行人位置且将该结果输送至位置校正模块,再通过位置校正模块基于行人位置结果根据磁强序列校正行人位置且将该结果输送至数据输出模块,最后通过数据输出模块将校正后的行人位置结果输出。
进一步地,所述数据处理模块包括数据降噪模块和数据坐标系转换模块,其中数据降噪模块用于对收集的数据进行降噪处理;数据坐标系转换模块用于对数据进行坐标系转换。
进一步地,所述活动识别模块基于处理后的数据,使用活动识别模型识别行人动作,所述活动识别模型将Attention Mechanism与CNN-LSTM神经网络模型结合使用,该活动识别模型使用交叉熵函数作为多分类损失函数,损失函数定义为:
loss=-∑i(yi*logyp+(1-yi)*log(1-yp)) 公式(13)
上述公式(13)中,i为当前预测的活动实例序号,yi代表当前序列的真实动作,yp代表分类器的预测动作结果;
将上述活动识别模型移植到移动智能设备中,使得移动智能设备上实时识别行人动作。
进一步的,所述位置预估模块用于预估行人位置,预估行人位置具体包括根据行人动作识别结果估算步长和计算航位角;
计算行人航位角具体包括以下步骤:
首先,基于采集到的加速度数据计算得到加速度输出角,以及基于采集到的磁场强度数据计算得到磁场强度输出角,基于陀螺仪采集到的数据计算得到陀螺仪输出的航位角;
然后将加速度输出角和磁场强度输出角均输入到低通滤波器LPF中,通过低通滤波对加速度输出角和磁场强度输出角进行处理,得到过滤后的加速度输出角和过滤后的磁场强度输出角,同时将陀螺仪输出的航位角输入到高通滤波器HPF中,通过高通滤波器去除陀螺仪数据中的低频分量,得到过滤后的陀螺仪输出航位角;
最后,将通过低通滤波器过滤后的加速度输出角、通过低通滤波器过滤后的磁场强度输出角与通过高通滤波器过滤后的陀螺仪输出航位角均输入到融合滤波器中,通过融合滤波器计算得到融合后的行人航位角,融合滤波器公式如下:
FusedOri=f*Gyr+(1-f)*AccMag 公式(14)
上述公式(14)中,FusedOri为融合滤波器输出的行人航位角,f为融合滤波器的参数,Gyr为过滤后的陀螺仪输出航位角,AccMag为过滤后的加速度输出角与过滤后的磁场强度输出角通过融合计算得到的航位角度。
通过上述步骤得到的融合滤波器输出的行人航位角FusedOri为最终需要求解的行人航位角。
进一步的,所述估算步长具体包括以下步骤:
首先通过基于动态阈值的峰值检测方法检测行人行走步数;
然后通过公式(15)计算行人行走步长:
上述公式(15)中,S代表步长,amax和amin分别是导航坐标系Z轴上的加速度最大值和Z轴上的加速度最小值,步长参数L为一个和步伐频率相关的常量,通常步行速度越快则L值越大;
最后根据获得的融合滤波器输出的行人航位角、步长实时估算行人当前的位置坐标。
进一步的,所述位置校正模块用于根据磁强序列校正行人位置,具体包括以下步骤:
首先定义行人步行模式;
然后基于离散时序差值的动态时间规划方法定义不同行走状态下的磁场强度序列,具体是通过公式(17)将原始的磁场强度序列转换为相邻值的差值序列,
上述公式(17)中,m′(i)为相邻值的差值序列,mi为磁场强度序列中第i个数值,i为自然数;
接着基于上述得到的相邻值的差值序列m′(i),对m′(i)插值序列使用动态时间规划方法进行相似性判定;
最后根据用户采集的磁场强度序列与参考路径上的磁场强度序列计算DTW-DTD距离,并将匹配的磁场数据位置替换行人当前的位置坐标。
进一步的,基于上述权利要求1~6中任意一项所述的基于活动识别和融合滤波的自校正航位推算系统,具体包括以下步骤:
1)首先,利用加速度计、陀螺仪和磁强计采集行人数据;
2)然后,将采集到的数据进行数据处理,具体包括数据降噪和坐标轴转换,以提高采样数据的有效性;
3)接着,提出基于Attention Mechanism和CNN-LSTM的活动识别方法对行人动作进行准确识别;
4)随后,对不同类传感器数据进行融合滤波,以保证长时间行走过程中航位角计算的准确性,同时依据行人的实际活动估算行走距离及方向,将估算的步长与实际步长的误差控制在合理范围内;
5)最后,提出基于离散时序差值的动态时间规划算法以匹配对比对同一路径下不同行走模式采集到的数据。
有益效果:本发明与现有技术比较,具有的优点是:
1、本发明系统包括数据处理模块,该数据处理模块包括数据降噪模块,由于传感器采样数据受噪声无法直接应用于活动识别及航位推算中,因此本系统采用数据降噪模块,用于将采集到的数据进行数据降噪,使原始数据符合航位推算的需求,以提高采样数据的有效性。
2、本发明系统包括数据处理模块,该数据处理模块包括数据坐标系转换模块,由于传感器采样数据受设备坐标系与导航坐标系不一致等问题,无法直接应用于活动识别及航位推算中,因此本系统采用数据坐标系转换模块将采集到的数据进行数据坐标系转换,使原始数据符合航位推算的需求,以提高采样数据的有效性。
3、本发明系统中的活动识别模块,基于处理后的数据,使用活动识别模型对行人动作进行准确识别,该活动识别模型为基于Attention Mechanism和CNN-LSTM的活动识别方法,准确度优于典型的利用神经网络进行活动识别的方法,提高对行人动作进行识别的准确率,充分保证了航位推算精度。
4、本发明系统可以实现航位导航系统,该系统易于集成到智能设备中,无需额外的基础设施部署,使用方便,适用范围更广。
5、本发明系统在平面环境和立体环境两类环境下,进行大规模场景实现,对比了利用陀螺仪角速度积分、利用加速度与磁场融合两种主流航位推算方法,对比结果为本系统的航位推算精度分别提升了88.29%以及73.12%。
6、本发明方法设计面向多感知数据的融合滤波方法,降低了长时间运行和动作变化对航位角度估算的影响。
7、本发明系统包括位置校正模块,该位置校正模块通过对行人轨迹的校准来提高航迹推算的准确性。
8、本发明方法设计了基于离散时序差值的动态时间规划算法,保证有效的航位自校正。
附图说明
图1是基于活动识别和融合滤波的自校正航位推算系统模块示意图。
图2所示为设备坐标系示意图。
图3所示为导航坐标系示意图。
图4是融合滤波结构流程图。
图5是基于动态阈值的峰值检测方法的步数检测效果图。
具体实施方式
下面结合附图和实施例对本发明作更进一步的说明。
实施例1:
本实施例的基于活动识别和融合滤波的自校正航位推算系统,参照图1,该系统具体包括数据收集模块、数据处理模块、活动识别模块、位置预估模块、位置校正模块以及数据输出模块;该系统可以在大规模场景下达到较高精度的航位推算,并在不同型号智能设备上进行实时导航,该系统使用移植到智能设备端的活动识别模型识别行人活动,并根据识别结果估算行人行走距离,之后采用融合滤波计算航位方向,结合估算的行走距离计算行人位置,最后,使用磁场强度序列匹配方法校正行人位置,并将校正后的预估位置坐标显示在系统用户界面上。
所述数据收集模块包括若干个MEMS传感器,通过该若干个MEMS传感器采集行人数据,MEMS传感器包括陀螺仪、加速度计和磁强计中的一种或多种,陀螺仪是一种物体角运动测量装置,通过对陀螺仪双轴基点在不同运动状态下偏移量的测量,可以标定出物体水平、垂直、俯仰、加速度、航向方位,陀螺仪用于提供人当前的航位朝向角度;加速度计用于测量运载体线加速度,加速度计用于步数检测、行人活动识别及步长估算;磁强计用于测定地磁场的大小和方向,用于校正行人当前位置,减轻定位系统累计误差,限制系统整体性能的下降。
所述数据处理模块用于将采集到的数据进行数据处理,该数据处理模块包括数据降噪模块和数据坐标系转换模块,其中数据降噪模块用于对收集的数据进行降噪处理;数据坐标系转换模块用于对进行降噪处理后的数据进行坐标系转换。
上述活动识别模块基于进行数据处理后的数据,使用活动识别模型识别行人动作。
上述位置预估模块用于预估行人位置,预估行人位置具体包括根据上述行人动作识别结果估算步长和计算航位角。
上述位置校正模块用于根据磁强序列校正行人位置,减轻定位系统累计误差,限制系统整体性能的下降。
通过上述基于活动识别和融合滤波的自校正航位推算系统进行航位推算,具体是:首先通过数据收集模块采集行人数据并将该数据输送至数据处理模块,然后通过数据处理模块处理采集到的行人数据并将处理后的行人数据输送至活动识别模块,接着通过活动识别模块基于进行数据处理后的数据,使用活动识别模型识别行人动作并将该结果输送至位置预估模块,再通过位置预估模块基于行人动作预估行人位置且将该结果输送至位置校正模块,再通过位置校正模块基于行人位置结果根据磁强序列校正行人位置且将该结果输送至数据输出模块,最后通过数据输出模块将校正后的行人位置结果输出。
实施例2:
本实施例的基于活动识别和融合滤波的自校正航位推算系统,基于实施例1,数据处理模块用于将采集到的数据进行数据处理,该数据处理模块包括数据降噪模块和数据坐标系转换模块,其中数据降噪模块用于对收集的数据进行降噪处理;数据坐标系转换模块用于对数据进行坐标系转换。
数据坐标系转换模块用于对数据进行坐标系转换,具体包括以下步骤:
已知基于智能设备获取到的传感器数据是基于设备本身的坐标系收集到的,而行人在实际行走时设备姿势不会一直保持与数据收集者一致,将设备本身的坐标系称为设备坐标系,用于应用于活动分类器及导航指示的坐标系称为导航坐标系,图2所示为设备坐标系示意图,图3所示为导航坐标系示意图,图2和图3中X轴指向正东,Y轴指向正北,Z轴指向垂直于地面的天空,
假定加速度计收集到的加速度数据在设备坐标系中表示为:
假定磁强计收集到的磁场数据在设备坐标系中表示为:
为了在实际场景中进行定位及导航服务,本实施例通过数据坐标系转换模块将设备坐标系中的数据转换到导航坐标系中,假设转换到导航坐标系中的转换结果为转换矩阵T,则:
上述公式(6)中,c表示cos函数,s表示sin函数。
将转换结果矩阵T与在设备坐标系中的加速度数据相乘得到在导航坐标系中的加速度数据,设在导航坐标系中的加速度数据为Acc‘:
将转换结果矩阵T与在设备坐标系中的磁场数据相乘得到在导航坐标系中的磁场数据,设在导航坐标系中的磁场数据为M‘:
实施例3:
本实施例的基于活动识别和融合滤波的自校正航位推算系统,基于实施例2,数据处理模块用于将采集到的数据进行数据处理,该数据处理模块包括数据降噪模块和数据坐标系转换模块,其中数据降噪模块用于对收集的数据进行降噪处理;数据坐标系转换模块用于对进行降噪处理后的数据进行坐标系转换。
数据降噪模块用于对收集的数据进行降噪处理,具体包括以下步骤:
已知利用加速度计采集数据时,其采样数值会受到环境噪声的影响,其中,重力加速度对数据采样的干扰最为严重,假设智能设备平放在水平桌面上,加速度计采集的数据实际为重力加速度G,当智能设备在自由落体时,采集到的数据为0,本实施例中,要测得实际的加速度数值则需要滤除掉加速度数据中的重力加速度数据,本实施例采用高通滤波器来解决这一问题,具体如下:
采用以下公式(9)、公式(10)实现:
gt=a*gt-1+(1-a)*Acc‘t 公式(9)
上述公式中,gt为智能设备在t时刻的重力加速度数据,a为高通滤波参数,gt-1为智能设备在t-1时刻的重力加速度数据,Acc‘t为智能设备在t时刻在导航坐标系中的加速度数据,为智能设备在t时刻经过高通滤波器后的最终的加速度数据。
本实施例中,取a=0.8。
实施例4:
本实施例的基于活动识别和融合滤波的自校正航位推算系统,基于实施例3。
已知不同的智能设备内嵌的传感器在数据采样期间会受到其固有误差及采样频率的影响,例如,部分常见智能设备加速度计的固有误差如表1所示:
表1常见智能设备加速度计固有误差对比
设备型号 | Acc_x | Acc_y | Acc_z |
Mi10Pro | 0.000185 | 0.000267 | -0.005992 |
Mi6 | 0.000248 | -0.003745 | -0.218308 |
Huawei P40 | 0.003538 | -0.013606 | -0.218308 |
Honor V20 | 0.002621 | 0.005326 | -0.317217 |
Samsung S10 | 0.006388 | -0.002146 | 0.06709 |
上述表1中,Acc_x为智能设备加速度计在x轴的固有误差数据,Acc_y为智能设备加速度计在y轴的固有误差数据,Acc_z为智能设备加速度计在z轴的固有误差数据,由表1可知,不同设备传感器之间的固有误差不同,因此需要对智能设备进行单独的误差数据收集并在采集数据时除去固有误差。
本实施例中用磁强计进行方向指示前对智能设备进行八字旋转操作,具体是:要求使用者在采集数据之前将智能设备水平放置h秒,h≥10,智能设备开始采集数据并处理数据,在处理数据之前去除智能设备开始时刻和结束时刻收集到的抖动数据,具体是:对智能设备收集到的h秒数据中去除前后各h′秒数据,h′≤2,之后对去除前后各h′秒数据的所有数据进行计算平均值操作,从而求解智能设备加速度计的固有误差数据,求解智能设备加速度计的固有误差的公式如下:
上述公式(11)中,Accerror为智能设备最终的加速度计固有误差,Accreal为智能设备静置时采集到的加速度数据,n为收集的总样本数量,n′为h′秒内的样本数量。
最后根据公式(12)求解智能设备最终的加速度数据:
经过上述步骤对智能设备加速度计数据进行处理,处理完成后的数据被划分为多个活动数据实例数据窗口,单个活动数据实例数据窗口由一系列的传感器数据组成,本实施例定义数据集为:Data={Datai,Labeli},其中Datai为输入的每个动作数据段,其中,
上述公式中,K表示输入的每个动作数据段的窗口大小,在本实施例中,设置每一个活动数据实例数据窗口与上一个窗口具有50%的数据重合,以学习相同动作在不同时间段内的动作特征,分别表示智能设备在导航坐标系中三轴的加速度数据,分别表示智能设备在坐标系中三轴的陀螺仪数据。
本实施例针对行人在室内行走时使用手机进行导航的实际行走状态,同时部分智能设备并没有配备气压计传感器,无法直接使用传感器数据判断上下楼情况,本实施例考虑五种常见的行人活动状态:行人慢走、行人正常走、行人快走、行人下楼以及行人上楼,各个行人活动状态对应的标识如表2所示:
表2五种行人活动状态对应的标志
动作标识 | 具体动作 |
A1 | 行人下楼 |
A2 | 行人快走 |
A3 | 行人正常走 |
A4 | 行人慢走 |
A5 | 行人上楼 |
动作标签Labeli的值为A1或A2或A3或A4或A5。Labeli为每个动作数据段对应的动作标签。
实施例5:
本实施例的基于活动识别和融合滤波的自校正航位推算系统,基于实施例4。基于活动识别和融合滤波的自校正航位推算系统包括数据收集模块、数据处理模块、活动识别模块、位置预估模块、位置校正模块以及数据输出模块;上述活动识别模块基于处理后的数据,使用活动识别模型识别行人动作,本实施例中活动识别模型是将Attention Mechanism与CNN-LSTM神经网络模型结合使用。在标准CNN网络模型提取到高维数据特征的基础上,使用Attention Mechanism提取重要子序列特征,使得LSTM神经网络模型能够保留更长的有效记忆信息,以更准确地识别行人活动,本实施例活动识别模型采用基于AttentionMechanism和CNN-LSTM的活动识别方法(Activity Recognition Based on AttentionMechanism and CNN-LSTM,ARAC),对行人动作进行准确识别,该活动识别模型中采用Attention Mechanism方法可以从大量信息中快速选取出高价值信息,适用于实时活动识别。
传感器数据的特征提取是整个活动识别中的关键部分。本实施例采用卷积神经网络进行数据特征提取。在卷积层中,采用64个1×3的卷积核心进行特征提取。为了防止过拟合,在数据特征提取后采用Dropout层,丢弃率设为0.5。由于动作数据序列是时序数据,模型的复杂度会随着网络深度的增加而增加,因此,本实施例的卷积层设置为2层。在卷积层提取到高维的数据特征之后,Attention Mechanism利用Softmax为激活函数的64个神经元生成权重参数Wi,并与数据特征集合逐元素相乘。卷积层输出的特征重要度越高,则Attention Mechanism的输出越接近于1,反之则接近于0;
得到加权后的高维特征后,将其作为长短期记忆神经网络的输入单元,用于进行时间序列预测模型的搭建。在LSTM层与展平层(Flatten)之间也增添Dropout层来防止过拟合,接着使用Flatten层将LSTM层的多维输出转换为一维。最后,使用全连接层(Dense)作为输出层,并使用Softmax函数作为激活函数,输出最终的分类结果。
本实施例使用交叉熵函数作为多分类损失函数,以使损失函数结果最小化。损失函数定义为:
loss=-∑i(yi*logyp+(1-yi)*log(1-yp)) 公式(13)
上述公式(13)中,i为当前预测的活动实例序号,yi代表当前序列的真实动作,yp代表分类器的预测动作结果。
通过上述步骤训练得到活动识别模型后,本实施例将训练得到的活动识别模型移植到移动智能设备中,使得本实施例系统能够在移动智能设备上实时识别行人动作。
实施例6:
本实施例的基于活动识别和融合滤波的自校正航位推算系统,基于实施例5。基于活动识别和融合滤波的自校正航位推算系统包括数据收集模块、数据处理模块、活动识别模块、位置预估模块、位置校正模块以及数据输出模块;其中位置预估模块用于预估行人位置,预估行人位置具体包括根据行人动作识别结果估算步长和计算航位角。为准确估计出行人位置,需要计算行人航位角和行人行走距离。
计算行人航位角具体包括以下步骤:
已知智能设备内嵌的陀螺仪传感器没有经过校准,且实际使用时响应速度很快,因此会将收集到的噪音数据带入积分计算,造成短时间内的航位角估算误差;而使用磁强计及加速度传感器的数据计算得出的航位角度虽然在短时间内变动较大,但在长时间内能够准确反映航位角度的变化。因此本实施例中在实际航迹推算过程中,需要将MEMS传感器的采样数据进行融合,以获得准确的行人航位角,本实施例系统使用融合滤波的方法,有效降低了环境噪音对行人航位角估算的影响,融合滤波步骤流程如图4所示:
首先,基于采集到的加速度数据计算得到加速度输出角,以及基于采集到的磁场强度数据计算得到磁场强度输出角,基于陀螺仪采集到的数据计算得到陀螺仪输出的航位角;
然后将加速度输出角和磁场强度输出角均输入到低通滤波器LPF中,通过低通滤波对加速度输出角和磁场强度输出角进行处理,得到过滤后的加速度输出角和过滤后的磁场强度输出角,同时将陀螺仪输出的航位角输入到高通滤波器HPF中,通过高通滤波器去除陀螺仪数据中的低频分量,减小噪音的影响,得到过滤后的陀螺仪输出航位角;
最后,将通过低通滤波器过滤后的加速度输出角、通过低通滤波器过滤后的磁场强度输出角与通过高通滤波器过滤后的陀螺仪输出航位角均输入到融合滤波器中,通过融合滤波器计算得到融合后的行人航位角,融合滤波器公式如下:
FusedOri=f*Gyr+(1-f)*AccMag 公式(14)
上述公式(14)中,FusedOri为融合滤波器输出的行人航位角,f为融合滤波器的参数,Gyr为过滤后的陀螺仪输出航位角,AccMag为过滤后的加速度输出角与过滤后的磁场强度输出角通过融合计算得到的航位角度。
通过以下公式计算得到AccMag:
My=AZ*Hx-Ax*Hz
通过上述步骤得到的融合滤波器输出的行人航位角FusedOri为最终需要求解的行人航位角。
计算行人行走距离具体包括以下步骤:
首先通过基于动态阈值的峰值检测方法检测行人行走步数,具体包括以下步骤:
已知行人的行走距离取决于检测到的步数与每次步数对应的行走模式,本实施例使用基于动态阈值的峰值检测方法来进行步数检测,当检测到步行事件后,本实施例系统采用活动分类器来识别行人活动,并估算行进距离。
第一步,已知步行期间行人佩戴的智能设备的加速度计采集到的加速度数据以正弦波的形式呈现,本实施例将正弦波中每一个波峰作为一个步点,通过寻找该步点,并基于步点分析波形特点寻找特征值;
第二步,规定加速度正弦波曲线连续上升的次数;
第三步,规定加速度正弦波曲线波峰波谷的差值需要大于阈值;
第四步,规定加速度正弦波曲线相邻波峰间距大于阈值。
综上所述,则可认定满足上述条件的加速度数据曲线中波峰为步点。
本实施例中,规定当加速度数据在正弦波形式中连续上升2次,且波峰值大于当前步态的预订阈值即可认定为一个波峰,波峰与相邻的前一个波谷差值大于动态阈值St且时间差大于0.25秒记作一个有效步点。
第五步,基于动态阈值的峰值检测方法还包括更新动态阈值St步骤,该步骤具体包括:连续记录加速度正弦波曲线中4个有效波峰波谷的差值并计算其平均值,作为更新后的动态阈值St。
基于动态阈值的峰值检测方法的步数检测效果在一段示例混合步态的加速度数据上的步点检测效果如图5所示,从图5中可以看出,基于动态阈值的峰值检测方法更能有效的检测到行人步数,进一步提高计算行人行走距离的有效性。
然后通过公式(15)计算行人行走步长:
上述公式(15)中,S代表步长,amax和amin分别是导航坐标系Z轴上的加速度最大值和Z轴上的加速度最小值,步长参数L为一个和步伐频率相关的常量,通常步行速度越快则L值越大。
最后根据获得的融合滤波器输出的行人航位角、步长实时估算行人当前的位置坐标,具体包括以下步骤:
设行人当前位置坐标为(xt,yt),行人上一个位置坐标为(xt-1,yt-1),融合滤波器输出的当前的行人航位角为θt,当前的步长为St,则根据公式(16)计算行人当前位置坐标为(xt,yt),
实施例7:
本实施例的基于活动识别和融合滤波的自校正航位推算系统,基于实施例6。基于活动识别和融合滤波的自校正航位推算系统包括数据收集模块、数据处理模块、活动识别模块、位置预估模块、位置校正模块以及数据输出模块;其中位置校正模块用于根据磁强序列校正行人位置,减轻定位系统累计误差,限制系统整体性能的下降。该位置校正模块无需依赖基础设施,仅需一个轨迹建立者(Guider)手持智能设备在导航路径上行走一遍,在行走过程中,本实施例的位置校正模块通过建立磁场强度指纹序列作为参考路径以匹配使用过程中得到的采样数据,进而校准行人当前的航向和位置。具体包括以下步骤:
第一步:已知由于行人在行进时存在不同的步行模式,而不同的步行模式对应的收集到的磁场强度序列数据是不一样的,该步骤首先定义步行模式,针对行人在室内行走时使用手机进行导航的实际行走状态,同时部分智能设备并没有配备气压计传感器,无法直接使用传感器数据判断上下楼情况,本实施例考虑五种常见的行人活动状态:行人慢走、行人正常走、行人快走、行人下楼以及行人上楼,各个行人活动状态对应的标识如表2所示:
表2五种行人活动状态对应的标志
动作标识 | 具体动作 |
A1 | 行人下楼 |
A2 | 行人快走 |
A3 | 行人正常走 |
A4 | 行人慢走 |
A5 | 行人上楼 |
第二步,定义不同行走状态下的磁场强度序列,本实施例基于离散时序差值的动态时间规划方法(Dynamic Time Warping based on Discrete Timing Difference,DTW-DTD)定义不同行走状态下的磁场强度序列,具体是通过公式(17)将原始的磁场强度序列转换为相邻值的差值序列,
上述公式(17)中,m′(i)为相邻值的差值序列,mi为磁场强度序列中第i个数值,i为自然数。
第三步,基于上述得到的相邻值的差值序列m′(i),对m′(i)插值序列使用动态时间规划方法(Dynamic Time Warping,DTW)进行相似性判定,具体是将两个变化分布序列m′(i)与m′(j)之间的DTW距离作为两个磁场强度序列的距离,i和j均为自然数。
相比于传统的DTW方法,DTW-DTD更关注序列变化趋势的相似性,使用DTW-DTD和DTW对同一路段中不同行走状态下采样的磁强信号序列进行相似度比较,两种方法计算的序列间距离如表3所示。根据实验结果,DTW-DTD将数值序列转换为差值序列后,两个曲线更加相似。两种步行模式下采样的磁强序列的总距离从原本的722.09降低到了81.53,最近相邻点距离从1.173降低到了0.102。
表3传统的DTW方法与DTW-DTD方法计算的序列距离
方法 | 总距离 | 最近点距离 |
DTW | 722.09 | 1.173 |
DTW-DTD | 81.53 | 0.102 |
第四步,根据用户采集的磁场强度序列与参考路径上的磁场强度序列计算DTW-DTD距离,并将匹配的磁场数据位置替换行人当前的位置坐标。
通过上述方法步骤,本实施例系统根据用户采集的磁场强度序列与参考路径上的磁场强度序列计算DTW-DTD距离,并将匹配的磁场数据位置替换行人当前的位置坐标,极大降低了导航过程中的累积误差。
实施例8:
本实施例的基于活动识别和融合滤波的自校正航位推算方法,基于实施例7提出的基于活动识别和融合滤波的自校正航位推算系统,该方具体包括以下步骤:
1)首先,利用加速度计、陀螺仪和磁强计采集行人数据;
2)然后,将采集到的数据进行数据处理,具体包括数据降噪和坐标轴转换,以提高采样数据的有效性;
3)接着,提出基于Attention Mechanism和CNN-LSTM的活动识别方法对行人动作进行准确识别;
4)随后,对不同类传感器数据进行融合滤波,以保证长时间行走过程中航位角计算的准确性,同时依据行人的实际活动估算行走距离及方向,将估算的步长与实际步长的误差控制在合理范围内;
5)最后,提出基于离散时序差值的动态时间规划算法以匹配对比对同一路径下不同行走模式采集到的数据。
实施例9:
本实施例的基于活动识别和融合滤波的自校正航位推算方法,基于实施例8,本实施例方法包括以下步骤:
第一步,通过基于活动识别和融合滤波的自校正航位推算系统中的数据收集模块收集得到传感器数据Datai、磁场强度指纹序列mi等其他数据,并将该传感器数据Datai、磁场强度指纹序列mi输入到数据处理模块中;
第二步,通过基于活动识别和融合滤波的自校正航位推算系统中的数据处理模块中转换矩阵T将输入的设备坐标系数据转换为导航坐标系数据,并对该导航坐标系数据进行降噪处理,并将处理后的数据输入到活动识别模块中;
第三步,通过基于活动识别和融合滤波的自校正航位推算系统中活动识别模块,活动识别模块基于处理后的数据,使用活动识别模型识别行人动作,识别行人行走模式Ai,并将该动作结果输入到位置预估模块中;
第四步,通过基于活动识别和融合滤波的自校正航位推算系统中位置预估模块预估行人位置,具体是根据行人动作识别结果估算步长和计算航位角,具体包括以下步骤:
使用活动识别模型识别行人行走模式Ai;
根据行走模式Ai设置对应的步长参数L;
根据步长参数L计算行人行走步长;
根据融合滤波器公式计算得到行人航位角,融合滤波器公式如下:
FusedOri=f*Gyr+(1-f)*AccMag公式(14)
上述公式(14)中,FusedOri为融合滤波器输出的行人航位角,f为融合滤波器的参数,Gyr为过滤后的陀螺仪输出航位角,AccMag为过滤后的加速度输出角与过滤后的磁场强度输出角通过融合计算得到的航位角度;
通过计算得到的长和航位角计算行人当前位置(xt,yt),并将该位置输入到位置校正模块中;
第五步,通过基于活动识别和融合滤波的自校正航位推算系统中DTW-DTD方法计算行人当前在磁场轨迹数据上的位置,并根据该位置校正行人实际位置;
第六步,通过.基于活动识别和融合滤波的自校正航位推算系统中数据输出模块输出校正后的行人实际位置。
实施例10:
本实施例的基于活动识别和融合滤波的自校正航位推算方法,基于实施例9,本实施例对实施例9方法进行实验验证。
实验设备及场景如下:
本实施例将本发明系统移植到移动智能设备。实验场景分别为2800m2的单层教学楼场景(平面环境)及240m×100m的三层大型商贸中心场景(立体环境),多名志愿者在上述场景中构建了五类活动行为数据集。
由于不同设备MEMS传感器的采样频率不一致,为保证能够在目前常见的移动智能设备上稳定运行,数据收集模块和导航模块的传感器数据采样频率均被设置为20Hz。同时,根据志愿者的实验结果并结合步态识别模型,选择合适的步长参数L,使得Seen的步长估算适应混合步态下的行走距离计算。经过对多个志愿者的大量实验,设定慢走状态下时步长参数L值为0.46,正常走时L值为0.48,快走时L值为0.53,融合过程中的滤波器参数f被设为0.98。
针对公开数据集Unimib-SHAR(ADL)、WISDM及本实施例自建活动数据集上,本实施例对比了三种神经网络:卷积神经网络CNN、长短期记忆神经网络LSTM以及CNN-LSTM神经网络,如表4所示,根据实验结果,可以看出本实施例提出的活动识别方法ARAC在三个数据集上表现均优于前三者:
表4 4种神经网络模型的分类准确率对比
网络模型 | Unimib | WISDM | 本实施例自建活动数据集 |
CNN | 92.56% | 93.25% | 94.37% |
LSTM | 92.34% | 94.71% | 93.91% |
CNN-LSTM | 95.38% | 96.18% | 96.97% |
ARAC | 97.16% | 98.13% | 98.75% |
以上所述仅是本发明的优选实施方式,应当指出:对于本技术领域的技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (7)
1.基于活动识别和融合滤波的自校正航位推算系统,其特征在于:该系统具体包括数据收集模块、数据处理模块、活动识别模块、位置预估模块、位置校正模块以及数据输出模块;
其中所述数据收集模块包括若干个MEMS传感器,通过该若干个MEMS传感器采集行人数据;
所述数据处理模块用于将采集到的数据进行数据处理;
所述活动识别模块基于进行数据处理后的数据,使用活动识别模型识别行人动作;
所述位置预估模块用于预估行人位置,预估行人位置具体包括根据上述行人动作识别结果估算步长和计算航位角;
所述位置校正模块用于根据磁场强度序列校正行人位置;
首先通过数据收集模块采集行人数据并将该数据输送至数据处理模块,然后通过数据处理模块处理采集到的行人数据并将处理后的行人数据输送至活动识别模块,接着通过活动识别模块基于进行数据处理后的数据,使用活动识别模型识别行人动作并将该结果输送至位置预估模块,再通过位置预估模块基于行人动作预估行人位置且将该结果输送至位置校正模块,再通过位置校正模块基于行人位置结果根据磁强序列校正行人位置且将该结果输送至数据输出模块,最后通过数据输出模块将校正后的行人位置结果输出。
2.根据权利要求1所述的基于活动识别和融合滤波的自校正航位推算系统,其特征在于:所述数据处理模块包括数据降噪模块和数据坐标系转换模块,其中数据降噪模块用于对收集的数据进行降噪处理;数据坐标系转换模块用于对数据进行坐标系转换。
3.根据权利要求2所述的基于活动识别和融合滤波的自校正航位推算系统,其特征在于:所述活动识别模块基于处理后的数据,使用活动识别模型识别行人动作,所述活动识别模型将Attention Mechanism与CNN-LSTM神经网络模型结合使用,该活动识别模型使用交叉熵函数作为多分类损失函数,损失函数定义为:
loss=-∑i(yi*logyp+(1-yi)*log(1-yp)) 公式(13)
上述公式(13)中,i为当前预测的活动实例序号,yi代表当前序列的真实动作,yp代表分类器的预测动作结果;
将上述活动识别模型移植到移动智能设备中,使得移动智能设备上实时识别行人动作。
4.根据权利要求3所述的基于活动识别和融合滤波的自校正航位推算系统,其特征在于:所述位置预估模块用于预估行人位置,预估行人位置具体包括根据行人动作识别结果估算步长和计算航位角;
计算行人航位角具体包括以下步骤:
首先,基于采集到的加速度数据计算得到加速度输出角,以及基于采集到的磁场强度数据计算得到磁场强度输出角,基于陀螺仪采集到的数据计算得到陀螺仪输出的航位角;
然后将加速度输出角和磁场强度输出角均输入到低通滤波器LPF中,通过低通滤波对加速度输出角和磁场强度输出角进行处理,得到过滤后的加速度输出角和过滤后的磁场强度输出角,同时将陀螺仪输出的航位角输入到高通滤波器HPF中,通过高通滤波器去除陀螺仪数据中的低频分量,得到过滤后的陀螺仪输出航位角;
最后,将通过低通滤波器过滤后的加速度输出角、通过低通滤波器过滤后的磁场强度输出角与通过高通滤波器过滤后的陀螺仪输出航位角均输入到融合滤波器中,通过融合滤波器计算得到融合后的行人航位角,融合滤波器公式如下:
FusedOri=f*Gyr+(1-f)*AccMag 公式(14)
上述公式(14)中,FusedOri为融合滤波器输出的行人航位角,f为融合滤波器的参数,Gyr为过滤后的陀螺仪输出航位角,AccMag为过滤后的加速度输出角与过滤后的磁场强度输出角通过融合计算得到的航位角度;
通过上述步骤得到的融合滤波器输出的行人航位角FusedOri为最终需要求解的行人航位角。
6.根据权利要求5所述的基于活动识别和融合滤波的自校正航位推算系统,其特征在于:所述位置校正模块用于根据磁强序列校正行人位置,具体包括以下步骤:
首先定义行人步行模式;
然后基于离散时序差值的动态时间规划方法定义不同行走状态下的磁场强度序列,具体是通过公式(17)将原始的磁场强度序列转换为相邻值的差值序列,
上述公式(17)中,m′(i)为相邻值的差值序列,mi为磁场强度序列中第i个数值,i为自然数;
接着基于上述得到的相邻值的差值序列m′(i),对m′(i)插值序列使用动态时间规划方法进行相似性判定;
最后根据用户采集的磁场强度序列与参考路径上的磁场强度序列计算DTW-DTD距离,并将匹配的磁场数据位置替换行人当前的位置坐标。
7.根据权利要求6所述的基于活动识别和融合滤波的自校正航位推算方法,其特征在于:基于上述权利要求1~6中任意一项所述的基于活动识别和融合滤波的自校正航位推算系统,具体包括以下步骤:
1)首先,利用加速度计、陀螺仪和磁强计采集行人数据;
2)然后,将采集到的数据进行数据处理,具体包括数据降噪和坐标轴转换,以提高采样数据的有效性;
3)接着,提出基于Attention Mechanism和CNN-LSTM的活动识别方法对行人动作进行准确识别;
4)随后,对不同类传感器数据进行融合滤波,以保证长时间行走过程中航位角计算的准确性,同时依据行人的实际活动估算行走距离及方向,将估算的步长与实际步长的误差控制在合理范围内;
5)最后,提出基于离散时序差值的动态时间规划算法以匹配对比对同一路径下不同行走模式采集到的数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210188317.7A CN114674317A (zh) | 2022-02-28 | 2022-02-28 | 基于活动识别和融合滤波的自校正航位推算系统及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210188317.7A CN114674317A (zh) | 2022-02-28 | 2022-02-28 | 基于活动识别和融合滤波的自校正航位推算系统及方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114674317A true CN114674317A (zh) | 2022-06-28 |
Family
ID=82071347
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210188317.7A Pending CN114674317A (zh) | 2022-02-28 | 2022-02-28 | 基于活动识别和融合滤波的自校正航位推算系统及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114674317A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116793364A (zh) * | 2023-06-27 | 2023-09-22 | 汇鲲化鹏(海南)科技有限公司 | 一种基于航位推算的室内定位系统及方法 |
-
2022
- 2022-02-28 CN CN202210188317.7A patent/CN114674317A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116793364A (zh) * | 2023-06-27 | 2023-09-22 | 汇鲲化鹏(海南)科技有限公司 | 一种基于航位推算的室内定位系统及方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110602647B (zh) | 基于扩展卡尔曼滤波和粒子滤波的室内融合定位方法 | |
CN111174781B (zh) | 一种基于可穿戴设备联合目标检测的惯导定位方法 | |
Edel et al. | An advanced method for pedestrian dead reckoning using BLSTM-RNNs | |
CN110553643B (zh) | 一种基于神经网络的行人自适应零速更新点选取方法 | |
CN108537101B (zh) | 一种基于状态识别的行人定位方法 | |
CN109164411B (zh) | 一种基于多数据融合的人员定位方法 | |
CN106714110A (zh) | 一种Wi‑Fi位置指纹地图自动构建方法及系统 | |
CN107014375B (zh) | 超低部署的室内定位系统及方法 | |
CN111829516B (zh) | 一种基于智能手机的自主式行人定位方法 | |
CN107255474B (zh) | 一种融合电子罗盘和陀螺仪的pdr航向角确定方法 | |
CN110388926B (zh) | 一种基于手机地磁和场景图像的室内定位方法 | |
CN111595344B (zh) | 一种基于地图信息辅助的多姿态下行人行位推算方法 | |
CN108426582B (zh) | 行人室内三维地图匹配方法 | |
CN112729301A (zh) | 一种基于多源数据融合的室内定位方法 | |
CN114674317A (zh) | 基于活动识别和融合滤波的自校正航位推算系统及方法 | |
CN107688828B (zh) | 一种基于手机传感器的公交车拥挤程度估测方法 | |
CN107105404B (zh) | 一种基于步长匹配的行人室内定位方法 | |
Yao et al. | A magnetic interference detection-based fusion heading estimation method for pedestrian dead reckoning positioning | |
CN116092193A (zh) | 一种基于人体运动状态识别的行人航迹推算方法 | |
CN116448103A (zh) | 基于uwb测距辅助的行人足绑式惯性导航系统误差修正方法 | |
CN111197974A (zh) | 一种基于Android惯性平台的无气压计高度测算方法 | |
CN113848878B (zh) | 基于众源数据的室内外三维行人路网构建方法 | |
CN113188546B (zh) | 基于图像识别与人行航位推算的室内定位导航方法 | |
Han et al. | Motion mode recognition in multi-storey buildings based on the naive Bayes method | |
Li et al. | WiFi-assisted multi-floor indoor localization with inertial sensors |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication |