用于图像变化检测的方法和设备与流程

文档序号:21548102发布日期:2020-07-17 18:00阅读:359来源:国知局
用于图像变化检测的方法和设备与流程

要求优先权

本专利申请要求享受于2017年12月7日递交的、标题为“methodsanddevicesforimagechangedetection”的美国非临时申请no.15/835,322,该申请被转让给本申请的受让人并且据此通过引用方式明确地并入本文中。

概括而言,本公开内容涉及图像处理,包括但不限于用于图像变化检测的设备和方法。



背景技术:

背景减法(也被称为前景检测)是一种用于从其中图像已改变的一个或多个区中区分图像的背景的方法。背景减法可以是基于在当前帧与参考帧之间检测到的图像变化的,这可以被称为“背景模型”。图像变化检测可以用于检测视频流中的移动对象,诸如来自安全摄像头的视频流。



技术实现要素:

本公开内容的系统、方法和设备各自具有若干创新方面,其中没有一个方面单独地对本文公开的期望属性负责。

本公开内容中描述的主题的一个创新方面可以在一种图像变化检测的方法中实现。所述方法可以涉及:以两个或更多个曝光水平来获得场景的至少一部分的像素值。每个曝光水平可以对应于与另一曝光水平的曝光时间间隔不同的曝光时间间隔和/或与另一曝光水平的施加增益不同的施加增益。在一些示例中,所述方法可以涉及:将所述像素值聚合为超像素值。所述超像素值中的每个超像素值可以包括多个像素值。

在一些示例中,所述方法可以涉及:获得对应于每个曝光水平的背景模型。所述背景模型可以对应于所述场景的至少一部分。根据一些实现方式,所述方法可以涉及:将对应于每个曝光水平的所述超像素值与对应于每个曝光水平的所述背景模型进行比较,以获得针对每个曝光水平的图像变化检测结果。在一些情况下,所述方法可以涉及:将针对每个曝光水平的所述图像变化检测结果聚合,以获得经组合的图像变化检测结果。根据一些示例,所述方法可以涉及:根据所述经组合的图像变化检测结果来确定针对所述场景的至少一个感兴趣区域和/或至少一个背景区域。在一些实现方式中,所述方法可以涉及:响应于所述经组合的图像变化检测结果来发送警报消息和/或图像。

根据一些实现方式,所述确定可以涉及:确定感兴趣区域。在一些这样的实现方式中,所述方法还可以涉及:至少部分地基于针对所述感兴趣区域获得的像素值来更新所述曝光水平中的至少一个曝光水平。

在一些示例中,获得所述像素值可以涉及:从光学传感器获得所述像素值。根据一些实现方式,获得所述背景模型可以涉及:从存储器设备获得所述背景模型。在一些情况下,所述背景模型可以包括参考帧的至少一部分。

根据一些示例,获得针对所述曝光水平中的至少一个曝光水平的所述图像变化检测结果可以涉及:仅将全部数量的超像素值的一部分用于对应的曝光水平。在一些实现方式中,所述方法可以涉及:获得关于所述场景的一个或多个区域的显著区域数据,并且根据所述显著区域数据来调整至少一个曝光水平。获得所述显著区域数据可以例如涉及:获得环境光强度信息或感兴趣区域信息中的至少一项。

在一些情况下,所述方法可以涉及:至少部分地基于针对所述场景的至少一部分获得的像素值来更新所述参考帧的至少一部分。根据一些示例,所述方法可以涉及:至少部分地基于针对所述场景的至少一部分获得的像素值来更新所述曝光水平中的至少一个曝光水平。

在一些示例中,获得所述像素值可以涉及:以第一曝光水平来获得所述场景的至少一部分的像素值。根据一些这样的示例,所述方法还可以涉及:确定应当以一个或多个其它曝光水平来获得像素值。

本公开内容中描述的主题的其它创新方面可以在一种装置或系统中实现。所述装置或系统可以包括光学传感器和被配置用于与所述光学传感器进行通信的控制系统。所述控制系统可以包括一个或多个通用单芯片或多芯片处理器、数字信号处理器(dsp)、专用集成电路(asic)、现场可编程门阵列(fpga)或其它可编程逻辑器件、分立门或晶体管逻辑、分立硬件组件、或其组合。

所述控制系统可以被配置用于:从所述光学传感器获得以两个或更多个曝光水平的场景的至少一部分的像素值。每个曝光水平可以对应于与另一曝光水平的曝光时间间隔不同的曝光时间间隔和/或与另一曝光水平的施加增益不同的施加增益。根据一些示例,所述控制系统可以被配置用于:将所述像素值聚合为超像素值。所述超像素值中的每个超像素值可以包括多个像素值。在一些示例中,所述控制系统可以被配置用于:获得对应于每个曝光水平的背景模型。所述背景模型可以对应于所述场景的至少一部分。

根据一些实现方式,所述控制系统可以被配置用于:将对应于每个曝光水平的所述超像素值与对应于每个曝光水平的所述背景模型进行比较,以获得针对每个曝光水平的图像变化检测结果。在一些示例中,所述控制系统可以被配置用于:将针对每个曝光水平的所述图像变化检测结果聚合,以获得经组合的图像变化检测结果。在一些情况下,所述控制系统可以被配置用于:根据所述经组合的图像变化检测结果来确定针对所述场景的至少一个感兴趣区域和/或至少一个背景区域。

在一些情况下,所述确定可以涉及:确定感兴趣区域。所述控制系统可以被配置用于:至少部分地基于针对所述感兴趣区域获得的像素值来更新所述曝光水平中的至少一个曝光水平。

根据一些示例,所述系统可以包括接口。所述控制系统可以被配置用于:响应于所述经组合的图像变化检测结果,经由所述接口来发送警报消息或图像中的至少一项。

在一些示例中,获得针对所述曝光水平中的至少一个曝光水平的所述图像变化检测结果可以涉及:仅将全部数量的超像素值的一部分用于对应的曝光水平。

