其中N是像块的水平、垂直像素数,一般取N=8。N大于8时效率增加不多而复杂性大为增加。8*8的二维数据块经DCT后变成8*8个变换系数,这些系数都有明确的物理意义。譬如当U=0,V=0时F(0,0)是原64个样值的平均,相当于直流分量,随着U,V值增加,相应系数分别代表逐步增加的水平空间频率和垂直空间频率分量的大小。当我们先只考虑水平方向上一行数据(8个像素)的情况时,如图1所示: 可见图像信号被分解成为直流成分;以及从低频到高频的各种余弦成分;而DCT系数只是表示了该种成分所占原图像信号的份额大小;显然,恢复图像信息可以表示为这样一个矩阵形式:F(n)=C(n)*E(n) 式中E(n)是一个基底 ,C(n)是DCT系数,F(n)则是图像信号。 如果再考虑垂直方向上的变化,那么,就需要一个二维的基底,即该基底不仅要反映水平方向频率的变化;而且要反映垂直空间频率的变化;对应于8*8的像素块;其空间基底如图2所示:它是由64个像素值所组成的图像,通常也称之为基本图像。把它们称为基本图像是因为在离散余弦变换的反变换式中,任何像块都可以表示成64个系数的不同大小的组合。既然基本图像相当于变换域中的单一的系数,那么任何像元也可以看成由64个不同幅度的基本图像的组合。这与任何信号可以分解成基波和不同幅度的谐波的组合具有相同的物理意义。 图2给出了一个对8*8像块进行DCT变换的具体例子: 在如图3所示的实例中,可以看出:经过一次DCT变换计算后,64个样值仍然得到64个系数,本身码率并没有压缩;但是,经DCT变换后,比特数却增加了。原样值是8比特,数据从0~255;得到的F10即直流分量的最大值是原来256的64/8份,即0~2047,交流分量的范围是-1024~1023;但经过第2个步骤,即量化之后(图中△:4),大多数高频分量的系数变为0,一般说来,人眼对低频分量比较敏感,对高频分量则不太敏感;因而量化的结果是去掉了不太重要的高频分量,降低了码率。再通过“之”字型(Zig-Zag)方式读出数据,这样读出也可以减少码率。因为经DCT变换以后,系数大多数集中在左上角,即低频分量区,因此“之”字型读出实际上是按二维频率的高低顺序读出系数的。这样就便于采用游程长度编码(Run Length Encoding),所谓游程长度编码是指一个码可以同时表示码的值和前面有几个零。这样就发挥了“之”字型读出的优点,因为“之”字型读出,出现连零的机会比较多,特别到最后,如果都是零,在读到最后一个数后,只要给出“块结束”(EOB)码,就可以结束输出,因此节省了很多码率。
关于JPEG与MPEG JPEG是JOINT PHOTOGRAPHIC EXPERTS GROUP的缩写,主要用于计算机静止图像的压缩,在用于活动图像时,其算法仅限于帧内,便于编辑。它主要使用了两类算法:一类是DCT,用来得到不同质量的图像;另一类算法是差值脉冲编码的方法,作为一种无损或近似无损的压缩方法。JPEG还定义了两种工作模式。一种是顺序方式(sequential)。顺序方式中,第一段或第一行数据先编码,然后第二行,直到图像结束。每一段数据都全部编码,解码时按编码的顺序进行。另一种模式是逐步方式(progressive),整幅图像先按低图像质量的水平编码,然后对同一图像再进行编码直到最佳质量。每次编码只传送提高质量的信息直到最佳状态。解码器先解出传送的基本的低质量图像。然后按相同的顺序逐步加上修正信息。JPEG定义了一个基本系统(baseline system),使用约定格式的DCT算法,用于所有使用DCT压缩算法的JPEG系统,该基本系统能按几种方法进行扩展。扩展系统可以使用逐步方式、高精度(12比特/样值)以及其它编码方法。另外一种无损压缩方法使用差值脉冲编码方法则不建立在上述基本的DCT系统中。使用哪一种压缩方法依赖于要压缩的图像。对于在测试算法时所用的自然彩色图像(4:2:2CCIR601 Y,U,V的图像,每个像素16比特),得到可识别图像的质量只需要每像素0.15比特,可用的图像需每像素0.25比特;每像素0.75比特时图像质量已相当好,在每像素1.5比特左右与原图像基本没有什么差别。 由于JPEG没有利用时间方向上的冗余,因此JPEG在帧内编码方式上提供了多种多样的方法和选择。 目前,大部分非线性编辑系统,都使用了JPEG方式,因为其是帧内压缩方式可以逐帧编辑。 现在接触过图像技术的人恐怕很少有不知道MPEG的,MPEG是运动图像专家组的缩写(MOVING PICTURES EXPERT GROOP)成立于1988年以建立活动图像及相应音频的编码标准。 实际上MPEG是一个标准系列,有MPEG-1,MPEG-2和MPEG-4。MPEG-1是低精度图像模式,如352*288(PAL)25帧,适用于低比特率的应用。如果是CD-ROM则输出码率为1.5Mbps左右时编码效率较高。MPEG-2的主级和主类提供720*576,25帧的CCIR601建议图像质量。在压缩率为30:1或更小的时候,MPEG-2可以提供广播质量的编码图像。MPEG-2也可工作在大压缩比下,如200:1,但效果与MPEG-1相差不大。原来还有MPEG-3,用于高清晰度电视的码率压缩,支持1920*1080 30帧格式,输出码率在20到40Mbps。但目前MPEG-3已取消。因为MPEG-1和MPEG-2也能工作在HDTV。目前HDTV也包括在MPEG-2中。MPEG-4现在正处在明确其应用的阶段,希望1998年11月能正式通过。MPEG-4主要是在帧重建方面有非常有效的方法,就像MIDI使用预先存在的声音元素,用占带宽窄的命令来产生实际的声音。MPEG-4考虑了语言和视频合成、几何分形、计算机可视化和人工智能技术,以很少的数据产生精确的图像。 MPEG-2本身不是一个具体的系统标准,而是一种语法元素的工具包,它具有不同的压缩等级,可以这么说MPEG-2是一个家庭,相互有共同性和兼容性。MPEG-2有4种输入格式,称为级(Levels)。从有限清晰度的VHS质量图像直到HDTV图像每一种输入格式编码后有一个相应的范围。除了在源格式提供这种灵活性之外,MPEG-2还有不同的处理方法,称为类(Profiles),每一类都包括压缩和使用方法的一个集合。不同的类意味着使用不同集合的码率压缩工具。提供前一类没有使用的附加工具。 因为有关MPEG-2的介绍文献已经很多,关于MPEG-2的运动控制、帧预测、场预测、双基预测等其它详细内容请读者自行参阅相关文献。