利用滚动快门照相机来检测编码光的制作方法

文档序号:20502076发布日期:2020-04-21 22:49阅读:221来源:国知局
利用滚动快门照相机来检测编码光的制作方法

本公开涉及使用滚动快门照相机在光中嵌入的信号的检测,凭此每一帧被逐行曝露(expose)。



背景技术:

编码光指的是借以采用在由光源发出的可见光中嵌入的信号的形式来传送信息的技术。编码有时也被称为可见光通信(vlc)。通过根据各种各样合适的调制技术之中的任何一种合适的调制技术调制可见光的属性来嵌入信号,典型地,通过调制强度来嵌入信号。例如,这使得一系列数据符号能够被调制到由光源发出的光中。基于调制,能够使用任何合适的光传感器来检测在光中嵌入的信息。这能够是或专用光电管(点检测器)或包括光电管(像素)阵列和用于在阵列上形成图像的透镜的照相机。例如,传感器可以是在软件狗(dongle)中包括的专用光电管,其中软件狗插入诸如智能手机、平板计算机或膝上型计算机之类的移动用户设备中;或者传感器可以是在移动用户设备中集成的通用照相机。无论哪种方式,这可以使得在用户设备上运行的应用能够经由光来接收id码或甚至其他更复杂的数据。

vlc时常用于将信号嵌入由光照(illumination)源诸如日常照明器发出的光例如房间照明或室外照明中,因而允许来自照明器的光照兼做信息的载体。光因而包括用于照亮目标环境诸如房间(典型地,光的主要用途)的可见光照贡献和用于将信息提供到环境中(典型地,被视为光的次要功能)的嵌入信号二者。在这样的情况下,典型地在足够高的频率上执行调制,从而超越人类感知,或者,如果任何较低的频率分量存在的话,至少以致任何可见的时间光伪影(temporallightartefact)(例如,闪烁和/或频闪伪影)是足够弱的而不是引人注目的,或至少对人类而言是可容忍的。因而,嵌入信号不影响主要光照功能,即,这样用户仅感知到整体光照而非数据被调制到那个光照中的效果。这典型地通过挑选无dc代码(dcfreecode)或调制方案来实现,其中功率谱密度在零赫兹上归零,其中在低频率上具有非常少的谱内容(相对于整体dc光密度水平而言;即,相对于与整体可见光照密度相对应的非零dc偏移而言,这些符号被调制为正和负的波动,但是代码或调制方案本身相对于这个水平而言是无dc的)。因而,可见闪烁被减至几乎不可见的水平。

检测编码光的一种方式是使用如时常被集成到如同移动电话或平板计算机之类的移动设备中的日常“滚动快门(rollingshutter)”类型照相机。在滚动快门照相机中,照相机的图像捕获元素被划分为多个行(line)(典型地,水平行,即,排(row)),其被逐行按顺序暴露。也就是说,为了捕获到给定帧,首先一行被暴露于目标环境中的光,随后序列中的下一行在稍晚的时间被暴露等等。典型地,该序列例如从顶到底成排(inrows)按顺序“滚动”穿过帧,因此得名“滚动快门”。当用于捕获编码光时,这意味着:帧内的不同行在不同的时间捕获光,并因此,如果行率(linerate)相对于调制频率而言是足够高的话,则在调制波形的不同相位上捕获光。因而,光中的调制能够被检测到。如果帧率(framerate)相对于调制频率而言是足够高的话,编码光也能够通过使用全局快门(globalshutter)照相机来检测,或者使用具有合适采样率的专用光电管来检测。

编码能够用于许多应用。例如,在由光源发出的光照中嵌入的数据可以包括识别那个光源的识别符。这个识别符随后能够利用远程控制单元来检测,并用于识别光源,以便经由反向信道诸如rf反向信道来远程控制它。例如,远程控制单元可以采取运行远程控制应用(或“app(小程序)”)的智能手机或平板计算机的形式,在这种情况下,光传感器可以是设备的内置照相机。小程序使用照相机来检测识别符,并随后使用这个识别符经由rf接入技术诸如wi-fi、zigbee或bluetooth(蓝牙)来寻址光源。

在另一示例中,识别符能够用于导航或提供其他的基于位置的信息或功能。这通过提供光源的识别符和光源的已知位置之间的映射和/或与位置相关联的其他信息来实现。在这种情况下,(例如,通过内置照相机)接收光的设备诸如移动电话或平板计算机能够检测所嵌入的识别符并使用它(例如,在通过网络诸如internet(因特网)访问的位置数据库中)查找映射到识别符的对应位置和/或其他信息。查找设备的位置的目的能够是帮助设备的用户导航,例如,以便在大型建筑物或建筑群诸如医院中找到他或她的路;和/或确定是否设备有权访问某基于位置的服务,诸如在特别房间中控制照明的能力。或者,在将其他信息映射到识别符的情况下,这能够用于查找与光源被部署在其中的位置相关的信息,诸如查找有关在博物馆的特定房间或地区中的博物馆展品的信息。

在更进一步应用中,能够将除了识别符之外的信息直接编码到光中(而不是基于在光中嵌入的id进行查找)。因而,编码光能够被用作广播对于所谈论的应用而言可能是所希望的任何任意数据内容的基于无线电的手段的替代(或补充)。

典型地,由光源发出的id或数据采用具有周期性消息持续时间的循环重复消息的形式来发出。消息持续时间可以比暴露一个帧的时间的长度更长。因此,在解码中,从不同的相继帧中捕获到的多个小部分(fraction)消息部分可能需要被缝合(stitch)在一起,以重建消息。用于从这样的消息片段(fragment)中重建(“缝合”)消息的技术在本领域中是已知的,并且被描述在wo2015/121155中。再者,wo2015/104187公开用于减少解码时间的合作照相机的阵列。



技术实现要素:

使用滚动快门照相机检测编码光的一个问题是:检测的速度能够受到某些情况的阻碍。对于一个(forone),光源在图像中的足迹(footprint)时常只是帧区域(framearea)的小部分,这意味着:每一帧中只有几行捕获编码的信息信号。这意味着:在全部捕获到完整消息之前,将需要许多帧。进一步,为了快速检测,照相机和光源的组合应该展示出良好的“滚动”行为。如果照相机的帧率等于或接近编码光信号的消息重复率,则每一个帧将总是看见消息的相同部分,而其他的部分将看不见。或者,换句话说,消息不“滚动”。对于帧率和消息速率之间其他高度理性的关系,例如,当帧率是消息速率的整数倍并且足迹是小的时,类似的效果发生。考虑例如帧率是消息重复率的两倍,其中只有光源的小足迹被捕获到。在这种情况下,交替帧重复地仅捕获同一对消息部分,而其他的部分看不见。反之,如果假设在帧率和消息持续时间之间没有特殊数学关系,则每一个帧将捕获到消息的实质上不同的部分,并且整个消息将在相对小数量的帧上被捕获到。这个行为被称为“滚动”。

避免以下情形将是所希望的:其中在获取完整消息之前需要收集大量的帧;例如,其中照相机只看见过消息的小的重复小部分;或其中滚动是缓慢的,以致花费大量的帧来揭示整个消息。

本公开提供一种使用多个照相机进行vlc检测的安排,其中多个照相机同时捕获同一光源的图像,但是不同的照相机利用不同的各自捕捉体制(acquisitionregime)来配置,以便增加vlc检测的鲁棒性和/或速度(与利用单个照相机或具有相同捕捉体制的多个照相机进行的检测相比而言)。

根据在本文公开的一个方面,提供一种检测在由光源发出的光中嵌入的重复编码光消息的方法,该方法包括:从多个滚动快门照相机之中的每一个各自照相机中,接收利用各自照相机捕获的各自系列的帧,其中每一个系列的帧各个捕获光源的足迹,并且系列中的每一个帧仅捕获消息的一部分,并且其中这些照相机之中的每一个照相机具有影响捕获到整个消息所需的帧的数量的属性的不同值;确定这些照相机之中的哪一个照相机具有对于捕获到整个消息而言需要最少数量的帧的所述属性的值;并基于此,选择通过组合从所确定的照相机捕获到的消息的部分来解码消息。

