




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 075490 张伟华 论文的主要工作论文围绕H.264算法及DM6446嵌入式平台展开,主要分为算法研究与平台实现两部分,主要工作如下:算法研究:算法研究: 首先简要介绍视频压缩编码的原理,评价标准及以往的视频压缩编码标准; 然后详细介绍了H.264标准的特点、码流结构及关键技术,并分析了H.264的学术模型JM13.2; 重点基于JM13.2模型,分析了现有的帧内预测算法,结合高分辨率视频的编码特点,提出了一种新的快速帧内预测算法。通过实验验证,该算法在码率与SNR值基本不变的情况下,编码速度提高了27.8%。 论文的主要工作平台实现:平台实现: 首先介绍了常见的DSP芯片和嵌入式系统的基
2、础知识,分析了DM6446处理器的硬件平台,软件开发架构; 然后概述了H.264在DM6446平台上移植的系统搭建,算法移植步骤; 最后对X264模型的算法进行简要分析及预处理,重点研究了X264算法在DSP端的平台移植,简单优化及ARM端应用程序的构建,DM6446平台的配置等,完成整个系统的移植。介绍内容算法研究:算法研究:一. H.264/AVC标准及JM13.2模型实现 二. 基于H.264的高分辨率序列帧内预测算法的改进 平台实现:平台实现:三. DM6446嵌入式开发平台四. H.264在DM6446平台上的移植与实现 一. H.264/AVC标准及JM13.2模型实现1.H.26
3、4编码器框架图1-1 H.264编码器 2.H.264的核心技术1)帧内预测 - 空间冗余2)帧间预测 - 时间冗余a)块尺寸选择的多样性 (7种)b) 1/4或1/8像素精度的运动估计 c) 多参考帧3)整数变换与量化 4)熵编码(CABAC及CAVLC)5)去块效应滤波器3.H.264的码流结构视频序列 - 图像 - 片 - 宏块 - 子块4.JM13.2模型分析与流程设计二. 基于H.264的高分辨率序列帧内预测算法的改进1.现有的帧内预测算法亮度预测有三种:1)4x4模式,9种预测方向2)8x8模式,9种预测方向3)16x16模式,有水平,垂直,DC,及平面4种色度预测:8x8模式,有
4、4种预测选项,类似于16x16亮度预测模式(a) 4x4块及预测参考像素(A-M)(b) 帧内预测模式方向JM13.2模型中帧内预测的步骤:1)先进行色度预测,通过计算所有可能模式的SATD值选择最优模式2)进行亮度预测第一步:通过计算率失真值选择最优的Intra4x4模式第二步:选择最优Intra16x16模式(SATD)第三步:选择最优Intra8x8模式 (RDO方式)第四步:计算上述三种最优模式的率失真值,选择最优弊端:1)候选模式种类多 2)计算量大优点:选择的模式准确,编码后码流小 可供改进之处:1)缩减候选模式 2)简化率失真代价函数modmod( , ,mod /,)( , ,
5、mod /)( , ,mod /)eeJ s ce QPSSD s ce QPR s ce QP2. HD Sequences帧内预测的编码特点 1)不同分辨率序列的块划分方式的不同 结论:随着视频分辨率的增大,4x4的划分采用的概率减小,亮度分量的预测更倾向于使用8x8和16x16的宏块划分。 表 2-1 不同分辨率序列的块选择比率序列格式Intra4x4(%)Intra8x8(%)Intra16x16(%)Y -SNR (dB)sward.yuv(60帧)qcif43.4548.727.8338.33cif23.3856.7319.8940.964cif3.8457.2138.9544.0
6、9bigbear.yuv(360帧)qcif59.5028.5711.9242.70cif42.9635.6321.4143.774cif20.8050.3328.8844.682)1080p HD sequences的帧内预测 表2-2 a) Intra4x4,Intra8x8及Intra16x16均使用序列4x4(%)8x8(%)16x16(%)Y -SNR (dB)编码速度(fps)码率(bits/frame)sward.yuv2.0828.2169.7148.250.039164909.60king.yuv3.2533.7163.0446.450.037228886.25vr.yuv1
7、.5944.4353.9746.060.037295581.25big.yuv13.5545.9340.5140.740.0311176762.98表2-2 b) 禁用Intra4x4预测序列4x4(%)8x8(%)16x16(%)Y -SNR 提高/dB编码速度提高/%码率增大/%sward.yuv041.1758.82074.53.8king.yuv045.2754.73-0.0171.73.8vr.yuv051.3148.69077.41.6big.yuv059.8240.18-0.0178.71.1结论:禁用4x4的候选模式,编码速度有很大提高,码率增大并不显著,同时PSNR值并不下降
8、。故在编码1080p及更高分辨率的视频时,可以去除4x4的帧内预测模式。3.帧内预测快速算法原理:帧内预测所选择的编码划分大小与宏块内部的平滑度密切相关。 方法:1)基于上述结论,高清视频序列的帧内预测可以去除Intra4x4候选模式。 2)提出一种新的快速预测算法,通过计算边界像素的绝对误差和,提前判定宏块是选用Intra8x8还是Intra16x16模式进行预测。图 2-2 16x16宏块的平坦度Boundary Differences=Diff1+Diff2 166iiiiiiiiiiiii=1i=1=B -A + D -C+F-E + H -G + J -I + L -K( 式2-1)
9、图2-3 快速帧内预测算法通过大量的实验测试可知,当T取值为23时编码性能最优。4. 系统测试结果表2-3 快速帧内预测算法的测试结果序列Intra16x16和Intra8x8预测改进的快速预测算法Y -SNR (dB)速度(fps)码率(bits/frame)Y -SNR 提高/dB速度提高/%码率增大/%night.yuv48.250.066171249.79-0.0127.71.3davinci.yuv40.610.066367532.52-0.0131.61.3king.yuv41.190.067374627.48-0.0424.41.5vr.yuv46.060.064300238.0
10、0-0.0230.13.4big.yuv40.730.0561189500.67025.20.4平均值43.370.064480629.69-0.0227.81.6 实验结果表明:该算法在码率只有少许增加的情况下,编码速度提高了27.8%,SNR值基本不变。三. DM6446嵌入式开发平台1.DM6446硬件结构ARM926JE主处理器标准的操作系统:WinCE、Linux,应用更加灵活C64x+ DSP子处理器可编程:视频编解码算法更灵活VICP视频/图像协处理器硬件实现运算密集处理:减轻DSP处理的负担VPSS视频处理子系统:包括视频处理前端(VPFE)和视频处理后端(VPBE),分别用于
11、外部图像输入设备和视频输出设备。片上外设组:存储类外设:本地存储 互联类外设:网络连接 通用类外设:接口片外外设图3-1 DM6446功能结构图2.视频采集编码输出系统的总体搭建 图3-2 H.264编解码软件设计框图 视频采集编码输出系统总体如图所示,主要包括视频采集模块,DDR2存储模块,视频信号输出模块。3.DaVinci软件开发系统ARM SubsystemDSP SubsystemTransportARM主处理器: 1)运行MontaVista Linux、WinCE 2)用户用下列3个APIs来构建自己的应用程序:EPSI、VISA、xDMDSP从处理器: 实现视频、图像处理算法二
12、者通信:用DSP/BIOS LINK来实现 图3-3 DaVinci软件架构 四. H.264在DM6446平台上的移植与实现1.算法移植步骤图4-1 基于DM6446的H.264算法移植步骤第一步,基于CCS环境修改X264算法使之符合DSP C64x+平台的特性,编译生成一个编码算法的库文件*.lib(等同于Linux环境下的*.a64P,直接在Linux环境下修改文件后缀名也可)。第二步,生成一个在DSP上运行的可执行程序*.x64P(即.out文件),也就是DSP Server。第三步,根据DSP Server的名字及其中包含的X264编码算法创建Codec Engine的配置文件*.
13、cfg。这个文件定义Engine的不同配置,包括Engine的名字、每个Engine里包括的codecs及每个codec运行在ARM还是DSP侧等等。最后,应用工程师收到不同的codec包、DSP Server和Engine配置文件*.cfg,把自己的应用程序通过编译、链接,最终生成ARM侧可执行文件。其中重点在于第一步DSP端X264算法的移植,与最后一步ARM端应用程序的构建,下面将做重点介绍。2.X264算法分析1)移植算法选择JM、X264、T2642)X264算法分析数据的读入与存储、数据的压缩处理(参数初始化、以宏块为单位进行编码、编码后数据保存)、码流的输出3)预处理去除汇编优化
14、、界面显示、解码模块及工程的整合图4-2 X264编码流程图3. DSP端的平台移植与优化 开发环境:CCS3.3 移植需要修改的算法:1)头文件未定义2)数据类型的不同3)对非标准C的代码进行修改4)数据对齐的问题5)部分数据结构的初始化6)部分函数的未定义问题7)字节对齐的问题8)配置X264算法的参数读取方式 字节对齐问题举例说明:在C64x+ DSP中,寄存器都是32位大小,一次同时处理32bit数据。如果程序中的存储地址不是合法的32位字地址,在程序装入数据时,ldw指令会对这个地址自动进行调整使之成为一个合法的字地址。例如下面程序:#includeunsigned int a;un
15、signed char test8 = 0 x11,0 x22,0 x00,0 x00,0 x00,0 x00,0 x77,0 x77,0 x88;void main()a = *( unsigned int*)(test+2);printf(“%x”,b);在CCS下运行结果为00002211,而VC下为00000000,因为test+2在CCS中并非合法的地址,所以地址test+1,test+2,test+3,test+4都会在程序装入时校准到test。CCS3.3开发平台的设置:1)变量的存取方式调整2)“序”的差别3)存储空间的分配 DSP端平台优化方面的简单措施:1)项目级优化 2)
16、C程序级优化 a)使用内联函数b)循环展开c)使用逻辑运算代替乘除运算 d)使用尽量小的数据类型 e)减小存储器相关性.3)汇编级优化(本论文并未涉及) 仿真测试X264算法DSP端移植完成后,对标准的foreman QCIF(176x144)序列进行测试,编码采用Main Profile,熵编码同时采用CABAC和CAVLC方式,PSNR随编码帧数和码流变化的效果分别如图所示。图4-3 PSNR随编码帧数变化测试结果图表4-1 运动强度不同的序列测试结果序列运动强度PSNR(dB)bitrate(kb/s)CPU.Total.Incl.Total(Encode_frame函数)contain
17、erLow39.447583.151424171891foremanmedium39.820610.771601938580mobilemedium35.885595.231734151182stefanhigh36.334934.2317962407644.ARM端应用程序的创建图4-4 ARM端应用程序的线程1)主线程图4-5 主线程的流程主线程的工作:1)执行必须的初始化工作2)解析命令行参数,据此创建视频线程3)执行Codec Engine及TraceUtil模块的初始化,以便跟踪4)打开用来同步线程初始化的Rendezvous的目标5)建立视频线程。6)调用控制线程的主函数ctrlThrFxn(),主线程变成控制线程。2)视频线程图5-8 视频线程的初始化流程 视频线程从视频采集驱动器开辟一个帧缓存器,并用X264算法对其编码;用一个显示线程来“预览”要编码的数据,并用另一个写线程将已经编码的帧写入Linux文件系统。使用专门的I/O线程,最大化ARM和DSP核的使用 。总结与展望 研究工作总结本论文对H.264的编码技术进行研究,对高分辨率视频序列的帧内预测算法进行了优化;最终把X264编码器移植到DM6446平台上,通过DSP端算法的修改,ARM端应用程序的构建,DSP端和ARM端通信
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 咖啡的商业模式分析试题及答案
- 2024年税务师重要考题试题及答案
- 2024电网行业知识试题及答案解析
- 秘书岗位职责试题及答案
- 湖北省2025届九师联盟核心模拟卷(下)(样卷)英语试题及答案
- 汽车美容师装修材料知识与应用试题及答案
- 2025专业版网站服务合同
- 广东外语外贸大学《商务英语会话(三)》2023-2024学年第二学期期末试卷
- 武昌工学院《土木工程专业基础实验》2023-2024学年第二学期期末试卷
- 2025年江苏苏州高新区一中高三下学期第四次考试语文试题含解析
- 校长在高考动员大会上讲话:高考不是独木桥人生处处有航道
- 观赏鱼国际贸易的可持续发展策略
- 《园林微景观设计与制作》课件-项目四 微景观展示
- 新版《医疗器械经营质量管理规范》(2024)培训试题及答案
- 2025年初级社会工作者综合能力全国考试题库(含答案)
- 液力偶合器参数
- 高填方路基及挡土墙施工方案
- 《侧面描写》教学课件.ppt
- 不锈钢栏杆制作与安装工程工检验批质量检验记录
- 2020版《中国药典》微生物限度计数—耐胆盐革兰阴性菌
- 医药企业价格和营销行为信用承诺书
评论
0/150
提交评论