室内定位之CSI指纹定位

目录

一、CSI简介

1、CSI指纹定位经典模型

2、MIMO与OFDM

3、CSI的相位和幅值

二、CSI指纹定位与RSSI指纹定位

三、各种CSI定位模型分析及比较

四、数据采集及预处理说明

五、未来展望


一、CSI简介

随着WiFi技术的发展,IEEE802.11n系列通信协议及其之后的无线局域网协议应用了多输入多输出(multiple-input  multiple-output,MI-MO)和正交频分复用(Orthogonal Frequency Division Multiplexing,OFDM)等技术,使得WiFi收发设备之间的信道特征可以在物理层进行估计,并以信道状态信息(channel status information,CSI)的形式存储下来。

eae2e11ea7374e938ac90c9ed2e76866.jpeg

1、CSI指纹定位经典模型

由于WiFi信号强度受多径效应和噪声的影响会导致定位精度低和性能不稳定等的问题。与RSSI相比,信道状态信息(channel status information,CSI)能有效避免多径效应给定位结果带来的不良影响,因此,采用CSI的值作为定位的特征值,建立Radio Map的位置指纹数据库,通过加权邻近算法匹配k组最近的指纹库数据估测出定位点位置。离线阶段通常是采集定位区域所有指纹参考点的CSI数据,并提取CSI数据的特征建立Radio Map的位置指纹数据库;在线阶段提取出定位点的CSI特征,利用匹配算法匹配指纹数据库,并找出最相近的一组或几组指纹参考点的CSI数据来估计定位点的位置。

37c94cfd54494a5cbf00c5d3f6109b1d.png

2、MIMOOFDM

正交频分复用OFDM(OrthogonalFrequencyDivisionMultiplexing)是一种无线环境下的高速传输技术。主要是在频域内将所给信道分成许多正交子信道,在每个子信道上使用一个子载波进行调制,且各个子载波并行传输。OFDM特别适合于存在多径传播和多普勒频移的无线移动信道中传输高速数据。能有效对抗多径效应,消除ISI(码间干扰),对抗频率选择性衰落,信道利用率高。

MIMO技术是指能在不增加带宽的情况下,成倍地提高通信系统的容量和频谱利用率。它可以定义为发送端和接收端之间存在多个独立信道,也就是说天线单元之间存在充分的间隔,因此,消除了天线间信号的相关性,提高了信号的链路性能,增加了数据吞吐量。随着 MIMO等技术的应用,商用 WiFi设备上的天线数量越来越多,一般在采集位置点的CSI信息时,就采用三根发射天线与三根接收天线进行数据采集。

afd11f1b9b244458a4882ee09a9cf7cb.png

将MIMO技术与OFDM技术相结合是下一代无线局域网发展的趋势。在OFDM系统中,采用多发射天线实际上就是根据需要在各个子信道上应用多发射天线技术,每个子信道都对应一个多天线子系统、一个多发射天线的OFDM系统。

3、CSI的相位和幅值

每一组CSI代表一个OFDM(Orthogonal Frequency Division Multiplexing,正交频分复用)子载波的幅度和相位。目前大部分基于CSI的无线被动定位方案都只使用CSI的幅值响应信息,忽略了CSI的相位响应信息,因为其原始相位响应信息中含有很大的随机噪声和相位误差。然而,有文献表明,经过校准后的CSI相位对目标位置的变化更为敏感,并已成功应用于设备无关的被动人体运动检测。

二、CSI指纹定位与RSSI指纹定位

CSI反映了OFDM 系统中所有子载波的幅度和相位信息,因此它比多径无线信号叠加值的RSS具有更好的稳定性、更小的多径效应和更细的颗粒度。对CSI而言,RSSI仅仅表征了信道的接收总能量,没有更详细地表征多径等环境特性。相对于传统的RSSI,CSI包含幅值和相位两个维度的信息,利用高维度的CSI信息可构建丰富的指纹库,从而提高指纹匹配的定位精度。在某种程度上来说,CSI和RSSI指纹定位类似,因为在进行位置估计时,都分为离线阶段和在线阶段,而且都需要建立指纹数据库表征位置信息。

三、各种CSI定位模型分析及比较

