使用块匹配的镜头阴影颜色校正的方法和系统与流程

文档序号:11162200阅读:2297来源:国知局
使用块匹配的镜头阴影颜色校正的方法和系统与制造工艺

本申请要求在2014年9月26日提交的标题为“使用块匹配的镜头阴影颜色校正的方法和系统(METHOD AND SYSTEM OF LENS SHADING COLOR CORRECTION USING BLOCK MATCHING)”的美国专利申请第14/498,271号的权益。



背景技术:

诸如智能电话、平板计算机和可穿戴计算机的电子装置正在被小型化以方便用户,这继而涉及此类装置中的电子部件的小型化。这包括能够产生数字图像的数字照相机。虽然减小形状因子可增加用户的便利性,但它往往通过牺牲性能或质量来实现。对于数字照相机,更纤薄的形状因子使镜头和滤光器靠近照相机的传感器,从而导致数字图像往往具有色彩伪影和变色。因此,期望更好质量的数字图像。

附图说明

在附图中通过示例而非限制的方式示出了本文所述的材料。为了简洁和明确说明,在附图中示出的元件不一定按比例绘制。例如,为了清楚起见,一些元件的尺寸可相对于其它元件被放大。另外,在适当的情况下,附图标号可在各附图中重复以指示对应和/或类似的元件。在附图中:

图1为具有光衰减的图像的图示;

图2为示出图像的光衰减的图;

图3为具有镜头阴影颜色伪像的图像;

图4为具有难以提供正确阴影的纹理的图像;

图5为具有难以提供正确阴影的纹理的另一图像;

图6为用于镜头阴影颜色校正的图像捕获装置的示意图;

图7为示出镜头阴影颜色校正过程的流程图;

图8为详细镜头阴影颜色校正过程的流程图;

图9A-9B为用于镜头阴影颜色校正的块匹配过程的流程图;

图10为具有用于镜头阴影颜色校正的块簇的图像的图示;

图11为具有用于定位用于镜头阴影颜色校正的块的运动矢量的图像的图示;

图12为本文所述的示例系统的操作的图;

图13为示例系统的示意图;

图14为另一示例系统的示意图;以及

图15示出全部根据本公开的至少一些实施方案布置的另一示例装置。

具体实施方式

现在参考附图描述一或多个实施方案。尽管论述了具体的配置和布置,但是应理解,这仅是为了说明的目的。相关领域的技术人员应认识到,在不脱离本描述的精神和范围的情况下,可采用其它配置和布置。对于相关领域的技术人员应显而易见的是,本文所述的技术和/或布置也可用于除了本文所述之外的各种其它系统和应用中。

尽管以下描述阐述了可在例如诸如片上系统(SoC)架构的架构中表现的各种实施方案,但是本文所述的技术和/或布置的实施方案不限于特定架构和/或计算系统并且可由用于类似目的的任何架构和/或计算系统来实现。例如,采用例如多个集成电路(IC)芯片和/或封装和/或诸如成像装置、数字照相机、智能电话、网络摄像机、视频游戏面板或控制台、机顶盒等的各种计算装置和/或消费电子(CE)可实现本文所述的技术和/或布置。此外,尽管以下描述可阐述诸如系统部件的逻辑实现、类型和相互关系、逻辑分区/集成选择等的许多具体细节,但是可在没有此类具体细节的情况下实施所要求保护的主题。在其它情况下,可不详细地示出诸如例如控制结构和完整软件指令序列的一些材料,以免混淆本文所公开的材料。本文所公开的材料可在硬件、固件、软件或其任何组合中实现。

本文所公开的材料也可被实现为存储在机器可读介质或存储器上的指令,其可由一或多个处理器读取和执行。机器可读介质可包括用于以机器(例如,计算装置)可读形式存储或传送信息的任何介质和/或机制。例如,机器可读介质可以包括只读存储器(ROM);随机存取存储器(RAM);磁盘存储介质;光存储介质;闪存存储装置;传播信号(例如,载波、红外信号、数字信号等)的电气、光学、声音或其它形式以及其它介质。在另一种形式中,诸如非暂时性计算机可读介质的非暂时性制品可与上述任何示例中的任一种或其它示例一起使用,除了其不包括暂时性信号本身。它包括除了可以以“暂时”方式临时保存数据的信号本身的那些元件,例如RAM等。

在说明书中对“一个实施方案”、“实施方案”、“示例实施方案”等的引用指示所述的实施方案可包括特定特征、结构或特性,但每个实施方案可不一定包括特定特征、结构或特性。此外,此类短语不一定指代相同的实施方案。此外,当结合实施方案描述特定特征、结构或特性时,可认为结合无论是否在本文中明确描述的其它实施方案来实现此类特征、结构或特性在本领域的技术人员的知识范围内。

系统、制品和方法提供块匹配的镜头阴影颜色校正。

具有利用移动相机模块捕获诸如智能手机、移动电话、平板计算机、膝上型计算机等的图像的能力的多功能电子装置往往可具有尺寸大小适于容易地适配在用户的平均手掌中的形状因子。在此类情况下,小的电子装置可具有可以以毫米(mm)测量的小的厚度。例如,常规智能手机可容易地具有7.6mm或更薄的代表性厚度。当此类窄厚度的装置并入图像捕获模块(诸如数字相机)时,其必然减小相机光学器件与图像传感器之间的距离。减小的距离导致光以不均匀的方式照射图像传感器的各个部分,诸如朝向图像传感器的中心聚集光并且朝向图像传感器的外边缘衰减光,如使用传感器和使用平面测试区域所产生的图像10上所示(图1)。如图1所示,图像10的角区域12比图像10的中心区域14更暗。这表明由于光学镜头阴影引起的光衰减相对于角区域12比相对于中心区域14更大。这种衰减在整个颜色平面中可能不是静态的,这导致严重的颜色失真。典型的结果为所提到的在中心更亮的数字图像和在边缘附近更暗的数字图像,以及相对于初始场景的人工颜色和衰减。图2示出来自图1的一个颜色平面,其中,垂直轴为亮度并且底部示出像素坐标。光在中心是最亮的,并且朝向外角明显下降。图3示出不均匀的光衰减和相应的颜色失真甚至发生在诸如智能电话的高端装置中。在试图校正颜色的图像300上示出了失真302以及尽管进行此类校正但仍然保持的颜色伪像区域(304)(在该示例中可被着色为过于偏红)。因此,甚至公知的高端装置仍然存在如图3所示的图像质量的问题。

更具体地,由于大多数数字成像传感器配备有用于再现数字图像中的颜色信息的CFA(滤色器阵列),因此,此类衰减在不同的颜色通道中变化,这导致当不正确重构图像时的严重颜色劣化。该衰减根据光谱、模块设计(几何形状和光学)、IR截止(红外)滤光器、传感器设计以及潜在的其它因素而变化。对于一个因素,当光学器件(或滤光器)和传感器平面在这些小的装置中靠近在一起时,这产生相对于传感器平面的相对尖锐的主光线角(CRA),并且取决于保持传感器的部件的设计,与一些理想的布置相比,没有那么多的光线可具有到传感器的清晰路径。由于此类失真可以客观地进行测量并且对于用户是可见的,所以这些失真的去除是图像质量的重要标准。

为了校正这种不均匀性,图像捕获装置可实现各种镜头阴影校正(LSC)算法来进行补偿。LSC算法可利用具有与其相关联的相关色温(CCT)因子的一或多个校正LSC表来执行此类校正。一旦形成了LSC表(或者更准确地从预先存储的LSC表中选择),则将其应用于预处理的图像数据,以在将数据提供给编码器之前或在显示图像之前进行校正。然而,使用LSC表的常规校正处理仍然太不准确。它们可能导致不均匀的衰减,并继而导致可见的失真。以前的解决方案基于使用色度或饱和度直方图(全局统计分析)。更好的解决方案是基于局部颜色偏差分析(局部统计分析),其在现在公布为美国专利申请公开号2015/0146979的美国专利申请号14/182,824中公开,并且在下面更详细地解释。

在相机运行时间期间解决镜头阴影问题中的主要挑战之一是理解图像的哪部分可以在颜色失真量度的计算中被最好地利用。具体地,失真(诸如失真302)可以更准确地识别和测量,就可以选择更好的机会来正确地补偿LSC表以适当地补偿失真。颜色失真通常通过投影到校正和白平衡图像的块中的色度/饱和平面的色度、饱和度和值(HSV)颜色空间中的原点的均方误差(MSE)来测量。已经发现在图像的平坦、消色差区域(也称为平滑区域)中更容易识别和测量失真。因此,找到失真的最简单和最有效的方法是在平场图像中。此类图像可用漫射玻璃或积分球获得。在此情况下,解决方案相当简单。校正通过回复观察本身来执行。换句话说,一些优选的颜色或亮度系数被确定,并且通过该系数使较暗的区域变得更亮和使较亮的区域变的更暗。然而,此类方法仅在测试实验室环境中是可行的,并且在校正可能具有或可能不具有宽亮度和颜色变化的典型图像时不适用。

因此,可在运行时间期间对典型图像上的平滑或均匀区域执行搜索并进行分析以使得能够计算失真量度。此类计算需要上述足够的数据和属性来做出关于LSC表选择的可靠决定。该问题的一种解决方案是将图像划分为多个矩形块,例如24个块,其中,每个块是图像的相对大的连续区域。基于色度和饱和度值、每个发光体(或换句话说,光源)和块的大小来计算每个块的误差。然后,该误差被用于计算如下所述与LSC表相关联的权重。在这里重要的是,仅选择一些块用来最终选择LSC表,即使为图像中的所有块计算误差。在一种方法中,然后具有最低误差的选择数量块被用来选择LSC表。在现在公布为美国专利申请公开号2015/0146979号的美国专利申请号14/182,824所提供的先前方法中,具有最低误差值的24个块中的两个到八个块被用于进一步的计算。使用该块选择操作是因为误差越小,块提供图像的平滑部分或块内至少更平滑的部分的可能性就越大。假设具有最大误差的块表示饱和度和色度具有大的变化的图像的区域,表明在块中描绘的对象之间具有许多边缘,并因此该块并不显示图像的平滑区域。

