码率控制方法和编码控制器的制作方法

文档序号:7706208阅读:154来源:国知局
专利名称:码率控制方法和编码控制器的制作方法
技术领域
本发明涉及通信技术领域,具体涉及在多媒体通信中的码率控制方法和编码控制
o
背景技术
对于视频通信领域,不同的网络,例如Ethernet,WLAN,以及Cable,其通信信道带 宽通常是固定的。当在信道上传输多媒体时,需对传输的视频编码进行码率控制,从而保证 编码码流通过网络平滑流畅地传输,这样接收方观看的视频是连续的,不会出现时断时序, 不能衔接的情景。例如,如果原始多媒体编码码流为500kbps (bit per second),而网络带宽只有 400kbps,则接收方的缓存会间断性的处于“空”的状态,即没有待播放的多媒体码流,用户 就会无法观看到平滑流畅的图像。实时码率控制有VBR(Variable Bitrate 可变比特率)和 CBR(Constants Bit Rate固定比特率)两种模式。在VBR模式下,由于实际视频序列中的图像复杂度不断变化, 例如细节多少不同、运动快慢不同等等,造成比特率也相应变化,即原始多媒体编码码流的 比特率是变化的,这种VBR码率控制模式在当前固定带宽的网络下传输常常会出现不流畅 的问题,而在CBR模式下,输入为视频原始码流和传输信道的目标比特,根据对源复杂度估 计、解码缓冲的大小及网络带宽估计等动态调整量化参数,得到符合传输信道的目标比特 的码率。所以,在当前固定带宽的网络下传输多媒体,基本都使用CBR。参考图1,图1示出了现有的编码系统的组成。编码一般是通过对原始码流进行 帧内/帧间预测、离散余弦变换、量化和熵编码来得到编码码流。由图1可见,码率控制主 要是通过其中的编码控制模块来实现的。现有的编码控制模块(器)采用码率控制算法进 行码率控制。码率控制算法中通过动态调整编码器参数,来得到目标比特数。现有的码率 控制算法主要是通过调整离散余弦变换的量化参数大小输出目标码率。实际上,量化参数 (QP)反映了空间细节压缩情况,如QP小,大部分的细节都会被保留,码率增大;而QP增大, 一些细节丢失,码率降低,但图像失真加强和质量下降。换句话说,QP和比特率成反比的关 系,而且随着视频源复杂度的提高,这种反比关系会更明显。现有技术中,MPEG2,MPEG4, H264图像编码标准中都采用QP进行码率控制,即,对多媒体的图像的一帧图像不同的宏块 计算得到不同的QP来编码,每个宏块内部采用固定的QP来进行码率控制。目前最通用并且有效的码率控制模型是二次模型,见公式(1) 式⑴和〔2〕中,Hset定义为为当前编码单元分配的编码比特数;为头信息比 特数;Cl,C2是模型系数,可以通过前面的数据点线性回归法得到。o由MAD(Mean Average Difference预测误差的平均残差绝对值)决定。
由此可见,为当前编码单元分配的编码比特数只决定于量化参数,可以根据通信 带宽得到为当前编码单元应该分配的编码比特数,反向求出QP。目前的方法中,对多媒体的 图像的一帧图像的每个宏块中的所有频率的系数都采用相同的的量化参数QP。理论上,如 果可以对每个宏块内不同的频率系数采用不同的量化参数,则其码率控制的精度会更加精 细,重构图像的质量会更好。

发明内容
因此,需要一种很精确地码率控制的方法和编码控制器。根据本发明的一个方面,提供了一种码率控制的方法,包括接收待编码图像的一 个基本处理单元;计算该基本处理单元的量化矩阵,其中所述量化矩阵和该基本处理单元 的量化模式类型以及为所述基本处理单元分配的编码比特数相关;应用计算的量化矩阵对 该基本处理单元进行编码;以及输出编码的码流。根据本发明的另一个方面,提供了一种编码控制器,包括接收单元,用于接收待 编码图像的一个基本处理单元;量化矩阵计算单元,用于计算该基本处理单元的量化矩阵, 其中所述量化矩阵和该基本处理单元的量化模式类型以及为所述基本处理单元分配的编 码比特数相关;编码单元,用于应用计算的量化矩阵对该基本处理单元进行编码;以及输 出单元,用于输出编码的码流。与现有技术相比,本发明的码率控制的方法和编码控制器,能够在同样的通信带 宽下,更精确地进行码率控制,减少码率的抖动,并且保留图像更多的细节,提高视频图像 的质量。


