一种可见光通信方法及装置与流程

文档序号:17318725发布日期:2019-04-05 21:25阅读:283来源:国知局
一种可见光通信方法及装置与流程

本发明涉及室内可见光通信方法及装置,具体涉及一种可见光通信方法及装置。



背景技术:

由于现在照明系统十分完善,尤其在室内这种环境下,可见光通讯能够充分发挥出其作用,可见光通讯(vlc)技术,是使用日光灯或者led灯发出特定的明暗相间的可见光信号(400到800thz)来进行信息传输的技术,台灯或者室内照明灯都能够承载该系统。由于人眼对于高频率的闪烁现象不敏感,vlc具有在不影响照明系统的功能的前提下,给予用户以信息传输服务的优势。

现有的ook编码的手机相机拍摄技术设计存在吞吐量较低,解调成功率较低的问题。这是因为现有设计时基于频率宽度的解调方式,在实践时,为了能够准确解码,这种调制方式的脉冲时间设置的比较高,使得照片的条纹清晰利于解码,然而脉冲时间越长单位时间内传输的信息就越低,也就是吞吐量越低,这种解码方式易受到噪声影响,故而其解调成功率也较低。



技术实现要素:

本发明的目的在于提供一种可见光通信方法及装置,用以解决现有技术中的可见光通信方法的中吞吐量不高,导致通信效率不高的问题。

为了实现上述任务,本发明采用以下技术方案:

一种可见光通信方法,一个发光装置将一串传输信息利用可见光信号发送给接收端,所述的发光装置与接收端持有的一组二进制前导码相同,所述的一组二进制前导码由多位二进制数构成,所述的发光装置处于点亮状态时发出的光照射在中间物体上,所述的方法包括:

步骤1、将所述的一串传输信息转换为多位二进制编码;

步骤2、在所述的多位二进制编码前加入一组二进制前导码,获得多位二进制发送码;

步骤3、依次利用所述多位二进制发送码中的每位二进制发送码,控制发光装置的工作状态,所述的工作状态包括点亮状态以及熄灭状态;

每位二进制前导码控制发光装置点亮或熄灭时的时长为每位二进制编码控制发光装置点亮或熄灭时的时长的n倍,1<n<2;

重复执行步骤3直至步骤4结束,同时执行步骤4;

步骤4、在所述发光装置的工作过程中,接收端以逐图像像素列曝光的形式获取中间物体的第一图像;

步骤5、求取第一图像中每一列像素列中所有像素点灰度值之和,获得第一灰度值序列,去除直流分量后,获得待解码序列;

步骤6、接收端将所述的待解码序列转换成图像形式,所述的图像形式待解码序列的横坐标为像素点;

接收端根据持有的一组二进制前导码对应的一组二进制前导码的波形,在图像形式的待解码序列中找到多组二进制前导码的波形;

采用式i获得重采样像素点间距d,单位为像素:

其中,d为一组二进制前导码的波形对应的横坐标的长度值,d>0,m为前导码的位数,m为正整数;

步骤7、接收端根据重采样像素点间距d对所述图像形式的待解码序列中相邻的两组二进制前导码的波形之间的信号波形进行重采样后,转换为数列形式,获得初始解码序列;

步骤8、接收端对所述的初始解码序列进行二值化,获得接收编码;

步骤9、将所述的接收编码还原为原始传输信息;

完成信息传输。

进一步地,所述的步骤1中将所述的一串传输信息转换为多位二进制编码时,利用ascii码将所述的一串传输信息转换为多位二进制编码。

进一步地,所述的步骤4中以逐图像像素列曝光的形式获取发光装置在亮灭状态下中间物体的第一图像的同时,以逐图像像素列曝光的形式获取发光装置在亮灭状态下中间物体的第二图像;其中第一图像的曝光时间为一位二进制前导码控制发光装置亮或灭时的时长,单位为微秒,第二图像的曝光时间为s倍的一位二进制前导码控制发光装置亮或灭时的时长,单位为微秒,s>1,其中s为获取第一图像以及第二图像的硬件的最大感光度与最小感光度之间的比值。

