用于流帧的时间稳定的方法和设备的利记博彩app

文档序号:7776748阅读:288来源:国知局
用于流帧的时间稳定的方法和设备的利记博彩app
【专利摘要】一种方法、设备和计算机程序产品被公开以提供与流帧的处理相关联的控制算法的改进的时间稳定。在方法的上下文中,确定其间经滤波的值已经大于当前帧的当前值的紧接着在前的连续帧的数目或者确定其间经滤波的值已经小于当前帧的当前值的紧接着在前的连续帧的数目。该方法还包括基于紧接着在前的连续帧的数目确定权重。该权重被配置为按照与紧接着在前的连续帧的数目的直接关系变化。该方法还基于该权重和先前经滤波的值与当前帧的值之间的差值的组合确定当前帧的经滤波的值。
【专利说明】用于流帧的时间稳定的方法和设备
【技术领域】
[0001]根据示例实施例提供了用于处理流巾贞(streaming frame)并且更具体地用于提供流中贞的时间稳定(temporal stabilization)方法和设备。
【背景技术】
[0002]为了例如通过捕获流视频帧来适当地记录或者另外处理流帧,实现了多个控制算法。例如,针对流帧的控制算法包括自动曝光控制(AEC)算法、自动白平衡(AWB)算法、如美国专利N0.7,835,588所描述的对比优化算法等等。作为示例,AEC算法接收关于曝光的信息以及与当前帧相关的其它图像统计数据,确定当前帧所表示的图像是曝光不足、曝光过度还是适度曝光,并且在其中当前帧所表示的图像被确定为曝光不足或者曝光过度的情况下,针对下一帧建议不同的曝光。就此而言,图1描绘了多个帧的照度级(illuminationlevel)以及进而针对下一个帧由AEC算法建议的曝光。因为AEC算法所执行的分析在已经被曝光的帧上被执行,所以针对下一个帧,光照度可能有所改变。由于常常希望帧流体验没有延迟,所以可能存在如图1中的“u”表示的偶尔的曝光不足或者如图1中的“ο”表示的偶尔的曝光过度。此外,例如可能是由对当前帧的照度级的分析造成的曝光水平的频繁变化可能响应于图像亮度的至少一些相对微小的变化产生随时间推移的曝光水平的重复变化,使得所得到的视觉效果对于观看者而言可能有些不安。
[0003]已经开发了一种技术,该技术保存已针对多个先前的帧确定的未经滤波的控制值(即一个或多个控制算法的产物),然后确定并利用控制值的加权平均值。然而,这种技术的收敛速度不能简单且准确地调谐。此外,这种技术所提供的滤波的强度可能只在其中所保存的样本的数目相对较高的情况下被提高,这也可能是不利的。

【发明内容】

