基于相机通信与图像定位技术的室内定位系统及方法与流程

文档序号:12444557阅读:349来源:国知局
基于相机通信与图像定位技术的室内定位系统及方法与流程

本发明涉及定位技术领域,更具体地,涉及一种基于相机通信与图像定位技术的室内定位系统及方法。



背景技术:

目前,定位技术发展十分迅速,应用非常广泛,常用的定位方法主要包括GPS定位技术、RFID室内定位技术和Wi-Fi定位技术。

其中,利用GPS定位卫星,在全球范围内实时进行定位、导航的系统,称为全球卫星定位系统,简称GPS。GPS是由美国国防部研制建立的一种具有全方位、全天候、全时段、高精度的卫星导航系统,能为全球用户提供低成本、高精度的三维位置、速度和精确定时等导航信息,是卫星通信技术在导航领域的应用典范,它极大地提高了地球社会的信息化水平,有力地推动了数字经济的发展。但是,GPS信号的穿墙能力很弱,因此室内环境中,GPS信号十分微弱而很难进行定位,故GPS技术并不适用于进行室内定位。

其中,RFID室内定位系统通常由电子标签、射频读写器、中间件以及计算机数据库组成。射频标签和读写器是通过由天线架起的空间电磁波的传输通道进行数据交换的。在定位系统应用中,将射频读写器放置在待测移动物体上,射频电子标签嵌入到操作环境中。电子标签上存储有位置识别的信息,读写器则通过有线或无线形式连接到信息数据库。

射频识别室内定位技术作用距离很近,但它可以在几毫秒内得到厘米级定位精度的信息,且由于电磁场非视距等优点,传输范围很大,而且标识的体积比较小,造价比较低。但其不具有通信能力,抗干扰能力较差,不便于整合到其他系统之中,且用户的安全隐私保障和国际标准化都不够完善。

其中,Wi-Fi定位技术有两种,一种是通过移动设备和三个无线网络接入点的无线信号强度,通过差分算法,来比较精准地对人和车辆的进行三角定位。另一种是事先记录巨量的确定位置点的信号强度,通过用新加入的设备的信号强度对比拥有巨量数据的数据库,来确定位置(“指纹”定位)。Wi-Fi定位技术用于室内定位总体精度不高,只有2米,且需要大量铺设网络接入点,成本较高。



技术实现要素:

本发明提供一种克服上述问题或者至少部分地解决上述问题的基于相机通信与图像定位技术的室内定位系统及方法。

根据本发明的一个方面,提供基于相机通信与图像定位技术的室内定位系统,包括发射端和接收端,

所述发射端,用于将发射端所在位置信息以编码调制后的光信号向所在空间发射;

所述接收端,用于接收所述光信号,对所述光信号进行解码解调后,进行图像定位计算获取位置信息。

根据本发明的另一个方面,提供基于相机通信与图像定位技术的室内定位方法,包括:

S1,接收带有位置编码信息并且经过调制的光信号,生成图像信息;

S2,从所述图像信息中提取接收端距离光源的垂直距离、光源的位置信息和光信号强度,获取接收端距离光源的水平距离;

S3,根据图像信息中两个光源的位置信息和接收端偏离光源的水平距离进行坐标定位和坐标筛选,以定位接收端的位置坐标

本申请提出的基于相机通信与图像定位技术的室内定位系统及方法,为解决现有的室内定位系统硬件成本高、不支持高速移动、定位精度低等问题而设计,具有绿色环保、天然高密度覆盖、信号易实现空间分离等优点。

附图说明

图1本发明所述BP神经网络模型示意图;

图2为本发明基于相机通信与图像定位技术的室内定位系统示意图;

图3为本发明所述系统第一实施例示意图;

图4为本发明所述系统第二实施例示意图;

图5为本发明所述UPSOOK调制方法波形示意图;

图6为本发明所述高度测量原理示意图;

图7为本发明所述坐标定位原理示意图;