进一步地,所述的步骤5中求取第一图像中每一列像素列中所有像素点灰度值之和,获得第一灰度值序列,求取第二图像中每一列像素列中所有像素点的灰度值之和,获得第二灰度值序列,将所述第一灰度值序列除以第二灰度值序列,去除直流分量后,获得待解码序列。

进一步地,所述的步骤7具体包括:

采用线性回归的方法滤除所述图像形式的待解码序列中相邻两组二进制前导码的波形之间的信号波形中的噪声后,再利用重采样像素点间距d对信号波形进行重采样后,转换为数列形式,获得初始解码序列。

进一步地,所述步骤8中接收端利用k均值算法对所述的初始解码序列进行二值化,获得接收编码。

一种可见光通信装置,所述的可见光通信方法,所述的可见光通信装置包括控制节点、发光装置以及接收端,所述的发光装置与接收端均持有相同的一组二进制前导码,所述的一组二进制前导码由多位二进制数构成;

所述的控制节点与所述的发光装置连接,用于将所述的一串传输信息转换为多位二进制编码;

还用于在所述的多位二进制编码前加入一组二进制前导码,获得多位二进制发送码;

还用于依次利用所述多位二进制发送码中的每位二进制发送码,控制发光装置的工作状态,所述的工作状态包括点亮状态以及熄灭状态;

所述的接收端与所述的发光装置连接,所述的接收端包括图像采集模块以及数据处理模块;

所述的图像采集模块用于以逐图像像素列曝光的形式获取发光装置在亮灭状态下中间物体的第一图像的同时,以逐图像像素列曝光的形式获取发光装置在亮灭状态下中间物体的第二图像;其中第一图像的曝光时间为一位二进制前导码控制发光装置亮或灭时的时长,单位为微秒,第二图像的曝光时间为s倍的一位二进制前导码控制发光装置亮或灭时的时长,单位为微秒,s>1,其中s为获取第一图像以及第二图像的硬件的最大感光度与最小感光度之间的比值;

所述的数据处理模块用于求取第一图像中每一列像素列中所有像素点灰度值之和,获得第一灰度值序列,求取第二图像中每一列像素列中所有像素点的灰度值之和,获得第二灰度值序列,将所述第一灰度值序列除以第二灰度值序列,去除直流分量后,获得待解码序列;

还用于将所述的待解码序列转换成图像形式,所述的图像形式待解码序列的横坐标为像素点;

还用于接收端根据持有的一组二进制前导码对应的一组二进制前导码的波形,在图像形式的待解码序列中找到多组二进制前导码的波形;

还用于采用式i获得重采样像素点间距d,单位为像素:

其中,d为一组二进制前导码的波形对应的横坐标的长度值,d>0,m为前导码的位数,m为正整数;

还用于接收端根据重采样像素点间距d对所述图像形式的待解码序列中相邻的两组二进制前导码的波形之间的信号波形进行重采样后,转换为数列形式,获得初始解码序列;

还用于对所述的初始解码序列进行二值化,获得接收编码;

还用于将所述的接收编码还原为原始传输信息。

进一步地,所述的控制节点为isa100.11a传感器节点。

进一步地,所述的发光装置为led灯。

本发明与现有技术相比具有以下技术特点:

1、本发明中设置了二进制前导码控制发光装置点亮或熄灭时的时长尽可能小,即与曝光时间相等,而二进制编码控制发光装置点亮或熄灭时的时长更是比二进制前导码的控制时间还要短,如此设计增加单位时间信息的传输量,即增加了吞吐率,同时二进制编码与二进制前导码的控制时间成线性关系,使得更精确的采样周期得以确定,保证了短信息脉冲的条件下解码的可行性;

