摄影图像中的眨眼和转移注视避免的制作方法

文档序号:17825613发布日期:2019-06-05 22:37阅读:188来源:国知局
摄影图像中的眨眼和转移注视避免的制作方法

本申请要求于2014年3月10日提交且题为“BLINK AND AVERTED GAZE AVOIDANCE IN PHOTOGRAPHIC IMAGES(摄影图像中的眨眼和转移注视避免)”的美国临时专利申请No.61/950,641的权益,其公开内容通过援引全部明确纳入于此。

背景

领域

本公开的某些方面一般涉及神经系统工程,并且尤其涉及用于摄影图像中的眨眼和转移注视避免的系统和方法。

背景

可包括一群互连的人工神经元(即,神经元模型)的人工神经网络是一种计算设备或者表示将由计算设备执行的方法。人工神经网络可具有生物学神经网络中的对应的结构和/或功能。然而,人工神经网络可为其中传统计算技术是麻烦的、不切实际的、或不胜任的某些应用提供创新且有用的计算技术。由于人工神经网络能从观察中推断出功能,因此这样的网络在因任务或数据的复杂度使得通过常规技术来设计该功能较为麻烦的应用中是特别有用的。

在一些情形中,照片可包括正在眨眼和/或不看着相机的对象。相应地,期望捕捉每个对象正看着相机且也不眨眼的图像。尽管如此,当图像包括一大群个体、分散个体、年幼儿童、和/或可主动避免相机的个体时,捕捉期望图像可能是困难的。神经联网技术可被用于解决这些问题。

概述

在本公开的一个方面,公开了一种使用相机情况下的眨眼和转移注视避免的方法。该方法包括响应于接收到致动相机快门的输入而检测对象的转移注视和/或该对象的一次或多次闭眼。该方法还包括将相机快门的致动调度到所估计的对象的注视方向以相机为中心和/或该对象的双眼都张开的将来时间段以捕捉该对象的图像。

本公开的另一方面涉及一种装备,包括用于响应于接收到致动相机快门的输入而检测对象的转移注视和/或该对象的一次或多次闭眼的装置。该装备还包括用于将相机快门的致动调度到所估计的对象的注视方向以相机为中心和/或该对象的双眼都张开的将来时间段以捕捉该对象的图像的装置。

在本公开的另一方面,公开了一种用于使用相机情况下的眨眼和转移注视避免的计算机程序产品。该计算机程序产品具有其上记录有非瞬态程序代码的非瞬态计算机可读介质。该程序代码包括用以响应于接收到致动相机快门的输入而检测对象的转移注视和/或该对象的一次或多次闭眼的程序代码。该程序代码还包括用以将相机快门的致动调度到所估计的对象的注视方向以相机为中心和/或该对象的双眼都张开的将来时间段以捕捉该对象的图像的程序代码。

本公开的另一方面涉及一种配置成用于眨眼和转移注视避免的装置,该装置具有存储器和耦合至该存储器的一个或多个处理器。(诸)处理器被配置成响应于接收到致动相机快门的输入而检测对象的转移注视和/或该对象的一次或多次闭眼。(诸)处理器还被配置成将相机快门的致动调度到所估计的对象的注视方向以相机为中心和/或该对象的双眼都张开的将来时间段以捕捉该对象的图像。

在本公开的一个方面,公开了一种使用相机情况下的眨眼和转移注视避免的方法。该方法包括当在接收到致动相机快门的输入之后检测到对象的转移注视和/或该对象的一次或多次闭眼时致动该相机快门以捕捉图像阵发。该方法还包括存储来自图像阵发中对象的注视方向以相机为中心且该对象的双眼都张开的一个或多个图像。

本公开的另一方面涉及一种装备,包括用于当在接收到致动相机快门的输入之后检测到对象的转移注视和/或该对象的一次或多次闭眼时致动该相机快门以捕捉图像阵发的装置。该装备还包括用于存储来自图像阵发中对象的注视方向以相机为中心且该对象的双眼都张开的一个或多个图像的装置。

在本公开的另一方面,公开了一种用于使用相机情况下的眨眼和转移注视避免的计算机程序产品。该计算机程序产品具有其上记录有非瞬态程序代码的非瞬态计算机可读介质。该程序代码包括用以当在接收到致动相机快门的输入之后检测到对象的转移注视和/或该对象的一次或多次闭眼时致动该相机快门以捕捉图像阵发的程序代码。该程序代码还包括用以存储来自图像阵发中对象的注视方向以相机为中心且该对象的双眼都张开的一个或多个图像的程序代码。

本公开的另一方面涉及一种配置成用于眨眼和转移注视避免的装置,该装置具有存储器和耦合至该存储器的一个或多个处理器。(诸)处理器被配置成当在接收到致动相机快门的输入之后检测到对象的转移注视和/或该对象的一次或多次闭眼时致动该相机快门以捕捉图像阵发。(诸)处理器还被配置成存储来自图像阵发中对象的注视方向以相机为中心且该对象的双眼都张开的一个或多个图像。

本公开的附加特征和优点将在下文描述。本领域技术人员应该领会,本公开可容易地被用作修改或设计用于实施与本公开相同的目的的其他结构的基础。本领域技术人员还应认识到,这样的等效构造并不脱离所附权利要求中所阐述的本公开的教导。被认为是本公开的特性的新颖特征在其组织和操作方法两方面连同进一步的目的和优点在结合附图来考虑以下描述时将被更好地理解。然而,要清楚理解的是,提供每幅附图均仅用于解说和描述目的,且无意作为对本公开的限定的定义。

附图简述

