APP下载

基于标记LED的单灯室内定位系统设计

2022-10-19王童瑶肖纯贤林作俊

光通信研究 2022年5期
关键词:接收端航向坐标系

王童瑶,肖纯贤,林作俊,程 涵

(1.南开大学 电子信息与光学工程学院,天津 300100;2. 天津市光电传感器与传感网络技术重点实验室,天津 300350)

0 引 言

随着发光二极管(Light Emitting Diode, LED)应用的不断普及,可见光通信(Visible Light Communication, VLC)的研究和应用也越来越广泛,其中就包括比较热门的室内定位[1]。传统的室内定位技术有红外线、蓝牙、WiFi、射频和超宽带等[2],但其定位精度低,需要铺设专门的设备,容易受到环境的影响。而可见光的波长范围在380~750 nm之间[3],具有较大的带宽,不需要申请频段使用执照,并且LED具有节能环保、寿命长、安全性高、响应时间短和调制速度快等优点[4-7]。这使得可见光定位(Visible Light Positioning, VLP)技术相较于以上定位技术来说具有定位精度高、成本低、对人体无害且适用性强等优势。

VLP技术一般使用光电二极管(Photo Diode, PD)或图像传感器(Image Sensor, IS)作为接收器。对于大多数基于IS的VLP的系统来说[8-10],IS需要同时捕获至少3个LED灯才能确定接收器的位置。或使用惯性测量单元(Inertial Measurement Unit, IMU)和磁力计获取接收器的姿态信息,以减少LED灯数量的限制[6]。但是磁力计对环境内部的磁干扰比较敏感,无法为实际环境的室内定位提供可靠的角度信息。针对这一问题,本文研究了基于IS的单灯室内定位系统,提出了一种使用标记的LED灯来改进航向角的方法,在闪烁的圆形LED灯内部安装一个不闪烁的灯珠作为发送端,智能手机作为接收端,对捕获的亮暗条纹图像进行处理,利用投影的几何特征以及IMU获取的角度信息,使用改进航向角算法进行航向角的计算,进一步实现定位。最后,本文通过实验验证了该方案可以有效提高航向角的准确性,实现了更高精度的定位。

1 系统模型

本文研究的单灯室内定位系统结构分为两部分:发送端和接收端,如图1所示,图中,OW-XWYWZW为世界坐标系。

图1 单灯室内定位系统框架图Figure 1 Frame diagram of single lamp indoor positioning system

1.1 发送端

在定位系统中,安装在天花板上的标记LED灯(圆形LED灯由一圈闪烁的灯珠组成,灯内安装有一个不闪烁的灯珠作为标记,如图1所示)作为发送端,发送端的结构如图2所示。首先使用计算机将LED灯的身份(Identity Document, ID)信息编码在现场可编程门阵列(Field Programmable Gate Array, FPGA)板的只读存储器(Read-Only Memory, ROM)中。每个LED灯的ID信息包含该LED灯及其内部标记灯珠在世界坐标系OW-XWYWZW中的坐标和LED灯的半径,而且所有LED灯的ID信息均存储在数据库中。接着,FPGA控制模块从ROM中读取数据,通过驱动电路控制LED的开关状态,从而将ID信息加载到LED灯上,使LED光源按照信号编码的方式闪烁,并向外界重复广播其ID。

图2 发送端结构图Figure 2 Transmitter structure diagram

1.2 接收端

在定位系统中,智能手机作为接收端,其处理流程图如图3所示。首先,智能手机通过摄像头捕获包含LED-ID信息的条纹图像,并通过手机内部的IMU获取除了航向角之外所需要的角度信息。然后,通过图像处理算法(灰度化、二值化和开闭运算等)对LED灯的投影(包含灯珠投影)进行处理,对其解码获取所拍摄LED光源的ID信息,并查询数据库获得LED灯以及标记灯珠的世界坐标。同时利用最小二乘法对二值化之后的条纹图像进行拟合,得到LED灯投影的椭圆拟合方程,从而获取LED灯投影的质心和标记灯珠在智能手机成像平面上的像素坐标。最后再通过改进航向角算法和定位算法,得到接收端在世界坐标系中的位置,从而实现对接收端的定位。

