灯阵闪烁系统、摄像机时间检测设定系统和方法与流程

文档序号:11216192阅读:949来源:国知局
灯阵闪烁系统、摄像机时间检测设定系统和方法与流程

本发明总体地涉及计算机视觉技术,特别是涉及灯阵闪烁系统、摄像机时间检测设定系统和方法。



背景技术:

目前一般来说摄像机拍摄的典型帧率是30帧/秒,也就是两帧之间的时间差在30毫秒左右,当多台摄像机进行拍摄时,一般来说摄像机之间并没有严格的时间对齐关系,每个摄像机所拍摄那一帧的准确时间实际上是存在差异的。比如第一台摄像机拍摄第一帧的时间是第0毫秒,第二帧是第33毫秒,而第二台摄像机拍摄第一帧的时间可能是第11毫秒,第二帧是第44毫秒,第三台摄像机拍摄第一帧的时间可能是第7毫秒,第二帧是第40毫秒。这样三台摄像机在拍摄同一个场景时,所拍摄的时间是存在差异的。

在一些特定的应用场合下需要多台摄像机之间存在较严格的时间上的关系,比如:

1)多个监控探头希望所拍摄的多个画面在时间上对齐,以便更好的进行视频分析和处理。

2)多个摄像机拍摄的画面需要拼接,比如街景拍摄小车,如果不是时间上同步拍摄的话,可能导致画面拼接效果较差。

3)用一串摄像机拍摄类似《黑客帝国》中被拍摄主体突然静止,而拍摄角度旋转180度或360度时,需要多个摄像机同时拍摄,才可取得良好的特技效果。

4)其他一些专业领域的摄像机使用需求。

为了实现对多个摄像机拍摄时间的控制,传统上一般是通过硬件控制器的方式来实现的,即有一个中央时间控制器,通过给每个摄像机发出触发信号,触发摄像机在合适的时机进行拍摄,但这种做法有如下三个问题:

1)硬件系统构成起来相对较为复杂,需要连接触发信号线,并有触发控制器来实现控制,并且摄像机要具备被外部触发拍摄的功能。

2)从摄像机被触发,到摄像机实际拍摄到景物,这其中必然会存在一个延迟。如果硬件可以保证这个延迟的大小是固定的,可以达到预期的拍摄时间控制要求,但如果硬件不能保证延迟大小固定不变,比如需要经过内部固件的操作系统调度等,则拍摄时间的控制仍然不能达到理想的目标。

3)多摄像机系统的用户对于多台摄像机的拍摄时间控制是否达到了预期的目标,没有一个检测手段,不能确信是否达到了预期的时间控制目标。



技术实现要素:

鉴于上述情况,提出了本发明。

根据本发明的一个方面,提供了一种用于摄像机时间检测和/或设定的灯阵闪烁系统,包括:灯阵,能够操作来按照预定的点阵状态序列、以预定的循环周期使得各灯进行亮灭,灯阵最小闪烁时长能够确定;灯阵亮灭控制器,用于按照所述预定的点阵状态序列、所述预定的循环周期,所述最小闪烁时长来控制灯阵中各灯的亮灭。

根据本发明的进一步实施例,所述灯阵中的灯为led灯,其中全部led灯分成n组,每组led灯的个数大于等于3;每组的led灯按跑马灯的方式进行闪烁;组间有等级关系,只有低等级的组完成一个闪烁周期,与之相邻的高等级组才能进入下一个闪烁状态,如此往复循环。

根据本发明的另一方面,提供了一种对摄像机进行时间检测和/或设定的摄像机时间检测设定系统,包括灯阵、多个摄像机和处理器,灯阵由多个灯按预定图案排布形成,能够操作来按照预定的点阵状态序列、以预定的循环周期使得各灯进行亮灭,灯阵最小闪烁时长能够确定;多个摄像机,能够以固定帧率或可调帧率拍摄图像,并接收设定的目标拍摄定时;处理器,能够接收摄像机拍摄的图像,并识别图像中的灯阵闪烁的图案,由此判定画面被拍摄的时间,从而确定摄像机拍摄定时与设定的目标拍摄定时之间的偏移,以及基于所述偏移来调控摄像机的拍摄定时。

根据本发明的再一方面,提供了一种摄像机拍摄定时检测和/或设定的摄像机时间检测设定方法,摄像机当前帧率已知;使得灯阵按照预定的点阵状态序列、以预定的循环周期进行闪烁,灯阵最小闪烁时长能够确定;摄像机拍摄灯阵的图像;由处理器识别该图像中灯阵闪烁的图案,依据识别出的闪烁状态由此判定画面被拍摄的时间,从而确定摄像机拍摄定时与设定的目标拍摄定时之间的偏移,以及基于所述偏移来调控摄像机的拍摄定时。

根据本发明的另一方面,提供了一种对摄像机进行时间检测和/或设定的摄像机时间检测设定系统,包括灯阵图案变化部件、多个摄像机和处理器,灯阵图案变化部件,由多个实体或虚拟灯按预定图案排布形成,能够操作来按照预定的点阵状态序列、以预定的循环周期使得各灯进行亮灭,灯阵最小闪烁时长能够确定;多个摄像机,能够以固定帧率或可调帧率拍摄图像,并接收设定的目标拍摄定时;处理器,能够接收摄像机拍摄的图像,并识别图像中的灯阵闪烁的图案,由此判定画面被拍摄的时间,从而确定摄像机拍摄定时与设定的目标拍摄定时之间的偏移,以及基于所述偏移来调控摄像机的拍摄定时。

根据本发明实施例,能获得以下技术效果中的一项或多项:

1)易于部署,实施方便,成本低,适用于绝大部分普通网络摄像头。

2)可以达到较高的时间控制精度,其时间控制精度仅受限于摄像机最短曝光时间。

3)对拍摄时间的控制是直接调节拍摄画面的时间,而不是摄像机被触发的时间。

4)可以很便捷的实现各种时间控制方式,既可以让多个摄像机同步在一个时间点上,也可以让不同摄像机在指定的不同时间点上进行拍摄。

5)既可以用于摄像机拍摄时间的设定,也可以用于摄像机拍摄时间的检测。

附图说明

从下面结合附图对本发明实施例的详细描述中,本发明的这些和/或其它方面和优点将变得更加清楚并更容易理解,其中:

图1示出了根据本发明实施例的摄像机时间检测设定系统100的示例性结构组成示意图。

图2示出了根据本发明实施例的摄像机拍摄定时检测和/或设定的摄像机时间检测设定方法200。

图3示意性示出了4*4led灯阵采用跑马灯方式的状态变化过程。

图4示意性示出了根据本发明实施例的4*4led灯阵的一个循环周期内的点阵状态遍历过程。

图5(a)、5(b)示出了初始化操作的点阵状态和初始化后的点阵状态,图5(b)即为8*8led点阵状态序列中的状态0,该状态持续时间为0.1ms,即0时刻到0.1ms之间的状态(以状态0出现时刻为起始时刻)。

图6表示的图像是曝光时间从0.3ms至0.7ms时所拍摄到的led阵列图像。

图7示出了一led阵列图像。

图8示出了基于实验结果计算得到的各编码方法检测结果的平均值和均方差的表格。

图9示出了针对以上5种编码方法,利用包含n个led灯的矩阵,在控制周期为tdur,曝光时间为texp的条件下的分析比较结果。

具体实施方式

为了使本领域技术人员更好地理解本发明,下面结合附图和具体实施方式对本发明作进一步详细说明。

在介绍之前,解释一下有关术语在本文中的含义。

灯阵,本发明的灯阵为广义概念,既包含实体灯阵(如由实际led灯排布形成的灯阵),也包括虚拟灯阵(如由电子显示装置显示的灯阵图案),另外,本文中,很多情况下,灯阵涵盖了实际显示出来的灯阵排布,也涵盖了灯阵亮灭控制器,在特指为仅指灯的排布的情况,这通常由上下文可以看出,这里的灯阵说法相信不会引起本领域技术人员混淆。

灯阵的最小闪烁时长,本文中也称为灯阵的控制周期,是指每个状态持续的最小时间,然后即进入下文点阵状态。

灯阵的循环周期,是指点阵状态序列的所有状态遍历一遍所经历的时间,例如假设灯阵具有1,2,…,m个点阵状态,则在从点阵状态1顺序变化到状态2,状态3一直到状态m后,接下来将返回到点阵状态1,重复经历点阵状态序列变化,这里从点阵状态1开始到点阵状态m结束之间的时间,称为点阵的循环周期。

图1示出了根据本发明实施例的摄像机时间检测设定系统100的示例性结构组成示意图。

如图1所示,摄像机时间检测设定系统100包括灯阵图案变化部件

110、多个摄像机120和处理器130。

灯阵图案变化部件110,由多个实体或虚拟灯按预定图案排布形成,能够操作来按照预定的点阵状态序列、以预定的循环周期使得各灯进行亮灭,灯阵最小闪烁时长能够确定。多个摄像机120,能够以固定帧率或可调帧率拍摄图像,并接收设定的目标拍摄定时。处理器130,能够接收摄像机拍摄的图像,并识别图像中的灯阵闪烁的图案,由此判定画面被拍摄的时间,从而确定摄像机拍摄定时与设定的目标拍摄定时之间的偏移,以及基于所述偏移来调控摄像机的拍摄定时。

灯阵图案变化部件110(下文通常简称为灯阵)可以是实际的灯排列而成的实际灯阵,例如,灯阵可以为由led灯排布形成的led灯阵。灯阵图案变化部件110也可以例如是由电子部件的图形用户界面形成,例如手机或者平板电脑上显示的虚拟灯阵。。

下文为讲述方便,将以led灯阵为例进行相关说明。

灯阵的大小和排布形式可以根据需要设计,可以是方阵,例如8*8方阵、16*16方阵等等,可以想见,也可以例如为长方形真累、圆形阵列乃至不规则形状的阵列等等。

关于灯阵的最小闪烁时长,可以根据需要和技术发展情况来设定,例如为0.1ms,即一个点阵闪烁状态持续0.1ms,然后切换到下一个点阵闪烁状态,在每个点阵闪烁状态,确定的灯闪亮,而其余的灯熄灭。

如图1所示的灯阵,led灯阵外围有一圈框,优选为单色的框,同时在四个角中的至少两个上有角点图案,优选在四个角上都图案,使得针对led灯阵拍摄得到的图像易于图像识别出和定位到led灯阵。

灯阵的点阵状态序列对于摄像机的时间检测非常重要,后面将参照附图描述具体示例。

多个摄像机120能够以固定帧率或可调帧率拍摄图像,并接收设定的目标拍摄定时。

优选地,为便于描述后续的时间控制,这些摄像机具备如下特性:a)具有同样的帧率;b)摄像机内部的时钟精度是较为准确的,长时间运行误差较小,比如连续运行1天误差不超过1秒;c)可以通过一定的手段实现摄像机拍摄时间的控制,比如可以根据命令开始或停止摄像等。

可以通过一定的手段设置各摄像机期望的拍摄时间,比如可以直接通过摄像机上的按键人工设置、或者usb、或者例如通过专门的遥控装置、手机或者利用专门的服务器例如130经由网络给该摄像机发出时间设置目标,以及还可以设置摄像机的帧率等参数。

摄像机的帧率可以为例如25帧/秒、30帧/秒等等的常见帧率,也可以为更低或更高的帧率,本发明对帧率没有限制。

多个摄像机120被布置在需要进行拍摄的位置上。将上述正在闪烁的led灯阵放在多个摄像机前。如果多个摄像机可以同时拍摄到led灯阵,可以让led灯阵放在某个固定的位置不动;如果多个摄像机不能同时拍摄到led灯阵,可以将led灯阵移动,轮流放到不同摄像机的拍摄区域中。无论上述哪种方案,均需要让摄像机可以清晰的拍到led灯阵。

各个摄像机120可以与处理器130通信,以将拍摄的图像传送给处理器,还可以接收处理器的拍摄定时设置指令。

各个摄像机120也可以与led灯阵闪烁系统通信,以知道led灯阵的例如最小闪烁时间信息。

处理器130能够接收摄像机拍摄的图像,并识别图像中的灯阵闪烁的图案,由此判定画面被拍摄的时间,从而确定摄像机拍摄定时与设定的目标拍摄定时之间的偏移,以及基于所述偏移来调控摄像机的拍摄定时。