2、信息脉冲时间越短,光通信系统越容易受到环境的影响,使用了长曝光照片作为背景的方法减少环境的影响,并且增加了由一组二进制前导码的波形对应的横坐标的长度值计算重采样周期,按照此周期划分区间进行线性回归,进一步减少了环境噪声对于解码成功率的影响,使得二进制编码控制发光装置点亮或熄灭时的时长短于曝光时间的条件下仍然具有较高的准确率。

附图说明

图1为本发明提供的可见光通信方法的流程图;

图2为本发明的一个实施例中提供的二进制发送码示意图;

图3为本发明的一个实施例中提供的未去除直流分量前的图像形式的待解码序列;

图4为本发明的一个实例中对图3进行直流分量去除后的图像形式的待解码序列

图5为本发明的一个实施例中提供的重采样归一化后图像形式的待解码序列。

具体实施方式

可见光信号:在可见光通信系统中,通过cmos摄像头的卷帘效应以逐行曝光的方式捕捉明暗相间的可见光信号,并对捕捉到的图像中的可见光信号进行处理,还原出完整的用户输入信息。这样,利用led灯快速亮灭闪烁的发光原理,以及cmos摄像头的卷帘门效应,使得led可见光通信系统能够在无需严格对准光源(指的是:led灯珠)的情况下进行正确的通信,且能够保证led可见光通信系统的传输质量。

实施例一

本实施例公开了一种高吞吐量的可见光通信方法,一个发光装置将一串传输信息利用可见光信号发送给接收端。

发光装置是可以发出可见光信号的装置,可以是荧光灯或者二极管等,在本实施例中,发光装置为led灯。

发光装置与接收端持有的一组二进制前导码相同,所述的发光装置处于点亮状态时发出的光照射在中间物体上。

在本实施例中,led灯与接收端共同持有相同的一组二进制前导码,用于使接收端能够从led灯发送的可见光信号中找到传输信息,一组二进制前导码为4位二进制前导码“1010”。

如图1所示,所述的方法包括:

步骤1、将所述的一串传输信息转换为多位二进制编码;

在本实施例中,一串传输信息为英文、数字或者符号,可以通过自定义的转换方法将传输信息转换为二进制编码,只要保证led灯与接收端都持有这个编码以及解码方法,或是采用现有的编码方法将一串传输信息转换为多位二进制编码。

可选地,所述的步骤1中将所述的一串传输信息转换为多位二进制编码时,利用ascii码将所述的一串传输信息转换为多位二进制编码。

在本实施例中,采用ascii码将所述的一串传输信息转换为一串二进制信息,ascii码在转换时,将每一个字母、数字或者符号都能转换为8位二进制码。

在本实施例中,将“hi”这个信息转换为2*8=18位二进制编码,0100100001101100。

步骤2、在所述的多位二进制编码前加入一组二进制前导码,获得多位二进制发送码;

在本实施例中,在每个led灯的编码信号前均加入“1010”的4位二进制前导码,获得“10100100100001101100”的20位二进制发送码。

步骤3、依次利用所述多位二进制发送码中的每位二进制发送码,控制发光装置的工作状态,所述的工作状态包括点亮状态以及熄灭状态;

每位二进制前导码控制发光装置点亮或熄灭时的时长为每位二进制编码控制发光装置点亮或熄灭时的时长的n倍,1<n<2;

发光装置亮一段时间灭一段时间,可以产生发光装置闪烁的情况,此时根据多位二进制发送码,可以使发光装置亮一个周期长的时间,灭一个周期长的时间。

在本实施例中,为了保证高吞吐量、前导码与发送的信息不发生冲突,并且信号可解,每一位二进制前导码的亮灭周期(单个脉冲时长)为每一位二进制编码的亮灭周期(单个脉冲时长)时长的n倍,1<n<2,n≤1时必定可解但是吞吐量较低,n≥2不可解。当n越接近于1时,越容易解出信号,但是吞吐量下降,当n越接近于2时,越难以解出信号,但是吞吐量提升。

