CN112671999B - 一种支持接收器晃动和用户移动的光学相机通信解调方法 - Google Patents
一种支持接收器晃动和用户移动的光学相机通信解调方法 Download PDFInfo
- Publication number
- CN112671999B CN112671999B CN202011484264.0A CN202011484264A CN112671999B CN 112671999 B CN112671999 B CN 112671999B CN 202011484264 A CN202011484264 A CN 202011484264A CN 112671999 B CN112671999 B CN 112671999B
- Authority
- CN
- China
- Prior art keywords
- stripe
- image
- data
- stripes
- information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims abstract description 58
- 238000004891 communication Methods 0.000 title claims abstract description 28
- 230000003287 optical effect Effects 0.000 title claims abstract description 13
- 238000012545 processing Methods 0.000 claims abstract description 41
- 230000005540 biological transmission Effects 0.000 claims abstract description 8
- 230000009466 transformation Effects 0.000 claims description 27
- 238000004422 calculation algorithm Methods 0.000 claims description 17
- 239000011159 matrix material Substances 0.000 claims description 10
- 238000011426 transformation method Methods 0.000 claims description 7
- 238000003672 processing method Methods 0.000 claims description 5
- 230000000694 effects Effects 0.000 abstract description 5
- 230000007613 environmental effect Effects 0.000 abstract description 5
- 238000010586 diagram Methods 0.000 description 12
- 230000008569 process Effects 0.000 description 8
- 230000002950 deficient Effects 0.000 description 7
- 238000003384 imaging method Methods 0.000 description 7
- 238000004364 calculation method Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 5
- 230000001788 irregular Effects 0.000 description 4
- 238000011160 research Methods 0.000 description 4
- 230000002457 bidirectional effect Effects 0.000 description 3
- 238000001514 detection method Methods 0.000 description 3
- 238000005070 sampling Methods 0.000 description 3
- 230000003247 decreasing effect Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000018109 developmental process Effects 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000013508 migration Methods 0.000 description 2
- 230000005012 migration Effects 0.000 description 2
- 238000005096 rolling process Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000007667 floating Methods 0.000 description 1
- 238000009432 framing Methods 0.000 description 1
- 238000005286 illumination Methods 0.000 description 1
- 238000012805 post-processing Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 230000017260 vegetative to reproductive phase transition of meristem Effects 0.000 description 1
Images
Landscapes
- Optical Communication System (AREA)
Abstract
本发明涉及一种支持接收器晃动和用户移动的光学相机通信解调方法,该方法如下:获取携带原始发送数据的LED条纹视频,提取各帧条纹图像;对条纹图像进行灰度化、二值化处理并提取边缘特征得到二值化条纹图像;将二值化条纹图像转化为规则条纹图像,然后对规则条纹图像采用条纹面积解调方法进行恢复数据;所述的原始发送数据采用曼彻斯特编码,数据包中包含有导频信息。本发明可以忽视“开花效应”对数据产生的影响,更易抗环境噪声,提高通信速率,解决多用户拍摄位置的随机性及晃动移动问题,拥有复杂度低,抗噪声性能强等特点,更容易准确地恢复数据信号。
Description
技术领域
本发明属于可见光相机成像通信技术领域,涉及一种利用智能手机相机卷帘曝光特性拍摄光源所得的明暗条纹面积解决接收器晃动或者用户移动的解调技术。
背景技术
随着科学技术的不断发展,智能手机应用于OCC(Optic Camera Communication)之上的技术也日趋成熟。CMOS采用的是卷帘快门(Rolling Shutter Mechanism),卷帘曝光效应采用逐行曝光的方式,利用这一特性可以提高可见光成像通信的数据速率。每个时刻,CMOS图像传感器只有一行曝光,当图像所有行都曝光结束后,再将不同时刻捕获的所有行曝光的数据合并在一起形成图像,这种逐行曝光方式使得在拍摄快速闪烁的LED灯具时,图像出现明暗相隔的条纹,通过对图像中明暗相隔的条纹解码,可以传递若干位的信息,进而可实现可见光成像通信。研究表明,此类通信系统对于用户位置以及局部的晃动相对敏感,然而在实际的操作过程中,用户接收位置的随机性以及拍摄过程中接收器的晃动或用户移动都会带来数据信息的不准确。此外,在OCC系统中,由于卷帘曝光逐行扫描特性,每个条纹对应的像素列数随着系统比特速率的增大而减少,在利用常规的解调方法进行解调时,像素的列灰度平均值浮动随着比特速率的增大而加剧,进而无法得到准确的数据信息。如当下的基于阈值的判别解调算法,其解调性能易受环境噪声(如光照不均匀)以及上述所提及到的列灰度平均值浮动过大的影响,并且该解调方法并不能解决用户处于随机位置及晃动移动的问题;另外,当下基于条纹宽度的解调算法是通过计算条纹所占据的像素点数目进行判别,然而在实际的操作过程中,由于环境噪声的存在并且每个条纹所占据的像素点数量极少,在高速率的情况下,极易受噪声的干扰,因此并不能提高通信速度,以上所述的两种主流解调方法,都是基于单点像素进行解调解码,其误码率高,抗噪性能差。
国内外对于在OCC技术应用于实际场景中的研究以及针对用户拍摄角度不同所提出的创新型的解调算法的研究较少,存在相应的技术空白。
发明内容
本发明要解决的技术问题是提供一种支持接收器晃动和用户移动的光学相机通信解调方法,该方法可以忽视“开花效应”对数据产生的影响,更易抗环境噪声,提高通信速率,解决多用户拍摄位置的随机性及晃动移动问题,拥有复杂度低,抗噪声性能强等特点,更容易准确地恢复数据信号。
为了解决上述技术问题,本发明的支持接收器晃动和用户移动的光学相机通信解调方法如下:
获取携带原始发送数据的LED条纹视频,提取各帧条纹图像;对条纹图像进行灰度化、二值化处理并提取边缘特征得到二值化条纹图像;将二值化条纹图像转化为规则条纹图像,然后对规则条纹图像采用条纹面积解调方法进行恢复数据;所述的原始发送数据采用曼彻斯特编码,数据包中包含有导频信息。
对规则条纹图像采用条纹面积解调方法进行恢复数据的方法如下:对规则条纹图像进行规则条纹区域标记处理,获得每一个亮条纹面积;根据最小单位面积确定所有数据为‘1’的信息;采用反二值化方法将暗条纹转变为亮条纹,同理确定数据为‘0’的信息;将所有数据为‘1’的信息和数据为‘0’的信息按顺序进行穿插排列,得到每帧条纹图像对应的数据信息;判断导频信息位置,解码恢复原始发送数据。
所述亮条纹面积和暗条纹面积的确定方法如下:
采用rectangle函数对每一个亮条纹添加矩形框,并对每一个矩形框添加Area算法,计算得到每一个亮条纹的面积;将规则条纹图像采用imcomplement函数进行反二值化处理,将亮条纹变为暗条纹,暗条纹变为亮条纹;采用rectangle函数对每一个反二值化处理后的亮条纹添加矩形框,并对每一个矩形框添加Area算法,计算每一个反二值化处理后的亮条纹的面积。
所述的最小单位面积AUnit根据下式确定;
AUnit=AMax/n
式中,n为导频信息中包含连续数据“1”的位数,n≥3;AMax为导频信息中n个数据“1”对应的条纹面积。
进一步,将二值化条纹图像转化为规则条纹图像的方法如下:
利用MATLAB函数bwboundaries进行二值化条纹图像有效区域的位置标记处理,在MTALAB工作区内提取第一个所标识条纹的左上、左下顶点中心位置坐标,记为A(x1,y1)、B(x2,y2),提取最后一个所标识条纹的右上、右下的顶点中心位置坐标,记为C(x3,y3)、D(x4,y4),则
当k1=k2时,若条纹的高度不一致,则将残缺条纹补全至同一高度;采用透视变换方法将二值化条纹图像转换为规则条纹图像;
当k1=0<k2时,若右侧检测到低于左方向下一条纹高度的残缺条纹,则将残缺条纹高度补全至左方向下一条纹同一高度,直至所有残缺条纹高度不低于左方向下一条纹高度;采用裁剪处理方法将二值化条纹图像转换为规则条纹图像;
当k1>k2=0时,若左侧检测到低于向右方向下一条纹高度的残缺条纹,则将残缺条纹高度补全至右方向下一条纹同一高度,直至所有残缺条纹高度不低于右方向下一条纹高度;采用裁剪处理方法将二值化条纹图像转换为规则条纹图像;
当0≠k1<k2时,若右侧检测到低于左方向下一条纹高度的残缺条纹,则将残缺条纹高度补全至左方向下一条纹同一高度,直至所有残缺条纹高度不低于左方向下一条纹高度;采用透视变换方法将二值化条纹图像转换为规则条纹图像;
当k1>k2≠0时,若左侧检测到低于向右方向下一条纹高度的残缺条纹,则将残缺条纹高度补全至右方向下一条纹同一高度,直至所有残缺条纹高度不低于右方向下一条纹高度;采用透视变换方法将二值化条纹图像转换为规则条纹图像。
通过透视变换将二值化条纹图像转换为规则条纹图像的方法如下:
设二值化条纹图像上任一像素点i的原始图像像素坐标为[ui vi wi],则透视变换后的目的图像像素坐标为[u′i v′i w′i]:
其中wi恒等于1,a33=1;将[u′i v′i w′i]整理为[xi yi 1]的形式,其中,xi=u′i/w′i,y=v′i/w′i;式中矩阵C为变换矩阵;上述的变换后像素点i的目的图像像素坐标为:
取二值化条纹图像中第一个条纹上、下两个左顶角的中心坐标以及最后一个条纹上、下两个右顶角的中心坐标A(x1,y1)、C(x3,y3)、B(x2,y2)、D(x4、y4)为4个原始图像像素坐标,4个目的图像像素坐标为k1=k2=0时的二值化条纹图像的四个顶点(0,0)、(0,X)、(Y,0)、(X,Y);矩阵C中除a33外其他8个参数根据以下公式计算:
进一步,本发明采用下述方法对规则条纹图像进行恢复数据:所述的数据包重复发送两次数据信息;若在每帧条纹图像对应的数据信息中检测到一个导频信息,则确定其所在的位置并对整个数据信息进行两个方向采集;导频信息的右侧为数据的前半部分,导频信息的左侧为数据的后半部分,将3部分数据进行整合得到原始发送数据;若一帧条纹图像内含有两个导频信息,选择两个导频信息之间的数据与其中一个导频信息整合得到原始发送数据。
若一帧条纹图像内只含有一个导频信息且导频信息位置处于数据信息的后半部分,则导频信息右侧部分全部使用,剩余部分使用导频信息左侧数据;若导频信息位置处于数据信息的前半部分,则导频信息左侧部分全部使用,剩余部分使用导频信息右侧数据。
本发明的有益效果:
传统的解调方式在实际的应用场景中其解调准确度很大程度上会取决于当下环境噪声以及用户与LED的相对位置是否理想化,因此传统的解调方式适应能力差,并且会对用户的行为要求更为严格,拍摄得到的条纹图像要求更加精准。当用户处于随机位置时,会造成信息传输的不可靠性;由于每个条纹对应的像素列数随着系统比特速率的增大而减少,像素的列灰度平均值浮动随着比特速率的增大而加剧的缺点,本发明提出的基于明暗条纹面积像素群的解调,可以不再关注其像素的列灰度平均值对解调所带来的的影响,进一步的可以减缓由于开花效应所带来的像素间干扰。此外,采样频率偏移影响系统性能的问题,随着智能手机的快速发展,当下智能手机的品牌分类众多以及LED采样频率不同,使得如何缓解SFO成为一个值得研究的问题,本发明提出的基于像素群的解调方法,通过寻找明暗条纹与输出信号的关系,进而缓解了采样频率偏移,本发明可以在满足了用户的通信前提之下同时也降低了对用户的行为要求,使得晃动或移动中的用户可以使用通信。
另外,若透视变换配合传统解调算法来解决拍摄角度的问题,由于透视变换是基于像素点级别的操作,因此在操作过程中涉及众多像素点的迁移变换,不可避免的会对基于单点像素的传统解调带来一定的影响。基于以上的情况,本发明提出了基于明暗条纹面积的解调方法,基于像素群的处理优点,很大程度上减缓了多个像素迁移所带来的影响。并且针对用户随机位置会产生的畸变条纹处理提出了一种判断用户与通信光源的相对位置进而根据相对位置的关系配合图像处理技术,精准的实现数据恢复,以此达到低误码率低复杂度的解调解码方式。
附图说明
图1为本发明的多用户下光学相机通信系统结构示意图。
图2为本发明的条纹图像处理过程示意图。
图3本发明发送端数据包结构示意图。
图4为明暗条纹面积与数据信息对应关系。
图5为本发明的基于条纹面积解调的光学相机通信逻辑流程图。
图6(a)~6(f)为用户手机与LED光源的相对位置及旋转角示意图。
图7(a)~7(f)各相对位置下的畸变条纹示意图。
图8为用户在随机位置下接收数据的判决流程图。
图9(a)、9(b)为基于导频信号的双向解码机制示意图。
图10为本发明基于明暗条纹面积解调的判决准确率图。
图11为本发明基于明暗条纹面积解调的判决平均准确率图。
图中:1.LED光源;2.用户;3.用户手机。
具体实施方式
为使得本发明技术方案以及优点更加的清晰,下面将结合本发明实例中的附图,对本发明的技术方案进行完整地、清晰地描述。需指出的是,以下若有未特别详细说明之过程或符号,均是本领域技术人员可参照现有技术实现的,本发明的关键在于对解调结构提出的技术方案,涉及软件或编程内容的,均是本领域技术人员可参照现有实现的。
如图1、2所示,用户通过智能手机摄像头在通信范围内获取LED条纹视频,得到带有明暗相间条纹的条纹图像。进一步的由于LED光源的位置在空间内是固定位置,而用户在通信过程中的位置相对于LED光源是随机的,在空间位置内用户随机出现。用户在不同位置下,所获得的条纹图像也截然不同。本发明首先对获得的条纹图像进行分帧处理、降噪、灰度值处理、二值化处理后进而判断用户相对于LED光源的位置。通过导频信息确定最小单位面积,即最小单位面积为1个数据‘1’对应的条纹面积;若条纹面积约为最小单位面积的二倍,即为2个数据‘1’;再通过反二值化处理,以上述确定的最小单位面积计算暗条纹面积,若条纹面积约为最小单位面积的二倍,即为2个数据‘0’。由于本发明中所采用的编码方法为曼彻斯特编码,即所原始发送数据中除首部导频信息‘111110’外,其余的数据信息最多的连续数据1或者连续数据0为2位,这也使得亮条纹与暗条纹的最小单位面积确定以及判定连续0、1数据更为准确。随后,亮暗条纹的数据按顺序进行穿插处理,进一步地可恢复原始发送数据。
图3为本发明的数据包结构示意图。由于通信的随机性以及相机帧处理时间的存在,在数据处理阶段无法保证得到的帧图像的起始点为数据发送的起始点。因此在发送数据时添加一个导频信息,在这里我们设定为‘111110’,并且一个数据包重复发送两次数据信息。无论用户在哪一时刻接入系统,该结构设计总能保证在采样的时间内至少存在一个完整的数据信息。在利用条纹面积解调数据时,若检测到‘11111’,即最大的条纹面积,为原始发送数据的首部。奇偶校验位中奇校验位和偶校验位各占1位,对接收到的每帧条纹图像对应的原始发送数据分别进行奇校验和偶校验,若与发送的奇偶校验数据不符,这帧条纹图像对应的原始发送数据将被舍弃。
本发明所述的利用明暗条纹面积解调的逻辑示意图如图4所示,其中包括亮条纹与暗条纹,图4为拍摄得到的LED条纹视频通过帧提取得到的条纹图像。在此选取其中一部分作为描述利用条纹面积解调的逻辑。其中亮条纹即数据为‘1’的信息,暗条纹即数据为‘0’的信息。通过计算所示较窄的亮条纹面积确定最小单位面积,即一个数据‘1’的面积,在此最小单位面积的基础之上,若条纹面积为最小单位面积的N倍,则数据信息即为单位数据信息的N倍。其中,由于编码方式采用曼彻斯特编码,除导频信息外,最多为两个连续的数据信息‘1’,即N≤2;在确定数据‘0’时,将条纹图像进行反二值化处理,即亮条纹数据‘1’变为暗条纹,暗条纹数据‘0’变为亮条纹,进而进行条纹面积计算,重复上述步骤,确定一个最小单位面积即一个数据‘0’面积,在此最小单位面积的基础之上,若面积为最小单位面积的M倍,则数据信息即为单位数据信息的M倍。其中,由于编码方式采用曼彻斯特编码,最多为两个连续的数据信息‘0’,即M≤2。
图5为本发明的基于明暗条纹面积解调的光学相机通信逻辑流程图,仅仅作为举例,本实施例中,提出了一种基于明暗条纹面积进行独立信号解调的方法,可以同时适用于正常拍摄条纹以及如图1所示的由于用户的拍摄角度不同所导致的畸变条纹,其步骤包括:
步骤一:获取一段携带原始发送数据的LED条纹视频,提取各帧条纹图像;
步骤二:对条纹图像进行灰度化、二值化处理并提取边缘特征得到二值化条纹图像;
步骤三:判断二值化条纹图像中条纹的倾斜程度,确定用户与LED光源的相对位置;判断二值化条纹图像中是否存在残缺条纹,若有则对残缺条纹进行检测补全处理;
步骤四:根据上述步骤三中确定的用户与LED光源的相对位置、条纹倾斜程度,配合裁剪处理或透视变换方法将不规则的二值化条纹图像转换为规则条纹图像;
步骤五:将步骤四得到的规则条纹图像进行规则条纹区域标记处理,获得每一个矩形框的面积(即亮条纹面积);量化上述所得的亮条纹面积,根据最小单位面积得到所有数据为‘1’的信息;
步骤六:在解调数据信息‘0’的过程中,采用反二值化方法将数据信息‘0’的条纹(暗条纹)转变为亮条纹,后重复上述步骤五的方法,确定数据为‘0’的信息;
步骤七:将所有数据为‘1’的信息和数据为‘0’的信息按顺序进行穿插排列,得到每帧条纹图像对应的数据信息;判断导频信息位置,双向解码恢复原始发送数据。
所述步骤三的判断二值化条纹图像中条纹的倾斜程度,确定用户与LED光源的相对位置,具体方法如下:
利用MATLAB函数bwboundaries进行二值化条纹图像有效区域的位置标记处理,在MTALAB工作区内提取第一个所标识条纹的左上、左下顶点中心位置坐标,记为A(x1,y1)、B(x2,y2);提取最后一个所标识条纹的右上、右下的顶点中心位置坐标,记为C(x3,y3)、D(x4,y4),二值化条纹图像上边的斜率为k1,下边斜率为k2;
1)若k1=k2=0,那么用户所在方向为LED光源正视角且手机无倾斜拍摄。
2)若k1=k2≠0,那么用户所在方向为LED光源正视角且手机倾斜拍摄。
3)若k1=0<k2,那么用户所在方向为LED光源右侧拍摄。
4)若k1>k2=0,那么用户所在方向为为LED光源左侧拍摄。
5)若0≠k1<k2,那么用户所在方向为LED光源右侧视角且手机倾斜拍摄。
6)若k1>k2≠0,那么用户所在方向为LED光源左侧视角且手机倾斜拍摄。
所述步骤三中的残缺条纹检测处理具体步骤如下:
当用户处于LED光源侧边拍摄时,由于卷帘曝光逐行扫描的特性,对应LED光源的两端可能会存在残缺的条纹,若直接采用面积解调,其会产生误码。因此本发明提出残缺条纹检测与补全的方法,以此解决残缺条纹的问题。
残缺条纹检测与补全:在上述步骤二中的边缘特征提取时,将亮条纹所占像素区间的高度输出,根据上述确定的LED光源倾斜程度与用户的相对位置以及相机成像远小近大的规律,判别条纹是否残缺。若在正视角下拍摄,那么条纹的高度是一致的,若条纹的高度不一致,那么将条纹补全至同一高度;若在左侧拍摄则条纹的高度是从左往右依次递减,例如从左至右高度依次为10、9、8、7……,则不存在残缺条纹;若检测到左侧第一个条纹高度为8,低于第二个条纹高度,则判定第一个条纹为残缺条纹,以第二个条纹为参考,将第一个条纹高度补全到9;若检测到左侧第一个条纹高度为5,第二个条纹高度为6,第三个条纹高度为7,则判定第一、第二个条纹为残缺条纹,以第三个条纹为参考,将第一、第二个条纹高度补全到7;同理,若在右侧拍摄则条纹的高度是从右往左依次递减,若检测到右侧的某一条纹高度低于下一个条纹那么即判定为残缺条纹,以下一个条纹高度为参考,将残缺条纹的高度补全至下一个条纹的高度;补全残缺条纹的方法采用插值的方法,将二值化后的残缺条纹的补全区域内的灰度值全部设置为1,进而达到残缺条纹补全的目的。
所述步骤四中,通过透视变换将不规则的二值化条纹图像转化为规则条纹图像的具体步骤如下:
如图6(a)~6(f)所示,由于用户通信位置的随机性,用户所出现的位置为LED光源前方180°范围内随机出现,对应上述步骤三中六种LED光源与用户相对位置,其二值化条纹图像会出现六种情况如图7(a)~7(f)所示:
(1)如图6(a),若用户在LED光源正视角方向且手机无倾斜拍摄,其二值化条纹图像如图7(a),可直接采用条纹面积解调进行恢复数据,或者对二值化条纹图像进行透视变换后,采用条纹面积解调进行恢复数据;
(2)如图6(b),若用户在LED光源正视角方向且手机倾斜拍摄,其二值化条纹图像如图7(b),经透视变换后即可转换为规则条纹图像,进而采用条纹面积解调的方式恢复数据;
(3)如图6(c),若用户在LED光源右侧拍摄,其二值化条纹图像如图7(c),由于用户处于相对于LED光源的右侧方向,相机存在远小近大的成像规律,因此左侧的条纹相较于右侧的条纹面积较小。由于右侧手机无倾斜的拍摄情况下,所拍摄二值化条纹图像上边的斜率为0,因此本发明提出结合裁剪处理方法,将所示二值化条纹图像转换为具有规则性等长矩形条纹的规则条纹图像,进而采用条纹面积解调的方式恢复数据;
(4)如图6(d),若用户在LED光源左侧拍摄,其二值化条纹图像如图7(d),由于用户处于相对于LED光源的左侧方向,由于相机存在远小近大的成像规律,因此左侧的条纹相较于右侧的条纹面积较大。由于左侧手机无倾斜的拍摄情况下,所拍摄二值化条纹图像上边的斜率为0,因此本发明提出结合裁剪处理,将所示二值化条纹图像转换为具有规则性等长矩形条纹的规则条纹图像,进而采用条纹面积解调的方式恢复数据;
(5)如图6(e),若用户在LED光源右侧视角且手机倾斜拍摄,其条纹图像如图7(e),此时二值化条纹图像会出现远小近大的成像规律并且由于手机倾斜拍摄导致条纹畸变。基于卷帘曝光特性及相机成像规律,其条纹宽度所占据的像素点数不变,基于此本发明提出了采用明暗条纹面积解调配合透视变换的方法进行解调,将不规则的二值化条纹图像转换为规则条纹图像,进而采用条纹面积解调的方式恢复数据。
(6)如图6(f),若用户在LED光源左侧视角且手机倾斜拍摄,其二值化条纹图像如图7(f),同理,基于此本发明提出了采用明暗条纹面积解调配合透视变换的方法进行解调,将不规则的二值化条纹图像转换为规则条纹图像,进而采用条纹面积解调的方式恢复数据。
所述步骤四中的透视变换具体步骤如下:
透视变换是将图片投影至一个新的视平面,由于用户在随机位置的情况下,可能存在不正对于LED光源的情况,因此在OCC解调之中添加透视变换技术,可以使得解调的复杂度更低。设二值化条纹图像上任一像素点i的原始图像像素坐标为[ui vi wi],则透视变换后的目的图像像素坐标为[u′i v′i w′i]:
u′i v′i w′i]=[ui vi wi]×C
由于OCC解调部分处理的图像为二维图像,wi恒等于1,a33=1,因此将[u′i v′i w′i]整理为[xi yi 1]的形式,其中,xi=u’i/W’i,y=v’i/W’i,式中矩阵C为变换矩阵,包括图像线性变换、透视变换以及平移。上述的变换后像素点i的目的图像像素坐标为:
实现透视变换需要已知4个原始图像像素坐标以及4个目的图像像素坐标,共计8对已知坐标。本发明在所接收到的帧条纹图像中,取二值化条纹图像中第一个条纹上、下两个左顶角的中心坐标以及最后一个条纹上、下两个右顶角的中心坐标为4个原始图像像素坐标,即上述步骤三所确定的A(x1,y1)、C(x3,y3)、B(x2,y2)、D(x4,y4)四对原始图像像素坐标,设4个目的图像像素坐标为正视角且手机无倾斜拍摄下二值化条纹图像的四个顶点,在本发明中设定这四个顶点为:(0,0)、(0,400)、(400,0)、(400,400);由于a33=1,因此矩阵C的除a33的8个参数由上述确定的8对像素坐标确定,即转换为8个方程8个未知数的问题,其具体计算公式如下:
由上述8个方程计算出矩阵C的8个参数后,即可将畸变条带内的所有像素点迁移至新的视平面。
所述步骤五中的明暗条纹面积计算具体步骤如下:
在步骤二中,对条纹边缘特征提取的算法中,已经添加了计算条纹面积的算法,具体算法如下:
1)用户在LED光源正视角方向且手机无倾斜拍摄
经步骤二条纹边缘特征提取后,可以对二值化条纹图像中的规则条纹图像直接采用rectangle函数对每一个亮条纹添加矩形框,并对每一个矩形框添加Area算法,计算每一个亮条纹的面积;返回上一级,将二值化条纹图像采用imcomplement函数进行反二值化处理,即亮条纹变为暗条纹、暗条纹变为亮条纹,重复上述步骤得到的条纹面积即为暗条纹面积;也可以对二值化条纹图像进行透视变换得到规则条纹图像,再采用rectangle函数对每一个亮条纹添加矩形框,并对每一个矩形框添加Area算法,计算每一个亮条纹的面积;返回上一级,将规则条纹图像采用imcomplement函数进行反二值化处理,即亮条纹变为暗条纹、暗条纹变为亮条纹,重复上述步骤得到的条纹面积即为暗条纹面积。
2)用户在LED光源正视角方向且手机倾斜拍摄
将二值化条纹图像边角的四个顶点作为原始图像像素坐标,经透视变换后,得到规则条纹图像;采用rectangle函数对每一个亮条纹添加矩形框,并对每一个矩形框添加Area算法,计算每一个亮条纹的面积;返回上一级,将二值化条纹图像采用imcomplement函数进行反二值化处理,即亮条纹变为暗条纹、暗条纹变为亮条纹,重复上述步骤得到的面积即为暗条纹面积。
3)用户在LED光源右侧且手机无倾斜拍摄
将二值化条纹图像经裁剪处理转换为规则条纹图像,采用rectangle函数对每一个亮条纹添加矩形框,并对每一个矩形框添加Area算法,计算每一个亮条纹的面积;返回上一级,将规则条纹图像采用imcomplement函数进行反二值化处理,即亮条纹变为暗条纹、暗条纹变为亮条纹,重复上述步骤得到的面积即为暗条纹面积。
4)若用户在LED光源左侧且手机倾斜拍摄
将二值化条纹图像经透视变换得到规则条纹图像,每一个条纹都为规则的矩形等长条纹,采用rectangle函数对每一个亮条纹添加矩形框,并对每一个矩形框添加Area算法,计算每一个亮条纹的面积;返回上一级,将规则条纹图像采用imcomplement函数进行反二值化处理,即亮条纹变为暗条纹、暗条纹变为亮条纹,重复上述步骤得到的面积即为暗条纹面积,将所划分的条纹区域所得到的面积按顺序保存,即可得到全部条纹的面积。
所述步骤五中的量化条纹面积得到最小单位面积的具体步骤如下:
上述步骤三所提及理想化条纹以及五种条纹畸变的面积计算在步骤五中已详细展开讲述,其中心思想为将畸变条纹转换为规则的等长条纹,因此转换为等长的条纹后,其最小单位面积的计算具体如下:
AUnit=AMax/5
式中,AUnit为数据0、1的最小单位面积;AMax为导频信息‘11111’对应的条纹面积。
所述步骤六中的反二值化具体步骤如下:
步骤六对规则条纹图像进行的反二值化处理就是将已处理成的二值化图像上的亮条纹转化成暗条纹,暗条纹转化成亮条纹,即将整个图像呈现出明显的黑白效果进行反转化处理的过程。其数学表达式为:
式中g(x,y)为输入图像;f(x,y)为输出图像;
如图8所示,为本发明所述的用户在随机位置下接收数据的判决流程图,上述图6(a)~6(f)中将用户与LED光源的相对位置描述为6种情况,所述的判决流程图具体地解释了如何根据所判断地6种情况进行解调解码。首先进行灰度值处理,残缺条纹补全后,若二值化条纹图像的上、下边斜率符合条件1,那么经残缺条纹补全后的二值化条纹图像直接经透视变换后处理计算明暗条纹面积;若符合条件2,那么经残缺条纹补全后的二值化条纹图像提取规则条纹区域后计算明暗条纹面积;若符合条件3,经残缺条纹补全后的二值化条纹图像经透视变换后提取规则条纹区域后计算明暗条纹面积,进而恢复数据。
如图9所示,为本发明所述的双向解码示意图。上述的方法已经得到一具LED光源中所发送的数据信息。由于通信的随机性以及相机帧处理时间的存在,我们无法保证我们得到的条纹图像的起始点为数据发送的起始点。因此在发送数据时添加一个导频信息,在这里我们设定为‘111110’,并且一个数据包重复发送两次数据信息。在利用面积解调数据时,若检测到‘11111’即最大的面积为发送数据的首部;若整个数据帧的长度为L,在整合的数据信息中检测到‘11111’的后,确定其所在的位置,采用“双向解码”的方法,对整个数据两个方向进行采集,数据的右侧为数据的前半部分,数据的左侧为数据的后半部分,结合导频数据,将3部分数据进行整合即为原始发送数据。如图9(a)所示,若一帧条纹图像内只含有一个导频数据,若导频数据位置处于数据帧的后半部分,则可选数据的右侧部分全部使用,剩余部分使用左侧数据;若导频数据位置处于数据帧的前半部分,则可选数据的左侧部分全部使用,剩余部分使用右侧数据;如图9(b)所示,若一帧条纹图像内含有两个导频信息,选择两个导频信息之间的数据与其中一个导频信息整合得到原始发送数据。
图10示出的4名用户按照图6(a)~6(f)所示的六种预设情况进行测试所得到的准确率;图11示出的4名用户按照图6(a)~6(f)所示的六种预设情况进行测试所得的平均准确率。经实验所测,平均准确率在预设情况下可达96%以上,并且在正视角拍摄及正视角手机倾斜拍摄的情况下,平均准确率接近100%,当用户在侧视角手机无倾斜拍摄以及侧视角手机倾斜拍摄时,其误码率较上述两种情况略高,但整体判决平均准确率维持在96%以上。
Claims (5)
1.一种支持接收器晃动和用户移动的光学相机通信解调方法,其特征在于该方法如下:
获取携带原始发送数据的LED条纹视频,提取各帧条纹图像;对条纹图像进行灰度化、二值化处理并提取边缘特征得到二值化条纹图像;将二值化条纹图像转化为规则条纹图像,然后对规则条纹图像采用条纹面积解调方法进行恢复数据;所述的原始发送数据采用曼彻斯特编码,数据包中包含有导频信息;对规则条纹图像采用条纹面积解调方法进行恢复数据的方法如下:对规则条纹图像进行规则条纹区域标记处理,获得每一个亮条纹面积;根据最小单位面积确定所有数据为‘1’的信息;采用反二值化方法将暗条纹转变为亮条纹,同理确定数据为‘0’的信息;将所有数据为‘1’的信息和数据为‘0’的信息按顺序进行穿插排列,得到每帧条纹图像对应的数据信息;判断导频信息位置,解码恢复原始发送数据;
所述的最小单位面积AUnit根据下式确定;
AUnit=AMax/n
式中,n为导频信息中包含连续数据“1”的位数,n≥3;AMax为导频信息中n个数据“1”对应的条纹面积;
将二值化条纹图像转化为规则条纹图像的方法如下:
利用MATLAB函数bwboundaries进行二值化条纹图像有效区域的位置标记处理,在MTALAB工作区内提取第一个所标识条纹的左上、左下顶点中心位置坐标,记为A(x1,y1)、B(x2,y2),提取最后一个所标识条纹的右上、右下的顶点中心位置坐标,记为C(x3,y3)、D(x4,y4),则
当k1=k2时,若条纹的高度不一致,则将残缺条纹补全至同一高度;采用透视变换方法将二值化条纹图像转换为规则条纹图像;
当k1=0<k2时,若右侧检测到低于左方向下一条纹高度的残缺条纹,则将残缺条纹高度补全至左方向下一条纹同一高度,直至所有残缺条纹高度不低于左方向下一条纹高度;采用裁剪处理方法将二值化条纹图像转换为规则条纹图像;
当k1>k2=0时,若左侧检测到低于向右方向下一条纹高度的残缺条纹,则将残缺条纹高度补全至右方向下一条纹同一高度,直至所有残缺条纹高度不低于右方向下一条纹高度;采用裁剪处理方法将二值化条纹图像转换为规则条纹图像;
当0≠k1<k2时,若右侧检测到低于左方向下一条纹高度的残缺条纹,则将残缺条纹高度补全至左方向下一条纹同一高度,直至所有残缺条纹高度不低于左方向下一条纹高度;采用透视变换方法将二值化条纹图像转换为规则条纹图像;
当k1>k2≠0时,若左侧检测到低于向右方向下一条纹高度的残缺条纹,则将残缺条纹高度补全至右方向下一条纹同一高度,直至所有残缺条纹高度不低于右方向下一条纹高度;采用透视变换方法将二值化条纹图像转换为规则条纹图像。
2.根据权利要求1所述的支持接收器晃动和用户移动的光学相机通信解调方法,其特征在于所述亮条纹面积和暗条纹面积的确定方法如下:
采用rectangle函数对每一个亮条纹添加矩形框,并对每一个矩形框添加Area算法,计算得到每一个亮条纹的面积;将规则条纹图像采用imcomplement函数进行反二值化处理,将亮条纹变为暗条纹,暗条纹变为亮条纹;采用rectangle函数对每一个反二值化处理后的亮条纹添加矩形框,并对每一个矩形框添加Area算法,计算每一个反二值化处理后的亮条纹的面积。
3.根据权利要求1所述的支持接收器晃动和用户移动的光学相机通信解调方法,其特征在于通过透视变换将二值化条纹图像转换为规则条纹图像的方法如下:
设二值化条纹图像上任一像素点i的原始图像像素坐标为[ui vi wi],则透视变换后的目的图像像素坐标为[u′i v′i w′i]:
其中wi恒等于1,a33=1;将[u′i v′i w′i]整理为[xi yi 1]的形式,其中,xi=u’i/w’i,y=v’i/w’i;式中矩阵C为变换矩阵;上述的变换后像素点i的目的图像像素坐标为:
取二值化条纹图像中第一个条纹上、下两个左顶角的中心坐标以及最后一个条纹上、下两个右顶角的中心坐标A(x1,y1)、C(x3,y3)、B(x2,y2)、D(x4,y4)为4个原始图像像素坐标,4个目的图像像素坐标为k1=k2=0时的二值化条纹图像的四个顶点(0,0)、(0,X)、(Y,0)、(X,Y);矩阵C中除a33外其他8个参数根据以下公式计算:
4.根据权利要求1所述的支持接收器晃动和用户移动的光学相机通信解调方法,其特征在于采用下述方法对规则条纹图像进行恢复数据:所述的数据包重复发送两次数据信息;若在每帧条纹图像对应的数据信息中检测到一个导频信息,则确定其所在的位置并对整个数据信息进行两个方向采集;导频信息的右侧为数据的前半部分,导频信息的左侧为数据的后半部分,将3部分数据进行整合得到原始发送数据;若一帧条纹图像内含有两个导频信息,选择两个导频信息之间的数据与其中一个导频信息整合得到原始发送数据。
5.根据权利要求4所述的支持接收器晃动和用户移动的光学相机通信解调方法,其特征在于若一帧条纹图像内只含有一个导频信息且导频信息位置处于数据信息的后半部分,则导频信息右侧部分全部使用,剩余部分使用导频信息左侧数据;若导频信息位置处于数据信息的前半部分,则导频信息左侧部分全部使用,剩余部分使用导频信息右侧数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011484264.0A CN112671999B (zh) | 2020-12-16 | 2020-12-16 | 一种支持接收器晃动和用户移动的光学相机通信解调方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011484264.0A CN112671999B (zh) | 2020-12-16 | 2020-12-16 | 一种支持接收器晃动和用户移动的光学相机通信解调方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112671999A CN112671999A (zh) | 2021-04-16 |
CN112671999B true CN112671999B (zh) | 2021-12-21 |
Family
ID=75405266
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011484264.0A Expired - Fee Related CN112671999B (zh) | 2020-12-16 | 2020-12-16 | 一种支持接收器晃动和用户移动的光学相机通信解调方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112671999B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113055090B (zh) * | 2021-05-11 | 2022-03-22 | 吉林大学 | 与拍摄方位无关的多光源光学成像通信系统 |
CN114157357B (zh) * | 2022-01-07 | 2023-08-22 | 吉林大学 | 支持终端旋转平移的多幅度可见光信号成像通信解调方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9008352B2 (en) * | 2012-12-27 | 2015-04-14 | Panasonic Intellectual Property Corporation Of America | Video display method |
CN107169952B (zh) * | 2017-03-07 | 2021-07-23 | 广东顺德中山大学卡内基梅隆大学国际联合研究院 | 一种用于可见光成像定位的条纹识别和信息检测方法 |
CN107888288A (zh) * | 2017-11-07 | 2018-04-06 | 华南理工大学 | 一种基于移动终端的短距离可见光通信方法及其硬件系统 |
-
2020
- 2020-12-16 CN CN202011484264.0A patent/CN112671999B/zh not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
CN112671999A (zh) | 2021-04-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112671999B (zh) | 一种支持接收器晃动和用户移动的光学相机通信解调方法 | |
Boubezari et al. | Smartphone camera based visible light communication | |
CN109636754B (zh) | 基于生成对抗网络的极低照度图像增强方法 | |
CN110084757B (zh) | 一种基于生成对抗网络的红外深度图像增强方法 | |
US8179466B2 (en) | Capture of video with motion-speed determination and variable capture rate | |
Pramila et al. | Increasing the capturing angle in print-cam robust watermarking | |
CN107566684B (zh) | 图像处理装置、图像处理方法及存储介质 | |
CN111028165B (zh) | 一种基于raw数据抵抗相机抖动的高动态图像恢复方法 | |
WO2004093433A1 (ja) | コード認識方法及び装置 | |
KR101906796B1 (ko) | 딥러닝 기반 영상 분석 장치 및 영상 분석 방법 | |
CN114157357B (zh) | 支持终端旋转平移的多幅度可见光信号成像通信解调方法 | |
US20060045389A1 (en) | Automatic meter reading | |
Ji et al. | A single LED lamp positioning system based on CMOS camera and visible light communication | |
CN110580481A (zh) | 一种基于epi的光场图像关键位置检测方法 | |
WO2022179251A1 (zh) | 图像处理方法及装置、电子设备、存储介质 | |
CN107196705A (zh) | 一种基于可见光通信的数据解调方法与装置 | |
CN108491747B (zh) | 一种融合图像后美化qr码的方法 | |
CN106791869A (zh) | 基于光场子孔径图像相对位置关系的快速运动搜索方法 | |
JP3955910B2 (ja) | 画像信号処理方法 | |
CN107888288A (zh) | 一种基于移动终端的短距离可见光通信方法及其硬件系统 | |
CN107682692B (zh) | 光成像通信的自适应检测系统及方法 | |
EP3139341A1 (en) | Methods, systems and apparatus for specular highlight reconstruction | |
CN113196742B (zh) | 计算机实现的方法、系统和计算机可读介质 | |
Thongkor et al. | Robust image watermarking for camera-captured image using image registration technique | |
Hui et al. | Spatio-temporal context based adaptive camcorder recording watermarking |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20211221 |
|
CF01 | Termination of patent right due to non-payment of annual fee |