使用选择的像素阵列分析的光学安全监视转让专利

申请号 : CN201510256225.8

文献号 : CN105100780B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 理查德·加莱拉安妮·博尔比德里克·W·琼斯尼莱什·普拉丹弗朗西斯·L·利尔德

申请人 : 洛克威尔自动控制技术股份有限公司

摘要 :

本发明涉及使用选择的像素阵列分析的光学安全监视。本发明提供了成像传感器设备和用于监视图像数据的方法。该成像传感器设备包括像素阵列处理功能,其允许对于像素阵列的选择的部分执行飞行时间(TOF)分析,而对于阵列的其余部分执行二维成像分析,相对于对阵列的所有像素执行TOF分析,降低了处理负荷和响应时间。像素阵列的被指定TOF分析的部分可以通过成像传感器设备的配置预先定义。可替代地,成像传感器设备可以基于通过二维成像分析进行的对象检测和分类来动态地选择像素阵列的对其要执行TOF分析的部分。成像传感器设备的实施例还可以实现大量的安全和冗余功能以实现高度的安全完整性,使传感器适用于各种类型的安全监视应用。

权利要求 :

1.一种成像传感器设备,包括:

像素阵列组件,其被配置成针对由所述成像传感器设备捕获的图像的像素阵列,对所述像素阵列的像素进行分组以产生对其要执行二维2D分析的第一像素子集和对其要执行三维3D分析的第二像素子集;

图像分析组件,其被配置成对所述第一像素子集执行2D分析;以及距离确定组件,其被配置成对所述第二像素子集执行3D分析,其中,所述图像分析组件进一步被配置成识别所述图像内的对象,并且基于所述2D分析来确定所述对象的位置,并且所述成像传感器设备配置成:

将所述2D分析的第一结果和所述3D分析的第二结果相关联以产生所述对象的相关信息;

基于所述相关信息来确定所述对象的分类;以及

基于所述相关信息和所述对象的分类来控制输出。

2.根据权利要求1所述的成像传感器设备,其中,所述距离确定组件进一步被配置成基于所述3D分析来生成所述第二像素子集中的各个像素的距离信息。

3.根据权利要求1所述的成像传感器设备,进一步包括照明组件,其被配置成向由所述成像传感器设备监视的观看空间发射光束脉冲。

4.根据权利要求3所述的成像传感器设备,进一步包括波形重构组件,其被配置成针对所述第二像素子集中的像素,生成表示与该像素对应的反射的光脉冲的波形数据,其中,所述距离确定组件被配置成基于所述波形数据来生成距离信息。

5.根据权利要求1所述的成像传感器设备,进一步包括安全组件,其被配置成对所述成像传感器设备的一个或更多个内部组件的故障状态执行监视,并且响应于检测到的故障状态基于一个或更多个安全算法来生成安全输出。

6.根据权利要求5所述的成像传感器设备,进一步包括危险分析和判定组件,其被配置成基于所述2D分析的第一结果、所述3D分析的第二结果和所述安全输出之间的关联性来生成控制输出或消息输出中的至少一种。

7.根据权利要求6所述的成像传感器设备,其中,所述危险分析和判定组件进一步被配置成基于所述第一结果和所述第二结果之间的关联性来生成包括针对在所述图像内检测到的对象的三维位置数据、三维速度数据、三维加速度数据或三维轨迹数据中的至少一种的相关数据,并且基于所述相关数据来生成所述控制输出或所述消息输出中的至少一种。

8.根据权利要求7所述的成像传感器设备,其中,所述危险分析和判定组件进一步被配置成基于所述三维位置数据、所述三维速度数据、所述三维加速度数据或所述三维轨迹数据中的至少一种来预测所述对象在观看空间内的未来位置,并且基于所述未来位置来生成所述控制输出或所述消息输出中的至少一种。

9.根据权利要求1所述的成像传感器设备,其中,所述像素阵列组件进一步被配置成基于配置简档来识别所述第二像素子集,所述配置简档定义所述像素阵列的对其要执行所述

3D分析的一个或更多个部分,并且其中,所述第二像素子集包括单个连续的像素组或多个非连续的像素组中的一种。

10.根据权利要求1所述的成像传感器设备,其中,所述第二像素子集包括单个连续的像素组或多个非连续的像素组中的一种。

11.一种用于监视图像数据的方法,包括:

由包括至少一个处理器的成像传感器设备采集图像数据;

基于所述图像数据生成像素阵列;

将所述像素阵列的像素分组成至少一个第一像素组和至少一个第二像素组;

对所述至少一个第一像素组执行二维2D成像分析;以及对所述至少一个第二像素组执行飞行时间TOF分析,其中,执行2D成像分析包括:

识别所述图像数据内的对象;以及

确定所述对象在所述图像数据内的位置,并且

所述方法进一步包括:

将所述2D分析的第一结果和所述TOF分析的第二结果相关联以产生所述对象的相关信息;

基于所述相关信息来确定所述对象的分类;以及

基于所述相关信息和所述对象的分类来控制输出。

12.根据权利要求11所述的方法,其中,执行TOF分析产生所述至少一个第二像素组中的各个像素的距离信息。

13.根据权利要求12所述的方法,其中,分组包括基于所述对象的位置和分类对所述第二像素组的形状或所述第二像素组在所述像素阵列内的位置中的至少一种进行修改。

14.根据权利要求11所述的方法,其中,相关联包括:将所述对象在由所述图像数据表示的观看空间内的位置、所述对象在所述观看空间内的速度或所述对象在所述观看空间内的轨迹中的至少一种确定为所述相关信息。

15.一种用于监视图像数据的设备,包括:

用于由包括至少一个处理器的成像传感器设备采集图像数据的装置;

用于基于所述图像数据生成像素阵列的装置;

用于将所述像素阵列的像素分组成至少一个第一像素组和至少一个第二像素组的装置;

用于对所述至少一个第一像素组执行二维2D成像分析的装置;以及用于对所述至少一个第二像素组执行飞行时间TOF分析的装置,其中,执行2D成像分析的装置包括:

用于识别所述图像数据内的对象的装置;以及

用于确定所述对象在所述图像数据内的位置的装置,所述设备进一步包括:

用于将所述2D分析的第一结果和所述TOF分析的第二结果相关联以产生所述对象的相关信息的装置;

用于基于所述相关信息来确定所述对象的分类的装置;以及用于基于所述相关信息和所述对象的分类来控制输出的装置。

说明书 :

使用选择的像素阵列分析的光学安全监视

[0001] 相关申请的交叉引用
[0002] 本申请要求于2014年5月19日提交的题为“OPTICAL SAFETY MONITORING WITH SELECTIVE PIXEL ARRAY ANALYSIS(使用选择性的像素阵列分析的光学安全监视)”的序列号62/000,483的美国临时专利申请的优先权,其全部内容通过引用合并到本文中。

技术领域

[0003] 本文中公开的主题总体涉及光学领域监视,更具体地,涉及能够对于像素阵列的特定部分执行选择的飞行时间(TOF)分析的成像传感器。

发明内容

[0004] 下面呈现了简化概述以提供对本文描述的一些方面的基本理解。本概述不是详尽的综述,也不旨在识别关键/重要元素或记述本文中所描述的各个方面的范围。其唯一的目的在于以简化的形式呈现一些概念作为稍后呈现的更详细描述的前序。
[0005] 在一个或更多个实施例中,提供了一种成像传感器设备,其包括:像素阵列组件,其被配置成针对由成像传感器设备捕获的图像的像素阵列对像素阵列的像素进行分组以产生对其要执行二维(2D)分析的第一像素子集和对其要执行三维(3D)分析的第二像素子集;2D图像分析组件,其被配置成对第一像素子集执行2D分析;以及距离确定组件,其被配置成对第二像素子集执行3D分析。
[0006] 此外,一个或更多个实施例提供一种用于监视图像数据的方法,包括:由包括至少一个处理器的成像传感器设备采集图像数据;基于图像数据生成像素阵列;将像素阵列的像素分组成至少一个第一像素组和至少一个第二像素组;对至少一个第一像素组执行二维(2D)成像分析;以及对至少一个第二像素组执行飞行时间(TOF)分析。
[0007] 此外,根据一个或更多个实施例,提供了一种存储有指令的非暂态计算机可读介质,指令响应于执行来使成像传感器设备执行操作,操作包括:接收表示观看空间的图像的图像数据;基于图像数据来确定像素阵列的各个像素的值;识别对其要执行二维(2D)分析的第一像素子集;识别对其要执行飞行时间(TOF)分析的第二像素子集;对第一像素子集执行2D分析;以及对第二像素子集执行TOF分析。
[0008] 为了实现前述及相关目的,在本文中结合下面的描述和附图描述了某些说明性方面。这些方面指示可以实践的各种方式,而所有这些方式均意在被本文涵盖。在结合附图进行考虑时,其它的优点和新颖特征可以根据以下详细描述变得明显。