现有的技术为了保证传输的可行性,让脉冲时间大于曝光时间,即单位时间传输的信息有限,这导致了通信系统传输吞吐率较低。本发明中让前导码脉冲时间尽可能小,即与曝光时间相等,而信息脉冲时间更是比前导码还要短,如此设计增加单位时间信息的传输量,即增加了吞吐率,同时信息脉冲与前导码脉冲成线性关系,使得更精确的采样周期得以确定,保证了短信息脉冲的条件下解码的可行性。

在本实施例中,如图2所示,“1010”的前导码中每一位控制发光装置亮或灭的时长为300微秒,“0100100001101100”的16位二进制编码中每一位二进制控制发光装置亮或灭的时长为200微秒。

重复执行步骤3直至步骤4结束,同时执行步骤4;

步骤4、在所述发光装置的工作过程中,接收端以逐图像像素列曝光的形式获取中间物体的第一图像;

其中每曝光一次,获取第一图像中的一列像素列;曝光多次后,获得第一图像。

在本步骤中,当发光装置的工作状态处于点亮状态照射在所述的中间物体上时,在图像列中每一个像素点的灰度值大于当发光装置的工作状态处于熄灭状态时,在图像列上在图像列中每一个像素点的灰度值;

因此当led灯在亮灭的环境下,反映在第一图像上就是,当led灯在点亮状态下,获取的第一图像中的一个像素列中所有像素点的灰度值接近于255,当led灯在熄灭状态下,获取的第一图像中的一个像素列中所有像素点的灰度值接近于0,通过这种方式就可以在接收端获取到led灯发出的编码信息。

第一图像中还会存在噪声,导致定位的准确率降低。在本实施例中,采用获得第一图像的同时获得第二图像的方式,将第二图像作为第一图像的背景层。

可选地,所述的步骤4中以逐图像像素列曝光的形式获取发光装置在亮灭状态下中间物体的第一图像的同时,以逐图像像素列曝光的形式获取发光装置在亮灭状态下中间物体的第二图像;其中第一图像的曝光时间为一位二进制前导码控制发光装置亮或灭时的时长,单位为微秒,第二图像的曝光时间为s倍的一位二进制前导码控制发光装置亮或灭时的时长,单位为微秒,s>1,其中s为获取第一图像以及第二图像的硬件的最大感光度与最小感光度之间的比值。

在本实施例中,获得第二图像的曝光时间与获得第一图像的曝光时间不同,s为获取第一图像以及第二图像的硬件的最大感光度与最小感光度之间的比值,s>1,这样两张照片就会有相同的背景层,并且由于第二图像的曝光时间较长,所以将第二图像直接看作第一图像的背景层。

步骤5、求取第一图像中每一列像素列中所有像素点灰度值之和,获得第一灰度值序列,去除直流分量后,获得待解码序列;

优选地,求取第一图像中每一列像素列中所有像素点灰度值之和,获得第一灰度值序列,求取第二图像中每一列像素列中所有像素点的灰度值之和,获得第二灰度值序列,将所述第一灰度值序列除以第二灰度值序列,去除直流分量后,获得待解码序列。

在本实施例中,按照长短曝光的方式对同一物体拍摄两张图片,2张图片进行亮度提取处理,以像素为单位,作为横坐标x,纵坐标为该列内的灰度值累加和。然后在相同的横坐标处,将短曝光的纵坐标除以长曝光的纵坐标值,结果如图3所示,再去除直流分量后,获得待解码序列y(x),如图4所示。

在本实施例中,去除直流分量采用高通滤波器。

步骤6、接收端将所述的待解码序列转换成图像形式,所述的图像形式待解码序列的横坐标为像素点;

接收端根据持有的一组二进制前导码对应的一组二进制前导码的波形,在图像形式的待解码序列中找到多组二进制前导码的波形;

采用式i获得重采样像素点间距d,单位为像素:

其中,d为一组二进制前导码的波形对应的横坐标的长度值,d>0,m为前导码的位数,m为正整数;

