一种有效的运动矢量可伸缩编码方法

文档序号:7644709阅读:111来源:国知局
专利名称:一种有效的运动矢量可伸缩编码方法
技术领域
本发明属于视频编解码领域。具体涉及到可伸縮视频编解码体系结构中 的运动矢量可伸縮性编码方法。
背景技术
相对于传统分块DCT技术以及运动补偿DPCM闭环架构的数字视频编 解码体系(R26x和MPEG系列),基于小波变换的视频编码体系结构因具 有自适应的空域、时域以及码率(质量)可伸縮性,而能满足视频传输网络 的异构性(Heterogeneous),网络带宽的波动性以及用户视频接收终端的多 样性,从而满足现代信息社会的发展和用户的需求。由于网络或者终端的限 制视频可能应用在较低码率或较低空间分辨率情况下,这就需要对视频的码 流进行抽取(舍弃)。传统上的处理是通过舍弃象素运动估计残差的部分数 据,而保留完整的运动矢量编码信息来满足带宽的限制。这样导致两方面的 问题,首先,为使接收端能有效重建,可伸縮视频码流传输时有一个码率固 定下界,即完全传输运动矢量信息所需要的带宽;其次,低码率和低空间分 辨率的情况下,象素运动估计残差部分的数据已经是有损的,重构视频不需 要完整、精确的运动矢量信息,传输完全的运动矢量存在信息冗余。

发明内容
根据上述背景技术中存在的缺陷或不足,本发明的目的在于,提供一种 有效的运动矢量可伸縮编码方法,该方法对运动估计获得的运动矢量进行精 细粒度的可伸縮编码,然后在运动矢量数据和象素运动估计残差部分的数据 之间进行码率分配,从而提高视频重建的质量,同时实现了视频码流的更精 细粒度可伸縮,降低了码流传输的下界,拓展了视频传输的应用环境.为了实现上述任务。本发明采用如下的解决方案
一种运动矢量的精细粒度可伸縮编码方法,其特征在于,该方法首先采 用运动矢量量化方法形成运动矢量的基本层和增强层,然后以分数位平面编 码的方法对运动矢量的量化残差进行分数位平面编码,形成运动矢量的子平 面可行截断点,再通过运动矢量编码码率优化的方法,形成运动矢量的优化 截断点;最后通过联合码率分配的方法,对运动矢量数据和运动估计残差数 据进行联合码率分配,以得到符合用户码率、时空分辨率需求的码流。
本发明是一种运动矢量的精细粒度可伸縮编码方案,然后通过联合码率 控制算法提高了视频在低码率、低空间分辨率情况下的视频质量,增强了可 伸縮编码适应不同终端用户需求的能力。


