- 1、本文档共5页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
4运动补偿解码 - Read
中国农业大学硕士学位论文 第四章 MPEG-4解码过程与算法实现
坦口..
c2)二值算术解码
算术解码包含四个步骤:去除填充比特;初始化,它在解码第一个符号之前被执行;解码符
号,每一个符号的解码可能跟着一个重新标准化过程;在解码最后一个符号终止。
礴J.刁 灰度形状解码
灰度a平面解码可以分两部分得到:支持区域和a通道的值。支持区域使用二值形状传输。
在二值形状数据中指示透明的所有采用必须在解码灰度a平面时被设定为0。在VOP内部,a采
样的值通过解码灰度a解码过程产生。二值形状信息解码不依赖于灰度a解码。a的值以宏块的
形式按解码亮度通道的方法解码。a值16X16的块作为以后的a宏块的数据紧跟在相应的纹理块
的数据后面出现。
4.4 运动补偿解码
运动补偿解码过程包括,根据从码流中解析到的运动矢量的数据得到当前宏块的运动矢量(可
能不止一个),然后根据当前宏块的运动矢量,从参考帧中找出相应的参考宏块。如果运动矢量不
是整像素值,还需要通过内插来获得参考宏块。
为了方便对每一个视频对象平面执行运动补偿预测,对参考视频对象平面使用了一种特殊的
填充技术,即基于宏块的重复填充技术。因为视频对象平面可能有任意形状,而且形状可以从一
个实例变化到另一个实例,所以为了保证运动补偿过程的一致性,转换是必须的。
对每一个参考视频对象平面使用的绝对坐标系统 (帧坐标系统)。对每一个给定的实例,定
义了一个包含视频对象平面形状的范围矩形。范围矩形的左上角 (绝对坐标)从视频对象平面空
间参考解码。因此在一个视频对象平面内部特殊特征 (例如宏块)的运动向量,是在绝对坐标中
的移位参考。在不同时间的视频对象平面不需要校准范围矩形。
除了上面的运动补偿过程之外,还支持3种附加过程,分别称为无限运动补偿、四元数运动
补偿和重叠块运动补偿。
4.4.1基干宏块的填充技术
MPEG一中对包含VOP的最小矩形框进行运动编码与MPEG-2最大的不同就是要考虑VOP
有任意的形状.对宏块进行运动检测运动估计等一系列工作中都要利用形状信息,即计算SAD
值时要进行多边形匹配,对一个宏块内而且是VOP内部的点才计算在内,对于外部的点就不计
算。包含VOP的最小矩形框中的宏块有的像素是VOP上的,有的不是,这样多边形匹配时VOP
外部的点就需要有一个标准统一以有利于匹配,所以就需要将VOP外矩形框内的像素用VOP内
的像素值进行填充。
最小矩形框内的宏块有三类,所有像素都在VOP上的内部块,所有像素都在VOP外但在矩
中国农业大学硕士学位论文 第四章 MPEG-4解码过程与算法实现
口..门鱼鱼旦鱼鱼旦,,门..鱼鱼鱼国鱼鱼鱼,.
形框内的外部块,和部分像素在VOP上部分像素在VOP外的边缘块。整个填充的过程为首先对
每个边缘块填充。然后再填充外部块,最后对填充后的矩形框进行加宽处理。具体过程详述如下:
(1)对于边缘块,填充过程分两步,先水平填充再垂直填充。水平填充是根据到该位置左
端最近邻合法灰度值或者右端最近邻合法灰度值来填充,如果两端都有合法像素值,那么就采用
两端的平均值。下面表示填充一行的过程,假设该行至少有一个像素值非零(如果全为0,就等待
垂直填充):
for(x=O;xN;x+十){
if(s[Yl[x]=1){hor_Pad[Y][x]=d[Y][x];s[y][x]=1;1
else{
if(s[Y][)e1=1s[YIIxl)=1){
hor_pad[y][x]=(d[yl[x]+d[y][x])/2;
s卜][xl=1;
]elseif(s[y][x1=1)1
hor_Pad[Y][xl=d[yl[x7;s[Y][x]=1;
)elseif(s[y][x]=1)(
hor_pad[Y][x]=d[y](x);s[Y][x]=1;}
;
}
其中hor_pad[y][x]表示水平填充后产
文档评论(0)