然而,这种块选择的先前方法仍然存在具有复杂纹理的图像的问题,其中,平滑区域并不集中在图像的一个相对大的部分中。例如,具有小重复纹理的图像是用于进行分析的最困难的一些图像。这包括图像内容,诸如图像400(图4)上的表格或扩展表,以及具有划分行和列以在图像上形成暗区和亮区的交替图案的线。同样,图像500(图5)上的方格织物图案形成白色和彩色部分的交替图案。使用大块进行分析的先前操作可能不清楚具有表示图像的平滑区域的一个块,并进而,LSC表选择可能变得不足。此外,限于图像的连续区域的常规分段解决方案(例如,批量填充分割)可能提供低效或不充分的结果,或可能无法提供任何结果,因为图像的平滑区域的数据的不足部分被包含在所选的分割区域或所选的块中。

为了解决这些问题,本文所公开的方法使用在视频序列中的一或多个视频帧中的动态搜索以形成用于帧的至少一个块簇。块簇表示图像的平滑均匀区域。平滑均匀区域是指具有最小量边缘的图像的区域,或者换句话说,在亮度或颜色比上没有大的跳跃。与常规方法相比,这可为每个簇提供大得多的图像数据量。形成簇的块或区域不必连接,并且可被包含在簇中,而不管该块在图像上位于何处。因此,簇中的块不一定彼此接触,并且簇不需要具有任何特定形状。

本发明所公开的图像建模过程包括:当块具有相同的属性使得两个块的数据通过与图像数据相关的一或多个标准时,选择用于簇的块(本文中也称为自相似性块匹配)。通过一种形式,图像中的参考区域或块(或者更准确地在图像数据的统计网格中)与图像中的多个块进行比较。统计网格可为在网格上间隔开以对应于在图像上定义的块的位置的亮度值或颜色值或颜色比的网格。当比较满足相似性标准时,两个块被称为是相同对象或具有相同属性的块,并且所找到的块被包含在簇中。然后块的簇被用于例如找到色度和饱和度中的误差,其继而被用于找到LSC表的权重。然后提供加权LSC表中的所选LSC表以校正预处理的图像。

本文所述的方法可被称为非局部解,因为它并入了全局(基于直方图的解)和局部统计分析(通过执行下面进一步描述的颜色失真计算)的益处。由于与常规镜头阴影颜色校正方法相比,簇类布置使用更有效的数据利用,所以尽管复杂计算的成本增加,但仍提高了分类的质量、运行时间鲁棒性和增加的适用范围。

参考图6,该图描述了用于处理所捕获的图像并且通过自相似性块搜索应用镜头阴影颜色校正的图像捕获装置或系统600。图像捕获装置600可为独立装置,诸如数字相机,或者可仅仅为诸如智能电话的装置上的相机模块。在本示例中,图像捕获装置600可具有相机模块606,相机模块606具有光学器件602和一或多个图像传感器604,其中,每个光学器件与相应的图像传感器604配对。每个图像传感器604可基于用于捕获场景的图像的各种技术中的任一种,包括但不限于电荷耦合器件(CCD)半导体技术。光学器件602中的每一种由用于传送场景的图像并且至少部分地限定图像传感器604中的相应图像传感器的视场的一或多个镜头、反射镜、棱镜、快门、滤光器等组成。图像传感器604和光学器件602(无论其数量如何)以旨在为每个图像传感器和光学器件对提供与一个或多个其它图像传感器和光学器件对的视场重叠的视场的方式相对于彼此定位和取向。

图像捕获装置600也可具有预处理单元636,其从相机模块606接收原始图像并对原始图像数据执行黑电平校正、放大如下所述从镜头阴影估算单元618接收到的LSC校正网格(或表)并将网格放大到图像数据的大小并且以逐点的方式倍增。

然后,缩减定标器和统计(DS)单元608将使用LSC校正的图像数据来生成3A的统计,其包括用于自动聚焦的LSC校正的AF统计和黑电平校正的原始统计。因此,DS单元608可向镜头阴影估算单元618提供用于3A校正以及块匹配的LSC校正数据和黑电平校正的原始数据以用于候选LSC表和镜头阴影估算的应用。在不向3A单元提供黑电平调整数据的系统中,来自缩减定标器的LSC校正数据可在其用于镜头阴影估算之前被回复。可通过缩减定标器或用于此目的的单独模块来执行回复。DS单元608也提供有用于缩小来自相机模块606的原始数据流(或原始图像信息)。DS单元608也分析缩减的图像数据以形成可由3A单元610使用的统计。最低程度上说,在镜头阴影估算操作可开始之前,预处理的图像数据应该已经被黑电平校正处理。镜头阴影估算单元618期望统计仅被黑电平校正。因此,如果DS单元608仅假设一种类型的统计作为被LSC校正的输出,则该校正将被回复并且用作如上所述的系统618的输入。其它3A单位可使用LSC校正或AF统计或这两者。预处理的图像可为单个图像或图像序列,诸如来自视频序列。预处理的图像可由LSC估算单元618从存储器单元实时地或非实时地接收。实施方案不限于此上下文。注意,本文所述的预处理和后处理是相对于LSC阴影估算而言的。

3A单元610具有自动聚焦(AF)单元612,其执行AF计算以确定将相机镜头移动到焦点的因素。提供有自动白平衡(AWB)单元614以执行用于白平衡的图像数据的计算,以及提供以调整用于捕获图像的曝光时间的因素的自动曝光(AE)单元616。3A单元610也可具有镜头阴影估算系统或单元618。

LSC估算单元618可使用相关色温(CCT)估算单元620来确定一组LSC表622中的哪一个LSC表将被用于当前图像的镜头阴影颜色校正。具体地,在校正阶段之前在图像捕获装置600的设计和组装期间执行表征阶段。在表征阶段中,创建LSC表622以覆盖常用的发光体的大多数CCT值范围。LSC表622被存储在诸如持久存储的存储器中,以供以后在估算和校正阶段期间使用。系统618的作用是决定每个LSC表622何时以及应以哪个比例用于补偿数字图像的阴影。

校正阶段可在使用图像捕获装置600期间以及当数据从相机模块606流传输时实时或运行时执行。在校正阶段期间,3A单元610经由DS单元608可分析来自流传输的图像数据的内容和补充的元数据。元数据的示例可包括但不限于自动聚焦值、CCT估算、时间值等。相关数据由DS单元608提供给3A单元610。在校正阶段期间,CCT估算单元620被用于估算一或多个原始光源类型和候选LSC表的初始选择。下面解释选择候选LSC表的细节。

LSC估算单元618也可包括块选择单元626。块选择单元626也可被称为块匹配单元、分割单元或簇类单元。还应理解,装置600可具有至少一个LSC单元以执行LSC估算单元618和块选择单元626的操作,使得单元618和626两者可被认为是一个LSC校正单元的一部分或任何其它变体。块选择单元626可接收AF统计,并且通过使用AF统计来提供场景中的平坦平滑区域的近似。块选择单元626可输出表示平滑区域的块簇的定义。这可包括簇的总面积(簇中的像素的总数)以及图像上的簇中的数据的坐标。该坐标可被用于获得簇中的数据的色度和饱和度值。簇大小以及色度和饱和度值可如下所述被用于确定误差值。每个图像可具有一或多个簇。来自图像中的所有簇的像素的总量应包含足够量的图像数据,以提供颜色样本之间的偏差的鲁棒估算(例如,推荐的最小100像素或其它相关值)。下面提供用于生成簇的细节。

可提供初始(或候选)LSC表单元624以识别由CCT估算单元620初始选择的表并用于进一步处理。光1、...、光L(单元624)的每组初始LSC表以及图像的已建立的簇中的块的图像数据可被提供给灰世界白平衡(GW-WB)单元627,其可由AWB单元614控制。单元627将白平衡计算应用于图像中的至少簇的LSC校正统计以调整用于簇中的白平衡的图像数据。向色度/饱和度/值(HSV)转换器单元628提供红/绿/蓝(RGB)以将图像中的簇的RGB值转换为HSV色彩空间值以用于误差计算。然后,误差单元630使用HSV簇图像数据(诸如簇中的块的色度和饱和度值)以及簇大小(或簇中的总计数据)来计算误差。对于每个图像簇,GW-WB模块627、RGB至HSV转换器628和误差单元630处理输入统计量的数据簇,并且输出每个簇(和用于每个发光体)的误差值。单独地,概率和置信单元632还从块选择单元接收簇数据,并且在一个示例中,计算每个簇的置信度值。然后,误差单元630使用误差值和对应的置信度值来为分配给每个发光体的每个初始(或候选)LSC表生成权重(w1到wL)。融合单元634然后通过使用该表的权重,然后将来自所有发光体的所有LSC表求和(或融合)为单个综合LSC表来调整初始LSC表数据。融合单元634然后可将一个最终LSC表输出给预处理单元636,以调整预处理的图像数据以用于镜头阴影颜色校正。

预处理的LSC校正图像然后可经由DS单元提供给后LSC处理637,后处理637可执行诸如降噪、像素线性化、分辨率降低、拜耳去马赛克和/或晕影消除的任务以及其它任务,以及编码器638,其可压缩数据以用于在比特流中传输或用于存储在图像可读介质上。

在一个选项中,编码器638可具有帧间预测单元640,帧间预测单元640生成运动矢量(MV)以确定在形成图像的帧的视频序列中逐帧的块的运动。在此情况下,运动矢量或者后续帧中的块的新位置可被提供给块选择单元626,从而减少统计的计算负荷。另外,不需要针对每个帧执行簇的整个帧的完全搜索(术语帧与本文的术语统计可互换使用)。因此,块匹配或选择单元626可仅针对每第n帧(对于一些非限制性示例,每第10帧或第20帧)使用,或者可仅在某些类型的帧上提供,诸如仅在P帧(例如,预测帧-往往来自一个先前帧),但是在一个示例中,不是在B帧(从视频序列的前向和后向预测)或任何其它类型的帧上。在一种方法中,如下面所解释的,运动矢量可被用于减少用于搜索图像中的至少一些块的计算负荷。在此情况下,块搜索可被限于沿着由编码器用于帧间预测的视频序列的那些图像。换句话说,图像被编码器用来确定从图像到图像的块的运动。可设想许多其它示例,只要减少帧上的簇的搜索成本即可。因此,可仅搜索图像上的一定数量的簇(诸如一到三个),并且对图像中的剩余簇使用MV等等。例如,可仅存在MV对已知簇的更新,或者仅存在表示帧最佳的MV(例如包含最大数据量的MV)对总共6个簇中1-3个簇的更新,而完全无需携带搜索程序。换句话说,系统应用MV,并且不在接下来的5、10、20或者其它帧间隔中搜索新的簇。

