用于生成高动态范围图像的方法和装置与流程

文档序号:18126517发布日期:2019-07-10 09:56阅读:177来源:国知局
用于生成高动态范围图像的方法和装置与流程

本申请涉及用于从至少两个输入图像生成高动态范围图像的装置和方法。

具体地,本申请涉及生成高动态范围图像的装置和方法,这涉及检测一个或多个输入图像中的动态像素。



背景技术:

高动态范围成像(highdynamicrangeimaging,简称hdri)和曝光融合(exposurefusion,简称ef)是计算扩展描绘真实场景的图像动态范围的首选方法。令人遗憾的是,这些方法仍然易于产生某些伪影。其中,当涉及处理输入低动态范围(lowdynamicrange,简称ldr)图像中的运动(相机或场景运动)时,所谓的重影效应是最关键的高动态范围(highdynamicrange,简称hdr)限制。

在曝光融合(exposurefusion,简称ef)的情况下,使用加权图合并输入图像,所述加权图会评估ldr的饱和度、曝光度和对比度。这一技术基于以下假设:输入ldr是对齐的(静态场景)。但是,真实场景大多是动态的,并且包含移动物体。这会产生重影效应,导致物体出现在最终图像中的多个位置。

当输入图像栈仅包含几个色差很大的图像时,这个问题变得更具挑战性,移动电话领域中就是这种情况。为了解决这一问题,需要执行去重影步骤以保证最终hdr图像的质量。

现存在基于运动图的去重影方法阵列,所述阵列可指示相应动态像素的位置。当输入栈提供大量不同曝光的ldr时,这些方法通常很有效。如果是两个光强差异很大的输入图像,则这些方法通常就没有用了。



技术实现要素:

因此,本申请的目的在于提供一种稳健的去重影方法,所述方法可在许多情况下有效执行,尤其是在只有几个(例如,两个或三个)不同曝光的图像可用作输入,且这些图像的光照变化很大的情况下。

上述目的通过所附独立权利要求中提供的解决方案实现。有利的实现方式在相应的从属权利要求中定义。

本申请的第一方面提供了一种用于生成高动态范围(highdynamicrange,简称hdr)图像的方法,包括:

获取一组两个或多个输入图像,所述两个或多个输入图像包括参考图像和一个或多个非参考图像;

针对所述一个或多个非参考图像中的每一个执行图像分析,所述图像分析包括:针对所述非参考图像的多个区域中的每个区域,评估所述非参考图像的所述区域与所述参考图像的对应区域是否显示相同的图像内容,并根据所述评估将所述非参考图像的所述区域声明为有效或无效;

通过融合所述参考图像和所述一个或多个非参考图像生成hdr图像,其中所述融合包括:针对所述一个或多个非参考图像中的每一个,忽略所述相应非参考图像中的无效区域。

所述图像分析尤其包括:

通过从所述参考图像中减去所述非参考图像来生成所述非参考图像的差别图像,反之亦然(即,从所述非参考图像中减去所述参考图像);

通过对所述差别图像应用对比度增强变换来生成对比度增强的差别图像;

其中,所述评估是在所述对比度增强的差别图像的基础上执行的。

本发明的第二方面提供了一种用于生成hdr图像的装置,包括处理器,其中,所述处理器用于:

获取一组两个或多个输入图像,所述两个或多个输入图像包括参考图像和一个或多个非参考图像;

针对所述一个或多个非参考图像中的每一个执行图像分析,所述图像分析包括:针对所述非参考图像的多个区域中的每个区域,评估所述非参考图像的所述区域与所述参考图像的对应区域是否显示相同的图像内容,并根据所述评估将所述非参考图像的所述区域声明为有效或无效;

通过融合所述参考图像和所述一个或多个非参考图像中的每一个来生成hdr图像,其中所述融合包括:针对所述一个或多个非参考图像中的每一个,忽略所述相应非参考图像中的无效区域。

所述图像分析进一步包括:

通过从所述参考图像中减去所述非参考图像来生成所述非参考图像的差别图像,反之亦然;

通过对所述差别图像应用对比度增强变换来生成对比度增强的差别图像;

其中,所述处理器用于根据所述对比度增强的差别图像执行评估。

本发明的第三方面提供了一种计算机程序,所述计算机程序具有程序代码装置,用于在计算机上执行所述程序或提供数字信号处理器时,执行所述第一方面提供的方法。