根据一些示例,所述控制系统可以被配置用于:获得关于所述场景的一个或多个区域的显著区域数据,并且根据所述显著区域数据来调整至少一个曝光水平。获得所述显著区域数据可以例如涉及:获得环境光强度信息和/或感兴趣区域信息。

根据一些实现方式,所述系统可以包括用户接口。在一些这样的实现方式中,获得所述显著区域数据可以涉及:经由所述用户接口接收所述显著区域数据。

在一些实现方式中,所述装置(例如,所述控制系统)可以包括存储器设备。根据一些这样的示例,获得所述背景模型可以涉及:从所述存储器设备获得所述背景模型。

在一些示例中,所述控制系统可以被配置用于:至少部分地基于针对所述场景的至少一部分获得的像素值来更新所述曝光水平中的至少一个曝光水平。根据一些实现方式,所述控制系统可以被配置用于:以第一曝光水平来获得所述场景的至少一部分的像素值,并且确定应当以一个或多个其它曝光水平来获得像素值。

本文描述的一些或全部方法可以由一个或多个设备根据存储在一个或多个非暂时性介质上的指令(例如,软件)来执行。这样的非暂时性介质可以包括诸如本文描述的存储器设备之类的存储器设备,包括但不限于随机存取存储器(ram)设备、只读存储器(rom)设备等。因此,本公开内容中描述的主题的一些创新方面可以在具有存储在其上的软件的一个或多个非暂时性介质中实现。

例如,软件可以包括用于控制一个或多个设备执行一种图像变化检测的方法的指令。所述方法可以涉及:以两个或更多个曝光水平来获得场景的至少一部分的像素值。每个曝光水平可以对应于与另一曝光水平的曝光时间间隔不同的曝光时间间隔和/或与另一曝光水平的施加增益不同的施加增益。在一些示例中,所述方法可以涉及:将所述像素值聚合为超像素值。所述超像素值中的每个超像素值可以包括多个像素值。

在一些示例中,所述方法可以涉及:获得对应于每个曝光水平的背景模型。所述背景模型可以对应于所述场景的至少一部分。根据一些实现方式,所述方法可以涉及:将对应于每个曝光水平的所述超像素值与对应于每个曝光水平的所述背景模型进行比较,以获得针对每个曝光水平的图像变化检测结果。在一些情况下,所述方法可以涉及:将针对每个曝光水平的所述图像变化检测结果聚合,以获得经组合的图像变化检测结果。根据一些示例,所述方法可以涉及:根据所述经组合的图像变化检测结果来确定针对所述场景的至少一个感兴趣区域和/或至少一个背景区域。在一些实现方式中,所述方法可以涉及:响应于所述经组合的图像变化检测结果来发送警报消息和/或图像。

根据一些实现方式,所述确定可以涉及:确定感兴趣区域。在一些这样的实现方式中,所述方法还可以涉及:至少部分地基于针对所述感兴趣区域获得的像素值来更新所述曝光水平中的至少一个曝光水平。

在一些示例中,获得所述像素值可以涉及:从光学传感器获得所述像素值。根据一些实现方式,获得所述背景模型可以涉及:从存储器设备获得所述背景模型。在一些情况下,所述背景模型可以包括参考帧的至少一部分。

根据一些示例,获得针对所述曝光水平中的至少一个曝光水平的所述图像变化检测结果可以涉及:仅将全部数量的超像素值的一部分用于对应的曝光水平。在一些实现方式中,所述方法可以涉及:获得关于所述场景的一个或多个区域的显著区域数据,并且根据所述显著区域数据来调整至少一个曝光水平。获得所述显著区域数据可以例如涉及:获得环境光强度信息或感兴趣区域信息中的至少一项。

在一些情况下,所述方法可以涉及:至少部分地基于针对所述场景的至少一部分获得的像素值来更新所述参考帧的至少一部分。根据一些示例,所述方法可以涉及:至少部分地基于针对所述场景的至少一部分获得的像素值来更新所述曝光水平中的至少一个曝光水平。

在一些示例中,获得所述像素值可以涉及:以第一曝光水平来获得所述场景的至少一部分的像素值。根据一些这样的示例,所述方法还可以涉及:确定应当以一个或多个其它曝光水平来获得像素值。

附图说明

在附图和以下描述中阐述了本说明书中描述的主题的一种或多种实现方式的细节。根据描述、附图和权利要求书,其它特征、方面和优点将变得显而易见。要注意的是,下图的相对尺寸可能未按比例绘制。各个附图中相似的附图标记和标号指示相似的元素。

图1是示出根据一些实现方式的装置的示例组件的框图。

图2是提供根据一些公开的方法的操作的示例的流程图。

图3a示出了原始图像的示例。

图3b示出了示例,其中图3a所示的原始图像中的每个像素已经被聚合为超像素。

图4示出了与背景模型相对应的图像的示例。

图5a示出了图4的背景图像中的超像素的示例,对于这些超像素而言,对暗对象的检测可能是有问题的。

图5b示出了图4的背景图像中的超像素的示例,对于这些超像素而言,对亮对象的检测可能是有问题的。

图6示出了图像变化区域的示例。

图7是提供根据一些公开的方法的操作的示例的流程图。

具体实施方式