图8为本发明所述坐标筛选原理接收端坐标正常示时与LED灯的位置意图;

图9为本发明所述坐标筛选原理接收端发生角度旋转时与LED灯的位置示意图;

图10为本发明基于相机通信与图像定位技术的室内定位方法流程图。

具体实施方式

下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。

本发明实施需要借助BP神经网络模型,BP神经网络的基本原理和算法流程如下:

BP(Back Propagation)神经网络,全称为误差反向传播的多层前向神经网络,是目前应用最广泛的神经网络模型之一,其可以用作分类、聚类和预测等,通过历史数据的训练,网络可以学习到数据中隐含的知识。BP神经网络的主要特点是信号前向传递,误差反向传播;通常由输入层、隐含层和输出层组成,层与层之间全互连,每层节点之间不相连。在正向传播过程中,信息从输入层节点经隐含层逐层计算传向输出层,每层神经元的状态只影响下一层神经元的状态。如果在输出层没有得到期望的值,则计算输出层的误差,然后反向传播,通过网络将误差信号按原来的连接通路反向传回去修改其参数直至达到期望目标。理论证明,三层的BP神经网络,只要隐含层节点数足够多,就具有模拟任何复杂的非线性映射能力。结合本系统的实际需求具体的三层BP神经网络结构如图1所示。

上图中,X1X2…X5是BP神经网络的五维输入值,Output是BP神经网络的预测输出,ωij和ωjk是BP神经网络的权值。从图1中可以看出,BP神经网络可以看成一个非线性函数,网络输入值和预测值分别为该函数的自变量和因变量。当输入节点数为5,输出节点数为1时,BP神经网络就表达了从5个自变量到1个因变量的函数映射关系。

BP神经网络预测前首先要训练网络,通过训练使得网络具有联想记忆和预测能力。BP神经网络的训练过程包括以下几个步骤。

步骤1:网络初始化。根据系统的输入输出序列(X,Y)确定网络的结构。包括输入/出层和隐含层的节点数(n,m,l),输入层、隐含层和输出神经元之间的连接权值ωij、ωjk,以及隐含层阈值a、输出层阈值b的初始化,给定学习速率和神经元激励函数。

步骤2:隐含层输出计算。根据输入向量X,输出层和隐含层之间的连接权值ωij以及隐含层阈值,计算隐含层输出H。

式(1)中,f为隐含层激励函数。本发明选取了对数S形转移激活函数:

步骤3:输出层输出计算。根据隐含层输出H,连接权值ωjk和阈值b,计算BP神经网络的预测输出O。

步骤4:误差计算。根据网络预测输出O和期望输出Y计算网络预测误差e。

ek=Yk-Ok k=1,2,…,m (4)

步骤5:权值更新。根据网络的预值误差e更新网络连接权值ωij、ωjk

ωjk=ωjk+γHjek j=1,2,…,l;k=1,2,…,m (6)

式中,γ为隐含层激励函数。

步骤6:阈值更新。根据网络的预值误差e更新网络节点阈值a、b。

bk=bk+ek k=1,2,…,m (8)

步骤7:判断算法迭代是否结束,若没有结束,返回步骤2。

以上为BP神经网络模型及其工作原理介绍。

如图2所示,为本发明基于相机通信与图像定位技术的室内定位系统,包括发射端和接收端,

所述发射端,用于将发射端所在位置信息以编码调制后的光信号向所在空间发射;

所述接收端,用于接收所述光信号,对所述光信号进行解码解调后,进行图像定位计算获取位置信息。

所述发射端包括光源、编码器和调制器,

所述编码器,用于对光源位置信息进行光信号编码;

所述调制器,用于对编码后的光信号进行调制;

所述光源,用于发射调制后的光信号。

所述接收端包括:

图像传感器,用于接收光信号并生成图像信息;

解调器,用于对所述图像信息进行与调制过程相反的解调,以获取发射端光信号强度;