在结合附图理解下面阐述的详细描述时,本公开的特征、本质和优点将变得更加明显,在附图中,相同附图标记始终作相应标识。

图1解说了根据本公开的某些方面的示例神经元网络。

图2解说了根据本公开的某些方面的计算网络(神经系统或神经网络)的处理单元(神经元)的示例。

图3解说了根据本公开的某些方面的尖峰定时依赖可塑性(STDP)曲线的示例。

图4解说了根据本公开的某些方面的用于定义神经元模型的行为的正态相和负态相的示例。

图5是进一步解说根据本公开的各方面的眨眼和转移注视避免的方法的流程图。

图6是解说根据本公开的各方面的图像中的眨眼和转移注视避免的方法的流程图。

图7是进一步解说根据本公开的各方面的图像中的眨眼和转移注视避免的方法的框图。

图8解说了根据本公开的某些方面的使用通用处理器来设计神经网络的示例实现。

图9解说了根据本公开的某些方面的设计其中存储器可以与个体分布式处理单元对接的神经网络的示例实现。

图10解说了根据本公开的某些方面的基于分布式存储器和分布式处理单元来设计神经网络的示例实现。

图11解说了根据本公开的某些方面的神经网络的示例实现。

图12和13是解说根据本公开的各方面的眨眼和转移注视避免的方法的流程图。

详细描述

以下结合附图阐述的详细描述旨在作为各种配置的描述,而无意表示可实践本文中所描述的概念的仅有的配置。本详细描述包括具体细节以便提供对各种概念的透彻理解。然而,对于本领域技术人员将显而易见的是,没有这些具体细节也可实践这些概念。在一些实例中,以框图形式示出众所周知的结构和组件以避免湮没此类概念。

基于本教导,本领域技术人员应领会,本公开的范围旨在覆盖本公开的任何方面,不论其是与本公开的任何其他方面相独立地还是组合地实现的。例如,可以使用所阐述的任何数目的方面来实现装置或实践方法。另外,本公开的范围旨在覆盖使用作为所阐述的本公开的各个方面的补充或者与之不同的其他结构、功能性、或者结构及功能性来实践的此类装置或方法。应当理解,所披露的本公开的任何方面可由权利要求的一个或多个元素来实施。

措辞“示例性”在本文中用于表示“用作示例、实例或解说”。本文中描述为“示例性”的任何方面不必被解释为优于或胜过其他方面。

尽管本文描述了特定方面,但这些方面的众多变体和置换落在本公开的范围之内。虽然提到了优选方面的一些益处和优点,但本公开的范围并非旨在被限定于特定益处、用途或目标。相反,本公开的各方面旨在能宽泛地应用于不同的技术、系统配置、网络和协议,其中一些作为示例在附图以及以下对优选方面的描述中解说。详细描述和附图仅仅解说本公开而非限定本公开,本公开的范围由所附权利要求及其等效技术方案来定义。

示例神经系统、训练及操作

图1解说了根据本公开的某些方面的具有多级神经元的人工神经系统100。神经系统100可具有神经元级102,该神经元级102通过突触连接网络104(即,前馈连接)耦合至另一神经元级106。为简单起见,图1中仅解说了两级神经元,尽管神经系统中可存在更少或更多级神经元。应注意,一些神经元可通过侧向连接来耦合至同层中的其他神经元。此外,一些神经元可通过反馈连接来后向耦合至先前层中的神经元。

如图1中所解说的,级102中的每个神经元可接收由前级的神经元(未在图1中示出)生成的输入信号108。信号108可表示级102的神经元的输入电流。该电流可在神经元膜上累积以对膜电位进行充电。当膜电位达到其阈值时,该神经元可激发并生成输出尖峰,该输出尖峰被传递到下一级神经元(例如,级106)。在一些建模办法中,神经元可以连续地向下一级神经元传递信号。该信号通常是膜电位的函数。此类行为可在硬件和/或软件(包括模拟和数字实现,诸如以下所述那些实现)中进行模拟。

在生物学神经元中,动作电位是在神经元激发时生成的输出尖峰。该电信号是相对迅速、瞬态的神经脉冲,其具有约为100mV的振幅和约为1ms的历时。在具有一系列连通的神经元(例如,尖峰从图1中的一级神经元传递至另一级神经元)的神经系统的一种配置中,每个动作电位都具有基本上相同的振幅和历时,并且因此该信号中的信息可仅由尖峰的频率和数目、或尖峰的时间来表示,而不由振幅来表示。由动作电位所携带的信息可由尖峰、发放了尖峰的神经元、以及该尖峰相对于一个或数个其他尖峰的时间来确定。尖峰的重要性可由向各神经元之间的连接所应用的权重来确定,如以下所解释的。

尖峰从一级神经元向另一级神经元的传递可通过突触连接(或简称“突触”)网络104来达成,如图1中所解说的。相对于突触104,级102的神经元可被视为突触前神经元,而级106的神经元可被视为突触后神经元。突触104可接收来自级102的神经元的输出信号(即,尖峰),并根据可调节突触权重来按比例缩放那些信号,其中P是级102的神经元与级106的神经元之间的突触连接的总数,并且i是神经元级的指示符。在图1的示例中,i表示神经元级102并且i+1表示神经元级106。此外,经按比例缩放的信号可被组合以作为级106中每个神经元的输入信号。神经元级106中的每个神经元可基于对应的组合输入信号来生成输出尖峰110。可使用另一突触连接网络(图1中未示出)将这些输出尖峰110传递到另一级神经元。