图1是本发明的MCTF示意图2是本发明的运动矢量宏块分割图3是本发明的运动矢量宏块分割量化示意图4是本发明的整体实现框架图5是本发明的嵌入式码流示意图。
下面结合附图和发明人实施例对本发明进一步详细说明,但本发明不限 于这个实施例。
具体实施例方式
为改善视频在波动的网络带宽以及多样的用户视频接收终端,特别是低 码率情况下的应用,本发明给出了一种运动矢量的精细粒度可伸縮编码方 法,具体包括下列步骤-
1) 通过运动矢量量化方法形成运动矢量的基本层和增强层。
2) 通过分数位平面编码的方法,对运动矢量的量化残差进行分数位平 面编码,形成运动矢量的子平面可行截断点。
3) 通过运动矢量编码码率优化的方法,形成运动矢量的优化截断点;
4) 基于上下文的自适应二进制算术编码(CABAC)是运动矢量编码所
用到的熵编码器。
5) 通过联合码率分配的方法,对运动矢量数据和运动估计残差数据进 行联合码率分配,以得到符合用户码率、时空分辨率需求的码流。
所述的运动矢量量化方法是,对运动矢量进行量化,具体如下。运动估 计之后一般得到的是1/8精度的运动矢量。将运动矢量的估计值划分为3部 分附=附1+附2+附3其中运动矢量量化值m,是运动矢量的主要部分——半象 素运动估计的结果,量化残差^和^分别是1/4和1/8精度运动估计是在前 一估计精度基础上的精细值。如附=-1.625,那么这里有 附产—L5,附产0,附产—0.125。 一般我们不需要编码附2和附3的符号,因为已经编
码了^的符号。在上例中,已知m严-1.5,就决定了运动矢量是负的,当然附2 和附3也就是负值。例外的情况是当me卜0.375,0.375]时m严0无法通过^来确定 附2和附3的符号,这就需要一个附加比特位来表示附2和附3的符号。这样最终 的运动矢量将包括四个部分半象素精度运动矢量值,1/4精度运动估计精 细值,1/8精度运动估计精细值,附加符号位。当然运动矢量的主要部分也 可以选用整象素运动估计的结果,这样最终的运动矢量就表示为5部分,具 体选择可以根据实—际应用而调整。
所述的分数位平面编码方法是对运动矢量的量化残差进行分数位平面
编码,形成运动矢量的子平面可行截断点。对于分级块大小运动估计的结果,
每个iVxTV运动估计宏块可分裂为四个^x!的子块,而这四个子块每个又可
2 2
以根据情况分裂为四个更小的运动估计±央。因此不同最终的运动估计块的尺 寸大小可能是不同的。根据运动矢量残差所对应运动估计块的尺寸将运动矢 量残差的位平面划分为不同的子平面,每个子平面采用CABAC单独编码, 形成数个可行截断点。
所述运动矢量编码码率优化方法是,在组帧(GOP)范围内根据各个截 断点对视频重建质量的不同影响进行优化,得到运动矢量码流的优化截断 点,为其后"联合码率分配"做准备。
所述的基于上下文的自适应二进制算术编码(CABAC)是所用的熵编 码器。具体算法描述请查阅H.264的相关文档。这里只是其具体情况的一次 应用。
所述的联合码率分配的方法是,对运动矢量数据和象素运动估计残差数 据进行联合码率分配,以得到符合用户码率、时空分辨率需求的码流。在高 码率和全分辨率的情况下,运动矢量的所有部分都将得到传输。
在解码端,接收到的是无损的运动矢量。但是在低码率情况下,接收到 的是有损的运动矢量数据。既然低码率下接收的是有损的象素运动估计残差 数据,即使使用的是准确的运动矢量重建帧的重大失真也是不可避免的。然 而可以将舍弃运动矢量码流的后面几个部分,节省的带宽可以用于象素运动 估计残差编码数据。在运动矢量码流和象素运动估计残差数据码流之间进行 折中,通过运动估计残差数据增加补偿运动矢量不精确带来的失真。在较低 空间分辨率的情况下,由于运动矢量将按比例縮小,因此运动矢量的l/8精 度或1/8和1/4精度部分可以舍弃,同样节省的带宽可以用于传输象素运动 估计残差数据。
以下是发明人给出的一个具体实施例,以解决有可变块运动估计得到运 动矢量的可伸縮编码问题。
参见附图,图1是MCTF (运动补偿与时域滤波)示意图,显示了一 组帧(GOP)视频序列运动估计与时域滤波的框架,其中标注mv的部分代 表运动估计的结果运动矢量场,一般而言运动矢量场的数目为组帧中视频帧 的数目减l。
图2是运动估计的宏块分割示意图,运动估计的基本单位是宏块,在本
示例中,宏块尺寸一般为64X64 (视频边界会出现64X32, 32X64等几种 模式), 一场运动矢量包含若干个宏块。而每个宏块可进一步的分裂为更小 的子块,最小的子块大小为4X4。每个不再分裂的运动估计块都对应一个 运动矢量值。
图3是一个具体运动估计宏块中运动矢量的量化示意图。经过量化后将 生成一个运动矢量量化值组成的矢量场如图b,以及若干个为平面组成的运
动矢量量化残差平面。量化步骤如下
stepl:将^精度的运动矢量附转化为整数值A^。 M。=附x 7V"
然后设定"=1;
Step2:
。其中L.」代表下取整'
Step3:然后运动矢量在各个象素精度上的精细值(Ro, R,, R2……分 别对应八分之一精度,四分之一,半象素……)可以得到。 ^=^"-^"0,1}
最终得到的数据为对应量化残差的(Ro, Ri,……RK-d和运动矢量量化 值^^如图3b和图3c所示。
图4是算法的整体实现框架。运动矢量经过量化后,运动矢量的量化值 部分^yo经过进一步的预测编码后,预测残差连同运动估计宏块分割信 息、宏块类型信息进入CABAC编码生成可伸縮运动矢量码流的基本层部 分。而运动矢量的量化残差(Ro, Rp……RkJ形成《个位平面,然后根据 运动矢量所属块尺寸划分子平面,进行位平面编码,形成可伸縮运动矢量码 流的增强层部分。
分数位平面编码的实现,如图3c中的每个比特都是与一个一定大小的 运动估计块相关联的,位平面中某位置A处的比特可能影响64X64个象素
而另外B处的比特可能只与4X4个象素相关,这样当码率分配时两个不同 比特的损失对视频重建质量的影响是不同的。为了其后码率分配的方便,根 据需要编码符号所对应的运动估计块尺寸划分编码通道,对于宏块尺寸为 64X64的情况划分如下4个编码通道(也就是将整个位平面划分为4个子 平面)
编码通道l: 32x32<*"4x64 编码通道2: 16xl6〈Wze^32x32 编码通道3:8x8 16x16 编码通道4: 4x化&"8x8
对这四个编码通道分别使用CABAC编码就生成了运动矢量码流的四
个可行截断点。
图5是嵌入式码流示意图,对于图3所示的宏块,将得到与量化值对应 的一个基本层和与量化残差位平面相对应的数个增强层,其中每个增强层又
根据子平面的个数生成数个码流截断点(在这里演示了位平面只有两个编码 通道的情况)。对于运动残差位平面个数为X,每个位平面又4个编码通道 的情况,总共得到4《个可行截断点。组帧中/场运动矢量场(J^)中的第 A个位平面中/个编码通道的编码长度和舍弃该长度编码信息引起的失真表 示为《和D"(" = & +
其中",运动矢量场M,.的截断点。失真一般采用均方误差(MSE)或视 觉加权来衡量。在选定所有运动矢量场的截断点后。
总的比特率为 <formula>formula see original document page 9</formula>
总的失真为<formula>formula see original document page 9</formula>
率失真优化的目标是在丄^4^条件下,寻找合适的截断点集(",],
使得总失真率D最小,这一问题可以由拉格朗日乘数法求解,等价于使
D+;L丄-Z(D"+;ip)最小,其中义要经过选择直到丄=丄 ^。如果可以找
到一个义;吏得上式最小,并使得丄=丄 ^,这时候所得的截断点集合是最优 的,不可能再找到其它任何截断点集合在不增加比特率的情况下获得更小的 失真。通常这个全局最优的截断点集合是很难得到,若能找到最小的义, 使得该式最小且丄《丄自,此时的截断点集合就是要求的最优解。对于每个 运动矢量场,指定一个A求其最优截断点集合{",}算法如下
<formula>formula see original document page 10</formula>
上述算法中,^是运动矢量场中的编码通道总数,大小为4M—3(M是 运动矢量场最高位平面),因为对于每个编码通道过程,产生一个相应的截 断点。在优化过程中,算法要对不同;i迭代执行多次。为了提高效率,可 以先对运动矢量场的截断点作预处理,根据率失真函数的下凸性,可以把 《0S/=AD//A")不是单调递减的截断点去掉,得到新的候选点集《。
那么给定A后只需要在y中找到满足s/〉;i的最小值j',就是该运动矢量
场的截断点。显然义的大小,影响着解压图像质量的好坏,小的义对应着 小的失真和大的码流。义的选择还可以根据需要人为选定。
运动矢量场M编码完成后需要计算候选截断点集合《和每个截断点对
应的《。在码流组织时,再根据不同的;t反复迭代从各运动矢量场截断点
集合中选择合适的截断点使形成的总比特流满足要求。
联合码率分配方法是,对运动矢量数据和运动估计残差数据进行联合码 率分配,以得到符合用户码率、时空分辨率需求的码流。在高码率和全分辨
率的情况下,运动矢量的所有部分都将得到传输。
在解码端,接受到的是无损的运动矢量。但是在低码率情况下,接受到 的是有损的运动矢量数据。既然低码率下接收的是有损的帧数据,即使使用 的是准确的运动矢量重建帧的重大失真也是不可避免的。然而可以将舍弃运 动矢量码流的后面几个部分,节省的带宽可以用于帧编码数据。在运动矢量 码流和帧数据码流之间进行折中,通过运动估计残差数据增加补偿运动矢量 不精确带来的失真。在较低空间分辨率的情况下,由于运动矢量将按比例縮
小,因此运动矢量的1/8精度或1/8和1/4精度部分可以舍弃,同样节省的
带宽可以用于传输帧数据。
权利要求
1.一种有效的运动矢量可伸缩编码方法,其特征在于,该方法首先采用运动矢量量化方法形成运动矢量的基本层和增强层,然后以分数位平面编码的方法对运动矢量的量化残差进行分数位平面编码,形成运动矢量的子平面可行截断点,再通过运动矢量编码码率优化的方法,形成运动矢量的优化截断点;最后通过联合码率分配的方法,对运动矢量数据和运动估计残差数据进行联合码率分配,以得到符合用户码率、时空分辨率需求的码流。
2. 如权利要求l所述的方法,其特征在于,所述的运动矢量量化方法用于 对运动矢量进行量化,具体方法如下将运动估计之后得到的1/8精度的运动矢量的估计值w划分为三部分即运 动矢量量化《直附,、量化残差附2禾口附3,且附^+W2+m3, 其中运动矢量量化值附,是运动矢量的主要部分,即一半象素运动估计的结果,量化残差^2和附3分别是1/4和l/8精度运动估计,且是在前一估计精度基础上的精细值。
3. 如权利要求l所述的方法,其特征在于,所述的分数位平面编码的方法是对运动矢量的量化残差进行分数位平面编码,形成运动矢量的子平面可行截断点,对于分级块大小运动估计的结果,将每个WxiV运动估计宏块分裂为四个^x^的子块,而这四个子块每个又根据情况分裂为四个更小的运动估计块; 2 2因此不同最终的运动估计块的尺寸大小可能不相同;根据运动矢量残差所对应运动估计块的尺寸将运动矢量残差的位平面划分 为不同的子平面,每个子平面采用基于上下文的自适应二进制算术编码单独编 码,形成数个可行截断点。
4. 如权利要求l所述的方法,其特征在于,所述的运动矢量编码码率优化 的方法是在组帧范围内根据各个截断点对视频重建质量的不同影响进行优化, 得到运动矢量码流的优化截断点,为联合码率分配方法做准备。 -.如权利要求l所述的方法,其特征在于,所述的联合码率分配方法是-对运动矢量数据和运动估计残差数据进行联合码率分配,以得到符合用户 码率、时空分辨率需求的码流,在高码率和全分辨率的情况下,运动矢量的所 有部分都将得到传输。
全文摘要
本发明公开了一种运动矢量的精细粒度可伸缩编码方法,该方法首先采用运动矢量量化方法形成运动矢量的基本层和增强层,然后以分数位平面编码的方法对运动矢量的量化残差进行分数位平面编码,形成运动矢量的子平面可行截断点,再通过运动矢量编码码率优化的方法,形成运动矢量的优化截断点;最后通过联合码率分配的方法,对运动矢量数据和运动估计残差数据进行联合码率分配,以得到符合用户码率、时空分辨率需求的码流。从而改善了低码率情况下视频的传输应用问题,增强了可伸缩视频码流适应不同终端用户需求的能力。
文档编号H04N7/30GK101115200SQ20071001771
公开日2008年1月30日 申请日期2007年4月20日 优先权日2007年4月20日
发明者兰旭光, 刘相富, 薛建儒, 郑南宁, 彬 高 申请人:西安交通大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1