广告

原创 H.264简介

2009-9-13 21:40 2431 0 1 分类: 消费电子

1 H.264简介


H.264是ITU-T和ISO/IEC联合制定的最新编码标准,它最先由ITU-T于1997年提出,目标是提出一种更高性能(相对于当时的H.263)的视频编码标准。相对于其它标准,H.264具有以下特点:


(1) 码率低。和MPEG-2等压缩技术相比,在同等图像质量下,采用H.264技术压缩后的数据量只有MPEG-2的1/2~1/3。显然,H.264压缩技术的采用将大大节省存储容量、信道带宽及用户的下载时间和数据流量收费。


(2) 图像质量高。H.264能提供连续、流畅的高质量图像。


(3) 应用范围广。H.264的不同Profile既可以应用于有严格时延限制的实时通信中,也可以应用于对时延要求不高的其他应用中(如视频存储、流媒体等等)。


(4) 鲁棒性。H.264在设计时,针对分组交换网如Internet中的分组丢失和无线网络中比特误码都提出了相应的工具,使得H.264在这些网络中传播时具有更强的抗误码性能。


(5) 对各种网络的友好性。H.264中增加了NAL层,负责将编码器的输出码流适配到各种类型的网络中,从而提供了友好的网络接口。


H.264之所以能够达到以上性能,是因为采用了以下一些先进的技术:


首先是帧内预测编码,充分利用图像空域相关性,来降低码率。根据像条编码类型,每个宏块可以选择几种编码类型之一。共有13种预测模式(4×4块大小9种预测模式,16×16块大小4种预测模式),这在以往标准中是没有的。


其次是采用新的快速运动估值算法UMHexagonS(中国专利),它是一种运算量相对于H.264中原有的快速全搜索算法可节约90%以上的新算法,全名叫“非对称十字型多层次六边形格点搜索算法”(unsymmetrical-cross muti-hexagon search),这是一种整像素运动估值算法。由于它在高码率大运动图像序列编码时,在保持较好失真率性能的条件下,运算量十分低,已被H.264标准正式采纳。H.264有7种块匹配模式,编码时对其逐一计算,选择最优。例如较为精细的部分采用4×4块大小,不运动的背景可以采用16×16块大小等等。以往标准只有固定的一种或者两种块大小模式。H.264采用多帧参考,最大限度地利用实域相关性。参考帧可以从1帧到15帧,以往标准都是单帧参考。还有采用1/4或1/8精度的亚象素运动估计,以往标准至多采用1/2精度亚象素搜索,而且不是必选选项。为了消除视频编码中常出现的块效应,H.264使用了去块效应滤波器。


H.264还采用了整数DCT变换,以提高变换速度,采用CAVLC,CABAC等新的熵编码方法以提高编码效果。


H264标准使运动图像压缩技术上升到了一个更高的阶段,在较低带宽上提供高质量的图像传输是H.264的应用亮点。H.264因具有较低的传输比特率且对存储的要求较低,基本系统无需使用版权,具有开放的性质,目前有望取代MPEG-2。

广告

文章评论 1条评论)

登录后参与讨论

mingyu_nd_616967048 2009-10-26 09:22

中间的图片看不到哦!

bzhang 2009-9-13 23:00

学习
相关推荐阅读
kingshen 2011-04-05 15:45
基于状态机的单片机按键扫描程序
 硬件连接很简单,四个独立按键分别接在P3^0------P3^3四个I/O上面。 因为51单片机I/O口内部结构的限制,在读取外部引脚状态的时候,需要向端口写1.在51单片机复位后,不需要进行此操作...
kingshen 2010-04-06 21:28
I帧、P帧和B帧的特点
I帧:帧内编码帧I帧特点:1.它是一个全帧压缩编码帧。它将全帧图像信息进行JPEG压缩编码及传输;2.解码时仅用I帧的数据就可重构完整图像;3.I帧描述了图像背景和运动主体的详情;4.I帧不需要参考其...
kingshen 2009-09-13 21:33
ARM7启动代码的分析与设计(转)
ARM7启动代码的分析与设计(转)感觉写的比较好,忍不住转过来。引言   随着生活水平的提高和IT技术的进步,8位处理器的处理能力已经不能满足嵌入式系统的需要了;而 16位处理器在性能和成本上都没有很...
kingshen 2009-08-02 12:54
ARM启动代码分析
ARM启动代码分析 收藏 理解启动代码(ADS) 所谓启动代码,就是处理器在启动的时候执行的一段代码,主要任务是初始化处理器模式,设置堆栈,初始化变量等等.由于以上的操作均与处理器体系结构和系统配置密...
kingshen 2009-06-08 22:48
avr的IO
每个IO口属性由DDRX,PORTX,PINX三个寄存器的对应位来控制,分别是方向,为端口赋值,读取引脚。SFIOR寄存器的PUD位用来禁止所有IO口的上拉电阻。在PUD没有被禁止的情况下,通过DDR...
我要评论
1
0
广告