识别摄像机接收的可见光通信信号的方法和装置制造方法

文档序号:6517979阅读:287来源:国知局
识别摄像机接收的可见光通信信号的方法和装置制造方法
【专利摘要】本发明涉及一种识别摄像机接收的可见光通信信号的方法和装置,以及利用该装置的光子接收器。该方法包括以下步骤:从摄像机获得包含可见光通信信号的多帧图像。处理每一帧图像以识别该帧图像中的光斑,包括搜索该帧图像中的灰度值最大的像素点,作为第一光斑的中心点;确定该第一光斑的边界;依据该第一光斑的边界与该第一光斑的中心点的距离确定该第一光斑的尺寸;根据所确定的第一光斑的边界确认该第一光斑是否为有效光斑。最后,依据所识别的光斑恢复该可见光通信信号。
【专利说明】识别摄像机接收的可见光通信信号的方法和装置
【技术领域】
[0001]本发明涉及可见光通信领域,尤其是涉及一种识别摄像机接收的可见光通信信号的方法和装置,以及利用该装置的光子接收器。
【背景技术】
[0002]可见光通信是一种在LED技术上发展起来的新兴的、短距离高速无线光通信技术。可见光通信的基本原理就是利用发光二极管(LED)比荧光灯和白炽灯切换速度快的特点,通过LED光源的高频率闪烁来进行通信。有光代表二进制1,无光代表二进制O。包含了数字信息的高速光信号经过光电转换即可获得信息。无线光通信技术因为其数据不易被干扰和捕获,光通信设备制作简单且不宜损坏或消磁,可以用来制作无线光加密钥匙。与微波技术相比,无线光通信有相当丰富的频谱资源,这是一般微波通信和无线通信无法比拟的;同时可见光通信可以适用任何通信协议、适用于任何环境;在安全性方面,无线光通信相比传统的磁性材料,无需担心消磁问题,更不必担心通信内容被人窃取;无线光通信的设备架设灵活便捷,且成本低廉,适合大规模普及应用。
[0003]目前可见光信号的接收端普遍地采用基于光电二极管(例如PIN、APD等)的光信号接收器。光信号接收器接收光信号后,进行光电转换,然后再对转换出来的电信号进行解码等信号处理,还原成原信号。但是这要求接收端配备基于光电二极管的光信号接收器,增加了成本。
[0004]已经提出了使用摄像机作为可见光通信的接收端的光接收器的设想,例如CN1702984。然而与光电二极管仅感测单点光强变化不同的是,摄像机所采集到的平面感光图像。还需要对这些图像进行处理,以识别其中包含的可见光通信信号。尽管存在处理图像以识别亮度或颜色不同的局部区域的通用图像处理技术,但是使用这样的通用技术来识别摄像机所拍摄的连续感光图像中的局部区域,其效能及速度均不理想。
[0005]有鉴于此,希望有一种专门识别摄像机接收的可见光通信信号的方法。

【发明内容】

