本发明涉及一种城市街道中行人定位方法,具体为一种基于群智感知思想的城市街道行人定位方法。
背景技术:
随着智能移动终端的爆发式增长以及人们对位置服务的要求越来越高,城市街道中行人的定位和导航课题变的越来越现实和迫切。目前,街道中行人定位算法主要有基于距离的rssi(receivedsignalstrengthindication)和toa(timeofarrival),以及与距离无关的质心定位和apit(approximatepoint)等算法;由于城市街道电磁环境复杂,人群密集且流动大,这些传统的定位算法定位误差较大,难以达到行人精密定位。
技术实现要素:
本发明根据城市街道行人的特殊场景,利用群智感知的思想将对于传统行人定位技术来说是不利条件的街道行人密集问题转化成群智感知思想下对定位有利的条件;在信号处理方式上,针对行人之间距离非线性模型的关系,本发明采用无迹卡尔曼滤波处理,这样既解决了经典卡尔曼滤波无法处理非线性模型的问题,也解决了扩展卡尔曼滤波由于舍弃二阶以上项使得精度不高的问题。整个方案中,围绕城市街道环境中弱信号的处理问题,以提高行人定位精度为目的,提出的算法相比于传统的基于距离和其他的行人定位方法更高效,定位精度更高,应用价值更大。
本发明是采用如下的技术方案实现的:基于群智感知的城市街道行人定位方法,包括以下步骤:
(1)服务器后台接收目标行人和周边行人移动终端上传的原始gnss定位结果x、y,vx,vy;x和y分别代表经度和纬度坐标,vx和vy分别代表经度方向和纬度方向的运动速度;
(2)服务器后台建立卡尔曼滤波的目标行人系统状态方程为:
(3)先选取距离目标行人最近的m个周边行人,其中第m个周边行人的坐标为xm(k+1)和ym(k+1),那么第m个所选周边行人的观测方程是:
其中vm(k+1)表示观测噪声,噪声符合高斯分布;
(4)先选取第m个周边行人的2n+1个sigma采样点,通过观测方程可以得到选取的2n+1个
(5)计算无迹卡尔曼滤波滤波增益
(6)计算系统的状态向量更新
(7)服务器后台将经算法处理后精度更高的定位信息(定位信息包括状态向量
本发明根据城市街道中行人定位问题,一方面创新性的将密集的街道行人这种传统行人定位算法认为是定位障碍的实际情况转换成群智感知思想下周边行人定位结果共享来提高目标行人定位精度的有利条件;另一方面为了更逼近数学模型,进一步提高定位精度,本申请采用了无迹卡尔曼滤波的处理方法,规避了经典卡尔曼滤波受线性关系约束的问题和扩展卡尔曼滤模型逼近程度不高的问题。提高了城市街道中行人定位的精度,对城市街道中行人定位问题的应用推广提供了可参考的方案。
附图说明
图1是城市街道中的行人定位问题解决方案框图。
具体实施方式
本申请中设计的城市街道行人定位导航问题中包含三个部分,第一部分根据城市街道行人流动性大,电磁环境复杂,移动速度慢的特点,利用群智感知思想和动力学原理进行数学建模,在智能移动终端获取原始gnss定位数据;第二部分在信号的处理方式上,本方案为了解决经典卡尔曼滤波和扩展卡尔曼滤波的缺点,采用了更适合城市街道行人定位的无迹卡尔曼滤波并进行了详细介绍;最后部分对方案的整体信号流向和处理手段进行说明。
第一部分:基于群智感知思想和动力学原理的数学建模
根据城市街道平坦的特点,状态向量只取经度和纬度方向,这样可以减小计算量,提高计算速度;根据行人移动速度慢的特点,近似采用匀速直线运动模型,加速度则作为驱动噪声处理。
<1>状态方程建立:
假设行人在街道上行走,根据动力学方程,
为:
最后,建立卡尔曼滤波的系统状态方程为:
<2>观测方程的建立:
根据街道行人密集,距离近,流动性大的特点。先选取距离目标行人最近的m个周边行人,分别计算出需要定位的目标行人与周边行人的距离并把距离作为观测量,那么其中第m个所选周边行人的观测方程是:
第二部分:针对行人定位问题的无迹卡尔曼滤波把无迹卡尔曼滤波的2n+1个sigma点代入第m个所选周边行人的观测方程,n表示状态向量维数,得到的sigma点集的观测预测值
计算无迹卡尔曼滤波滤波增益
计算系统的状态向量更新
显然,无迹卡尔曼滤波(ukf)在处理非线性滤波时并不需要像扩展卡尔曼滤波一样在估计点处做泰勒级数展开,然后进行前n阶近似,而是在估计点附近进行ut变换,使得到的sigma点集的均值和协方差原统计特性匹配,再直接对这些sigma点集进行非线性映射,以近似得到状态概率密度函数。这种近似其实质是一种统计近似而非解
第三部分:服务器后台将处理结果通过基站等无线通信方式下发到目标行人的智能移动终端。