本发明的第四方面提供了一种计算机程序产品,所述计算机程序产品具有计算机可读介质,所述计算机可读介质具有存储的程序代码装置,用于在计算机上执行所述程序或提供数字信号处理器时,执行所述第一方面提供的所述方法。

附图说明

图1是本申请实施例提供的一种用于生成hdr图像的方法的示意性流程图;

图2a是前述实施例的示例;

图2b是前述实施例的另一个示例;

图3是本申请实施例生成运动图的流程图;

图4a是最终运动图m的示例;

图4b是最终运动图m的另一个示例;

图5用示意图的方式示出了用于生成hdr图像的装置的示例;

图6用示意图的方式示出了用于生成hdr图像的另一装置的示例。

具体实施方式

参考附图描述用于生成hdr(高动态范围)图像的方法、装置和程序产品的说明性实施例。尽管该描述提供了可能实现方式的详细示例,但需要说明的是,这些详细信息旨在提供示例,绝不意在限制本申请的范围。

此外,实施例/示例可以参考其它实施例/示例。例如,任何描述,包括但不限于一个实施例/示例中提到的术语、元件、过程、解释和/或技术优点,都适用于其它实施例/示例。

为了便于说明,下方列出的缩写和术语可以在本发明的以下实施例中被用来作为示例,而不是用于进行限制。

hm-直方图匹配

hdr-高动态范围

hdri-高动态范围成像

ldr-低动态范围

of-光流

crf-相机响应函数

ef-曝光融合

图像:数码相机对真实世界或合成场景的视觉再现;也被称为图片。

像素:最小的可寻址图片/图像元素。

窗口:从图像中提取的矩形像素块。

颜色映射:(也称为颜色校准、颜色匹配)是将一个图像(源图像)的颜色映射到另一个图像(参考图像)的颜色的操作。

图像直方图:图像的像素颜色强度分布的图形表示。

参考图像:属于输入图像栈的ldr图像。最终hdr图像是参考图像的修改版本,它具有更宽的动态范围。

曝光:描述了捕获设备(相机……)聚集的光量。低曝光图像看起来很暗,高曝光图像看起来很亮。

动态像素:与参考图像内具有相同像素坐标的像素相比,属于所捕获场景的不同部分的图像像素。动态像素通常属于运动物体。动态像素也可以称为运动像素。

运动图:与参考图像相比,指示动态像素在相应非参考图像中的位置的二值图。

重影效应:hdr图像中的图像噪声(伪影)的类型,其由合并多个未对齐的输入图像(由于相机或场景运动而造成未对齐)引起。在hdr中多次描绘运动相关的物体,这产生了重影效应。

图1中的流程图示意性地示出了实施例提供的用于生成hdr图像的方法。所述方法包括步骤102和103。

步骤101:获取一组两个或多个输入图像,所述两个或多个输入图像包括参考图像和一个或多个非参考图像。

所述输入图像是某个场景的不同曝光的图像。

可以通过从执行此方法的装置可访问的设备或网络接收来获得所述输入图像。还可以通过由所述装置生成来获得所述输入图像。例如,所述装置可以使用其相机生成所述输入图像。

步骤102:针对所述一个或多个非参考图像中的每一个执行图像分析,所述图像分析包括:针对所述非参考图像的多个区域中的每个区域,评估所述非参考图像的所述区域与所述参考图像的对应区域是否显示相同的图像内容,并根据所述评估将所述非参考图像的所述区域声明为有效或无效。

区域可以是一个像素,也可以是一组像素。

如果第一图像中的区域和第二图像中的区域相互对应,其中所述第二图像与所述第一图像在几何上相同,则两个图像的两个区域具有相同的图像内容。如果两个区域在形状、大小和相对于图像边角的位置上相同,则所述两个区域相互对应。

所述图像分析还可以包括以下子步骤:(102a)通过从所述参考图像中减去所述非参考图像或从所述非参考图像中减去所述参考图像来生成所述非参考图像的差别图像;(102b)通过对所述差别图像应用对比度增强变换来生成对比度增强的差别图像。在这种情况下,上述评估基于所述对比度增强的差别图像。

在子步骤102b中,应用所述对比度增强变换的过程包括:针对所述差别图像的多个区域中的每个区域,对所述区域的强度值应用s形函数。例如,所述s形函数可以是逻辑函数。

评估所述非参考图像的所述区域和所述参考图像的对应区域是否显示相同图像内容的示例包括:将所述差别图像的对应区域的强度值与阈值进行比较。

可选地,可以在执行所述图像分析之前执行以下步骤:

针对所述一个或多个非参考图像中的每一个,在执行所述图像分析之前执行所述非参考图像的曝光变换或所述参考图像的曝光变换,以减小所述非参考图像和所述参考图像之间的总体色差或亮度差。

可选地,可以根据控制参数调整所述对比度增强变换,例如所述参考图像和所述非参考图像的特征。所述特征可以是所述参考图像和所述非参考图像之间的色差。

步骤103:通过融合所述参考图像和所述一个或多个非参考图像中的每一个来生成hdr图像。所述融合包括:针对所述一个或多个非参考图像中的每一个,忽略所述相应非参考图像中的无效区域。

例如,可以通过向每个无效区域分配权重零来执行所述忽略操作。

可以通过执行子步骤102i-102iv基于所述非参考图像确定步骤102中的所述阈值:

102i:生成所述非参考图像的直方图,其中所述直方图包括多个区间,所述多个区间中的每个区间覆盖相同的强度范围并且具有区间中心;

102ii:计算所述多个区间中每个区间的减少,其中所述减少是指所述多个区间中两个相邻区间的中心处的像素数量之间的差值;

102iii:从所述多个区间中识别区间,其中所识别区间的减少大于所述多个区间中任何未识别区间的减少;

102iv:根据所识别区间及其下一个区间这两个区间中心中间的点的强度来计算所述阈值。

可选地,步骤102中的所述图像分析还可以包括对所述相应非参考图像的无效区域执行形态运算。所述形态运算可以包括:

计算所述对比度增强的图像中第一窗口内的无效像素数,其中所述第一窗口以无效像素为中心;

根据所述第一窗口内计算得出的无效像素数,将所述第一窗口为中心的无效像素声明为有效或无效;

及/或

在所述对比度增强的图像中定义位于无效像素旁边的第二窗口;

如果所述第二窗口的中心像素是无效像素,将所述第二窗口内的每个像素声明为无效。

动态像素是无效像素。相应地,静态像素是有效像素。

该方法基于简单而有非常准确的图像分析算法提供hdr去重影。该方法允许更大的色差(不同的曝光度)以及小输入图像栈。

图2a示出了前述实施例的示例。在此示例中,处理的是一对输入图像。需要说明的是,此示例也适用于两个以上的输入图像。

步骤201:获取一对ldr图像b和d。

图像b是明亮ldr,即长时间曝光产生的ldr。图像d是昏暗ldr,即短时间曝光产生的ldr。

所述图像b和d表现出场景差异和/或内容差异。场景差异通常与相机运动或捕获设置的性质(立体/多相机设置)有关。内容差异是由移动物体造成的。

所述输入图像可以采用上述步骤101中描述的不同方式获得。在使用相机的情况下,所述输入图像可以通过使用立体/多相机设置同时捕获或通过具有额外时间维度的相同相机按顺序捕获。

步骤202:检测所述输入图像中的动态像素以生成运动图m。

所述输入图像中的动态像素与场景和/或相机运行有关。

所述运动图是二值掩码,由0和1组成。0表示动态像素,1表示非运动(静态)像素。动态像素无效,静态像素有效。

检测和生成所述运动图的过程是上述步骤102中的所述图像分析的示例。因此,步骤202中的所述运动图是执行上述步骤102的将所述非参考图像的相应区域声明为有效(非运动或静态)或无效(动态或运动)这一子步骤之后获得的结果的示例。

步骤203:将图像b和d中的一个指定为参考图像。

在两个以上输入图像的情况下,所述参考图像在步骤202之前指定。在这种情况下,步骤203可以省略,因为其已在步骤202之前执行。

步骤204:通过使用曝光融合的修改版本基于所述运动图和所述参考图像生成最终hdr图像。

所述最终hdr是具有扩展动态范围版本的所述参考ldr。

所述运动图m用于通过将曝光融合算法(或运动图,在2个以上ldr的情况下)包含在所述输入图像的加权图(下方的wi(p))中来修改曝光融合算法:

其中,ci(p)是像素p处的图像i的对比度图,si(p)是饱和度图,ei(p)是曝光度图。参数wc、ws和we代表相应的功率值。mi(p)是先前计算的图像i的运动图。图像i可以是图像b或d。在两个输入图像的情况下,对应于指定参考图像的运动图由一(“1”)组成,因为所述参考图像的运动图指示所有像素均为有效像素。有效像素是静态像素(非运动像素),使用“1”表示。否则,“0”表示动态像素(运动像素)。