处理器130可以被集中在一个服务器中,如图1所示。不过,此非作为限制,处理器也可以被分布在每个摄像机中,每个摄像机中的处理器能够针对自身摄像机执行上述功能,即识别自身摄像机图像中的灯阵闪烁的图案,由此判定画面被拍摄的时间,从而确定自身摄像机拍摄时间与设定的自身目标拍摄时间之间的偏移,以及基于所述偏移来调控自身摄像机的拍摄时间。这样每个摄像机自身能够识别拍摄的点阵图像,检测自身拍摄的时间,并根据例如管理员设定的拍摄时间来调整自身的拍摄定时。

处理器130可以通过发出暂停拍摄或者调整帧率命令来改变摄像机的拍摄定时。

暂停拍摄方法例如如下:每台摄像机根据所计算那一帧图像与目标时间的偏移(可以是摄像机自身的处理器计算的,或者外界服务器计算和通知摄像机的),让该摄像机暂停一下,在合适的时间再重新启动拍摄。然后由控制器或者摄像机自身继续检测该摄像机的拍摄定时,计算检测到的拍摄定时与目标拍摄时间之间的偏差,继续根据该偏差进行拍摄时间调整,直到所检测到的时间与目标时间的偏差在预定的某个预设的误差允许范围内。

关于暂停拍摄方法中重新启动拍摄时间的确定,可以根据发出命令时刻到摄像机实际进行拍摄时刻之间的时间延迟t的分布来确定。发明人初步研究发现,设从命令发出到摄像机实际进行拍摄之间的时间延迟为t,该t符合一定的概率分布,可以通过历史统计得到t的概率分布,然后根据t的概率分布和目标时间,选择最佳的命令发出时间对摄像机的拍摄时间进行调整。

上述对多摄像机的拍摄定时设置程序完成后,即可让多摄像机系统在一定的时间内进行拍摄,各摄像机的拍摄定时(时间顺序)符合预定的时间设置要求。这样能够以低成本的低帧率摄像机来配置得到高帧率摄像机,而且能够得到可变帧率的高帧率摄像机。

这里对于摄像机的形式,可以是专用的摄像机,也可以是例如电子装置上配置的摄像机,例如智能手机上设置的摄像机,这样可以对智能手机设置精确的拍摄时间,而且几台智能手机联合拍摄,能够得到高帧率摄像机的拍摄效果,通过布置摄像机位置和调整拍摄定时,能得到全角度同步拍摄效果。此应用仅为示例,本领域技术人员根据需要可以利用本发明的技术得到很多应用。

需要注意的是,由于摄像机内部的时钟具有一定的漂移(例如,发明人实验的摄像机大概漂移约为24小时可以漂移1秒左右),因此已经同步的多摄像机系统在时间精度保障上有一个范围,时间过长则需要重新对时间进行检测和设定。

在一个示例中,将led灯阵一直或轮流放在多摄像机的拍摄区域中,以便多摄像机可以不断对时间精度进行调整和控制。

在一个示例中,利用本发明的多摄像机拍摄时间检测技术,对已有的多摄像机系统的时间控制结果进行检测,判定被检测的多摄像机系统是否符合预定的时间要求。

图2示出了根据本发明实施例的摄像机拍摄定时检测和/或设定的摄像机时间检测设定方法200,摄像机当前帧率已知。

在步骤s210中,使得led灯阵按照预定的点阵状态序列、以预定的循环周期进行闪烁,灯阵最小闪烁时长能够确定。

在步骤s220中,摄像机拍摄led灯阵的图像。

在步骤s230中,由处理器识别该图像中灯阵闪烁的图案,依据识别出的闪烁状态由此判定画面被拍摄的时间,从而确定摄像机拍摄定时与设定的目标拍摄定时之间的偏移,以及基于所述偏移来调控摄像机的拍摄定时。

下面详细描述根据本发明实施例的led灯阵的闪烁方式,下文中有时也称之为led灯阵的编码方式。

led灯阵的闪烁方式设计的最终目标是:当摄像机拍摄到一帧画面时,可以较为容易的根据8x8的led灯阵中的图案反算出该图案拍摄的时间。

需要说明的是,本发明发明人试验过多种led灯阵的编码方式,包括:跑马灯(流水)编码方法、二进制编码方法、格雷码表示方法、并集格雷码方法、分组格雷码方法,最终设计出了优选的进位流水编码方式(也可称为分组进位跑马灯编码方式)。

在详细介绍本发明优选实施例的进位流水编码方法之前,下面概要介绍一下发明人试验的上述灯阵编码方式,以及发明人设计进位流水编码方式的发明思想。

后面将以8*8灯阵和4*4灯阵为例来说明根据本发明实施例的灯阵编码方式。

方案1)跑马灯,也可称为流水编码方法,控制led点阵在一个控制周期内仅有一个led灯点亮,下一个周期时下一个led灯点亮,上一周期点亮的led灯熄灭。各led灯按照由左至右、由上至下的顺序依次点亮。

对于8*8点阵,即8*8led灯轮流点亮,第64个灯熄灭后再循环点亮第1个灯,如此往复。

图3示意性示出了4*4led灯阵采用跑马灯方式的状态变化过程。各led灯按照由左至右、由上至下的顺序依次点亮。当最后一个led灯,即d4灯点亮后,下一周期时d4灯熄灭、a1灯点亮,进行下一循环。

方案2)二进制表示方法,对于8*8点阵,将64个灯视为64个bit,整个灯阵看作是一个64bit的长整数,按类似2bit长整数的00、01、10、11、00、01…的变化规则循环往复变化。

方案3)格雷码表示方法,对于8*8点阵,将64个灯视为64个bit,整个灯阵被视为一个64bit的编码,格雷码的编码规则要求任何相邻的两个编码之间最多只有1个bit不同,比如3位格雷码的变化过程是:000、001、011、010、110、111、101、100、000、001。。。

方案4)并集格雷码方法,第3种格雷码方案的变种,将之设计为多个(比如3个)连续编码的并集为格雷码。

方案5)分组格雷码方法(下文中,有时也称之为分组叠加编码),第3中格雷码方案的变种,即将64个led灯分成若干组,每组的变化规律为格雷码,但不同组之间的变化不完全同步,通过多组的识别结果来定位最后的时间。