通过对附图中本发明示例实施例方式的更详细描述,本发明的上述、以及其它目 的、特征和优势将变得更加明显,其中,相同的参考标号通常代表本发明示例实施例方式中 的相同部件。图1示出了现有的编码系统的组成;图2示意性地示出了流媒体处理中待处理单元的相邻处理单元;图3示出了根据本发明的实施例的一种码率控制方法的流程图;图4示出了根据本发明的实施例的计算基本处理单元的量化矩阵QM的方法的流 程图;图5示意性地示出了根据本发明的实施例的利用基本处理单元的相邻处理单元 来判别基本处理单元的量化模式类型的方法的流程图;图6示出了对一个试验图像序列利用本发明的方法与传统的码率控制方进行码 率控制得到的码率_帧比较曲线;图7示出了利用本发明的方法和传统方法对标准图像序列进行码率控制,解码后 的图像比较;图8示出了根据本发明的实施例的一种编码控制器的结构框图;图9示意性地示出了根据本发明实施例的一种量化矩阵计算单元的结构框图。
具体实施例方式将参照附图更加详细地描述本发明的优选实施方式,在附图中显示了本发明的优 选实施例。然而,本发明可以以各种形式实现而不应该理解为被这里阐述的实施例所限制。 相反,提供这些实施例是为了使本发明更加透彻和完整,并且,完全将本发明的范围传达给 本领域的技术人员。这里对本文中的图象,帧,场概念进行说明。图象可以是帧图象,也可以是场图象。 在下文中,为了简单起见,用帧图象对技术进行描述,但是该技术不仅适用于帧图象,而且 适用于场图象。为了便于介绍本发明,先介绍一些视频流媒体编码处理技术中和本发明相关的基 本知识。流媒体的一个图像序列中的一帧图像和静态图像是相同的,具有RGB三个分量。对 于一帧图像单独的处理和静态图像的处理略有不同,首先在流媒体中定义的宏块,是16x16 像素大小的图像。宏块通常被作为编码处理的基本单元,本发明的后续部分有些以宏块为 例进行描述,本领域技术人员可以知道,如果编码处理基本单元被定义成其它大小,本发明 的方法同样适用。另一个基本概念是相邻处理单元或者称相邻块,相邻块定义如图2所示。其中,块 E的相邻块包括块DBCA。相邻块可以用于帧内预测等。本发明后续部分为了便于陈述,称 块D为处理块的左上相邻块;±夬B为处理块的上相邻块;±夬C为处理块的右上相邻块;±夬A 为处理块的左相邻块。这些处理块和相邻块可以是宏块,宏块的子块,或者比宏块更大的数 据块。本发明中,称块DBCA的全部为全部相邻块。其它一些基本知识还包括帧内(Intra)预测编码模式是在一帧图像内部的图像 空间域上进行的预测编码,该编码可以除去相邻块之间的空间冗余度,达到压缩的目的。帧间(Inter)预测编码模式是利用视频图像帧间的相关性,即时间相关性,来达 到图像压缩的目的。活动图像通常是由时间上以帧周期为间隔的连续图像帧组成的时间图 像序列,它在时间上比在空间上具有更大的相关性。利用帧所具有的相关性的特点进行帧 间编码,可获得比帧内编码高得多的压缩比。跳过模式(skip mode),在该编码模式下,编码图像序列中当前编码图像帧中的编 码单元和前一帧图像中对应该位置的编码单元内容相同。该模式可以很大程度的提高压缩 性能。在帧间预测编码模式中,常常先采用大的图像块进行预测,如果效果不好,再采用 较小的图像块预测。大背景块可以理解为采用的预测的数据块大于当前待处理的图像块。双向预测参考图像采用预测编码的方法消除序列图像在时间上的相关性,即在 图像序列中中间帧的图像是采用前一帧该位置的图像和下一帧该位置的图像来预测的。流媒体图像序列的相邻帧间常常具有相关性,因此,编码时会利用这种相关性进 行运动预测等。但是流媒体图像序列一般每经过一个固定时间,会有一帧图像,该帧图像编 码时全部是帧内预测,不再利用从时间上在前的各帧图像。该帧图像编码称为IDR帧或参 考帧。IDR帧可以独立解码,是后续压缩帧解码的基础。任何流媒体播放从中间切入时,需 要从IDR帧开始解码、播放。流媒体图像序列进行预测编码后,对所得的预测残差进行离散余弦变换,即将预 测残差变换到频域空间处理,通过量化参数在频域空间压缩,然后进行熵编码在统计域进行压缩,输出压缩的码流。码率控制就是在编码过程中控制频域中的系数,得到要求的编码 比特数。编码可以采用遍历的方式,得到最高压缩比或者要求的码率。解码时只要采用和 编码方法对应的解码方法既可。码率控制的目标或者评价标准为,输出码率士 a %,其中,a为码率的波动,该值 越小输出的码率越平稳,流媒体的流畅性越好。另外,流媒体的观看质量和主观因素相关,不同的观众,关注点不同,可能认为的 质量也不相同。下面引入本发明的基本思想。在JPEG、MPEG2和H. 264/AVC high profile标准中,还经常采用量化矩阵 (Quantization Matrix)的概念。例如,在 H. 264/AVC high profile 标准中,有 8x8 和 4x4 两种离散余弦(DCT)变换尺寸,因此也有与之对应的两组8x8或4x4的量化矩阵。对于8x8 的量化矩阵,可以采用64个系数对不同的频率分量进行量化的缩放;对于4x4的矩阵,可以 采用16个系数对不同的频率分量进行量化的缩放。这64或16个系数组成8x8或4x4的 矩阵,也就是常说的量化矩阵。DCT系数矩阵的每个元素除以对应该系数的量化矩阵的每个 元素,就获得量化的系数。在H. 264/AVC High Profile标准中,在序列头和图象头的语法 中都有量化矩阵。H. 264/AVC High Profile不仅允许每个序列的所有图象都拥有同样的量 化矩阵,而且也允许同一序列中的不同的图象拥有不同的量化矩阵,但在同一序列的同一 副图象中的所有宏块只能使用同一个量化矩阵。同一序列的同一副图象中的所有宏块只能使用同一个量化矩阵也被JPEG和 MPEG4标准采用。在一个宏块的量化矩阵中,离原点越近的元素,量化的是对应图像块的低频部分, 对于离原点较远的元素,量化的是对应图像块的高频部分。由于人眼对图像的高频分量没 有对图像的低频分量敏感,所以使用量化矩阵视觉损失也是很小的。如果同一副图象中的每个宏块使用不同的量化矩阵,虽然对原始图像会达到更高 的压缩比,从而降低编码码率,但是由于需要对每个宏块都传输量化矩阵,又增加了编码码 率。在码率控制的现有技术中,一般都采用量化参数QP的编码方式,可以简单理解, 就是在量化矩阵QM中,所有矩阵元素相同。显然,这就是对图像块的高频分量和低频分量 进行相同的量化,可能视觉效果不是很好,但是由于码率控制只要传输一个量化参数,编码 效率高。在QP编码模式下,为当前编码单元分配的编码比特数只与QP相关。本发明中,对同一副图象中的每个基本处理单元使用不同的量化矩阵来进行码率 控制,但是该量化矩阵不同于现有技术中的量化矩阵,是将现有技术中的量化矩阵和量化 参数概念结合起来的量化矩阵。本发明中,对于基本处理单元进行码率控制,该基本处理单元可以为宏块,或者宏 块的子块,或者为用户定义的数据块。图3示出了根据本发明的实施例的一种码率控制 方法的流程图。根据该方法,在步骤S301,接收待编码图像的一个基本处理单元;在步骤 S302,计算该基本处理单元的量化矩阵,其中所述量化矩阵和该基本处理单元的量化模式 类型以及为所述基本处理单元分配的编码比特数相关;在步骤S303,应用计算的量化矩阵 对该基本处理单元进行编码;在步骤S304,输出编码的码流。与现有技术相比,本发明码率
7控制的每个基本处理单元,使用该基本处理单元的量化矩阵进行量化,而不是采用该基本 处理单元的量化参数进行量化。其中,如何实施步骤S303和步骤S304,对于本领域技术人 员来说是公知的,与JPEG压缩技术中使用的是相同的技术,本发明中不再描述。下面中重点描述如何计算该基本处理单元的量化矩阵。根据本发明,为当前编码单元(即基本处理单元)分配的编码比特数Hsrt为所述 基本处理单元的量化模式类型(mod)以及量化矩阵(QM)的函数,即Hset = f (mod, QM)(3)贝丨JQM = r1 (mod, Hset)(4)首先,量化矩阵QM假设是一个nXn的矩阵,矩阵中共有nXn个元素。基本处理 单元的量化模式类型(mod)在上式中是通过矩阵元素来影响重构量化矩阵的因素,后面将 会单独讨论其如何影响,该因素这里先不考虑,则式(4)变为QM = T1 (Hset)(5)显然,量化矩阵QM如果应用nXn个未知元素变量,此方程无法解。图4示出了根 据本发明的实施例的计算一个基本处理单元的量化矩阵QM的方法的流程图。根据图4,首先在步骤S401,根据通信带宽计算为所述基本处理单元分配的编码 比特数,在步骤S402,根据计算出的为所述基本处理单元分配的编码比特数,以及获得的为 所述基本处理单元分配的编码比特数与一规定的未知参数的函数关系,计算该规定的未知 参数。在一种实施方式中,假设QM中只有一个未知变量X,所有其它QM元素都是x的 函数,获得其函数关系可以采用多种方式,例如使用应用最小二乘拟合可以获得一次、二次 或者高次的函数关系,也可以采用神经网络学习,或者其它自适应学习方法获得其函数关 系。由于这种学习是离线的,学习的结果可以直接用于量化编码,因此,即使学习过程计算 复杂,也不会影响码率控制的量化编码过程。以下为了便于陈述,以一次函数为例陈述,则Hset = Ax+B(6)可以通过对大量图像的多个基本处理单元,适用不同的量化参数QP(x)得到其为 当前编码单元(基本处理单元)分配的编码比特数Hset,应用最小二乘拟合获得一次函数的 系数A和B。采用二次函数的处理类似,甚至也可以采用高次函数,只是获取函数的系数的 计算更为复杂。得到函数的关系式后,根据为基本处理单元分配的编码比特数Hset (根据通信带宽 计算获得),就可以计算出X。得到x后,如何映射出量化矩阵QM又是一个技术问题,原则上QM具有n X n个未知 元素变量,但是一般的流媒体处理中,对于相同的频率的分量,是采用相同的量化参数,这 样,使得QM成为一个对称矩阵,参数个数降为(n2+n)/2。用户可以根据应用的要求进一步 降低参数的个数。在步骤S403,根据计算出的该规定的未知参数,以及获得的量化矩阵中的 所有未知参数与所述规定的未知参数的函数关系,计算量化矩阵中的所有未知参数。注意, 这里量化矩阵中的所有未知参数与所述规定的未知参数的函数关系可以通过试验获得,也 可以由用户根据应用指定,也可以先由用户指定,然后由试验结果进行微调。后面涉及量化 矩阵重构时还会进一步讨论该问题。
在本发明的一个实施方式中,假设有6个参数,即QM = f(x,£,入,3,a,co) (7)并且,通过实验确定各变量的关系为e = 2Xx入=2. 5 X x3 = 3Xxa = 3. 3Xxco = 4. 5Xx(8)根据计算出的x,就可以求出上述量化矩阵的各参数。获得量化矩阵QM的参数后,如何重构量化矩阵和基本处理单元的量化模式类型 (mod)相关。因此,在步骤S404,需要确定所述基本处理单元的量化模式类型。基本处理单元具有三种量化模式类型,通用类型,细节类型以及非细节类型。这里 采用一个例子形象地概述图像中不同处理单元的量化模式类型,例如,在一个坐着的主持 人的图像序列中,主持人身后有静止不变的背景,也有一些变化的图像。这时,主持人面部 表情可以认为是细节区域,不动的背景为非细节区域,运动的背景为通用区域。通用类型的 处理单元对其不需要特殊的处理,这样的区域是无需用量化矩阵调整的区域。细节类型的 图像处理单元需要保真度更高的量化矩阵,使得高频分量更加丰富;非细节类型的处理单 元需要保真度低的量化矩阵,使得高频分量减少,降低比特数。如何确定基本处理单元的类型可以有多种方式,例如,根据应用类型,通过识别, 确定基本处理单元的类型,例如上述例子中,主持人的面部识别后为细节单元,不动背景为 非细节单元,动背景为通用类型等。另外一种方式可以通过用户直接指定不同的区域为不 同的类型。在另一种优选的实施方式中,通过利用该基本处理单元的相邻处理单元来判别基 本处理单元的量化模式类型。图5示意性地示出了该判别方法流程图。根据图5,在步骤 S501,判断所述基本处理单元是否具有全部相邻处理单元(即对应图2,具有相邻处理单元 AB⑶),如果不是,则在步骤S502确定该基本处理单元为通用类型;否则,在步骤S503、S504 和S505判断所述基本处理单元是帧内预测模式、帧间预测模式还是双向预测参考模式? 如果在步骤S503确定基本处理单元是帧内预测模式,则在步骤S506执行判断1 判断所述 基本处理单元的左相邻处理单元和左上相邻处理单元(即对应图2,相邻处理单元AD)是 否为相同的量化模式类型,或者所述基本处理单元的上相邻处理单元和右上相邻处理单元 (即对应图2,相邻处理单元BC)是否为相同的量化模式类型,如果是,则在步骤S507所述 基本处理单元为通用类型;否则,在步骤S508确定所述基本处理单元为细节类型;如果在 步骤S504确定所述基本处理单元是帧间预测模式,则在步骤S509执行判断2 判断所述基 本处理单元的全部相邻处理单元的至少一个是否为帧内预测模式,如果是,则在步骤S512 确定所述基本处理单元为细节类型;否则在步骤S510执行判断3 判断所述基本处理单元 的全部相邻处理单元的至少一个是否为帧间预测模式,如果是,则在步骤S512确定所述基 本处理单元为细节类型;否则在步骤S511执行判断4 判断所述基本处理单元的左相邻处 理单元和左上相邻处理单元(即对应图2,相邻处理单元AD)是否为跳过模式,或者所述基 本处理单元的上相邻处理单元和右上相邻处理单元是否为跳过模式,如果是,在步骤S512确定所述基本处理单元为细节类型;否则,在步骤S513,确定所述基本处理单元为通用类 型;如果在步骤S505确定所述基本处理单元的图像类型是双向预测参考模式,则在步骤 S514执行判断5 判断所述基本处理单元的左相邻处理单元和左上相邻处理单元(即对应 图2,相邻处理单元AD)是否为跳过模式,或者所述基本处理单元的上相邻处理单元和左上 相邻处理单元(即对应图2,相邻处理单元DB)是否为跳过模式,如果是,则在步骤S515确 定所述基本处理单元为细节类型;否则在步骤S516确定所述基本处理单元为非细节类型。上述判断方法实施更方便、容易。在步骤S405,根据确定的所述基本处理单元的量化模式类型,以及计算出的计算 量化矩阵中的所有未知参数,重构量化矩阵。例如对前面QM = f (x,e , A ,日,a , ),我们可以设定不同处理单元的量化矩 阵,例如,假设基本处理单元为宏块的子块(8X8),则对于通用类型和非细节类型宏块,设 定量化矩阵为 对于细节类型宏块,设定量化矩阵为则可以看出,上述量化矩阵的对称性,这样设定量化矩阵实验效果比较好。并且对 于细节类型,量化矩阵的低频分量量化参数低,保留了更多的细节信息。对于通用类型和非 细节类型,量化矩阵的低频分量量化参数高。过滤了更多的细节信息,减少了码率。上述只是根据量化矩阵的元素参数基本处理单元的量化模式类型重构量化矩阵 的一种实施方式,本领域技术人员可以根据应用的类型,来调整量化矩阵的设定。需要注意 的是,流媒体的图像质量是一个非常主观的因素,上述实施方式对实验图像序列的效果较 好,但是对于不同的应用,还应该考虑该应用的特点,可能需要不同的量化矩阵重构策略。图6示出了对一个试验图像序列利用本发明的方法与传统的码率控制方进行码
(10)率控制得到的码率-帧比较曲线,图6中,选择通信带宽为典型的卫星广播频道(带宽 2.5Mbps)。图6中,深颜色的曲线为采用本发明的方法获得的码率;浅颜色的曲线为采用 QP方法获得的码率。由图6可以看出,本发明的方法比传统方法控制的码率更精确,抖动更图7示出了利用本发明的方法和传统方法对标准图像序列进行码率控制,解码后 的图像比较。由图7可以看出,与传统码率控制方法相比,本发明的方法保留图像更多的细 节,提高视频图像的质量。基于同一个发明构思,本发明还公开了一种编码控制器,如图8示出了该编码控 制器的结构框图。根据图8,该编码控制器800包括接收单元801,用于接收待编码图像的 一个基本处理单元;量化矩阵计算单元802,用于计算该基本处理单元的量化矩阵,其中所 述量化矩阵和该基本处理单元的量化模式类型以及为所述基本处理单元分配的编码比特 数相关;编码单元803,用于应用计算的量化矩阵对该基本处理单元进行编码;和输出单元 804,用于输出编码的码流。在本发明的一个实施方式中,量化矩阵中的所有未知参数以及为所述基本处理单 元分配的编码比特数均为量化矩阵中一个规定的未知参数的函数,并且上述两个函数关系 是在编码过程之外获取。具体函数关系的获取在前面的码率控制方法中已经详细描述,这 里不再赘述。图9示意性地示出了根据本发明实施例的一种量化矩阵计算单元的结构框图。该 量化矩阵计算单元包括包括编码比特数计算单元901,用于根据通信带宽计算为所述基 本处理单元分配的编码比特数;规定的未知参数计算单元902,用于根据编码比特数计算 单元901计算出的为所述基本处理单元分配的编码比特数,以及获得的为所述基本处理单 元分配的编码比特数与该规定的未知参数的函数关系,计算该规定的未知参数;量化矩阵 未知参数计算单元903,用于根据规定的未知参数计算单元902计算出的该规定的未知参 数,以及获得的量化矩阵中的所有未知参数与所述规定的未知参数的函数关系,计算量化 矩阵中的所有未知参数;量化模式类型确定单元904,用于确定所述基本处理单元的量化 模式类型;和量化矩阵重构单元905,用于量化类型确定单元确定的所述基本处理单元的 量化模式类型以及量化矩阵未知参数计算单元计算出的计算量化矩阵中的所有未知参数, 重构量化矩阵。其中基本处理单元的量化模式类型包括三种通用类型,细节类型以及非细 节类型。如何判别基本基本处理单元的量化模式类型在前面的码率控制方法中已经详细描 述,这里不再赘述。虽然这里参照附图描述了本发明的示例性实施例,但是应该理解本发明不限于这 些精确的实施例,并且在不背离本发明的范围和宗旨的情况下,本领域普通技术人员能对 实施例进行各种变化的修改。所有这些变化和修改意欲包含在所附权利要求中限定的本发 明的范围中。并且根据上述描述,所属技术领域的技术人员知道,本发明可以体现为装置、方法 或计算机程序产品。因此,本发明可以具体实现为以下形式,即,可以是完全的硬件、完全的 软件(包括固件、驻留软件、微代码等)、或者本文一般称为“电路”、“模块”或“系统”的软 件部分与硬件部分的组合。此外,本发明还可以采取体现在任何有形的表达介质(medium of expression)中的计算机程序产品的形式,该介质中包含计算机可用的程序码。
可以使用一个或多个计算机可用的或计算机可读的介质的任何组合。计算机可 用的或计算机可读的介质例如可以是——但不限于——电的、磁的、光的、电磁的、红外线 的、或半导体的系统、装置、器件或传播介质。计算机可读介质的更具体的例子(非穷举的 列表)包括以下有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器 (RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPR0M或闪存)、光纤、便携式紧凑磁 盘只读存储器(CD-ROM)、光存储器件、诸如支持因特网或内部网的传输介质、或者磁存储器 件。注意计算机可用的或计算机可读的介质甚至可以是上面印有程序的纸张或者其它合适 的介质,这是因为,例如可以通过电扫描这种纸张或其它介质,以电子方式获得程序,然后 以适当的方式加以编译、解释或处理,并且必要的话在计算机存储器中存储。在本文件的语 境中,计算机可用的或计算机可读的介质可以是任何含有、存储、传达、传播、或传输供指令 执行系统、装置或器件使用的或与指令执行系统、装置或器件相联系的程序的介质。计算机 可用的介质可包括在基带中或者作为载波一部分传播的、由其体现计算机可用的程序码的 数据信号。计算机可用的程序码可以用任何适当的介质传输,包括——但不限于——无线、 电线、光缆、RF等等。用于执行本发明的操作的计算机程序码,可以以一种或多种程序设计语言的任何 组合来编写,所述程序设计语言包括面向对象的程序设计语言——诸如Java、Smalltalk, C++之类,还包括常规的过程式程序设计语言——诸如” C”程序设计语言或类似的程序设计 语言。程序码可以完全地在用户的计算上执行、部分地在用户的计算机上执行、作为一个独 立的软件包执行、部分在用户的计算机上部分在远程计算机上执行、或者完全在远程计算 机或服务器上执行。在后一种情形中,远程计算机可以通过任何种类的网络——包括局域 网(LAN)或广域网(WAN)——连接到用户的计算机,或者,可以(例如利用因特网服务提供 商来通过因特网)连接到外部计算机。此外,本发明的流程图和/或框图的每个方框以及流程图和/或框图中各方框的 组合,都可以由计算机程序指令实现。这些计算机程序指令可以提供给通用计算机、专用计 算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得通过计算机或其它 可编程数据处理装置执行的这些指令,产生实现流程图和/或框图中的方框中规定的功能 /操作的装置(means)。也可以把这些计算机程序指令存储在能指令计算机或其它可编程数据处理装置 以特定方式工作的计算机可读介质中,这样,存储在计算机可读介质中的指令产生一个包 括实现流程图和/或框图中的方框中规定的功能/操作的指令装置(instruction means) 的制造品,也可以把计算机程序指令加载到计算机或其它可编程数据处理装置上,使得在计 算机或其它可编程数据处理装置上执行一系列操作步骤,以产生计算机实现的过程,从而 在计算机或其它可编程装置上执行的指令就提供实现流程图和/或框图中的方框中规定 的功能/操作的过程。附图中的流程图和框图,图示了按照本发明各种实施例的系统、方法和计算机程 序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代 表一个模块、程序段、或代码的一部分,所述模块、程序段、或代码的一部分包含一个或多个 用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所
12标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际 上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要 注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以 用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机 指令的组合来实现。
权利要求
一种码率控制的方法,包括接收待编码图像的一个基本处理单元;计算该基本处理单元的量化矩阵,其中所述量化矩阵和该基本处理单元的量化模式类型以及为所述基本处理单元分配的编码比特数相关;应用计算的量化矩阵对该基本处理单元进行编码;以及输出编码的码流。
2.根据权利要求1所述的码率控制的方法,其中所述基本处理单元为宏块。
3.根据权利要求1或2所述的码率控制的方法,其中所述量化矩阵中的所有未知参数 以及为所述基本处理单元分配的编码比特数均为量化矩阵中一个规定的未知参数的函数, 并且上述两个函数关系是在编码过程之外获取。
4.根据权利要求3所述的码率控制的方法,其中上述为所述基本处理单元分配的编码 比特数和所述规定的未知参数的函数关系是通过对多个实验图像序列的每个基本处理单 元的量化参数和为该基本处理单元分配的编码比特数的最小二乘拟合获得的。
5.根据权利要求3所述的码率控制的方法,其中所述计算该基本处理单元的量化矩阵 步骤包括根据通信带宽计算为所述基本处理单元分配的编码比特数;根据为所述基本处理单元分配的编码比特数,以及获得的为所述基本处理单元分配的 编码比特数与该规定的未知参数的函数关系,计算该规定的未知参数。
6.根据权利要求5所述的码率控制的方法,其中所述计算该基本处理单元的量化矩阵 步骤还包括根据计算出的该规定的未知参数,和获得的所述量化矩阵中的所有未知参数与所述规 定的未知参数的函数关系,计算量化矩阵中的所有未知参数。
7.根据权利要求6所述的码率控制的方法,其中所述基本处理单元的量化模式类型包 括三种通用类型,细节类型以及非细节类型。
8.根据权利要求7所述的码率控制的方法,其中所述计算该基本处理单元的量化矩阵 的步骤还包括确定所述基本处理单元的量化模式类型;利用计算出的所述量化矩阵中的所有未知参数,和确定的所述基本处理单元的量化模 式类型,重构量化矩阵。
9.根据权利要求8所述的码率控制的方法,其中利用该基本处理单元的相邻处理单元 来判别基本处理单元的量化模式类型。
10.一种编码控制器,包括接收单元,用于接收待编码图像的一个基本处理单元;量化矩阵计算单元,用于计算该基本处理单元的量化矩阵,其中所述量化矩阵和该基 本处理单元的量化模式类型以及为所述基本处理单元分配的编码比特数相关;编码单元,用于应用计算的量化矩阵对该基本处理单元进行编码;以及输出单元,用于输出编码的码流。
11.根据权利要求10所述的编码控制器,其中所述基本处理单元为宏块。
12.根据权利要求10或11所述的编码控制器,其中所述量化矩阵中的所有未知参数以及为所述基本处理单元分配的编码比特数均为量化矩阵中一个规定的未知参数的函数,上 述两个函数关系在编码过程之外获取。
13.根据权利要求12所述的编码控制器,其中上述为所述基本处理单元分配的编码比 特数和所述规定的未知参数的函数关系是通过对多个实验图像序列的每个基本处理单元 的量化参数和为该基本处理单元分配的编码比特数的最小二乘拟合获得的。
14.根据权利要求12所述的编码控制器,其中所述量化矩阵计算单元包括 编码比特数计算单元,用于根据通信带宽计算为所述基本处理单元分配的编码比特数;规定的未知参数计算单元,用于根据编码比特数计算单元为所述基本处理单元分配的 编码比特数,以及获得的为所述基本处理单元分配的编码比特数与该规定的未知参数的函 数关系,计算该规定的未知参数。
15.根据权利要求14所述的编码控制器,其中所述量化矩阵计算单元还包括量化矩阵未知参数计算单元,用于根据规定的未知参数计算单元计算出的该规定的未 知参数,以及获得的量化矩阵中的所有未知参数与所述规定的未知参数的函数关系,计算 量化矩阵中的所有未知参数。
16.根据权利要求15所述的编码控制器,其中所述基本处理单元的量化模式类型包括 三种通用类型,细节类型以及非细节类型。
17.根据权利要求16所述的编码控制器,其中所述量化矩阵计算单元还包括 类型确定单元,用于确定所述基本处理单元的量化模式类型;量化矩阵重构单元,用于根据所述类型确定单元确定的所述基本处理单元的量化模式 类型,和量化矩阵未知参数计算单元计算出的量化矩阵中的所有未知参数,重构量化矩阵。
18.根据权利要求17所述的编码控制器,其中所述类型确定单元利用该基本处理单元 的相邻处理单元来判别基本处理单元的量化模式类型。
全文摘要
本发明公开了一种码率控制的方法和编码控制器。该码率控制的方法包括接收待编码图像的一个基本处理单元;计算该基本处理单元的量化矩阵,其中所述量化矩阵和该基本处理单元的量化模式类型以及为所述基本处理单元分配的编码比特数相关;应用计算的量化矩阵对该基本处理单元进行编码;以及输出编码的码流。与现有技术相比,本发明的码率控制的方法和编码控制器,能够在同样的通信带宽下,更精确地控制编码码率,减少码率的抖动,并且保留图像更多的细节,提高视频图像的质量。
文档编号H04N7/24GK101854526SQ20091012830
公开日2010年10月6日 申请日期2009年3月30日 优先权日2009年3月30日
发明者冯宽, 刘星, 陈建文 申请人:国际商业机器公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1