/ Nweon / 0浏览

微软AR/VR专利分享利用动态直方图匹配的色调映射技术



映维网Nweon
2025年02月21日

)色调映射是重新映射图像像素值的过程,而直方图均衡化是色调映射技术的一个常见示例。但对于弱光条件成像等场景,对MR系统捕获的图像执行直方图均衡化可能会导致图像噪点增强,从而导致输出图像看起来不自然。

在一份发明中,
微软
提出可以利用动态直方图匹配的色调映射技术。色调映射可以生成具有与目标直方图匹配的图像直方图的输出图像。目标直方图可以根据输入图像动态生成。

在一个实施例中,系统确定输入图像的输入图像直方图,并基于输入图像直方图生成目标直方图。系统可以通过对输入图像直方图应用平滑操作,从输入图像直方图生成目标直方图。可以应用各种类型的平滑操作,例如高斯模糊或其近似。

通过应用平滑操作,在输入图像直方图中存在的峰值至少部分地分散在目标直方图中,以便在目标直方图中提供数量更大且计数更低的连续bin(这可以增加使用目标直方图形成的输出图像的对比度)。

所述目标直方图可用于生成映射,所述映射可应用于所述输入图像的像素值以获得所述输出图像的像素值。例如,可以使用目标直方图进行直方图匹配,将输入图像转换为输出图像,其中输出图像具有与目标直方图匹配的图像直方图。

微软指出,通过利用动态生成的目标直方图来执行色调映射,可以提供比未映射的图像具有更大可解释性的场景内容的输出图像,而这种功能对于在低对比度实现中捕获的图像特别有益。

图2A示出输入图像202,为清晰起见,图3提供了输入图像202的放大视图。在图2A(和图3)的示例中,输入图像202捕获包括低光区域(在左侧)和照明区域(在右侧)的场景。

从图2A(和图3)中可以明显看出,输入图像202在低光区域缺乏对比度,这可能使用户难以解释输入图像202中所表示的环境的细节和/或方面。

图2A、2B和2C描述了通过动态直方图匹配执行色调映射的技术的各个方面,并可用于生成具有改进对比度(相对于输入图像202)的输出图像,例如输出图像214,如图3所示。

图2A描绘了输入图像直方图204,系统可以基于输入图像202生成直方图204。图2A的输入图像直方图204水平地描绘了像素bin,并通过与每个bin相关联的垂直条描绘了每个bin内的像素数量。

在图2A的实施例中,输入图像直方图204的每个bin与一个或多个各自的像素值相关联。例如,输入图像202包括具有256个像素值的8位图像,输入图像直方图204可以包括256个bin,每个bin表示不同的像素值,并且每个bin的关联条可以表示具有不同像素值的像素数量。

在图2A示例中,输入图像直方图204的bin从左到右按升序排列,左为低像素值的bin,右为高像素值的bin。从图2A中可以明显看出,输入图像直方图204在低像素值bin之间包含一个峰值,其中一组相邻的低像素值bin相对于输入图像直方图204中的其他相邻bin具有较高的像素量。

图像直方图中的峰值可以表示导出图像直方图的图像的低对比度。尽管现有的方法可以执行电平这样的峰值以提高输出图像的对比度,但它们可能无法保持输入图像的特征,并可能导致图像噪点的增加。

针对这个问题,微软提出可以利用输入图像直方图204本身,并作为确定可用于在输入图像202执行色调映射的目标直方图的基础。这有助于保留原始输入图像202的特征,同时减轻图像噪点的引入。

图2A描述了基于输入图像直方图204生成目标直方图206。特别是,图2A描述了通过对输入图像直方图204应用一个或多个变换208来生成目标直方图206。变换208可使目标直方图206在其bin内具有修改过的像素分布。

变换208可以实现各种类型的操作,并且可以在不同的情景中应用不同类型的操作。在图2A的示例中,变换208包括一个或多个平滑操作。例如,将输入图像直方图204与高斯核进行卷积以提供目标直方图206的高斯模糊操作。

在一个实施例中,应用于获得目标直方图206的变换208可以通过获得输入图像直方图204中相邻bin的像素量的加权组合来确定目标直方图206bin的像素量。

从图2A中可以明显看出,目标直方图206减轻了输入图像直方图204的低像素值bin中出现的峰值,同时保留了输入图像直方图204中表示的分布的一般形状的各个方面。例如,所述目标直方图206具有像素值的右偏斜分布,所述输入图像直方图204的峰值在所述目标直方图206中以较低的幅度展开。

变换208可以包括可配置的方面或参数,其可以影响基于输入图像直方图204的目标直方图206的生成。例如在变换208实现平滑操作的情况下,可以选择或选择性地修改高斯核的标准差以实现所需的平滑特性。

在一个实施例中,基于输入图像直方图204的特征确定变换208的一个或多个可配置方面或参数。例如,系统可以利用输入图像直方图204中峰值的数量、峰值的幅度和/或像素值分布的形状或均匀性来确定核宽度和/或用于变换208的其他方面。

对输入图像直方图204的不同部分或bin位置不同地应用变换以生成目标直方图206。可以基于bin位置确定变换208的参数或其他方面。例如,实现平滑的变换208可以配置为基于目标bin与一个或多个直方图边界的距离修改核大小或标准偏差。比方说,对于接近直方图边界的目标bin,平滑操作的核大小可以减少。

作为另一示例,对于与不同bin相关联的不同像素值,可以选择变换208的不同参数或其他方面。例如,可以对与不同像素亮度值相关联的不同目标bin应用不同的核宽度。