计算得出的运动图m分配给所述非参考图像。在两个以上输入图像的情况下,根据所述等式针对运动相关的区域将所述非参考图像的加权图设置为零,以便从所述最终hdr图像中排除这些像素。

如上所述,如果存在两个以上输入图像,则可以在步骤202之前执行步骤203。选择了参考图像之后,将对每一对参考和非参考ldr应用步骤202和204中的算法。在n个输入图像的情况下,所述算法计算(n-1)运动图,同样如前面所述,所述运动图将在曝光融合阶段期间集成到最终加权图中。图2b汇总了这些步骤。

图3是本申请另一实施例提供的步骤202的示意性流程图。所提出的运动检测算法的基本理念是探索图像b和图像d之间的差别图像。图像b和图像d之间可能存在需要减小的较大色差。

步骤301:基于图像b和d生成转换图像h。

图像h与图像b具有相同的颜色属性,而与图像d具有相同的内容,减小了图像b和d之间的色差。

图像h可以使用颜色映射生成,例如直方图匹配(histogrammatching,简称hm)。hm是低复杂度算法,它将源图像的累积分布函数(cumulativedistributionfunction,简称cdf)与具有预期颜色分布的目标图像的cdf相匹配。在此实施例中,图像d被认为是源图像,因为与图像b相比它通常包含更少的饱和区域。

在两个输入图像的情况下,步骤301不影响步骤203所述的参考图像选择,因为所述转换图像h可以分配给图像d或图像b。

步骤302:将图像b扭曲成图像h以获得扭曲图像w。

由此减小图像b和d之间的内容差异。

在此步骤中,如果所述输入图像包含与相机相关的运动(平移和旋转),则可以应用可选的全局运动配准步骤。

此步骤基于单应矩阵h的计算。为此,可以使用加速稳健特征(speededuprobustfeatures,简称surf)来检测和提取图像b和图像h中的特征。此外,可以为匹配步骤使用随机抽样一致(randomsampleconsensus,简称ransac)。也可以采用替代特征检测、提取和匹配技术。最后,使用计算的矩阵h将图像b扭曲成图像h的视图,从而产生图像w。

如果未检测到相机运动,则图像w是图像b的副本。

步骤303:确定图像w和图像h的降采样版本的初始差别图像i1_diff。所述初始差别图像i1_diff是上述子步骤101a中的差别图像的示例。

降采样步骤可减少颜色映射噪声和伪影。在此步骤中,高斯金字塔可以用作低通滤波器。此外,降采样还可降低所述算法的计算成本。根据经验,降采样到1或2级就足够了。根据以下公式(1)计算所述差别图像:

i1diff(i,j)=|d(ih(i,j))-d(iw(i,j))|(1)

在公式(1)中,d表示降采样运算符和(i,j)像素坐标。

i1_diff的差值可分为两类:

(i)源自运动相关物体的差值。这些值通常较大且较不频繁。

(ii)源自图像h和图像w之间的固有色差的差值。这些值通常更小且更频繁。

步骤304:通过对所述初始差别图像i1_diff应用对比度增强变换来确定最终差别图像i2_diff。所述最终差别图像i2_diff是上述子步骤101b中的所述对比度增强的差别图像的示例。

步骤304可以准确地区分前面提到的差值。为了确定所述最终差别图像,将对所述初始差别图像i1_diff应用对比度增强变换。所述对比度增强变换可以通过使用s形函数执行,例如以下逻辑函数(2):

其中,k1和k2是控制参数,其可以根据场景的特征(例如,输入图像数和/或输入图像之间的色差)凭经验设置。例如,k1可以设置为0.09,k2可以设置为12。数字“0.5”是控制参数k3的示例,并且可以替换为其它值。所述控制参数k1、k2和k3可以手动或自动设置。

k1、k2和k3的值用于确保0被映射到0并且1被映射到1。因此,使用所述逻辑函数的操作是从[0,1]映射到[0,1]或至少近似0和1。

例如,如果所述输入图像之间的曝光比非常高,则可以增加k1的值。在高曝光比的情况下,在使用hm的颜色映射阶段期间会产生噪声像素,这意味着所述颜色映射阶段中使用的算法可能检测到误报。通过增加步骤304中的k1,可减少检测到的动态像素,从而去除噪声像素。因此,提高了整个过程的准确度。

所述逻辑函数允许操控/增强所述差别图像的对比度,以便相较于较小差值增强对应于运动像素的大差值。这允许通过准确估计分类阈值来更好地分类差值。图4a和图4b示出了此步骤的影响。

