文献阅读 FarSense: CSI Ratio(关于CSI商的解析)

2023-10-24 07:20

本文主要是介绍文献阅读 FarSense: CSI Ratio(关于CSI商的解析),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

原始CSI模型

  信道状态信息 (CSI) 是来自所有路径的信号的叠加。在数学上,CSI 可以表示为:
H ( f , t ) = ∑ i = 1 L A i e − j 2 π d i ( t ) λ H(f, t)=\sum_{i=1}^{L} A_{i} e^{-j 2 \pi \frac{d_{i}(t)}{\lambda}} H(f,t)=i=1LAiej2πλdi(t)
  根据[1],路径可以分为静态路径和动态路径。不失一般性,假设只有一条由人体反射的动态路径,而静态分量是由环境中静态物体的视距传播和其他反射路径组成。因此,CSI 可以重写为:
H ( f , t ) = H s ( f , t ) + H d ( f , t ) = H s ( f , t ) + A ( f , t ) e − j 2 π d ( t ) λ H(f, t)=H_{s}(f, t)+H_{d}(f, t)=H_{s}(f, t)+A(f, t) e^{-j 2 \pi \frac{d(t)}{\lambda}} H(f,t)=Hs(f,t)+Hd(f,t)=Hs(f,t)+A(f,t)ej2πλd(t)
  其中 H s ( f , t ) H_{s}(f, t) Hs(f,t) 是静态分量, A ( f , t ) , e − j 2 π d ( t ) λ A(f, t), e^{-j 2 \pi \frac{d(t)}{\lambda}} A(f,t),ej2πλd(t) d ( t ) d(t) d(t)分别是信号幅度,信号相位和动态路径的长度变化。
