非常大的航拍图像拼接的色调映射的制作方法

文档序号:6444720阅读:271来源:国知局
专利名称:非常大的航拍图像拼接的色调映射的制作方法
非常大的航拍图像拼接的色调映射
背景技术
对于较大地面区域的制图和成像带来许多挑战。由地面区域的彩色图像带来的一个技术问题与原始图像的颜色再现有关。举例来说,大气具有不合期望的与距离相关的影响,其可能会导致数字图像看起来呈蓝色和/或存在薄雾。或者对于另一个实例,太阳具有与角度相关的影响,其可能导致较大地面区域的数字图像的一些部分看起来比其他部分更加明亮,尽管所述场景本身的亮度相对均勻。为了应对围绕以数字形式精确地捕获所述图像所出现的上述和其他问题已经开发出许多技术。具体来说,已经开发出用以应对精确地捕获场景内容所带来的挑战的技术,尽管在所述图像上存在较大的并且常常是非线性的变化。因此,利用具有高动态范围的大格式摄影机可以精确地捕获较大地面区域的图像的内容,所述摄影机比如是Microsoft UltraCam航拍摄影机。但是所捕获图像的动态范围通常高于诸如将在其上观看或再现图像的计算机监视器或打印机之类的视觉显示器件的动态范围。举例来说,前述摄影机可能以16比特动态范围的格式捕获图像,而计算机监视器或打印机可能只具有8比特动态范围。同样地,通常更加实际的做法是利用其动态范围与借以观看图像数据的视觉显示器件相同的格式来存储及获取所述图像数据,而不是利用由摄影机产生的图像的更大动态范围。这是因为动态范围减小的图像将使用较少存储空间,并且将不需要进行转换以便以可见形式再现所述数据。此外,如果图像被存储在远程位置处并且需要通过因特网来访问,则通过减小图像的动态范围还将减少把云存储的图像下载到本地计算机以供显示所需的带宽和时间。另一方面,在把原始的16比特图像转换成8比特图像时,必须尽最大可能保留其内容。否则对于想要在计算机监视器上观看、打印所述图像或者以其他方式使其在视觉显示器件上可见的人来说,所述图像的内容将被丢失。

发明内容
这里所讨论的主题内容的一个方面提供一种通过色调映射(tone mapping)技术将具有特定动态范围的像素的原始数字图像转换成具有较低动态范围的像素的相应图像的方式,所述色调映射技术减少了原始图像中的内容损失并且使得相应图像中的伪像最小化。在这里所要求保护的主题内容的一个方面中,一种用于将较大地面区域的高动态范围图像色调映射成较低动态范围图像的方法使用一种全局知晓(global aware)并且局部自适应(locally adaptive)的途径,其中从对应于图像贴片(tile)的局部矩阵的已知色调映射参数导出局部色调平衡参数,并且随后将其用来导出局部S型(sigmoid)传递函数。全局S型传递函数是根据适用于整个图像的色调映射参数的数值导出的。利用经过局部色调映射的数值和经过全局色调映射的数值对各个像素进行色调映射,其中利用适用于每一个数值的加权因数将其组合。在这里所要求保护的主题内容的另一方面中,一种计算机系统包括色调映射程序模块,其具有通过用于执行如前所述的色调映射方法的可执行指令具体实现的算法;用于存储经过色调映射的图像的各个像素的存储模块;以及用于显示经过色调映射的图像的显示组件。提供本概要是为了以简化形式介绍将在下面的详细描述部分中进一步描述的所选概念。本概要不意图标识出所要求保护的主题内容的关键特征或本质特征,也不意图被用来帮助决定所要求保护的主题内容的范围。