解码器,用于对解调后的图像信息进行与编码过程相反的解码,以获取发射端光源的位置信息;

图像处理模块,用于根据光信号强度及发射端光源的位置信息,获取接收端距离发射端光源的垂直距离和水平距离,以定位接收端的位置坐标。

所述图像处理模块包括:

高度测量模块,用于根据图像信息中两个光源的距离及图像传感器的物理焦距,获取接收端距离光源的垂直距离;

BP神经网络模型,用于根据接收端距离光源的垂直距离与光信号强度输出接收端偏离不同光源的水平距离;

定位模块,用于根据图像信息中两光源的位置信息和接收端偏离光源的水平距离进行坐标定位及坐标筛选,定位接收端的位置坐标。

本发明所述系统所采用的光源为LED光源,所述图像传感器为相机摄像头等,利用可见光LED和接收端摄像头,构成了一个室内定位系统。本发明的数据发送、接收基于相机通信技术(OCC),定位技术利用摄像头采集的图像和数据,充分利用了相机通信的优点,是一种全新的定位手段。

本发明所述系统有两种实施方案,分别如图3所示的第一实施例和如图4所示的第二实施例。

本发明所述实施例的实施环境是:

发射端编码器为GeoHash编码器,调制器为UPSOOK调制器,光源为LED光源。

在需要定位的建筑室内区域的顶上按预定规则安装具有编码调制功能的LED灯,这些LED灯具有固定的坐标和位置,LED灯之间的距离通过安装已知。

对于LED灯的坐标,使用传统的直角坐标系,即各个LED的坐标为(x,y)。

同时,如果直接发送(x,y)坐标的话,需要将横纵坐标分开发送,发送难度较大,且直角坐标系并不适合用做定位,因此需要将LED灯的(x,y)坐标信息进行编码后发送。本发明采用GeoHash算法对LED灯的坐标进行编码。

GeoHash编码方法有如下优点:

首先,如直接使用直角坐标,需要在横纵坐标两列上同时应用索引,某些情况下无法在两列上同时应用索引(例如MySQL4之前的版本,Google App Engine的数据层等)。而GeoHash用一个字符串表示横、纵两个坐标。只需在一列上应用索引即可。

其次,GeoHash表示的并不是一个点,而是一个矩形区域。比如编码11110101,它表示的是一个矩形区域。编码越长,表示的矩形区域越小,定位精度越高,同时通信的代价和成本也越高;编码越短,表示的矩形区域越大,定位精度低,但是可以不暴露用户的精确坐标信息,维护了用户隐私,同时通信成本也降低了。使用者可以根据实际定位要求灵活调整GeoHash编码长度。

第三,编码的前缀可以表示更大的区域。例如11110101,它的前缀1111表示包含编码11110101在内的更大范围。这个特性可以用于附近地点搜索。根据用户当前坐标计算GeoHash(例如11110101)然后取其前缀进行查询,即可查询附近的所有地点。同时,根据这一特性,GeoHash编码具有一定的纠错功能,因为相邻灯的码字前缀相同,如解码后,相邻灯前缀不同,即可判断解码出现了错误。

对LED灯的坐标进行GeoHash编码比直接用直角坐标高效很多。

各LED灯发光前,对各自位置进行GeoHash编码后,进行调制后发射,所述调制为UPSOOK调制。UPSOOK为相机通信中较为成功的调制方式,它是一种基于LED灯亮灭状态的调制方式。

UPSOOK调制LED灯波形示意图如图5所示,虽然相机帧率和发送信号波特率及载波频率有精确的对应关系,但因相机的采样相位和发送信号相位无法同步,因此相机采样时刻具有随机性,这样会导致采样到的LED亮灭状态存在两种可能。

如图5(b)和5(c)所示,对于发送相同信号的LED灯+摄像头接收系统,因图像传感器采样位置不同,导致接收到的LED状态除FH状态除外其他状态完全相反。

