高动态范围图像生成和渲染的制作方法

文档序号:6359565阅读:372来源:国知局
专利名称:高动态范围图像生成和渲染的制作方法
技术领域
本技术涉及生成和渲染数字图像,更具体地,涉及生成和渲染高动态范围数字图像。
背景技术
在视频和成像系统中,在具有三个或更多个通道的多维“颜色空间”中,一般将颜色表示为向量坐标。常见示例包括公知类别的RGB和YUV颜色空间。RGB颜色空间使用分别表示红、绿和蓝光的强度的坐标来指定像素值。YUV颜色空间使用表示亮度或色度值的坐标来指定像素值。 当前,许多图像捕获、处理和显示设备仅可以处理具有每通道256 (28)个离散值的小动态范围的像素值,这256个离散值由8个比特表示。可以将这些图像描述为具有8比特的“比特深度”。在红、绿和蓝色通道中具有每通道8比特(8 bpc)的典型RGB数字图像中,对于红、绿和蓝值中的每一个,仅256个不同值是可能的。其他值(例如,a或不透明值、亮度等)也可能受到低动态范围限制的约束。一些设备可以处理每通道最多10或12比特动态范围。然而,人类视觉系统可以检测14个数量级的较宽亮度范围,其转换至46比特左右。自然中的亮度值在明亮日光中可以如IO8坎德拉/m2那样高,而在无月亮的夜晚在岩石的下侧可以如10_6坎德拉/m2那样低。高动态范围(HDR)成像呈现与人类视觉系统一致的更多功能且自然的图像表示。HDR图像可以呈现比传统8比特、10比特和12比特表示更高的动态范围,以实现高得多的图像质量。如果HDR图像格式与处理传统图像的相同类型的设备和软件工具兼容,则可以在该设备和软件中使用HDR图像。已经开发了多种HDR图像格式,并且,摄像机、计算机图形和显示设备已经开始产生、处理和显示具有增大的动态范围的图像。还可以从一系列更低动态范围图像构造HDR图像。参见Debevec等人所著,“Recovering High Dynamic RangeRadiance Maps from Photographs, ” SIGGRAPH ^ 97 (1997 年 8 月)。各种现有技术解决了与显示或处理高分辨率和/或高动态范围图像相关联的问题。美国专利号7,120,293描述了一种“交互式图像”,其中,将交互式图像中的每个像素位置指派给具有不同特性的多个代表性图像之一。采用图像处理技术来确定多个代表性图像中的哪一个表示与所选的像素位置有关的最佳曝光水平或调焦设置。美国专利号7,492,375描述了允许选择和显示HDR图像中所关注的一个或多具体区域的HDR观察器。在所关注的区域中,HDR观察器显示HDR图像的对应部分。对应部分可以以某种方式从原始HDR图像变化。例如,HRD图像中与所关注的区域相对应的部分可以色调映射至不同动态范围。被称为HDR视图的公开可用的应用允许用户在更低动态范围显示器上打开HDR图像并在HDR图像的所选像素位置上shift单击(shift-click),以根据所选像素位置处的曝光水平来改变图像的曝光。HDR视图的描述可见于http://athens. ict. use. edu/FiatLux/hdrview/。工程师还使用压缩(也被称为译码(coding)或编码(encoding))来减少表示数字媒体(例如,HDR或SDR数字图像)所需的比特量。压缩通过将数字图像转换为更低比特率形式来降低存储和传输该数字图像的成本。解压缩(也被称为解码)从压缩形式中重构原始图像的版本。“编解码器”是编码器/解码器系统。编码或其他处理后数字图像中可感知的瑕疵有时被称为伪影,这是由于这些瑕疵由编码或其他处理引起并示出进行过编码或其他处理。这些伪影包括块状伪影、带状伪影和环状伪影。由压缩引入且出现在重构图像中的块图案通常被称为块状伪影。块状伪影在平滑变化的梯度区域(例如,晴空的图像)中尤其明显。例如,块状伪影产生于将图像分割为块进行编码,其中,该编码包括块的AC系数的频率变换过程和量化。例如,当将图像中的样本值从高比特分辨率(例如,每样本值10个比特或12个比特)转换至较低比特分辨率(例如, 每样本值8个比特)时,出现带状或轮廓伪影。当将样本值修剪至较低比特分辨率时,值的条带之间的步长可以变得可感知,尤其是在具有平滑改变的样本值(例如,从较亮至较暗的逐步过渡)的区域中。环状伪影可以作为离开伪影边缘去往画面背景的噪声的波浪图案或其他条带而出现。环状伪影可以产生于包括对象或对象的一部分的块的频率变换过程和量化。在编辑期间过度锐化也会在边缘处引入环状伪影。一些用于控制伪影的后处理方案在解码之后处理图像,以缓和或以其他方式隐藏伪影。一些系统在块边界上自适应地滤波,以降低块状伪影的可见性。其他系统在后处理期间使用抖动,来调整重构画面的样本值。例如,抖动可以在锯齿边缘周围对值引入较小调整,使得观察人对这些值“求平均”并感知更平滑的边缘。不论先前技术的优点如何,这些先前技术都不具有以下提出的技术和工具的优势。