为了描述本公开内容的创新方面,以下描述针对某些实现方式。然而,本领域普通技术人员将容易认识到的是,本文中的教导可以以多种不同方式来应用。可以在包括如本文所公开的装置或系统的任何设备、装置或系统中实现所描述的实现方式。另外,可以预期的是,所描述的实现方式可以被包括在各种电子设备中或与其相关联,诸如但不限于:移动电话、启用多媒体互联网的蜂窝电话、移动电视接收机、无线设备、智能手机、智能卡、可穿戴设备(诸如手链、臂带、腕带、戒指、头带、贴片等)、设备、个人数据助理(pda)、无线电子邮件接收机、手持或便携式计算机、上网本、笔记本、智能本、平板电脑、打印机、复印机、扫描仪、传真设备、全球定位系统(gps)接收机/导航器、相机、数字媒体播放器(诸如mp3播放器)、便携式摄像机、游戏控制台、手表、时钟、计算器、电视监视器、平板显示器、电子阅读设备(例如,电子阅读器)、移动健康设备、计算机显示器、自动显示器(包括里程表和速度计显示器等)、驾驶舱控制和/或显示器、摄像机视图显示器(诸如车辆中的后视摄像机的显示器)、电子照片、电子广告牌或标牌、投影仪、建筑结构、微波炉、冰箱、立体声系统、盒式录音机或播放器、dvd播放器、cd播放器、vcr、收音机、便携式存储器芯片、洗衣机、干衣机、洗衣机/干衣机、停车收费表、包装(诸如在电机系统(ems)应用中,包括微机电系统(mems)应用以及非ems应用)、美学结构(诸如在一件珠宝或衣服上显示图像)和各种ems设备。本文中的教导还可以用于诸如但不限于以下各项的应用中:电子开关设备、射频滤波器、传感器、加速计、陀螺仪、运动感应设备、磁力计、消费电子产品的惯性组件、消费电子产品的零件、方向盘或其它汽车零件、变容二极管、液晶设备、电泳设备、驱动方案、制造工艺和电子测试装置。因此,这些教导并不旨在限于仅在附图中描绘的实现方式,而是具有广泛的适用性,这对于本领域普通技术人员将是显而易见的。

本文公开的各种实现方式可以包括一种装置,其可以被配置为以多个曝光水平来获得场景的图像数据。图像数据可以对应于光学传感器像素值和/或超像素值。如本文使用的,术语“曝光”可以是指曝光时间间隔、施加增益、或曝光时间间隔和施加增益的组合。在一些这样的示例中,装置可以被配置为:以“曝光过度”水平来获得场景的图像数据,“曝光过度”水平对应于相对较长的曝光时间和/或相对较大的施加增益。替代地或另外,装置还可以被配置为以“曝光不足”水平来获得场景的图像数据,“曝光不足”水平对应于相对较短的曝光时间和/或相对较小的施加增益。

可以实现本公开内容中描述的主题的特定实现方式,以实现以下潜在优点中的一个或多个。与仅使用一个曝光水平检测到的图像变化相比,可以通过以一个或多个曝光过度水平和/或曝光不足的曝光水平获得同一场景的图像数据来检测额外的图像变化。因此,以多个曝光水平获得图像数据可以提供更可靠的图像变化检测过程,尤其是在场景包括相对宽的光强度范围的情况下。这样的方法对于室外用例可能是特别有利的。例如,在许多安全摄像头用例中,在一天中的一些时间期间,太阳可能照在传感器上。同时,安全摄像头可能正在监测阴影中的区域,诸如小巷。在许多这样的情况下,不存在将适合于场景的亮区域和暗区域两者的单一曝光设置。当通过低功率光学传感器和/或具有相对低位宽的光学传感器捕获图像时,这样的方法可能特别有益。这部分是因为低功率光学传感器或具有低位宽的光学传感器可能具有相对低的动态范围。

通常情况下,图像的感兴趣区域(roi)是图像的前景中的对象(诸如人、动物、汽车等)。如上所述,背景减法是用于将背景与roi区分开的一种方法。背景减法可以是至少部分地基于在当前帧和参考帧之间检测到的图像变化的,这可以被称为“背景模型”。图像变化检测可以用于检测视频流中的移动对象,诸如来自安全摄像头的视频流、来自门铃摄像头的视频流、来自婴儿监控摄像头的视频流、来自与声控设备相关联的摄像头的视频流等。(如本文使用的,术语“摄像头”可用于指代具有变化的能力和复杂性的一系列设备中的任何一种设备,包括安全摄像头、简单的光学传感器等)。例如,如果当前像素(或当前像素组)与背景模型的对应部分之间的差大于或等于门限值,则当前像素或当前像素组可以被视为前景的一部分。

图1是示出根据一些实现方式的装置的示例组件的框图。在该示例中,装置100包括光学传感器105和被配置为与光学传感器105进行通信的控制系统110。控制系统110可以被配置为经由有线通信和/或无线通信与光学传感器105进行通信。如本文所使用的,术语“耦合到”包括被物理耦合以用于有线通信以及被配置用于无线通信。

根据一些实现方式,装置100可以是单个设备,而在其它实现方式中,装置100可以包括一个以上的设备。因此,术语“设备”和“系统”在本文中可以互换使用。在其它示例中,装置100可以是另一设备的组件。例如,在一些实现方式中,光学传感器105和/或控制系统110的至少一部分可以被包括在一个以上的设备中。在一些示例中,第二设备可以包括控制系统110中的一些或全部,但是可以不包括光学传感器105。然而,控制系统110仍然可以被配置为与光学传感器105进行通信。

控制系统110可以包括一个或多个通用单芯片或多芯片处理器、数字信号处理器(dsp)、专用集成电路(asic)、现场可编程门阵列(fpga)或其它可编程逻辑器件、分立门或晶体管逻辑、分立硬件组件或其组合。控制系统110还可以包括一个或多个存储器设备(和/或被配置为与其进行通信),诸如一个或多个随机存取存储器(ram)设备、只读存储器(rom)设备和/或其它类型的非暂时性介质。因此,装置100可以具有包括一个或多个存储器设备的存储器系统,尽管在图1中未示出该存储器系统。

控制系统110能够至少部分地执行本文公开的方法。在一些示例中,控制系统110能够根据存储在非暂时性介质上的指令(例如,软件)执行本文描述的一些或全部方法。例如,控制系统110可以被配置用于控制光学传感器105和/或用于接收和处理来自光学传感器105的至少一部分的数据,例如,如下所述。