根据本发明实施例的进位流水编码方式,将全部led灯分成n组,每组led灯的个数大于等于3;每组的led灯按跑马灯的方式进行闪烁;组间有等级关系,只有低等级的组完成一个闪烁周期,与之相邻的高等级组才能进入下一个闪烁状态,如此往复循环。

本发明实施例是在组内执行跑马灯方式,即组内任一时刻只有一个led灯亮;但是组间是层级关系,假设具有n组,则按照从低到高的顺序,称为第1组,第2组…第n组,不同组间可以同时有灯点亮。下文中,有时称此种方式为进位流水编码方法。

根据本发明一个实施例,进位流水编码方式下的点阵的一个循环周期内的点阵状态变化过程如下。

首先,点阵初始化时所有的灯熄灭,然后每组第一个灯同时点亮。

后续的过程如下,其中按照从最低等级组到最高等级组的顺序编号为第一至第n组:从第一组开始,从本组第一个led灯开始,轮流点亮,最后一个灯熄灭后,下一步将循环由该组第一个灯再次点亮,同时第二组的第一个灯也熄灭,第二组第二个灯准备开始电亮;之后当第二组所有灯全部点亮过以后,第二组再循环点亮,同时第三组的第一个灯熄灭,第二个灯点亮;如此反复,当第n组的所有led灯点亮一圈后,又开始下轮从第一组开始的循环。

图4示意性示出了根据本发明实施例的4*4led灯阵的一个循环周期内的点阵状态遍历过程。

图4中,横向的每行内的4个led灯组成一组,a对应的行为第一组,然后b、c、d各组等级依次升高。每组内各led灯按照流水编码方法依次点亮。对于等级最低组,即第一组,每个控制周期熄灭当前点亮的led灯,点亮下一个led灯。组内最后一个led灯熄灭后,第一个led灯点亮,依次循环。对于其他等级组,只有当其低等级组的最后一个led灯熄灭,发送进位信号给该等级组,该组内才会发生led灯亮灭变化,熄灭当前点亮的led灯,点亮下一个led灯。

假设控制周期的时间长度为tdur,将led点阵分为k组,每组包含ni(i=0,1,2,…,k-1)个led灯,每组内各个led灯亮灭变化的周期长度为ti。最低等级组的变化周期与控制周期时间相同,即t1=tdur。因为只有当第一组内所有led灯循环变化一次后才会向第二组发送进位信号,所以第二等级组的变化周期为n1*t1。同理则第i组的变化周期为:

通常情况下,摄像头的曝光时间texp要长于控制周期,因此在摄像头拍摄到的图像内有一个以上的led灯被点亮。同时,texp要短于最高等级组内所有led灯变化周期之和nk*tk,因此在摄像头拍摄到的图像内有一个以上的led灯是熄灭的。一定可以找到第i组,使其满足

ti≤texp≤ni*ti(2)

当拍摄到的图像内出现状态叠加时,等级低于i的组内所有led灯均被点亮;第i组内部分led灯被点亮,部分熄灭;等级高于i的组内有一个或两个led灯被点亮。对于等级高于i的任一组,当与其相邻的低等级组的最后一个和第一个led灯被点亮时,说明有进位信号产生,因此该组内有两个灯点亮,否则仅有一个灯点亮。当拍摄到一张满足以上描述的led点阵图片后,首先找到第一个led灯非全部点亮的等级组i;然后判断第i组及等级高于i的组内第一个被点亮的led灯,标记其位置分别为pi,pi+1,…,pk。则摄像头的拍摄时间为:

根据公式(3)可知,拍摄时间的检测精度为第i组内各个led灯的变化周期ti。根据公式(1)可知为了提高检测精度,可以减小控制周期和低等级组内led灯的数量。同时公式(2)要求texp≤ni*ti,需要同时增加第i组内led灯的数目。因此采用进位流水编码方法进行拍摄时间检测时,可以通过减少控制周期长度和低等级组内led灯的数量,增加高等级组内led灯的数量来提高检测精度。

为了便于本领域技术人员进一步理解根据本发明优选实施例的进位流水编码方式的优势,下面将首先剖析led灯阵识别的目标和其中遇到的具体问题。

led灯阵闪烁方案设计的目标是为了当摄像机拍摄到一帧画面时,可以较为容易的根据led灯阵中的图案反算出该图案拍摄的时间。但是这其中涉及到如下问题:

问题1)led灯阵的整个闪烁周期要比较长。例如,对于8*8led灯阵,led灯阵的闪烁周期期望达到10分钟或更长,因为在通过led灯阵对摄像机进行设定的过程是需要一些时间的,如果整个周期不够长,摄像机拍摄到的画面到底是属于第一个周期还是第二个周期之类的问题就会困扰时间反算算法,使得反算算法变得异常复杂,甚至无法反算,从而无法很好地对摄像机拍摄时间进行设定和检测。比如上述的方案1)的跑马灯编码方式就不满足该限定的要求。

问题2)摄像机拍摄时间与led灯阵闪烁时间的同步问题。由于摄像机何时开始拍摄下一帧与led灯阵何时开始下一次闪烁这两个时间点并不能非常精确的同步,因此摄像机所拍摄的一帧画面包含led灯阵闪烁的前后两个状态是一个非常大概率的事件,如果这种led灯阵闪烁在摄像机拍摄时刻发生边界重叠的情况出现,前后两个led灯阵的闪烁模式重叠在一起,要能够让后续图像识别部分不错误地将识别结果指向一个错误的时间才行,或者至少这个错误应该在所有情况下都不是很大。基于这个原因,上述方案2)二进制编码方式以及其他大量的灯阵闪烁编码方案都不能满足上述识别不出差错或差错一定不是很大的要求。方案3)的格雷码可以满足该要求,但是格雷码也有格雷码的问题,包括不能解决下面的问题3)。

