使用频率滤波来模拟胶片颗粒的技术的制作方法

文档序号:6494983阅读:168来源:国知局
专利名称:使用频率滤波来模拟胶片颗粒的技术的制作方法
技术领域
本发明涉及在解码之后的编码的图像中模拟胶片颗粒(grain)的技术。
背景技术
电影胶片包括在以薄层被涂敷在胶片基底上的感光乳剂中所散布的卤化银晶体。这些晶体的曝光和显影形成包括许多分立的、微小的银微粒的摄影图像。在彩色负象中,在生胶片(film stock)显影期间在以化学方法去除银之后,在形成银晶体的位置上产生染料的微小团点(blob)。染料的这些小斑点通常被称作彩色胶片中的“颗粒”。因为在原始感光乳剂上银晶体是随机形成的,所以颗粒在所得到的图像上呈现出随机分布。在均匀曝光区域内,一些晶体在曝光之后显影而另一些却没有。
颗粒的尺寸和形状是变化的。胶片越快,则所形成的银的块和所产生的染料团点越大,并且它们越容易以随机的图案聚合在一起。术语“颗粒度(granularity)”通常指颗粒图案。肉眼不能区分从0.0002mm到大约0.002mm变化的各个颗粒。相反地,眼睛可以分辨被称为团点的颗粒群。观看者将这些团点群识别为胶片颗粒。随着图像分辨率变得越大,对胶片颗粒的感觉变得越明显。在电影和高分辨率图像上胶片颗粒变得清晰可见,然而胶片颗粒逐渐地在标准分辨率电视(SDTV)中失去重要性并且在较小的格式中变得不能被察觉。
电影胶片通常包含因为摄影胶片的曝光和显影的物理处理过程或者因为后来对图像的编辑而产生的依赖于图像的噪声。摄影胶片具有因为摄影感光乳剂的物理颗粒度而产生的特征准随机图案,或纹理。或者,在计算机所产生的图像中也能产生类似图案的模拟以将它们与摄影胶片进行混合。在两种情况中,这种依赖于图像的噪声都负有“胶片颗粒”之名。经常地,适当的颗粒纹理在电影中呈现所希望的效果。在某些情况中,胶片颗粒提供帮助正确理解两维画面的视觉提示。胶片等级经常在单个胶片内变化以提供关于时间参考、观看点等的各种线索。在电影行业中还存在许多其他的技术和艺术目的需要来控制颗粒纹理。因此,在整个图像处理和交付链中保持图像的颗粒状显示已经变成了电影行业的要求。
几种可商用的产品具有模拟胶片颗粒的能力,通常用于将计算机产生的对象混合到自然场景中。作为实现颗粒模拟的最先的数字胶片应用之一的、来自纽约州罗彻斯特市伊斯门柯达公司(Eastman Kodak Co.)的Cineon对许多颗粒类型都能产生非常真实的结果。但是,因为Cineon应用对于高颗粒尺寸设置而产生的明显的对角条纹,所以该应用不能为许多高速胶片产生良好的效果。而且,当图像经历有之前的处理时,例如当图像被复制过或者被数字处理过时,Cineon应用不能以足够的逼真度来模拟颗粒。
另一个模拟胶片颗粒的商用产品是来自Visual Infinity Inc.的GrainSurgeryTM,其用作AdobeAfter Effect的插件。Grain SurgeryTM产品看起来是通过对一组随机数进行滤波来产生合成颗粒。这种方法受到高计算复杂性缺点的影响。
胶片颗粒模拟继续保持为一个感兴趣的题目。近来,H.264视频压缩标准进行了改进以采用指定胶片颗粒模拟参数的标准补充增强信息(SEI)消息。采用特定格式胶片颗粒SEI消息将显著地促进解码器的开发,以使用由用于模拟胶片颗粒的即时应用的受让人(assignee)近来公开的技术来模拟胶片颗粒。由申请人的受让人所开发的技术通过下面步骤来模拟胶片颗粒(1)首先在压缩之前从图像中将颗粒滤波出来,然后(2)将压缩的视频与包含关于原始颗粒的信息的消息一同发送到解码器,以及(3)通过根据SEI消息的内容使得解码器模拟胶片颗粒来恢复图像的原始颗粒状的外观。这种技术为需要胶片颗粒保持的高质量应用节省许多比特率。但是,由于胶片颗粒产生需要通过对16×16像素的块进行操作,并且随后对胶片颗粒图像的16×16块边缘进行解块(deblocking)处理,来产生胶片颗粒图像,所以这种技术增加了解码器复杂度。
因此,存在对能够通过提供更高的效率来克服现有技术的缺点的胶片颗粒模拟技术的需求。