发明内容
描述了用于高动态范围(HDR)图像渲染和生成的技术和工具。在多个所描述的实施例中,HDR图像生成系统对较低动态范围(LDR)图像的集合执行运动分析,并基于在运动分析中获得的信息来导出图像的相对曝光水平。当整合LDR图像以形成HDR图像时,使用这些相对曝光水平。在多个所描述的实施例中,HDR图像渲染器将HDR图像中的样本值色调映射至相应较低动态范围值,并计算局部对比度值。基于局部对比度来导出残差信号,并基于色调映射的样本值和残差信号来计算LDR图像的样本值。可以在HDR图像生成或渲染的各个阶段期间使用用户偏好信息。在一个方面,相对于描绘场景的数字图像的集合中的参考图像,执行运动分析。可以选择参考图像(例如,基于用户偏好信息或图像中的检测到的曝光范围)。运动分析包括确定集合中的一个或多个非参考图像中的每一个相对于参考图像的图像差异。至少部分地基于运动分析,针对每个非参考图像导出相对于参考图像的一个或多个相对曝光水平。例如,基于被转换为线性域的样本值和相应非参考图像的平均样本比率来导出相对曝光水平。至少部分地基于相对曝光水平,将多个数字图像的集合进行整合,以形成描绘该场景的HDR图像。可以基于相对曝光水平将样本值扩缩至归一化水平。可以执行预处理(例如,在运动分析之前),以移除被整合形成HDR图像的各图像中的图像伪影。运动分析可以包括使用归ー化互相关,来确定相对于參考图像的图像差异。运动分析可以包括选择非參考图像中的样本值的子集,以确定相对于參考图像的图像差异,所述子集是基于样本值是否落在曝光值的范围内来选择的。运动分析可以包括之后紧跟有局部运动改善的全局运动分析。运动分析可以包括确定ー个或多个非參考图像中的每ー个中的一个或多个像素的运动向量。整合可以包括针对HDR图像中的每个样本位置,计算与參考图像中的该样本位置相对应的样本值和与每个非參考图像中的该样本位置相对应的扩缩样本值的加权平均。例如,基于置信水平、相对曝光值和正指数(例如,O. 5)来计算加权平均中的每个样本值的加权因子#。置信水平可以基于样本值而变化。例如,置信水平对于更极端(例如,非常亮或非常暗)的样本值来说更小。在另一方面,将HDR图像渲染为LDR图像。将HDR图像中的样本值色调映射至相应较低动态范围值。针对色调映射的样本值中的每ー个,计算局部对比度值。至少部分地 基于相应局部对比度值,针对色调映射的样本值中的每ー个,导出残差信号。例如,将每个色调映射样本值乘以相应局部对比度值。可以将扩缩和滤波应用于残差信号。扩缩可以包括应用作为与相应残差信号相对应的色调映射样本值的函数的扩缩因子。至少部分地基于色调映射的样本值和相应的残差信号,针对LDR图像计算样本值。例如,可以通过将色调映射的样本值、残差信号和高频抖动信号进行组合并将其映射至O至255 (包括边界)范围内的整数值,计算LDR图像的样本值。然后,可以以某种其他方式显示或处理LDR图像。在色调映射之前可以对HDR图像执行预处理(例如,画面大小调整、显式曝光调整、显式动态范围调整、色温调整、顔色增强)。色调映射可以包括生成全局色调映射查找表并针对HDR图像中的样本值标识LDR值,例如通过在查找表中执行查找。可以基于自适应伽马函数来生成全局色调映射查找表。可以将色调映射应用于HDR图像的较低分辨率预览版本或者HDR图像的全分辨率版本。例如,在保存最終图像时,可以将对图像的预览版本应用的色调映射应用于该图像的全分辨率版本。可以将修改后的色调映射參数应用于HDR图像的拷贝,并可以顺序地显示色调映射版本,例如,以产生动画效果。在另一方面,提供了用于针对HDR图像渲染參数设置用户偏好的一个或多个用户偏好控制器。例如,可以经由作为图像编辑应用的一部分的用户界面来提供用户可调整控制器。从用户偏好控制器接收用户偏好信息。用户偏好信息与包含HDR图像的HDR图像文件的HDR图像渲染參数相对应。至少部分地基于用户偏好信息来渲染HDR数字图像。渲染包括计算多个色调映射样本值中的每ー个的局部对比度值;以及至少部分地基于相应色调映射样本值的局部对比度值,计算LDR图像的样本值。可以将与单个用户或多个用户相关联的用户偏好信息作为元数据存储在图像文件中。例如,可以将用户身份信息与用户偏好信息一起存储,并可以将用户标识信息与相应用户相联系。将用户偏好信息存储为元数据可以便于在文件中保留原始HDR图像信息。用户偏好控制器可以包括例如信号扩缩控制器、信号滤波控制器、伽马控制器、顔色增强控制器、大小调整控制器、色温控制器和白点控制器。本发明的以上和其他目的、特征和优势将从參照附图而作出的以下具体描述中变得更加明了。