现在参考图7,在一种方法中,示例过程700为具有可用于校正图像数据的块匹配的镜头阴影颜色校正的计算机实现的方法。在所示实施方案中,过程700可包括由偶数编号的操作702至712中的一个或多个所示的一个或多个操作、功能或动作。借助于非限制性示例,本文可分别参考图6和图13的示例图像捕获装置600和1300及其相关来描述过程700。

过程700可包括“获得空间上对应于具有块的帧的像素数据的至少一个统计网格”702。该过程700也可包括“选择要被包含在至少一个块簇中的至少一些块”704。为了分配簇的块,过程700可包括“以至少在候选块和参考块之间的亮度或颜色比的差满足标准的方式选择候选块”706。如下所述,块在图像上的位置以及块是否与簇中的其它块接触无关紧要。此外,在一个示例中,标准可为一个或多个阈值,诸如块值之间的欧几里德距离以及下面描述的其它标准。过程700也可包括“查找与簇中的块的颜色相关联的误差”708。该误差(也在下面解释)可与簇中的块内的色度和饱和度值以及簇的面积相关联。过程700也可包括“使用误差来确定一或多个LSC表的权重”710以及“基于权重形成综合LSC表并使其被应用于在帧校正颜色”712。

现在参考图8,根据本公开的至少一些实施方案布置利用本文所述的块匹配的更详细的镜头阴影颜色校正过程800。在所示实施方案中,过程800可包括由偶数编号的操作802至826中的一个或多个所示的一个或多个操作、功能或动作。借助于非限制性示例,本文将分别参考图6和图13的示例图像捕获装置600和1300及其相关来描述过程800。

过程800可包括“获得图像数据”802,并且如上所述可包括获得从相机模块或其它图像捕获模块流传输的原始图像数据。相机模块(诸如相机模块606)可为包括本发明所公开的镜头阴影颜色校正系统的单个图像捕获装置的一部分,或者其可远离本发明所公开的系统。

过程800可包括“启动预处理”804。这可包括黑电平和镜头阴影校正。在一些示例中,分辨率降低、AWB操作、RGB到HSV空间转换和镜头阴影颜色校正本身也可以或可以不被认为是预处理的一部分。在这些操作被认为是预处理的一部分的情况下,它们的操作可以或可以不由预处理控制执行。如上所述,在一种方法中,在对于该图像进行后续的镜头阴影颜色校正操作之前,对正被分析的图像仅执行黑电平校正。

过程800然后可包括“缩减尺寸数据”806以将图像数据的量减少到均匀的可控量,诸如数据网格(对应于像素位置)以形成用于例如智能电话的39×51图像。此类缩减可通过使用标准采样技术来执行。

过程800可包括“计算CCT估算”808。如上所述,可获得预处理的图像内容,并且可选择810一组初始或候选LSC校正表以用于校正正被分析的当前图像。可通过首先分析图像内容并通过使用子采样的输入图像数据计算来自特征化数据库的发光体的存在的概率CCT(PCCT)来选择候选LSC表。换句话说,在一些实施方案中,可为多个LSC表中的每一个计算相应的存在概率,并且要被使用的候选LSC表集合可包括存在概率大于零的多个LSC表中的每个LSC表。在各种此类实施方案中,每个选择的LSC表可对应于不同的相应发光体,并且每个LSC表的存在的概率可指示该LSC表所对应的发光体的存在的概率。应理解,可考虑用于候选LSC校正表的许多不同的变化或替代。然后,所选择的LSC校正表集合由初始LSC单元624保存或识别,然后如下所述进行加权以应用于当前预处理的图像。

与候选校正表的选择分开地,图像数据的块可被包含在表示图像的平滑区域的一或多个簇中,并且将在接下来的计算中使用以在数据被用于显示或发送给例如编码器之前被应用于生成综合LSC校正表。因此,过程800可包括“匹配块以形成簇”812的操作。下面描述的过程900为用于块的匹配和簇的生成的一种可能的示例方法。来自该块匹配过程900的输出可为包括簇大小以及每个簇中的像素的位置的数据。然后,如下所述,该簇数据可被用于确定LSC表的权重。

参考图9来更详细地解释块匹配和簇的生成,提供了示例过程900,其用于选择要被包含在簇中的块,以使用簇而不是整个图像来执行镜头阴影颜色校正。这通过如本文所述的用于放置在簇中的匹配块来实现,以提供相对高质量的图像。过程900根据本公开的至少一些实施方案来布置。在所示实施方案中,过程900可包括由偶数编号的操作902至954中的一个或多个所示的一个或多个操作、功能或动作。借助于非限制性示例,本文将分别参考图6和图13的示例图像捕获装置600和1300及其相关来描述过程900。

过程900可包括“获得图像数据”902,其中,将至少部分预处理的图像数据提供给例如块选择单元626。对于此操作,让:

X={x=(x1,x2):x1=1,…1,N,x2=1,…,M} (1)

为定义统计网格(和校正网格)的坐标集合,并且其中,统计网格上的每个点对应于正在分析的视频序列的缩小尺寸图像或帧的像素。这里,x1为尺寸(N,M)的图像或网格上的水平坐标,而X2为垂直坐标。统计可为拜耳数据,并且包括与统计网格上的每个点相关联的至少四级缩放拜耳颜色通道或元素(yR,yG1,yG2,yB),并继而包括帧上的单个图像像素。在一个示例中,拜耳颜色元素被用于形成用于块匹配分析的亮度通道y(x),而在其它示例中,通过使用拜耳颜色元素所形成的颜色比可被用于块匹配,如下所述。如果所使用的图像捕获装置上的传感器包括除了拜耳布局或滤色器之外的其它布局,则可相应地调整校正网格,并且仍然可应用下面的过程。

当将亮度值y(x)将被用于代替颜色比或者除了颜色比之外以确定块匹配时,过程900也可包括当AF统计量可被用于确定相似性条件是否满足用于在簇中包含块,并且可包括如下所解释的导数值。

参考图10,示例性图像(或图像数据的统计网格,诸如亮度或颜色值)具有像素组A和单独的像素组B,其可一起放置(联合操作)在单个簇或ROI或Xs中。如上所述,每个统计网格可被划分为3×3(或4×4)像素或点或其它大小的块,其可以或可以不与分析视频序列的编码器所使用的块大小一致。为了简单起见,统计网格上的点的向前位置和对应的像素点(或图像像素)可在本文中被称为可互换性。在图像中找到并且将被视为单个簇的具有相似特性的像素的每个平滑区域或数据簇(或仅簇)被称为感兴趣区域(ROI)Xs。图像(帧k)1000上的区域A和B中的块的并集总体上是单个簇或ROI Xs。然而,图像可具有不止一个ROI Xs。因此,s=1到S,其中,S为图像内的簇数量或ROI数量的计数。换句话说,S可远小于统计网格中的点的总数(S<<MN)。每个ROI可被称为ROI Xs,而图像中的ROI或簇的总数为S。

参考图9,过程900然后包括检查906先前图像是否已经被分析并且具有限定数量的簇。执行检查操作906以确定运动是否可被用于减少块匹配的计算负荷。具体地,由于在本文中描述的放置在簇中的块的块匹配和块的选择在计算上是广泛的,特别是当对视频序列中的每个帧执行块匹配时,可以使用视频编码引擎或视频稳定引擎(编码器)来提供运动矢量(MV或Δx)以至少改善新帧k+1的感兴趣区域(ROI)的位置的初始近似,如下所述。

因此,该操作或检查测试先前图像是否已经具有将与正被分析的当前图像相关的建立总数S。在一些形式中,先前图像可为图像k,而正被分析的当前图像为图像k+1。具有S个ROI的先前图像可为相对于当前图像的相邻先前图像,或者可沿着视频序列间隔一定数量的图像(或者如上所述由某些类型的图像划分)。当运动数据将被用于减少块匹配的计算负荷时,用于镜头阴影颜色校正的图像之间的间隔可不受限制,除了先前图像应当具有与正被分析的当前图像仍然相关的内容以外,如下所述。因此,在大多数情况下,先前图像应当为与当前图像的场景相同的场景的一部分并且在正被分析的视频序列内。

如果没有先前的相关图像,诸如对于视频序列或场景中的第一图像,则将S设置为1(908),并且在操作924处该过程继续而不使用运动数据,但是运动数据可被植入以分析后续的图像。此外,可选地,例如,当整个视频序列或场景的运动数据的使用被完全省略时,过程900可在操作924处继续,从而省略基于运动的操作。

当存在具有建立的S个ROI的先前图像并且运动数据将被使用时,处过程900可包括“设置与先前图像的S相同的当前S”910。另一种说法是设置当前图像Sk+1=先前图像Sk

过程900然后可包括“获得下一图像(k+1)的运动数据”912。具体地,图像可被划分为块,诸如3×3或4×4像素块或其它大小。处理具有当前图像的视频序列的编码器可通过生成指示块从一个图像到另一图像的运动的运动矢量来执行帧间预测。参考图11,在本示例中,运动矢量必须提供从已建立S个先前图像到当前图像的块的运动,以便形成初始S个正被分析的当前图像。此外,通过一种形式,运动矢量(指示位置变化(Δx)的值)可被提供给块选择单元626以计算当前图像中的块的当前(或新的)坐标,或者否则在新图像中的当前块坐标可通过例如由编码器应用运动矢量来计算,然后将新坐标提供给块选择单元626而不是矢量。如图像1100上所示,运动矢量Δx(A)和Δx(B)示出块组A和B从帧k到帧k+1的运动。

过程900然后可包括“根据运动从先前帧更新ROI Xs的位置”914,并且具体地,根据块的运动矢量或通过应用运动矢量获得的块的新的运动坐标。例如,可存在用于当前图像的存储器或缓冲器,该当前图像具有列出在当前图像中找到的当前ROI并提供被分配给每个ROI Xs的块位置的列表或索引,从而也指示哪些图像数据(亮度和颜色值)适用于那些位置并且被认为是该ROI的一部分。因此,应用运动矢量以找到ROI Xs的新位置可被理解为:

其中,图像或帧k为先前图像,k+1为当前图像,用于第k次迭代的Xs由表示,并且x为统计网格或图像上的水平和垂直坐标(x1,x2),以及表示在运动矢量ΔX(k+1)的图上的块(诸如块的左上角)的位置,并且在一个示例中,假设为与输入统计量的大小相同的大小,其中:

ΔX(k+1)={Δx=(Δ(x1),Δ(x2)):x1=1,...,N,x2=1,...M} (3)