附图说明

[0009] 图1是示出了使用二维成像传感器进行的对象在X维和Y维中的2D检测的示意图。
[0010] 图2A是示出了使用2D图像传感器进行的图像的2D图像分析的示意图。
[0011] 图2B是示出了使用3D图像传感器进行的图像的3D图像分析的示意图。
[0012] 图3是示例成像传感器设备的框图。
[0013] 图4是示出了成像传感器设备的操作的概述的功能框图。
[0014] 图5是示出了成像传感器设备的组件的框图。
[0015] 图6是示例像素阵列分组的图示。
[0016] 图7是示出了由成像传感器设备进行的2D(成像)和3D(距离)信息的关联性的框图。
[0017] 图8是可以集成在成像传感器设备的一个或更多个实施例中的示例安全组件的框图。
[0018] 图9是利用成像传感器设备的工业安全监视系统的示意图。
[0019] 图10是利用成像传感器设备的示例自动化安全应用的图示。
[0020] 图11是用于通过成像传感器设备对于像素阵列执行选择的三维分析的示例方法的流程图。
[0021] 图12是用于动态地选择用于选择的3D分析的像素阵列的部分的示例方法的流程图。
[0022] 图13是示例计算环境。
[0023] 图14是示例网络化环境。具体实施例
[0024] 现在参照附图描述本公开内容,其中贯穿全文使用相似的附图标记指代相似的元件。在下面的描述中,为了说明的目的,阐述了大量的具体细节以便提供其透彻的理解。然而,会明显的是,可以在没有这些具体细节的情况下实践本公开内容。在其它实例中,以框图形式示出了公知的结构和设备以利于其描述。
[0025] 在本申请中使用的术语“组件”、“系统”、“平台”、“层”、“控制器”、“终端”、“站”、“节点”、“接口”意在指代计算机相关实体、或与具有一个或更多个特定功能的操作装置相关的或作为该操作装置的一部分的实体,其中,这样的实体可以是硬件、硬件和软件的组合、软件、或执行中的软件。例如,组件可以是但不限于:在处理器上运行的进程、处理器、硬盘驱动器、(光或磁存储介质的)多个存储驱动器(包括附接的(如螺纹连接或螺栓连接)的或可拆卸式附接的固态存储驱动器);对象;可执行体;执行线程;计算机可执行程序、和/或计算机。通过说明的方式,在服务器上运行的应用以及该服务器均可以为组件。一个或更多个组件可以驻留在进程和/或执行线程内,并且组件可以定位在一个计算机上和/或分布在两个或更多个计算机之间。此外,本文所描述的组件可从其上存储有各种数据结构的各种计算机可读存储介质中执行。组件可以通过本地和/或远程进程如根据具有一个或更多个数据包(如来自与本地系统、分布式系统中的另一个组件进行交互的一个组件的数据,和/或来自与经由信号跨网络(如因特网)与其它系统交互的一个组件的数据)的信号进行通信。作为另一个示例,组件可以是具有由电气或电子电路操作的机械组件所提供的特定功能的装置,其中所述电气或电子电路通过处理器执行的软件或固件应用来进行操作,其中处理器可以在该装置的内部或外部,并且执行软件或固件应用的至少一部分。作为又一个示例,组件可以是如下装置:其通过电子组件提供特定功能,而无需机械件,电子组件可以在其中包含处理器以执行提供电子组件的至少部分功能的软件或固件。作为又一示例,接口可以包括输入/输出(I/O)组件以及相关联的处理器、应用或应用编程接口(API)组件。虽然前述示例针对于组件的各个方面,但是所例示的方面或特征也适用于系统、平台、接口、层、控制器、终端等。
[0026] 本文中所使用的术语“推断(infer)”和“推断(inference)”一般是指根据经由事件和/或数据捕获的一组观察结果来推理或推断系统、环境和/或用户的状态的过程。例如,可以采用推断来识别特定的上下文或动作,或者可以生成状态的概率分布。推断可以是概率性的,也就是说,所关注的状态的概率分布的计算基于数据和事件的考虑。推断还可以指用于从一组事件和/或数据构成较高级别的事件的技术。这样的推断导致从一组观察到的事件和/或存储的事件数据来构造新的事件或动作,而无论事件是否是时间接近地相关,以及无论事件和数据是来自一个事件和数据源、还是若干个事件和数据源。
[0027] 此外,术语“或”意指包容性的“或”,而非排他性的“或”。也就是说,除非另外指明或者在上下文中明确,否则短语“X采用A或B”旨在表示任何自然的包括性排列。也就是说,短语“X采用A或B”满足以下实例中的任何一个:X采用A;X采用B;或X采用A和B两者。此外,本申请中以及所附权利要求中使用的冠词“一个(a)”和“一种(an)”一般应被解释为是指“一个或更多个”,除非另有指明或上下文明确针对单数形式。
[0028] 此外,文中使用的术语“集合”排除空集如其中没有元素的集合。因此,在本公开内容中的“集合”包括一个或更多个要素或实体。作为说明,控制器的集合包括一个或更多个控制器;数据资源的集合包括一个或更多个数据资源等等。同样地,本文中使用的术语“组”是指一个或更多个实体的集合,例如节点组指代一个或更多个节点。
[0029] 就可包括许多设备、组件、模块等的系统而言,将呈现各个方面或特征。但应当理解和明白的是,各个系统可以包括另外的设备、组件、模块等,和/或可以不包括结合附图所讨论的设备、组件、模块等的全部。还可以使用这些方法的组合。
[0030] 一般使用二维(2D)成像传感器来检测并且识别在传感器的视场内的对象的形状和/或表面特征。图1示出了使用2D成像传感器104对对象的识别。一些类型的2D成像传感器(如成像相机)通过以下方式操作:向要监视的区域投射宽的光束106并且在接收器处采集从视场内的表面和对象(如对象108)反射的反射光。一些传感器可以以振荡方式来对跨视场的光束106进行扫频以采集逐线图像数据,该数据被分析以识别对象边缘和表面、表面图案或其它这样的信息。可替代地,传感器104可以跨感兴趣的区域投射固定的、大体为平面的光束,并且采集穿过该光束的对象上的数据。通常而言,2D成像传感器基于反射光对所生成的像素数据执行灰度分析或红-绿-蓝(RGB)分析,以生成视场的二维图像数据,该数据可以被分析以识别对象边缘、对象表面图案或轮廓或其它这样的信息。图2A是示出了使用2D图像传感器202对图像206进行2D图像分析的示意图。2D图像分析在x-y平面中生成对象和表面信息。取决于成像传感器所用于的特定应用,传感器将基于在视场内所检测到的对象和/或图案生成适合的输出。
[0031] 三维(3D)图像传感器(也被称为飞行时间(time-of-flight,TOF)传感器)被设计成生成在传感器的视场内的对象和表面的距离信息以及二维形状信息。一些类型的TOF传感器使用相移监视技术来确定对象的距离,借此光束被发射到视场,并且所测量的从对象反射的光相对于发射光的相移被转换成距离值。采用脉冲光照明的其它类型的TOF传感器对光脉冲到视场的发射与在传感器的光接收器处反射的光脉冲的接收之间的耗用时间进行测量。由于这个飞行时间信息是对象或表面距传感器的距离的函数,所以传感器能够利用TOF信息来确定对象或表面的点距传感器的距离。图2B是示出了使用3D图像传感器204对图像208进行3D图像分析的示意图。如该图所示,3D分析在z方向上生成距离或深度信息(也就是对象和表面距传感器204的距离)并且在x-y平面中生成成像信息。
[0032] 考虑飞行时间信息的测量和距离信息的后续计算的三维图像分析处理上一般比2D图像分析更密集。对于3D分析所需要的另外的处理时间和功率会使得3D图像传感器不适合要求快的、可靠的响应时间的某些类型的应用。然而,存在可以从3D图像分析中获益但要求快的和可靠的判定和响应时间的某些类型的应用。例如,工业安全监视应用必须能够可靠地对存在于潜在危险区域内的人进行检测,并且利用具有最小化延迟的适合的安全控制输出(如使运行的机器停止或减速以去除危险机器的电力的命令等)来响应以防止受伤。
[0033] 为了解决这些和其它问题,本公开内容的一个或更多个实施例提供了能够对所选择的传感器的像素阵列的子集或部分执行3D图像分析的成像传感器。在一个或更多个实施例中,成像传感器允许像素阵列的一个或更多个具体部分被选择用于3D(飞行时间)分析,以获得那部分的像素阵列中的像素的距离信息,同时其余的像素阵列区域将利用2D图像分析来处理。例如,在成像传感器针对感兴趣的区域被训练之后,用户可以选择跨像素阵列的中间部分(或者上边缘或下边缘)的水平条的像素用于3D分析,以便可以获得与所选条的像素对应的区域的距离信息以及对象识别信息并对其进行管理。成像传感器将对其余的未选择的像素阵列区域应用2D分析(如灰度或RGB分析)以检测、识别、分类和/或关联视场内的对象。由于2D成像处理比3D处理更快,所以通过将3D分析限制到场景的仅需要距离信息的那些区域,处理负荷减小并且传感器响应时间提高。成像传感器还可以被配置成将2D分析和3D分析的结果相关联,以便能够获得具有高度安全完整性的观看空间内的对象的标识、速度、距离以及轨迹。
[0034] 在一些实施例中,如基于对视场内的满足一个或更多个标准的对象的检测,成像传感器可以配置成动态选择或改变像素阵列的要应用3D分析的部分。例如,在正常操作期间,成像传感器可以配置成对整个像素阵列执行连续的2D分析,直到检测到具有某个所定义的分类(如人、手推车等)的对象或对象的集合为止。当检测到这样的对象时,例如当有人进入传感器的视场时,传感器可以检测像素阵列的与该对象周围的区域对应的部分用于3D分析,以便可以跟踪该对象的TOF(距离)信息。成像传感器可以动态地改变这个定义的像素区域来随对象移动,使得只要该对象仍在视场内就可以监视该对象的距离和速度信息。
[0035] 在一个或更多个实施例中,成像传感器还可以配置成对于给定图像,识别属于所定义分类的单个对象的非连续的像素组。这可以允许成像传感器即使在人在图像中局部模糊的情况下也能够识别视场内的人的存在。例如,成像传感器可以被训练成识别与人腿对应的两个分开的可见对象的存在,并且在图像中将这两个对象关联为属于在视场内但局部模糊的人。传感器可以根据需要(如通过对与这两个对象对应的像素区域执行3D分析)来跟踪这些相关的对象,以便可以基于该区域内的人的位置和速度来生成适合的安全输出或反馈信息。
[0036] 图3是根据该公开内容的一个或更多个实施例的示例性成像传感器设备302的框图。虽然图3描绘出某些功能组件驻留在成像传感器设备302上,但是将理解的是,在一些实施例中图3中所示的功能组件中的一个或更多个功能组件可以驻留在与成像传感器设备302有关的单独设备中。在本公开内容中说明的系统、设置或过程的多个方面可以组成在一个或更多个机器内实现的机器可执行组件,例如,在与一个或更多个机器相关联的一个或更多个计算机可读媒介(或媒体)中实现。当这样的组件由一个或更多个机器如计算机、计算设备、自动化设备、虚拟机等执行时,可以使机器执行所描述的操作。
[0037] 成像传感器设备302可以包括照明组件304、像素阵列组件306、距离确定组件310、图像分析组件312、危险分析和判定组件314、安全组件316、一个或更多个处理器318以及存储器320。在各种实施例中,照明组件304、像素阵列组件306、距离确定组件310、图像分析组件312、危险分析和判定组件314、安全组件316、一个或更多个处理器318以及存储器320中的一个或更多个可以在电学上和/或在通信上彼此耦接,来执行成像传感器设备302的功能中的一个或更多个。在一些实施例中,组件304、306、310、312、314和316可以包括存储在存储器320上并且由处理器318执行的软件指令。成像传感器设备302还可以与图2中未描绘的其它硬件和/或软件组件进行交互。例如,处理器318可以与一个或更多个外部用户接口设备如键盘、鼠标、显示监视器、触摸屏或其它这样的接口设备进行交互。成像传感器设备302还可以包括网络通信组件以及相关联的联网端口,以用于将由组件304、306、310、312、314和316中的任何组件生成的数据在网络(或者标准数据网络或安全网络两者)上或在底板上发送。
[0038] 照明组件304可以被配置成通过传感器设备来控制光的发射。成像传感器设备302可以包括受照明组件304控制的激光或发光二极管(LED)光源。在一些实施例中,照明组件304可以生成导向至视场的脉冲光发射,使得传感器设备可以生成反射的光脉冲的飞行时间信息。像素阵列组件306可以被配置成处理和分析与通过传感器设备监视的视场图像对应的像素阵列。例如,像素阵列组件306可以控制将使用3D分析进行处理的像素的子集。待被施加3D分析的像素的子集可以(如经由用户输入被预配置)而固定;可替选地,像素阵列组件306可以根据一个或更多个定义的标准(如人或面孔识别、对象分类等)动态地选择用于3D分析的像素的子集。
[0039] 距离确定组件310可以被配置成通过对像素阵列数据中的全部或选择部分执行3D分析来提取距离信息。距离确定组件可以实现任何合适的分析技术,包括但不限于相移监视或脉冲飞行时间分析。
[0040] 图像分析组件312可以被配置成对没有被选择进行3D分析的像素阵列的部分执行2D分析。危险分析和判定组件314可以被配置成基于像素阵列组件306、距离确定组件310、图像分析组件312和安全组件316所生成的结果来分析和控制一个或更多个传感器输出。这可以包括:例如,将控制信号发射至控制或监管设备(如工业控制器、安装在移动车辆中的车载计算机等)来执行控制动作;发起安全动作(如使危险机器断电、将工业系统切换至安全操作模式等);经由人机接口(HMI)或个人移动设备来将反馈消息发送至一个或更多个工厂人员;在安全网络上发送数据;或者其它这样的输出。安全组件316可以被配置成在成像传感器设备302内实现一个或更多个安全和/或冗余特征以使传感器设备可适合于用在安全应用中(例如,被设计来监视危险区域并且响应于检测到潜在的不安全的人出现或动作而可靠地执行自动控制动作以减轻伤害的风险的工业安全应用、其中安装在车辆上的一个或更多个成像传感器基于检测的分析条件来控制车辆的制动的汽车安全应用等)。通过实行这样的安全和冗余功能,成像传感器设备302可以监视二维平面和三维体积并且以高安全完整水平(如SIL或ASIL)响应于检测到的条件,使得传感器设备可适合在一些安全应用中用作光幕或其它这样的传感器的替选。
[0041] 一个或更多个处理器318可以执行在本文中参考所公开的系统和/或方法所描述的功能中的一个或更多个功能。存储器320可以为存储有用于执行本文中参考所公开的系统和/或方法所描述的功能的计算机可执行指令和/或信息的计算机可读存储媒介。
[0042] 图4是示出成像传感器设备的操作的概况的功能框图。光学块402包括用于将光束投射至被监视的屏幕416的光发射器(如激光器、LED或远程荧光发射器)和用于接收来自屏幕内的对象和表面的反射光脉冲的光接收器阵列。照明块404控制LED、激光器或远程荧光激光器光源的光投射。在一些实施例中,照明块404可以投射光束或光脉冲来实现在屏幕416各处的均匀照明。可替选地,照明块可以实现用于3D分析的图案化照明,借此使光集中在跨屏幕416间隔的光点中,以确保检测给定最小尺寸的对象。这个照明技术可以在没有增加光源电力的情况下确保在增加的距离处精确的对象检测。在一些实施例中,照明块404可以投射光来实现在屏幕416各处的均匀照明。
[0043] 在成像传感器设备302的光接收器处接收到反射光的情况下,基于在每个光接收器处测量的光强来生成像素数据,并且像素阵列块406对得到的包含图像的像素阵列数据执行处理。这可以包括:例如,识别待对其执行3D处理的阵列中的像素的第一子集;以及指出像素的用于2D成像分析的其余的第二子集。每个像素的后续处理取决于待对所述每个像素执行的分析类型(2D或3D)。
[0044] 对于被选择用于3D(距离或深度)分析的像素,3D距离分析410例如使用对对象所反射的光束进行相移飞行时间分析或者使用对从对象反射的光脉冲进行的脉冲飞行时间分析来确定在与该像素对应的视场中的对象或表面的距离。对像素阵列的3D分析部分中的每个像素执行距离计算得到视场的所选区域的3D点云。
[0045] 2D成像块412对没有执行3D分析的像素阵列的部分执行2D图像分析。2D图像分析可以包括与非3D像素对应的图像部分的RGB或灰度分析,包括但不限于边缘检测、轮廓分析、图像锐化、对比度调整、差分和叠加成像(difference and additive imaging)等。成像传感器设备302可以采用2D图像分析来识别视区内的对象并且确定所识别的对象是否对应于一个或更多个限定的对象分类(如人、叉车或推车、传送带上的加工件、包括包装产品的货盘等)。在一些实施例中,成像传感器设备302还可以被配置成使用2D图像分析执行面孔识别,该面孔识别可用于控制判定或操作员反馈输出依赖于在视场内检测的人的识别的应用。
[0046] 成像传感器设备302可以将2D和3D分析的结果相关联以在对象数据块414处得到对象数据。例如,对象数据可以包括三维观看空间内的被识别对象的位置、速度、加速度和/或轨迹。取决于应用的类型,危险分析和判定块418可以基于关联的对象数据生成合适的输出或操作员反馈。在一些实施例中,成像传感器设备302可以与工业控制或安全系统、车辆安全系统或其它这样的系统连接来实现基于对象检测的控制特征。因此,传感器设备所生成的输出可以包括用于基于对象数据改变机器或系统的操作的相关联的控制或安全系统(如可编程逻辑控制器或其它安全自动控制器、移动车辆的发动机控制单元等)的控制指令;基于视场内人的存在和移动将工业系统设置在安全状态的相关联的安全系统(如安全继电器)的安全输出;或者其它这样的输出。成像传感器设备还可以包括监视和诊断传感器设备的内组件和故障的安全块420,包括但不限于电力监视、振动监视和温度监视。因此,危险分析和判定块418所生成的控制输出和消息可以另外地成为安全块420所生成的诊断结果的功能。
[0047] 图5是示出根据一个或更多个实施例的成像传感器设备302的组件的框图。在这个示例中,照明组件304经由发射器506控制至视场的LED、激光器或远程荧光的发射。在一些实施例中,照明组件304可以将脉冲LED光照的宽的、基本平面的光束投射至视场。对于扫描型设备,照明组件304可以以振荡方式在跨视区的角度范围上扫描这个平面光束,以有利于在整个观视范围上收集图像数据。在其它实施例中,光束可以保持为静态(以固定方向对准),使得对象可以随着其穿过光束平面被检测和识别。在又一实施例中,照明组件304可以在视场上投射宽的光脉冲光束(如圆锥形光束)。
[0048] 在一些实施例中,照明组件304可以使用激光器、LED或远程荧光光源均匀地照明视场。可替选地,照明组件304的一些实施例可以采用图案化照明技术,而非均匀照明视区,照明组件304将光集中在视场上以特定距离间隔的光点中。这个技术可以提高检测小对象和检测低反射率对象的可靠性。在这样的实施例中,可以基于像素的有效尺寸和传感器设备的接收元件508的光学特性来限定光的每个光点的尺寸。接收元件508尺寸与光点尺寸相对,使得接收元件508上的光点的图像至少覆盖一个像素的感光区域。在这个技术的变型方案中,照明组件304或透镜设计还可以被配置成调制发射的光点的照明强度,使得高亮度光点和低亮度光点同时在视区上交错。这个技术可以有利于在单个图像帧内可靠地检测亮和暗的对象。在示例性实现方式中,照明的聚焦光点可以通过在LED、激光器或远程荧光光源前面放置包括矩形或方形孔的矩形透镜来实现。透镜上的孔的位置确定了光点图案。为了确保对小对象尺寸的精确检测,可以如此限定光点图案:使得至少两个水平光点和两个竖直光点覆盖距透镜元件508给定距离处的对象的最小尺寸。
[0049] 透镜元件508接收从视场反射的光,像素阵列组件306执行对得到的图像数据的像素的处理。如上所述,成像传感器设备302使得得到的像素阵列502的部分被选择用于3D(距离或深度)处理和分析,而像素阵列的其余部分使用2D(成像)分析进行处理。在图5中示出的示例中,跨像素阵列502的中间部分的水平带512被选择用于3D分析,而在所选择的带512之上和之下的像素阵列502的其余部分使用2D分析进行处理。在一些实施例中,像素阵列组件306基于预定义配置简档(predefined configuration profile)510将像素标识并且分组成2D和3D部分,该预定义配置简档指定用于待被执行3D分析的像素阵列502的一个或更多个区域。可替换地,像素阵列组件306可以被配置成动态选择在其上待执行3D分析的区域,这将在下面更详细地描述。
[0050] 尽管图5示出了3D处理区域作为跨像素阵列的中部的单个水平带,但是应该理解可以通过像素阵列组件306对基本上任何方式的像素分组进行管理。图6示出另一示例性像素分组。除了在像素阵列602中所示出的单个水平带之外,像素也可以被分组成多个3D带(水平或垂直),如在示例性像素阵列604中所示出的。像素阵列606示出了像素分组的分屏类型,其中像素阵列的左侧部分被选择用于3D分析,而在右侧部分执行2D分析。像素也可被分成各种尺寸的非邻接像素群,如在示例性像素阵列608中所示出的。
[0051] 在示例性场景中,其中成像传感器设备302被用于监视工业设施的区域,可以已知的是视场的某些区域对应于潜在危险区域,而视场的其它区域对应于对于操作者很少或没有风险的安全区域。因此,系统设计者可以限定像素阵列的部分,其包括用于3D分析的已知危险区域。这些像素区域定义可被存储在配置简档510中并且由像素阵列组件306来利用以针对组分析相应地将像素阵列的像素进行分组。像素阵列502的未选定用于3D分析的部分将使用2D分析进行处理,相比3D分析,这样计算量较小。通过将3D分析限于像素阵列502的关键子集并且对阵列的其余部分执行2D分析,相对对整个图像执行3D分析,总的处理时间可以减少。
[0052] 在另一示例中,安装在天花板上的成像传感器可以被定向成朝下与基本上垂直于地面的位置成一直线,以监视通过入口门到或房间或关注区域的交通。在这个示例中,可能仅需要对与至入口门的通路对应的像素阵列的中间带执行3D分析。因此,系统设计者可以定义像素阵列502的这个区域,并在配置简档510中保存这些设置。
[0053] 成像传感器设备302可以支持用于允许用户定义在像素阵列502上的3D区域的任何合适的技术。例如,在个人计算设备(如平板计算机、膝上型计算机、台式计算机、移动电话等)上可执行的接口应用可以用于促进数据在计算设备和成像传感器设备302之间交换。接口应用可以生成并且提供能够接收来自用户的输入数据的配置显示屏,该配置显示屏设置用于传感器的配置参数和定义。一个或更多个配置显示屏幕可以允许用户通过输入限定用于待被执行3D分析的像素阵列502的部分的x-y坐标来定义3D分析的区域。可替代地,该配置显示屏可以允许用户(使用鼠标或记录笔)绘制限定3D分析的区域的(线性或弯曲的)边界线。如果成像传感器设备302在视区中被进行训练,则配置屏可以显示视区的实时图像或屏幕截图,并且允许用户绘制3D分析边界线作为在图像或屏幕截图上的叠加。
[0054] 在接收到现场像素阵列的数据时,并且在像素阵列组件306已经将像素分组成相应3D和2D区域之后,图像分析组件312执行对像素阵列502的未被像素阵列组件306指定用于3D分析的部分执行2D成像分析。如上所述,成像传感器设备302可以采用2D成像分析以对在图像帧内的对象进行识别和分类。对象的分类可以基于对象的预定义分类,其中成像传感器设备302已被训练成识别包括但不限于人、特定类型的车辆(如铲车、手推车等)、制造的组件、托盘、或其它这样的对象分类。
[0055] 在一些实施方案中,像素阵列组件306或图像分析组件312中的一者或两者可以被配置成识别如下的实例:其中像素阵列502的像素中的两个或更多个非邻近组属于在图像内可以被部分模糊的共同对象或人。在示例性场景中,操作者可以进入图像帧,但也可以通过在帧内的另一对象部分地模糊,使得操作者的仅腿或脚的部分对于传感器设备直接可见。与操作者的左侧和右侧的腿或脚对应的像素阵列502的像素可以包括分开的非邻近的像素组,这是因为操作者在膝盖以上被模糊。图像分析组件312可以被训练以认识人的下半身特征,并因此认识到相对于在该帧内的另一以某种方式定向的被识别为人腿的两个分开的检测到的对象属于同一人,并且指示在图像内的人的存在。因此,图像分析组件312可以将两个对象识别并且分类为人腿,并且在假设两个对象与人腿对应的情况下指示像素阵列组件306使两个检测到的对象相关联用于集体分析。
[0056] 同时或与2D图像分析协调,距离确定组件310可以对像素阵列502的包括所定义的3D部分的像素执行3D分析,以确定与那些像素中的每个像素相关联的距离值。该距离值表示对应于像素的对象或表面与传感器设备的距离。距离确定组件310所采用的分析技术取决于设备所支持的照明和3D分析的类型。例如,对于采用相移分析的成像传感器设备,距离确定组件310可以监视在光接收器处接收的反射光束的相移,并将这个相移与照明组件304发射的光束的相位进行比较。然后该距离被确定为发射和接收光之间相对相移的函数。其它类型的采用脉冲光照明的成像传感器对针对每个像素的在照明组件的光脉冲的发射与在光接收器处的反射光脉冲的接收之间的持续时间(time duration)进行测量,并将该距离确定为所述持续时间的函数。在这样的实施例中,距离确定组件310可以监视光接收器的电输出(其是光接收器表面上入射光强度的函数)并生成表示反射光脉冲的波形。然后可以基于波形数据的分析识别返回光脉冲的前沿(其表示光脉冲在透镜元件508处接收到的光脉冲的时间)。然后距离确定组件310可以将这个时间与所发射的光脉冲被照明组件304发送的时间进行比较。两个时间之间的差表示脉冲的飞行时间,根据此可以得到与光接收器对应的像素的距离信息。通过对像素阵列502的3D分析部分中的每个像素进行波形重建和距离测定,可以得到像素阵列502的所选区域的3D点云。
[0057] 成像传感器设备302的一些实施例可以支持基于通过2D图像分析组件的对象检测和分类的3D分析区的动态定义。例如,在正常运行期间,成像传感器设备302可以对整个像素阵列502执行2D分析,直到在视场内检测到特定分类的对象。响应于在视场内检测到的这样的对象(如人、车等),图像分析组件312可以向像素阵列组件306提供信息,以用于在像素阵列502内识别对象及其位置。然后,像素阵列组件306可以定义对应于所识别的对象的一个或多个像素组,并指示距离确定组件310开始对那些像素组执行3D分析,使得可以跟踪对象的距离和位置。在一些实施例中,像素阵列组件306和图像分析组件312可以联合对像素阵列502中所定义的3D分析部分进行移动来操作,以跟踪所检测到的对象,只要所述对象保持在该帧内即可。因此,成像传感器设备302的实施例可以使用2D成像分析以识别该帧内的关注对象,并且指示像素阵列组件306应在何处执行3D分析。以这种方式,成像传感器设备302可以连续收集关注对象的TOF信息,同时使在其上执行3D分析的像素阵列502的面积基本上最小,从而使处理和响应时间最优化。
[0058] 成像传感器设备302可以使2D和3D分析的结果关联,并且基于对象分类、位置、速度和/或轨迹来确定合适的控制或消息输出。图7示出了通过成像传感器设备的2D(成像)和3D(距离)信息的关联性。如上所述,图像分析组件312可以生成2D分析结果704,包括但不限于对象识别或分类、对象的x-y位置、确定的属于共同对象的像素组的关联、基于图像分析的人和/或面部识别以及其它这样的数据。距离确定组件310针对每个像素生成3D分析结果
702(飞行时间距离信息),产生针对关注区域(如前面示例中所描述的系统设计员手动地或基于图像分析组件312所提供的信息由传感器动态地,指定用于选择性3D分析的像素阵列的区域)的3D点云。成像传感器可以将这些数据集中的全部或所选择的部分关联以产生关联的结果706。这些关联的结果可以包括但不限于:三维空间内的对象位置、速度和轨迹;基于三维位置、速度和轨迹的关注对象所预测的未来位置;或者其它这样的信息。
[0059] 在2D和3D结果关联性的非限制性示例中,图像分析组件312可以识别与需要3D分析的一类对象对应的图像帧内的对象。作为响应,成像传感器设备可以对像素阵列502的与检测对象对应的区域应用3D分析以获得对象随时间推移的距离信息,而2D分析可以跟踪对象在该帧内的x-y位置。通过关联这些结果,可以确定在三维视场空间内对象的瞬间位置、速度、加速度和轨迹。对于成像传感器设备支持预测未来对象位置的实施例,传感器还可以基于当前位置、速度和轨迹确定该对象是否预计在三维视场的特定子空间内,并基于使用这种预测的风险分析生成控制或反馈输出。
[0060] 在另一示例中,成像传感器设备可以协调对象分类和边缘检测(2D分析结果)与深度分析(3D分析结果)以获得在所识别的对象的边缘中所封闭的所有像素的深度信息。例如,当对象进入视场时,成像传感器可以利用2D成像分析来将对象识别和分类成对应于需要3D分析的定义的对象分类。2D分析还可以包括识别对象的可见边缘或边界的边缘检测。然后,成像传感器可以对经由2D分析所识别的对象边界内的所有像素执行选择性3D分析。
[0061] 现在转至图4,根据传感器设备所执行的特定应用,当对象分类、位置、速度、加速度、和/或轨道满足定义的规则时,可以引入危险分析和判定组件314以生成合适的控制、安全、或反馈输出。在一些实施例中,危险分析和判定组件314可以经由硬线连接或网络连接与控制设备(如工业控制器、安全继电器、机动车的车载计算机等)连接,并且施加到控制设备的问题控制指令基于在视场中所观测到的对象的标识、位置、和行为。在示例场景中,基于通过距离确定组件310和图像分析组件312生成的相关联分析结果,成像传感器设备302可以识别已经进入视场的工厂员工,以及员工的当前的在所控制的工业机器附近的潜在的危险区域内可以放置员工的轨迹、加速度、速度和位置。作为响应,引入危险分析和判定组件314以(例如,通过以空闲模式或慢速操作模式放置机器,或者通过指导安全继电器将机器的某些可移动的组件断电)向工业控制器发出命令以将机器放置在安全模式。在另一示例场景中,危险分析和判定组件314可以被配置成根据对象标识和行为生成将呈现在显示设备上的反馈信息。这可以包括例如定制的警告信息,其推荐用户按照可选择的路径或重新位于监控区域内的安全区域。对于支持面部识别的成像传感器设备302的实施例,通过危险分析和判定组件314生成的反馈信息还可以进一步根据视场内的检测的员工的标识来定制。危险分析和判定组件314可以与安装在监控区域内的显示设备连接,或者可以瞄准与所识别的员工相关联的个人设备。
[0062] 上述对象检查和跟踪特征,与在做出决策中所减少的处理负载和相当的改善和由最小化3D处理所需要的量产生的响应时间一起,提出了适合于安全应用的本文所描述的成像传感器设备,其需要高的安全完整度和快速的响应时间以减轻伤害的风险。为了确保成像传感器设备的安全完整,一个或更多个实施例可以包括安全组件316,其实施用于确保在工作条件范围内的传感器的可靠性和准确性一个或更多个特征,提高了传感器设备的安全完整度。总之,安全组件316被配置成对可能影响传感器操作的完整性的条件范围上执行故障监视和诊断分析,并且触发设计的行动,以降低当监视偏离安全状态时可能引起的危险(例如,指导危险分析和判定组件314来将机器切换至安全状态、输出警告信息等)。图8示出了示例安全组件316,其可以被结合到成像传感器设备302的一个或更多个实施例中。安全组件316可以包括执行各种类型的诊断和故障监视的一个或更多个子组件。图8示出了功能上用于监视和补偿温度、功率、偏移、以及内部组件故障的示例安全组件。然而,应该理解的是,其它类型的故障监视和诊断能力可以通过安全组件316的各种实施例支持,并且在本公开内容的范围内。
[0063] 传感器设备内的温度可以对通过传感器组件生成的距离值产生影响。因此,安全组件316可以包括被配置成调整通过距离确定组件310生成的距离值以补偿在温度上的测量偏移。温度控制组件802的一些实施例还可以包括调节传感器的内部温度来维持特定的最佳工作温度的机制,以及确保温度补偿满足或者超过规定的最小安全完整水平(如SIL 2、SIL 3、ASIL C、ASIL D等)的冗余故障检测机制。
[0064] 安全组件316还可以包括电力监视组件804,其被配置成监视向关键组件提供电力的内部轨道,并且响应于检测的距额定容限的电压偏移而执行补偿动作。在这点上,成像传感器设备302的一些实施例可以包括备用电源以确保主要电源的失效不阻止传感器设备的继续工作。偏移补偿组件806可以被配置成响应于传感器上感应的监视的偏移来执行合适的补偿动作。
[0065] 故障检测组件808可以被配置成监视并且诊断内部传感器故障,并且根据故障信息向危险分析和判定组件314生成信息或指令。另外,为了进一步满足安全完整水平需要,处理器318可以被指定为SIL或ASIL额定处理器以确保成像传感器满足所需要的安全标准。
[0066] 包括足够的安全组件来满足或超过定义的SIL或ASIL等级的成像传感器设备302的实施例可以被适当地实施为安全系统(如工业安全系统,车载自动安全系统等)的组件。例如,本文所描述的成像传感器设备的实施例可以被用于代替光幕来执行工业环境中的安全检测。通过支持对象识别和分类、人体识别、以及不被传统的存在的传感器支持的其它特征,使用成像传感器设备执行安全监视可以提供超过传统光幕或其它的存在的传感设备的优点。图9为使用成像传感器设备302的工业安全监视系统的示意图。在这个示例中,传送带
912将产品914传送至所保护的加工区域或材料处理区域中。产品914可以包括例如通过一系列的自动加工处理传送的加工部分、包含包装的产品的货板或其它这样的项目。加工或材料处理区域包括在工业控制器904的控制和管理下工作的机器人902,并且因此构成了在人体操作者进入之前必须提供安全的危险区。传送带912将产品914经由入口906(如围绕危险区的安全防护栏的开口)传送至危险区。
[0067] 安装成像传感器设备302使得光发射器和接收透镜面直接向下朝向传送带。光束908朝着入口906之前的区域直接对准。利用上述技术,成像传感器设备302可以在当对象接近入口906时通过光束908对对象进行识别和分类。使用这种配置,成像传感器设备302可以模拟光幕减弱特征,使得允许产品914通过入口906而不使机器人902的操作停止,但是接近入口906的人体操作者的检测将引起机器人902切换至安全模式(如停止或变慢)。
[0068] 为此,成像传感器设备302可以利用上述一种或更多种技术通过光束908来对对象进行识别和分类。例如,成像传感器设备302可以被训练成识别产品914作为第一对象分类(“产品”),以及识别人体操作者910作为第二对象分类(“人体”)。当产品914经过光束908时,成像传感器设备302可以对产生的图像执行2D分析来识别对象,确定对象属于产品分类,并且允许产品914通过入口906进入危险区而不使机器人902或传送带912失效。如果站在传送带912的操作者910经过光束908,那么成像传感器设备302将操作者识别为属于人体分类并且生成一种使系统处于安全模式的控制输出。这可以包括例如向工业控制器904发送控制输出指导控制器使机器人902失效并且停止传送带912。
[0069] 为了提高人体检测的可靠性同时最小化处理负载并且维持可接受的响应时间,成像传感器设备302可以被配置成对通过与传送带路径对应的图像帧的中间的窄带执行选择性3D分析,而对图像帧的其余部分执行较快的2D分析。对对应于传送带路径的区执行深度(距离)分析,在准确识别传送带上人体的出现方面可以帮助成像传感器设备302,这是因为对象高度可以被用于区分有效的产品914与人体或者传送带912上的不合适的对象。
[0070] 在可替选的配置中,成像传感器设备302可以被配置成对正常操作期间图像的整个像素阵列执行2D分析,直到不符合“产品”分类的对象进入视场为止。响应于进入视场的非产品对象的检测,传感器的像素阵列组件306可以指出对应于用于3D分析的对象的像素阵列的区域,以获得高度信息并且随着时间形成新的对象的轮廓,其可以被传感器所使用来帮助确定新对象是否对应于“人体”分类。随着其移动经过视场,(例如,基于通过图像分析组件312提供的对象检测信息),像素阵列组件306可以动态地移动指定用于3D分析的图像部分来跟踪对象。
[0071] 在动态危险分析的另一示例中,成像传感器设备302可以被配置成基于经由2D图像分析确定的当前危险等级来对3D分析像素区域(如危险区)的尺寸进行调整。例如,被指定用于3D分析的像素阵列的区域可以对应于围绕危险区域(如机器或交通区域)的区域。基于像素阵列的2D分析,成像传感器设备302可以确定危险区域内的对象(如机器组件、移动车辆、传送带上的对象等)的速度。如果确定对象的速度超过阈值,暗示较高的受伤风险,则像素阵列的对其执行3D分析的部分可以增加至围绕危险区的较大的区域。当在危险区内检测到较慢的对象(例如,当确定的速度低于阈值时),假定降低风险等级,并且像素阵列的3D分析部分变得较小以允许操作者自由地更加靠近地接近危险区域。
[0072] 图9中描述的配置相对于光幕解决方案具有多个优点。例如,光幕发射器和接收器通常垂直安装在入口的任一侧,使那些组件遭受由经过的对象带来的可能的损坏。将成像传感器设备302安装在天花板上降低了将监视设备放置在经过的对象的范围之外带来的损坏的风险。此外,光幕通常被抑制以允许产品在操作周期中的特别限定的持续时间(即产品被预期通过光幕的持续时间)内通过入口,并且在所述周期的其余部分使能。因为在这样的场景下的光幕的抑制是被执行的操作周期的特定部分的函数,本方法具有如下可能性:在光幕被抑制的那些时间期间,人可以通过光幕而不被检测到。相反,由于成像传感器设备302能够将检测到的对象分类为与“人”对应的类别并且基于该对象类别来改变控制,成像传感器设备302能够基于对象检测和分类而非取决于周期来执行更直接和智能的抑制。
[0073] 成像传感器设备302还可以应用于其它类型的监视应用。例如,成像传感器设备302可以用于监视对工业设施的特定区域的访问。在示例访问监视应用中,可以将成像传感器设备302安装在要监视区域的入口以上的天花板上。与图9所示的配置相似,可以将成像传感器设备302朝下定向以捕获在要监视区域的入口外部的地面区域的图像。因为成像传感器设备302能够精确地区分人与非人对象,当工厂工作人员进入和离开被监视区域时,他们会被跟踪和计数。在可替代配置中,可以将成像传感器设备302安装在入口以上,使得传感器可以另外执行作为图像分析的一部分的人脸识别和员工标识。
[0074] 图10示出了在本文中描述的成像传感器设备的示例汽车安全应用。在这个示例中,将成像传感器设备1004安装在车辆1002(如在后视镜、保险杠、护栏等上)并定向以实现朝向车辆的前方导向的基本上水平观看轴。在这个示例中,成像传感器设备1004在通信上连接至汽车网络中的车辆发动机控制单元(ECU)并且基于由危险分析和判定组件314执行的危险分析(基于由距离确定组件310和图像分析组件执行的图像分析)向ECU提供信息或控制输出。安全组件316还基于内部传感器设备故障监视和诊断向ECU馈送数据。特别地,成像传感器设备1004通过获得在车辆1002前方的视区的图像并且应用上述对象检测和分类技术以识别在车辆1002附近的行人1006,从而执行行人检测。成像传感器设备1004还被训练以对附近的其它车辆1008进行识别并分类。使用在本文中描述的图像分析技术,成像传感器设备可以确定如下因素:行人1006和车辆1008的位置、这些被检测对象相对于车辆1002的速度和加速度,以及对象的预期轨迹等。基于这个数据,成像传感器设备1004可以响应于识别出的风险(例如行人1006或车辆1008的可能碰撞)来向ECU输出信息和指令。例如,成像传感器设备1004可以指示ECU以响应于检测到的行人1006或车辆1008碰撞的风险来激活车辆的制动系统。在这点上,成像传感器设备1004运行以下算法:检测、分类并跟踪对象;
分析风险的级别;以及确定是否应当激活制动系统。由安全组件316执行的内部安全监视和诊断功能可以确保成像传感器设备符合汽车车载安全系统的适当的安全标准(如ISO 
26262)。
[0075] 图11至图12示出了根据本主题应用的一个或更多个实施例的各种方法。为了简化解释,将本文中示出的一种或更多种方法示出并描述为一系列动作,应当理解本主题发明不受动作顺序的限制,例如一些动作可以据此以不同顺序发生和/或与除在本文中示出并描述的动作之外的其它动作同时发生。例如,本领域的技术人员将理解方法可以被替代地表示为例如状态图中的一系列相关状态或事件。此外,并非所有示出的动作被要求实现根据本发明的方法。另外,当不同的实体制定方法的不同部分时,交互图可以表示根据本主题公开内容的方法或方法。另外,所公开的示例方法中的两种或更多种方法可以相互组合实施以实现本文中描述的一个或更多个特征或优点。
[0076] 图11示出了用于由成像传感器设备对像素阵列执行选择性的三维分析的示例方法1100。起始,在1102处,在与由设备监视的观看区域的图像对应的成像传感器设备处接收图像数据。可以通过向观看区域发射光照并且测量由成像传感器设备的光接收器阵列的每个像素接收的反射光来获得图像数据。在1104处,由成像传感器设备基于在步骤1102处接收的图像数据来生成像素阵列信息。像素阵列信息可以总体上包括由成像传感器设备采集的图像帧的像素数据。在1106处,对像素阵列的第一子集执行二维(2D)分析以识别图像中的至少一个对象,对图像中的对象进行分类,或使图像中识别出的两个或更多个对象相互关联。
[0077] 在1108处,对像素阵列的第二子集执行三维(3D)分析以确定在与像素阵列的第二子集对应的观看区域内的空间的距离信息。在一些实施例中,可以在操作之前由系统设计者定义对其要执行3D分析的像素阵列的第二子集并且将该第二子集记录在配置简档中,该配置简档可以由成像传感器设备的像素阵列组件读取,以对执行相应2D和3D分析的阵列像素的第一和第二子集进行分组。可替代地,成像传感器设备可以基于在步骤1106处执行的2D分析的结果来动态地选择用于3D分析的阵列像素的第二子集。例如,如果2D分析确定了特定类别的对象已经进入了视场,则成像传感器设备可以定义与新识别出的对象对应的像素阵列的区域并且开始对对象执行3D分析以获得对象的空间信息。
[0078] 在1110处,由成像传感器设备基于由2D分析和3D分析生成的信息的关联性来生成控制输出或反馈信息中的至少一种。例如,成像传感器设备可以使2D与3D分析结果关联以获得对象的位置、速度、加速度、定向和/或轨迹并且基于这些测量因素中的一个或更多个因素来生成控制或信息输出。控制输出可以包括例如至工业控制器的如下指令:从危险的工业机器转变至安全模式、锁定进入危险区域的入口门以防止访问,或其它这样的控制输出。
[0079] 图12示出了用于动态选择用于选择性3D分析的像素阵列的一部分的示例方法1200。起始,在1202处,在与由设备监视的观看区域的图像对应的成像传感器设备处接收图像数据。在1204处,由成像传感器设备基于在步骤1202处接收的图像数据来生成像素阵列信息。在1206处,对像素阵列执行2D成像分析。在1208处,基于2D成像分析对图像中的对象进行识别并分类。
[0080] 在1210处,确定在步骤1208处确定的对象分类是否需要3D(距离)分析。例如,可以训练传感器设备以识别人何时进入观看区域。相应地,传感器可以基于在步骤1206和1208处执行的2D分析和对象分类来确定具有“人”分类的对象已经进入观看区域。
[0081] 如果对象分类不需要3D分析,则方法返回步骤1202并且继续监视所接收的图像数据。可替换地,如果确定对象分类需要3D分析,则方法继续至步骤1212,在该步骤处识别与对像周围的图像区域对应的像素阵列的子集。在1214处,对在步骤1212处识别的像素阵列的子集执行3D分析以确定对象的距离信息。在1216处,由成像传感器设备基于由步骤1206的2D分析和步骤1214的3D分析生成的信息关联性来生成控制输出或反馈信息中的至少一种。这可以包括例如基于2D和3D结果的关联性来识别潜在的危险状况或风险,并且向在通信上连接至成像传感器的独立的控制器(如工业控制室、安全继电器、机动车的控制计算机等)发送指令以执行设计的动作从而减轻检测到的危险。该动作可以包括例如将工业机器或系统切换至安全状态(如停止机器、将机器切换至慢速操作模式、将机器返回至初始位置等)、指令车辆的制动系统减速或停止车辆,或其它这样的动作。
[0082] 在本文中描述的实施例、系统和组件以及在其中可以执行在本主题说明书中提出的各个方面的控制系统和自动操作环境可以包括能够跨网络交互的计算机或网络组件例如服务器、客户端、可编程逻辑控制器(PLC)、自动控制器、通信模块、移动计算机、移动车辆的车载计算机、无线组件、控制组件等。计算机和服务器包括一个或更多个处理器——执行采用电信号的逻辑操作的电子集成电路——被配置成执行存储在介质例如随机存取存储器(RAM)、只读存储器(ROM)、硬驱动设备以及可移动存储器件中的指令,所述可移动存储设备可以包括记忆棒、存储卡、闪存驱动、外部硬驱动设备等。
[0083] 相似地,术语PLC或在本文中使用的自动控制器可以包括被跨多个组件、系统和/或网络共享的功能体。例如。一个或更多个PLC或自动控制器可以与跨网络的各个网络设备进行通信和配合。这可以基本上包括经由网络进行通信的任何类型的控制模块、通信模块、计算机、输入/输出(I/O)设备、传感器、致动器以及人机界面(HMI),该网络包括控制网络、自动网络和/或公共网络。PLC或自动控制器还可以与各种其它设备通信并控制它们,所述各种其它设备包括:标准或安全额定I/O模块例如模拟模块、数字模块、编程/智能I/O模块;其它可编程控制器;通信模块;传感器;致动器;输出设备等。
[0084] 网络可以包括公共网络如互联网、内联网和自动化网络诸如控制和信息协议(CIP)网络,其包括设备网(DeviceNet)、控制网(ControlNet)和以太网/IP。其它网络包括以太网、DH/DH+、远程I/O、现场总线、Modbus、Profibus、CAN、无线网络、串行协议等。另外,网络设备可以包括各种可能性(硬件和/或软件组件)。这些包括诸如具有虚拟局域网
(VLAN)能力的交换机、LAN、WAN、代理、网关、路由器、防火墙、虚拟专用网(VPN)设备、服务器、客户机、计算机、配置工具、监视工具和/或其它设备的组件。
[0085] 为了提供所公开的主题的各种方面的上下文,图13和图14以及下面的讨论意在提供可以实现所公开的主题的各种方面的适当的环境的简要的概括的描述。
[0086] 参照图13,用于实现上述主题的各方面的示例环境1310包括计算机1312。计算机1312包括处理单元1314、系统存储器1316和系统总线1318。系统总线1318将系统组件(包括但不限于系统存储器1316)耦接至处理单元1314。处理单元1314可以是各种可用处理器中的任一种。多核微处理器和其它多处理器架构也可以用作处理单元1314。
[0087] 系统总线1318可以是使用任何各种可用总线架构的若干类型的总线结构中的任何一种,包括存储器总线或存储器控制器、外围总线或外部总线、和/或局部总线,其中上述各种可用总线架构包括但不限于:8位总线、工业标准架构(ISA)、微通道架构(MSA)、扩展ISA(EISA)、智能驱动电子设备(IDE)、VESA局部总线(VLB)、外围组件互连(PCI)、通用串行总线(USB)、高级图形端口(AGP)、个人计算机存储卡国际协会总线(PCMCIA)和小型计算机系统接口(SCSI)。
[0088] 系统存储器1316包括易失性存储器1320和非易失性存储器1322。基本输入/输出系统(BIOS)被存储在非易失性存储器1322中,基本输入/输出系统(BIOS)包含基本例程以诸如在启动期间在计算机1312中的元件之间传送信息。通过说明而非限制的方式,非易失性存储器1322可以包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除PROM(EEPROM)或闪速存储器。易失性存储器1520包括充当外部高速缓存存储器的随机存取存储器(RAM)。通过说明而非限制的方式,RAM以多种形式可用,例如同步RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双倍数据速率SDRAM(DDR SDRAM)、增强型SDRAM(ESDRAM)、同步链路DRAM(SLDRAM)和直接总线式RAM(DRRAM)。
[0089] 计算机1312还包括可移除/不可移除、易失性/非易失性计算机存储介质。图13示出了例如盘存储装置1324。盘存储装置1324包括但不限于如磁盘驱动器、软盘驱动器、磁带驱动器、Jaz驱动器、Zip驱动器、LS-100驱动器、闪速存储卡或记忆棒那样的装置。另外,盘存储装置1324可以单独地或与其它存储介质组合地包括存储介质,存储介质包括但不限于光盘驱动器,如致密盘ROM装置(CD-ROM)、CD可记录驱动器(CD-R驱动器)、CD可重写驱动器(CD-RW驱动器)或数字多功能盘ROM驱动器(DVD-ROM)。为了便于盘存储装置1324连接至系统总线1318,通常使用可移除或不可移除接口,如接口1126。
[0090] 应当理解的是,图13描述了充当用户与在适当的操作环境1310中描述的基本计算机资源之间的媒介的软件。这样的软件包括操作系统1328。可以被存储在盘存储装置1324上的操作系统1328用于控制和分配计算机1312的资源。系统应用1330通过存储在系统存储器1316或盘存储装置1324中的程序模块1332和程序数据1334利用操作系统1328进行的资源的管理。应当理解的是,可以通过各种操作系统或操作系统的组合来实现本公开内容的一个或更多个实施例。
[0091] 用户通过输入设备1336将命令或信息输入计算机1312。输入设备1336包括但不限于诸如鼠标的指向装置、跟踪球、触控笔、触摸板、键盘、麦克风、操纵杆、游戏板、卫星碟、扫描仪、TV调谐卡、数码照相机、数码摄像机、网络摄像机等。这些和其它输入设备通过系统总线1318经由接口端口1338连接至处理单元1314。接口端口1338包括例如串行端口、并行端口、游戏端口和通用串行总线(USB)。输出装置1340使用与输入设备1336相同类型的端口中的一些。因而,例如,USB端口可以用于向计算机1312提供输入,并且从计算机1312向输出装置1340输出信息。提供输出适配器1342以说明存在需要特殊适配器的一些输出装置1340如监视器、扬声器、打印机,以及其它输出装置1340。通过说明而非限制的方式,输出适配器1342包括提供输出装置1340和系统总线1318之间的连接方式的显卡和声卡。应当注意的是,其它装置和/或装置的系统提供输入和输出能力二者,如远程计算机1344。
[0092] 计算机1312可以使用到一个或更多远程计算机如远程计算机1344的逻辑连接在网络化环境中操作。远程计算机1344可以是个人计算机、服务器、路由器、网络PC、工作站、基于微处理器的装置、对等装置或其它常见的网络节点等,并且通常包括关于计算机1312描述的元件中的许多或全部。出于简明的目的,在远程计算机1344中仅示出了记忆存储装置1346。远程计算机1344通过网络接口1348逻辑上连接至计算机1312并且然后经由通信连接1350物理上连接。网络接口1348包括通信网络,例如局域网(LAN)和广域网(WAN)。LAN技术包括光纤分布式数据接口(FDDI)、铜分布式数据接口(CDDI)、以太网/IEEE802.3、令牌环/IEEE 802.5等。WAN技术包括但不限于点对点链路、电路交换网如集成综合业务数字网(ISDN)及其变型、分组交换网络和数字用户线(DSL)。
[0093] 通信连接1350指代用于将网络接口1348连接至系统总线1318的硬件/软件。虽然为了清楚说明通信连接1350被示出在计算机1312内部,其也可以在计算机1312外部。仅用于示例性目的,与网络接口1348的连接所需要的硬件/软件包括内部和外部技术,例如调制解调器(包括普通的电话级调制解调器、线缆调制解调器和DSL调制解调器)、ISDN适配器和以太网卡。
[0094] 图14是可以与所公开的主题进行交互的示例计算环境1400的示意性框图。该示例计算环境1400包括一个或更多个客户端1402。客户端1402可以是硬件和/或软件(例如,线程、处理、计算设备)。示例计算环境1400还包括一个或更多个服务器1404。服务器1404也可以是硬件和/或软件(例如,线程、处理、计算设备)。例如,服务器1404可以容置线程,以通过采用本文中所描述的一个或更多实施例来执行转换。客户端1402与服务器1404之间的一个可能的通信可以是适于在两个或更多个计算机处理之间传输的数据包的形式。示例计算环境1400包括可用于便于客户端1402与服务器1404之间的通信的通信框架1406。客户端1402可操作地连接至可用于存储客户端1402的本地信息的一个或更多个客户端数据存储装置1408。类似地,服务器1404可操作地连接至可用于存储服务器1404的本地信息的一个或更多个服务器数据存储装置1410。
[0095] 上述内容包括本创新的示例。当然,不可能为了描述所公开的主题而描述组件或者方法的每种可想到的组合,然而,本领域技术人员可以认识到,本创新的很多另外的组合和置换都是可能的。因而,所公开的主题意在包括落入所附权利要求的精神和范围内的所有这样的替选、修改和变化。
[0096] 具体地,关于由上述组件、装置、电路、系统等执行的各种功能,除非另行指出,用于描述这样的组件的术语(包括提及的“装置”)意在对应于执行所述组件的具体功能的任意组件(例如,功能等同),即使该组件结构上不等同于所公开的结构,但执行所公开的主题的本文所说明的示例性方面中的功能。关于这点,还将认识到,所公开的主题包括系统以及具有计算机可执行指令的计算机可读介质,这些计算机可执行指令用于执行所公开的主题的各种方法的动作和/或事件。
[0097] 此外,虽然可能仅关于若干实现中的一个实现公开了所公开的主题的具体特征,然而,如果对于任意给定或特定应用是期望的且有利的,则这样的特征可以与其它实现的一个或更多个其它特征组合。此外,就具体实施例或权利要求中使用用语“包括(includes/including)”及其变体而言,这些用语意在与用语“包括(comprising)”相类似的方式是包容性的(inclusive)。
[0098] 在本申请中,词语“示例性”用于表示用作示例、实例或图示。本文中描述为“示例性”的任意方面或设计不一定被理解为相比于其它方面或设计是优选的或有利的。而是,词语“示例性”的使用意在以具体的方式表示概念。
[0099] 本文中所描述的各种方面或特征可以实现为方法、设备、或使用标准编程和/或工程技术的制造物。本文中所使用的用语“制造物”意在包括能够从任意计算机可读装置、载体或介质访问的计算机程序。例如,计算机可读介质可以包括但不限于磁存储装置(例如,硬盘、软盘、磁条……)、光盘(例如,致密盘(CD)、数字多功能盘(DVD)……)、智能卡和闪速存储装置(例如,卡、棒、键驱动器……)。