问题3)摄像机曝光时间长度与led灯阵闪烁一次时间长度的关系。如果摄像机曝光时间长度小于等于led灯阵闪烁一次的时间长度,则只会产生上述第二点所述的问题,用方案3)的格雷码可以基本实现图像识别准确的目标,且识别结果的时间准确度最大不会超过2倍led灯阵闪烁时间(此可以证明得出,不过本文为集中于要点,略去了证明过程)。但实际上由于摄像机曝光时间不能太短,往往会出现摄像机曝光时间比led灯阵闪烁一次时间长度要长,甚至是长很多的情况出现。比如假定曝光时间是led灯阵闪烁时长的3倍,这样将导致一次曝光时间中,会有3-4次灯阵闪烁,这时如果继续采用格雷码的闪烁方案,将导致识别最大误差增大到16个led灯阵闪烁时长。针对这一问题,我们研究了方案4)并集格雷码和方案5)分组格雷码方式,拟降低识别最大误差。但是并没有取得很好的结果,而且问题比上述情况还更为复杂。如果事先知道摄像机曝光时间,需要把这个参数输入到系统中,从而根据曝光时间设置恰当的led灯阵闪烁时间,这样的操作过程比较复杂。而且更进一步,根据我们前期的实验,我们发现摄像机的曝光时间实际上和其能拍摄到灯阵闪烁的总时间并不一致,比如曝光时间为10ms,led灯阵闪烁一次1ms,理论上摄像机应该能拍摄到led灯阵的10次闪烁,但是实验发现在我们的实验环境中只能拍摄到3-4次闪烁。如果要知道一个摄像机曝光时间中到底有效拍摄时间是多少,需要有一个测量过程,这进一步导致了整个过程的复杂性。该问题产生的原因可能与摄像机感光器件ccd的物理特性相关,也可能与led闪烁的亮度等特性有关,具体原因还有待深入研究,但无论如何,这种情况下的方案4)并集格雷码和方案5)分组格雷码方式不是优选的。

本发明优选实施例的进位流水编码方式,能够很好地解决上述问题1)到3)。

下文将以8*8led点阵为例,说明根据本发明实施例的依据进位流水编码方法的摄像机时间检测方法示例,以及解释为何能够较好解决上述问题1)到3)。

这里,假设led灯阵最小闪烁时长为0.1ms。

图5(a)、(b)示出了初始化操作的点阵状态和初始化后的点阵状态,图5(b)即为8*8led点阵状态序列中的状态0,该状态持续时间为0.1ms,即0时刻到0.1ms之间的状态(以状态0出现时刻为起始时刻)。

第一组被称为最低等级组,每次led灯闪烁时间为0.1ms,从本组第一个led灯开始,轮流点亮,共需时间0.8ms,第8个灯熄灭后,下一步将循环由该组第一个灯再次点亮,同时第二组的第一个灯也熄灭,第二组第二个灯准备开始点亮。之后当第二组8个灯全部点亮过以后,第二组再循环点亮,同时第三组的第一个灯熄灭,第二个灯点亮。这样当第8组,也被称为最高等级组,的8个led点亮一圈后,总计用时需要0.1x88=1677721.6毫秒=1677.7216秒,约为28分钟,可以满足前文所述的问题1)要求。并且可以采用更小的闪烁周期(比如0.01ms),更多的led灯(比如16x16的led灯阵),或者调整led灯阵分组方式等很便捷的调整获得期望的闪烁时间频率和整个周期时长。

当摄像机拍摄的时间横跨两个最小闪烁时长,即上文例子中的0.1ms,此时会出现两个led灯都在ccd传感器上成像的情况。后续的图像识别算法,可以识别到两个led灯同时点亮,最大时间识别误差也就是2个闪烁时长,即0.2ms。而且图像识别算法可以根据两个led灯的亮暗差异,做出更准确的时间判定,进一步提高时间识别精度。但是要注意避免每个led灯组不少于3个led灯,因为如果只有2个led灯,将可能会出现无法判定是第一个led灯先亮,第二个led灯后亮;还是相反,第二个led灯先亮,第一个led灯后亮。此外,即使两个组或多个组都处在闪烁状态切换状态,也可以通过对led灯阵图像的识别,获得较为准确的时间判定,最大时间识别误差不超过2个led闪烁时长。综上所述,本发明实施例的进位流水编码方式可以解决前文所述的问题2)。

对于前文所述的问题3),本发明实施例的进位流水编码方式也很好地给出了解决方案。本发明实施例的进位流水编码方式不用测量摄像机的实际曝光时间,也不用向系统中输入曝光时间参数,只要用固定的最小闪烁时长(比如前文提到的0.1ms),既可以对图像进行有效识别,判定出时间。比如每组8个led灯时,当摄像机拍到低等级组中有不超过7个led灯点亮时,此时无论更高等级的led灯组是只有一个led灯亮还是有2个led灯亮(同一组中不会超过2个led灯点亮),均可以判定出摄像机拍摄该帧的中间时间是上述多个led灯点亮的中间时间。如果低等级组中有8个led灯均在图像中成像,说明摄像机实际拍摄到的时间超过了0.8ms,此时可以从高一个等级的led灯组中会存在2个或更多个灯在图像中成像,因此识别算法将在该高等级的led灯组图像中给出时间判定结果,时间判定精度也将是在高一级别的灯组的闪烁时长,比如为1ms。这说明摄像机的曝光时长已超过了1ms,摄像机时间判定精度为1ms是合理的。

图6表示的图像是曝光时间从0.3ms至0.7ms时所拍摄到的led阵列图像。

对于图7的led阵列图像,根据上述计算方法,可知其表示的时间是0.1ms*(2*85+5*84+3*83+1*82)-1ms/+3ms,即为

0.1ms*(2*85+5*84+3*83+1*82)-1ms或者0.1ms*(2*85+5*84+3*83+1*82)+3ms。

终上所述,本发明实施例的进位流水编码方式可以通过摄像机所拍摄到的图像,以合理的精度识别出摄像机的拍摄时间中点,进位流水方式中可以变化的是:所有的led灯分成多少个组;每个组包括多少个led灯,不同组的led灯数量不需要一致,但一个组的led灯不应少于3个;最低等级组的led灯最快闪烁频率;每次几个led灯同时闪烁。

发明人针对各种灯阵编码方式所进行的摄像机拍摄时间检测实验也证实了进位流水编码方式的优越性。实验时,利用摄像头对led点阵进行拍摄,获取连续的100帧图像,分析每帧图像内显示的点阵状态,计算相邻帧所拍摄到的点阵之间变化的时间间隔,与理论值40ms进行比较,从而确定各编码方法对拍摄时间的检测效果。基于实验结果计算得到了各编码方法检测结果的平均值和均方差如图8表格所示。