图3 接收端处理流程图Figure 3 Receiver processing flow chart

2 定位系统工作原理

在定位系统中,智能手机捕获条纹图像后通过解码ID信息和查询数据库便可得到LED灯及标记灯珠在世界坐标系中的坐标,分别记为SW和HW。 图4所示为智能手机成像平面的示意图。图中,OCAB为智能手机的成像平面,S′为LED灯投影的质心,H′为标记灯珠在成像平面的投影,OC为智能手机的相机焦点。θ1和θ2分别为成像平面的边OB、OC与水平面之间的夹角,可以通过IMU测量的OB、OC方向上的加速度和重力加速度这3个参数求得。MN为成像平面与水平面的交线,且MN过拟合椭圆的圆心S′,E′F′为交线MN与拟合椭圆的交线。φ1和φ2分别为MN与OB和OC的夹角。S″和H″为OCS′和OCH′的延长线与高度为h的水平面的交点。

图4 智能手机成像平面示意图Figure 4 Imaging plane schematic diagram

2.1 改进航向角算法

式中,f为智能手机的相机焦距。

智能手机通过对捕获的条纹图像进行图像处理,可以获取S′和H′在成像平面上的像素坐标,记为(uS,vS)和(uH,vH)。根据其像素坐标和B、C的坐标,可以求得S′和H′在坐标系O-XYZ中的坐标。此时,OC、S′、H′的坐标都已知,令S″和H″分别为OCS′和OCH′的延长线与高度为h的水平面的交点,则S″和H″的坐标为

2.2 定位算法

本文中的定位算法涉及到3个坐标系:相机坐标系、世界坐标系以及成像平面中的像素坐标系。若点P位于3个坐标系中,则相机坐标系中的坐标PC(XC,YC,ZC)与像素坐标系中的坐标p(u,v)和世界坐标系中的坐标PW(XW,YW,ZW)之间的转换关系为

式中:fx为相机焦距与像素点大小之比;(u0,v0)为成像平面中心点的像素坐标;ZC为点P在相机坐标系中的Z轴坐标;R为旋转矩阵;T为平移矩阵。旋转矩阵R中包括智能手机姿态信息中的俯仰角、翻滚角和航向角,其中翻滚角、俯仰角通过IMU获取,航向角通过上一节中的改进航向角算法获取。

通过观察可知,式(4)中只有ZC和T为未知量。已知LED灯圆心S的世界坐标SW,只要求出点S在相机坐标系中的坐标SC,根据式(4)就可以得到平移矩阵T。而SC可以通过ZC求得,所以式(4)相当于只有一个未知量:点S在相机坐标系中的Z轴坐标ZC。

图5所示为在相机坐标系下定位算法的原理图。EF为LED灯的一条直径,E′F′为直径EF在成像平面上的投影。当EF‖E′F′时,可以得到ΔOCEF~ΔOCE′F′。因此,LED灯的圆心S的ZC坐标可以写为

图5 在相机坐标系下定位算法原理图Figure 5 Schematic diagram of location algorithm

由于直径EF在成像平面上的准确投影并不容易求得,可以使用成像平面中的拟合椭圆与水平面的交线来近似代替真实的直径投影。

如图4所示,MN为成像平面与水平面的交线,且MN过拟合椭圆的圆心S′,E′F′为交线MN与拟合椭圆的交线。MN与OC、OB的夹角记为φ1、φ2,由图可知:

而且由图还可知,φ1和φ2互余。因此,根据式(6)可以求出φ1和φ2。