多个滚动快门照相机之中的所述每一个各自照相机可以包括至少一个第一照相机和至少一个第二照相机。因此,多个滚动快门照相机之中的每一个各自照相机可以相应地被表述为包括这样的至少一个第一照相机和至少一个第二照相机。

在实施例中,所述属性可以包括捕获各自系列的帧率。

这具有消息滚动的不同速度将被两个或更多不同的照相机体验到的效果。因此,即使所谈论的照相机之一碰巧具有对于给定消息重复周期而言碰巧展示出不滚动行为或仅仅非常缓慢滚动行为的帧率(例如,每一个帧看见相同的或几乎相同的片段,而其他的片段被不断错过);则具有不同帧率的另一照相机可以展示出更好的滚动行为,并因此被这个照相机捕获到的帧能够被选择来执行解码。

在一些实施例中,两个或所有照相机的帧率可以是固定的,许多现有照相机具有不能利用第三方应用诸如编码光解码应用来改变的帧率。在这样的情况下,尽管如此,本发明利用一些照相机可能碰巧具有不同帧率的事实。

在一些其他情况下,至少一个照相机的帧率可以是例如经由到照相机的api利用编码光解码应用而可设置的。在这样的情况下,该方法可以包括:改变这些照相机之中的第一照相机或多个照相机的帧率,以搜索减少捕获消息的帧的数量的帧率的值。

优选地,该方法包括:保持这些照相机之中的至少第二照相机、另一个照相机或多个照相机的帧率不变,同时改变一个或多个第一照相机的帧率,以搜索与一个或多个第二照相机的恒定帧率或多个恒定帧率相比而言减少捕获到整个消息所需的帧的数量的值。

这些照相机之中的所述至少第二照相机、另一个照相机或多个照相机在此可以被表达为至少一个第二照相机。所述一个或多个第一照相机在此可以被表达为至少一个第一照相机。

因此,对于一个第一照相机和一个第二照相机而言,所述选择包括:(a)如果在使用第一照相机利用具有变化速率的搜索能够捕获到整个消息之前使用具有恒定帧率的第二照相机捕获到对于获得整个消息而言足够的所述部分,则选择使用利用第二照相机捕获到的部分来执行所述组合和解码;但是(b)如果第一照相机的帧率的新值在所述搜索期间被找到,其中所述搜索使之能够在第二照相机之前使用第一照相机捕获到对于获得整个消息而言足够的所述部分,则选择使用利用第一照相机在所述新的帧率上捕获到的部分来执行所述组合和解码。

或者更一般而言,对于具有在搜索期间变化的帧率的一个或多个第一照相机和具有在搜索期间保持不变的帧率的一个或多个第二照相机而言,所述选择可以包括:(a)如果在使用一个或多个第一照相机之中的任何一个第一照相机利用其帧率的变化能够捕获到整个消息之前使用具有恒定帧率的一个或多个第二照相机之中的至少一个第二照相机捕获到对于获得整个消息而言足够的所述部分,则选择使用利用第二照相机之中的所述至少一个第二照相机捕获到的部分来执行所述组合和解码;但是(b)如果一个或多个第一照相机之中的至少一个第一照相机的帧率的新值在所述搜索期间被找到,其中所述搜索使之能够在一个或多个第二照相机之中的任何一个第二照相机之前使用第一照相机之中的所述一个第一照相机捕获到对于获得整个消息而言足够的所述部分,则选择使用利用第一照相机之中的所述至少一个第一照相机以新的帧率所捕获到的部分来执行所述组合和解码。

在替代或附加的实施例中,所述属性可以包括滚动快门捕获的行读出方向的定向(orientation),照相机的行读出方向是彼此不平行的。这可以借助于照相机或其图像传感器的物理定向来实现,或者甚至通过以下方式来实现:安排一个照相机逐排(相对于帧区域从顶到底或从底到顶)捕获其图像,同时安排另一个照相机逐列(从左到右或从右到左)捕获其图像。在实施例中,这些照相机面向同一方向(平行光轴,和相同或平行的图像平面)。在这种情况下,这些照相机可以被安排,以致其行读出方向在图像传感器的平面中是不平行的,优选地,彼此成90度。

这些实施例具有的效果是:除非照相机的足迹在帧的图像平面中具有完全的(连续的)旋转对称性,否则一个照相机的帧区域中的足迹将覆盖比另一个照相机更多的滚动快门行。因此,即使帧率是相同的并因此消息滚动的速度对于两个照相机而言是相同的,尽管如此,这些照相机之中的一个照相机将体验到比另一个照相机更大的消息片段。因此,对于消息滚动的给定速率,捕获到较大片段的照相机将能够在更少的帧中捕获到完整消息。

在替代或附加的实施例中,所述照相机包括至少一对照相机(12i,12ii);并且其中所述属性包括滚动快门行读出方向;并且其中这一对照相机之中的一个照相机在与这一对照相机之中的另一个照相机相反的方向中利用滚动快门行读出方向来执行其各自的捕获。

如此安排的优点是:只要光源的足迹没有碰巧在帧周期的时间中点的任一侧跨越对称数量的滚动快门行,则在每一个帧周期中,两个不同的照相机将在两个不同的时间捕获光源(并因此,消息)。假设:为了便于说明,光源的足迹朝向帧区域的顶部,并且第一照相机从顶到底读出,而第二照相机从底到顶读出。因而,第一照相机将在帧周期内在较早的时间捕获光源,并且第二照相机将在稍后的时间捕获光源。这意味着:两个照相机将在不同的阶段从光源捕获消息,因而每个消息周期获得两个不同的片段而不是只有一个。这样的异步可以造成捕获到整个消息所需的帧的所述数量的差异。因此,接下来,在这样的实施例中,可以确定对于捕获到整个消息而言需要最少数量的帧的照相机;并基于此,选择通过组合从所述确定的照相机捕获到的消息的部分来解码消息。在实施例中,在此,行读出方向可以是彼此平行的。例如,行读出方向二者可以是“水平的”(因此,彼此平行的),但是在相反的方向读出。

在实施例中,所述确定可以通过观察捕获整个消息所花费的时间来执行。替代地,通过观察在整个消息的接收之前在片段之间重叠的程度来执行所述确定。替代地,可以分析地(即,先验,非基于所接收的片段的定时或大小的经验观察)执行所述确定。这能够借助于理论公式或借助于基于过去模拟的查找。

在已收集到完全消息有价值的片段之后完成最快的照相机的确定的情况下,诸如在其中通过监视哪一个照相机首先收集到对于获得整个消息而言足够的片段来执行确定的情况下,则所述选择和解码可以包括:或(a)选择从利用所确定的照相机捕获到的已捕获片段中解码消息;(b)选择从利用那个照相机捕获到的未来片段中解码;或(c)选择从利用所谈论的照相机捕获到的已接收片段和未来片段的组合中解码。在其中基于片段之间重叠的程度或者分析地而不参考所接收片段的观察来确定最快的照相机的情况下,则这允许在从任何一个照相机已收集到完整消息有价值的片段之前选择最快的照相机。在这样的情况下,所述选择和解码可以包括:选择从利用所确定的照相机捕获到的未来片段中解码,或者选择从利用那个照相机捕获到的已接收片段和未来片段的组合中解码。

根据在本文公开的另一方面,可以提供一种检测在由光源发出的光中嵌入的重复编码光消息的方法,该方法包括:从多个滚动快门照相机之中的每一个各自照相机中,接收利用各自照相机以各自帧率捕获到的各自系列的帧,其中每一个系列的帧各个捕获光源的足迹,并且系列中的每一个帧仅捕获消息的一部分;并且改变这些照相机之中的第一照相机或多个照相机的帧率,以搜索减少捕获消息的帧的数量的帧率的值;并且通过组合由这些照相机之中的至少一个照相机捕获到的消息的部分来解码消息。

在实施例中,该方法包括:保持这些照相机之中的第二照相机、另一个照相机或多个照相机的帧率不变,同时改变一个或多个第一照相机的帧率,以搜索独自与一个或多个第二照相机的帧率相比而言减少捕获到整个消息所需的帧的数量的值。

