监控的制作方法

文档序号:13041878阅读:280来源:国知局
监控的制作方法与工艺

本发明的实施例涉及监控场景。特别地,它们涉及对场景的自动监控。



背景技术:

当前的监控系统,例如监视系统,可以包括用于视频录制(带音频录制或不带音频录制)的一个或多个摄像机,所述摄像机通过电线或无线地连接到集线器,该集线器存储或使得能够存储从场景记录的数据。在一些示例中,操作者可以使用集线器来编程摄像机和/或集线器的设置。



技术实现要素:

根据本发明的各种(但不一定是全部的)示例,提供了如权利要求1-13中任一项所述的方法。

根据本发明的各种(但不一定是全部的)示例,提供了如权利要求14所述的装置。

根据本发明的各种(但不一定是全部的)示例,提供了一种装置,包括:至少一个处理器;以及

至少一个包括计算机程序代码的存储器;

所述至少一个存储器和所述计算机程序代码配置为与所述至少一个处理器一起致使所述装置至少执行如权利要求1-13中任一项所述的方法。

根据本发明的各种(但不一定是全部的)示例,提供了当由至少一个处理器执行时致使如权利要求1-13中至少一项所述的方法被执行的计算机程序代码。

根据本发明的各种(但不一定是全部的)示例,提供了一种计算机程序,其在计算机上运行时执行:如权利要求1-13中任一项所述的方法。

根据本发明的各种(但不一定是全部的)示例,提供了如所附权利要求所要求保护的示例。

附图说明

为了更好地理解对于理解发明内容有用的各种示例,现在将仅通过示例的方式参考附图,其中:

图1示意性地示出了系统的示例;

图2示出了状态机的示例;

图3示出了处理模块的示例;

图4示出了用于计算机程序的传送机制的示例;

图5示出了系统的操作的示例;

图6示出了系统的操作的示例;

图7a-c示出了系统的操作的示例;

图8示出了方法的示例;以及

图9示出了方法的示例。

具体实施方式

描述的系统100是监视至少一个场景的系统。系统的操作可以由场景内的用户通过在场景内执行动作来控制。例如,用户能够控制系统,使得用户可以定义将由系统监控的至少一个虚拟边界。

图1示意性地示出了系统100,其包括:一个或多个传感器110,其被配置为从场景140记录传感器数据112;处理模块120,其被配置为处理从场景140记录的传感器数据112,以自动识别在场景140中发生的事件,并且作为识别的结果而自动作出决定;以及通信模块130,其被配置为当由处理模块120做出通信决定时进行通信。

所识别事件的一部分(但不一定是所有)可能与场景140中的对象152或特定对象152相关。对象可以是场景140中的无生命物体,动物,人或特定的人150。在系统100的一些(但不一定是全部的)示例中,系统100是实时识别系统,并且当传感器数据112被记录时,基本上同时地做出自动识别和决定(如有)。

系统100可以用于监视,监控,辅助生活,老年护理或其他应用。系统100可以用于企业,公共场所或家庭中。一种预期的用途是作为家庭监视系统。

例如,当用户是场景140中的人150时,系统100可以使得用户能够对监控进行控制。例如,当用户是场景140中的人150时,系统100可以使用户能够控制识别和/或识别的结果。

在一些,但不一定是所有示例中,系统100可以包括多个分立设备。例如,传感器110可以容纳在一个或多个单独的设备中,处理模块120可以容纳在一个或多个设备中,并且通信模块130可以容纳在一个或多个设备中。在系统100的组件被容纳在分立设备中的情况下,这些设备可以是本地设备,或者彼此是远程的,并且在远程的情况下,它们可以例如通过网络进行通信。

在一些,但不一定是所有的示例中,系统100可以容纳在单个设备中。

传感器110被配置为记录或使得能够记录来自场景140的传感器数据112。

场景140可以包括静态分量,例如,静态分量具有固定的相对位置,例如静态对象。这些静态对象在场景的三维空间(场景空间)中具有不同的静态位置。场景140可以包括移动成分,例如移动物体。随着时间的推移,移动物体在场景空间中具有不同的位置。关于不同传感器数据112或不同时间的“场景”的引用意味着场景140的被感测的那些静态分量的连续性,但并不一定意味着部分或全部动态分量的连续性,尽管这可能发生。

传感器数据112的记录可以仅包括临时记录,或者它可以包括永久记录,或者它可以包括临时记录和永久记录。临时记录意味着暂时的数据记录。例如,这可以在感测期间发生,在动态存储器处发生,在缓冲器(例如,循环缓冲器,寄存器,高速缓存等)处发生。永久记录意味着数据是可寻址数据结构的形式,可从可寻址存储器空间中检索,因此可以在删除或重写之前存储和检索,尽管长期存储可能发生或可能不发生。

传感器110可以被配置为将扩散波(例如,声波和/或光波)转换成电信号,所述电信号将来自场景140的扩散波数据编码为传感器数据112。

在一些,但不一定是所有的示例中,相对于场景空间140传感器110在空间中是固定的。在其他示例中,传感器110相对于场景空间140是可移动的或正在移动。

在一些,但不一定所有的实施例中,传感器110是或包括图像传感器114。图像传感器114的示例是被配置为作为摄像机操作的数字图像传感器。可以操作这样的摄像机来记录静态图像和/或视频图像。

在一些,但不一定所有实施例中,摄像机可以按照立体或其他空间分布的布置来配置,以从不同的角度来观看场景140。这样可以使得能够创建三维图像和/或进行处理以例如经由视差效应来建立深度。

在一些,但不一定所有的实施例中,传感器110是或包括音频传感器116。音频传感器116的示例是一个或多个麦克风。麦克风可以按照立体或其他空间分布的布置,例如麦克风阵列来配置,从而使得从不同的角度对场景140进行采样。这可以使得能够进行三维空间音频处理,其允许在场景140内定位音频。