发明内容
简要地,根据本原理的优选实施方式,提供一种用于模拟胶片颗粒的方法。该方法以接收图像信息和接收包括指定之前在图像中的胶片颗粒的不同属性的一组可能参数之中至少一个参数的胶片颗粒信息开始。使用胶片颗粒模型,颗粒模拟根据依照图像中用于像素块的目标像素块尺寸被缩放的至少一个参数而进行。然后将模拟的胶片颗粒并入到图像中。
根据目标像素块尺寸来缩放胶片颗粒信息允许使用任意的块尺寸,其允许使用传统硬件元件来执行与胶片颗粒模拟关联的、基于块的操作。


图1示出了用于模拟胶片颗粒的系统的示意框图;图2示出了根据本原理的第一方面的、图1的系统通过其产生胶片颗粒信息的方法的步骤的流程图;图3示出了根据本原理的第二方面的、图1的系统通过其产生胶片颗粒信息的方法的步骤的流程图;图4示出了根据本原理被缩放的8×8像素块的例子;图5A示出了仅仅其垂直边缘进行缩放的8×8像素块的例子;和图5B示出了仅仅其水平边缘进行缩放的8×8像素块的例子。
具体实施例方式
图1示出了用于模拟图像中的胶片颗粒的系统10的示意框图。系统10包括用于从输入图像104和嵌入到诸如SEI消息106的胶片颗粒消息中的至少一个胶片颗粒参数两者中产生胶片颗粒信息的第一块12。胶片颗粒产生器块12使用诸如要在下面详细描述的图2和3的方法之一从这种输入信息产生胶片颗粒信息。由胶片颗粒产生器块12所产生的胶片颗粒信息在混合块16接收之前经历胶片颗粒解块处理滤波器14的解块处理。混合块16将滤波过的胶片颗粒信息与输入图像混合以产生包含胶片颗粒的输出图像。
图2示出了根据用于产生胶片颗粒的本原理的第一方面的方法的步骤的流程图。如将在下面详细描述的,图2的方法进行操作以从频率滤波之前被缩放的高斯噪声中产生胶片颗粒。图2的胶片颗粒产生方法开始于执行在其间系统变量经历初始化的步骤100。在步骤100之后,进行从输入图像104中提取连续的N×M像素块,其中N和M每一个都是大于零的整数。
在步骤102之后,进行步骤105,并且在图1的胶片颗粒产生器块12内的噪声产生器(未示出)根据伴随输入图像的SEI消息106中所包含的、以将在下面讨论的方式被缩放的至少一个胶片颗粒参数来产生随机(高斯)噪声。正如在H.264压缩标准中所采用的,在16×16像素块上可以预测SEI消息106中的胶片颗粒参数。从实现效率的角度来说这种块尺寸没能总提供最大的便利。
根据本原理,在SEI消息中的胶片颗粒参数在步骤107期间经历缩放,从而允许以不同于16×16像素的块尺寸来模拟胶片颗粒。实际上,SEI消息定义各种胶片参数,包括两组截止频率(cut frequency),即水平和垂直低端截止频率以及水平和垂直高端截止频率。为了理解其中SEI参数,特别是水平和垂直高端截止和低端截止频率,经历缩放的方式,令Ns×Ms表示原始块尺寸(即,16×16像素),令Nt×Mt表示新缩放的参数在其上操作的目标块尺寸。则水平和垂直高端截止频率经历如下缩放ftHH=ceil(NtNsfsHH)---(1)]]>ftHV=ceil(MtMsfsHV)---(2)]]>其中函数fceil(x)返回大于或等于x的最小整数,ftHH是用于目标块尺寸的新高端水平截止频率而ftHV是用于目标块尺寸的新高端垂直截止频率。这种缩放包括以块尺寸的比例分割原始频率并且上舍入到最接近的整数的等效情况。类似地,水平和垂直低端截止频率经历如下缩放ftLH=floor(NtNsfsLH)---(3)]]>ftLV=floor(MtMsfsLV)---(4)]]>其中floor(x)返回小于或等于x的最大整数,ftLH是用于目标块尺寸的新低端水平截止频率而ftLV是用于目标块尺寸的新低端垂直截止频率。这种缩放包括以块尺寸的比例分割原始频率并且下舍入到最接近的整数的等效情况。
上述舍入与使用在16×16像素的块上所定义的原始截止频率值来产生胶片颗粒相比较,可以在目标块尺寸上产生最类似的胶片颗粒。但是,任何类型的舍入(下截止(floor)、上截止(ceil)或最接近整数)都可能缩放水平和垂直截止频率两者。
在所示的实施方式中,原始块是16×16像素并且目标块是8×8像素。在这种情况中,可以进行高端截止频率的缩放如下ftH=(foH+1)>>1---(5)]]>其中ftH表示新高端截止频率。因为源和目标块是正方形的,所以等式(5)可以对水平和垂直高端截止频率进行缩放。对低端截止频率的缩放变为ftL=foL>>1---(6)]]>其中ftL表示新低端截止频率。类似地,所以等式(5)可以对水平和垂直低端截止频率进行缩放。
可以将SEI消息的参数缩放到任何需要的块尺寸,从而允许之前所述的胶片颗粒模拟算法的有效实施。在所示的实施方式中,将胶片颗粒参数值缩放到8×8像素块,从而允许重新使用许多现有的集成电路以执行硬件加速的离散余弦变换(DCT)、逆离散余弦变换(IDCT)和其他基于块的操作。
在步骤108期间,随机噪声经历缩放以改变已经处于最终尺寸(例如,8×8)的N×M像素块的像素值,从而避免/减小解块处理过程的复杂度。在步骤108期间进行的缩放采用根据在SEI消息中所指定的(被缩放过的)值来修改噪声的方差(variance)的形式。假设对于给定块B,在步骤105期间所产生的随机噪声具有平均值μ和方差σ2。给出为块B的每个像素而定义的缩放函数SB,所缩放的像素值将具有下面关系Bscaled(i,j)=(B(i,j)-μ)·S(i,j)+μ (7)其中B(i,j)表示块B的坐标(i,j)处的像素。注意等式(7)只应用于其中s(i,j)不是1的那些像素。
在步骤108期间进行的噪声缩放解除了对解块处理滤波器的需要从而减小组块处理伪像(artifact)。使用噪声缩放来减小这种伪像使用了因为横跨块边缘的不相关像素而产生组块处理伪像的原理。为了减少这种伪像,必须增加横跨块边缘的相关性,其等效于减小在块边缘上的噪声量。
在步骤108之后,缩放过的随机噪声在步骤110期间经历离散余弦变换。之后,根据SEI消息106中的对应滤波器参数在步骤112期间系数变为滤波过的频率。在步骤114期间执行逆离散余弦变换(IDCT)。在步骤116,进行检查以确定是否还剩下额外的N×M像素块没有被读出。如果没有剩下其他的块,则所产生的噪声形成胶片颗粒图像118,并且处理过程在步骤120期间结束。否则,重新执行步骤102和其之后的那些步骤直到从输入图像104中没有剩下还没有读出的其他N×M块为止。
图3示出了根据用于产生胶片颗粒的本原理的第二方面的方法的步骤的流程图。图3的胶片颗粒产生方法包括许多与图2的方法相同的步骤,并且在图3中出现的类似标记指示类似的步骤。图3的胶片颗粒产生方法与图2的方法的不同之处在于噪声缩放的进行。如上所述,图2的胶片产生方法在步骤112期间进行的频率滤波之前在步骤108期间进行噪声缩放。相反地,图3的胶片产生方法在步骤112所执行的频率滤波之后,在步骤114期间进行的逆离散余弦变换的后面在步骤115期间进行噪声缩放。以与等式(7)所述的等效的方式进行图4的步骤115期间施加到滤波过的随机噪声的每个像素的缩放操作。
根据SEI消息106的参数和块尺寸,缩放函数的确定可以是先验生成的或者可以是自动生成的。缩放函数也可以适应于在SEI消息中所指定的不同组的参数。
在所示的实施方式中,缩放函数减少块边缘上的噪声量(以避免组块处理伪像),而同时增加块内的噪声量以保持相同的总体噪声量。对于具体到8×8像素块的缩放,缩放函数可以实现图4中所示用于像素块200的结果。在像素块200的边缘上的最暗的灰色区域202表示噪声的减小(S(i,j)<1),而在块内的最亮灰色区域204表示噪声的增加(S(i,j)>1)。中间灰色区域206表示在噪声强度中没有变化((S(i,j)=1)。
使用缩放函数构成(因为SEI消息的参数改变所以)维持胶片颗粒外观与降低解码器复杂性(即,避免解块处理)之间的折衷。在其中不是所有的块边缘都均等地相关的情况中,缩放函数可以只修改特定边缘。例如在CRT显示器上,在垂直边缘上的伪像比水平边缘上的要明显得多。在这种情况下,减小的噪声强度应该只在像素块300的垂直边缘302上发生,如图5A所示。在特定情况下,缩放函数可以仅仅修改像素块400的水平边缘402,如图5B所示。
上面所描述的是一种通过缩放胶片颗粒参数而减小复杂度来模拟在以后要解码的编码图像中的胶片颗粒的技术。
权利要求
1.一种用于模拟胶片颗粒的方法,包括步骤接收图像信息;接收胶片颗粒信息,其包括在之前指定图像中的胶片颗粒的不同属性的一组可能的参数中的至少一个参数;根据依照图像中像素块的目标像素块尺寸所缩放的至少一个参数来模拟胶片颗粒;以及将所模拟的胶片颗粒混合到图像中。
2.根据权利要求1所述的方法,其中所述接收胶片颗粒信息的步骤还包括接收其比特流已经根据预定的压缩标准而被压缩的图像的步骤;和所述接收胶片颗粒信息的步骤还包括接收在图像比特流中所嵌入的附加数据的步骤。
3.根据权利要求2所述的方法,其中所述接收胶片颗粒信息的步骤还包括接收其比特流已经根据H.264压缩标准而被压缩的图像的步骤;和所述接收胶片颗粒信息的步骤还包括接收SEI消息的步骤。
4.根据权利要求2所述的方法,还包括以Nt×Mt像素的目标块尺寸对胶片颗粒信息进行缩放的步骤,其中Nt和Mt不是16。
5.根据权利要求2所述的方法,还包括以8×8像素的目标块尺寸对胶片颗粒信息进行缩放的步骤。
6.根据权利要求1所述的方法,其中所述模拟胶片颗粒的步骤包括步骤根据至少一个参数来产生随机噪声;以及对噪声进行缩放以改变之前被缩放到目标块尺寸的像素块的像素值;在缩放之后对噪声进行频率滤波。
7.根据权利要求1所述的方法,其中所述模拟胶片颗粒的步骤包括步骤根据至少一个参数来产生随机噪声;以及对噪声进行频率滤波;和对频率滤波过的噪声进行缩放以改变之前被缩放到目标块尺寸的像素块的像素值。
8.根据权利要求2所述的方法,其中所述胶片颗粒信息包括水平和垂直高端和低端截止频率用于以目标像素块尺寸进行缩放。
9.根据权利要求4所述的方法,其中所述噪声进行缩放以减小主要在垂直边缘上的噪声强度。
10.根据权利要求4所述的方法,其中所述噪声进行缩放以减小主要在水平边缘上的噪声强度。
11.一种模拟胶片颗粒的方法,包括步骤(a)接收表示其中胶片颗粒已经至少被衰减过的图像的图像信息;(b)接收胶片颗粒信息,其包括在之前指定图像中的胶片颗粒的不同属性的一组可能的参数中的至少一个参数;(c)对于图像中不同于16×16块的目标像素块,对胶片颗粒信息进行缩放;(d)读出图像的连续的一个像素块;(e)根据至少一个参数为连续的像素块产生随机噪声;(f)对随机噪声进行缩放以改变之前被缩放到目标块尺寸的像素块的像素值;(g)对缩放过的噪声执行基于块的变换以产生一组系数;(h)对系数进行频率滤波;以及(i)对频率滤波过的系数执行基于块的逆变换以产生胶片颗粒图像块。
12.根据权利要求11所述的方法,其中重复所述步骤(d)-(i)直到已经将图像中的所有像素块读出为止。
13.根据权利要求11所述的方法,其中所述执行基于块的变换的步骤还包括执行离散余弦变换的步骤。
14.根据权利要求13所述的方法,其中所述执行基于块的逆变换的步骤还包括执行逆离散余弦变换的步骤。
15.一种模拟胶片颗粒的方法,包括步骤(a)接收表示其中胶片颗粒已经至少被衰减过的图像的图像信息;(b)接收胶片颗粒信息,其包括在之前指定图像中的胶片颗粒的不同属性的一组可能的参数中的至少一个参数;(c)对于图像中不同于16×16块的目标像素块,对胶片颗粒信息进行缩放;(d)读出图像的连续的一个像素块;(e)根据至少一个参数为连续的像素块产生随机噪声;(f)对噪声执行基于块的变换以产生一组系数;(g)对系数进行频率滤波;(h)对频率滤波过的系数执行基于块的逆变换以产生胶片颗粒图像块;以及(i)对噪声进行缩放以改变之前被缩放到目标块尺寸的像素块的像素值。
16.根据权利要求15所述的方法,其中重复所述步骤(d)-(i)直到已经将图像中的所有像素块读出为止。
17.根据权利要求15所述的方法,其中所述执行基于块的变换的步骤还包括执行离散余弦变换的步骤。
18.根据权利要求15所述的方法,其中所述执行基于块的逆变换的步骤还包括执行逆离散余弦变换的步骤。
全文摘要
模拟图像中的胶片颗粒可以通过下面步骤来进行压缩视频图像,然后将压缩过的视频与包含指示原始胶片颗粒的至少一个参数的消息一同传送到解码器,以及通过使得解码器根据胶片颗粒消息的内容来模拟胶片颗粒来恢复原始的颗粒状的图像外观。为了提高效率,胶片颗粒信息的一个或多个参数根据用于图像中的像素块的目标像素块而经历缩放。这种缩放允许使用传统电路结合胶片颗粒模拟而执行基于块的操作。
文档编号G06T5/00GK1857005SQ200480027522
公开日2006年11月1日 申请日期2004年9月22日 优先权日2003年9月23日
发明者琼·拉克, 吉尔·M·博伊斯, 亚历山德罗斯·图拉皮斯 申请人:汤姆森特许公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1