[0006]本发明所要解决的技术问题是提供一种简单、有效的识别摄像机接收的可见光通信信号的方法及装置。
[0007]本发明为解决上述技术问题而采用的技术方案是提出一种识别摄像机接收的可见光通信信号的方法,包括以下步骤:从摄像机获得包含可见光通信信号的多帧图像;依照下述步骤处理每一帧图像以识别该帧图像中的光斑:搜索该帧图像中的灰度值最大的像素点,作为第一光斑的中心点;确定该第一光斑的边界;依据该第一光斑的边界与该第一光斑的中心点的距离,确定该第一光斑的尺寸;以及根据所确定的第一光斑的边界和尺寸确认第一光斑是否为有效光斑;依据所识别的光斑恢复该可见光通信信号。
[0008]在本发明的一实施例中,确定该第一光斑的边界的步骤包括:沿第一方向按距离从小到大依次计算与该第一光斑的中心点相距一距离的像素点的灰度值,并以灰度值在该第一方向的突变点的前一像素点作为该第一光斑在该第一方向的边界。
[0009]在本发明的一实施例中,确定该第一光斑的边界的步骤还包括:沿第二方向按距离从小到大依次计算与该第一光斑的中心点相距一距离的像素点的灰度值,并以灰度值在该第二方向的突变点的前一像素点作为该第一光斑在该第二方向的边界。
[0010]在本发明的一实施例中,该第一方向与该第二方向相反。
[0011]在本发明的一实施例中,以灰度值在该第一方向的突变点的前一像素点作为该第一光斑在该第一方向的边界的步骤包括:如果有一第一像素点的灰度值小于一灰度阈值,则以该第一像素点的前一像素点作为该第一光斑在该第一方向的边界,否则以该帧图像在该第一方向的边界作为该第一光斑在该第一方向的边界。
[0012]在本发明的一实施例中,以灰度值在该第二方向的突变点的前一像素点作为该第一光斑在该第二方向的边界的步骤包括:如果有一第二像素点的灰度值小于一灰度阈值,则以该第二像素点的前一像素点作为该第一光斑在该第二方向的边界,否则以该帧图像在该第二方向的边界作为该第一光斑在该第二方向的边界。
[0013]在本发明的一实施例中,该灰度阈值为该帧图像的平均灰度值。
[0014]在本发明的一实施例中,选择该第一光斑在该第一方向和该第二方向的边界与该第一光斑的中心点的距离的较大值,作为该第一光斑的尺寸。
[0015]在本发明的一实施例中,根据所确定的第一光斑的边界确认第一光斑是否为有效光斑的步骤包括:判断该第一光斑的任一边界是否位于图像的边界,如果不是,则该第一光斑为有效光斑。
[0016]在本发明的一实施例中,根据所确定的第一光斑的尺寸确认第一光斑是否为有效光斑的步骤包括:判断该第一光斑的尺寸是否大于一阈值,如果是,则确认该第一光斑为有效光斑。
[0017]在本发明的一实施例中,上述方法还依照下述步骤识别该帧图像中的第二光斑:搜索该帧图像中位于该第一光斑以外区域的灰度值最大的像素点,作为第二光斑的中心点;确定该第二光斑的边界;依据该第二光斑的边界与该第二光斑的中心点的距离,确定该第一光斑的尺寸;以及根据所确定的第二光斑的边界和尺寸确认该第二光斑是否为有效光斑。
[0018]在本发明的一实施例中,确定该第二光斑的边界的步骤包括:沿第一方向按距离从小到大依次计算与该第二光斑的中心点相距一距离的像素点的灰度值,并以灰度值在该第一方向的突变点的前一像素点作为该第二光斑在该第一方向的边界。
[0019]在本发明的一实施例中,确定该第二光斑的边界的步骤还包括:沿第二方向按距离从小到大依次计算与该第二光斑的中心点相距一距离的像素点的灰度值,并以灰度值在该第二方向的突变点的前一像素点作为该第二光斑在该第二方向的边界。
[0020]在本发明的一实施例中,搜索该帧图像中位于该第一光斑以外区域的灰度值最大的像素点的步骤包括:将该帧图像的第一光斑中像素点的灰度值置为该图像的平均灰度值,获得一修改图像;以及搜索该修改图像中灰度值最大的像素点。
[0021]在本发明的一实施例中,以灰度值在该第一方向的突变点的前一像素点作为该第二光斑在该第一方向的边界的步骤包括:如果有一第一像素点的灰度值小于一灰度阈值,则以该第一像素点的前一像素点作为该第二光斑在该第一方向的边界,否则以该帧图像在该第一方向的边界作为该第二光斑在该第一方向的边界。
[0022]在本发明的一实施例中,以灰度值在该第二方向的突变点的前一像素点作为该第二光斑在该第二方向的边界的步骤包括:如果有一第二像素点的灰度值小于一灰度阈值,则以该第二像素点的前一像素点作为该第二光斑在该第二方向的边界,否则以该帧图像在该第二方向的边界作为该第二光斑在该第二方向的边界。
[0023]在本发明的一实施例中,该灰度阈值为该帧图像的平均灰度值。
[0024]在本发明的一实施例中,处理每一帧图像以识别该帧图像中的光斑的步骤还包括:按一预定比例缩小该帧图像。
[0025]在本发明的一实施例中,处理每一帧图像以识别该帧图像中的光斑的步骤还包括,对图像进行降噪处理。
[0026]在本发明的一实施例中,该预定比例为图像的行像素数和列像素数的公约数。
[0027]在本发明的一实施例中,当该摄像机常态为低帧速模式时,上述方法还包括:识别该可见光通信信号中预定序列的开始码;将该摄像机切换到高帧速模式。
[0028]在本发明的一实施例中,上述方法还包括:识别该可见光通信信号中预定序列的结束码;将该摄像机切换到低帧速模式。
[0029]在本发明的一实施例中,切换该摄像机的帧速模式的方法包括:修改该摄像机的感光器的寄存器。
[0030]在本发明的一实施例中,该摄像机的感光器为CMOS感光器。
[0031]本发明还提出一种识别摄像机接收的可见光通信信号的装置,包括:用于从摄像机获得包含可见光通信信号的多帧图像的模块;用于处理每一帧图像以识别该帧图像中的光斑的模块,包括:用于搜索该帧图像中的灰度值最大的像素点,作为第一光斑的中心点的模块;用于确定该第一光斑的边界的模块;用于依据该第一光斑的边界与该第一光斑的中心点的距离,确定该第一光斑的尺寸的模块;以及用于根据所确定的第一光斑的边界和尺寸确认该第一光斑是否为有效光斑的模块;用于依据所识别的光斑恢复该可见光通信信号的模块。
[0032]在本发明的一实施例中,用于确定该第一光斑的边界的模块包括:用于沿第一方向按距离从小到大依次计算与该第一光斑的中心点相距一距离的像素点的灰度值,并以灰度值在该第一方向的突变点的前一像素点作为该第一光斑在该第一方向的边界的模块。
[0033]在本发明的一实施例中,用于确定该第一光斑的边界的模块还包括:用于沿第二方向按距离从小到大依次计算与该第一光斑的中心点相距一距离的像素点的灰度值,并以灰度值在该第二方向的突变点的前一像素点作为该第一光斑在该第二方向的边界的模块。
[0034]在本发明的一实施例中,该第一方向与该第二方向相反。
[0035]在本发明的一实施例中,在该用于沿第一方向按距离从小到大依次计算与该第一光斑的中心点相距一距离的像素点的灰度值,并以灰度值在该第一方向的突变点的前一像素点作为该第一光斑在该第一方向的边界的模块中,如果有一第一像素点的灰度值小于一灰度阈值,则以该第一像素点的前一像素点作为该第一光斑在该第一方向的边界,否则以该中贞图像在该第一方向的边界作为该第一光斑在该第一方向的边界。
[0036]在本发明的一实施例中,在该用于沿第二方向按距离从小到大依次计算与该第一光斑的中心点相距一距离的像素点的灰度值,并以灰度值在该第二方向的突变点的前一像素点作为该第一光斑在该第一方向的边界的模块中,如果有一第二像素点的灰度值小于一灰度阈值,则以该第二像素点的前一像素点作为该第一光斑在该第二方向的边界,否则以该帧图像在该第二方向的边界作为该第一光斑在该第二方向的边界。
[0037]在本发明的一实施例中,该灰度阈值为该帧图像的平均灰度值。
[0038]在本发明的一实施例中,用于根据所确定的第一光斑的边界和尺寸确认第一光斑是否为有效光斑的模块是判断该第一光斑的任一边界是否位于图像的边界,如果不是,则该第一光斑为有效光斑。
[0039]在本发明的一实施例中,用于根据所确定的第一光斑的边界和尺寸确认第一光斑是否为有效光斑的模块是判断该第一光斑的尺寸是否大于一阈值,如果是,则确认该第一光斑为有效光斑。
[0040]在本发明的一实施例中,该用于处理每一帧图像以识别该帧图像中的光斑的模块还包括:用于搜索该修改图像中位于该第一光斑以外区域的灰度值最大的像素点,作为第二光斑的中心点的模块;用于确定该第二光斑的边界的模块;用于选择该第二光斑的边界与该第二光斑的中心点的距离,作为第二光斑的尺寸的模块;以及用于根据所确定的第二光斑的边界确认该第二光斑是否为有效光斑的模块。
[0041]在本发明的一实施例中,用于确定该第二光斑的边界的模块包括:用于沿第一方向按距离从小到大依次计算与该第二光斑的中心点相距一距离的像素点的灰度值,并以灰度值在该第一方向的突变点的前一像素点作为该第二光斑在该第一方向的边界的模块。
[0042]在本发明的一实施例中,用于确定该第二光斑的边界的模块还包括:用于沿第二方向按距离从小到大依次计算与该第二光斑的中心点相距一距离的像素点的灰度值,并以灰度值在该第二方向的突变点的前一像素点作为该第二光斑在该第二方向的边界的模块。
[0043]在本发明的一实施例中,该第一方向与该第二方向相反。
[0044]在本发明的一实施例中,用于搜索该修改图像中位于该第一光斑以外区域的灰度值最大的像素点,作为第二光斑的中心点的模块的模块包括:用于将该帧图像的第一光斑中像素点的灰度值置为该图像的平均灰度值,获得一修改图像的模块;以及用于搜索该修改图像中灰度值最大的像素点的模块。
[0045]在本发明的一实施例中,在该用于沿第一方向按距离从小到大依次计算与该第二光斑的中心点相距一距离的像素点的灰度值,并以灰度值在该第一方向的突变点的前一像素点作为该第二光斑在该第一方向的边界的模块中,如果有一第一像素点的灰度值小于一灰度阈值,则以该第一像素点的前一像素点作为该第二光斑在该第一方向的边界,否则以该帧图像在该第一方向的边界作为该第二光斑在该第一方向的边界。
[0046]在本发明的一实施例中,在该用于沿第二方向按距离从小到大依次计算与该第二光斑的中心点相距一距离的像素点的灰度值,并以灰度值在该第二方向的突变点的前一像素点作为该第二光斑在该第一方向的边界的模块中,如果有一第二像素点的灰度值小于一灰度阈值,则以该第二像素点的前一像素点作为该第二光斑在该第二方向的边界,否则以该帧图像在该第二方向的边界作为该第二光斑在该第二方向的边界。
[0047]在本发明的一实施例中,该灰度阈值为该帧图像的平均灰度值。
[0048]在本发明的一实施例中,该用于处理每一帧图像以识别该帧图像中的光斑的模块还包括用于按一预定比例缩小图像的模块。[0049]在本发明的一实施例中,该预定比例为该帧图像的行像素数和列像素数的公约数。
[0050]在本发明的一实施例中,当该摄像机常态为低帧速模式时,该装置还包括:用于识别该可见光通信信号中预定序列的开始码的模块;用于根据识别的该开始码将该摄像机切换到高帧速模式的模块。
[0051]在本发明的一实施例中,该装置还包括:用于识别该可见光通信信号中预定序列的结束码的模块;用于根据识别的该结束码将该摄像机切换到低帧速模式的模块。
[0052]本发明还提出一种光子接收器,包括如上所述的一种识别摄像机接收的可见光通
信信号的装置。
[0053]本发明的以上技术方案采用了一种专门用于处理及识别可见光通信信号中的光斑的处理方法,通过简单地确定光斑的中心的边界来识别光斑,使之与一般的图像处理技术相比,具有更为简单、有效的特点。
【专利附图】