其中,N、M为统计网格(或图像)的大小(和最终坐标)。一旦从先前图像携带的簇或ROI Xs位于新图像上,那些ROI就被保持在当前图像的ROI的索引或列表上。

过程900然后可包括“移除不满足标准的ROI Xs”916。这包括去除从先前图像中完全消除ROI,并且不携带到新图像。另外,在一个示例中,可仅当ROI满足最小准则时设置运动数据从先前图像携带的ROI。这可包括ROI的最小大小,诸如最小块数或最小像素数(注意,这可与图像中的块或像素的位置无关,只要满足下面的其它亮度或颜色值标准)。因此,在一个示例中,针对当前图像,如果满足以下标准,则丢弃ROI:

使得不包括参考块B(xref)的簇或ROI Xs中的元素(#)的总数(例如,网格点或像素的数量)小于参考块B(xref)本身中的元素(#)的数量,则ROI Xs具有不足以对图像的平滑区域提供显著贡献以确定表权重的数据。在这些情况下,过程900然后可包括“针对每个去除Xs减少S”918,使得可以减少ROI S的总量,然后从当前帧的ROI的索引或列表中丢弃不足或丢失的Xs。

过程900可包括“精细化来自运动Xs1的参考数据的块匹配”920。具体地,如所提到的,通过使用运动矢量(和/或为图像定义的所有Xs)找到的xref和Xs可被认为是初步或初始位置。因此,在一个示例中,对于利用运动数据建立的当前图像的Xs,仍然执行诸如下面所述的块匹配计算,以更确定地确定簇或ROI是有效的。因此,将基于运动的B(xref)与图像中的每个块B(x)进行比较以确定其是否满足下面所述的匹配标准。在一个示例中,丢弃不满足块匹配标准的那些块,并且添加满足匹配标准的那些块。一旦测试了图像中的所有可用候选块,如果ROI未通过上述大小标准,则ROI仍然可被消除。如果ROI仍然足够大,则除了由精细化过程重新定义之外,其可保留在当前图像的ROI列表上。通过其它示例,可利用所建立的基于运动的B(xref)来测试基于运动的ROI中的那些块,以定义要从ROI中取出的块和保留在ROI中的块。许多其它示例是可能的。在一个备选选项中,省略了精细化块匹配,并且假设所建立的携带ROI对于没有细化的表权重计算有效。然后保存使用运动数据所建立的ROI Xs的识别,并且具体地,过程900可包括“将运动Xs添加到当前ROI Xs列表”922。

然后,过程900可继续操作924以为尚未分配给基于运动的ROI Xs的当前图像的区域建立新的ROI。具体地,对于本示例,参考点Xref定义参考块B(xref)的左上角,并且网格或图像点x定义待被测试的与参考块匹配的候选块B(x)的左上角。

在一种方法中,参考块和候选块都在图像的区域中,而不是已经在簇或ROI中。用于陈述用于在尚未在由运动数据建立的Xs内的区域中建立新的ROI(也称为簇)的参考块的一种方式陈述为:

或者换句话说,参考数据的块匹配来自集合X-U Xs(不是已经建立的所有ROI Xs的并集)。对于精细化(操作920),块匹配来自对来自每个集合的块B(x)的搜索,s=1,...,S,仅在中执行块匹配,即,其中:

和B(xref)∈Xs (6)

因此,过程900可包括“设置x1=1和x2=1”924以测试网格或图像上的第一位置,以确定参考点Xref或(x1,ref,x2,ref)是否可以位于(1,1)。然后执行检查以确定点(x1,x2)是否已经位于任何ROI 926内。如果不是,则将参考块(或具体地其左上角)B(xref)或(x1,ref,x2,ref)设置为(x1,x2),并且进行块匹配过程。

如果(x1,x2)已经在ROI中,则过程900执行例程以检查网格或图像上的另一点为参考点(x1,ref,x2,ref)(或参考块B(xref)的锚点)。在一个示例中,从图像或网格的左上方开始以光栅方式搜索和设置参考点,并且沿着该行向下行进并且从下一较低行的左侧开始,并且重复直到整个图像被搜索。例如,(对于参考块B(xref))块大小可为像素或网格点中的(K1,K2),并且如上所述,图像大小可为(N,M)。该例程可包括测试是否x1>N-K1,或者换句话说,是否已经达到沿着行的最后块位置。如果不是,则将x1设置为x1+1(930),并且在包含在ROI(928)中之前重新测试(x1,x2)。如果已经到达行的末尾,则将x2设置为下一较低行的开始(x2=x2+1和x1=1)(932)。然后测试x2的这个新位置(x2>M-K2)(934)以确定是否已经达到块位置的最后(或最下面)行。如果不是,则在包含在ROI中之前重新测试新点(x1,x2)。如果已经到达,则已经找到了所有可能的参考块B(xref),块匹配过程结束,并且过程900继续镜头阴影颜色校正过程800(操作814)。应理解,可使用设置B(xref)的许多变型,并且在一个示例方法中,将被包含在参考块B(xref)中的(x1,x2)周围的点或像素也必须在将在该位置处设置的参考块的任何ROI之外。

一旦已经找到不在ROI内的点(x1,x2),则将B(xref)设置为(x1,x2),或者具体地,将左上角设置为(x1,x2)(936)。然后可执行类似的操作以找到不在任何ROI Xs(938)中并且将被包含在B(xref)的簇中的下一个B(x)。类似于搜索参考块的位置,可沿着行从左到右,然后在网格或图像中逐行向下以光栅方式执行对候选块的搜索。一旦找到每个候选块B(x),或者当在整个图像中找到所有可能的B(x)候选时,可将候选块与参考块进行比较(940)以确定是否存在匹配。

该问题可被陈述为找到所有此类数据簇Xs,其中,X包含足够量的数据以进行分析,并进行关于哪些预定义阴影校正表T1提供Xs中的最小颜色失真的鲁棒判定,其中,l=1,...,L,l为在图像中检测到的发光体(光源)的计数。为了简单起见,阴影校正表Tl(x)={TlGr(x),TlB(x),TlB(x),TlGb(x)}可为四个校正网格的组合,其中x∈X,每个拜耳颜色通道使用一个校正网格。

在一个选项中,比较可基于形成上述统计网格的亮度值。要执行匹配计算,让:

B(xref)={x=(x1,x2):x1=x1,ref,...,x1,ref+K1,x2=x2,ref,...,x2,ref+K2} (7)

其中,xref=(x1,ref,x2,ref)为参考点,以及K1+1(K1≥0)和K2+1(K2≥0)为坐标块的维度B(·),以及B(xref)为参考块坐标。通常,如果两个块Y(B(xref))和Y(B(x))之间的距离d(Y(B(xref)),Y(B(x)))不超过阈值τ,则称这两个块为相似的:

d(Y(B(xref)),Y(B(x)))≤τ, (8)

其中Y(B(x))是指集合,即Y(B(x))={y(x):x∈B(x)},而y(x)为亮度的标量值。距离d可以计算为:

lp量度

同时使用l2(即p=2)。因此,对于每个点xref,Xs可以被定义为至少两个矩形数据块的并集,其不必是连接的(例如,在网格或图像上相邻):

Xs=B(xref)∪∪xB(x), (10)

因此,通过该替代,通过使用y(x)亮度值来确定块之间的相似性。在一个示例形式中,当满足所有以下条件时,建立块之间的相似性,并且继而将该块包含在簇中,并且将依次论述:

其中x≠xref

关于方程式(11),如上所述,第一标准在于至少该参考点,并且在一种方法中,锚定在该点处的整个参考块不能已经位于先前建立的簇或ROI Xs中。

关于方程式(12),这是上述方程式(9)的在参考点B(xref)处的块和被分析以包含在当前簇中的候选块B(x)之间的欧几里德距离。如果距离小于阈值,则仍然可包含候选,并且检查下一个方程式。阈值在系统仿真和测试期间设置以实现最佳性能。它应该分别大于0并且小于分别相对于块B(x)大小归一化的y(x)或y'(x)的最大值。对于τ,假设像素之间的差等于10,并且包含那些像素的两个数据块是“相似的”。则值10的每个像素的K个元素的平方和为sqrt(sum(全部K值为10^2))=sqrt(K*10^2)=10*sqrt(K)。根据经验调整阈值,直到实现最佳系统性能。

关于方程式(13)和(14),对y(x)施加的一个假设在于它是局部平滑的,意味着该函数在每个点x∈Xs是可微分的。通过使用术语可微分的,假设存在点x中的函数的导数并且是有界的。至少,必须有一阶导数,其中,符号Y′(B(·))表示在B(·)中的每个点的导数y′(·),||·||为lp范数,τ1为限制一阶导数的阈值,X0≡φ为空集合,并且分别为Ys=Y(Xs)。应理解,公共导数函数可在水平方向上计算为:

y’(x1,x2)=y(x1+1,x2)-y(x1,x2) (15)

并且类似地可在垂直方向上计算,并且该函数适用于方程式(13)和(14)(参考块和候选块两者)。可供使用的其它类型的导数计算包括Sobel、Prewitt、Laplacian或其它算子。阈值τ1通过使用与上面对方程式12解释的过程相同或相似的过程来生成。这里,假设当边缘小于5或20等等时系统是鲁棒的,并且阈值被设置为5*sqrt(K)。然后通过测试改进阈值。

使用导数可能非常有效,因为AF统计已经提供了y′(·)的良好近似。因此,可不需要独立地计算导数,并且导数可从AF统计量获得。另外,用于导数计算的l2范数为:

类似于l2距离d(·,·),同时,值得注意的是,任何范数可同等有效。

通过另一选项,块匹配并且继而统计网格可基于颜色值,特别是颜色比。具体地,在使用颜色比而不是亮度值的情况下,块相似度的条件如下面的方程式(17)~(19):

其中,方程式(17)类似于上述方程式(11),并且x≠xref。方程式(18)和(19)为使用来自统计网格或图像数据的颜色值比的欧几里得距离,诸如:

和 (20)

其中,比率YRG表示输入统计量的红色yR比绿色yG,以及比率YBG为蓝色yB比绿色yG。如上面对于亮度距离方程式(12)所解释的,生成方程式(18)和(19)的阈值。

为了从方程式(11)到(14)和到(19)的自相似性标准的最佳性能,可从预处理的统计数据计算亮度值y和颜色比其中,预处理的统计数据在一个示例中可为ISP统计,其中,阴影通过例如存储在对应于视频流中的先前帧的存储器中的校正网格(或统计网格,也称为LSC校正表)来校正。换句话说,当该系统对具有多个帧的视频序列进行操作时,将存在来自先前帧的校正网格以及用于当前帧的多个候选校正网格。因此,存在使用先前帧校正网格的选项,因为照明条件通常不应快速地从单帧改变到单帧。应注意,虽然通过LSC校正的预处理图像数据可被用于计算块相似性,但是LSC校正表(或校正网格)应该仅适用于通过黑电平校正的原始图像数据,以便对图像数据执行阴影校正。

相对于量度(欧几里德距离)d(·,·),将每个块Y(B(xref))(例如,大小为3×3的B(·))与其它数据块Y(B(x))进行比较,以及针对其它标准进行测试。如果欧几里德量度的结果在指定阈值内,并且满足由一个示例提及的所有标准,则认为两个块彼此相似,并且形成匹配(942)。在此情况下,至少每个块(它们被定义的x坐标的集合)的支持或锚点被组综合单个ROI Xs,或者换句话说,匹配块B(x)被添加到当前簇(或ROI Xs)(944)。找到下一块(B(x)=B(x)+1)(946),并且测试它是否通过图像上的最后块位置(是否B(x)>B(N–K1,M-K2)(948)。如果不是,则过程900然后返回到操作938以测试以查看新块位置B(x)是否已经在ROI内,并且如果是,则找到不在ROI中的下一块B(x)。无论哪种方式,然后如上所述执行B(Xref)和新B(x)之间的比较循环。另选地,如果已经通过了最后块位置,则已经将所有可用候选块位置与参考块B(Xref)进行比较,并且过程900继续操作950以确定是否满足ROI Xs的其它最小标准,诸如上述的大小标准。如果不是,则丢弃刚组合的当前的新簇或ROI Xs,并且该过程继续操作928,以选择新的参考点Xref以再次开始匹配循环。如果已经满足大小标准,则将总计S加1(S=S+1)(952),并且将新的ROI Xs添加到当前图像的ROI列表(954)。然后,该过程返回到操作926或928,以选择新的Xref位置并再次预先形成匹配循环。可对每个位置执行该块匹配过程:

xref∈{x=(x1,x2):x1=1,...,N-K1,x2=1,...,M-K2} (22)

应理解,在块匹配过程中可存在许多变型,并且在一种方法中,只要块通过标准匹配以形成不对图像内的块的位置以及相对于图像中的其它块限制的簇。另外,匹配可能需要一些标准,而不是所有列出的标准,用于亮度或颜色比选项。此外,可交替地提供两个选项并且基于关于哪个选项将提供更好的结果的确定来选择,或者执行两个选项然后使用最佳结果。此外,可使用其它颜色空间,使得可以在YUV变换之后使用u和v分量,或者可以在Lab变换之后使用a和b分量。

包括过程900的块匹配操作812的输出包括:

数据簇Ys={yR(x),yG1(x),yG2(x),yB(x)):x∈xs,s=1,...,S} (23)

或者换句话说,簇(或ROI Xs)的识别、每个簇中的块的位置以及簇内的块处的亮度和/或拜耳颜色值。应理解,利用块的识别,可在存储器上的其它位置查找与该块相关的值,或者可将值收集到校正网格上,以在LSC校正过程期间快速检索。

应理解,与由过程900所提供的块选择和簇生成相比可能存在变化,其中,此过程可能不具有过程900的所有操作和/或操作的顺序可能不同。

返回到过程800,过程800可包括“根据需要回复图像数据”813,并且具体地,当DS单元或向3A单元提供图像数据的其它单元只能提供LSC校正的图像数据时,那么图像数据可回复到非LSC校正的图像数据,诸如恢复到仅黑电平校正的原始图像数据。例如,如果红色通道的阴影校为对于所有x∈X,其中,yR(·)为黑色电平校正的输入数据,以及TR(·)为校正函数,则,对于所有x∈X,红色通道的回复校正为如上所述,可由DS单元或其它模块执行回复。过程800然后可包括“将所选的候选表(光1、...、光L)应用于图像数据”814,并且在一个示例中,通过初始LSC单元624。如上所述,对于图像被检测为可能存在的每个发光体(或光源)可具有其自己的LSC表。此外,候选表被应用于非LSC校正(或黑电平校正)的图像数据。

过程800然后可包括“执行AWB调整”816,并且具体地,至少被应用所定义的簇内的图像数据并且通过初始LSC校正表。在一种方法中,应用灰度世界(GW-AWB)算法,并且过程800然后可包括“将RGB数据转换为HSV颜色空间”818,其生成簇中的块的每个点的色度和饱和度值。此类GW-AWB校正可由AWB模块627执行并且由AWB单元614控制。

过程800可包括“计算每个发光体的簇的误差”820。具体地,可为该组LSC表中的每一个LSC表确定相应的一组误差值。例如,LSC校正单元612可操作确定用于为初始LSC表单元624选择的一组LSC表622中的每一个LSC表的相应一组误差值。在一些实施方案中,每组误差值可描述与将其相应的LSC表应用于黑电平校正的传感器图像相关联的误差。如上所述,在各种实施方案中,预处理的图像可被分割成多个块簇S,并且每个LSC表的误差值集合可包括一组簇误差值,每个块误差值包括用于多个簇中的一个簇的误差值。

误差单元630可针对每个簇s以逐簇方式计算每个发光体l的一个或多个误差el,s以作为块匹配(或分割)的结果。在相对于坐标原点(0色度和0饱和度)应用GW-AWB算法(例如,经由GW-AWB单元627)之后,误差单元630使用方程式(24)计算HSV颜色空间中的误差el,s(例如,经由RGB到HSV单元628)如下:

其中,在这里,h为色度,s为饱和度,As是通过簇内或者换句话说#Xs中的像素数量测量的簇大小(如在簇的区域中)。l是发光体指数。值坐标被忽略。

在各种实施方案中,误差el,s的可靠性可在图像的各个簇s上变化。例如,在一些实施方案中,一些簇可能比其它簇更容易受噪声影响。此不均匀性可能影响并倾向于在某些条件下特别普遍,诸如例如在低光条件下。实施方案不限于此上下文。

过程800也可包括“计算置信度值”822,并且在一个示例中,由概率和置信单元632执行。可为每个簇s和每个发光体1生成置信度值cl,s(参见下面的方程式32和33)。具体地,基于以下概率方程式,给予具有集中在0附近的分布的发光体较大的权重,从而给出相对于原点的较小的误差:

其中,emin=minl{el,s}、emax=el,s*tolerance、s为簇索引,以及,“tolerance”为表示如果计算资源允许的话能够容许多少误差(例如,5%的公差等于1.05)或者类似的函数不一定是分段线性的相对常数。

被分析用于镜头阴影颜色校正的任何特定图像可描述如下:

z(x)=k(x)y(x)+σ(k(x)y(x)+b)n+b (26)

其中,x=(xi,xj)为图像平面上的空间坐标,y(x)为空间坐标x处的真实预期未知图像值,k为衰减系数的二维网格,n~N(0,1)为零均值和单位标准偏差的随机白高斯噪声,b为黑电平常数,以及σ为噪声的标准偏差的函数,使得std{z(x)}=σ(y(x))。

为了获得子区域中的真实图像值的最佳估算,寻求这种形式的解:

其中,F{·}为指示灰色世界白平衡和颜色空间变换的算子。

为了考虑针对各种空间位置所计算的值的变化的可靠性,可定义可靠性参数C(x)。在各种实施方案中,可基于Std(x)的值来确定C(x)的值,其可根据以下来计算:

其中,H{·}表示色度值,S{·}表示饱和度值,以及std表示标准偏差算子。在一些情况下,可为高度非线性的,并因此Std(x)的正式计算可能是计算密集的。在一些实施方案中,为了节省计算资源,可使用Std(x)的期望值的固定近似来定义C(x)。例如,在将图像划分为四行和六列子簇的各种实施方案中,可使用C的一组可靠性参数C(x),其采用矩阵形式:

其中,每个Xs中的颜色偏差估算el,s的置信度cl,s为重要参数,其取决于每个点x∈Xs(参见图10)中的空间位置置信系数置信系数表示用于位于ith行和ith列中的子簇的系数的倒数。在各种实施方案中,方程式(30)中的系数cl,s可使用来加权。在一些实施方案中,在此类一组可靠性参数中所使用的近似可为基于经验的。例如,在各种实施方案中,此类近似可基于对实际图像传感器数据执行的模拟结果和/或测试。实施方案不限于此上下文。在一些实施方案中,可对一些点x使用内插法,以便避免当图像成帧仅轻微改变时加权的突然变化。应理解,在各种实施方案中,C可与方程式(29)中的示例不同,这取决于可应用的衰减因子和/或噪声模型。在一些实施方案中,经历分割的簇大小和形状可变化,但类似于方程式(29)中所示的可靠性参数C(x)可针对大范围的传感器和/或模块被固定并存储。实施方案不限于此背景。

因此,矩阵C(x)为如方程式26中针对每个候选校正网格Tl(x)在Xs内的相对于原点被计算为样本二次误差el,s的色度和饱和度分布的偏差。Xs中的数据点的数量越大,得到的置信度cl,s越高:

其中,c(x)在方程式(31)中在点x∈X处从值内插,以及pl,s为下面的方程式(33)至(35)中的Tl(x)并且在Xs内的函数。

过程800然后可包括“生成LSC表的权重”824,并且具体地,基于权重和置信值来确定各个所选的候选校正表的权重(w1至wL,如图6所示)。权重计算可由误差单元630或也将生成最终综合LSC表的融合单元634处理,或者权重计算可由单独的权重生成单元来计算。可基于该LSC表的相应的一组误差值来为该组LSC表中的每个LSC表确定相应的权重。例如,可为在LSC单元624处示出的一组LSC表中的每个LSC表并且基于那些LSC表中的每个LSC表的相应的误差值集合来确定相应的权重。在一些实施方案中,可基于该LSC表的相应簇误差值集合为集合中的每个LSC表计算相应的一组簇权重,并且每个簇权重可对应于多个簇中的一个簇。在各种实施方案中,然后可将该集合中的每个LSC表的相应权重确定为该LSC表的簇权重的加权和。在一些此类实施方案中,可为多个簇中的每个簇标识一组可靠性参数,并且每个LSC表的簇权重集合的加权和可根据针对它们的相应的簇的可靠性参数对簇权重进行加权来计算。在各种实施方案中,可靠性参数可指示其相应簇的误差值的可靠性水平。实施方案不限于此上下文。

因此,可考虑所有簇或ROI Xs的置信度cl,s参数和颜色失真估算el,s来生成单独的表权重w1,并且可计算如下(对于每个候选校正表T1):

一旦为每个LSC表生成每个表wl的权重,过程800可包括“生成综合LSC校正表”826。可基于用于LSC表集合的各自权重,并且在一个示例中,由融合单元634为预处理图像生成综合LSC表。在一些实施方案中,可基于相应的权重将综合LSC表生成为LSC表集合的加权和。

最终校正表T(x)为候选校正表Tl(x)的加权和:

综合LSC表或表的标识可被提供给预处理单元636以被应用于预处理的图像以生成处理图像。这可以或可以不经由编码器638,以便将图像提供给显示装置或压缩图像以进一步传输或存储图像。实施方案不限于这些示例。

参考图12,过程1200示出了根据本公开的至少一些实施方案的执行镜头阴影颜色校正的样本图像处理系统1300的操作。更详细地,在所示形式中,过程1200可包括通过偶数编号的动作1202至1216中的一或多个所示的一或多个操作、功能或动作。借助于非限制性示例,本文将参考图13描述过程1200。具体地,系统1300包括逻辑单元1304,其具有带有镜头阴影颜色(LSC)估算部件或单元1312的3A单元1310以及块选择单元1314。系统的操作可进行如下。

过程1200可包括“接收图像数据”1202,并且如上所述,它可为至少部分预处理的图像数据,并且其可为亮度或颜色值(或颜色值比)的统计网格的形式。块选择单元可接收已进行LSC校正以便执行下述块匹配的图像数据,但是镜头阴影颜色估算单元应接收用于应用候选LSC表的非LSC校正的图像数据。通过一种形式,后一图像数据是迄今仅接收黑电平校正的原始数据。

过程1200可包括“接收AF统计量导数数据”1204,并且具体地,当亮度值将被用于确定块是否匹配以包含在簇中的块时的点函数导数。具体地,候选块必须与参考块匹配以被包含。

当运动数据(诸如运动矢量)将被用于通过使用来自先前图像的参考块的位置来至少初始地定位当前图像上的参考点或块时,过程1200可包括“接收运动数据”1206,以便减少块匹配的计算负荷。

过程1200可包括“基于运动数据生成当前图像的ROI”。因此,如本文所解释的,运动数据可被用于基于先前图像来从先前图像移动定位参考点并且继而定位参考块,以建立感兴趣区域(ROI)或簇。通过一种形式,假设运动建立的ROI有效,并且通过另一种形式,将运动建立的ROI视为初步的,其中,块匹配比较仍被执行以确认基于运动的ROI的块成员资格。

过程1200可包括“基于在没有ROI的图像区域上搜索参考块和匹配块而不管图像上的块相对于彼此的位置生成新的ROI”1210。具体地,如上所述,在一个示例中,系统可在图像的还没有被ROI覆盖的区域中搜索新的ROI,不管其是否为基于运动的ROI。此外,簇中的包含可基于诸如亮度和颜色值之类的属性,而不是图像的块所处的位置或者它们相对于其它块的位置的那个部分的任何限制。这指的是用于比较的标准没有具体提到图像上的块位置或位置或相对于其它块(除了不在ROI内)的事实。

一旦为图像建立ROI,就可在存储器中的当前图像的ROI列表上提供ROI的标识和ROI内的块成员资格。然后,该列表或索引可供镜头阴影颜色估算单元使用。最终,过程1200然后可“使用ROI计算误差”,并且基于被应用于可通过黑电平校正预处理的原始图像数据的候选LSC表,然后如上所述通过至少基本的WB校正和至HSV颜色空间的转换。在一个示例中,误差基于色度和饱和度值以及簇或ROI的面积,如上面利用方程式(24)所解释的。过程1200然后可包括“使用误差为每个候选LSC表生成权重”1214,并且具体地,将来自图像上的各个簇或ROI的权重相加以使为每个发光体提供的每个候选LSC表具有单个权重。过程1200可包括“使用权重生成综合表以用于校正图像上的颜色”1216,并且具体地,如上所详述确定当前图像的单个LSC校正表。然后,可在将图像数据提供给编码器、存储数据、传输数据和/或显示图像之前,将校正表应用于预处理的图像数据。

另外,图1-12的操作中的任何一或多个可响应于由一或多个计算机程序产品所提供的指令来进行。此类程序产品可包括提供指令的信号承载介质,当由例如处理器执行时,该指令可提供本文所述的功能。计算机程序产品可以以任何形式的一或多种机器可读介质提供。因此,例如,包括一或多个处理器核的处理器可响应于由一或多个计算机或机器可读介质传送给处理器的程序代码和/或指令或指令集来进行本文中的示例过程的一或多个操作。通常,机器可读介质可以以程序代码和/或指令或指令集的形式来传送软件,该软件可使装置和/或系统中的任一者如本文所述执行。机器或计算机可读介质可为非暂时性制品或介质,诸如非暂时性计算机可读介质,并且可与上面提到的任何示例或其它示例一起使用,除了其本身不包括暂时信号。它包括除了可以以“暂时”方式临时保存数据的信号本身的那些元件,例如RAM等。

如本文所述的任何实施方案中所使用的,术语“模块”是指被配置为提供本文所述的功能的软件逻辑、固件逻辑和/或硬件逻辑的任何组合。软件可被实施为软件包、代码和/或指令集或指令,如在本文中所述的任何实施方案中所使用的,“硬件”可包括例如单个硬连线电路、可编程电路、状态机电路或其任何组合和/或存储由可编程电路执行的指令的固件。模块可共同地或单独地被实施为形成较大系统,例如集成电路(IC)、片上系统(SoC)等的一部分的电路。例如,模块可经由本文所述的编码系统的软件、固件或硬件在用于实施方案的逻辑电路中实施。

如在本文中所述的任何实施方案中使用的,术语“逻辑单元”是指被配置成提供本文所述的功能的固件逻辑和/或硬件逻辑的任何组合。如在本文中所述的任何实施方案中使用的,“硬件”可包括例如单个硬连线电路、可编程电路、状态机电路或其任何组合和/或存储由可编程电路执行的指令的固件。逻辑单元可共同地或单独地被实施为形成较大系统,例如集成电路(IC)、片上系统(SoC)等的一部分的电路。例如,逻辑单元可在用于实现本文所述的编码系统的固件或硬件的逻辑电路中实施。本领域的普通技术人员应理解,由硬件和/或固件执行的操作可另选经由软件来实现,该软件可被实施为软件包、代码和/或指令集或指令,并且还应理解逻辑单元也可利用软件的一部分来实现其功能。

如在本文中所述的任何实施方案中所使用的,术语“组件”可指代“模块”或“逻辑单元”,如同这些术语在下面描述。因此,术语“组件”可指代被配置成提供本文描述的功能的软件逻辑、固件逻辑和/或硬件逻辑的任何组合。例如,本领域的普通技术人员应理解,由硬件和/或固件执行的操作可另选经由软件模块来实现,该软件模块可被实施为软件包、代码和/或指令集,并且还应理解逻辑单元也可利用软件的一部分来实现其功能。

参考图13,根据本公开的至少一些实施方案布置示例图像处理系统1300。在各种实施方案中,示例图像处理系统1300可具有用于形成或接收所捕获的图像数据的成像装置1302。这可以以各种方式实现。因此,在一种形式中,图像处理系统1300可为数字照相机或其它图像捕获装置,并且在此情况下,成像装置1302可为照相机硬件和照相机传感器软件、模块或组件。在其它示例中,成像处理系统1300可具有包括或可为照相机的成像装置1302,并且逻辑模块1304可与成像装置1302远程通信或以其它方式可通信地耦合到成像装置1302,以用于进一步处理图像数据。

在任一种情况下,此技术可包括照相机,诸如数字照相机系统、专用照相机装置或成像电话,无论静止图片或视频照相机还是两者的某种组合。因此,在一种形式中,成像装置1302可包括相机硬件和光学器件,其包括一或多个传感器以及自动对焦、变焦、光圈、ND滤光器、自动曝光、闪光和致动器控制。这些控制可为用于操作传感器的传感器模块或组件1306的一部分。传感器组件1306可为成像装置1302的一部分,或者可为逻辑模块1304的一部分或两者。此传感器组件可以被用于为取景器生成图像并拍摄静止图片或视频。成像装置1302也可具有镜头、具有RGB拜耳滤色器的图像传感器、模拟放大器、A/D转换器、将入射光转换成数字信号的其它组件等和/或其组合。在此,数字信号也可被称为原始图像数据。

其它形式包括相机传感器型成像装置等(例如,网络摄像头或网络摄像头传感器或其它互补金属氧化物半导体型图像传感器(CMOS)),而不使用红-绿-蓝RGB深度相机和/或麦克风阵列以定位正在说话的人。相机传感器也可支持其它类型的电子快门,诸如除了滚动快门之外或替代滚动快门的全局快门,以及许多其它快门类型。在其它示例中,除了相机传感器之外或者作为相机传感器的替代,可使用RGB-深度相机和/或麦克风阵列。在一些示例中,成像装置1302可设置有眼睛跟踪相机。成像装置1302也可具有镜头致动器或控制器1308,其具有镜头和镜头驱动器或驱动器逻辑,该驱动器逻辑接收命令以移动镜头并施加电流以移动镜头。

在所示示例中,逻辑模块1304可包括3A组件,3A组件继而可包括AF组件1318以计算期望的新当前镜头位置、自动白平衡(AWB)组件1316和自动曝光控制(AEC)组件1317。3A组件单元1310也可具有镜头阴影颜色(LSC)校正/表组件1312,镜头阴影颜色(LSC)校正/表组件1312继而可具有执行本文所述的许多操作的块选择单元1314。3A组件单元1310可由处理器1320操作,或者甚至完全或部分地位于处理器1320中,并且可包括用于执行操作的ISP 1322。逻辑模块可被通信地耦合到成像装置1302的组件,以便接收原始图像数据。在这些情况下,假设认为逻辑模块1304与成像装置分离。这不必是这样,并且逻辑模块非常好地也可被认为是成像装置的一部分。

图像处理系统1300可具有一或多个处理器1320,其可包括诸如Intel Atom的专用图像信号处理器(ISP)1322、可保存或不保存LSC表和其它LSC校正数据的存储器1324、提供图像1330的一或多个更多显示器1328、具有帧间预测单元1336以提供运动数据诸如运动矢量的编码器1332以及天线1334。在一个示例实施方案中,图像处理系统1300可具有显示器1328、通信地耦合到显示器的至少一个处理器1320,通信地耦合到处理器以执行如上所述的本文所描述的操作的至少一个存储器1324。可提供用于压缩修改的图像日期并将其传输给其它装置的编码器1332和天线1334,其它装置可显示或存储图像以及提供用于块匹配的运动数据。应理解,图像处理系统1300也可包括解码器(或编码器1332可包括解码器)以接收和解码由系统1300进行处理的图像数据。否则,所处理的图像1330可被显示在显示器1328上或存储在存储器1324中。如图所示,这些组件中的任一者可能够彼此通信和/或与逻辑模块1304和/或成像装置1302的部分通信。因此,处理器1320可被通信地耦合到用于操作那些组件的图像装置1302和逻辑模块1304。在一种方法中,尽管如图13所示的图像处理系统1300可包括与特定组件或模块相关联的一组特定块或动作,但是这些块或动作可与除这里所示的特定组件或模块之外的不同组件或模块相关联。

参考图14,根据本公开的示例系统1400操作本文所述的图像处理系统的一或多个方面。从下面描述的系统组件的性质应理解,此类组件可与上述图像处理系统的某些部分或多个部分相关联或用于操作上述图像处理系统的某些部分或多个部分。在各种实施方案中,系统1400可为媒体系统,但系统1400不限于该上下文。例如,系统1400可被并入数字静态照相机、数字摄像机、具有照相机或视频功能的移动装置中,诸如成像电话、网络摄像机、个人计算机(PC)、膝上型计算机、超级膝上型计算机、平板计算机、触摸便携式计算机、手持计算机、掌上计算机、个人数字助理(PDA)、蜂窝电话、组合蜂窝电话/PDA、电视、智能装置(例如智能电话、智能平板或智能电视)、移动互联网装置(MID)、消息传递装置、数据通信装置等。

在各种实施方案中,系统1400包括耦合到显示器1420的平台1402。平台1402可从内容装置,诸如内容服务装置1430或内容递送装置1440或其它类似的内容源接收内容。包括一或多个导航特征的导航控制器1450可被用于与例如平台1402和/或显示器1420交互。这些组件中的每者在下面更详细地描述。

在各种实施方案中,平台1402可包括芯片组1405、处理器1410、存储器1412、存储1414、图形子系统1415、应用1416和/或无线电装置1418的任何组合。芯片组1405可提供处理器1410、内存1412、存储1414、图形子系统1415、应用1416和/或无线电装置1418之间的相互通信。例如,芯片组1405可包括能够提供与存储1414的相互通信的存储适配器(未示出)。

处理器1410可被实现为复杂指令集计算机(CISC)或精简指令集计算机(RISC)处理器、x86指令集兼容处理器、多核或任何其它微处理器或中央处理单元(CPU)。在各种实施方案中,处理器1410可为双核处理器、双核移动处理器等。

存储器1412可被实现为易失性存储器装置,诸如但不限于随机存取存储器(RAM)、动态随机存取存储器(DRAM)或静态RAM(SRAM)。

存储1414可被实现为非易失性存储装置,诸如但不限于磁盘驱动器、光盘驱动器、磁带驱动器、内部存储装置、附加存储装置、闪存、电池备份SDRAM(同步DRAM)和/或网络可访问存储装置。在各种实施方案中,例如,当包括多个硬盘驱动器时,存储1414可包括用于提高有价值数字媒体的存储性能增强保护的技术。

图形子系统1415可执行诸如静止或视频的图像的处理以用于显示。图形子系统1415可为例如图形处理单元(GPU)或视觉处理单元(VPU)。模拟或数字接口可被用于通信地耦合至图形子系统1415和显示器1420。例如,接口可为高清晰度多媒体接口、显示器端口、无线HDMI和/或无线HD兼容技术中的任一种。图形子系统1415可被集成到处理器1410或芯片组1405中。在一些实施方案中,图形子系统1415可为通信地耦合到芯片组1405的独立卡。

本文所述的图形和/或视频处理技术可在各种硬件架构中实现。例如,图形和/或视频功能可被集成在芯片组内。另选地,可使用分立的图形和/或视频处理器。作为又一实施方案,图形和/或视频功能可由包括多核处理器的通用处理器提供。在另外的实施方案中,功能可在消费电子装置中实现。

无线电1418可包括能够使用各种合适的无线通信技术来发送和接收信号的一或多个无线电。此类技术可涉及跨一或多个无线网络的通信。示例无线网络包括(但不限于)无线局域网(WLAN)、无线个域网(WPAN)、无线城域网(WMAN)、蜂窝网络和卫星网络。在跨此类网络进行通信时,无线电1418可根据任何版本中的一或多种适用标准进行操作。

在各种实施方案中,显示器1420可包括任何电视型监视器或显示器。显示器1420可包括例如计算机显示屏、触摸屏显示器、视频监视器、电视类装置和/或电视机。显示器1420可为数字和/或模拟的。在各种实施方案中,显示器1420可为全息显示器。另外,显示器1420可为可接收视觉投影的透明表面。此类投影可传达各种形式的信息、图像和/或对象。例如,此类投影可为用于移动增强现实(MAR)应用的视觉覆盖层。在一或多个软件应用1416的控制下,平台1402可在显示器1420上显示用户界面1422。

在各种实施方案中,内容服务装置1430可由任何国家、国际和/或独立的服务托管,并因此例如可经由互联网访问平台1402。内容服务装置1430可被耦合到平台1402和/或显示器1420。平台1402和/或内容服务装置1430可被耦合到网络1460以向/从网络1460传送(例如,发送和/或接收)媒体信息。内容递送装置1440也可被耦合到平台1402和/或显示器1420。

在各种实施方案中,内容服务装置1430可包括能够传递数字信息和/或内容的有线电视盒、个人计算机、网络、电话、启用互联网的装置或家用电器以及能够经由网络1460或直接在内容提供商和平台1402和/显示器1420之间单向或双向传送内容的任何其它类似装置。应理解,内容可经由网络1460至和自系统1400中的任何一个组件和内容提供商单向和/或双向地传送。内容的示例可包括任何媒体信息,其包括例如视频、音乐、医疗和游戏信息等。

内容服务装置1430可接收诸如包括媒体信息、数字信息和/或其它内容的有线电视节目的内容。内容提供商的示例可包括任何有线或卫星电视或无线电或互联网内容提供商。所提供的示例并不意味着以任何方式限制根据本公开的实施方案。

在各种实施方案中,平台1402可从具有一或多个导航特征的导航控制器1450接收控制信号。例如,控制器1450的导航特征可被用于与用户界面1422交互。在实施方案中,导航控制器1450可为定点装置,其可为允许用户将空间(例如,连续和多维)数据输入到计算机中的计算机硬件组件(具体地,人机接口装置)。诸如图形用户界面(GUI)以及电视和监视器的许多系统允许用户使用物理姿势来控制并向计算机或电视机提供数据。

控制器1450的导航特征的移动可通过显示器上所显示的指针、光标、聚焦环或其它视觉指示符的移动而在显示器(例如,显示器1420)上复制。例如,在软件应用1416的控制下,位于导航控制器1450上的导航特征可被映射到在用户界面1422上显示的虚拟导航特征。在各种实施方案中,控制器1450可不为单独的组件,而是可被集成到平台1402和/或显示器1420中。然而,本公开不限于本文所示或描述的元件或上下文。

例如,在各种实施方案中,当启用时,驱动器(未示出)可包括使得用户能够在初始引导之后利用按钮的触摸来像电视机一样立即打开和关闭平台1402的技术。即使当平台被“关闭”时,程序逻辑可允许平台1402将内容流传输给媒体适配器或其它内容服务装置1430或内容递送装置1440。另外,芯片组1405可包括例如用于8.1环绕声音频和/或高保真(7.1)环绕声音频的硬件和/或软件支持。驱动器可包括用于集成图形平台的图形驱动器。在实施方案中,图形驱动器可包括外围组件互连(PCI)快速图形卡。

在各种实施方案中,可集成系统1400中所示的组件中的任何一或多个。例如,平台1402和内容服务装置1430可被集成或者平台1402和内容递送装置1440可被集成或者平台1402、内容服务装置1430和内容递送装置1440可被集成。在实施方案中,平台1402和显示器1420可为集成单元。例如,显示器1420和内容服务装置1430可被集成或者显示器1420和内容递送装置1440可被集成。这些示例并不意味着限制本公开。

在实施方案中,系统1400可被实现为无线系统、有线系统或两者的组合。当被实现为无线系统时,系统1400可包括适于通过无线共享介质(诸如一或多个天线、发射器、接收器、收发器、放大器、滤波器、控制逻辑等)进行通信的组件和接口。无线共享介质的示例可包括无线频谱的部分,诸如RF频谱等。当实现为有线系统时,系统1900可包括适于通过有线通信介质进行通信的组件和接口,诸如输入/输出(I/O)适配器、用于将I/O适配器与相应的有线通信介质连接的物理连接器、网络接口卡(NIC)、盘控制器、视频控制器、音频控制器等。有线通信介质的示例可包括导线、电缆、金属引线、印刷电路板(PCB)、背板、交换结构、半导体材料、双绞线、同轴电缆、光纤等等。

平台1402可建立一或多个逻辑或物理信道以传送信息。该信息可包括媒体信息和控制信息。媒体信息可指代表示用于用户的内容的任何数据。内容的示例可包括例如来自语音对话、视频会议、流视频、电子邮件(“电子邮件”)消息、语音邮件消息、字母数字符号、图形、图像、视频、文本等的数据。来自语音对话的数据可为例如语音信息、静默时段、背景噪声、舒适噪声、音调等。控制信息可指代表示用于自动化系统的命令、指令或控制字的任何数据。例如,控制信息可被用于通过系统路由媒体信息,或者指示节点以预定方式处理媒体信息。然而,实施方案不限于图14中所示或所述的元件或背景。

参考图15,小形状因子装置1500为可实现系统1400的变化物理样式或形状因子的一个示例。通过该方法,装置1500可被实现为具有无线能力的移动计算装置。移动计算装置可指代具有处理系统和移动电源或电源诸如例如一或多个电池的任何装置。

如上所述,移动计算装置的示例可包括数字静态照相机、数字摄像机、具有照相机或视频功能的移动装置中,诸如成像电话、网络摄像机、个人计算机(PC)、膝上型计算机、超级膝上型计算机、平板计算机、触摸便携式计算机、手持计算机、掌上计算机、个人数字助理(PDA)、蜂窝电话、组合蜂窝电话/PDA、电视、智能装置(例如智能电话、智能平板或智能电视)、移动互联网装置(MID)、消息传递装置、数据通信装置等。

移动计算装置的示例也可包括被布置为由人穿戴的计算机,诸如腕部计算机、手指计算机、环形计算机、眼镜计算机、皮带夹计算机、臂带计算机、鞋计算机、服装计算机和其它可穿戴计算机。例如,在各种实施方案中,移动计算装置可被实现为能够执行计算机应用以及语音通信和/或数据通信的智能电话。尽管借助于示例的方式可用被实现为智能电话的移动计算装置来描述一些实施方案,但是应理解,也可使用其它无线移动计算装置来实现其它实施方案。实施方案不限于此上下文。

如图15所示,装置1500可包括外壳1502、显示器1504,显示器1504可包括屏幕1510、输入/输出(I/O)装置1506和天线1508。装置1500也可包括导航特征1512。显示器1504可包括用于显示适用于移动计算装置的信息的任何合适的显示单元。I/O装置1506可包括用于将信息输入到移动计算装置中的任何合适的I/O装置。I/O装置1506的示例可包括字母数字键盘、数字小键盘、触摸板、输入键、按钮、开关、摇臂开关、麦克风、扬声器、语音识别装置和软件等等。信息也可借助于麦克风(未示出)输入到装置1500中。此信息可由语音识别装置(未示出)数字化。实施方案不限于此背景。

可使用硬件元件、软件元件或两者的组合来实现本文所述的各种形式的装置和过程。硬件元件的示例可包括处理器、微处理器、电路、电路元件(例如晶体管、电阻器、电容器、电感器等)、集成电路、专用集成电路(ASIC)、可编程逻辑器件(PLD)、数字信号处理器(DSP)、现场可编程门阵列(FPGA)、逻辑门、寄存器、半导体器件、芯片、微芯片、芯片组等等。软件的示例可包括软件组件、程序、应用、计算机程序、应用程序、系统程序、机器程序、操作系统软件、中间件、固件、软件模块、例程、子例程、函数、方法、程序、软件接口、应用程序接口(API)、指令集、计算代码、计算机代码、代码段、计算机代码段、字、值、符号或其任何组合。确定实施方案是否使用硬件元件和/或软件元件来实现可根据任何数量的因素,诸如预期的计算速率、功率电平、耐热性、处理周期预算、输入数据速率、输出数据速率、存储器资源、数据总线速度以及其它设计或性能约束而改变。

至少一种实施方案的一或多个方面可由存储在机器可读介质上的代表性指令来实现,代表性指令表示处理器内的各种逻辑,当由机器读取时,各种逻辑致使机器形成用于执行本文所述的技术的逻辑。被称为“IP核”的此类表示可被存储在有形的机器可读介质上,并被提供给各个客户或制造设施以加载到实际形成逻辑或处理器的制造机器中。

虽然已经参考各种实施方案描述了本文所阐述的某些特征,但是该描述并不旨在以限制的意义来解释。因此,对于本公开所属领域的技术人员显而易见的是,对本文所述的实施方案的各种修改以及其它实施方案被认为落入本公开的精神和范围内。

以下示例涉及进一步的实施方案。

在一个示例中,计算机实现的镜头阴影颜色校正方法包括获得空间上对应于具有块的帧的像素数据的至少一个统计网格,并且选择要被包含在至少一个块簇中的至少一些块,并且包括以至少在候选块和参考块之间的亮度或颜色比的差满足标准的方式选择候选块。该方法也可包括找到与簇中的颜色相关联的误差;使用该误差来确定一或多个LSC表的权重;以及基于该权重形成综合LSC表,并将其用于在帧校正颜色。

在另一实施方案中,该方法可包括以下中的至少一者:(1)标准指示在帧上的区域中的更恒定的颜色,并且其中,该标准为颜色比的最大变化的阈值,以及(2)该标准指示帧的区域中的平滑度,并且其中,该标准为亮度的最大变化的第一阈值,并且其中,当满足第一阈值时并且当块的位置处的亮度函数具有小于第二阈值的导数时,选择该块以将其包含在簇中。否则,该方法可包括从自动聚焦统计获得导数,其中,块被包含在簇中,而不管块在帧上的位置和相对于帧上的其它块的位置的位置,其中,选择包括选择参考块以及将帧中的多个块与参考块进行比较,并且,所述多个块尚未被认为是任何簇的一部分,并且其中,通过对正被比较的两个块内的对应像素位置的像素值求差来将该差计算为欧几里德距离。

在其它方法中,该方法也可包括:对于帧的视频序列中的至少一个帧提供颜色校正包括使用运动矢量和使用运动矢量以在当前图像上形成簇,其中,不在簇内的帧上的块的像素数据未被用于计算用于镜头阴影颜色校正的颜色误差,其中,通过逐行搜索并且尚未在群中的点来选择统计网格上的参考点,其中,误差和表权重计算以逐个簇为基础而不是以逐块为基础来执行,并且其中,用于将候选块与参考块进行比较的亮度或颜色比图像数据从已进行镜头阴影颜色(LSC)校正数据获得,并且其中,形成最终综合LSC表基于非LSC校正数据。

在又一实施方案中,计算机实现的系统具有显示器、通信地耦合到显示器的至少一个处理器、通信地耦合到至少一个处理器并且存储视频序列的至少一个帧的图像捕获数据或至少一个静止照片的至少一个存储器以及通信地耦合到该处理器的至少一个镜头阴影校正(LSC)单元。提供至少一个镜头阴影校正单元以获得空间上对应于具有块的帧的像素数据的至少一个统计网格、选择要被包含在至少一个块簇中的块,并且包括以至少候选块和参考块之间的亮度或颜色比的差满足标准的方式来选择候选块、找到与簇中的颜色相关联的误差、使用误差来确定一或多个LSC表的权重以及形成基于权重的综合LSC表并将其应用于校正在帧处的颜色。

在另一示例中,该系统包括以下中的至少一者:(1)标准指示在帧上的区域中的更恒定的颜色,并且其中,该标准为颜色比的最大变化的阈值,以及(2)该标准指示帧的区域中的平滑度,并且其中,该标准为亮度的最大变化的第一阈值,并且其中,当满足第一阈值时并且当块的位置处的亮度函数具有小于第二阈值的导数时,选择块以将其包含在簇中。否则,该系统提供至少一个LSC校正单元以从自动聚焦统计获得导数,其中,块被包含在簇中,而不管块在帧上的位置和相对于帧上的其它块的位置的位置,其中,选择包括选择参考块以及将帧中的多个块与参考块进行比较,并且,所述多个块尚未被认为是任何簇的一部分,并且其中,通过对正被比较的两个块内的对应像素位置的像素值求差来将该差计算为欧几里德距离。

在其它方法中,该系统提供至少一个LSC校正单元以为帧的视频序列中的至少一个帧提供颜色校正,颜色校正包括:使用运动矢量和使用运动矢量以在当前图像上形成簇,其中,不在簇内的帧上的块的像素数据未被用于计算用于镜头阴影颜色校正的颜色误差,其中,通过逐行搜索并且尚未在群中的点来选择统计网格上的参考点,其中,误差和表权重计算以逐个簇为基础而不是以逐块为基础来执行,并且其中,用于将候选块与参考块进行比较的亮度或颜色比图像数据从已进行镜头阴影颜色(LSC)校正数据获得,并且其中,形成最终综合LSC表基于非LSC校正数据。

在一种方法中,至少一种计算机可读介质包括响应于在计算装置上执行而使计算装置执行以下操作的多个指令:获得空间上对应于具有块的帧的像素数据的至少一个统计网格、选择块以使其被包含在块的至少一个簇中,并且包括以候选块和参考块之间的亮度或颜色比的差满足标准的方式来选择候选块、找到与簇中的颜色相关联的误差、使用该误差来确定一或多个LSC表的权重并基于该权重形成综合LSC表并将其应用于在帧校正颜色。

通过另一种方法,指令使得计算装置使用以下中的至少一者:(1)标准指示在帧上的区域中的更恒定的颜色,并且其中,该标准为颜色比的最大变化的阈值,以及(2)该标准指示帧的区域中的平滑度,并且其中,该标准为亮度的最大变化的第一阈值,并且其中,当满足第一阈值时并且当块的位置处的亮度函数具有小于第二阈值的导数时,选择块以将其包含在簇中。否则,指令使得计算装置从自动聚焦统计获得导数,其中,块被包含在簇中,而不管块在帧上的位置和相对于帧上的其它块的位置的位置,其中,选择包括选择参考块以及将帧中的多个块与参考块进行比较,并且,所述多个块尚未被认为是任何簇的一部分,并且其中,通过对正被比较的两个块内的对应像素位置的像素值求差来将该差计算为欧几里德距离。

在其它方法中,指令使得计算装置为帧的视频序列中的至少一个帧提供颜色校正,颜色校正包括:使用运动矢量和使用运动矢量以在当前图像上形成簇,其中,不在簇内的帧上的块的像素数据未被用于计算用于镜头阴影颜色校正的颜色误差,其中,通过逐行搜索并且尚未在群中的点来选择统计网格上的参考点,其中,误差和表权重计算以逐个簇为基础而不是以逐块为基础来执行,其中,用于将候选块与参考块进行比较的亮度或颜色比图像数据从已进行镜头阴影颜色(LSC)校正数据获得,并且其中,形成最终综合LSC表基于非LSC校正数据。

在另一示例中,至少一个机器可读介质可包括响应于在计算装置上被执行而使计算装置执行根据上述示例中的任一项的方法的多个指令。

在又一示例中,装置可包括用于执行根据上述示例中的任一个的方法的装置。

上述示例可包括特征的特定组合。然而,上述示例在这方面不受限制,并且在各种实施方案中,上述示例可包括仅进行此类特征的子集、进行此类特征的不同顺序、进行此类特征的不同组合和/或进行与那些明确列出的特征不同的附加特征。例如,关于本文中的任何示例方法所述的所有特征可相对于任何示例性装置、示例系统和/或示例制品来实现,并且反之亦然。

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