论文部分内容阅读
H.264/AVC是ITU-T和ISO/IEC联合推出的最新视频编码国际标准,它包含了许多先进的视频压缩编码算法,与以往的视频编码标准相比有了明显的进步。由于其良好的压缩效率和网络适应性,H.264/AVC将在视频电话、数字电视广播、移动流媒体、压缩视频存储等领域得到广泛的应用。但H.264/AVC标准计算复杂度较高的缺陷已成为目前嵌入式视频应用的主要制约因素。同时,Xseale PXA255平台已在3G手机以及PDA等移动终端广泛使用,而3G业务主要包括手机电视(M-TV)、移动视频电话等,因此降低H.264/AVC标准编码复杂度,研究在Xscale PXA255平台上实现采集编码系统是有重要的现实意义的。通过对嵌入式、数字图像等技术的深入研究,提出基于PXA255平台的视频采集编码系统的设计与优化。硬件方面,讨论了Xscale PXA255体系结构的处理器核的特点和优势,并在此硬件基础上进行了开发环境的构建,包括:建立嵌入式Linux系统的交叉编译开发环境、对Bootloader的启动过程进行分析,实现了Bootloader的移植,完成了Linux2.6核的内核配置和移植。在编码软件方面,编码器源程序采用三大开源代码之一的X264的编码部分。与官方提供的JM系列测试源码相比,X264编码器摒弃了一些对编码性能贡献微小但计算复杂度极高的新特性,更易于移植和优化。为使H.264编码算法更好的应用于PXA255平台,需充分挖掘视频处理器的并行特性和计算资源,才能满足系统实时应用的要求,在原有的X264编码器程序上主要做了以下几项工作:一是剖析H.264主要功能模块和核心算法复杂度,从多模式选择的帧间算法、帧内算法以及子像素运动估计进行了算法优化以确定X264编码器移植的核心算法;二是充分结合Xseale芯片的系统结构和硬件特点,从项目级、存储器访问、C语言级优化编码器,以提高代码运行的并行性。并着重用WMMX汇编技术优化了H.264/AVC的耗时模块:SAD运算和整数DCT变换程序。最后,基于V4L2的视频数据采集应用程序,将其与X264源码融合,实现了从USB摄像头采集视频并压缩为H.264/AVC格式的视频数据的功能,实现了视频采集压缩系统的设计与优化。优化前后的实验结果表明,在软硬件协同工作环境下,对QCIF分辨率视频进行采集并按H.264/AVC标准压缩,编码器速率基本能达到25fps以上,并解码后的视频图像具有良好的主观质量和客观质量,实现了视频采集的实时压缩。