由图可知图5(b)中探测到的LED状态和图5(a)中原始数据一一对应(“亮”对应“1”;“灭”对应“0”),但图5(c)中探测到的LED状态和图5(a)中原始数据完全相反(“亮”对应“0”;“灭”对应“1”),因此可增加一位标志位来检查接收端是否出现相位差错。本发明事先规定了标志位必须为比特1,如标志位LED灯状态与原始数据(即比特1)相同,则意味着采样相位正确;如标志位LED灯状态与原始数据(比特1)相反,则意味着采样相位不正确,需要将接收到的比特进行反转(即0变为1,1变为0)。

接收端摄像头拍摄得到可见光LED的图像信息,如图5(d)所示。利用图像分割以及图像识别技术,识别出两盏灯,利用UPSOOK解调技术分别接收LED中包含的信息,每一副图片可接收得到一个比特信息。使用与GeoHash编码方法对应的GeoHash解码方法,得到对应LED灯的坐标位置。

如图3所示,基于相机通信与图像定位技术的室内定位系统第一实施例,包括发射端和接收端,所述接收端为移动终端,可以为任何带有摄像头的智能终端,包括智能手机、平板电脑等。

发射端包括GeoHash编码器、UPSOOK调制器和LED光源。一个GeoHash编码器、一个UPSOOK调制器和一个LED光源为一套发光组件,发射端包括多个发光组件,其数量依据室内定位空间的大小及发光组件的安装布局决定。

每个发光组件通过GeoHash编码器将自己的坐标位置进行GeoHash编码并通过UPSOOK调制器进行UPSOOK调制后向室内定位区域发射光信号。

移动终端包括图像传感器、UPSOOK解调器、GeoHash解码器、高度测量模块、BP神经网络模型和定位模块。

所述图像传感器接收光信号并生成图像信息,通过图像处理识别出的LED灯图像;然后经过UPSOOK解调器进行UPSOOK调制相对应的解调,此过程可以获得光信号强度。

此后分两个过程,一个过程经过GeoHash解码器对UPSOOK解调后的信息进行与GeoHash编码方法对应的GeoHash解码,得到对应LED灯的坐标位置。

另一个过程,首先由高度测量模块根据图像信息中两个LED的距离及图像传感器的物理焦距,获取接收端距离光源的垂直距离;然后根据测量的垂直距离及光信号强度,进行BP神经网络模型处理,得到移动终端偏离不同光源的水平距离。

最后两个过程中得到的LED灯的坐标位置和移动终端偏离不同光源的水平距离需要经过定位模块处理,最终对移动终端进行定位。

高度测量的具体实现为:

如图6所示,室内定位区域顶上两个LED灯分别为A和B,已知A和B之间的距离为AB。f为移动终端摄像头的物理焦距,可通过查询相机参数获取;O为焦点,CD为A和B被移动终端摄像头拍摄后在图片上的距离,图像像素点对应的实际大小由相机的图像传感器大小决定,可通过查询相机参数获得。

则AOB、COD构成相似三角形,可得:

移动终端距离LED灯的垂直高度为:

BP神经网络模型的具体实现为:

对于本发明所述的LED光源,特别的,对于朗伯型LED,第i个LED灯与移动终端之间的信道增益为Hi(0),其表达式为:

其中,m为LED灯Lambert阶数,AR为探测器面积,di为LED与探测器之间的距离,为LED发射角,ψi为LED灯入射光与探测器法线方向夹角,Ψc为探测器FOV,Tsi)是接收滤光片透过率,g(ψi)是接收聚光器增益。

假设接收系统不使用滤光片和聚光器,因此(10)式变为:

通过上述公式可得,距离与接收端光强的关系为非线性关系,通过常规方法来拟合距离与接收端信号强度的函数关系较为复杂,本发明通过BP神经网络来解决这一问题。