在一些示例中,光学传感器105可以包括图像传感器阵列和一个或多个透镜。尽管在图1中被示为单独的组件,但是在一些示例中,光学传感器105可以包括控制系统110的至少一部分。例如,在一些情况下,光学传感器105可以包括一个或多个处理器。根据一些实现方式,光学传感器105可以包括互补金属氧化物半导体(cmos)传感器。光学传感器105的一些这样的实现方式可以包括被配置为控制曝光设置的处理器。取决于特定实现方式,传感器和处理器可以位于或可以不位于同一管芯上。在一些示例中,光学传感器105可以是或可以包括高通公司的glance图像传感器,其一种实现方式具有320×240的像素阵列和8位的宽度,并且消耗数毫瓦的功率,包括光学传感器所使用的功率以及相关联的处理所消耗的功率。相比之下,智能手机中的相机模块通常消耗数百毫瓦的功率,或者在一些情况下消耗数瓦的功率。

尽管在图1中未明确示出,但是装置100的一些实现方式可以包括接口系统。在一些示例中,接口系统可以包括无线接口系统。在一些实现方式中,接口系统可以包括网络接口、控制系统110与光学传感器105之间的接口、控制系统110与存储器系统之间的接口、和/或控制系统110与外部设备接口(例如,端口或应用处理器)之间的接口。在一些示例中,接口系统可以包括一个或多个用户接口,诸如显示器、触摸屏、麦克风等。

当图像被低功率光学传感器和/或具有相对低的位宽的光学传感器捕获时,图像变化检测可能特别具有挑战性。由于glance平台和其它简单的低功耗光学传感器的功率和位宽限制,在同一图像上存在非常亮和/或非常暗的区域可以造成图像变化检测问题。这样的区域可能太亮(或太暗),以致无法检测到高于(或低于)背景模型某一门限的值。可能不存在这样简单的低功率光学传感器的如下设置:该设置将提供足够的动态范围以检测非常亮和/或非常暗的区域中的图像变化。因此,一些前景事件可能无法通过使用现有技术方法检测到。

图2是提供根据一些公开的方法的操作的示例的流程图。例如,图2的框(以及本文提供的其它流程图的框)可以例如由图1的装置100、由类似的装置、或由包括一个或多个这样的设备的系统来执行。与本文公开的其它方法一样,图2中概述的方法可以包括比所指示的框更多或更少的框。此外,本文公开的方法的框不必按所指示的顺序执行。

根据该示例,方法200涉及:以两个或更多个曝光水平来获得场景的图像数据。如本文所使用的,术语“曝光”可以是指曝光时间间隔、施加增益、或曝光时间间隔和施加增益的组合。在一些这样的示例中,装置可以被配置为以“曝光过度”水平来获得场景的图像数据,“曝光过度”水平对应于相对较长的曝光时间和/或相对较大的施加增益。替代地或另外,装置还可以被配置为以“曝光不足”水平来获得场景的图像数据,“曝光不足”水平对应于相对较短的曝光时间和/或相对较小的施加增益。根据一些示例,装置可以被配置为通过在第一时间从光学传感器读取值来以“曝光不足”水平获得场景的图像数据,“曝光不足”水平对应于相对较短的曝光时间和/或相对较小的施加增益,然后允许光学传感器累积电荷,直到获得处于“曝光过度”水平的场景的图像数据的第二或更晚的时间为止,“曝光过度”水平对应于相对较长的曝光时间和/或相对较大的施加增益

曝光过度水平和曝光不足水平可以是相对于一个或多个中间曝光水平而言的。在一些这样的示例中,可能存在三个、四个、五个或更多的暴光水平。在一个这样的示例中,曝光过度水平和曝光不足水平是相对于基线曝光水平而言的,基线曝光水平可以对应于整体环境光强度。例如,在安全摄像头的情况下,基线曝光水平可以是默认或预设的曝光水平,安全摄像头将针对环境光强度值的特定范围来自动地选择该默认或预设的曝光水平。安全摄像头的控制系统可以例如引用存储在存储器中的查找表或其它数据结构。数据结构可以包括环境光强度值和对应的曝光水平值。曝光水平值可以包括曝光时间间隔值和/或施加增益值。然而,在一些示例中,可能存在三个以上的曝光水平。这样的示例可以包括在最曝光过度水平与最曝光不足水平之间的多个中间曝光水平。

对于在阳光下的一些室外用例,对于光学传感器(诸如glance传感器)而言,200微秒或250微秒可以是适当的基线曝光时间。在暗区域中,适当的基线曝光时间可以是一毫秒或更多毫秒。在非常暗的区域中,适当的基线曝光时间可能远大于一毫秒,例如10或20毫秒。在具有三个曝光水平的一个示例中,如果基线曝光水平与一毫秒的曝光时间间隔相对应,则曝光过度水平可以与是一毫秒的倍数的曝光时间间隔(诸如两毫秒或四毫秒)相对应。曝光不足水平可以与是一毫秒的分数(例如半毫秒或四分之一毫秒)的曝光时间间隔相对应。替代地或另外,如果基线曝光水平与v伏的增益相对应,则在一些示例中,曝光过度水平可以与2v或4v伏的增益相对应,而曝光不足水平可以与0.5v或0.25v的增益相对应。

因此,一些实现方式可以涉及:基线曝光水平的2倍和/或4倍的曝光过度和基线曝光水平的1/2和/或1/4的曝光不足。在一个示例中,曝光可以是4倍、2倍、正常、1/2和1/4。对于其中可能存在从直射阳光到阴影的宽的光强度范围的室外用例,具有较大的曝光范围尤其有用。一些示例可以涉及:至少部分地基于针对场景的至少一部分获得的像素值来更新曝光水平中的至少一个曝光水平。例如,对于晴天中午的室外安全摄像头,与黎明、黄昏或夜间的同一安全摄像头相比,不同的曝光水平范围可能是适当的。

在图2所示的示例中,框205涉及:以两个或更多个曝光水平来获得场景的至少一部分的像素值。在该示例中,每个曝光水平对应于与另一曝光水平的曝光时间间隔不同的曝光时间间隔和/或与另一曝光水平的施加增益不同的施加增益。在一些示例中,框205可以涉及:控制系统(诸如图1的控制系统110)从光学传感器(诸如图1的光学传感器105)接收像素值。替代地,框205可以涉及:光学传感器(诸如图1的光学传感器105)的控制系统从光学传感器的图像传感器阵列接收像素值。