组合可以包括组合来自至少在最少的帧中捕获到整个消息的照相机的部分。该方法可以包括选择使用至少来自首先(即,最早,如上所述)接收到完全消息的无论哪一个照相机或子集的照相机的片段来执行所述组合。可以使用来自仅仅首先(最早)(本身)获得整个消息的照相机的消息部分或仅仅首先获得整个消息的那些照相机的子集来执行组合。替代地,组合可以包括组合来自多个照相机的部分,其中这些照相机潜在地包括以下二者:(i)基于由于搜索而造成的帧率或多个帧率的第一照相机之中的至少一个,和(ii)基于它/它们的(多个)恒定帧率的第二照相机之中的至少一个。

根据在本文公开的另一方面,提供一种检测在由光源发出的光中嵌入的重复编码光消息的方法,该方法包括:从一对滚动快门照相机之中的每一个各自照相机中,接收由各自照相机捕获到的各自系列的帧,其中每一个系列的帧各个捕获光源的足迹,并且系列中的每一个帧仅捕获消息的一部分,并且其中该对照相机之中的一个照相机在与该对照相机之中的另一个照相机相反的方向利用滚动快门行读出方向执行其各自捕获;以及通过组合使用不同的行读出方向从该对照相机二者中捕获到的消息的部分来解码消息。

即,假定其中“top(顶)”和“bottom(底)”相对于行读出来定义的参考帧,这些照相机之中的一个照相机从帧区域的顶到底来执行其滚动快门捕获,而另一个照相机从帧区域的底到顶来执行其捕获。在实施例中,除了行读出方向之外,两个照相机的帧区域以其他的方式被安排在同一定向中。在实施例中,用于一个照相机的帧周期与另一个照相机的帧周期在时间上进行对准,即,利用第一照相机在一个读出方向中进行的每一个帧的捕获与利用另一个照相机在另一个读出方向中进行的对应帧的捕获同时开始。在实施例中,一个或两个的读出方向可以是被控制为相反的设置。替代地,读出方向能够是固有的固定属性。

如此安排的优点是:只要光源的足迹没有碰巧在帧周期的时间中点的任一侧跨越对称数量的滚动快门行,则在每一个帧周期中,两个不同的照相机将在两个不同的时间捕获光源(并因此,消息)。假设:为了便于说明,光源的足迹朝向帧区域的顶部,并且第一照相机从顶到底读出,而第二照相机从底到顶读出。因而,第一照相机将在帧周期内在较早的时间捕获光源,而第二照相机将在稍后的时间捕获光源。这意味着:两个照相机将在不同的阶段从光源捕获消息,因而每个消息周期获得两个不同的片段而不是只有一个。在也给出不同片段的相对定时的知识的情况下,来自两个照相机的各种片段随后能够使用在本领域中本身是已知的消息片段缝合技术来重组(“缝合”)。

在本发明的所述另一方面的实施例中,除了不同的行读出方向之外,这些照相机之中的一个照相机可以在与另一个照相机相比而言不同的帧率上捕获其各自系列的帧。这具有将由两个或更多不同的照相机体验到消息滚动的不同速度的效果。因此,即使所谈论的这些照相机之中的一个照相机碰巧具有的帧率对于给定消息重复周期而言碰巧展示出不滚动行为或仅仅非常缓慢滚动行为,则具有不同帧率的另一个照相机可以展示出更好的滚动行为。

进一步,在实施例中,这一对照相机的行读出方向可以被安排为彼此平行(即,180度)。这具有最大化由两个不同的照相机采样的消息部分之间不同的时间的优点。

进一步,替代地,除了不同的行读出方向之外,这些照相机之中的一个照相机或其图像传感器可以被物理定向,以致其行读出方向相对于另一个照相机的行读出方向而言是不平行的(即,角度实质上在0和180度之间但是不等于0和180度)。这具有的优点在于:除非照相机的足迹在帧的图像平面中具有完全的(连续的)旋转对称性,否则在一个照相机的帧区域中的足迹将覆盖比另一个照相机更多的滚动快门行。因此,这些照相机之中的一个照相机将捕获到比另一个照相机更大的消息片段,因此捕获到更大片段的照相机将能够在更少的帧中捕获到完整消息。

根据在本文公开的又一方面,可以提供一种检测在由光源发出的光中嵌入的重复编码光消息的方法,该方法包括:从多个滚动快门照相机之中的每一个各自照相机中,接收由各自照相机捕获到的各自系列的帧,其中每一个系列的帧各个捕获光源的足迹,并且系列中的每一个帧仅捕获消息的一部分,并且其中这些照相机之中的每一个照相机具有影响捕获到整个消息所需的功耗的属性的不同值;确定这些照相机之中哪一个照相机具有对于捕获到整个消息而言需要最少功耗的所述属性的值;和基于此,选择通过组合从所确定的照相机中捕获到的消息的部分来解码消息。

在与上面的本发明的第一方面的实施例部分类似的实施例中,所述属性可以包括捕获各自系列的帧率和/或处理功率和/或行读出方向。再者,该方法可以包括:改变这些照相机之中的第一照相机或更多照相机的帧率,以搜索降低捕获消息的功耗的帧率和/或处理功率和/或行读出方向的值。

优选地,该方法包括:保持这些照相机之中的至少第二照相机、另一个照相机或多个照相机的帧率和/或处理功率和/或行读出方向不变,同时改变一个或多个第一照相机的帧率和/或处理功率和/或行读出方向,以搜索与一个或多个第二照相机的恒定的帧率和/或处理功率和/或行读出方向相比而言降低捕获到整个消息所需的功耗的值。

如上所述,本发明的又一方面的优点是:检测在由光源发出的光中嵌入的重复编码光消息可以是更节能的。即,选择具有为了捕获整个消息而消耗最少的功率或能量的属性的值的照相机。

在本文公开的任何方面或实施例中,在其中嵌入编码光消息的光可以包括可见光照。

所述照相机可以包括在同一用户设备中安置的至少一对照相机。

例如,这一对照相机可以形成立体照相机安排。

用户设备可以采取诸如膝上型计算机、平板智能手机或可穿戴设备之类的移动用户终端的形式。

所公开的步骤可以利用被安排成在服务器和/或用户终端例如在其中安置这些照相机之中的一个、一些或所有照相机的用户终端上运行的编码光解码应用来执行。

根据在本文公开的另一方面,提供一种计算机程序产品,其包括在计算机可读存储器上收录的代码,该代码被配置,以便当在一个或多个处理单元上运行时执行根据在本文公开的任何实施例的操作。

根据在本文公开的另一方面,提供一种信号处理装置,其包括被配置成执行根据在本文公开的任何实施例的操作的解码器。

根据在本文公开的另一方面,提供一种接收机子系统,其包括所述信号处理装置和照相机。

根据在本文公开的另一方面,提供一种通信系统,其包括接收机子系统和光源。所述通信系统可以是基于vlc的室内定位系统。

在本文公开的本发明的各方面的替代或附加的实施例中,影响捕获到整个消息所需的帧的数量的所述属性可以是各自照相机的曝光时间。即:照相机的曝光时间可以影响vlc的检测,因为曝光不足典型地渲染变暗的图像,其中只有明亮区域是更明显的。因而,发出调制光信号的光源的足迹在一些示例中可以更准确地被检测到,并且调制光信号在一些示例中可以更有效地被接收到。因此,在这样的情形中,各自照相机的曝光时间的属性可以利用更少数量的帧进行整个消息的检测。

类似地,在又一替代或附加的实施例中,影响捕获到整个消息所需的帧的数量的所述属性可以是iso值,因为iso值也可以影响检测vlc的有效性。

类似地,在又一替代或附加的实施例中,影响捕获到整个消息所需的帧的数量的所述属性可以是各自照相机的分辨率;因为正在发出调制光信号的一些光源的足迹可以利用较低分辨率更有效地被检测到,因为较高分辨率由于增加处理时间(和增加的电池功率的损耗)而使得vlc检测变慢。然而,在其他情形中,所述分辨率不能被降低,或者需要更高分辨率来更详细捕获光源。因而,在一些情形中,为分辨率的属性可以利用更少数量的帧和/或利用改进的功率/能量消耗进行整个消息的检测。