在相同距离时,高度不同,接收端LED的亮度明显不同。于是,单纯依靠接收端LED的信号强度并不足以得出接收端距离发光LED的距离,如果预先知道LED和接收端的垂直高度,则根据接收端发光LED的信号强度,就可以得出在这一高度下接收端距离LED的水平距离了。

因此需要测量在接收端距离光源不同垂直高度情况下,接收端与LED的水平距离以及对应的接收端信号强度,并用这些数据训练一个BP神经网络模型。

在实际情况中,发光LED排布在建筑物的上方,所以接收端与发光LED的垂直高度,可以转换为接收端的高度坐标。

这样,将接收端距离光源的垂直距离、接收端偏离发光LED的水平距离以及对应接收端收到的光信号强度信息作为一个数据集,并用这些数据集训练BP神经网络;训练后的BP神经网络模型便可根据接收端距离光源的垂直距离和接收端的收到的光信号强度,计算得到接收端偏离LED的水平距离。

在对光信号强度进行计算时,移动终端的图像传感器接收到的光信号为图片,如果直接将接收端图片的图像各像素灰度值相加来表示接收端信号强度,则神经网络输入向量维度太低,不利于发挥神经网络的优势;而如果使用常见的灰度直方图来表示接收端图像的强度信息,则输入向量中,强度信息的维度有256维远远大于高度坐标的1维,强度信息会淹没高度信息,会大大影响神经网络输出的准确度。于是,我们将灰度直方图的信息进行压缩。具体实现为:1,将接收端彩色图片转换为灰度图片,且图像灰度值介于0-256。2,将灰度图像的灰度值划分为四个区间,分别为:0-64、64-128、128-192、192-256,并分别统计四个灰度区间的像素点的数量,构成一个四维向量,来表示接收端信号的强度值。

所述BP神经网络的输入为一个五维向量,由接收端信号强度和接收端高度坐标构成;输出为接收端与对应发光LED的水平距离。即图1中BP神经网络的五维输入值X1,X2,…X5由接收端的高度坐标和信号强度构成,BP神经网络的预测输出Output为移动终端与对应发光LED的水平距离。

定位模块的具体实现为:

传统的基于强度测距的定位技术,通常采用三边定位法,而三边定位法要求同时接收三盏LED灯的信息,实际情况中,移动终端的摄像头同时拍到三盏LED灯的情况较少,一旦用户开始高速移动,移动终端持续接受三盏灯的信息极为困难,因此三边定位并不足以支撑接收端进行高速移动,有较大的局限性。

于是本发明创新性的提出了一种全新的基于图像处理的室内定位方法,该方法采用坐标定位的方法,仅需两盏LED灯即可实现定位。该定位方法更为灵活,很好的利用了相机通信的优点,且在一定情况下可以支持接收端的高速移动。

可以将定位模块分为坐标定位单元和坐标筛选单元。

如图7所示,经过BP神经网络模型已经获得两个LED灯A和B的坐标,以及移动终端和A、B的水平距离dA、dB。所述坐标定位单元通过以A、B为圆心,以dA、dB为半径的圆来计算坐标。两圆的交点为P1、P2,接收端的坐标为P1、P2当中的一个。

P1、P2的坐标可由上述二元二次方程求得。

然后坐标筛选单元需要筛选出正确的坐标。以智能手机为例,使用手机前置摄像头拍摄的图片,左右发生了调转(原理如同照镜子),而且上下不变。在对发光LED的坐标进行排布时,本发明规定由南向北LED的纵坐标y依次变大,由西向东LED的横坐标x依次变大。在一种实施例中,LED的排布为正方形排布,相邻LED必然横坐标相同,纵坐标不同;或者纵坐标相同,横坐标不同。