在一些示例中,光学传感器的像素值可以被聚合为“超像素”,以便减少计算开销和存储器要求。因此,取决于特定实现方式,用于图像变化检测的图像数据可以对应于像素值或超像素值。可以将超像素值视为像素组中的平均像素强度的代理。因此,在该示例中,框210涉及:将像素值聚合为超像素值,其中,超像素值中的每个超像素值包括多个像素值。现在将参照图3a和3b描述一个示例。

图3a示出了原始图像的示例。图3b示出了其中图3a所示的原始图像中的每个像素已经被聚合为超像素的示例。在该示例中,超像素300是正方形。在其它示例中,超像素300可以具有其它形状,诸如非正方形矩形。根据一个这样的示例,超像素300是矩形并且包括沿着超像素的一个轴的16个像素和沿着超像素的垂直轴的12个像素。然而,在其它实现方式中,超像素300可以包括不同数量的像素和/或不同的形状。

根据一些实现方式,每图像可能存在比图3b所示的超像素的数量更多或更少的超像素。在一些实现方式中,每图像可能仅存在100个超像素。然而,替代示例可以涉及将图像像素聚合为80、90、110、120、130、140、150个超像素或多于150个超像素。要在每个超像素中聚合的图像像素的数量可能取决于各种因素,诸如期望分辨率、传感器中图像像素的数量、功耗考虑等。例如,相对较大的超像素(和/或相对较少数量的超像素)对于避免某些类型的误报(诸如在风中移动的树枝)可能是更好的。此外,减少超像素的数量可以减少计算开销和功耗。然而,具有相对较大数量的超像素可以改善图像质量。在图3b–6所示的示例中,图像像素被聚合为数百个超像素,以便在原始图像和基于超像素的图像之间保持可由人类观察者观察的某种相似性。

在一些示例中,将像素聚合为超像素可以由硬件(例如,光学传感器的硬件)来执行。例如,可以通过组合由超像素的每个像素累积的电荷并且对总值进行一次测量,来在硬件中将像素聚合为超像素。可以通过评估超像素的每个像素所累积的电荷,或者通过评估超像素内的像素组所累积的电荷,并且然后将对应的值相加在一起,来经由软件执行将像素聚合为超像素。这样的示例具有减少计算开销以及光学传感器和/或与光学传感器进行通信的控制系统的相应功耗的潜在优势。然而,在替代实现方式中,可以由控制系统根据存储在一个或多个非暂时性介质上的指令(例如,软件)来将像素聚合成超像素。这样的非暂时性介质可以包括诸如本文描述的存储器设备之类的存储器设备,包括但不限于随机存取存储器(ram)设备、只读存储器(rom)设备等。

如上所述,背景减法可以是基于在当前帧与参考帧之间检测到的图像变化的,其在本文中也可以被称为背景模型。图像变化可以对应于移动对象。背景模型可以是场景的至少一部分的静态版本的表示,其没有移动对象。

可以更新背景模型以便捕获场景的至少一部分的照明条件的变化、场景布局变化等。因此,一些实现方式可以涉及:至少部分地基于针对场景的至少一部分获得的像素值或超像素值来更新参考帧。室内场景布局变化的示例可以包括升高或降低窗帘、移动家具等。室外场景布局变化的示例可以包括先前停放的车辆、新停放的车辆等的移动。

图4示出了与背景模型相对应的图像的示例。在该示例中,背景模型是图3b所示的头部305是图像的一部分之前创建的参考帧。

根据图2所示的实现方式,框215涉及:获得与每个曝光水平相对应的背景模型。如上所述,背景模型可以是场景的至少一部分的静态版本的表示。根据一些这样的示例,框215可以涉及:控制系统从存储器设备获得与每个曝光水平相对应的背景模型。在该示例中,框220涉及:将对应于每个曝光水平的超像素值与对应于每个曝光水平的背景模型进行比较,以获得针对每个曝光水平的图像变化检测结果。

在一些多次曝光实现方式中,可以将每次曝光的超像素值与不同的背景模型进行比较,以进行图像变化检测,其中每个背景模型对应于特定的曝光水平。例如,可能存在与曝光过度水平相对应的背景模型、与曝光不足水平相对应的背景模型、以及与中间或基线曝光水平相对应的背景模型。在一些多次曝光实现方式中,可以在框205中获得场景的仅一部分的像素值。在一些这样的实现方式中,可以在框215中获得场景的仅对应部分的背景模型。

在替代实现方式中,可以将每个曝光过度或曝光不足的超像素值与相同背景模型的修改版本进行比较,以进行图像变化检测。例如,框215可以涉及:通过应用常数或函数来修改与基线曝光水平相对应的背景模型的超像素值,以获得与一个或多个曝光过度水平相对应的背景模型的超像素值。根据一些这样的实现方式,框215可以涉及:将不同的常数或函数应用于与基线曝光水平相对应的背景模型的超像素值,以获得与一个或多个曝光不足水平相对应的背景模型的超像素值。

以多个曝光水平获得图像数据具有一些潜在的益处。如上所述,可能不存在简单的低功率光学传感器的如下设置:该设置将提供足够的动态范围以检测非常亮和/或非常暗的区域中的图像变化。这样的区域可能太亮(或太暗),以致不允许高于(或低于)背景模型某一门限的值。因此,一些前景事件可能无法通过使用现有技术方法检测到。

图5a示出了图4的背景图像中的超像素的示例,对于这些超像素而言,对暗对象的检测可能是有问题的。在该示例中,图5a中的白色区域显示了图4的背景模型中的超像素,当以基线曝光水平获得场景的图像数据时,这些超像素可能太暗而无法检测到较暗的对象。然而,通过以一个或多个“曝光过度”的曝光水平获得场景的至少一部分的图像数据,可以在这些区域中检测到较暗的对象。