(1)FIFS系统:Xiao等人,于2012年实现的FIFS系统,首次将CSI数据用于指纹匹配定位,FIFS利用了一次可获取多个CSI测量值及其随时间变化更为稳定等特点,定位精度优于Horus,然而FIFS仅仅使用CSI的幅值特征,且将多个天线上测得的幅值简单平均得到指纹,也未充分利用频率多样性的特点。

(2)LiFS系统低人力、无设备的定位与细粒度子载波信息系统LiFS。基于CSI对目标位置敏感的假设,LiFS 通过将多条无线链路的CSI测量值建模为一组基于功率衰减的方程来确定目标的位置。除了单目标定位外,LiFS还能够区分出两个稀疏位置的目标,并将其精确定位。

(3)Pilot系统:Xiao等人在ICDCS会议上提出了基于CSI的设备无关的被动定位系统Pilot。Pilot系统首先利用RASID模型实现了基于CSI的轻量级被动式人体移动检测,然后基于概率算法实现了异常CSI与指纹数据库的匹配,从而估算出可能的人体位置。

LiFS是一个基于模型的定位系统,Pilot直接利用CSI振幅指纹通过概率算法获得目标估计位置。

(4)MonoPHY系统:采用基于聚类的最大似然算法进行CSI指纹定位。

(5)DeepFi系统与PhaseFi系统:DeepFi是基于深度学习的室内定位方法,此方法从三根天线中学习大量的csi振幅数据,可以更好的提取各个信道的特征。PhaseFi是基于深度学习的校准信道状态信息(csi)相位信息的室内定位指纹系统,此方法从网络接口卡中提取多个天线和多个子载波中的相位信息,可以更好的提取信道中有区别的相位特征。上述两个系统没有将相位与振幅相充分结合起来。

(6)DNNWL与SVRDFL系统:DNNWL和SVRDFL分别使用DNN和SVR(支持向量回归,SVR为SVM的分支)相应地对位置和预处理后的CSI振幅指纹之间的关系进行精细建模。

(7)MSDFL系统:针对目前大多数工作中存在的系统开销大、定位精度随时间急剧下降的问题,一种基于关系迁移的设备无关的被动指纹定位系统 MSDFL应运而生。它通过矩阵相似度算法,将测试样本与指纹数据库样本进行比较,完成基于信道状态信息的振幅信息的分类,最后估计目标位置。

(8)TLLOC系统:针对 MSDFL系统通过指纹变异关系的迁移有可能破坏指纹数据库中数据的可分离性的问题,基于加权可迁移判别维度降低方法的无设备被动指纹定位系统 TLLOC便产生了。TLLOC旨在从指纹数据库和少量指纹变化后的样本中构建一个低维的势空间,可以同时提高训练样本的可分离性,减小指纹数据库和指纹变化后的样本之间的分布差异。

(9)DFPhaseFL系统:DFPhaseFL首先从信道状态信息测量中提取原始相位信息,然后去除相位偏移,得到滤波后的校准相位信息。DFPPhaseFL系统仅利用单一通信链路的相位信息就能达到令人满意的定位精度,同时节省了重新采集指纹数据库的成本。

(10)LTLoc系统:MSDFL、TLLOC和DFPhaseFL系统首先需要训练一个迁移模型来获得新的特征表示,然后在新的特征表示空间中训练定位模型来定位目标,导致训练过程过于繁琐。LTLoc系统仅利用单条通信链路的信道状态信息就能达到令人满意的定位精度,而且可以长期保持,不需要重新获取指纹数据库的成本。

四、数据采集及预处理说明

本文只讲述大致的流程,感兴趣的可以去查阅相关资料。台式机可通过配备Intel5300NIC网卡直接获取每个天线对的信道状态信息,通常包含30个子载波频率,对于典型的3*3天线结构,则每次可得到3*3*30个相位与振幅信息。还可以通过特定的智能手机进行数据采集(系统模型见图1.1),如谷歌Nexus5智能手机。(查阅资料可知,谷歌Nexus5以上版本的手机,比如Nexus6、Nexus6P都支持CSI采集)。当然智能手机携带更为方便,但是智能手机提取的数据值一般噪声较多,比较难处理。所以实验一般使用配备了Intel5300NIC网卡的台式机进行实验,该台式机使用的操作系统为Ubuntu操作系统,连接WiFi后不断发送ping包,测试发送和接收,最后保存生成的.dat文件,该dat文件包括很多有用的信息,其中就包括丰富的相位和幅值信息,但它是以二进制进行保存的,所以还需要对其进行提取,提取后绘制子载波与幅值的对应图(见下图1.2)。

