论文部分内容阅读
随着社会的进步和信息技术的快速发展,人们对多媒体信息的需求程度越来越高,希望随时随地都可以获得多媒体信息资源。第一代视频压缩算法,如MPEG-1、H.263等,无法满足这种要求。MPEG-4是基于对象的第二代压缩编码技术,它主要致力于为广泛的多媒体应用提供一个通用的平台。目前,国际上很多大公司都加入到了MPEG-4技术及标准的竞争中,最主要的是微软、Real和Apple三家公司。国内在这方面的研究相对较少,主要应用在数字监控系统中。因此,研究MPEG-4视频编码标准并实现实时编解码具有重要意义,特别是在图像质量和实时性方面要求都很高的场合,例如电视会议、视频电话和IPTV等。本文结合这种需求和趋势,研究了MPEG-4 SP编码原理,改进了DS算法。通过内存优化、结构优化和汇编级优化,最终实现了编码器在ADSP-Blackfin535评估板上的实时编码。主要内容有:首先,从MPEG-4视频编码的核心模块运动估计入手,对常用的四种搜索算法进行了仿真,从搜索准确度和计算复杂度两方面给出对比结果。优化了菱形搜索算法的搜索流程,避免了重复计算。SAD计算时采用提前退出策略,减小了计算量而没有损失搜索准确度。接着,以ITU组织提供的部分源码为基础,参考已有的校验模型,实现了一个Window平台下C版本的视频编码器原型。然后对代码进行移植、整合和简化,并根据编译器特点在C语言级别对对结构进行调整,代码进行优化。最后,结合Blackfin535处理器的存储结构特点,设计了MPEG-4编码的内存分配方案,利用DMA机制完成存储器间的数据搬移,加快了数据的读取速度。通过算法优化和结构调整,借助各种SIMD操作以及并行化汇编指令,在保证流水线畅通的情况下,完成编码器频繁调用模块DCT/IDCT、量化/逆量化、SAD计算和半象素插值的优化。经过测试,在Blackfin535 EVM评估板上,对CIF格式的Foreman测试序列,可以达到38帧/秒的实时压缩速度。