类似地,在又一替代或附加的实施例中,影响捕获到整个消息所需的帧的数量的所述属性可以是各自照相机的变焦或聚焦;或替代地,感兴趣区域(当例如具有感兴趣区域照相机时)。

类似地,影响捕获到整个消息所需的功耗的所述属性作必要修改之后可以是例如曝光时间、分辨率、iso值、感兴趣区域或者变焦或聚焦。

附图说明

为了帮助理解本公开和显示如何可以将实施例付诸实践,通过示例来参考附图,其中:

图1是编码光通信系统的示意框图,

图2是被滚动快门照相机捕获到的帧的示意图,

图3示意性地举例说明滚动快门照相机的图像捕获元素,

图4示意性地举例说明利用滚动快门进行的调制光的捕获,

图5是显示滚动快门照相机的行读出的时序图,

图6是在所捕获的图像中照明器的足迹的示意图,

图7是举例说明从多个片段中进行消息重建的时序图,

图8是捕获消息所需的帧的数量对(vs.)消息持续时间的曲线,

图9显示使用具有两个不同的照相机定向的滚动快门照相机所捕获的光源的两个图像,

图10显示使用具有两个不同的行读出方向的滚动快门照相机所捕获的光源的两个图像,和

图11示意性地举例说明行读出方向对于消息捕获的影响。

具体实施方式

下面描述一种方法,用于通过使用多个照相机同时捕获同一光源来改进可见光通信(vlc)即编码光的检测。由于每个照相机具有不同的图像捕捉体制,所以能够显著提高vlc的鲁棒性和检测速度(信道的带宽)。

图1给出用于发射和接收编码光的系统的示意概述。该系统包括发射机2和接收机4。例如,发射机2可以采取例如在房间的天花板或墙上安装的照明器的形式或采取独立灯或室外灯杆的形式。接收机4可以例如采取移动用户终端诸如智能电话、平板计算机、膝上型计算机、智能手表或一副智能眼镜的形式。

发射机2包括光源10和连接到光源10的驱动器8。在其中发射机2包括照明器的情况下,光源10采取光照源(即,灯)的形式,其被配置成以适合于照亮环境诸如房间或室外空间的规模(scale)发出光照,以便允许人们看见环境内的物体和/或障碍物和/或找到他们的路。光照源10可以采取任何合适的形式,诸如包括led的串或阵列的基于led的灯,或潜在地可以采取另一形式,诸如白炽灯泡或荧光灯。发射机2也包括耦合到驱动器8的输入的编码器6,用于控制光源10经由驱动器8来驱动。特别地,编码器6被配置成经由驱动器8控制光源10来调制它发出的光照,以便嵌入循环重复的编码光消息。

通过调制光的任何合适的属性,典型地,通过调制其强度,可以嵌入消息。可以使用任何合适的已知调制方案来这样做。在一些简单的方案中,嵌入到光中的信号可以简单地采取具有特征调制频率的单个周期波形(例如,正弦波或方波)的形式,其中特征调制频率对于光源10而言是独特的(或者,至少在所谈论的系统内是独特的)。这样,调制的频率能够充当光源的识别符(id),以使之与系统中的其他光源区分开来。在更复杂的方案中,数据的符号可以被嵌入光中,以便编码任何的任意数据信号。数据的符号典型地相对于em辐射本身的频率即与基本载波相比而言的低频率、根据基带调制来调制。这能够通过将数据符号直接调制到光的幅度或强度中例如通过振幅移位键控或脉冲位置调制来完成。替代地,一些方案(与光本身的em频率相比而言仍然在低频率上)将人工载波波形调制到光中,并且随后调制这个载波的属性,诸如其频率或相位,即,使用频移键控或相移键控。

manchester(曼彻斯特)编码是用于将数据嵌入光中的无dc代码(dcfreecode)的示例。ternarymanchester(三元曼彻斯特)是无dc2的,这意味着:不仅功率谱密度在零赫兹上归零,而且功率谱密度的梯度也归零,因而甚至进一步消除可见闪烁。对于较高的速度,脉冲幅度调制(pam)和多载波调制的变体、尤其正交频分复用(ofdm)调制是流行的调制方法。ofdm数据也不包含dc项并且仅包含实(非虚)信号。

在实施例中,编码器6采取在发射机2的存储器上存储并且被安排用于在发射机的处理装置上执行的软件的形式来实现(在其上存储软件的存储器包括采用一个或多个存储媒体的一个或多个存储单元,例如eeprom或磁驱动器,并且在其上运行软件的处理装置包括一个或多个处理单元)。替代地,并不排除:编码器6之中的一些或全部能够在专用硬件电路或者可配置的或可重新配置的硬件电路诸如pga或fpga中进行实现。

接收机4包括多个照相机12和耦合到来自照相机12的输入的编码光解码器14,以便接收利用照相机12捕获到的图像。为了说明的目的,显示两个照相机12i、12ii,但是也可以使用两个以上的照相机。不同的照相机12i、12ii利用基本上相同或至少重叠的视野来安排,以便在其各自的视野内并因此在帧区域内捕获同一光源10的至少一部分。在实施例中,多个照相机12i、12ii之中的一些或全部可以被并排(彼此相邻)安排,和/或可以利用其光轴(观看方向)平行对准来安排,以便具有基本上相同的视野。和/或,在实施例中,多个照相机12i、12ii之中的一些或全部可以被安置在同一设备诸如移动用户终端(例如,智能手机或平板计算机)或专用照相机设备中。例如,在具有所有这些属性的合适示例中,多个照相机12i、12ii之中的一些或全部可以是立体或全光照相机设备之中的个别照相机。然而,替代地,在其他的替代或附加的安排中,多个照相机12i、12ii之中的一些或全部可以被安排成指向不同的方向和/或可以被放置在不同的位置(但是仍然在捕获同一光源10),和/或可以被安置在不同的设备中。

在实施例中,解码器14采取在接收机4的存储器上存储并且被安排用于在接收机4的处理装置上执行的软件的形式来实现(在其上存储软件的存储器包括采用一个或多个存储媒体的一个或多个存储单元,例如eeprom或磁驱动器,并且在其上运行软件的处理装置包括一个或多个处理单元)。替代地,并不排除:解码器14之中的一些或全部能够在专用硬件电路或者可配置的或可重新配置的硬件电路诸如pga或fpga中进行实现。

编码器6被配置成根据在本文公开的实施例来执行发射侧操作,并且解码器14被配置成根据在本文的公开来执行接收侧操作。也注意:编码器6不一定需要在与光源10及其驱动器8相同的物理单元中进行实现。在实施例中,编码器6可以与驱动器和光源一起被嵌入到照明器中。替代地,编码器6能够在照明器4的外部例如在经由任何一个或多个合适网络(例如,经由因特网或者经由本地无线网络诸如wi-fi或zigbee、6lowpan或bluetooth网络或者经由本地有线网络诸如ethernet(以太网)或dmx网络)连接到照明器4的服务器或控制单元上进行实现。在外部编码器的情况下,仍可以在照明器4上提供一些硬件和/或软件,以帮助提供定期定时信号并从而防止抖动、服务质量问题等。

类似地,编码光解码器14不一定被实现在与照相机12相同的物理单元中。在实施例中,解码器14可以被并入与照相机12i、12ii之中的一个或两个(或所有)照相机相同的单元中,例如,一起被并入移动用户终端诸如智能手机、平板计算机、智能手表或一副智能眼镜中(例如,采取安装在用户终端上的应用或“app”的形式来实现)。例如,照相机12i、12ii可以是在移动用户终端中集成的一对立体照相机,其初始地旨在用于捕获3d图像。然而,替代地,解码器14能够被实现在外部终端上。例如,照相机12可以被实现在一个或多个第一用户设备诸如一个或多个专用照相机单元或移动用户终端如同智能手机、平板计算机、智能手表或一副智能眼镜中;而解码器14可以被实现在第二终端诸如经由任何合适的连接或网络例如一对一连接诸如串行电缆或usb电缆或者经由任何一个或多个广域网诸如internet或移动蜂窝网络或本地无线网络如同wi-fi或bluetooth网络或本地有线网络如同ethernet或dmx网络连接到(多个)第一设备上的照相机12的膝上型计算机、台式计算机或服务器上。