f5a37e5bfb9c43a4b7321fb5eab10367.png

 图1.1 智能手机进行csi指纹定位

013af19d88d34485b23e05a44306c1b8.png

图1.2 幅值提取

成功提取后就需要对其进行预处理,过滤或者剔除掉一些异常值,一般会采用机器学习算法或者滤波算法。卡尔曼滤波算法如下:

4885bdbf7ae043078db7112d0113b65b.png

可以看见卡尔曼滤波算法效果还是比较明显的,当然后面也要用到其它的数据预处理算法来对采集的csi值进行处理。 

4a40c8ff8fed4693801cac8d87988bbc.png

五、未来展望

未来的CSI指纹定位需要采用与设备无关的被动方式进行,不仅要结合振幅和相位,还要考虑结合 CSI的其他扩展信息,如频谱图图像、测距多普勒图像等,实现一种高鲁棒性、轻量级的设备无关的被动定位技术,使基于 WiFi 的设备无关的定位更加便携、更加普及。在多目标移动的情况下,信号特征比单目标情况下更为复杂。有必要对多目标移动下的信号特征变化规律进行分析和研究,以实现轻量级的多目标设备无关的被动定位。当然,还可以考虑融合其它的定位源,比如视觉、PDR、地磁等,达到优势互补的效果。特别是最近一两年,注意力机制慢慢引进CSI指纹定位中,注意力机制是一种计算机科学中的技术,它模拟了人类的注意力和集中力的能力。在计算机科学中,注意力机制可以被用来提取有用的信息,并且将其集中在需要的地方。将注意力机制运用到CSI指纹定位中,可以在信号中寻找有用的信息,并且集中在最有可能的位置,从而提高定位的精度和效率。具体而言,利用注意力机制的CSI指纹定位方法可以对WiFi信号中的CSI信息进行筛选和加权,从而找出对定位最有帮助的信息。这样可以提高定位的准确性和可靠性,并且可以减少不必要的计算和通信,从而提高系统的效率和稳定性。

如对CSI指纹定位感兴趣,推荐阅读:

CSI指纹预处理(中值、均值、Hampel、小波滤波)_数产小黑娃的博客-CSDN博客因为设备、温度和实验室物品摆设等因素的影响,未经处理的CSI数据不能直接使用,需要对数据进行异常值处理以保证数据的稳定性,同时减少环境中人的活动、突发性干扰对CSI的影响,下面将简单探讨MATLAB自带的几种滤波器对CSI幅值数据的处理,一些升级版的滤波程序由你们自主思考。https://blog.csdn.net/qq_53860947/article/details/130467451CSI数据预处理之卡尔曼滤波、高斯滤波、简单平均_rssi高斯滤波_数产小黑娃的博客-CSDN博客卡尔曼滤波(Kalman filtering)是一种利用线性系统状态方程,通过系统输入输出观测数据,对系统状态进行最优估计的算法。由于观测数据中包括系统中的噪声和干扰的影响,所以最优估计也可看作是滤波过程。卡尔曼滤波算法在估计值和观测值之间做了一个修正。........................https://blog.csdn.net/qq_53860947/article/details/126175335CSI室内指纹定位——CSI数据说明_csi数据集_数产小黑娃的博客-CSDN博客我们通过修改NIC的设备驱动程序,来读取每个数据包接收时以CSI的形式记录在硬件中的CSI值,并生成包含CSI信息的dat文件。,也就是对应的幅度和相位。当然angle函数获得的相位是带误差的相位,需要解卷绕+线性变换才能获取到真实的相位。csi的值是一个n*m*30的复数矩阵,n表示发射天线的个数,m表示接收天线的个数,30是子载波个数。2、使用MATLAB解析dat文件,显示1615*1个元胞数组,这些原胞数组包含了1615个1*1的结构体,每个结构体表示一个数据包的所有信息,包括信道状态信息元。https://blog.csdn.net/qq_53860947/article/details/126449801

猜你喜欢

转载自blog.csdn.net/qq_53860947/article/details/126180830