星论文网欢迎您的来访,本中致力于各类论文代写,论文发表,代写代发论文服务

想快速发表职称论文找星论文网
当前位置:代写网论文资料->理工论文->电子通信论文

DSP实现H263协议图像压缩编码

作者:代写论文  来源:星论文网  发布时间:2009-05-05 19:53:48
摘要:针对视频压缩的难点研究了H263视频编码的关键技术。作为软硬件开发的基础,分析了H263协议的主要内容。根据DSP的特点进行选型,选择了TMS320 C6000系列的芯片作为图像压缩的硬件处理平台。利用CCS2.0仿真开发环境,对系统的软件进行了设计和仿真,实现了主要的编码运算和码率控制,并且利用DSP自带函数,根据图像压缩的特点进行了代码的优化,给出了软件总体流程和主要算法的框图,为代码的移植准备了条件。在硬件方面以DSP为核心处理器,设计发了基于DSP的图像处理平台,详细绘出原理电路图。最后将软件代码移植到硬件平台,并且进行了高压缩比的图像编码。探讨了基于DSP实现H263压缩编码的问题,指出了未来努力的方向。
关键词:DSP;TMS320C6000;集成开发环境;视频编码;H263;图像处理;图像压缩;运动估计;电路
中图法分类号:TP391   文献标识码:A  文章编号:
DSP and H263 protocol based image coding/decoding
(Jiang-Zemin,Hu-Jintao)
(department of computer, University of QingHua. BeiJing:100011 )
Abstract:A deep research on the H263 standard is made. H263 protocol is analyzed to complish the software and hareware development.Considering the features of DSP,the chip of TMS C6000 is selected as the hareware platform for image compression.All of the software related is developed on the CCS2.0 environment.The basis and primary programme of coding and control is realized.Some Optimization work is also done to reduce the processing time.The diagram of the algorithm is shown. Based on these work,the plant of software from PC to DSP can be done.The circuit serving the DSP is designed and the diagram is drawn in details.At last,the software is planted successfully and the compression of the image is realized.The disagvantage of this method is discussed and some advice for future work is given.
Keyword: DSP;TMS320C6000;ccs;video coding; H263; image processing; image compression; motion estimation;circuit;
0 问题的提出
现代信息社会通信对图像、视频信息的传输提出了更迫切的需求。视频数据数据量大,所以应该有效地对视频数据进行压缩。H263可以有效的压缩图像,采用DSP实现H263算法,相对于H263的专用芯片, 具有更好的扩展性,算法的修改和升级都比较方便,也以很容易地将声音编解码协议和其他控制协议、复用协议和通信协议添加进来, 综合在一块DSP芯片中, 具有很强的实用性[1]
1 TMS320C67X DSP选型
TMS320C67X是TI公司开发的一种新型浮点DSP芯片[2][3]。该芯片的内部结构在TMS320C62X的基础上改进,主要特点有:1. 运行速度快。指令周期为6ns,峰值运算能力为1336 MIPS,对于单精度运算可达1G FLOPS,对于双精度运算可达250M FLOPS;2. 硬件支持IEEE格式的32 比特单精度与64比特双精度浮点操作;3. 集成了32×32比特的乘法器,其结果可为32或64比特;4. TMS 320C67X的指令集在TMS320C62X的指令集基础上增加了浮点执行能力, 可以看作是TMS 320C62X指令集的超集。指令能在TMS 320C67X上运行,而无需任何改变;5. 改进的超长指令字节体系,使其在多通道和多函数调用等方面具有尤其的优势。
由于其出色的运算能力、高效的指令集、智能外设、大容量的片内存储器和大范围的寻址能力,非常适合于类似图像处理这种对运算能力和存储量有高要求的应用场合。故本文选择该款DSP作为视频压缩的硬件平台。
2 H263协议分析
2.1 视频协议
H261、H263、H263+和H263++是由ITU-T先后制定的。H.263是针对低速率的通信设计的,但目标码率能够适应较大的动态范围,而不仅限于低码率,并且能取代H.261。它能适应误码率高的信道,具备容错的能力;能提供更好的图像质量、更低的速率;它基于运动补偿的混合编码,在运动搜索的基础上进行运动补偿。H.263将运动矢量的搜索增加为半象素点搜索,同时又增加了非限制运动矢量、基于语法的算术编码、高级预测技术和BP帧编码等四个高级选项,达到了进一步降低码速率和提高编码质量的目的。H.263编码已被许多多媒体通信终端标准所吸收[4]
图1 H.263基本流程
2.2 编码/解码算法
编码其总体上分为两种工作模式:帧内压缩模式和帧间压缩模式。对于帧内压缩,H.263标准采用DCT和Huffman编码。DCT变换后的系数中,非零值大量集中于变换域的左上角,经过Zigzag 型扫描的DCT系数中的连零更集中,更利于编码压缩。非均匀量化将更多比特用于人眼敏感的低频分量,最后进行Huffman编码以消除码字冗余度。对于帧间编码,H.263标准采用了帧间预测以及运动估计和运动补偿。
解码过程是编码过程的逆过程。接收码流经复用器分流得到q,p,qz和v,qz控制量化器步长的选取,p控制帧内/帧间方式的选择,v送入帧存储器对恢复图像进行运动补偿,形成重建图像;q经反量化、反变换,若为帧内方式编码则直接输出,若为帧间方式,则与重建图像相加后输出[5]
2.2 运动估计及运动补偿
运动估计和运动补偿是视频压缩的精华所在,也是提高压缩比的关键。活动图像不仅在一帧内(空间上)存在冗余度,更主要的是在帧与帧之间(时间上)存在冗余度。前者靠DCT变换去除,后者主要靠块运动估计与运动补偿技术去除。
3 软件开发
本文设计的思路与一般的DSP开发一样,采取软硬并行的方法,一方面采用CCS对软件算法进行设计、优化、仿真;另一方面设计硬件电路,最后进行代码移植[2][4]。CCS是TI为高性能TMS320C6000系列DSP系统设计而开发的开放式集成开发环境,它将以前分离工作的编辑、编译、连接和调试等任务集成为一体,极大的简化了系统开发的步骤,它主要内嵌了以下几方面工具:集成了编辑系统如:编辑、调试、工程管理、断点和探测点设置等功能;编译器、汇编优化和连接器;指令仿真器;实时操作系统 DSP/BIOS;实时主机与目标板之间的数据交换系统;实时数据分析和可视化系统。利用该环境,所实现的协议主要包括帧内编码,帧间编码,码流控制三个方面[6]
3.1 算法流程
图2 程序流程图
程序的主体为主循环,一次循环处理一帧图像。如果出现跳帧,则循环变量可在循环体内部被作以更改。在每次的循环内部,首先根据目标码率,先前图像的大小等信息计算是否跳帧以及编码的方式为帧内还是帧间,确定之后从源文件读取一幅图像进行编码,结束后对程序中的先前图像,重建图像等变量进行更新,以便于下一帧图像进行编码时使用。
3.2 帧内编码
图3 帧内编码
第一帧采用帧内编码,以后的均采用帧间编码。编码是以宏块为基本单位。帧内编码的主要步骤:读入图像;对宏块进行DCT变换;对变换后的系数进行量化;对量化后的系数进行Zigzag顺序的扫描以更有利于编码;对量化后的系数进行编码并输出;对量化后的系数进行反zigzag 顺序的扫描以变回以前的顺序;利用上一步得到的系数重建原图像。
3.3 帧间编码
4 帧间编码
帧间编码采用运动补偿算法,利用上一帧图像对每个宏块进行运动估计,并计算出运动矢量和误差图像,能大大提高压缩比。编码的步骤:利用当前图像的每一个宏块和前一幅重建图像进行预测,计算出运动矢量和预测宏块,以及预测宏块与当前图像的差,包括对色度信号和亮度信号的计算;对得到的误差信号进行DCT编码;对编码后的误差信号进行量化并输出;输出运动矢量到码流文件;对量化后的系数进行反量化和DCT变换,利用其结果和先前计算的误差信号重建原图像,以作为下一幅图像预测使用。
3.4 码率控制
由于H263最初是为低码率的网络通信而设计的,所以它必须进行码率。码率控制是H263协议中的精华所在。虽然H263协议提供了多种的码率控制方式,本文只采用了当前应用最广泛的TMN8。这种方式在两个方面进行码率控制:帧层的码率控制或跳帧数,即编完每一个P帧后,跳过数帧直接编后面的帧;宏块层的码率控制,即计算每个宏块的最佳量化步长。
3.5 代码优化
H263算法复杂程度高,不适于应用汇编语言编写,但C语言执行的效率较低。所以采用C语言写,并进行代码优化的方法来实现。优化的方法主要是:采用DSP提供的一些专门函数,这些函数比通用函数速度快的多;将常用表等放在片内存储空间,而非外部存储空间,提高访问速度;设置合理的编译选项[6]
4 硬件实现
硬件电路系统包括以下几个部分:外部程序存储空间和外部数据存储空间扩展电路;时序控制电路;晶振电路;JTAG接口电路;两个同步串口电路;复位以及电源电路;外部接口扩展电路;滤波电路[7][8]
a、b 程序存储器电路和数据存储器电路
c、d 时序控制电路和串行口电路
图5 主要电路组成
除上述的主要电路外还包括系统为调试芯片工作而预留的电路:由6711的信号引脚通过驱动芯片MC14050和发光二极管连接,可通过程序使引脚置高或低,从而使响应的发光二极管点亮或熄灭,从而为程序的调试提供帮助。电源指示电路:通过点亮相应的发光二极管从而知道电源供点是否正常。外部总线扩展电路:将所有的地址线,数据线,电源线以及主要的应答信号线引出,与一个标准的80针的双排针连接,这样可在以后利用此接口对系统进行升级或改进。
4 结论和展望
本文在TMS320C6711DSK平台上实现了H.263编码器,编码器在低码率40000BPS(压缩比200倍)的情况下取得较好的压缩效果;算法易于对算法的优化和升级;视频码流有一定的抗误差能力。但在很多方面还有待进一步的提高。如在算法上没有将视频数据的实时采集和编码器结合起来,以实现实时采集实时压缩实时传输的目的。因此今后工作的重点是对 H263算法作进一步的研究与改进[9][10],增强实时性[11],并制作独立的基于TMS320C6711的集视频采集,视频压缩,数据传输的硬件系统。
参考文献
[1]宋凭,张仲敏,马海燕等. H1263视频图像编码的DSP实现[J].火力与指挥控制 2008,Vol33.4 510-515
[2] Texas Instrument. TMS320C6711,TMS320C6711B FLOATING-POINT DIGITAL PROCESSORS. 2001
[3] Texas Instruments. TMS320C6711 DSP STARTER KIT. 1999
[4] 郭耀辉. 基于DSP的H.263编码器的设计与实现[D].华中科技大学学位论文,2002.5
[5] 柳笛,黎福海,闫旭. 基于DSP的嵌入式图像监控系统的设计与实现[J]. 计算机工程与科学. 2008, Vol 130.12 39-42
[6] 张伟. 基于DSP的视频压缩算法的实现[D].西北工业大学学位论文. 2004.3
[7] Texas Instruments. RESET CIRCUIT FOR THE TMS320C6000 DSP. 1999
[8] 徐盛,陈建. TMS320C6201在数字图像处理中的应用[J]. 电子技术与应用,VOL.25,70-72,1999
[9] 王向阳,杨红颖. 一种新的低比特率图像压缩编码算法[J]. 计算机研究与发展. 2005,Vol42.7 1198-l203
[10] 曾浩,高秀娟,谭晓衡. 图像压缩编码在DSP上的实现与优化[J]. 重庆大学学报. Vol31.4 432-435
[11] 李陵,余胜生,周敬利. 实时低比特率视频传输中的码率控制研究与实现[J]. 小型微型计算机系统, 2001,22(5)
[12] 王秋华. 可视电话H.263 极低码率视频编码技术研究[D]. 辽宁工程技术大学学位论文,2002.12
[13] 栗强,崔慧娟,唐困等. H263 的高效算法研究及单片DSP实现[J]. 电视技术2002年第1期

本文TAGS:代写论文
如您需要代写代发表论文请联系QQ:800054855