[0004]提供了根据本发明的示例实施例的方法、设备和计算机程序产品以提供对与流帧的处理相关联的一个或多个控制算法的改进的时间稳定。就此而言,示例实施例的方法、设备和计算机程序产品以一种平滑而较好快速的方式对曝光的变化做出响应,并且在一个实施例中可以允许收敛速度是可调谐的。此外,示例实施例的方法、设备和计算机程序产品可以被配置以使得不对输入数据偶尔的短暂异常(例如闪光灯)做出响应。因此,示例实施例的方法、设备和计算机程序产品可以在流帧只有微小变化的情况下提供对流视频的相对稳定的控制。在一个实施例中,所述方法、设备和计算机程序产品还可以顺畅地对流帧的是递减的或是递增的趋势进行跟随。通过提供针对流帧的时间稳定,用户体验可以通过提供所希望的控制但又以一种令人满意且在一些情况下可由用户调谐的方式而得以改善。
[0005]在一个实施例中,提供了一种方法,该方法包括利用处理器确定其间经滤波的值已经大于当前帧的当前值的紧接着在前的连续帧的数目或者其间经滤波的值已经小于当前帧的当前值的紧接着在前的连续帧的数目。该实施例的方法还可以包括基于紧接着在前的连续帧的数目确定权重。该权重被配置为按照与紧接着在前的连续帧的数目的直接关系而变化。该实施例的方法还基于该权重和先前经滤波的值和当前帧的当前值之间的差别的组合确定当前帧的经滤波的值。
[0006]在一个实施例中,该方法通过如下方式确定紧接着在前的连续帧的数目:维持其间经滤波的值已经大于当前帧的当前值的紧接着在前的连续帧的数目的第一计数器或者维持其间经滤波的值已经小于当前帧的当前值的紧接着在前的连续帧的数目的第二计数器。该实施例的方法还可以包括在其中经滤波的值至少超过当前帧的当前值的情况下重置第一计数器和第二计数器中的至少一个。另一实施例的方法还可以包括在其中经滤波的值至少超过当前帧的当前值的情况下减小第一计数器和第二计数器中的至少一个。在该实施例中,该方法还可以包括确定紧接着在前的连续帧是递增的或者确定紧接着在前的连续帧是递减的。在该实施例中,该方法可以通过在其中紧接着在前的连续帧被确定是递增的或是递减的的情况下减小但是不重置第一计数器和第二计数器中的至少一个来减小第一计数器和第二计数器中的至少一个。
[0007]在另一实施例中,提供了一种设备,该设备包括至少一个处理器和包括计算机程序代码的至少一个存储器,该至少一个存储器和该计算机程序代码被配置为利用该处理器使得该设备至少确定其间经滤波的值已经大于当前帧的当前值的紧接着在前的连续帧的数目或者其间经滤波的值已经小于当前帧的当前值的紧接着在前的连续帧的数目。该至少一个存储器和该计算机程序代码还被配置为利用该处理器使得一个实施例的设备基于紧接着在前的连续帧的数目确定权重。该权重被配置为按照与紧接着在前的连续帧的数目的直接关系变化。该至少一个存储器和该计算机程序代码还被配置为利用该处理器使得一个实施例的该设备基于该权重和先前经滤波的值与当前帧的当前值之间的差别的组合确定当前帧的经滤波的值。
[0008]在一个实施例中,该至少一个存储器和该计算机程序代码被配置为利用该处理器使得该设备通过如下方式确定紧接着在前的连续帧的数目:维持其间经滤波的值已经大于当前帧的当前值的紧接着在前的连续帧的数目的第一计数器或者维持其间经滤波的值已经小于当前帧的当前值的紧接着在前的连续帧的数目的第二计数器。该至少一个存储器和该计算机程序代码还可以被配置为利用该处理器使得一个实施例的该设备在其中所述经滤波的值至少超过当前帧的当前值的情况下重置第一计数器和第二计数器中的至少一个。该至少一个存储器和该计算机程序代码还可以被配置为利用该处理器使得可替代实施例的该设备在其中经滤波的值至少超过当前帧的当前值的情况下减小第一计数器和第二计数器中的至少一个。在该实施例中,该至少一个存储器和该计算机程序代码还可以被配置为利用该处理器使得该设备确定紧接着在前的连续帧是递增的或者确定紧接着在前的连续帧是递减的。在该实施例中,该至少一个存储器和该计算机程序代码可以被配置为通过在其中所述紧接着在前的连续帧被确定是递增的或是递减的的情况下减小但是不重置第一计数器和第二计数器中的至少一个来减小所述第一计数器和第二计数器中的至少一个。
[0009]在另一实施例中,提供了一种计算机程序产品,该计算机程序产品包括其中存储有计算机可执行程序代码部分的至少一个非瞬态计算机可读存储介质,该计算机可执行程序代码部分包括用于确定其间经滤波的值已经大于当前帧的当前值的紧接着在前的连续帧的数目或者其间经滤波的值已经小于当前帧的当前值的紧接着在前的连续帧的数目的程序代码指令。该实施例的计算机可执行程序代码部分还包括用于基于紧接着在前的连续帧的数目确定权重的程序代码指令。该权重被配置为按照与紧接着在前的连续帧的数目的直接关系变化。该实施例的计算机可执行程序代码部分还包括用于基于权重和先前经滤波的值与当前帧的当前值之间的差别的组合确定当前帧的经滤波的值的程序代码指令。
[0010]在一个实施例中,用于确定紧接着在前的连续帧的数目的程序代码指令包括用于维持其间经滤波的值已经大于当前帧的当前值的紧接着在前的连续帧的数目的第一计数器或者维持其间经滤波的值已经小于当前帧的当前值的紧接着在前的连续帧的数目的第二计数器的程序代码指令。另一实施例的计算机可执行程序代码部分还可以包括用于在其中经滤波的值至少超过当前帧的当前值的情况下重置第一计数器和第二计数器中的至少一个的程序代码指令。另一实施例的计算机可执行程序代码部分还可以包括用于在其中经滤波的值至少超过当前帧的当前值的情况下减小第一计数器和第二计数器中的至少一个的程序代码指令。在该实施例中,该计算机可执行程序代码部分还可以包括用于确定紧接着在前的连续帧是递增的或者确定紧接着在前的连续帧是递减的的程序代码指令。在该实施例中,该计算机可执行程序代码部分还可以包括通过在其中紧接着在前的连续帧被确定是递增的或是递减的的情况下减小但是不重置第一计数器和第二计数器中的至少一个来减小第一计数器和第二计数器中的至少一个的程序代码指令。
[0011]在另一实施例中,提供了一种设备,该设备包括用于确定其间经滤波的值已经大于当前帧的当前值的紧接着在前的连续帧的数目或者其间经滤波的值已经小于当前帧的当前值的紧接着在前的连续帧的数目的装置。该实施例的设备还可以包括用于基于紧接着在前的连续帧的数目确定权重的装置。该权重按照与紧接着在前的连续帧的数目的直接关系变化。该实施例的设备还包括用于基于该权重和先前经滤波的值与当前帧的当前值之间的差别的组合确定当前帧的经滤波的值的装置。
【专利附图】