根据夹角φ1和φ2以及拟合椭圆的方程,可以求得E′F′的长度,代入式(5)便可得到ZC,从而得到LED灯圆心在相机坐标系中的坐标SC。将SC和世界坐标系中的坐标SW代入式(4)便可求得平移矩阵T。最后,将智能手机在相机坐标系中的坐标(0,0,0)代入式(4),就可得到智能手机在世界坐标系中的坐标,从而实现对智能手机的定位。

3 实验结果和分析

为了验证定位系统的有效性,本文进行了实验。如图1所示,在天花板上安装一个直径为17.5 cm的圆形LED灯作为发送端,内部装有一个不闪烁的灯珠作为标记。LED灯的额定功率为4.5 W,并以4 kHz的频率重复发送其ID信息。接收端采用型号为魅族M1的智能手机,使用其前置摄像头捕获条纹图像,设置曝光频率为5 kHz,并利用IMU获取除了航向角之外的角度信息。

整个水平实验区域为3.6 m×1.8 m,实验选取1.75和1.45 m两种不同的高度。在每个高度上将水平区域划分为45 cm×45 cm的网格,选取45个网格顶点作为测试点,通过改变智能手机的姿态,对每个点进行6次定位测试。

图6所示为使用本文所提改进航向角算法进行定位时各点的平均三维定位误差。当实验高度为1.75 m时,最大和最小误差分别为13.9和3.3 cm;当实验高度为1.45 m时,最大和最小误差分别为12.9和3.1 cm。实验结果表明,该系统实现了较高的定位精度。

图6 两种实验高度下的三维定位误差分布图Figure 6 Three-dimensional positioning error distribution map under two experimental heights

此外,我们还比较了另外一种使用磁力计获取航向角进行定位的方法。在使用磁力计获取航向角的实验中,全部实验都在普通的室内环境中进行,并使用智能手机内部自带的磁力计(电子罗盘)获取航向角,没有经过额外处理。同时,为了更接近实际场景(即实际场景中磁力计可能会受到周围电子设备磁场的干扰),本文在多个不同时间段内都进行了实验,尽量减少在某一场景下的偶然误差。图7所示为两种不同航向角获取方法在两个实验高度上的三维定位误差累积分布函数(Cumulative Distribution Function, CDF)。当实验高度分别为1.75和1.45 m时,利用本文提出的改进航向角算法获取航向角进行定位,90%的定位误差分别小于12.5和12.2 cm,平均定位误差分别为6.9和6.5 cm;利用磁力计获取航向角进行定位,90%的定位误差分别小于20.3和18.1 cm,平均定位误差分别为11.4和10.5 cm。通过对比可以明显地看出,本文所提改进航向角算法能够有效解决磁力计不能提供可靠航向角信息的问题,改善了39%的平均定位误差,大大提升了定位精度。

图7 两种航向角下三维定位误差累积分布函数Figure 7 Cumulative distribution function of three-dimensional positioning error under two heading angles

4 结束语

传统的单灯室内定位系统中,接收端使用磁力计获取的航向角不准确。针对这一问题,本文提出了一种基于标记LED的单灯室内定位系统。该系统使用带有标记灯珠的LED作为发送端,使用改进航向角算法来获取航向角,并且最终通过实验验证了该算法的可行性和有效性。在实验高度分别为1.75和1.45 m时,该方案的平均三维定位误差分别为6.9和6.5 cm。相较于使用磁力计获取的航向角,该方案改善了39%的平均定位误差,实现了更高的定位精度。

猜你喜欢

接收端航向坐标系
风浪干扰条件下舰船航向保持非线性控制系统
独立坐标系椭球变换与坐标换算
基于扰动观察法的光通信接收端优化策略
知坐标,明航向
纯多播BC 信道并存单播MAC 信道的天线效率研究
手机无线充电收发设计
考虑几何限制的航向道模式设计
坐标系背后的故事
三角函数的坐标系模型
求坐标系内三角形的面积