CN1918602A - 多模α图像处理 - Google Patents

多模α图像处理 Download PDF

Info

Publication number
CN1918602A
CN1918602A CNA2004800417141A CN200480041714A CN1918602A CN 1918602 A CN1918602 A CN 1918602A CN A2004800417141 A CNA2004800417141 A CN A2004800417141A CN 200480041714 A CN200480041714 A CN 200480041714A CN 1918602 A CN1918602 A CN 1918602A
Authority
CN
China
Prior art keywords
intensity
value
index
code word
image
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CNA2004800417141A
Other languages
English (en)
Other versions
CN100498838C (zh
Inventor
J·斯特伦
T·阿克尼内-默勒
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Telefonaktiebolaget LM Ericsson AB
Original Assignee
Telefonaktiebolaget LM Ericsson AB
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Telefonaktiebolaget LM Ericsson AB filed Critical Telefonaktiebolaget LM Ericsson AB
Publication of CN1918602A publication Critical patent/CN1918602A/zh
Application granted granted Critical
Publication of CN100498838C publication Critical patent/CN100498838C/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/98Adaptive-dynamic-range coding [ADRC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/184Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being bits, e.g. of the compressed video stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/186Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a colour or a chrominance component

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)
  • Color Television Systems (AREA)
  • Image Processing (AREA)

Abstract

公开了一种可按照两种不同模式进行操作的α图像编码及解码方案。在编码中,把α图像分解为包括图像元素(610)的α图像块(600)。块(600)根据两种压缩模式之一被压缩为块表示(700)。块表示(700)包括色彩码字(720)、强度码字(730)、α码字(740)以及表示码字(730,740)之一的图像元素关联索引的序列(750)。要用于块(600)的压缩和解压缩模式根据α码字(740)来确定。在高α分辨率模式中,索引序列(750)包括选择α码字(740)的量化α值(740A,740B)之一的α索引以及从强度码字(730)所表示的修改符集中选择强度修改符的强度索引。在高亮度分辨率模式中,索引序列(750)仅包括强度索引。

Description

多模α图像处理
技术领域
一般来说,本发明涉及图像处理,以及更具体来说,涉及用于对图像编码和解码的方法及系统。
背景技术
图像和图形在数据处理系统及用户终端、如计算机上、特别是在移动终端上的呈现和渲染在近些年来极大地增加。例如,三维(3D)图形和图像在这类终端上具有许多吸引人的应用,其中包括游戏、3D地图和消息传递、屏幕保护程序及人机界面。
3D图形渲染过程通常包括三个子阶段。简言之,第一阶段即应用阶段创建若干三角形。这些三角形的角在第二阶段、即几何阶段被变换、投影及变亮。在第三阶段即光栅化阶段,通常称为纹理的图像可“粘合”到三角形上,从而增加渲染图像的真实性。第三阶段通常还采用z缓冲器来执行分类。
但是,图像和纹理、特别是3D图像和图形的渲染在图形系统所需的存储器带宽及处理能力方面是计算费用高的任务。例如,纹理在两个方面都是高费用的:在存储器方面,纹理必须放入快速片上存储器或者在其中高速缓存;在存储器带宽方面,纹理可能被存取多次以绘制单个像素。
为了减小带宽和处理能力要求,通常采用图像(纹理)编码方法或系统。这种编码系统应当在渲染过程中产生昂贵片上存储器的更有效利用和较低存储器带宽,因而产生更低的功耗和/或更快的渲染。带宽和处理能力要求的这种减小对于具有少量存储空间、极少存储器带宽和有限电力(电池供电)的瘦客户机、如移动单元和电话特别重要。
除了有效且准确地对图像进行压缩和解压缩之外,一般还希望纹理压缩和解压缩系统具有管理α分量的能力。这种α分量可用来表示纹理中的透明或半透明像素或纹素,它们用于各种各样的应用。
在专利说明US5956431中,Iourcha等人公开一种称作S3TC(S3纹理压缩)或DXTC(DirectX纹理压缩)的纹理压缩方案。图像被分解为4像素×4像素的多个图像块。每个这样的图像块被编码为64位的位序列,因而产生4bpp(每像素的位数)的压缩率。64位序列包括两个基本色或色彩码字(各16位)以及2位索引的32位序列,图像块中的每个像素一个索引。在解码期间,产生四种色彩的调色板。调色板的前两个RGB(红、绿和蓝)色对应于两种基本色(码字)。然后从中内插处于RGB空间中的基本色之间的两种附加色。每个2位索引则对于各像素标识要用于那个像素的调色板的四种色彩之一。
虽然S3TC方案对于计算机终端极为适用,但它不太适合于移动单元和其它瘦客户机。这类移动单元通常仅具有最多16或32位的存储总线。因此,如果在移动单元中实现S3TC,则要求至少两次、可能多达四次的存储器存取来读出图像块的64位压缩形式。另外,在调色板的两种附加色的内插期间,执行1/3和2/3的乘法,这在硬件方面不是理想的。采用S3TC的压缩至少在移动终端上还比较费时。
S3TC方案将α纹理作为特例来处理。然后以不同方式来解释这些位,以便允许所谓的穿通α。α机制的这种简单形式把每个像素表示为完全不透明或者透明。S3TC无法处理更准确的α的事实是该系统的主要缺陷之一。
发明内容
本发明克服了先有技术方案的这些及其它缺陷。
本发明的一个一般目的是提供一种有效的图像处理。
本发明的另一个目的是提供一种有效的图像编码和图像解码。
本发明的又一个目的是提供适合用于具有小存储器和存储带宽容量的瘦客户机的图像编码和解码。
本发明的另一个目的是提供适合于包括透明和/或半透明图像元素的α图像的图像编码和解码。
如所附专利权利要求所定义的本发明满足这些及其它目的。
简言之,本发明涉及对α图像进行编码(压缩)以及对编码(压缩)图像进行解码(解压缩)的形式的α图像处理。
根据本发明,要编码的α图像被分解为包含多个图像元素(像素、纹理元素、纹素或体积元素、体素)的多个图像块。图像块优选地包括八个图像元素,并且优选地具有其中的m=3-n且n=0,1,2,3的2m×2n图像元素的大小或者其中的m、n、p=0,1,2,3且优选地m+n+p=3的2m×2n×2p的大小。块中的各图像元素由一种色彩、如24位RGB(红、绿、蓝)色以及一个α或透明度值、如8位α值来表征。然后压缩各个图像块。
在这种有损块压缩中,表示块中的图像元素的属性的多个码字被确定。此外还为块提供图像元素关联索引的索引序列。对于块中的图像元素的至少一个子集,这个序列包括与码字之一关联的索引或者根据码字之一所产生的属性表示。
本发明的块压缩可根据两种不同的α压缩模式之一来执行。通过能够更好地适应α图像中的各个图像块的属性,两种不同压缩模式的使用为编码方法提供灵活性。由于可以根据块来选择两种不同的压缩模式,因此,与具有单(固定)α编码的先有技术α适应编码方法相比,所处理图像的图像质量得到改进。本发明的第一压缩模式提供高α分辨率。这种模式特别适合于压缩具有可变α值的图像元素的图像块。第二压缩模式是高亮度分辨率模式,它比第一模式更好地保留亮度(强度)分量,但是以更低的α分辨率为代价。
本发明的两种压缩模式产生图像块的压缩表示,它包含色彩码字、强度码字、α码字和索引序列。
α码字包括作为块中的图像元素的至少一个α值的表示的多个量化α值。要用于当前图像块的压缩模式的实际选择基于这个α码字,优选地基于α码字的量化α值的至少一个、例如基于α码字的多个量化α值的比较。在本发明的一种实现中,如果多个量化α值不同,则选择第一压缩模式,而在所有量化α值相等时,则使用第二压缩模式。在一种备选实现中,量化α值之一具有组合α编码以及模式表示功能性。在这样一种情况中,这个量化α值用于确定操作模式。
色彩码字是图像块中的图像元素的色彩的表示。相应地,强度码字是用于修改块中的图像元素的强度的多个强度修改符的集合的表示。强度码字优选地是对于包含多个强度修改符集的强度表的索引或指针。在这样一种情况中,强度码字与这多个修改符集其中之一关联。强度表可包含两种压缩模式共同的修改符值。或者,可采用具有模式适应强度修改符值的模式特定的强度表。
在第一压缩模式中,索引序列包括α索引子序列和强度索引子序列。对于块中的图像元素的至少一部分中的各图像元素,α索引子序列又包含与来自α码字的多个量化α值的某个量化α值关联的α索引。在本发明的一个优选实施例中,对于块中的图像元素的第一部分中的各图像元素,这个α索引子序列包含与多个量化α值其中之一关联的α索引。块中的图像元素的第二剩余部分中的各图像元素与来自多个量化α值的预定义量化α值关联。因此,对于第二部分的这个(这些)图像元素不需要α索引。
对于至少一个图像元素的各子集,强度索引子序列包含与来自关联强度码字的强度修改符集的强度修改符相关联的强度索引。在这种压缩模式的第一实施例中,块中的一对(相邻)图像元素共用同一个强度索引。因此,强度索引子序列对于具有八个图像元素的图像块则包含四个强度索引。在这种压缩模式的第二实施例中,每个图像元素具有自己的强度索引。但是,强度索引则优选地与来自强度修改符集的子集或者来自包含比结合成对关联索引所使用的修改符集更少的修改符值的修改符集的强度修改符相关联。
在第二压缩模式中,对于图像块中的各图像元素,索引序列包含与来自强度修改符集的强度修改符关联的强度索引。
在第二压缩模式中,对于块中的图像元素,没有α索引是可用的。因此,块的所有图像元素将与同一个α值关联。这应当与其中的每个图像元素与α值关联的第一压缩模式相比。
在本发明的一个优选实施例中,图像块的压缩表示是32位序列,而与所使用的压缩模式无关。这个压缩图像块则优选地包括9位色彩码字、3位强度码字、4位α码字、第一压缩模式中的15位索引序列或者其中的一位在第二压缩模式中由α码字共用的16位索引序列、以及表明图像块是α图像块的1位模式索引。
在解码期间,应当被解压缩的压缩图像块被识别并且例如从存储单元中取出。一旦识别正确的压缩图像块,要用于此块的解压缩模式则根据α码字来确定。
此后,对于图像块的图像元素的至少一个产生色彩表示。这个色彩生成根据压缩块表示中的色彩码字来执行。强度修改符集采用强度码字、优选地通过从强度表中识别修改符集来提供。要用于应当被解码的图像元素的强度修改符则根据与图像元素关联并在强度索引序列中找到的强度索引从所提供的修改符集中选取。一旦选择了正确的强度修改符值,则采用这个值来修改图像元素的强度。
正确的量化α值在第一模式中采用α索引或预定义关联来识别。在第二模式中,所有量化α值都相等,因此不需要对它进行选择。对于图像元素,根据已识别的量化α值来产生α值。
由于编码图像块的较小(32位)大小,本发明极适合于具有有限存储容量和带宽的瘦客户机。另外,编码极为迅速,使得还可在具有低时钟频率的终端中执行。此外,解码可极简单地通过例如仅使用几个标准组件的硬件来实现。
本发明提供以下优点:
-由于可使用适合不同α图像块的两种可能的压缩和解压缩操作模式的灵活性而为α图像提供高质量(峰值信号/噪声比);
-解码的硬件实现极为简单;
-编码器和解码器可易于扩展为还管理非α图像块及非α图像;
-编码极为迅速,它还允许在具有低时钟频率的终端中实现;
-在计算机上以可行速度进行的穷举编码是可能的;以及
-编码图像数据的大小适合具有有限存储容量和带宽的瘦客户机。
通过阅读以下对本发明的实施例的描述,将会了解本发明提供的其它优点。
附图说明
通过以下参照附图进行的描述,可以极好地理解本发明以及其它目的和优点,附图包括:
图1是流程图,说明根据本发明的图像编码方法的一个实施例;
图2A和图2B说明根据本发明的图像块的实施例;
图3A至图3C说明图像块的压缩表示的实施例;
图4是流程图,说明图1的图像编码方法的附加步骤;
图5是流程图,更详细地说明图1的α码字确定步骤;
图6是流程图,更详细地说明图1的确定色彩码字、提供强度码字以及提供强度索引序列的步骤;
图7是流程图,说明根据本发明的图像解码方法;
图8是流程图,说明图7的图像解码方法的附加步骤;
图9是流程图,更详细地说明图7的色彩表示生成步骤;
图10是流程图,更详细地说明图7的提供修改符集、选择修改符、修改强度以及产生α值的步骤;
图11示意说明具有根据本发明的图像编码器和解码器的用户终端的一个实例;
图12是框图,示意说明根据本发明的图像编码器的一个实施例;
图13是框图,示意说明根据本发明的图像编码器的另一个实施例;
图14是框图,示意说明根据本发明的块编码器的一个实施例;
图15是框图,更详细地示意说明图14的块编码器的色彩量化器;
图16是框图,更详细地示意说明图14的块编码器的强度量化器;
图17是框图,更详细地示意说明图14的块编码器的α量化器;
图18是框图,更详细地示意说明图14的块编码器的索引选择器;
图19是框图,示意说明根据本发明的图像解码器的一个实施例;
图20是框图,示意说明根据本发明的图像解码器的另一个实施例;
图21是框图,示意说明根据本发明的块解码器的一个实施例;
图22A和图22B是硬件框图,示意说明根据本发明的块解码器的一个实施例;
图23是硬件框图,更详细地说明图22A和图22B中使用的位扩展器的第一形式的一个实施例;
图24是硬件框图,更详细地说明图22A和图22B中使用的位扩展器的第二形式的一个实施例;
图25是硬件框图,更详细地说明图22A和图22B的钳位器的一个实施例;
图26是硬件框图,更详细地说明图22A和图22B的表查找的一个实施例;以及
图27是硬件框图,更详细地说明图22A和图22B的表查找的另一个实施例。
具体实施方式
在所有附图中,相同的参考标号将用于相应或相似的元件。
本发明涉及图像和图形处理,以及具体来说,涉及对α图像进行编码或压缩以及对编码(压缩)α图像进行解码或解压缩。
一般来说,根据本发明,在图像编码期间,图像被分解或分为多个图像块。每个这样的图像块则包括其中还具有图像元素关联属性、某种色彩以及关联α或透明度值的多个、即至少两个图像元素。然后,可对图像块编码或压缩以产生图像的编码表示。
当编码图像要在屏幕上显示或者与编码图像关联的几何图元要被呈现时,编码图像块的相关图像元素被识别和解码。这些解码图像元素则可用来产生原始图像的解码表示供显示,或者它们可用于呈现几何图元。
本发明极适合与三维(3D)图形和图像配合使用,例如照片、文本以及“合成”图像,它们均可用于诸如游戏、3D地图和画面、3D消息、如动画消息、屏幕保护程序、人机界面(MMI)等的应用中,但是不限于此。因此,本发明还可用于对其它类型的图像或图形进行编码,例如一维(1D)、二维(2D)或3D图像。
在本发明中,表达“图像元素”表示图像块中的元素或者图像块的编码(压缩)表示。这种图像块又对应于图像或纹理的一部分。因此,根据本发明,图像元素可能是(1D、2D或3D)纹理的纹素或者(1D、2D或3D)图像的像素。相应地,图像元素可能是3D纹理或图像中的体素。一般来说,图像元素由某些图像元素相关的属性、如色值和α或透明度值来表征。此外,以下的术语“图像”用来表示可通过本发明来编码和解码的任何1D、2D或3D图像或纹理。
在图像处理领域,α值用来表示图像元素的透明度属性。一般来说,若0≤α_value≤1且0≤透明度≤1,则α值通常被定义为α_value=1-透明度。因此,1的α值在这个定义中对应于不透明或不透明性(透明度为1),而0的α值则表示全透明(透明度为1)。虽然α值的这个定义在本领域是最常见的,但本发明不限于此。因此,根据本发明,图像元素的α值实际上可根据所使用的α值透明度关系来表示那个图像元素的任何透明度属性。
一般来说,图像中的图像元素的α值可采取从通常表示全透明的最小α值、如0或0.0直到通常表示不透明或不透明性的最大α值、如255或1.0的值。这些极限之间的α值则表示半透明。如果图像包括具有与表示不透明的预定义值、如上述最大值不同的关联α值的至少一个图像元素,则它通常被定义为所谓的“α图像”。在一些应用中,如果图像的至少最小数量的多个图像元素具有与预定义不透明值不同的相应α值,则图像被分类为α图像。在这两种实现中,表示不透明的多个值的预定义区间、例如213-255或0.84-1.0可用来代替单个预定义的不透明值。在这种情况中,如果至少一个图像元素或者最小数量的图像元素的α值没有处于不透明区间内,则图像被分类为α图像,否则它是所谓的非α图像或无α图像。
相应地,如果它包含的图像元素或者至少最小数量的图像元素的至少一个具有与预定义不透明值不同或者不处于不透明区间内的α值,则图像块通常被分类为“α图像块”。非α或无α块则包括具有等于不透明值或者处于不透明区间内的α值的图像元素。
本发明预计,“α图像”的图像元素除了其相应的α值之外还具有关联的色彩值。因此,本发明的α图像可以是所谓的RGBA图像。还要注意,根据本发明的α图像可能仅包含α图像块或者α和非α图像块的组合。
图像编码
图1是根据本发明、对α图像编码的(有损)方法的一个实施例的流程图。在第一步骤S0,图像被分解或分为多个图像块。每个这样的图像块则包括多个图像元素。在本发明的一个优选实施例中,图像块包括八个图像元素(像素或纹素),并且具有2m×2n图像元素的大小,其中m=3-n且n=0,1,2,3。更优选地,n为1或2。图2A和图2B示意说明根据本发明、具有八个图像元素610的图像块600的两个实例。在图2A中,高度为两个图像元素610,以及宽度为四个图像元素610,即m=1和n=2,而对于图2B中的图像块600,m=2和n=1。相应地,当压缩3D图像时,优选图像块大小可能是2×2×2图像元素(体素)。但是,本发明不限于具有8个图像元素的块,而是或者可能与具有少于或多于八个图像元素、例如4×4图像元素的图像块结合使用。
再看图1,整个图像块优选地在步骤S0中分解为(非交迭)图像块。但是,在一些应用中,只有图像的一部分被编码,因而只有这个部分才被分解为图像块。
在步骤S1,对当前图像块确定α码字。这个α码字包括表示块中的图像元素的至少一个α值的多个量化α值。在下一个步骤S2,要用于图像块的α块压缩或编码模式根据已确定α码字来选取,优选地根据码字的量化α值的至少一个来选取。在这个模式选择的第一实现中,步骤S2根据量化α值的比较来执行。因此,如果量化α值不同,则对于此块选取本文中称为PAA(Packman-Alpha-Alpha)模式的第一α块压缩模式,而如果量化α值相等,则应当采用本文中称为PAT(Packman-Alpha-Twotimer)模式的第二α块压缩模式。在这个模式选择的第二实现中,量化α值之一具有组合α编码以及模式表示功能性。在这种情况中,这种模式关联量化α值的实际位模式发信号通知要使用的压缩模式。例如,如果这个模式关联量化α值为00bin、01bin或10bin,则应当采用PAA压缩模式,否则(11bin)采用PAT模式。
但是,两种压缩模式优选地产生压缩图像块表示,其中除了α码字之外还包含色彩码字、强度码字和索引序列。另外,两个不同编码块的所产生位大小在位的数量方面优选地相等。
在PAA压缩模式中,不同的α值可根据α码字和索引序列分配给块中的图像元素。相比之下,在可看作是PAA压缩模式的补充或辅助模式的PAT模式中,单个α值根据α码字分配给块中的所有图像元素。但是,PAT压缩模式采用图像元素的更高亮度(强度)分辨率来补偿这种较低的α分辨率。因此,PAA压缩模式特别适合于压缩具有不同α值的图像元素的图像块。PAT压缩模式优选地用于具有相似α值的图像块,并且将比PAA模式更好地保留块的亮度分量(但以更低的α分辨率为代价)。
首先描述PAA模式或第一α块压缩模式。在步骤S3,为图像块确定色彩码字。这个色彩码字是图像块中的图像元素的色彩的表示。在一个优选实施例中,色彩码字是块的图像元素的平均色的表示。色彩可能是RGB(红、绿、蓝)色、YUV空间或者YCrCb空间中的色彩、或者用于图像和图形处理及管理的其它任何色彩空间中的色彩。色彩码字优选地采用与原始图像相同的色彩格式(空间)。但是,在一些情况中,可能有用的是,将图像转换为不同的色彩格式,即,在第一色彩空间中具有色彩码字以及在第二个不同的色彩空间中具有原始图像。色彩码字优选地为9位色彩表示序列。例如,RGB色彩码字可包括用于红色分量的3位、用于绿色分量的3位以及用于蓝色分量的3位。
此后,在步骤S4提供强度码字。这个强度码字是(在解码期间)用于修改图像块中的图像元素的强度的一组多个强度修改符的表示。
在本发明的一个优选实施例中,强度码字为允许标识强度修改符集的索引或表示。这个索引则可标识或指向包含若干不同的强度修改符集的强度表或码本中的集合。每个集合包括两个或两个以上强度修改符值,优选地至少四个修改符值。在一个优选实施例中,集合的修改符值为数学上互补的值,即每个集合优选地是对称的。
强度表优选地包括一些集合,其中包含适合允许平滑变化表面的表示的小强度修改符值。另外,该表优选地还包括一些集合,其中包含适合允许陡沿的表示的大强度修改符值。
表中的集合的实际强度修改符值可通过以随机值开始、然后采用本领域的技术人员已知的诸如LBG算法(Linde、Buzo和Gray)[2]的一些版本、模拟退火和坐标搜索之类的多个不同优化方案及算法对这些值进行优化来找出。不同类型的大量图像可用作训练数据,其中可能仅包含α图像或者同时包含α以及非α图像。
为了使强度表的硬件实现费用更低,如上所述,集合的强度修改符可能必需是对称的,和/或给定集合的强度修改符可能是按某个因子、例如二进行修改的另一个集合的强度修改符的副本。
表1说明包含强度修改符的8个集合的强度表的一个实例,其中每个集合具有四个修改符值。
                                表1
  集合   码字   强度修改符值
  12345678   000bin001bin010bin011bin100bin101bin110bin111bin   -10-32-48-127-20-64-96-254   -3-9-13-41-6-18-26-84   3913416182684   103248127206496254
在表1中,强度修改符集5-8是与因子二相乘的集合1-4的副本。
如果强度表包括最多8个不同的强度修改符集,则强度码字优选地为3位索引(000bin-1111bin),标识表的(八个)集合之一,例如,[-32,-9,9,32]用于码字001bin。由于集合中的修改符值的仔细选择,整个表1可以仅采用八个修改符值来重构,以及其余24个值可从其中计算。
但是,本发明不限于表1的使用,而是可采用具有其它强度修改符集和值的其它表。此外,对于表中多于或少于八个集合,强度码字的大小也可能必须改变。例如,如果表包括两个(3-4个或者多于8个)强度修改符集,则强度码字大小可限制为一位(两位或四位(或者四位以上))。另外,每个集合的强度修改符值的数量可能不同于四,例如每个集合可能使用五个值,从而给出[-32,-9,0,9,32]的实例。
表中的集合的强度值可采用若干不同类型的图像作为训练数据来确定,如以上所述。但是,如果只有一种特定图像类型要被编码,则修改符值可采用对应于那个图像类型的训练数据来确定,即给出专用于特定图像类型的强度表。还可能能够具有含适合于特定图像的强度修改符值的强度表。在这些情况、即专用于图像或图像类型的表的情况中,可能必需在编码图像块的压缩文件中包含表的强度修改符值,或者将它们与其关联。
注意,由于根据本发明采用两种不同的α块压缩模式,因此单个强度表可用于两种模式。但是,在某些实现中,构造并使用适合于根据PAA模式进行压缩的α图像和块的第一强度表以及适合于根据PAT模式进行压缩的图像和块的第二个不同的强度表,可能更为有利。同样,公共强度表可用于α以及非α图像。但是,在大多数应用中,更为有利的可能是,在压缩非α图像时使用“非α”强度表,而在压缩α图像时使用一个或数个不同的专用“α”强度表,下面会进一步论述。
另外,强度码字也不必是对表中的强度修改符集的指针,而在实际上可能是强度修改符集本身,例如包含两个修改符值、如9和32,以及在其中其它修改符值、如-9和-32可由这两个值来确定。或者,所采用的强度修改符集可能按照[-ka,-a,a,ka]或者[-k2a,-k1a,k1a,k2a],其中a为0或正整数,k、k1和k2为放大系数。在这样一种情况中,如果k或k1和k2是预定义的放大系数,则强度码字仅需要包含值a,而其余的全部三个值可从其中计算。
一旦在步骤S4中提供了强度码字,则下一个步骤S5选择图像块中的图像元素的强度索引或表示。每个这种强度索引与来自步骤S4所提供的强度修改符集的一个强度修改符值关联。换言之,强度索引允许标识集合的哪一个强度修改符用于块的至少一个图像元素的特定子集。
在强度修改符集包含四个修改符值、诸如-32、-9、9、32的情况中,强度索引可能是标识这四个值之一的2位序列。
在这种PAA压缩模式的一个实施例中,强度索引与块中的多个图像元素、优选地为两个图像元素以及更优选地为两个相邻图像元素的子集关联并被分配到其中。简言之,再来看图2A和图2B,两个相邻图像元素的这种子集可由图2A或图2B中的图像元素610A、610B或者图2A或图2B中的图像元素610A、610C来表示。这意味着,与每个图像元素与自己的强度索引关联的情况相比,亮度分辨率将减半。
在这种PAA压缩模式的另一个实施例中,块中的每个图像元素与自己的强度索引、优选地与1位强度索引关联。因此,如果压缩块的大小要保持相同,则对于各图像元素,可以仅对来自强度修改符集的强度修改符的子集、优选地为其中的两个进行索引。如果修改符集包括四个不同的修改符值、例如-32、-9、9、32,则修改符的这个子集可包括最小和最大修改符、即-32和32。或者,子集可包括值-9或9或者来自该集合的优选为两个修改符值的其它任何组合。因此,在PAA压缩模式的这个实施例中,每个图像元素与各自的强度索引关联。但是,这通常以块中的图像元素的减少数量的可用修改符值为代价来得到。
在本发明的另一个实施例中,结合上述两个实施例。在这样一种情况中,在PAA模式中存在基于块的选择:为每对图像元素分配强度索引还是分别分配给图像元素。强度模式索引则可被产生并添加到压缩块表示中。例如,如果这个强度模式索引为0bin(1bin),则为图像元素对分配强度索引,并且集合的所有修改符值可用。但是,如果强度模式索引为1bin(0bin),则分别对图像元素分配强度索引,并且仅有集合中的修改符值的子集可用。
在专用强度模式索引的使用的一个备选实现中,所使用的强度表可经过修改。在这样一种情况中,包含修改符集的一部分包括最大数量的修改符值、优选地为四个这样的值,而其它修改符集则包括少于这个最大数量的修改符值、优选为两个值。上表1则可由下表2取代:
                            表2
  集合   码字   强度修改符值
  123   000bin001bin010bin   -12-47-127   -4-19-42   41942   1247127
  4   011bin   -30   30
  567   100bin101bin110bin   -24-94-254   -8-38-84   83884   2494254
  8   111bin   -127   127
因此,强度码字011bin或1111bin在这个说明性而非限制性的实例中对应于强度模式索引1bin,即,强度索引分别分配给图像元素,以及可用强度修改符值对于强度码字011bin(111bin)为-30和30(-127和127)。其余的强度码字与各包括四个修改符值的修改符集关联,并且发信号通知强度索引应当分配给图像元素对。
在表2的一种修改形式中,修改符集、因而强度码字的一半可能与第一强度模式关联,而剩下的一半则与第二强度模式关联。但是,由于预计第一强度模式(成对索引分配及最大数量的修改符值)将用于按照PAA模式压缩的大部分α块,因此,与第二强度模式相比,更多的强度码字和修改符集优选地与这个第一强度模式关联,如表2所示。
根据所使用的实现,步骤S5优选地对于图像元素的所有子集、优选地对于所有相邻图像元素对或者对于图像块中的所有图像元素重复进行,由线条L1示意所示。
下一个步骤S6选择图像块中的图像元素的α索引或表示。每个这样的α索引与来自步骤S1所确定的α码字的一个量化α值关联。换言之,α索引允许标识哪一个α值用于块的特定图像元素。在PAA压缩模式的一个优选实现中,α码字包括两个量化α值αA和αB,每个优选地为2位量化α值。因此,每个量化α值可能潜在地表示四个不同α值的集合中的一个α值。例如,假定α值的这个集合为0、85、170、255或者相应的0.0、0.3333、0.6667、1.0,则00bin的量化α值可能表示0(0.0),01bin表示85(0.3333),10bin表示170(0.6667),以及255(1.0)由11bin表示。
在第一实施例中,块中的每个图像元素与各自的α索引关联。但是,在产生压缩块表示的更小总大小的本发明的一个优选实施例中,块中的图像元素的子集与预定义量化α值(从第一αA或第二αB量化α值中选取)关联。因此,不需要对这个(这些)图像元素执行α索引的选择或分配。例如,第一(最后一个)图像元素可能始终与第一(或第二)量化α值关联。索引序列则不需要包含这个第一(最后一个)图像元素的α索引。因此,在具有总共八个图像元素的图像块的情况下,该序列仅包含七个图像元素关联的α索引。本发明预计,一个以上图像元素可与量化α值预先关联。应当注意,由于量化α值表示优选地基于一对一的α值,因此将α索引与量化α值关联的步骤还包括将α索引与α值关联。
步骤S6优选地对于块中的图像元素、更优选地对于除了具有预定义量化α值关联的图像元素之外的所有图像元素重复进行,由线条L2示意说明。
步骤S1至S6的压缩的结果是压缩图像块,或者更准确地说是图像块的压缩(编码)表示。这样一种压缩块表示700如图3A所示。表示700包括:色彩码字720,包含三种色彩分量R 720A、G 720B和B 720C;强度码字730;α码字740,包含两个量化α值αA 740A和αB 740B;以及图像元素索引的序列或位图750。这个索引序列750优选地包括具有α索引750A的第一子序列以及具有强度索引750B的第二子序列。另外,压缩块表示700优选地包括α块索引710,把图像块标识为α图像块。在图像仅包括所谓的α块的情况中,这个α块索引710可被省略。
注意,压缩图像块700的α块索引710、色彩码字720及其包含色彩分量720A至720C、强度码字730、α码字740及其包含量化α值740A和740B、以及索引序列750及其包含子序列750A和750B的相互顺序可能与图中所示不同。还要注意,码字和索引序列不需要连续地排列。
如果图像块包括八个图像元素(例如参见图2A和图2B),以及各强度索引为2位,并且为每个图像元素对分配强度索引,则强度索引子序列750B的大小为8位。当采用与块中的各图像元素关联的1位强度索引时,也得到这种相同的8位大小。此外,假定α码字740的相应大小为4位,以及α索引子序列750A包括用于八个图像元素中的七个的1位α索引(图像元素之一则预定义成与第一(或第二)量化α值关联),因而得到用于子序列750A的7位。如果色彩720和强度730码字的大小分别为9位和3位,并且α块索引710为1位,则图像块的编码表示700的总大小为32位,得到4bpp的压缩率。表示700的这个小的大小极适合于通常具有16或32位的存储总线的瘦客户机,如移动单元。因此,则仅需要一次或者最坏情况下为两次存储器存取来读出编码表示700。
再来看图1,如果步骤S2的模式选择表明而是应当选取PAT模式或第二α块压缩模式,则方法继续进行到步骤S7。在这个步骤S7,为块中的图像元素确定色彩码字。这个步骤S7基本上对应于步骤S3,并且不再进一步论述。在下一个步骤S8,为图像块提供强度码字,与步骤S4相似。但是,在不同强度表用于两种α块压缩模式的情况中,步骤S8中提供的强度码字采用专用于PAT压缩模式的表来获得,而步骤S4中提供的强度码字则采用适合于这种PAA模式的表来获得。
一旦在步骤S8中提供了强度码字,则下一个步骤S9选择图像块中的图像元素的强度索引或表示。每个这种强度索引与来自步骤S8所提供的强度修改符集的一个强度修改符值关联。在这种PAT压缩模式中,每个图像元素优选地与强度索引关联,从而为具有八个图像元素的图像块提供总共八个强度索引。
步骤S9优选地对于块中的所有图像元素重复进行,由线条L3示意表示。
注意,在这种PAT压缩模式中,没有为图像元素提供α索引。这是因为所有图像元素都与同一个量化α值(因而α值)关联。在PAA压缩模式中,α码字优选地包括两个量化α值αA和αB,每个优选地包含分别为αA0、αA1和αB0、αB1的两位。但是,在这种PAT压缩模式的第一实现中,αA0=αB0以及αA1=αB1,并且本文中表示为“有用”或者数据携带量化α值的量化α值中只有一个才会在块的解码期间使用。在一个备选实现中,αA是模式关联的量化α值,即等于例如11bin的PAT特定的位模式。剩下的量化α值αB则是有用的量化α值。
这个有用的量化α值的所有位可用于对α值表示进行编码。在一个备选实施例中,有用量化α值中只有一位将用于α值表示。在后一种情况中,量化α值、因而α码字通常可能仅表示两个可能的α值中的一个,例如85(0.3333)或170(0.6667)。
在有用量化α值中只有一位用作α值表示的情况中,这个量化α值的其余位优选地与(强度)索引序列共用。因此,步骤S9可看作包括通过根据与图像元素之一、通常为块中的第一图像元素关联的强度索引的一部分的比特值(重新)设置α码字的有用量化α值的一位来修改α码字的子步骤。
步骤S1、S2和S7至S9的压缩的结果是压缩图像块。这样一种压缩块表示700如图3B所示。表示700包括:色彩码字720,包含三种色彩分量R 720A、G 720B和B 720C;强度码字730;α码字740,包含两个量化α值αA 740A和αB 740B。图中,量化α值αA 740A是量化α值αB 750B的副本(或者等于11bin)。另外,由于有用量化α值740B中只有单一位α将用于α目的,因此,在这个实现中,其余的位将与强度索引序列750共用。与图3A相似,压缩块表示700优选地包括α块索引710,把图像块标识为α图像块。在图像仅包括所谓的α块的情况中,这个α块索引710可被省略。
注意,压缩图像块700的α块索引710、色彩码字720及其包含色彩分量720A至720C、强度码字730、α码字740以及索引序列750的相互顺序可能与图中所示不同。还要注意,码字和索引序列不需要连续地排列。
如果图像块包括八个图像元素(参见例如图2A和图2B),以及各强度索引为2位,并且为块中的每个图像元素分配强度索引,则强度索引序列750的大小为16位,其中的一个与α码字740共用。此外,还假定色彩720、强度730和α740码字740的相应大小分别为9位、3位和4位,并且使用1位α块索引。图像块的编码表示700的总大小则为32位,并得到4bpp的压缩率。
步骤S1至S9优选地对于步骤S0的分解期间所提供的所有图像块重复进行(由线条L4示意表示)。结果则是压缩图像块的序列或文件。所得压缩图像块可在文件中从左到右、从上到下、以它们在步骤S0的块分解中被分解的相同顺序来排序。然后,该方法结束。
由于两种压缩模式的结果,在一些示例中,编码图像将包括仅按照PAA或PAT压缩模式进行压缩的图像块。但是,对于大多数实际的实现,编码图像通常包括按照PAA模式进行压缩的一些块表示以及按照PAT模式进行压缩的另外一些块表示。
编码图像可提供给存储器以便在其中存储,直到图像的后续呈现、例如显示为止。此外,编码图像可作为编码块表示的信号被提供给发射器,以便(无线或有线)传送给另一个单元。
如果相同的强度表用于两种压缩模式中(步骤S4和S8),则图1的流程图中所述的压缩方法可能经过修改,使得色彩码字的确定(步骤S3或S7)以及强度码字的提供(步骤S4或S8)在步骤S2的压缩模式的选择之前执行。在这样一种情况中,PAA模式的特有步骤是强度索引序列的提供(步骤S5)以及α索引序列的提供(步骤S6)。相应的PAT特定步骤将是强度索引序列的提供(步骤S9)。
图4是流程图,说明图1的图像压缩方法的附加步骤。该方法从图1中的步骤S0继续进行。在下一个步骤S10,确定当前图像应当编码为α图像还是编码为非α或无α图像。这种选择可基于与图像关联的全局α图像索引。或者,选择是基于图像的图像元素的α值或属性的分析。因此,如果至少一个图像元素或者至少最小数量的多个图像元素的α值与预定义的不透明值不同或者没有处于不透明区间内,则图像被分类为α图像,否则它是非α图像。
如果在步骤S10断定图像应当编码(压缩)为α图像,则方法继续进行到步骤S11。这个步骤S11分析分解图像的图像块,并确定它们应当编码为α块还是编码为非α块。这种分类优选地通过分析块中的图像元素的α值来执行。与以上所述相似,如果图像块的至少一个图像元素或者至少最小数量的多个图像元素的α值与预定义的不透明值不同或者没有处于不透明区间内,则该块被分类为α块,否则它是非α块。
在本发明的一个备选实施例中,步骤S11所分析的块中的图像元素的相应α值在进行压缩模式的判定(α块模式或非α块模式)之前首先被量化。如以上结合α码字的论述简要提及的,码字的量化α值优选地可表示从可用α表示值,例如0.0(0)、0.3333(85)、0.6667(170)、1.0(255)的集合中选取的值。在这样一种情况中,图像元素的α值首先可量化为从这个集合中选取的值。例如,假定要压缩的图像块的α值如下所示:
  0.95   0.98   0.90   0.99
  0.85   0.95   0.91   0.92
此外还假定单一预定义α值1.0(255)表示不透明。因此,如果这个块的分类将在量化之前进行,则它将被分类为α块,因为所有图像元素都具有与不透明值1.0不同的α值。但是,如果块的各α值首先被量化为可能的值0.0、0.3333、0.6667、1.0其中之一,则分类将会不同。在那种情况中,所有量化α值将为表示不透明的1.0,并且块应当压缩为非α块。
如果块具有以下α值,
  0.95   0.98   0.90   0.99
  0.85   0.95   0.91   0.72
则最后一个图像元素的α值将被量化为0.6667(其它所有的值将被量化为1.0)。在这个实例中,这个块被分类为α块,因为图像元素的至少一个具有与预定义不透明值1.0不同的(量化)α值。但是,由于块中的其余图像元素具有(非常)接近不透明值的α值,因此,从压缩质量的观点来看,将块压缩为非α块可能是最佳的。在这样一种情况中,可通过采用不透明值的区间来替代单一预定义不透明值,和/或通过要求至少两个图像元素具有与预定义不透明值不同的关联量化α值,来执行步骤S11的分类。
如果步骤S11把当前图像块分类为α块,则方法继续进行到图1的步骤S1。但是,如果该块在步骤S11中而是被分类为非α或无α块,则方法继续进行到步骤S12。在这个步骤S12,图像块采用本文中称为PAP(Packman-Alpha-Packman)模式的非α块模式或第三压缩模式来压缩。这种PAP压缩模式包括确定块的色彩码字、优选地为12位色彩码字(每个R、G、B色彩分量用4位)。另外,还与以上结合图1所述的PAA和PAT模式类似地提供强度码字。这个强度码字优选地是对于强度表中找到的一组多个强度修改符的3位索引。这个强度表可能是两个α块压缩模式(PAA和PAT)以及这个非α块压缩模式(PAP)共用的表。但是,采用适合于非α块的专用强度表可能是有利的。此后提供强度索引,优选地为块中的每个图像元素2位强度索引。这些索引各与来自修改符集的强度修改符之一关联。图3C说明按照这种PAP模式进行压缩的图像块700。除了色彩码字720、强度码字730和强度索引序列750之外,压缩块表示700优选地还包括1位非α块索引710,表明该块已经采用PAP压缩模式进行压缩。注意,采用PAA和PAT模式(图3A和图3B)以及采用PAP模式(图3C)进行压缩的图3A-3C的图像块700的大小优选地为相等,以及更优选地为32位。
来看图4,步骤S11的块分类以及图1的步骤S1-S9或者步骤S12的块压缩优选地对于应当被压缩的α图像的图像块重复进行,由线条L5示意所示。
由于PAA、PAT和PAP模式的结果,在一些示例中,编码α图像将包括仅按照这些模式之一进行压缩的图像块。但是,对于大多数实际的实现,这样一种编码α图像通常包括按照PAA模式进行压缩的一些块表示(图3A)、按照PAT模式进行压缩的一些块表示(图3B)以及按照PAP模式进行压缩的一些块表示(图3C)。
如果图4中的步骤S10的图像分析确定图像应当编码为非α图像(无α图像),则方法继续进行到可选步骤S13。在这个步骤S13,要用于当前块的非α图像压缩模式被选取。在仅有单个这种非α图像压缩模式可用的情况中,在步骤S13中不需要模式选择。在下一个步骤S14,图像块采用这种(可能所选的)非α图像模式来压缩。一个优选的这种非α图像模式在本文中表示为PA(PAckman)模式。简言之,在那种PA压缩模式中,为每个图像块产生12位色彩码字、4位强度码字和16位强度索引序列,从而产生32位的总大小。在PA压缩方案的扩展中,两种非α图像压缩模式之间的选择可对于每个块进行,分别称为PP(Packman-Packman)和PC(Packman-CCC)模式。在这样一种情况中,步骤S13按照块来选择PP或PC模式的哪一种要用于当前块。PP模式与PA方案相似。但是,压缩图像块优选地包括1位PP模式索引和3位强度索引而不是4位强度索引。PC压缩模式采用两个色彩码字而不是一个色彩码字和一个强度码字。因此,按照这种PC模式压缩的图像块优选地包括1位PC模式索引、两个12位色彩码字以及优选地包含对于块中除一个图像元素以外的所有图像元素的两个色彩码字之一的1位色彩索引的7位色彩索引序列。剩余的图像元素则具有与第一(或第二)色彩码字的预定义关联,使得对于那个图像元素不需要色彩索引。
步骤S13和S14优选地对于应当被压缩的非α图像中的所有图像块重复执行,由线条L6示意表示。
图5是流程图,更详细地说明图1的α码字确定步骤。该方法从图1中的步骤S0继续进行。在下一个可选步骤S20,图像元素的α值被量化为预定义集合可用的量化α值的值。如前面所述,如果每个量化α值包括2位,则预定义集合优选地包含四个这样的值。例如,这些值可能是0.0、0.3333、0.6667、1.0,它们在具有多达256(512或1024)个不同α值的情况中表示值0(0或0)、85(170或341)、170(341或682)、255(511或1023)。在备选实施例中,该集合而是可按照以下备选之一:0.0,0.50,0.75,1.0;0,0.25,0.50,1.0;0,0.25,0.75,1.0或者区间0至1中的其它一些适当的四个值(它们对应于0和255、511、1023之间、即0和2n-1之间,其中n为整数)。但是,在PAT压缩模式中,仅采用“有用”量化α值的单一位。因此,量化α值则仅可从优选地组成上述四个值的子集的两个可能的值、例如0.3333和0.6667或者0.0和1.0中选取。
在任一种情况中,一旦α值已经量化,要用于α码字的两个量化α值则在步骤S21中选取。这些量化α值应当是来自最好地表示块中的图像元素的(量化)α值的集合的那两个值。
假定当前块具有以下α值:
  0.60   0.30   0.85   0.92
  0.00   1.00   0.80   0.98
在步骤S20,α值被量化为集合0.0、0.3333、0.6667、1.0的值。
在这样一种情况中,上述块将由以下量化值来表示:
  0.6667   0.3333   1.0   1.0
  0.0   1.0   1.0   1.0
要使用的最佳量化α值可通过在可用值当中执行搜索以及计算误差值来找出:
其中
Figure A20048004171400342
是图像元素i的量化α值,pi∈两个量化α值的子集,以及N为块中的图像元素的总数。这对于所有量化α值对重复进行,以及使误差最小的两个这样的量化α值将被选作α码字。在以上的示例块中,第一量化α值可能是0.0,而第二个则是1.0。这个块则按照PAA压缩模式来压缩,因为码字的两个量化α值不相等。
在另一个实例中,原始块可能具有以下α值:
  0.30   0.25   0.17   0.42
  0.20   0.38   0.24   0.48
当量化这些值时,都被分配值0.3333。在这种情况中,将以上等式(1)用于查找块的两个最佳量化α值的步骤将产生相等的量化α值。因此,这个块优选地按照PAT模式来压缩。因此,第二量化α值(αB)(有用量化α值)的最高有效位(MSB)(αB0)将被分配表示量化α值0.3333的0bin。第一量化α值(αA)的MSB(αA0)则是这个αB0的副本、即为0bin。第二量化α值的最低有效位(LSB)(αB1)将由强度索引序列共用,因而由第一图像元素的强度索引值来确定。第一量化α值的LSB(αA1)是这个αB1的副本。或者,第一量化α值(αA)将为11bin(即等于PAT模式索引),第二量化α值(αB)的MSB将被分配0bin,以及第二量化α值(αB)的LSB将由第一图像元素的强度索引值来确定。因此,只有第二量化α值的MSB才会在解码期间用于产生块中的图像元素的α值。
在另一个实例中,块可能包括以下α值:
  0.10   0.05   0.15   0.04
  0.07   0.10   0.12   0.08
在量化之后,所有的值将为0.0。初看起来,这似乎是按照PAT模式压缩块的好方法。但是,在只有可用量化α值为0.3333和0.6667的情况中,在这种模式中无法准确地表示预期值0.0。在这样一种情况中,最好是采用PAA压缩模式。码字的第一量化α值(αA)则通常为00bin。注意,第二量化α值(αB)的两个位的至少一个必须为1bin即αB≠00bin仍然是重要的,因为块否则会按照PAT模式压缩。
在本发明的一个备选实施例中,原始α值可组织为至少两组或两串。例如,α1、α3和α4均接近0.4,而图像元素的其余值α2、α5、α6、α7和α8则接近值0.9。最佳地表示这两串的两个值则可被确定,即当前实例中为0.4和0.9。最好地表示这两个值的(多达四个可能的值中的)两个量化α值则被选作α码字,即0.3333(01bin)和1.0(11bin)。
一旦已经为图像块确定α码字,方法继续进行到图1的步骤S2。
图6是流程图,说明图1的确定色彩和强度码字以及提供强度索引的步骤。该方法从图1中的步骤S2继续进行。在下一个步骤S30,确定图像块中的图像元素的平均色。下面假定图像元素的色彩由RGB色的24位来表示,即红色分量的8位、绿色分量的8位以及蓝色分量的8位。但是,本发明不限于这个具体实例,而是可适用于图像元素的任何色彩表示。平均色( R, G, B)则被确定为:
R ‾ = 1 N Σ i = 1 N R i
G ‾ = 1 N Σ i = 1 N G i
B ‾ = 1 N Σ i = 1 N B i ---(2)
其中Ri、Gi、Bi是图像元素i的R、G、B分量,以及N是图像块中的图像元素的总数。
一旦在步骤S30中确定了平均色( R, G, B),则下一个步骤S31对平均色进行量化。(24位)平均色优选地量化为9位序列(色彩码字)。换言之,每个8位平均分量被量化为3位平均分量。例如,如果平均色 R, G, B被计算为:
178 88 21 = 10110010 01011000 00010101 bin
则3位量化形式 可由下式产生:
182 73 36 = 10110110 01001001 00100100 bin
即,[101,010,001]bin可用作(9位)色彩码字。
步骤S32分析表的不同强度修改符集以及集合的不同修改符值。下一个步骤S33计算每个这样的修改符集和修改符值测试的误差值。根据这些误差值,在步骤S33中选取产生最小误差值的修改符集和集合的强度修改符值。下面更详细地描述这种情况。
图像块的色彩属性可采用称为简单编码、穷举编码和组合量化的三个不同实例之一来编码,下面进行简要论述。
简单编码
为了对(α)图像块进行编码,基本上选择色彩码字和正确的强度修改符集。一旦进行了这个步骤,图像块中的图像元素的编码通过尝试集合的所有四个强度修改符并计算误差来进行。在PAA压缩模式的第一实施例中,单一强度修改符与多个图像元素、优选地为一对相邻图像元素关联。在PAA模式的第二实施例中,每个图像元素与单一强度修改符关联,但是仅可选择强度修改符的子集。在一些应用中,通过采用加权误差值来获得更精确的修改符选择和更高的编码质量,例如:
ϵ 2 = w R ( R ‾ ^ + q - R ) 2 + w G ( G ‾ ^ + q - G ) 2 + w B ( B ‾ ^ + q - B ) 2 - - - ( 3 )
其中,图像元素的原始(24位)色彩为(R,G,B), 表示色彩码字(量化平均色,9位),所选修改符集为[-a,-b,b,a]且q∈[-a,-b,b,a],q∈[-a,a]或者q∈[-b,b],wR、wG、wB是色彩分量的不同权。另外,wG还优选地大于wR和wB。例如, w R = 5 16 , w G = 9 16 w B = 2 16 或者wR=0.299、wG=0.587以及wB=0.114。
对于修改符和集合的所有组合计算对应的(加权)误差值,并选择产生最小误差的修改符和集合的组合。
在这种简单编码中,量化为每个色彩分量3位的块中的八个图像元素的平均色用作色彩码字。然后,正确的强度修改符集通过穷举搜索来选择,即尝试强度表、如表1中的全部八个集合,并选取使误差值为最小的集合。这对于每个图像元素需要8×4=32次估算。如果权为 w R = 5 16 , w G = 9 16 w B = 2 16 , 则可采用整数算法,并且编码变得更快。对于权的这种选择,采用简单编码的64×64像素(图像元素)的图像的编码在1.2GHz的膝上型个人计算机上应当花费不到100ms,通常大约30ms。
穷举编码
在以上所述的简单编码实例中,量化平均色只是用作图像块中的图像元素的色彩的表示(色彩码字)。在这个穷举编码实例中,色彩以及强度修改符集(包括修改符值)被选择,即尝试每种可能的组合。对于给定的图像元素,除了强度修改符集的全部3位和强度索引的2位的先前迭代之外,通过色彩的全部9位的进一步迭代被添加,它总共提供214个步骤。对64×64像素的图像进行编码的步骤采用与简单压缩相同的膝上型个人计算机应当花费不到半分钟、可能大约10秒。虽然这对于运行时应用、特别是对于较大图像可能太长,但对于脱机编码并不是不容许的。
组合量化
对于简单编码实例,这个实例以(24位)平均色( R, G, B)开始,但是,这个平均色的色彩分量与强度分量、即强度修改符集和值的选择共同量化。
如果Rlow和Rhigh表示直接分别低于和高于 R的3位量化等级或值,则使得Rlow≤ R≤Rhigh。任务则是选择 R作为Rlow或Rhigh。对于绿色和蓝色分量,情况也是这样。
首先,误差值采用 R ‾ ^ , G ‾ ^ , B ‾ ^ = ( R low , G low , B low ) 来计算:
  ε2=(Rlow+q- R)2+(Glow+q- G)2+(Blow+q- B)2         (4)
这可简化为:
  ε2=(δR+q)2+(δG+q)2+(δB+q)2                  (5)
其中,δR=Rlow- R,δG=Glow- G以及δB=Blow- B。此外,假定q(强度修改符)可随意选取,即等于最佳 q = - δ R + δ G + δ B 3 . 把这个最佳q插入等式(5),简化后得:
ϵ 2 = 2 3 ( δ R 2 + δ G 2 + δ B 2 - δ R δ G - δ R δ B - δ G δ B ) = 2 3 ξ - - - ( 6 )
其中,ξ是括号中的表达式。
但是,如果对于红色分量选择较高的值,即 ( R ‾ ^ , G ‾ ^ , B ‾ ^ ) = ( R high , G low , B low ) , 以及采用Rhigh- R≈36+δx的事实,则等式(5)可改写为:
       ε2≈((δR+36)+q)2+(δG+q)2+(δB+q)2             (7)
对于这种情况,通过插入最佳 q ≈ - δ R + 36 + δ G + δ B 3 , 这个表达式可进一步简化:
ϵ 2 ≈ 2 3 ( δ R 2 + δ G 2 + δ B 2 - δ R δ G - δ R δ B - δ G δ B + 36 2 + 36 × 2 δ R - δ G - δ B )
= 2 3 ( ξ + 36 [ 36 + 2 δ R - δ G - δ B ] ) ---(8)
为了确定这两种量化色彩(Rlow,Glow,Blow)或(Rhigh,Glow,Blow)中的哪一种为最佳、即提供最小误差值,研究等式(8)的中括号内的额外表达式。换言之,如果36+2δRGB<0,则(Rhigh,Glow,Blow)应当被选取,否则选取(Rlow,Glow,Blow)(在36+2δRGB=0的情况下,可选取任一个码字)。然后,对于三种色彩分量的低和高量化的所有可能的组合、即对于平均色的所有相邻量化色重复进行这个程序。结果如下表3所示。
                          表3
注意,不要求ξ被明确计算,只有表3的中括号内的表达式(误差表示)才必须被计算,以便选择要使用的量化等级(色彩码字)。还要注意,色彩码字(Rlow,Glow,Blow)和(Rhigh,Ghigh,Bhigh)提供相同的误差值。这是在可达到任何q(强度修改符值)的假定下。但在实际上,q被限制为所使用修改符集或修改符子集的强度修改符值、例如表1的修改符值。根据表1,可以比较大值更大的精度指定更小的修改符值(q),这意味着,如果比起(Rlow,Glow,Blow),( R, G, B)更接近(Rhigh,Ghigh,Bhigh),则选择(Rhigh,Ghigh,Bhigh)比选择(Rlow,Glow,Blow)更好,反之亦然。与简单编码相比,总编码时间应当没有太大改变,即64×64像素的图像应当仍然在不到100ms内被压缩。
图像解码
图7说明根据本发明、对原始图像的编码图像或编码形式进行解码的方法的流程图。编码图像基本上包括图像块的若干压缩或编码表示,例如图3A或图3B的表示700。这些压缩块表示优选地通过以上结合图1所述的图像编码方法来产生。
该方法一般通过识别要解压缩的压缩图像块开始。可能的是,编码图像的所有压缩图像块应当经过解压缩,以便产生原始图像的解码表示。或者,只有原始图像的一部分将被存取。因此,只有所选数量的图像块必须被解压缩(或者更准确地说,某些图像块的所选数量的图像元素必须被解压缩或解码)。
该方法在步骤S40中开始,在其中,为图像块中的图像元素的至少一个产生色彩表示。这个色彩生成根据压缩块表示中的色彩码字来执行。在下一个步骤S41,要用于当前图像块的解压缩模式被选取。这个模式选择基于α码字,优选地基于α码字的量化α值的比较,或者基于量化α值中至少一个的实际值或位模式。与图1的压缩模式选择相似,如果量化α值不同,则选取第一解压缩模式(PAA模式),而如果(所有)量化α值相等,则在步骤S41中选取第二解压缩模式(PAT模式)。或者,如果模式关联的量化α值等于PAA特定(PAT特定)值,则PAA(PAT)解压缩模式应当在S41中被选取。
根据PAA解压缩模式,强度修改符集在步骤S42中提供。这个修改符集根据压缩块表示中的强度码字来提供。这种集合提供优选地通过借助于强度码字从包含多个修改符集的表、例如表1中识别强度修改符集来执行。这个表可能是两种α块解压缩模式共用的表或者模式适应的表。但是,在一些应用中,可能的是,强度码字本身包括修改符集,并且不需要表查找。
在步骤S43,选择要用于应当被解压缩的图像元素的强度修改符。根据与图像元素关联或者与图像元素所属的图像元素子集关联的强度索引从步骤S42所提供的修改符集中选择修改符值。在这种PAA解压缩模式中,如果各图像元素与自己的强度索引关联,则这个索引优选地指向修改符集的子集中找到的强度修改符。例如,如果步骤S42中所提供的强度修改符集是按照[-a,-b,b,a],则(1位)强度索引优选地仅可表示修改符值-a或a(或者例如-b或b)。但是,在给定强度索引而是被分配给多个(相邻)图像元素的子集的情况中,强度索引优选地可表示修改符值-a、-b、b或a的任一个。
一旦在步骤S43选择了正确的强度修改符值,则在步骤S44采用这个值来修改或调制图像元素的强度。根据本发明的强度修改表示根据(可能加权的)强度修改符值对色彩表示的所有色彩分量进行修改、例如相加或相乘。
步骤S43和S44可对图像块中的若干图像元素执行(由线条L7示意表示)。本发明预计,在一些应用中,只有单一图像元素从特定图像块中解压缩,特定图像块的多个图像元素被解压缩,或者特定块的所有图像元素被解压缩。
在随后的步骤S45,根据α码字为图像块确定多个、优选地为两个α值。在下一个步骤S46,为被解压缩的图像元素选择α值并分配到其中。这个α值通常采用与相关图像元素关联并且在α索引序列中找到的α索引来选择。但是,如果相关图像元素属于没有关联α索引而是具有预定义关联α值的图像元素的子集,则在步骤S46,那个预定义α值被识别并分配给该图像元素。步骤S46可为图像块中的若干图像元素执行(由线条L8示意表示)。
或者,特别是在对压缩块表示中的单一或几个图像元素解压缩时,通过α索引或者通过预定义关联,与图像元素关联的码字的量化α值在步骤S46中被选取。然后采用这个所选量化α值来产生(未量化的)α值。因此,只有单一α值被产生,并且步骤S45可被省略。这样,基于α索引的选择可在采用α码字的量化α值所产生的α值当中或者在量化α值当中执行。
如果在步骤S41中反而选择了PAT解压缩模式,则该方法继续进行到步骤S47,在其中,采用强度码字为图像块提供强度修改符集,优选地从强度表中提供。这个步骤S47基本上对应于步骤S42。但是,在一些应用中,不同的强度表可用于PAA(步骤S42)和PAT(步骤S47)解压缩模式。在下一个步骤S48,要用于图像元素的强度修改符从步骤S47所提供的修改符集中选取。与PAA解压缩模式相反,各图像元素优选地与唯一强度索引关联,以及索引可表示修改符集中的修改符值的任一个。所选强度修改符则在步骤S49中用来修改图像元素的强度。这个步骤S49对应于步骤S44。两个步骤S48和S49优选地对于应当被解压缩的块中的所有图像元素重复进行,由线条L9示意表示。
在后续步骤S50,(单一)α值根据α码字、更优选地根据码字的“有用”量化α值来产生。在步骤S51,这个α值被分配给图像元素。注意,在这种模式中,优选地仅产生一个α值,因而不需要α值的选择。所产生的α值优选地分配给应当被解压缩的图像元素,由线条L10示意表示。
步骤S40至S46或S51优选地对于包含应当被解码的图像元素的所有图像块重复进行(由线条L11示意表示)。这意味着,步骤S40至S46或S51的循环可执行一次,但是对于不同的压缩图像块往往执行若干次,和/或对于特定压缩图像块执行若干次。
在可选步骤S52,原始图像或者它的一部分的解码表示根据解压缩图像元素和块来产生。注意,在一些应用中,若干图像元素必须被解压缩,以便呈现解码表示的单一像素、纹素或体素。例如,在三线性内插中,八个图像元素被解压缩,以及对于双线性内插,相应数量为四个图像元素,这是本领域的技术人员众所周知的。然后,该方法结束。
在相同强度表用于两种解压缩模式的情况中,图7的解码方法可经过修改,使得划分成不同模式的步骤稍后在解压缩程序中执行。在这样一种情况中,色彩表示生成和α值生成以及可能的修改符集提供都在解压缩模式选择之前。然后,模式特定操作在PAA模式中是选择和分配α值以及在PAT模式中是分配α值。
图8是流程图,说明本发明的图像解码方法的附加步骤。该方法在步骤S60中开始,在其中,分析图像应当被解码为α图像还是解码为非α(无α)图像。这种选择优选地基于与图像关联的(全局)α图像索引。
如果图像是α图像,则方法继续进行到步骤S61。在这个步骤S61,应当被解压缩的各个图像块被分类为α块或非α块。这种分类优选地根据压缩块表示中包含的α块索引来执行。因此,如果这个α块索引为1bin(或者为0bin),则图像块是α块,并且应当采用α解压缩模式、即以上结合图7所述的模式之一进行解压缩。然后,该方法继续进行到图7的步骤S40。
如果图像块被分类为非α块,则它应当在步骤S62中按照非α块解压缩模式(PAP模式)进行解压缩。这种PAP模式基本上包括图7的步骤S40、S42(或S47)、S43(或S48)以及S44(或S49)。因此,采用色彩码字为块中的图像元素产生色彩表示。强度修改符集采用强度码字来提供,优选地从强度表中提供。这个表可能是这种模式与PAA和PAT模式共用的。但是,采用适合于这种PAP模式的强度表可能是有利的。强度修改符则采用强度索引序列从所提供集合中选取,以及图像元素的强度被修改。
步骤S61的块分类以及按照α块解压缩模式之一(图7)的块解压缩或者非α块解压缩模式(步骤S62)优选地对于包含应当被解码的图像元素的图像的所有压缩图像块重复进行,由线条L12示意表示。
在步骤S60中分类为非α图像的编码图像应当采用非α图像解压缩模式来解码。在可选步骤S63,要用于当前压缩块的非α解压缩模式被选取。在仅有单个这种非α模式可用的情况中,在步骤S63中不需要模式选择。在下一个步骤S64,压缩图像块或者它的至少一部分采用这种(可能所选的)非α图像模式进行解压缩。这样一种优选的非α图像解压缩模式、即PA模式基本上对应于PAP解压缩模式。主要差别在于,PA解压缩模式可利用具有优选地多达16个不同修改符集的强度表(由于4位强度码字),而PAP解压缩模式优选地采用具有多达八个不同修改符集的强度表(由于3位强度码字)。在PA解压缩方案的扩展中,两种非α图像解压缩模式(PP模式或PC模式)之间的选择可对于每个块进行。在这样一种情况中,步骤S63按照块来选择这两种模式的哪一种要用于当前块,优选地根据压缩块中包含的(PP或PC)模式索引进行。PP解压缩模式与PA方案相似。但是,解压缩图像块优选地包括1位PP模式索引和3位强度索引而不是4位强度索引。PC解压缩模式采用两个色彩码字而不是一个色彩码字和一个强度码字。因此,在解压缩期间,采用这两种码字为块产生两个色彩表示。要被解码的图像元素则被分配从这两个色彩表示中选取的色彩表示,优选地根据色彩索引或预定义元素-码字关联进行。
步骤S63和S64优选地对于应当被压缩的非α图像中的所有图像块重复执行,由线条L13示意表示。
图9更详细地说明图7的色彩表示生成步骤S40的一个实施例。该方法在步骤S70中开始,在其中,优选地为9位的色彩码字的量化色彩扩大或扩展为优选地24位。对于采用RGB色的情况,色彩码字的每个量化的3位色彩分量扩大为8位色彩分量。这种色彩扩展可通过把3位模式复制到8位色彩字来实现。换言之,101bin的3位色彩分量扩大为10110110bin。在步骤S71,扩大的色彩被分配给要被解码的图像块的图像元素。然后,该方法继续进行到图7的步骤S41。
图10是流程图,更详细地说明步骤S42至S46或者步骤47至S51。该方法从图7中的步骤S41继续进行。在下一个步骤S80,根据强度码字从强度表中选取强度修改符集。这个强度表可能是共有或者模式特定的表。如果强度表中存储的强度修改符集包括修改符值的第一子集、例如[a,b],则强度修改符值的第二子集可从第一子集的值来确定,例如[-a,-b]。在下一个步骤S81,图像元素的强度通过把来自所选修改符集的强度修改符与扩大的色彩相加来修改。因此,这个修改符值被加入图像元素的色彩的所有分量(对于RGB色为全部三种色彩)。这可实现为修改符值与所有色彩分量的简单加法。但是,在一些应用中,可能优选的是,在将修改符值加到分量之前对它进行加权。在这种情况中,不同的权可用于不同的色彩分量。在一个备选实施例中,可采用不同于简单加法的另一种类型的修改,例如乘法或者XOR。在这样一种情况中,采用同一个强度修改符值来对扩大的色彩的所有分量执行同样的调制,但是,这个值可能对于分量进行不同的加权。
在下一个步骤S82,所得强度修改色彩分量值被钳制在最小色彩门限与最大色彩门限之间。例如,如果在将(可能加权的)强度修改符值加至色彩分量之后,所得值小于最小门限,则该值被钳制为这个门限的值。相应地,如果所得值大于最大门限,则门限的值应当代替用于那个分量。对于具有色彩分量中的256种不同等级的情况,最小和最大门限的一个非限制实例分别为0和255。
在后续步骤S83,根据所使用的α块解压缩模式,一个或多个(8位)α值通过扩展量化α值来产生。在PAA模式中,这种扩展可通过重复相应量化α值的两个位模式来实现。例如,01bin的量化α值被扩展为8位值01010101bin,它对应于α值85(0.3333)。在PAT模式中,只有量化α值之一的单一位优选地用于产生α值。例如,如果这单一位为1bin(0bin),则8位α值可能例如是1010 1010bin(0101 0101bin),它对应于170或0.6667(85或0.3333)。
如果使用模式关联的量化α值,则(α)查找表可用于确定将被扩展为α值的量化α值。在下表4中,αA表示模式关联的量化α值,以及αB是数据携带量化α值。
                  表4
  αA   αB   第一量化α值   第二量化α值
  00bin01bin10bin00bin01bin10bin00bin01bin10bin00bin01bin10bin   00bin00bin00bin01bin01bin01bin10bin10bin10bin11bin11bin11bin   00bin00bin00bin01bin01bin01bin10bin10bin10bin11bin11bin11bin   01bin10bin11bin00bin10bin11bin00bin01bin10bin11bin00bin01bin
注意,当αA等于11bin,则应当使用PAT模式,否则采用PAA模式。把表4用于PAA图像块允许识别要(根据α索引或预定义关联)扩展为α值的量化α值。实际扩展类似于以上方式来执行。从表4还可看到,数据携带量化α值αB与第一量化α值之间存在一一对应,但在模式关联量化α值αA与第二量化α值之间则没有。
该方法继续进行到图7的步骤S46或S51。
下面将通过四个实例进一步说明对编码图像块的解码。在前两个实例中,采用如图3A所示的压缩块表示、如图2A所示的图像块以及根据表1的强度表,在第三实例中,压缩块表示是按照图3B,以及在第四实例中,将采用表4。
解码实例1
图像块的压缩表示是按照1 101 0 010 1 001 1 011 1 1011000 0111 00 10bin,在其中,位0是模式索引,位1-3是色彩码字的红色分量,位4是α码字的第一量化α值的MSB,位5-7是色彩码字的绿色分量,位8是第一量化α值的LSB,位9-11是色彩码字的蓝色分量,位12是α码字的第二量化α值的MSB,位13-15是强度码字,位16是第二量化α值的LSB,位17-23是α索引子序列,以及位24-31是强度索引的子序列。
色彩码字经过解码(扩展),产生图像块的色彩表示。色彩码字中的各色彩分量达到3位,但通过将3位模式复制到8位字来扩展为8位:
红:           10110110bin182
绿:           01001001bin73
蓝:           00100100bin36
这个扩展的色彩被分配给图像块的图像元素,得到:
  (182,73,36)   (182,73,36)   (182,73,36)   (182,73,36)
  (182,73,36)   (182,73,36)   (182,73,36)   (182,73,36)
比较块的两个量化α值。由于10bin(第一量化α值)不同于11bin(第二量化α值),因此,块应当按照PAA解压缩模式进行解码。
要使用的正确强度修改符集根据强度码字从表1中选取。在表1中看到,强度码字011bin对应于强度修改符[-127,-41,41,127]。
强度索引序列实现根据下式来识别这四个修改符值中哪一个要用于不同的图像元素:
11 bin 10 bin 00 bin 01 bin = - 127 - 41 41 127
在PAA模式的这个实施例中,每个强度索引与块中的两个相邻图像元素关联。
第一强度索引为01bin,它表示第一强度标识符值127应当被加入第一图像元素子集的所有三种分量:
182 73 36 + 127 127 127 = 309 200 163
所得分量被钳制在0与255之间,因而得出(255,200,163)。部分解码的图像块这时按照:
  (255,200,163)   (182,73,36)   (182,73,36)   (182,73,36)
  (255,200,163)   (182,73,36)   (182,73,36)   (182,73,36)
因此,在这个实例中,相同的强度修改符用于位于同一列中的两个图像元素。但是,这应当只看作一个说明性实例。或者,同一行中的两个相邻图像元素可被分配相同的强度修改符。
对于下一个图像元素子集,强度索引为11bin,即强度修改符-127应当加至所有三种色彩分量。钳制之后的结果为(55,0,0)。对块中的所有图像元素重复这种程序的步骤将创建如下所示的部分解码的图像块:
  (255,200,163)   (55,0,0)   (223,114,77)   (141,32,0)
  (255,200,163)   (55,0,0)   (223,114,77)   (141,32,0)
两个量化α值10bin和11bin扩展为8位α值:
第一α值:       10101010bin1700.6667
第二α值:       11111111bin2551.0
第一图像元素在这个实例中始终与第一α值(或者同样地与第一量化α值)关联,因而被分配α值170。对于块中的其余图像元素,α索引子序列用于选择α值。第二图像元素(在同一行中相邻)具有表示第二α值、即255的α索引1bin。继续进行这种值分配产生下列最终解码块:
  (255,200,163,170)  (55,0,0,255)  (223,114,77,170)  (141,32,0,255)
  (255,200,163,255)  (55,0,0,170)  (223,114,77,170)  (141,32,0,170)
解码实例2
在这个实例中,PAA解压缩模式的另一个实施例应用于图像块的压缩表示1 101 0 010 1 001 1 011 1 1011000 01110010bin。与以上所述对应,位0是模式索引,位1-3是色彩码字的红色分量,位4是第一量化α值的MSB,位5-7是色彩码字的绿色分量,位8是第一量化α值的LSB,位9-11是色彩码字的蓝色分量,位12是第二量化α值的MSB,位13-15是强度码字,位16是第二量化α值的LSB,位17-23是α索引子序列,以及位24-31是块的图像元素的强度索引的序列。
色彩表示以与解码实例1中相同的方式来产生,从而产生下列部分解码块:
  (182,73,36)   (182,73,36)   (182,73,36)   (182,73,36)
  (182,73,36)   (182,73,36)   (182,73,36)   (182,73,36)
相同的强度修改符集([-127,-41,41,127])从表1中选取,如解码实例1中那样。但是,在这个实施例中,只有包含修改符值[-127,127]的子集才可用于该块。在这样一种情况中,0bin的强度索引表示修改符127,而1bin则表示-127。
第一强度索引为0bin,这意味着第一强度修改符值127应当被加入第一图像元素的所有三种分量:
182 73 36 + 127 127 127 = 309 200 163
所得分量被钳制在0与255之间,因而得出(255,200,163)。部分解码的图像块这时按照:
  (255,200,163)   (182,73,36)   (182,73,36)   (182,73,36)
  (182,73,36)   (182,73,36)   (182,73,36)   (182,73,36)
对于下一个图像元素,强度索引为1bin,即强度修改符-127应当加至所有三种色彩分量。钳制之后的结果为(55,0,0)。对块中的所有图像元素重复这种程序将创建如下所示的部分解码图像块:
 (255,200,163)   (55,0,0)   (55,0,0)   (55,0,0)
 (255,200,163)  (255,200,163)   (55,0,0)  (255,200,163)
α值的产生与解码实例1相似,本文不再重复。因此,最终解码的图像块将按照:
  (255,200,163,170)   (55,0,0,255)  (55,0,0,170)   (55,0,0,255)
  (255,200,163,255)   (255,200,163,170)  (55,0,0,170)   (255,200,163,170)
解码实例3
图像块的压缩表示是按照1 101 0 010 1 001 0 011 11 01 10 00 0111 00 10bin,在其中,位0是模式索引,位1-3是色彩码字的红色分量,位4是位12的副本,位5-7是色彩码字的绿色分量,位8是位16的副本,位9-11是色彩码字的蓝色分量,位12是α码字的“有用”量化α值,位13-15是强度码字,位16-31、位24-31是块的图像元素的强度索引的序列。
由于α码字的两个量化α值01bin(位4和位8)和01bin(位12和位16)相等,因此PAT解压缩模式用于这个块。
块的色彩表示按照解码实例1来产生,得出下列部分解码块:
  (182,73,36)   (182,73,36)   (182,73,36)   (182,73,36)
  (182,73,36)   (182,73,36)   (182,73,36)   (182,73,36)
011bin的强度码字表示如解码实例1和2中相同的强度修改符集应当用于当前块。但是,这是由于公共强度表在两种α块解压缩模式中用于解码实例1至3。但是,可能能够采用模式特定的强度表,使得这个解码实例3的修改符集可包括与解码实例1和2的修改符集不同的修改符值,即使强度码字在所有实例中都相同。
第一强度索引为11bin,它表示第一强度标识符值-127应当被加至第一图像元素的所有三种分量:
182 73 36 + - 127 - 127 - 127 = 55 - 54 - 91
所得分量被钳制在0与255之间,因而得出(55,0,0)。部分解码的图像块这时按照:
  (55,0,0)   (182,73,36)   (182,73,36)   (182,73,36)
  (182,73,36)   (182,73,36)   (182,73,36)   (182,73,36)
对于下一个图像元素,强度索引为01bin,即强度修改符127应当加至所有三种色彩分量。钳制之后的结果为(255,200,163)。对块中的所有图像元素重复这种程序将创建如下所示的部分解码图像块:
  (55,0,0)  (255,200,163)   (141,32,0)   (223,114,77)
  (255,200,163)   (55,0,0)   (223,114,77)   (141,32,0)
此后产生图像元素的α值。注意,在这种PAT模式中,为所有图像元素产生单一α值。第二量化α值的MSB(位12)将用于产生这个α值。在这个实例中,这个位是0bin,它被扩展为01010101bin850.3333。因此,值85被分配给所有图像元素,从而产生最终解码图像块表示:
 (55,0,0,85)  (255,200,163,85)   (141,32,0,85)   (223,114,77,85)
 (255,200,163,85)  (55,0,0,85)   (223,114,77,85)   (141,32,0,85)
解码实例4
图像块的压缩表示是按照1 101 0 010 1 001 1 011 1 1011000 0111 00 10bin,在其中,位0是模式索引,位1-3是色彩码字的红色分量,位4是α码字的模式关联量化α值的MSB,位5-7是色彩码字的绿色分量,位8是模式关联量化α值的LSB,位9-11是色彩码字的蓝色分量,位12是α码字的数据携带量化α值的MSB,位13-15是强度码字,位16是数据携带量化α值的LSB,位17-23是α索引子序列,以及位24-31是强度索引的子序列。
色彩表示的产生以及对色彩分量的强度修改以与以上解码实例1相同的方式来执行。这时部分解码的块表示按照:
 (255,200,163)   (55,0,0)   (223,114,77)   (141,32,0)
 (255,200,163)   (55,0,0)   (223,114,77)   (141,32,0)
模式关联量化α值(αA)为10bin,以及数据携带量化α值(αB)为11bin。参照表4,α码字值的这个组合表示第一量化α值11bin和10bin。这些量化值扩展为8位α值:
第一α值:                11111111bin2551.0
第二α值:                10101010bin1700.6667
通过按照实例1中概述的原理,最终解码块为:
  (255,200,163,255)   (55,0,0,170)  (223,114,77,255)   (141,32,0,170)
  (255,200,163,170)   (55,0,0,255)  (223,114,77,255)   (141,32,0,255)
实现论述
根据本发明的图像编码(图像块编码)和图像解码(图像块解码)方案可在一般数据处理系统中提供,例如在配置用于处理和/或呈现图像的用户终端或其它单元中提供。这种终端可能是计算机。但是,本发明极适合于瘦客户机,例如个人数字助理(PDA)、移动单元和电话。这类终端的特征通常在于有限存储容量和存储带宽,并且由电池供电,即还具有有限电力。由于根据本发明的编码以及解码都可以极简单地以硬件、软件或者硬件和软件的组合来实现,以及编码图像块优选地仅具有32位的最大的大小,因此,本发明可有利地应用于瘦客户机。
图像处理终端
图11说明由移动单元表示的图像处理终端100。但是,本发明不限于移动单元,而是可在其它终端和数据处理单元中实现。只有直接涉及本发明的移动单元100中的部件和元件才在图中示出。
移动单元100包括移动单元100中用于处理包括图像数据在内的数据的(中央)处理器(CPU)200。在移动单元100中提供图形系统130用于管理图像和图形数据。具体来说,图形系统130适合在所连接屏幕120或其它显示单元上呈现或显示图像。移动单元100还包括用于在其中存储数据的存储装置或存储器140。在这个存储器140中,可存储图像数据,具体来说是根据本发明的编码图像数据(压缩图像块)。由于图像块的小的总大小(32位)以及高压缩率(4bpp),在移动单元100具有有限存储容量的情况中,图像数据也可有效地存储在存储器140中。
根据本发明的图像编码器210在移动单元100中提供。这个编码器210配置用于将图像或纹理编码为图像(或纹理)的编码表示。如上所述,这种编码表示包括多个压缩图像块的序列或文件。这个图像编码器210可作为在CPU 200上运行的软件来提供,如图所示。作为补充或替代,编码器210可设置在图形系统130中或者设置在移动单元100中的其它位置。
来自块编码器210的图像的编码表示可通过(存储)总线150提供给存储器140,以便在其中存储,直到图像的后续呈现为止。作为补充或替代,编码图像数据可被转发给输入/输出(I/O)单元110,用于(无线或有线)传送给其它外部终端或单元。这个I/O单元110还可适合从外部单元接收图像数据。这个图像数据可能是应当由图像编码器210编码的图像,或者是应当被解码的编码图像数据。还能够将编码图像表示存储在所提供的专用纹理存储器中,例如存储在图形系统130中。此外,作为补充或替代,编码图像的部分可能(暂时)存储在(纹理)高速缓冲存储器、例如在图形系统130中。本发明的廉价(在复杂度方面)和快速解压缩的一个极大优点在于,压缩图像块可至少暂时存储在高速缓存中,供快速便捷存取。这还通过高压缩率得到促进,它允许作为未压缩(RGBA8888)块数据的八倍的图像块数据同时存储在高速缓存中。
如果(存储)总线150具有32位的最大带宽,则需要单一存储器存取从存储器140中取出或读出本发明的编码图像表示。但是,如果总线150具有更大的带宽容量、如64位或者甚至128位,则多个编码图像表示可在单一存储器存取中取出。例如,假定64位总线150以及根据图2A的图像块大小。如果图像块依照图2A并且“上下紧接着”堆叠,或者如果它们依照图2B并且“并排”堆叠,则图像块与存储器140中的后续图像块共同组成图像元素的4×4正方形。但是,如果图2A(图 2B)的块被“并排”(“上下紧接着”)设置,则图像块与后续块共同组成2×8的框。4×4的正方形更为优选,因为如果采用某种形式的纹理高速缓存系统,则查找4×4的正方形中的预期图像元素的概率大于2×8的框。
在移动单元100中提供根据本发明的图像解码器220,用于对编码图像进行解码,以便产生解码图像表示。这个解码表示可能对应于整个原始图像或者它的一部分。图像解码器220将解码图像数据提供给图形系统130,它通常又当数据在屏幕120上呈现或提供之前对数据进行处理。图像解码器220可设置在图形系统130中,如图中所示。作为补充或替代,解码器200可作为在CPU 200上运行的软件来提供,或者在移动单元100中的其它位置上提供。
移动单元100可配备图像编码器210以及图像解码器220,如图中所示。但是,对于一些终端100,可能仅包括图像编码器210。在这种情况中,编码图像数据可被传递给执行图像的解码以及可能的呈现的另一个终端。相应地,终端100可能仅包括图像解码器220,即没有编码器。这种终端100则从另一个终端接收包含编码图像数据的信号,并对它进行解码以便产生解码图像表示。因此,编码图像信号可在采用无线电发射器和接收器的终端之间以无线方式传送。或者,可采用用于在终端之间分布图像和编码图像表示的其它技术,例如采用IR端口的IR-技术、蓝牙以及终端之间的图像数据的有线传递。可在终端之间连接及交换的存储卡或芯片还可用于这种图像数据终端间分布。
移动单元100的单元110、130、200、210和220可作为软件、硬件或者它们的组合来提供。
编码器
图12说明根据本发明的图像编码器210的一个实施例的框图。编码器210通常包括用于将输入图像分解或分为若干图像块的图像分解器212。分解器212优选地配置用于将图像分解为包含八个图像元素的图像块。这个分解器212可适合于将不同的输入图像分解为具有不同大小的图像块。在这种情况中,分解器212优选地接收输入信息,实现标识哪一个图像块格式要用于给定图像。
图像编码器210优选地包括用于将图像分类为α图像或者非α图像的图像分析器214。这个分析器214可根据例如通过与图像数据共同存储而与图像关联的全局α图像索引来执行分类。或者,分析器可根据图像中的图像元素的属性(α或量化α值)的分析来执行图像分类。在图像编码器210仅对α图像进行操作的情况中,这个图像分析器214可省略。另外,图像分析器的功能性或者可包括在块编码器300中。
图像编码器210的这个实施例包括单个块编码器300。这个块编码器300对于从图像分解器所接收的图像块进行编码,以便产生编码块表示。在以α块压缩模式(PAA或PAT)进行操作时,这种图像块表示包括色彩码字、强度码字、α码字以及图像元素关联索引序列。块表示的整体大小远远小于未编码图像块的相应大小。块编码器300优选地配置用于依次对来自分解器212的各图像块进行处理(编码)。
块编码器300优选地包括或者有权访问包含多个强度修改符集的至少一个强度表500。表500的修改符集用于强度以及可能的色彩码字的生成。强度表500可设置在块编码器300中,或者设置在图像编码器210中的其它位置。
图像编码器210可包括用于所有不同压缩模式中的单个强度表500。或者,若干不同的表可设置在编码器210中,在其中,表的强度修改符适合于不同的压缩模式和/或适合于不同的图像类型,或者表可适合于特定图像。
图像编码器210的单元212、214和300可作为软件、硬件或者其组合来提供。单元212、214、300和500可在图像编码器210中共同实现。或者,分布式实现也是可行的,其中在用户终端中的其它位置上提供一部分单元。
图13说明根据本发明的图像编码器210的另一个实施例的框图。这个图像编码器210包括如图12的实施例所述的图像分解器212和图像分析器214,不对它们进一步论述。但是,编码器210包括多个(M个,其中M为大于一的正整数)块编码器300-1至300-M。每个这种块编码器300-1至300-M基本上对应于图12中的图像编码器的块编码器。通过在图像编码器210中提供多个块编码器300-1至300-M,来自分解器212的多个图像块可经过并行处理(编码),它减少总的图像编码时间。或者,块编码器300-1至300-P的第一子集可用于按照PAA压缩模式来压缩图像块,而编码器300-P+1至300-M的剩余子集则按照PAT压缩模式进行操作(1<P<M)。在另一个实施例中,块编码器300-1至300-P的第一子集用于压缩α图像,即按照PAA、PAT和PAP模式之一进行。剩余的块编码器300-P+1至300-M则可用于非α图像(PA模式或者PP和PC模式)。在这样一种情况中,图像分析器214优选地产生激活可按照相关压缩模式工作的一个(或多个)正确的块编码器的压缩模式命令。
每个块编码器300-1至300-M可包括强度表500。不同编码器300-1至300-M中的强度表500均可包括相同的强度修改符值。或者,模式特定的强度表可由编码器300-1至300-M使用。在一个备选实现中,单个强度表500设置在图像编码器210中,并且连接到所有块编码器300-1至300-M。
图像编码器210的单元212、214和300-1至300-M可作为软件、硬件或者其组合来提供。单元212、214、300-1至300-M和500可在图像编码器210中共同实现。或者,分布式实现也是可行的,其中在用户终端中的其它位置上提供一部分单元。
图14说明根据本发明的块编码器300的一个实施例的框图,例如图12中的图像编码器的块编码器或者图13的图像编码器中的块编码器之一。编码器300包括α量化器340,它根据块中的图像元素的α值来产生包含多个量化α值的α码字。这个α码字或者码字的量化α值优选地被转发给块编码器300中的模式选择器310。如果当前块的图像元素全部与不透明值关联,则α量化器340可产生非α块标识符。在这样一种情况中,这个非α块标识符被转发给模式选择器310。
模式选择器310选择要用于当前块的压缩模式。这种模式选择至少部分根据来自α量化器340的所接收α码字或值来执行。例如,如果量化α值并非全部相等,则选择PAA压缩模式,而如果它们相等,则选择PAT压缩模式。模式关联量化α值或者也可在选择压缩模式时由模式选择器310使用。
色彩量化器320确定图像块中的图像元素的色彩的色彩表示,并对这个色彩表示进行量化。色彩表示优选地为图像元素的24位平均色。色彩表示依次由量化器310量化为9位色彩表示、即色彩码字。
强度量化器330在块编码器300中提供,用于标识要用于当前图像块的强度修改符集。量化器330优选地配置用于从关联强度表500中选择这个修改符集。然后,量化器330产生与所选修改符集关联的强度码字。在多个强度表500可用的情况中,要使用的正确(模式特定)的表优选地根据来自模式选择器310的所接收模式信号来识别。
编码器300还包括索引选择器350,它选择块中的图像元素的图像元素关联索引(α和强度索引)。当来自模式选择器310的模式命令指明PAA模式时,索引选择器350首先产生具有α索引的第一子序列。这个α索引子序列优选地包括块的图像元素的子集中的各图像元素的α索引。这种α索引与α量化器340所产生的α码字的量化α值之一关联。优选地包括一个图像元素的剩余子集具有与量化α值之一的预定义关联,意味着对于这个图像元素不需要α索引。另外,索引选择器350还产生强度索引子序列。在这种PAA模式的第一实施例中,这个强度索引子序列包括块中的多个图像元素、优选地为两个图像元素、更优选地为两个相邻图像元素的每个子集的相应强度索引。在PAA模式的第二实施例中,每个图像元素与各自的强度索引关联。这些强度索引各与来自强度量化器330的强度码字所表示的修改符集中的强度修改符之一关联。在第一PAA实施例中,修改符集的所有修改符值都是可用的,并且可由强度索引来表示。但是,在第二PAA实施例中,修改符值的子集优选地可由强度索引来表示。
在PAT模式中,索引选择器350产生强度索引,它对于块中的各图像元素包括与强度量化器330所提供的强度码字所表示的强度修改符集中的修改符值之一关联的强度索引。
块编码器300可能可选地包括用于估算误差值的误差估算器360,以便选择图像块的码字和图像元素关联索引。然后对于相关压缩图像块形式来选择使关联误差值为最小的码字和索引的选取。
这个块编码器结构极为灵活,并且可以不仅用于α块压缩模式,而且用于非α块压缩模式(PAP),甚至用于压缩非α图像。
在这样一种情况中,模式选择器310产生相应的模式信号。色彩量化器320、强度量化器330和索引选择器350则对这个模式特定信号作出响应。
例如,如果图像为非α图像,则模式选择器310优选地接收来自图像编码器的图像分析器的非α图像标识符。然后,PA模式或者PP和PC模式信号之一由模式选择器310产生。
模式选择器310优选地还产生包含在所得压缩图像块中或者与其关联的块模式索引。对于α图像,这个模式索引表明α块(PAA或PAT模式)或者非α块(PAP模式)。对于非α图像,这个模式索引可用来区分PP和PC模式。但是,在非α图像采用单一非α压缩模式PA来编码的情况中,不需要块模式索引。
当色彩量化器320接收PAP、PA或PP模式信号时,与PAA和PAT模式中的9位色彩码字相比,图像块的量化色彩表示优选地为12位色彩码字。另外,如果模式信号表示PC模式,则这个色彩量化器320优选地根据块中的图像元素的色彩分量值来产生两个12位色彩码字。
来自模式选择器310的模式特定信号由强度量化器330用来区分强度表和/或强度码字大小,在PAA、PAT、PAP和PP模式中优选地为3位强度码字以及在PA模式中优选地为4位。
如果模式信号表示PC模式,则索引选择器350产生块中的图像元素的子集中的各图像元素的色彩索引。每个色彩索引与已经由色彩量化器320在这种PC模式中工作时所产生的两个色彩码字其中之一相关联。剩余的图像元素子集、优选地为一个图像元素具有与色彩码字之一的预定义关联。
块编码器300的单元310至360可作为软件、硬件或者它们的组合来提供。单元310至360和500可共同在块编码器300中实现。或者,分布式实现也是可行的,其中的一部分单元在图像编码器中的其它位置上提供。
根据本发明的色彩量化器320的一个优选实现如图15的框图所示。量化器320包括配置用于确定图像块中的图像元素的色彩的平均值的部件322。这个平均色优选地为RGB色,但可能是用于图像处理的其它任何色彩格式。这个已确定平均色被提供给量化部件324,它对平均色进行量化。量化器314优选地配置用于把来自色彩平均器322的24位平均RGB色量化为9位RGB色。
在根据PAP、PA和PP模式之一操作时,相应的量化平均RGB色优选地为12位。在根据PC模式操作时,量化部件324确定图像块的两个色彩码字。这可通过确定经过(RGB)色彩空间中的平均色点的最佳线条来实现。这个线条上的两个点则由量化部件324来选取并量化为两个(12位RGB)色彩码字。
色彩量化器320的单元322和324可作为软件、硬件或者它们的组合来提供。单元322和324可在色彩量化器320中共同实现。或者,分布式实现也是可行的,其中的一部分单元在块编码器中的其它位置上提供。
根据本发明的强度量化器330的一个优选实现如图16的框图所示。量化器330优选地包括用于从关联强度表500中选择修改符集的修改符集选择器332。然后,量化器330产生与所选修改符集关联的强度码字。可能的强度表的选择优选地基于输入模式信号。
强度量化器330的单元332可作为软件、硬件或者它们的组合来提供。
根据本发明的α量化器340的一个优选实现如图17的框图所示。α量化器340的量化部件344优选地对图像块的原始α值进行量化。相应的α值优选地被量化为从可用值的预定义集合中选取的某个值,例如[0.0,0.3333,0.6667,1.0](0,85,170,255)、[0.0,0.50,0.75,1.0](0,128,191,255)、[0.0,0.25,0.50,1.0](0,64,128,255)或者[0.0,0.25,0.75,1.0](0,64,191,255)的集合。这个集合优选地存储在α量化器342的存储器或表346中或者与其关联。量化器340中的选择器342则从最好地表示块的(八个)量化值的预定义集合中选取两个量化α值。在一个备选实现中,选择器342选取最好地表示块的(八个)原始(未量化)α值的预定义集合的两个量化α值。在任一情况中,这两个选取值将为α码字的量化α值。
值选择可作为通过测试来自存储器346中的集合中的两个量化α值的组合的任一个进行的穷举搜索来执行。然后选取产生最小误差值的具体组合。
选择器342比较这两个量化α值(所选量化α值)。如果它们不同,则选择器342产生PAA模式标识符,并将它转发给块编码器的模式选择器。但是,如果它们相等,则PAT模式标识符被产生和发送。
或者,两个量化α值可被发送给模式选择器来代替PAA/PAT模式标识符。
如果两个量化α值不相等,则所得α码字优选地包括两个2位量化α值。但是,如果量化α值相等,则只有α码字的单一位将用作α值的表示。另一个量化α值的位之一将是这个位的副本。另外,量化α值之一的剩余位将由强度索引序列共用,即,然后由块编码器的索引选择器来定义。另一个量化α值的剩余位将是这个共用位的副本。
α量化器340的单元342和344可作为软件、硬件或者它们的组合来提供。单元342、344和346可在α量化器340中共同实现。或者,分布式实现也是可行的,其中的一部分单元在块编码器中的其它位置上提供。
根据本发明的索引选择器350的一个优选实现如图18的框图所示。这个索引选择器350优选地包括用于选择至少一个图像元素的各子集的强度索引的强度索引选择器352。在根据PAA压缩模式操作强度索引选择器352时,所得强度索引子序列优选地包括四个2位或八个1位强度索引。相应地,在根据PAT(以及PAP、PA或PP)模式操作时,强度索引选择器优选地产生八个2位强度索引的子序列。
索引选择器350优选地还包括用于在以PAA模式操作时选择α索引并产生α索引子序列的α索引选择器354。这个序列优选地包括七个1位α索引。
索引选择器350还可包括在PC模式中可操作的色彩索引选择器。在这样一种情况中,它产生色彩索引的序列、优选地为七个1位色彩索引。
索引选择器350的单元352和354可作为软件、硬件或者它们的组合来提供。单元352和354可在索引选择器350中共同实现。或者,分布式实现也是可行的,其中的一部分单元在块编码器中的其它位置上提供。
解码器
图19说明根据本发明的图像解码器220的一个实施例的框图。图像解码器220优选地包括图像分析器224,它分析所接收的编码图像,以便确定编码图像是α图像还是非α图像。这种图像分类优选地基于与编码图像关联、例如与编码图像数据共同存储的全局α图像索引。α图像标识符(α图像或非α图像)优选地由分析器根据分类来产生,并被发送给执行图像块的实际解码的块解码器400。如果图像解码器220仅对α图像进行操作,则这个图像分析器224可省略。图像分析的功能性或者也可包括在块解码器400中。
块选择器222优选地在图像解码器220中实现,用于例如从存储器中选择哪一个(哪些)编码图像块应当提供给块解码器400进行解码。块选择器222优选地例如从首标或呈现引擎中接收与编码图像数据关联的输入信息。具有预期图像元素的压缩图像块的地址根据输入信息来计算。这个计算地址优选地取决于图像中的图像元素(像素、纹素或体素)坐标。利用该地址,块选择器222例如从存储器或高速缓存中识别编码图像块。这个已识别编码图像块则从存储装置中取出,并提供给块解码器400。
对图像块的图像元素的(随机)存取有利地实现仅对所需的图像的那些部分的有选择取出及解码。此外,图像还可按照需要数据的任何顺序来解码。例如,在纹理映射中,可能仅需要纹理的一部分,以及一般将以非连续顺序需要这些部分。因此,本发明的图像解码可有利地适用于仅处理图像的一部分。
所选的编码图像块被转发给块解码器400。除了图像块之外,解码器400还优选地接收指定块的哪些图像元素应当被解码的信息。信息可指定整个图像块、即其中的所有图像元素应当被解码。但是,所接收信息可以仅标识应当被解码的单个或几个图像元素。另外,块解码器400还接收α图像标识符。块解码器400则产生块中的图像元素的解压缩表示。这个解码表示优选地是其中S为原始图像中的每个图像元素的位数的S位色彩、如24位RGB色以及其中T为原始图像中的每个图像元素的位数的T位α值、例如8位α值。块解码器400优选地包括在解码程序中使用的强度表500。或者,这个强度表500可在图像解码器220中的其它位置上提供。以上结合图12和图13所述的对于不同解压缩模式和/或图像类型的不同强度表的使用也适用于图像解码器220。
可选图像合成器226可在解码器220中提供。这个合成器接收来自块解码器400的解码图像元素,并将它们合成以便产生可在屏幕上呈现或显示的像素、纹素或体素。合成器226可能需要若干输入图像元素来产生单个像素、纹素或体素。这个图像合成器226或者也可在图形系统中提供。
图像解码器220的单元222至226和400可作为软件、硬件或者它们的组合来提供。单元222至226、400和500可在图像解码器220中共同实现。或者,分布式实现也是可行的,其中在用户终端中的其它位置上提供一部分单元。
图20说明根据本发明的图像解码器220的另一个实施例的框图。块选择器222、图像分析器224和图像合成器226与图19中的对应单元相似,并且不作进一步论述。
图像解码器220包括多个块解码器400-1至400-Q(Q为大于一的正整数)。通过有权访问多个块解码器400-1至400-Q,图像解码器220可并行对多个压缩图像块进行处理(解压缩)。这多个块解码器400-1至400-Q允许提高图像解码器220的处理性能及效率的并行处理。例如,一个解码图像元素一般足以用于最近的相邻内插,而对于双线性(三线性)内插则需要四个(八个)图像元素。每个块解码器400-1至400-Q可包括用于解码的强度表500。或者,单个表500设置在图像解码器220中,并且连接到所有块解码器400-1至400-Q。参见以上结合图13所述,采用不同类型的强度表的进一步论述也适用于图像解码器220。与以上结合图13所述相似,块解码器400-1至400-P的第一子集可用于按照PAA解压缩模式对压缩图像块进行解压缩,而解码器400-P+1至400-Q的剩余子集则按照PAT解压缩模式进行操作(0<P<Q)。
或者,块解码器400-1至400-P的一部分适用于对α图像的块进行解压缩(PAA、PAT和PAP模式),而剩余解码器400-P+1至400-Q则可用于对非α图像的块进行解压缩(PA、PP或PC模式)。
图像解码器220的单元222至226和400-1至400-Q可作为软件、硬件或者它们的组合来提供。单元222至226、400-1至400-Q和500可在图像解码器220中共同实现。或者,分布式实现也是可行的,其中在用户终端中的其它位置上提供一部分单元。
图21是根据本发明的块解码器400的一个实施例的说明。块解码器400包括解压缩模式选择器410,它选择应当用以对当前编码图像块进行解压缩的模式。这个模式选择优选地至少部分基于α码字的分析或者α码字的量化α值的至少一个,即允许区分PAA和PAT模式。模式特定信号或命令则由模式选择器410来产生。块解码器400的包括单元优选地对这个模式特定信号作出响应。
色彩生成器430根据色彩码字产生图像块中的图像元素的色彩表示。这个生成器420优选地将码字的9位色彩扩大为24位(RGB)色彩。
块解码器400还包括用于根据强度码字从关联强度表500中提供强度修改符集的部件420。这个提供器420可配置用于从强度表500中取出修改符值的第一子集,并根据第一子集来确定修改符的第二子集。在多个强度表500之间的选择的情况中,要使用的正确的表优选地由提供器420根据来自模式选择器410的模式信号来识别。
修改符选择器440设置用于从部件410所提供的修改符集中选择强度修改符值之一。修改符选择器440配置用于根据强度索引序列来选择压缩图像块中的图像元素的正确修改符值。来自模式选择器410的模式信号使修改符选择器440能够从序列中识别正确的强度索引,例如区分1位索引(PAA模式的一个实施例)和2位索引(PAA模式或PAT模式的第二实施例)。
来自色彩生成器430的扩大色彩以及来自修改符选择器440的修改符值被转发给强度调制器或修改器450,它采用修改符值来修改扩大色彩的色彩分量的强度。修改器450可采用加权强度修改符值,其中的不同权用于不同的色彩分量。此外,一旦色彩分量经过强度修改,修改器450优选地将分量钳制在最大与最小门限之间、如0与255之间。
α值生成器460在块解码器中实现,用于产生图像块的至少一个α值。这个值生成基于压缩图像块表示的α码字。如果来自模式选择器410的模式命令表明PAA模式,则生成器460采用α码字的第一量化α值来确定第一α值,以及采用第二量化α值来确定第二α值。生成器460可直接从α码字的量化α值中确定α值。在一个备选实现中,生成器460采用表查找或转换算法从α码字中提供第一和第二量化α值。在任一种情况中,(2位)量化α值优选地扩大为8位α值。但是,在以PAT模式操作时,优选地只有量化α值之一的单一位用于产生单一的α值。
α分配器470接收来自生成器460的α值,并将它们分配给图像元素。这个值分配在PAA模式中采用α索引和预定义α关联来执行。因此,对于具有关联α索引的图像元素,那个索引用来选择两个可能的α值中的一个。如果图像元素而是预定义成与量化α值之一关联、即没有α索引,则从这个量化α值中产生的α值由分配器470分配给图像元素。在PAT模式中,在压缩图像块中不存在α索引。因此,要解压缩的块中的所有图像元素被分配来自生成器460的单一α值。
与图14的块解码器相似,根据本发明的块解码器400为解压缩模式的扩展提供灵活的解决方案。因此,块解码器400可专用于仅对α块进行解压缩。但是,它可能完全扩展到还管理按照PAP、PA、PP或PC模式的非α块的解压缩。
模式选择器410则从关联当前压缩图像块的输入信息中产生正确的模式特定信号。除了α码字之外,这个输入信息优选地还包括压缩图像块中包含的块模式索引以及全局α图像索引。在这样一种情况中,PAA、PAT、PAP、PA、PP和PC模式之间的区分可由选择器410来进行。
色彩生成器430对来自模式选择器410的模式特定信号作出响应。如果信号表示PAA或PAT模式,则从9位色彩码字中产生(24位)色彩表示。但是,PAA、PA或PP模式信号使色彩生成器430从12位色彩码字中确定(24位)色彩表示。相应地,在按照PC模式进行操作时,第一和第二色彩表示采用第一和第二色彩码字、优选地通过把(12位)码字扩大为相应的24位色彩来确定。相关色彩表示采用色彩索引序列和预定义色彩码字关联来分配给相应的图像元素。
块解码器400的单元410至470可作为软件、硬件或者它们的组合来提供。单元410至470和500可在块解码器400中共同实现。或者,分布式实现也是可行的,其中在用户终端中的其它位置上提供一部分单元。
图22A和图22B示意说明根据本发明的块解码器400的一个可能的硬件实现。这个块解码器400不仅按照PAA和PAT解压缩模式进行操作,并且还按照PAP、PP和PC模式进行操作。对块解码器400的输入是按照PAT模式(700A)、PAA模式(700B)、PAP模式(700C)、PC模式(700D)或PP模式(700E)进行压缩的图像块表示。通过这些不同的输入块表示700A至700E可以看到,每一个优选地包括1位块模式索引、码字序列(包括色彩码字、强度码字和/或α码字,取决于所采用的模式)以及索引序列(包括强度索引、α索引和/或色彩索引,取决于所采用的模式)。在PAT、PAP和PP模式中,强度索引经过组织,使得八个强度索引的MSB在索引序列中处于八个LSB之前。因此,强度索引序列10110001 10000110bin表示后续强度索引11bin、00bin、10bin、10bin 00bin、01bin、01bin和10bin。在PAA模式中,每对图像元素与2位强度索引关联。图像元素的强度索引的MSB和LSB在序列中依次提供。因此,强度索引序列10000110bin表示后续强度索引10bin、00bin、01bin和10bin
主要参照PAA或PAT压缩图像块来论述块解码器400,并且简要描述专用于其它操作模式的包含单元。
模式选择器410接收采取优选地为1位的全局α图像标识符、优选地为1位的块模式索引以及优选地为4×1位的量化α值的形式的输入信息。模式特定信号在输入数据的处理之后从模式选择器410中输出。PC特定信号在连接线C1上携带,而PAA和PAT信号则分别在连接线C2和C3上携带。
色彩码字被提供给色彩生成器430,它通过三个复用器431至433、三个位扩展器434至436以及一个“或”门437来实现。复用器431至433仅因采用两个色彩码字的PC模式才需要。在其它所有操作模式中,在线路C4、C6和C8上携带的色彩分量数据被转发,而在线路C5、C7和C9上携带的数据则被阻塞。模式选择信号来自“与”门446,它在PC模式中并且当色彩索引为1bin时输出1bin,否则输出0bin。第一位扩展器434接收4位红色分量和αA0,第二扩展器435接收4位绿色分量和αA1,以及第三扩展器436接收4位蓝色分量和αB0(或α)。另外,来自“或”门437的输出还输入到各扩展器434至436。要记住,在PAA和PAT模式中,码字的相应色彩分量优选地仅为3位,而对于其它模式,相应的色彩分量则为4位。因此,“或”门437在对PAA或PAT块进行解压缩时输出1bin,否则它输出0bin。如果扩展器434至436接收1bin的“或”门输出,则它将仅处理来自它的前导复用器431至433的4位输出的三个MSB并将其扩展为8位色彩分量。但是,如果“或”门输出为0bin,则整个4位复用器输出被扩展为8位色彩分量。
修改符选择器440实现为五个复用器441至445、一个“与”门446和一个“或非”门447。3位地址索引被输入到复用器441、442。根据地址索引,复用器441、442选择八个图像元素的哪一个要进行解码。在PAT、PAP和PP模式中,复用器441输出2位强度索引的MSB,以及复用器442输出LSB。但是,在PAA模式中,复用器441输出1位α索引。注意,在这个模式实现中,PAA块中的第一图像元素始终与第一量化α值关联。因此,复用器441从复用器443接收表示α索引序列加上一个附加位(0bin)的七个输入位,表示第一图像元素。相应地,在以PC模式进行操作时,块表示700D的七个色彩索引直接输入到复用器441,而第一图像元素的预定义色彩关联则通过从复用器443输出0bin来实现。因此,这个复用器443在PP、PAP和PAT模式中转发索引序列(位15-31)的MSB(位15)。但是,在PC和PAA模式中,“或非”门447输出0bin,它使复用器443输出0bin取代索引序列的MSB。
在PAA模式中,复用器444接收2位地址索引,并采用那个地址来选择正确强度索引的MSB。强度索引的相应LSB由复用器442输出。这两个位则在线路C13上结合。注意,在这种解压缩模式中,复用器480在这个具体实现中始终输出1bin作为地址索引的LSB。
来自复用器441、442或者来自复用器442、444的组合2位输出被输入到复用器445。在以PAA模式进行操作时,这个复用器转发来自复用器442、444的输出,否则,来自复用器441、442的输出被转发。在任一种情况中,2位强度索引被提供给表查找422。这个表查找422对应于图21的修改符集提供器420和强度表500。
表查找422还接收连接线C10上的3位强度索引。在不同强度表用于α块模式(PAA和PAT)以及非α块模式(PAP和PP,要记住,在PC模式中没有采用强度表)的情况中,“或”门437在按照这些模式之一对图像块进行解压缩时输出PAA或PAT信号。查找表422采用输入强度码字、可选模式信号和强度索引,从表中的修改符集之一中取出正确的强度修改符值。这个9位有符号(正或负)修改符值则被提供给复用器424。在PC模式中,这个复用器424输出0bin,而在其它操作模式中,它输出来自表查找422的修改符值。
9位复用器输出被提供给强度修改器450。在这个硬件实现中,修改器450包括三个加法器451至453以及三个钳位器454至456。修改符值被输入到相应的加法器451到453。第一加法器451把强度修改符值加入来自位扩展器434的8位红色分量。相应地,加法器452和加法器453分别把修改符值加入来自位扩展器435和436的8位绿色和蓝色分量。在一个备选实现中,加法器451至453可采用其它修改元件、例如乘法器或者“异或”门来替代。来自加法器451至453的输出被转发给钳位器454至456,它们把强度修改色彩分量钳制在0与255之间。来自钳位器454至456的输出是图像元素的解压缩或解码的24位色彩。
α生成器460在这个硬件实现中包括三个复用器461至463、求反部件464和位扩展器465。第一复用器461接收两个量化α值,并根据来自复用器441的α索引输出它们其中之一。所选量化α值被转发给第二复用器462。“有用”量化α值的MSB被提供给求反部件464,然后再与它的求反值结合。例如,α=1bin将与0bin结合为10bin。复用器462在来自复用器461的量化α值与结合(部分扩展)的量化α值之间进行选择。在PAT模式中,源自有效量化α值的MSB的结合量化α值被转发,否则转发复用器输出。在PAA和PAT模式中,第三复用器463把来自复用器462的量化α值转发给位扩展器465。但是,在其它解压缩模式中,复用器463而是把预定非透明度值转发给扩展器465。位扩展器465把所接收的2位输入扩展为8位α值。这个α值则与来自钳位器454至456的24位色彩值结合,从而产生解压缩图像元素。
如果图22A和图22B的解码器400配置用于仅对α图像进行解压缩、即被限制为PAP、PAA和PAT模式,则以下单元可从硬件实现中省略:复用器424、431至433,“与”门446,以及“或非”门447。
但是,通过图22A和图22B的硬件实现可以看到,整个解码器400可以仅采用几个标准组件来实现,但是仍然能够按照多达五种不同解压缩模式对α以及非α图像和块进行解压缩。因此,因而在这五种模式之间选择最适合于给定图像块的模式,它与限制为单一压缩和解压缩模式的图像处理方案相比,将会显著提高所处理图像的图像质量。
图22A中的连接线C1至C17在图22B中继续作为C1至C17。
图23示意说明图22B的位扩展器434至436的可能硬件实现。这些扩展器接收表示4位(红、绿或蓝)色彩分量或者3位(红、绿或蓝)色彩分量以及量化α值的一位的4位输入。扩展器434至436则把这个3位或4位色彩分量扩展为相应的8位色彩分量。产生两个复用器输入,一个表示4位分量,以及一个表示3位分量。以4位分量开始,第一复用器输入的MSB是4位扩展器输入的LSB,第二MSB是扩展器输入的MSB,第三MSB是扩展器输入的第二MSB,以及其余两个LSB对应于扩展器输入的两个LSB。在3位分量的情况中,第二复用器输入的三个MSB是扩展器输入的三个MSB,以及两个LSB对应于扩展器输入的MSB和第二MSB。
复用器438根据来自图22B的“或”门437的1位值来选择这两个5位值之一。因此,在PAA和PAT模式中,这个“或”门输出为1bin,以及复用器438转发对应于3位色彩分量的第二个5位值,否则,它输出对应于4位色彩分量的第一个5位值。在任一种情况中,5位复用器输出则与扩展器输入的三个MSB结合,从而组成扩展的8位色彩分量。
图24示意说明图22B的α生成器460中使用的位扩展器465的可能硬件实现。这个扩展器465只是把2位输入量化α值复制为8位α值。例如,10bin的2位输入被扩展为1010 1010bin
图25示意说明图22B的钳位器454至456的可能硬件实现。对钳位器454至456的输入为10位强度修改后的色彩分量值。这个输入值的八个LSB被送到复用器457。对复用器的另一个输入是最大门限值(255;8位)。复用器457根据强度修改色彩分量的第二MSB来选择8位输入值或者最大门限值。换言之,如果这个第二MSB等于一,则复用器457输出门限值,否则(第二MSB等于零),8位输入值被输出到第二复用器458。这个第二复用器458根据色彩分量的MSB来选择来自第一复用器457的输出或者最小门限值(0;8位)。如果这个MSB或符号位等于一,则来自第一复用器457的输出为负,以及最小门限值应当由第二复用器458来选取。但是,如果符号位为零,则来自第一复用器457的输出也应当是来自第二复用器458的输出。
图26示意说明表查找422的可能硬件实现。这个表查找422适合于采用所有解压缩模式共有的单个强度表。3位输入强度码字的两个LSB被输入到两个复用器421和423,用于从每个复用器421和423的四个可能的修改符值中选择一个7位强度修改符值。如果采用根据表1的强度表,则从这8个强度修改符中,可计算其余24个值。来自复用器421和423的所选强度修改符值被输入到另一个复用器425,它根据来自图22B的复用器445的1位输入数据(2位强度表示中的1位)来选择这些值中的一个。所选修改符值则被转发给复用器426以及转发给对修改符值求反的求反部件427。这个求反值也被转发给复用器426。这个复用器426根据来自图22B的复用器445的强度表示的剩余位来选择正的7位强度修改符值或者求反值。所选(8位)修改符值则被送到复用器428以及送到移位器429,它把修改符值向左移动一位,从而产生9位强度修改符(对应于基数十的值与二的乘积)。复用器428根据来自强度码字的MSB来选择8位修改符值或者9位修改符值。
选择的结果是用于特定图像元素的来自48个可能的修改符值的9位强度修改符值。
图27示意说明图22B的表查找422的可能硬件实现,其中包括两个模式特定强度表。3位输入强度码字的两个LSB被输入到四个复用器421A、423A和421B、423B,用于从每个复用器421A、423A和421B、423B的四个可能的修改符值中选择一个7位强度修改符值。来自复用器421A、423A和421B、423B的所选强度修改符值被输入到一对复用器425A、425B。这些复用器425A、425B各根据来自图22B的复用器445的1位输入数据(2位强度表示中的1位)来选择这些值中的一个。所选修改符值则都被转发给复用器425C。这个复用器425C根据来自图22B的“或”门437的1位数据来选择这两个修改符输入值中的哪一个、因而选择哪一个强度表应当用于当前块。所选修改符值则在复用器426和428、求反部件427以及移位器429中进行处理,如以上结合图26所述。
本领域的技术人员会理解,可以对本发明进行各种修改和变更,而没有背离所附权利要求定义的本发明的范围。
参考文献
[1]美国专利No.5956431
[2]Y.Linde、A.Buzo和R.Gray的“用于向量量化器设计的算法”,IEEE Transactions on Communications,Vol.28,第84-94页,1980年1月

Claims (34)

1.一种压缩包括多个图像元素(610)的图像块(600)的方法,所述方法包括以下步骤:
-确定色彩码字(720),所述色彩码字是所述多个图像元素(600)的色彩的表示;
-提供包括多个量化α值(740A,740B)的α码字(740),所述量化α值是所述多个图像元素(610)的至少一个α值的表示;
-提供强度码字(730),所述强度码字是用于修改所述多个图像元素(610)的强度的多个强度修改符的集合的表示;
-提供图像元素关联索引的索引序列(750);以及
-根据所述α码字(740)来选择压缩模式,其中,如果所述所选压缩模式为第一压缩模式,
则所述索引序列(750)包括:第一索引子序列(750B),它对于所述图像块(600)中的至少一个图像元素(610)的每个子集包含与来自所述强度修改符集的强度修改符关联的强度索引;以及第二索引子序列(750A),它对于所述多个图像元素(610)的至少一部分中的各图像元素(610)包含与来自所述多个量化α值(740A,740B)的量化α值关联的α索引,以及如果所述所选压缩模式为第二压缩模式,
则所述索引序列(750)对于所述图像块(600)中的各图像元素(610)包括与来自所述强度修改符集的强度修改符关联的强度索引。
2.如权利要求1所述的方法,其特征在于,所述模式选择步骤包括根据所述α码字(740)的所述多个量化α值(740A,740B)中的至少一个来选择所述压缩模式的步骤。
3.如权利要求2所述的方法,其特征在于,所述模式选择步骤包括以下步骤:
-如果所述多个量化α值(740A,740B)不同,则选择所述第一压缩模式;以及
-如果所述多个量化α值(740A,740B)相等,则选择所述第二压缩模式。
4.如权利要求1至3中的任一项所述的方法,其特征在于,所述强度码字提供步骤在选择所述压缩模式之后执行。
5.如权利要求1至4中的任一项所述的方法,其特征在于,所述子集中的每个包括所述图像块(600)中的两个相邻图像元素(610)。
6.如权利要求1至4中的任一项所述的方法,其特征在于,所述子集中的每个包括一个图像元素(610),以及所述强度索引与来自所述强度修改符集的子集的强度修改符关联。
7.如权利要求1至6中的任一项所述的方法,其特征在于,所述第二索引子序列(750A)对于所述多个图像元素(610)的第一部分中的各图像元素(610)包括与来自所述多个量化α值(740A,740B)的量化α值关联的α索引,所述多个图像元素(610)的第二剩余部分中的各图像元素(610)与来自所述多个量化α值(740A,740B)的预定量化α值关联。
8.一种对图像进行编码的方法,所述方法包括以下步骤:
-把所述图像分解为多个图像块(600),各图像块(600)包括多个图像元素(610);以及
-对于至少一个图像块(600),通过按照权利要求1至7中的任一项压缩所述至少一个图像块(600)来确定压缩图像块表示(700)。
9.一种处理包括多个图像元素(610)的图像块(600)的压缩表示(700)的方法,所述压缩图像块表示(700)包括色彩码字(720)、α码字(740)、强度码字(730)以及图像元素关联索引的索引序列(750),所述方法包括以下步骤:
-根据所述α码字(740)来选择解压缩模式;
-根据所述强度码字(730)来提供多个强度修改符的集合;
对于所述图像块(600)中的至少一个图像元素(610):
-根据所述色彩码字(720)来产生色彩表示;
-根据所述索引序列(750)从所述强度修改符集中选择强度修改符;
-根据所述所选强度修改符来修改所述至少一个图像元素(610)的强度;以及
-根据所述α码字(740)来产生至少一个α值,其中,如果所述所选解压缩模式为第一解压缩模式,则所述方法包括以下步骤:
-对于所述至少一个图像元素(610),从根据所述α码字(740)产生的多个α值中选择α值;以及
-把所述所选α值分配给所述至少一个图像元素(610),以及如果所述所选解压缩模式为第二解压缩模式,则所述方法包括以下步骤:
-把所述至少一个α值分配给所述至少一个图像元素(610)。
10.如权利要求9所述的方法,其特征在于,所述模式选择步骤包括根据所述α码字(740)所表示的多个量化α值(740A,740B)的至少一个量化α值(740A)来选择所述解压缩模式的步骤。
11.如权利要求10所述的方法,其特征在于,所述模式选择步骤包括以下步骤:
-如果所述多个量化α值(740A,740B)不同,则选择所述第一解压缩模式;以及
-如果所述多个量化α值(740A,740B)相等,则选择所述第二解压缩模式。
12.如权利要求9至11中的任一项所述的方法,其特征在于,所述修改符集提供步骤在选择所述解压缩模式之后执行。
13.如权利要求9至12中的任一项所述的方法,其特征在于,在所述第一解压缩模式中,所述索引序列(750)包括:第一索引子序列(750B),它对于所述图像块(600)中的至少一个图像元素(610)的每个子集包含与来自所述强度修改符集的强度修改符关联的强度索引;以及第二索引子序列(750A),它对于所述多个图像元素(610)的至少一部分中的各像素元素(610)包含与来自所述多个α值的α值关联的α索引,以及在所述第二解压缩模式中,所述索引序列(750)对于所述图像块(600)中的各图像元素(610)包含与来自所述强度修改符集的强度修改符关联的强度索引。
14.如权利要求13所述的方法,其特征在于,所述第二索引子序列(750A)对于所述多个图像元素(610)的第一部分中的各图像元素(610)包括与来自所述多个α值的α值关联的α索引,所述多个图像元素(610)的第二剩余部分中的各图像元素(610)与来自所述多个α值的预定α值关联。
15.如权利要求14所述的方法,其特征在于,如果所述所选解压缩模式为所述第一解压缩模式,则所述选择步骤包括以下步骤:
-如果所述至少一个图像元素(610)属于所述多个图像元素的所述第一部分,则根据所述索引序列(750)从所述多个α值中选择所述α值;
-如果所述至少一个图像元素(610)属于所述多个图像元素(610)的所述第二剩余部分,则选择所述预定义α值。
16.一种对包括图像块(600)的压缩表示(700)的编码图像进行解码的方法,每个图像块(600)包括多个图像元素(610),压缩图像块表示(700)包括色彩码字(720)、α码字(740)、强度码字(730)以及图像元素关联索引的索引序列(750),所述方法包括以下步骤:
-对于至少一个压缩图像块表示(700),通过按照权利要求9至15中的任一项处理所述至少一个压缩图像块表示(700)来确定至少一个解压缩图像元素表示(610);以及
-通过处理所述至少一个解压缩图像元素表示(610)来产生图像。
17.一种用于压缩包括多个图像元素(610)的图像块(600)的系统(300),所述系统(300)包括:
-色彩量化器(320),用于确定色彩码字(720),所述色彩码字是所述多个图像元素(610)的色彩的表示;
-α量化器(340),用于提供包括多个量化α值(740A,740B)的α码字(740),所述量化α值是所述多个图像元素(610)的至少一个α值的表示;
-强度量化器(330),用于提供强度码字(730),所述强度码字是用于修改所述多个图像元素(610)的强度的多个强度修改符的集合的表示;
-用于提供图像元素关联索引的索引序列(750)的部件(350);以及
-用于根据所述α码字(740)来产生压缩模式信号的部件(310),其中,如果所述压缩模式信号表示第一压缩模式,
-则所述提供部件(350)可用于提供:第一索引子序列(750B),它对于所述图像块(600)中的至少一个图像元素(610)的每个子集包含与来自所述强度修改符集的强度修改符关联的强度索引;以及第二索引子序列(750A),它对于所述多个图像元素(610)的至少一部分中的各像素元素(610)包含与来自所述多个量化α值(740A,740B)的量化α值关联的α索引,以及如果所述压缩模式信号表示第二压缩模式,
-则所述提供部件(350)可用来对于所述图像块(600)中的各图像元素(610)提供与来自所述强度修改符集的强度修改符关联的强度索引,以及如果所述压缩模式信号表示第二压缩模式。
18.如权利要求17所述的系统,其特征在于,所述产生部件(310)根据所述α码字(740)的所述多个量化α值(740A,740B)中的至少一个来产生所述压缩模式信号。
19.如权利要求18所述的系统,其特征在于,所述产生部件(310)在所述多个量化α值不同时产生第一压缩模式信号,以及在所述多个量化α值相等时产生第二压缩模式信号。
20.如权利要求17至19中的任一项所述的系统,其特征在于,所述强度量化器(330)配置成用于响应所述压缩模式信号而提供所述强度码字。
21.如权利要求17至20中的任一项所述的系统,其特征在于,所述子集中的每个包括所述图像块(600)中的两个相邻图像(610)。
22.如权利要求17至20中的任一项所述的系统,其特征在于,所述子集中的每个包括一个图像元素(610),以及所述强度索引与来自所述强度修改符集的子集的强度修改符关联。
23.如权利要求17至22中的任一项所述的系统,其特征在于,所述第二索引子序列(750A)对于所述多个图像元素(600)的第一部分中的各图像元素(610)包括与所述多个量化α值(740A,740B)的量化α值关联的α索引,所述多个图像元素(610)的第二剩余部分中的各图像元素(610)与所述多个量化α值(740A,740B)的预定量化α值关联。
24.一种图像编码系统(210),包括:
-图像分解(212),用于把图像分解为多个图像块(600),各图像块(600)包括多个图像元素(610);以及
-按照权利要求17至23中的任一项的至少一个图像块压缩系统(300)。
25.一种处理包括多个图像元素(610)的图像块(600)的压缩表示(700)的系统(400),所述压缩图像块表示(700)包括色彩码字(720)、α码字(740)、强度码字(730)以及图像元素关联索引的索引序列(750),所述系统(400)包括:
-用于根据所述强度码字(730)提供多个强度修改符的集合的部件(420);
-色彩生成器(420),用于根据所述色彩码字(720)来产生所述图像块(600)中的至少一个图像元素(610)的色彩表示;
-修改符选择器(440),用于根据所述索引序列(750)对于所述至少一个图像元素(610)从所述强度修改符集中选择强度修改符;
-强度修改器(450),用于根据所述所选强度修改符来修改所述至少一个图像元素(610)的强度;
-α生成器(460),用于根据所述α码字(740)来产生至少一个α值;
-用于根据所述α码字(740)来产生解压缩模式信号的部件(410);以及
-α分配器(470),其中,如果所述解压缩模式信号表示第一解压缩模式,
-则所述分配器(470)可用于从根据所述α码字(740)产生的多个α值中选择α值,并且用于把所述所选α值分配给所述至少一个图像元素(610),以及如果所述解压缩模式信号表示第二解压缩模式,
-则所述分配器(470)可用于把所述至少一个α值分配给所述至少一个图像元素(610),以及如果所述解压缩模式信号表示第二解压缩模式。
26.如权利要求25所述的系统,其特征在于,所述产生部件(410)根据所述α码字(740)所表示的多个量化α值(740A,740B)中的至少一个量化α值(740A)的值来产生所述解压缩模式信号。
27.如权利要求26所述的系统,其特征在于,所述产生部件(410)在所述多个量化α值(740A,740B)不同时产生第一解压缩模式信号,以及在所述多个量化α值(740A,740B)相等时产生第二解压缩模式信号。
28.如权利要求25至27中的任一项所述的系统,其特征在于,所述集合提供部件(420)配置成用于响应所述解压缩模式信号而提供所述集合。
29.如权利要求25至28中的任一项所述的系统,其特征在于,在所述第一解压缩模式中,所述索引序列(750)包括:第一索引子序列(750B),它对于所述图像块(600)中的至少一个图像元素(610)的每个子集包含与来自所述强度修改符集的强度修改符关联的强度索引;以及第二索引子序列(750A),它对于所述多个图像元素(600)的至少一部分中的各像素元素(610)包含与来自所述多个α值的α值关联的α索引,以及在所述第二解压缩模式中,所述索引序列(750)对于所述图像块(600)中的各图像元素(610)包含与来自所述强度修改符集的强度修改符关联的强度索引。
30.如权利要求29所述的系统,其特征在于,所述第二索引子序列(750A)对于所述多个图像元素(600)的第一部分中的各图像元素(610)包括与来自所述多个α值的α值关联的α索引,所述多个图像元素(610)的第二剩余部分中的各图像元素(610)与来自所述多个α值的预定α值关联。
31.如权利要求30所述的系统,其特征在于,如果所述解压缩模式信号表示所述第一解压缩模式,则所述分配器(470)配置成用于在所述至少一个图像元素(610)属于所述多个图像元素的所述第一部分时根据所述索引序列(750)从所述多个α值中选择所述α值,以及用于在所述至少一个图像元素(610)属于所述多个图像元素(610)的所述第二剩余部分时选择所述预定义α值。
32.一种对包括图像块(600)的压缩表示(700)的编码图像进行解码的系统(220),每个图像决(600)包括多个图像元素(610),压缩图像块表示(700)包括色彩码字(720)、α码字(740)、强度码字(730)以及图像元素关联索引的索引序列(750),所述系统(220)包括:
-按照权利要求25至31中的任一项的至少一个系统(400),用来对于至少一个压缩图像块表示(700)来确定至少一个解压缩图像元素表示(610);以及
-用于处理所述至少一个解压缩图像元素表示(610)、以便产生图像的部件(226)。
33.包括按照权利要求17至32中的任一项的系统(210;220;300;400)的图像处理终端。
34.包括多个图像元素(610)的图像块(600)的信号表示(700),所述信号表示(700)包括:
-作为所述多个图像元素(610)的色彩的表示的色彩码字(720);
-作为用于修改所述图像块(600)中的所述图像元素(610)的强度的多个强度修改符的集合的表示的强度码字(730);
-包括多个量化α值(740A,740B)的α码字(740),所述量化α值是所述多个图像元素(610)的至少一个α值的表示;以及
-索引序列(750),对于所述图像块(600)中的至少一个图像元素(610)的各子集,包括与来自所述强度修改符集的强度修改符关联的强度索引。
CNB2004800417141A 2003-12-19 2004-12-17 多模α图像处理方法及系统 Expired - Fee Related CN100498838C (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
SE03034972 2003-12-19
SE0303497A SE526226C2 (sv) 2003-12-19 2003-12-19 Bildbehandling
SE04018503 2004-07-08

Publications (2)

Publication Number Publication Date
CN1918602A true CN1918602A (zh) 2007-02-21
CN100498838C CN100498838C (zh) 2009-06-10

Family

ID=30768816

Family Applications (3)

Application Number Title Priority Date Filing Date
CNB2004800380946A Expired - Lifetime CN100550057C (zh) 2003-12-19 2004-07-08 图像处理
CNB2004800417141A Expired - Fee Related CN100498838C (zh) 2003-12-19 2004-12-17 多模α图像处理方法及系统
CNB2004800380024A Active CN100504926C (zh) 2003-12-19 2004-12-17 阿尔法图像处理

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CNB2004800380946A Expired - Lifetime CN100550057C (zh) 2003-12-19 2004-07-08 图像处理

Family Applications After (1)

Application Number Title Priority Date Filing Date
CNB2004800380024A Active CN100504926C (zh) 2003-12-19 2004-12-17 阿尔法图像处理

Country Status (15)

Country Link
US (1) US7636471B2 (zh)
EP (2) EP2688042B1 (zh)
JP (1) JP4444967B2 (zh)
CN (3) CN100550057C (zh)
AU (1) AU2004298705B2 (zh)
BR (1) BRPI0417576B1 (zh)
CA (1) CA2545414C (zh)
ES (1) ES2716560T3 (zh)
HU (1) HUE042288T2 (zh)
PL (1) PL2688042T3 (zh)
RU (1) RU2317587C1 (zh)
SE (1) SE526226C2 (zh)
TR (1) TR201901009T4 (zh)
WO (1) WO2005059836A1 (zh)
ZA (1) ZA200604184B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102025987A (zh) * 2009-09-17 2011-04-20 佳能株式会社 图像处理设备和控制方法
CN113076050A (zh) * 2021-04-25 2021-07-06 深圳创维-Rgb电子有限公司 基于内存拷贝的人机交互方法、装置、电视机及存储介质

Families Citing this family (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
SE526226C2 (sv) 2003-12-19 2005-08-02 Ericsson Telefon Ab L M Bildbehandling
SE0401852D0 (sv) 2003-12-19 2004-07-08 Ericsson Telefon Ab L M Image processing
SE0401850D0 (sv) 2003-12-19 2004-07-08 Ericsson Telefon Ab L M Image processing
ES2569419T3 (es) 2005-05-27 2016-05-10 Telefonaktiebolaget Lm Ericsson (Publ) Procesamiento de imágenes basado en peso
EP1924970B1 (en) * 2005-08-19 2009-03-11 TELEFONAKTIEBOLAGET LM ERICSSON (publ) Texture compression based on two hues with modified brightness
US7873212B2 (en) 2006-01-24 2011-01-18 Nokia Corporation Compression of images for computer graphics
US7787691B2 (en) * 2006-04-11 2010-08-31 Telefonaktiebolaget Lm Ericsson (Publ) High quality image processing
US8233003B2 (en) 2007-03-12 2012-07-31 Seiko Epson Corporation Image processing device, image processing method, and electronic instrument
JP5157419B2 (ja) * 2007-03-12 2013-03-06 セイコーエプソン株式会社 画像処理装置、画像処理方法及び電子機器
JP5306317B2 (ja) * 2007-04-04 2013-10-02 テレフオンアクチーボラゲット エル エム エリクソン(パブル) ベクトルを使用する画像処理
KR101431185B1 (ko) * 2007-06-22 2014-08-27 삼성전자 주식회사 영상 향상 방법 및 장치, 이를 이용한 영상 처리 시스템
TWI366391B (en) * 2007-06-28 2012-06-11 Novatek Microelectronics Corp Method and circuit for correcting signals and image correcting method and circuit using the same
US8013862B2 (en) * 2007-11-16 2011-09-06 Microsoft Corporation Texture codec
US20100226568A1 (en) * 2009-03-09 2010-09-09 Smith Micro Software, Inc. Effective color modeling method for predictive image compression
CN102571270A (zh) * 2009-03-27 2012-07-11 华为技术有限公司 解码方法及装置
KR20100136890A (ko) * 2009-06-19 2010-12-29 삼성전자주식회사 컨텍스트 기반의 산술 부호화 장치 및 방법과 산술 복호화 장치 및 방법
WO2011065886A1 (en) * 2009-11-24 2011-06-03 Telefonaktiebolaget L M Ericsson (Publ) Decoding system and method operable on encoded texture element blocks
US8659616B2 (en) * 2010-02-18 2014-02-25 Nvidia Corporation System, method, and computer program product for rendering pixels with at least one semi-transparent surface
CN102244779B (zh) * 2010-05-11 2014-07-30 联想(北京)有限公司 数据的发送和接收方法及设备、数据传输系统
US9129543B2 (en) * 2010-06-18 2015-09-08 Telefonaktie L M Ericsson (publ) Texture compression and decompression
EP3334161B1 (en) 2010-09-13 2019-08-21 Sony Interactive Entertainment Inc. Image processing device, image processing method, and data structure of moving image file
US10057559B2 (en) * 2010-12-03 2018-08-21 Koninklijke Philips N.V. Transferring of 3D image data
US20130294505A1 (en) * 2011-01-05 2013-11-07 Koninklijke Philips N.V. Video coding and decoding devices and methods preserving
CN103404138B (zh) * 2011-01-05 2017-01-18 皇家飞利浦电子股份有限公司 保留ppg相关信息的视频编码与解码设备及方法
GB2487717B (en) * 2011-01-25 2017-06-21 Advanced Risc Mach Ltd Image encoding method
EP2695140A1 (en) 2011-04-04 2014-02-12 Telefonaktiebolaget LM Ericsson (PUBL) A method and a processor for texture compression
WO2012146320A1 (en) * 2011-04-29 2012-11-01 Telefonaktiebolaget L M Ericsson (Publ) Encoder, decoder and methods thereof for texture compression
CN102972023B (zh) 2011-07-13 2016-09-28 松下知识产权经营株式会社 图像压缩装置、图像解压缩装置以及图像处理装置
JP6003049B2 (ja) * 2011-11-30 2016-10-05 富士通株式会社 情報処理装置、画像送信方法及び画像送信プログラム
JP5915131B2 (ja) * 2011-12-08 2016-05-11 ソニー株式会社 画像処理装置、画像処理方法及びプログラム
US9106936B2 (en) * 2012-01-25 2015-08-11 Altera Corporation Raw format image data processing
WO2014014238A1 (en) 2012-07-17 2014-01-23 Samsung Electronics Co., Ltd. System and method for providing image
KR102091137B1 (ko) * 2012-07-17 2020-03-20 삼성전자주식회사 영상 제공 시스템 및 방법
US10147202B2 (en) * 2013-03-15 2018-12-04 Arm Limited Methods of and apparatus for encoding and decoding data
US9716871B2 (en) * 2014-09-30 2017-07-25 Apple Inc. YUV signal generation for high dynamic range video content
CN104899838B (zh) * 2015-05-29 2017-11-28 小米科技有限责任公司 调整图像的方法及装置
US10645418B2 (en) * 2018-04-13 2020-05-05 Google Llc Morphological anti-ringing filter for lossy image compression

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6451888A (en) * 1987-08-24 1989-02-28 Sharp Kk Picture processor
CA1315392C (en) * 1988-11-18 1993-03-30 Taejeong Kim Side-match and overlap-match vector quantizers for images
US5204665A (en) * 1990-05-02 1993-04-20 Xerox Corporation Color editing with simple encoded images
DE4335143A1 (de) * 1993-10-15 1995-04-20 Hell Ag Linotype Verfahren und Einrichtung zur Umsetzung von Farbwerten
RU2105351C1 (ru) * 1995-02-06 1998-02-20 Товарищество с ограниченной ответственностью "Информ Инжиниринг" Способ анализа изображения текстуры объекта
US5742892A (en) * 1995-04-18 1998-04-21 Sun Microsystems, Inc. Decoder for a software-implemented end-to-end scalable video delivery system
US5793371A (en) * 1995-08-04 1998-08-11 Sun Microsystems, Inc. Method and apparatus for geometric compression of three-dimensional graphics data
US6404923B1 (en) * 1996-03-29 2002-06-11 Microsoft Corporation Table-based low-level image classification and compression system
US5748904A (en) * 1996-09-13 1998-05-05 Silicon Integrated Systems Corp. Method and system for segment encoded graphic data compression
US5926647A (en) * 1996-10-11 1999-07-20 Divicom Inc. Processing system with dynamic alteration of a color look-up table
US6658146B1 (en) * 1997-10-02 2003-12-02 S3 Graphics Co., Ltd. Fixed-rate block-based image compression with inferred pixel values
US5956431A (en) 1997-10-02 1999-09-21 S3 Incorporated System and method for fixed-rate block-based image compression with inferred pixel values
JPH11313219A (ja) * 1998-01-20 1999-11-09 Fujitsu Ltd カラーデータ変換方法
CA2347383A1 (en) 1998-07-03 2000-01-13 Hudson Co., Ltd. Image coding/decoding method and recordind medium having program for this method recorded thereon
US6636222B1 (en) * 1999-11-09 2003-10-21 Broadcom Corporation Video and graphics system with an MPEG video decoder for concurrent multi-row decoding
AU3887600A (en) * 1999-03-19 2000-10-23 Microsoft Corporation Methods and apparatus for generating and representing luminance intensity values
US7251360B2 (en) * 2003-02-14 2007-07-31 Canon Kabushiki Kaisha Look-up table generation method, computer program, and imaging apparatus
SE0401852D0 (sv) * 2003-12-19 2004-07-08 Ericsson Telefon Ab L M Image processing
SE0401850D0 (sv) * 2003-12-19 2004-07-08 Ericsson Telefon Ab L M Image processing
SE526226C2 (sv) 2003-12-19 2005-08-02 Ericsson Telefon Ab L M Bildbehandling

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102025987A (zh) * 2009-09-17 2011-04-20 佳能株式会社 图像处理设备和控制方法
CN102025987B (zh) * 2009-09-17 2014-01-08 佳能株式会社 图像处理设备和控制方法
CN113076050A (zh) * 2021-04-25 2021-07-06 深圳创维-Rgb电子有限公司 基于内存拷贝的人机交互方法、装置、电视机及存储介质
CN113076050B (zh) * 2021-04-25 2022-05-20 深圳创维-Rgb电子有限公司 基于内存拷贝的人机交互方法、装置、电视机及存储介质

Also Published As

Publication number Publication date
TR201901009T4 (tr) 2019-02-21
CN100504926C (zh) 2009-06-24
EP2688042A1 (en) 2014-01-22
CA2545414C (en) 2014-08-26
SE526226C2 (sv) 2005-08-02
CA2545414A1 (en) 2005-06-30
SE0303497L (sv) 2005-06-20
PL2688042T3 (pl) 2019-06-28
JP2007515124A (ja) 2007-06-07
CN1898699A (zh) 2007-01-17
RU2317587C1 (ru) 2008-02-20
EP2688042B1 (en) 2019-01-09
HUE042288T2 (hu) 2019-06-28
US7636471B2 (en) 2009-12-22
CN1898700A (zh) 2007-01-17
US20070140554A1 (en) 2007-06-21
ES2716560T3 (es) 2019-06-13
CN100498838C (zh) 2009-06-10
SE0303497D0 (sv) 2003-12-19
BRPI0417576A (pt) 2007-03-20
AU2004298705A1 (en) 2005-06-30
CN100550057C (zh) 2009-10-14
ZA200604184B (en) 2007-11-28
WO2005059836A1 (en) 2005-06-30
EP1697897B1 (en) 2014-05-21
JP4444967B2 (ja) 2010-03-31
BRPI0417576B1 (pt) 2017-04-18
EP1697897A1 (en) 2006-09-06
AU2004298705B2 (en) 2009-08-20

Similar Documents

Publication Publication Date Title
CN1918602A (zh) 多模α图像处理
CN1238799C (zh) 在运动估计或补偿中进行次像素插值的方法和系统
CN1294540C (zh) 编解码坐标内插符关键字数据和关键值数据的装置
CN1178460C (zh) 图象编码方法和图象编码装置
CN1315331C (zh) 图像信号转换方法和设备以及图像提供系统
CN1135707C (zh) 使用可逆子波变换和嵌入代码流进行压缩的方法和装置
CN1238798C (zh) 在运动估计或补偿期间使用近似双立方过滤器的方法和系统
CN1545813A (zh) 图象编码装置、图象译码装置、图象编码方法、图象译码方法、图象编码程序和图象译码程序
CN1281064C (zh) 利用与像素块分类信息对应的映射系数的图像编码和解码
CN1268135C (zh) 编码方法、编码装置和记录媒体、以及解码方法、解码装置和记录媒体
CN1700255A (zh) 图像发送装置、图像接收装置以及图像传送系统
CN101065784A (zh) 计算机图形处理
CN1456999A (zh) 色度运动矢量取整
CN1510928A (zh) 动态图象预测方式
CN1993976A (zh) 利用熵编码的彩色图像数据的无损压缩
CN1838724A (zh) 解码设备、逆量化方法、分布确定方法及其程序
CN1685369A (zh) 视频编码的低复杂性和统一标准的变换
CN1943243A (zh) 二维信号编码/解码方法和设备
CN1606351A (zh) 用于数字视频加水印的色彩选择方案
CN1645937A (zh) 给数字视频加水印的方案
CN1750107A (zh) 图像处理及传输设备、显示器、图像处理及传输方法
CN1744720A (zh) 可变长度解码装置
CN1153468C (zh) 编码装置、译码装置和编码、译码方法以及图象处理装置
CN1946181A (zh) 图像处理、压缩、解压缩、传输、发送、接收装置和方法及其程序以及显示装置
CN1229758C (zh) 正交变换图像的分辨率变换装置和方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20090610

Termination date: 20191217