图5b示出了图4的背景图像中的超像素的示例,对于这些超像素而言,对亮对象的检测可能是有问题的。图5b中的白色区域显示了图4的背景图像中的超像素,当以基线曝光水平获得场景的图像数据时,这些超像素可能太亮而无法检测到较亮的对象。然而,通过以一个或多个“曝光不足”的曝光水平获得场景的至少一部分的图像数据,可以在这些区域中检测到较亮的对象。

在一些情况下,即使对于中间范围的背景图像的区域(诸如在图5a或图5b中未显示为白色的那些区域),以多个曝光水平获得图像数据也可以允许对图像变化更加敏感。因此,可以通过以一个或多个曝光过度或曝光不足的曝光水平获得相同场景的图像数据,来检测额外的图像变化(与仅使用一个曝光水平检测到的图像变化相比)。因此,以多个曝光水平获得图像数据可以提供更可靠的图像变化检测过程,尤其是在场景包括相对宽的光强度范围的情况下。

如上所述,图2和本文公开的方法的框不必以所指示的顺序执行。例如,在一些实现方式中,方法200可以涉及:在框205中,以第一曝光水平获得场景的至少一部分的第一像素值;在框210中,将第一像素值聚合为第一超像素值;然后在框215中,获得用于该曝光水平的背景模型。在一些这样的实现方式中,方法200可以涉及:在框205中,以第二曝光水平获得场景的至少一部分的像素值;在框210中,将第二像素值聚合为第二超像素值;然后在框215中,获得用于该第二曝光水平的背景模型。一些这样的示例可以涉及:在框205中,以一个或多个额外的曝光水平获得场景的至少一部分的像素值;在框210中,将像素值聚合为超像素值;然后在框215中,获得用于一个或多个额外的曝光水平中的每个曝光水平的背景模型。

根据一些示例,可以做出关于是否以多于单个曝光水平(诸如第一曝光水平)获得场景的至少一部分的像素值的确定。下面参照图7描述一些这样的实现方式。

一些实现方式可以涉及:将对应于每个曝光水平的超像素值与对应于每个曝光水平的背景模型进行比较,以获得针对每个曝光水平的图像变化检测结果。“图像变化检测结果”可以包括零个、一个或多于一个的检测到的图像变化的区域。在一些示例中,相对于对应的背景模型,大于门限量的变化的每个实例将被视为检测到的图像变化的区域。

如上所述,在图2的一个示例框220中,涉及:将对应于每个曝光水平的超像素值与对应于每个曝光水平的背景模型进行比较,以获得针对每个曝光水平的图像变化检测结果。根据一些示例,可以针对每个帧使用不同的曝光/增益水平,在连续的帧中执行框220。在一些替代示例中,可以针对每个实例使用不同的曝光/增益水平,在同一帧期间多次执行框220。

取决于特定实现方式,可以使用各种图像变化检测方法。对于涉及低功率光学传感器和/或具有相对低的位宽的光学传感器的实现方式,简单的背景减法方法可能是优选的。根据一些这样的方法,如果由超像素获得的光强度值与背景模型的对应超像素的光强度值之间的差大于或等于门限值,则可以将当前超像素视为前景的一部分。然而,其它实现方式可以采用替代的背景检测方法。例如,一些替代实现方式可以使用运行高斯平均背景检测方法、时间中值滤波器背景检测方法、核密度估计背景检测方法等。

图6示出了图像变化区域的示例。在该示例中,图像变化区域600以白色示出。这里,已经通过将对应于图4所示的图像的单个曝光水平的背景模型的超像素值与对应于图3b的图像的超像素值进行比较确定了图像变化区域600。在这种情况下,图3b的图像的超像素值对应于与背景模型的超像素值相同的曝光水平。在该示例中,图像变化区域600包括多个图像变化检测结果,其中的每个图像变化检测结果对应于图像变化区域600的白色超像素。

再次返回图2,框225涉及:将针对每个曝光水平的图像变化检测结果聚合,以获得经组合的图像变化检测结果。在一些示例中,可以组合针对每个曝光水平的检测到的图像变化的区域,以产生经组合的图像变化检测结果。可以根据经组合的图像变化检测结果确定场景的背景和/或前景区域。因此,在该示例中,框230涉及:根据经组合的图像变化检测结果确定场景的至少一个感兴趣区域或至少一个背景区域。

再次参照图6,可以看到图像变化区域600围绕区域605,在区域605内,在对应的超像素与背景模型之间没有足够大的差异以在该示例中已经检测到图像变化。区域605对应于头部305的反射区域,在图3b中示出头部305。可以通过以相对更加曝光不足的曝光水平(与用于获得图6所示的结果的曝光水平相比)获得像素值,并且然后执行图2中框210至220的操作,来获得针对该反射区域(以及可能针对头部305的其它反射区域,诸如与图6的区域610相对应的反射区域)的图像变化检测结果。

如果基于相对更加曝光不足的曝光水平的图像变化检测过程成功,则图6的区域605和/或区域610可以是该过程的图像变化检测结果。图2的框225可以涉及:将图6的区域605和/或图6的区域610与图像变化区域600聚合。图2的框230可以涉及:确定包括图6的图像变化区域600、区域605和/或区域610的感兴趣区域。

一些实现方式可以涉及:至少部分地基于针对感兴趣区域获得的像素值来更新曝光水平中的至少一个曝光水平。在前述示例中,一些这样的实现方式可以涉及:至少部分地基于针对图6的区域605和/或图6的区域610获得的像素值来更新曝光水平中的至少一个曝光水平。

一些示例可以涉及:仅将全部数量的像素或超像素值的一部分用于一个或多个曝光。获得针对曝光水平中的至少一个曝光水平的图像变化检测结果可以例如涉及:仅将全部数量的超像素值的一部分用于对应的曝光水平。在一些这样的示例中,可以使用不同的曝光水平来获得场景的不同区域的图像数据。在一些情况下,多个曝光水平可以用于同一图像。在一些这样的实现方式中,可以在框215中获得用于场景的仅一部分(例如,与其中针对每个曝光水平获得像素值的区域相对应的部分)的背景模型。