【附图说明】
[0012]已经概括描述了本公开的特定示例实施例,现在将参考附图,附图不必要时按比例绘制的,其中:
[0013]图1是多个帧的照度级和AEC算法针对帧所建议的曝光水平的图形表示;
[0014]图2是可以根据本发明的示例实施例被专门配置的设备的框图;
[0015]图3是图示了根据本发明的示例实施例的、例如由图2的设备执行的操作的流程图;
[0016]图4是根据本发明的示例实施例的、被分配给经滤波的值与控制算法的当前值之间的差别的权重以及对应的计数器值的图形表示,以及响应于多个流帧的控制算法的未经滤波的值和经滤波的值的表示;
[0017]图5是根据本发明的示例实施例的基于计数器的权重生成函数的图形表示;
[0018]图6是根据本发明的示例实施例的控制算法的未经滤波的值和经滤波的值的图形表示;以及
[0019]图7是根据本发明的示例实施例确定的更平滑地收敛的经滤波的控制值的图形表不。
【具体实施方式】[0020]下文中将参考附图更全面地描述本发明的一些实施例,在附图中示出了本发明的一些实施例(而非全部实施例)。实际上,本发明的各个实施例可以按很多不同的形式被实现并且不应当被解释为局限于这里所提供的实施例;相反,这些实施例被提供以使得本公开将满足所适用的法律要求。相同的标号通篇指代相同的元素。如这里所使用的,术语“数据”、“内容”、“信息”和类似的术语可以被互换地使用以指代能够根据本发明的实施例被发送、接收和/或存储的数据。因而,对任何这样的术语的使用不应当被用来限制本发明的实施例的精神和范围。
[0021 ] 此外,如这里所使用的,术语“电路装置“指代(a)只有硬件的电路实现方式(例如采用模拟电路和/或数字电路的实现方式);(b)电路和计算机程序产品的组合,所述计算机程序产品包括被存储在一个或多个计算机可读存储器上的软件和/或固件指令,所述电路和计算机程序产品一起工作以使得设备执行这里所描述的一个或多个功能;以及(C)需要软件或固件以进行操作(即使该软件或固件并非物理上存在的)的电路,例如微处理器或微处理器的一部分。这个关于“电路装置”的定义适用于这里对该术语的全部使用,包括在任意权利要求中的使用。又例如,如这里所使用的,术语‘电路’还包括包括一个或多个处理器和/或这些处理器的部分以及伴随的软件和/或固件的实现。又例如,这里所使用的术语“电路装置”还包括例如用于移动电话的基带集成电路或应用处理器集成电路或者服务器中类似的集成电路、蜂窝网络设备、其它网络设备和/或其它计算设备中的类似的集成电路。
[0022]如这里所定义,指代非瞬态物理存储介质(例如易失性或非易失性存储器设备)的“计算机可读存储介质”可以与指代电磁信号的“计算机可读传输介质”区分开。
[0023]提供根据本发明的示例实施例的方法、设备和计算机程序产品以提供针对流帧(例如流视频帧)的改进的时间稳定。因此,该方法、设备和计算机程序产品可以用被配置为接收和呈现流帧(例如流视频)的各种计算设备中的任意计算设备来实现。例如,这些计算设备可以包括各种移动终端中的任意一种,例如便携式数字助理(PDA)、移动电话、智能电话、寻呼机、移动电视、游戏设备、膝上型计算机、照相机、平板计算机、触摸表面、视频记录器、音频/视频播放器、无线电、电子书、定位设备(例如全球定位系统(GPS)设备)或者前述设备的任意组合以及其它类型的语音和文本通信系统。附加地或可替代地,所述计算设备可以包括固定计算设备,例如个人计算机,计算机工作站等。此外,示例实施例的方法、设备和计算机程序产品可以用被配置以为一个或多个计算设备(例如一个或多个客户端设备)提供流帧的时间稳定的网络设备(例如服务器或其它网络实体)来实现。
[0024]不管是何种类型的计算设备,可以根据本发明的示例实施例被专门配置为提供流帧的时间稳定的设备10在图2中被示出。还应当注意虽然图2示出了用于提供流帧的时间稳定的设备的配置的一个示例,但是各种其它配置也可以被用来实现本发明的实施例。因此,在一些实施例中,虽然设备或元件被显示为与彼此通信,但是下文中,这些设备或元件应当被认为是能够在同一设备或元件内被实现的,并且因而,被显示为彼此通信的设备或元件应当被理解为或者是同一设备或元件的多个部分。
[0025]现在参考图2,设备10可以包括处理器12、存储器设备14以及可选的通信接口 16和用户接口 18或者另外与这些元件通信。在一些实施例中,处理器(和/或协同处理器或者任何其它辅助或者与处理器相关联的处理电路装置)可以经由用于在设备的组件之间传送信息的总线与存储器设备通信。存储器设备可以是非瞬态的并且可以包括例如一个或多个易失性和/或非易失性存储器。换言之,例如,存储器设备可以是包括被配置为存储可以由机器(例如像处理器这样的计算设备)获取的数据(例如比特)的门的电子存储设备(例如计算机可读存储介质)。存储设备可以被配置为存储用于使得所述设备能够执行根据本发明的示例实施例的各种功能的信息、数据、内容、应用、指令等。例如,存储器设备可以被配置为缓冲用于由处理器处理的输入数据。附加地或可替代地,存储器设备可以被配置为存储用于由处理器执行的指令。
[0026]设备10可以用诸如移动终端之类的计算设备来实现。但是,在一些实施例中,该设备可以被实现为芯片或芯片组。换言之,该设备可以包括在结构化组件(例如基板)上的包括材料、组件和/或电线的一个或多个物理封装(例如芯片)。所述结构化组件可以为其中所包括的组件电路提供物理强度、尺寸保全和/或对电交互的限制。因此,在一些情况下,该设备可以被配置为在单个芯片上或者作为单个“片上系统”实现本发明的实施例。因此,在一些情况下,芯片或芯片组可以构成用于执行用于提供这里所描述的功能的一个或多个操作的装置。
[0027]处理器12可以用多种不同的方式被实现。例如,处理器可以被实现为各种硬件处理装置中的一个或多个,例如协同处理器、微处理器、控制器、数字信号处理器(DSP)、有或没有伴随的DSP的处理元件或者各种其它处理电路装置,包括例如ASIC (专用集成电路)、FPGA (现场可编程门阵列)、微控制器单元(MCU)、硬件加速器、专用计算机芯片等之类的集成电路。因此,在一些实施例中,处理器可以包括被配置为独立执行的一个或多个处理核。多核处理器可以在单个物理封装内实现多重处理。作为附加或替代,处理器可以包括经由总线被串联配置的一个或多个处理器以实现指令的独立执行、流水线和/或多线程。
[0028]在示例实施例中,处理器12可以被配置为执行存储在存储器设备14中或者处理器可获取的指令。可替换或附加地,处理器可以被配置为执行硬编码的功能。因此,不管是用硬件或软件方法或者它们的组合进行配置,处理器都可以代表在被相应地配置时能够执行根据本发明的实施例的操作的实体(例如物理上用电路装置实现的实体)。因而,例如,当处理器被实现为ASIC、FPGA等时,处理器可以是用于执行这里所描述的操作的被专门配置的硬件。或者,作为另一示例,当处理器被实现为软件指令的执行器时,所述指令可以专门配置处理器以在指令被执行时执行这里所描述的算法和/或操作。但是,在一些情况下,处理器可以是被配置为通过利用用于执行这里所描述的算法和/或操作的指令进一步配置处理器来实现本发明的实施例的特定设备(例如直通显示器或移动终端)的处理器。该处理器可以包括被配置为支持处理器的操作的时钟、算术逻辑单元(ALU)和逻辑门。
[0029]同时,通信接口 16可以是被配置为从/向网络和/或与设备10进行通信的任何其它设备或模块接收和/或发送数据的任意装置,例如用硬件或硬件和软件的组合实现的设备或电路装置。就此而言,通信接口可以包括例如用于实现与无线通信网络的通信的天线(或多个天线)和支持硬件和/或软件。附加或可替代地,通信接口可以包括用于与天线交互以致使经由天线的信号传输或者处置接收经由天线接收的信号的电路装置。在一些环境下,通信接口可以作为选择地或者同时支持有线通信。因此,例如,通信接口可以包括用于支持经由线缆、数字订户线(DSL)、通用串行总线(USB)或其它机制的通信的通信调制解调器和/或其它硬件/软件。[0030]在一些实施例中,设备10可以包括用户接口 18,该用户接口可以进而与处理器12通信以向用户提供输出并且在一些实施例中接收关于用户输入的指示。因此,用户接口可以包括显示器并且在一些实施例中,也可以包括键盘、鼠标、游戏杆、触摸屏、触摸区域、软按键、传声器、扬声器或其它输入/输出机构。替代或附加地,处理器可以包括被配置为控制诸如显示器以及一些实施例中的扬声器、响铃、传声器等之类的一个或多个用户接口元件的至少一些功能的用户接口电路装置。处理器和/或包括该处理器的用户接口电路装置可以被配置为通过存储在处理器可访问的存储器(例如存储器设备24等)上的计算机程序指令(例如软件和/或固件)控制一个或多个用户接口元件的一个或多个功能。
[0031]现在参考图3,示出了如下操作,所述操作被执行以提供对由诸如AEC算法、AWB算法、对比优化算法等之类的控制算法提供的输出的时间稳定。如图3的框20中所示,设备10可以包括用于确定由相应的控制算法针对前一帧产生的前一经滤波的值与该控制算法响应于当前帧产生的当前值之间的差别的装置,比如处理器12。就此而言,诸如处理器之类的设备可以根据控制算法的类型被配置以确定所述差别为针对当前帧的取决于算法的当前值与针对前一帧的控制算法的前一经滤波的值的比值,确定该差别为针对当前帧的控制算法的当前值与针对前一帧的控制算法的前一经滤波的值之间的差别,在多个值被评估的情况下确定所述差别为差别的总和等等。
[0032]如图3的框22中所示,设备10还可以包括用于确定与针对前一帧的控制算法的经滤波的值和针对当前帧的控制算法的当前值之间的差别相关联的权重的装置,比如处理器12,如第6,148,103号美国专利所描述的,该美国专利的内容全部通过引用被合并于此。诸如处理器之类的设备可以确定该权重为取决于针对前一帧的控制算法的前一经滤波的值与针对当前帧的控制算法的当前值之间的差别。在一个实施例中,该权重与针对前一帧的控制算法的前一经滤波的值与针对当前帧的控制算法的当前值之间的差别具有直接关系。因此,诸如处理器之类的设备可以在针对前一帧的控制算法的前一经滤波的值与针对当前帧的控制算法的当前值之间的差别较大的情况下分配较大的权重并且在针对前一帧的控制算法的前一经滤波的值与针对当前帧的控制算法的当前值之间的差别较小的情况下分配较小的权重。
[0033]如图3的框24中所示,本发明的示例实施例的设备10还可以包括用于确定其间控制算法的经滤波的值已经大于当前帧的控制算法的当前值的紧接着在前的连续帧的数目的装置,比如处理器12。类似地,该设备可以包括用于确定其间控制算法的经滤波的值已经小于当前帧的控制算法的当前值的紧接着在前的连续帧的数目的装置,比如处理器。该实施例的设备还包括用于基于紧接着在前的连续帧的数目确定权重的装置,比如处理器。参见图3的框26。就此而言,权重按照与紧接着在前的连续帧的数目的直接关系变化。因此,诸如处理器之类的设备可以在紧接着在前的连续帧的数目较大的情况下分配较大的权重并且在紧接着在前的连续帧的数目较小的情况下分配较小的权重。通过按照与紧接着在前的连续帧的数目的直接关系的方式分配权重,短暂异常峰值对控制算法的输出的影响被减小。此外,权重与紧接着在前的连续帧的数目之间的直接关系使得在其中紧接着在前的连续帧的数目较大的情况下收敛被加大,同时仍然保持相对平滑的收敛。
[0034]为了确定紧接着在前的连续帧的数目,一个实施例的设备10可以包括用于维持其间控制算法的经滤波的值已经大于针对当前帧的控制算法的当前值的紧接着在前的连续帧的数目的第一计数器的装置,比如处理器12、存储器14等。该设备还可以包括用于维持其间经滤波的值已经小于针对当前帧的控制算法的当前值的紧接着在前的连续帧的数目的第二计数器的装置,比如处理器、存储器等。因而,诸如处理器之类的设备可以基于第一计数器或者第二计数器(例如具有非零值的计数器)的值确定权重,该权重与相应的计数器的值具有直接关系。就此而言,在其中具有非零值的计数器具有较大的值的情况下可以分配较大的权重并且在其中具有非零值的计数器具有较小的值的情况下可以分配较小的权重。通过在其中计数器值较小的情况下分配较低的权重,诸如处理器之类的设备可以不以过度的方式对控制算法的当前值的变化做出响应,该变化可能是由于异常峰值引起的,而不是更有意义的帧的实质性变化引起的。
[0035]如图3的框28中所示,设备10还可以包括用于基于权重和针对前一帧的控制算法的经滤波的值与针对当前帧的控制算法的当前值之间的差别的组合确定针对当前帧的控制算法的经滤波的值的装置,比如处理器12,该权重由大于或者小于控制算法的当前值的紧接着在前的连续帧的数目决定。因此,该实施例的方法、设备和计算机程序产品确定针对当前值的控制算法的经滤波的值,该当前值不仅基于针对先前帧的控制算法的经滤波的值与针对当前帧的控制算法的控制值之间的加权差别,还基于针对其的控制算法的经滤波的值已经大于或者小于针对当前帧的控制算法的当前值的帧的加权数目,从而改进经滤波的值的响应和收敛。
[0036]在一个实施例中,设备10还可以包括用于在其中针对前一帧的控制算法的经滤波的值的大小等于或者超过针对当前帧的控制算法的当前值的大小的情况下重置第一计数器和第二计数器中的至少一个的装置,比如处理器12、存储器14等。在该实施例中,诸如处理器之类的设备可以在其中控制算法的经滤波的值的大小(例如绝对值)等于或超过针对当前帧的控制算法的当前值的大小(例如绝对值)的情况下重置第一计数器或第二计数器。在一个实施例中,诸如处理器、存储器设备等之类的设备可以将第一计数器和第二计数器重置为零。
[0037]作为示例,现在参考图4,该图示出了用随时间推移的不同灰度级表示的具有不同照度级的多个帧。图4还示出了控制算法响应于帧所提供的未经滤波的值。如图所示,控制算法的未经滤波的值即便是在帧的照度级急剧变化相对短暂的情况下也在帧的照度级急剧变化时大幅变化。图4还示出了第一计数器和第二计数器的值并且指示了其中第二计数器维持其中控制算法的经滤波的值小于当前值(即“低于目标值”)的紧接着在前的连续帧的数目的计数值的情况以及其中第一计数器维持其中控制算法的经滤波的值超过针对当前帧的控制算法的当前值(即“高于目标值”)的紧接着在前的连续帧的数目的计数值的情况。如图所示,计数器的值的大小不断增加,一直到针对先前帧的控制算法的经滤波的值的大小等于或超过针对当前帧的控制算法的当前值时为止,此时计数器被重置为零。
[0038]图4还示出了针对控制算法针对先前帧的先前的经滤波的值与控制算法针对当前帧的当前值之间的差别所确定的权重以及基于计数器确定的权重,以及这些权重的组合,例如这些权重的加和。通过应用权重的组合可以确定当前帧的经滤波的值,例如图4中所示的。就此而言,经滤波的值是收敛至相同值的更平滑的表示。
[0039]如上所示,诸如处理器12之类的设备10可以基于权重wl与权重《2的组合确定当前帧的经滤波的值,权重《I基于大于或小于控制算法的当前值的紧接着在前的连续帧的数目,权重w2基于针对前一帧的控制算法的先前经滤波的值与针对当前帧的控制算法的当前值之间的差别。例如,诸如处理器之类的设备可以确定当前帧的经滤波的值为基于所述两个权重的乘积、基于所述两个权重的最小值、在其中《I超过预定阈值的情况下基于所述权重中的一个(例如w2)和针对当前帧的控制算法的当前值,并且在其中wl不超过预定阈值的情况下,使权重基于所述两个权重的乘积。在前述实施例中,权重以及阈值的大小是可调谐的,比如由用户调谐,使得异常或峰值滤波的强度和对帧的照度级的变化进行跟随的收敛速度是相应地可调谐的。
[0040]作为另一示例,根据本发明的一个实施例的与计数器的值相关联的权重可以按照图5中所示的方式被定义,其中该权重在最小权重与最大权重之间随计数器的值线性变化。然而在其它实施例中,诸如处理器12之类的设备10可以按照其它方式定义权重与计数器的值之间的关系。
[0041]如图6中所示,示例实施例的方法、设备和计算机程序产品可以提供可收敛至合适的值的控制算法的更平滑的经滤波的输出,但又可以对短暂存在的异常峰值做出较小的响应。就此而言,帧的照度级包括如控制算法的未经滤波的输出所示的多个异常峰值。在对控制算法的未经滤波的输出进行处理之后,根据本发明的方法、设备和计算机程序产品的一个实施例所提供的控制算法的经滤波的值提供更平滑且同时仍然非常具有代表性的输出,该输出将实现更好的用户体验并且提高流帧的时间稳定。
[0042]为了考虑和平滑地跟踪控制算法的值的递增或递减的趋势,一个实施例的方法、设备和计算机程序产品在其中针对前一帧的控制算法的经滤波的值的大小等于或超过针对当前帧的控制算法的当前值的大小的情况下不需要将计数器的值重置为零,如上所述。而是,作为对针对前一帧的控制算法的经滤波的值的大小等于或超过针对当前帧的控制算法的当前值的大小的响应,所述方法、设备和计算机程序产品可以减小但是不重置计数器的值。例如,控制算法针对多个帧所生成的未经滤波的值可以具有递减或递增趋势,例如如图7中所示的递减趋势,在递减或递增趋势中具有一些时间变化(temporal variation)。在其中针对前一帧的控制算法的经滤波的值的大小等于或超过针对当前帧的控制算法的当前值的每一种情况下计数器都将被重置的情况下,峰值检测等待时间将重新开始并且收敛将不像所希望的那样平滑,如图7中的线LI所示。实际上,在这种情况下,基于针对前一帧的控制算法的经滤波的值的大小等于或超过针对当前帧的控制算法的当前值,计数器在图7中所示的每个点处将被重置,这改变了控制算法的经滤波的值的收敛并且可能被用户感知为错误或者其它毛刺。代替的是,该实施例的方法、设备和计算机程序产品可以在其中针对前一帧的控制算法的经滤波的值等于或超过针对当前帧的控制算法的当前值的情况下减小但是不重置计数器的值。
[0043]因而,设备10可以包括用于在其中针对前一帧的控制算法的经滤波的值的大小等于或超过当前帧的控制算法的当前值的大小的情况下减小第一计数器和第二计数器中的至少一个(例如具有非零值的相应的计数器)的装置,比如处理器12。更具体而言,一个实施例的设备可以包括用于确定紧接着在前的连续帧是递增的或者用于确定紧接着在前的连续帧是递减的的装置,比如处理器,如关于针对先前帧的控制算法的经滤波的值的递增或递减的特性进行确定的。在其中紧接着在前的连续帧被确定是递增的或者是递减的情况下,诸如处理器之类的设备可以减小第一计数器和第二计数器中的至少一个(即第一计数器和第二计数器中具有非零值的那个计数器),而不将相应的计数器重置为零。通过减小但是不重置相应的计数器,控制算法的经滤波的值可以按照如图7中的曲线L2所示的更一致且平滑的方式收敛,从而实现改善的用户体验。在该实施例中,计数器的值被减小的程度可以是可调谐的,比如由用户调谐,以进一步改善用户体验。
[0044]在一个实施例中,所述方法、设备和计算机程序产品可以在其中控制算法的经滤波的值是递增的的情况下利用与其中控制算法的经滤波的值递减的情况下不同的权重、阈值等。因此,示例实施例的方法、设备和计算机程序产品可以对曝光过度和曝光不足做出不同的响应,例如对曝光过度的响应比对曝光不足的响应更快速。
[0045]如上所述,图3示出了根据本发明的示例实施例的设备10、方法和计算机程序产品的流程图。应当理解流程图的每个方框和流程图中的方框的组合可以用各种装置来实现,例如硬件、固件、处理器、电路装置和/或与包括一个或多个计算机程序指令的软件的执行相关联的其它设备。例如,上述过程中的一个或多个过程可以用计算机程序指令来实现。就此而言,实现上述这些过程的计算机程序指令可以被使用本发明的实施例的设备的存储器设备14存储并且由设备的处理器12执行。可以理解,任何这样的计算机程序指令可以被装载到计算机或其它可编程装置(例如硬件)上以产生一种机器,使得在计算机或其它可编程装置上执行的指令创建用于实现流程图方框中所指定的功能的装置。这些计算机程序指令也可以被存储在可以弓I导计算机或其它可编程装置按特定方式工作的计算机可读存储器中,使得存储在计算机可读存储器中的指令产生实现流程图方框中所指定的功能的制品。计算机程序指令也可以被装载到计算机或其它可编程装置上以使得一系列操作在计算机或其它可编程装置上被执行以产生计算机实现的过程,使得在计算机或其它可编程装置上执行的指令实现流程图方框中所指定的功能。
[0046]因此,流程图的方框支持用于执行指定功能的装置的组合和用于执行指定功能的操作的组合。还将理解流程图的一个或多个方框以及流程图中的方框的组合可以用执行指定功能的专用的基于硬件的计算机系统或者专用硬件和计算机指令的组合来实现。
[0047]在一些实施例中,以上操作中的特定操作可以被修改或者进一步增强。此外,在一些实施例中可以包括附加的可选操作。对以上操作的修改、添加或放大可以按任意顺序或者按任意组合被执行。
[0048]这些发明所属于的领域中的技术人员在前述说明书和相关附图中所呈现的教导的启发下将想到这里所提供的发明的很多修改和其它实施例。因此,应当理解这些方法不局限于所公开的具体实施例并且所述修改和其它实施例意在被包括在所附权利要求的范围内。此外,虽然之前的描述和相关附图描述了在特定的元件和/或功能的示例性组合的上下文中的一些示例实施例,但是应当理解替代实施例可以提供不同的元件和/或功能的组合而不脱离所附权利要求的范围。就此而言,例如,与以上明确描述的那些组合不同的元件和/或功能的组合也被认为是所附权利要求中的一些权利要求中所提出的。虽然这里使用了特定的术语,但是这些术语按通用和描述性的意思而不是为了限制的目的被使用。
【权利要求】
1.一种用于流帧的时间稳定的方法,包括: 利用处理器确定其间经滤波的值已经大于当前帧的当前值的在前连续帧的数目或者其间所述经滤波的值已经小于所述当前帧的当前值的所述在前连续帧的数目; 基于所述在前连续帧的数目确定权重,其中所述权重按照与所述在前连续帧的数目的直接关系而变化;以及 基于所述权重和先前经滤波的值与所述当前帧的当前值之间的差别的组合确定所述当前帧的经滤波的值。
2.根据权利要求1所述的方法,其中确定所述在前连续帧的数目包括维持其间所述经滤波的值已经大于所述当前帧的当前值的所述在前连续帧的数目的第一计数器或者维持其间所述经滤波的值已经小于所述当前帧的当前值的所述在前连续帧的数目的第二计数器。
3.根据权利要求2所述的方法,进一步包括在其中所述经滤波的值等于或者超过所述当前帧的当前值的情况下重置所述第一计数器和所述第二计数器中的至少一个。
4.根据权利要求2所述的方法,进一步包括在其中所述经滤波的值等于或者超过所述当前帧的当前值的情况下减小所述第一计数器和所述第二计数器中的至少一个。
5.根据权利要求4所述的方法,进一步包括确定所述在前连续帧是递增的或者确定所述在前连续帧是递减的,其中减小所述第一计数器和所述第二计数器中的至少一个包括在其中所述在前连续帧被确定是递增的或者是递减的的情况下减小但是不重置所述第一计数器和所述第二计数器中的至少一个。
6.根据权利要求1至5中的任一项所述的方法,进一步包括确定与所述先前经滤波的值和所述当前帧的当前值之·间的差别相关联的权重,并且其中确定所述当前帧的经滤波的值包括基于多个所述权重和所述当前帧的当前值的组合确定所述当前帧的经滤波的值。
7.根据权利要求6所述的方法,进一步包括将与所述先前经滤波的值和所述当前帧的当前值之间的差别相关联的所述权重以及基于所述在前连续帧的数目的所述权重进行组入口 ο
8.根据权利要求1所述的方法,其中所述在前连续帧的数目包括紧接着在前的连续帧的数目。
9.一种用于流帧的时间稳定的设备,包括: 用于确定其间经滤波的值已经大于当前帧的当前值的在前连续帧的数目或者其间所述经滤波的值已经小于所述当前帧的当前值的所述在前连续帧的数目的装置; 用于基于所述在前连续帧的数目确定权重的装置,其中所述权重按照与所述在前连续帧的数目的直接关系而变化;以及 用于基于所述权重和先前经滤波的值与所述当前帧的当前值之间的差别的组合确定所述当前帧的经滤波的值的装置。
10.根据权利要求9所述的设备,其中所述设备进一步包括:用于通过如下方式确定所述在前连续帧的数目的装置:维持其间所述经滤波的值已经大于所述当前帧的当前值的在前连续帧的数目的第一计数器或者维持其间所述经滤波的值已经小于所述当前帧的当前值的所述在前连续帧的数目的第二计数器。
11.根据权利要求10所述的设备,其中所述设备进一步包括:用于在其中所述经滤波的值等于或者超过所述当前帧的当前值的情况下重置所述第一计数器和所述第二计数器中的至少一个的装置。
12.根据权利要求10所述的设备,其中所述设备进一步包括:用于在其中所述经滤波的值等于或者超过所述当前帧的当前值的情况下减小所述第一计数器和所述第二计数器中的至少一个的装置。
13.根据权利要求12所述的设备,其中所述设备进一步包括:用于确定所述在前连续帧是递增的或者确定所述在前连续帧是递减的的装置,其中所述用于减小所述第一计数器和所述第二计数器中的至少一个的装置包括用于在其中所述在前连续帧被确定是递增的或者是递减的的情况下减小但是不重置所述第一计数器和所述第二计数器中的至少一个的装置。
14.根据权利要求9至13中的任一项所述的设备,其中所述设备进一步包括:用于确定与所述先前经滤波的值和所述当前帧的当前值之间的差别相关联的权重的装置,并且其中所述用于确定所述当前帧的经滤波的值的装置包括用于基于多个所述权重和所述当前帧的当前值的组合确定所述当前帧的经滤波的值的装置。
15.根据权利要求14所述的设备,其中所述设备进一步包括:用于将与所述先前经滤波的值和所述当前帧的当前值之间的差别相关联的所述权重以及基于所述在前连续帧的数目的所述权重进行组合的装置。
16.根据权利要求9所述的设备,其中所述在前连续帧的数目包括紧接着在前的连续帧的数目。`
17.—种被配置为执行根据权利要求1至8中的任一项所述的方法的设备。
【文档编号】H04N5/243GK103826067SQ201310576719
【公开日】2014年5月28日 申请日期:2013年11月18日 优先权日:2012年11月19日
【发明者】P·尼诺南 申请人:诺基亚公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1