图3表示采取滚动快门照相机形式的照相机12之一的图像捕获元素16。每一个照相机12可以采用类似的方式来配置。图像捕获元素16包括用于捕获代表在每一个像素上入射的光的信号的像素的阵列,例如,典型地,正方形或长方形像素的正方形或长方形阵列。在滚动快门照相机中,这些像素采用水平排18的形式被安排在多个行中。为了捕获帧,每一行按顺序被曝露,每一行被曝露照相机的曝光时间texp的相继实例(instance)。在这种情况下,曝光时间是个别行的曝光的持续时间。当然注意:在数码照相机的上下文中,术语“expose(暴露)”或“exposure(暴光)”不是指机械按快门(shuttering)或诸如此类(术语历史上起源于此),而是指此时该行正被主动用于捕获或采样来自环境的光的时间。也注意:序列在本公开中表示时间序列,即,因此每一行的曝光开始于稍微不同的时间。这并不排除:可选地,这些行的曝光可以在时间上重叠,即,因此曝光时间texp长于行时间(1/行率),并且实际上,典型地这是更常见的情况。例如,首先,顶排181开始被暴露持续时间texp,然后在稍晚的时间,下面第二排182开始被暴露texp,随后再次在稍晚的时间,下面第三排183开始被暴露texp,依此类推,直至底排已被暴露。这个过程随后被重复,以便暴露一系列帧。

这个的示例在图5中进行举例说明,其中垂直轴表示滚动快门图像捕获元素的不同行18,而水平轴表示时间(t)。对于每一行,参考数字50标记重置时间,参考数字52标记曝光时间texp,参考数字54标记读出时间,并且参考数字56标记电荷转移时间。tframe是帧周期,即1/帧率。

编码光能够使用这种类型的传统摄像机来检测。信号检测利用滚动快门图像捕获,这导致时间光调制转换为相继图像排上的空间强度变化。

这在图4中示意性地进行举例说明。当每一个相继行18被暴露时,它在稍微不同的时间上并因此(如果行率与调制频率相比而言是足够高的话)在稍微不同的调制相位上被暴露。因而,每一行18被暴露于调制光的各自瞬时水平。这导致在给定帧上随着调制而波动或循环的条纹的图案。基于这个原理,图像分析模块14能够检测到被调制到利用照相机12接收到的光中的编码光分量。

对于编码光检测,具有滚动快门图像传感器的照相机12具有超越全局快门读出(其中一次暴露整个帧)的优点在于:连续传感器行的不同时间实例引起快速光调制转换为如针对图4所讨论的空间图案。然而,与图4所示的不同,来自给定光源4的光(或至少可用光)不一定覆盖整个图像捕获元素16的区域,而是仅覆盖某足迹。结果,所捕获的光足迹的垂直扩展越短,则编码光信号在其上是可检测的持续时间就越长。在实践中,这意味着:在单个帧内只能捕获到整个编码光信号的时间片段,以致为了捕获到对于恢复在编码光中嵌入的数据而言足够的移位信号片段,需要多个帧。每一帧中的信号片段越小,则在数据恢复是有可能的之前越多捕获到的帧是必要的。

参考图2,每一个照相机12被安排成捕获各自系列的帧16',其中如果该照相机被指向光源10,则这些帧将包含来自光源10的光的图像10'。在图像平面(即,帧区域)上光源10的图像的投影10'可以被称作光源的足迹。如所讨论的,照相机12是滚动快门照相机,这意味着:它不是一次全部捕获每一帧16'(如在全局快门照相机中一样),而是在一系列行18中逐行捕获。也就是说,每一帧16'被划分为多个行18(行的总数在图2中被标记为20),每一行跨越帧16'并且是一个或多个像素厚(例如,跨越帧16'的宽度,并且在水平行的情况下是一个或多个像素高)。捕获过程从暴露一行18、随后暴露下一行(典型地,相邻行)、然后暴露下一行、依此类推来开始。例如,捕获过程可以从帧16'的顶到底滚动,从暴露顶行、随后从顶开始暴露下一行、然后向下暴露下一行等等开始。替代地,它能够从底到顶或甚至左右滚动。当然,如果照相机12被包括在移动或可移动设备中以致它能够被定向在不同的方向,则这些行相对于外部参考帧的定向是可变的。由此,就术语而言,在帧的平面中与这些行垂直的方向(即,滚动方向,也被称为行读出方向)将被称为垂直方向;而在帧16'的平面中与这些行平行的方向将被称为水平方向。

为了捕获样本来检测编码光,每一个给定行18之中的一些或所有的个别像素样本被组合成那个行的各自组合样本19(例如,只有对编码光信号有用地作出贡献的“活动”像素被组合,而来自那个行的其余像素被丢弃)。例如,组合可以通过对像素值进行积分或平均或者利用任何其他的组合技术来执行。替代地,能够将某像素作为每一行的代表。无论哪种方式,来自每一行的样本因而形成在不同的时刻对编码光信号进行采样的时间信号,因而使得编码光信号能够由解码器14从所采样的信号中进行检测和解码。

为了完整性,注意:帧16'也可以包括一些消隐行(blankingline)26(图6所示)。典型地,行率略高于对于所有活动行而言所严格需要的:图像传感器的行的实际数量。图像传感器的时钟方案使用像素时钟作为最高频率,并且从那之中导出帧率和行率。这典型地给出每一行一些水平消隐以及每一帧一些垂直消隐。在那个时间“捕获到”的行被称为消隐行并且不包含数据。

也注意:除了专用滚动快门照相机之外,还存在支持滚动快门模式和全局快门模式二者的cmos成像器。例如,这些传感器也被用在诸如可能不久在一些移动设备中并入的一些3d射程照相机(rangecamera)中。如在本文使用的术语“滚动快门照相机”指的是具有滚动快门能力的任何照相机,并且不一定限于只能执行滚动快门捕获的照相机。

编码光检测的挑战在于:光源10的足迹10'不一定覆盖每一帧16'的全部或甚至几乎全部。此外,正被发出的光不一定与捕获过程同步,这能够导致进一步问题。

使用滚动快门照相机12进行编码光检测的特殊问题因此出现,因为充当编码光发射机的光源10事实上可能仅覆盖每一帧16'的行18之中的小部分。实际上,只有图2中的行24包含记录编码光源的强度变化的像素,并因而导致包含有用信息的样本。所有剩余的“每帧行”22及其导出的样本并不包含与感兴趣的源10相关的编码光信息。如果光源10是小的,则可能只获得编码光源10在每一帧16'中的短时间视图,并因此现有技术仅虑及非常短的消息。然而,具有也发射较长消息的可能性可能是所希望的。

相应地,借以编码光消息被循环重复的技术是已知的,并且接收侧4上的解码器14能够重建或“stitchtogether(一起缝合)”在不同的帧上看见的消息的个别片段。这样的技术在本领域中是已知的。

然而,如稍后将更详细阐述的,帧率和消息周期(1/消息重复率)的某些组合导致相同的片段被一遍又一遍地看到,而其他的片段永远不被看到或至少花费很长的时间才滚动进入视野。

如所提及的,适于智能手机检测等等的vlc发射机2典型地发射同一消息的重复实例,因为只有照相机图像16'的一部分当利用照相机12从典型距离(例如,几米)中观看时被光源10覆盖。因此,每图像(即,每帧16')仅接收到消息的小部分,并且检测器14需要从多个帧中收集数据。在此,一些问题可能发生。首先,当被光源10覆盖的行24的数量是小的时,则可能花费许多帧来收集消息。其次,检测器需要收集消息的不同部分,以便完全地接收到完整的消息。消息重复率由照明器或发射机4(例如,充当信标)来固定和确定。照相机12的帧率典型地也是固定的,或者至少不是就其本身而言能够选择的参数。然而,组合能够导致所谓的不滚动消息。这意味着:消息率和帧率具有这样的比率,以致消息的一些部分从未被照相机12“看见”(或者等效地,帧周期和消息重复周期具有这样的比率,以致消息的一些部分从未被照相机12看见)。