步骤305:根据所述最终差别图像i2_diff确定阈值t_c。

所述阈值是上述步骤102中的所述阈值的示例,并且可以通过执行子步骤305a-305d来确定:

305a:生成所述最终差别图像i2_diff的直方图,其中所述直方图包括多个区间,所述多个区间中的每个区间覆盖相同的强度范围并且具有区间中心。

305b:计算所述多个区间中每个区间的减少,其中所述减少是指所述多个区间中两个相邻区间的中心处的像素数量之间的差值。

305c:从所述多个区间中识别区间,其中所识别区间的减少大于所述多个区间中任何未识别区间的减少。此子步骤可以描述为以下公式(3)。

在公式(3)中,是b个区间中第i个区间的区间中心周围的像素数。b是总区间数。b的值可以是10,这样每个区间大致覆盖25个强度的范围。

305d:根据所识别区间及其下一个区间这两个区间中心中间的点的强度来计算所述阈值。因此,所述阈值t_c等于

可以为每个颜色通道确定所述阈值t_c。这些阈值使得能够区分与运动相关的差值及与hm相关的值。

步骤306:根据所述阈值和所述最终差别图像i2_diff生成初始二值运动图m1。

因此,如果颜色通道c的i2_diff中的至少一个差值大于所述对应的阈值t_c,则将所述最终差别图像i2_diff的像素标记为动态像素(运动像素)。这会产生初始二值运动图m1,其指示运动像素的位置。

步骤307:对所述初始二值运动图m1应用形态运算以生成最终运动图m。此处所述最终运动图m是上述步骤202中的所述运动图m的示例。

所述运算旨在去除可能的检测噪声(错误检测的像素)并增强所述最终运动图中运动物体的形状和填充。所述运算可以包括以下子步骤307a和307b中的任一者或两者:

307a:计算所述初始运动图m1中第一窗口内的无效像素数nw,其中所述第一窗口以无效像素(运动像素)为中心,并根据所述第一窗口内计算得出的无效像素数,将所述第一窗口为中心的无效像素(运动像素)声明为有效或无效。

所述第一窗口的大小可以设置为3或5。所述声明的处理可以按如下方式执行:

如果则运动像素将被丢弃,即不标记为运动像素。

如果则运动像素被确认为运动像素。

307b:在所述初始运动图m1中定义与无效像素相邻的第二窗口,及

如果所述第二窗口的中心像素是无效像素,将所述第二窗口内的每个像素声明为无效。同样,所述第二窗口的大小也可以设置为3或5。

所述形态运算使得能够填充运动物体内可能缺失的运动像素,从而改进所述最终运动图m中这些物体的形状。

图4a和图4b示出了所述最终运动图m的示例。

图4a示出了基于逻辑函数对所述最终运动图操控所述差别图像的视觉影响。图(a)示出了地面实况运动图。图(b)示出了没有操控的运动图。图(c)示出了采用所提出操控的运动图。

在图4b中,图(c)示出了基于输入图像(a)和(b)获得的最终运动图。在图(c)中,黑色表示动态像素,白色表示静态像素。

图5示出了用于生成hdr图像的装置的实施例。所述装置通常包括处理器,所述处理器用于执行所述步骤101至103。在一示例中,所述处理器用于上述步骤201至204。特别地,所述处理器用于执行步骤301至307中所述的步骤202。

图6示出了用于生成hdr图像的装置的实施例。所述装置包括:

获取单元601,用于执行上述步骤101;

分析单元602,用于执行上述步骤102;

生成单元603,用于执行上述步骤103。

在一示例中,所述分析单元602用于执行上述步骤202和203。特别地,所述分析单元602用于执行步骤301至307中所述的步骤202。

此处描述的主题可以软件与硬件和/或固件的组合来实现。例如,此处描述的主题可在一个或多个处理器执行的软件中实现。在一个示例性实施方式中,此处描述的主题可使用非瞬时计算机可读介质实现,该非瞬时计算机可读介质存储有计算机可执行指令,当计算机的处理器执行该计算机可执行指令时,该指令控制计算机执行步骤。适用于实现此处描述的主题的示例性计算机可读介质包括非临时性计算机可读介质,例如磁盘存储设备、芯片存储设备、可编程逻辑器件,以及专用集成电路。另外,实现此处描述的主题的计算机可读介质可位于单个设备或计算平台上,或分布在多个设备或计算平台上。

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