在一些,但不一定所有的实施例中,传感器是或包括深度传感器118。深度传感器118可以包括发射器和接收器。发射器发射信号(例如,人类无法感知的信号,例如超声波或红外光),接收器接收反射信号。使用单个发射器和单个接收器,可以通过测量从发射到接收的飞行时间来获得一些深度信息。可以通过使用更多的发射器和/或更多的接收器(空间分集)来实现更好的分辨率。在一个示例中,发射器被配置为用具有空间依赖性模式的光,优选不可见光(例如红外光)来“画”场景140。接收器对某种模式的检测允许场景140在空间上被解析。到场景140的空间分辨部分的距离可以由飞行时间和/或立体视觉(如果接收器相对于发射器处于立体位置)来确定。

在深度感测的这些“被动”或“非主动”示例中,要被感测的人150或物体152是被动的,并且仅反射由发射器发射的入射光或声波。然而,可以附加地或替代地使用“主动”示例,其需要在感测物体上的活动。作为示例,人150可以携带定位装置,其被配置为在场景空间140内定位该定位装置。定位装置可以例如使用加速度计来测量定位装置从参考位置开始的运动。陀螺仪可以可选地用于确定取向。另外或替代地,定位装置可以通过向多个接收器发送和/或从多个发射器接收来实现三角测量(三边测量)的定位。

在所示示例,但不一定是所有示例中,处理模块120包括存储器子模块122,处理子模块124,识别子模块126和控制子模块128。尽管“模块”被分别描述和示出,但是它们不需要是单独的或采用不同组合方式的组合。例如,处理子模块124,识别子模块126和决策子模块128可以由相同的电路执行或在相同的计算机程序的控制下执行。或者,处理子模块124,识别子模块126和决策子模块128中的一个或多个可以由专用电路或专用计算机程序执行。子模块可以使用软件,专用硬件或者编程硬件和软件的组合来执行。

存储器子模块122可以用于存储未处理的传感器数据110和/或处理的传感器数据110(场景数据),计算机程序,场景空间模型和处理模块120使用的其他数据,但是其他子模块可以具有自己的存储器。

处理子模块124可以被配置为处理传感器数据112以确定关于场景140有意义的场景数据。

处理子模块124可以被配置为执行图像处理,其中传感器数据110包括来自一个或多个摄像机114的图像数据。处理子模块124可以被配置为执行音频处理,其中传感器数据110包括来自一个或多个麦克风116的音频数据。

处理子模块124可以被配置为使用传感器数据112自动执行以下任务中的一个或多个,以创建对于场景140具有潜在含义的场景数据:

使用机器(计算机)视觉执行以下一个或多个:

检测(移动或静止的)物体或人物,

分类(移动或静止的)物体或人物,和/或

跟踪(移动或静止的)物体或人物;

使用空间分析来执行以下一个或多个:

使用深度确定在场景空间中定位(移动或静止的)对象;和/或

创建场景空间的地图;和/或

使用行为分析将在场景140中发生的事件描述为潜在有意义的符号。

图像处理的示例是“梯度特征的直方图”分析,其产生图像的强度梯度或边缘方向的分布。图像可以被划分成小的连接区域(单元格),并且对于每个单元格,为单元格内的像素创建梯度方向或边缘方向的直方图。这些直方图的组合于是表示描述符。

音频处理的示例是“梅尔频率倒谱系数”确定,使用例如音频波束成形技术,音频事件识别或分类,说话人识别或验证或语音识别的空间音频处理。

例如,可以通过使用相对于背景模型(背景减除)或相对于先前图像(时间差分)的差异,或者使用其它方法,例如使用基于矢量的方法进行的光学流分析,来实现运动检测。

例如,可以使用基于形状的分析和/或基于运动的分析实现对象分类。

人的分类可以是对象是人类的分类或对象是特定人的分类(识别)。可以使用唯一地识别该组可能的人中的人的属性或属性的组合来实现识别。属性的例子包括:特定于某个人的生物识别特征,例如他们的脸或者他们的声音;他们的身材和大小;他们的行为。

可以通过标记对象并记录所标记对象在场景140中的位置来实现对象跟踪。该算法可能需要处理以下事件中的一个或多个:对象进入场景140;对象离开场景140;对象重新进入场景140;对象遮挡;对象合并。如何处理这些事件是本领域已知的。

对象跟踪可用于确定对象或人何时发生变化。例如,在大宏观尺度上跟踪对象可以创建与对象一起移动的参考系。然后,通过使用相对于物体的时间差分,该参考系可用于跟踪对象的形状的随时间发展的变化。这可以用于检测小规模人体运动,如姿势,手部运动,面部运动。这些是相对于用户的与场景无关的(仅)用户运动。

该系统可以跟踪与人的身体相关的多个对象和/或点,例如人的身体的一个或多个关节。在一些示例中,系统100可以执行人身体的全身骨骼跟踪。

关于人的身体的一个或多个对象和/或点的跟踪可被系统100使用于姿势识别等。

行为分析需要使用有意义的符号系统来描述场景140中发生的事件。事件可能是在时空实例中发生的事件,或者它可以是时空序列(随时间推移的时空实例的模式)。事件可能涉及对象(或人)的运动或人与对象的相互作用。

在一些,但不一定是所有的实现中,事件可以由根据从机器(计算机)视觉分析和/或空间分析中确定的参数定义的推定符号来表示。这些参数编码正在发生什么、在哪儿发生、什么时间发生、以及谁正在做中的一些或更多。

识别子模块126被配置为将编码场景140中的事件的推定符号识别为与特定含义相关联的有意义符号。

识别子模块126可以被配置为识别根据从机器(计算机)视觉分析和/或空间分析确定并由处理子模块124产生的具有意义的参数来定义的推定符号。识别子模块126可以例如存储或访问有意义的参考符号的数据库,并且可以使用相似性测试来确定推定符号是否与有意义的符号“相似”。

识别子模块126可以被配置为机器(计算机)推理引擎或其他识别引擎,例如人造神经网络或参数空间中的聚类。在一些示例中,识别子模块126可以通过监督学习而被训练,以识别与参考符号相似的有意义的符号。

