用于在视频压缩中进行有效系数编码的方法及系统的制作方法

文档序号:7676070阅读:106来源:国知局
专利名称:用于在视频压缩中进行有效系数编码的方法及系统的制作方法
技术领域
本发明的系统及方法一般来说涉及视频处理。更具体来说,本发明的系统及方法 涉及对与视频压縮技术有关的信息进行编码及解码。
背景技术
视频压缩是指数字视频数据的压縮。视频压縮用于有效地对视频文件格式及串流 和广播视频格式的视频数据进行编码。压縮是将数据转换成具有较少位的格式,此种 格式可更有效地存储或传输。压縮的逆过程是解压縮,解压縮产生原始数据的副本(或 精确近似)。
当今,某些视频压縮方法应用某一类型的离散变换(例如,离散余弦变换(DCT)) 来减少预测残余中由使用时间或空间预测技术产生的剩余空间冗余。某些视频压縮技 术还涉及量化。量化可以是标量量化或向量量化。在量化后,可对量化系数进行熵编 码并将其放置在经压縮视频位流内。然后,将所述经压縮位流发送到解码器,所述解
码器将解压缩所述位流并精确近似地恢复所述原始视频数据。
视频压縮技术可有益于各种媒体形式的消费者。举例来说,在广播工程中,可通 过视频压縮来使数字电视变得实际可行。电视(TV)台可在同一物理信道上广播高清 晰度电视(HDTV)及多个虚拟信道。数字视频广播可使用动态图像专家组(MPEG) 标准(例如,MPEG-2标准视频压縮格式)。然而,H.264/MPEG-4及VC-1作为新的 视频压縮标准正开始出现。
遗憾地,己知的在视频压縮中用于对信息进行编码的系统及方法可能会受到各种 缺点的困扰。因此,通过在视频压縮中对信息进行编码的改进型系统及方法可实现诸 多裨益
发明内容