通过下面结合附图对各个实施例所做的详细描述将会更好地理解这里所讨论的主题内容的目的,其中相同的附图标记始终指代相同的特征。下面是对用在所附的详细描述部分中的附图的简要标识。图1示意性地描绘了由高动态范围的大格式(large format)数字摄影机在地表上方的海拔高度H处拍摄的地面区域A。图2示意性地描绘了处在适于产生较大地面区段R的图像的飞行路径上的携带图1中所描绘的摄影机的飞机。图3是示出了为了对由行经图2中所示的飞行路径的安装在飞机上的摄影机所采集的原始摄影图像进行处理所执行的典型步骤的流程图。图4是通过根据图3对原始摄影图像进行处理所得到的图像贴片的拼接(mosaic)的示意图。图5在一个3x3矩阵的中心处示出了图4中的其中一个贴片,以便说明在后面的章节中讨论的色调映射方法的一个实施例。图6是说明这里所讨论的色调映射方法的该实施例的流程图,通过所述方法将通过图3中所示的图像处理方法所产生的16比特像素图像转换成8比特像素图像。图7是对应于例如图5中所示的高动态范围(HDR)像素图像的一部分的代表性直方图的一个实例。图8是用于将高动态范围(HDR)像素色调映射到对应的较低动态范围(LDR)像素的S型传递函数的一个实例。图9是用于执行根据这里所讨论的原理的色调映射方法的计算机系统的示意图。本领域技术人员将很容易理解的是,附图在许多方面是示意性的,但是在与下面的详细描述相结合时仍然足以使得本领域技术人员制作及使用所要求保护的主题内容。
具体实施例方式首先参照图1,由大格式数字航拍摄影机10在地球E表面上方的海拔高度H处按照已知方式生成一个较大地面区域的数字图像。摄影机10包括镜头12,所述镜头12具有适当的焦距,以产生长L千米宽W千米的区域A的数字图像。在一种典型的应用中,海拔高度H是大约6千米,L是大约8. 5千米,W是大约1. 5千米。这样的摄影机的一个实例是由Microsoft Corporation 完全所有的一家子公司 Vexcel Imaging GmbH (GrazjAustria)i^f制造的UltraCamX。关于UltraCamX摄影机以及如何将其利用来产生较大地面区域的拼接图像的详细描述可以在 Gruber, Michael 等人的"UltraCamx, the Large Format AerialDigital Camera System by Vexcel Imaging/Microsoft(UltraCamx-Vexcel Imaging/
Microsoft 的大格式航拍数字摄影机系统)” (Int,1 Archives of the Photogrammetry,Remote SensinR and Spatial Information Sciences, Vol. XXXVII,Part Bi,北京 2008,第665-670页)中找到。应当强调的是,可以使用任何已知方式来捕获地球表面的某一区段的图像以用于根据这里的描述的映射目的,在Gruber的文章中所描述的UltraCamX仅仅是作为用于说明性目的的一个实例给出的。摄影机10和镜头12通常被安装在图2中所示的飞机20中,该飞机遵循飞行路径P以便利用摄影机10捕获具有16比特动态范围的原始图像。也就是说,图像中的每一个像素具有由16个比特的数据所代表的数值,并且这样的图像通常被视为具有高动态范围。但是应当理解的是,缩写“HDR”在这里仅被用来表示大于所述较低动态范围的动态范围,其中将根据下面进一步讨论的方法把图像色调映射到所述较低动态范围中。也就是说,这里所描述的色调映射方法是结合将16比特像素转换成8比特像素来讨论的,后者有时也用缩写“LDR”(低动态范围)来指代。无论如何,这些缩写只意图表示相对数值,即HDR像素具有高于LDR像素的动态范围,而不指代具有任何特定比特数的动态范围。在任何情况下,由摄影机10产生的每一个原始图像都是关于一个区域A,飞行路径P是覆盖地球表面的较大区段R的之字形模式。区段R的规格通常可能是X=IOO千米并且Y=IOO千米,但是也可以对其他尺寸的区段进行成像。从图2应当认识到,飞行路径和图像捕获的定时导致每一个区域A在L和W方向上都与相邻区域重叠。如此捕获的各个图像被处理并组装呈代表区段R的图像。图3示出了用于将摄影机10所捕获的原始图像处理成精确地代表区段R的图像的方法的一个实例。前面已经结合图1和2描述了步骤S300,即图像捕获。在步骤S300中提到的图像是通过遵循飞行路径P而产生的具有16比特动态范围的区段R的重叠图像。本领域技术人员将会理解的是,这些图像可能是区段R的多于一个原始图像集合的结果。举例来说,一个图像集合可能处在可见光范围内,而另一个集合可能处在红外区段内。所述图像还可能是在不同日间时进行的几次飞行的结果。在步骤S302中,利用航拍三角定位处理根据已知的原理执行集束调节,所述航拍三角定位处理最小化由于图像代表从不同视点拍摄的多个三维点而导致的再投影误差。接下来,步骤S304是辐射测定处理,其去除航拍图像中的大气散射(Rayleigh和Mie散射)。这一步骤校正大气的与距离相关的影响,并且防止图像错误地呈蓝色和/或出现薄雾。可以根据在前面讨论的美国专利申请号12/973,689中描述的技术来执行该步骤。步骤S306也是辐射测定处理,其通过校正太阳的与角度相关的影响来去除由于微影而导致的热点,其中所述微影导致图像的不均勻照明。这可能会导致由摄影机10捕获的图像的某些部分看起来比其他部分更加明亮,尽管场景本身的亮度是相对均勻的。一种用于执行该图像校正的技术可以是基于在 Chandelier, L.等人的“A Radiometric Aerial Triangulationfor the Equalization of Digital Aerial Images(用于数字航拍图像的均衡化的辐射测定航拍三角定位)” (ProRrammetrie EnRineerinR & Remote SensinR,H 193-200 页,2009年)中所讨论的原理。在步骤S308中,对经过大气校正并且去除了热点的图像进行正射纠正。这是一种已知的几何处理,其校正航拍图像从而使得比例尺是均勻的(像地图一样)而没有失真。随后是步骤S310,其中利用已知的分段处理组合经过正射纠正的图像,通过所述分段处理,多个经过正射纠正的图像被组合成各个图像贴片的无缝拼接。这可以通过利用本领域技术人员已知的最大流一最小切割(max-flow-min-cut)理论的算法来执行。应当认识到的是,在步骤S310之后得到的图像数据仍然具有16比特动态范围。正如前面所讨论的那样,该动态范围通常不适用于诸如计算机监视器或打印机之类的视觉显示器件,所述视觉显示器件通常具有8比特动态范围。此外还有利的是按照8比特动态范围格式存储区段R的最终图像,以便使用较少存储空间并且便于把图像从一个位置传输到另一个位置(比如通过因特网)。存在许多已知的色调映射技术以用于把16比特动态范围图像转换到8比特动态范围图像。此外还知道或者对于由摄影机10捕获的原始图像(即紧接在步骤S300之后并且在任何其他图像处理之前)执行这样的色调映射,或者在步骤S310之后当已经构造了代表区段R的图像的正射拼接时执行色调映射。这里所描述的有利的色调映射方法在步骤S310之后执行色调映射,并且总体上在图3中由步骤S312代表。图4代表在经过图3的步骤S310的处理之后的IOOOOkm2区段R的图像的一部分。其具有16比特动态范围,并且由于在步骤S302到S310中所实施的处理,其非常精确地捕获了由摄影机10拍摄的区段R的内容。在这里所讨论的16比特到8比特色调映射技术中,所述图像由贴片402的二维栅格400代表。每一个贴片代表在前面的步骤S310中构造的区段R的正射拼接的一个给定矩形区域的正射图像。在本实施例中,所有贴片402具有相同的规格,其在这里被选择成6250像素乘6250像素。可以使用其他规格并且各个贴片不一定非得具有相同的规格,但是如果所有贴片都具有类似的规格,则这里所描述的色调映射方法得到简化。对于拼接栅格400中的每一个贴片402应用根据这里所描述的实施例的色调映射方法。为了说明该方法,将对于在图4中由交叉影线示出的一个典型贴片404进行详细解释。所述方法还考虑与中心贴片404临近的贴片406。这些临近贴片在本实施例中构成一个3x3矩阵,其有时在这里被称作包括贴片404的局部邻域(local neighbour)N0虽然前面在逐个贴片的基础上应用了色调映射,但是根据下面将要描述的方法的色调映射是独有的全局知晓并且局部自适应的。下面将进一步讨论所述方法的各种优点。图5是图4中的典型的3x3贴片邻域N的详细视图。应当认识到的是,用在这里所描述的色调映射方法中的贴片邻域的规格不限于3x3矩阵,如果确定将会获得更好的色调映射结果的话,所述邻域可以是其他规格。根据场景内容来选择邻域的尺寸。在给出特定贴片尺寸的情况下,NxN个贴片的邻域应当代表这样一个图像区域,该图像区域的内容的变化大到足以使其直方图收敛到高斯形状。每一个贴片(包括所讨论的贴片404)具有传统上被用在色调映射应用中的特定属性。这里所描述的技术使用已知的色调映射参数阴影百分比和高光百分比,其有时也被本领域技术人员称作“最大一最小草图(max-min stretch)”。这些参数被“局部地”以及“全局地”确定,“局部”意味着通过使用对应于比如处在邻域N内的那些贴片的临近贴片的参数,“全局”则意味着把对应于区段R内的所有贴片的参数的平均值纳入考虑。图6是说明将在下面更加详细地描述的色调映射方法的流程图,其在图3中被称作步骤S312。在图6的流程图中,第一步骤S600导出对应于区段R中的每一个邻域N的色调平衡参数的数值。(参见图2和4。)这是利用从对应于给定贴片的邻域N的直方图中导出的阴影百分比数值和高光百分比数值而实现的。有可能通过使用对应于包括在任何特定邻域内的各个单独贴片的数值导出对应于该邻域的直方图,所述数值在本实施例中已经可用,这是因为图4中的贴片优选地是被用来如在前面结合图3所描述的那样组合图像的相同贴片。也就是说,这些参数的数值是已知的,这是因为已经结合前面关于图3讨论的图像处理导出了这些参数的数值。但是在这里所描述并要求保护的主题内容的范围内,可以利用关于来自前面结合图3所描述的处理的图像的信息按照任何已知方式导出对应于每一个邻域的直方图。随后从阴影百分比和高光百分比数值导出色调平衡参数,其中阴影百分比和高光百分比数值是利用对应于每一个邻域N内的所有贴片的直方图按照已知方式确定的。图7是对应于HDR像素的一个典型邻域N的直方图的说明性实例,其表明特定图像分量(红色、绿色、蓝色或红外)对于整个领域的频率分布。本实施例从图像的红色(R)、绿色(G)、蓝色(B)和红外(IR)分量为每一个邻域导出下面的四个色调平衡参数贴片数值
RGBTileShadowValue = min(ShadowValueR, ShadowValueG, ShadowValueB)FCIRTi1eShadowVaIue = min(ShadowValueR, ShadowValueG, ShadowValueIR)RGBTileHighlightValue = max(HighlightValueR, HighlightValueG, HighlightValu
eB)
FCIRTiIeHighlightValue = max(HighlightValueR, HighlightValueG, HighlightValueIR)
表示法“min (A,B, C) ”表示所述色调平衡参数被取作对于给定贴片的邻域内的所有图像像素所包括的百分比数值当中的最小值,其中所述给定贴片例如是邻域N内的贴片404。举例来说,RGBTileShadowValue (RGB贴片阴影数值)代表对应于给定贴片的邻域内的所有像素的ShadowValueR (其指代对应于红色图像分量的阴影百分比数值)、ShadowValueG或SiadowValueB当中的最低值。换句话说,如果对于以给定贴片为中心的邻域来说,ShadowValueR既小于ShadowValueG的数值又小于ShadowValueB的数值,则RGBTileShadowValue=ShadowValueR。类似地,表示法"max (Α, B, C) ”表示所述色调平衡参数被取作对于以给定贴片(在本例中是贴片404)为中心的邻域内的所有图像像素所包括的百分比数值当中的最大值。在步骤S602中,将每一个邻域的色调映射参数指定给每一个邻域的中心贴片。在步骤S604中,利用前面的色调平衡参数对于每一个贴片导出邻域S型传递函数。首先,根据在步骤S602中导出的色调平衡参数对于每一个贴片的每一个图像分量确定其动态范围。在本实施例中,对应于贴片的R、G和B分量当中的每一个的16比特动态范围被设定到RGBTileHighlightValue-RGBTileSiadowValue,并且对应于贴片的IR分量的16比特动态范围被设定到FCIRTiIeHighlightValue-FCIRTiIeShadowValue。为了在下面的讨论中易于表示,将把对应于贴片的R、G和B分量的16比特数值用作一个实例,但是相同的原理同时适用贴片的R、G、B分量和顶分量。该数值被用作对应于指定给一个贴片的S型传递函数的贴片动态范围,正如在下一段中所讨论的那样。局部色调映射涉及对于每一个图像分量利用邻域S型传递函数把对应于每一个图像分量的16比特数值映射到从O到255 (28=256)的8比特数值。在图8中以曲线图的形式描绘出典型的S型传递函数。由沿着图8中的横轴绘制的HDR (在这里是16比特)像素代表的每一个图像分量(R,G,B, IR)具有沿着纵轴绘制的相应的LDR (在这里是8比特)图像分量。在步骤S604中导出贴片传递函数以用于把贴片404中的每一个16比特像素分量数值映射到8比特像素分量数值。被映射到8比特数值的给定的16比特像素分量数值首先从像素数值中减去对应于包含该像素的贴片的偏移量RGBTileShadowValue。对于贴片404,使用在步骤S602中指定给贴片404的对应于邻域N的该参数的数值。接下来,将所述像素分量数值乘以一个缩放因数=1/对应于包含该像素的贴片的(如前面所讨论的那样)所导出的16比特动态范围,从而获得一个处在0到1之间的浮点数值,并且对该浮点数值应用具有特定于被用来拍摄区段R的摄影机10的伽玛值(Y )的伽玛校正函数。已知的伽玛校正函数是具有y=x1/Y的形式的幂律函数,其中χ是输入浮点数值,y是输出。对应于伽玛的典型数值是2. 2。最后,把经过伽玛校正的浮点数值乘以255,以便确定用于将对应于像素的每一个图像分量的16比特数值映射到8比特数值的S型传递函数。低于RGBTileShadowValue的任何所得到的数值都将被映射到0,高于RGBTileHighlightValue的任何所得到的数值都将被映射到255。在实践中,所得到的S型传递函数被具体实现在一个查找表中,计算机处理器可以在逐个贴片的基础上参照该查找表。在步骤S606中,通过首先对区段R内的每一个贴片402中的每一个像素进行色调混合来执行对于每一个贴片的局部色调映射。同样地,将图5中示出的贴片404作为代表,其首先被视为分成四个象限4(Ma、404b、4(Mc和404d。如前所述,把对应于以贴片404为中心的邻域N的局部色调平衡参数RGBTileShadowValue, FCIRTileShadowValue、RGBTileHighlightValue和FCIRTiIeHighlightValue指定给该贴片。这些参数被用来如前所述地导出邻域色调平衡S型传递函数(fn)。在获得所述S型传递函数之后,将其指定给贴片404。该S型传递函数的影响区域包括贴片404本身以及围绕贴片404的其他八个贴片(例如图5中的贴片406")中的所有像素。所述其他八个贴片当中的每一个的邻域S型传递函数是利用其自身的所指定的邻域色调平衡参数的每一个所导出的,所述邻域色调平衡参数又是如前面结合贴片404所讨论的那样导出的。为了易于描述对应于贴片404的右上象限(404a)的各个像素的局部色调混合算法,图5中的贴片406^406^40 的S型传递函数在这里分别被标记为f12、f22和f21。对于该象限,贴片404的中心像素位置被选作正交X-Y轴坐标系的原点,正如图5中所示出的那样。为了易于参考,参考Px,γ在这里被用来表示对应于象限40 中的任何像素的对应的混合后数值,其是在利用步骤S604中导出的对应于贴片404,406^40 和40 的适用传递函数对坐标X,Y处的像素的每一个像素分量(R,G,B, IR)进行局部色调映射之后而得到的。为了应用每一个传递函数,首先从源图像中读取位置(X,Y)处的从步骤S310得到的正射图像中的实际HDR (在这里是16比特)源像素数值(Sx,γ),随后利用所述四个传递函数将该像素数值变换(四次)到四个LDR (在这里是8比特)数值。下面描述的局部色调混合算法中的表示法fn (SX;Y)、f12 (SX;Y)、f21 (SX;Y)和f22 (SX;Y)表示从应用于源像素(HDR)数值Sx,γ上的所述四个传递函数获得的对应的LDR数值。考虑到该表示法,通过下面的色调混合双线性内插算法来计算对应于第一象限40 中的目的像素Px,γ的对应的局部混合后数值
Rl = (Χ2 - X)/(X2 - XI) X fn (SX;Y) + (Χ - XI)/(Χ2 - XI) X f21(Sx’Y) (1)
R2 = (Χ2 - Χ)/(Χ2 - XI) X f12(Sx’Y) + (Χ - XI)/(Χ2 - XI) X f22 (SX;Y) (2)
Pjcy = (Υ2 - Υ)/(Υ2 - Yl) X Rl + (Y - Υ1)/(Υ2 - Yl) X R2⑶
其中Χ,Y是所考虑的像素的坐标;Χ1,Υ2是贴片406i的中心的坐标;X2,Yl是贴片40 的中心的坐标;并且X2,Y2是贴片40 的中心的坐标。对应于每一个贴片的对应传递函数fn、f12、f21和f22也在图5中示出。这样就利用所述双线性内插算法提供了对应于坐标为X,Y的点处的像素的所有混合后的经过色调映射的像素数值(对应于所有图像分量R、G、B、顶),其中所述四个经过色调映射的像素数值是利用对应于每一个像素分量的对应的S型传递函数获得的。对于每一个其他象限404b、4(Mc和404d中的每一个像素执行相同的局部混合后的色调映射。更具体来说,对于象限404b,利用被指定给贴片404、40~、4064和40 的传递函数应用前面的色调混合双线性内插算法;对于象限4(Mc,利用被指定给贴片404、40化、4066和4067的传递函数应用所述色调混合算法;对于象限404d,利用被指定给贴片404、4067、4068和406i的传递函数应用所述色调混合算法。在区段R的边缘处,利用可用的相邻贴片执行色调混合。举例来说,如果贴片404处在区段R的上方周界处,则在前面的等式(2)中被指定给传递函数f12和f22的数值将被设定到零。相应地,等式(3)将变为下式
Pxy = (Y2 - Y) / (Y2 - Yl) X Rl
同样地,如果贴片404处在区段R的下方周界处,则将只利用相邻贴片4063来实施对应于象限404b的色调混合。至此所描述的实施例设想了一种并行处理途径,其中在局部色调映射步骤S606之前对于所有邻域导出所有色调平衡参数。应当认识到的是,可以在逐个邻域的基础上以或多或少地串行类型处理实施局部色调映射,或者以对于区段R的一些邻域的并行处理与对于已被处理的邻域的串行处理的组合实施局部色调映射。下一步骤S608涉及确定对应于区段R内的所有贴片的阴影百分比和高光百分比的平均值,这是利用如前面那样对于所有邻域的每一个中心贴片导出的这些参数的数值来实现的。可以通过在逐个贴片的基础上对于区段R的图像中的每一个贴片如此导出的数值相加并且除以贴片的总数来确定这些图像参数的平均值。在步骤S610中,如前面所讨论的那样导出对应于每一个图像分量(R,G,B,IR)的全局S型传递函数,但这是利用平均全局数值实现的。在步骤S612中,利用所述全局传递函数从整个图像中的每一个16比特图像像素映射一个8比特像素。更具体来说,本实施例根据对应于16比特HDR图像的红色(R)、绿色(G)、蓝色(B)和红外(IR)分量当中的每一个的阴影百分比数值和高光百分比数值的全局平均从色调平衡参数导出全局传递函数
RGBGlobShadowValue = min(ShadowValueR, ShadowValueG, ShadowValueB)FCIRGlobShadowValue = min(ShadowValueR, ShadowValueG, ShadowValueIR)RGBGlobHighlightValue = max(HighlightValueR, HighlightValueG, HighlightValu
eB)
FCIRGlobHighlightValue = max(HighlightValueR, HighlightValueG, HighlightValueIR)
正如前面结合邻域传递函数所讨论的那样从这些全局色调平衡参数导出对应于每一个图像分量的全局传递函数,其中用如上定义的全局数值替换前面的讨论中的邻域数值。在本实施例中,对应于贴片的R、G和B分量当中的每一个的全局16比特动态范围被设定到RGBGlobHighlightValue-RGBGlobShadowValue,并且对应于贴片的IR分量的全局16比特动态范围被设定到FCIRGlobHighlightValue-FCIRGlobShadowValue。与前面一样,对应于贴片的R、B和G分量的16比特数值将被用作下面的讨论中的一个实例,但是相同的原理既适用于全局R、G、B分量又适用于全局顶分量。全局色调映射涉及对于每一个图像分量利用全局S型传递函数把对应于每一个像素的图像分量的16比特数值映射到从O到255 (28=256)的8比特数值。被映射到8比特数值的给定的16比特像素分量数值首先从像素数值中减去对应于包含该像素的贴片的偏移量RGBGlobSmdowValue。接下来,将所述像素分量数值乘以一个缩放因数=1/对应于包含该像素的贴片的所导出的16比特全局动态范围,从而获得一个处在O到1之间的浮点数值,并且对该浮点数值应用与前面相同的伽玛校正函数。最后,把经过伽玛校正的全局浮点数值乘以255,以便确定用于将对应于像素的每一个图像分量的16比特数值映射到8比特数值的全局S型传递函数。低于RGBGloMhadowValue的任何所得到的数值都将被映射到0,高于RGBGlobHighlightValue的任何所得到的数值都将被映射到255。在实践中,所得到的全局S型传递函数被具体实现在一个查找表中,计算机处理器可以参照该查找表。步骤S614对于在步骤S606中获得的经过局部色调映射的像素应用一个全局知晓因数(glottal awareness factor)。如前所述,每一个像素包括从步骤S606得到的局部8比特图像分量或通道(R,G,B,IR)以及从步骤S612得到的相应的8比特全局图像分量。步骤S614利用一个总和为1的加权因数将每一个局部图像分量与其相应的全局图像分量相组合。将给定像素的红色分量或通道作为一个实例,经过色调映射的8比特像素的最终数值[打皿1由下面的算法给出
R_final = R_local X local weight + R_global X (1 - local weight)(4)
其中,R_local是从步骤S606得到的该像素的8比特红色分量;R_gl0bal是从步骤S612得到的该像素的8比特红色分量;并且“local weight (局部权重)”是被应用来使得色调映射结果被更多地局部加权的加权因数。已经发现,对应于局部权重的数值有利地是0.20。参数(1-local weight)是与“local adaptive factor (局部自适应因数)”局部权重具有总和为1的关系的“global awareness factor (全局知晓因数)”,其中所述总和为1的关系即((1-local weight)+local weight=l)。按照相同的方式确定其他图像分量(R,G,B, IR)的最终数值。也就是说,每一个像素的每一个分量都具有一个局部8比特分量和一个全局8比特分量。根据等式(4)确定对应于经过色调映射的8比特像素的最终数值。前面描述的全局知晓、局部自适应色调映射处理提高了经过色调映射的图像的图像质量,尤其是那些特别均质从而表现出较窄直方图的图像部分,比如水域。当这样的区域的直方图过窄时(也就是说其标准偏差远小于更为多样的图像部分的典型直方图),这样的均质图像部分的图像参数阴影百分比和高光百分比也将具有较窄的数值范围,并且将有可能不会反映出这些图像部分的真实辉度范围。如果只有窄范围图像参数被用于色调映射,则所得到的图像与其他更加多样的图像贴片相比可能过亮或过暗。本发明的色调映射方法通过同时考虑局部和全局统计特性而避免了这些缺陷,从而增强了来自全局参数的均勻性和来自局部参数的对比度。应当认识到的是,前面的色调映射方法特别被适配成由例如在图9中示意性地示出的传统数字计算机系统900来执行,其中包括带有处理器组件902的设备,所述处理器组件具有用于控制系统组件的操作的操作系统模块904,所述系统组件比如是色调映射程序模块906和存储模块908。所述操作系统模块通常被存储在诸如硬盘驱动器(未示出)之类的非暂时性计算机存储介质或器件中,并且被具体实现在由处理器组件102执行的计算机可执行指令中。计算机编程领域内的技术人员能够编写可执行指令以包括在色调映射程序模块906中,其可以实施前面所描述的算法。通过应用这样的算法而得到的经过色调映射的像素通常将被存储在存储模块908中以供最终传送到诸如计算机监视器或打印机之类的显示组件,从而以人类可读的形式再现经过色调映射的图像。还应当认识到的是,可以利用类似于图9中所描绘的处理器模块生成根据前面所描述的方法的经过色调映射的图像并且将其云存储在一个或更多远程站点处,以便通过诸如客户端计算机系统上的Web浏览器之类的传统技术进行访问。如前所述,LDR形式的图像存储将便于通过无线或有线连接把图像从一个位置传输到另一个位置,这是因为图像所代表的数据比特数目少于以其原始HDR形式存储及发送图像的情况。除非上下文明确另有所指(比如使用术语“图像分量”),否则在本说明书中使用的术语“组件”、“模块”、“系统”、“设备”、“接口”等等一般意图指代与计算机有关的实体,其或者是硬件、软件与硬件的组合、软件或者执行中的软件。举例来说,这样的组件可以是(但不限于)运行在处理器上的进程、处理器、对象、可执行程序、执行线程、程序和/或计算机。作为说明,运行在控制器上的应用和所述控制器都可以是一个组件。一个或更多组件可以驻留在一个进程和/或执行线程内,并且一个组件可以本地化在一台计算机上和/或分布在两台或更多台计算机之间。还应当理解的是,这里(特别是在图9中)所使用的“模块”不一定并且通常不是物理地分开的组件。结合图9提到的模块应当被宽泛地理解成具有可执行指令的形式的信息、存储位置等等,其可以并且通常分布在其所驻留的存储介质内的许多位置当中。此外,所要求保护的主题内容可以被实施为一种方法、设备或制造品,其中利用标准编程和/或工程技术来产生软件、固件、硬件或者其任意组合来控制计算机实施所公开的主题内容。这里所使用的术语“制造品”意图涵盖可从任何计算机可读器件、载体或介质访问的计算机程序。举例来说,计算机可读介质可以包括(但不限于)磁存储器件(例如硬盘、软盘、磁条等等)、光盘(例如紧致盘(⑶)、数字通用盘(DVD)等等)、智能卡以及闪存器件(例如闪存卡、闪存棒、键驱动器等等)。当然,本领域技术人员将认识到,在不背离所要求保护的主题内容的范围或精神的情况下,可以对上述配置做出许多修改。此外,术语“计算机”不意图以任何方式进行限制。举例来说,所要求保护的主题内容可以被具体实现在任何适当的设备中,其中包括台式计算机、膝上型计算机、个人数字助理、智能电话、电视等等。根据本说明书将认识到,总体来说,所公开的主题内容涉及一种用于把由具有预定动态范围的HDR像素所代表的第一图像转换成具有相应的LDR像素的第二图像的方法,其中所述第一图像包括多个贴片,每个贴片分别包括由多个所述HDR像素构成的二维阵列,并且所述LDR像素具有较低的动态范围。所述方法利用局部传递函数对第一图像的每一个HDR像素执行局部色调映射,以用于把HDR像素转换成具有经过局部色调映射的数值的LDR像素。此外,利用全局传递函数对每一个HDR像素执行全局色调映射,以用于把HDR像素转换成具有经过全局色调映射的数值的LDR像素,其中全局传递函数是从所有HDR像素的图像参数的平均值导出的。通过对经过局部和全局色调映射的像素数值进行加权并且组合加权后的经过局部和全局色调映射的LDR像素数值来导出对应于每一个LDR像素的最终数值,其中对每一个经过局部色调映射的LDR像素数值应用第一加权因数,对每一个经过全局色调映射的LDR像素数值应用第二加权因数。最终的LDR像素数值被存储在存储器件中以用于输出第二图像。除非具体声明,否则这里所描述的方法不限于特定顺序或序列。此外,其中一些所描述的方法步骤可以同时发生或被同时执行。此外,这里所使用的“实例”一词仅仅是为了描述一种实现方式。这样的实现方式不应被理解为实施这里所讨论的主题内容的任何具体特征的仅有的方式。此外,这里被描述为由计算机程序执行的功能不应被限制到由这样的程序的任何具体实施例来实施。虽然在这里以特定于结构特征和/或方法步骤的语言描述了主题内容,但是应当理解的是,所附权利要求书的主题内容不限于前面所描述的具体特征或步骤。相反,这样的特征和步骤是作为由所附权利要求书所涵盖的相应主题内容的样本形式而公开的。
权利要求
1.一种用于把由具有预定动态范围的HDR像素所代表的第一图像转换成具有相应的LDR像素的第二图像的方法,其中所述第一图像包括多个贴片(402),每个贴片分别包括由多个所述HDR像素构成的二维阵列,并且所述LDR像素具有较低的动态范围,所述方法包括利用局部传递函数对所述第一图像的每一个HDR像素执行(S606)局部色调映射,以用于把所述HDR像素转换成具有经过局部色调映射的数值的所述LDR像素,所述局部传递函数是从与包含所述HDR像素的所述贴片邻近的多个贴片中的所述像素的至少一个图像参数导出的;利用全局传递函数对每一个HDR像素执行(S612)全局色调映射,以用于把所述HDR像素转换成具有经过全局色调映射的数值的所述LDR像素,所述全局传递函数是从所有所述HDR像素的所述至少一个图像参数的平均值导出的;以及通过对所述经过局部和全局色调映射的像素数值进行加权并且组合所述加权后的经过局部和全局色调映射的LDR像素数值来导出对应于每一个LDR像素的最终数值,其中对每一个所述经过局部色调映射的LDR像素数值应用第一加权因数,对每一个所述经过全局色调映射的LDR像素数值应用第二加权因数;以及把所述最终的LDR像素数值存储在存储器件中以用于输出所述第二图像。
2.如权利要求1所述的方法,其中,所述至少一个图像参数包括阴影百分比数值和高光百分比数值,并且所述传递函数包括具体实现在计算机处理器的查找表中的S型色调映射函数。
3.如权利要求2所述的方法,其中,所述第一图像和第二图像是包括具有红色(R)、绿色(G)、蓝色(B)和红外(IR)分量的像素的彩色图像,每一个所述分量在所述第一 HDR图像中由16个数据比特代表,并且在所述第二 LDR图像中由8个数据比特代表。
4.如权利要求3所述的方法,其中,与所述贴片邻近的所述多个贴片(406)定义所述贴片的一个邻域,并且每一个所述邻域具有对应于包括所述邻域的所述HDR图像的每一个分量的阴影百分比数值(ShadowValue)和高光百分比数值(HighlightValue),所述方法还包括对于所述图像中的所有所述邻域确定下面的色调平衡参数的邻域数值RGBTileShadowValue = min(ShadowValueR, ShadowValueG, ShadowValueB)FCIRTi1eShadowVaIue = min(ShadowValueR, ShadowValueG, ShadowValueIR)RGBTileHighlightValue = max(HighlightValueR, HighlightValueG, HighlightValueB)FCIRTiIeHighlightValue = max(HighlightValueR, HighlightValueG, HighlightValueIR),其中,表示法“min(A,B, C) ”表明色调平衡参数被取作对于所述对应贴片中的所有所述像素所包括的百分比数值当中的最小值,并且表示法“max (A,B, C) ”表明色调平衡参数被取作对于所述对应贴片中的所有所述像素所包括的百分比数值当中的最大值;为每一个所述邻域内的一个预定贴片(404)指定所述色调平衡参数的所述邻域数值;以及从所述邻域色调平衡参数导出多个传递函数,以用于把所述预定贴片中的每一个HDR像素的每一个所述分量色调映射到LDR像素。
5.如权利要求4所述的方法,其中,所述贴片(402)是正方形,所述邻域包括由至少九个贴片(406)构成的正方形矩阵,并且所述预定贴片(404)是每一个所述矩阵的中心贴片。
6.如权利要求5所述的方法,其中对于所述第一图像中的位于所述中心贴片(404)的四个相等象限的其中之一内的点X,Y处并且对于每一个图像分量具有HDR数值、γ的一个像素,如果对应于所述中心贴片的图像分量的邻域传递函数是fn,并且对应于与所述象限相邻的围绕所述中心贴片(404)顺时针方向看去的所述三个贴片当中的每一个的图像分量的邻域传递函数分别是f12、f22和f21,则通过下面的算法确定对应于X,Y处的所述HDR像素的所述分量的经过局部色调映射的数值Rl =(X2 -X)/(X2 -XDX fn +.(Χ -Xl)/'(Χ2 -XDXf21R2 =(X2 -X)/(X2 -XDX f12 +.(χ -Xl)/'(Χ2 -XDXf λ22ρ = rX, Y(Y2 -Y)/(Y2 -YDX Rl ■—(Y -YD,/(Υ2 -YDχR2其中,X,Y是所讨论的所述像素的坐标并且所述中心贴片(404)的中心是正交的X-Y轴的原点,XI,Y2、X2, Y2和X2,Yl是围绕所述中心贴片顺时针方向看去的所述三个相邻贴片的中心的对应坐标。
7.如权利要求6所述的方法,其中,用于将X,Y处的所述HDR像素局部色调映射到LDR图像像素的每一个所述传递函数是如下导出的从所述HDR像素的R、G、B分量当中的每一个减去所述RGBTileSiadowValue,并且从所述像素的IR分量减去FCIRTiIeShadowValue ;通过将每一个对应的像素分量数值乘以缩放因数=1/对于所述中心贴片所导出的16比特动态范围而获得处于0到1之间的一个浮点数值,其中所述像素的R、G和B分量当中的每一个具有动态范围=RGBTileHighlightValue-RGBTileShadowValue,所述像素的顶分量具有动态范围=FCIRTiIeHighlightValue-FCIRTiIeShadowValue ;作为y=x1/Y的形式的幂律函数应用伽玛值(Y ),其中χ是所述浮点数值;以及将所述经过伽玛校正的浮点数值(y)乘以255,其中低于RGBTileShadowValue或FCIRTileShadowValue的任何所得到的数值都将被映射到0,并且高于RGBTileHighlightValue或FCIRTileHighlightValue的任何所得到的数值都将被映射到255。
8.如权利要求7所述的方法,其中,用于将所述第一图像中的所述HDR像素全局色调映射到LDR像素的所述全局传递函数是如下导出的对于所述区段R内的所有所述邻域确定平均全局阴影百分比数值(ShadowValue)和平均全局高光百分比数值(HighlightValue);基于所述平均全局阴影和高光百分比数值导出全局色调平衡参数RGBGlobaiadowValue=min (ShadowValueR, ShadowValueG, ShadowValueB)、FCIRGlobShadowValue=min (ShadowValueR, ShadowValueG, ShadowValueIR)以及 RGBGlobHighlightValue=max(HighlightValueR, HighlightValueG, HighlightValueB),其中表示法“min (A, B, C) ”表明色调平衡参数被取作对于所述对应贴片中的所有所述像素所包括的百分比数值当中的最小值,并且表示法"max(A, B, C) ”表明色调平衡参数被取作对于所述对应贴片中的所有所述像素所包括的百分比数值当中的最大值;从所述像素的R、G、B分量当中的每一个减去所述RGBGlobSiadowValue,并且从所述像素的 IR 分量减去 FCIRTileSiadowValue ;通过将每一个对应的像素分量数值乘以缩放因数=1/对于所述像素所导出的16比特动态范围而获得处于0到1之间的一个浮点数值,其中所述像素的R、G和B分量当中的每一个具有动态范围=RGBGlobHighlightValue-RGBGlobaiadowValue,所述像素的IR分量具有动态范围=FCIRGlobHighlightValue-FCIRGlobShadowValue ;作为y=x1/Y的形式的幂律函数应用伽玛值(Y ),其中χ是所述浮点数值;以及将所述经过伽玛校正的浮点数值(y)乘以255,其中低于RGBGlobSiadowValue或FCIRGlobShadowValue的任何所得到的数值都将被映射到0,并且高于RGBGlobHighlightValue或FCIRGlobHighlighValue的任何所得到的数值都将被映射到255。
9.如权利要求8所述的方法,其中,所述第一加权因数是局部权重因数,所述第二加权因数是(1-局部权重因数),并且对于每一个图像分量确定所述最终LDR像素数值。
10.如权利要求3所述的方法,其中,所述第一加权因数是局部权重因数,所述第二加权因数是(1-局部权重因数),并且对于每一个图像分量确定所述最终LDR像素数值。
全文摘要
本发明涉及一种用于将较大地面区域的高动态范围图像色调映射到较低动态范围图像的方法,其使用一种全局知晓、局部自适应的方案,其中从对应于图像贴片的局部3x3矩阵的已知色调映射参数导出局部色调平衡参数数值,并且随后将其用来导出对应于所述矩阵的中间贴片内的像素的局部S型传递函数。全局S型传递函数是根据适用于整个图像的色调映射参数的数值导出的。较低动态范围图像像素将具有经过局部色调映射的数值和经过全局色调映射的数值,通过为二者分别给出一个加权数值而将其组合,从而提供最终的低动态范围像素数值。
文档编号G06T5/50GK102567976SQ20111045762
公开日2012年7月11日 申请日期2011年12月31日 优先权日2010年12月31日
发明者D.西蒙斯, I.奥默, L.罗森谢恩, R.勒纳, W.施克勒, 刘宇翔 申请人:微软公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1