控制子模块128响应于根据事件在场景140中发生有意义的事件的确定:

a)如果推定符号与响应符号相似,则有意义的事件是“响应”事件,并且控制子模块126执行响应动作。

在一些,但不一定是所有示例中,所执行的动作可由用户编程。在一些,但不一定全部的示例中,编程可以通过用户在场景内的运动来进行。所执行的动作的示例可以是警报或通知的生成。

警报或通知可以经由通信模块130提供。通信模块130可以经由无线电波而无线地、或经由到本地的或远程的设备的有线连接来通信。这种设备的实例包括但不限于显示器,电视机,音频输出设备,个人设备,例如移动电话或个人计算机,投影机或其他用户输出设备。

b)如果推定符号类似于用户控制符号,则有意义的事件是“用户控制”事件,并且控制子模块126使得用户能够控制监控和/或使得用户能够控制响应。

例如,用户可能能够对添加到参考符号的数据库的有意义的响应符号进行编程或教导。在一些,但不一定全部的示例中,可以通过场景140内的用户的运动来进行编程。

例如,用户可能能够编程或教导当推定符号与响应符号匹配时执行的动作。所执行的动作的示例可以是警报或通知的生成。

从图2可以进一步理解处理模块120的操作,图2示出了用于处理模块120的状态机200。状态机200具有监控状态210,用户控制状态220和自动响应状态230。

在监控状态210中,传感器110提供传感器数据112,并且处理子模块124自动处理传感器数据112(视频和/或音频和/或深度)以创建具有潜在含义的场景数据。识别子模块126自动处理场景数据以识别场景数据内的实际含义,即有意义的符号。

有意义的符号是预先确定的,即确定符号的动作在识别之前已经发生。然而,“预先确定”不应被认为是指精确的或固定的。用于相似性匹配的符号仅具有先前的确定,它可以动态演变或可以是固定的。

如果识别子模块126确定在场景140中已经发生有意义的事件,则控制子模块126根据事件自动响应。如果有意义的事件是“响应”事件,则状态机200转换到响应状态230,并且控制子模块126执行响应动作。如果事件是“用户控制”事件,则状态机200转换到用户控制状态220,并且使得能够进行用户对监控和/或响应的控制。

特定姿势用户输入可被用作“用户控制”事件。姿势用户输入是对系统100具有用户输入的意义的姿势。姿势可能是静态的或移动的。移动姿势可以包括运动或运动模式,运动模式包括一系列运动。例如,它可能是进行盘旋运动或侧向或上下运动或在空间中追踪记号。移动姿势可以例如是与装置无关的姿势或依赖于装置的姿势。移动姿势可以涉及用户输入对象(例如用户身体的一个或多个部分或其他装置)相对于传感器110的移动。身体部分可以包括用户的手或用户的手的一部分,例如一个或多个手指和拇指。在其他示例中,用户输入对象可以包括用户的身体的不同部分,例如他们的头部或手臂。三维运动可以包括用户输入对象在任何三个正交方向上的运动。运动可以包括用户输入对象朝向或远离传感器110移动,以及在平行于传感器的平面中移动,或者这种运动的任何组合。姿势可能是非接触式姿势。非接触姿势在姿势期间的任何时间不接触装置传感器。姿势可以是根据从传感器110起的绝对位移来定义的绝对姿势。这种姿势可以是系留的,因为它在场景空间中的精确位置处被执行。或者,姿势可以是在姿势期间根据相对位移限定的相对姿势。这样的姿势可以是非系留的,因为它不需要在相对于场景空间的精确位置处执行,并且可以在大量的任意位置处执行。姿势可以被定义为随着时间的推移,跟踪点相对于原点的位移演变。例如,可以使用诸如位移,速度或使用其它运动学参数的时间可变参数来定义运动。可以将非系留姿势定义为相对位移δd与相对时间δt的演变。姿势可以在一个空间维度(1d姿势),两个空间维度(2d姿势)或三个空间维度(3d姿势)中执行。

在一些示例中,系统100可以在姿势识别中跟踪与人的身体相关的一个或多个对象和/或点。例如,系统100可以在姿势识别中执行人的身体的完全骨骼跟踪。

处理器模块120或处理器模块120的一部分的实现可以是控制器电路。控制器电路120可以单独在硬件中实现,在软件(包括固件)中具有的某些方面或者可以是硬件和软件(包括固件)的结合。

如图3所示,控制器120可以使用例如通过在通用或专用处理器310中使用可执行计算机程序指令322来实现硬件功能的指令来实现,这可以存储在计算机可读存储介质(盘,存储器等)上,由处理器310执行。

处理器310被配置为从存储器320读取和写入存储器320。处理器310还可以包括输出接口以及输入接口,数据和/或命令由处理器310通过所述输出接口输出,数据和/或命令通过所述输入接口被输入到处理器310。

存储器320存储计算机程序322,计算机程序322包括当加载到处理器310中时控制处理模块120的操作的计算机程序指令(计算机程序代码)。计算机程序322的计算机程序指令提供逻辑和例程,使得处理模块能够执行参考图1和/或2和/或8和/或9讨论的方法。处理器310通过读取存储器320能够加载并执行计算机程序322。

因此,系统100包括装置120,装置120包括:

至少一个处理器310;以及包括计算机程序代码322的至少一个存储器320;所述至少一个存储器320和计算机程序代码322配置为利用至少一个处理器310使得设备120至少执行块图1中的块124,126,128中的一个或多个和/或图8和/或9中的一个或多个块。

如图4所示,计算机程序322可以通过任何合适的传送机制324到达设备。传送机制324可以是例如非瞬时性计算机可读存储介质,计算机程序产品,存储设备,诸如光盘只读存储器(cd-rom)或数字通用盘(dvd)的记录介质,其是有形地体现计算机程序322的制品。传送机制可以是被配置为可靠地传送计算机程序322的信号。装置120可以将计算机程序322作为计算机数据信号来传播或传送。

