用于标识所定义的对象的系统
相关申请的交叉引用
本申请要求2017年2月9日提交的澳大利亚临时专利申请号2017900403的优先权,其内容通过引用并入本文。
技术领域
本公开一般涉及用于标识预定义的对象的系统和方法。特别地,本公开涉及关于利用传感器检测对象、并确认检测到的对象是否是所定义的对象的系统和方法。
背景技术
在许多场景下,快速标识所定义的对象以提示要采取的动作很有用。例如,在建筑工地上,工人和高价值设备在使用中经常有被损坏的危险,这可能导致伤害、死亡和/或产生大量成本。为了减轻这种危险,可以雇用人作为“监视器(spotter)”来手动标识高风险情形并激活警报以防止损坏和/或伤害。类似地,高价值资产的存储地点通常仅由授权人员访问,因此需要安全应用和/或装置来确认是否授权试图访问该地点的人这样做。这可以通过生物认证来实现,例如,确认该人是否具有与先前存储的授权人的指纹图像相对应的指纹。
用于标识对象的自动化系统是已知的,并且被采用用于一系列不同的目的。这种系统的一个示例在美国专利号8,588,527中描述,其涉及标识由配备相机的智能电话捕获的图像中示出的对象,并导出与该对象相关的搜索项,从而允许使用搜索项生成和执行搜索查询,以标识与所标识的对象相关的信息。虽然该系统似乎是用于标识对象的有效工具,但实际上,这种系统经常失败或不准确地标识对象,因为系统有效操作所必需的操作条件通常是非常严格的。例如,相机相对于对象的取向和/或位置、和/或靠近对象的照明或其他环境条件可以显著影响系统的准确度。
此外,相关的现有技术方案通常需要复杂且昂贵的设备,例如多个传感器和计算机处理器,以实现准确的结果。
本说明书中包括的文件、动作、材料、装置、物品等的任何讨论不应被视为承认任何或所有这些事项(matters)形成与本公开相关的领域中的公知常识的一部分,因为它存在于本申请的每项权利要求的优先权日之前。
发明内容
根据一些公开的实施例,提供了一种用于标识定义的对象的系统。该系统包括至少一个传感器,被配置为检测数据以定义对象的数字表示;处理器,通信地连接到所述至少一个传感器,所述处理器被配置为执行至少两种技术,每种技术被配置为标识由所述定义的对象定义的签名;和存储器,通信地连接到该处理器,该存储器存储与至少两个签名相关的参考数据,所述至少两个签名分别通过所述至少两种技术导出。该处理器被配置为使得响应于该处理器从所述至少一个传感器接收定义数字表示的数据,该处理器执行至少两种技术,促使每种技术:评估该数字表示以标识由对象定义的任何签名候选,从每个标识的签名候选中导出特征数据,将特征数据与参考数据进行比较,和从每一比较中导出似然值,每一似然值指示与相应签名对应的签名候选的可能性。该处理器然后组合至少一些似然值以导出复合似然值,并从复合似然值确定数字表示中的对象是否是定义的对象。
所述处理器还可以被配置为使得响应于确定所述数字表示中的对象是所定义的对象,所述处理器将从中导出所述至少一些似然值的特征数据添加到所述参考数据。
系统可以包括用户界面,并且响应于确定所述数字表示中的对象是所定义的对象,所述处理器可以被配置为操作所述用户界面以获得用户输入,以确认所述对象是所定义的对象,并且响应于用户输入,所述处理器将从中导出所述至少一些似然值的特征数据添加到参考数据。这还可以涉及,所述处理器被配置为操作所述用户界面以获得用户输入以确认指示所述数字表示中的所述对象是所定义的对象的一个或多个指示符,并且其中响应于所述用户输入,所述处理器从一个或多个确认的指示符导出指示符数据,并将指示符数据添加到参考数据。所述一个或多个指示符可以包括与所述数字表示中的所述对象相关联的上下文因素。
当系统包括用户界面时,响应于确定所述数字表示中的对象是所定义的对象,所述处理器可以被配置为操作所述用户界面以获得用户输入以定义系统将要执行的一个或多个动作,并且响应于用户输入,该处理器:从一个或多个定义的动作中导出指令;执行指令;并且将指令存储在存储器中以便响应于随后确定数字表示中的对象是所定义的对象而执行。
该系统可包括警报装置,被配置为发出可辨别的警报,并且其中所述处理器还被配置为使得响应于确定所述数字表示中的对象是所定义的对象,所述处理器操作该警报装置。所述警报装置可以被配置为以下的一个或多个:要由用户佩戴的可穿戴装置;设备的触觉组件;和用于控制设备的操作的控制器,并且操作所述警报装置实现所述设备的控制。
该系统可包括多个传感器,并且所述多个传感器中的每一个通信地连接到其他传感器并且连接到所述处理器。这可涉及每个传感器具有用于控制所述传感器的操作的控制器,并且所述多个传感器之间的通信促使所述控制器中的至少一个的操作实现对相应传感器的控制。而且,所述数字表示可包括由所述多个传感器中的一个以上传感器检测到的数据。
每个签名可包括特定特征数据。
每种技术可以从所定义的对象导出不同的签名。
所述签名中的至少一个可以由以下中的至少一个定义:所定义的对象的属性;由所定义的对象定义的几何结构;所定义的对象的行为;以及与所定义的对象相关联的一个或多个上下文因素。所定义的对象的行为包括以下中的一个或多个:所定义的对象的移动;所定义的对象的不活动;所定义的对象和另一对象的相对移动;以及响应刺激的所定义的对象的响应。
与所定义的对象相关联的一个或多个上下文因素可包括:所定义的对象的本地当日时间;所定义的对象的本地环境条件;所定义的对象的本地天气;一个或多个对象相对于所定义的对象的位置;所定义的对象本地的一个或多个对象的行为;和所定义的对象的操作参数。
至少一个所标识的签名候选可以由以下中的至少一个来定义:对象的属性;由对象定义的几何结构;对象的行为;以及与该对象相关联的一个或多个上下文因素。
所述至少两种技术可以被配置为互补的。这可以涉及所述至少两种技术从一系列不同技术中选择,用于由所述处理器执行。
对于每种技术,处理器可以被训练为从暴露于预定训练数据导出特征数据,并且存储从预定训练数据导出的特征数据作为参考数据。
所述预定训练数据可包括多个数字表示,其中所述多个数字表示中的仅一些包括所定义的对象,并且被标记以确认所定义的对象的存在,并且其中所述处理器被配置为仅存储从标记的数字表示导出的特征数据作为参考数据。所述预定训练数据通过由用户标记包括所定义的对象的每个数字表示来手动配置。
对于每种技术,暴露于预定训练数据可促使该处理器学习在每个标记数字表示中定义的一个或多个公共元素,并且响应于一个或多个公共元素导出签名。
所述参考数据可定义特征数据方差分布,并且所述似然值可以是通过将所述特征数据与所述特征方差分布进行比较而导出的。
每种技术可以与相应的特征数据方差分布相关联。每种技术可以将相应的特征方差分布定义为概率分布函数,并且通过将特征数据与概率分布函数进行比较来导出似然值。
所述特征方差分布可定义高斯曲线,并且通过确定所述特征数据相对于所述高斯曲线的位置来导出似然值。作为选择或附加地,所述特征方差分布可定义由多个高斯曲线形成的云,并且通过确定所述特征数据相对于所述密度云的最大密度区域的接近度,来导出似然值。
所述处理器可被配置为执行至少一种辅助技术,并且响应于所述处理器从所述至少两种技术中的每一种导出似然值,所述处理器可执行所述辅助技术,促使所述辅助技术比较由至少一些技术导出的至少一个似然值以导出又一似然值,并且其中将所述又一似然值与至少一个其他似然值组合以导出复合值。所述似然值的比较可包括确定所比较的似然值之间的相关性。所述存储器可存储与预定的比较的似然值相关的比较参考数据,并且所述似然值的比较可包括将所述似然值与所述比较参考数据进行比较,以导出所述又一似然值。
导出所述复合似然值可包括:将通过执行所述技术之一导出的至少一个似然值与通过执行所述技术中的另一技术所导出的至少一个似然值进行组合。
所述存储器可存储与预定复合似然值相关的复合参考数据,并且确定所述数字表示中的对象是否是所定义的对象可包括:将所述复合似然值与所述复合参考数据进行比较,以导出置信度值,并且基于该置信度值确定数字表示中的对象是否是所定义的对象。
所述复合参考数据可以被定义为概率分布函数,并且所述置信度值是通过将所述复合似然值与所述概率分布函数进行比较而导出的。所述概率分布函数可定义高斯曲线,并且所述置信度值是通过确定所述复合似然值相对于所述高斯曲线的位置而导出的。
组合所述似然值可包括对通过每种技术导出的至少一个似然值进行顺序相乘。
每种技术可包括算法和分类符中的至少一种。
所述特征数据可定义特征向量。
所述数字表示可包括至少一个图像。可根据RGB颜色模型定义所述至少一个图像。所述传感器可包括至少一个相机。
根据其他公开的实施例,提供了一种用于标识所定义的风险的系统。该系统包括:至少一个传感器,被配置为检测数据以定义场景的数字表示;处理器,通信地连接到所述至少一个传感器,所述处理器被配置为执行至少两种技术,每种技术被配置为标识由所定义的风险定义的签名;和存储器,通信地连接到该处理器,该存储器存储与至少两个签名相关的参考数据,所述至少两个签名分别通过至少两种技术导出。该处理器被配置为使得响应于该处理器从所述至少一个传感器接收定义数字表示的数据,该处理器执行至少两种技术,促使每种技术:评估该数字表示以标识由该场景定义的任何签名候选,从每个标识的签名候选中导出特征数据,将特征数据与参考数据进行比较,和从每一比较中导出似然值,每一似然值指示与相应签名对应的签名候选的可能性。该处理器然后组合至少一些似然值以导出复合似然值,并从复合似然值确定数字表示中的场景是否是所定义的风险。
根据其他公开的实施例,提供了一种用于标识所定义的对象的方法。该方法包括:利用至少一个传感器检测数据以定义对象的数字表示;将数字表示数据提供给处理器,并由处理器执行至少两种技术,促使每种技术:评估该数字表示以标识由对象定义的任何签名候选,从每个标识的签名候选中导出特征数据,将特征数据与参考数据进行比较,该参考数据与由所定义的对象定义、并由该技术导出的签名相关,从每一比较中导出似然值,每一似然值指示与该签名对应的签名候选的可能性,该处理器组合至少一些似然值以导出复合似然值,和该处理器从复合值确定数字表示中的对象是否是所定义的对象。
该方法可涉及响应于确定所述数字表示中的所述对象是所定义的对象,所述处理器将从中导出所述至少一些似然值的特征数据添加到所述参考数据。
该方法可涉及响应于确定数字表示中的对象是所定义的对象,该处理器操作用户界面以获得用户输入,以确认对象是所定义的对象,并且响应于用户输入,该处理器将从中导出所述至少一些似然值的特征数据添加到所述参考数据。在该场景中,该方法还可以涉及:所述处理器操作所述用户界面以获得用户输入,以确认指示所述数字表示中的所述对象是所定义的对象的一个或多个指示符,并且响应于所述用户输入,该处理器从一个或多个确认的指示符导出指示符数据,并将指示符数据添加到参考数据。所述一个或多个指示符可包括与所述数字表示中的对象相关联的上下文因素。
该方法可涉及响应于确定所述数字表示中的所述对象是所定义的对象,所述处理器操作用户界面以获得用户输入以定义要由系统执行的一个或多个动作,并且响应于用户输入,所述处理器从一个或多个定义的动作导出指令,执行指令,并且将指令存储在存储器中,以便响应于随后确定数字表示中的对象是所定义的对象而执行。
该方法可涉及响应于确定所述数字表示中的对象是所定义的对象,所述处理器操作被配置为发出可辨别的警报的警报装置。
该方法可涉及通过将执行所述技术的处理器暴露于预定训练数据来训练每种技术,并且所述处理器从所述预定训练数据导出特征数据,并存储所导出的特征数据作为参考数据。所述预定训练数据可包括多个数字表示,其中所述多个数字表示中的仅一些包括所定义的对象,并且被标记为确认所定义的对象的存在,并且其中处理器存储仅从标记的数字表示导出的特征数据作为参考数据。将执行所述技术的处理器暴露于所述预定训练数据促使所述处理器学习在每个标记的数字表示中定义的一个或多个公共元素,并且响应于所述一个或多个公共元素来导出所述签名。
所述处理器导出所述复合似然值可涉及:将通过执行所述技术之一导出的至少一个似然值与通过执行另一技术导出的至少一个似然值组合。
所述存储器可存储与预定复合似然值相关的复合参考数据,并且确定所述数字表示中的对象是否是所定义的对象可包括:所述处理器比较所述复合似然值与复合参考数据的以导出置信度值,并且基于该置信度值确定数字表示中的对象是否是所定义的对象。
在本说明书的上下文中,应当理解,在适当的情况下,术语对象可与术语风险互换,因为所公开的系统和方法可以容易地改编以标识定义的风险或定义的对象。风险将被理解为意味着危险或威胁。类似地,数字表示可以定义检测到的对象或检测到的场景,因此在适当的情况下,术语对象和场景是可互换的。
技术将被理解为意指包括通常被配置为处理数据的算法、和通常被配置为基于现有参考数据对处理后的数据进行判断的分类符中的至少一个的方法或处理。通常,技术包括算法和分类符,并且可以包括多个算法。
签名将被理解为意指由定义的对象定义或与定义的对象相关联的一个或多个特性。签名可以包括由对象定义的几何结构中的一个或多个,诸如由对象的一部分定义的维度比、对象的行为(诸如移动或不动作)、以及与对象相关联的上下文因素(诸如环境条件)。在某些场景中,签名将包括几何结构、行为和上下文参数。
在整个说明书中,词语“包括”或诸如“包括”或“包含”的变体将被理解为暗示包括所阐明的元素、整数或步骤、或元素、整数或步骤的组,但不排除任何其他元素、整数或步骤、或元素、整数或步骤的组。
应当理解,实施例可包括本文公开的或本申请的说明书中个别或共同指出的步骤、特征和/或整数、以及两个或更多所述步骤或特征的任何和所有组合。
附图说明
现在将仅参考附图以示例的方式描述实施例,其中:
图1A是用于标识作为人的定义的对象的系统的实施例的图;
图1B是图1A中所示系统的变型,包括传感器的替代布置和配置;
图1C和1D示出了警报装置的各种实施例,该警报装置是手表、耳机、操纵杆和监视器;
图2是用于训练图1所示系统以标识所定义的对象的训练过程的图;
图3A是说明图1所示系统的操作的流程图;
图3B是说明图1所示系统的操作的替代方面的流程图;
图3C是说明图1所示系统的操作的另一替代方面的流程图;
图4是图1所示系统在操作期间的屏幕截图;
图5是说明图1所示系统的操作的替代方面的流程图;
图6A和6B是说明图1中所示系统的组件的图;
图7是说明连接在一起以配置系统的图1所示系统的组件的图;
图8是说明添加到系统以使系统适应不同目的的附加组件的图;
图9是说明基于几何结构的签名的图;
图10是说明基于移动的签名的图;和
图11是示出基于行为的签名的图。
具体实施方式
在附图中,附图标记10通常表示用于标识定义的对象的系统10。系统10包括:至少一个传感器12,其被配置为检测数据以定义对象14的数字表示,处理器18,其通信地连接到至少一个传感器12,处理器18被配置为执行至少两种技术,每种技术被配置为标识由所定义的对象定义的签名,以及存储器22,通信地连接到处理器18,存储器22存储与通过至少两种技术分别导出的至少两个签名相关的参考数据。响应于处理器18从定义数字表示的至少一个传感器12接收数据,处理器18执行至少两种技术,促使每种技术评估数字表示以标识由对象14定义的任何签名候选,从每个标识的签名候选导出特征数据,将特征数据与参考数据进行比较,并从每一比较中导出似然值,每一似然值指示签名候选与相应签名相对应的可能性。然后,处理器18组合至少一些似然值以导出复合似然值,并根据复合似然值确定数字表示中的对象14是否是定义的对象。
图1A示出了系统10的实施例。在所示的实施例中,所定义的对象是人。系统10包括至少一个传感器,在该实施例中配置为相机12,用于检测数据以定义检测到的对象(在该实施例中是人14)的数字表示。相机12(通常是无线地)通信地耦合到服务器16,服务器16包括处理器18、程序存储器20和数据储存器,诸如数据库存储器22。处理器18、程序存储器20和数据库存储器22可通信地彼此连接。服务器16还通常无线地通信地耦合到用户界面24和警报装置26,该警报装置26被配置为提供可辨别的警报。
传感器在图1A中被图示为相机12,其被配置为根据红-绿-蓝(RGB)颜色模型将数字表示定义为图像(或形成视频连续镜头(footage)的连续图像的集合),并且在一些实施例中,也定义了深度。然而,应当理解,传感器12可以被配置为包括能够检测数据以定义数字表示的一种或多种其他形式,例如,接近传感器、声纳系统、压力垫阵列、超声换能器阵列、激光雷达等。以这种方式,传感器12不限于检测一种数据格式,从而允许对象14的数字表示包括多种不同的数据格式。例如,相机12可以与接近和运动传感器相关联,这意味着数字表示由与对象14的几何结构相关的数据、与对象14的移动(包括移动方向)相关的数据、以及与对象14相对于一个或多个参考点接近相关的数据形成。因此将理解,系统10可包括多个传感器12,无论是相同类型还是不同类型的传感器12的组合。
图1B示出了系统10的另一实施例,其中公共的附图标记表示公共的特征,系统10包括配置为多个相机12的多个传感器。相机12通信地连接以形成传感器12的网络或网格。这涉及每个相机12被配置为与处理器18和至少一些其他相机12通信,从而允许通过减少感测操作中的冗余来增强感测的灵敏度/准确度。每个相机12包括用于控制相机12的操作的控制器。在一些场景中,在相机12之间传递的信号促使至少一个控制器的操作实现对相应相机12的控制。例如,在两个相机12之间传递的信号促使相机12中的一个调整其焦点以拓宽其视野。
相机12彼此通信以及相机12与处理器18的通信通过根据标准化通信协议配置每个相机12来实现,其中许多示例是已知的并且不必在本说明书中描述。这意味着定制(bespoke)传感器(例如专门为系统10配置的相机12)以及不必根据系统10配置的通用传感器(诸如OEM或其他第三方装置)可以被配置为彼此通信以及与处理器18通信。因此,这增加了系统10的使用范围,因为可以配置多个相似和/或不同的传感器以形成互连的传感器网格。
在图1B所示的实施例中,多个相机12被布置为使得每个相机12的视场与一个或多个其他相机12的视场重叠。在这种布置中,相机12之间的通信确保:如果一个相机12不能检测到对象14,例如,由于视野被卡车13遮挡,则其他相机12检测到的数据由处理器18组合以形成对象14的数字表示。
应当理解,图1B中所示的实施例是包括传感器12的网络网格的系统10的一个示例,并且系统10可替代地被配置为包括不同的传感器12,其包括不同类型的传感器12的组合。例如,传感器12可以替代地被配置为多个接近传感器12,并且联网以彼此通信,以确保对象14的连续检测(累积感测)减少冗余。例如,这可以涉及第一接近传感器12,其记录由于对象14快速移动经过传感器12而导致的对象14的部分检测,促使第一传感器12与其他本地接近传感器12通信以准备其他传感器12来检测接近的对象14。然后,处理器18组合由其他传感器12检测的数据,以形成对象14的数字表示。
在系统10的一些实施例中,形成对象14的数字表示的数据由上下文数据增强,所述上下文数据由其他传感器(未示出)直接检测和/或通过从数据库或数据馈送检索而间接检测。上下文数据通常包括与对象14所处的环境相关的数据,其包括该环境中的一天中的时间、和/或对象14的行为、和/或与对象14相关联或布置在对象14附近的其他对象的行为。。
例如,上下文数据可以包括与对象14相关联的本地天气信息,例如风速、风向和/或湿度,以使系统10能够检测对象14居住的上下文。可以例如通过布置在对象14附近的压力和湿度传感器直接检测天气信息,和/或可以例如从气象局网站发布的并经由因特网检索的天气信息间接检测天气信息。该上下文信息还可以包括历史上下文数据,例如历史本地天气条件,以增强对象14的上下文化。
可选地或另外地,上下文数据可以包括本地行为相关信息,例如一个或多个对象的静态或动态位置,例如,起重机移动的速度和方向、和/或两个或更多对象的相对位置,例如,起重机与电力线的接近度。
应当理解,对象14的上下文化不限于评估本地环境和行为条件,并且系统10可以检测、监视和/或解释许多其他因素。例如,在检测到的对象是机器的情况下,其可以涉及监视机器的一个或多个组件的功能状态、将机器与机器的数字模型进行比较、查看质量保证信息、查看缺陷信息、查看与这些因素中的任何因素相关的历史数据等。
服务器16可以布置在对象14本地,例如,实施在个人计算装置(例如膝上型计算机或平板计算机)中,或服务器16可以布置为远离对象14并且经由因特网访问。当服务器16实施为本地个人计算装置时,该装置还可以提供用户界面24和/或警报装置26。可以理解,服务器16的组件,例如数据库存储器22,可以远离服务器16的其他组件定位,并经由因特网访问(称为“云计算”或“边缘计算”)。
程序存储器20与处理器18通信耦合并存储指令集,当由处理器18执行时,该指令集促使执行对象标识技术。下面更详细地讨论各种对象标识技术。作为选择,每种技术的指令可以嵌入在处理器18中或嵌入在其他适当形式中,例如计算机可读存储介质(例如,非瞬时存储介质)。应当理解,虽然讨论了单个处理器18,但是处理器18可以包括多个处理器以增强计算效率。
在图1A和1B中作为数据库存储器22示出的数据储存器与处理器18通信地耦合,并存储与由所定义的对象定义的一个或多个签名相关的参考数据。每种技术通过响应于一个或多个训练过程和/或反馈数据来导出签名,并且在下面更详细地讨论。
在图1A所示的实施例中,通过操作平板计算机来提供用户界面24,因为这便于在一系列不同的环境中使用。应当理解,其他个人计算装置,例如膝上型计算机、智能电话、平板手机等也是合适的。用户界面24通常显示由传感器检测的数字表示,在所示实施例中是由相机12记录的RGB图像,并且当检测到的对象14由处理器18确定为定义的对象时,用户界面24显示或发出通知。在一些实施例中,用户界面24还包括警报装置26。
通过界面24显示或发出通知可以涉及促使SMS消息、电子邮件消息或推送通知被发送到用户的装置,例如执行用户界面24的平板电脑或用户的智能电话,以向用户通知接近传感器12的所定义的对象的存在。通知通常被配置为提示用户采取动作。例如,通知可以警告用户在受限制的访问区域中存在未授权的对象,例如人,并提示用户从该区域中删除未授权的对象。
在图1A所示的实施例中,处理器18与警报装置26通信,该警报装置26在该实施例中被配置为声音警报器26,并且系统10被配置为响应于将对象14标识为定义的对象而操作警报器26。例如,这种布置在建筑工地或工厂中是有用的,其中系统10被配置成使得对定义的对象14的检测被定义为紧急情况。在这种场景中,对定义的对象14的检测使得警报器26的操作清楚地向用户/工人传达紧迫危险。
警报装置26可以实施在各种实施例中,并且通常被配置为提供适当且特定的刺激以引起用户要执行的特定动作。如图1C所示,在一些实施例中,警报装置26被实施为可穿戴装置,在所示实施例中是手镯/手表27和耳机29,两者都被配置为通过振动、发光和发声中的一个或多个向佩戴者传达通知。或者,警报装置可以配置为臂带、眼镜、帽子/头盔等。
可穿戴装置实施和通信方法通常响应于警报装置26的使用环境而配置。例如,可穿戴装置26将由在建筑工地中驾驶车辆的用户使用,其通常是嘈杂且明亮的有色环境,装置26被配置为仅经由振动进行通信,并且佩戴在与振动的车辆组件(例如方向盘)间隔开的地点,并因此实施在佩戴在用户颈部周围的吊坠中、或者保护头盔的头带中。
在一些实施例中,系统10被配置为使得处理器18对通知进行分类/优先级排序,例如相对于预定义的风险等级,并且通知由警报装置26根据分类传递到用户。例如,在通知被归类为低风险的情况下,例如由于车辆被处理器18确定为在边界的5米内,装置26发出低频振动脉冲。或者,在通知被归类为高风险的情况下,例如由于处理器18确定车辆在边界1米内,装置26发出高频振动脉冲和声音。应当理解,警报装置26还可以被配置为响应于接收通知而改变振动模式,这允许向用户进行通知的连续通信以及每个通知的分类。
如图1D所示,在其他实施例中,警报装置26实施为设备或车辆的触觉组件,在所示的实施例中是操纵杆35,其配置为在生成通知时发出振动模式。或者,警报装置26可以嵌入其他控制外围设备中,例如踏板、控制杆或方向盘。进一步可选地或另外地,警报装置26被配置为连接到操作员视线内的设备或车辆的可见信标,在所示实施例中是显示监视器37。
替代地或另外地,警报装置26可以被配置为或通信地连接到控制模块,该控制模块被配置为使设备或车辆(例如挖掘机)的操作自动化。例如,生成通知可以促使警报装置26操作控制模块以立即停止或以其他方式影响挖掘机的操作,例如防止铲斗移动。
图2图示了训练过程30的各个阶段,用于训练由处理器18执行的对象标识技术之一,以标识定义的对象,该对象在图2所示的示例中再次是人34。训练过程30涉及机器学习过程,并且通常在系统10的操作之前、对于处理器18被配置执行的每个对象标识技术执行至少一次。这允许每种技术学习由定义的对象定义的签名,并生成参考数据。参考数据包括从签名的变化导出的一系列特征数据,其中每种技术被暴露并学习标识。
最初,在31处,训练过程30涉及将执行对象标识技术的处理器18暴露于一系列训练数据32,由此仅训练数据32的子集33定义所定义的对象,并确认数据的哪个部分是包括定义的对象的子集33。通常,这涉及用户通过整理(collating)描绘不同场景的多个数字表示、并且标记描绘所定义的对象的每个表示,来手动配置训练数据32,从而允许该技术从标签确认训练数据的哪个部分包括定义的对象,并因此从该部分训练数据中导出签名。以这种方式,该技术学习相关数字表示中的(多个)特定公共元素,该技术确定该公共元素定义所定义的对象的签名。
例如,在技术被配置为标识在图像中定义的常见形状的向量的情况下,处理器18通过执行该技术而倾向于学习所定义的对象(人34)的签名是基于几何结构的签名,例如由人34的至少一部分限定的向量,例如,头肩接口。在这种场景中,用户准备示出了各种人34的头肩接口的许多摄影图像、以及没有示出任何人的许多摄影图像,并根据人34(定义的对象)的存在或不存在来标记图像。通常通过选择高度可区分的图像来增强该过程,例如,一些图像示出在普通白色背景前的单个人34的头部和肩部轮廓,而其他图像示出在普通白色背景前的其他对象(例如驴)。可选地或另外地,这可以涉及准备成对的图像,其中这对图像中的一个描绘不包括人34的场景,例如建筑工地,并且该对图像中的另一个描绘相同的场景而且包括人34的头部和肩部轮廓。
或者,在技术被配置为标识视频连续镜头中的运动路径的情况下,执行该技术的处理器18倾向于将所定义的对象的签名学习为基于行为的签名,例如由移动的人34的至少一部分定义的相对运动,例如,人34的步态,以及由移动的另一对象的至少一部分定义的运动,例如移动的挖掘机铲斗。在这种场景中,用户准备在移动机械附近行走的人34的多个视频、以及远离移动机械安全距离行走的人34的多个视频、并在风险情况下标记定义人34的视频(定义的对象)。
进一步可选地,在上述实施例中,执行该技术的处理器18倾向于将所定义的对象的签名学习为基于行为的签名,该签名可以至少部分地基于由数字表示定义的上下文信息来导出。例如,在这种场景中,用户准备位于多风环境中的人34的多个视频,其中诸如树的对象由于风(定义上下文数据)而移动,并且其中布置有松散的对象(也定义上下文数据)、和位于静止环境中的人34的视频数量,并在风险情况下标记定义人34的视频(定义的对象)。
这些方案允许相应的技术区分标记的训练数据33中的一个或多个公共元素,其定义了所定义的对象的签名。响应于在31处提供给处理器18的训练数据32,执行该技术的处理器18开始分析数据以学习由定义签名的数据定义的公共元素,并因此指示所定义的对象的存在。这通常涉及处理器18执行每个数字表示的三阶段分析,以确定该表示是否包括签名。
第一分析阶段36涉及评估数字表示以标识潜在的签名候选,即,可能是签名或其一部分的数字表示的任何方面。这通常涉及数字表示的分段,以标识符合定义的参数的表示的任何方面。这通常通过扫描数字表示并标识所有签名候选361、362、363的分段算法来进行。例如,这可以涉及粗略几何扫描以标识由表示定义的任何几何体,其适合于限定的几何边界,并且将相关几何结构标识为签名候选361、362、363。可选地或另外地,这可以涉及粗略行为扫描,诸如分析运动路径和/或上下文扫描,诸如直接和/或间接分析有来源的上下文信息,以标识相关因素作为签名候选361、362、363。
第二分析阶段38涉及从每个标识的签名候选导出特征数据。这通常通过特征提取算法来进行,以生成签名候选特征的数值表示(特征向量)。例如,这可以涉及从由签名候选定义的至少两个几何维度导出比率。
第三分析阶段40涉及咨询已从其导出特征数据的数字表示的标签,以确认所定义的对象是否存在于表示中,并且如果标签确认存在所定义的对象,则在特征数据方差分布42中记录所评估的签名候选的特征向量。
对于处理器18从表示的标签确认为与定义的对象相对应的每个特征向量,这可以促使处理器18在图表上绘制特征向量,例如,在“x”轴上绘制特征向量并且在“y”轴上绘制概率值。绘制的特征向量的范围通常形成概率分布曲线,例如高斯曲线,其定义与最相似的特征向量对应的一个或多个峰值。或者,特征方差分布42可以表达为另一个适当的概率分布函数,例如,其中技术被配置为评估两个不同的特征,例如,人的头发颜色(第一特征)和眼睛颜色(第二特征),对应的特征向量可以绘制在同一图表上的分离轴上,以形成两个重叠的高斯曲线。类似地,可以在三维图的三个轴上绘制三个特征。应当理解,高斯曲线是概率分布函数的一个示例,并且特征方差分布可以定义其他概率分布函数。还应当理解,在数字表示中标识出多个签名候选361、362、363的情况下,针对每个签名候选361、362、363执行第二分析阶段38和第三分析阶段40。
最后,在44处,不管特征方差分布42的形式如何,分布42被传递并存储在数据库存储器22中作为参考数据。
处理器18所暴露于的训练数据32的数量和变化至少初始地影响存储在数据库存储器22中的参考数据,这取决于系统10是否还被配置为操作反馈环,如下所述。例如,如果训练数据32包括定义基本相似的签名33的大量数字表示,则特征方差分布将可能表达为密集和窄的扩展(spread)。或者,如果训练数据32包括定义签名33的显著不同变化的数字表示,则特征方差分布将表达为对应的宽扩展。
应当理解,不同的技术通常被配置为确定所定义的对象34的签名,其根据所定义的对象34的不同方面或特性在标记的训练数据33的数字表示中定义的。例如,一种技术可以被配置为从对象34的部分或全部的几何结构导出签名。类似地,另一种技术可以被配置为从对象34的其他可观察和/或可检测属性导出签名,例如对象34的一部分(例如衣服)的颜色、对象34的温度、对象的重量等。或者,另一种技术可以被配置为从对象34的行为导出签名,其可以响应于对象34的移动、对象34的不活动、另一对象相对于对象34的移动、和/或对象34响应于刺激的响应(例如响应于巨大噪声的面部表情或注视方向的改变)。另外,另一种技术可以被配置为从与对象34相关联的上下文因素中导出签名。因此,根据技术的配置来调整训练数据32,使得向该技术提供相关数据以允许导出签名,并生成参考数据。此外,训练过程30通常针对每种技术执行,该技术可由处理器18使用定义相同的定义对象34的训练数据32来执行,从而允许每种技术学习由公共对象定义的签名。
在系统10的一些实施例中,由执行这些技术之一的处理器18导出签名可以基于以下因素的组合,包括所定义的对象34的属性、所定义的对象34的几何结构、所定义的对象34的行为、以及与所定义的对象34相关联的上下文。例如,在所定义的对象旨在是靠近移动设备并且不注意/不活动的人34的情况下,训练数据32被配置为包括逃离移动机械的、或试图提醒其他人即将面临的危险的人(例如挥动手臂)的第一组34视频,以及静止靠近移动机械站立的人(例如由于使用移动电话或失去知觉)的第二组视频,并且第二组被标记为包括定义的对象32的数字表示。在这种情况下,通过暴露于训练数据32,该技术学习签名,以包括形状类似于人34(几何结构)、不活动(行为)、靠近按照近似速度、方向朝其移动的对象并发出特定声音(上下文)的组合。
在系统10的一些实施例中,训练过程30被重复多次,以便训练至少一些技术以标识一系列不同的所定义的对象。例如,第一训练过程可以被配置为训练每种技术以标识汽车,并且第二训练过程被配置为训练每种技术以标识船只。在这种场景中,所生成的每种技术的参考数据被布置在数据库存储器22中,作为按因素分类的可过滤数据库,这些因素包括该技术已被训练标识的不同的所定义的对象(汽车和船只)。此外,为了能够手动过滤参考数据,用户界面24被配置为提供菜单,以允许用户选择用户希望系统10标识哪个定义的对象。例如,在上述场景中,界面24使用户能够选择是否所述技术正在尝试标识汽车和/或船只,因此相应地过滤数据库,并影响技术可以访问的参考数据。
应当理解,上述示例是如何配置系统10以标识特定所定义的对象的简单示例,并且由于执行许多训练过程,所以参考数据可能更复杂,允许多层过滤以允许用户精确调整系统10如何操作。例如,参考数据可以被配置为允许操作用户界面24的用户选择第一层,即诸如建筑施工现场、道路或码头的使用环境,这意味着由处理器18执行的每种技术将尝试标识它已被训练以标识并与该使用环境相关的所有对象。用户还可以选择第二层,第二层是与使用环境相关联的对象的类别,例如地面接合设备。用户还可以选择第三层,作为使用环境中的特定对象,例如挖掘机。通过选择参考数据的各个层,用户因此影响技术可访问的参考数据,并因此影响技术将如何运行。
例如,参考数据和用户界面24可以被配置为允许用户选择码头和所有船只,促使执行该技术的处理器18响应于(多个)相关签名的标识,确定何时任何船只在(多个)传感器12的范围内。或者,操作用户界面24的用户可以改进系统10设置,使得执行技术的处理器18确定造船厂起重机何时在任何非商业船只(例如私人游艇)的3米范围内。
图3A示出了系统10的操作过程50的各个阶段,由此系统评估由传感器12检测到的对象14是否是所定义的对象。操作过程50的至少一部分由处理器18被配置为执行的每个对象标识技术501、502、503执行。
在第一阶段52,传感器12检测数据以所定义的对象14的至少一个数字表示。在图1所示的实施例中,这涉及当人14在相机12的焦距范围(视野)内时,相机12捕获人14的至少一个图像。将理解的是,这可能涉及捕获包括许多图像(帧)的视频连续镜头。每个数字表示由相机12提供给处理器18,并且每种技术501、502、503由处理器18同时或近似同时执行,以允许每种技术501、502、503评估至少一个公共数字表示。
在第二阶段54,处理器18执行第一技术501,促使通常通过执行分段算法关于一个数字表示执行分段处理,以标识该数字表示中定义的任何签名候选。在所示的实施例中,技术501标识三个签名候选541、542、543。每个签名候选541、542、543是数字表示的一方面,技术501确定该方面可能是技术501在训练过程期间先前导出的签名,如上所述。技术501对数字表示进行分段以标识签名候选541、542、543将取决于该技术501响应于训练数据32和/或技术501的预定义操作参数所定义的签名的特性。例如,技术501可能已经将签名定义为基于几何结构的签名,因此分段涉及标识表示中可以与基于几何结构的签名对应的几何结构,例如在预定几何范围或阈值内的任何几何结构。
在第三阶段56,处理器18执行特征提取算法以导出每个标识的签名候选541、542、543的特征向量(α)。
在第四阶段58,处理器18执行比较器,通常是分类符或查找算法,以将每个导出的特征向量(α)与由参考数据定义的特征方差分布进行比较。
在第五阶段60,比较器从比较特征向量(α)和参考数据的相对位置或其他统计关系导出似然值(β)。似然值(β)指示比较特征向量(α)与定义的对象所定义的、技术501已经从训练数据32学习的签名相同或足够相似的可能性。例如,在由参考数据形成的特征方差分布被表达为定义单个高斯曲线62的图形的情况下,比较器可以绘制图形上的特征向量(α),并根据绘制的特征向量(α)与曲线的接近度和/或曲线的峰值来确定似然值(β)。或者,在将特征方差分布表示为两个或更多个重叠高斯曲线或可形成云类型分布的其他分布函数的情况下,比较器可绘制特征向量(α),并根据绘制的特征向量(α)与由重叠曲线定义的最大密度区域的接近度确定似然值(β)。应当理解,似然值(β)取决于由参考数据定义的特征方差分布,由此根据评估的特征向量(α)与处理器18通过暴露于训练数据32已确认了定义签名的其他基本相似的参考特征向量的相对相似性,来确定更高的似然值(β)。
在第六阶段64,组合由处理器18执行的技术501、502、503导出的至少一些似然值(β),以导出复合值(θ)。通常,组合由至少两种不同技术501、502、503导出的似然值(β),以导出复合值(θ)。组合(融合)阶段可以涉及一系列不同的似然值(β)组合方法。例如,组合阶段可以被配置为周期性地执行,诸如每秒,而每种技术501、502、503可以被配置为每五分之一秒周期性地执行,并因此每秒导出五个似然值(β)。在该场景中,组合阶段可以涉及组合在前一秒期间由每种技术501、502、503导出的最高似然值(β)。或者,在该场景中,每种技术501、502、503还可以包括平均函数,该平均函数被配置为对在定义的时段(例如,秒)中导出的似然值(β)进行平均,并因此组合阶段涉及组合在前一秒期间由每种技术501、502、503导出的平均似然值(β)。
在第七阶段66,系统10基于复合值(θ)确定由至少一个传感器检测到并且在数字表示中定义的对象14是否是定义的对象。
应当理解,对于在第三阶段56中由相应特征提取算法导出的每个特征向量(α),可以通过每种技术501、502、503重复第四和第五阶段58、60,这允许系统10评估每种技术501、502、503标识的、与相应技术已经学习的签名相对应的任何签名候选是否是由定义的对象所定义的。
将第六阶段64中的似然值(β)组合以导出复合值(θ)通常涉及对似然值(β)相乘,因为这增加了从低似然值(β)导出的低复合值(θ)与从高似然值(β)导出的高复合值(θ)之间的差异。因此,复合值(θ)提供了系统10标识所定义的对象的置信度的清楚的指示。
或者,在每种技术501、502、503的特征方差分布显著集中的情况下,例如,定义陡峭的高斯曲线,输出似然值(β)通常非常高(大约数百或数千)或非常低(大约一位数或小于1),这允许导出虚拟二进制似然值(β)。在这种场景中,组合阶段64可以涉及投票方案,其中高似然值(β)导致单票,而低值导致不投票。然后将投票加在一起以得出复合值(θ)。
图3B示出了用于系统10的替代配置的操作过程51,其中公共的附图标记指示公共的特征。系统10被配置为执行图3A中所示的技术501、502中的两个,在系统10的该实施例中被称为主要技术,并且还被配置为执行辅助技术504。主要技术501、502被配置为响应于从至少一个传感器12提供的数据导出似然值(β),该数据是对象14的至少一个数字表示。辅助技术504被配置为响应于一个或多个主要技术501、502提供的数据导出另一个似然值(βn)。这涉及如上所述执行每个主要技术501、502,以导出似然值(β1,β2),并且这些似然值(β1,β2)被提供作为辅助技术504的输入。通常,执行至少两种主要技术501、502以允许从每种主要技术501、502向辅助技术504提供至少一个似然值(β1,β2)。然后,处理器18执行辅助技术504,使得在阶段581比较似然值(β1,β2),并且作为结果导出另一似然值(β3)。
在581处通过辅助技术504对输入似然值(β1,β2)的比较可以涉及执行诸如分类符的比较器,以确定似然值(β1,β2)之间的相关性。该相关性可以指示,例如,响应于评估数字表示的相同或相似部分,已经由主要技术501、502中的每一个导出高似然值(βn)。因此,这指示存在所定义的对象的签名的高可能性,而不管每个主要技术501、502如何在数字表示的相同部分中定义签名,因此增加所定义的对象存在于该表示的那部分中的系统10的置信度。因此,辅助技术504的执行通过确定关于签名的存在以及因此所定义的对象的存在的、技术501、502之间的任何一致,来有效地验证主要技术501、502的似然值(β1,β2)。应当理解,空间相关性仅是比较阶段的一个示例,并且其他相关性在辅助技术504的范围内。另一示例可以涉及利用环境的已知特征。可以知道,在识别环境中的人的情况下,由于在发生检测的区域中可能不能定位人,因此检测到的可能不是人。例如,该区域中可能没有楼层。
图3C示出了图3A中所示的处理50或图3B中所示的处理51的另一实施例,其中公共的附图标记表示公共的特征或步骤。在该实施例中,系统10还包括反馈环160,其被配置为响应于处理器18在阶段66肯定地将检测到的对象14标识为定义的对象,将附加特征数据添加到在数据库存储器22中存储的参考数据。
在该实施例中,在每次执行技术501、502、503的处理器18确定所定义的对象的肯定标识的情况下,处理器18在各个技术501、502、503的特征方差分布中记录有助于肯定标识的、由每个执行的技术501、502、503导出的特征数据(α),并将其作为参考数据的新版本存储在存储器22中,本质上重复了在图2中所示的训练过程30的阶段42和44。然后可以在上述操作过程50、51的比较器阶段58访问修改的参考数据。
以这种方式操作连续地增加了形成参考数据集的数据范围,从而增加了每个特征方差分布中基本对应的特征向量(α)的数量。这具有提高每种技术501、502、503的准确度的效果,因为由参考数据中的特征向量(α)的范围更清楚地定义了该特征。反馈环160因此提供迭代过程,其通过重复使用系统10逐渐增强系统10的准确度,有效地使每种技术501、502、503能够连续地改进签名,并因此精确地标识何时所定义的对象存在于数字表示中。
在一些实施例中,反馈环160在阶段66处由处理器18肯定标识定义的对象之后包括附加阶段,处理器18在阶段162通过用户操作用户界面24寻求用户确认,以确认特征数据是否应该作为参考数据记录在数据库存储器22中。这涉及用户界面24被配置成使得响应于系统10在阶段66确定检测到的对象14是定义的对象,用户界面24提示用户确认该确定是否正确。在该监督学习场景中,处理器18响应于在阶段162接收到肯定用户确认,仅将特征向量(α)添加到参考数据。
还如图3C所示,在一些实施例中,系统10被配置为使得在阶段66处对所定义的对象的肯定标识或反馈环160的操作之后,处理器18在阶段164通过用户操作用户界面24寻求对动作菜单的用户输入,以确认系统10要执行的动作。这涉及用户界面24被配置为使得操作动作菜单164允许用户定义响应于肯定标识要由系统10执行的一个或多个动作。这允许用户定义“最佳实践”规则或边界条件,例如,以符合法律要求,例如健康和安全法规。类似地,这允许用户针对用户感知为重要的特定情况优化系统10的功能。
在阶段166,处理器18从定义的(多个)动作中导出指令,执行这些指令从而实现(多个)动作,并且这些指令由处理器18记录在程序存储器20和/或数据库存储器22中。这意味着响应于处理器18随后将检测到的对象标识为提示定义(多个)动作的相同的定义对象、来执行这些指令。
例如,在技术501、502、503被配置为标识定义的对象是距离人1米内的挖掘机铲斗的情况下,响应于处理器18标识所定义的对象,用户操作动作菜单以定义适当的动作是操作警报装置26以使挖掘机立即停止操作。这意味着在处理器18标识挖掘机铲斗距离人1米之内每个将来的情况下,自动执行该动作。
可选地或另外地,在技术被配置为将定义的对象标识为任何其他对象的5米内的挖掘机铲斗的情况下,用户操作动作菜单以定义当挖掘机铲斗在电力线的5米之内时,适当的动作是操作警报装置26以发出可辨别的警报。
应当理解,这些是定义“最佳实践”动作的简单示例,并且可以由用户定义更复杂的动作或动作序列。例如,用户可以是特定领域的专家,并且由专家用户操作动作菜单使得能够根据专家用户的特定知识和经验进行系统10的复杂配置,从而将该知识嵌入系统10的功能中。此外,以这种方式操作系统10允许处理器18连续地学习用户如何偏爱系统10操作,并相应地调整系统10的功能。例如,通过连续监视用户输入(“学习案例”),处理器18可以标识用户行为的模式,并且导出响应于确定检测到的对象是所定义的对象而应当执行的附加“最佳实践”动作或边界条件,无需来自用户的输入。
还如图3C所示,在一些实施例中,系统10被配置为使得响应于阶段162处的肯定用户确认输入,处理器18在阶段168通过用户操作用户界面24来寻求对指示符菜单的用户输入,以选择指示检测到的对象14是所定义的对象14的任何指示符,或者取消选择由处理器18自动标识和建议的指示符。指示符通常是对象14的数字表示的特定特性,并且通常是与检测到的对象关联的上下文因素。例如,指示符可以包括特定对象,例如人、衣服、设备、标牌和/或特定行为,例如指示强风的由于风而导致的树枝弯曲、或者指示迫在眉睫的碰撞的在仓库中行进的叉车的相对速度向量。响应于用户对指示符菜单的操作,处理器18从每个标识的指示符导出指示符数据,将指示符数据与在阶段66引起肯定标识的特征向量(α)相关联,并将相关联的指示符数据作为附加参考数据记录在存储器22中。
以这种方式操作系统10允许处理器18连续地学习用户认为是指示符的特征。通过连续监视这些“学习案例”,处理器18可以标识用户行为的模式,并在每次处理器18确定检测到的对象是定义的对象时导出附加的指示符数据,而不需要来自用户的输入。
在一些实施例中,系统10的操作包括作为比较器级58的子操作的推断阶段。响应于传感器12暴露于技术501、502、503没有训练为标识的替代对象,执行推断阶段。当发生这种情况时,执行技术501之一的处理器18在56处从替代的检测到的对象的数字表示中导出特征数据(α),并且在58处通过在特征方差分布内插值,来确定特征数据与参考数据足够相似以导出置信似然值(β),并在阶段66引起所定义的对象的肯定标识。处理器18然后将导出的特征数据(α)添加到参考数据,如图图3C中的160所示。可选地,响应于从用户界面24的操作接收肯定用户确认,特征数据(α)仅被添加到参考数据,这本质上是与阶段162相同的处理。
例如,在一个或多个训练过程30期间训练技术501以标识特定车辆模型的情况下,传感器12可随后检测共享相同车辆平台并因此具有大致相同几何和行为特性的车辆的替代模型。当这发生时,处理器18在比较器阶段58中将从替代车辆的数字表示导出的特征向量(α)与参考数据进行比较,并通过插值特征向量(α)导出置信似然值(β),其与大多数参考数据类似,由于替代车辆的类似几何结构和/或行为。然后,这促使处理器18将替代车辆标识为所定义的对象。然后在160处将特征向量(α)添加到参考数据,这加宽参考数据的范围,并有效地重新训练技术501以还将替代车辆模型标识为定义的对象。因此,该过程重新训练技术501、502、503中的任一个,以推断先前未观察到的对象被标识为定义的对象。
在其他实施例中,系统10的操作包括作为比较器级58的子操作的预测阶段。当传感器12暴露于技术501、502、503都没有训练为标识的替代对象时,执行预测阶段。当发生这种情况时,执行技术501之一的处理器18在56处从替代的检测到的对象的数字表示中导出特征数据(α),并且在58处通过在特征方差分布内插值,来确定特征数据足够相似以导出置信似然值(β),并在阶段66引起所定义的对象的肯定标识。处理器18然后将导出的特征数据(α)添加到参考数据,如图图3C中的160所示。可选地,响应于从用户界面24的操作接收到肯定用户确认,特征数据(α)仅被添加到参考数据,这本质上是与阶段162相同的处理。
例如,在一个或多个训练过程30期间训练技术501以标识运动型多用途车(SUV)的情况下,传感器12可以随后检测具有与SUV大致相同的功能特征和行为的厢式货车(van),例如具有四个轮子、门和窗布置在大致相同的地点、并且以相同的速度和沿着类似的路径移动。当这发生时,处理器18在比较器级58中将从厢式货车的数字表示导出的特征向量(α)与参考数据进行比较,并由于厢式货车的类似特征,通过与大多数参考数据类似地外推特征向量(α)而导出置信似然值(β)。然后,这使得处理器18将厢式货车标识为定义的对象。然后在160处将特征向量(α)添加到参考数据,这加宽参考数据的范围,并有效地重新训练技术501以将厢式货车还标识为定义的对象(SUV)。因此,该过程重新训练任何技术501、502、503,以预测先前未观察到的对象被标识为定义的对象。
图4是系统10在操作期间的屏幕截图,系统10被配置为操作四种技术,包括两种主要对象标识技术和两种辅助对象标识技术,每种主要技术被配置为将人70标识为定义的对象。屏幕截图说明了同时执行的两种主要技术。第一种主要技术,名为头肩签名-红绿蓝(HSS-RGB),被配置为从由于人70的运动而检测到的人70的头肩接口的轮廓标识定义的对象,并且已从先前暴露于训练数据,而导出该签名为该轮廓。第二种主要技术,称为定向梯度直方图(HOG),被配置为从由于RGB图像中的特定像素变化和相邻像素的图案而检测到的人70的剪影标识定义的对象,并且已经从先前暴露于训练数据,而导出该签名为该剪影形状。辅助技术被配置为比较来自主要技术(HSS和HOG)的输出,以标识空间相关性,即,通过每种技术导出的签名候选是否来自数字表示中的大致相同的位置,和/或时间相关性,即,通过每种技术导出的签名候选是否来自数字表示中的大致相同的时间(实例)。
根据图4中所示的实施例配置的系统10的操作符合图3B中所示的过程51。通常,这涉及最初执行HSS和HOG技术,然后执行两种辅助技术。通常使用OpenCV平台来执行这些技术中的每一个的操作,并且在下面进一步详细描述。
在阶段52,使用HSS-RGB技术从相机12获取图像,从而捕获包括多个静止图像72(帧)的视频连续镜头。在阶段54,执行图像处理以标识签名候选,包括:将至少两个帧从RGB转换为灰度;具有定义的内核的高斯模糊应用于每个帧;计算帧之间的差异以导出单个图像;将图像转换为二进制图像74;应用中值滤波器以增加图像的均匀性;执行形态学功能,包括扩大图像、侵蚀图像、以及在图像中找到轮廓线;轮廓线按面积排序;将轮廓线与存储在数据库22中的轮廓线参考数据进行比较,以标识落入限定阈值内的轮廓线,例如几何边界;通过在每个候选周围构建边界框76,来定义感兴趣区域(签名候选541、542、543)。轮廓线参考数据包括HSS-RGB技术已经学习或手动配置的其他参考数据,以识别为定义适当的轮廓线几何结构。在学习这一点的情况下,这可能涉及如上所述凭经验导出参考数据的相同过程。
在阶段56,对于每个签名候选541、542、543导出特征向量,由此,对于每个评估的签名候选,执行以下步骤:从边界框76内的每行白色像素导出跨度测量值;从最大跨度导出肩部测量值;将肩部测量值与存储在数据库22中的肩部参考数据进行比较,以标识人的头部应该相对于跨度的位置;相应地调整边界框的大小;从所标识的头部区域中的最大跨度导出头部测量值;导出头肩跨度比。该比率是特征向量(α)。肩部参考数据包括HSS-RGB技术已经学习或手动配置的其他参考数据,以识别为定义人的头部与肩部之间的典型几何关系。在学习这一点的情况下,这可能涉及如上所述凭经验导出参考数据的相同过程。
在阶段58,将比率(特征向量(α))与先前在训练过程中定义的特征方差分布进行比较,以导出似然值(β)。这可能涉及每秒导出许多值(β),允许HSS-RGB技术应用平均函数,例如最近邻居统计跟踪器。这允许HSS-RGB技术提供更可信的似然值(β),例如,它可以监视在一段时间内已经从其导出多个似然值(β)的相同签名候选是否保持在大致相同的位置,即由于一个值(β)与最近邻值(β)的相关性,因此更加确信这些似然值(β)是定义的对象存在的结果,而不是错误或其他对象存在的结果。
应当理解,HOG是已知技术,因此仅出于示例性目的简要描述系统10对HOG技术的操作。在阶段52,HOG技术的使用通常涉及从相机12获取图像,由此捕获通常包括多个静止帧72(图像)的视频连续镜头。在阶段54,执行图像处理以标识签名候选,包括:梯度计算;和取向绑定(binning)。
在阶段56,对于每个签名候选,执行以下步骤:构造描述符块78(由x、y、高度和宽度测量值定义);和对描述符块78进行标准化。这导出了特征向量(α)。
在阶段58,执行支持向量机(SVM)以导出似然值(β)。这又可以涉及每秒导出许多值(β),允许HOG技术应用平均函数,例如最近邻居统计跟踪器,以提供更可信的似然值(β)。
响应于导出至少一个似然值(β)的每个主要技术(HSS-RGB和HOG),来执行辅助技术。在图4所示的实施例中,每个辅助技术涉及执行被配置为最近邻居统计跟踪器的分类符。这些技术中的每一种比较至少两个似然值(β),以确定签名候选在物理空间和/或时间中的潜在对准。
图4还示出了正在执行的组合(融合)阶段64,其中由HSS-RGB和HOG技术导出的似然值(β)和辅助技术被组合,以导出复合值(θ)80。因为系统10已被执行多次以确定相机12检测到的对象是否是人70,所以示出了多个复合值(θ)。本实施例中的组合阶段被配置为投票方案。已经导出最高复合值(θ)801,因为HSS-RGB和HOG技术中的每一个已经导出高似然值(β),其指示相应的签名可能存在于评估的数字表示中,因此两者都投票(HSS-RGB投票1+HOG投票1=2(小计)),并且每个辅助技术还导出高似然值(β),因为已经确认由HSS-RGB和HOG技术导出的似然值之间的强空间和时间相关性,因此两者也投票(辅助投票1+辅助投票1+小计=4(总计))。在投票(复合值(θ))总计为4的情况下,系统10最大程度地确信已经标识出所定义的对象(人70)。
图5示出了图3A中所示的过程50或图3B中所示的过程51的另一实施例,其中公共的附图标记表示公共的特征或步骤。在该实施例中,在判断阶段66之前,处理器18在68处操作第二比较器以将复合值(θ)与复合参考数据进行比较。复合参考数据包括从先前操作系统10导出的一系列复合值。以这种方式,复合参考数据继承由针对每种技术501、502、503执行的训练过程30生成的特征方差分布数据,因为该分布数据已经影响了确定先前导出的复合值。
在68处新复合值(θ)与复合参考数据的比较允许处理器18导出置信度值(γ)。这通常涉及将复合参考数据表达为复合方差分布,例如定义高斯曲线的图。类似于在上述第四阶段58执行的比较器,第二比较器根据复合值(θ)和复合方差分布之间的关系确定置信度值(γ)。然后,这允许处理器18在66处使得判断基于置信度值(γ)。例如,在复合方差分布表达为高斯曲线的情况下,这可能涉及处理器18评估复合值(θ)与曲线的峰值的接近度。通常,在复合值(θ)从多个似然值(β)的乘法导出的情况下,复合方差分布68是窄的并且定义陡峭的高斯曲线,这意味着导出的置信度值(γ)非常高或者非常低,从而使处理器18能够以高置信度标识对象14是否是定义的对象。如上所述,这允许进行虚拟二进制判断。
图6A示出了在系统10的任何训练或操作之前初始配置系统10的阶段。该配置通常根据系统10的预期目的来确定,由此处理器18通常根据系统10被配置为标识的目标定义对象,来选择图5A中示为模块92、94的各种对象标识技术用于执行。第一部分90示出了示例技术模块92、94,例如算法模块92和分类符模块94,并且还示出了链接模块96。链接模块96被配置为使组合阶段(例如上述阶段64)能够从多个似然值(β)导出复合值(θ)。通常,响应于所选对象标识技术92、94的输出,系统10选择链接模块96用于执行。第二部分98示出可操作地连接在一起以形成束100的三个模块92、94、96。束100可以包括系统10操作所必需的所有模块,或者如果需要可以连接到其他束。
通常,系统10被配置为包括互补对象标识技术模块,以增强处理器18标识所定义的对象的有效性。例如,可以知道第一技术在光线好的条件下非常可靠地起作用,但在低光照条件下偶尔不能很好地起作用,或者根本不起作用,而已知第二技术在任何照明条件下都相当可靠地起作用。在系统10中合并并执行第一和第二技术意味着这些技术的组合输出导致系统10在所有照明条件下可靠地运行,并且在光线好的条件下非常可靠地运行。选择互补的技术是手动和自动输入中的至少一种的结果。例如,通常用户将理解各种技术的操作限制,并选择适合于系统的真实世界应用的技术,例如,适合于所定义的对象的操作环境和/或特性。可替代地或另外地,系统10可以选择要互补的技术,例如,由于提供统计上互补的输出,可以在束中预先配置技术组。进一步替代地,用户可以选择第一技术,并且算法被配置为建议与第一技术一起使用潜在互补技术。进一步替代地,处理器18监视技术的手动配置,并且在监视多个“学习案例”之后,确定目标定义对象的适当技术组合,而不需要用户输入。
系统10可以被配置为执行各种对象标识技术模块中的两个或更多。下表详细介绍了一些适当的模块示例:
应当理解,上表不是模块的详尽列表,并且处理器18可以被配置为执行表中未详述的许多其他模块。例如,处理器18可配置为执行“深度学习”模块。
图6B示出了为不同目的而配置的不同束排列(permutation)的示例。例如,第一束102被配置为将特定标记(例如红十字)标识为定义的对象。第二束104被配置为将禁区内的人标识为所定义的对象。第三束示出为具有两种配置。第一配置1061被配置为将穿戴个人防护装备(PPE)(例如,安全帽和高能见度夹克/战袍)的任何人标识为所定义的对象。第二配置1062被配置为将任何人(不管PPE的存在)标识为所定义的对象。这是因为在第二配置1062中,已禁用标识PPE的模块(标记为HiVis)。
系统可以被配置为执行各种束中的一个或多个。一些适当的束的示例,包括对典型系统10目的(应用)和合并模块(组件)的引用,在下表中详细说明:
图7图示了根据上表中详述的束ID 16(120)来配置系统10,由此对象标识技术模块C、E、K和O(122、124、126、128)通信地耦合以标识预定的符号和/或标志。
图8图示了如何通过配置和添加另外的模块110来调整束108以提供不同的目的,例如,标识由备选定义的对象定义的不同签名,从而形成备选束112。例如,束108可以被配置为标识由人的几何结构定义的签名。然后,将作为替代束112重新配置的该束108配置为通过将另外的模块110配置为运动跟踪器,来标识由人定义的特定移动路径定义的签名,例如步态。
图9示出了由定义的对象的至少一部分的几何结构定义的签名的示例。通常,几何签名包括特定形状、和/或一个形状/点与另一个的关系,其能够由系统10的至少一个传感器12检测。在图9所示的实施例中,所定义的对象是挖掘机130的铲斗132。对于该实施例,由训练数据32训练由处理器18执行的至少一个对象标识技术,以标识挖掘机铲斗的几何特征,并且还可能标识对于铲斗变化公共的几何特征,以便确定由铲斗132的特定几何结构定义的签名。例如,这可以涉及将签名定义为由铲斗132定义的铲斗132的轮廓或尺寸比(例如高度与宽度比)所定义的向量的技术。这样,执行该技术的处理器18可以在检测的铲斗位于至少一个传感器12的范围内时,将检测的铲斗标识为具有学习签名的所定义的对象。
图10示出了由定义的对象的至少一部分的运动定义的签名的示例。通常,运动签名包括由所定义的对象或其一部分的移动定义的特定路径,其能够由系统10的至少一个传感器12检测。在图10所示的实施例中,所定义的对象是在限定的时间段(T)内沿弯曲路径140行进的挖掘机130。在该实施例中,由训练数据32训练由处理器18执行的至少一个对象标识技术,以连续标识:在第一时间(T/4)在第一地点142处的适当的挖掘机130维度的对象、或落入其他限定的公差内;在第二时间(2×T/4)在第二地点144处的适当的挖掘机130维度的对象;在第三时间(3×T/4)在第三地点146处的适当的挖掘机130维度的对象;以及在第四时间(3×T/4)在第四地点148处的适当的挖掘机130维度的对象,以便确定由在限定的时间段(T)内沿着路径140的挖掘机130的运动定义的签名。以这种方式,执行该技术的处理器18可以标识挖掘机何时在限定的时间段(T)内穿过路径140,并因此将检测到的挖掘机标识为具有学习的签名的定义的对象。
图11示出了由定义的对象的至少一部分展示的行为所定义的签名的示例。通常,行为签名包括由以下定义的多个特定运动路径:所定义的对象的移动,例如对象的一部分的移动序列;对象的不同部分的相对运动;多个对象的相对运动等。在图11所示的实施例中,所定义的对象是一群鸟150,该群包括多于一只相同的鸟152,展示出公共的移动,在这个示例中,每只鸟152同时将其目光向上重定向154,这通常是为了响应捕食者的召唤而发生的。在该实施例中,由训练数据32训练由处理器18执行的至少一个对象标识技术,以标识适当的鸟152维度的对象的分组、或者落入其他定义的公差内、以及同时将对应应部分(每只鸟152的头部)定向到公共位置154的每个对象(鸟152)的实例,以便确定由鸟群150的公共运动定义的签名。这样,执行该技术的处理器18可以标识一群鸟154何时展示出签名行为,并因此将检测到的鸟群标识为具有学习的签名的所定义的对象。
虽然本公开参考了用于标识定义的对象的系统10和方法,但是应当理解,在适当的情况下,在本说明书的上下文中,这些系统10和方法可以容易地改编以标识定义的风险,并因此术语对象和风险是可互换的。可以理解风险是指与危险或威胁相关联的情景,例如,对人员或设备造成伤害/损害的危险。在这样的实施例中,系统被配置为捕获场景(而不是对象)的数字表示,因此在适当的情况下,在本说明书的上下文中,术语场景和对象也是可互换的。
例如,在被配置为标识风险的系统10的实施例中,风险可被定义为布置在人的距离阈值内的任何设备或车辆,因为这可能伤害人。在该实施例中,至少一些技术被配置为运动跟踪器,并被训练以标识由各种人定义的各种运动路径、以及由各种设备和车辆定义的各种运动路径,并从导致设备/车辆在距离阈值范围内的相对路径导出签名。这意味着当传感器12检测到包含人和设备/车辆的场景、并且由处理器18通过执行技术进行评估时,处理器18能够标识由于相对运动路径引起的风险,而不管靠近人的对象(或像人一样移动的对象)是否是设备或车辆,也不管设备或车辆的类型。
类似地,在被配置为标识风险的系统10的实施例中,风险可以被定义为布置在地板表面上的任何液体,因为这可能对在表面上滑动的人造成伤害,或者对在移动穿过表面时损失抓地力的设备造成损坏。在该实施例中,至少一些技术被配置为几何和数据扫描仪,并且被训练以标识与指示风险即将发生的指示符相关的几何和/或上下文数据,例如喷射液体的软管的几何结构、或打开的液体容器在表面的距离阈值内、或详细描述表面局部下雨的机会的天气数据大于定义的阈值,并从源自这些指示符的特征数据导出签名。这意味着当传感器12检测到与条件相关联的和/或包含与这些指示符中的任一个相对应的对象的场景、并且由处理器18通过执行技术评估时,处理器18能够标识由于存在一种或多种特定情况造成的风险。
所公开的系统10涉及通常同时或接近同时执行至少两种不同的对象标识技术(并且通常多于两次),以导出至少两个相应的似然值。然后,处理器18将这些值组合,以导出复合似然值,该复合似然值影响处理器18确定传感器12检测到的对象14是否是定义的对象。该方法是有利的,因为每种技术被不同地配置并且因此在某些操作条件下以更高或更低的准确度起作用。通过执行两种或更多种技术然后组合输出似然值,减轻了不同技术的不精确,从而提供了能够在宽范围的操作条件下操作的可靠系统。这意味着系统10更一致地将与定义的对象相对应的对象正确地标识为定义的对象。
由处理器18执行的每个对象标识技术通常被配置为以不同的方式标识定义的对象,因为每种技术通常被配置为标识由相同的定义的对象定义的不同的签名。例如,第一技术可以被配置为标识由定义的对象定义的几何关系,而第二技术可以被配置为标识由定义的对象定义的一个或多个行为因素。以这种方式,该技术被配置为响应于评估所定义的对象的不同特性来标识相同的所定义的对象。这有利地拓宽了系统10可以在其内精确操作的操作条件的范围,再次提高了系统的精度。例如,在上面讨论的场景中,传感器可以检测整个对象,两种技术都可以成功地操作,并因此提供高精度。或者,在对象的一部分被遮挡的情况下,仅第一技术可以成功地操作,因为第二技术的准确度可能受损,这允许系统仍然起作用但精度降低。
通常,至少两种不同的对象标识技术被配置为互补的,以补偿每种技术的任何已知的不准确。至少两种技术的选择可能受到一系列因素的影响,并且通常受到所定义的对象的特性、至少一个传感器12的配置、和至少一个传感器12的操作环境中的至少一个的影响。技术之间的互补关系是手动配置、自动配置、或这两种方案的组合。这允许系统10被策略性地配置以增强整体可靠性和准确度。
由处理器18执行的每种技术评估由传感器12检测到的对象14,以导出似然值,该似然值指示由对象14定义的签名候选(即对象14的特性)是否对应于该技术已经建立的由定义的对象定义的签名的可能性。通过将签名候选与已经预定为包括与签名相关的数据的参考数据进行比较,来导出似然值。该过程是有用的,因为这允许系统10将新数据(从签名候选导出的特征数据)与可能与签名相关的宽范围的参考数据进行比较,以验证签名存在于新数据中的概率,并因此导出似然值。组合以这种方式导出的多个似然值以导出复合似然值,这进一步增加了系统10的置信度和因此的精度。
本领域技术人员将理解,在不脱离本公开的广泛的一般范围的情况下,可以对上述实施例进行多种变化和/或修改。因此,当前实施例在所有方面都被认为是说明性的而非限制性的。