编码设备和方法、解码设备和方法以及传输系统的制作方法

文档序号:7539914阅读:395来源:国知局
专利名称:编码设备和方法、解码设备和方法以及传输系统的制作方法
技术领域
本发明涉及编码设备和方法、解码设备和方法以及传输系统,尤 其涉及一种编码设备和方法、解码设备和方法以及传输系统,其中可作为解码的图像。
背景技术
传统上广泛使用的图像数据压缩编码方法是JPEG (联合图像专 家组)方法,它由ISO (国际标准组织)标准化。使用该JPEG方法, 图像数据被划分成块,并且每个划分的区域经受DCT(离散余弦变换) 来获得DCT系数,并且获得的DCT系数经受量化和进一步经受熵编 码,从而实现高质量和高压缩比。此外,在近些年来,对这样的编码方法进行了许多研究,其中用 被称为滤波器组(其中组合了高通滤波器和低通滤波器)的各滤波器 将图像被划分成的多个频带,并且对每个划分的频带执行编码。在这 些编码方法中,称为小波变换编码的编码方法尤其被看作一种新技 术,因为它没有上述DCT所具有的问题,即,在高压缩比时的块失 真,所以它是有可能替代DCT进行图像压缩编码的候选技术。例如,2001年1月完成国际标准化的JPEG 2000,其采用的压 缩编码方法组合了小波变换与使用基于比特平面的比特建模和算术 编码的高效熵编码。该JPEG 2000方法在编码效率方面实现了对传统 JPEG方法的巨大改善。专利文档l描述了其中更进一步改善编码效 率的小波变换方法。[专利文档11日本未审查专利申请z〉布No"-l30800该国际标准仅仅规定了解码器侧,并且可以自由设计编码器侧。 发明内容本发明要解决的技术问题现在以上面所述的JPEG 2000方法为例,传统上,由于该算法, 必要的头信息不能被描述,直到在完成了屏幕内所有像素的编码为 止。也就是说,该头信息描述对于解码必不可少的信息,如作为编码 结果而获得的压缩数据大小,并且需要在编码数据的末尾添加标记, 但除非是在完成了一屏幕的所有编码之后,否则不能最终确定该信 息。这不仅仅是针对JPEG 2000,对于JPEG以及MPEG (运动图 像专家组,其是一种运动图像数据压缩方法)也是如此。因此,传统图像压缩技术中存在的问题在于,编码的码流的输出 (作为压缩编码的结果)需要在整个帧或者场(在隔行图像的情况下) 的图像加密之后进行。因此存在的问题是,无法避免出现在图像数据的发送侧和接收侧 之间的一帧或一场(在隔行图像的情况下)的延迟时间。因此,本发明的一个目的是提供一种编码设备和方法、解码设备 和方法以及传输系统,其中图像数据的压缩编码和解码以及解码后的 图像数据的输出可以以较少的延迟执行。解决问题的方法根据本发明第 一方面的编码设备是一种用于编码图像数据的编 码设备,包括滤波装置,针对所述图像数据,分级执行滤波处理, 并且生成由按照频带分解的系数数据构成的多个子频带;存储装置, 累积地存储所述滤波装置生成的系数数据;和系数重排列装置,重排 列所述存储装置存储的所述系数数据,以便以预定顺序将其输出。滤波装置可以以行为增量,从图像数据的屏幕上侧向底侧执行滤 波处理。滤波装置可以针对所述图像数据,以行块为增量执行滤波处理,
其中行块是生成至少最低频带分量子频带的一行系数数据所需的行 数的图像数据。滤波装置可以在对应于图像数据的垂直方向和水平方向上执行 滤波处理。由所述滤波装置执行的所述滤波处理的抽头数和分辨率级别的 数量中的至少一个可以是根据目标延迟时间确定的。所述滤波装置可以执行小波滤波处理,其中通过所述滤波处理获 得的低频带分量子频带的系数数据进一步经受所述滤波处理。所述滤波装置可以使用提升技术执行所述小波滤波处理。在所述滤波装置使用所述提升技术执行分辨率级别-X+l的滤波处理时,这可以是对于作为低频带分量子频带用分辨率级别-x的滤波处理计算出的系数数据执行的。所述存储装置还可以包括第一緩沖装置,保存所述滤波装置执 行所述小波滤波处理的过程中生成的低频带分量子频带的系数数据; 和第二緩沖装置,保存所述滤波装置执行所述小波滤波处理的过程中 生成的高频带分量子频带的系数数据。所述第二緩冲装置可以保持所述最低频带以外的频带分量的子频带的系数数据,直到所述滤波装置生成最低频带分量子频带的系数 数据为止。系数重排列装置可以重排列系数数据,使得按照从低频带分量到 高频带分量的顺序输出子频带。系数重排列装置可以以行块为增量对图像数据执行重排列,其中 所述行块是生成至少最低频带分量子频带的一行系数数据所需的行 数的图像数据。编码设备还可以包括熵编码装置,用于执行系数数据的熵编码。 熵编码装置可以依次执行所述系数重排列装置重排列的系数数 据的熵编码。系数重排列装置可以重排列系数数据,使得按照从低频带分量到 高频带分量的顺序输出子频带; 一旦所述系数数据被所述系数重排列
装置重排列,所述熵编码装置就按照从低频带分量到高频带分量的顺 序依次执行重排列的系数数据的熵编码。熵编码装置可以执行所述滤波装置生成的系数数据的熵编码;所 述存储装置存储经受由所述熵编码装置进行的熵编码的系数数据。存储装置可以存储作为最低频带以外的频带分量的子频带生成 的并且经受了熵编码装置进行的熵编码的系数数据,直到最低频带分 量子频带的系数数据经受了熵编码装置进行的熵编码为止。系数重排列装置可以重排列所述存储装置存储的并经受了熵编 码装置进行的熵编码的系数数据,使得一旦重排列了系数数据,就按 照从低频带分量到高频带分量的顺序输出子频带,并且按照从低频带 分量到高频带分量的顺序输出重排列的系数数据。熵编码装置可以对相同子频带内的多行系数数据执行成批 (batch)熵编码。熵编码装置可以按照从低频带到高频带的顺序对关于在一维方 向上排列的系数数据流的、构成行块的所有子频带的行执行编码,其 中所述行块是与生成至少最低频带分量子频带的一行系数数据所需 的行数的图像数据相对应的系数数据组。熵编码装置可以包括量化装置,量化所述滤波装置生成的所述 系数数据;和信源编码装置,对通过所述量化装置量化所述系数数据 获得的量化结果系数执行信源编码。所述编码设备还可以包括分组化装置,将预定头添加到所述熵 编码装置对每个行块的系数数据按照从低频带分量到高频带分量的 顺序执行熵编码而获得的编码结果数据,并且将头和数据主体分组 化,其中所述行块是与生成至少最低频带分量子频带的一行系数数据 所需的行数的图像数据相对应的系数数据的集合;和发送装置,将所 述分组化装置生成的所述分组发送出去,其中所述熵编码装置、所述 分组化装置和所述发送装置同时和并行执行各个处理;熵编码装置以 行块为增量执行系数数据的熵编码; 一旦通过熵编码装置执行熵编码 而生成每个行块的编码结果数据,分组化装置就分组化每个行块的编
码结果数据;以及一旦分组化装置分组化每个行块的编码结果数据, 发送装置就发送出获得的分组。头可以记录用于标识屏幕中的行块的标识信息、数据主体的数据 长度和编码信息。熵编码装置可以包括量化装置,量化所述滤波装置生成的所述 系数数据;和信源编码装置,对通过所述量化装置量化所述系数数据 而获得的量化结果系数执行信源编码;所述编码信息包括所述量化装 置执行的量化的量化步长大小的信息。量化步长大小的信息可以包括每个子频带的量化步长大小的信息。根据本发明的第一方面的编码方法是一种用于编码图像数据的 编码设备的编码方法,该方法包括滤波步猓,针对所述图像数据, 分级执行滤波处理,并且生成由按照频带分解的系数数据构成的多个 子频带;存储控制步骤,在存储单元中累积地存储由所述滤波步骤中 的处理生成的系数数据;和系数重排列步骤,重排列由所述存储控制 步骤中的处理控制的、存储在所述存储单元中的所述系数数据,以便 以预定顺序将其输出。根据本发明第二方面的解码设备是一种对其中已编码了图像数 据的编码图像数据进行解码的解码设备,包括存储装置,存储通过 对图像数据分级执行第一滤波处理而获得的、以行为增量提供的、由 按照频带分解的系数数据构成的多个子频带的系数数据;系数重排列 装置,重排列所述存储装置存储的系数数据,以便以预定顺序将其输 出;和滤波装置,对重排列装置重排列的并从存储装置输出的系数数 据执行第二滤波处理,并且合成按照频带分解的多个子频带的系数数 据以便生成图像数据。系数重排列装置可以重排列系数数据,使得按照从低频带分量到 高频带分量的顺序输出子频带。系数重排列装置可以以行块为增量,对存储在存储装置中的系数 数据执行重排列,其中所述行块是与生成至少最低频带分量子频带的
一行系数数据所需的行数的图像数据相对应的系数数据的集合。滤波装置可以以行为增量,从屏幕上侧向底侧执行第二滤波处理,从而生成图像数据。滤波装置可以针对所述系数数据,以行块为增量执行第二滤波处理,其中所述行块是与生成至少最低频带分量子频带的一行系数数据所需的行数的图像数据相对应的系数数据的集合。滤波装置可以使用提升(lifting)技术执行第二滤波处理。 解码设备还可以包括熵解码装置,以行为增量对每个子频带执行编码数据的熵解码;其中存储装置存储由熵解码装置执行熵解码而获得的系数数据。熵解码装置可以执行编码数据的解码,其中构成行块的所有子频 带的行已被编码并将其一维排列,其中所述行块是与生成至少最低频 带分量子频带的一行系数数据所需的行数的图像数据相对应的系数 数据组。熵解码装置可以包括信源解码装置,对编码数据执行信源解码; 和反向量化装置,执行作为信源解码装置的信源解码结果而获得的系 数数据的反向量化。根据本发明第二方面的解码方法是一种用于对其中已编码了图 像数据的编码图像数据进行解码的解码设备的解码方法,该方法包 括存储控制步躁,在存储单元中存储通过对图像数据分级执行笫一 滤波处理而获得的、以行为增量提供的、按照频带分解的多个子频带 的系数数据;系数重排列步骤,重排列由所述存储控制步骤中的处理 控制的、存储在存储单元中的系数数据,以便以预定顺序将其输出; 和滤波步骤,对由重排列步骤中的处理重排列的并从存储单元输出的 系数数据执行第二滤波处理,并且合成按照频带分解的多个子频带的 系数数据以便生成图像数据。根据本发明第三方面的传输系统是一种传输系统,包括编码图 像数据的编码设备;和解码其中已经编码了图像数据的编码数据的解 码设备;该传输系统用于在编码设备与解码设备之间传输编码数据;
其中,编码设备包括第一滤波装置,针对所述图像数据,分级执行 第一滤波处理,并且生成由按照频带分解的系数数据构成的多个子频 带;存储装置,累积地存储所述第一滤波装置生成的系数数据;和系 数重排列装置,重排列所述存储装置存储的所述系数数据,以便以预 定顺序将其输出;其中,解码设备包括第二滤波装置,对已经经由 传输路径从所述编码设备传输的、由系数重排列装置重排列的并从存 储装置输出的系数数据执行第二滤波处理,并且合成按照频带分解的 多个子频带的系数数据以便生成图像数据。根据本发明的第 一方面,针对所述图像数据,分级执行滤波处理, 生成由按照频带分解的系数数据构成的多个子频带,累积地存储所生 成的系数数据,并且重排列所存储的所述系数数据,以便以预定顺序 将其输出。根据本发明的第二方面,存储通过对图像数据分级执行第 一滤波 处理而获得的、以行为增量提供的、按照频带分解的多个子频带的系 数数据,重排列所存储的系数数据,以便以预定顺序将其输出,对重 排列并输出的系数数据执行第二滤波处理,并且合成按照频带分解的 多个子频带的系数数据以便生成图像数据。根据本发明的第三方面,在编码设备上,针对所述图像数据,分 级执行第一滤波处理,生成由按照频带分解的系数数据构成的多个子 频带,累积地存储所生成的系数数据,并且重排列所存储的所述系数 数据,以便以预定顺序将其输出;并且在解码设备上,对于以预定顺 序重排列的系数数据并通过传输路径从编码设备发送的系数数据执 行第二滤波处理,并且合成按照频带分解的多个子频带的系数数据以 便生成图像数据。优点根据本发明,针对所述图像数据,分级执行滤波处理,生成按照 频带分解的系数数据构成的多个子频带,累积地存储所生成的系数数 据,并且重排列所存储的所述系数数据,以便以预定顺序将其输出, 从而在解码时,可以按照提供系数数据的顺序对其进行处理,并且可
以减少从编码图像数据到解码编码数据和输出图像数据的延迟时间, 这是优点。


图1是示出应用了本发明的图像编码设备的示例的配置的框图。图2是示意性描述小波变换的轮廓线条图。 图3是示意性描述小波变换的轮廓线条图。图4是示意性描述在对5x3滤波器应用提升技术的情况下的小波 变换的轮廓线条图。图5是示意性描述在对5x3滤波器应用提升技术的情况下的小波 变换的轮廓线条图。图6是示意性描述通过用5x3滤波器提升(lifting)到划分级别 =2来执行滤波的示例的轮廓线条图。图7是示意性描述根据本发明的小波变换和反小波变换的流程 的轮廓线条图。图8是描述编码处理的示例的流程图。图9是示出应用了本发明的图像解码设备的示例的框图。图IO是描述解码处理的示例的流程图。图11是示意性描述应用了本发明的图像编码设备和图像解码设 备的各组件的并行操作的轮廓线条图。图12是示出应用了本发明的图像编码设备的示例的配置的框图。图13是描述在图像编码设备侧上执行小波系数的重排列处理的 情况下的处理流程的轮廓线条图。图14是描述在图像解码设备侧上执行小波系数的重排列处理的 情况下的处理流程的轮廓线条图。图15是示出应用了本发明的图像编码设备的示例的配置的框图。图16是示出应用了本发明的图像解码设备的示例的配置的框图。图17是描述如何交换编码数据的示例的示意图。 图18是示出分组的配置示例的图。图19是示出应用了本发明的图像编码设备的示例的配置的框图。图20是描述子频带的图。图21是示出要编码的量化系数的示例的图。图22是示出熵编码单元的配置示例的框图。图23是描述编码处理的流程图。图24是描述熵编码处理的流程图。图25是描述w组(w set)编码处理的流程图。图26是示出图像解码设备的配置示例的框图。图27是示出熵解码单元的配置示例的框图。图28是示出码划分单元的配置示例的框图。图29是示出码划分单元的配置示例的框图。图30是描述解码处理的流程图。图31是描述熵解码处理的流程图。图32是描述w组解码处理的流程图。图33是示出熵编码单元的另一配置示例的框图。图34是示出要编码的量化系数的示例的图。图35是描述w组编码处理的流程图。图36是描述w组解码处理的流程图。图37是示出应用了本发明的数字三轴(triax)系统的示例的配置 的框图。图38是示出应用了本发明的无线传输系统的示例的配置的框图。图39是示出应用了本发明的家用游戏机的示例的配置的图。 图40是示出应用了本发明的信息处理系统的配置示例的图。 附图标记1图像编码设备10小波变换单元11中间计算緩沖单元12系数重排列緩沖单元13系数重排列单元14速率控制单元15熵编码单元20图像解码设备21熵解码单元22系数緩冲单元23小波逆变换单元30图像编码设备31编码重排列緩冲单元32编码重排列单元41图像编码设备42图l象解码设备43系数重排列緩沖单元111图像编码设备121小波变换单元122量化单元123熵编码单元161行确定单元162 VLC编码单元163最高有效数位计算单元164 VLC编码单元165有效数位提取单元166 VLC编码单元167符号提取单元168 VLC编码单元
169码链接单元 211图像解码设备 221熵解码单元 222反向量化单元 223小波逆变换单元 251码划分单元 252行确定单元 253生成单元254 VLC解码单元255 VLC解码单元256 VLC解码单元 257量化系数合成单元 258开关单元271控制单元272存储器291控制单元401緩沖器500传输单元501三轴缆线502摄像机控制单元510视频信号编码单元511视频信号解码单元526视频信号解码单元527视频信号编码单元600传输单元601接收设备602视频信号编码单元612无线模块单元621无线模块单元 624视频信号解码单元 700视频摄l象i殳备 701家用游戏机具体实施方式
将参照附图描述根据本发明的第一实施例。图1显示可以应用到 本发明第一实施例的图像编码设备的一个配置示例。图像编码设备1 包括小波变换单元10、中间计算緩沖单元11、系数重排列緩冲单元 12、系数重排列单元13、速率控制单元14和熵编码单元15。已输入的图像数据被临时累积在中间计算緩沖单元11中。小波 变换单元10对中间计算緩冲单元11中累积的图像数据执行小波变 换。也就是说,小波变换单元10从中间计算緩沖单元11中读取图像 数据,并且用分析滤波器执行滤波处理来产生具有低频带分量和高频 带分量的系数数据,并且将生成的系数数据存储在中间计算緩冲单元 11中。小波变换单元IO具有水平分析滤波器和垂直分析滤波器,并 且在屏幕水平方向和屏幕垂直方向上对于图像数据组执行分析滤波 处理。小波变换单元10再次读取存储在中间计算緩沖单元11中的低 频带分量系数数据,用分析滤波器对于读取的系数数据执行滤波处 理,以及进一步生成具有高频带分量和低频带分量的系数数据。生成 的系数数据被存储在中间计算緩冲单元11中。当该处理已被重复并且划分级别已达到预定级别时,小波变换单 元10从中间计算緩冲单元11中读取系数数据,并且将读取的系数数 据写入系数重排列緩冲单元12中。系数重排列单元13以预定顺序读取被写入系数重排列緩冲单元 12中的系数数据,并且将其提供给熵编码单元15。熵编码单元15例 如用熵编码方法(如,Huffman编码或算术编码)来编码提供的系数控制熵编码单元15,以便与速率控制单元14结合操作,其中输 出压缩编码数据的比特率是大致恒定值。也就是说,速率控制单元14
向熵编码单元15提供控制信号,其中经受熵编码单元15压缩编码的 数据的比特率在其达到其目标值时,或者紧接在达到其目标值之前, 基于来自熵编码单元15的编码数据信息结束熵编码单元15的编码处 理。熵编码单元15根据从速率控制单元14提供的控制信号,在编码 处理结束时输出编码数据。将进一步详细地描述在小波变换单元10处执行的处理。首先, 将给出对小波变换的总体描述。使用图像数据的小波变换,如图2大 致所示,对作为划分结果而获得的具有低频带空间频率的数据递归地 重复用于将图像数据划分成高频带的空间频率和低频带的空间频率 的处理。因此,通过将具有低频带空间频率的数据强制划分入较小的 区域,可以进行更高效率的压缩编码。要注意,图2是在以下情况下的示例,即,将图像数据的最低频 带分量区域的划分处理重复三次,以划分成低频带分量区域L或高频 带分量区域H,其中划分级别==3。在图2中,"L"和"H"分别表示低 频带分量和高频带分量,"L,,和"H"的顺序显示了作为前侧被水平划 分的结果的频带以及作为后侧被垂直划分的结果的频带。此外,在"L,, 和"H,,之前的数字表示其区域的划分级别。此外,从图2中的示例可以看出,从屏幕的右下区域向屏幕的左 上区域以逐步的方式执行处理,其中低频带分量被强制划分。也就是 说,在图2中的示例中,区域被划分成四部分,其中屏幕右下区域3HH具有最少的低频带分量(包括最多高频带分量),该区域具有屏幕左 上区域,其被划分成进一步被划分成四个区域的四个区域,并且在这 些区域中,左上区域被进一步划分成四个区域。在最左上角的区域是 区域0LL,它具有最多的低频带分量。因为图像的能量集中在低频带分量中,所以重复执行低频带分量 的变换和划分。这也可以从根据从(如图3A所示的一个示例)划分 级别=1的状态前进到(如图3B所示的一个示例)划分级别=3的状态 的划分级别、如图3B所示正在形成的子频带中理解。例如,图2中 的小波变换的划分级别是3,因此形成10个子频带。
小波变换单元10采用配有低频带滤波器和高频带滤波器的滤波器组,正常地执行上述处理。要注意,数字滤波器通常具有冲激响应, 即,多个抽头长度的滤波器系数,因此需要仅仅对于要执行滤波处理 的数量进行预先緩沖系数数据或输入图像数据。此外,与多步执行小 波变换的情况相似,在之前步骤中产生的小波变换系数需要仅经受能 够执行滤波处理的次数的緩冲。接着,作为可应用到本发明第一实施例的小波变换的特定示例,将描述釆用5x3滤波器的方法。采用5x3滤波器的方法是优秀的方法,原因在于可以用较少的滤波器抽头执行小波变换,并且也可以与参照传统技术所述的JPEG 2000标准一起4吏用。5x3滤波器的冲激响应(Z变换表示)配有低频带滤波器Ho(z)和高频带滤波器HKz),如表达式(1)和(2)所示。由表达式(1)和(2),可以发现低频带滤波器Ho(z)具有5个抽头,并且可以发现高频带滤波器H"z)具有3个抽头。<formula>formula see original document page 22</formula> …(1)<formula>formula see original document page 22</formula> …(2)
根据这些表达式(1)和(2 ),可以直接计算低频带分量和高频带分量的系数。现在,通过使用提升技术,可以减轻滤波处理的计算。将参照图4给出在对5x3滤波器应用提升技术的情况下、使用小波变 换进行分析过滤器侧的处理的概况。在图4中,最上步骤部分、中间步骤部分和最下步骤部分每一个 都显示输入图像的像素列、高频带分量输出和低频带分量输出。对于 最上步骤,不需要将其限于输入图像的像素列,而是也可以是用之前 的滤波处理获得的系数。这里,最上步骤部分是输入图像的像素列, 其中正方形标记表示偶数像素或行(从0开始),而圓圏标记表示奇 数像素或行。首先,作为第一步骤,在下面表达式(3)中从输入像素列生成 高频带分量系数di1。<formula>formula see original document page 22</formula>…(3)
接着,作为第二步骤,采用输入像素的奇数像素,从下面表达式
(4)生成低频带分量系数si1。
<formula>formula see original document page 23</formula> (4)
在分析滤波器侧,通过滤波处理将输入图像的图像数据划分成低 频带分量和高频带分量。
将参照图5给出在合成滤波器侧上用于执行小波逆变换的处理 的概述,该小波逆变换恢复由小波变换生成的系数。图5对应于上述 图4,采用5x3滤波器,并且显示应用提升技术的示例。在图5中, 最上步骤部分显示由小波变换生成的输入系数,其中圃團标记表示高 频带系数,而正方形标记表示低频带系数。
首先,作为第一步骤,根据下面表达式(5),由输入低频带分 量和高频带分量系数生成偶数编号的系数Si1 (从0开始)。
<formula>formula see original document page 23</formula>5)
接着,作为第二步骤,根据下面表达式(6),由在上述第一步 骤中生成的偶数编号的系数SiO和输入高频带分量的系数dJ生成奇数 编号的系数di0 <formula>formula see original document page 23</formula> (6)
在合成滤波器侧,因此通过滤波处理来合成低频带分量和高频带 分量的系数,并且执行小波逆变换。
接着,将描述根据本发明笫一实施例的小波变换方法。图6示出 用5x3滤波器提升进行的滤波处理的示例,它参照图4已经执行到划 分级别=2。在图6中,作为分析滤波器的图左侧所示的部分是图像解 码设备1侧上的小波变换单元10上的滤波器。此外,作为合成滤波 器的图右侧所示的部分是稍后所述的图像解码设备侧上的小波逆变 换单元上的滤波器。
在下面的描述中,在显示设备上的屏幕左上角的像素等作为前导 像素,例如从屏幕左端到右端扫描像素来配置一行,并且从屏幕的上 端到下端执行行的扫描,由此配置一个屏幕。
在图6中,左端列显示图像数据,位置对应于垂直方向上排列的
原始图像数据的行。也就是说,通过采用垂直滤波器垂直扫描屏幕上
的像素,执行用小波变换单元10的滤波处理。从左端第一列到第三
列显示了划分级别=1的滤波处理,并且第四到第四列显示了划分级别
=2的滤波处理。从左端起第二列显示基于左侧的原始图像数据的图像 的高频带分量输出,并且从左端起第三列显示基于原始图像数据和高 频带分量输出的低频带分量输出。其中划分级别=2的滤波处理是对于 划分级别=1的滤波处理输出而进行处理的,如从左端起列4到列6 所示。
在其中划分级别=1的滤波处理中,基于原始图像数据像素计算 高频带分量系数数据,作为第一步骤滤波处理,并且基于在第一步骤 滤波处理中计算的高频带分量系数数据和原始图像数据像素来计算 低频带分量系数数据。在图6的左侧(分析滤波器侧)第一到第三列 中示出划分级别=1的一个示例的滤波处理.计算出的高频带分量系数 数据被存储在如1所示的系数重排列緩冲单元12中。此外,计算出 的低频带分量系数数据被存储在中间计算緩沖单元11中。
在图6中,系数重排列緩沖单元12显示为用点划线环绕的部分, 而中间计算緩冲单元ll显示为用点线环绕的部分。
其中划分级别=2的过滤处理是基于保存在中间计算緩冲单元11 中的划分级别=1的滤波处理的结果而执行的。在划分级别=2的滤波 处理中,在划分级别=1的滤波处理中作为低频带分量系数计算的系数 数据被当作包括低频带分量和高频带分量的系数数据,并且执行类似 于划分级别=1的滤波处理的滤波处理。用划分级别=2的滤波处理计 算出的高频带分量系数数据和低频带分量系数数据被存储在图1所示 的系数重排列緩冲单元12中。
在小波变换单元10处,在屏幕的水平方向和垂直方向的每一个 上执行上述滤波处理。例如,首先,在水平方向上执行划分级别-1 滤波处理,并且生成的具有高频带分量和低频带分量的系数数据被存 储在中间计算緩沖单元11中。接着,在垂直方向中对于存储在中间 计算緩冲单元11中的系数数据执行划分级别=1的滤波处理。使用其
中划分级别=1的该水平和垂直方向处理,形成四个区域,这些区域是
区域HH和区域HL,其每一个由来自将高频带分量进一步划分成高 频带分量和低频带分量的系数数据形成,以及区域LH和区域LL, 其每一个由来自将低频带分量进一步划分成高频带分量和低频带分
量的系数数据形成。
对于划分级别=2,对于用划分级别=1生成的低频带分量的系数 数据,在水平方向和垂直方向的每一个上执行滤波处理。也就是说, 对于划分级别=2,通过在划分级别=1时的划分而形成的区域LL被进 一步划分成四个区域,从而进一步形成区域LL内的区域HH、区域 HL、区域LH和区域LL。
在第一实施例中,通过将处理划分成屏幕的垂直方向上的若干行 的增量,按步骤方式多次执行小波变换的滤波处理。对于图6中的示 例,用作从屏幕上第一行开始的处理的第一次处理执行对七行的滤波 处理,并且用作从第八行起的第二次处理和往后的处理的处理以四行 为增量执行滤波处理。行的数量是基于在划分为二 (高频带分量和低 频带分量)之后生成最低频带分量的一行所需要的行数。
下面,生成最低频带分量(包括其他子频带)的一行的量(相当 于最低频带分量的子频带的一行的系数数据)所需要的行的集合被称 为行块(或者区)。这里,行是指对应于小波变换之前的图像数据的、 图片或场内或者每个子频带内形成的像素数据或系数数据的一行的 量。也就是说,行块(区)是指相当于如下行数的像素数据组,即, 所述行数是生成相当于在小波变换之前的原始图像数据的、在小波变 换之后最低频带分量子频带的一行的系数数据,或者通过其像素数据 组的小波变换获得的每个子频带的系数数据组所需要的行数。
根据图6,基于存储在中间计算緩冲单元ll中的系数Ca来计算
通过划分级别=2的滤波处理结果获得的系数C5,并且基于存储在中 间计算緩冲单元ll中的系数Ca、系数Cb和系数Cc,来计算系数C4。 此外,基于存储在系数重排列緩沖单元12中的系数C2和系数C3以 及基于第五行中的像素数据,来计算系数Cc。此外,基于第五行到第七行中的像素数据计算系数C3。因此,为了获得划分级别=2的低 频带分量系数C5,第一行到第七行中的像素数据是必需的。
相反,对于第二次和以后的过滤处理,可以使用已经对之前的滤 波处理计算出并存储在系数重排列緩冲单元12中的系数数据,从而 所需行数较少。
换而言之,根据图6,在划分级别=2滤波处理结果处获得的低频 带分量系数当中,系数C5后面的下一个系数C9是基于系数C4和 C8以及存储在中间计算緩冲单元11中的系数Cc获得的。系数C4 已经通过上述第一次滤波处理计算出,并且存储在系数重排列緩沖单 元12中。类似地,系数Cc已经通过上述第一次滤波处理计算出,并 且存储在中间计算緩冲单元11中。因此,对于该第二次滤波处理, 只有计算系数C8的滤波处理是重新执行的。该新的滤波处理也是釆 用第八到第十一行执行的。
因此,对于第二次滤波处理和以后的处理,可以使用已经对前次 滤波处理计算出并存储在中间计算緩冲单元11和系数重排列緩冲单 元12中的数据,从而可以以每次仅四行为增量执行处理。
注意在屏幕上的行数不匹配编码行数的情况下,以预定方式复制 原始图像数据行以匹配编码行数,然后执行滤波处理。
在下面将要描述细节的同时,对于本发明,通过按级执行滤波处 理,仅获得相当于一行最低频带分量(对于整个屏幕的行划分成几次) 的系数数据(以行块为增量),可以在传输编码数据的情况下以最少 延迟获得解码图像。
为了执行小波变换,需要第一緩冲器和第二緩沖器,第一緩冲器 用来执行小波变换自身,而第二緩冲器用于存储在执行直到预定的划 分^l别的处理期间生成的系数。第 一緩冲器对应于中间计算緩沖单元 11,在图6中显示为用点划线环绕。在解码的时候采用存储在第二緩 沖器中的系数,这是在稍后步骤中熵编码处理的目的。
将描述在系数重排列单元13中的处理。如上所述,在小波变换 单元IO中计算的系数数据被存储在系数重排列緩沖单元l2中,其由
系数重排列单元13重排列和被读出,并且被发送到熵编码单元15。如上所述,通过小波变换,由高频带分量侧到低频带分量侧生成 系数。在图6中的示例中,在第一次,在划分级别=1滤波处理上由原 始图像的像素数据依次生成高频带分量系数Cl、系数C2和系数C3。 然后对于在划分级别=1滤波处理上获得的低频带分量系数数据执行 划分级别=2滤波处理,由此依次生成低频带分量系数C4和系数C5。 也就是说,在第一次,按系数C1、系数C2、系数C3、系数C4和系 数C5的顺序生成系数数据。基于小波变换的原理,系数数据的生成 顺序总是按这个顺序(从高频带到低频带的顺序)。相反,在解码侧上,为了以低延迟立即解码,从低频带分量生成 和输出图像是必要的。因此,希望从最低频带分量侧到高频带分量侧 重排列在编码侧上生成的系数数据,并且将其提供到解码侧。将参照图6给出进一步详细的描述。图6的右侧显示执行逆小波 变换的合成滤波器侧。采用在编码侧上第一次滤波处理中生成的最低 频带分量系数C4和系数C5以及系数Cl,执行包括解码侧上输出图 像数据的第一行的第一次合成处理(逆小波变换处理)。也就是说,对于第一次合成处理,从编码侧到解码侧按系数C5、 系数C4和系数Cl的顺序提供系数数据,由此在解码侧上,执行对 于系数C5和系数C4的合成处理,以通过合成级别=2处理(它是对 应于划分级别=2的合成处理)来生成系数Cf,并且将系数Cf存储在 緩冲器中。然后对于合成级别=1的处理(它是对应于划分级别-l的 合成处理),执行对于系数Cf和系数Cl的合成处理,由此输出第一 行。因此,对于第一次合成处理,按系数C1、系数C2、系数C3、 系数C4和系数C5的顺序在编码侧上生成并存储在系数重排列緩冲 单元12中的系数数据,被按系数C5、系数C4、系数C1等的顺序重 排列,并且提供给解码侧。注意关于在图6的右侧上显示的合成滤波器侧,从编码侧提供的 系数用括号内在编码侧上的系数号表示,并且显示括号外合成滤波器
的行号。例如,系数C1(5)显示在图6的左侧上的分析滤波器侧 上,其是系数C5,并且在合成滤波器侧上,其是在第一行上。采用在来自前一次或来自编码侧的合成处理的情况下从合成提 供的系数数据,可以执行通过在编码侧上用第二次滤波处理和其后处 理生成的系数数据的、在解码侧上的合成处理。在图6中的示例中, 采用在编码侧上用第二次滤波处理生成的低频带分量系数C8和系数 C9执行的解码侧上的第二次合成处理还需要在编码侧上在第一次滤 波处理中生成的系数C2和系数C3 ,并且解码第二行到第五行。也就是说,对于第二次合成处理,按系数C9、系数C8、系数 C2、系数C3的顺序从编码侧提供系数数据给解码侧。在解码侧上, 对于合成级别=2处理,采用在第一次合成处理中从编码侧提供的系数 C8和系数C9以及系数C4,生成系数Cg。采用系数Cg和上述系数 C4以及通过第一次合成处理产生并存储在緩冲器中的系数Cf,生成 系数Ch,并且将系数Cb存储在緩冲器中。对于合成级别-1处理,采用在合成级别=2处理中生成并存储在 緩冲器中的系数Cg和系数Cb ,从编码侧提供的系数C2 (显示为合成 滤波器的系数C6 (2))、以及系数C3 (显示为合成滤波器的系数 C7(3)),执行合成处理,并且解码第二行到第五行。因此,对于笫二次合成处理,在编码侧上生成的系数数据一系数 C2、系数C3、(系数C4、系数C5)、系数C6、系数C7、系数C8、 系数C9被重排列并按照系数C9、系数C8、系数C2、系数C3等的 顺序提供到解码侧。因此,对于第三次合成处理以及以后的处理,类似地,存储在重 排列緩冲单元12中的系数数据被以预定方式重排列并提供给解码单 元,其中以四行为增量解码行。注意对于与包括编码侧上屏幕底部的行的滤波处理相对应的解 码侧上的合成处理,到此时生成并存储在緩冲器中的系数数据全部被 输出,从而输出行数增加。对于图6中的示例,在最后一次期间输出 八行。
注意通过系数重排列单元13的系数数据的重排列处理在读取存 储在系数重排列緩沖单元12中的系数数据的时候,将读出的地址设 置成预定顺序。下面将参照图7进一步描述上述处理。图7是釆用5x3滤波器, 通过小波变换执行到划分级别=2的滤波处理的示例。对于小波变换单 元10,图7的A中示出一个示例,在水平和垂直方向的每一个上对 输入图像数据的第一行到第七行执行第一次滤波处理(在图7中的A 的In誦l)。对于第一次滤波处理的划分级别=1处理,生成系数Cl、 C2和 系数C3的三行的量的系数数据,并且图7的B中示出一个示例,它 们每一个被置于以划分级别=1形成的区域HH、区域HL和区域LH 中(图7中的B的WT-1)。此外,通过由划分级别=2在水平和垂直方向上的滤波处理,以 划分级别=1形成的区域LL被进一步划分成四个。对于以划分级别=2 生成的系数C5和系数C4,通过系数C5将一行置于划分级别-1的区 域LL内的区域LL中,并且通过系数C4将一行置于区域HH、区域 HL和区域LH的每一个中。对于通过小波变换单元10的第二次滤波处理和以后处理,以四 行为增量执行滤波处理(图7中的A的In-2…),在划分级别=1时 以两行为增量生成系数数据,并且在划分级别=2时以一行为增量生成 系数数据。对于图6中的第二次的示例,在划分级别=1滤波处理生成相当 于系数C6和系数C7的两行的系数数据,并且图7的B中示出一个 示例,并且其位于在以划分级别=1形成的区域HH、区域HL和区域 LH的第一次滤波处理中生成的系数数据之后。在通过划分级别=1形 成的区域LL内,以划分级别=2滤波处理生成的相当于一行的系数 C9位于区域LL中,并且相当于一行的系数C8位于区域HH、区域 HL和区域LH的每一个内。在解码受到图7的B中的小波变换的数据的时候,图7的C中
示出 一 个示例,对应于编码侧上的第 一 行到第七行的第 一 次滤波处理,输出(图7的C中的Out-l)解码侧上的第一次合成处理的第一 行。然后,对应于在编码侧上从第二次直到最后一次以前的滤波处理, 在解码侧(图7的C中的Out-2...)上一次输出四行。对应于编码侧 上的最后一次的滤波处理,在解码侧上输出八行。从高频带分量侧到低频带分量侧的、通过小波变换单元10生成 的系数数据被依次存储在系数重排列緩沖单元12中。对于系数重排 列单元13,当系数数据累积在系数重排列緩冲单元12中直到可以执 行上述系数重排列时,按必要顺序重排列系数数据,并且从系数重排 列緩冲单元12中读取该系数数据。读出的系数数据被依次提供给熵 编码单元15。熵编码单元15基于从速率控制单元14提供的控制信号来控制编 码操作,从而输出数据的比特率变为目标比特率,并对于所提供的系 数数据执行熵编码。经受熵编码的编码数据被提供到解码侧。作为编 码方法,可以考虑已知的技术,如Huffman编码或算术编码。当然, 本方法不限于这些,并且可以采用能够进行逆编码处理的任何其他编 码方法。要注意,如果熵编码单元15对于从系数重排列单元13读取的系 数数据首先执行量化,并且对于获得的量化系数执行信源编码处理 (如Huffman编码或算术编码),则可以期望进一步改进的压缩优势。 对于该量化的方法,可以使用任何方法,以及可以使用例如通用的装 置,即,用于将系数数据W按量化步长大小A (如下面表达式(7) 所示的)划分的装置。量化系数-W/A ...(7)如参照图6和图7所述,对于根据本发明的第一实施例,小波变 换单元10以图像数据的多行为增量(以行块为增量)执行小波变换 处理。以这些行块为增量输出用熵编码单元15编码的编码数据。也 就是说,在采用5x3滤波器执行直到划分级别=2的处理的情况下,对 于数据的一屏输出,第一次获得作为一行的输出,第二次到最后一次
之前的一次的每一次是获得作为四行的输出,而最后一次输出八行。要注意,在用系数重排列单元13重排列之后的系数数据经受熵 编码的情况下,例如,在用图6所示的第一次滤波处理对第一系数 C5的行执行熵编码的时候,不存在水平行,即,不存在系数数据已 经生成的行。因此在这种情况下,只有一行经受熵编码。相反,在编 码系数C1的行的时候,系数C5和系数C4的行成为水平行。这些彼 此相近的多行可以被认为是配置有类似的数据,从而使多行一起经受 熵编码是高效的。此外,如上所述,对于小波变换单元10,描述采用5x3滤波器 用小波变换执行滤波处理的示例,但不限于该示例。例如,对于小波 变换单元10,可以使用诸如9x7滤波器的较长抽头数的滤波器。在这 种情况下,如果抽头数较长,滤波器中累积的行数也增加,从而从图 像数据的输入到编码数据输出为止的延迟时间变长。此外,对于上述描述,出于描述的原因,小波变换的划分级别被 描述为划分级别=2,但不应限于此,并且可以进一步增加划分级别。 划分级别增加得越多,则可以实现更好的高压缩率。例如,通常,对 于小波变换,重复直到划分级别-4的滤波处理。要注意,随着划分级 别增加,延迟时间也大大增加。因此,在将本发明的第一实施例应用到实际系统的时候,希望根 据系统所需的解码图像的延迟时间或画面质量,确定滤波器抽头数或 划分级别。滤波器抽头数或划分级别不需要是固定值,而也可以适当 可选。接着,参照图8中的流程图,描述根据如上所述的图像编码设备 1的总体编码处理的特定流程示例。在编码处理开始时,在步骤S1中,小波变换单元10将要处理的 行块的No. A设置为初始设置。在正常情况下,No.A被设置为"l"。 在设置结束后,在步骤S2中,小波变换单元10获得对于生成从最低 频带子频带的上面起第A行的这一行所必需的行数(即, 一个行块) 的图像数据,在步骤S3中,对其图像数据执行垂直分析滤波处理, 该处理用于对于在屏幕垂直方向上排列的图像数据执行分析滤波,并且在步骤S4中,执行水平分析滤波处理,该处理用于对于在屏幕水 平方向上排列的图像数据执行分析滤波。在步骤S5中,小波变换单元10确定分析滤波处理是否被执行到 最后级别,并且在确定划分级别尚未到达最后级别的情况下,处理返 回到步骤S3,其中对于当前划分级别重复在步骤S3和步骤S4中的 分析滤波处理。在步骤S5中确定分析滤波处理已被执行到最后级别的时候,小 波变换单元10将处理前进到步骤S6。在步骤S6中,系数重排列单元13按照从低频带到高频带的顺序 重排列行块A(从画面(在隔行方法的情况下是场)上部起的第A行 块)的系数。在步骤S7中,熵编码单元15使系数经受以行为增量进 行的熵编码。在熵编码结束后,在步骤S8中,熵编码单元15将行块 A的编码数据向外传输。小波变换单元10在步骤S9中将No. A的值递增"l",使下一行 块经受处理,并且在步骤SIO中确定在要处理的画面(在隔行方法的 情况下是场)中是否存在未处理的图像输入行。在确定存在未处理的 图像输入行的时候,处理返回步骤S2,并且对于要处理的新行块重复 以后处理。如上所述,重复执行步骤S2到步骤S10中的处理来编码每个行 块。在步骤SIO中做出不存在未处理的图像输入行的确定的时候,小 波变换单元10结束该画面的编码处理。对于下一画面开始新的编码 处理。在传统小波变换方法的情况下,首先,对整个画面(在隔行方法 的情况下是场)执行水平分析滤波处理,然后,对整个画面执行垂直 分析滤波处理。然后对整个获得的低频带分量依次执行类似的水平分 析滤波处理和垂直分析滤波处理。如上所述,递归地重复分析滤波处 理,直到划分级别达到最终级别为止。因此,每个分析滤波处理的结 果需要被保存在緩冲器中,但在这样的情况中,緩沖器需要保存整个
画面(在隔行方法的情况下是场)或者在此时刻的划分级别上的整个 低频带分量的滤波结果,因此需要大的存储容量(要保存的数据量很 大)。此外,在这种情况下,如果对于整个画面(在隔行方法的情况下 是场)的小波变换未结束,则不能执行后面步骤中的系数重排列或熵 编码,从而大大增加了延迟时间。相反,在图像编码设备1的小波变换单元10的情况下,如上所述,以行块为增量连续执行垂直分析滤波处理和水平分析滤波处理, 直到最后级别,所以与传统方法相比,同时(在相同时间段内)需要 保存(緩冲)的数据量较小,从而大大减少了緩冲器中需要准备的存 储容量。此外,通过执行分析滤波处理到最后级别,也可以执行后面 的系数重排列或熵编码处理的步骤(即,可以以行块为增量执行系数 重排列或熵编码)。因此,与传统方法相比,可以大大减少延迟时间。图9示出对应于图1中的图像编码设备1的图像解码设备的配置 的一个示例。从图1中的图像编码设备1的熵编码单元15输出的编 码数据(图1中的编码数据输出)被提供到图9中的图像解码设备20 的熵解码单元21 (图9中的编码数据输入),对熵编码进行解码,并 且成为系数数据。系数数据被存储在系数緩冲单元22中。小波逆变 换单元23采用存储在系数緩沖单元22中的系数数据,来执行例如参 照图5和图6所述的合成滤波器的合成滤波处理,并且将合成滤波处 理的结果再次存储在系数緩冲单元22中。小波逆变换单元23根据划 分级别重复处理,来获得解码图像数据(输出图像数据)。接着,将参照图10中的流程图描述如上所述的图像解码设备20 的整体解码处理的特定流程示例。在解码处理开始后,在步骤S31中,熵解码单元21获得编码数 据,并且在步骤S32中使编码数据经受以行为增量的熵解码。在步骤 S33中,系数緩冲单元22保存由此解码和获得的系数。在步骤S34 中,小波逆变换单元23确定是否在系数緩沖单元22中累积了相当于 一个行块的系数,如果确定未累积,则处理返回到步骤S31,执行以
后的处理,并且小波逆变换单元23等待,直到在系数緩沖单元22中 累积了相当于一个行块的系数。
在步骤S34中确定在系数緩冲单元22中累积了相当于一个行块 的系数的时候,小波逆变换单元23将处理前进到步骤S35,并且读出 保存在系数緩冲单元22中的相当于一个行块的系数。
小波逆变换单元23使读出的系数经受垂直合成滤波处理,该处 理对于在屏幕垂直方向上排列的系数执行合成滤波处理,并且在步骤 S37中,执行水平合成滤波处理,该处理对于在屏幕水平方向上排列 的系数执行合成滤波处理,并且在步骤S38中确定合成滤波处理是否 达到级别1 (划分级别的值为"l"的级别)而结束,即,确定逆变换是 否被执行到小波变换之前的状态,如果确定没有达到级别1,则处理 返回步骤S36,由此重复在步骤S36和步骤S37中的滤波处理。
在步骤S38中,如果确定逆变换处理达到级别1而结束,则小波 逆变换单元23将处理前进到步驟S39,并且向外输出通过逆变换处理 获得的图像数据。
在步骤S40中,熵解码单元21确定是否结束解码处理,并且在 确定编码数据的输入是间歇的、并且解码处理将不会结束的情况下, 处理返回步骤S31,并且重复以后的处理。此外,在步骤S40中,在 编码数据的输入结束从而解码处理结束的情况下,熵解码单元21结 束解码处理。
在使用传统小波逆变换方法的情况下,首先,在屏幕水平方向上 对要处理的划分级别上的所有系数执行水平合成滤波,然后在屏幕垂 直方向上执行垂直合成滤波。也就是说,对于每次执行合成滤波处理, 需要将合成滤波处理的结果保存在緩沖器中,但在这种情况下,緩冲 器需要保存在此时刻划分级别的合成滤波结果以及下一划分级别上 的所有系数,从而需要大的存储容量(要保存的数据量很大)。
此外,在这种情况下,不执行图像数据输出直到画面(在隔行方 法的情况下是场)内的所有小波逆变换为止,从而从输入到输出的延 迟时间大大增加。
相反,在如上所述的图像解码设备20的小波逆变换单元23的情 况下,垂直合成滤波处理和水平合成滤波处理是以行块为增量连续执 行直到级别1,从而与传统方法相比较,需要同时(在同一时间段内) 緩冲的数据量较小,从而有助于减少緩冲器中要准备的存储容量。此 外,通过执行直到级别l的合成滤波处理(小波逆变换处理),可以 在获得画面内的所有图像数据之前依次输出图像数据(以行块为增 量),从而与传统方法相比可以大大减少延迟时间。图l所示的图像编码设备l或图9所示的图像解码设备20的各 个元件的操作(图8中的编码处理或图10中的解码处理)是例如由 未示出的CPU (中央处理单元)根据预定程序来控制的。该程序例如 预先存储在未示出的ROM(只读存储器)中。然而这不限于此,并 且可以通过每个元件(包括图像编码设备或图像解码设备)之间交互 定时信号或者控制信号来操作整个设备。此外,图像编码设备或者图 像解码设备可以用计算机设备上运行的软件实现。接着,将描述根据本发明的第二实施例。对于第二实施例,进行 这样的配置,其中对于例如在上面第一实施例中描述的系统,并发地 操作图像编码设备1和图像解码设备20的各个元件,从而以较少的 延迟执行图像的压缩编码和解码处理。要注意,对于第二实施例,可以同样地应用上述参照图1到图 10在第一实施例中描述的图像编码设备1和图像解码设备20以及编 码方法和解码方法,因此将省略对其描述。图11是根据本发明第二实施例的图像编码设备1和图像解码设 备20的各个元件的示例的并发操作的示意图。图ll对应于上述图7。 在熵编码单元15中对于图像数据输入In-l (图11的A)执行第一次 小波变换WT-1 (图11中的B)。如参照图6所述,第一次小波变换 WT-1在输入头三行的时刻开始并且生成系数C1。也就是说,从图像 数据的输入In-l到开始小波变换WT-1为止,产生三行的量的延迟。生成的系数数据被存储在系数重排列緩沖单元12中。然后,输 入的图像数据经受小波变换,并且当第一次处理结束时,处理前进到
第二次小波变换WT-2。为了第二次小波变换WT-2的目的的图像数据In-2输入和第二 次小波变换WT-2并发执行通过系数重排列单元13对三个系数一系 数C1、系数C4和系数C5—的重排列Ord-l (图11的C)。要注意,从小波变换WT-1的结束到重排列Ord-l的开始的延迟 可以是基于设备或系统配置的延迟,例如,伴随着指令重排列处理的 控制信号到系数重排列单元13的传输的延迟,关于控制信号的系数 重排列单元13的处理开始所必需的延迟,或者程序处理所必需的延 迟,而不是编码处理的实际延迟。从系数重排列緩冲单元12中按照结束重排列的顺序读取系数数 据,将其提供到熵编码单元15,并且经受熵编码EC-1 (图11的D )。 熵编码EC-1可以开始,而不等待三个系数一系数C1、系数C4和系 数C5一的所有重排列的结束。例如,对于从首先输出的系数C5起的一行,在重排列结束的时刻,对于系数C5熵编码可以开始。在这种 情况下,从重排列Ord-l处理的开始到熵编码EC-1处理的开始的延 迟是一行的量。其中结束了熵编码单元15的熵编码EC-1的编码数据被通过某 种类型的传输路径(图11中的E)传输到图像解码设备20。对于传 输编码数据的传输路径,例如可以考虑如因特网之类的通信网络。在 这种情况下,编码数据通过IP (因特网协议)传输。然而,该配置不 限于此,编码数据的其他传输路径可以是通信接口 ,如IEEE 1394(电 气和电子工程师协会1394 )或以IEEE802.il标准等为代表的无线通 信。在第一次处理的七行的量到达图像编码设备1的图像数据输入 之后,依次输入往下到屏幕下沿的图像数据。对于图像编码设备l, 根据图像数据输入In-n (n为2或更多),如上所述,以四行为增量 执行小波变换WT-n、重排列Ord-n和熵编码EC-n。在图像编码设 备l中的最后一次处理的重排列Ord和熵编码EC是对于六行执行的。 在图像编码设备l中并发地执行这些处理,如图11的A到图11的D
中所示。由图像编码设备1的熵编码EC-1编码的编码数据通过传输路径 传输到图像解码设备,并且提供给熵解码单元21。熵解码单元21依 次使经过熵编码EC-1编码的所提供的编码数据经受熵编码的解码 iEC-l,并且恢复系数数据(图11中的F)。恢复的系数数据被依次 存储在系数緩冲单元22。在系数数据被存储在系数緩冲单元22 (仅 仅能够经受小波逆变换的量)之后,小波逆变换单元23从系数緩沖 单元22中读取系数数据,并且采用读取的系数数据执行小波逆变换 iWT-l (图11中的G)。如参照图6所述,小波逆变换单元23的小波逆变换iWT-l可以 在系数C4和系数C5被存储在系数緩冲单元22中的时刻开始。因此, 从熵解码单元21的解码iEC-l的开始到小波逆变换单元23的小波逆 变换iWT-l的开始的延迟是两行的量。在小波逆变换单元23结束第一次小波变换的三行的量的小波逆 变换iWT-l时,执行小波逆变换iWT-l生成的图像数据的输出Out-l (图11中的H)。对于输出Out-l,输出第一行图像数据,如参照图 6和图7所述的那样。对于图像解码设备20,通过在图像编码设备1中的第一次处理 的相当于三行的编码系数数据的输入之后,依次输入通过熵编码EC-n (n是2或更多)编码的系数数据。对于图像解码设备20,如上所述, 对于输入系数数据以四行为增量执行熵解码iEC-n和小波逆变换 iWT-n,并且依次执行通过小波逆变换iWT-n恢复的图像数据的输出 Out-n。对于六行执行对应于图像编码设备的最后一次的熵解码iEC 和小波逆变换iWT,并且输出Out输出八行。这些处理在图像解码设 备中并发执行,如图11的F到图11的H中所示。如上所述,通过按照从屏幕上部到下部的顺序,并发执行图像编 码设备1和图像解码设备20中的各种处理,可以以较小延迟执行图 像压缩处理和图像解码处理。参照图11计算在釆用5x3滤波器执行直到划分级别=2的小波变
换的情况下、从图像输入到图像输出的延迟时间。从第一行图像数据输入图像编码设备1到第一行图像数据从图像解码设备20输出的延 迟时间是下面列出的元素的总和。要注意,不包括由于系统配置而引 起的不同延迟,如传输路径的延迟或根据设备的各个部分的实际处理 定时的延迟。(1) 从笫一行输入到七行的量的小波变换WT-1结束为止的延 迟D一WT(2) 根据总共三行的量的重排列Ord-l的时间D—Ord(3) 根据三行的量的熵编码EC-1的时间D—EC(4) 根据三行的量的熵解码iEC-l的时间D_iEC(5) 根据三行的量的小波逆变换iWT-l的时间D_iWT 将参照图11计算来自上述各个元素的延迟。(1 )中的延迟D一WT是十行的量的时间。(2)中的时间D-Ord、 (3)中的时间D—EC、 (4)中的时间D—iEC和(5)中的时间DjWT每一个是三行的量的 时间。此外,对于图像编码设备1、熵编码EC-1可以在从重排列Ord-l 开始起一行之后开始。类似地,对于图像解码设备20,小波逆变换 iWT-l可以在从熵解码iEC-l开始起两行之后开始。此外,熵解码 iEC-l可以在熵编码EC-1结束相当于一行的编码时刻开始处理。因此,对于该示例,从第一行图像数据输入到图像编码设备到第 一行图像数据从图像解码设备输出的延迟时间是10+1+1+2+3=17行 的量。将考虑延迟时间给出更特定的示例。在输入图像数据是HDTV (高清晰电视)的隔行视频信号的图像数据的情况下, 一帧被配置有 例如1920像素乘1080行的分辨率,并且一个场是1920像素乘540 行。因此,如果帧频率是30Hz,则540行的一场在16.67ms(=l秒/60 场)中被输入到图像编码设备l。因此,根据七行的量的图像数据的输入的延迟时间是0.216ms (=16.67msx7/540行),它对于例如一场的更新时间来说是非常短的 时间。此外,关于上述(l)中的延迟D—WT、 (2)中的时间D—Ord、
(3)中的时间D_EC、 (4)中的时间DJEC和(5)中的时间D_iWT 的总数,要处理的行数很少,因此延迟时间大大缩短。如果执行各个 处理的元件被配置为硬件,则可以进一步缩短处理时间。接着,将描述本实施例的第三实施例。对于上述第一和第二实施 例,在用图像编码设备l执行小波变换之后重排列系数数据。相反, 对于根据本发明的第三实施例,在熵编码之后执行系数数据重排列。 也就是说,对于在这种情况下的图像编码设备,对于使输入图像数据 经受小波变换而生成的系数执行熵编码,并且对经受熵编码的数据执 行重排列处理。因此,通过在执行熵编码之后执行系数数据重排列, 可以减少对系数重排列緩冲器的存储容量的需求。例如,在输入图像数据的位精度是8位的情况下,如果执行直到 多个级别划分的小波变换,则所生成的系数数据的位精度变为例如大 约12位。在熵编码处理之前执行系数重排列处理的情况下,系数重 排列緩沖单元需要存储具有12位的位精度的系数数据的预定数量的 行的量。通过重排列要在熵编码之后经受重排列处理的、用小波变换 生成的系数数据,系数重排列緩冲器可以存储通过熵编码压缩的数 据,因此只需要少量的存储容量。图12示出根据本发明第三实施例的图像编码设备的示例。图12 中与图l所述相同的部分具有相同的附图标记,并且将省略对其详细 描述。输入图像数据被临时存储在图像编码设备30的中间计算緩冲单 元11中。小波变换单元IO对于存储在中间计算緩冲单元11中的图 像数据执行预定的小波变换,如参照第一实施例所述的那样。用小波 变换生成的系数数据被提供给熵编码单元15。熵编码单元15协同速 率控制单元14工作,并且被控制使得输出压缩编码数据的比特率大 致是固定值,并且对于提供的系数数据执行熵编码处理。也就是说, 熵编码单元15以与获得的顺序相同的顺序编码获得的系数,而不管 系数的顺序。其中通过小波变换生成的系数数据经受熵编码单元15的熵编码
的编码数据被临时存储在编码重排列緩冲单元31中。编码重排列单 元32在要重排列的编码数据被存储在编码重排列緩沖单元31中之 后,重排列和读取来自编码重排列緩冲单元31的编码数据。如参照 第一实施例所述的那样,按照从高频带分量到低频带分量、从屏幕的 上端侧到下端侧的顺序生成用小波变换单元10生成的系数数据。为 了以较少延迟在解码侧输出图像数据,按照由小波变换生成的系数数 据的低频带分量到高频带分量的顺序重排列存储在编码重排列緩冲 单元31中的编码数据,并且将其读出。从编码重排列緩冲单元31读取的编码数据作为输出编码数据, 被发送到例如传输路径。要注意,由根据第三实施例的图像编码设备30编码并输出的数 据可以用根据参照图9所述的第一实施例的图像解码设备20解码, 这与第一实施例中的情况相似。也就是说,通过例如传输路径输入图像解码设备20中的编码数据经受熵解码单元21中的熵编码的解码, 并且恢复系数数据。恢复的系数数据被顺序存储在系数緩冲单元22 中。小波逆变换单元23使存储在系数緩冲单元22中的系数数据经受 小波逆变换,并且输出图像数据。接着,将描述根据本发明的第四实施例。对于上述第一实施例到 第三实施例,对图像编码设备侧上用小波变换生成的系数数据执行重 排列处理,如图13中所示的示例那样。相反,对于本发明的第四实 施例,小波变换生成的系数数据的重排列处理被配置成在图像解码设 备侧上执行,如图14中所示的示例那样。对于用小波变换生成的系数数据的重排列处理,如参照上述笫三 实施例所述,需要相对大的容量作为系数重排列緩冲器的存储容量, 并且需要高的处理能力用于系数重排列处理的处理自身。在这种情况 下,如果图像编码设备侧上的处理能力高于一定量,即使在图像编码 设备侧上执行系数重排列处理,也不会发生问题,如第一到第三实施 例所述的那样。这里,情况是图像编码设备被安装在如移动终端(如蜂窝电话终
端或PDA (个人数字助理))的、具有相对低的处理能力的设备上。 例如,最近广泛使用其中给蜂窝电话终端添加有拍照功能的产品(被 称为具有摄像功能的蜂窝电话终端)。可以考虑其中具有摄像功能的 蜂窝电话设备图像捕获的图像数据经受小波变换的压缩编码和熵编 码,并且通过无线或有线通信传输的情况。该移动终端在其CPU处理能力方面有限,并且存储容量也有上 限。因此,用上述系数重排列的处理负荷是不能忽略的问题。因此,作为图14中所示的一个示例,通过将重排列处理置入图 像解码设备侧,可以緩解图像编码设备侧上的负荷,从而使图像编码 设备能够被安装在具有相对低的处理能力的设备(如移动终端)上。图15示出可应用到第四实施例的图像编码设备的配置的示例。 注意,在图15中,与上述图1相同的部分被给予相同的附图标记, 并且省略对其详细描述。图15中所示的图像编码设备41的配置被安排为这样的配置,其 中从上述图1中所示的图像编码设备l的配置中去除系数重排列单元 13和系数重排列緩冲单元12。换而言之,对于第四实施例,图像编 码设备41使用组合小波变换单元10、中间计算緩沖单元ll、熵编码 单元15和速率控制单元14的配置。输入的图像数据被临时累积在中间计算緩冲单元11中。小波变 换单元10对中间计算緩沖单元11中累积的图像数据执行小波变换,单元15。也就是说,生成的系数数据以根据小波变换的顺序的从高频 带分量到低频带分量的顺序提供给熵编码单元15。熵编码单元15对 提供的系数执行熵编码,其中输出数据的比特率受到速率控制单元14 的控制。将小波变换生成的系数数据作为已经受熵编码的编码数据输 出。图16示出根据第四实施例的图像解码设备的一个配置示例。注 意,在图16中,与上述图9相同的部分被给予相同的附图标记,并 且省略对其详细描述。
经受熵编码的、从图15中所述的图像编码设备41的熵编码单元 15输出的编码数据被提供给图16中的图像解码设备42的熵解码单元 21,并且成为系数数据。系数数据通过系数緩冲单元22被存储在系 数重排列緩沖单元43中。在系数数据被累积在系数重排列緩冲单元 43中直到系数数据可以被重排列为止时,小波逆变换单元23按照从 低频带分量到高频带分量的顺序重排列存储在系数重排列緩冲单元 43中的系数数据,并且读出该系数数据,然后釆用按照读出顺序的系 数数据来执行小波逆变换处理。在采用5x3滤波器的情况下,其排列 如上述图14中所示。也就是说,对于从一帧的开始(例如,经熵解码解码的系数C1、 系数C4和系数C5被存储在系数重排列緩沖单元43中的时刻)起的 处理,小波逆变换单元23从系数重排列緩沖单元43读取系数数据, 并且执行小波逆变换处理。将经受小波逆变换单元23的小波逆变换 的数据作为输出图像数据依次输出。要注意,在第四实施例的情况下,如参照图11对上述第二实施 例描述的那样,图像编码设备41的各个元件的处理、以及关于传输 路径的编码数据传输、以及图像解码设备42的各个元件的处理是并 发执行的。接着,将描述本发明的第五实施例。对于第五实施例,在第一实 施例到第四实施例中在图像编码设备与图像解码设备之间传输的编 码数据被设置为分组。图17是描述如何交换编码数据的示例的示意图。在图17所示的 示例的情况下,与上述其他实施例类似,图像数据经受小波变换,同 时以行块为增量输入图像数据仅仅预定数量的行的量(子频带51)。 在达到预定小波变换划分级别的时候,将从最低频带子频带到最高频 带子频带的系数行按照与生成它们时的顺序相反的顺序重排列,即, 按照从低频带到高频带的顺序。对于图17中的子频带51,按照对角线、垂直线和波浪线的图案 划分出的部分的每一个都是不同的行块(如箭头所示,也以行块为增
量划分并处理子频带51中的白色空间)。重排列之后的行块的系数 经受上述熵编码,从而生成编码数据。这里,如果图像编码设备按原样发送编码数据,则例如,图像解 码设备可能难以识别各个行块的边界(或者可能需要复杂的处理)。 因此,对于本实施例,进行这样的布置,其中,图像编码设备将头附 加到例如以行块为增量的编码数据,并且发送由头和编码数据组成的 分组。换而言之,在图《象编码设备生成第一行块(Lineblock-l )的编 码数据(编码器数据)后,编码数据被分组化,并且作为传输分组61 发送给图像解码设备,如图17所示。在图像解码设备接收到该分组 (接收分组71)后,解码其编码数据。类似地,在图像编码设备生成第二行块(Lineblock-2 )编码数 据后,编码数据被分组化,并且作为传输分组62发送给图像解码设 备。在图像解码设备接收到该分组(接收分组72)后,解码其编码数 据。同样类似地,在图像编码设备生成第三行块(Lineblock-3)编码 数据后,编码数据被分组化,并且作为传输分组63发送给图像解码 设备。在图像解码设备接收到该分组(接收分组73)后,解码其编码 数据。图像编码设备和图像解码设备重复上述处理,直到最终第X行 块(Lineblock-X)(传输分组64,接收分组74)为止。因此在图像 解码设备上生成解码图像81 。图18示出头的配置示例。如上所述,分组包括头(Header) 91 和编码数据,Header 91包括行块号(NUM )93和编码数据长度(LEN ) 94的描述。图像解码设备可以通过读取包含在附加到接收的编码数据上的 头中的该信息,容易地识别每个行块的边界,从而减少了解码处理的 负荷或处理时间。要注意,如图18所示,还可以添加对以配置行块的子频带为增 量的量化步长大小(Al到AN) 92的描述。因此,图像解码设备可以
以子频带为增量执行反向量化,从而能够执行更具体的图像质量控 制。此外,图像编码设备和图像解码设备可以被布置成以行块为增量 如第四实施例所述的那样并发(以流水线方式)执行编码、分组化、 交换分组和解码的各个处理。因此,可以大大减少在图像解码设备上获得图像输出为止的延迟时间。作为示例,图17示出对于隔行运动画面(60场/秒)的操作示 例。对于该示例, 一场的时间是l秒/60=大约16.7ms,但是通过并发 执行各个处理,图像输出可以被布置成以大约5ms的延迟时间获得。 接着,将描述根据本发明的第六实施例。对于第六实施例,将对 于各个上述实施例描述用图像编码设备的熵编码和在图像解码设备 上的熵解码的特定示例。对于各个上述实施例,可以采用任何方法来 进行熵编码,但通过采用用本发明示出的方法,图像编码设备可以以 较容易的计算执行编码,从而减少延迟时间、功率使用、以及緩沖器存储容量等。要注意,如上所述,对于各个实施例,在熵编码的时候可以在系 数数据的量化之后执行编码,但对于本实施例也可以这么说,由此可 以在使系数数据经受量化之后执行熵编码,或者系数数据可以经受熵 编码而不经量化。然而,如稍后将要描述的,执行量化的方法有助于 增加图像质量,因此下面将仅描述执行量化的熵编码。换而言之,将 省略对不执行量化的熵编码的描述,但可以对其应用执行量化的熵编 码的描述。此外,下面将省略系数重排列的描述。对于上述各个实施例,给 出了对于使重排列的系数数据经受熵编码的情况、重排列已经受了熵 编码的编码数据的情况、以及在熵解码之后重排列系数数据的情况的 描述。然而,这里的重排列基本上是高速执行小波逆变换处理的过程, 并且基本上与熵编码处理(和熵解码处理)没有关系。此外,即使在 执行系数重排列的情况下,也是在行块内执行其重排列,从而基本上 不影响要用本实施例描述的熵编码,尽管将在稍后描述其具体内容。 换而言之,根据本示例的熵编码方法可以类似地使用在编码已改变其 顺序的系数数据的情况下,或者在重排列之前编码系数数据的情况 下。因此,下面为了简化描述,将省略关于系数重排列的描述。换而言之,下面将对于其中图15所示的第四实施例的图像编码 设备41的熵编码单元15上执行量化处理的情况,描述根据本实施例 的熵编码。要注意,由于类似的原因,也将仅仅对应于这样的图像编 码设备描述图像解码设备,并且将省略关于系数重排列或不执行反向 量化的情况的描述。图19是示出应用了本发明的图像编码设备的示例的配置的框图。图像编码设备111具有小波变换单元121、量化单元122和熵编 码单元123。小波变换单元121例如对应于图15中的小波变换单元10,并且 执行类似的处理。也就是说,用作已经受了必要的DC电平移动的分 量信号的图像(数据)被输入到例如小波变换单元121中。小波变换 单元121使输入图像经受小波变换,并且将图像划分成多个子频带。 小波变换单元121将通过小波变换获得的子频带的小波系数提供给量 化单元122。量化单元122将从小波变换单元121提供的小波系数量化,并且 将作为其结果获得的量化系数提供给熵编码单元123。熵编码单元123使从量化单元122提供的量化系数经受熵编码, 并且将由此获得的编码作为编码图像(数据)输出。从熵编码单元123 输出的图像可以在经受了速率控制处理之后例如被分组化并被记录, 或者被提供到与图像编码设备lll相连接的其他设备(未示出)。也就是说,量化单元122和熵编码单元123对应于例如图15中 的熵编码单元15和速率控制单元14。接着,将参照图20和图21描述图19中的熵编码单元123执行 的熵编码。例如,如图20所示,根据从行L1到L6的六行配置一个子频带,
并且将与xy坐标系统中的该行上的像素相对应的位置取为(x, y)。现 在,在线条图的每一个中,左端位置上的x坐标取为0,在行L1上 的y坐标取为0。按从行Ll到行L6的光栅扫描顺序将子频带的以比特平面表示 的且在每个位置(x, y)上的量化系数从量化单元122输入到熵编码单 元123。换而言之,首先,对应于行L1的左端坐标(0,0)的量化系数被输 入到熵编码单元123。接着,对应于与坐标(O, O)右边(l, 0)相邻的坐 标的量化系数被输入到熵编码单元123,并且对应于与已输入了量化 系数的坐标相邻的坐标的量化系数被依次输入到熵编码单元123,直 到行Ll的右端上的坐标为止。当行Ll上的坐标的所有量化系数都被 输入后,对应于行L2上的每个坐标的量化系数,从行L2的左端坐标 (O,l)依次到右端的坐标,被输入到熵编码单元123,并且类似地从行 L3到行L6,对应于每行上的坐标的量化系数被输入到熵编码单元 123。例如,在图21中,如图的左上所示,在12个量化系数按照从图 20中的行L1的左端坐标开始的顺序被输入到熵编码单元123后,熵 编码单元123以预先确定的数量w (图21中w=4)为增量编码量化 系数。现在,图21中左上所示的量化系数的每一个用其被划分成二进 制数位(比特平面表示)的码的绝对值表示,并且对于图21所示的 示例,按顺序向熵编码单元123输入一行(图20中的行L1)的量化 系数"画0101"、 "+0011"、"誦0110"、 "+0010"、 "+0011"、 "+0110"、 "0000"、 "-0011"、 "+1101"、 "-0100"、 "+0111,,和"画1010"。每个量化系数由表示为"+,,(正)或"-,,(负)的量化系数码(下面称之为量化系数的符号(Sign))以及用二进制表示的量化系数的 绝对值组成。在图21中,在表示量化系数的绝对值的每个数位的值 的比特当中,图中上侧的比特表示最高顺序比特(最高顺序数位的比 特)。因此,对于量化系数"-0101",其符号是"-",并且用二进制表
示的绝对值是"0101",从而该量化系数的十进制表示是"-5"。首先,熵编码单元123确定一个输入行的量化系数(的绝对值) 是否全0,并且根据其确定结果,输出指示要编码的行的所有量化系 数是否都为0的码。在确定量化系数是全0的情况下,熵编码单元123 输出O作为指示该行的所有量化系数是否为O的码,并且结束当前正 执行的行的量化系数的编码。此外,在做出不是所有量化系数的值为 O(不是量化系数都为0)的确定的情况下,熵编码单元123输出l作 为指示该行的所有量化系数是否为0的码。在输入图中左上所示的十二个量化系数的情况下,该输入行的量 化系数可变延迟不仅仅是0,因此熵编码单元123输出1作为码,如 图中右上所示。在作为指示该行的所有量化系数是否为0的码输出指示量化系 数不是全0的码1时,接着,熵编码单元123执行前四(w)输入的 量化系数"-0101"、 "+0011"、 "-0110"、和"+0010"的编码。熵编码单元123将这次输入的四个连续量化系数的最高有效数 位(图21中变量B的值)与前一次(输入的)四(w )个量化编码的 最高有效数位进行比较,确定最高有效数位是否改变,并且输出指示 量化系数的最高有效数位的码。现在,最高有效数位是要一起编码的四(w)个量化系数当中具 有最大值的量化系数的最高有效数位。换而言之,最高有效数位指示, 对于四个量化系数当中具有最大绝对值的量化系数,最高顺序的1在 哪个数位上。因此,要一起编码的四个量化系数"-0101"、 "+0011"、 "-0110"、 "+0010,,的最高有效数位例如是"3",它是对于具有最大绝对 值的量化系数"-0110"的最高顺序1所在的数位。此外,指示量化系数的最高有效数位的码由指示最高有效数位是 否改变的码、指示最高有效数位是增加还是降低的码、以及指示最高 有效数位改变量的码组成,并且在最高有效数位未改变的情况下,不 输出指示最高有效数位是增加还是降低的码、以及指示最高有效数位 改变量的码。
在最高有效数位改变的情况下,根据最高有效数位的比较结果,熵编码单元123输出码1以指示最高有效数位改变,并且在最高有效 数位未改变的情况下,输出码O以指示最高有效数位未改变。此外,关于最高有效数位是否改变的确定,在第一次输入四个量 化系数的情况下,即,在正输入要编码的子频带的第一量化系数的情 况下(例如,在从图20中的行L1中的左边依次输入四个量化系数的 情况下),之前没有编码过子频带的量化系数,因此之前编码的四(w) 个量化系数的最高有效数位被设置为0。因此,熵编码单元123将这次输入的四个量化系数"-0101,,、 "+0011"、 "-0110,,和"+0010,,当中的最高有效数位3与前一次编码的 四个量化系数的最高有效数位O进行比较,并且因为最高有效数位已 经改变,从而输出码l。此外,熵编码单元123在指示最高有效数位改变的码1之后,输 出指示最高有效数位是增加还是降低的码。这里,熵编码单元123在最高有效数位增加的情况下输出0,而在最高有效数位降低的情况下输出1。之前的最高有效数位是O,而当前的最高有效数位是3,因此如 图中右上所示,熵编码单元123输出指示最高有效数位增加的码0。此外,在输出指示最高有效数位是增加还是降低的码之后,熵编 码单元123输出指示最高有效数位增加或降低了多少的码,即,指示 最高有效数位的改变量的码。具体地说,对于为n的最高有效数位的 改变量(即,增加的量或降低的量),熵编码单元123输出(n-l)个 码0,并且在这些0之后输出码1。在编码图3所示的头四个量化系数的情况下,最高有效数位的改 变量是3(=3-0),因此熵编码单元123输出2 (=3-1)个0,并且随 后输出l作为码。接着,熵编码单元123输出指示这次要编码的四(w)个量化系 数的每一个的绝对值的最高有效数位的码。也就是说,对于每个量化 系数,熵编码单元123输出指示量化系数的绝对值的每个数位一从最
高有效数位指示的有效数位的最大数位依次到最小数位一的值的码。这次要编码的量化系数是"-0101"、 "+0011"、 "-0110"和"+0010", 从而熵编码单元123首先输出指示首先输入的量化系数"-0101"的绝 对值的最高有效数位的码。这里,最高有效数位是3,从而熵编码单 元123输出由量化系数"-0101"的最高有效数位指示的有效数位的最 大数位的值"l"(即,第三数位)、比最大数位低一位的数位(第二 数位)的值"0"和最低顺序数位的值"1"。因此,输出指示量化系数 "-0101"的绝对值的有效数位的码"101"。同样,对于指示量化系数"+ooir,、 "-oiio"和"+ooio"绝对值的有效数位,熵编码单元123按顺序输出码"011"、 "110"和"010"。因 此,作为指示"-0101"、 "+0011"、 "-0110,,和"+0010,,的每一个的绝对 值的最高有效数位的码,输出"101011110010"。因此,熵编码单元123输出对应于要编码的四个量化系数的最高有效数位的长度的码,作为 指示量化系数的绝对值的码。最后,熵编码单元123输出指示其绝对值不为0的四(w)个量 化系数的每一个的符号的码。现在,在量化系数的符号为"+,,(正) 的情况下,熵编码单元123输出码0,并且在量化系数的符号为"-"(负) 的情况下,输出码l。这次要编码的量化系数是"-0101"、 "+0011"、 "-0110,,和"+0010",并且这些量化系数的符号按顺序是负、正、负、正,从而如图中右上所示,熵编码单元123输出"1010",作为指示量化系数的每一个的符 号的码。在第一次输入的四个量化系数被编码后,熵编码单元123接着编 码后面连续的四个量化系数"+0011"、 "+0110"、 "0000"和"-0011"。以与编码第一次(前一次)输入的量化系数的情况相同的方式,熵编码单元123首先将这次新输入的四(w)个量化系数的最高有效 数位与前一次编码的四(w)个量化系数的最高有效数位进行比较。这次输入的四(w)个量化系数"+0011"、 "+0110"、 "0000,,和 "-0011 ,,的最高有效数位是"3",它是对于具有最大绝对值的量化系数
"+0110"、最高顺序的1所在的数位,并且这与前一次编码的量化系 数的最高有效数位相同,因此熵编码单元123输出指示最高有效数位 未改变的码0。接着,熵编码单元123输出码"011110000011",其中已按顺序排 列指示这次要编码的四(w)个量化系数"+0011"、 "+0110"、 "0000" 和"-0011"的每一个的绝对值的、最高有效数位的码"011"、 "110"、 "000,,和"011"。在输出指示量化系数的绝对值的码之后,熵编码单元123输出指 示其绝对值不是O的四(w)个量化系数的每一个的符号的码。这次要编码的量化系数是"+0011"、 "+0110"、 "0000"和"-0011", 并且第三量化系数"0000,,具有绝对值0,因此熵编码单元123输出码 "001,,以指示不为0的这些量化系数一"+0011"、 "+0110"和"-0011"—的符号(正、正、负)。在编码四个量化系数"+ooir,、 "+oiio"、 "oooo"和"-ooii,,之后,熵编码单元123接着编码后面连续的四个量化系数"+1101"、"-0100"、 "+0111"和"誦0101"。熵编码单元123首先将这次新输入的四(w)个量化系数的最高 有效数位与前一次编码的四个量化系数的最高有效数位进行比较。这次输入的四(w)个量化系数"+1101"、 "-0100"、 "+0111"和 "-0101"的最高有效数位是"4",它是对于具有最大绝对值的量化系数 "+1101"、最高顺序的1所在的数位,并且这与前一次编码的量化系 数的最高有效数位"3,,不同,因此熵编码单元123输出指示最高有效 数位改变的码1。此外,之前的最高有效数位是3,并且这次最高有效数位是4, 因此熵编码单元123输出指示最高有效数位增加的码0,如图中右侧 所示。此外,熵编码单元123输出指示最高有效数位增加了多少的码。 在这种情况下,最高有效数位的改变量是1 (=4-3),因此熵编码单 元输出0 (=1-1)个零,并且进一步输出一个l (即,输出码l)。 接着,熵编码单元123输出码"1101010001111010",其中已按顺 序排列指示这次要编码的四(w)个量化系数"+1101"、 "-0100"、 "+0111"和"-1010,,的每一个的绝对值的、最高有效数位的码"1101"、 "0100"、 "0111,,和"1010"。在输出指示量化系数的绝对值的码之后,熵编码单元123输出指 示其绝对值不是O的四(w)个量化系数的每一个的符号的码。这次要编码的量化系数是"+1101"、 "-0100"、 "+0111,,和"-1010",并且这些量化系数的符号依次是正、负、正、负,如图中右下所示,熵编码单元123输出码"0101"作为指示每个量化系数的符号的码。熵编码单元123由此编码连续预定数量(w)个输入量化系数。 因此,在从熵编码单元123输出指示要编码的行的所有量化系数是否 都为0的码、以及输出指示该行的所有量化系数不都为0的码之后, 接着,输出指示w个量化系数的最高有效数位的码、指示w个量化 系数的绝对值(比特平面表示)的码和指示量化系数的符号的码。对于指示这w个量化系数的最高有效数位的码、指示w个量化 系数的绝对值的码和指示量化系数的符号的码、指示接下来的w个量 化系数的最高有效数位的码、指示这w个量化系数的绝对值的码和指 示该量化系数的符号的码被重复输出,直到该行的所有量化系数都被 编码为止。现在,对按照光栅扫描顺序编码量化系数进行描述,但编码量化 系数的顺序不一定是按照光栅扫描顺序。例如,在正编码图20中所 示的子频带的量化系数的情况下,可以进行这样的布置,其中在位置 (O,O)、 (O,l)、 (0,2)和(0,3)(即,在图中行L1到行L4的每一个的左 端的位置)上的量化系数被编码,并且接着在位置(l, 0)、 (1,1)、 (1,2) 和(1,3)上的量化数据被编码,依此类推,将图中垂直对齐的四个位置 上的量化系数取为w个量化系数并按顺序将其编码, 一次编码w个。图1中所示的执行如上所述的处理的熵编码单元123被进一步详 细地配置为如图22所示。熵编码单元123包括行确定单元161、 VLC (可变长度码)编码
单元162、最高有效数位计算单元163、 VLC编码单元164、有效数 位提取单元165、 VLC编码单元166、符号提取单元167、 VLC编码 单元168和码链接单元169。从量化单元122 (图19 )输出的量化系数被提供(输入)到行确 定单元161、最高有效数位计算单元163、有效数位提取单元165和 符号提取单元167。行确定单元161确定从量化单元122输入的要编码的 一行的所有 量化系数是否都为O,并且将指示确定结果的信息提供给VLC编码单 元162。基于指示行确定单元161做出的确定结果的信息,VLC编码单 元162向码链接单元169输出指示要编码的行的所有量化系数是否都 为0的码。最高有效数位计算单元163计算从量化单元122输入的w个连 续的量化系数的最高有效数位,并且将指示其计算结果的信息提供到 VLC编码单元164和有效数位提取单元165。基于来自最高有效数位计算单元163的指示计算结果的信息, VLC编码单元164将指示w个量化系数的最高有效数位的码提供给 码链接单元169。基于来自最高有效数位计算单元163的指示计算结果的信息,有 效数位提取单元165提取从量化单元122提供的w个量化系数的有效 数位,并且将提取的量化系数的有效数位(的数据)提供给VCL编 码单元166和符号提取单元167。VLC编码单元166基于来自有效数位提取单元165的量化系数 的有效数位,编码这些量化系数的绝对值,并且将由此获得的量化系 数的绝对值提供给码链接单元169。符号提取单元167基于来自有效数位提取单元165的量化系数的 有效数位,提取从量化单元122提供的量化系数的符号,并且将提取 的符号(的数据)提供给VLC编码单元168。VLC编码单元168编码从符号提取单元167提供的提取符号(的
数据),并且将指示由此获得的量化系数的符号的码提供给码链接单元169。码链接单元169链接分别从VLC编码单元162、 VLC编码单元 164、 VLC编码单元166和VLC编码单元168提供的指示行的所有 量化系数是否都为0的码、指示最高有效数位的码、指示量化系数的 绝对值的码和指示量化系数的符号的码,并且将其输出为编码图像 (数据)。接着,将参照图23中的流程图描述图像编码设备lll (图19) 的编码处理。该编码处理在要编码的图像(数据)被输入到小波变换 单元121之后开始。在步骤Slll中,小波变换单元121使输入图像经受小波变换, 将输入图像划分成多个子频带,并且将每个子频带的小波系数提供给 量化单元122。在步骤S112中,量化单元122量化从小波变换单元121提供的 小波系数,并且将作为其结果获得的量化系数提供给熵编码单元123。 因此,将例如参照图21描述的以比特平面表示的、在子频带中的每 个位置的量化系数输入到熵编码单元123。在步骤S113中,熵编码单元123执行熵编码处理,并且结束编 码处理。熵编码处理的细节将在稍后描述,在如参照图21描述的熵 编码处理中,熵编码单元123 —次编码从量化单元122提供的连续预 定数量(w)个量化系数,并且输出指示要编码的行的所有量化系数 是否都为0的码、指示w个量化系数的最高有效数位的码、指示量化 系数的绝对值的码和指示量化系数的符号的码作为编码图像(数据)。由此,图像编码设备lll编码和输出输入图像。接着,将参照图24描述对应于图23中的步骤S113中的处理的 熵编码处理。在图23中的步骤S112中,从量化单元122输出的量化系数被提 供到熵编码单元123 (图22)的行确定单元161、最高有效数位计算 单元163、有效数位提取单元165和符号提取单元167。
在步骤S141中,行确定单元161取指示现在要编码的子频带的 行的变量y为y-0,并且存储它。例如,在编码图20中所示的子频带的量化系数的时候,行确定 单元161取指示各行(行L1到行L6)的变量y为y=0。要注意,由 变量y指示的行y指示子频带的行上的每个位置(x, y)处的y坐标是y 的行。因此,在行确定单元161存储的变量y例如是y-0的情况下, 由该变量指示的行成为行Ll,在该行上的每个位置上的y坐标都为0。在步骤S142中,最高有效数位计算单元163取指示在行(y-l)(在 存储在行确定单元161中的变量y所指示的行y的前一行)上第一次 输入的w个量化系数的最高有效数位的变量Binit为Binit=0,并且存 储它。例如,在行(y-l)是图20所示的行L1的情况下,指示在行(y-l) 上第一次输入的w个量化系数的最高有效数位的变量Binit的值是从 图中的行Ll的左边沿起的w个量化系数,即,在位置(O, 0)、(1, 0)、…、 (w-l, O)上的w个量化系数的最高有效数位。此外,在存储在行确定 单元161中的变量y为y=0的情况下,行(y-l)不存在,因此变量Binit 的值是Binit=0。在步骤S143中,行确定单元161确定其中存储的变量y所指示 的行y的量化系数(的绝对值)是否全为O。例如,在行y是图20所 示的行Ll的时候,行确定单元161确定在行Ll上的位置(x, y)上的 所有量化系数都为0的情况下所有量化系数都为0。在步驟S143中做出量化系数全为0的确定的情况下,行确定单 元161生成关于所有量化系数都为0的信息,并且将其提供给VLC 编码单元162和最高有效数位计算单元163,并且流程前进到步骤 S144。在步骤S144中,基于关于所有量化系数都为O的信息,VLC编 码单元162向码链接单元169输出(提供)指示要编码的行的所有量 化系数都为0的码0。码链接单元169获取从VLC编码单元162提供 的码0,并且不加改变地将其输出作为作为行y的量化系数的编码结 果而获得的码。在步骤S145中,最高有效数位计算单元163将其中存储的变量 Binit的值设置为Binit-O,并且基于来自行确定单元161的关于所有 量化系数都为0的信息,更新变量Binit。在步骤S146中,行确定单元161确定在正编码的子频带的行中 是否存在任何未处理的行。也就是说,行确定单元161确定正编码的 子频带的所有行的量化系数是否已被编码。例如,在编码了图20中 所示的子频带的量化系数的情况下,行确定单元161在行Ll到L6 上的所有位置上的量化系数已被编码的点上确定不存在未处理的行。在步骤S146中做出存在未处理的行的时候,行确定单元161使 流程前进到步骤S147来编码在下一行(即,行(y+l))上的每个位置 上的量化系数。在步骤S147中,行确定单元161将指示存储的行的变量y递增 为y-y+l,流程返回到步骤S143,并且再次执行上述的后继处理。相反,在步骤S146中做出不存在未处理的行的时候,构成子频 带的所有行的量化系数都已被编码,因此行确定单元161结束熵编码 处理,流程返回图23中的步骤S113,并且编码处理结束。此外,在图24中的步骤S143中做出行y的量化系数不全为O(存 在不是0的量化系数)的时候,行确定单元161生成关于量化系数不 全为O(存在不是O的量化系数)的信息,将其提供给VLC编码单元 161和最高有效数位计算单元163,并且流程前进到步骤S148。在步骤S148中,基于来自行确定单元161的、关于量化系数不 全为0的信息,VLC编码单元162向码链接单元169输出(提供)指 示要编码的行的量化系数不全为0的码1。在步骤S149中,基于来自行确定单元161的、关于量化系数不 全为0的信息,最高有效数位计算单元163设置变量x的值为x=0, 并且存储变量x,其中变量x指示现在要编码的w个量化系数中要输 入的第一个量化系数的行y上的位置的x坐标。例如,在行y是图20中所示的行Ll的情况下,最高有效数位
计算单元163存储的变量x的值指示,在要编码的行Ll上的w个连 续位置(x, 0)、 (x+l, 0).....(x+w國l, O)中的最左上位置(x, O)的x坐标。此外,在步骤S149中,最高有效数位计算单元163将指示前一 次编码的w个量化系数的最高有效数位的变量B的值设置为B=Binit, 并且存储变量B。也就是说,最高有效数位计算单元163将变量B的 值更新为其中存储的变量Binit的值,并且存储更新后的变量B的值。在更新变量B的值后,最高有效数位计算单元163向VLC编码 单元164和有效数位提取单元165提供指示更新后的变量B (最高有 效数位)的值。此外,VLC编码单元164和有效数位提取单元165 的每一个存储从最高有效数位计算单元163提供的变量B的值。在步骤S150中,熵编码单元123执行w组编码处理,w组编码 处理的细节将在稍后描述,在w组编码处理中,熵编码单元123对存 储在行确定单元161中的变量y所指示的行y上的w个连续量化系数 进行编码。现在,由存储在行确定单元161中的变量y和存储在最高有效数 位计算单元163中的变量x所标识的行y上的位置为(x, y),行y上的w个连续位置是行y上的连续位置(x,y)、 (x+l,y).....(x+w-l, y)。也就是说,在w组编码处理中,熵编码单元123编码位置(x, y)、 (x+l, y).....(x+w-l,y)的每一个上的量化系数。在步骤S151中,最高有效数位计算单元163确定行y上是否存 在未处理的量化系数。也就是说,最高有效数位计算单元163确定由 存储在行确定单元161中的变量y所指示的行y上的位置处的所有量 化系数是否都已被编码。在步骤S151中确定行y上存在未处理的量化系数的时候,最高 有效数位计算单元163将流程前进到步骤S152来编码接下来的w个 量化系数。在步骤S152中,最高有效数位计算单元163将其中存储的变量 x取为x-x+w,并且流程返回步骤S150。因此,在后面步骤S150的 处理中编码行y上的位置(x+w,y)、 (x+w+l,y).....(x+2w画l, y)的每 一个的量化系数。此外,在步骤S151中做出行y上不存在未处理的量化系数的时 候,行y上的那些所有位置上的量化系数都已被编码,因此最高有效 数位计算单元163将流程返回步骤S146,并且执行随后的处理。因此,熵编码单元123按照光栅扫描顺序,每次预定数量个编码 子频带的每个位置上的量化系数。因此,通过按照光栅扫描顺序,编码子频带的每个位置上的量化 系数(每次预定数量个),输入的量化系数可以按照输入它们的顺序 被处理,并且可以减少由于量化系数编码而导致的延迟。接着,将描述对应于图24中的步骤S50的处理的w组编码处理。在步骤S181中,最高有效数位计算单元163取由其中存储的变 量x所标识的y行上的位置,并且在w个连续位置(x, y)、 (x+l, y)、...、 (x+w-l, y)中,取具有最大绝对值的量化系数的有效数位作为变量 Bnew的值,并且存储该变量Bnew,其中Bnew指示现在要编码的w 个量化系数的最高有效数位。此外,最高有效数位计算单元163将获得的w个量化系数的最 高有效数位,即,变量Bnew的值,提供给VLC编码单元164和有 效数位提取单元165。例如,在w个连续位置的量化系数是量化系数"-0101"、"+0011"、 "-0110"和"+0010",如图21所示,在这些量化系数中具有最大绝对值 的量化系数是"-0110",并且其有效数位是"3",它是"-0110"的最高顺 序的1所在的数位,因此变量Bnew的值被设为3。在步骤S182中,VLC编码单元164确定是否B=Bnew。也就是 说,VLC编码单元164确定指示前一次编码的w个量化系数的最大 有效数位的变量B的值是否与指示现在要编码的w个量化系数的最大 有效数位的(从最高有效数位计算单元163提供的)变量Bnew的值 相同。在步骤S182中做出B=Bnew的确定的时候,VLC编码单元164 将流程前进到步骤S183,并且向码链接单元169输出指示从现在起要
编码的w个量化系数的最高有效数位的码0。在输出指示最高有效数 位的码0之后,VLC编码单元164跳过步骤S184中的处理到步骤S188 中的处理,并且将流程前进到步骤S189。相反,在步骤S182中做出B-Bnew不成立的确定的时候,VLC 编码单元164将流程前进到步骤S184,并且(由于最高有效数位改变) 向码链接单元169输出指示最高有效数位改变的码1。在步骤S185中,VLC编码单元164获得满足下面表达式(8 ) 的整数n和m。<formula>formula see original document page 58</formula> …(8)现在,表达式(8)中的符号"A,,表示幂。因此,(-l)Am意味着(-l) 的m次方。例如,在Bnew-3且B-0的情况下,获得n=2且m=0作为满足 表达式(8)的n和m。比较Bnew与变量B,变量Bnew的值的绝对 值与变量B的值的绝对值之间的差越大,则表达式(8)中的n的值 越大。此外,在变量Bnew的值大于变量B的值的情况下,m的值为 0,相反,在变量Bnew的值小于变量B的值的情况下,m的值为1。 因此,表达式(8)中的m的值可以说是指示最高有效数位是增加还 是降低。在步骤S186中,VLC编码单元164向码链接单元169输出满足 表达式(8)的m的值作为1比特的码,该码指示最高有效数位是增 加还是降低。例如,在满足表达式(8)的m值为O的情况下,VLC 编码单元164输出指示最高有效数位增加的码0。在步骤S187中,VLC编码单元164向码链接单元169输出与满 足表达式(8 )的n的值一样多的0,然后接着输出 一个1来作为指示 最高有效数位的改变量的码。也就是说,VLC编码单元164输出n 个0和一个1,作为指示最高有效数位改变量的码。例如,在满足表达式(8)的n的值是2的情况下,VLC编码单 元164向码链接单元169输出"001"作为指示最高有效数位改变量的 码。
因此,VLC编码单元164向码链接单元169输出指示最高有效 数位改变的码、指示最高有效数位是增加还是降低的码以及指示最高 有效数位的改变量的码来作为指示从现在起要编码的w个量化系数 的最高有效数位的码。在步骤S188中,最高有效数位计算单元163将存储的变量B的 值设为B-Bnew,并且将流程前进到步骤S189。也就是说,最高有效 数位计算单元163将存储的变量B的值更新到其中存储的变量Bnew 的值。此外,VLC编码单元164和有效数位提取单元165也将存储的 变量B的值设为B=Bnew。在步骤S188中变量B的值祐 没为B-Bnew、或者在步骤S183 中输出指示量化系数的最高有效数位的码之后,在存储的变量x的值 为0的情况下,在步骤S189中,最高有效数位计算单元163将存储 的变量Binit的值设为Bink-B。也就是说,在存储的变量x的值为0的情况下,最高有效数位计 算单元163通过使指示其中存储的行(y-l)上第一次输入的w个量化系 数的最高有效数位的变量Binit的值取指示前一次编码的w个量化系 数的最高有效数位的变量B的值,更新变量Binit。因此,在变量x-0的情况下,变量Binit的值被设为Binit-B, 由此可以使用与在前一行(例如,行y)中从x-0开始的w个量化系 数的最高有效数位的相关关系,对下一行(例如,行(y+l))中从 x-0开始的w个量化系数执行量化系数的编码。在步骤S190中,有效数位提取单元165取预定变量i,并且变量 i从0变到(w-l),以便从在行y上的位置(x-i,y)上的量化系数中提 取量化系数的有效数位。有效数位提取单元165将提取的量化系数的 有效数位(的数据)提供给VLC编码单元166和符号提取单元l67。 此外,VLC编码单元166基于从有效数位提取单元165提供的有效数 位(编码有效数位),将指示w个量化系数的绝对值的码输出到码链 接单元169。现在,在位置(x+i, y)上的x的值是存储在最高有效数位计算单元
163中的变量x的值。例如,在存储在最高有效数位计算单元163中 的变量x的值为0的情况下,存储在有效数位提取单元165中的变量 B的值为3,并且量化单元122向有效数位提取单元165提供图21中 所示的w (四)个量化系数"-0101"、 "+0011"、 "-0110"、 "+0010", 它们对应于每个位置(X+i, y) (0£i£3),即,位置(O, y)、 (1, y)、 (2, y) 和(3, y)上的量化系数,有效数位提取单元165从这些量化系数中提 取有效数位。在这种情况下,存储在有效数位提取单元165中的变量B的值 是3,并且有效数位是3个数位,因此有效数位提取单元165从对应 于位置(x, y)的量化系数"-0101,,中提取"101",其是最低顺序的三个数 位。以相同的方式,有效数位提取单元165依次从位置(x+l, y)、位 置(x+2, y)和位置(x+3, y)上的量化系数"-0011"、"画0110"、和"0010" 中提取值"011"、 "110,,和"010",它们是其最低顺序开始的三个数位。 因此,量化系数"-0101"、 "-0011"、"國0110"、和"+0010,,的有效数位 (的码)"101"、 "011"、 "110,,和"010,,被输出到VLC编码单元166 和符号提取单元167。 VLC编码单元166将从有效数位提取单元165 提供的码"101"、 "011"、 "110"和"010"编码,并且将指示w个量化系 数的绝对值的码"101011110010"输出到码链接单元169。在步骤S191中,符号提取单元167取预定变量i,并且变量i 从0变到(w-l),以便从由量化单元122提供的绝对值不为0的量 化系数中的、行y上的位置(x+i, y)上的量化系数中提取量化系数的符 号,并且将提取的符号(的数据)提供给VLC编码单元168。 VLC 编码单元168编码来自符号提取单元167的符号,并且向码链接单元 169输出指示由此获得的量化系数的符号的码。在从VLC编码单元168输入指示量化系数的符号的码之后,码 链接单元169链接分别从VLC编码单元162、 VLC编码单元164、 VLC编码单元166和VLC编码单元168提供的指示该行的所有量化 系数是否都为0的码、指示量化系数的最高有效数位的码、指示量化系数的绝对值的码和指示量化系数的符号的码,将链接的码作为编码图像输出,结束w组编码处理,流程返回到图24中的步骤S150,并 且执行从步骤S151起的处理。现在,位置(x+i, y)上的x的值是存储在最高有效数位计算单元 163中的变量x的值。例如,在存储在最高有效数位计算单元163中 的变量x的值为O的情况下,量化单元122提供图21所示的w (四)个量^:系数"-oioi"、 "+ooii"、 "-oiio"、和"+ooio",它们对应于每个位置(X+i,y)(0SiS3),即,位置(0,y)、 (1, y)、 (2, y)和(3, y)上的量 化系数,"-0101"、 "+0011"、 "-0110"、和"+0010"中没有为0的,因 此符号提取单元167从这些量化系数中提取符号。在这种情况下,符号提取单元167从对应于位置(x, y)的量化系 数"-0101"中提取量化系数的符号"-"。以相同的方式,符号提取单元167依次从对应于位置(x+l, y)、 位置(x+2, y)和位置(x+3, y)的量化系数"+0011"、 "-0110"、 "+0010" 中提取量化系数的符号"+"、 "-"、 "+"。因此,将量化系数"-0101"、 "+0011"、 "-0110"、 "+0010"的符号"-"、"+"、"-"和"+"从符号提取单 元167输出到VLC编码单元168。 VLC编码单元168将从符号提取 单元167提供的量化系数的符号"-"、"+"、"-"和"+"编码。例如,在输入符号"-"后,VLC编码单元168输出码1,并且在 输入符号"+"后,输出码O,从而编码输入的符号。在这种情况下,量 化系数的符号"-"、"+"、"-,,和"+,,被输入到VLC编码单元168,从而 VLC编码单元168向码链接单元169输出由码"l"、 "0"、 "1"、 "0" 组成的码"1010"作为指示量化系数的符号的码。因此,熵编码单元123以预定单位为一批编码子频带的量化系 数,并且输出指示量化系数的最高有效数位的码、指示量化系数的绝 对值的码和指示量化系数的符号的码。因此,以预定单位为一批编码子频带的量化系数免除了基于多条 编码路径对比特平面执行多次处理的需要(不像用JPEG 2000编码图 像的情况),此外,执行可变码长度编码,所以可以大大减少编码处 理的量。因此,可以以较高速度执行图像编码,并且可以不那么昂贵 地实现实时编码高分辨率图像的编码设备。此外,在编码图像的情况下不需要显式地编码图像编码设备111 的码长度,所以可以减少码的量,并且不需要管理关于码长度的信息。要注意,尽管上面描述了在W个量化系数中取具有最大绝对值的量化系数的有效数位作为指示最高有效数位的变量Bnew的值,然 而,变量Bnew的值是等于或大于w个量化系数中具有最大绝对值的 量化系数的有效数位的值,就足够了。如果变量Bnew的值较大,则 指示量化系数的绝对值的码的码量增加,但是可以通过将变量Bnew 的值设为等于或大于具有最大绝对值的量化系数的有效数位的值,来 减少指示量化系数的绝对值的码的码量的增加。接着,将描述关于对图像编码设备lll编码的图像进行解码的图 像解码设备。图26是示出图像解码设备的配置示例的框图。图像解码设备211包括熵解码单元221、反向量化单元222和小 波逆变换单元223,编码的图像(数据)被输入到熵解码单元221。熵解码单元221对其为输入的编码图像的码执行熵解码,并且将 由此获得的量化系数提供给反向量化单元222。反向量化单元222对从熵解码单元221提供的量化系数执行反向 量化,并且将通过反向量化获得的每个子频带的小波系数提供给小波 逆变换单元223。小波逆变换单元223使从反向量化单元222提供的每个子频带的 小波系数经受小波逆变换,并且将作为其结果获得的图像作为解码图 像输出。此外,执行该处理的图像解码设备211的熵解码单元221被具体 配置为例如如图27所示。更具体地说,熵解码单元221具有码划分单元251、行确定单元 252、生成单元253、 VLC解码单元254、 VLC解码单元255、 VLC 解码单元256、量化系数合成单元257和开关单元258。
码划分单元251基于从行确定单元252、 VLC解码单元254、 VLC 解码单元255和VLC解码单元256的每一个提供的信息,划分作为 已输入的编码图像的码,并且将预定长度的划分的码提供给行确定单 元252、 VLC解码单元254、 VLC解码单元255、或VLC解码单元 256。也就是说,码划分单元251将输入的码划分成指示一个编码行的 量化系数是否全为0的码、指示w个编码的量化系数的最高有效数位 的码、指示w个编码的量化系数的绝对值的码、和指示编码的量化系 数的符号的码,并且将其分别提供给行确定单元252、 VLC解码单元 254、 VLC解码单元255和VLC解码单元256。行确定单元252基于从码划分单元251提供的码,确定编码的子 频带的一行的量化系数是否全为0,并且将指示其确定结果的信息提 供给码划分单元251、生成单元253和VLC解码单元254。生成单元253基于来自行确定单元252的指示确定结果的信息, 生成指示为0的量化系数的一行的量的码,并且将其提供给开关单元 258。VLC解码单元254将从码划分单元251提供的、指示w个编码 的量化系数的最高有效数位的码解码,获得w个编码的量化系数的最 高有效数位,并且将指示获得的最高有效数位的信息提供给码划分单 元251、 VLC解码单元255和量化系数合成单元257。VLC解码单元255基于来自VLC解码单元254的指示最高有效 数位的信息,将从码划分单元251提供的指示量化系数的绝对值的码 解码,并且将由此获得的w个量化系数的有效数位(的数据)提供给 VLC解码单元256和量化系数合成单元257。此外,VLC解码单元 255向码划分单元251提供指示解码指示量化系数的绝对值的码的结 果的信息。基于从VLC解码单元255提供的量化系数的有效数位,VLC解 码单元256将从码划分单元251提供的指示量化系数的符号的码解 码,并且将由此获得的量化系数的符号(的数据)提供给量化系数合 成单元257。此外,VLC解码单元256向码划分单元251提供指示解 码指示量化系数的符号的码的结果的信息。量化系数合成单元257基于从VLC解码单元254提供的指示最 高有效数位的信息,将从VLC解码单元255提供的量化系数的有效 数位与从VLC解码单元256提供的量化系数的符号合成,并且将由 此获得的w个量化系数提供到开关单元258。开关单元258输出来自生成单元253或量化系数合成单元257 的量化系数。图28是示出码划分单元251的更具体配置的框图。 码划分单元251具有控制单元271和存储器272。在作为编码图像的码被输入后,控制单元271将输入的码提供给存储器272以便临时存储。控制单元271然后基于从行确定单元252、 VLC解码单元254、 VLC解码单元255和VLC解码单元256的每一个提供的信息,从临 时存储在存储器272中的码中读出预定长度的码,并且将其提供给行 确定单元252、 VLC解码单元254、 VLC解码单元255或VLC解码 单元256。此外,除了图28中所示的配置示例外,码划分单元251可以被 配置成如图29所示。图29中所示的码划分单元251具有控制单元291、开关292和 节点293-1到节点293-4。在作为编码图像的码被输入后,控制单元291基于从行确定单元 252、 VLC解码单元254、 VLC解码单元255和VLC解码单元256 的每一个提供的信息,控制开关292,并且将预定长度的码提供给行 确定单元252、 VLC解码单元254、 VLC解码单元255或VLC解码 单元256。也就是说,节点293-1到节点293-4的每一个分别连接到行确定 单元252、 VLC解码单元254、 VLC解码单元255和VLC解码单元 256,并且控制单元291选择节点293-1到节点293-4之一作为码的供 应目的地,并且控制开关292和所选节点之间的连接。开关292基于输入的控制单元291的控制连接所选节点,从而输入到码划分单元251的码通过开关292和与开关292相连的节点,被提供给作为码供应目的地的行确定单元252、VLC解码单元254、VLC解码单元255或VLC解码单元256。接下来,参照图30中所示的流程图描述图像解码设备211的解码处理。在作为编码的图像的码被输入到熵解码单元221时该解码处理开始。在步骤S231中,熵解码单元221执行熵解码处理,执行作为已 输入的编码图像的码的熵解码,并且将由此获得的量化系数提供给反 向量化单元222。虽然熵解码处理的细节将在稍后详细描述,但对于 该熵解码处理,熵解码单元221 —次w个解码在编码子频带的一行上 的连续位置上的量化系数,并且将解码的量化系数提供给反向量化单 元222。在步骤S232中,反向量化单元222执行从熵解码单元221提供 的量化系数的反向量化,并且将通过反向量化获得的每个子频带的小 波系数提供给小波逆变换单元223。在步骤S233中,小波逆变换单元223使从反向量化单元222提供的每个子频带的小波系数经受小波逆变换,并且将作为其结果获得 的图像输出,由此结束解码处理。这样,图像解码设备211将编码图像进行解码和输出。接着,将参照图31中的流程图描述对应于图30中的步骤S231 的处理的熵解码处理。在步骤S261中,行确定单元252取指示现在要解码的子频带的 行的变量y为y-0,并且存储它。在步骤S262中,VLC解码单元254取指示在行(y-l)(在存储在 行确定单元252中的变量y所指示的行y的前一行)上第一次输入的 w个量化系数的最高有效数位的变量Binit为Binit=0,并且存储它。例如,在行(y-l)是图20中所示的行L1的情况下,指示在行(y-l)
上第一次输入的w个量化系数的最高有效数位的变量Binit的值是从 图中的行L1的左边沿起的w个量化系数的最高有效数位。此外,在 存储在行确定单元152中的变量y为y=l的情况下,行(y-l)不存在, 因此变量Binit的值是Binit=0。此外,在步骤S262中,码划分单元251向行确定单元252提供 输入码的头1比特码,作为指示现在要解码的行的所有量化系数是否 都为0的码。在步骤S263中,行确定单元252确定从码划分单元251读入(提 供)的这l比特码是否为0,生成指示确定结果的信息,并且提供给 生成单元253、 VLC解码单元254和码划分单元251。在步骤S263中做出该码为0的确定的情况下,这意味着行y的 量化系数全为O,因此行确定单元252将流程前进到步骤S264。在步 骤S264中,生成单元253基于来自行确定单元252的指示确定结果 的信息,认为行y上的所有量化系数为0。生成单元253然后生成指 示行y的量化系数的码,并且将其提供给开关单元258。例如,在一个量化系数如图21所示用四比特表示、并且一行上 存在五个量化系数的情况下,生成单元253生成20(-4x5)个零,作 为指示行y的量化系数的码,并且将其提供给开关单元258。开关单 元258向反向量化单元222输出从生成单元253提供的这20个连续 的0,作为指示一行的量化系数的码。在步骤S265中,VLC解码单元254基于来自行确定单元252的 指示确定结果的信息,将其中存储的变量Binit的值设为Binit=0,并 且更新变量Binit。在步骤S266中,行确定单元252确定在正解码的子频带的行中 是否存在任何未处理的行。也就是说,行确定单元252确定正解码的 子频带的所有行上的位置上的量化系数是否已被解码。在步骤S266中做出存在未处理的行的确定的时候,行确定单元 252使流程前进到步骤S267来解码在存储在其自身中的变量y所指示 的行y的下一行(y+l)上的每个位置处的量化系数。
在步骤S267中,行确定单元252将指示存储的行的变量y递增 为y-y+l,流程返回到步骤S263,并且执行随后处理。相反,在步骤S266中做出不存在未处理的行的确定的时候,构 成子频带的所有行的量化系数都已被解码,因此行确定单元252结束 熵解码处理,流程返回图30中的步骤S231,并且执行从步骤S232 起的处理。此外,在图31中的步骤S263中做出该码不是O的确定的时候, 行确定单元252将流程前进到步骤S268。在步骤S268中,基于来自 行确定单元252的指示确定结果的信息,VLC解码单元254设置变量 x的值为x-0,并且存储变量x,其中变量x指示现在要解码的w个 量化系数中要输入的第一个量化系数的行y上的位置的坐标x。此外,在步骤S268中,VLC解码单元254取指示前一次解码的 w个量化系数的最高有效数位的变量B的值为B=Binit,并且存储该 变量B。也就是说,VLC解码单元254将变量B的值更新为所存储的 变量Binit的值,并且存储更新后的变量B的值。此外,在步骤S268中,码划分单元251基于来自行确定单元252 的指示确定结果的信息,向VLC解码单元254提供输入码的下一比 特码,作为指示从现在起要编码的w个量化系数的最高有效数位已改 变的码。在步骤S269中,熵解码单元221执行设置解码处理。w组解码 处理的细节将在稍后描述,在w组解码处理中,熵解码单元221将存 储在行确定单元252中的变量y所指示的行y上的w个连续量化系数 进行解码。在步骤S270中,VLC解码单元254确定行y上是否存在未处理 的量化系数。也就是说,VLC解码单元254确定由存储在行确定单元 252中的变量y所指示的行y上的位置上的所有量化系数是否都已被 解码。在步骤S270中确定行y上存在未处理的量化系数的时候,VLC 解码单元254将流程前进到步骤S271来解码接下来的w个量化系数。
在步骤S271中,VLC解码单元254将其中存储的变量x取为 x=x+w,并且流程返回步骤S269。因此,在后面的步骤S269的处理 中解码行y上的位置(x+w,y)、 (x+w+l,y)、…、(x+2w-l, y)的每一个 的量化系数。此外,在步骤S270中做出行y上不存在未处理的量化系数的确 定的时候,行y上的所有位置上的量化系数都被解码,因此VLC解 码单元254将流程返回步骤S266,并且执行随后的处理。因此,熵解码单元221按照光栅扫描顺序,每次预定数量个解码 子频带的每个位置上的量化系数。因此,通过按照光栅扫描顺序,每次预定数量个解码子频带的每 个位置上的量化系数,可以按照它们的输入顺序处理输入的量化系 数,并且可以减少由于量化系数编码而导致的延迟。接着,将参照图32所示的流程图描述对应于图31中的步骤S269 的处理的w组解码处理。如上所述,在图31的步骤S268中,向码划分单元251到VLC 解码单元254提供指示要解码的w个量化系数的最高有效数位是否改 变的1比特码。在图32的步骤S311中,VLC解码单元254确定读入(提供) 的这l比特码是否为0。在步骤S311中做出读入的码为0的确定的情况下,最高有效数 位未改变,因此,VLC解码单元254生成关于最高有效数位未改变的 信息,并且将其提供给码划分单元251、 VLC解码单元255和量化系 数合成单元257,跳过步骤S312到S314中的处理,并且流程前进到 步骤S315。也就是说,在指示最高有效数位是否已改变的码为0的情况下, 紧跟着指示最高有效数位是否已改变的1比特码0的输入不是指示最 高有效数位是增加还是降低的码以及指示最高有效数位的改变量的 码,而是指示量化系数的绝对值的码,因此跳过步骤S312到步骤 S314,它们是解码指示最高有效数位是增加还是降低的码以及指示最 高有效数位的改变量的码的处理。相反,在步骤S311中做出读入的码不是0的确定的情况下,最 高有效数位已改变,因此VLC解码单元254将流程前进到步骤S312, 从码划分单元251中读取1比特码,并且将其值存储为预定变量m。在步骤S313中,VLC解码单元254从码划分单元251读入码, 直到码为1为止(直到读入码1为止),并且将到此时为止读入的码 0的数量存储为变量n。例如,在VLC解码单元254从码划分单元251 读入的第三个码为1的情况下,也就是说,在VLC解码单元254读 入码"001"的情况下,到VLC解码单元254读入1为止所读入的0的 数量为2,因此VLC解码单元254存储2 (读入的码0的数量)作为 变量n的值。在步骤S314中,VLC解码单元254从下面表达式(9 )获得指 示最高有效数位的B的值,并且存储获得的变量B的值。 B=B+(n+l)x(-l)Am…(9)现在,表达式(9)左侧表示新获得的变量B的值,右侧的B表 示存储的变量B的值。此外,表达式(9)中的符号"A,,表示幂。因此, (-l)Am意味着(-l)的m次方。VLC解码单元254基于存储的变量B、变量m和变量n,计算 表达式(9),并且改变存储的变量B。在更新指示最高有效数位的 变量B后,VLC解码单元254生成指示更新后的最高有效数位的信 息,并且将其提供给码划分单元251、 VLC解码单元254和量化系数 合成单元257。当在步骤S314中获得新的最高有效数位或者在步骤S311中确 定已读入的1比特码为0时,VLC解码单元254将流程前进到步骤 S315,并且在存储的变量x的值为0的情况下,将存储的变量Binit 的值i殳置为Binit-B。也就是^L,在存储的变量x的值为0的情况下,VLC解码单元 254取指示行(y-l)上第一次输入的w个量化系数的最高有效数位的变 量Binit的存储值作为指示从现在起要解码的w个量化系数的最高有
效数位的变量的值,并且更新变量Binit。因此,在变量x-0的情况下,变量Binit的值被设为Binit=B, 由此可以使用与在前一行(例如,行y)中从x-0开始的w个量化系 数的最高有效数位的相关关系,对下一行(例如,行(y+l))中从 x=0开始的w个量化系数执行量化系数的解码。在步骤S316中,VLC解码单元255取预定变量i,并且变量i 从0变到(w-l),以便以B比特为增量从码划分单元251读取码, 并且将读入的b比特的码提供(输出)到VLC解码单元256和量化 系数合成单元257,作为指示在行y上的位置(x+i, y)上的量化系数的 有效数位的码。此外,VLC解码单元255生成指示量化系数的有效数 位的信息,并且将其提供给码划分单元251。现在,在位置(x+i, y)上的x的值是存储在VLC解码单元254中 的变量x的值。例如,在存储在VLC解码单元254中的变量x的值 为0且存储在VLC解码单元255中的变量B的值为3的情况下,VLC 解码单元255对于变量1=0从码划分单元251读取3比特码,并且输 出读入的3比特码作为位置(O,y)上的量化系数的有效数位。以相同的方式,VLC解码单元255对于变量i-l从码划分单元 251读取另3比特码,并且输出读入的3比特码作为位置(l, y)上的量 化系数的有效数位,对于变量i=2从码划分单元251读取接下来的3 比特码,并且输出读入的3比特码作为位置(2, y)上的量化系数的有效 数位,对于变量1=3从码划分单元151读取接下来的3比特码,并且 输出读入的3比特码作为位置(3, y)上的量化系数的有效数位。在步驟S317中,VLC解码单元256取预定变量i,并且变量i 从0变到(w-l),并且在行y上的位置(x+i, y)上的量化系数(的绝 对值)的有效数位不是0的情况下,从码划分单元251读取1比特码。 VLC解码单元256然后解码读取的码,并且将由此获得的码提供(输 出)到量化系数合成单元257,作为量化系数的符号。此外,VLC解 码单元256生成指示量化系数的符号的信息,并且将其提供给码划分 单元251。
现在,在位置(x+i, y)上的x的值被取为存储在VLC解码单元254 中的变量x的值。例如,在存储在VLC解码单元254中的变量x的 值为0且从VLC解码单元255提供(指示)不是0的有效数位(的 码)的情况下,VLC解码单元256取变量1=0,并且从码划分单元251 读取1比特码,在该码为0的情况下,向量化系数合成单元257提供 指示位置(O, y)上的量化系数的符号"-,,的码,并且在该码为1的情况 下,向量化系数合成单元257提供指示位置(O, y)上的量化系数的符号 "+,,的码。
此外,在从VLC解码单元255提供的(指示)有效数位(的码) 的绝对值为0的情况下,在位置(O, y)上的量化系数没有符号,因此 VLC解码单元256不从码划分单元251读入码。以相同的方式,在从VLC解码单元255提供的有效数位(的绝 对值)不为0的情况下,VLC解码单元M6取变量i-l,并且从码划 分单元251读入1比特码,并且在该码为0的情况下,向量化系数合 成单元257提供指示符号"-"的码,并且在该码为1的情况下,提供指 示符号"+"的码。
此外,在接下来从VLC解码单元255提供的有效数位不是0的 情况下,VLC解码单元256取变量i-2,并且从码划分单元251读取 1比特码,并且在该码为0的情况下,向量化系数合成单元257提供 指示符号"-"的码,并且在该码为1的情况下,提供指示符号"+"的码。 此外,在接下来从VLC解码单元255提供的有效数位不是0的情况 下,VLC解码单元256取变量i=3,并且从码划分单元251读入1比 特码,并且在该码为0的情况下,向量化系数合成单元257提供指示 符号"-,,的码,并且在该码为l的情况下,提供指示符号"+"的码。在步骤S318中,量化系数合成单元257合成从VLC解码单元 255提供的有效数位和从VLC解码单元255提供的符号,通过开关单 元258向反向量化单元222输出由此获得的量化系数,结束w组解码 处理,并且流程返回图31中的步骤S269,并且执行从步骤S270开始 的处理。
例如,要输出的量化系数的绝对值的数位的数量是预先确定的。在预先确定的要输出的量化系数的绝对值的数位的数量是4个数位, 并且来自VLC解码单元254的指示最高有效数位的信息所指示的最 高有效数位为3,从VLC解码单元255提供有效数位"101",并且在 从VLC解码单元255提供指示符号"-,,的码的情况下,量化系数合成 单元257输出量化系数"-0101"。也就是说,要输出的量化系数的绝对值的数位的数量是4个数 位,并且有效数位是"101"(三位),因此量化系数合成单元257取 有效数位"101"中一个较高顺序比特为0,作为量化系数"0101"的4数 位绝对值。此外,量化系数的符号"-,,和量化系数的绝对值"0101"被合 成来获得"-0101",将其作为量化系数输出。注意,在从VLC解码单元255提供的有效数位为0的情况下, 量化系数合成单元257输出没有符号的量化系数。例如,在预先确定 的要输出的量化系数的绝对值的数位的数量为4个数位,并且来自 VLC解码单元254的指示最高有效数位的信息所指示的最高有效数 位为3,并且从VLC解码单元255提供有效数位"000,,的情况下,量 化系数合成单元257输出量化系数"0000"。因此,熵解码单元221以预定单位为一批解码子频带的量化系数。因此,以预定单位为一批解码子频带的编码量化系数免除了基于 多条编码路径对比特平面执行多次处理的需要(不像用JPEG 2000 解码图像的情况),因此可以更快地执行图像解码。因此,可以不那 么昂贵地实现实时解码高分辨率图像的解码设备。现在,对于上述闺像编码设备lll,已描述了当编码(或解码) 量化系数的绝对值时按顺序编码预定w个量化系数的绝对值,但是, 通过利用用于通用DSP (数字信号处理器)或通用CPU的SIMD (单 指令多数据)计算命令,同时(并行)编码(或解码)这w个量化系 数,可以更快地执行图像编码(或解码)。现在,SIMD操作指令的示例包括与例如Intel公司的CPU等一
同使用的MMX(多媒体扩展)、SSE (流SIMD扩展)、SSE2、 SSE3。 在使用这种SIMD操作指令编码量化系数的绝对值的情况下,图 像编码设备111的熵编码单元123被配置为例如图33所示。图33中所示的熵编码单元123与图22中所示的熵编码单元123 在提供行确定单元161、 VLC编码单元162、最高有效数位计算单元 163、 VLC编码单元164、有效数位提取单元165、 VLC编码单元166、 符号提取单元167和VLC编码单元168方面是相同的,不同之处在 于为码链接单元169提供了緩沖器401。要注意,与图22所示的部分 相对应的图33中所示的部分用相同的附图标记表示,并且将省略其 描述。码链接单元169的緩沖器401临时存储指示分别从VLC编码单 元162、 VLC编码单元164、 VLC编码单元166和VLC编码单元168 提供的指示行的所有量化系数是否都为0的码、指示最高有效数位的 码、指示量化系数的绝对值的码和指示量化系数的符号的码。以32比特为增量管理緩沖器401的存储区域,并且输入到緩冲 器401中的码(数据)被分为用于标量计算处理的码和用于矢量计算 处理的码存储。也就是说, 一个32比特的存储区域存储用于标量计 算处理的码或用于矢量计算处理的码,作为临时存储的码(数据)。对于图33中所示的熵编码单元123,使用SIMD操作指令并行 编码量化系数的绝对值,因此取指示量化系数的绝对值的码作为用于 矢量计算处理的码,而取其他码作为用于标量计算处理的码。要注意在下面的描述中,在提供给緩沖器401的32比特存储区 域中,存储用于标量计算处理的码的存储区域将被称为标量区域,而 存储用于矢量计算处理的码的存储区域将被称为矢量区域。接着,将参照图34描述由图33所示的熵编码单元123执行的熵编码。例如,假设将图21所示的12个量化系数"-0101"、 "+0011"、 "-0110"、 "+0010"、 "+0011"、 "+0110"、 "0000"、"画0011"、 "+1101"、 "-0證,、"+0111,,和"-1010"输入到熵编码单元123,如图34左上所示。以与参照图21所述的方式相同方式,为熵编码单元123的码链 接单元169提供指示要编码的行的量化系数是否全为0的码"1"、和指示头四个输入的量化系数"-oior,、 "+ooir,、 "-oiio"和"+ooio"的最高有效数位的码"10001"。然后,由指示要编码的行的量化系数是否全为0的码"l"和指示 量化系数的最高有效数位的码"10001"构成的码"110001,,被存储在码 链接单元169的緩沖器401中提供的32比特标量区域中,如箭头All 所示。在图34所示的示例中,要存储在标量区域中的码按照从高顺序 比特开始的顺序,在图中从左到右的方向上存储。在码被存储在整个 一个标量区域中后,即,在32比特的码被存储在一个标量区域中后, 在緩沖器401中提供一个新标量区域,并且用于标量计算处理的码被 依次存储在新提供的标量区域中。在由指示要编码的行的量化系数是否全为0的码"l"和指示量化 系数的最高有效数位的码"10001"构成的码"110001"被存储在标量区 域中之后,接着,熵编码单元123在矢量区域中同时(并行排列)存 储等效于表示第一次输入的w (四)个量化系数"-0101"、 "+0011"、 "-0110"和"+0010,,的每一个的绝对值的最高有效数位的码。如参照图2i所述,量化系数"-oior,、"+ooii"、"-oiio"和"+ooio"的最高有效数位是3,因此表示这四个量化系数的绝对值的码分别是 "101"、 "011"、 "110,,和"010",并且如箭头A12所示,表示量化系数 的绝对值的码"101"、 "011"、 "110"和"010"被排列存储在提供给緩 冲器401的单个矢量区域中。现在,矢量区域被进一步划分成四个8比特区域,矢量区域的四 个区域中的每一个其中按照从较高顺序比特开始的顺序,在从图中左 到右的方向上存储表示相同长度(比特长度)的四个量化系数的绝对 值的码。对于箭头A12所示的矢量区域,在图中,在左端8比特区域中
从左开始存储指示量化系数的绝对值的码"101",在左起第二个8比 特区域中从左开始存储码"011",在右起第二个8比特区域中从左开 始存储码"110",在最右端的8比特区域中从左开始存储码"010"。此外,对于矢量区域,以与标量区域的情况相同的方式,在码被 存储在整个一个矢量区域中后,即,在32比特的码被存储在一个矢 量区域中后,在緩冲器401中提供一个新矢量区域,并且用于矢量计 算处理的码被依次存储在新提供的标量区域中。在指示量化系数"-0101"、 "+0011"、 "-0110,,和"+0010"的绝对值 的码被存储在矢量区域中之后,熵编码单元123将指示四个量化系数 的符号的码存储在标量区域中,如箭头A13所示。如箭头All所示,由指示要编码的行的量化系数是否全为0的 码"1"和指示量化系数的最高有效数位的码"10001"构成的码 "110001"已经存储在标量区域中,因此如箭头A13所示,指示量化系 数"-0101"、 "+0011"、 "-0110"和"+0010,,的符号的码"1010,,被存储在 已经存储于标量区域中的码"110001"的右侧(挨着码"110001"右边存储)。此外,在头四个量化系数被编码之后,熵编码单元123编码接下 来的四个量化系数"+0011"、 "+0110"、 "0000,,和"-0011"。首先,熵编码单元123将前一次编码的四个量化系数的最高有效 数位"3,,与这次编码的接下来的四个量化系数"+0011"、 "+0110"、 "0000,,和"-0011"的最高有效数位"3"进行比较,由于最高有效数位未 改变,因此将指示最高有效数位未改变的码"O,,存储作为指示最高有 效数位的码,如箭头A14所示,挨着已经存储的码"1100011010"右边 存储在标量区域中。接着,如箭头A15所示,熵编码单元123在矢量区域中同时存 储码"011"、 "110"、 "000"和"011"中的每一个,其表示这次输入的w (四)个量化系数"+0011"、 "+0110"、 "0000"和"-0011"的每一个的 绝对值。如箭头A12所示,在图中左侧的矢量区域的8比特区域中、在 左起第二个8比特区域中、在右起第二个8比特区域中以及在最右端 的8比特区域中已经存储了码"101"、 "011"、 "110"和"010",因此熵 编码单元123挨着矢量区域中已经存储的各个码"101"、 "011"、 "110" 和"010"的右边,存储表示这次输入的每个量化系数的绝对值的码 "011"、 "110"、 "000,,和"011"中的每一个,如箭头A15所示。此外,熵编码单元123取指示这次输入的四个量化系数"+0011"、 "+0110"、 "0000"和"-0011"当中绝对值不为0的量化系数的符号的码 "001",并且将其挨着标量区域中已经存储的码"11000110100"的右边 存储。在编码了四个量化系数"+0011"、 "+0110"、 "0000,,和"-0011,,之 后,熵编码单元123执行接下来的四个量化系数"+1101"、 "-0100"、 "+0111"和"-1010"的编码。首先,熵编码单元123将这次输入的四个量化系数"+1101"、 "画0100"、 "+0111,,和"-1010"的最高有效数位"4,,与前一次编码的四个 量化系数的最高有效数位"3"进行比较,并且如箭头A17所示,将指 示最高有效数位的码"101,,存储在标量区域中,码"101"由指示最高有 效数位已改变的"l"、指示最高有效数位增加的"O,,和指示最高有效数位增加量的"r,组成。在这种情况下,码"11000110100001"已经存储在如箭头A16所 示的标量区域中,因此熵编码单元123将指示最高有效数位的码"101" 存储在图中的码"11000110100001"的右边。此夕卜,在指示四个量化系数"+1101"、 "-0100"、 "+0111,,和"-1010" 的最高有效数位的码被存储之后,熵编码单元123如箭头A18所示将 表示其每一个的绝对值的码"1101"、 "0100"、 "0111"和"1010"中的每一个同时存储在矢量区域。如箭头A15所示,在图中左侧矢量区域的8比特区域中、在左 起第二个8比特区域中、在右起第二个8比特区域中以及在最右端的 8比特区域中已经分别存储了码"101011"、 "011110"、 "110000,,和 "010011",因此在左侧8比特区域、左起第二个8比特区域、右起第
二个8比特区域以及最右端的8比特区域的每一个只能够存储两比特 码。因此,熵编码单元123确保(提供)緩冲器401中的新矢量区域, 如箭头A18所示,将表示这次输入的量化系数的绝对值的码"1101"、 "0100"、 "0111"和"1010"中的两个高顺序比特"11"、 "01"、 "01"和"10" 的码,挨着已经存储在矢量区域中的码"101011"、 "011110"、 "110000" 和"010011"右边存储,并且将表示这次输入的量化系数的绝对值的码 "1101"、 "0100"、 "0111,,和"1010,,中的两个低顺序比特"01"、 "00"、 "11"和"10",分别存储在图中新提供的矢量区域(箭头A18所示的两 个矢量区域、图底部的矢量区域)的左侧8比特区域、左起第二个8 比特区域、右起第二个8比特区域和最右侧8比特区域的每一个中。在指示四个量化系数"+1101"、 "-0100"、 "+0111,,和"-1010,,的绝 对值的码被存储之后,如箭头A19所示,熵编码单元123挨着标量区 域中已经存储的码"11000110100001101"的右边存储指示绝对值不为 0的四个量化系数的符号的码"0101"。因此,在输入的量化系数被编码之后,熵编码单元123按顺序输 出箭头A19所示的标量区域中存储的码,箭头A19所示的两个矢量 区域的图中上边矢量区域中存储的码,以及下边矢量区域中存储的 码,作为编码图像。在这种情况下,箭头A19所示的标量区域的图中右侧的11比特 没有存储码。此外,在箭头A19所示的两个矢量区域的下边矢量区域 中,在左侧的8比特'区域、左起第二个8比特区域、右起第二个8比 特区域和最右端的8比特区域的每一个中右边的6比特区域中没有存 储码。在以这种方式将存储在标量区域和矢量区域中的码输出为编码 图像的情况下,当在完成输入量化系数的编码时在标量区域和矢量区 域中存在未存储码的区域的时候,存储任意的码,例如码"0",然后 存储在标量区域和矢量区域中的码被编码并将其输出为图像。因此,例如在箭头19所示的示例中,将存储在标量区域中的码"11000110100001101010100000000000"、存储在图中的上边矢量区域为编码图像。现在,在解码时不读取存储在其中结束量化系数的编码 时未存储码的区域中的标量区域和矢量区域中的任意码,因此可以存 储任何类型的码。在也使用SIMD操作指令编码量化系数的绝对值的情况下,在输 入图像后,图像编码设备111执行参照图23中的流程图所述的编码 处理。此外,在与图23中步骤S113相对应的图24中的熵编码处理 中,图像编码设备111对于图24中步骤S141到步骤S149的处理、 步骤S151的处理以及步骤S152的处理(参照图24所述的处理), 执行与不使用SIMD操作指令的情况相同的处理,并且对于与步骤 S150相对应的w组编码处理,执行与不使用SIMD操作指令的情况 不同的处理。下面将参照图35中的流程图,描述在图像编码设备111使用 SIMD操作指令编码量化系数的绝对值的情况下的w组编码处理。要 注意,步骤S411到S419中的每一个处理对应于图25中的步骤S181 到S189中的每一个处理,并且每一个都是以相同方式执行。因此, 对其描述将是多余的,所以将省略描述。此外,在使用SIMD操作指令编码量化系数的绝对值的情况下, 在参照图24和图35所述的处理中,从VLC编码单元162提供到码 链接单元169的指示要编码的行的量化系数的绝对值是否全为0的 码、从VLC编码单元164提供到码链接单元169的指示量化系数的 最高有效数位的码、以及从VLC编码单元168提供到码链接单元169 的指示量化系数的符号的码中的每一个被存储在参照图34所述的码 链接单元169的緩冲器401内提供的标量区域中。在步骤S420中,有效数位提取单元165从量化单元122提供的、 行y上的位置(x,y)、 (x+l,y)、…、(x+w - 1, y)上的w个连续量化 系数中提取量化系数的有效数位。有效数位提取单元165将提取的量
化系数的有效数位提供给VLC编码单元166和符号提取单元167。此 外,VLC编码单元166基于从有效数位提取单元165提供的有效数位, 向码链接单元169同时输出指示w个量化系数的绝对值的码(编码有 效数位)。现在,取位置(x, y)上的x的值为存储在最高有效数位计算单元 163中的变量x的值,并且取y的值为存储在行确定单元161中的变 量y的值。例如,在有效数位提取单元165提取有效数位"101,,、"011"、 "110"和"010"作为量化系数的有效数位的时候,从VLC编码单元166 向码链接单元169提供指示这四个量化系数的绝对值的码"101"、 "011"、 "110"和"010",从而码链接单元169编码指示对其提供的量 化系数的绝对值的码,并且如图34中的箭头A12所示,将其存储在 矢量区域中。在步骤S421中,符号提取单元167取预定变量i,并且变量i 从0变到(w-l),以便从在从量化单元122提供的绝对值不为0的 量化系数中行y上的位置(x+i, y)上的量化系数中提取量化系数的符 号,并且将提取的符号(的数据)提供给VLC编码单元168。现在, 取位置(x, y)上的x的值为存储在最高有效数位计算单元163中的变量 x的值,并且取y的值为存储在行确定单元161中的变量y的值。VLC编码单元168编码来自符号提取单元167的符号,并且向 码链接单元169输出指示由此获得的量化系数的符号的码。此外,如 参照图34所述,码链接单元169将从VLC编码单元168提供的指示 量化系数的符号的码存储在緩冲器401的标量区域中。在緩沖器401的标量区域中存储指示量化系数的符号的码之后, 码链接单元169链接参照图34所述的存储在緩沖器401的标量区域 和矢量区域中的码,将链接的码输出为编码图像,由此结束w组编码 处理,并且处理返回图24中的步骤S150,并且从步骤S151起执行处 理。因此,熵编码单元123同时编码预定数量的量化系数的绝对值。 对于JPEG 2000方法的熵编码,量化系数基于多条编码路径以
比特平面为增量经受算术编码,因此同时并行执行熵编码中的预定处理是困难的,但对于熵编码单元123,则不需要以比特平面为增量执 行复杂处理,因此可以同时编码多个量化系数的绝对值。因此,同时编码预定数量的量化系数的绝对值允许同时(并行) 执行多个处理,因此可以以更高速度编码图像。要注意,在步骤S421中的处理中,是针对按顺序执行w个量化 系数的符号的编码进行描述的,但可以通过使用SIMD操作指令,以 与编码量化系数的绝对值的情况下相同的方式,同时执行w个量化系 数的符号的编码。在这种情况下,指示通过编码获得的w个量化系数 的符号的每个码被存储在緩沖器401的已分成w个的矢量区域中。此外,尽管对于緩冲器401描述了一个标量区域或矢量区域是 32比特区域,并且该32比特区域被进一步划分成8比特区域供使用, 但标量区域或矢量区域的大小等可以是任意大小。例如,可以这样配 置,其中标量区域或矢量区域被设置为128比特区域,该128比特区 域被划分成8个16比特区域供使用。此外,在解码使用SIMD操作指令编码的图像的情况下,用于解 码图像的图像解码i殳备211的码划分单元251 (图27)被配置成如图 28所示,并且作为编码图像的码被一次32比特地存储在存储器272 中,如参照图34所述。在从存储器272读出码并将其输出的情况下,控制单元271首先 取存储码的头32比特的存储区域为标量区域,并且按从标量区域上 边起的顺序读取指示要解码的行的量化系数的绝对值是否全为0的 码、指示量化系数的最高有效数位的码或者指示量化系数的符号的 码,并将其输出。此外,在从存储器272中读出指示量化系数的绝对值的码的情况 下,控制单元271取存储器272中作为标量区域的存储区域后面的32 比特存储区域(因此,尚未从该区域中读出码)作为矢量区域,并且 从该矢量区域中读出和输出指示量化系数的绝对值的码。要注意,在图像被编码的情况下,图像被编码,以使得在解码时
第一次读出指示量化系数的绝对值的码的时候,总是存在存储在用作标量区域的存储区域后面的接下来的32比特存储区域中的、指示量 化系数的绝对值的码(用于矢量计算的码)。此外,在图像编码设备lll编码图像的时候,其中划分作为编码 图像的码和将其存储在存储器272中的每个存储区域由多少比特构成 根据一个标量区域和矢量区域被设置为多少比特而改变的。也就是 说,将作为编码图像的码划分和存储到存储器272内的多个存储区域 的每一个的大小是在编码图像的时候一个标量区域和矢量区域的大小。在也使用SIMD操作指令解码量化系数的绝对值的情况下,在输 入编码图像后,图像解码单元211执行参照图30所示的流程图描述 的解码处理。此外,对于与图30中步骤S231的处理相对应的图31 中的熵解码处理,关于图31中步骤S261到步骤S268的每个处理、 步骤S270中的处理和步猓S271中的处理,图^^解码设备211执行与 不使用SIMD控制命令的情况下(参照图31所述的处理)相同的处 理,并且在对应于步骤S269的w组解码处理中,执行与不使用SIMD 控制命令的情况下不同的处理。下面参照图36所示的流程图,描述图像解码设备221使用SIMD 操作指令来解码量化系数的绝对值的情况下的w组解码处理。要注意,步骤S451到S455中的处理对应于图32中的步骤S311 到S315中的处理,并且每一个都是以相同方式执行。因此,将省略对其多余的描述。此外,在使用SIMD操作指令解码量化系数的绝对值的情况下, 作为图像的码被存储在划分为3个32比特区域(例如,如图34的箭 头A19所示)的、码划分单元251的存储器272中。行确定单元252、 VLC解码单元254和VLC解码单元256每一个在三个32比特区域 中取图34中最上面的区域作为标量区域,并且从标量区域的顶部(图 中的左侧)依次读出和解码指示行的量化系数是否全为0的码、指示 量化系数的最高有效数位的码和指示量化系数的符号的码。在步骤S456中,VLC解码单元255从码划分单元255同时读取 码的B个连续比特的w组,并且取读取的码的B个比特的w组的每 一个作为指示行y上的位置(x, y)、 (x+l, y)、…、(x+w-l, y)上的w 个连续量化系数中的量化系数的有效数位的码,并且将其提供(输出) 到VLC解码单元256和量化系数合成单元257。此外,VLC解码单 元255生成指示量化系数的有效数位的信息,并且将其提供给码划分 单元251。现在,取位置(x, y)上的x的值为存储在VLC解码单元254 中的变量x的值,并且取y的值为存储在行确定单元252中的变量y 的值。例如,如果我们假设预定数量w为4,变量B的值为3,并且作 为图像的码被存储在划分成3个32比特存储区域(如图34的箭头 A19所示)的码划分单元251的存储器272中,图34中最上面的32 比特存储区域已经被取为标量区域,指示行的量化系数是否全为0的 码和指示量化系数的最高有效数位的码已被读出,并且码还未从接下 来的32比特存储区域(从上面数第二个存储区域)读出,所以VLC 解码单元155取从上面数第二个存储区域作为矢量区域,并且从图中 矢量区域的左侧8比特区域、从左数第二个8比特区域、从右数第二 个8比特区域和最右边的8比特区域中同时读出指示位置(x, y)、(x+l, y)、 (x+2, y)和(x+3, y)上的量化系数的有效数位的码"101"、 "011"、 "110,,和"010,,。在指示w个量化系数的有效数位的码被提供给VLC解码单元 256和量化系数合成单元257后,接着执行步骤S457的处理和步骤 S458的处理,但这些处理与图32中步骤SM7的处理和步骤S318的 处理相同,因此将省略对其描述。因此,熵解码单元221同时解码预定数量的量化系数的绝对值。因此,同时解码预定数量的量化系数的绝对值允许同时(并行) 执行多个处理,并且可以以更高速度解码图像。要注意,关于步骤S457中的处理,描述了按顺序执行指示w个 量化系数的符号的每个码的解码,但也可以做出这样的配置,其中,
可以通过使用SIMD操作指令,同时(并行)执行指示w个量化系数 的符号的每个码的解码。如上所述,不需要基于多条编码路径以比特平面为增量执行量化 系数的算术编码(与用传统JPEG 2000编码(或解码)图像的情况不 同),因此可以以更简单的处理更快地执行图像编码(或解码)。对于传统JPEG 2000方法,基于多个编码路径对每个比特平面 执行处理,因此在执行其处理的时候,需要存取量化系数的次数大致 是量化系数乘以比特平面的数量而获得的数,这意味着处理量巨大。此外,在分组化编码图像的情况下,直到一个图像的编码完全结 束才能开始分组化处理,因此相应地产生等效于其等待间隔的延迟。 此外,对于JPEG 2000方法,与例如图2所示的子频带上的x方向和 y方向上的平行边组成的矩形区域内的位置相对应的(编码)量化系 数,被存储在一个分组内,因此也产生对应于矩形区域的y方向的长 度的延迟。对于传统JPEG 2000方法,产生由于编码而导致的这些延 迟,因此实时处理是困难的。现在,尽管可以通过缩短子频带上的矩 形区域的y方向上的长度来减少延迟,但在这种情况下编码效率降低。相反,对于图像编码设备lll,当输出指示量化系数绝对值的码 时,当输出指示最高有效数位的码时,以及当输出指示量化系数的符 号的码时,不需要如上所述基于多条编码路径对每个比特平面执行量 化系数的算术编码,并且只在编码图像时存取量化系数,因此可以以 更简单的方式编码图像。此外,存在指示最高有效数位的码和指示量化系数的符号的码是 l比特或0比特的情况,因此在编码该图像的情况下,实际上只要大 约存取量化系数两次实际上就可以编码图像。此外,在解码图像的情 况下,只需要存取一次量化系数,因此可以以更筒单和更快的方式解 码图像。在图像编码设备111和图像解码设备211中,按照光栅扫描顺序 编码和解码子频带的量化系数,因此不需要緩冲量化系数,从而可以减少由于编码和解码而引起的延迟。
此外,使用SIMD操作指令(其中w=4)实际编码和解码YUV 4:2:2格式图像(1920水平像素xl080垂直像素)产生下面结果。要 注意,在执行编码时,图像经受小波变换并被分解成五个子频带级别, 并且进一步编码通过量化每个子频带的小波系数而获得的量化系数。 此外,编码和解码所需的功能块(例如,图33中的熵编码单元123 和图27中的熵解码单元221)以及用JPEG 2000编码和解码图^f象的 功能块是通过使称为Pentium (注册商标)4 (Intel公司的商标)的 CPU (3.0GHz的时钟频率)执行预定程序来实现的。在用传统JPEG 2000方法编码一帧图^(象的情况下,码大小是 291571字节,编码所需的时间量是0.26157秒。此外,对编码图像解 码所需的时间是0.24718秒。相反,在用图33中的熵编码单元123编码一帧图像的情况下, 码大小是343840字节,编码所需的时间量是0.03453秒。此外,用图 27中的熵解码单元221对编码图像解码所需的时间是0.02750秒。运动图像常常以每秒30帧显示,因此只要编码或解码能以每帧 0.033(=1/30)秒执行,就可以实时处理图像。对于JPEG 2000方法, 编码所需的时间量是0.26157秒,并且解码所需的时间量是0.24718 秒,因此图像的实时处理是困难的,但在用图33中的熵编码单元123 编码图4象的情况下,编码所需的时间量是0.03453秒,因此可以几乎 实时地处理图像。此外,在用图27中的熵解码单元221解码图像的 情况下,解码所需的时间量是0.02750秒,因此可以足够实时地处理 图像。在上面已描述了编码图像数据的示例或对其中已编码了图像数 据的编码数据解码的示例,但这不限于图像数据,并且可以应用到编 码音频数据等、或者对其中已编码了音频数据的编码数据解码的情 况。例如,在编码音频数据的情况下,指示由作为音频数据输入的码 所表示的w个预定值的最高有效数位的码、指示数值的绝对值的码和 指示数值的符号的码,被输出为编码音频数据。提到本实施例的另一特征,用本实施例描述的编码方法,无损地
编码量化系数。相应地,对较高频带系数用较大步长大小量化以便匹 配人的视觉感知特性允许大大提高每单位生成的码量的图像质量。此 外,减少在特定空间范围中使用的量化步长大小允许提高该空间范围 的图像质量。此外,对于本实施例描述的编码方法,编码绝对值的有效数位部分的阵列。如果我们假设绝对值的有效数位部分经受VLC编码并将 其发送,那么在绝对值的有效数位为N的情况下,具有2A(NAW)个 条目的极大VLC表是必需的(不仅增加计算处理的负荷和处理时间, 而且还增加保存VLC表所需的存储容量)。相反,对于本实施例所 述的编码方法,不需要使用这么大的表(不仅可以减少计算处理的负 荷和处理时间,还可以减少所需的存储容量)。此外,可以构想使用具有比VLC高的压缩率的算术编码,但即 使将压缩方法用于诸如JPEG 2000这样的算术编码,比起参照本实施 例所述的编码方法的情况,也没有很大地提高压缩率。也就是说,对 于本实施例所述的编码方法,在压缩率高的同时,编码处理容易。对于本实施例所述的编码方法,编码w组系数的绝对值的最高 有效数位,所以通过利用相邻系数的有效数位相似的事实,可以减少 生成的码的大小。此外,对于本实施例所述的编码方法,当编码w组系数的绝对 值的最高有效数位时执行差分编码,所以在这一点上也通过利用相邻 系数的有效数位相似的事实,可以减少生成的码的大小。此外,根据上述第六实施例的熵编码单元123的熵编码处理和熵 解码单元221的熵解码处理可以应用到上述第一到第五实施例的每一 个,由此对于总体图像编码处理和图像解码处理可以进一步减少处理 所需的延迟时间、功耗、緩冲存储器大小。例如,熵编码单元123可 以应用为图1中的图像编码设备l的熵编码单元15(即,熵编码单元 15可以以与熵编码单元123相同的方式执行熵编码处理)。此外,例 如,熵解码单元221可以应用为图9中的图像解码设备20的熵解码 单元21 (即,熵解码单元21可以以与熵解码单元221相同的方式执
行熵解码处理)。也就是说,将根据第六实施例的熵编码处理应用到上述第 一到第 五实施例的每一个允许在每个实施例中通过利用来自小波变换单元 的系数的输出顺序的特征来减少要生成的码大小(即,连续系数的有 效数位是相似的)。此外,即使在重排列系数的情况下,小波变换单 元以行块为增量执行小波变换,所以连续系数的有效数位相似的特征 没有受到大的影响,并且熵编码处理中生成的码大小没有大的改变。如上所述,根据第六实施例的熵编码处理以及处理的系数数据的 特征和其期望的优点与参照上述第一实施例到第五实施例所述的小波变换处理相似,并且彼此具有强烈的密切关系。因此,对于总体图 像编码处理,从将根据本实施例的熵编码处理应用到上述第一实施例 到第五实施例所述的小波变换处理中可以期望与应用其他编码方法 相比更大的优点。接着,将描述本发明的第七实施例。该第七实施例是应用根据上 述实施例的图像编码设备和图像解码设备的数字三轴系统的示例。三轴系统是在电视广播台、制片工作室等中使用的系统。对于该 系统,在工作室中记录或从远程位置现场直播时,使用连接视频摄像 机和摄像机控制单元或转换开关的单根三轴线缆来传输复用信号,如 画面信号、音频信号、返回画面信号、同步信号等,并且还用来供电。许多传统三轴系统被配置成以模拟信号的形式传输上述信号。另 一方面,在近些年来,整个系统正在变为数字的,因此,在电视广播 台中使用的三轴系统也在变成数字的。对于已知的数字三轴系统,在三轴线缆上传输的数字视频信号是 未压缩的视频信号。其原因是关于信号延迟时间的所要求的规格对于 电视广播台是特别苛刻的,基本上,从拍摄到监视器输出的延迟时间例如要求在一个场(16.67ms)内。实现高压缩率和高图像质量的诸 如MPEG2和MPEG4的压缩编码系统还未用在三轴系统中,这是因量的时间,这意味着延迟时间大。 如上所述的根据本发明的图像编码和图像解码方法从图像数据 的输入到获得输出图像具有极短的延迟时间,在一个场时间内,即, 几行到几十行内,因此可以适合应用到数字三轴系统。图37示出可应用根据本发明的图像编码和图像解码方法的数字 三轴系统的示例配置。传输单元500和摄像机控制单元502通过三轴 线缆501连接。在三轴线缆501上传输从传输单元500到摄像机控制 单元502的数字视频信号和数字音频信号(下面称为"主线信号")(其 实际上是广播或用作内容),以及从摄像机控制单元502到视频摄像 单元503的intercom (内部通信)音频信号和返回数字视频信号。传输单元500置入例如未示出的视频摄像设备中。当然,也可以 做出其他配置,如传输单元500作为视频摄像设备的外部设备连接到 视频摄像设备。摄像机控制单元502可以例如是通称为CCU (摄像机 控制单元)的设备。数字音频信号与本发明的本质没有多大关系,因此为了描述简单 起见,将省略对其描述。视频摄像单元503例如被配置在未示出的视频摄像设备中,并且 用未示出的图像摄取设备(如CCD (电荷耦合器件)执行对来自物体 的光的感光,所述物体的光通过光学系统550接受,光学系统550包 括镜头、聚焦机构、变焦机构、光團调节机构等。图像摄取设备通过 光电转换将接收的光转换成电信号,并且进一步执行预定的信号处 理,以便输出基带数字视频信号。这些数字视频信号被映射到例如 HD-SDI (高清晰度串行数据接口 )格式并输出。还连接到视频摄像单元503的是用作监视器的显示单元551,以 及用于外部交换音频的intercom系统552。传输单元500具有视频信号编码单元510和视频信号解码单元 511、数字调制单元512和数字解调单元513、放大器514和515以及 视频分离/合成单元516。例如,被映射到例如HD-SDI格式的基带数字视频信号从视频摄 像单元503提供到传输单元500。在视频信号编码单元510上压缩和
编码数字视频信号,以便成为码流,后者被提供给数字调制单元512。 数字调制单元512将提供的码流调制成适合在三轴线缆501上传输的 信号格式并输出。从数字调制单元512输出的信号通过放大器514被 提供到视频分离/合成单元516。视频分离/合成单元516向三轴线缆 501发送提供的信号。在摄像机控制单元502通过三轴线缆501接收 这些信号。在传输单元500上通过三轴线缆501接收从摄像机控制单元502 输出的信号。接收的信号被提供给视频分离/合成单元516,并且数字 视频信号部分和其他信号部分被分离。在接收的信号当中,数字视频 信号部分通过放大器515提供到数字解调单元513,在摄像机控制单 元502侧将信号调制成适合在三轴线缆501上传输的信号格式的信 号,并且恢复码流。将码流提供到视频信号解码单元511,解码压缩编码,并且获得 基带数字视频信号。解码的数字视频信号被映射成HD-SDI格式并输 出,并且作为返回数字视频信号提供给视频摄像单元503。返回数字 视频信号被提供给连接到视频摄像单元503的显示单元551,并且将 其用于摄像机操作者的监视。摄像机控制单元502具有视频分离/合成单元520、放大器521 和522、前端单元523、数字解调单元524和数字调制单元525以及 视频信号解码单元526和视频信号编码单元527。通过三轴线缆501在摄像机控制单元502接收从传输单元500 输出的信号。接收的信号被提供给视频分离/合成单元520。视频分离 /合成单元520将对其提供的信号通过放大器521和前端单元523提供 到数字解调单元524。要注意,前端单元523具有用于调节输入信号 的增益的增益控制单元、用于对输入信号执行预定滤波的滤波单元, 等等。数字解调单元524解调在传输单元500侧被调制成适合在三轴线 缆501上传输的信号格式的信号的信号,并且恢复码流。将码流提供 到视频信号解码单元526,在此解码压缩编码,以便获得基带数字视
频信号。解码的数字视频信号被映射成HD-SDI格式并输出,并且作 为主线信号对外输出。返回数字视频信号和数字音频信号对外提供给摄像机控制单元 502。数字音频信号被提供给例如摄像机操作者的intercom系统552 以用于向摄像机操作者传输外部音频指令。返回数字视频信号被提供到视频信号编码单元527并被压缩编 码,并且提供到数字调制单元525。数字调制单元525将提供的码流 调制成适合在三轴线缆501上传输的信号格式的信号并输出。从数字 调制单元525输出的信号通过前端单元523和放大器522被提供到视 频分离/合成单元520。视频分离/合成单元520将这些信号与其他信号 复用,并且送出到三轴线缆501。在视频摄像单元503通过三轴线缆 501接收这些信号。对于本发明的这个第七实施例,上述实施例所述的图像编码设备 和图像解码设备分别应用到视频信号编码单元510和视频信号编码单 元527、以及视频信号解码单元511和视频信号解码单元526。特别地,本发明的第二实施例被配置成使得可以并行执行图像编 码设备和图像解码设备的各个元件的处理,这可以大大缩短在视频摄 像单元503拍摄的图片从摄像机控制单元502输出时的延迟,以及从频信号的延迟,并且i用于本发明的笫七实施例。° ^此外,在图37所示的系统的情况下,在传输单元500和摄4象机 控制单元502的每一个上可以适当设置信号处理能力和存储容量,因 此执行系数数据重排列处理的位置可以是在传输单元500侧或是摄像 机控制单元502侧,并且执行熵编码的位置同样可以是在重排列处理 之前或之后。也就是说,在传输单元500侧,视频信号编码单元510纟艮据本发 明的方法对向其提供的数字视频信号执行小波变换和熵编码,并且输 出码流。如上所述,在输入对应于用于小波变换的滤波器的抽头数的 并根据小波变换的划分级别的数量的行数后,视频信号编码单元510
开始小波变换。此外,如参照图5、图6、图11等所述,在图像编码 设备和图像解码设备中累积了组件所需的系数数据后,由组件依次执 行处理。在处理到一帧或一场的底行结束后,开始下一帧或一场的处 理。这对于从摄像机控制单元502侧向传输单元500侧发送返回数字 视频信号也成立。也就是说,在摄像机控制单元502侧,由视频信号 编码单元527对外部提供的返回数字视频信号执行根据本发明的小波 变换和熵编码,并且输出码流。现在,存在许多其中允许返回数字视频信号比主线信号的数字视 频信号的图像质量低的情况。在这种情况下,可以降低在视频信号编 码单元527处进行编码时的比特率。例如,视频信号编码单元527执 行速率控制单元14的控制,使得熵编码单元15的熵编码处理的比特 率较低。此外,可以构想出这样的配置,其中例如,在摄像机控制单 元502侧,用视频信号编码单元527处的小波变换单元10执行到较 高划分级别的变换处理,并且在传输单元500侧,视频信号编码单元 511侧的小波逆变换单元23的小波逆变换在较低的划分级别上停止。 摄像机控制单元502的视频信号编码单元527上的处理不限于该示 例,并且可以构想出各种其他类型的处理,如保持小波变换的划分级 别低以便减轻变换处理的负荷。接着,将描述本发明的第八实施例。对于本发明的第八实施例,到图像^码^备侧的传输。图38示出根据本发明的第八实施例的无 线传输系统的示例配置。要注意,在图38的示例中,视频信号间接 从视频摄像机或传输单元600侧(下面简称为"传输单元600")传输 到接收设备601侧。对于音频信号和其他信号可以执行传输单元600 与接收i殳备601之间的双向通信。传输单元600置入例如未示出的具有视频摄像单元602的视频摄 像设备中。当然,也可以做出其他配置,如传输单元600作为具有视 频摄像单元602的视频摄像设备的外部设备连接到视频摄像设备。
视频摄像单元602具有预定光学系统、图像摄取设备(如CCD )、号处理单元。这些数字视频信号被映射到例如HD-SDI格式并例如从 视频摄像单元602输出。当然,视频摄像单元602不限于该示例,并 且也可以是其他格式。传输单元600具有视频信号编码单元610、数字调制单元611和 无线模块单元612。在传输单元600,基带数字视频信号被映射到例 如HD-SDI格式,并且从视频摄像单元602输出。通过根据本发明的 压缩编码方法的小波变换和熵编码,数字视频信号在视频信号编码单 元610经受压缩编码,从而成为提供给数字调制单元611的码流。数 字调制单元611执行数字调制,以将提供的码流调制成适合无线通信 的信号格式,并且输出。此外,数字音频信号和其他信号,例如预定的命令和数据,也提 供给数字调制单元611。例如,视频摄像单元602具有麦克风,从而 将收集的声音转换成音频信号,并且此外音频信号经受A/D转换并输 出为数字音频信号。此外,视频摄像单元602能够输出特定命令和数 据。命令和数据可以在视频摄像单元602内生成,或者可以为视频摄 像单元602提供操作单元,并且响应于用户在操作单元进行的操作, 生成命令和数据。此外,可以做出这样的配置,其中用于输入命令和数据的输入设备连接到视频摄像单元602。数字调制单元611执行这些数字音频信号和其他信号的数字调 制并输出。从数字调制单元611输出的数字调制信号被提供到无线模 块单元612,并且从天线613作为无线电波无线地发射。在接收到来自接收设备601侧的ARQ (自动重传请求)后,无 线模块单元612将该ARQ通知数字调制单元611,以便请求数据重 发。从天线613发射的无线电波在接收设备601侧的天线620处接 收,并且将其提供给无线模块单元621。无线模块单元621将基于接 收的无线电波的数字调制信号提供到前端单元622。前端单元622对
提供的数字调制信号执行预定的信号处理,如增益控制,并且提供给数字解调单元623。数字解调单元623解调提供的数字调制信号,并 且恢复码流。在数字解调单元623恢复的码流被提供给视频信号解码单元 624,用根据本发明的解码方法对压缩编码进行解码,并且获得基带 数字视频信号。解码的数字视频信号被映射到例如HD-SDI格式并输 出。数字解调单元623还提供有在传输单元600侧经受数字调制并发 送的数字音频信号和其他信号。数字解调单元623解调信号(其中这 些数字音频信号和其他信号经受了数字调制),并且恢复和输出数字 音频信号和其他信号。此外,前端单元622对于从无线模块单元621提供的接收信号, 根据预定方法执行差错检验,并且在检测出差错,例如接收到错误的 帧的情况下,输出ARQ。 ARQ被提供给无线模块单元621,并且从 天线620发射。对于这样的配置,传输单元600被置入相对小型的、具有例如视 频摄像单元602的视频摄像设备中,监视设备连接到接收设备601, 并且从视频信号解码单元624输出的数字视频信号被提供给监视设 备。只要接收设备601距离具有内置的传输单元600的视频摄像设备 在无线模块单元612发射的无线电波的电波范围内,就可以在监视设 备上以较少延迟,例如在一场或一帧内的延迟,观看视频摄像设备拍 摄的画面。要注意,在图38所示的示例中,传输单元600与接收设备601 之间的通信是使用无线通信执行的,以便通过无线通信传输视频信 号,但该配置不限于该示例。例如,传输单元600和接收单元601可 以通过诸如因特网之类的网络连接。在这种情况下,传输单元600侧 的无线模块单元612和接收设备601侧的无线模块单元621每一个都 是能够使用IP (因特网协议)通信的通信接口。对于根据该第八实施例的系统可以构思出各种应用。例如,根据
该第八实施例的系统可以应用到视频会议系统。配置的示例是,将能够进行USB (通用串行总线)连接的简单视频摄像设备连接到诸如个 人计算机之类的计算机设备,计算机设备侧实现视频信号编码单元 610和视频信号解码单元624。在计算机设备上实现的视频信号编码 单元610和视频信号解码单元624可以是硬件配置,或者可以通过运 行在计算设备上的软件实现。例如,参加视频会议的每个成员配有计算机设备和连接到该计算 机设备的视频摄像设备,计算机设备通过有线或无线网络连接到提供 视频会议系统服务的服务器设备。从视频摄像设备输出的视频信号通 过USB线缆提供到计算机设备,并且在计算机设备内的视频信号编 码单元610中执行根据本发明的编码处理。计算机设备将其中编码了 视频信号的码流通过网络发送给服务器设备等。服务器设备通过网络将接收的码流发送到每个参与成员的计算 机设备。在每个参与成员的计算机设备上接收该码流,并且使该码流 在计算机设备内的视频信号解码单元624中经受根据本发明的解码处 理。在计算机设备的显示单元上将从视频信号解码单元624输出的图 像数据显示为画面。也就是说,其他参与成员的视频摄像设备拍摄的视频画面被显示 在每个参与成员的计算机^1备的显示单元上。因此,对于本发明的第 八实施例,从编码视频摄像设备拍摄的视频信号到在其他参与成员的 计算机设备上对其解码的延迟时间较短,因此可以减少由于延迟而导 致参与成员的计算机设备的显示单元上显示的其他参与成员的画面 不自然的感觉。此外,可以构思出其中视频信号编码单元610安装在视频摄像设 备侧的配置。例如,传输单元600置入视频摄像设备中。这样的配置 免除了视频摄像设备连接到诸如计算机设备之类的另 一设备的需要。由内置有传输单元600的视频摄像设备和接收设备601构成的这 样的系统,可以应用到上述视频会议系统以外的各种应用。例如,如 图39中示意性示出的,该系统可以应用到家用游戏机。在图39中,
根据本发明第八实施例的传输单元600被内置入视频摄像设备700 中。在家用游戏机的主单元710中,总线例如连接CPU、 RAM、 ROM、与CD-ROM (光盘只读存储器)和DVD-ROM (数字多功能 盘-ROM )兼容的盘驱动设备、用于将CPU生成的显示控制信号转换 成视频信号并输出的图形控制单元、用于播放音频信号的音频播放单 元等等,即,具有大体类似计算机设备的配置。家用游戏机的主单元 701由CPU按照预先存储在ROM中的程序或者记录在装入盘驱动设 备的CD-ROM或DVD-ROM中的程序总体控制。使用RAM作为CPU 的工作存储器。家用游戏机的主单元701内置有接收设备601。从接 收设备601输出的数字视频信号和其他信号例如通过总线提供到 CPU。让我们假设对于这样的系统,例如,家用游戏机的主单元701, 游戏软件在运行,它可以将外部提供的数字视频信号形式的图4象作为 游戏内的图像。例如,该游戏软件能够使用外部提供的数字视频信号 格式的图像作为游戏内的图像,并且还识别图像内的人物(玩家)的 运动,并且执行对应于识别的运动的操作。视频摄像设备700在内置的传输单元600内的视频信号编码单元 610中用根据本发明的编码方法编码拍摄的数字视频信号,在数字调 制单元611中调制码流,并且提供给无线模块单元612,以便将其从 天线613发射。在内置入家用游戏机的主单元701中的接收设备601 的天线620接收发射的无线电波,接收的信号通过无线模块单元621 和前端单元622提供给数字解调单元623。接收的信号在数字解调单 元623中被解调成码流,并且将其提供给视频信号解码单元624。视 频信号解码单元624用根据本发明的解码方法解码提供的码流,并且 输出基带数字视频信号。从视频信号解码单元624输出的基带数字视频信号通过家用游 戏机的主单元701中的总线发送,并且例如临时存储在RAM中。在 存储在RAM中的数字视频信号被按照预定程序读出时,CPU可以检
测数字视频信号提供的图像内的人的运动,并且在游戏中使用该图 像。由于从视频摄像设备700拍摄图像和对获得的数字视频信号编 码到在家用游戏机的主单元701中解码码流并获得图像的延迟时间较 短,因此改善了家用游戏机的主单元701上运行的游戏软件对玩家运 动的响应度,从而改善了游戏的可操作性。要注意,与家用游戏机一起使用的视频摄像设备700由于价格、 大小等的限制,因此常常具有简单的配置,并且必需假设像计算机设 备那样的具有高处理能力和大容量存储器的CPU可能是不可实现的。也就是说,通常,视频摄像设备700是家用游戏机的主单元701 的外围设备,只有在使用视频摄像设备700玩游戏时才是必需的,而 不是在家用游戏机的主单元701上玩游戏所必需的设备。在这种情况 下,视频摄像设备700常常与家用游戏机的主单元701分开销售(所 谓的分开销售选择)。在这种情况下,在视频摄像设备700中安装高 性能CPU和大存储容量的存储器从而以高价格销售,这通常可能导 致销售的单位数量减少。在这种情况下,这可能减少使用视频摄像设 备700的游戏的销售量,从而可能导致较低收益。此外,特别对于家 用游戏,拥有率常常很大程度地影响销售单位数量,因此视频摄像设 备700的低拥有率可能导致更低的销售单位数量。另 一方面,低价销售大量视频摄像设备700来提高拥有率可以提 高使用视频摄像设备700的家用游戏销量,并且提高其流行度,而且 可以进一步期望这会导致家用游戏机的主单元701的购买热情。从这 个角度来说,视频摄像设备700通常最好具有简单配置。在这种情况下,可以构思出这样的配置,其中在内置到视频摄像 设备700的传输单元600的视频信号编码单元610中以低划分级别执 行小波变换。这减少了用于系数重排列緩冲单元的存储容量。此外,可以构思出这样的配置,其中已通过第三实施例描述的、 图12中示例性示出的图像编码设备的配置被应用到视频信号编码单 元610。此外,将已通过第四实施例描述的、图15中示例性示出的图
像编码设备的配置应用到视频信号编码单元610,这免除了在视频信 号编码单元610侧执行小波变换系数数据的重排列处理的需要,因此 可以进一步减少视频摄像设备700侧上的负荷,这是值得期望的。在 这种情况下,需要使用已通过第四实施例描述的、图16中示例性示 出的图像解码设备,作为内置在家用游戏机的主单元701侧中的接收 设备601中的视频信号解码单元624。要注意,家用游戏机的视频摄像设备700和主单元701在上面被 描述为通过无线通信连接,但该配置不限于该示例。也就是说,家用 游戏机的视频摄像设备700和主单元701可以通过有线,经由诸如 USB、 IEEE 1394之类的接口连接。如上所述,本发明的另一大优点在于,它可以应用到各种形式, 并且可以容易地应用于广泛的多种用途(即,非常通用)。上述系列处理可以通过硬件实现或者通过软件实现。在通过软件 实现这一系列处理的情况下,构成软件的程序被从程序记录介质安装 在内置有专用硬件的计算机中,或者安装在通用计算机中,或者由能 够通过其中安装的各种类型的程序执行各种功能的多个设备构成的 信息处理系统的信息处理设备中。图40是用程序执行上述系列处理的信息处理系统的配置示例的框图。如图40所示,信息处理系统800是由信息处理设备801、通过 PCI总线802与信息处理设备801相连的存储设备803、作为多个录 像机(VRT )的VTR 804-1到VTR 804-S、以及鼠标805、键盘806 和供用户执行这些输入操作的操作控制器807组成的系统,并且是通 过安装的程序执行上述图像编码处理和图像解码处理等的系统。信息处理系统800的信息处理设备801例如可以将存储在由 RAID (独立磁盘冗余阵列)配置的大容量存储设备803中的运动图 像内容,并且将获得的编码数据存储在存储设备803中,解码存储在 存储设备803中和存储在存储设备803中的获得的解码图像数据(运 动图像内容)中的编码数据,通过VTR 804-1到VTR 804-S将编码 数据或解码图像数据记录在录像带上,等等。此外,信息处理设备801 被配置成将记录在装入VTR 804-1到VTR 804-S的录像带中的运动 图像内容捕获到存储设备803中。此时,可以做出这样的配置,其中 信息处理设备801编码运动图像内容。信息处理单元801具有微处理器901、GPU(图形处理单元)902、 XDR (极端数据速率)-RAM 903、南桥904、 HDD 905、 USB接口 (USBI/F) 906和声音输入/输出编解码器907。GPU 902通过专用总线911连接到微处理器901。XDR-RAM 903 通过专用总线912连接到微处理器901。南桥904通过专用总线连接 到微处理器901的I/O控制器944。还连接到南桥904的有HDD 905、 USB接口 906和声音输入/输出编解码器907。扬声器921连接到声音 输入/输出编解码器907。此外,显示器922连接到GPU902。通过PCI总线802连接到南桥904的还有鼠标805、键盘806、 VTR 804-1到VTR 804-S、存储设备803和操作控制器807。鼠标805和键盘806接收来自用户的操作输入,并且通过PCI 总线802和南桥904向微处理器901提供指示来自用户的操作输入的 内容的信号。存储i殳备803和VTR 804-1到VTR 804-S可以记录和播 放预定数据。驱动器808进一步按需要连接到PCI总线802,其中适当地安装 可移动介质811 (如磁盘、光盘、磁光盘或半导体存储器等),按需 要将从中读出的计算机程序安装在HDD 905中。微处理器901是多内核配置,其中执行诸如OS (操作系统)等 的基本程序的通用主CPU内核941、通过内部总线945连接到主CPU 内核941的从CPU内核942-1到从CPU内核942-8 (其是多个(在 本情况下是8个)RISC (精简指令集计算机)型的信号处理处理器)、 用于执行例如具有25MByte容量的XDR-RAM 903的存储控制的 存储控制器943、和用于管理南桥904的数据输入和输出的I/O (输 入/输出)控制器944被集成在单个芯片上,实现例如4[GHz的工作 频率。
在启动时,微处理器901基于存储在HDD 905中并提供给 XDR-RAM 903的控制程序,读出存储在HDD 905中的必要应用程序, 并且基于应用程序和操作员操作依次执行必要的控制处理。此外,通过执行软件,微处理器901可以实现上述实施例的图像 编码处理和图像解码处理,将获得的码流作为编码结果通过南桥904 提供给HDD 905以供存储,执行作为解码结果获得的移动图像内容 的播放画面到GPU 902的数据传输,以便显示在例如显示器922上, 等等。尽管如何使用微处理器901的CPU内核是可选的,但可以做出 这样的配置,其中例如主CPU内核941执行关于图像编码处理和图 像解码处理的控制的处理,而八个从CPU内核942-1到从CPU内核 942-8如参照图11所述的那样同时和并行执行各种类型的处理,如小 波变换、系数重排列、熵编码、熵解码、小波逆变换、量化、反向量 化等。此时,以与参照图11所述的情况相同的方式实现这样的配置, 其中主CPU内核941以行块(区)为增量为八个从CPU内核5M2-1 到从CPU内核942-8中的每一个分配处理,从而以行块为增量同时并 行执行图像编码处理和图像解码处理。也就是说,可以提高图像编码 处理和图像解码处理的效率,并且可以进一步减少处理所需的负荷、 处理时间和存储容量。当然,也可以用其他方法执行每个处理。例如,可以做出这样的配置,其中,微处理器卯l的八个从CPU 内核942-1到从CPU内核942-8中的一部分执行编码处理,而其他部分同时并行执行解码处理。此外,例如,在独立编码器或解码器或者编解码器处理设备连接 到PCI总线802的情况下,微处理器901的八个从CPU内核942-1 到从CPU内核942-8可以通过南桥904和PCI总线802控制这些设 备执行的处理。此外,在连接多个这些设备的情况下,或者在这些设 备包括多个解码器或编码器的情况下,微处理器901的八个从CPU 内核942-1到从CPU内核942-8可以进行控制,使得多个解码器或编 码器分享处理。
此时,主CPU内核941管理八个从CPU内核942-1到从CPU 内核942-8的动作,为每个CPU内核分配处理,检索处理结果等。此 外,主CPU内核941还执行不同于这些从CPU内核执行的处理的其 他处理。例如,主CPU内核941接受从鼠标805、键盘806或操作控 制器807通过南桥904提供的命令,并且执行对应于命令的各种类型 的处理。GPU 902执行关于贴材质的最终渲染处理,以便播放要在显示器 922上显示的移动图像内容的播放画面,还管理用于在显示器922上 立即显示运动图像内容的多个播放画面和静止图像内容的静止图像时执行坐标变换计算的功能、用于放大/缩小运动图像内容的播放画面 和静止图像内容的静止图像的处理,等等,由此可以减轻微处理器901 上的负荷。GPU 902在微处理器901的控制下,使提供的运动图像内容的画 面数据和静止图像内容的图像数据经受预定信号处理,将作为结果获 得的画面数据和图像数据发送给显示器922,并且在显示器922上显 示图像信号。现在,由微处理器901的八个从CPU内核942-1到从CPU内核 942-8同时并行地解码的多个运动图像内容的播放画面经过数据传 输,通过总线911传输到GPU 902,其传输速度高达例如30Gbyte/ 秒l,因此可以以高速平滑地显示甚至具有特效的复杂画面图像。此外,微处理器901使运动图像内容的画面数据和音频数据当中 的音频数据经受混音处理,并且将作为结果获得的经编辑的音频数据 通过南桥904和声音输入/输出编解码器907发送给扬声器921,以便 基于来自扬声器921的音频信号输出音频。在通过软件实现上述系列处理的情况下,从网络或记录介质安装 构成该软件的程序。该记录介质不仅包括图40中所示的独立于设备主单元分发以便 将程序分发给用户的可移动介质811,如磁盘(包括软盘)、光盘(包 括CD-ROM和DVD)、磁光盘(包括MD)、半导体存储器等,还 包括HDD卯5、存储设备803,其中存储有程序等,以组装到设备主 单元中的状态分发给用户。当然,存储介质可以也是半导体存储器, 如ROM或闪存等。在上面描述了微处理器901配有8个从CPU内核,但本发明不 限于此,并且从CPU内核的数量是可选的。此外,对于微处理器901, 可以做出这样的配置,其中使用单核(一个内核)配置的CPU而不 是配有主CPU内核和从CPU内核的CPU。此外,可以使用多个CPU 代替微处理器901,可以使用多个信息处理设备(即,在多个设备上 联合操作执行用于执行本发明的处理的程序)。尽管本说明书中描述程序记录介质中存储的程序的步骤当然可 以按描述的时间顺序执行,但并不限于该时间顺序,而是可以并行或 者独立地执行。此外,本说明书中使用的系统是指配有多个设备的整个装备。 要注意在上面,描述为单个设备的配置可以被划分从而配有多个 设备。相反,在上面被描述为多个设备的配置可以被联合从而构成单 个设备。此外,设备的配置可以添加除了上述以外的其他配置。此外, 一个设备的一部分配置可以被包括在另一设备的配置中,只要整体系 统的配置和操作基本不变就行。工业应用性上述本发明可以有利地应用到各种设备或系统,只要图像被压缩 编码并发送、并且在传输目的地压缩码被解码和输出。本发明对于要 求从图像的压缩编码到解码输出的延迟短的设备或系统是特别有利 的。例如,本发明有利地应用到例如使用机械手的远程医疗诊断和治 疗,同时观看用视频摄像机拍摄的图像。此外,本发明有利地应用到 例如在广播台中使用的系统等中数字视频信号的压缩编码和传输、以 及经受压缩编码的数字视频信号的解码。此外,本发明可以应用到分发居住区的视频的系统、其中学生和
老师可以交互通信的教育系统等。
此外,本发明可以应用到传输用具有图像拍摄功能的移动终端 (如具有摄像功能的蜂窝电话)拍摄的图像数据、应用到视频会议系 统、应用到用记录器记录监视摄像机拍摄的记录图像的监视系统,等等。
权利要求
1.一种编码图像数据的编码设备,包括滤波装置,针对所述图像数据,执行分级滤波处理,并且生成由按照频带分解的系数数据构成的多个子频带;存储装置,累积地存储所述滤波装置生成的系数数据;和系数重排列装置,重排列所述存储装置存储的所述系数数据,以便以预定顺序输出。
2. 如权利要求1所述的编码设备,其中,所述滤波装置以行为 增量,从所述图像数据的屏幕上侧向底侧执行所述滤波处理。
3. 如权利要求2所述的编码设备,其中,所述滤波装置针对所 述图像数据,以行块为增量执行所述滤波处理,其中所述行块是生成 至少最低频带分量子频带的一行的量的系数数据所需的行数的图像 数据。
4. 如权利要求1所述的编码设备,其中,所述滤波装置在对应 于所述图像数据的垂直方向和水平方向上执行所述滤波处理。
5. 如权利要求1所述的编码设备,其中,由所述滤波装置执行 的所述滤波处理的抽头数和分辨率级别的数量中的至少一个是根据 目标延迟时间确定的。
6. 如权利要求1所述的编码设备,其中,所述滤波装置执行小 波滤波处理,其中使所述滤波处理获得的低频带分量子频带的系数数 据进一步经受所述滤波处理。
7. 如权利要求6所述的编码设备,其中,所述滤波装置使用提 升技术执行所述小波滤波处理。
8. 如权利要求6所述的编码设备,其中,在所述滤波装置使用 所述提升技术执行分辨率级别-X+l的滤波处理时,这是对于作为低 频带分量子频带用分辨率级别-X的滤波处理计算出的系数数据执行 的。
9. 如权利要求6所述的编码设备,其中,所述存储装置还包括 第一緩沖装置,保存在所述滤波装置执行的所述小波滤波处理的过程中生成的低频带分量子频带的系数数据;和第二緩沖装置,保存在所述滤波装置执行的所述小波滤波处理的 过程中生成的高频带分量子频带的系数数据。
10. 如权利要求9所述的编码设备,其中,所述第二緩冲装置保 存所述最低频带以外的频带分量的子频带的系数数据,直到所述滤波 装置生成最低频带分量子频带的系数数据为止。
11. 如权利要求1所述的编码设备,其中,所述系数重排列装置 重排列所述系数数据,使得按照从低频带分量到高频带分量的顺序输 出所述子频带。
12. 如权利要求l所述的编码设备,其中,所述系数重排列装置 以行块为增量,对所述图4象数据执行所述重排列,其中所述行块是生 成至少最低频带分量子频带的一行的量的系数数据所需的行数的图 像数据。
13. 如权利要求1所述的编码设备,还包括熵编码装置,用于 执行所述系数数据的熵编码。
14. 如权利要求13所述的编码设备,其中,所述熵编码装置依 次执行所述系数重排列装置重排列的系数数据的熵编码。
15. 如权利要求14所述的编码设备,其中,所述系数重排列装 置重排列所述系数数据,使得按照从低频带分量到高频带分量的顺序 输出所述子频带;并且,其中一旦所述系数重排列装置重排列了所述系数数据,所 述熵编码装置就按照从低频带分量到高频带分量的顺序依次执行重 排列的系数数据的熵编码。
16. 如权利要求13所述的编码设备,其中,所述熵编码装置执 行所述滤波装置生成的所述系数数据的熵编码;并且,其中所述存储装置存储经受了所述熵编码装置进行的熵编 码的所述系数数据。
17. 如权利要求16所述的编码设备,其中,所述存储装置存储 作为所述最低频带以外的频带分量的子频带生成的并且经受了所述 熵编码装置进行的熵编码的系数数据,直到使最低频带分量子频带的 系数数据经受了所述熵编码装置进行的熵编码为止。
18. 如权利要求16所述的编码设备,其中,所述系数重排列装 置重排列所述存储装置存储的并经受了所述熵编码装置进行的熵编 码的所述系数数据,使得一旦重排列了所述系数数据,按照从低频带 分量到高频带分量的顺序输出所述子频带,并且按照从低频带分量到 高频带分量的顺序输出重排列的系数数据。
19. 如权利要求13所述的编码设备,其中,所述熵编码装置对 同一子频带内的多行系数数据执行成批熵编码。
20. 如权利要求13所述的编码设备,其中,所述熵编码装置按 照从低频带到高频带的顺序针对在一维方向上排列的系数数据流,编 码构成行块的所有子频带的行,其中所述行块是与生成至少最低频带 分量子频带的一行系数数据所需的行数的图像数据相对应的系数数 据组。
21. 如权利要求13所述的编码设备,所述熵编码装置包括 量化装置,量化所述滤波装置生成的所述系数数据;和 信源编码装置,对通过所述量化装置量化所述系数数据而获得的量化结果系数执行信源编码。
22. 如权利要求13所述的编码设备,还包括 分组化装置,将预定头添加到所述熵编码装置对每个行块的系数数据按照从低频带分量到高频带分量的顺序执行熵编码而获得的编 码结果数据,并且将该头和数据主体分组化,其中所述行块是与生成 至少最低频带分量子频带的一行系数数据所需的行数的图像数据相 对应的所述系数数据的集合;和发送装置,将所述分组化装置生成的所述分组发送出去; 其中所述熵编码装置、所述分组化装置和所述发送装置同时且并 行执行各个处理;并且,其中所述熵编码装置以所述行块为增量执行所述系数数据 的所述熵编码;并且,其中一旦通过所述熵编码装置执行熵编码而生成每个行块 的编码结果数据,所述分组化装置就分组化每个所述行块的编码结果 数据;并且,其中一旦所述分组化装置分组化了每个行块的编码结果数 据,所述发送装置就将获得的分组发送出去。
23. 如权利要求22所述的编码设备,其中,所述头记录有用于 标识屏幕中的所述行块的标识信息、数据主体的数据长度和编码信 息。
24. 如权利要求23所述的编码设备,其中,所述熵编码装置包括量化装置,量化所述滤波装置生成的所述系数数据;和 信源编码装置,对通过所述量化装置量化所述系数数据而获得的 量化结果系数执行信源编码;其中所述编码信息包括所述量化装置执行量化的量化步长大小。
25. 如权利要求24所述的编码设备,其中,所述量化步长大小 的信息包括每个子频带的量化步长大小的信息。
26. —种用于编码图像数据的编码设备的编码方法,所述方法包括滤波步骤,针对所述图像数据,执行分级滤波处理,并且生成由 按照频带分解的系数数据构成的多个子频带;存储控制步骤,在存储单元中累积地存储通过所述滤波步骤中的 处理生成的所述系数数据;和系数重排列步骤,重排列通过被所述存储控制步骤中的处理控制 而存储在所述存储单元中的所述系数数据,以便以预定顺序输出。
27. —种对其中已编码了图像数据的编码图像数据进行解码的解 码设备,包括存储装置,存储通过使所述图像数据分级地经受第一滤波处理而 获得的、以行为增量提供的、由按照频带分解的系数数据构成的多个 子频带的系数数据;系数重排列装置,重排列所述存储装置存储的所述系数数据,以 ^便以预定顺序输出;和滤波装置,对所述重排列装置重排列的并从所述存储装置输出的 所述系数数据执行第二滤波处理,并且合成由按照频带分解的多个子 频带的系数数据,以便生成所述图像数据。
28. 如权利要求27所述的解码设备,其中,所述系数重排列装 置重排列所述系数数据,使得按照从低频带分量到高频带分量的顺序 输出所述子频带。
29. 如权利要求27所述的解码设备,其中,所述系数重排列装 置以行块为增量,对存储在所述存储装置中的所述系数数据执行所述 重排列,其中所述行块是与生成至少最低频带分量子频带的一行的量
30. 如权利要求27所述的解码设备,其中,所述滤波装置以行 为增量,从屏幕上侧向底侧执行所述第二滤波处理,从而生成所述图 像数据。
31. 如权利要求27所述的解码设备,其中,所述滤波装置以行 块为增量对所迷系数数据执行所述第二滤波处理,其中所述行块是与 生成至少最低频带分量子频带的一行的量的系数数据所需的行数的 图像数据相对应的系数数据的集合.
32. 如权利要求27所述的解码设备,其中,所述滤波装置使用 提升技术执行所述第二滤波处理。
33. 如权利要求27所述的解码设备,还包括熵解码装置,用于 以行为增量对每个子频带执行所述编码数据的熵解码;其中所述存储装置存储由所述熵解码装置执行所述熵解码而获 得的系数数据。
34. 如权利要求33所述的解码设备,其中,所述熵解码装置执 行编码数据的解码,其中对构成行块的所有子频带的行已进行了编码 和将其一维排列,其中,所述行块是与生成至少最低频带分量子频带 的 一行系数数据所需的行数的图像数据相对应的系数数据组。
35. 如权利要求33所述的解码设备,所述熵解码装置包括 信源解码装置,对所述编码数据执行信源解码;和 反向量化装置,对作为所述信源解码装置的信源解码结果而获得的系数数据执行反向量化。
36. —种对其中已编码了图像数据的编码图像数据进行解码的解 码设备的解码方法,所述方法包括存储控制步骤,在存储单元中存储通过使所述图像数据分级经受 第一滤波处理而获得的、以行为增量提供的、按照频带分解的系数数 据构成的多个子频带的系数数据;系数重排列步骤,重排列通过被在所述存储控制步骤中的处理控 制而存储在所述存储单元中的所述系数数据,以便将其以预定顺序输 出;和滤波步骤,对通过所述重排列步骤中的处理而重排列的并从所述 存储单元输出的系数数据执行第二滤波处理,并且合成由按照频带分 解的多个子频带的系数数据,以便生成所述图像数据。
37. —种传输系统,包括编码图像数据的编码设备;和解码其述编码设备与所述解码设备之间传输所述编码数据; 、 其中,所述编码i殳备包括第一滤波装置,针对所述图像数据,分级执行第一滤波处理,并 且生成由按照频带分解的系数数据构成的多个子频带,存储装置,累积地存储所述第一滤波装置生成的所述系数数据,和系数重排列装置,重排列所述存储装置存储的所述系数数据,以 便将其以预定顺序输出;并且,其中所述解码设备包括第二滤波装置,对经由传输路径从所述编码设备发送的、由所述 重排列装置重排列的并从所述存储装置输出的所述系数数据执行第二滤波处理,并且合成按照频带分解的多个子频带的系数数据,以便 生成所述图像数据。
全文摘要
一种使得接收侧能够输出被压缩编码且在短时间内发送的图像数据作为解码图像的编码设备和方法、解码设备和方法以及传输系统。为了小波变换,以行为单位执行每行的滤波处理,由此生成最低频带分量中的一行系数数据。使第一行到第七行经受第一滤波处理。在划分级别=1上生成高频带分量的系数C1、系数C2和系数C3、以及低频带分量的系数Ca、系数Cb和系数Cc。在划分级别=2上,由系数Ca、系数Cb和系数Cc生成高频带分量的系数C4和低频带分量的系数C5。按照从低频带到高频带的顺序重排列这些系数,并且将其提供给合成滤波器。合成滤波器按照提供的顺序执行系数的滤波处理,以生成图像数据并将其输出。
文档编号H03M7/30GK101129063SQ20068000586
公开日2008年2月20日 申请日期2006年11月17日 优先权日2005年11月18日
发明者保坂和寿, 安藤胜俊, 福原隆浩 申请人:索尼株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1