一种基于离散傅里叶变换的LED光条纹码检测方法技术

技术编号:27743593 阅读:14 留言:0更新日期:2021-03-19 13:37
本发明专利技术公开了一种基于离散傅里叶变换的LED光条纹码检测方法,包括如下步骤:在发射端,利用PWM调制方法使单片机输出不同频率、相同占空比的脉冲信号,调制LED发出闪烁频率不同的光;在接收端,利用摄像头拍摄LED,经图像处理后对LED图像进行离散傅里叶变换,得到对应的频谱图;对步频谱图进行阈值操作,分离出频谱图上最亮的三个点;使用距函数确定中心点和特征点的横坐标,得到特征距离;建立特征距离与对应LED闪烁频率之间的线性关系;根据得到的线性关系,推算出LED的闪烁频率,实现对该LED的识别。本发明专利技术把LED图像从图像空间域转换到图像频域,在图像频域上识别LED,抗干扰能力强,实现方法简单,可靠性高。

【技术实现步骤摘要】
一种基于离散傅里叶变换的LED光条纹码检测方法
本专利技术涉及一种LED光条纹码检测方法,尤其涉及一种基于离散傅里叶变换的LED光条纹码检测方法,属于LED视觉检测与识别

技术介绍
近年来,可见光通信(VLC)技术因为其高传输速度、高带宽、高信息安全度、低成本等优点越来越受到广泛的关注。在VLC系统中,以LED作为发射端,通过调制LED使其发出高频闪烁的光信号来传输数据,而人眼无法感知到光的闪烁。在接收端,若使用CMOS摄像头接收光信号,这种VLC系统也被称作可见光成像通信(OCC)系统,它是VLC系统的关联子系统。目前OCC系统是基于图像空间域实现的,即对在图像平面空间上分布的光条纹进行处理,这包括两种方法:一是调制与解调方法,二是调制与特征识别方法。调制与解调方法是通过调制LED发出明暗闪烁的光信号,LED亮代表比特“1”,暗代表比特“0”。接收端使用CMOS摄像头拍摄LED,因为其卷帘效应,拍摄的图像呈现出亮条纹和暗条纹,亮条纹代表比特“1”,暗条纹代表比特“0”。最后通过图像处理技术提取单独的条纹进行解码,获得LED传输的数据。这是OCC的传统实现方法,虽然有一定数据传输速度,但仍存在很多问题。例如该方法受传输距离的影响很大。如果LED与摄像头的距离超过了一定的范围,会导致LED图像上的条纹部分丢失,使数据传输失败。并且最大传输距离也比较短,通常只有10cm-50cm,无法满足实际应用的需求。而调制与特征识别方法可以解决调制解调的诸多问题。调制与特征识别方法使用图像处理算法提取LED条纹图像的特征,并基于这些图像特征用机器学习算法训练分类器。最后根据未判定的LED条纹图像所提取的特征,利用已经训练好的分类器判断图像所属类别,实现LED的检测与识别。一旦LED识别成功,其存储在云端的数据就会直接传输给用户,就如同现在广泛使用的二维码。调制与特征识别方法简单易行,传输距离较长,可以达到3m-6m,能在很多实际场景中应用,如室内可见光定位和室外交通灯识别等。但是,该方法仍然需要复杂的图像处理算法来提取图像特征,在实际应用中无法保证提取效果。并且周围环境的影响也会干扰特征提取,例如LED周围墙面或桌面在拍摄图像上形成的倒影会严重影响特征提取的效果,导致识别出现偏差。以上是基于图像空间域实现OCC的主要问题,解决这些问题是OCC的研究方向。
技术实现思路
针对上述现存的技术问题,本专利技术提供一种基于离散傅里叶变换的LED光条纹码检测方法,把LED图像从图像空间域转换到图像频域,在图像频域上识别LED,抗干扰能力强,实现方法简单,可靠性高。为解决上述技术问题,本专利技术采用如下技术方案:一种基于离散傅里叶变换的LED光条纹码检测方法,包括如下步骤:A.在发射端,利用PWM调制方法使单片机输出不同频率、相同占空比的脉冲信号,调制LED发出闪烁频率不同的光,形成一系列具有不同频率特征的LED;B.在接收端,利用摄像头拍摄LED,经图像处理后对LED图像进行离散傅里叶变换,得到其对应的频谱图;C.对步骤B得到的频谱图进行阈值操作,分离出频谱图上最亮的三个点,它们处于同一水平线上;其中,位于中心的点称为中心点,中心点两边的点称为特征点;D.使用距函数确定步骤C得到的中心点和特征点的横坐标,分别计算左右两边的特征点到中心点的距离,最后计算这两个距离的平均值,得到特征距离;E.建立步骤D中得到的特征距离与对应LED闪烁频率之间的线性关系,获取“闪烁频率-特征距离”数据点;F.对闪烁频率未知的LED进行上述步骤B、步骤C和步骤D,得到其对应的特征距离,根据步骤E得到的线性关系,推算出LED的闪烁频率,实现对该LED的识别。本专利技术进一步的,所述步骤B的图像处理和离散傅里叶变换包括如下步骤:b1.对摄像头拍摄LED图像进行灰度化处理,得到灰度图;b2.将灰度图用像素值为0的像素扩充图像尺寸;b3.将扩充后的图像进行离散傅里叶变换,得到的结果是复数;其中,复数包含实数部分(Re)和虚数部分(Im),复数的幅度M可以表示为:b4.将步骤b3得到的幅度M进行对数尺度缩放,得到新的幅度M’;其中,对数尺度缩放表示为:M′=log(1+M)b5.将步骤b4得到的幅度图进行频谱中心化,重新分布幅度图的象限位置;b6.将步骤b5得到的幅度图进行归一化处理,得到LED图像的频谱图。本专利技术进一步的,所述步骤b5中的频谱中心化是以幅度图长和宽的中线划分,得到四张1/4子图像,把每张子图像看作幅度图的一个象限,互为对角的两个象限交换位置。本专利技术进一步的,所述步骤b2中将灰度图用像素值为0的像素扩充图像尺寸为2、3、5的整数倍。本专利技术进一步的,所述发射端由STM32单片机和LED相连接组成。本专利技术进一步的,所述摄像头为CMOS摄像头。本专利技术进一步的,利用步骤E获取多组“闪烁频率-特征距离”数据点,并用最小二乘法拟合,拟合结果在“闪烁频率-特征距离”的直角坐标系上呈现为一条倾斜直线。采用上述技术方案的有益效果是:(1)不同于基于图像空间域的方法,该基于图像频域的LED光条纹码检测方法没有复杂的图像处理算法,而是简单易行的离散傅里叶变换,简化了对LED图像的研究,提高了对LED识别的可靠性。(2)本方法识别LED具有很强的抗干扰能力,LED周围物体在LED图像上的倒影对频谱图的影响很小,因此对特征距离的计算没有干扰。(3)本方法在有多组精确的“闪烁频率-特征距离”数据点的情况下能拟合出准确的“闪烁频率-特征距离”倾斜直线,实现高效准确地检测与识别不同闪烁频率的LED。附图说明图1是本专利技术的步骤流程示意图;图2是本专利技术一实施例的LED输入信号调制示意图;图3是本专利技术一实施例的LED图像离散傅里叶变换示意图;图4是本专利技术一实施例的频谱图阈值操作和特征距离计算示意图。具体实施方式下面结合附图对本专利技术作进一步详细说明。本专利技术实施例在室内搭建一个LED光条纹码检测系统,该系统包括单片机控制端、LED、移动终端和计算机,且移动终端带有CMOS摄像头,计算机带有图像处理软件。本专利技术的一种实施例:如图1所示,本专利技术一种基于离散傅里叶变换的LED光条纹码检测方法,包括如下步骤:A.在发射端,利用PWM调制方法使STM32单片机输出占空比为50%、频率不同的脉冲信号,调制LED发出闪烁频率不同的光,形成一系列具有不同频率特征的LED。实验中LED的最低闪烁频率是1kHz,最高闪烁频率是65kHz。由于灯光的闪烁频率很高,人眼无法察觉到LED的闪烁现象。B.在接收端,利用CMOS摄像头拍摄LED,经图像处理后对LED图像进行离散傅里叶变换,得到其对应的频谱图。C.如图4所示,对频谱图进行阈值操作,分离出频谱图上最亮的三个点,它们处于同一水平线上,位于中心的点称为“中心点本文档来自技高网
...

