用于可见光成像定位的条纹识别和信息检测算法的制作方法

文档序号:11436057阅读:241来源:国知局
用于可见光成像定位的条纹识别和信息检测算法的制造方法与工艺
本发明涉及可见光定位
技术领域
,更具体地,涉及一种用于可见光成像定位的条纹识别和信息检测算法。
背景技术
:采用带有cmos图像传感器(cis)的手机接收led光信号,可形成明暗条纹图片,实现低速率信息传输。闪烁的led光信号要在成像平面上形成明暗条纹图片,要求cmos图像传感器采用卷帘式快门。现有的可见光通信(vlc)系统如图1所示,发射机采用开关键控(ook)调制驱动的led光源,接收机采用卷帘式快门cmos图像传感器形成明暗条纹图片,再通过对明暗条纹图片的图像处理来获取ook光信息。图1所提出的系统和解码方法在短距离通信(几十厘米)和无背景环境光干扰的环境下获得了一定的性能。但是,如果图1提出的系统和方法应用在2米以上的通信距离和有背景环境光干扰的应用场景中,其性能将无法满足成功解调信号的要求。现有技术中还有一种可见光信号传输解码方法(如图2所示),其基本思想是发射端采用led光源灯具以不同的频率进行闪烁,接收端采用cmos图像传感器获取闪烁光信号形成不同明暗条纹宽度的条纹图片。条纹图片的明暗条纹宽度取决于led光源的闪烁频率。发射机通过频移开关键控(fsook)调制驱动led灯具顺序发出闪烁频率信息,每一种频率代表若干位比特的数据。接收端的cmos图像传感器采用等间隔时间拍照获取若干幅明暗条纹图片,然后对明暗条纹图片进行条纹数目检测。由于不同的条纹数目代表不同的闪烁频率,进而解码出二进制数据。图2提出的这种检测图片条纹数目的方法,其可靠性并不理想,而且如果cmos图像传感器与led光源(闪烁频率保持不变)之间的距离发生变化后,有效光源区的条纹数目会发生变化,并不能得到条纹数目与led闪烁频率之间的对应关系。此外,现有技术中还有一种采用具有卷帘式快门的cmos图像传感器检测led闪烁频率的算法。其基本思想是获取光源区条纹图片,将条纹图片转换成灰度图片,然后对条纹图片每一行的像素计算平均灰度值,将灰度平均值进行离散傅立叶变换(dft)得到频率响应,然后检测频率响应除低频分量以外的峰值所对应的值k,用总行数除以k得到明暗条纹宽度的像素行数rown,最后用cmos图像传感器的行扫描频率除以rown得到led的闪烁频率。不过,该方法是在无高光干扰的理想环境中提出的,如果led光源周围有其他高光光源,有可能会导致条纹截取算法的误操作,造成条纹有效区域面积的扩大,从而增大led检测频率误差,甚至无法检测。该算法虽然是一种鲁棒性较高的检测算法,但是由于采用dft运算,对接收机的运算性能有一定的要求。其次,由于条纹的形成受到cmos图像传感器的硬件和led灯具发射光功率等众多因素的限制,使得条纹的清晰度在较远的距离容易被破坏。技术实现要素:本发明为克服上述现有技术所述的可靠性不够理想或计算复杂度较高的缺点,提出了一种高可靠性、支持更宽的调制频率范围的明暗条纹信息检测方法。为了达到上述技术效果,本发明的技术方案如下:一种用于可见光成像定位的条纹识别和信息检测算法,该方法用于采用fsook调制的led发射机,且led灯具安装有灯罩和基于cmos图像传感器的接收机所组成的可见光通信系统,包括以下步骤:s1:在接收机cmos传感器前面放置一层减光材料来产生清晰的明暗条纹图像;s2:从得到的明暗条纹图片中,获取有效的条纹区域;s3:将得到的条纹区域转换为灰度图像,对灰度图像先后进行自相关、差分处理得到灰度图像的估计行数值;s4:利用该估计行数值计算出估计的fsook信号频率。进一步地,所述步骤s3的具体过程如下:s31:求灰度图片每行像素的灰度值的平均值mi,即每行像素灰度值总和除以该行的列数,将n个灰度平均值存储在数组gaverage(n),n=1,2,…n;s32:对数组gaverage(n)进行自相关运算,将所得到的结果保存在数组a(i)(i=1,2,...,2n-1)中;s33:取出数组a(i)元素取值分布图中处在波峰位置的元素的索引号并保存在数组b(m)(m=1,2,...,m),其中m为上述元素的总数;s34:对数组b进行差分运算,即当前元素值减去上一个元素值,将结果保存在c(m)(m=1,2,…,m-1)中。进一步地,所述步骤s32中对数组gaverage(n)进行自相关运算:其中agg(m)为数组gaverage中第m个元素的自相关函数值。还可采用下述公式对所述步骤s32中对数组gaverage(n)进行自相关运算:其中,φaverage(k)为gaverage(n)的离散傅里叶变换,数组gaverage(n)补零扩大到2n-1。进一步地,所述步骤s4中计算灰度图像的估计行数值的过程如下:由于每个合法的fsook调制频率是已知的,它们所对应的真实行数可根据公式计算,其中,fled为fsook信号调制频率,fs为摄像头的行扫描频率,lled为一对明暗条纹的像素行数,表示向下取整的操作;故每个真实行数对应的有效行数可由公式得到,其中,有效行数定义为行数的真值rt的浮动范围,w为可见光通信系统合法频率值的总数;将前述m-1个行数值c(m)(m=1,2,…,m-1)中的每一个数值与进行比较,并统计h(l)匹配的次数,得到下表:由该表找出swl(l=1,2,...,l;w=1,2,...,w)的最大值:则其所对应的关联的真实行数值rt,max,即可视为最终的估计行数值进一步地,所述步骤s2中采用图像形状识别算法从明暗条纹图片中,获取有效的条纹区域。与现有技术相比,本发明技术方案的有益效果是:本发明应用在在采用fsook调制的led发射机,且led灯具安装有灯罩和基于cmos图像传感器的接收机所组成的可见光通信系统中,在接收机cmos传感器前面放置一层减光材料来产生清晰的明暗条纹图像;从得到的明暗条纹图片中,获取有效的条纹区域;将得到的条纹区域转换为灰度图像,对灰度图像先后进行自相关、差分处理得到灰度图像的估计行数值;利用该估计行数值计算出估计的fsook信号频率。提高了经fsook调制的可见光信号所产生的明暗条纹的清晰度,避免了明暗条纹图片中的高光干扰问题,具有较好的信息检测性能,从而可增加正确解调可见光信号的距离,同时还支持更宽的调制频率范围。附图说明图1为现有技术中的一种可见光定位系统示意图;图2为现有技术中的另一种可见光定位系统示意图;图3(a)为coms传感器无减光材料采集的图片;图3(b)为coms传感器有减光材料采集的图片;图4(a)为采用传统的基于平均阈值法截取的条纹图像;图4(b)为采用霍夫算法截取的条纹图像;图5为实施例中数组gaverage(n)的灰度分布图;图6为数组a的元素取值分布图;图7为本发明方法的流程图;图8为发明方法和dft方法的dar和调制频率的关系对比示意图。具体实施方式附图仅用于示例性说明,不能理解为对本专利的限制;为了更好说明本实施例,附图某些部件会有省略、放大或缩小,并不代表实际产品的尺寸;对于本领域技术人员来说,附图中某些公知结构及其说明可能省略是可以理解的。下面结合附图和实施例对本发明的技术方案做进一步的说明。实施例1一种用于可见光成像定位的条纹识别和信息检测算法(如图7所示),包括以下步骤:步骤1:在接收机cmos传感器前面放置一层减光材料(如减光片、减光膜等),用于产生更清晰的明暗条纹图像。本发明对此类成像可见光通信系统进行了分析,提出了一种高可靠性、支持更宽的调制频率范围的明暗条纹信息检测方法,可用其获取较为精确的lled值,从而可以较好地恢复出调制频率fled。以下进行详细说明。由于led光源的入射光功率较大,cmos图像传感器都有自动曝光控制、自动增益控制功能,当拍摄距离越远时,根据成像原理可知,光斑越小。cmos图像传感器在自动曝光过程中,相机通过自动调节光圈大小、曝光时间等相关参数与设置,使得图像传感器所接收到的入射光能量处于一个合适的水平,通过转换而得到具有对应强度的电信号。用公式表示为:y=f(k,l,t)其中y表示曝光强度,k表示比例系数,t表示曝光时间,l表示外界光照度,f代表成像函数。当光斑变小时,为了获得足够大的信噪比(snr),会优先增加曝光时间。但是,增大曝光时间会使得相邻像素点的曝光混叠区增大,从而导致拍摄图像空间对比度的减小。此时,明暗条纹过渡缓慢,导致条纹分界不明显,将降低条纹检测的性能。为此,可在摄像头前加上减光材料(如减光片、减光膜等),减少入射光量,令非均匀发光面led光源所发出的光变得较为均匀,从而使明暗条纹分界更为明显,为检测vlc信号提供了一种有效手段。另一方面,通过减光材料,还可明显扩散条纹区域,增大了条纹的有效检测区域,缓解了增大拍摄距离时将导致图像目标变小、有效检测区域变小的问题。如图3所示,在减光材料的帮助下,可形成更清晰的条纹图像,同时增加了获取有效条纹区域的概率,从而可延长能正确接收信息的检测距离。步骤2:当通过cmos图像传感器获取条纹图像后,可使用图像形状识别方法来获得条纹所在的区域,然后对所选的区域进行灰度值的处理,从而获得明暗条纹的信息。特别地,当led光源周围有其它高光干扰时,如图4(a)所示,采用传统的基于平均阈值法的条纹图像截取方法,有可能会将高光区域误判为条纹图片信息的一部分,从而影响信息检测的准确性。因此,应通过使用图像形状识别方法识别出led光源形成的条纹的有效区域,然后截取识别到的有效区域,得到只包含led灯形成条纹的图片。不失一般性,本实施例假设led灯具为圆形。此时led光源形成的明暗条纹有效区域也是一个圆形,故可采用霍夫算法或其他图形形状检测算法来检测圆形,实现对有效条纹区域的快速识别,如图4(b)所示。如采用其他形状的灯具,可选择相应的形状检测算法来获取相应的条纹区域。步骤3:将经上述图像形状识别处理后得到的图片,进行灰度处理。具体执行过程为:a)将获得的条纹图片转换为灰度图片;b)求每行像素的灰度值的平均值mi,即每行像素灰度值总和除以该行的列数,将n个灰度平均值存储在数组gaverage(n)(n=1,2,...,n)中;举例说明,可得到数组gaverage=[2182172182182182182352512341743114311000000000000000000101278962452532542452402392392392392392392392392392392392392392392392392392392392392392392442542532131289711111001000000000000101136932142522532532512512502502512512502512512512502502502502502502502492492492492492492502542532531534052111000000000000000000…],绘成如图5所示的统计分布:c)对gaverage(n)(n=1,2,...,n)进行自相关运算。计算自相关的常用方法有多种,本实施例仅给出两个例子。第一种方法即直接法,由公式(4)表示:其中agg(m)为数组gaverage中第m个元素的自相关函数值。第二种方法是间接法。因fsook信号为周期性功率信号,cis对接收到的fsook信号所形成的条纹图像信号也为周期性功率信号。根据维纳-辛钦定理,周期性功率信号的自相关函数和功率谱密度函数是一对傅里叶变换对,故可利用dft计算出gaverage功率谱密度函数的估计值,然后再计算其傅里叶反变换,即可得到自相关函数,可用公式(5)表示为:其中,φaverage(k)为gaverage(n)的离散傅里叶变换。利用公式(5)计算时,需要将gaverage(n)补零扩大到2n-1之后再计算其自相关函数。经过上述自相关运算,将所得到的结果保存在数组a(i)(i=1,2,...,2n-1)中,即:a=[5158551637517355181751906520155267053643539855286048868453344216639388360803153726720223771846214916116238439542828611173461246169144133127123119118114115128168211777217835624953620680351016412349144441643618345202302211423887253332591425768253132483724399239992362023255229022255922226219022158821301210512080820439198021879917817168361587314522129251136698368342689254414081310325692643311936954286487554576028658971407680821387369253977010480114611251113552146071571217136185972003621452228422422725631…],其分布图如图6所示:d)由图6可见,数组a的取值呈现周期性变化。将a数组中所有“波峰”的索引号取出,并保存在数组b(m)(m=1,2,...,m),其中m为上述元素的总数。其结果在表1中给出:表1:数组b中的元素元素索引,m1234567891011b(m)955116177239300361423484545591e)对数组b进行差分运算,即当前元素值减去上一个元素值,将结果保存在c(m)(m=1,2,...,m-1)中,得到表2:表2:数组c的元素元素索引,m12345678910c(m)46616162616162616146步骤4:由于每个合法的fsook调制频率是已知的,它们所对应的真实行数rt可根据公式计算,其中,fled为fsook信号调制频率,fs为摄像头的行扫描频率,lled为一对明暗条纹的像素行数,表示向下取整的操作;将真值rt的浮动范围,定义为有效行数即其中,δr为给定的“行数保护间隔”。在实际应用中,选取fsook信号频率时,应使不同的频率之间的间隔大于2·δr。故每个真实行数对应的“有效行数”可由公式(6)得到,其中w为该系统合法频率值的总数。因此,将前述m-1个行数值c(m)(m=1,2,...,m-1)中的每一个数值与进行比较,并统计c(m)匹配的次数,得到表3:表3:明暗条纹对应行数与有效行数的对比示例由表4找出swm(m=1,2,...,m-1;w=1,2,...,w)的最大值:则其所对应的关联的真实行数值rt,max,即可视为最终的估计行数值继续以表2的例子进行说明,经过步骤4的运算,可以得到swm的最大值smax=8,根据简单多数或平均数的原则找到最匹配的而关联的真实行数值rt,max为61,即可视为最终的估计行数值步骤5:根据上述得到的数值,由公式计算出估计的fsook信号频率此外,我们指出,只要该可见光通信系统预先选择的代表不同信号的调制频率有足够的差别(即相邻的频率差大于前述的行数缓冲值区间),则根据查表即可快速判定这些检测所得的行值是否属于合法的频率值之一。本发明提出的方法主要通过利用自相关运算完成信息检测,在fsook信号采用高频调制的情况下,可以取得比现有方案更优的性能。例如,本发明的性能比现有需要dft操作相比,在解码准确率(dar)方面可获得更好的性能。此处dar的定义为正确解码的图片数量占接收到图片的总数的比例。图8给出了在相同测试条件下,本方法和dft方法的dar和调制频率的关系对比示意图。由图可见,本发明的方法比dft方法在检测高频信号时有更好的dar性能。这意味着在本系统可以支持更大的频率范围,在选取fsook调制频率时有更大的灵活度,增加定位信号可携带的比特数。本发明的上述实施例仅仅是为了清楚的说明本发明所作的举例,而并非是对本发明的实施方式的限定。相同或相似的标号对应相同或相似的部件;附图中描述位置关系的用于仅用于示例性说明,不能理解为对本专利的限制;显然,本发明的上述实施例仅仅是为清楚地说明本发明所作的举例,而并非是对本发明的实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明权利要求的保护范围之内。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1