在本步骤中,对图像形式的待解码序列y(x)做进行前导码检测,前导码为1010,如果图像形式的待解码序列y(x)出现连续的从高到低,从低到高,再次从高到低的三个高度差大于阈值(y(x)的正均值与负均值差的k倍,k>1,根据具体环境可以调节k以取得更好的效果),并且斜率绝对值相近的斜坡可以确定其为前导码,将这段信息的横坐标长度除以3,之所以除以3,是因为4位编码在从初始1的末端到最后0的末端,在幅值上出现3次变化,如图3所示,横坐标为像素,纵坐标为灰度值,前导码一共3个时间单元,框内四个间隔但是第一个间隔的末端开始计算,因为第一个间隔会受到信号末尾的信息的影响,这两个框表示两个“连续的从高到低,从低到高,再次从高到低”的区域,即前导码区域。但是注意到这个框的起始点被认为是第一个前导码1的终点,所以第一个时间间隔没在框内包含,在求取时间单元时,这段区间的横坐标应该除以3。

在本实施例中,如图4所示,在图像形式待解码序列中找到了两个前导码的波形,此时d=180个像素点,前导码脉冲时间与相机曝光时间相同为300微秒,信息脉冲时间为200微秒即n=1.5倍。前导码为1010,传输的信息为“hi”,转化为二进制即为“0100100001101100”。根据图4可以看到前导码大概在900-1080像素区间内,所以前导码脉冲d=180像素,信息脉冲即重采样间隔为d=180/((4-1)*1.5)=40像素。从图中可以看到采样周期为40个像素点时,重采样点为每个区间最后一个点,即从1120开始每隔40个点到1720共16个点,采到的数据恰好对应于小三角形的顶端和底端,这样的数据能够准确地按照编码规则区分。

步骤7、接收端根据重采样像素点间距d对所述图像形式的待解码序列中相邻的两组二进制前导码的波形之间的信号波形进行重采样后,转换为数列形式,获得初始解码序列;

但是,两个前导码波形之间的信号波形会存在噪声的干扰,因此在本步骤中,首先对信号波形进行去噪。

可选地,采用线性回归的方法滤除所述图像形式的待解码序列中两个前导码波形之间的信号波形中的噪声后,再利用重采样像素点间距d对信号波形进行重采样后,转换为数列形式,获得初始解码序列;

具体是,利用重采样像素点间距d先将两个前导码波形之间的信号波形进行分段,获得多段信号波形,利用采用线性回归的方法对每段信号波形进行去噪,之后再将多段去噪后的信号波形拼接在一起,获得去噪后的信号波形,再利用重采样像素点间距d对去噪后的信号波形进行重采样,转换为数列形式,获得初始解码序列;

在本实施例中,对如图4所示的图像形式待解码序列利用线性回归的方法进行去噪后再重采样获得的图像形式的初始解码序列,如图5所示。

在本实施例中,增加了由前导码计算重采样周期,按照此周期划分区间进行线性回归,最后重采样的方式进一步减少了环境噪声对于解码成功率的影响,使得信息脉冲时间短于曝光时间的条件下仍然具有较高的准确率。

步骤8、接收端对所述的初始解码序列进行二值化,获得接收编码;

在本步骤中,二值化可以是通过阈值的形式,将大于阈值的值归为1,小于阈值的值归为0。

可选地,接收端利用k均值算法对所述的初始解码序列进行二值化,获得接收编码。

在本实施例中,获得的初始解码序列为[0.4,1.2,0.8,0.4,1.2,0.6,0.4,0.4,0.6,1.4,1.2,0.8,1.4,1.2,0.5,0.8],利用k均值算法进行二值化后,获得接收解码“0100100001101100”。

步骤9、将所述的接收编码还原为原始传输信息;

在本实施例中,对于接收解码“0100100001101100”通过ascii码的对应关系解析出该接收编码表示的内容,为“hi”。

完成信息传输。