图6显示被滚动快门照相机12看见的光源10的典型图像。滚动快门照相机12相对于序列中的以前采样的行利用微小延迟(1/行率)对每一行18采样,这些行18的采样典型地从顶到底或从底到顶按顺序滚动。这意味着:能够在空间上(在垂直方向)捕获到编码光的时间光变化。在图6中标记为18的行指示照相机行,所有的行在一个帧时间tframe(=1/帧率)期间被扫描。矩形举例说明光源10的典型足迹10'。对于编码光检测,一行上的像素值典型地被浓缩成每行样本,例如,在像素选择和平均之后,如在右侧利用点19示意性指示的(尽管在实施例中,2d图像也仍然可以用于与检测相关的目的,诸如区域分割和/或运动估计)。捕获光源10的行被标记为24。这些行的扫描持续一持续时间tsource(<tframe)。循环重复的消息具有tmessage的整体消息重复周期(1/消息重复率)。

在图6的底部,显示1d样本流作为时间的函数。也如所示的,每帧只有一些样本对应于足迹10',其中:

footprintratio(足迹比率)α=tsource/tframe。

典型地,如果在帧率和消息重复率之间没有特别合理的比率,则每一帧16'(在扫描源10的足迹10'的同时)将捕获到由源10循环发射的消息的不同的局部视图。通过组合足够多的连续帧的足迹(有时被称为“缝合”的过程),则检测器14能够重建完整的消息,假如tframe、α和消息持续时间满足某些属性的话,如下面进一步描述的。缝合或重建完整消息所需的帧的数量(nf)是确定解码延迟即在解码结果可用于系统之前的等待时间的主要参数。

作为直观的示例,考虑其中帧周期是消息重复周期的整数倍例如等于消息周期(1x消息周期)的情况。在将要捕获的第一帧中,覆盖源10的行24的扫描碰巧在时间上与正由源发射的编码光消息的某个第一片段重合,无论消息的什么部分碰巧在那些特别行24正被扫描的时间上正被发射。随后,在将要捕获的下一帧中,稍后将在时间tframe再次扫描相同的行24。如果在时间tmessage=tframe(或1⁄2tframe,(1/3)tframe等)之后也重复消息的下一个实例,则覆盖足迹10'的行24将再次被扫描,消息的同一片段将造访(comearound)(假定:足迹10'没有相对于帧区域16'移动)。因而,照相机12将总是看见消息的相同片段,并总是错过消息的其余部分。另一方面,假设:消息重复周期tmessage是帧周期tframe的某任意比率,例如,tmessage=(1/√2)tframe。在这种情况下,当覆盖足迹10'的行24在帧周期tframe之后将再次被扫描时,消息将已翻滚与帧周期不一致(outofphase)的一些量。因此,那个帧将看见消息的不同片段。只要在帧周期和消息周期之间的某些其他关系不发生(一些组合导致“切换”,凭此交替帧重复地看见交替片段,但是其他片段被重复错过),则第三相继帧将看见消息的又一不同的片段,依此类推。根据有时在本领域中使用的术语,通过假设消息正相对于帧率或帧周期“滚动”或通过假设满足“滚动条件”来描述这种现象。

在图7中显示另一示例。在这个示例中,消息周期tmessage是36.5毫秒(ms),并且帧周期tframe为33毫秒。足迹比率α=0.25。消息被连续地重复,并且照相机12正在捕获光源10的足迹10'。因为消息周期tmessage与帧周期tframe不同,所以消息似乎在照相机屏幕上滚动:在每一帧上,消息的移位部分被捕获到。在这个示例中,得到完整消息将花费23帧(23*33ms=760ms)。在这个示例中具有相当多的重叠,这意味着:消息的各部分不止一次被捕获到。

另一方面,当消息周期tmessage差不多与帧周期tframe相同时,则消息实际上没有“在滚动”。这意味着:照相机在每一帧中(在足迹区域10'中)“看见”消息的同一小部分。尤其在足迹10'是小的时,则能够花费很多帧来收集对于采集到所发射消息的完整拷贝而言所需要的所有小部分。对于消息和帧周期的其它比率,这种效果也会发生,诸如“切换”组合,其中一个帧捕获消息的第一片段,随后下一帧捕获消息的第二片段,但是然后在那之后的下一帧再次捕获第一片段,依此类推,以致没有被第一和第二片段覆盖的消息的部分仍然从未被捕获到。

一般而言,如果,其中n是整数,则遇到“不滚动”足迹,如果:

其中n+是所有正整数的集合。并且,如果关系接近这样的节点,则消息将相对于帧周期仅仅非常缓慢地滚动或“漂移”,并因此将花费很长的时间来捕获到对于重建消息而言足够的不同片段。

图8显示用于30fps照相机的作为消息周期tmessage的函数的nf的一些示例曲线,其中nf是捕获到对于构成完整消息而言足够的片段所需的帧的数量。具有最少渐近线(asymptote)的行指示利用0.2的光源足迹比率(α)收集消息所需要的帧的数量。具有第二最大数量渐近线的行用于足迹比率α=0.1。具有最多渐近线的行用于α=0.05的小足迹。对于较大足迹α=0.2,具有几个渐近线,其中非常宽的渐近线接近帧周期,但是很多消息周期将导致可接受数量的缝合帧。对于较小的足迹,将出现很多较窄的渐近线(具有无限的检测时间),这要求消息周期的仔细选择。

在一些系统中,消息周期可以被预先设计用于与具有某帧率的照相机12一起使用,以致对于最低要求的足迹10',用于检测的帧的数量是可接受的(即,以避免渐近线)。在图8的右下角区域中标记为39的小黑色圆圈指示这样的针对消息持续时间(36.5毫秒)的工作点的示例。然而,尽管如此,当在发射侧2上的驱动器8的时钟正漂移一点时,或者如果足迹10'比所设计的小一点的话,检测的问题可能出现。在这样的情况下,检测能够变得困难或甚至根本不可能,因为消息周期tmessage与帧周期tframe的比率变得更接近渐近线之一。再者,在其他系统中,并不总是有可能利用所考虑的特别接收帧率来设计消息周期,反之亦然,也并不总是有可能预先设计针对特别消息周期设计的照相机。在这样的系统中,tmessage和tframe的不幸的巧合组合也可能碰巧将其比率放置在渐近线之一上或接近渐近线之一。

为了避免这样的场景,则根据本公开,接收机子系统4被安排,以致两个(或更多)照相机12i、12ii利用不同的捕捉(即,捕获)体制来配置。照相机12i、12ii具有至少重叠的视野并且可以具有基本上相同的视野(例如,两个相邻照相机面向同一方向,如在立体安排中一样)。每一个照相机12i、12ii捕获同一编码光源10的各自图像流,优选地,其中光源10的足迹10'的大小、形状和位置在足以捕获到对于捕获到整个消息而言足够的重复编码光消息的片段的时标上在每一个给定流内保持基本上不变(即,足迹10对于解码位置而言是伪静态的)。被不同的照相机12i、12ii捕获到的不同流在相同的时间或至少在重叠时间捕获同一光源10。然而,在这个捕获期间,照相机12i、12ii也具有影响它们捕获消息的方式的不同属性,即,不同的捕捉体制。

解码器14被配置为利用两个(或更多)不同照相机12i、12ii的可用性来减少完全捕获到编码光消息所花费的时间,和/或提高检测的可靠性。

根据在本文公开的一个方面,不同的捕捉体制包括属性的不同的各自值,其中属性影响经由各自照相机获取足够的片段来重建消息的完整实例所需的帧的数量。这个属性可以是帧率,因而影响该消息相对于帧周期的滚动行为。在其他实施例中,所谈论的属性可以是物理定向,即,不同的照相机12i、12ii具有相对彼此不同的物理定向(例如,在垂直于编码光方向的平面中)。这意味着:不同的照相机12i、12ii捕获光源10的不同足迹10'并因此捕获消息的不同大小片段(假定:投射到帧区域上的足迹10'没有碰巧具有完全圆对称性)。