生物学突触可以仲裁突触后神经元中的兴奋性或抑制性(超极化)动作,并且还可用于放大神经元信号。兴奋性信号使膜电位去极化(即,相对于静息电位增大膜电位)。如果在某个时间段内接收到足够的兴奋性信号以使膜电位去极化到高于阈值,则在突触后神经元中发生动作电位。相反,抑制性信号一般使膜电位超极化(例如,降低膜电位)。抑制性信号如果足够强则可抵消掉兴奋性信号之和并阻止膜电位到达阈值。除了抵消掉突触兴奋以外,突触抑制还可对自发活跃神经元施加强力的控制。自发活跃神经元是指在没有进一步输入的情况下(例如,由于其动态或反馈而)发放尖峰的神经元。通过压制这些神经元中的动作电位的自发生成,突触抑制可对神经元中的激发模式进行定形,这一般被称为雕刻。取决于期望的行为,各种突触104可充当兴奋性或抑制性突触的任何组合。

神经系统100可由通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或其他可编程逻辑器件(PLD)、分立的门或晶体管逻辑、分立的硬件组件、由处理器执行的软件模块、或其任何组合来模拟。神经系统100可用在大范围的应用中,诸如图像和模式识别、机器学习、电机控制、及类似应用等。神经系统100中的每个神经元可被实现为神经元电路。被充电至发起输出尖峰的阈值的神经元膜可被实现为例如对流经其的电流进行积分的电容器。

在一方面,电容器作为神经元电路的电流积分器件可被除去,并且可使用较小的存储器电阻器(忆阻器)元件来替代它。这种办法可应用于神经元电路中,以及其中大容量电容器被用作电流积分器的各种其他应用中。另外,每个突触104可基于忆阻器元件来实现,其中突触权重变化可与忆阻器电阻的变化有关。使用纳米特征尺寸的忆阻器,可显著地减小神经元电路和突触的面积,这可使得实现大规模神经系统硬件实现更为切实可行。

对神经系统100进行仿真的神经处理器的功能性可取决于突触连接的权重,这些权重可控制神经元之间的连接的强度。突触权重可存储在非易失性存储器中以在掉电之后保留该处理器的功能性。在一方面,突触权重存储器可实现在与主神经处理器芯片分开的外部芯片上。突触权重存储器可与神经处理器芯片分开地封装成可更换的存储卡。这可向神经处理器提供多种多样的功能性,其中特定功能性可基于当前附连至神经处理器的存储卡中所存储的突触权重。

图2解说了根据本公开的某些方面的计算网络(例如,神经系统或神经网络)的处理单元(例如,神经元或神经元电路)202的示例性示图200。例如,神经元202可对应于来自图1的级102和106的任何神经元。神经元202可接收多个输入信号2041-204N,这些输入信号可以是该神经系统外部的信号、或是由同一神经系统的其他神经元所生成的信号、或这两者。输入信号可以是电流、电导、电压、实数值的和/或复数值的。输入信号可包括具有定点或浮点表示的数值。可通过突触连接将这些输入信号递送到神经元202,突触连接根据可调节突触权重2061-206N(W1-WN)对这些信号进行按比例缩放,其中N可以是神经元202的输入连接总数。

神经元202可组合这些经按比例缩放的输入信号,并且使用组合的经按比例缩放的输入来生成输出信号208(即,信号Y)。输出信号208可以是电流、电导、电压、实数值的和/或复数值的。输出信号可以是具有定点或浮点表示的数值。随后该输出信号208可作为输入信号传递至同一神经系统的其他神经元、或作为输入信号传递至同一神经元202、或作为该神经系统的输出来传递。

处理单元(神经元)202可由电路来仿真,并且其输入和输出连接可由具有突触电路的电连接来仿真。处理单元202及其输入和输出连接也可由软件代码来仿真。处理单元202还可由电路来仿真,而其输入和输出连接可由软件代码来仿真。在一方面,计算网络中的处理单元202可以是模拟电路。在另一方面,处理单元202可以是数字电路。在又一方面,处理单元202可以是具有模拟和数字组件两者的混合信号电路。计算网络可包括任何前述形式的处理单元。使用这样的处理单元的计算网络(神经系统或神经网络)可用在大范围的应用中,诸如图像和模式识别、机器学习、电机控制、及类似应用等。

在神经网络的训练过程期间,突触权重(例如,来自图1的权重和/或来自图2的权重2061-206N)可用随机值来初始化并根据学习规则而被增大或减小。本领域技术人员将领会,学习规则的示例包括但不限于尖峰定时依赖可塑性(STDP)学习规则、Hebb规则、Oja规则、Bienenstock-Copper-Munro(BCM)规则等。在一些方面,这些权重可稳定或收敛至两个值(即,权重的双峰分布)之一。该效应可被用于减少每个突触权重的位数、提高从/向存储突触权重的存储器读取和写入的速度、以及降低突触存储器的功率和/或处理器消耗。

突触类型

在神经网络的硬件和软件模型中,突触相关功能的处理可基于突触类型。突触类型可以是非可塑突触(权重和延迟没有改变)、可塑突触(权重可改变)、结构化延迟可塑突触(权重和延迟可改变)、全可塑突触(权重、延迟和连通性可改变)、以及基于此的变型(例如,延迟可改变,但在权重或连通性方面没有改变)。多种类型的优点在于处理可以被细分。例如,非可塑突触不会使用待执行的可塑性功能(或等待此类功能完成)。类似地,延迟和权重可塑性可被细分成可一起或分开地、顺序地或并行地运作的操作。不同类型的突触对于适用的每一种不同的可塑性类型可具有不同的查找表或公式以及参数。因此,这些方法将针对该突触的类型来访问相关的表、公式或参数。