尽管存储器320被示出为单个部件/电路,但是其可以被实现为一个或多个单独的部件/电路,其中一些或全部可以被集成/可移除和/或可以提供永久/半永久/动态/高速缓存的存储。

虽然处理器310被示出为单个部件/电路,但是其可以被实现为一个或多个单独的部件/电路,其中一些或全部可以是集成/可移除的。处理器310可以是单核或多核处理器。

对“计算机可读存储介质”,“计算机程序产品”,“有形实施的计算机程序”等或“控制器”,“计算机”,“处理器”等的引用应被理解为不仅包括具有不同体系结构的计算机作为单/多处理器架构和串行(冯诺依曼)/并行架构,而且还包括专用电路,例如现场可编程门阵列(fpga),专用电路(asic),信号处理设备和其他处理电路。对计算机程序、指令、代码等的参考应当被理解为,涵盖用于可编程处理器的软件或固件,例如,硬件设备的可编程内容、用于处理器的指令、或者用于固定功能设备、门阵列或者可编程逻辑设备等的配置设置。

本申请中使用的术语“电路”指代以下所有特征:

(a)仅硬件的电路实施方式(诸如仅以模拟和/或数字电路来实施)和

(b)电路和软件(和/或固件)的组合,例如(如适用):(i)处理器的组合或(ii)共同工作以致使设备(例如,移动电话或服务器)执行各种功能的处理器/软件(包括数字信号处理器)、软件以及存储器的一部分;以及

(c)电路,诸如微处理器或微处理器的一部分,即使软件或固件实际上不存在,这些电路仍需软件或固件以运行。

“电路”的定义适用于本申请,包括所有权利要求中用到的所有该术语。另举一例,本申请中使用的术语“电路”还包括实现为只是处理器(或多个处理器),或者处理器及其(或它们的)随附软件和/或固件。举例来说,如果适用于特定权利要求特征,则术语“电路”还涵盖手机中的基带集成电路或应用程序处理器集成电路,或服务器、蜂窝网络设备、或其他网络设备中的类似集成电路。

图1中所示的块124,126,128和/或图8和/或9所示的块可以表示计算机程序322中的方法和/或代码段中的步骤。对块的特定顺序的图示不一定意味着对于块具有必需或优选的顺序,并且块的顺序和布置可以变化。此外,可以省略一些块。

图5示出了系统100的操作的示例。图5的示例中的部分a示出了场景140。场景140是现实世界场景。场景140包括三维空间,因此可以被认为是场景空间140。场景空间140由系统100监控。因此,场景空间可以被认为是被监控的场景空间140。在图5的示例中,被监控场景空间140是包括四个墙壁,天花板和地板的房间。

在一些示例中,被监控场景空间140可以不包括边界。附加地或替代地,在示例中,被监控场景空间140可以包括多个房间,该多个房间可以或可以不在空间上连接。

在图5的示例中,人150站在被监控场景空间140中。人150正在执行至少一个姿势用户输入146以限定至少一个计算机实现的虚拟边界144。可以将姿势用户输入146称为姿势146,并且可以如上参考图2所述。姿势146可以被认为是边界指示姿势146。

在所示示例中,人150正在执行姿势146以定义单个计算机实现的虚拟边界144。

姿势146包括在被监控场景空间140中的位置处的沿着路径148的运动。在图5的示例中,姿势146包括人150沿着路径148移动其手中的对象152。在该示例中,路径148是穿过被监控场景空间140的直线。

在示例中,路径148可以包括一个空间维度、两个空间维度或三个空间维度中的任何运动,并且可以采取任何形式。

图5的示例的部分c示出了被监控场景空间140的俯视图,其中示出了人150做出姿势146以限定计算机实现的虚拟边界144。

