专利名称:使用统计调谐颜色立方体的个人计算机中视频的处理的制作方法
技术领域:
本发明涉及一种处理图像的方法和系统,图像处理是例如视频(解)压缩。本发明特别涉及但并不仅限于不需要昂贵硬件支持而使个人计算机能够处理视频的方法。本发明还涉及静止图像位深度(bit-depth)减少的方法。
彩色图像数字处理的一个问题是可以用来数字化表示图画中的实际颜色的位的数量是有限的。选择每个R,G和B有8位的RGB表示方式产生一个256×256×256颜色的三维一致网格。例如,根据最接近的相邻映射,一个象素的真实颜色被映射到这个分立的集合上。这种量化带来很小的偏差,但是24-位表示需要很强的处理能力。对于没有24-位处理能力的图形显示硬件来说就更加困难。一般的图形显示硬件只支持每个象素8位存储。相应的,256×256×256色的集合被映射到小很多的256色的子集合上,这又带来另一个误差。8位与一个0至255的索引相联系。这样,代替每个象素使用3字节(256×256×256),每个象素只有一个字节从CPU发送到图形硬件。为了保证它在RGB显示器上的正确显示,图形硬件还存储一个颜色查找表(CLUT),它将256索引映射回R,G和B强度的组合。这种CLUT的计算和256×256×256原始颜色的集合到256颜色子集合的映射是非常费时的。
通过选择图像中最显著的256色而将图像映射到一个减小的集合是已知的。这些颜色的每一个由一个例如0至255的整数的三元组(R,G,B)定义,它确定颜色在原始颜色立方体中的坐标。对于每个颜色,确定有这个颜色的象素的个数并且选择256个有最多个数的颜色来表示图像。减小的集合由CLUT的索引的集合表示。这种方法有一些缺点。原始帧到由这种减小颜色子集表示的帧的转换需要费事的最相近颜色查找。而且,转换后的帧由颜色索引阵列组成。这些索引只是一些标志而这个数组只是间接地与原始颜色立方体相关。因此,视频操作一般不可能在颜色域内由一个索引表示。此外,这个方法非常费时。对于电影/视频,即快速连续图像序列,该方法要求每个电影帧有一个新的CLUT。安装一个新的CLUT经常比在可用时间内(例如,对于NTSC视频是33ms)显示新的帧的时间更长。即使CPU有能力及时发送一个新的CLUT至图形硬件,这种方法也会引起颜色闪烁。即,在原始帧的序列中保持它们的颜色的象素现在也可能显得颜色有变化。
另一种将图像映射到减小的颜色集合的方式是使用一个相似于,但小于256×256×256颜色的原始立方体的颜色立方体。例如,在一个8×8×4的子空间中选择8红,8绿和4蓝强度以产生256色。强度是固定的使得它们通过将它们等距离分布而可以覆盖每个颜色维的所有范围。在上述例子中,红色和绿色强度每一个为(16,48,80,112,114,176,208,240)而蓝色强度是(32,96,160,224)。如已熟知的,人眼对蓝色的变化的敏感度比对红色或绿色的敏感度低。这个方法的优点是从原始颜色立方体到减小的颜色立方体的转换较为简单。原始的字节被简单地截短。而且,减小域中的处理可能使用适合的索引方案。在上面的例子中,8位索引的前3位一般表示红色强度,第二个3位表示绿色强度,而最后2位表示蓝色强度。转换域中的索引001 100 11相应于原始域中的(48,144,224)。使用这个颜色立方体方法的缺点是由于粗糙的量化使图画的视觉品质变坏很多。特别是,例如彩色蜡笔色调和面部色彩的精致颜色很难使用这种方案显示,即使使用了并列调色(dithering)技术以分散误差也是如此。
本发明的一个目的是提供一种处理图像的方法,它减轻上述的颜色立方体方法的质量变坏。
为此,本发明提供一种处理由象素组成的图像的处理方法。一个相关的象素的颜色由一个多维颜色空间中的点格网的一个相关点表示。这个空间由相关的颜色分量的相关轴生成。该空间是一个RGB空间或YUV空间。根据本发明的过程,为每个相关轴确定一个相关范围,表示图像中的相关的元素分量。在由相关的范围确定的区域中的格网的点中选择一个子集。之后,图像被映射到这个子集上。
发明人建议使用统计地调谐的颜色立方体。一个特定颜色分量例如R分量的范围通过例如识别图像中出现的这个分量的极限值来确定。或者,随机地在原始图像中或贯穿一个帧序列来选择象素的位置。这样选择的象素的颜色定义由子集覆盖的范围。也可使用其它基于颜色内容选择范围的方法。本发明的方法使用格网但是子集的点不需要覆盖整个强度范围,它们也不必等距离分布。适合表示例如精致颜色和亮红色的颜色立方体可以由红色(70,100,120,130,140,160,200,240),绿色(70,90,110,120,130,140,150,160,180)和蓝色(90,115,135,160)强度定义。由于这个方法采用颜色立方体表示,上述的这种方法的优点很大程度上得以保留。例如,从原始的256×256×256颜色立方体到减小的统计地调谐的立方体的转换保持简单。进一步,所有视频操作还可以在转换的帧上进行。但是,一些操作可以变得更复杂,这是因为强度不是等距离分布的。对于电影的另一个优点是一个多帧序列可以使用相同的颜色立方体。这样,只需要间隔一段时间传递一个新的CLUT,一般是在场景切换时,而不是在每个独立的帧。
在不损失处理能力的情况下,RGB颜色空间可以换成不同的颜色空间,例如YUV。对于YUV,根据本发明建立的一个16×4×4的颜色立方体是很好的。显示设备中的标准CLUT可以进行从YUV至RGB和从减小的颜色立方体至原始颜色立方体的逆转换。这不需要任何额外的计算资源,这是因为颜色表查找动作由图形硬件在显示刷新频率内进行。
上述例子是用于从256×256×256颜色立方体至8×8×4颜色立方体的转换,即,从24位颜色至8位颜色的转换。应当明白颜色立方体的大小不影响上述的论点。例如,需要每象素9位的8×8×8RGB颜色立方体或32×4×4YUV颜色立方体也可运行的很好。还有,32×64×32RGB统计调谐颜色立方体可用于16位缓冲区。
与传统的图形处理方法一样,并列调色可以更加提高总体视觉效果。如已知的,并列调色是一种交叉暗和亮象素或不同颜色象素的技术,使得产生的图像从远处看起来形状更平滑。
本发明的另一个方面涉及通过提供统计调谐颜色立方体能够处理由象素组成的图像的方法。一个相关象素的一个相关颜色由多维颜色空间中的格网中的多个点中的相关的一个来表示,其中的多维颜色空间由相关颜色分量的相关轴生成。能够处理包括为每个相关轴确定相关的范围,表示图像中相关的颜色分量,和选择在由相关范围确定的区域内的格网的点的子集。
本发明以举例的方式结合附图进一步说明,其中
图1和3是说明本发明的方法的流程图;和图2和4是根据本发明的系统的方框图。
相似或相应的特征在附图中用相同的标号表示。
第一个流程1是流程图700,说明根据本发明的方法的一个例子。在步骤702接收一个输入图像或输入图像序列。在这个例子中,输入图像或序列的输入颜色用RGB格式编码。在这种格式中,每个颜色由三维输入格网中它的位置定义,三维输入格网由沿R轴,G轴和B轴的离散位置的集合生成。在这个例子中,假设输入坐标组成一个256×256×256的颜色立方体。在步骤704,根据预定的过程从输入图像或序列中选择多个点作为确定整个输入图像的颜色内容的代表。例如,象素被随机选择或在图像的几何中心区域选择的代表象素多过图像的边界附近的象素。或者是,基于每个帧或帧序列的颜色统计直方图确定最显著的颜色。也可采用其它选择标准。在步骤706,确定代表点的颜色内容。在步骤708,基于步骤706中确定的颜色,一个输出格网,即统计确定的颜色立方体被建立,作为原始格网的子集。输出格网的点不必覆盖输入格网的整个强度范围也不必是等距离分布,如上所述。请注意,输出格网的点组成一个小的颜色立方体,它是一个大的格网的一个子集,大的格网是原始颜色立方体,原始颜色立方体带有沿其轴有0至255的单位段的坐标的点。
可以基于代表象素以不同的方式建立输出格网。代表象素的每个颜色分量(红,绿,蓝)以数字格式表示。这样颜色分量可以根据大小进行排名。对于一个数字被分组的间隔,可以选择颜色空间中的相应的区域,在该区域的中心附近的输出格网的点的密度高过其边界附近的。或者是,截短输入格网的数字并为输出格网选择这些点。另一个方法是找出出现在代表象素集合中的每个颜色分量组的极值并选择相应于该组的输出格网中的点的一个分布。
在步骤710,输入图像或初始序列的每个输入图像被映射到输出格网。即,输入图像的象素从输出格网指定它们的颜色,即,统计调谐颜色立方体。它的实现是通过例如将每个原始R,G和B颜色截短至输出格网最接近的点,这是一个简单的操作。请注意,这样确定的输出格网是原始颜色立方体的一个子集,使得RGB表示法的优点很大程度上得以保留。例如,所有视频操作仍然可以在转换后的图像上进行。
输出颜色格网的建立是PC中预处理的一部分。之后,输出颜色格网被本地CPU调入RAMDAC以进行它的传统操作。
第一方框2是根据本发明的系统800的主要部件的方框图。系统800包括一个输入装置810,一个预处理器820,一个编码器830,一个解码器850,一个图形卡和一个显示器860。部件850和860一般作为PC的部件,而部件810-840属于例如内容生成器。预处理器820从输入装置810接收RGB视频数据。预处理器820为在显示端使用的每个帧或每个帧序列建立一个定制的CLUT。编码器830将RGB输入数据编码成YUV数据,一般是24位宽。在本例中,编码器830为YUV数据采用有损视频压缩方案(例如,JPEG,MPEG/H.263或部分波段(subband)编码)。解码器850接收24位YUV数据并提供输出数据,一般是8位宽,因为大多数显示器有8位处理能力。CLUT 840控制输出数据至用于显示器860的真实色彩数据的转换。如果输出格网使用等距离分布点以覆盖强度范围,则编码器830和解码器850中的视频处理保持不受任何预处理的影响。否则,编码器830和解码器850可能需要适应例如内部滤波器以保持颜色正确。
预处理器820基于输入图像的颜色内容建立一个CLUT,如对图1的描述。特定输入象素的颜色定义由作为最佳近似的子集覆盖的颜色范围。可能发生随机选择的颜色看起来集中在颜色映射图中特定不相交的区域。这样,最好是在这些区域比这些区域外选择更密集的颜色子集。请注意子集不需要由等距离采样组成。
YUV格式表示所希望的颜色的强度(Y),和蓝色差(U)和红色分量差(V)。如已知的,人眼对Y分量比U和V分量更敏感。相应的,Y分量最好比U和V分量编码成更多位以产生更好的图画。本发明特别适合于带有DVD或CD-ROM驱动器的PC或家庭影院。例如,游戏可以带有真实的视频背景。由于颜色的子集不需要覆盖显示器的整个可用范围,子集的补可用于游戏的图形部分。即,由视频图像的象素和图形图像的象素的组合而生成一个组合图像。一个特定的颜色被分配给一个特定的图形图像象素,该特定颜色被从输出格网的一个补中选出。在这种方式中,PC可以进行视频和游戏操作而不需要附加的硬件。
第二流程3示出流程图900中后面的过程,其中步骤702是视频帧的接收。图900在图700上增加了以下步骤。在步骤902,接收一个图形图像。在步骤904,步骤708中确定的输出格网的逻辑补被指定。补是,例如,能够被显示器860覆盖的颜色空间减去在步骤708中产生的输出格网的颜色。现在,在步骤902中接收的图形在步骤906被映射到这个补格网上。随后,在步骤908,被这样处理的图形和视频帧被组合成一个单一的图像。
第二方框4是根据本发明的系统1000的主要部件的第二方框图。系统1000实现图3描述的方法。
系统1000包括输入设备810,用于接收视频象素。预处理器820产生CLUT 840,代表上述的定制输出格网。同时,补CLUT1002被建立以表示CLUT 840的输出格网的补。系统1000包括一个处理器1004以分配CLUT 840的一个相关颜色至一个相关视频象素。系统1000还包括一个输入设备1006,用于接收图形数据,和一个处理器1008以分配补CLUT1002的一个相关的颜色至一个图形象素。处理器1004和1008的输出被耦合至显示设备1012中的帧缓冲区1010以将视频和图形象素两者写入至缓冲区1010。
权利要求
1.一种处理由象素组成的图像的方法,其中-一个相关象素的一个相关输入颜色由多维颜色空间中的一个格网的多个点的一个相关点表示,多维颜色空间由相关颜色分量的相关轴生成;-处理包括-为每个相关轴确定一个相关范围,表示图像中的相关颜色分量(704,706);-在由相关范围确定的区域中选择格网的点的子集(708);和-映射图像至子集(710)。
2.如权利要求1的方法,其中选择包括-选择子集的点,使得这些点在至少一个范围上有不一致的分布。
3.如权利要求1的方法,包括-通过组合图像的象素和第二个图像另外的象素而建立一个组合图像(908);和-为特定的一个另外的象素分配一个从输出格网的一个补充中选择的特定颜色(906)。
4.一种图像处理系统(800)包括-一个输入设备(810),用于接收象素,其中相关的一个象素的一个相关的输入颜色由多维颜色空间中的一个格网的多个点的相关的一个点表示,多维颜色空间由相关颜色分量的相关轴生成;-一个处理器(820),连接至输入设备,用于生成CLUT(840),处理器用于-为每个相关轴确定一个相关范围,表示图像中相关颜色分量;和-在由相关范围确定的区域中选择格网的点的子集;
5.如权利要求4的系统(1000),包括-一个第二输入设备(1006),用于接收另外的象素;-一个第二处理器(1008),连接至第二输入设备并耦合至第一个处理器,用于将输出格网的补充的一个相关颜色分配至该另外象素的相关的一个。
6.一种能够处理由象素组成的图像的方法,其中-一个相关象素的一个相关输入颜色由多维颜色空间中的一个格网的多个点的一个相关点表示,多维颜色空间由相关颜色分量的相关轴生成;并且-能够处理包括-为每个相关轴确定一个相关范围,表示图像中的相关颜色分量(704,706);和-在由相关范围确定的区域中选择格网的点的子集(708);
7.如权利要求6的方法,其中选择包括-选择子集的点,使得这些点在至少一个范围上有不一致的分布。
全文摘要
视频在基于视频帧的颜色内容的基础上进行处理。一个每帧特定或每序列特定的颜色立方体被建立以有效地使用可用带宽,并且有效地执行传统的视频操作。颜色立方体是原始颜色空间的统计调谐子集。
文档编号H04N1/46GK1272998SQ99800989
公开日2000年11月8日 申请日期1999年6月3日 优先权日1998年6月23日
发明者P·S·范德默伦, F·W·西斯特曼斯 申请人:皇家菲利浦电子有限公司