本发明l2c通信系统中接收到的图片是由发射的信息和相机快门函数卷积而成,同时存在了环境的噪声。照片的条纹特性与相机曝光时间tc和脉冲时间tp的相对关系有关,当tc<tp时照片的条纹边沿明暗对比较为明显,当tc增加,tc等于乃至于大于tp时,照片的条纹边沿就变的比较模糊。传统的方法为了保证准确率,tc设计的远小于tp,但是脉冲时间的增加意味着单位时间内的信息传输,即吞吐量下降了。传统的解码思路是基于采样定理,根据定理可得脉冲的时间大于等于曝光时间时,才能够解出数据,因为若tc>tp,则卷积后信号区域混叠了,无法用采样间隔取出原信息。本发明提高吞吐量的创新点有二,其一调制时前导码与信息的脉冲长度不一致,前导码脉冲取最小值即与曝光时间一致,信息脉冲比前导码还要小,但是可以与前导码脉冲成线性关系。虽然信息脉冲有所混叠,但是根据线性关系计算出更小的采样间隔,保证了在局部混叠的状态下仍然能够找到表征原信号信息的点;其二,解调时为了进一步减少环境噪声的影响,除了利用长曝光作为环境层、过滤直流分量之外,本发明增加了重采样前对采样点之间的区域进行线性回归处理,这样采样点数据更为准确。对采样点数据进行k均值划分,划分为高、低二组,最后按照ook编码的原则还原信息。

实施例二

一种可见光通信装置,用于实现实施例一中可见光通信方法,可见光通信装置包括控制节点、发光装置以及接收端,发光装置与接收端均持有相同的一组二进制前导码,一组二进制前导码由多位二进制数构成;

控制节点与发光装置连接,用于将一串传输信息转换为多位二进制编码;

还用于在多位二进制编码前加入一组二进制前导码,获得多位二进制发送码;

还用于依次利用多位二进制发送码中的每位二进制发送码,控制发光装置的工作状态,工作状态包括点亮状态以及熄灭状态;

可选地,控制节点为isa100.11a传感器节点。

isa100.11a传感器节点用于控制发光装置的工作状态。

接收端与发光装置连接,接收端包括图像采集模块以及数据处理模块;

图像采集模块用于以逐图像像素列曝光的形式获取发光装置在亮灭状态下中间物体的第一图像的同时,以逐图像像素列曝光的形式获取发光装置在亮灭状态下中间物体的第二图像;其中第一图像的曝光时间为一位二进制前导码控制发光装置亮或灭时的时长,单位为微秒,第二图像的曝光时间为s倍的一位二进制前导码控制发光装置亮或灭时的时长,单位为微秒,s>1,其中s为获取第一图像以及第二图像的硬件的最大感光度与最小感光度之间的比值;

在本实施例中,发光装置可以是二极管发光装置、日光灯等,优选地,发光装置为led灯。

图像采集模块可以是手机上的摄像头,也可以是相机等图像采集设备,优选地,图像采集模块为安装在仓储室内的监控摄像头,以降低信号传输的成本。

数据处理模块可以是云服务器,也可以是本地计算机等能够处理图像的设备,或者手机本身。

数据处理模块用于求取第一图像中每一列像素列中所有像素点灰度值之和,获得第一灰度值序列,求取第二图像中每一列像素列中所有像素点的灰度值之和,获得第二灰度值序列,将第一灰度值序列除以第二灰度值序列,去除直流分量后,获得待解码序列;

还用于将待解码序列转换成图像形式,图像形式待解码序列的横坐标为像素点;

接收端根据持有的一组二进制前导码对应的一组二进制前导码的波形,在图像形式的待解码序列中找到多组二进制前导码的波形;

还用于采用式i获得重采样像素点间距d,单位为像素:

其中,d为一组二进制前导码的波形对应的横坐标的长度值,d>0,m为前导码的位数,m为正整数;

还用于根据重采样像素点间距d对所述图像形式的待解码序列中相邻的两组二进制前导码的波形之间的信号波形进行重采样后,转换为数列形式,获得初始解码序列;

还用于对初始解码序列进行二值化,获得接收编码;

还用于将接收编码还原为原始传输信息。

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