在给出这些不同属性的情况下,解码器14则在不同的照相机之间选择来用于消息重组和解码,即,在使用来自这些照相机之中的仅仅一个或另一个照相机的消息片段之间选择。根据哪一个照相机具有导致完整消息的最快捕获的属性(例如,帧率和/或定向)来这样做。因此,解码器14选择具体地基于来自体验最佳滚动行为的照相机12的片段或者具体地基于来自体验最大垂直足迹的照相机12的片段来重组和解码消息。

根据在本文公开的另一方面,不同的捕捉体制包括不同的行读出方向(例如,向上和向下)。假定:足迹10'没有碰巧正好落在帧的中心,这意味着:不同的照相机12i、12ii在不同的时间并因此在消息的不同阶段捕获光源10,从而导致消息的不同片段。在这种情况下,解码器14能够组合来自不同照相机12的片段,以便更迅速地重组消息。

在过去的vlc或编码光中,已使用基于光电二极管的接收机来执行检测。近来,智能手机照相机也能够被用作用于编码光检测的接收机。这打开新的应用领域,如同个人光控制和室内定位,其中能够从照明器中接收识别符。这样,照明基础设施能够被用作密集的信标网。

在许多移动设备中,已具有多个照相机可用于利用正视图或后视图来拍摄照片和视频。还能够注意到:移动设备利用3d成像能力而被引入市场。3d成像一般旨在用于应用,诸如,以便在照相机上聚焦到距某对象的距离上或者测量照片中对象的大小或者房间的3d重建。

这样的3d成像主要基于使用两个照相机或要求专用照相机的结构光或飞行时间的立体视觉模块。在本文公开的实施例中,这样的立体照相机安排12i、12ii可以被用于编码光检测。特别地,通过使用具有帧率、照相机的物理定向和/或个别传感器的读出方向的不同值的照相机,多照相机安排用于克服滚动快门vlc检测的缺点之中的一个或两个缺点(在光源与照相机行对准时的小足迹,和不滚动行为)。在实施例中,这些之中的一个也可以随后被改变来基于来自两个照相机的初始结果给出更好的滚动行为。因而,能够利用多个照相机的这些不同的因素来增加vlc带宽和鲁棒性。

在不同的滚动快门照相机之间可能不同的一个因素是定时。因此,在第一实施例中,具有不同的个别帧率的照相机12i、12ii用于同时捕获同一光源10的各自图像流。这能够例如应用于如同在具有几乎相同视野的立体视觉设置中使用的相同成像器的情况中,例如,在移动设备中嵌入的立体视觉照相机安排。

改变定时时常利用许多智能手机(由于api限制)是不可能的。然而,在实施例中,当使用不同的传感器模型时,其个别定时默认不同,并且这能够被解码器14利用来在不同的滚动体制下获得图像序列。替代地,在某些情况下,一个或两个照相机的帧率能够由解码器14例如编码光小程序诸如经由应用和照相机12之间合适的api(应用编程接口)来设置。能够或直接地(显式地设置帧率的期望值)或间接地(代理地,通过设置某其他属性的值,诸如对帧率的值具有连锁反应的曝光值)设置帧率。无论哪种方式,能够设置一个或两个照相机12i、12ii的帧率,以致这些帧率是彼此不同的,并导致就消息相对于帧周期的滚动行为而言不同的定时。因而,照相机的帧率能够有意地、不同地进行挑选,以减少两个照相机体验到不滚动行为的机会。

解码器14随后选择使用来自具有最佳滚动行为的照相机的图像流用于解码。具有能够确定这个的许多方式。一种方式是:解码器14监视覆盖整个消息持续时间的完整集合的片段。wo2015/121155教导如何相对于消息周期来时间对准消息片段,并且一旦完成这个,有可能辨别是否足够的重叠片段可用于覆盖整个消息。所接收的片段在解码器14的缝合缓冲器中进行时间对准。一旦照相机12i、12ii之一接收了足以使得消息完整的片段,解码器14就能够使用从中接收到的片段来重组消息。另一类似技术是:监视在缝合缓冲器中所接收的、时间对准的片段之间重叠的程度。即,对于每一个照相机12,一旦由那个个别照相机接收到的片段被时间对准(如由wo2015/121155针对给定照相机所教导的),则有可能确定片段之间重叠的程度(或者相反,从一帧到下一帧的片段之间时间的移位或偏移)。展示出太大的重叠程度(或太小的移位)的照相机12i、12ii正相对于消息周期缓慢地滚动。因而,解码器14随后能够选择从接收自具有更好滚动行为的照相机的片段开始继续解码。这些方法允许具有最佳滚动的照相机12基于接收到的片段的观察、凭经验即后验来确定。基于重叠这样做也使之能够在从任一照相机接收到完整消息实例之前进行确定。

在更进一步实施例中,具有更好滚动的照相机12能够分析地即后验来确定。在给出消息重复周期的知识的情况下,这能够基于图8所示的关系和上面给出的相关联公式来完成。替代地,这能够通过参考来自先前的离线模拟的结果来完成。这允许在从任一照相机接收到完整消息实例之前或者甚至在全然接收到任何片段之前选择最佳照相机12。

在一些实施例中,基于一个或两个照相机的滚动行为,能够确定更优的帧率。因而能够设置一个或两个照相机的传感器的帧率,以致不滚动行为的机会被最小化或者甚至完全不存在。这能够凭经验(后验)通过迭代地改变照相机12i、12ii之中的一个或两个的帧率直至达到更短的重建时间或片段之间更好的重叠程度来完成。通过检测缝合问题,(多个)照相机12因而能够被设置为另一帧率。或者替代地,能够基于上面公式或参考先前的模拟来分析地(先验)计算最佳的帧率。

分析方案要求预先确定的消息周期(就符号数量而言)的知识。所发射的消息长度经由侧信道(例如,rf侧信道诸如wi-fi)对于解码器14而言能够是已知的,或者能够被设置为每个场地(pervenue)预定的参数。利用那个,能够计算具有最佳滚动属性的帧率。优选地,这也留出足够的净空(headroom)来处理发射机时钟偏移。能够设置第二照相机12ii,以致那一个照相机的渐近线与第一照相机12i的渐进线很好地进行交错(interleave)。注意:实际的发射机时钟在时钟恢复之后只在解码器14中是已知的,并且随后能够利用缓冲的片段来完成实际的缝合。在此之前,解码器14利用估计的默认发射机时钟和归属滚动属性来工作。在实施例中,还能够根据已接收的片段来调整照相机帧率,随后已存储的片段需要利用旧的定时设置在时间上进行调整,并且然后这些片段能够与使用新时基的新片段进行组合。在图8中,能够看到所计算的滚动行为的示例,其对应于得到完整消息所需要的帧的数量。

分析方案并非总是可用的,例如,因为消息持续时间在接收侧上不是预先知道的,或者因为发射时钟的未知偏差太大。另一方面,迭代搜索帧率的多个不同值的经验方案花费时间并要求光源10足够长地保留在视野中,以便在重新调整照相机之后捕获到完整代码。在实践中,照相机12花费几个帧来适应新的帧率设置,并因此花费时间来扫描多个不同的帧率值。

另一方案因此是迭代地改变这些照相机之中仅仅第一照相机12i的帧率来确定对于滚动行为而言最佳的设置,同时保持这些照相机之中的第二照相机12i的帧率固定。利用固定的照相机,基本性能得到保障,并且当在时间上调整第二照相机(假定:光源10仍在视野中)时,则解码器14能够切换到使用那个视频流来检测。即,如果被第一照相机12i看见的消息只在缓慢地滚动,但是仍然在滚动,以致消息最终将被捕获到,则解码器14能够通过继续积累来自相对于消息正在体验缓慢但可靠的滚动行为的第二照相机12ii的消息片段但是同时经由第一照相机12i利用多个不同的帧率进行试验来“对冲赌注(hedgeitsbets)”。如果在第一变化帧率照相机能够这么做之前使用第二恒定帧率照相机积累到足以覆盖整个消息的片段,则解码器14从由第二照相机捕获到的片段中重组和解码消息;但是,如果解码器使用第一照相机12i找到导致整个消息的更快捕获的帧率(包括扫描不同帧率所花费的时间),则解码器14反而从由第一照相机捕获到的片段中重组和解码消息。