图IA示意了可实现多个所描述的实施例的合适计算环境100的概括示例。图IB示意了可实现所描述的实施例的合适实现环境的概括示例。图2是示出了根据ー个或多个所描述的实施例的、包括HDR图像生成和HDR图像渲染的示例性数字HDR成像工作流程的图。图3是示意了根据ー个或多个所描述的实施例的概括HDR图像处理系统的图。图4是示出了根据ー个或多个所描述的实施例的用于从SDR图像的集合生成HDR图像的示例技术的流程图。图5是示出了根据ー个或多个所描述的实施例的HDR图像生成系统的示例实现的 图。图6是示出了根据ー个或多个所描述的实施例的用于渲染HDR图像的示例技术的流程图。图7是示出了根据ー个或多个所描述的实施例的HDR图像渲染系统的示例实现的图。图8是示出了根据ー个或多个所描述的实施例的包括用于滤波操作的当前样本位置的轴的图。图9是示出了根据ー个或多个所描述的实施例的用于根据用户偏好信息处理HDR图像的示例技术的流程图。图10是示出了根据ー个或多个所描述的实施例的根据用户偏好信息生成或渲染HDR图像的HDR图像处理系统的示例实现的图。
具体实施例方式所描述的技术和工具涉及生成和渲染高动态范围(HDR)数字图像和相关用户界面特征的不同方面。这里描述的实施方式的各种替换方式是可能的。例如,可以通过改变流程图中所示的阶段的排序,通过重复或省略特定阶段等等,来变更參照流程图描述的技术。作为另ー示例,尽管參照具体数字媒体格式描述了ー些实施方式,但是还可以使用其他格式。可以组合地或独立地使用各种技术和工具。不同实施例实现所描述的技术和工具中的ー个或多个。可以在具有用于处理数字静止图像的软件的计算机系统中或者在未具体限于处理数字静止图像的某种其他系统中使用这里描述的ー些技术和工具。例如,这里描述的技术和工具可以用于处理数字视频。I.示例计算环境
图IA示意了可实现多个所描述的实施例的合适计算环境100的概括示例。计算环境(100)并不意在暗示对用途或功能的范围的任何限制,这是由于可以在多祥的通用或专用计算环境中实现这里描述的技术和工具。參照图1A,计算环境100包括至少ー个CPU 110和关联的存储器120以及用于视频加速的至少ー个GPU或其他协处理单元115和关联的存储器125。在图IA中,该最基本配置130被包括在虚线内。处理单元110执行计算机可执行指令并可以是实际或虚拟处理器。在多处理系统中,多个处理单元执行计算机可执行指令以提高处理能力。存储器120、125可以是易失性存储器(例如,寄存器、高速缓存、RAM)、非易失性存储器(例如,ROM、EEPR0M、闪存等)或者这两者的某种组合。存储器120、125存储用于实现具有ー个或多个所描述的技术和工具的系统的软件180。计算环境可以具有附加特征。例如,计算环境100包括存储装置140、ー个或多个输入设备150、ー个或多个输出设备160以及ー个或多个通信连接170。互连机构(未不出)(例如,总线、控制器或网络)将计算环境100的各组件进行互连。典型地,操作系统软件(未示出)提供了在计算环境100中运行的其他软件的操作环境,并协调计算环境100的各组件的活动。存储装置140可以是可移除的或不可移除的,并包括磁盘、磁带或盒式磁帯、CD-ROM、DVD、存储卡、或者可以用于存储信息且可以在计算环境100内访问的任何其他介质。存储装置140存储实现所描述的技术和工具的软件180的指令。 输入设备150可以是触摸输入设备,例如,键盘、鼠标、笔、轨迹球或触摸屏、语音输入设备、扫描设备、数码摄像机、或者提供计算环境100的输入的其他设备。对于视频,输入设备150可以是视频卡、TV调谐器卡、或者接受模拟或数字形式的视频输入的类似设备、或者将视频样本读取至计算环境100中的⑶-ROM或⑶-RW。输出设备160可以是显示器、打印机、扬声器、CD刻录机、或者提供计算环境100的输出的其他设备。通信连接170通过通信介质来实现到其他计算实体的通信。通信介质传送诸如计算机可执行指令、音频或视频输入或输出或者调制数据信号中的其他数据之类的信息。调制数据信号是其特性中的一个或多个被设置或改变以在该信号中编码信息的信号。作为示例而非限制,通信介质包括利用电气、光学、RF、红外、声学或其他载体而实现的有线或无线技术。可以在计算机可读介质的一般上下文中描述这些技术和工具。计算机可读介质是可在计算环境内访问的任何可用介质。作为示例而非限制,在计算环境100下,计算机可读介质包括存储器120、125、存储装置140和以上任一项的组合。可以在计算机可执行指令(例如,包括在程序模块中、在计算环境中在目标实际或虚拟处理器上执行的那些指令)的一般上下文中描述这些技术和工具。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、库、对象、类、组件、数据结构等。如各个实施例中所期望,可以在程序模块之间组合或分割程序模块的功能。可以在本地或分布式计算环境内执行程序模块的计算机可执行指令。为了介绍,该具体描述使用诸如“选择”和“确定”之类的术语来描述计算环境中的计算机操作。这些术语是由计算机执行的操作的高级抽象,并且不应当与由人类执行的动作混淆。与这些术语相对应的实际计算机操作根据实施方式而变化。II.示例实现环境
图IB示意了可实现所描述的实施例、技术和科技的合适实现环境190的概括示例。在示例环境190中,各种类型的服务(例如,计算服务)由云192提供。例如,云192可以包括一系列计算设备,这些计算设备可以是集中式或分布式定位的,其将基于云的服务提供给经由网络(例如互联网)而连接的各种类型的用户和设备。
在示例环境190中,云192给所连接的具有多种屏幕能力194A-N的设备提供服务。所连接的设备194A表示具有中尺寸屏幕的设备。例如,所连接的设备194A可以是个人计算机,例如台式计算机、膝上型电脑、笔记本、上网本等。所连接的设备194B表示具有小尺寸屏幕的设备。例如,所连接的设备194B可以是移动电话、智能电话、个人数字助理、平板计算机等。所连接的设备194N表示具有大屏幕的设备。例如,所连接的设备194N可以是电视(例如,智能电视)或者与电视或投影屏幕相连接的其他设备(例如,机顶盒或游戏控制台)。多种服务可以由云192通过ー个或多个服务提供商(未示出)提供。例如,云192可以将与HDR图像生成和渲染相关的服务提供给各种所连接的设备194A-N中的一个或多个。可以按照特定的所连接的设备(例如,所连接的设备194A-N)的屏幕尺寸、显示能力或其他功能来定制云服务。例如,可以通过考虑典型地与移动设备相关联的屏幕尺寸、输入设备和通信带宽限制,针对移动设备定制云服务。
III.高动杰范闱成像——总览
尽管人类视觉系统能够检测非常宽的动态范围内的细节(尤其是就亮度而言),但是人类通常不会同时得到该动态范围的整个幅度内的细节。例如,人类难以同时得到非常亮的区域和非常暗的区域中的细节。然而,通过聚焦于场景中的各个局部区域,人类视觉系统可以非常快地适于局部区域中的明亮度,以便看到亮区域(例如,天空)以及较暗区域(例如,阴影)中的细节。许多现有数码摄像机(包括大多数DSLR(数码单镜头反光)摄像机)缺少直接的HDR图像捕获能力,并仅能够在标准动态范围处从単一角度进行每次拍摄。因此,在人类可感知的细节的水平与可在SDR图像中表示的细节的水平之间存在较大缺ロ。该问题的切实可行的解决方案是高动态范围(HDR)成像。HDR图像可以捕获场景中的丰富信息,并且在被适当渲染时可以带来非常逼真的视觉体验。由于人类视觉系统的非线性和局部自适应特性,可以利用正常的打印件或现有的显示器来实现大多数HDR成像体验,从而使HDR图像的市场潜在地非常大。因此,HDR成像技术近来引起了用户的更多关注,这些用户包括专业摄影师和爱好者。A.色调映射
ー种用于将HDR图像信息转换至较低动态范围(例如,用于为SDR显示器渲染HDR图像)的方式是通过将色调映射应用于HDR图像信息。色调映射指代将图像样本值s映射至样本值^'Cs)的函数^·。全局色调映射是将全局色调映射应用于给定图像/中的每个样本值的过程。例如,可以将全局色调映射应用于图像,以便如用户所期望的那样修改图像的明亮度和/或对比度质量,从而得到色调映射图像^(/)。局部色调映射指的是将图像/变换为色调映射图像Z (J)的函数Z。与全局色调映射一祥,可以将局部色调映射应用于图像,以达到调整图像中的明亮度和对比度的目的。然而,局部色调映射可以允许在图像上不被均匀应用的局部调整。可以出于不同目的将色调映射应用于图像。例如,色调映射可以涉及将HDR图像中的样本值映射至更窄的动态范围。这种色调映射的ー个应用是为了在不能够显示HDR图像的全部动态范围的监视器上显示而渲染HDR图像。这种色调映射的另ー个应用是准备HDR图像,以便以需要图像的更低比特深度表示的格式进行编码。
B.示例性图像格式
这里描述的数字图像可以是彩色、灰度或其他类型的图像,并可以是以多种文件格式(例如,GIF、PNG、BMP、TIFF、TIFF Float32、JP2、HDR、OpenEXR、JPEG XR、Radiance RGBE 和/或其他格式)表示的。本节提供了与可以与用于生成HDR图像并渲染HDR图像的所述技术和工具一起使用的一些图像格式有关的细节以及相关用户界面特征。例如,所述技术和工具可以以JPEG XR格式处理HDR图像。JPEG XR是有益于对HDR图像进行编码的灵活且強大的格式,支持最多32比特浮点数。JPEG XR支持HDR图像编码,同时仅需要压缩和解压缩的整数运算(没有除法)。JPEGXR与用于存储图像数据和元数据的文件容器兼容,该元数据可以包括HD Photo元数据、XMP元数据和利用IFD标签的Exif元数据。与现有HDR格式(例如,TIFF Float、OpenEXR和Radiance RGBE)相比,JPEG XR格式在保持合理的图像质量的同时提供了高得多的压缩能力。JPEG XR文件格式是可扩展的,因此,可以在不改变图像比特流的情况下将附加元数据(专有的或标准的)插入到JPEG XR文件中。
Radiance RGBE是用于承载HDR图像数据的另一格式。在RGBE图像中,每个像素由32个比特表示ー个比特组(例如,一个字节)用于红尾数(R),ー个比特组(例如,ー个字节)用于绿尾数(G),ー个比特组(例如,一个字节)用于蓝尾数(B),其余比特(例如,ー个字节)用于对由R、G和B通道中的每ー个的尾数表示的值应用的公共指数(E)。在RGBE中,有效像素值(fR、fG、fB)是浮点数,其中,fR = R*2(e_128) ;fG = G*2(e_128);以及 fB = B*2frl2iS。RGBE规则将最大8比特尾数限于范围[128,255]内,而其他两个8比特尾数是无限制的(即,范围是
)。因此,从RGB至RGBE的映射是唯一的。RGBE可呈现的动态范围是[2_127,2+127],大致为76个量级。从RGBE像素重构的RGB值是无符号的——所有非零值是正的。然而,由于这三个颜色分量共享相同指数,因此牺牲了两个较小分量的精度。E=O是特殊情况,指示对应的像素值为O。Radiance RGBE (9:9:9:5)的ー个变形将9个比特中指派给红、绿和蓝尾数通道,并将5个比特指派给指数,从而如上述8:8:8:8格式中那样以32个比特来表示每个像素。RGBE的其他表示也是可能的,其中,不同数目的比特被指派给尾数和指数。通常在表示浮点图像数据时使用32比特浮点(“32比特浮点”)。定义32比特浮点图像的容器格式包括便携式浮点映射(“PFM”)和标签图像文件格式(“TIFF”)。IEEE 75432比特单精度浮点数包括用于符号的I个比特(S)、用于指数的8个比特(e)和用于尾数的23个比特U)。16比特浮点(也被称作“半”)具有ー个符号比特、五个指数比特和十个尾数比持。由于16比特和32比特浮点表示除字段长度的具体差异外在结构上相同,因此它们可以被统称为“浮点”。一些图像格式由国际标准指定。例如,JPEG和JPEG2000标准阐述了用于对分别以JPEG和JPEG2000格式编码的图像进行解码的解码器的要求。符合JPEG2000的编码器和解码器(“编解码器”)以良好的压缩效率提供了高质量图像。JPEG XR标准是从由微软公司开发的专有图像压缩格式视窗媒体相片(Windows Media Photo)和HD相片(HD Photo)开发的,作为视窗媒体技术族的一部分。JPEG XR是在国际标准IS0/IEC 29199-2:2009中描述的。IV.用于高动杰范围图像牛成和涫染的技术和工具所描述的实施例包括用于生成HDR图像的技术和工具(例如,用于从具有各种曝光水平的SDR图像的集合生成HDR图像的算法)、用于渲染HDR图像的技术和工具(例如,用于将HDR图像渲染至SDR图像或显示器的算法)以及用于设置HDR图像处理的控制參数的技术和工具(例如,便于利于作为控制參数而嵌入的渲染參数的HDR图像编码的工具)。如图2所示,示例性数字HDR成像工作流程200包括HDR图像生成210和HDR图像渲染220。在HDR图像生成210中,生成了 HDR图像。例如,可以通过合成来自多个SDR图像(例如,在稍微不同的时刻处拍摄的相同场景的图像,其中每个时刻具有不同的曝光设置)的信息来生成HDR图像。还可以在不将多个图像进行组合的情况下直接生成HDR图像,例如通过利用能够捕获具有HDR比特深度的原始图像的图像捕获设备来捕获图像。HDR图像生成210可以包括用于移除不期望的图像伪影(例如,在压缩将要用于形成HDR图像的源图像时引入的伪影)的预处理(例如,手动或自动操作)。在HDR图像渲染220中,将HDR图像信息转换为另一形式。例如,可以将HDR图像 渲染为SDR图像(例如,JPEG图像)并显示在SDR显示器上。图像渲染可以涉及色调映射过程(例如,自动或半自动色调映射过程)。可以公布或存档所渲染的图像。然而,典型地,在将HDR图像转换为SDR图像吋,图像数据丢失。因此,存档HDR图像的原始版本是有益的(例如,以便在稍后阶段执行对原始图像的进ー步修改)。还可以在不重新映射至标准动态范围的情况下渲染HDR图像,例如,当显示器能够在不重新映射的情况下渲染HDR图像的全部动态范围时。尽管示例性工作流程200示出了 HDR图像生成210后跟HDR图像渲染220,但是HDR图像处理系统可以生成HDR图像而不渲染这些HDR图像,例如,当生成HDR图像以供存储或进一歩处理但是不显示HDR图像吋。HDR图像处理系统还可以渲染HDR图像渲染而不生成这些HDR图像,例如,当HDR图像处理系统在不先生成HDR图像的情况下从某其他源获得HDR图像信息(例如,经由通信介质)吋。在这里描述的示例中,SDR图像是具有每颜色通道8个比特(bpc)的图像,HDR图像是16 bpc图像或更多。更一般地,“标准动态范围”或SDR指代比HDR图像具有更窄或更低动态范围的显示、图像、格式等。(SDR图像还可以被称作较低动态范围或LDR图像。)类似地,“高动态范围”或HDR指代比SDR图像具有更宽或更高动态范围的显示、图像、格式等。例如,所描述的实施例可以用于从16bpc SDR图像生成32 bpc HDR图像,或者渲染32 bpcHDR图像以显示在16 bpc监视器上。一般地,这里描述的数字图像可以由能够捕获数字图像的任何设备(例如,数字静止图像摄像机、数字视频摄像机、扫描仪或者具有图像捕获能力的多用途设备(例如,摄像机电话))或能够存储数字图像的任何介质(例如,易失性存储器或非易失性存储器,例如光盘或闪存)捕获或者可以存储在其上。A.概括的HDR成像系统
图3是示意了概括的HDR图像处理系统310的图。图3示出了系统310可接受的不同类型的图像输入。例如,图3示出了 HDR图像320以及比HDR图像320具有更低动态范围(例如更小曝光范围)的SDR图像332、334、336和338的集合330。一般地,系统310的图像输入可以是单个图像、图像的集合(例如,具有用于构造HDR图像的变化动态范围的图像的集合或者多个HDR图像的集合)、和/或诸如与这些图像相关的元数据或用户偏好数据(未示出)之类的其他信息。元数据可以包括例如指示摄像机设置的信息。例如,用户偏好数据可以包括用于观察或修改图像的用户控制參数设置。元数据和用户偏好数据可以包含于图像文件内或者可以是分离地提供的。尽管在图3中示出了仅ー个HDR图像,但是系统310可以接受多于ー个HDR图像作为输入。图3示出了可操作用于生成HDR图像的HDR图像生成器340和可操作用于渲染HDR图像以进行显示的HDR图像渲染器350。尽管系统310示出了 HDR图像生成器340和HDR图像渲染器350,但是系统310可以执行HDR图像生成而不渲染,例如,当生成HDR图像以供存储或进一步处理但不显示HDR图像吋。系统310也可以执行HDR图像渲染而不进行HDR图像生成,例如,当HDR图像处理系统从某其他源获得HDR图像信息(例如,经由通信介质)而不先生成HDR图像时。在图3所示的示例中,HDR图像生成器340合成来自SDR图像集合330 (例如,在稍微不同的时刻处拍摄的相同场景的图像,其中每个时刻具有不同的曝光设置)的信息。然后,HDR图像渲染器350可以将所生成的HDR图像映射至SDR图像,并准备SDR图像以在显 示器360上输出。还可以在不重新映射至标准动态范围的情况下渲染HDR图像,例如,当显示器能够在不重新映射的情况下显示其全部动态范围内的HDR图像吋。系统310内的模块之间的关系指示了系统中的一般信息流;为了简明,未示出其他关系。典型地,特定实施例使用了概括系统310的变型或补充版本。根据实施方式和所期望的处理类型,可以添加系统的模块、省略系统的模块、将系统的模块分割为多个模块、将系统的模块与其他模块进行组合、和/或替换为类似的模块。在替换实施例中,具有不同模块和/或其他模块配置的系统执行一个或多个所描述的技木。例如,系统310可以包括预处理器,该预处理器使用低通滤波器或其他滤波器来使输入数字图像平滑,以便选择性地移除高频分量。或者,预处理器执行其他预处理任务。系统310还可以包括一个或多个编码器,该ー个或多个编码器对图像数据进行压缩,输出压缩后的数字图像信息的比特流。由编码器执行的精确操作可以根据压缩格式而变化。例如,编码器可以根据诸如JPEG XR之类的HDR图像格式来压缩HDR图像信息,或者,编码器可以根据JPEG之类的格式来压缩SDR图像信息。系统310还可以包括一个或多个解码器,该ー个或多个解码器对压缩后的图像数据进行解压缩,输出解压缩后的数字图像信息的比特流。由解码器执行的精确操作可以根据压缩格式而变化。例如,符合JPEG XR的解码器可以对JPEG XR文件中的HDR图像信息进行解压缩,或者,符合JPEG的解码器可以对JPEG文件中的SDR图像信息进行解压缩。B.用于高动态范围图像生成的方案 I.概括的技术
图4示出了用于从SDR图像的集合生成HDR图像的技术400,其中,基于运动分析,针对SDR图像导出相对曝光。诸如图3所示的HDR图像处理系统310之类的系统或其他系统执行技术400。在410处,系统执行相对于示出场景的图像集合中的參考图像的运动分析。运动分析包括确定集合中的非參考图像中的每ー个相对于參考图像的图像差异。在一个实施方式中,系统通过确定集合中的哪个图像有最多样本值落在可接受曝光范围内并将该图像指定为參考图像,而从候选图像的集合中选择參考图像。可替换地,以某种其他方式将參考图像指定为參考图像。在420处,系统至少部分地基于运动分析来导出相对于參考图像的曝光水平。例如,系统基于非參考图像的运动分析信息,导出每个非參考图像的相对曝光水平。在430处,系统将多个数字图像的集合进行整合,以形成描绘该场景的HDR数字图像。该整合至少部分地基于相对曝光水平。例如,在已经针对每个非參考图像导出相对曝光水平的情况下,系统使用这些相对曝光水平来计算HDR数字图像的样本值。2.示例实现
该部分提供了用于从SDR图像的集合生成HDR图像的一组措施的示例实现的实现细节。
在图5中示出了 HDR图像生成系统510的示例实现。在该示例中,HDR图像生成系统510将SDR图像信息520视作输入,SDR图像信息520包括SDR图像522、524、526、528的集合的图像信息,SDR图像522、524、526、528是具有ー个或多个不同设置的场景的图像,其将在处理和整合图像时产生更高动态范围图像590。例如,SDR图像522、524、526、528是在具有不同曝光设置的不同时刻处拍摄的场景的图像。图5示出了实现各个处理阶段并产生HDR图像590作为输出的示例模块。a.运动分析
运动分析器530分析输入SDR图像522、524、526、528中的运动。例如,在SDR图像522、524、526、528表示场景在不同时刻处的视觉状态的情况下,运动分析器530分析在图像的序列中发生的运动。当在不同时刻处拍摄场景的图像时,在场景的不同拍摄之间非常有可能存在图像运动(全局的或局部的)。运动分析器530可以将各次拍摄时的图像纹理进行对准并对运动定量,使得可以在执行进ー步处理时考虑这种运动。运动分析器530执行相对于參考图像的运动分析。在图5所示的示例中,将图像524指定为參考图像。典型地,參考图像是具有中等曝光范围(S卩,不是输入图像的集合中最亮或最暗的曝光范围)的图像。在一个实施方式中,基于输入图像的集合中的哪个图像有最多样本值处于“正常范围”(即,不是太高(饱和)或太低(曝光不足)的范围)内来选择參考图像。对于正常曝光范围的限制以及确定正常范围的方式可以变化。例如,可以针对所有图像预先确定或者针对每个图像或输入图像集合(例如,基于图像信息和/或用户偏好)自适应地确定正常曝光范围。对參考图像的选择可以由运动分析器530(例如,基于图像信息和/或用户偏好信息)自动执行,或者,可以在将图像提供给运动分析器530之前将该图像指定为參考图像。运动分析器530使用图像差异来对输入图像522、524、526、528中的运动进行建摸。尽管已经开发了用于测量视频画面中的差异(例如,均方差、平方差之和)以分析视频中的运动的各种技术,但是示例实现使用了与将在典型视频应用中所使用的手段不同的用于分析静止图像中的运动的手段,这是由于期望解释不同拍摄中的曝光差异。在一个实施方式中,运动分析器530通过利用“归ー化互相关性”度量计算样本值的差异,来测量图像差异。例如,一个图像i Uァ)与另ー图像/UjO的归ー化互相关性是
” 一]/mmidy · Oi其中,/ 是iUァ)和/Uァ)中的像素的数目,σ表示标准差。可替换地,可以以另一种方式执行对图像差异的测量,例如通过消除每个画面中的平均样本值(7和 )的減法。换句话说,将两个图像(或图像区域)定义为il(x,y)和i2(x’,7’),其中,(んy)和(X’,I,)是相应样本的2D坐标。两个图像或图像区域(假定相同分辨率和大小)之间的差异(“diff”)可以被表示为
权利要求
1.一种在计算机系统中生成高动态范围数字图像的方法,所述方法包括 在描绘场景的多个数字图像的集合中相对于参考图像执行运动分析,所述运动分析包括确定所述集合中的一个或多个非参考图像中的每一个相对于所述参考图像的图像差巳升; 至少部分地基于所述运动分析,针对每个非参考图像导出相对于所述参考图像的一个或多个相对曝光水平;以及 至少部分地基于所述一个或多个相对曝光水平,将多个数字图像的所述集合进行整合,以形成描绘所述场景的较高动态范围数字图像。
2.根据权利要求I所述的方法,还包括 至少部分地基于所述一个或多个相对曝光水平,将每个非参考图像中的样本值扩缩至归一化水平; 其中,所述整合包括针对较高动态范围数字图像中的每个样本位置,计算与所述参考图像中的该样本位置相对应的样本值和与每个非参考图像中的该样本位置相对应的扩缩样本值的加权平均。
3.根据权利要求I所述的方法,还包括 通过确定候选图像的集合中的哪个图像有最多数目的样本值落在可接受曝光范围内,从候选图像的集合中选择所述参考图像。
4.根据权利要求I所述的方法,其中,所述运动分析包括使用归一化互相关,以确定相对于所述参考图像的图像差异。
5.根据权利要求I所述的方法,其中,所述运动分析包括选择非参考图像中的样本值的子集,以确定相对于所述参考图像的图像差异,所述子集是基于样本值是否落在曝光值的范围内来选择的。
6.根据权利要求I所述的方法,其中,所述运动分析包括之后紧跟有局部运动改善的全局运动分析。
7.根据权利要求I所述的方法,其中,所述一个或多个相对曝光水平中的每一个是基于相应非参考图像的平均样本比来导出的。
8.—种或者多种其上存储了计算机可执行指令的计算机可读介质,所述计算机可执行指令使计算机执行包括以下步骤的方法 将高动态范围数字图像中的多个样本值中的每一个色调映射至相应较低动态范围值; 计算色调映射的样本值中的每一个的局部对比度值; 导出色调映射的样本值中的每一个的残差信号,所述导出至少部分地基于相应局部对比度值; 至少部分地基于色调映射的样本值和相应残差信号,计算较低动态范围数字图像的样本值。
9.根据权利要求8所述的计算机可读介质,其中,色调映射包括 生成全局色调映射查找表;以及 针对高动态范围数字图像中的多个样本值中的每一个识别较低动态范围值; 其中,所述识别包括在所述全局色调映射查找表中查找所述多个样本值中的每一个。
10.根据权利要求9所述的计算机可读介质,其中,所述全局色调映射查找表是基于自适应伽马函数来生成的。
11.根据权利要求8所述的计算机可读介质,其中,所述导出色调映射的样本值中的每一个的残差信号包括将每个色调映射样本值乘以相应局部对比度值。
12.根据权利要求8所述的计算机可读介质,其中,所述方法还包括 对残差信号中的一个或多个应用扩缩,其中,所述扩缩包括应用作为与所述相应残差信号相对应的色调映射样本值的函数的扩缩因子。
13.根据权利要求8所述的计算机可读介质,其中,所述较低动态范围数字图像的样本值中的每一个是通过将色调映射的样本值、残差信号和高频抖动信号进行组合来计算的。
14.根据权利要求8所述的计算机可读介质,其中,所述方法还包括 针对所述高动态范围数字图像的较低分辨率预览版本中的多个样本值中的每一个识别较低动态范围值; 将所述较低分辨率预览版本中的多个样本值色调映射至所识别的相应较低动态范围值; 计算所述较低分辨率预览版本中的色调映射的样本值中的每一个的局部对比度值;导出所述较低分辨率预览版本中的色调映射的样本值中的每一个的残差信号,所述导出至少部分地基于相应局部对比度值; 至少部分地基于所述较低分辨率预览版本中的色调映射的样本值和相应残差信号,计算预览图像的样本值。
15.一种计算设备,包括一个或多个处理器和一个或多个存储介质,所述一个或多个存储介质上存储了计算机可执行指令,所述计算机可执行指令使所述计算设备执行基于用户偏好信息渲染高动态范围图像的方法,所述方法包括 提供用于设置对高动态范围图像渲染参数的用户偏好的一个或多个用户偏好控制器; 从所述用户偏好控制器接收与用户相关联的用户偏好信息,所述用户偏好信息与包含高动态范围数字图像的高动态范围数字图像文件的高动态范围图像渲染参数相对应;以及至少部分地基于所述用户偏好信息来渲染所述高动态范围数字图像; 其中,所述渲染包括 计算多个色调映射样本值中的每一个的局部对比度值;以及 至少部分地基于相应色调映射样本值的局部对比度值,计算较低动态范围数字图像的样本值。
全文摘要
本发明涉及用于高动态范围(HDR)图像渲染和生成的技术和工具。HDR图像生成系统对较低动态范围(LDR)图像的集合执行运动分析,并基于在运动分析中获得的信息来导出图像的相对曝光水平。当整合LDR图像以形成HDR图像时,使用这些相对曝光水平。HDR图像渲染器将HDR图像中的样本值色调映射至相应较低动态范围值,并计算局部对比度值。基于局部对比度来导出残差信号,并基于色调映射的样本值和残差信号来计算LDR图像的样本值。可以在HDR图像生成或渲染的各个阶段期间使用用户偏好信息。
文档编号G06T7/00GK102741883SQ201180008464
公开日2012年10月17日 申请日期2011年1月16日 优先权日2010年2月4日
发明者孙式军 申请人:微软公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1