


下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、H.264和MPEG4 的压缩算法(一) 形成二进制I帧数据1、8×8的宏块经过DCT变化;2、经过quant量化系数处理;3、经过之字形(Zigzag)扫描;形成0101的二进制数据;(二) 形成帧间预测帧1、 I帧的二进制数据通过逆向dequant量化系数变化再通过逆向DCT变化形成下个P帧的参考帧;2、 P帧中的宏块进行运动匹配,在I帧中找到最相似的宏块;3、 记录这两个宏块的(level、run、last)等信息,然后这两个宏块进行残差运算(会形成很多0),然后在进行DCT、quant、之字形(Zigzag)扫描和双扫描后形成二进制可压缩数据;4、 然后P帧复原后在形成下一帧
2、的参考帧;以上是MPEG4和H.264的标准过程,H.264在此基础上更新了很多。一、 帧内预测:帧内编码用来缩减图像的空间冗余。为了提高H.264帧内编码的效率,在给定帧中充分利用相邻宏块的空间相关性,相邻的宏块通常含有相似的属性。因此,在对一给定宏块编码时,首先可以根据周围的宏块预测(典型的是根据左上角的宏块,因为此宏块已经被编码处理),然后对预测值与实际值的差值进行编码,这样,相对于直接对该帧编码而言,可以大大减小码率。H.264提供6种模式进行4×4像素宏块预测,包括1种直流预测和5种方向预测,如图2所示。在图中,相邻块的A到I共9个像素均已经被编码,可以被用以预测,如果我们
3、选择模式4,那么,a、b、c、d4个像素被预测为与E相等的值,e、f、g、h4个像素被预测为与F相等的值,对于图像中含有很少空间信息的平坦区,H.264也支持16×16的帧内编码。 图2 帧内编码模式二、 小尺寸4×4的dct整数变换视频压缩编码中以往的常用单位为8×8块。在H.264中却采用小尺寸的4×4块,由于变换块的尺寸变小了,运动物体的划分就更为精确。这种情况下,图像变换过程中的计算量小了,而且在运动物体边缘的衔接误差也大为减少。 当图像中有较大面积的平滑区域时,为了不产生因小尺寸变换带来的块间灰度差异,H.264可对帧内宏块亮度数据的16个4&
4、#215;4块的DCT系数进行第二次4×4块的变换,对色度数据的4个4×4块的DC系数(每个小块一个,共4个DC系数)进行2×2块的变换。H.263不仅使图像变换块尺寸变小,而且这个变换是整数操作,而不是实数运算,即编码器和解码器的变换和反变换的精度相同,没有“反变换误差”。与浮点运算相比,整数DCT变换会引起一些额外的误差,但因为DCT变换后的量化也存在量化误差,与之相比,整数DCT变换引起的量化误差影响并不大。此外,整数DCT变换还具有减少运算量和复杂度,有利于向定点DSP移植的优点。三、 多种更好的运动估计高精度估计在H.263中采用了半像素估计,在H.26
5、4中则进一步采用1/4像素甚至1/8像素的运动估计。即真正的运动矢量的位移可能是以1/4甚至1/8像素为基本单位的。显然,运动矢量位移的精度越高,则帧间剩余误差越小,传输码率越低,即压缩比越高。在H.264中采用了6阶FIR滤波器的内插获得1/2像素位置的值。当1/2像素值获得后, 1/4像素值可通过线性内插获得,对于4:1:1的视频格式,亮度信号的1/4 像素精度对应于色度部分的1/8像素的运动矢量,因此需要对色度信号进行1/8像素的内插运算。理论上,如果将运动补偿的精度增加一倍(例如从整像素精度提高到1/2像素精度),可有0.5bit/Sample的编码增益,但实际验证发现在运动矢量精度超
6、过1/8像素后,系统基本上就没有明显增益了,因此,在H.264中,只采用了1/4像素精度的运动矢量模式,而不是采用1/8像素的精度。多宏块划分模式估计在H.264的预测模式中,一个宏块(MB)可划分成7种不同模式的尺寸,这种多模式的灵活、细微的宏块划分,更切合图像中的实际运动物体的形状,于是,在每个宏块中可包含有1、2、4、8或16个运动矢量。多参数帧估计在H.264中,可采用多个参数帧的运动估计,即在编码器的缓存中存有多个刚刚编码好的参数帧,编码器从其中选择一个给出更好的编码效果的作为参数帧,并指出是哪个帧被用于预测,这样就可获得比只用上一个刚编码好的帧作为预测帧的更好的编码效果。四、 环路
7、滤波:H.264/MPEG-4 AVC标准定义了一个对16X16宏块和4X4块边界的解块过滤过程。在宏块这种情况下,过滤的目的是消除由于相邻宏块有不同的运动估计类型(比如运动估计和内部估计)或者不同的量化参数导致的人工痕迹。在块边界这种情况下,过滤的目的是消除可能由于变换/量化和来自于相邻块运动矢量的差别引起的人工痕迹。环路滤波通过一个内容自适应的非线性算法修改在宏块/块边界的同一边的两个像素。 H.264抗块效应滤波器 一、对抗块效应滤波器的描述应用抗块效应滤波器的目的是为了减少块失真。抗块效应滤波器是在编码器和解码器的反变换之后应用的。滤波器有两种好处:(a)平滑块边缘,改善解码图像质量(
8、特别是在较高的压缩比时);(b)为了在编码器中对后面的帧进行运动补偿预测,使用滤波宏块,造成预测后产生一个较小的残差。操作过程是这样的:对帧内编码宏块进行滤波,使用未滤波的重建宏块形成预测帧,进行帧内预测,但整幅图像边缘不被滤波。按下列顺序,对一个宏块中垂直或水平4×4的边缘块进行滤波:(1) 对亮度分量的4个垂直边界进行滤波(在图1中按a,b,c,d的顺序);(2) 对亮度分量的4个水平边界进行滤波(在图1中按e,f,g,h的顺序);(3)对每个色度分量2个垂直边界进行滤波(i,j);(4)对每个色度分量的2个水平边界进行滤波(k,l)。每个滤波运算影响到边界两侧的三个像素。图2显示了相邻块p和q(p0,p1,p2,p3和q0,q1,q2,q3)的垂直或水平边界两侧的4个像素。邻近的块编码模式和穿过图像抽样值边界的梯度,取决于目前的量化器,可能造成一些后果:(a)没有像素被滤波。(b)p0,p1,p2,q0,q1,q2被滤波,输出像素P0,P1,P2,Q0,Q1和Q2。五、 熵编码在熵编码之前,4X4的量化系数必须被重排序。根据这些系数原来采用的预测算法为运动估计或者内部估计的不同来选择不同的扫描类型创建一个重排序的串行化流。扫描类型按照从低频到高
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 小区物业战略合作合同及服务协议
- 灌溉沟渠劳务合同承包协议
- 房地产经纪代理合同样本
- 租赁合同编号56789
- 学生退学合同范本(版)
- 液体配送合同模板大全
- 房地产开发项目转让合同
- 水电安装工程合同范本
- 婚生子女离婚财产分割合同样板
- 物流公司合作协议合同范本
- 2025年福建省中考数学模拟试题(原卷版+解析版)
- 2025年各专业质控工作改进目标
- 计算机技术与软件安全审计试题及答案
- iso28000-2022供应链安全管理手册程序文件表单一整套
- 幼升小简历男孩模版
- (正式版)SHT 3551-2024 石油化工仪表工程施工及验收规范
- 110kV SF6 封闭式组合电器(GIS)检修规程
- 测试部门日常工作规范
- 毕业论文(设计)俄罗斯方块游戏的设计和实现
- 2019年最新-钢筋机械连接技术规程JGJ107ppt课件
- 森林培育学复习提纲
评论
0/150
提交评论