还进一步牵涉到以下事实:尖峰定时依赖型结构化可塑性可独立于突触可塑性地来执行。结构化可塑性即使在权重幅值没有改变的情况下(例如,如果权重已达最小或最大值、或者其由于某种其他原因而不被改变)也可被执行,因为结构化可塑性(即,延迟改变的量)可以是pre-post(前-后)尖峰时间差的直接函数。替换地,结构化可塑性可被设为权重变化量的函数或者可基于与权重或权重变化的界限有关的条件来设置。例如,突触延迟可仅在权重变化发生时或者在权重到达0的情况下才改变,但在这些权重为最大值时则不改变。然而,具有独立函数以使得这些过程能被并行化从而减少存储器访问的次数和交叠可能是有利的。

突触可塑性的确定

神经元可塑性(或简称“可塑性”)是大脑中的神经元和神经网络响应于新的信息、感官刺激、发展、损坏、或机能障碍而改变其突触连接和行为的能力。可塑性对于生物学中的学习和记忆、以及对于计算神经元科学和神经网络是重要的。已经研究了各种形式的可塑性,诸如突触可塑性(例如,根据Hebbian理论)、尖峰定时依赖可塑性(STDP)、非突触可塑性、活跃性依赖可塑性、结构化可塑性和自稳态可塑性。

STDP是调节神经元之间的突触连接的强度的学习过程。连接强度是基于特定神经元的输出与收到输入尖峰(即,动作电位)的相对定时来调节的。在STDP过程下,如果至某个神经元的输入尖峰平均而言倾向于紧挨在该神经元的输出尖峰之前发生,则可发生长期增强(LTP)。于是使得该特定输入在一定程度上更强。另一方面,如果输入尖峰平均而言倾向于紧接在输出尖峰之后发生,则可发生长期抑压(LTD)。于是使得该特定输入在一定程度上更弱,并由此得名“尖峰定时依赖可塑性”。因此,使得可能是突触后神经元兴奋原因的输入甚至在将来作出贡献的可能性更大,而使得不是突触后尖峰的原因的输入在将来作出贡献的可能性更小。该过程继续,直至初始连接集合的子集保留,而所有其他连接的影响减小至无关紧要的水平。

图3解说了根据STDP,突触权重作为突触前(pre)和突触后(post)尖峰的相对定时的函数而改变的示例性示图300。如果突触前神经元在突触后神经元之前激发,则对应的突触权重可被增大,如曲线图300的部分302中所解说的。该权重增大可被称为该突触的LTP。从曲线图部分302可观察到,LTP的量可因变于突触前和突触后尖峰时间之差而大致呈指数式地下降。相反的激发次序可减小突触权重,如曲线图300的部分304中所解说的,从而导致该突触的LTD。

如图3中的曲线图300中所解说的,可向STDP曲线图的LTP(因果性)部分302应用负偏移μ。x轴的交越点306(y=0)可被配置成与最大时间滞后重合以考虑到来自层i-1的各因果性输入的相关性。在基于帧的输入(即,呈特定历时的包括尖峰或脉冲的帧的形式的输入)的情形中,可计算偏移值μ以反映帧边界。该帧中的第一输入尖峰(脉冲)可被视为要么如直接由突触后电位所建模地随时间衰退,要么在对神经状态的影响的意义上随时间衰退。如果该帧中的第二输入尖峰(脉冲)被视为与特定时间帧相关或有关,则该帧之前和之后的有关时间可通过使STDP曲线的一个或多个部分偏移以使得这些有关时间中的值可以不同(例如,对于大于一个帧为负,而对于小于一个帧为正)来在该时间帧边界处被分开并在可塑性意义上被不同地对待。例如,负偏移μ可被设为偏移LTP以使得曲线实际上在大于帧时间的pre-post时间处变得低于零并且它由此为LTD而非LTP的一部分。

神经元模型及操作

存在一些用于设计有用的尖峰发放神经元模型的一般原理。良好的神经元模型在以下两个计算态相(regime)方面可具有丰富的潜在行为:重合性检测和功能性计算。此外,良好的神经元模型应当具有允许时间编码的两个要素:输入的抵达时间影响输出时间,以及重合性检测能具有窄时间窗。最后,为了在计算上是有吸引力的,良好的神经元模型在连续时间上可具有闭合形式解,并且具有稳定的行为,包括在靠近吸引子和鞍点之处。换言之,有用的神经元模型是可实践且可被用于建模丰富的、现实的且生物学一致的行为并且可被用于对神经电路进行工程设计和反向工程两者的神经元模型。

如图4中所解说的,该模型400的动态可被划分成两个(或更多个)态相。这些态相可被称为负态相402(也可互换地称为带漏泄积分激发(LIF)态相,勿与LIF神经元模型混淆)以及正态相404(也可互换地称为抗漏泄积分激发(ALIF)态相,勿与ALIF神经元模型混淆)。在负态相402中,状态在将来事件的时间趋向于静息(v-)。在该负态相中,该模型一般展现出时间输入检测性质及其他阈下行为。在正态相404中,状态趋向于尖峰发放事件(vs)。在该正态相中,该模型展现出计算性质,诸如取决于后续输入事件而引发发放尖峰的等待时间。在事件方面对动态进行公式化以及将动态分成这两个态相是该模型的基础特性。

存在对该Cold模型、以及在时间上执行模拟、仿真、或建模的若干可能实现。这包括例如事件-更新、步阶-事件更新、以及步阶-更新模式。事件更新是其中基于事件或“事件更新”(在特定时刻)来更新状态的更新。步阶更新是以间隔(例如,1ms)来更新模型的更新。这不一定利用迭代方法或数值方法。通过仅在事件发生于步阶处或步阶间的情况下才更新模型或即通过“步阶-事件”更新,基于事件的实现以有限的时间分辨率在基于步阶的模拟器中实现也是可能的。