实验发现,四种编码方法均可以检测到相邻帧之间的时间间隔,且检测的平值均在40ms左右。但采用二进制编码方法时,拍摄时间检测错误率较高,得到的两帧之间的时间差波动较大,计算得到的时间差均方差值也就较大,由于摄像机拍摄到的各帧图像中led点阵发生叠加,导致检测到错误的相邻帧之间的时间间隔,最大错误值达到256ms。采用格雷码编码方法时,同样存在检测错误的情况,但检测错误率要优于二进制编码方法,检测结果均方差值也要优于二进制方法,但仍有个别帧的检测误差较大,最大错误检测值为288ms。采用流水编码方法时,可以有效避免状态叠加造成的检测错误,使得检测结果的波动大幅减小,检测错误率远低于前两种方法,但由于该编码方法的总循环周期较短,在处理拍摄图像时,需要手动设置拍摄到的led点阵所处的循环周期顺序,否则会对检测结果造成影响。采用进位流水编码方法时,能够得到最好的检测结果,检测误差最小且均方差值也最小,利用该方法能够实现对于摄像头拍摄时间的检测功能。

图9示出了针对以上5种编码方法,利用包含n个led灯的矩阵,在控制周期为tdur,曝光时间为texp的条件下进行比较,比较结果如图9表所示。

通过图9比较可以看出,流水编码总循环周期过短,需要检测器包含较多led灯才能满足检测需求;二进制编码和格雷码编码在状态叠加的情况下存在识别误差,无法准确检测拍摄时间,且需要摄像头曝光时间较短;分组格雷码(分组叠加编码)在进行高精度检测时需要摄像头较短的曝光时间或者检测器包含较多led灯;进位流水编码克服了以上几种方法存在的问题,能够进行高精度检测。

概况起来,本文至少提供了下述技术方案。

(1)、一种用于摄像机时间检测和/或设定的灯阵闪烁系统,包括:

灯阵,能够操作来按照预定的点阵状态序列、以预定的循环周期使得各灯进行亮灭,灯阵最小闪烁时长能够确定;

灯阵亮灭控制器,用于按照所述预定的点阵状态序列、所述预定的循环周期,所述最小闪烁时长来控制灯阵中各灯的亮灭。

(2)、根据(1)的led灯阵闪烁系统,所述灯阵中的灯为led灯,其中

全部led灯分成n组,每组led灯的个数大于等于3;

每组的led灯按跑马灯的方式进行闪烁;

组间有等级关系,只有低等级的组完成一个闪烁周期,与之相邻的高等级组才能进入下一个闪烁状态,如此往复循环。

(3)、根据(2)的灯阵闪烁系统,点阵初始化时所有的灯熄灭,然后每组第一个灯同时点亮;

后续的过程如下,其中按照从最低等级组到最高等级组的顺序编号为第一至第n组:

从第一组开始,从本组第一个led灯开始,轮流点亮,最后一个灯熄灭后,下一步将循环由该组第一个灯再次点亮,同时第二组的第一个灯也熄灭,第二组第二个灯准备开始电亮;之后当第二组所有灯全部点亮过以后,第二组再循环点亮,同时第三组的第一个灯熄灭,第二个灯点亮;如此反复,当第n组的所有led灯点亮一圈后,又开始下轮从第一组开始的循环。

(4)、根据(2)或(3)的灯阵闪烁系统,其中存在灯的数量不同的组。

(5)、根据(2)或(3)的灯阵闪烁系统,所述led灯阵亮灭控制器利用现场可编程门阵列fpga来实现。

(6)、根据(2)或(3)的灯阵闪烁系统,所述led灯阵和led灯阵亮灭控制器被集成到一个便携式设备中。

(7)、根据(2)或(3)的灯阵闪烁系统,led灯阵被固定于确定位置,使得所有摄像机均能拍摄到led灯阵。

(8)、根据(2)或(3)的灯阵闪烁系统,所述led灯阵外围有一圈单色的框,同时在四个角中的至少两个上有角点图案,使得针对led灯阵拍摄得到的图像易于图像识别出和定位到led灯阵。

(9)、根据(2)或(3)的灯阵闪烁系统,摄像机曝光时间大于led灯阵的最小闪烁时长。

(10)、根据(2)或(3)的灯阵闪烁系统,led灯阵的点阵状态序列的循环周期足够长,以使得能够确定摄像机拍摄的画面所属的led灯阵的闪烁周期。

(11)、一种对摄像机进行时间检测和/或设定的摄像机时间检测设定系统,包括灯阵、多个摄像机和处理器,

灯阵由多个灯按预定图案排布形成,能够操作来按照预定的点阵状态序列、以预定的循环周期使得各灯进行亮灭,灯阵最小闪烁时长能够确定;

多个摄像机,能够以固定帧率或可调帧率拍摄图像,并接收设定的目标拍摄定时;

处理器,能够接收摄像机拍摄的图像,并识别图像中的灯阵闪烁的图案,由此判定画面被拍摄的时间,从而确定摄像机拍摄定时与设定的目标拍摄定时之间的偏移,以及基于所述偏移来调控摄像机的拍摄定时。

(12)、根据(11)的摄像机时间检测设定系统,处理器通过发出暂停拍摄或者调整帧率命令来改变摄像机的拍摄定时。

(13)、根据(11)的摄像机时间检测设定系统,所述处理器被集中在一个服务器中。

(14)、根据(11)的摄像机时间检测设定系统,所述处理器被分布在每个摄像机中,每个摄像机中的处理器能够针对自身摄像机执行上述功能,即识别自身摄像机图像中的灯阵闪烁的图案,由此判定画面被拍摄的时间,从而确定自身摄像机拍摄时间与设定的自身目标拍摄时间之间的偏移,以及基于所述偏移来调控自身摄像机的拍摄时间。

(15)、根据(11)的摄像机时间检测设定系统,基于所述偏移来调控摄像机的拍摄时间包括:

统计对摄像机发出拍摄命令时刻到摄像机实际拍摄时刻之间的时间延迟t;

确定t的概率分布;

根据t的概率,选择发出拍摄命令的时机。

(16)、根据(11)的摄像机时间检测设定系统,在设置完成之后的预定时间之后,重新对多个摄像机进行时间检测和设定。

(17)、根据(11)的摄像机时间检测设定系统,其中