例如,再次参照图5a,一些实现方式可以涉及:以一个曝光水平(或多个曝光水平)从区域505获得图像数据,并且以一个或多个其它曝光水平从场景的其它部分获得图像数据。一些示例可以涉及:以一个曝光水平(或多个曝光水平)从区域510获得图像数据,并且以一个或多个其它曝光水平从场景的其它部分获得图像数据。与用于场景或场景的其余部分的基线曝光水平相比,用于区域505和510的曝光水平可以例如是一个或多个“曝光过度”曝光水平。通过以“曝光过度”曝光水平获得场景的图像数据,可以在区域505和510中检测到相对较暗的对象。根据一些这样的实现方式,在其期间以多个曝光水平获得图像数据的时间可以重叠。例如,可以同时从区域505和/或510以及场景的其它区域(例如,从图5a中表示的整个场景)获得图像数据。然而,在一些这样的示例中,与用于从场景的其它区域获得图像数据的时间段相比,可以在更长的时间段内从区域505和/或510获得图像数据。

在一些情况下,诸如位于室外的光学传感器,照明可能比前述室内示例变化得更加显著。在白天期间,太阳可能照亮场景的至少一部分,而在晚上,另一强光源可能照亮该场景。然而,该场景还可以包括一个或多个暗区域,诸如小巷、阴影区域等。

因此,用户可以具有关于场景的亮区域和暗区域的先验知识。另外,用户可以具有关于其它显著区域的先验知识,诸如与门或窗户相对应的场景的区域,该门或窗户可能是经授权或未经授权进入房屋的可能场所。

在一些示例中,一种装置可以被配置用于获得关于场景的一个或多个区域的显著区域数据。获得显著区域数据可以例如涉及:获得环境光强度信息和/或感兴趣区域信息。例如,智能电话或另一种类型的设备的用户接口可以用于捕获来自用户的显著区域数据。在一些这样的示例中,当显示场景的图像时,用户可以通过与触摸屏交互来指示显著区域数据。一些这样的示例可以涉及:根据显著区域数据来调整至少一个曝光水平。例如,如果显著区域是暗区域,则可以通过以一个或多个“曝光过度”曝光水平获取场景的图像数据来在这些区域中检测较暗的对象。

根据一些实现方式,被配置用于与光学传感器进行通信的设备的控制系统,而不是光学传感器的控制系统,可以被配置为执行图像变化检测功能。这样的实现方式可以允许光学传感器使功耗最小化,并且可以不要求光学传感器具有执行图像变化检测功能所需的处理能力和/或存储器。

在一些这样的示例中,图2的一些框可以由光学传感器105执行,并且图2的其它框可以由控制系统110或由另一设备的控制系统执行。例如,框205和210可以由光学传感器105执行,并且框215-230可以由控制系统110或由另一设备的控制系统执行。

根据一些实现方式,可以由除光学传感器105之外的设备执行将像素聚合为超像素。例如,可以由控制系统110或由另一设备的控制系统执行将像素聚合为超像素。在一些这样的示例中,可以由在被配置用于与光学传感器进行通信的设备上运行的软件而不是由光学传感器执行将像素聚合为超像素。根据一些这样的示例,图2的框205可以由光学传感器105执行,并且框210-230可以由控制系统110或由另一设备的控制系统执行。

一些示例可以涉及:响应于经组合的图像变化检测结果来发送警报消息和/或图像。例如,在以上参照图3b和6描述的示例中,在一些实现方式中,设备的控制系统可以被配置为向设备的所有者发送图像。在一个这样的示例中,图像可以包括与图3b的头部305相对应的感兴趣区域。在一个实现方式中,控制系统110可以使包括图像的文本消息被发送到与设备的所有者相关联的电话号码或与另一人相关联的电话号码。根据一些示例,如果经组合的图像变化检测结果的至少一部分在预定的显著区域内,则控制系统可以响应于经组合的图像变化检测结果来引起警报消息和/或图像。

图7是提供根据一些公开的方法的操作的示例的流程图。例如,图7的框可以由图1的装置100、由相似的装置或由包括一个或多个这样的设备的系统来执行。与本文公开的其它方法一样,方法700可以包括比所指示的框更多或更少的框。此外,本文公开的方法的框不必按所指示的顺序执行。

根据该示例,框705涉及:以单个曝光水平(其在图7中被称为“第一”曝光水平)获得场景的至少一部分的像素值。如上所述,术语“曝光”可以是指曝光时间间隔、施加增益、或曝光时间间隔和施加增益的组合。这里,在框710中,像素值被聚合为超像素值。

在该实现方式中,框715涉及:确定是否针对场景的至少一部分以一个或多个其它曝光水平获得像素值。根据一些示例,框715可以涉及:确定是否可以存在诸如以上参照图5a或图5b所描述的条件之类的条件。例如,框715可以涉及:确定是否存在针对其对暗对象的检测可能是有问题的场景的一个或多个部分和/或确定是否存在针对其对亮对象的检测可能是有问题的场景的一个或多个部分。根据一些示例,框715可以涉及:确定光强度水平(诸如环境光强度水平)是否已经改变。在一些示例中,框715可以涉及:确定是否已经检测到图像变化,例如,确定是否已经在预定时间间隔内检测到图像变化。根据一些实现方式,框715可以涉及:确定是否已经接收到关于场景的一个或多个区域的显著区域数据。

在该示例中,如果在框715中确定不应当针对场景的至少一部分获得以一个或多个其它曝光水平的像素值,则在框720中针对第一曝光水平获得图像变化检测结果。例如,框720可以涉及:获得与第一曝光水平相对应的背景模型,并且将背景模型的超像素值与针对第一曝光水平获得的超像素值进行比较。