如上所述,目标直方图206可用于生成输出图像。例如,目标直方图206可用于将输入图像202的像素值映射到输出图像的相应像素值。

图2B示出使用目标直方图206和输入图像202来生成输出图像214。在图2B的示例中,使用目标直方图206与输入图像202进行直方图匹配210,从而获得输出图像214。

在一个实施例中,直方图匹配210包括基于输入图像202生成累积分布函数和基于目标直方图206的累积分布函数。然后可以使用累积分布函数来生成映射。其中,映射可用于将输入图像202的像素值映射到输出图像214的相应像素值。

图2B示出通过直方图匹配210生成的映射212。在图2B的示例映射212中,水平轴或x轴表示输入图像202中的像素值,垂直轴或y轴表示输出图像214的相应像素值。因此,映射212可以有效地用作查找表,输入图像202的每个像素值可以被映射到输出图像214的相应像素值。在图2B的示例中,映射212通常配置为增强低像素值并抑制高像素值。

从图2B(和图3)中可以明显看出,使用基于输入图像202动态生成的目标直方图206匹配210而获得的输出图像在输入图像202低对比度的区域中提供了更大的对比度。图2B所示的输出图像直方图216与用于获取输出图像214的动态生成的目标直方图206相似。

图2C示出的图像220可用作生成输入图像直方图204的输入。图像220可以与在时间上先于输入图像202的时间点的时间点相关联。可以将输入图像202和前一图像220的图像直方图组合,以形成用于生成目标直方图206的输入图像直方图204。

输入图像202和前面的图像220由单个图像传感器捕获的图像获得或基于图像确定。在一个实施例中,来自多个图像传感器的图像用于色调映射。例如,来自多个图像传感器的图像用于计算机视觉和/或图像处理任务。

例如,图2C示出第二输入图像222和第二先前图像224,其可以与不同于输入图像202和/或先前图像220的图像传感器相关联。第二输入图像222和/或第二先前图像224与输入图像202和/或先前图像220一起用于生成输入图像直方图204。

如上所述,可以通过对输入图像直方图204和/或对多个输入图像直方图应用变换208来生成目标直方图206。图2C进一步说明,可基于附加目标直方图226生成目标直方图。例如,可以基于不同的输入图像直方图集生成不同的目标直方图,并且可以将不同的目标直方图组合以形成用于生成输出图像214的最终目标直方图。

作为另一示例,可以基于与当前时间点相关联的输入图像直方图生成当前目标直方图,并且可以将与前一时间点相关联的先前目标直方图与当前目标直方图组合,以获得用于生成输出图像214的最终目标直方图。

在一个实施例中,最终目标直方图被用作生成输出图像的后续迭代的前一个直方图。另外,基于当前和以前的目标直方图递归地生成最终目标直方图,这可以有利地减轻目标直方图的突变(这种突变可能导致暂时连续输出图像的突变,并可能会分散用户的注意力)。

图2C进一步示出基于单个目标直方图生成多个输出图像。例如,图2C描绘了从第二输入图像222延伸到直方图匹配210的虚线箭头,表明可以使用目标直方图206和第二输入图像222执行直方图匹配210,以生成第二映射228。

图2C同时示出用于映射第二输入图像222的像素以生成第二输出图像230的第二映射228。所以,目标直方图206可用于生成不同的输出图像214和230。

图4、5和6分别说明了与通过动态直方图匹配促进色调映射相关的行为。

在402,基于一个或多个输入图像生成输入图像直方图,所述输入图像直方图包括多个bin,其中所述多个bin中的每个bin与一个或多个像素值相关联,并指示包含所述一个或多个像素值的像素数量。

在404,至少基于输入图像直方图生成目标直方图。目标直方图是基于至少一个附加目标直方图生成的。成目标直方图包括对输入图像直方图应用一个或多个转换。

在406,通过使用目标直方图将所述一个或多个输入图像中的至少一个的像素值映射到所述输出图像中的相应像素值来生成输出图像。

在408,通过使用目标直方图将所述一个或多个输入图像的不同输入图像的像素值映射到所述第二输出图像中的相应像素值来生成第二输出图像。

在410,在显示器呈现基于所述输出图像确定的显示图像。

在502,访问通过对与一个或多个输入图像相关联的输入图像直方图应用一个或多个变换而生成的目标直方图。

在504,基于目标直方图生成映射,其中目标直方图将所述一个或多个输入图像中的至少一个的像素值映射到用于输出图像的相应像素值。

在506A,将所述映射应用于所述一个或多个输入图像中的至少一个的像素值,以生成所述输出图像。

在506B,将所述映射传送到系统,以允许系统能够将所述映射应用于所述一个或多个输入图像中的至少一个的像素值,从而生成所述输出图像。

在602,获得将一个或多个输入图像之一的特定图像的像素值映射到输出图像的相应像素值的映射。其中,基于目标直方图生成映射,并且通过对与一个或多个输入图像相关联的输入图像直方图应用一个或多个变换来生成目标直方图。

在604,将所述映射应用于所述一个或多个输入图像的特定图像的像素值,以生成所述输出图像。

在606,在显示器呈现基于所述输出图像确定的显示图像。


相关专利


Microsoft Patent | Tone mapping via dynamic histogram matching

名为“Tone mapping via dynamic histogram matching”的
微软专利
申请最初在2023年5月提交,并在日前由美国专利商标局公布。