图1是图解说明可縮放视频编码位流的一种配置的框图2是图解说明跨越网络从编码器发送至解码器的一基础层及多个增强层的一种 配置的框图3是图解说明用于对信息进行编码的方法的一种配置的流程图; 图4是图解说明用以对经编码视频序列进行解码的方法的一种配置的流程图; 图5图解说明被划分成多个宏块的图像帧的一种配置; 图6图解说明对有效及精细系数进行分类的一种配置; 图7图解说明代码字及代码长度表格的一种配置 图8图解说明用于代码簿0(—元代码)的编码及解码的伪代码; 图9图解说明用于代码簿1的编码及解码的伪代码; 图10图解说明用于代码簿2的编码及解码的伪代码;
图11图解说明用于对代码簿选择表格条目进行编码的可变长度编码(VLC)表 格的一种配置;
图12是矩形代码簿选择表格的一种配置; 图13是三角形代码簿选择表格的一种配置;
图14图解说明用于对经修剪的代码簿选择表格进行编码的伪代码;及
图15是图解说明通常用于处理数字图像及/或数字视频的主要硬件组件的框图。
具体实施例方式
本发明揭示一种用于对视频序列中的有效系数进行编码的方法。接收视频序列。 用所述视频序列构建对当前帧中原始视频信号的预测。通过从所述当前帧中的原始视 频信号中减去对所述原始视频信号的预测来形成残余信号。对所述残余信号应用变换。 量化多个变换系数。从多个代码簿选择一代码簿以对有效游程及块结束中的至少一者 进行编码。使用选定代码簿对有效游程及块结束中的至少一者进行编码。
本发明还揭示一种电子装置。所述电子装置包括处理器及与所述处理器电子连通 的存储器。指令存储于所述存储器中。接收视频序列。用所述视频序列构建对当前帧 中原始视频信号的预测。通过从所述当前帧中的原始视频信号中减去对所述原始视频 信号的预测来形成残余信号。对所述残余信号应用变换。量化多个变换系数。从多个 代码簿选择一代码簿以对有效游程及块结束中的至少一者进行编码。使用选定代码簿 对有效游程及块结束中的至少一者进行编码。
本发明阐述一种用于对经编码视频序列中的有效系数进行解码的方法。接收经编 码视频位流。从所述位流中检索代码簿表格信息。使用所述检索的代码簿表格信息对 有效符号进行解码。使用所述有效符号对有效系数进行解码。解量化多个变换系数。 对残余信号应用逆变换。构建视频序列。
6可使用选定代码簿对块结束进行编码。可在视频切片中对代码簿表格信息进行编 码。所述代码簿表格信息可包括代码簿选择表格。所述代码簿选择表格可包括对应于 每对编码循环数及LEBL (基础层中最后编码的系数)位置的每一条目。在一种配置
中,所述代码簿选择表格包括仅对应于编码循环数的每一条目。可将所述代码簿选择 表格编码为一维代码簿选择符阵列。使用可变长度代码对所述代码簿选择符进行编码。
所述代码簿表格信息可包括表格形状及表格尺寸。在一个方面中,所述表格形状 为矩形。在另一方面中,所述表格形状为三角形。
可根据统计学估计动态地确定所述代码簿选择表格。在一种配置中,可根据邻近 相关性动态地确定所述代码簿选择表格。所述代码簿可为另一代码簿的变换版本。
可修剪代码簿选择表格以提供经修剪的代码簿选择表格。可用视频切片对所述经 修剪的代码簿选择表格进行编码。
本发明还揭示一种电子装置。所述电子装置包括处理器及与所述处理器电子连通 的存储器。指令存储于所述存储器中。接收经编码视频位流。从所述位流中检索代码 簿表格信息。使用所述检索的代码簿表格信息对有效符号进行解码。使用所述有效符 号对有效系数进行解码。解量化多个变换系数。对残余信号应用逆变换。构建视频序 列。
在一种配置中,可从切片中解码所述代码簿表格信息。所述代码簿表格信息可包
括代码簿选择表格。所述代码簿表格信息可包括代码簿选择表格映射循环数及LEBL (基础层中最后编码的系数)位置。所述代码簿表格信息可包括代码簿选择表格映射 循环数。
所述代码簿表格信息可包括表格形状及表格尺寸。在一种配置中,所述表格形状 可为矩形。在另一种配置中,所述表格形状为三角形。
可根据统计学估计动态地确定所述代码簿选择表格。在一种配置中,可根据邻近 相关性动态地确定所述代码簿选择表格。
本发明还揭示一种经配置以对视频序列中的有效系数进行编码的电子装置。所述 电子装置包括处理装置及用于接收视频序列的装置。本发明揭示用于用所述视频序列 构建对当前帧中原始视频序列的预测的装置及用于通过从当前帧中的原始视频信号中 减去对原始视频信号的预测来形成残余帧的装置。本发明揭示用于对所述残余信号应 用变换的装置及用于量化多个变换系数的装置。本发明揭示用于从多个代码簿选择一 代码簿以对有效游程及块结束的至少一者进行编码的装置及用于使用选定代码簿对有 效游程及块结束的至少一者进行编码的装置。
现在参照图式阐述本发明系统及方法的各种配置,其中相同参考编号指示相同或 功能类似的元件。可以各种不同的配置布置及设计本文中一般性阐述及图解说明的本 发明系统及方法的特征。因此,下文的详细传输并非旨在限制所主张的本发明系统及 方法的范围,相反其仅代表本发明系统及方法的配置。
本文中所揭示配置的诸多特征可实施为计算机软件、电子硬件或两者的组合。为清楚地图解说明硬件与软件的此可互换性, 一般将在其功能性方面对各种组件进行阐 述。此功能性实施为硬件还是软件取决于特定应用及施加于整体系统上的设计约束。 所属领域的技术人员可针对每一特定应用采用不同方式来实施所述功能性,但不应将 所述实施决策视为导致背离本发明系统及方法的范围。
在所述功能性实施为计算机软件的情况下,所述软件可包括位于存储器装置内及 /或作为电子信号在系统总线或网络上传输的任一类型的计算机指令或计算机/机器可 执行代码。实施与本文中所述组件相关连的功能性的软件可包括单个指令或诸多指令, 且可分布在数个不同的代码段上,可分布在不同程序之间,且可分布在数个存储器装 置上。
如本文中所使用,"配置"、"所述配置"、"一个或多个配置"、"某些配置"、 "特定配置"、"一种配置"、"另一种配置"及类似术语意指"所揭示系统及方法 的一个或多个(但未必全部)配置",除非另外明确地规定。
术语"确定"(及其语法变型)的使用具有极其广泛的意义。术语"确定"包括各 种各样的动作且因此"确定"可包括计算、运算、处理、推导、研究、查询(例如,在 表格、数据库或另一数据结构中査询)、断定及类似动作。同样,"确定"还可包括接 收(例如,接收信息)、存取(例如,存取存储器中的数据)及类似动作。同样,"确定" 还可包括解决、选择、选定、建立及类似动作。
短语"基于"并不意味着"仅基于",除非另外明确予以规定。换句话说,短语 "基于"既阐述"仅基于"又阐述"至少基于"。
当前视频压縮系统中所执行的某些步骤已为人们所知晓。在某些视频压縮步骤 (预测、变换及量化)之后,下一步骤是对语法元素及经量化系数执行熵编码以形成 位流。在视频解码器中,执行逆过程。从所述位流中解码语法元素及量化系数。然后, 执行逆量化及逆变换步骤。最后,将重构残余添加至预测以重构视频信号。
目前,由来自ISO/IEC MPEG及ITU-T VCEG的视频编码专家组成的联合视频组 (JVT)正致力于对H.264/高级视频编码(AVC)的可縮放视频编码(SVC)扩展。 称为联合可縮放视频模型(JSVM)的共用软件正由参与人员使用。JSVM可支持各种 可缩放性特征。SVC位流可具有细粒度可縮放性、空间可縮放性、时间可縮放性或所 述三者的任一组合。
细粒度可縮放性(下文称为FGS)是用于视频编码的一种重要且非常期望的特征。 此特征允许几乎任意地对所述经压縮视频位流进行截断,而同时为最终用户提供经解 码视频质量的适度降格。在细粒度可缩放性中,可任意地截断增强层位流。随着所述 视频解码器接收并对所述层中更多的位进行解码,其将产生更好的视频质量。此外, JSVM中的FGS是以将视频质量改良均匀散布于整个视频帧上的方式进行设计的,此 与视频质量改良仅集中在帧的某一空间区域内相反,因为后一情形将使最终观看者在 视觉上反感。
FGS使用位平面编码来实现视频质量的适度改良。如果使用量化参数QP来量化基础或先前层视频帧,则然后可使用通常大约QP-6的量化参数来量化当前的增强层 视频,此可有效地将量化步骤大小减小一半。作为减小量化步骤大小的结果,更多的 变换系数将在增强层中变为非零。可将所述增强层中的非零系数分类为三个类型非 有效系数、有效系数及精细系数。非有效系数是指在基础或先前层中为零且在当前增 强层中保持为零的系数。有效系数是指在基础或先前层中为零但在当前增强层中变为 非零系数的系数。精细系数是指在基础或先前层中已经为非零(即,有效)的系数。 所述系数的值将在当前增强层中得到精细化。
因为精细系数具有与其它系数不同的统计数据,故在FGS层中对其单独进行编 码。类似于H.264/AVC, SVC中可存在两种熵编码模式基于上下文的自适应二进制 算术编码(CABAC)模式及基于上下文的自适应可变长度编码(CAVLC)模式。下 文提供关于可产生更高编码性能的改良型有效系数编码系统的细节。
图1是图解说明通常称为细粒度可縮放性(FGS)的可縮放视频编码位流结构的 一种配置100的框图。在FGS中,将视频序列压縮成具有至少两个层(基础层106及 增强层104)的单个视频流。如所图解说明,.FGS可进一步包括N-1个增强层102。
在一种配置中,基础层106为所述视频序列的非可縮放编码且通常具有视频序列 的最低质量。增强层104及N-l个增强层102具有高于基础层106的质量等级的不同 质量等级。对在基础层106之后编码的每一额外增强层进行解码可使视频序列的质量 提高。另外,FGS位流具有一个明显优点在编码期间或之后,可实时地截断属于增 强层104及N-1增强层102的位(从而减小位速率及因此提高经解码图像质量)。此 提供对传输位速率的灵活控制且允许调整增强层104及N-1个增强层102以匹配可用 传输位速率。
图2为网络框图200,其图解说明跨越网络210从编码器208发送至解码器212 的基础层202及N个增强层204。解码器212可解码及使用基础层202及一个或多个 增强层204的全部或部分。解码器212构建对原始视频序列206的最佳近似214。在 一种配置中,将最佳近似214显示在显示器216 (例如,计算机监视器、电视、个人 数字助理(PDA)、投影仪等)上。将视频序列206编码为一基础层202及一个或多 个增强层204。较低质量基础层202代表最低质量标准,而增强层204的每一者是对 基础层202图像质量的改良。
在一种配置中,使用如图1中所解释的FGS视频编码格式对视频序列206进行编 码。所述FGS编码格式对于其中可能事先不知晓可用传输带宽的视频流式及广播应用 尤其有用。在编码期间或之后,可任意截断增强层204以匹配可用传输位速率。随着 所述可用位速率的改变,可相应地实时截断增强层204以相对于当前带宽提供最佳质 量的经解码视频序列。举例来说,网络200可截断增强层204且然后以不同的位速率 将位流发送至不同的目的地。
图3是图解说明用于对信息进行编码的方法300的流程图。在一种配置中,待编 码的信息包括视频序列。可在视频编码器中实施方法300,且可由视频解码器来执行
9方法300的逆过程。编码器是用于将信号或数据变成代码的装置。然后,解码器可从 所述代码中产生原始信号或对所述原始信号的近似。所述编码器及解码器可统称为视 频编码解码器,其将源图像或视频序列编码成压縮形式并对所述压縮形式进行解码以
产生所述源序列的拷贝或近似。
方法300开始(302)于所述编码器接收(304)视频序列。在一种配置中,所述 视频序列是未经压縮视频信号。所述编码器通过利用邻近视频帧之间的相似性开始压 縮所述视频序列并构建(306)对当前/原始视频信号的预测。从一个或多个先前或未 来帧中形成所述预测并通过补偿所述帧之间的差别来改良所述预测。然后,从实际的 当前/原始帧中减去所述预测帧来形成(308)残余信号。所述编码器利用所述预测残 余的邻近样本之间的相似性来减少空间冗余。
方法300继续进行对所述残余信号应用(310)变换以减少剩余空间冗余。所述变 换将所述预测残余信号转换至另一域内,其中所述预测残余样本由变换系数来表示。 量化(312)所述系数以移除非有效值,从而留下少量提供所述残余样本的更紧縮的表示 的有效系数。在一种配置中,使用方法300进行编码的预测残余可在增强层中。如果 曾使用量化参数QP量化(312)视频帧的先前层或所述视频帧的基础层,则可使用通 常大约QP-6的量化参数来量化当前增强层,其中QP示在所述基础层中使用的量化参 数。此有效地将所述量化步骤减小一半。作为减小量化步骤大小的结果,更多数量的 变换系数将在当前帧中变为非零。
在一种配置中,可将所述增强层中的非零经量化系数分类为非有效、有效、及 精细系数
如将于本文中所论述,选择一 VLC (可变长度编码)代码簿以对有效游程及EOB (块结束)中的至少一者进行编码。因此,在可对有效游程及EOB进行编码之前,选 择(314)代码簿。在一种配置中,如下文中将论述,使用代码簿选择表格选择(314) 所述代码簿。在一种配置中,可将代码簿表格信息编码(316)成视频切片的一部分。 在另一种配置中,可将代码簿表格信息存储于所述编码器及解码器处作为内部状态。 所述代码簿表格信息可包括代码簿选择表格及表格的尺寸及形状。然后,使用选定代 码簿对有效游程及EOB进行编码(318)。
图4是图解说明用以对经编码视频序列进行解码的方法400的一种配置的流程 图。解码方法400可为图3的编码方法300的逆过程。解码方法400开始(402)于解 码器接收(404)所述经编码视频序列。所述经编码视频序列还可称为位流。解码器对 代码簿表格信息进行解码(406)。在一种配置中,所述代码簿表格信息可包括是所述 切片的一部分的代码簿选择表格。所述解码器使用选定代码簿对所述有效符号进行解 码(407)。
方法400继续且所述解码器使用最近解码的有效符号对所述有效系数进行解码 (408)。然后,所述解码器继续解量化410所述经解码的有效系数。方法400继续 对所述解量化的系数应用(412)逆变换。在一种配置中,所述逆变换可包括逆离散余弦变换。在所述解码器对所述系数应用(412)逆变换之后,所述解码器按照所述原始视 频序列在图3的编码方法300之前曾存在的状况构建(414)所述原始视频序列的近似。 图5图解说明被划分成多个宏块的一视频帧500的一种配置。宏块是解码过程中 基本的数据单元。如所图解说明,可将视频帧500分割成多个固定大小的宏块,所述 宏块各自包括视频帧500的一样本。在一种配置中,每一宏块均包括一由16xl6像素 构成的样本。在另一方面中,每一宏块均包括一亮度(luma)组分及两个色度(charoma) 组分。所述亮度组分有关特定样本的亮度,而所述色度组分有关所述样本的色彩特性。 在一种配置中,进一步将视频帧500分割成多个切片,切片A502、切片B504、及切 片C506。切片是宏块序列,所述宏块按照某一编码次序连续地进行处理。举例来说, 可在切片B 504及切片C 506之前对切片A 502及包含于切片A 502内的宏块进行编 码并将其发送至解码器。作为一额外特征,对不同切片502、 504及506进行编码并将 其发送至解码器的次序可以是任意的。举例来说,可在其它切片之前对切片B 504进 行编码并将其发送至解码器。类似地,可在其它两个切片之前对切片C 506进行编码 并将其发送至解码器。第N个增强层内的每一宏块均对应于N-1个增强层及基础层的 每一者内的一宏块。
图6图解说明如何对系数进行分类的实例。提供基础层系数块602及增强层系数 块604。基础层602及增强层604中的空白表示零系数。这些系数被称为非有效系数。 剩余的空间606、 608、 608a及608b各自表示一可具有非零值的系数。在一种配置中, 所述基础层系数块602是在使用FGS视频编码格式的先前增强层中。如先前所解释, 在图3的编码方法300期间,量化变换系数。在量化之后,将在基础层系数块602中 具有等于零的对应系数的增强层系数块604中的非零系数称为有效系数606。在基础 层中其对应系数为非零的系数称为精细系数608。由于有效系数606及精细系数608 具有不同的统计数据,故在增强层604中遵循FGS编码格式分开对其进行编码。
在一种配置中,有效系数606c、 606d是基础或先前层中其对应系数606a及606b (所述系数代表同一子频带)为零的系数。精细系数608是基础层或先前层中其对应 系数608a及608b为非零的系数。
在SVC FGS层中,将所述有效系数编码为游程值。所述编码器以Z字形扫描次 序遍历增强层系数块604直至其找到有效系数。然后,所述编码器对所述游程值进行 编码。在扫描过程期间,所遇到的精细系数对有效游程没有任何帮助。举例来说,图 6中的第一有效系数606c是以游程-1而非游程=3进行编码的,而不计入两个精细系 数608。在SVCJD5中的CAVLC模式中,使用启动-步级-结束码或S3码对所述有效 游程进行编码。参见托马斯威甘德、加里沙利文、朱利恩雷切尔、海克施瓦茨 和马赛厄斯威恩所著"联合草稿5:可縮放视频编码(JointDraft5: Scalable Video Coding) " ,JVT-R 201, 2006年1月,曼谷,泰国。然后,将此系数的符号编码成1-位 旗标,其中0指示正值而1指示负值。然后,编码器继续进行至下一块直至已覆盖切 片中的所有块。此结束第一有效编码循环。当下一个有效编码循环开始时,所述编码器回到第一块并扫描所述块中的下一个 有效系数。在图6中的实例中,将针对第二有效系数606(1发送游程=3。然后,发送位 0以指示此为正值。然后,所述编码器继续进行至下一块直至第二循环中的所有块均 被发送。
在第三循环中,针对图6中所示的块发送EOB (块结束)符号以指示所述先前经 编码的有效系数是所述块中的最后一个;在随后的编码循环中,将不针对所述块发送 进一步的信息。在CAVLC模式中,将EOB符号与所有其它游程值组合在一起以形 成符号集。将所述符号集中的EOB的索引指配为"IE0B"。游程值"R"的索引为"IR"。 可从"R"及"IE0B"推导出"IR",因为如果R〈lK)B,则lR-R,否则I「R+1。可 使用S3模式对所述符号集中每一符号的索引进行编码。对较小索引进行编码所占用的 位数目小于或等于对较大索引进行编码所占用的位数目。因为EOB符号的概率与编码 循环数具有某一相关性(EOB在稍后的循环中变得更为可能),故将规定EOB符号 在每一循环中偏移的阵列编码成所述切片的一部分以允许所述符号集中EOB的索引
"IE0B "从一个编码循环改变至另一编码循环。此阵列作为循环数的函数被限制为单 调地不增加。举例来说,阵列{4 100…)指示将EOB的索引在第一循环中编码为4, 在第二循环中编码为l,而在所有后续循环中编码为O (最可能的符号)。
在有效编码中使用的S3代码具有参数截止阈值m。如果符号^:=附,则使用一
-(附■+ :i) _^ .
及一后缀"00" 、 "01"或"10"来对其进行编码。举例来说,图7中所示的表格给 出对应于m = 0的S3代码字及代码长度。用于每一循环数(O, 1 ... 15)及基础层(LEBL) 中最后编码的系数的每一位置(O, 1 .... 15)的包含256个截止阈值m的上下文表格作为 切片的一部分发送。
所述S3码可能最适合于对其概率分布偏置于小符号而对较大符号变得较平坦的 符号进行编码。然而,有效游程的实际概率分布与所述假设经常不一致。因此,使用 其它VLC码可改善编码性能。
在本文的系统及方法中,从五种类型的VLC代码簿中选择一种类型的代码簿来 对所述有效游程及EOB进行编码。所述五个代码簿在本文中被称作代码簿O、代码簿 1、代码簿2、代码簿3及代码簿4。下文将对所述代码簿的每一者加以解释。在某些 配置中可使用少于五个代码簿。另外,可在其它配置中使用五个以上代码簿。本文中 使用五个代码簿仅为说明而非意欲具有限制性。
图8图解说明用于代码簿0的伪代码。代码簿0使用一元代码。所述一元代码用 (")个"1"及然后一个"0"来对符号s进行编码。所述代码簿具有代码长度{1, 2, 3,…)。 其适合于具有极偏置的概率分布的输入符号。图8中的伪代码显示使用一元代码的编 码802及解码804。
图9图解说明用于代码簿1的伪代码。代码簿1用一前缀W2个"1"及然后一2 位后缀对输入符号s进行编码以对剩余modCy,2)进行编码,其中mod()代表模块操作。
元代码对s进行编码。如果符号s > m,则使用一前缀
m+l个一 ("1")
12所述代码簿具有代码长度{2,2,3,3,4,4,…)。其适合于具有相比于一元代码更均匀的 分布的输入符号。图9中的伪代码显示使用代码簿1的编码902及解码904。
图10图解说明用于代码簿2的伪代码。代码簿2用一前缀(^3)*2个"1"及然后 一2位后缀对输入符号s进行编码以代表剩余mod G,3)。此代码簿具有代码长度{2, 2, 2, 4, 4, 4, 6, 6, 6."},其适于相比于代码簿1更均匀分布的输入符号。图10中的伪代 码显示使用所述代码簿的编码1002及解码1004。
代码簿3使用具有附=0、代码长度为U,3, 3,3,5,5,5...)的S3代码(图7)。应注 意,此代码簿是代码簿2的变换版本。其用位0对输入符号^0进行编码。对于所有 其它符号^,其使用具有输入符号(wl)的代码簿2。
代码簿4是代码簿1的变换版本(显示于图9中)。其用位0对输入符号^0进 行编码。对于所有其它符号s,其使用输入符号被设定为(付l)的代码簿l。
代码簿0到4全部是结构化代码簿。对于特定实施方案,可能不必像霍夫曼代 码通常所需的那样在编码器和解码器处存储查询表格。
再次值得注意的是,尽管本文中显示并论述了总共五个代码簿,但代码簿3及4 分别仅是代码簿2及1的变换版本。此是可用来大大简化解码器实施方案的重要特征。
最佳代码簿"c"取决于由有效游程及EOB符号形成的符号集的概率分布,其不 仅在各序列之间而且还在一既定序列中的各帧之间变动。
在一种配置中,将代码簿选择表格显式编码为切片的一部分。所述表格中的每一 条目是用于在特定条件下对下一个有效游程或EOB进行解码的代码簿的索引。所述代 码簿选择表格可每一编码循环数"CCN"包含一条目而不取决于其它参数。在一不同 实施方案中,所述代码簿选择表格可每对编码循环数"CCN"及LEBL位置包含一条 目。对于4x4块的编码,"CCN"及LEBL位置包括
的范围内。在任一情形中, 所述编码器决定所述表格中的每一条目值以优化编码性能。在另一方面中,不将对用 于对下一个有效游程或EOB进行编码的最佳代码簿的选择显式编码为切片的一部分。 基于运行时间期间所估计的概率分布及邻近相关性来选择所述最佳代码簿。
当用于FGS层的位预算有限且所述代码簿选择表格被显式编码在切片中时,有效 地对所述代码簿选择表格自身进行编码以最小化位开销是至关重要的。对代码簿选择 表格的低效率编码还会延迟FGS层的速率失真(峰值信号-噪声比:位速率)曲线的上 升斜率。可引入两种方案来实现对代码簿选择表格的有效编码。
尽管有总共五个代码簿可供选择,但据观察所述代码簿的"受欢迎程度"是不同 的。可使用图11中的VLC表格1102来对所述代码簿条目进行编码以减少对所述表格 条目进行编码所占用的平均位。
在一种配置中,对最佳代码簿的选择仅取决于编码循环数"CCN",其中每一编 码循环数对应于Z字形扫描次序中的扫描位置的索引。所述表格条目被编码如下。首 先,对变量"num_sig—vie—selectors"进行编码以指示所述位流中所编码的代码簿选择 符的数量,继而对"num_sig—vlc_selectors"代码簿选择符进行编码。使用VLC表格1102中所界定的可变长度代码来对每一代码簿选择符进行编码。每一编码循环数均具 有一个代码簿选择符。解码过程是所述编码过程的逆过程。未编码在切片中的代码簿
选择符具有默认值o。举例来说,对于编码4x4块,需要16个代码簿选择符。如果 "num—sig—vlc_selectors"是5,其意指对前五个代码簿选择符进行显式编码。剩余11 个代码簿选择符为零。
在另一方面中,所述代码簿选择表格可每对编码循环数"CCN"及LEBL位置包 含一条目。对于大的循环数及LEBL位置,代码簿0 (—元代码)被选中的概率一般 变得非常高。因此,针对这些上下文发送代码簿可能变得没有必要。为减小表格尺寸, 可添加表格形状及表格尺寸作为新语法元素并将其在切片中发送。下文中界定两种表 格形状矩形(参见图12)及三角形(参见图13)。针对矩形表格发送两个尺寸参数 宽度及高度;而针对三角形表格发送一个额外参数,称为深度。在表格形状及尺寸被 决定的情形下,使用图11中的VLC代码仅发送属于修剪表格1202、 1302的表格条目。 所有其它表格条目1204、 1304 (不属于修剪表格的表格条目)均不发送并假设为0。
为获得表格形状及尺寸,以速率失真优化方式来修剪16x16代码簿选择表格。所 述修剪首先沿列方向发生,继而沿排方向发生,继而沿对角线方向发生(然而,注意 所述编码器可选择任何修剪次序)。以列作为实例。将修剪一个列的表格条目的成本 C界定为在有效编码期间由于用代码簿0替代最佳代码簿而将发生的位补偿(例如, 如果此列内的所有条目已选择代码簿O,则C为0)。然后,在图11中,将修剪此列 的表格条目的位节省S界定为由于不每一 VLC表格均发送这些表格条目而产生的位节 省(例如,如果此列内的所有条目均选择代码簿O,则S-16个位)。如果S〉C ,则 修剪此列的表格条目。否则,保留此列,沿列方向的修剪终止,而沿排方向的修剪开 始。此修剪过程经证实在适应目标位速率方面极为有效。在极低的位速率下,当几乎 不存在有效系数时,发送表格条目所需的位并不证明因使用最佳代码簿而节省极少的 位是合算的。当情况如此时,所述修剪过程可能甚至修剪掉整个表格。在较高位速率 下,由于相反的原因,所述修剪表格往往具有较大的尺寸。此表格修剪过程的复杂性 极低,因为可在形成所述代码簿选择表格的同时预先存储修剪每一表格条目的位补偿。 图14中的伪代码1402总结了如何发送经修剪的表格。
图15图解说明经配置以处理数字图像及/或数字视频的装置1600。装置1600可 代表或实施于数字电视、数字直接广播系统、无线通信装置、PDA、膝上型计算机、 台式计算机、数码相机、数字记录装置、网络启用数字电视、蜂窝式或卫星无线电电 话、或任一具有视频电话(VT)能力的电信装置中。
装置1600可处理、编码、解码、传输及/或接收图像及/或视频数据。所述视频数 据可由摄像机(例如,视频捕获单元(或图像传感器))1612捕获,从视频文件存储器中 检索,或以其它方式获得。装置1600中的视频编码单元1610可使用视频编码标准, 例如MPEG-4、 ITU-T H.263、 ITU-T H.264或任一其它视频编码标准。视频编码单元 1610可支持帧间编码技术(例如,运动估计及运动补偿)及帧内编码技术(例如,空间估计及帧内预测编码技术)。
装置1600可包括图像/视频捕获装置1612 (例如,相机或摄像机)以捕获图像或 视频序列并将所捕获的图像或序列存储在存储器1614中。图像/视频处理单元1602可 处理图像及/或视频序列。存储器1604可在此种处理之前及之后存储所述图像及/或视 频序列。
收发器1616可接收及/或将经编码视频序列传输至另一装置。收发器1616可使用 无线通信标准,例如码分多址(CDMA)。 CDMA标准的实例包括CDMA lxEV-DO、宽 带码分多址(WCDMA)等。
装置1600的一个或多个元件可经由通信总线1618以通信方式耦接。除或替代图 16中所示的元件,装置1600中还可包括其它元件。图16中所图解说明的架构仅是一 实例。可通过各种其它架构来实施本文所述的技术。
存储器1614可具有相对大的存储器空间。存储器1614可包括动态随机存取存储 器(DRAM)或快闪存储器。存储器1614可包括"NOR"或"NAND"门存储器技术或 任一其它数据存储技术。在其它实例中,存储器1614可包括非挥发性存储器或任一其 它类型的数据存储单元。
图像/视频处理单元1602可包括用于移动无线电电话的芯片组,其可包括硬件、 软件、固件及/或一个或多个微处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、 现场可编程门阵列(FPGA)或其各种组合。处理单元1602可包括耦接至前端图像/视频 处理器单元1608的本地存储器1604及图像/视频编码单元1610。编码单元1610可包 括用于对数字视频数据进行编码(或压縮)及解码(或解压縮)的编码器/解码器 (CODEC)。
本地存储器1604可包括相对于存储器1614更小且更快的存储器空间。举例来说, 本地存储器1604可包括同步动态随机存取存储器(SDRAM)。本地存储器1604可包 括与处理单元1602的其它组件集成在一起的"芯片上"存储器以在处理器密集的编码过 程期间提供对数据的存快速取。然而,可将存储器1614及1604组合成一个存储器, 或可以诸多其它配置来实施。存储器控制器1606可控制对本地存储器1604的存取及 回写。
前端图像/视频处理单元1608可对视频序列的帧执行一种或多种图像处理技术以 改善图像质量,且由此改善视频序列的质量。举例来说,前端图像/视频处理单元1608 可执行诸如以下技术去马赛克、透镜滑离修正、按比例縮放、色彩修正、色彩转换 及空间过滤。前端图像/视频处理单元1608还可执行其它技术。 一般来说,单元1608 所执行的技术被称为"前端"图像处理技术,因为所述技术是在图像/视频编码单元1610 实施的编码之前。
图像/视频捕获单元1612可包括图像传感器,所述图像传感器包含布置在所述传 感器的表面上的色彩过滤片阵列(CFA)。单元1608所执行的前端图像处理可改善捕获 单元1612所捕获的视频序列的质量。举例来说,前端处理单元1608及/或编码单元1610可包括DSP,所述DSP经编程以处理捕获单元1612所捕获的图像。存储器1604 (或 存储器1614)的同一区域既可用于前端图像处理目的也可用于其它存储目的。
图像/视频编码单元1610可执行图像及/或视频编码,所述图像及/或视频编码可包 括一种或多种视频压縮技术,例如,帧间压縮及/或帧内压縮。举例来说,编码单元1610 可实施运动估计及运动补偿技术以利用时间或帧间数据相关性来提供帧间压縮。作为 另一选择或另外,编码单元1610可执行空间估计及帧内预测技术以利用空间或帧内数 据相关性来提供帧内压縮。运动补偿(或帧内预测)的输出被称为"残余"且可包括数 据块,所述数据块指示待编码的当前视频块与运动估计或空间估计所识别的预测块之 间的差异。
在编码单元1610执行运动补偿(或帧内预测)以形成所述残余之后,可执行一系列 额外步骤来进一步对所述残余进行编码并进一步压縮所述数据。所述额外步骤可取决 于正使用的编码标准,但一般被称为"残余编码"。编码单元1610可执行所述视频压 縮技术中的一种或多种以减少经由收发器1616将视频序列传送至另一装置所需的数 据量。
可使用各种不同技术及技法的任一种来表示信息及信号。举例来说,上文通篇可 能提及的数据、指令、命令、信息、信号、位、符号、及码片均可由电压、电流、电 磁波、磁场或磁粒子、光场或光粒子或其任一组合表示。
结合本文揭示的配置所阐述的各种说明性逻辑块、模块、电路及算法步骤可实施 为电子硬件、计算机软件或两者的组合。为清楚地图解说明硬件及软件的此种可互换 性,上文已就其功能性对各种阐释性组件、块、模块、电路及步骤进行了一般性阐述。 此功能性是实施为硬件还是软件取决于特定应用及施加于总体系统上的设计约束。所 属领域的技术人员可针对每一特定应用采用不同的方式来实施所述功能性,但不应将 所述实施决策视为导致背离本发明系统及方法的范围。
结合本文揭示的配置所阐述的各种说明性逻辑块、模块、及电路可通过下列装置 来实施或执行通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现 场可编程门阵列信号(FPGA)或其它可编程逻辑装置、离散门或晶体管逻辑、离散硬 件组件、或其经设计以执行本文中所述功能的任一组合。通用处理器可为微处理器, 但另一选择为,处理器可为任一常规处理器、控制器、微控制器或状态机。处理器还 可实施为计算装置的组合,例如,DSP与微处理器的组合、多个微处理器、 一个或 多个微处理器与一 DSP核心的结合,或任一其它此类配置。
结合本文所揭示配置所阐述的方法或算法的步骤可直接实施于硬件中、实施于由
处理器执行的软件模块中、或实施于二者的组合中。软件模块可驻存于随机存取存储 器(RAM)、快闪存储器、只读存储器(ROM)、可擦除可编程式只读存储器(EPROM)、 电可擦除可编程式只读存储器(EEPROM)、寄存器、硬磁盘、可拆卸式磁盘、光盘 只读存储器(CD-ROM)或此项技术中己知的任一其它形式的存储媒体中。存储媒体 耦接至处理器,以便所述处理器可从所述存储媒体中读取信息并向所述存储媒体中写
16入信息。另一选择为,存储媒体可以是处理器的组成部分。处理器和存储媒体可驻存
于ASIC中,而ASIC可驻存于用户终端中。另一选择为,处理器及存储媒体可作为离 散组件驻存于用户终端中。
本文所揭示的方法包括用于实现所述方法的一个或多个步骤或动作。所述方法步 骤及/动作可彼此互换,此并不违背本发明系统及方法的范围。换句话说,除非配置的 正确操作需要特定的步骤或动作次序,否则可在不背离本发明系统及方法范围的前提 下修改特定步骤及/或动作的次序及/或用途。
尽管已图解说明并阐述了本发明系统及方法的特定配置及应用,但应理解本发明 的系统及方法并非局限于本文中所揭示的具体配置及组件。可对本文所揭示方法及系 统的布置、操作及细节做出对于所属领域的技术人员将是显而易见的各种修改、改变 及变化,此并不违背本发明系统及方法的范围及精神。
权利要求
1、一种用于对视频序列中的有效系数进行编码的方法,其包括接收视频序列;用所述视频序列构建对当前帧中原始视频信号的预测;通过从所述当前帧中的所述原始视频信号中减去对所述原始视频信号的所述预测来形成残余信号;对所述残余信号应用变换;量化多个变换系数;从多个代码簿中选择一代码簿以对有效游程和块结束中的至少一者进行编码;及使用所述选定代码簿对有效游程与块结束中的所述至少一者进行编码。
2、 如权利要求1所述的方法,其进一步包括使用所述选定代码簿对块结束进行 编码。
3、 如权利要求1所述的方法,其进一步包括用视频切片对代码簿表格信息进行 编码。
4、 如权利要求3所述的方法,其中所述代码簿表格信息包括代码簿选择表格。
5、 如权利要求3所述的方法,其中所述代码簿表格信息包括代码簿选择表格, 其中每一条目均对应于每对编码循环数及LEBL (基础层中最后编码的系数)位置。
6、 如权利要求3所述的方法,其中所述代码簿表格信息包括代码簿选择表格, 其中每一条目仅对应于所述编码循环数。
7、 如权利要求6所述的方法,其进一步包括将所述代码簿选择表格编码为一维 代码簿选择阵列。
8、 如权利要求7所述的方法,其进一步包括对指定经显式编码的代码簿选择表 格条目数的变量进行编码,其中所述变量后跟代码簿选择符,其中每一代码簿选择符 均使用可变长度代码来编码。
9、 如权利要求3所述的方法,其中所述代码簿表格信息包括表格形状及表格尺寸。
10、 如权利要求9所述的方法,其中所述表格形状为矩形。
11、 如权利要求9所述的方法,其中所述表格形状为三角形。
12、 如权利要求1所述的方法,其中根据统计学估计动态地确定代码簿选择表格。
13、 如权利要求1所述的方法,其中根据邻近相关性动态地确定代码簿选择表格。
14、 如权利要求l所述的方法,其中在所述多个代码簿中, 一个代码簿是另一代 码簿的变换版本。
15、 如权利要求l所述的方法,其进一步包括修剪代码簿选择表格以提供经修剪的代码簿选择表格;及用视频切片对所述经修剪的代码簿选择表格进行编码。
16、 一种电子装置,其包括 处理器;存储器,其与所述处理器电子连通; 存储于所述存储器中的指令,所述指令可执行以 接收视频序列;用所述视频序列构建对当前帧中原始视频信号的预测;通过从所述当前帧中的所述原始视频信号中减去对所述原始视频信号的所述 预测来形成残余帧;对所述残余信号应用变换; 量化多个变换系数;从多个代码簿中选择一代码簿以对有效游程及块结束中的至少一者进行编码;且使用所述选定代码簿对有效游程与块结束中的所述至少一者进行编码。
17、 如权利要求16所述的电子装置,其中所述指令可进一步执行以用视频切片 对代码簿表格信息进行编码。
18、 如权利要求17所述的电子装置,其中所述代码簿表格信息包括代码簿选择 表格。
19、 如权利要求17所述的电子装置,其中所述代码簿表格信息包括表格形状及 尺寸。
20、 如权利要求17所述的电子装置,其中所述指令可进一步执行以 修剪代码簿选择表格以提供经修剪的代码簿选择表格;及 用视频切片对所述经修剪的代码簿选择表格进行编码。
21、 一种用于对经编码的视频序列中的有效系数进行解码的方法,其包括 接收经编码的视频位流; 从所述位流中检索代码簿表格信息; 使用所述检索的代码簿表格信息对有效符号进行解码; 使用所述有效符号对有效系数进行解码;解量化多个变换系数; 对残余信号应用逆变换;及 构建视频序列。
22、 如权利要求21所述的方法,其进一步包括从切片中解码代码簿表格信息。
23、 如权利要求22所述的方法,其中所述代码簿表格信息包括代码簿选择表格。
24、 如权利要求22所述的方法,其中所述代码簿表格信息包括代码簿选择表格 映射循环数及LEBL (基础层中最后编码的系数)位置。
25、 如权利要求22所述的方法,其中所述代码簿表格信息包括代码簿选择表格 映射循环数。
26、 如权利要求22所述的方法,其中所述代码簿表格信息包括表格形状及表格 尺寸。
27、 如权利要求26所述的方法,其中所述表格形状为矩形。
28、 如权利要求26所述的方法,其中所述表格形状为三角形。
29、 如权利要求21所述的方法,其中根据统计学估计动态地确定代码簿选择表格。
30、 如权利要求21所述的方法,其中根据邻近相关性动态地确定代码簿选择表格。
31、 一种电子装置,其包括 处理器;存储器,其与所述处理器电子连通;存储于所述存储器中的指令,所述指令可执行以接收经编码的视频位流;从所述位流中检索代码簿表格信息;使用所述检索的代码簿表格信息对有效符号进行解码;使用所述有效符号对有效系数进行解码;解量化多个变换系数;对残余信号应用逆变换;及构建视频序列。
32、 一种经配置以对视频序列中的有效系数进行编码的电子装置,所述电子装置 包括用于处理的装置; 用于接收视频序列的装置;用于用所述视频序列构建对当前帧中原始视频序列的预测的装置; 用于通过从所述当前帧中的所述原始视频信号中减去对所述原始视频信号的所 述预测来形成残余帧的装置;用于对所述残余信号应用变换的装置; 用于量化多个变换系数的装置;用于从多个代码簿中选择一代码簿以对有效游程与块结束中的至少一者进行编 码的装置;用于使用所述选定代码簿对有效游程与块结束的所述至少一者进行编码的装置。
全文摘要
本发明阐述一种用于对经编码视频序列中的有效系数进行解码的方法。接收经编码视频位流。从所述位流中检索代码簿表格信息。使用所述检索的代码簿表格信息对有效符号进行解码。使用所述有效符号对有效系数进行解码。解量化多个变换系数。对残余信号应用逆变换。构建视频序列。本发明还阐述一种用于使用多个表格对视频序列中的有效系数进行编码的方法。
文档编号H04N7/30GK101427584SQ200780010862
公开日2009年5月6日 申请日期2007年3月26日 优先权日2006年3月27日
发明者琰 叶, 鲍易亮 申请人:高通股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1