然而,根据该示例,如果在框715中确定应当针对场景的至少一部分获得以一个或多个其它曝光水平的像素值,则在框725中获得这些像素值。根据该实现方式,在框730中,针对每个曝光水平获得图像变化结果。例如,框730可以涉及:获得与每个曝光水平相对应的背景模型,并且将背景模型的超像素值与针对每个曝光水平获得的超像素值进行比较。在该示例中,框735涉及:将针对每个曝光水平的图像变化结果聚合,以获得经组合的图像变化检测结果。这里,框740涉及:根据经组合的图像变化检测结果或针对第一曝光水平的图像变化检测结果,来确定场景的至少一个感兴趣区域或至少一个背景区域。

如本文所使用的,提及项目列表“中的至少一个”的短语指代那些项目的任意组合,包括单个成员。作为一个示例,“a、b或c中的至少一个”旨在涵盖:a、b、c、a-b、a-c、b-c和a-b-c。

结合本文所公开的实现方式描述的各种说明性的逻辑、逻辑框、模块、电路和算法过程可以实现为电子硬件、计算机软件或二者的组合。已经围绕功能总体地描述了并且在上述各种说明性的组件、框、模块、电路和过程中示出了硬件和软件的可互换性。至于这样的功能是实现为硬件还是软件,取决于特定的应用以及施加在整个系统上的设计约束。

用于实现结合本文所公开的各方面描述的各种说明性的逻辑、逻辑框、模块和电路的硬件和数据处理装置可以利用被设计为执行本文描述的功能的通用单芯片或多芯片处理器、数字信号处理器(dsp)、专用集成电路(asic)、现场可编程门阵列(fpga)或其它可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件或其任意组合来实现或执行。通用处理器可以是微处理器或者任何常规的处理器、控制器、微控制器或状态机。处理器也可以被实现为计算设备的组合,例如,dsp和微处理器的组合、多个微处理器、一个或多个微处理器与dsp内核的结合,或任何其它这样的配置。在一些实现方式中,特定过程或方法可以由特定于给定功能的电路来执行。

在一个或多个方面中,所描述的功能可以在硬件、数字电子电路、计算机软件、固件(包括本说明书中公开的结构和其结构等效物)或者其任何组合中实现。本说明书中描述的主题的实现方式还可以被实现成被编码在计算机存储介质上以由数据处理装置执行或控制数据处理装置的操作的一个或多个计算机程序,即,计算机程序指令的一个或多个模块。

如果在软件中实现,则所述功能可以作为一个或多个指令或代码存储在计算机可读介质(诸如非暂时性介质)中或者通过其进行传输。可以在可以驻留在计算机可读介质上的处理可执行软件模块中实现本文公开的方法或算法的过程。计算机可读介质包括计算机存储介质和通信介质二者,所述通信介质包括能够实现将计算机程序从一个地方传送到另一个地方的任何介质。存储介质可以是可由计算机存取的任何可用的介质。通过举例而非限制性的方式,非暂时性介质可以包括ram、rom、eeprom、cd-rom或其它光盘存储、磁盘存储或其它磁存储设备、或者可以用于以指令或数据结构的形式存储期望的程序代码以及可以由计算机来存取的任何其它的介质。此外,任何连接可以适当地称为计算机可读介质。如本文所使用的,磁盘和光盘包括压缩光盘(cd)、激光光盘、光盘、数字多功能光盘(dvd)、软盘和蓝光光盘,其中磁盘通常磁性地复制数据,而光盘则通常利用激光来光学地复制数据。上述的组合也应当包括在计算机可读介质的范围内。另外,方法或算法的操作可以作为代码和指令中的任何一个或任何组合或集合驻留在机器可读介质和计算机可读介质上,所述机器可读介质和计算机可读介质可以并入到计算机程序产品中。

对本公开内容中描述的实现方式的各种修改对于本领域普通技术人员将是显而易见的,以及在不脱离本公开内容的精神或范围的情况下,本文所定义的通用原则可以应用到其它实现方式中。因此,本公开内容不旨在受限于本文示出的实现方式,而是符合与本文所公开的权利要求书、原则和新颖性特征相一致的最宽的范围。如果有的话,词语“示例性”在本文中专门用于意指“充当示例、实例或说明”。本文中描述为“示例性”的任何实现方式不必被解释为优选于其它实现方式或者比其它实现方式有优势。

在本说明书中在单独的实现方式的背景下描述的某些特征还可以在单个实现方式中组合地实现。相反地,在单个实现方式的背景下描述的各个特征还可以在多个实现方式中单独地或者以任何适当的子组合来实现。此外,虽然上文可能将特征描述为以某些组合来起作用以及甚至最初如此要求保护,但是在一些情况下,来自所要求保护的组合的一个或多个特征可以从该组合中去除,以及所要求保护的组合可以涉及子组合或者子组合的变形。

类似地,虽然在图中以特定的次序描绘了操作,但是这并不应当理解为要求这样的操作以所示出的特定次序或者顺序次序来执行或者执行所有示出的操作来实现期望的结果。在某些情况下,多任务和并行处理可能是有利的。此外,在上文描述的实现方式中的各个系统组件的分离不应当被理解为在所有实现方式中都要求这样的分离,而是其应当被理解为所描述的程序组件和系统通常能够一起被整合在单个软件产品中,或者被封装为多个软件产品。另外,其它实现方式在所附权利要求的范围内。在一些情况下,可以以不同的顺序执行权利要求中记载的动作,并且仍然实现期望的结果。

将理解的是,除非在特定描述的实现方式中的任何实现方式中的特征被明确地标识为彼此不兼容,或者周围上下文暗示它们是互斥的并且在互补和/或支持的意义上不易于组合,否则本公开内容的全部构思和设想了可以选择性地组合那些互补实现方式的具体特征,以提供一个或多个综合的但略有不同的技术解决方案。因此,将进一步意识到,以上描述仅是通过示例的方式给出的,并且可以在本公开内容的范围内进行详细的修改。

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