眨眼和转移注视避免

本公开的各方面涉及在所捕捉的图像中减轻眨眼和转移注视。此类处理可用神经网络来实现。

在一些情形中,照片可包括正在眨眼和/或不看着相机的对象。相应地,期望捕捉每个对象正看着相机且也不眨眼的图像。尽管如此,当图像包括一大群个体、分散个体、年幼儿童、和/或可主动避免相机的个体时,捕捉期望图像可能是困难的。

在本申请中,期望图像指代不眨眼且还正看着相机的一个或多个对象的图像。当然,本申请的各方面并不限于所有对象都不眨眼且正看着相机的图像。还构想了在数个对象不眨眼且还看着相机时捕捉图像的阈值的各方面。例如,在群照片中,可在图像中一阈值百分比(诸如80%)的对象正看着相机且不眨眼时捕捉该图像。

在一些情形中,摄影师捕捉多个图像并手动搜索所捕捉的图像以选择每个对象正朝相机看且还不眨眼的一个或多个图像。附加地或替换地,可用后处理应用来校正具有眨眼对象的图像。此外,一些相机包括用于在短历时中捕捉多个图像的阵发模式。尽管如此,在常规相机中,在阵发模式期间捕捉的所有图像被存储在存储器中以供后处理或用户选择。即,常规相机捕捉多个图像,这多个图像被后处理和/或手动选择以获得包括不眨眼且不具有转移注视的对象的期望图像。

因此,本公开的各方面涉及自动确定对象是否正在眨眼和/或具有转移注视并调整相机快门的定时以在对象正看着相机而不眨眼时捕捉图像。在一种配置中,眨眼或转移注视的确定被实时处理。并且,在一种配置中,时间调整基于所估计的对象正看着相机而不眨眼的时间。

神经网络可执行机器学习和对象识别。具体地,神经网络可识别面部特征并执行虹膜检测以确定对象何时具有以相机为中心的注视且还不眨眼。神经网络可包括一个或多个特征提取层,其后是学习层以实现所捕捉图像中的眨眼和转移注视避免。在一个示例中,每一层中的节点(诸如神经元)可按时间特征模式的形式对特征进行编码。

本公开的各方面涉及摄影图像中的眨眼避免和转移注视避免。在一种配置中,眨眼检测分析和注视方向分析估计调度相机快门的时间以便为照片中的一个或多个对象捕捉无眨眼且以相机为中心的注视。以相机为中心的注视指代正朝相机看的对象的注视。

在一些情形中,面部检测可确定面部的存在和/或位置以发起虹膜检测。眨眼检测可基于虹膜检测并且可确定是否在面部中检测到两个虹膜。在一种配置中,通过共同登记面部位置和虹膜位置来确定注视方向。根据本公开的一方面,当未检测到眨眼且注视朝向相机时快门致动。替换地,如果检测到眨眼和/或转移注视,则快门可被调度成将来在所估计的时间致动以捕捉图像。所估计的时间可基于针对平均眨眼和/或转移注视的平均时间确定的时间。在一种配置中,相机确定在所估计的时间已经流逝之后在捕捉图像之前是否存在眨眼和/或转移注视。即,在快门被调度成打开之前,可执行眨眼检测以确定不再存在眨眼和/或转移注视。

如先前所讨论的,相机可周期性地检查注视方向。附加地或替换地,可基于在前注视位置信息来预测将来注视方向以使得快门被调度达所估计的注视将朝向相机的时间。此外,在一些情形中,时间延迟可能是不期望的。因此,相机可被配置成当检测到眨眼和/或注视时诸如以阵发模式在一时间段内捕捉多个图像。在一种配置中,阵发模式在没有用户输入的情况下被自动激活以在一时间段内捕捉多个图像。此外,在一种配置中,对所捕捉的图像执行自动面部和虹膜检测以自动删除临时存储的具有眨眼和/或转移注视的图像。即,相机可仅保存无眨眼且以相机为中心注视的图像。

如先前所讨论的,本公开的各方面可被指定以基于实时眨眼检测和/或注视检测来捕捉和/或存储无眨眼和/或以相机为中心注视的图像。相应地,本公开的各方面减轻冗余图像存储并改善设备(诸如,智能电话)的存储空间。

图5是解说根据本公开的各方面的眨眼避免和转移注视避免的方法500的流程图。如图5中所示,在框510,接收致动相机快门的输入。该输入可以是外部输入(诸如用户输入)、或内部输入(诸如相机定时器)。此外,在框512,响应于框510处接收到的输入而发起面部检测和/或虹膜检测。例如,可触发面部检测以确定鉴于相机的对象的面部位置。另外,可响应于面部位置的检测而执行虹膜检测。在框514,设备确定是否检测到眨眼和/或转移注视。可基于虹膜检测来检测眨眼和/或转移注视。此外,当框514处检测到眨眼和/或转移注视时,在516将相机快门调度成在将来时间致动。例如,该将来时间可以是基于所估计的对象的注视方向朝向相机时和每个对象的眼睛张开时的时间的所估计时间段。

另外,在框516调度快门以在将来时间致动之后,执行框512的面部检测和虹膜检测和/或框514的眨眼或转移注视检测直到各对象不眨眼和/或还朝相机看。即,执行框512、514和516的处理直到捕捉到期望图像。相应地,当未检测到眨眼和转移注视时,在框520致动相机快门以捕捉对象的图像。此外,在框522,存储该图像。在该配置中,实时调整快门致动的定时以捕捉各对象注视相机而不眨眼的时刻。