在定位过程中,假定移动接收端摆放为移动接收端的前端指向正北方向,反映到前置拍摄头拍摄出的图片中为:如果接收端处在两个发光LED的西侧,即接收端横坐标小于两个发光LED的横坐标时,摄像头拍摄的图片中两个发光LED位于图片中的左半部分;如果接收端处在两个发光LED的东侧,即接收端横坐标大于两个发光LED时,图片中两个发光LED位于图片中的右半部分。当接收端处在两个发光LED的北侧或者南侧时,具有相似的原理。

根据这一特性,归纳出如下定位算法:

以图片中心为原点建立直角坐标系,每一个像素点为一个单位,则图片上各点的直角坐标很容易求出。由于在图片拍摄过程中会出现旋转等情况,所以直接使用直角坐标系进行计算较为复杂,具体实施时可将直角坐标系转换为极坐标(ρ,θ)。本发明使用极坐标中的θ。

当接收端在某一位置时,假设接收端在LED灯A和LED灯B的一侧,则可能由于旋转角度不同而拍摄的图像不同。假设图8所示为接收端坐标正常时与LED灯的位置示意图,图9为接收端发生角度旋转时与LED灯的位置示意图。

本实施例中规定实际坐标较大的LED在图片上夹角为θ1,实际坐标较小的LED在图片上夹角为θ2。P1点坐标为(x1,y1),P2点坐标为(x2,y2)。设Δθ=θ21。接收端坐标为M(x,y)。

若0°<Δθ<180°或Δθ<-180°,

x=min(x1,x2)

y=min(y1,y2)

若Δθ>180°或-180°<Δθ<0°,

x=max(x1,x2)

y=max(y1,y2)

结合第二步中得出的接收端高度坐标,即可得出接收端的坐标:(x,y,z)。

如图4所示,基于相机通信与图像定位技术的室内定位系统第二实施例,所述第二实施例的发射端与第一实施例相同;接收端包括移动终端和服务端,移动终端包括图像传感器,而UPSOOK解调器、GeoHash解码器、高度测量模块、BP神经网络模型和定位模块则布置于远程服务端上。各模块作用与定位系统工作流程,和第一实施例相同。

相比较而言,第一实施例直接将解码解调与图像处理模块都集成在移动终端上,而不用将图像传感器采集的LED灯的光信号图像传输到服务端,比较节省网络开销,可以快速的实现定位。

第二实施例由于将主要处理过程集成在服务端,相比于移动终端具有更大的处理容量和更强的处理能力,能够处理更大量的数据,可以同时处理多个移动终端的定位需求,可以在此基础上实现其他更复杂的定位技术应用。

如图10所示,基于相机通信与图像定位技术的室内定位方法,包括:

S1,接收带有位置编码信息并且经过调制的光信号,生成图像信息;

S2,从所述图像信息中提取接收端距离光源的垂直距离、光源的位置信息和光信号强度,获取接收端距离光源的水平距离;

S3,根据图像信息中两个光源的位置信息和接收端偏离光源的水平距离进行坐标定位及坐标筛选,以定位接收端的位置坐标。

以上方法对应基于相机通信与图像定位技术的室内定位系统的接收端方法,S1通过接收端图像传感器实现,S2通过接收端UPSOOK解调器、GeoHash解码器、高度测量模块和BP神经网络模型实现,S3通过接收端定位模块实现。

与之对应的发射端方法是:对LED光信号进行调制后发射,其中包括有LED灯位置的编码信息。

所述S2进一步包括:

S2.1,根据图像信息中两个光源的距离及图像传感器的物理焦距,获取接收端距离光源的垂直距离;

通过本发明所述系统中的高度测量模块实现,需要先通过UPSOOK解调器对信息进行解调。

S2.2,对光信号进行对应的解调以获取光信号强度,进一步进行对应的解码以获取光源的位置信息;

通过本发明所述系统中的GeoHash解码器实现。

S2.3,基于BP神经网络模型,根据接收端距离光源的垂直距离及光信号强度,获取接收端偏离不同光源的水平距离。

通过本发明所述系统中的BP神经网络模型实现。

最后,本申请的方法仅为较佳的实施方案,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1