如在图5的示例的部分a和c中可以看到的,姿势146从场景140中具有坐标(x,y,z)的位置开始,其中x从左壁起测量,y从前壁起和z从地板起测量。姿势146在具有坐标(x',y'和z')(图5中未示出)的完成位置结束。

在图5的示例中,姿势146包括人150沿着路径148从起始位置(x,y,z)移动对象152,路径148是穿过被监控场景空间140的直线。

在所示的示例中,由于x的值沿着路径148改变并且y和z的值保持恒定,姿势146包括在一个空间维度中的运动。

在其他示例中,x,y和/或z的值可以沿着路径148以任何方式从被监控场景空间140中的任何起始位置变化。

图5示例的部分b和d示出了监控空间142。监控空间142包括由系统100创建和使用的被监控场景空间140的虚拟表示。监控空间142可以例如由传感器110接收的数据形成,例如接收的图像数据和/或深度数据。

部分b和d分别示出了与图5的部分a和c所示相同的视图。

在一些示例中,系统100可以使用被监控场景空间140的几何形状的信息来形成监控空间142。例如,系统100可以在监控空间140的形成中使用被监控场景空间140的三维模型。被监控场景空间140的三维模型可由系统100创建和/或可由系统100接收。用于创建被监控场景空间140的三维模型的方法在本领域中是已知的。

系统100可以使用监控空间142来监控场景空间140。例如,系统可以使用监控空间142来实现和监视至少一个虚拟边界144。

如在图5的部分a和b与部分c和d之间的箭头所示,在监控空间142和被监控场景空间140之间存在对应关系。在一些示例中,在监控空间142和被监控场景空间140之间可以存在一对一的映射。

在其他示例中,在被监控场景空间140和监控空间142之间可能存在比例不变的变换。

系统100识别由人150执行的姿势146,并且响应于在监控空间142中实现至少一个虚拟边界144来识别。在一些示例中,识别姿势146可以包括处理接收的数据,诸如图像数据。例如,系统100可以分析一个或多个视频馈送。

在示例中,虚拟边界144的至少一部分由被监控场景空间140中的路径148确定,并且虚拟边界144的至少一部分在监控空间中位于相当于被监控场景空间140中的路径位置的对应位置处。

例如,虚拟边界144的至少一部分可以沿着路径148被实现,路径148在监控空间142中处于的位置相当于被监控场景空间140中的路径148的位置。

姿势146可以是如上关于图2所述的绝对姿势或系留姿势。

如部分b和d所示,在图5的示例中,虚拟边界144是沿着路径144从监控空间142中的点(x,y,z)实现的。在监控空间中的点(x,y,z)相当于被监控场景空间140中的点(x,y,z)。

系统100可以将虚拟边界144延伸超过路径148。系统100可以使用诸如三维模型的被监控场景空间140的几何信息来延伸虚拟边界144。

在一些示例中,系统100可以将虚拟边界144延伸到监控空间142中至少一个对应于被监控场景空间140中的物理边界的边界。例如,系统100可以将虚拟边界144从第一壁延伸至第二壁和/或从地板延伸至天花板(参见图6)。

在图5的例子中,部分d的虚线示出了虚拟边界144向监控空间142的左边界和右边界的延伸,监控空间142的左边界和右边界对应于被监控场景空间140的左壁和右壁。

在一些示例中,用户可以指示包括包围区域的虚拟边界的一部分的路径148,并且系统100可以自动完成包围该区域的虚拟边界144。例如,用户可以绘制路径148,路径148是和/或包括形状的一部分,并且当实现虚拟边界144时系统100可以完成该形状。

作为示例,用户可以绘制半圆的路径,并且系统100可以自动地延伸虚拟边界144以包括完整的圆。

在一些示例中,用户可以向系统100指示虚拟边界144应该被延伸以完成使用姿势146和/或一个或多个其他输入来包围区域的边界。

在一些示例中,系统100可以从绘制的路径148推断虚拟边界144应该被延伸以包围区域,并且可以自动地延伸虚拟边界144。

系统100可以向用户提供反馈以确认系统100已经识别出姿势146并且已经实现了虚拟边界144。反馈可以包括任何合适的反馈,例如音频和/或视觉和/或触觉反馈等。附加地或替代地,系统100可以向设备发送一个或多个消息以通知用户系统100已经实现虚拟边界144。

当被监控场景空间140的一部分相对于至少一个虚拟边界144存在变化时,系统100可以处理所接收的数据以产生响应事件。例如,系统100可以处理由传感器110接收的数据,例如音频和/或图像数据,以产生响应事件。系统可以分析一个或多个音频和/或视频馈送以产生响应事件。在一些示例中,处理所接收的数据以产生响应事件可以被认为是监控虚拟边界144。

在示例中,可以使用相同的传感器(例如摄像机)来识别定义至少一个虚拟边界144的姿势146并用于监控至少一个虚拟边界144。

在一些示例中,处理接收的数据以生成响应事件可以包括处理接收到的数据以监控至少一个虚拟边界144,从而检测跨过虚拟边界144的活动和/或在虚拟边界144的阈值内的活动。例如,系统100可以处理音频和/或图像和/或深度数据以监控虚拟边界144,从而检测穿过虚拟边界144的活动或在虚拟边界144的阈值内的活动。

系统100可以允许用户验证一个或多个虚拟边界144已被实现而不产生响应事件。

例如,用户可以使用被监控场景空间140中的位置处的姿势146来定义虚拟边界144,然后可以与被监控场景空间140中的位置交互,以验证虚拟边界144是否“就位”。在示例中,用户可以移动他的身体的至少一部分(例如他的手)通过被监控场景空间中的位置,并且系统100可以提供反馈以确认用户已经触摸和/或穿过虚拟边界144。可以提供任何合适的反馈,例如音频和/或视觉和/或触觉反馈。附加地或替代地,系统100可以向用户的一个设备或多个设备发送至少一个消息。

在示例中,在用户已经验证虚拟边界144之后,系统100可以开始处理接收到的数据以产生响应事件。例如,在用户已经验证了虚拟边界144之后,系统100将不会产生警报和/或递增计数器。

响应事件可以包括例如使用通信模块130提供反馈。在一些示例中,反馈可以包括一个或多个警报。一个或多个警报可以包括任何形式的警报,例如音频和/或视觉警报。附加地或替代地,反馈可以包括向诸如移动电话,平板电脑,膝上型计算机,台式计算机等的装置提供一个或多个消息。

在一些示例中,响应事件可以附加地或替代地包括递增计数器。例如,系统100可以监控存在边界交互的次数,例如在虚拟边界144的阈值内触摸和/或穿过和/或接近的对象152。附加地或可选地,系统100可以监控边界相互作用的方向,如边界交叉的方向。系统100可以被配置为提供关于边界相互作用的统计。

在一些示例中,系统100可以用于监控老年人进入浴室和/或药柜的频率,儿童或儿童进入或靠近冰箱的频率,监视公共空间等中的人等等。

系统100的用户,例如人150可以配置响应事件。例如,用户可以执行由系统100识别的一个或多个附加姿势146以配置响应事件。附加地或替代地,用户可以使用诸如平板电脑或移动电话之类的设备向系统100提供输入以配置响应事件。

在一些示例中,当相对于虚拟边界144存在与任何对象152相关的被监控场景空间140的一部分的改变时,系统100可以处理接收到的数据以生成响应事件。例如,当任何对象152跨越、触摸和/或进入虚拟边界144的阈值内时,系统可以产生响应事件。这种虚拟边界144可以被认为是一般的虚拟边界144。

在其他示例中,当相对于虚拟边界144存在与一个或多个用户指定对象152相关的被监控场景空间140的一部分的改变时,系统可以处理接收到的数据以生成响应事件。

例如,在执行姿势146以定义至少一个虚拟边界144之后,系统100的用户150可以执行姿势146以向系统100指示一个或多个对象152。例如,用户150可以使用他的手或移动设备指向一个或多个对象152和/或可以将一个或多个对象放置在设备的取景器中。

在其他示例中,指示一个或多个对象的姿势146可以在定义虚拟边界144的姿势146之前执行。

系统100可以识别指示一个或多个对象152的姿势146,并且作为响应,系统100可以仅在被监控场景空间140的一部分发生相对于虚拟边界144的与指示对象152相关的变化时才生成响应事件。例如,仅当所指示的对象152之一跨越、接触和/或进入虚拟边界144的阈值时,系统100才可以生成响应事件。这样的虚拟边界144可以被认为是对象特定的虚拟边界。

参考图5的示例,人150可以执行姿势146来定义虚拟边界144,并且系统100可以识别姿势144并实现虚拟边界144。

然后人150可以执行进一步的姿势,例如指向自己。系统识别进一步的姿势,并且仅针对人150来监控虚拟边界144。例如,当人150跨越、触摸和/或进入虚拟边界144的阈值内,而不是任何其他对象150跨越、触摸和/或进入虚拟边界144的阈值内时,系统100可以产生响应事件,诸如警报和/或递增计数器。

在一些示例中,用户(例如人150)可以执行初始姿势146以允许姿势146定义将由系统100识别的至少一个计算机实现的虚拟边界。

例如,人150可以执行姿势146以将系统100置于用户控制状态220中,以允许用户执行边界指示姿势146。在一些示例中,将系统100置于用户控制状态中的姿势146可以是/包括由音频检测到的拍手,和/或可以使用深度数据检测的姿势146。

在示例中,系统100识别初始姿势146并进入准备识别一个或多个边界指示姿势的边界识别模式。例如,用户(例如人150)可以指向系统100的摄像机,以指示他将要执行边界指示姿势146。系统100可以向用户提供诸如音频或视觉反馈之类的反馈,以确认系统100处于边界指示模式。

在一些示例中,用户然后可以执行姿势146以限定至少一个计算机实现的虚拟边界144。

在已经实现一个或多个虚拟边界144之后,诸如人150的用户可以执行姿势146以改变一个或多个虚拟边界144。附加地或替代地,用户可以使用移动设备提供输入以改变虚拟边界。

系统100可以识别姿势146,并且作为响应可以改变一个或多个虚拟边界144。虚拟边界144的任何特征都可以以这种方式改变。例如,用户可以执行姿势146来改变虚拟边界的位置,形状,大小,高度等中的一个或多个。在示例中,可以存在任何数量的不同姿势146来改变虚拟边界144。

该改变可以是暂时的,并且系统100可以在一段时间之后将虚拟边界144恢复到其原始状态。时间量可以是预定义的,或者可以由用户配置,例如使用姿势和/或一个或多个其他输入。

在图5的示例中,在用户执行姿势146以定义虚拟边界144,并且系统已经实现了虚拟边界144之后,用户可以在与监视空间142中虚拟边界146的位置对应的被监控场景空间140的附近进行抓取运动。在图5的示例中,人150可以“抓住”路径148被绘制通过的空间。

在一些示例中,系统100可以配备有一个或多个投影仪和/或激光器,其被配置为使用增强现实技术将虚拟边界144投影到被监控场景空间140中。附加地或替代地,用户可以通过在一个或多个设备(例如眼镜)上使用增强现实来观察虚拟边界。

系统100识别抓取姿势及其靠近虚拟边界144的位置,并且在人继续抓取时,与被监控场景空间140中人的手的移动相对应地在监控空间142中移动虚拟边界。当人150释放“抓取”姿势时,系统100在新位置处实现虚拟边界144。

在一些示例中,用户可以改变虚拟边界144以暂时允许边界交互,例如虚拟边界144的接近、接触和/或交叉,而不产生响应事件。这可以利用姿势146和/或一个或多个附加输入来完成。

在一些示例中,用户(例如人150)可以执行姿势146,并且系统100识别姿势146。作为响应,系统100暂时允许诸如人150之类的一个或多个对象152接近、触摸和/或跨越虚拟边界而不产生响应事件。在示例中,改变可以在空间上是临时的,并且系统100可以允许多次接近/接触/跨越虚拟边界,而不产生响应事件。接近/触摸/跨越的数量可以是预定义的或者可以由用户配置,例如使用姿势146和/或一个或多个其他输入。

在示例中,改变可以在时间上受到限制,并且系统100可以允许接近、接触和/或跨越虚拟边界144一段时间。在示例中,时间量可以是预定义的,或者可以由用户配置,例如使用姿势146和/或一个或多个其他输入。

在一些示例中,姿势146,例如用于改变虚拟边界144的姿势146可以受空间限制。例如,如果在被监控场景空间的预定区域中执行姿势,则系统100可以仅识别这样的姿势146。在示例中,仅当姿势在高于特定高度(具有高于阈值的z值的位置)上执行时系统100才识别改变虚拟边界144的姿势146,以防止儿童例如改变虚拟边界144。

附加地和/或替代地,仅当由特定个人执行时,姿势146(诸如改变虚拟边界144的姿势146)才可被系统100识别。可以使用姿势和/或一个或多个附加输入来将授权做出特定姿势146的人指示给系统100。例如,用户可以指向被授权人和/或指向在被授权人员处的移动设备和/或将被授权的人置于设备的取景器中。

例如,在图5中,在定义虚拟边界144之后,人150可以使用他的手指在他的脸部周围画一个圆圈,以向系统100指示只允许他改变虚拟边界144。

在一些示例中,虚拟边界144可以被有条件地监控和/或有条件地启用/禁用。例如,当满足一个或多个标准但不处理接收到的数据以产生响应事件时,存在被监控场景空间140的一部分相对于虚拟边界144的变化时,系统100可以处理接收到的数据以产生响应事件。

标准可以是预定义的和/或可以由用户使用姿势和/或一个或多个附加输入来配置。

在示例中,可以使用任何标准。例如,可以使用任何时间和/或物理标准。在示例中,虚拟边界144可以取决于一天中的时间和/或星期几和/或一个月中的周和/或一年中的月份和/或独立于在被监控场景空间140中一个或多个对象152的存在,而被有条件地监控。

例如,在图5中,在定义虚拟边界144之后,人150可以执行姿势146以向系统100指示仅当他不在被监控场景空间140中时才应该监视虚拟边界144。

系统100识别姿势146,并且随后仅当人150不在被监控场景空间140中时才监控虚拟边界144。

在一些示例中,当人150离开场景空间140时,可以监控虚拟边界,并且当他返回到场景空间140时可以永久地去除虚拟边界。

在其他示例中,虚拟边界144可以被系统100存储,并且每当人150离开被监控场景空间140就启用,每当他返回到被监控场景空间140时就禁用。系统100可以存储任意数量的虚拟边界144。

图6示出了系统100的操作的示例。

图6示出了对应于图5所示的被监控场景空间140的监控空间142的示例。在图6的示例中,人150已经执行了姿势146来定义虚拟边界144,姿势146包括沿着路径148运动。

在图6中,系统100已经识别姿势146并且已经实现了虚拟边界144。在图6中,系统已将虚拟边界144延伸跨过监控空间142在相对应的被监控场景空间140中从墙壁延伸至墙壁以及从天花板延伸至地板。

系统100可以利用被监控场景空间140的几何知识来延伸虚拟边界144。例如,系统可以利用被监控场景空间140的三维模型来延伸虚拟边界144。

虚拟边界144的延伸可以是诸如人150之类的用户可选和/或可配置的。在一些示例中,系统100可以默认地将由姿势146定义的虚拟边界144延伸预定量,或从天花板到延伸至地板和/或从墙壁延伸至墙壁。

在其他示例中,用户可以向系统100提供额外的输入以延伸虚拟边界144。例如,在执行姿势146以定义虚拟边界144之后,用户可以执行至少一个另外的姿势146来向系统100指示虚拟边界144是否应该被延伸,如果是,则虚拟边界144应该被延伸。

在这样的示例中,用户可以在设备(例如,移动电话)屏幕上查看虚拟边界144,其作为图形呈现和/或作为增强现实视图,允许用户通过设备观察被监控场景空间140,其中在被监控场景空间140的实时视频之上以增强现实视图来呈现虚拟边界144。在一些示例中,设备可以包括用户佩戴的眼镜。

附加地或替代地,虚拟边界144可以使用一个或多个投影仪和/或激光器投影在被监视的场景空间140的墙壁和/或地板和/或天花板上。

例如,用户可以执行第一姿势146以指示虚拟边界144应该从墙壁到墙壁地延伸,和/或第二姿势146以指示虚拟边界应该被从地面到天花板地延伸。系统100可以识别姿势146并相应地延伸虚拟边界144。

在一些示例中,系统可以从用于定义虚拟边界144的姿势146推断如何延伸虚拟边界144。例如,如果用户围着对象152和/或围绕空间执行姿势146,则系统100可以推断仅从地板到天花板的延伸是合适的。参见图7a-c。

图7a-c示出了系统100的操作的示例。

图7a示出了被监控场景空间140的另一示例。在图7a中,在被监控场景空间140中存在儿童152,并且用户已经执行了包括围绕孩子152的路径148的姿势146。在图7a的示例中,路径148包括围绕儿童152的矩形。

图7b示出了与图7a的示例中所示被监控场景空间相对应的监控空间142。

在图7b中,系统100已经识别出姿势146,并且已经实现了由姿势146定义的虚拟边界144。在图7b的示例中,系统100已经将虚拟边界144从地板延伸到天花板。在图7b的示例中仅示出虚拟边界144的后部,以更清楚地突出显示从地板到天花板的延伸。

图7c示出了带有围绕所示儿童152的完全延伸的虚拟边界144的监控空间142。

图7a-c示例中的虚拟边界144是与儿童152相关的对象特定边界。在该示例中,系统被配置为如果儿童152跨越虚拟边界144则生成警报,如果是任何其他对象跨越虚拟边界144则不生成警报。

在一些示例中,虚拟边界144可以固定在由用于定义虚拟边界144的姿势146定义的位置。这种虚拟边界144可以被认为是固定的虚拟边界。

关于图7a-c的示例,儿童152周围的虚拟边界144可以是固定的,并且除非被用户移动,否则可以不移动。

在其他示例中,系统100可以被配置为与一个或多个对象152相关地移动虚拟边界,如上参考图5所述,可以向系统指示这一点。用户可以使用一个或多个姿势和/或一个或多个其他输入向系统100指示虚拟边界144应该与一个或多个对象152相关地移动。

这种虚拟边界144可以被认为是移动的虚拟边界。

关于图7a-c的示例,当儿童152移动时,系统100可移动虚拟边界100。在一些示例中,系统100可以自动地使移动的虚拟边界144以所指示的对象152为中心。

例如,移动的虚拟边界144可以用于确保两个对象152不进入彼此的一定距离内和/或两个对象152之间的距离不超过阈值。

在图7a-c的示例中,用户可以向系统100指示年长同胞(未示出)可能不跨越儿童152周围的虚拟边界144。在儿童152周围的虚拟边界144是跟随儿童152运动的移动虚拟边界的示例中,这确保了儿童152与年长同胞之间的最小距离。如果年长同胞跨过虚拟边界144,则可以提醒用户。

附加地/替代地,如果年长同胞在虚拟边界144内,当移动虚拟边界144由用户定义时,虚拟边界144定义可存在于两个对象(儿童和年长同胞)之间的最大距离。如果年长同胞穿过虚拟边界,则系统100可以提醒用户。

在一些示例中,用户(例如人150)可以通过用手指示儿童152,然后指示围绕儿童152的虚拟边界144的距离,而指示应该围绕对象(例如儿童152)形成移动的虚拟边界144。

在一些示例中,距离可能超过用户的臂距。在这样的示例中,用户可以将手臂伸展到侧面,并且系统100可以使用一个或多个投影仪和/或激光器开始指示虚拟边界距离,以向用户提供距离指示。系统100沿着用户的手臂移动指示并超出。当用户对距离感到满意时,他可以将他的双手放在一起,或者提供一些其他姿势来设置距离。

在一些示例中,已经指示虚拟边界144之后的系统100,例如图7a-c的示例中的系统100,系统100可以从虚拟边界144内部或者在边界144附近流式传输视频。在一些示例中,用户可以在诸如移动设备的设备上查看流式视频。

在一些示例中,生成响应事件可以包括向用户设备(例如,移动设备)流式传输视频和/或静止图像,其包括和/或聚焦于边界交互发生的位置。

在示例中,用户可以定义虚拟边界144,系统100将在该虚拟边界144内监控声音。用户可以使用一个或多个姿势146和/或一个或多个其他输入将其指示给系统100。

系统100可以识别姿势146并且监视虚拟边界144内的区域的声音。如果检测到来自虚拟边界144内的区域的声音,则系统100可以例如生成响应事件。

在一些示例中,系统100可以仅监控高于定义的阈值的声音。

例如,在图7a-c的示例中,系统100可以监控虚拟边界144内的区域的声音。因此,该系统可以用作临时婴儿监控系统。在一些示例中,系统100可以监控某种类型的声音,例如来自人和/或动物的声音等。在一些示例中,用户可以使用一个或多个姿势146和/或一个或多个附加输入来配置要监控的声音。

在示例中,用户可以使用增强现实来查看一个或多个虚拟边界144。例如,用户可以使用智能眼镜和/或基于取景器的增强现实机制来查看虚拟边界144。

在示例中,当使用增强现实观察时,虚拟边界可以包括应用虚拟边界144的一个或多个对象152的指示。该指示可以是任何合适的指示,并且可以包括文本和/或图像。

例如,在图7a-c的示例中,使用增强现实查看的虚拟边界144可以包括儿童152的半透明覆盖。

图8示出了方法800的示例。方法800可以由系统100执行。

在方框802中,识别在监控空间142中定义至少一个计算机实现的虚拟边界144的至少一个姿势146。在识别至少一个姿势146的一些示例中,可以包括处理接收的图像数据和/或接收的深度数据。姿势146包括沿着被监控场景空间140中的路径148的运动,并且在监控空间142和被监控场景空间140之间存在对应关系。

在示例中,姿势146可以如上面参考图2所述。

在方框804中,致使监控空间142中的至少一个虚拟边界144的实现。虚拟边界144的至少一部分由被监控场景空间140中的路径148确定,并且虚拟边界144的该至少一部分在监控空间142中位于相当于路径位置的对应位置处。

在示例中,实现虚拟边界144可以包括延伸虚拟边界144。例如,系统100可将虚拟边界144延伸到监控空间142中与被监控场景空间140中的物理边界对应的至少一个边界。

在方框806中,当被监控场景空间140的一部分相对于至少一个虚拟边界144存在变化时,处理接收到的数据以生成响应事件。

图9示出了方法900的示例。方法900可以由系统100执行。在一些示例中,可以省略图9中的一个或多个方框。

在方框902中,识别至少一个初始姿势146。至少一个初始姿势146可以允许至少一个姿势146定义要被识别的虚拟边界146。

例如,至少一个初始姿势146可以使系统进入边界识别模式。

方框904和906与图8中的方框802和804相同。

在方框908中,至少一个另外的姿势146被识别为指示至少一个对象152。例如,至少一个另外的姿势146可以指示相对于一个或多个虚拟边界144对一个或多个对象152进行监控。

方框910可以与方框806相同。但是,在执行方框908的示例中,系统100可以在方框910处,当关于至少一个虚拟边界被监控场景空间140的一部分关于至少一个指示对象152存在变化时,处理接收到的数据以生成响应事件。

在示例中,系统100可以处理接收到的数据以关于至少一个虚拟边界144监控至少一个指示对象152。

在方框912中,识别至少一个另外的姿势146来改变至少一个虚拟边界144。

在方框914中,至少一个虚拟边界响应于方框910中识别的至少一个另外的手势146而改变。例如,至少一个虚拟边界144可以被移动,调整大小,改变形状,取消等等。

在方框916中,生成响应事件。例如,可以提供警报和/或计数器递增。

在已经描述了结构特征的情况下,可以通过用于执行结构特征的一个或多个功能的手段来代替,无论该功能是否被明确地或隐含地描述。

本公开的示例提供了用于定义和操纵监控系统的虚拟边界的简单且直观的方式。

本文中使用“包含”一词具有包容性,不具有排他性意义。也就是说,对于“x包括y”的任何引用可以仅包括一个y或可以包括多于一个y。如果旨在使用具有排他含义的“包含”,则将在上下文中称为“仅包含一个…”或“由…组成”。

在本简短描述中,已经参考了各种示例。与示例相关的特征或功能的描述表明在该示例中存在这些特征或功能。在本文中使用术语“示例”或“例如”或“可能”表示无论是否明确表示这些特征或功能至少存在于所描述的示例中,无论是否被描述为示例,并且它们可以但不一定存在于一些或所有其他示例中。因此,“示例”,“例如”或“可能”是指一类示例中的特定实例。该实例的属性可以是该类的属性,也可以是该类的属性或类的子类的属性,该类的属性包括类中的一些但不是全部实例。因此,这隐含地公开了参考一个示例而不是参考另一示例描述的特征可以在可能的情况下用于该另一个示例,但不一定必须在该另一个示例中使用。

尽管已经参考各种示例在前面的段落中描述了本发明的实施例,但是应当理解,在不脱离所要求保护的本发明的范围的情况下,可以对给出的示例进行修改。

上文描述的特征可以以除了明确描述的组合之外的组合使用。

虽然已经参照某些特征描述了功能,但是这些功能可以由其他特征来执行,无论是否被描述。

虽然已经参考某些实施例描述了特征,但是在其他实施例中也可以存在这些特征,无论是否描述。

尽管在前述说明书中努力提请注意被认为特别重要的本发明的特征,但是应当理解,申请人要求保护关于上文所指和/或在附图中所示的任何可专利特征或特征的组合,不管是否特别强调了这一点。

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