根据本公开的另一方面,在框516调度所估计将来时间之后,当达到所估计将来时间时,可在框520激活相机快门以捕捉图像。即,在该配置中,相机在捕捉图像之前不执行后续面部检测和虹膜检测。此外,在框522,存储该图像。

如先前所讨论的,对象可能即使在其注视正朝向相机时还是眨眼的。因此,相机快门的致动可被延迟达所估计时间段以便在对象不眨眼时捕捉图像。所估计时间段可基于所估计的眨眼时间和/或转移注视时间。此外,所估计的时间可基于针对眨眼和/或转移注视的习得定时。例如,平均眨眼长度可以是800毫秒。因此,在该示例中,所估计时间段可被设为大于800毫秒的时间,诸如1000毫秒。

图6解说了根据本公开的一方面的摄影图像中的眨眼和转移注视避免的方法600。如图6中所示,在框610,图像捕捉设备确定是否检测到一个或多个对象的眨眼和/或转移注视。此外,在框612,当各对象正注视相机而不眨眼时捕捉这些对象的图像。替换地,在框614,致动相机快门以捕捉这些对象的多个图像。此外,在框616,从所捕捉的图像中标识期望图像。期望图像可以是一个或多个对象注视相机而不眨眼的图像。例如,神经网络可被训练成识别转移注视的特征以及执行虹膜检测以标识各对象正注视相机而不眨眼的图像。最后,在框618,存储期望图像。此外,其中对象具有转移注视和/或眨眼的图像被删除以减少不期望图像的存储。

图7解说了根据本公开的一方面的用于所存储图像中的眨眼和转移注视减轻的方法700。如图7中所示,在框710,接收致动相机快门的输入。该输入可以是外部输入(诸如用户输入)、或内部输入(诸如相机定时器)。此外,在框712,响应于框710处接收到的输入而发起面部检测和/或虹膜检测。例如,可触发面部检测以确定鉴于相机的对象的面部位置。此外,可响应于面部位置的检测而执行虹膜检测。附加地或替换地,可在检测到对象的面部移动时激活面部识别和虹膜检测。在框714,相机确定是否检测到眨眼和/或转移注视。可基于虹膜检测来检测眨眼和/或转移注视。当在框714检测到眨眼或转移注视时,在框720致动相机快门N次以捕捉对象的图像阵发。另外,在框722,执行面部和虹膜检测以丢弃图像从而可在框724从所捕捉的图像阵发中标识期望图像。期望图像可以是一个或多个对象注视相机而不眨眼的图像。最后,在框718,存储期望图像。替换地,当未检测到眨眼和转移注视时,在框716致动相机快门以捕捉图像。此外,在捕捉图像之后,在框718存储该图像。

图8解说了根据本公开的某些方面的使用通用处理器802的前述摄影图像中的眨眼和转移注视避免的的示例实现800。与计算网络(神经网络)相关联的变量(神经信号)、突触权重和系统参数,延迟,频率槽信息,尖峰等待时间信息以及直方图信息可被存储在存储器块804中,而在通用处理器802处执行的指令可从程序存储器806中加载。在本公开的一方面,被加载到通用处理器802中的指令可包括用于眨眼和转移注视避免的代码。

图9解说了根据本公开的某些方面的前述摄影图像中的眨眼和转移注视避免的示例实现900,其中存储器902可经由互连网络904与计算网络(神经网络)的个体(分布式)处理单元(神经处理器)909对接。与计算网络(神经网络)相关联的变量(神经信号)、突触权重、系统参数,延迟,频槽信息、以及直方图信息可被存储在存储器902中,并且可从存储器902经由互连网络904的(诸)连接被加载到每个处理单元(神经处理器)909中。在本公开的一方面,处理单元909可被配置成提供摄影图像中的眨眼和转移注视避免。

图10解说了前述摄影图像中的眨眼和转移注视避免的示例实现1000。如图10中所解说的,一个存储器组1002可与计算网络(神经网络)的一个处理单元1004直接对接。每个存储器组1002可存储与对应的处理单元(神经处理器)1004相关联的变量(神经信号)、突触权重、和/或系统参数,延迟,频率槽信息,以及直方图信息。在本公开的一方面,处理单元1004可被配置成提供对象的面部识别和虹膜检测,和/或基于参考特征来将对象表示转换为规范形式。

图11解说了根据本公开的某些方面的被配置成提供摄影图像中的眨眼和转移注视避免的神经网络1100的示例实现。如图11中所解说的,神经网络1100可具有多个局部处理单元1102,它们可执行本文所描述的方法的各种操作。每个局部处理单元1102可包括存储该神经网络的参数的局部状态存储器1104和局部参数存储器1106。另外,局部处理单元1102可具有用于存储局部模型程序的局部(神经元)模型程序(LMP)存储器1110、用于存储局部学习程序的局部学习程序(LLP)存储器1110、以及局部连接存储器1112。此外,如图11中所解说的,每个局部处理单元1102可与用于提供针对该局部处理单元的各局部存储器的配置的配置处理器单元1114对接,并且与提供各局部处理单元1102之间的路由的路由连接处理单元1116对接。

在一种配置中,神经元模型被配置成用于摄影图像中的眨眼和转移注视避免。神经元模型包括检测装置和调度装置。在一个方面,检测装置、和/或调度装置可以是被配置成执行所叙述的功能的通用处理器802、程序存储器806、存储器块804、存储器902、互连网络904、处理单元909、处理单元1004、局部处理单元1102、和/或路由连接处理单元1116。在另一种配置中,前述装置可以是被配置成执行由前述装置所叙述的功能的任何模块或任何装置。