全部led灯分成n组,每组led灯的个数大于等于3;

每组的led灯按跑马灯的方式进行闪烁;

组间有等级关系,只有低等级的组完成一个闪烁周期,与之相邻的高等级组才能进入下一个闪烁状态,如此往复循环。

(18)、根据(17)的摄像机时间检测设定系统,点阵初始化时所有的灯熄灭,然后每组第一个灯同时点亮;

后续的过程如下,其中按照从最低等级组到最高等级组的顺序编号为第一至第n组:

从第一组开始,从本组第一个led灯开始,轮流点亮,最后一个灯熄灭后,下一步将循环由该组第一个灯再次点亮,同时第二组的第一个灯也熄灭,第二组第二个灯准备开始电亮;之后当第二组所有灯全部点亮过以后,第二组再循环点亮,同时第三组的第一个灯熄灭,第二个灯点亮;如此反复,当第n组的所有led灯点亮一圈后,又开始下轮从第一组开始的循环。

(19)、根据(18)的摄像机时间检测设定系统,当led灯阵的点亮状态不属于所述预定的点阵状态序列时,判断候选的点阵状态,然后根据先前预定帧数的图像中识别出的点亮状态,结合led灯阵最小闪烁时长和摄像机的帧率,来确定概率最高的点阵状态候选作为最后识别出的当前点阵状态,进而确定拍摄对应画面的定时。

(20)、根据(11)的摄像机时间检测设定系统,

假设控制周期的时间长度为tdur,将led点阵分为k组,每组包含ni(i=0,1,2,…,k-1)个led灯,每组内各个led灯亮灭变化的周期长度为ti。最低等级组的变化周期与控制周期时间相同,即t1=tdur。因为只有当第一组内所有led灯循环变化一次后才会向第二组发送进位信号,所以第二等级组的变化周期为n1*t1。同理则第i组的变化周期为:

摄像头的曝光时间texp要长于控制周期,因此在摄像头拍摄到的图像内有一个以上的led灯被点亮。同时,texp要短于最高等级组内所有led灯变化周期之和nk*tk,因此在摄像头拍摄到的图像内有一个以上的led灯是熄灭的。一定可以找到第i组,使其满足

ti≤texp≤ni*ti(2)

当拍摄到的图像内出现状态叠加时,等级低于i的组内所有led灯均被点亮;第i组内部分led灯被点亮,部分熄灭;等级高于i的组内有一个或两个led灯被点亮。对于等级高于i的任一组,当与其相邻的低等级组的最后一个和第一个led灯被点亮时,说明有进位信号产生,因此该组内有两个灯点亮,否则仅有一个灯点亮。当拍摄到一张满足以上描述的led点阵图片后,首先找到第一个led灯非全部点亮的等级组i;然后判断第i组及等级高于i的组内第一个被点亮的led灯,标记其位置分别为pi,pi+1,…,pk。则摄像头的拍摄时间为:

(21)、根据(20)的摄像机时间检测设定系统,通过减少灯阵最小闪烁时长和低等级组内led灯的数量,以及增加高等级组内led灯的数量来提高检测精度。

(22)、根据(11)的摄像机时间检测设定系统,其中存在灯的数量不同的组。

(23)、根据(11)的摄像机时间检测设定系统,所述led灯阵点亮方案为以下之一:

格雷码的变种,即多个连续编码的并集为格雷码;

分组格雷码,将全部led灯分成若干组,每组的变化规律为格雷码,但不同组之间的变化不完全同步。

(24)、根据(11)的摄像机时间检测设定系统,所述led灯阵亮灭控制器利用现场可编程门阵列fpga来实现。

(25)、根据(11)的摄像机时间检测设定系统,所述led灯阵和led灯阵亮灭控制器被集成到一个便携式设备中,通过将这样的便携式设备携带至各个摄像机跟前以被各个摄像机分别拍摄到,来对相应摄像机进行时间检测和/或校准。

(26)、根据(11)的摄像机时间检测设定系统,所述时间检测和/或校准为迭代式过程,每校准后进行检测,判断当前拍摄定时与目标定时之间的偏移,直至所述偏移低于预定阈值。

(27)、根据(11)的摄像机时间检测设定系统,led灯阵被固定于确定位置,使得所有摄像机均能拍摄到led灯阵。

(28)、根据(11)的摄像机时间检测设定系统,所述led灯阵外围有一圈单色的框,同时在四个角中的至少两个上有角点图案,使得针对led灯阵拍摄得到的图像易于图像识别出和定位到led灯阵。

(29)、根据(11)的摄像机时间检测设定系统,摄像机曝光时间大于led灯阵的最小闪烁时长。

(30)、根据(11)的摄像机时间检测设定系统,led灯阵的点阵状态序列的循环周期足够长,以使得控制器能够确定摄像机拍摄的画面所属的led灯阵的闪烁周期。

(31)、一种摄像机拍摄定时检测和/或设定的摄像机时间检测设定方法,摄像机当前帧率已知,

使得灯阵按照预定的点阵状态序列、以预定的循环周期进行闪烁,灯阵最小闪烁时长能够确定;

摄像机拍摄灯阵的图像;

由处理器识别该图像中灯阵闪烁的图案,依据识别出的闪烁状态由此判定画面被拍摄的时间,从而确定摄像机拍摄定时与设定的目标拍摄定时之间的偏移,以及基于所述偏移来调控摄像机的拍摄定时。

(32)、根据(31)的摄像机时间检测设定方法,通过发出暂停拍摄或者调整帧率命令来改变摄像机的拍摄定时。

(33)、根据(31)的摄像机时间检测设定方法,所述处理器被集中在一个服务器中。

(34)、根据(31)的摄像机时间检测设定方法,所述处理器被分布在每个摄像机中,每个摄像机中的处理器能够针对自身摄像机执行上述功能,即识别自身摄像机图像中的灯阵闪烁的图案,由此判定画面被拍摄的时间,从而确定自身摄像机拍摄时间与设定的自身目标拍摄时间之间的偏移,以及基于所述偏移来调控自身摄像机的拍摄时间。

(35)、根据(31)的摄像机时间检测设定方法,基于所述偏移来调控摄像机的拍摄时间包括:

统计对摄像机发出拍摄命令时刻到摄像机实际拍摄时刻之间的时间延迟t;

