新闻中心

EEPW首页>嵌入式系统>设计应用> MPEG-4编码器在Intel PXA27X平台上的实现时间

MPEG-4编码器在Intel PXA27X平台上的实现时间

作者: 时间:2014-02-24 来源:网络 收藏
4 MPEG一4是视频编码优化和结果

这里是针对Intel公司的PXA27X处理器,MPEG一4计算量复杂,特别是运动搜索,必须对其必要的优化,以满足实时编码的要求。编译优化是静态优化,优化编译器可以自动完成程序段和代码块范围内的优化问题,但由于对算法的流程很难获取,所以人工优化是不必可少的。可使用内联函数,Wireless MMX指令编写,如WLDRD和WMACS,特别在对数据处理时,打包指令是必不可少的指令。合理分配指令周期流水线也是重点,如WLDRD需要4个周期,而WUN—PCKEL只需要1个周期,使用IPP库函数将大量节约开发时间和提高性能等,按照实际的工程的需要编写指令。当然对算法的本身优化也不必可少,如运动搜索,运动补偿算法,将这些函数优化运算时间大量减少。还有对数据搬移方面,如何有效应用硬件资源也将提高运行的性能,如DMA、缓存、寄存器等。

这里的试验平台是南望信息产业有限公司PDA,主频可达624 MHz。视频大小(480×272)透过大量的试验,测试表明MPEG一4编码可以满足用户拍视频需求,速度可达到20帧/s,而且有较高的压缩率,码流比较低,质量也不错。图3,4为实际拍摄2帧图像。


5 结 语

针对Intel公司的PXA27X微处理器开发平台,在Linux操作系统中实现视频编码的功能。但是消费类产品对视频的画面有更高的要求,同时由于视频编码需要消耗大量的电源,电源的管理仍是视频开发的研究重点。


2 MPEG一4视频编码关键技术

MPEG一4视频基于VOP的编码就是针对运动信息、形状信息和纹理信息等3种信息的编码技术。

2.1 形状编码

MPEG一4首次引入形状信息的编码。VO的形状信息有2类:二值形状信息和灰度形状信息。二值形状信息用0,1表示VOP的形状。二值信息的编码采用基于块的运动补偿技术,可以无损或有损编码。灰度形状信息用0~255之间的数值表示VOP的透明程度。对灰度形状信息的编码是分别对二值形状及像素亮度值进行编码。目前对灰度形状信息的编码主要采用基于块的运动补偿与DCT方法,在不需要形状信息的应用中(譬如基于规则矩形框帧的视频编码),形状编码会被屏蔽掉。这部分编码是以宏块为单位进行的。

2.2 运动估计与补偿编码

类似于现有的编码标准,MPEG一4采用运动预测和运动补偿技术来去除图像信息中的时间冗余成分,这些运动信息的编码技术可视为由现有标准向任意形状的VOP的延伸。VOP的编码有3种模式,即帧内编码模式(I—VOP)、帧间预测编码模式(P—VOP)和双向预测编码模式(B—VOP)。在MFEG一4中运动预测和运动补偿可以是基于16×16宏块的,也可以是基于8×8子块的。为了能适应任意形状的VOP,MPEG一4引入了图像填充技术和多边形匹配技术。图像填充技术利用VOP内部的像素值外推VOP外的像素值,以此获得运动预测的参考值。对于标准宏块,采用传统的基于块的运动估计和补偿技术。

2.3 纹理编码

VOP视频的纹理信息可以表示为亮度成分Y和两个色度成分Cr,Cb。帧内编码情况下,纹理信息包含有亮度和色度成分;运动补偿情况下,纹理信息表示经过运动补偿后的残差。纹理编码的对象可以是帧内编码模式的I—VOP,也可以是帧间预测编码模式B—VOP或P—VOP运动补偿后的预测误差。在帧内编码模式中,对于完全在VOP内的像素块,采用经典DCT方法。对于完全位于VOP之外的像素块则不进行编码:对于部分在VOP内,部分在VOP外的像素块首先采用图像填充技术获得VOP之外的像素值,之后再进行DCT编码。在帧间编码模式中,为了对B—VOP和P—VOP运动补偿后的预测误差进行编码,将那些位于VOP区域之外的像素值设为128。纹理编码过程如图1所示,DCT变换、量化、扫描及变长编码,这些过程与现有标准基本相同。

上一页 1 2 下一页

评论


相关推荐

技术专区

关闭