在另一种配置中,神经元模型被配置成用于摄影图像中的眨眼和转移注视避免。神经元模型包括激活装置和存储装置。在一个方面,激活装置和/或存储装置可以是被配置成执行所叙述的功能的通用处理器802、程序存储器806、存储器块804、存储器902、互连网络904、处理单元909、处理单元1004、局部处理单元1102、和/或路由连接处理单元1116。在另一种配置中,前述装置可以是被配置成执行由前述装置所叙述的功能的任何模块或任何装置。

根据本公开的某些方面,每个局部处理单元1102可被配置成基于神经网络的一个或多个期望功能性特征来确定神经网络的参数,以及随着所确定的参数被进一步适配、调谐和更新来使这一个或多个功能性特征朝着期望的功能性特征发展。

图12是解说根据本公开的各方面的眨眼避免和转移注视避免的方法1200的流程图。如图12中所示,在框1210,相机响应于接收到致动相机快门的输入而检测对象的转移注视和/或一次或多次闭眼。例如,神经网络可被训练成提供面部识别和虹膜检测以标识眨眼或转移注视。此外,在框1212,相机将相机快门的致动调度到所估计的对象的注视方向居中和/或该对象的双眼都张开的将来时间段以捕捉该对象的图像。例如,神经网络可被训练成估计对象的注视方向朝向相机的将来时间段。神经网络可将相机快门调度成在近似的将来时间段期间致动。附加地或替换地,神经网络可在所估计将来时间已经流逝时在捕捉图像之前执行附加眨眼和/或注视检查。此外,如果在所估计的将来时间段期间检测到后续眨眼和/或转移注视,则所估计的将来时间段期间的延迟可被延迟或调整。

图13是解说根据本公开的各方面的眨眼避免和转移注视避免的方法1300的流程图。如图13中所示,在框1310,当检测到对象的转移注视和/或该对象眼睛中的一个或多个闭合时,相机致动快门以捕捉图像阵发。转移注视和/或闭合眼睛检测可在接收到致动相机快门的输入之后并且在捕捉图像之前执行。此外,在框1312,相机存储来自图像阵发中对象的注视方向以该相机为中心且该对象的双眼张开的一个或多个图像。

以上所描述的方法的各种操作可由能够执行相应功能的任何合适的装置来执行。这些装置可包括各种硬件和/或软件组件和/或模块,包括但不限于电路、专用集成电路(ASIC)、或处理器。一般而言,在附图中有解说的操作的场合,那些操作可具有带相似编号的相应配对装置加功能组件。

如本文所使用的,术语“确定”涵盖各种各样的动作。例如,“确定”可包括演算、计算、处理、推导、研究、查找(例如,在表、数据库或其他数据结构中查找)、探知及诸如此类。另外,“确定”可包括接收(例如接收信息)、访问(例如访问存储器中的数据)、及类似动作。而且,“确定”可包括解析、选择、选取、确立及类似动作。

如本文所使用的,引述一列项目中的“至少一个”的短语是指这些项目的任何组合,包括单个成员。作为示例,“a、b或c中的至少一个”旨在涵盖:a、b、c、a-b、a-c、b-c、以及a-b-c。

结合本公开所描述的各种解说性逻辑框、模块、以及电路可用设计成执行本文所描述功能的通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列信号(FPGA)或其他可编程逻辑器件(PLD)、分立的门或晶体管逻辑、分立的硬件组件或其任何组合来实现或执行。通用处理器可以是微处理器,但在替换方案中,处理器可以是任何市售的处理器、控制器、微控制器、或状态机。处理器还可以被实现为计算设备的组合,例如DSP与微处理器的组合、多个微处理器、与DSP核心协同的一个或多个微处理器、或任何其它此类配置。

结合本公开所描述的方法或算法的步骤可直接在硬件中、在由处理器执行的软件模块中、或在这两者的组合中体现。软件模块可驻留在本领域所知的任何形式的存储介质中。可使用的存储介质的一些示例包括随机存取存储器(RAM)、只读存储器(ROM)、闪存、可擦除可编程只读存储器(EPROM)、电可擦除可编程只读存储器(EEPROM)、寄存器、硬盘、可移动盘、CD-ROM,等等。软件模块可包括单条指令、或许多条指令,且可分布在若干不同的代码段上,分布在不同的程序间以及跨多个存储介质分布。存储介质可被耦合到处理器以使得该处理器能从/向该存储介质读写信息。在替换方案中,存储介质可以被整合到处理器。

本文所公开的方法包括用于实现所描述的方法的一个或多个步骤或动作。这些方法步骤和/或动作可以彼此互换而不会脱离权利要求的范围。换言之,除非指定了步骤或动作的特定次序,否则具体步骤和/或动作的次序和/或使用可以改动而不会脱离权利要求的范围。

所描述的功能可在硬件、软件、固件或其任何组合中实现。如果以硬件实现,则示例硬件配置可包括设备中的处理系统。处理系统可以用总线架构来实现。取决于处理系统的具体应用和整体设计约束,总线可包括任何数目的互连总线和桥接器。总线可将包括处理器、机器可读介质、以及总线接口的各种电路链接在一起。总线接口可用于尤其将网络适配器等经由总线连接至处理系统。网络适配器可用于实现信号处理功能。对于某些方面,用户接口(例如,按键板、显示器、鼠标、操纵杆,等等)也可以被连接到总线。总线还可以链接各种其他电路,诸如定时源、外围设备、稳压器、功率管理电路以及类似电路,它们在本领域中是众所周知的,因此将不再进一步描述。