该原理还能够扩展到两个以上的照相机12,以致一个或多个照相机被保持在恒定帧率上,并且一个或多个其他照相机用于利用不同的帧率来实验。在多个第一照相机具有变化的帧率的情况下,这些照相机各个可以在搜索期间在任一时间保持彼此相同的帧率,或者更优选地,每一个照相机可以被变化来探索彼此不同的帧率(以增加每个单位时间能够搜索的帧率的多样性)。在多个第二照相机在利用(多个)第一照相机进行的搜索期间具有恒定帧率的情况下,这些第二照相机各个可以保持相同的帧率,或更优选地,各个可以保持彼此不同的恒定帧率(以增加其中一个首先看见整个消息的机会)。如果第二照相机之中的第一个照相机之一首先看见该消息,则该消息可以使用仅来自那个照相机的片段来重组和解码。如果不止一个的第一照相机在任何一个第二照相机之前看见整个消息,则可以组合来自这些第一照相机的片段来重组和解码该消息;或者如果不止一个的第二照相机在任何一个第一照相机之前看见整个消息,则可以组合来自这些第二照相机的片段来重组和解码该消息。

进一步,在一些变体中,由(i)一个或多个第一照相机12i中的至少一个在由于迭代帧率扫描而导致的帧率上所捕获到的片段和由(ii)一个或多个第二照相机12ii中的至少一个在其(多个)固定帧率上所捕获到的片段二者可以在缝合中被组合在一起,并可以基于此来解码消息。在这样的所公开技术的变体中,来自两个或甚至所有照相机12的消息片段可以潜在地进行组合,而不在照相机之间进行选择。

在示例实现方式中,第一实施例如同在移动设备中嵌入的立体视觉设置中使用两个相同的照相机。另一变体使用两个不同的照相机,诸如当普通照相机和结构光或飞行时间传感器被嵌入移动设备中时。注意:由于不同的传感器分辨率和光学系统,在某些情况下可能需要图像配准才能在两个图像之间关联像素信息。基于每一个传感器的定时特征,能够不同地挑选照相机的帧率,以最小化不滚动行为的机会。

在两个照相机12i、12ii之间可能不同的另一因素是定向,例如,照相机被安置在其中的单元或设备的实际物理旋转或照相机12在外壳内的物理定向或传感器元素16在照相机内的物理定向。因此,在第二实施例中,照相机12i、12ii具有利用相对彼此不同的定向来安排的成像器。在实施例中,这些照相机面向相同的方向,即具有平行的光轴和平行的图像平面。在实施例中,这些图像传感器被安排在同一平面中。在这样的情况下,理想地,照相机的图像传感器在公共图像平面中相对彼此以90度来定向。这也能够通过逐列而不是逐排(row-wise)读出传感器来实现(这个功能典型地在主流成像器中不是可用的,但是并没有在所有可能的实现方式中被排除在外)。在使用照相机或其传感器元素的物理定向的情况下,其他的相对定向也是有可能的,只要照相机12i之一的图像传感器的行读出方向至少包含正交于另一个照相机12ii的图像传感器的行读出方向的基本上非零分量(即,这些行读出方向不是平行的)。

解码器14随后选择取决于用于vlc解码而提供最佳滚动属性的照相机,这取决于传感器16和光源10的相对定向。参考图9的示例,这将是具有最垂直定向的光源10的图像。在传感器的垂直轴(行方向(row-direction))上观察到越多的行,则为了捕获足够的重叠消息片段来覆盖整个消息而要求越少的帧。通过分析在传感器的行方向上观察到多大的光源10的足迹10'并选择其中观察到光源10在行方向上具有最大足迹10'的照相机10,能够执行确定。被照相机12(成行)看见的照明器的垂直“大小”即垂直足迹对检测速度有影响:由于大的重叠,则对于小的足迹,滚动行为是不那么重要的。

在示例实现方式中,第二实施例可以使用两个类似的或不同的照相机,诸如在移动设备中嵌入的普通照相机和结构光或飞行时间传感器。

在不同的滚动快门照相机之间可能不同的又一个因素是读出方向。因此,在第三实施例中,能够设置传感器的个别读出方向,以致不滚动行为的变化(机会)被最小化或甚至不存在。由于具有传感器的不同读出方向(例如,从顶到底对从底到顶),其个别定时也将不同。因而,只要光源10在图像中不被置于中央,则翻转的图像将提供附加的信息。参见图10,其举例说明包含观察到的天花板照明器的两个图像。

利用滚动快门传感器,在不同的时刻获取垂直行。当读出方向被垂直翻转时,在同一时刻捕获第一图像中的第一行和第二图像的最后一行。当光源不在照相机的视野的中间例如更多朝向底侧时,则在帧的底部开始滚动快门行扫描导致与自上而下扫描时不同的vlc信号的其他采样时间。因此,通过组合这些,与仅使用单个照相机或具有相同的行读出方向的两个同步照相机相比而言,有效地增加足迹(被光源覆盖的行)。

在图11中示意性地举例说明该想法。考虑示例图像传感器具有在各自采样时间t=0......15上读出的16行(注意:图11出于说明目的而被简化,大多数真实的传感器将具有大得多数量的行,并且图11还忽略诸如消隐期26之类的因素,但是原理是相同的)。想象:在给定的场合,光源10的足迹10'碰巧覆盖从帧区域16'的底部开始的第二行到第六行。如果从帧区域16'的顶到底扫描,则在时间t=10至14捕获光源10。如果从帧区域的底到顶扫描,则在时间t=1到5捕获光源10。

因而,通过利用不同的照相机12并行地一起做这两者,则每帧能够捕获到消息的两个不同的片段。在给出帧区域16'的两个相反滚动快门扫描的相对定时的知识的情况下(在这种情况下,从顶到底和从底到顶),这些片段能够在缝合缓冲器中相对于消息周期来个别地进行对准(注意:相对定时可以考虑诸如消隐26、读出时间54、电荷转移时间56和重置时间50之类的因素,未在图11中示出)。一旦足够的片段被接收并被时间对准,与只有一个读出方向被使用相比而言,这些片段因而使之能够在更少的帧周期中进行完全消息的重组。时间对准和缝合本身的原理可以例如根据wo2015/121155的教导来执行,但是基于从两个相反读出方向而非一个方向获得的片段来执行。

第三实施例优选地如同在立体视觉设置中使用在移动设备中嵌入的两个相同的照相机。如在第一实施例中,可选地也可以不同地挑选照相机的帧率,以最小化不滚动行为的机会。此外,如在第二实施例中,物理定向在成像器之间也能够是不同的。

替代地,在本发明的各方面中,影响捕获到整个消息所需的帧的数量的属性和/或影响捕获到整个消息所需的功耗的属性可以例如是曝光时间、iso值、照相机分辨率、变焦/聚焦或感兴趣区域。

通过研究附图、公开内容和所附的权利要求书,本领域技术人员在实践所要求保护的发明时能够理解和实现针对所公开实施例的其他变体。在权利要求书中,词“包括”并不排除其他的元素或步骤,并且不定冠词“一”或“一个”并不排除多个。单个处理器或其他单元可以完成在权利要求书中叙述的若干项的功能。在互不相同的从属权利要求中叙述某些措施的纯粹事实并不指示不能有利使用这些措施的组合。计算机程序可以被存储/被分发在合适的介质诸如与其他硬件一起提供或作为其一部分提供的光学存储介质或固态介质上,但是也可以采用其他的形式诸如经由internet或其他的有线或无线电信系统来分发。权利要求书中的任何参考符号不应被解释为限制该范畴。

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