【技术保护点】
1.一种基于离散傅里叶变换的LED光条纹码检测方法,其特征在于,包括如下步骤:/nA.在发射端,利用PWM调制方法使单片机输出不同频率、相同占空比的脉冲信号,调制LED发出闪烁频率不同的光,形成一系列具有不同频率特征的LED;/nB.在接收端,利用摄像头拍摄LED,经图像处理后对LED图像进行离散傅里叶变换,得到其对应的频谱图;/nC.对步骤B得到的频谱图进行阈值操作,分离出频谱图上最亮的三个点,它们处于同一水平线上;/n其中,位于中心的点称为中心点,中心点两边的点称为特征点;/nD.使用距函数确定步骤C得到的中心点和特征点的横坐标,分别计算左右两边的特征点到中心点的距离,最后计算这两个距离的平均值,得到特征距离;/nE.建立步骤D中得到的特征距离与对应LED闪烁频率之间的线性关系,获取“闪烁频率-特征距离”数据点;/nF.对闪烁频率未知的LED进行上述步骤B、步骤C和步骤D,得到其对应的特征距离,根据步骤E得到的线性关系,推算出LED的闪烁频率,实现对该LED的识别。/n

【技术特征摘要】
1.一种基于离散傅里叶变换的LED光条纹码检测方法,其特征在于,包括如下步骤:
A.在发射端,利用PWM调制方法使单片机输出不同频率、相同占空比的脉冲信号,调制LED发出闪烁频率不同的光,形成一系列具有不同频率特征的LED;
B.在接收端,利用摄像头拍摄LED,经图像处理后对LED图像进行离散傅里叶变换,得到其对应的频谱图;
C.对步骤B得到的频谱图进行阈值操作,分离出频谱图上最亮的三个点,它们处于同一水平线上;
其中,位于中心的点称为中心点,中心点两边的点称为特征点;
D.使用距函数确定步骤C得到的中心点和特征点的横坐标,分别计算左右两边的特征点到中心点的距离,最后计算这两个距离的平均值,得到特征距离;
E.建立步骤D中得到的特征距离与对应LED闪烁频率之间的线性关系,获取“闪烁频率-特征距离”数据点;
F.对闪烁频率未知的LED进行上述步骤B、步骤C和步骤D,得到其对应的特征距离,根据步骤E得到的线性关系,推算出LED的闪烁频率,实现对该LED的识别。


2.根据权利要求1所述的一种基于离散傅里叶变换的LED光条纹码检测方法,其特征在于,所述步骤B的图像处理和离散傅里叶变换包括如下步骤:
b1.对摄像头拍摄LED图像进行灰度化处理,得到灰度图;
b2.将灰度图用像素值为0的像素扩充图像尺寸;
b3.将扩充后的图像进行离散傅里叶变换,得到的结果是复数;
其中,复数包含实数部分(Re)和虚数部分(Im),...

【专利技术属性】
技术研发人员:关伟鹏肖煜琛伍文飞
申请(专利权)人:深圳市南科信息科技有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1