1.一种基于众包IMU惯导数据的楼宇室内平面图建立方法,其特征在于,所述基于众包IMU惯导数据的楼宇室内平面图建立方法包括以下步骤:
步骤一:众包IMU惯导数据的获取;
步骤二:对步骤一获得的众包IMU惯导数据利用行人航迹推算算法生成用室内行走轨迹;
步骤二一:根据众包IMU惯导数据特征对室内环境进行兴趣点检测,根据检测结果匹配数据库得到用户轨迹的起始点坐标,并通过电子罗盘数据进行起始方向的判定;
步骤二二:采用线性步长模型估计用户步长;
步骤二三:对众包IMU惯导数据加速度进行峰谷值检测得到计步数目;
步骤二四:利用四元数法和互补滤波法分别对三轴加速度数据和三轴陀螺仪数据计算得到航向角;
步骤二五:采用得到的用户轨迹的起始点坐标、用户步长、计步数目和航向角作为行人航迹推算算法的输入,得到众包用户的室内行走轨迹;
步骤三:对步骤二生成的室内行走轨迹进行区域密度统计,对不符合室内人员行走模型的轨迹进行删除,并对噪声点进行滤除,利用alph-shape算法进行室内地图的轮廓生成。
2.根据权利要求1所述的一种基于众包IMU惯导数据的楼宇室内平面图建立方法,其特征在于,所述步骤一中众包IMU惯导数据的获取的具体过程为:
用户手持终端在室内移动,通过手持终端获取众包IMU惯导数据,所述众包IMU惯导数据包括三轴加速度数据、三轴陀螺仪数据、三轴磁力计数据、电子罗盘数据以及RSS数据。
3.根据权利要求2所述的一种基于众包IMU惯导数据的楼宇室内平面图建立方法,其特征在于,所述步骤二一中根据众包IMU惯导数据特征对室内环境进行兴趣点检测的具体过程为:
步骤二一一、选取室内兴趣点并记录其位置坐标,记录固定时间窗用户手持终端经过该兴趣点的三轴加速度数据,保存在数据库中作为兴趣点样本yp=(y1,y2,…ym);
步骤二一二、利用滑动时间窗选取需要待匹配的样本yq=(y1,y2,…yn),计算与数据库中的兴趣点样本的豪斯多夫距离:
H(yp,yq)=max(h(yp,yq),h(yq,yp))
步骤二一三、判断两者的豪斯多夫距离是否在阈值范围内,若在阈值范围内,则判定其匹配成功,查找数据库存储的位置坐标确定用户起始点位置,并对获取到的众包IMU惯导数据进行存储,作为行人航迹推算算法的原始数据;若不在阈值范围内,则表明未经过兴趣点,数据不进行存储。
4.根据权利要求3所述的一种基于众包IMU惯导数据的楼宇室内平面图建立方法,其特征在于,所述步骤二二采用线性步长模型估计用户步长的具体过程为:
s=h×(afstep+b)+c
其中h代表用户的身高,fstep为用户行走的步频,a,b,c分别为线性模型公式的校准系数。
5.根据权利要求4所述的一种基于众包IMU惯导数据的楼宇室内平面图建立方法,其特征在于,所述步骤二三中对众包IMU惯导数据加速度进行峰谷值检测得到计步数目的具体过程为:
计算三轴加速度得到其中分别为在k时刻的x、y、z轴加速度值,并取平均值为去除重力加速度得到利用平滑窗口对去除重力加速度后的总加速度进行滤波,设窗口因子为N,则其窗口的长度为2N+1,计算得到平滑值为
6.根据权利要求5所述的一种基于众包IMU惯导数据的楼宇室内平面图建立方法,其特征在于,所述步骤二四中利用四元数法和互补滤波法分别对三轴加速度数据和三轴陀螺仪数据计算得到航向角的具体过程为:
步骤二四一:初始四元数的确定;
设置初始姿态角中的滚动角ψ0、俯仰角θ0、航向角γ0,确定初始姿态矩阵:
步骤二四二:四元数λ、p1、p2、p3的实时计算;输入信号分布为陀螺仪的数字输出信号其中t为时间,ωob为三轴陀螺仪的数据,加速度的数字输出信号aob为三轴加速度的数据,o分别代表x、y、z三轴,计算方法采用二阶龙格库塔法;
步骤二四三:姿态矩阵的实时计算,确定姿态矩阵输入为λ(n)、p1(n)、p2(n)、p3(n):
步骤二四四:载体姿态角计算,以确定姿态角θ、ψ、γ,输入为T11(n)、T12(n)、T13(n)、T23(n)、T33(n),得到精确的航向角:
7.根据权利要求6所述的一种基于众包IMU惯导数据的楼宇室内平面图建立方法,其特征在于,所述步骤二五中得到众包用户的室内行走轨迹的具体过程为:
由室内兴趣点判定得到初始位置为P0(N0,E0);
初始位置至下一个位置航向为四元数法得到的航向角为γ0(t0),步长为线性步长模型估计得到S(t0),则下一点位置为:
室内行走轨迹可以表示为:
8.据权利要求7述的一种基于众包IMU惯导数据的楼宇室内平面图建立方法,其特征在于,所述步骤三中对步骤二生成的室内行走轨迹进行区域密度统计,对不符合室内人员行走模型的轨迹进行删除,并对噪声点进行滤除,利用alph-shape算法进行室内地图的轮廓生成的具体过程为:
步骤三一:对所生成的室内行走轨迹进行区域密度统计;
步骤三一一:在存在用户行走轨迹的范围内划分为多个半径为0.3~0.4m的六边形,将用户行走轨迹的范围填充满;
步骤三一二:对在同一六边形内的所有初始点相同的用户轨迹进行累加,统计在该六边形区域内用户轨迹的累加次数;
步骤三一三:对统计完成的六边形区域累加次数进行权重划分;
其中Cn为所有用户密度区域,Ni表示在步骤三一二得到的累加次数,Nwi表示权重划分后的累加次数,xi和yi为用户轨迹坐标,x0和y0为用初始点坐标,xj和yj为Cn区域内用户轨迹坐标;
步骤三一四:将不同初始点的轨迹密度进行累加,并以不同的密度区间按照室内行走模型参数进行划分;根据室内行走模型,占总轨迹数大于等于70%的密度空间划分为A类进行保留;占总轨迹数小于等于30%的密度空间划分为B类,进行剔除;
步骤三二、对离散噪声点进行滤除;求六边形密度区域的中心点,依次寻找离该中心点1.5~2m内其他中心点的数目,若中心点数目小于预设阈值,则删除该点,直至所有点遍历完毕;
步骤三三、利用alph-shape算法进行室内地图的轮廓生成:
步骤三三一:根据六边形边缘点集建立Delaunay三角网;
步骤三三二:在三角网上删除不符合alpha-Shape要求的三角形的边;先删除边长大于2α的三角形的边长;再递归判断要删除的边缘三角形的边长,若通过三角形两个顶点并且半径为α的圆包含其他点,则删除此边缘三角形的边长;
步骤三三三:在删除不符合alpha-Shape要求的三角型后所得到的三角网上求出三角网的边缘;该边缘即为六边形边缘点集的边缘线。