【附图说明】
[0054]为让本发明的上述目的、特征和优点能更明显易懂,以下结合附图对本发明的【具体实施方式】作详细说明,其中:
[0055]图1A-1E示出具有一个光斑的一帧图像的光斑位置的各种情形,其中图1A示出整个光斑完全位于图像中,图1B和IC示出部分光斑落入图像外,但光斑中心仍在图像中,图1D和IE不出部分光斑落入图像外且光斑中心也在图像外。
[0056]图2示出具有两个光斑的一帧图像。
[0057]图3示出去除已识别的一个光斑的一帧修改图像。
[0058]图4示出根据本发明一实施例的方法在低帧速模式下识别可见光通信信号的开始码的示意图。
[0059]图5示出根据本发明一实施例的修改摄像机的感光器的寄存器的示意图。
[0060]图6示出根据本发明一实施例的识别摄像机接收的可见光通信信号的方法流程图。
[0061]图7示出根据本发明一实施例的识别图像中的光斑的方法流程图。
[0062]图8示出根据本发明另一实施例的识别图像中的光斑的方法流程图。
[0063]图9示出根据本发明另一实施例的识别摄像机接收的可见光通信信号的方法流程图。
[0064]图10示出根据本发明一实施例的调整摄像机帧速的流程图。
【具体实施方式】
[0065]本发明的实施例将描述一种的识别摄像机接收的可见光通信信号的方法。这一方法由于特别针对含有可见光通信信号的图像,特别是包含了光斑的图像,由此识别过程得以简化,从而变得更有效率。
[0066]现在参考附图描述所要求保护的发明,在全部附图中使用相同的参考标号来指相同的部件或步骤。在以下描述中,为解释起见,披露了众多具体细节以提供对所要求保护的主题的全面理解。然而,显而易见的是,这些发明也可以不采用这些具体细节来实施。[0067]可见光通信的发送端所采用的光源包括是发光二极管(LED),其因良好的开/关性能而得到广泛使用。除此之外,使用具有照相功能的便携式电子设备的闪光灯也是一种可行的选择,尤其是在十分普及的手机普遍配备了闪光灯而不配备LED灯的情况下。当然,部分闪光灯的类型本身就是LED灯。
[0068]本发明实施例中,摄像机适于接收上述光源所发出的可见光,但并不以此为限。本发明的摄像机可以是独立的摄像机,也可以是集成到各种电子设备,例如手机、平板电脑、笔记本电脑、数码相机、MP3、MP4播放器(如苹果公司的iTouch)等的摄像头。
[0069]当摄像机进行连续拍摄时,如果在拍摄瞬间接收到可见光,会在其所拍摄的图像中留下光斑。图1A示出具有一个光斑的一帧图像。
[0070]可以理解的是,当由不同的发送端的光源分别发出不同光束时,摄像机所拍摄的一帧图像中可能会有多个光斑。图2示出具有两个光斑的一帧图像。
[0071]接收端从摄像机获取这些图像后,其重要的任务是识别哪些图像中包含光斑,从而还原出对应的数字信号。举例来说,当在发射源定义有光照射代表二进制1,而无光照射代表二进制O时,在接收端相应将包含光斑的图像识别为二进制1,而不包含光斑的图像识别为二进制O。当然,这一定义仅为举例而已,具体的规则可以由本领域技术人员自行定义。例如,包含多个光斑可能代表了额外的信息。
[0072]图6示出根据本发明一实施例的识别摄像机接收的可见光通信信号的方法流程图。参照图6所示,该方法包括以下步骤:
[0073]在步骤601,从摄像机获得包含可见光通信信号的多帧图像;
[0074]在步骤602,处理每一帧图像,以识别该帧图像中的光斑;
[0075]在步骤603,依据所识别的光斑恢复该可见光通信信号。
[0076]可以理解,上述流程常规是按照流水线的方式运作,即每获得一帧图像,即进行图像处理,并恢复出其中的可见光通信信号。
[0077]上述流程中,步骤602是主要的步骤,其具体方法可以参照图7所示,描述如下:
[0078]步骤701,搜索一帧图像中的灰度值最大的像素点,作为光斑的中心点;
[0079]步骤702,确定光斑在第一方向的边界。
[0080]确定光斑边界的已知算法有不少,这里列举一种简单的算法。具体地说,可以沿第一方向按距离从小到大依次计算与该光斑的中心点相距一距离的像素点的灰度值,并以灰度值在该第一方向的突变点的前一像素点作为该光斑在该第一方向的边界。
[0081]也就是说,在上述计算过程中,比较像素点的灰度值与一灰度阈值。如果像素点的灰度值大于或等于一个灰度阈值,例如图像的平均灰度值,则认为该像素点属于光斑区域;相反,如果像素点的灰度值小于图像的平均灰度值,则认为该像素点不属于光斑区域。以灰度值小于图像的平均灰度值的突变点的前一像素点作为光斑在该第一方向的边界,记为第一像素点。第一像素点与光斑的中;点的距离记为第一距离。
[0082]光斑通常被视为圆形来处理,因此该第一距离通常可以被认为是光斑的半径。以图1A来说,沿着+X方向决定的第一距离dl为光斑的半径。
[0083]然而,存在如图1B所示的情形。在此情形中,由于发射源并未对准摄像机,光斑只是部分地落入图像区域。因此,如果在步骤702的计算过程中,发现所计算的像素点已经位于图像的边界,即停止计算。同样记录该像素点为第一像素点,得到第一距离dl。图1C所示情形也是如此。
[0084]考虑到图1B和图1C所示情形的存在,沿着与第一方向相反的第二方向(即-X方向)寻找光斑的边界成为必要。
[0085]步骤703,确定光斑在第二方向的边界。
[0086]类似于前述算法,可以沿第二方向按距离从小到大依次计算与该光斑的中心点相距一距离的像素点的灰度值,以灰度值在该第二方向的突变点的前一像素点作为该光斑在该第二方向的边界。
[0087]同样地,如果像素点的灰度值大于或等于一个灰度阈值,例如图像的平均灰度值,则认为该像素点属于光斑区域;相反,如果像素点的灰度值小于图像的平均灰度值,则认为该像素点不属于光斑区域。因此,以灰度值小于图像的平均灰度值的突变点的前一像素点作为光斑在该第二方向的边界,记为第二像素点。第二像素点与光斑的中心点的距离记为第二距离d2。另外,如果在前述的计算过程中发现所计算的像素点已经位于图像的边界,SP停止计算。同样,记录该像素点为第二像素点,得到第二距离d2。
[0088]步骤704,根据光斑的边界与光斑中心点的距离确定光斑尺寸。
[0089]在此,选择第一距离dl和第二距离d2的最大值,作为光斑的尺寸。
[0090]步骤705,根据所确定的光斑的边界确定该光斑是否为有效光斑。
[0091]例如,当步骤704所确定的光斑的尺寸小于一阈值,例如5时,认为光斑是由噪声引起的,排除这一光斑。此时该帧图像实际上不包含光斑。
[0092]实际中还存在如图1D·和图1E所示的情形,在这些情形中,发射源发生更严重地偏离,光斑的中心O落在图像的边界之外,因此第一距离dl实际为0,只能计算出一个有效的第二距离d2。尽管在技术上有处理此类光斑的可能,但较佳地,当第一距离dl和第二距离d2出现O时,可以将光斑作为无效光斑排除。
[0093]通过步骤701-705,将能识别一帧图像中是否有光斑,以及光斑的边界。
[0094]较佳地,可以在流程之前,将对一帧图像进行降噪处理,以提高图像质量,降低无效光斑出现的概率。
[0095]值得一提的是,本实施例中尽管只能从2个方向(+X和-X方向)确定光斑的边界,但可以理解的是,在其它实施例中,可以从更少方向,例如从I个方向(如+X方向)确定光斑的边界;或者可以从更多方向,例如4个(+X,-X方向,+y,_y方向)确定光斑的边界。从I个方向确定光斑的边界足可应付如图1A所示情形,在这种情况下,可以考虑将图1B-1E的情形均视为无效光斑。
[0096]下面例举图7所示流程的处理示例。
[0097]假设图像为MXN个像素,各个像素的灰度值为g(i,j),i=l,2,...M, j=l,2,..N。其中(i,j)为图像中像素坐标,i表示横坐标即列坐标,j表示给纵坐标即行坐标,如第3行第4列的像素点的灰度值即可表示为g(4,3)。
[0098]先对行进行操作,找出每行的灰度最大值gm (i), i=l, 2,...M。再找出gm中的最大值g(s,t)=gmax,同时也是整个图像的灰度最大值。(s,t)即为灰度最大值的像素点坐标。另外,还计算整个图像的平均灰度值Δ。
[0099]计算gm(s-k)-A , k=l, 2,..., kl,其中 kl 满足 gm(s_kl)-A ≤ O,且 gm(s-kl-l)-A <0。在此,kl+Ι处发生了灰度值的突变,其上一个值kl所代表的像素点被认为是光斑的一个方向的边界。可能存在多个满足上述突变的kl,但是只计算到第一个或最小kl就停止计算。如果上述突变点尚未找到,就已碰到图像的边界,也记录此时的kl。
[0100]计算gm(s+k) - Δ,k=l, 2,...,k2,其中 k2 满足 gm(s+k2)-A ≥ O,且 gm(s+k2+l)-A <0。在此,k2+l处发生了灰度值的突变,其上一个值k2所代表的像素点被认为是光斑的另一个方向的边界。可能存在多个满足上述突变的k2,但是只计算到第一个或最小k2就停止计算。如果上述突变点尚未找到,就已碰到图像的边界,也记录此时的k2。
[0101]由此确定最亮光斑中心(s, t),半径为km=max(kl, k2)。
[0102]接下来排除无效光斑。首先,如果km > 5,则km为最亮光斑半径;否则g (s, t)为噪声,结束计算,认为图像没有光斑。其次,如果kl或k2=0,也认为光斑无效。
[0103]图7所示实施例的识别过程主要关注图像是否有光斑及光斑边界。如前所述,存在一帧图像包含多个光斑的情形(如图2所示),如果识别过程还关注图像包含的光斑数目,则步骤602可以实施为如图8所示的流程。参照图8所示:
[0104]步骤801,搜索一帧图像中的灰度值最大的像素点,作为光斑的中心点;
[0105]步骤802,确定光斑在第一方向的边界。
[0106]类似于前述实施例的算法,可以沿第一方向按距离从小到大依次计算与该光斑的中心点相距一距离的像素点的灰度值,并以灰度值在该第一方向的突变点的前一像素点作为该光斑在该第一方向的边界;
[0107]也就是说,在上述计算过程中比较像素点的灰度值与一灰度阈值,如果像素点的灰度值大于或等于一个灰度阈值,例如图像的平均灰度值,则认为该像素点属于光斑区域;相反,如果像素点的灰度值小于图像的平均灰度值,则认为该像素点不属于光斑区域。以灰度值小于图像的平均灰度值的突变点的前一像素点作为光斑在该第一方向的边界,记为第一像素点。第一像素点与光斑的中;点的距离记为第一距离。
[0108]另外,如果在步骤802的计算过程中,发现所计算的像素点已经位于图像的边界,即停止计算。同样记录该像素点为第一像素点,得到第一距离dl。
[0109]步骤803,确定光斑在第二方向的边界。
[0110]类似于前述算法,沿第二方向按距离从小到大依次计算与该光斑的中心点相距一距离的像素点的灰度值,以灰度值在该第二方向的突变点的前一像素点作为该光斑在该第二方向的边界。
[0111]也就是说,如果像素点的灰度值大于或等于一个灰度阈值,例如图像的平均灰度值,则认为该像素点属于光斑区域;相反,如果像素点的灰度值小于图像的平均灰度值,则认为该像素点不属于光斑区域。因此,以灰度值小于图像的平均灰度值的突变点的前一像素点作为光斑在该第二方向的边界,记为第二像素点。第二像素点与光斑的中心点的距离记为第二距离d2。另外,如果在前述的计算过程中发现所计算的像素点已经位于图像的边界,即停止计算。同样,记录该像素点为第二像素点,得到第二距离d2。
[0112]步骤804,根据光斑的边界与光斑中心点的距离确定光斑尺寸。
[0113]在此,选择第一距离dl和第二距离d2的最大值,作为光斑的尺寸。
[0114]步骤805,根据所确定的光斑的边界确定该光斑是否为有效光斑。
[0115]通过步骤801-805,将能识别一帧图像中是否有光斑,以及光斑的边界。
[0116]另外,如果在步骤805中,发现所确定的光斑的尺寸小于一阈值,例如5时,认为光斑是由噪声引起的,在认为这一光斑是无效光斑的同时,认为该帧图像实际上不包含光斑。因此在步骤806判断图像中是否可能存在未识别的光斑时,流程结束。
[0117]在其它情况下,例如排除了过于偏离图像区域的光斑(如图1D和图1E所示)后,认为图像仍可能含有未识别的光斑,流程进入步骤807。
[0118]在步骤807,将该帧图像的已识别的光斑区域中像素点的灰度值置为图像的平均灰度值,获得一修改图像;然后,回到步骤801,以识别另一光斑。
[0119]步骤807的目的是在后续处理过程中,将已识别的光斑区域排除在外。从结果上看,后续的处理实际上是在搜索图像中已识别的光斑区域外的最大灰度值。可以理解的是,在实际处理时可以不进行前述的修改,而直接在已识别的光斑区域外进行上述的搜索。
[0120]这样,每次识别了一个光斑,则在当前图像中将识别的光斑区域的灰度值设置为图像的平均灰度值。如此循环,直到在步骤806,确定该帧图像未包含未识别的其它光斑,从而结束整个流程。
[0121]下面例举图8所示流程的处理示例。
[0122]假设图像为MXN 个像素,灰度值为 g(i, j),i=l, 2,...M, j=l, 2,..N。
[0123]先对行进行操作,找出每行的灰度最大值gm (i), i=l, 2,...Μ。再找出gm中的最大值g(s,t)=gmax,同时也是整个图像的灰度最大值。(s,t)即为灰度最大值的像素点。另外,还计算整个图像的平均灰度Λ。
[0124]按k从小到大的顺序计算gm(s-k)-A, k=l, 2,...,kl,其中kl满足gm(s-kl) - Δ≥O,且gm (s-kl-l)-A <0。在此,kl+1处发生了灰度值的突变,其前一值kl所代表的像素点被认为是光斑的一个方向的边界。需要指出的是,可能存在多个满足上述突变的kl,但是只计算到第一个或最小kl就停止计算。如果上述突变点尚未找到,就已碰到图像的边界,也记录此时的kl。
[0125]按k从小到大的顺序计算gm(s+k)-A, k=l, 2,...,k2,其中k2满足gm(s+k2)-A≥0,且gm (s+k2+l)-A <0。在此,k2+2处发生了灰度值的突变,其前一值k2所代表的像素点被认为是光斑的另一方向的边界。可能存在多个满足上述突变的k2,但是只计算到第一个或最小k2就停止计算。如果上述突变点尚未找到,就已碰到图像的边界,也记录此时的k2。
[0126]由此确定最亮光斑中心(s, t),半径为km=max(kl, k2)。
[0127]接下来排除无效光斑。首先,如果km > 5,则km为最亮光斑半径;否则g (s, t)为噪声,结束计算,认为图像没有光斑。其次,如果kl或k2=0,也认为光斑无效。如果前述的过程能够找到一个有效光斑A,那么在找到光斑A后,此时将区域[s-km, s+km], [t-km, t+km]的灰度值都置为Λ,得到如图3所示的修改后的图像。同样按照前述方法,可以找到光斑B。当有多个光斑时,按照这种方法依次进行下去,可以确定每个光斑的区域。
[0128]图6所示流程虽然能够正确地识别光斑及光斑个数,然而流程可能会不必要地复杂。原因在于,如果在图像的原有分辨率上进行,识别图像是否存在光斑,所需的计算量会比较庞大。而为了识别图像是否存在光斑及确定光斑个数,并不需要很高的分辨率。因此本发明的另一实施例提出一种简化的方案。
[0129]图9示出根据本发明另一实施例的识别摄像机接收的可见光通信信号的方法流程图。参照图9所示,该方法包括以下步骤:[0130]在步骤901,从摄像机获得包含可见光通信信号的多帧图像;
[0131]在步骤902a,处理每一帧图像,按一预定比例缩小该帧图像;
[0132]也就是说,按一预定比例降低图像的分辨率。
[0133]在步骤902b,识别该帧图像中的光斑;
[0134]在步骤903,依据所识别的光斑恢复该可见光通信信号。
[0135]可以理解,上述流程常规是按照流水线的方式运作,即每获得一帧图像,即进行图像处理,并恢复出其中的可见光通信信号。
[0136]可以看出,上述实施例与图6所示实施例的差别在于,在识别每一帧图像中的光斑之前,会先按一预定比例缩小该帧图像。这将降低图像的分辨率,从而也降低处理图像所需的计算量,由此简化了方法。 [0137]在本实施例中,预定比例为该帧图像的行像素数和列像素数的公约数。例如,分辨率为800*600的图像(即行像素数为800,列像素数为600),预定比例可以选取为8,即将图像缩小为100*75。
[0138]可以理解,预定比例可以在计算复杂度和识别准确性方面进行折衷。例如可以要求经缩小的该帧图像中,行像素数和列像素数均大于一个阈值,以能够识别所需数目的光斑。
[0139]举例来说,可以将图像MXN的相邻四个像素作为I个单位进行计算,即每2X2个像素作为一个单位,这样图像简化为M/2XN/2维。例如将像素(1,1), (1,2), (2,j)和(2,2)预先计算平均值作为新的像素(1,j)。一般地,原图像的像素点(21-l,2j-l),(21-l,2j),(2i,2j-l)和(2i,2j)对应于简化图像的像素点(i,j),1≤ i≤M/2,1 ≤ j ≤ N/2,并且 g’ (i,j) = (g(21-l,2j-l)+g(21-l,2j)+g(2i,2j-l)+g(2i,2j))/4,r表示简化后图像灰度值。其中(i,j)为简化后图像的像素坐标,i表示横坐标即列坐标,j表示给纵坐标即行坐标,如第3行第4列的母像素点的灰度值即可表示为i' (4,3)。
[0140]进一步地,如果M和N公约数包含值pl,p2,..., pm,那么图像可以简化为M/pgXN/pg,其中1≤g≤m。当然如果pg过大会影响分辨率,所以在需要在图像处理速度和分辨率之间做相应的取舍。
[0141]可以理解,图9所示的流程中,步骤902b可以用图7或图8所示实施例的流程实施。
[0142]在接收可见光时,所使用摄像机的帧速需要能够匹配发射端所发出的可见光的数据传输速率。例如,如果发射端发出的可见光通信信号的比特率大致为50bps (比特/秒),要求摄像头至少具有1OOfps (帧/秒)。
[0143]大部分摄像机都可以满足上述帧速要求。不过,有些摄像机,例如拍摄日常视频用的摄像机常规地将帧速设置在25fps或者30fps的低帧速模式。因此在接收可见光通信信号的过程中,需要适应性地调整这些摄像机到高帧速模式。
[0144]摄像机帧速的调整可以通过单片机修改CMOS寄存器来完成,协议为I2C。涉及摄像机帧速调整的硬件可以参照图5所示。
[0145]可以在可见光通信信号的开头约定预定序列的开始码,以指令摄像机调整到高帧速模式。同样地,如果需要,可以在可见光通信信号的结尾约定预定序列的结束码,以指令摄像机调整回低帧速模式。
[0146]图10示出根据本发明一实施例的调整摄像机帧速的流程图。假设摄像机常态地处于低帧速模式,那么其将按照图10的流程调整到高帧速模式。
[0147]在步骤1001,在摄像机接收及识别可见光通信信号。这一步骤中的识别,可以参照图6或图8所示流程来实施。通过识别,可以得到可见光信号中的开始码。然后,在步骤1002识别开始码是否是约定的预定序列,如果是,在步骤1003将摄像机切换到高帧速模式。
[0148]图4示出根据本发明一实施例的方法在低帧速模式下识别可见光通信信号的开始码的示意图。参照图4所示,假设可见光通信信号的发射端的发送速率为50bps,其中开始码为110011,这样帧速为30fps的摄像机所捕获的信息仅为三幅图像,分别在33ms,67ms和IOOms是拍摄到,其中第一幅和第三幅有亮斑,而第二幅图像没有亮斑。识别的结果是,三幅图像对应值依次为1、0、1。
[0149]因此,如果在低帧速下接收的开始码为0x101,那么摄像机启动进入高帧速(例如120fps)模式。
[0150]类似地,设定信号的结束码,比如0x111。摄像机接收到结束码后,就自动切换回低帧速(例如30fps)模式。
[0151]本发明的另一实施例为一种识别摄像机接收的可见光通信信号的装置,包括用于从摄像机获得包含可见光通信信号的多帧图像的模块;用于处理每一帧图像以识别该帧图像中的光斑的模块;以及用于依据所识别的光斑恢复该可见光通信信号的模块。
[0152]其中,用于处理每一帧图像以识别该帧图像中的光斑的模块进一步包括:用于搜索该帧图像中的灰度值最大的像素点,作为第一光斑的中心点的模块;用于沿第一方向按距离从小到大依次计算与该第一光斑的中心点相距一距离的像素点的灰度值,并以灰度值在该第一方向的突变点的前一像素点作为该第一光斑在该第一方向的边界的模块;用于沿第二方向按距离从小到大依次计算与该第一光斑的中心点相距一距离的像素点的灰度值,并以灰度值在该第二方向的突变点的前一像素点作为该第一光斑在该第二方向的边界的模块;用于选择该第一光斑在该第一方向和该第二方向的边界与该第一光斑的中心点的距离的较大值,作为第一光斑的尺寸的模块;以及用于根据所确定的第一光斑的边界确认该第一光斑是否为有效光斑的模块。
[0153]在一较佳实施例中,在该用于沿第一方向按距离从小到大依次计算与该第一光斑的中心点相距一距离的像素点的灰度值,并以灰度值在该第一方向的突变点的前一像素点作为该第一光斑在该第一方向的边界的模块中,如果有一第一像素点的灰度值小于该帧图像的平均灰度值,则以该第一像素点的前一像素点作为该第一光斑在该第一方向的边界,否则以该巾贞图像在该第一方向的边界作为该第一光斑在该第一方向的边界。
[0154]在一较佳实施例中,在该用于沿第二方向按距离从小到大依次计算与该第一光斑的中心点相距一距离的像素点的灰度值,并以灰度值在该第二方向的突变点的前一像素点作为该第一光斑在该第一方向的边界的模块中,如果有一第二像素点的灰度值小于该帧图像的平均灰度值,则以该第二像素点的前一像素点作为该第一光斑在该第二方向的边界,否则以该帧图像在该第二方向的边界作为该第一光斑在该第二方向的边界。
[0155]在一较佳实施例中,该第一方向与该第二方向相反。[0156]在一较佳实施例中,该用于处理每一帧图像以识别该帧图像中的光斑的模块还包括:用于将该帧图像的第一光斑中像素点的灰度值置为图像的平均灰度值,获得一修改图像的模块;用于搜索该修改图像中的灰度值最大的像素点,作为第二光斑的中心点的模块;用于沿第一方向按距离从小到大依次计算与该第二光斑的中心点相距一距离的像素点的灰度值,并以灰度值在该第一方向的突变点的前一像素点作为该第二光斑在该第一方向的边界的模块;用于沿第二方向按距离从小到大依次计算与该第二光斑的中心点相距一距离的像素点的灰度值,并以灰度值在该第二方向的突变点的前一像素点作为该第二光斑在该第二方向的边界的模块;用于选择该第二光斑在该第一方向和该第二方向的边界与该第二光斑的中心点的距离的较大值,作为第二光斑的尺寸的模块;以及用于根据所确定的第二光斑的边界确认该第二光斑是否为有效光斑的模块。
[0157]在一较佳实施例中,该用于处理每一帧图像以识别该帧图像中的光斑的模块还包括用于按一预定比例缩小图像的模块。
[0158]在一较佳实施例中,该预定比例为该帧图像的行像素数和列像素数的公约数。
[0159]在一较佳实施例中,当该摄像机常态为低帧速模式时,该装置还包括:用于识别该可见光通信信号中预定序列的开始码的模块;用于根据所识别的开始码将该摄像机切换到高帧速模式的模块。
[0160]在一较佳实施例中,该装置还包括:用于识别该可见光通信信号中预定序列的结束码的模块;用于根据所识别的结束码将该摄像机切换到低帧速模式的模块。
[0161]本发明的识别摄像机接收的可见光通信信号的装置可以作为光子接收器,用于可见光通信系统中。
[0162]本文中描述的各种实施例可在例如计算机软件、硬件或计算机软件与硬件的组合的计算机可读取介质中加以实施。对于硬件实施而言,本文中所描述的实施例可在一个或多个专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理器件(DAPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、处理器、控制器、微控制器、微处理器、用于执行上述功能的其它电子装置或上述装置的选择组合来加以实施。在部分情况下,这类实施例可以通过控制器进行实施。
[0163]对软件实施而言,本文中所描述的实施例可通过诸如程序模块(procedures)和函数模块(functions)等独立的软件模块来加以实施,其中每一个模块执行一个或多个本文中描述的功能和操作。软件代码可通过在适当编程语言中编写的应用软件来加以实施,可以储存在内存中,由控制器或处理器执行。
[0164]虽然本发明已参照当前的具体实施例来描述,但是本【技术领域】中的普通技术人员应当认识到,以上的实施例仅是用来说明本发明,在没有脱离本发明精神的情况下还可作出各种等效的变化或替换,因此,只要在本发明的实质精神范围内对上述实施例的变化、变型都将落在本申请的权利要求书的范围内。
【权利要求】
1.一种识别摄像机接收的可见光通信信号的方法,包括以下步骤: 从摄像机获得包含可见光通信信号的多帧图像; 依照下述步骤处理每一帧图像以识别该帧图像中的光斑: 搜索该帧图像中的灰度值最大的像素点,作为第一光斑的中心点; 确定该第一光斑的边界; 依据该第一光斑的边界与该第一光斑的中心点的距离,确定该第一光斑的尺寸;以及 根据所确定的第一光斑的边界和尺寸确认第一光斑是否为有效光斑;依据所识别的光斑恢复该可见光通信信号。
2.如权利要求1所述的识别摄像机接收的可见光通信信号的方法,其特征在于,确定该第一光斑的边界的步骤包括: 沿第一方向按距离从小到大依次计算与该第一光斑的中心点相距一距离的像素点的灰度值,并以灰度值在该第一方向的突变点的前一像素点作为该第一光斑在该第一方向的边界。
3.如权利要求2所述的识别摄像机接收的可见光通信信号的方法,其特征在于,确定该第一光斑的边界的步骤还包括: 沿第二方向按距离从小到大依次计算与该第一光斑的中心点相距一距离的像素点的灰度值,并以灰度值在该第二方向的突变点的前一像素点作为该第一光斑在该第二方向的边界。`
4.如权利要求3所述的识别摄像机接收的可见光通信信号的方法,其特征在于,该第一方向与该第二方向相反。
5.如权利要求2所述的识别摄像机接收的可见光通信信号的方法,其特征在于,以灰度值在该第一方向的突变点的前一像素点作为该第一光斑在该第一方向的边界的步骤包括:如果有一第一像素点的灰度值小于一灰度阈值,则以该第一像素点的前一像素点作为该第一光斑在该第一方向的边界,否则以该帧图像在该第一方向的边界作为该第一光斑在该第一方向的边界。
6.如权利要求3所述的识别摄像机接收的可见光通信信号的方法,其特征在于,以灰度值在该第二方向的突变点的前一像素点作为该第一光斑在该第二方向的边界的步骤包括:如果有一第二像素点的灰度值小于一灰度阈值,则以该第二像素点的前一像素点作为该第一光斑在该第二方向的边界,否则以该帧图像在该第二方向的边界作为该第一光斑在该第二方向的边界。
7.如权利要求5或6所述的识别摄像机接收的可见光通信信号的方法,其特征在于,该灰度阈值为该帧图像的平均灰度值。
8.如权利要求3所述的识别摄像机接收的可见光通信信号的方法,其特征在于,选择该第一光斑在该第一方向和该第二方向的边界与该第一光斑的中心点的距离的较大值,作为该第一光斑的尺寸。
9.如权利要求1所述的识别摄像机接收的可见光通信信号的方法,其特征在于,根据所确定的第一光斑的边界确认第一光斑是否为有效光斑的步骤包括:判断该第一光斑的任一边界是否位于图像的边界,如果不是,则该第一光斑为有效光斑。
10.如权利要求1所述的识别摄像机接收的可见光通信信号的方法,其特征在于,根据所确定的第一光斑的尺寸确认第一光斑是否为有效光斑的步骤包括:判断该第一光斑的尺寸是否大于一阈值,如果是,则确认该第一光斑为有效光斑。
11.如权利要求1所述的识别摄像机接收的可见光通信信号的方法,其特征在于,还依照下述步骤识别该帧图像中的第二光斑: 搜索该帧图像中位于该第一光斑以外区域的灰度值最大的像素点,作为第二光斑的中心点; 确定该第二光斑的边界; 依据该第二光斑的边界与该第二光斑的中心点的距离,确定该第一光斑的尺寸;以及 根据所确定的第二光斑的边界和尺寸确认该第二光斑是否为有效光斑。
12.如权利要求11所述的识别摄像机接收的可见光通信信号的方法,其特征在于,确定该第二光斑的边界的步骤包括: 沿第一方向按距离从小到大依次计算与该第二光斑的中心点相距一距离的像素点的灰度值,并以灰度值在该第一方向的突变点的前一像素点作为该第二光斑在该第一方向的边界。
13.如权利要求12所述的识别摄像机接收的可见光通信信号的方法,其特征在于,确定该第二光斑的边界的步骤还包括: 沿第二方向按距离从小到大依次计算与该第二光斑的中心点相距一距离的像素点的灰度值,并以灰度值在该第二方向的突变点的前一像素点作为该第二光斑在该第二方向的边界。
14.如权利要求11所述的识别摄像机接收的可见光通信信号的方法,其特征在于,搜索该帧图像中位于该第一光斑以外区域的灰度值最大的像素点的步骤包括: 将该帧图像的第一光斑中像素点的灰度值置为该图像的平均灰度值,获得一修改图像;以及 搜索该修改图像中灰度值最大的像素点。
15.如权利要求12所述的识别摄像机接收的可见光通信信号的方法,其特征在于,以灰度值在该第一方向的突变点的前一像素点作为该第二光斑在该第一方向的边界的步骤包括:如果有一第一像素点的灰度值小于一灰度阈值,则以该第一像素点的前一像素点作为该第二光斑在该第一方向的边界,否则以该帧图像在该第一方向的边界作为该第二光斑在该第一方向的边界。
16.如权利要求13所述的识别摄像机接收的可见光通信信号的方法,其特征在于,以灰度值在该第二方向的突变点的前一像素点作为该第二光斑在该第二方向的边界的步骤包括:如果有一第二像素点的灰度值小于一灰度阈值,则以该第二像素点的前一像素点作为该第二光斑在该第二方向的边界,否则以该帧图像在该第二方向的边界作为该第二光斑在该第二方向的边界。
17.如权利要求15或16所述的识别摄像机接收的可见光通信信号的方法,其特征在于,该灰度阈值为该帧图像的平均灰度值。
18.如权利要求1所述的识别摄像机接收的可见光通信信号的方法,其特征在于,处理每一帧图像以识别该帧图像中的光斑的步骤还包括: 按一预定比例缩小该帧图像。
19.如权利要求1所述的识别摄像机接收的可见光通信信号的方法,其特征在于,处理每一帧图像以识别该帧图像中的光斑的步骤还包括,对图像进行降噪处理。
20.如权利要求18所述的识别摄像机接收的可见光通信信号的方法,其特征在于,该预定比例为图像的行像素数和列像素数的公约数。
21.如权利要求1所述的识别摄像机接收的可见光通信信号的方法,其特征在于,当该摄像机常态为低帧速模式时,该方法还包括: 识别该可见光通信信号中预定序列的开始码; 将该摄像机切换到高帧速模式。
22.如权利要求21所述的识别摄像机接收的可见光通信信号的方法,其特征在于,该方法还包括: 识别该可见光通信信号中预定序列的结束码; 将该摄像机切换到低帧速模式。
23.如权利要求21或22所述的识别摄像机接收的可见光通信信号的方法,其特征在于,切换该摄像机的帧速模式的方法包括:修改该摄像机的感光器的寄存器。
24.如权利要求1所述的识别摄像机接收的可见光通信信号的方法,其特征在于,该摄像机的感光器为CMOS感光器。
25.一种识别摄像机接收的可见光通信信号的装置,包括:` 用于从摄像机获得包含可见光通信信号的多帧图像的模块; 用于处理每一帧图像以识别该帧图像中的光斑的模块,包括: 用于搜索该帧图像中的灰度值最大的像素点,作为第一光斑的中心点的模块; 用于确定该第一光斑的边界的模块; 用于依据该第一光斑的边界与该第一光斑的中心点的距离,确定该第一光斑的尺寸的模块;以及 用于根据所确定的第一光斑的边界和尺寸确认该第一光斑是否为有效光斑的模块; 用于依据所识别的光斑恢复该可见光通信信号的模块。
26.如权利要求25所述的装置,其特征在于,用于确定该第一光斑的边界的模块包括: 用于沿第一方向按距离从小到大依次计算与该第一光斑的中心点相距一距离的像素点的灰度值,并以灰度值在该第一方向的突变点的前一像素点作为该第一光斑在该第一方向的边界的模块。
27.如权利要求26所述的装置,其特征在于,用于确定该第一光斑的边界的模块还包括: 用于沿第二方向按距离从小到大依次计算与该第一光斑的中心点相距一距离的像素点的灰度值,并以灰度值在该第二方向的突变点的前一像素点作为该第一光斑在该第二方向的边界的模块。
28.如权利要求27所述的装置,其特征在于,该第一方向与该第二方向相反。
29.如权利要求26所述的装置,其特征在于,在该用于沿第一方向按距离从小到大依次计算与该第一光斑的中心点相距一距离的像素点的灰度值,并以灰度值在该第一方向的突变点的前一像素点作为该第一光斑在该第一方向的边界的模块中,如果有一第一像素点的灰度值小于一灰度阈值,则以该第一像素点的前一像素点作为该第一光斑在该第一方向的边界,否则以该帧图像在该第一方向的边界作为该第一光斑在该第一方向的边界。
30.如权利要求27所述的装置,其特征在于,在该用于沿第二方向按距离从小到大依次计算与该第一光斑的中心点相距一距离的像素点的灰度值,并以灰度值在该第二方向的突变点的前一像素点作为该第一光斑在该第一方向的边界的模块中,如果有一第二像素点的灰度值小于一灰度阈值,则以该第二像素点的前一像素点作为该第一光斑在该第二方向的边界,否则以该帧图像在该第二方向的边界作为该第一光斑在该第二方向的边界。
31.如权利要求29或30所述的装置,其特征在于,该灰度阈值为该帧图像的平均灰度值。
32.如权利要求25所述的识别摄像机接收的可见光通信信号的方法,其特征在于,用于根据所确定的第一光斑的边界和尺寸确认第一光斑是否为有效光斑的模块是判断该第一光斑的任一边界是否位于图像的边界,如果不是,则该第一光斑为有效光斑。
33.如权利要求25所述的识别摄像机接收的可见光通信信号的方法,其特征在于,用于根据所确定的第一光斑的边界和尺寸确认第一光斑是否为有效光斑的模块是判断该第一光斑的尺寸是否大于一阈值,如果是,则确认该第一光斑为有效光斑。
34.如权利要求25所述的装置,其特征在于,该用于处理每一帧图像以识别该帧图像中的光斑的模块还包括: 用于搜索该修改图像中位于该第一光斑以外区域的灰度值最大的像素点,作为第二光斑的中心点的模块; 用于确定该第二 光斑的边界的模块; 用于选择该第二光斑的边界与该第二光斑的中心点的距离,作为第二光斑的尺寸的模块;以及 用于根据所确定的第二光斑的边界确认该第二光斑是否为有效光斑的模块。
35.如权利要求34所述的装置,其特征在于,用于确定该第二光斑的边界的模块包括: 用于沿第一方向按距离从小到大依次计算与该第二光斑的中心点相距一距离的像素点的灰度值,并以灰度值在该第一方向的突变点的前一像素点作为该第二光斑在该第一方向的边界的模块。
36.如权利要求35所述的装置,其特征在于,用于确定该第二光斑的边界的模块还包括: 用于沿第二方向按距离从小到大依次计算与该第二光斑的中心点相距一距离的像素点的灰度值,并以灰度值在该第二方向的突变点的前一像素点作为该第二光斑在该第二方向的边界的模块。
37.如权利要求36所述的装置,其特征在于,该第一方向与该第二方向相反。
38.如权利要求34所述的装置,其特征在于,用于搜索该修改图像中位于该第一光斑以外区域的灰度值最大的像素点,作为第二光斑的中心点的模块的模块包括: 用于将该帧图像的第一光斑中像素点的灰度值置为该图像的平均灰度值,获得一修改图像的模块;以及 用于搜索该修改图像中灰度值最大的像素点的模块。
39.如权利要求35所述的装置,其特征在于,在该用于沿第一方向按距离从小到大依次计算与该第二光斑的中心点相距一距离的像素点的灰度值,并以灰度值在该第一方向的突变点的前一像素点作为该第二光斑在该第一方向的边界的模块中,如果有一第一像素点的灰度值小于一灰度阈值,则以该第一像素点的前一像素点作为该第二光斑在该第一方向的边界,否则以该帧图像在该第一方向的边界作为该第二光斑在该第一方向的边界。
40.如权利要求36所述的装置,其特征在于,在该用于沿第二方向按距离从小到大依次计算与该第二光斑的中心点相距一距离的像素点的灰度值,并以灰度值在该第二方向的突变点的前一像素点作为该第二光斑在该第一方向的边界的模块中,如果有一第二像素点的灰度值小于一灰度阈值,则以该第二像素点的前一像素点作为该第二光斑在该第二方向的边界,否则以该帧图像在该第二方向的边界作为该第二光斑在该第二方向的边界。
41.如权利要求39或40所述的装置,其特征在于,该灰度阈值为该帧图像的平均灰度值。
42.如权利要求25所述的装置,其特征在于,该用于处理每一帧图像以识别该帧图像中的光斑的模块还包括用于按一预定比例缩小图像的模块。
43.如权利要求42所述的装置,其特征在于,该预定比例为该帧图像的行像素数和列像素数的公约数。
44.如权利要求25所述的装置,其特征在于,当该摄像机常态为低帧速模式时,该装置还包括: 用于识别该可见光通信信号中预定序列的开始码的模块; 用于根据识别的该开始码将该摄像机切换到高帧速模式的模块。
45.如权利要求44所述`的装置,其特征在于,该装置还包括: 用于识别该可见光通信信号中预定序列的结束码的模块; 用于根据识别的该结束码将该摄像机切换到低帧速模式的模块。
46.一种光子接收器,其特征在于,包括如权利要求25至45任一项所述的一种识别摄像机接收的可见光通信信号的装置。
【文档编号】G06K9/46GK103795467SQ201310544341
【公开日】2014年5月14日 申请日期:2013年11月5日 优先权日:2013年11月5日
【发明者】不公告发明人 申请人:深圳光启创新技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1