在这里插入图片描述

  当人体目标移动短距离时,动态分量 A ( f , t ) A(f, t) A(f,t)的信号幅度可以认为是一个常数。这是因为信号幅度是由路径长度决定的(信号幅度与动态路径的长度成反比)。理想情况下,当 d ( t ) d(t) d(t)长度增加一个波长, CSI ( H ( f , t ) (H(f, t) (H(f,t)) 顺时针旋转 2 π 2 \pi 2π,如图1所示。
  但对于商品 WiFi 设备,由于发送器和接收器不是时间同步的,因此每个 CSI 样本中都有一个随时间变化的随机相位偏移 e − j θ offset  e^{-j \theta_{\text {offset } }} ejθoffset ,如下所示:
H ( f , t ) = e − j θ o f f s e t ( H s ( f , t ) + A ( f , t ) e − j 2 π d ( t ) λ ) H(f, t)=e^{-j \theta_{o f f s e t}}\left(H_{s}(f, t)+A(f, t) e^{-j 2 \pi \frac{d(t)}{\lambda}}\right) H(f,t)=ejθoffset(Hs(f,t)+A(f,t)ej2πλd(t))
  有了这个随机相位偏移,复平面中运动引起的 CSI 变化不再是一个圆,此时CSI如图2所示:
在这里插入图片描述

关于scaling、rotation和translation的定义

scaling ( H ( f , t ) ↦ α H ( f , t ) , α ∈ R ) (H(f, t) \mapsto \alpha H(f, t), \alpha \in \mathbb{R}) (H(f,t)αH(f,t),αR),
rotation ( H ( f , t ) ↦ e i θ H ( f , t ) , θ ∈ R ) \left(H(f, t) \mapsto e^{i \theta} H(f, t), \theta \in \mathbb{R}\right) (H(f,t)eiθH(f,t),θR)
translation ( H ( f , t ) ↦ H ( f , t ) + β , β ∈ C ) (H(f, t) \mapsto H(f, t)+\beta, \beta \in \mathbb{C}) (H(f,t)H(f,t)+β,βC)

  当对 H ( f , t ) H(f, t) H(f,t) 进行scaling、rotation、 translation时,不会改变 H ( f , t ) H(f, t) H(f,t)的几何形状和旋转方向 ,如图3所示:
在这里插入图片描述

CSI商模型

  首先明确两个点:

①对于商品 WiFi 卡,例如广泛使用的 Intel 5300,Wi-Fi 卡上不同天线的时变相位偏移相同,因为它们共享相同的 RF 振荡器 [2, 3]。

②当目标移动短距离(几厘米)时,两个附近天线处的两个反射路径长度之差 d 2 ( t ) − d 1 ( t ) d_{2}(t)-d_{1}(t) d2(t)d1(t) 可以被认为是一个常数 Δ d \Delta d Δd [4]。

  对第一根天线和第二根天线的CSI做比值得到CSI商:
H 1 ( f , t ) H 2 ( f , t ) = e − j θ o f f s e t ( H s , 1 + A 1 e − j 2 π d 1 ( t ) λ ) e − j θ o f f s e t ( H s , 2 + A 2 e − j 2 π d 2 ( t ) λ ) = A 1 e − j 2 π d 1 ( t ) λ + H s , 1 A 2 e − j 2 π d 1 ( t ) + Δ d λ + H s , 2 = A 1 e − j 2 π d 1 ( t ) λ + H s , 1 A 2 e − j 2 π Δ d λ e − j 2 π d 1 ( t ) λ + H s , 2 \begin{aligned} \frac{H_{1}(f, t)}{H_{2}(f, t)} &=\frac{e^{-j \theta_{o f f s e t}}\left(H_{s, 1}+A_{1} e^{-j 2 \pi \frac{d_{1}(t)}{\lambda}}\right)}{e^{-j \theta_{o f f s e t}}\left(H_{s, 2}+A_{2} e^{-j 2 \pi \frac{d_{2}(t)}{\lambda}}\right)} \\ &=\frac{A_{1} e^{-j 2 \pi \frac{d_{1}(t)}{\lambda}}+H_{s, 1}}{A_{2} e^{-j 2 \pi \frac{d_{1}(t)+\Delta d}{\lambda}}+H_{s, 2}} \\ &=\frac{A_{1} e^{-j 2 \pi \frac{d_{1}(t)}{\lambda}}+H_{s, 1}}{A_{2} e^{-j 2 \pi \frac{\Delta d}{\lambda}} e^{-j 2 \pi \frac{d_{1}(t)}{\lambda}}+H_{s, 2}} \end{aligned} H2(f,t)H1(f,t)=ejθoffset(Hs,2+A2ej2πλd2(t))ejθoffset(Hs,1+A1ej2πλd1(t))=A2ej2πλd1(t)+Δd+Hs,2A1ej2πλd1(t)+Hs,1=A2ej2πλΔdej2πλd1(t)+Hs,2A1ej2πλd1(t)+Hs,1
  其中, H 1 ( f , t ) H_{1}(f, t) H1(f,t) 是第一根天线的 CSI, H 2 ( f , t ) H_{2}(f, t) H2(f,t) 是第二根天线的 CSI。为了简化方程以便于说明,我们以下表述: A 1 = A , H s , 1 = B A_{1}=\mathcal{A}, H_{s, 1}=\mathcal{B} A1=A,Hs,1=B, A 2 e − j 2 π Δ d λ = C A_{2} e^{-j 2 \pi \frac{\Delta d}{\lambda}}=C A2ej2πλΔd=C and H s , 2 = D H_{s, 2}=\mathcal{D} Hs,2=D ;

  其中, e − j 2 π d 1 ( t ) λ = Z e^{-j 2 \pi \frac{d_{1}(t)}{\lambda}}=Z ej2πλd1(t)=Z 表示当 d 1 ( t ) d_{1}(t) d1(t)增加时,顺时针旋转的单位圆 ,然后我们可以简化方程式:
H 1 ( f , t ) H 2 ( f , t ) = A Z + B C Z + D \frac{H_{1}(f, t)}{H_{2}(f, t)}=\frac{\mathcal{A Z}+\mathcal{B}}{C Z+\mathcal{D}} H2(f,t)H1(f,t)=CZ+DAZ+B
  这正是 Mobius 变换[5]的形式,前提是 B C − A D ≠ 0 \mathcal{B} C-\mathcal{A} \mathcal{D} \neq 0 BCAD=0。我们进一步将其分解为以下形式:
H 1 ( f , t ) H 2 ( f , t ) = B C − A D C 2 ⋅ 1 Z + D C + A C \frac{H_{1}(f, t)}{H_{2}(f, t)}=\frac{\mathcal{B C}-\mathcal{A} \mathcal{D}}{C^{2}} \cdot \frac{1}{Z+\frac{\mathcal{D}}{C}}+\frac{\mathcal{A}}{C} H2(f,t)H1(f,t)=C2BCADZ+CD1+CA
  因此,方程式中的映射由以下变换组成[6]:

(i) Z ↦ Z + D C Z \mapsto \mathcal{Z}+\frac{\mathcal{D}}{\mathcal{C}} ZZ+CD, 是加 D C \frac{\mathcal{D}}{\mathcal{C}} CD的translation
(ii) Z ↦ 1 Z Z \mapsto \frac{1}{Z} ZZ1, 是复数反演(复数的倒数)
(iii) Z ↦ B C − A D C 2 Z \mathcal{Z} \mapsto \frac{\mathcal{B C}-\mathcal{A D}}{C^{2}} \mathcal{Z} ZC2BCADZ, 是与复数 B C − A D C 2 \frac{\mathcal{B C}-\mathcal{A D}}{C^{2}} C2BCAD的相乘
(iv) Z ↦ Z + A C \mathcal{Z} \mapsto \mathcal{Z}+\frac{\mathcal{A}}{C} ZZ+CA, 是加 A C \frac{\mathcal{A}}{\mathcal{C}} CA的translation

  在操作(iii)中的scaling和rotation ,操作(i)和(iv) 中的translation不会改变 H ( f , t ) H(f, t) H(f,t)的几何形状和旋转方向。因此,重点分析操作(ii)示,即复数反演运算 ( Z ↦ 1 Z ) \left(Z \mapsto \frac{1}{Z}\right) (ZZ1)是理解 CSI 商(莫比乌斯变换)效果的关键。

在这里插入图片描述

  在数学上,复数 z = r e i θ z=r e^{i \theta} z=reiθ的反演(倒数)为 1 r e − i θ \frac{1}{r} e^{-i \theta} r1eiθ :新模长是原模长的倒数,新相位与原相位相反。图4展示了如何将单位圆外的一点 z z z映射到单位圆内的点 1 z \frac{1}{z} z1 。(1)将 z = r e i θ z=r e^{i \theta} z=reiθ移动到与 z z z方向相同但新模长是原模长的倒数的点 1 r e i θ \frac{1}{r} e^{i \theta} r1eiθ (2)应用共轭运算(即相对于实轴对称)到点 1 r e − i θ \frac{1}{r} e^{-i \theta} r1eiθ
在这里插入图片描述

在这里插入图片描述

  接下来,我们研究复数反演(记为 Z ~ \tilde{\mathcal{Z}} Z~)对顺时针圆 Z \mathcal{Z} Z的影响,如图 6和图7所示。复数反演不会改变 Z \mathcal{Z} Z 的形状[6] 。但是,它可能会改变 Z \mathcal{Z} Z 的旋转方向。 Z ~ \tilde{\mathcal{Z}} Z~是否与 Z \mathcal{Z} Z方向相同取决于原点 (0, 0) 是否在 Z \mathcal{Z} Z内部。 如图6所示,如果 (0, 0) 不在 Z \mathcal{Z} Z内,则 Z ~ \tilde{\mathcal{Z}} Z~ Z \mathcal{Z} Z具有相同的旋转方向。 如图7所示,如果 (0, 0) 在 Z \mathcal{Z} Z内,则 Z ~ \tilde{\mathcal{Z}} Z~ Z \mathcal{Z} Z具有相反的旋转方向。

  将复数反演应用到 Z + D C \mathcal{Z}+\frac{\mathcal{D}}{C} Z+CD,其中 Z = e − j 2 π d 1 ( t ) λ Z=e^{-j 2 \pi \frac{d_{1}(t)}{\lambda}} Z=ej2πλd1(t)表示单位圆, D C \frac{\mathcal{D}}{\mathcal{C}} CD是translation。因此,如果 ∣ D C ∣ = ∣ H s , 2 A 2 ∣ > 1 \left|\frac{\mathcal{D}}{C}\right|=\left|\frac{H_{s, 2}}{A_{2}}\right|>1 CD = A2Hs,2 >1(当静态成分大于动态成分时,此式一定成立), Z + D C \mathcal{Z}+\frac{\mathcal{D}}{C} Z+CD则不包含(0,0),所以 1 Z + D C \frac{1}{Z+\frac{D}{C}} Z+CD1 Z + D C \mathcal{Z}+\frac{\mathcal{D}}{C} Z+CD 具有相同的旋转方向。

  由于scaling, rotation and translation 不会改变旋转方向,因此CSI商 H 1 ( f , t ) H 2 ( f , t ) = B C − A D C 2 ⋅ 1 Z + D C + A C \frac{H_{1}(f, t)}{H_{2}(f, t)}=\frac{\mathcal{B C}-\mathcal{A D}}{C^{2}} \cdot \frac{1}{Z+\frac{\mathcal{D}}{C}}+\frac{\mathcal{A}}{C} H2(f,t)H1(f,t)=C2BCADZ+CD1+CA具有与 1 Z + D C \frac{1}{Z+\frac{D}{C}} Z+CD1和( Z + D C \mathcal{Z}+\frac{\mathcal{D}}{C} Z+CD )相同的旋转方向。

总而言之:

  • 当 LoS 路径信号未被遮挡时,CSI 商具有与 Z + D C \mathcal{Z}+\frac{\mathcal{D}}{C} Z+CD 相同的旋转方向,即动态路径长度增大,CSI商顺时针旋转
  • 当 LoS 路径信号被物体衰减时,CSI 商具有与 Z + D C \mathcal{Z}+\frac{\mathcal{D}}{C} Z+CD 相反的旋转方向,即动态路径长度增大,CSI商逆时针旋转

参考文献

[1] Understanding and modeling of wifi signal based human activity recognition
[2] Spotfi: Decimeter level localization using wifi
[3] Dynamic-music: accurate device-free indoor localization
[4] FullBreathe: Full Human Respiration Detection Exploiting Complementarity of CSI Phase and Amplitude of WiFi Signals
[5] Geometry of complex numbers: circle geometry, Moebius transformation, non-euclidean geometry
[6] Visual complex analysis

这篇关于文献阅读 FarSense: CSI Ratio(关于CSI商的解析)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/273602

相关文章

Python 中的异步与同步深度解析(实践记录)

《Python中的异步与同步深度解析(实践记录)》在Python编程世界里,异步和同步的概念是理解程序执行流程和性能优化的关键,这篇文章将带你深入了解它们的差异,以及阻塞和非阻塞的特性,同时通过实际... 目录python中的异步与同步:深度解析与实践异步与同步的定义异步同步阻塞与非阻塞的概念阻塞非阻塞同步

Redis中高并发读写性能的深度解析与优化

《Redis中高并发读写性能的深度解析与优化》Redis作为一款高性能的内存数据库,广泛应用于缓存、消息队列、实时统计等场景,本文将深入探讨Redis的读写并发能力,感兴趣的小伙伴可以了解下... 目录引言一、Redis 并发能力概述1.1 Redis 的读写性能1.2 影响 Redis 并发能力的因素二、

Spring MVC使用视图解析的问题解读

《SpringMVC使用视图解析的问题解读》:本文主要介绍SpringMVC使用视图解析的问题解读,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Spring MVC使用视图解析1. 会使用视图解析的情况2. 不会使用视图解析的情况总结Spring MVC使用视图

利用Python和C++解析gltf文件的示例详解

《利用Python和C++解析gltf文件的示例详解》gltf,全称是GLTransmissionFormat,是一种开放的3D文件格式,Python和C++是两个非常强大的工具,下面我们就来看看如何... 目录什么是gltf文件选择语言的原因安装必要的库解析gltf文件的步骤1. 读取gltf文件2. 提

Java中的runnable 和 callable 区别解析

《Java中的runnable和callable区别解析》Runnable接口用于定义不需要返回结果的任务,而Callable接口可以返回结果并抛出异常,通常与Future结合使用,Runnab... 目录1. Runnable接口1.1 Runnable的定义1.2 Runnable的特点1.3 使用Ru

使用EasyExcel实现简单的Excel表格解析操作

《使用EasyExcel实现简单的Excel表格解析操作》:本文主要介绍如何使用EasyExcel完成简单的表格解析操作,同时实现了大量数据情况下数据的分次批量入库,并记录每条数据入库的状态,感兴... 目录前言固定模板及表数据格式的解析实现Excel模板内容对应的实体类实现AnalysisEventLis

Java的volatile和sychronized底层实现原理解析

《Java的volatile和sychronized底层实现原理解析》文章详细介绍了Java中的synchronized和volatile关键字的底层实现原理,包括字节码层面、JVM层面的实现细节,以... 目录1. 概览2. Synchronized2.1 字节码层面2.2 JVM层面2.2.1 ente

Redis 内存淘汰策略深度解析(最新推荐)

《Redis内存淘汰策略深度解析(最新推荐)》本文详细探讨了Redis的内存淘汰策略、实现原理、适用场景及最佳实践,介绍了八种内存淘汰策略,包括noeviction、LRU、LFU、TTL、Rand... 目录一、 内存淘汰策略概述二、内存淘汰策略详解2.1 ​noeviction(不淘汰)​2.2 ​LR

IDEA与JDK、Maven安装配置完整步骤解析

《IDEA与JDK、Maven安装配置完整步骤解析》:本文主要介绍如何安装和配置IDE(IntelliJIDEA),包括IDE的安装步骤、JDK的下载与配置、Maven的安装与配置,以及如何在I... 目录1. IDE安装步骤2.配置操作步骤3. JDK配置下载JDK配置JDK环境变量4. Maven配置下

Python中配置文件的全面解析与使用

《Python中配置文件的全面解析与使用》在Python开发中,配置文件扮演着举足轻重的角色,它们允许开发者在不修改代码的情况下调整应用程序的行为,下面我们就来看看常见Python配置文件格式的使用吧... 目录一、INI配置文件二、YAML配置文件三、jsON配置文件四、TOML配置文件五、XML配置文件