确定t的概率分布;

根据t的概率,选择发出拍摄命令的时机。

(36)、根据(31)的摄像机时间检测设定方法,在设置完成之后的预定时间之后,重新对多个摄像机进行时间检测和设定。

(37)、根据(31)的摄像机时间检测设定方法,其中

全部led灯分成n组,每组led灯的个数大于等于3;

每组的led灯按跑马灯的方式进行闪烁;

组间有等级关系,只有低等级的组完成一个闪烁周期,与之相邻的高等级组才能进入下一个闪烁状态,如此往复循环。

(38)、根据(31)的摄像机时间检测设定方法,点阵初始化时所有的灯熄灭,然后每组第一个灯同时点亮;

后续的过程如下,其中按照从最低等级组到最高等级组的顺序编号为第一至第n组:

从第一组开始,从本组第一个led灯开始,轮流点亮,最后一个灯熄灭后,下一步将循环由该组第一个灯再次点亮,同时第二组的第一个灯也熄灭,第二组第二个灯准备开始电亮;之后当第二组所有灯全部点亮过以后,第二组再循环点亮,同时第三组的第一个灯熄灭,第二个灯点亮;如此反复,当第n组的所有led灯点亮一圈后,又开始下轮从第一组开始的循环。

(39)、根据(38)的摄像机时间检测设定方法,当led灯阵的点亮状态不属于所述预定的点阵状态序列时,判断候选的点阵状态,然后根据先前预定帧数的图像中识别出的点亮状态,结合led灯阵最小闪烁时长和摄像机的帧率,来确定概率最高的点阵状态候选作为最后识别出的当前点阵状态,进而确定拍摄对应画面的定时。

(40)、根据(31)的摄像机时间检测设定方法,假设控制周期的时间长度为tdur,将led点阵分为k组,每组包含ni(i=0,1,2,…,k-1)个led灯,每组内各个led灯亮灭变化的周期长度为ti。最低等级组的变化周期与控制周期时间相同,即t1=tdur。因为只有当第一组内所有led灯循环变化一次后才会向第二组发送进位信号,所以第二等级组的变化周期为n1*t1。同理则第i组的变化周期为:

摄像头的曝光时间texp要长于控制周期,因此在摄像头拍摄到的图像内有一个以上的led灯被点亮。同时,texp要短于最高等级组内所有led灯变化周期之和nk*tk,因此在摄像头拍摄到的图像内有一个以上的led灯是熄灭的。一定可以找到第i组,使其满足

ti≤texp≤ni*ti(2)

当拍摄到的图像内出现状态叠加时,等级低于i的组内所有led灯均被点亮;第i组内部分led灯被点亮,部分熄灭;等级高于i的组内有一个或两个led灯被点亮。对于等级高于i的任一组,当与其相邻的低等级组的最后一个和第一个led灯被点亮时,说明有进位信号产生,因此该组内有两个灯点亮,否则仅有一个灯点亮。当拍摄到一张满足以上描述的led点阵图片后,首先找到第一个led灯非全部点亮的等级组i;然后判断第i组及等级高于i的组内第一个被点亮的led灯,标记其位置分别为pi,pi+1,…,pk。则摄像头的拍摄时间为:

(41)、根据(31)的摄像机时间检测设定方法,通过减少灯阵最小闪烁时长和低等级组内led灯的数量,以及增加高等级组内led灯的数量来提高检测精度。

(42)、根据(31)的摄像机时间检测设定方法,其中存在灯的数量不同的组。

(43)、根据(31)的摄像机时间检测设定方法,所述led灯阵点亮方案为以下之一:

格雷码的变种,即多个连续编码的并集为格雷码;

分组格雷码,将全部led灯分成若干组,每组的变化规律为格雷码,但不同组之间的变化不完全同步。

(44)、根据(31)的摄像机时间检测设定方法,所述led灯阵亮灭控制器利用现场可编程门阵列fpga来实现。

(45)、根据(31)的摄像机时间检测设定方法,所述led灯阵和led灯阵亮灭控制器被集成到一个便携式设备中,通过将这样的便携式设备携带至各个摄像机跟前以被各个摄像机分别拍摄到,来对相应摄像机进行时间检测和/或校准。

(46)、根据(31)的摄像机时间检测设定方法,所述时间检测和/或校准为迭代式过程,每校准后进行检测,判断当前拍摄定时与目标定时之间的偏移,直至所述偏移低于预定阈值。

(47)、根据(31)的摄像机时间检测设定方法,led灯阵被固定于确定位置,使得所有摄像机均能拍摄到led灯阵。

(48)、根据(31)的摄像机时间检测设定方法,所述led灯阵外围有一圈单色的框,同时在四个角中的至少两个上有角点图案,使得针对led灯阵拍摄得到的图像易于图像识别出和定位到led灯阵。

(49)、根据(31)的摄像机时间检测设定方法,摄像机曝光时间大于led灯阵的最小闪烁时长。

(50)、根据(31)的摄像机时间检测设定方法,led灯阵的点阵状态序列的循环周期足够长,以使得控制器能够确定摄像机拍摄的画面所属的led灯阵的闪烁周期。

(51)、一种对摄像机进行时间检测和/或设定的摄像机时间检测设定系统,包括灯阵图案变化部件、多个摄像机和处理器,

灯阵图案变化部件,由多个实体或虚拟灯按预定图案排布形成,能够操作来按照预定的点阵状态序列、以预定的循环周期使得各灯进行亮灭,灯阵最小闪烁时长能够确定;

多个摄像机,能够以固定帧率或可调帧率拍摄图像,并接收设定的目标拍摄定时;

处理器,能够接收摄像机拍摄的图像,并识别图像中的灯阵闪烁的图案,由此判定画面被拍摄的时间,从而确定摄像机拍摄定时与设定的目标拍摄定时之间的偏移,以及基于所述偏移来调控摄像机的拍摄定时。

(52)、根据(51)的摄像机时间检测设定系统,所述灯阵图案变化部件由实际硬件灯排布形成,或者由电子部件的图形用户界面形成。

(53)、根据(51)的摄像机时间检测设定系统,多个摄像机、灯阵图案变化部件和处理器之间能够相互通信。

以上已经描述了本发明的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。因此,本发明的保护范围应该以权利要求的保护范围为准。

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