处理器可负责管理总线和一般处理,包括执行存储在机器可读介质上的软件。处理器可用一个或多个通用和/或专用处理器来实现。示例包括微处理器、微控制器、DSP处理器、以及其他能执行软件的电路系统。软件应当被宽泛地解释成意指指令、数据、或其任何组合,无论是被称作软件、固件、中间件、微代码、硬件描述语言、或其他。作为示例,机器可读介质可包括随机存取存储器(RAM)、闪存、只读存储器(ROM)、可编程只读存储器(PROM)、可擦式可编程只读存储器(EPROM)、电可擦式可编程只读存储器(EEPROM)、寄存器、磁盘、光盘、硬驱动器、或者任何其他合适的存储介质、或其任何组合。机器可读介质可被实施在计算机程序产品中。该计算机程序产品可以包括包装材料。

在硬件实现中,机器可读介质可以是处理系统中与处理器分开的一部分。然而,如本领域技术人员将容易领会的,机器可读介质或其任何部分可在处理系统外部。作为示例,机器可读介质可包括传输线、由数据调制的载波、和/或与设备分开的计算机产品,所有这些都可由处理器通过总线接口来访问。替换地或补充地,机器可读介质或其任何部分可被集成到处理器中,诸如高速缓存和/或通用寄存器文件可能就是这种情形。虽然所讨论的各种组件可被描述为具有特定位置,诸如局部组件,但它们也可按各种方式来配置,诸如某些组件被配置成分布式计算系统的一部分。

处理系统可以被配置为通用处理系统,该通用处理系统具有一个或多个提供处理器功能性的微处理器、以及提供机器可读介质中的至少一部分的外部存储器,它们都通过外部总线架构与其他支持电路系统链接在一起。替换地,该处理系统可以包括一个或多个神经元形态处理器以用于实现本文所述的神经元模型和神经系统模型。作为另一替换方案,处理系统可以用带有集成在单块芯片中的处理器、总线接口、用户接口、支持电路系统、和至少一部分机器可读介质的专用集成电路(ASIC)来实现,或者用一个或多个现场可编程门阵列(FPGA)、可编程逻辑器件(PLD)、控制器、状态机、门控逻辑、分立硬件组件、或者任何其他合适的电路系统、或者能执行本公开通篇所描述的各种功能性的电路的任何组合来实现。取决于具体应用和加诸于整体系统上的总设计约束,本领域技术人员将认识到如何最佳地实现关于处理系统所描述的功能性。

机器可读介质可包括数个软件模块。这些软件模块包括当由处理器执行时使处理系统执行各种功能的指令。这些软件模块可包括传送模块和接收模块。每个软件模块可以驻留在单个存储设备中或者跨多个存储设备分布。作为示例,当触发事件发生时,可以从硬驱动器中将软件模块加载到RAM中。在软件模块执行期间,处理器可以将一些指令加载到高速缓存中以提高访问速度。随后可将一个或多个高速缓存行加载到通用寄存器文件中以供处理器执行。在参照以下述及软件模块的功能性时,将理解此类功能性是在处理器执行来自该软件模块的指令时由该处理器来实现的。

如果以软件实现,则各功能可作为一条或多条指令或代码存储在计算机可读介质上或藉其进行传送。计算机可读介质包括计算机存储介质和通信介质两者,这些介质包括促成计算机程序从一地向另一地转移的任何介质。存储介质可以是能被计算机访问的任何可用介质。作为示例而非限定,此类计算机可读介质可包括RAM、ROM、EEPROM、CD-ROM或其他光盘存储、磁盘存储或其他磁存储设备、或能用于携带或存储指令或数据结构形式的期望程序代码且能被计算机访问的任何其他介质。另外,任何连接也被正当地称为计算机可读介质。例如,如果软件是使用同轴电缆、光纤电缆、双绞线、数字订户线(DSL)、或无线技术(诸如红外(IR)、无线电、以及微波)从web网站、服务器、或其他远程源传送而来,则该同轴电缆、光纤电缆、双绞线、DSL或无线技术(诸如红外、无线电、以及微波)就被包括在介质的定义之中。如本文中所使用的盘(disk)和碟(disc)包括压缩碟(CD)、激光碟、光碟、数字多用碟(DVD)、软盘、和碟,其中盘(disk)常常磁性地再现数据,而碟(disc)用激光来光学地再现数据。因此,在一些方面,计算机可读介质可包括非瞬态计算机可读介质(例如,有形介质)。另外,对于其他方面,计算机可读介质可包括瞬态计算机可读介质(例如,信号)。上述的组合应当也被包括在计算机可读介质的范围内。

因此,某些方面可包括用于执行本文中给出的操作的计算机程序产品。例如,此类计算机程序产品可包括其上存储(和/或编码)有指令的计算机可读介质,这些指令能由一个或多个处理器执行以执行本文中所描述的操作。对于某些方面,计算机程序产品可包括包装材料。

此外,应当领会,用于执行本文中所描述的方法和技术的模块和/或其它恰适装置能由用户终端和/或基站在适用的场合下载和/或以其他方式获得。例如,此类设备能被耦合至服务器以促成用于执行本文中所描述的方法的装置的转移。替换地,本文所述的各种方法能经由存储装置(例如,RAM、ROM、诸如压缩碟(CD)或软盘等物理存储介质等)来提供,以使得一旦将该存储装置耦合至或提供给用户终端和/或基站,该设备就能获得各种方法。此外,可利用适于向设备提供本文所描述的方法和技术的任何其他合适的技术。

将理解,权利要求并不被限定于以上所解说的精确配置和组件。可在以上所描述的方法和装置的布局、操作和细节上作出各种改动、更换和变形而不会脱离权利要求的范围。

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