江南大学硕士学位论文基于S3C44B0X的JPEG图像解码及LCD显示的实现姓名:蒙智明申请学位级别:硕士专业:检测技术与自动化装置指导教师:屈百达20070601
摘要摘要题目:基于S3C44BOX的JPEG图像解码及LCD显示的实现专业:检测技术与自动化装置研究生:蒙智明导师:屈百达教授JPEG标准是一项成熟的图像编码技术,其压缩比例高,失真小,运行速度快,易于实现且适用范围广。已于近年被列为国际标准,得到了广泛的推广和应用。同时随着嵌入式技术的发展,该技术也越来越多的用在多媒体手机、数码相机、高性能扫描仪等多媒体系统中。目前,JPEG编解码多采用专用集成电路来实现,但这种方法成本高,升级拓展困难。本文提出一种新的解决方案,基于高性能的ARM处理器,采用优化算法实现JPEG编解码功能,通过软件升级来实现系统更新和功能拓展。这种方案具有高度的灵活性,较强的适应性且成本较低。该方案充分利用ARM的硬件资源,采用软件编程方法实现JPEG图像解码和显示。首先,基于SAMSUNG公司的ARM处理器S3C44BOX及其外围电路构建JPEG图像解码和显示的硬件处理平台,编制并调试了相关引导程序、底层驱动程序、解码程序和显示模块程序,为实现JPEG图像解码做好软硬件准备。其次,根据JPEG标准,编写JPEG解码程序。解码过程主要由五个部分组成:标记码信息处理、熵解码、反量化、反离散余弦变换和色彩空间转换。其中对最耗时的IDCT部分采用了采用行列分解法,使处理效率大大提高,该算法先将8*8的二维DcT转换成8点的一维IDCT,再利用一维快速算法来实现。然后,设计了解码显示系统,使解码图像显示于LCD终端。最后,从S3C44BOX的硬件特性和c语言程序结构方面对系统的解码和显示程序做了进一步优化。解码速度和图像恢复质量的测试结果表明:解码程序执行效率较高,能满足实时性要求;图像还原质量良好,具有较高的峰值信噪比。该方案可应用于数码相机、数字手持设备等多媒体系统中的静态图像处理,对于M-JPEG、MPEG、MPEG.II、H.26x的研究也有较高的参考价值。关键词;JPEG,ARM,解码,LCD,S3C44BOX
ABSTRACTTopic:TheImplementationofJPEGImageDecodingandLCDDisplayBasedon$3C44BOXMajor:CheckingTechnologyandAutomationDeviceCandidate:MengZhimingSupervisor:Prof.QuBaidaJPEGstandardisamatureimagecodingtechnology,whichisfeaturedwithhighcompressrate,li仕ledistortionrateandhighrun-timespeed.Andwhat’Smore.itisconvenienttorealize.Adaptedasallintemationalstandard,ithasbeenappliedinmanyfidds.Withthedevelopmentofembeddedtechnology,JPEGimagecodcetechniquehasbeenusedinmanymultimediasystems.suchasmultimediamobilephone,digitalcamera,andpalmtophigh-performancescanneretc.Atpresent,thespecialICsareemployedtorealizeJPEGimagecodec.Butitscostishighanditisdi衔cult幻upgradeandexpand.Inthispaper,JPEGimageeodeeisrealizedbyemployingoptimizationalgorithmsbasedonhi曲-performanceARMprocessor.Itmakesthesystemupgradeandexpandeasily;ithasahi吐el"flexibility,adaptabilityandlowercostsimultaneously.TheimplementationofJPEGimagedecodinganddisplayismainlybasedonsoftwareprogramminginmyscheme.whichmakesf11lluseofARMhardwareplatform.Firstly,AhardwareprocessingplatformisconstructedonthebasisofSAMSUNG’SS3C44BOXARMprocessor,furthermore,bootloadercode,bottomdriveranddisplaymoduleprogramhavebeendevelopedonthisprocessor,whichfacilitatesthesoftwareandhardwareforrealizingtheembeddedimageprocessingsystem.Secondly,accordingtoJPEGstandard.decodingprogramsaredesigned.neprocessofdecodingconsistsoffiveparts:tagcodeinformationprocessing,entropydecoding,inversedquantization,inverseddiscretecosinetransforl/landcolorspaceconverter.AstoⅡ}CTWhichneedsalotoftimeintheprocessofdecoding.amethodnamedrow-columndecompositionisadapted,whichdecompoundsthe8*8two.dimensionalintorowsandcolumnswith1_D.thellproceedswithfastalgorithmofl—D.TheefficiencyofIDCTprogrammingcouldincreasegreatly.Thirdly,displayprocessingsystemisdevelopedtoperformdis讪vonLCDterminal.Finally,thefurtheroptimizationhasbeendoneforthedecodingprogramontheaspectsofhardwarecharacteristicofS3C4480XandCprogramstructure.Alotoftestshavebeendoneonthedecodingspeedandthepicturequality.TheresultsshOWthattheprogramcanperformefficientlyandisenoughtomeetthereal.timequalification.ThequalityofrevertingpicturesisexcellentwithahigherS/Nratio.Itmakestheschemeapplytothestaticimageprocessoreasilyandwidelyinthedigitalcameras,PDAetc,Inadditional。ithasallimportantreferencevaluetotheR&DofM.JPEG’MPEG,MPEG—II。andH.26x,Keywords:JPEG;ARM;Decoding;LCD;S3C44BOXII
独创性声明本人声明所呈交的学位论文是本人在导师指导下进行的研究工作及取得的研究成果。尽我所知,除了文中特别加以标注和致谢的地方外,论文中不包含其他人已经发表或撰写过的研究成果,也不包含本人为获得江南大学或其它教育机构的学位或证书而使用过的材料。与我一同工作的同志对本研究所做的任何贡献均已在论文中作了明确的说明并表示谢意。砷‘月9Et关于论文使用授权的说明本学位论文作者完全了解江南大学有关保留、使用学位论文的规定:江南大学有权保留并向国家有关部门或机构送交论文的复印件和磁盘,允许论文被查阅和借阅,可以将学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存、汇编学位论文,并且本人电子文档的内容和纸质论文的内容相一致。保密的学位论文在解密后也遵守此规定。签名:趣堕导师签名::i丝日期:加7年莎月5-El{
第一章绪论第一章绪论1.1JPEG概述JPEG是“JointPhotographicExpertsGroup,是联合摄影专家组”的缩写,是适用于黑白及彩色照片,传真和印刷等方面的静止图像编码的标准IlJ。JPEG主要存储颜色变化的信息,特别是亮度的变化。在常用的模式中,用有损压缩方式去处冗余的图像和色彩数据,在获得极高的压缩率的同时能展现十分丰富、生动的图像,可以用较少的磁盘空间得到较好的图像质量。JPEG还是一种灵活的格式,具有调节图像质量的功能,允许采用不同的压缩比例对文件进行压缩。和具有相同图像质量的其他文件格式(如BMP、GIF、TIFF)相比,JPEG是目前静态图像中压缩率比较高的。正是由于这种高压缩比使得JPEG格式的文件尺寸较小,下载速度快。使得网页能以较短的下载时间提供大量的美观图像,所以目前各类浏览器都支持JPEG图像格式,使得它广泛的用于多媒体和网络程序中。1.1.1JPEG运行方式由于J'PEG是适用范围很广、通用性很强的技术,所以把算法的功能分为有四种运行方式【2】:1)基本DCT(DiscreteCosineTransform)顺序:由8*8像素组成的像块,从左到右进行编码处理并按照从上到下顺序进行扫描。编码处理是由二元DCT系数的量化和量化系数的熵编码组成的。基本DCT顺序运行需要基本DCT的缓冲条件最小,因而实现的费用最低。2)基于DCT的扩展(渐进模式):该模式对图像按照由粗到细进行编码,图像重现时由模糊到清晰,处理的顺序及编码处理的基本构成与DCT顺序模式相同,扫描的的顺序也是从上到下,从左到右,但需要对图像进行多次处理扫描。当对图像进行解码时,在第一次扫描后先得到一幅分辨率较低的粗略的图像轮廓,然后在后续的扫描处理后逐渐提高画面质量,得到清晰的图像,直到解码完成。渐进模式传输时间较长,接收端收到的图像是多次扫描由粗糙到清晰的累进过程。3)无损模式:无损编码方法能保证解码后精确的回复原图像的采样值,其压缩比低于有损压缩编码方法。使用二维差分脉冲编码调制技术的空间预测算法,可处理较大范围的输入像素精度。由于不使用DCT变换,对接近像素间的差别进行熵编码,从而不产生图像的失真,可以保证重建图像与原始图像完全相同。4)分层模式:组合上面三种方式,做成具有多种空间分辨率图像的金字塔结构。适用于对原始图像的滤波和划分像素,依次做成减少空间分辨率的图像时的图像数据结构称为金字塔。因为按空间分辨率由高到低的顺序累积起来是金字塔的形状,所以称为金字塔结构。由低品质图像向高品质图像阶段传送时,使用该方法。图像在多个空间分辨率进行编码,在信道传送速率低,接收端显示器分辨率也不高的情况下,只需要做低分辨率图像解码,不必进行高分辨率解码。
江南大学硕士学位论文1.1.2JPEG编码系统JPEG算法有两种不同的压缩方式,一种是基于差分脉冲代码调制的压缩方式DPCM(DiffcrcntialPulseCodeModulation),它是一种可逆的无失真的编码方式;另一种是基于DCT的压缩方式,该方式是有失真的不可逆的编码。JPEG标准中定义了3种编码系统[11:11基于DCT的基本顺序系统:采用基于DCT的顺序编解码算法实现有损图像压缩。重建图像质量达到人眼难以辨别出损失的要求。采用8*8像素自适应DCT算法、量化及Huffman型的熵编码器。2)基于DCT的扩展系统:为了满足更为广泛的通信要求,JPEG算法中除了具有基本功能外,还具有扩展功能,其代表性的扩展功能就是累进显示。此外,在扩展功能中还应设置有多种可选择的功能。扩展编码系统使用累进工作方式,采用自适应算术的编码或者Huffman编码过程。3)无失真系统:无失真系统是一种完全能恢复原图像的可逆系统。由于DCT编码会产生一定的信息丢失,不适宜用于无失真系统。在JPEG算法中,通过用DPCM脉冲调制代码调制方式实现无失真系统的可逆编码。这是一种有别于DCT的独立的压缩编码方式,有时又称为独立功能。为保证重建图像数据与原始图像数据完全相同,无失真系统采用预测编码及Huffraan或算术编码。在JPEG的三种编码系统中,基于DCT的基本顺序系统是JPEG最基本的压缩系统,JPEG标准的软硬件编码、解码都支持这个过程。另两个系统本课题不再做讨论,本课题所讨论和实现的就是最常用的基于DCT的基本顺序系统。1.2课题的意义及研究内容2l世纪的人类社会将是信息化社会,以信息技术为主要标志的高新技术产业在整个经济中的比重不断增长,多媒体技术及产品是当今世界计算机产业发展的新领域。世界上很多国家,对多媒体技术的研究和应用都给予了极大的重视,并投入了大量的人力、物力开发先进的多媒体信息技术及相关产品,试图占领庞大的多媒体市场。多媒体技术是使计算机具有综合处理声音、文字、图像和视频的能力,它以形象丰富的声、文、图像信息和方便的交互性,极大地改善了人机界面,改变了使用计算机的方式,从而为计算机进入人类生活和生产的各个领域打开了方便之门,给人们的工作、生活和娱乐带来深刻的变化【3】。随着多媒体技术在各个应用领域不断普及,用户对新产品的期望越来越高,希望它具有更大的图像容量、更高的图像质量和更快的图像处理速度,这些都为图像的存储和处理提出了更高的要求。在数字图像处理可视电话通信、数字电视等应用中,遇到的首要难题就是数据量过大,导致图像传输和存储成问题,单纯靠增加存储器容量,提高信道带宽以及计算机的处理速度等方法来解决这个问题是不现实的,这时最好的解决办法就是对图像进行压缩编码。近十年来,数字图像和数字视频的压缩技术取得2
第一章绪论了突破性进展,目前主要有三种方式:其一是纯硬件方式,即采用专用芯片编码,编码速度快,但灵活性差,系统成本造价高;其二是用纯软件方式实现解码算法,解码速度慢,但灵活性好,算法易更新升级,并且造价较低;其三是基于高性能处理器(如ARM、DSP等)的软件实现,此种方式利用处理器的高速信号处理能力,使软件实现的算法在其上运行时间大大缩短,同时该方案易升级,算法易更新。本课题就是利用第三种方法,在ARM(AdvaneedRISCMachines)平台上建立一个高性能的JPEG解码及显示系统。近年来,伴随着因特网和消费电子的兴起,JPEG标准广泛地应用于消费类电子、网络、军事、工业控制、生物医学、遥感、模式识别和机器人视觉等领域。图像压缩是一个很有发展前途的研究领域,这一领域的突破对于通信和多媒体事业的发展将有深远的影响。网络、通信、多媒体和信息家电时代的到来,无疑为以ARM系列处理器为首的32位嵌入式系统应用提供了空前巨大的发展空间。嵌入式系统就是以应用为中心,以计算机技术为基础,软硬件可裁减,适合应用系统对功能、可靠性、成本、体积及功耗严格要求的专用的计算机系统;它是设计完成复杂功能的硬件和软件,并使其紧密耦合在一起的计算机系统14]。ARM微处理器具有性能高、成本低和能耗低的特点,适用于工业控制、消费电子、多媒体、成像技术等多种领域。所以在ARM开发平台上研究JPEG解码具有相当重要的价值和意义。本文将在深入研究JPEG图像压缩标准的基础上,以SAMSUNG公司的高端处理器S3C44BOX为核心的开发板做为嵌入式硬件平台,构建嵌入式系统,讨论JPEG解码及其LcD显示的实现,并针对实际的需求,进一步从硬件和软件方面探讨了对整个系统的优化。1.3JPEG的国内外研究现状数据压缩是个非常活跃的领域,总是不断出现与实践新的方法、思想和技术。JPEG在图像压缩领域有着广泛的应用,但并不完善。对一个8*8像素块进行DCT便换有时会导致重建图像中出现块效应胪】。文献[6】为解决量化噪声带来的块效应,提出了通过增加获得不规则图像碎片编码提高量化质量,从而提高解码图像的重构质量。文献[7】,【8】实践了JPEG的加密、解密与隐藏技术,加密、解密与隐藏技术是近几年JPEG研究的另一个方向。目前,国内外在嵌入式编解码方面的应用更是异彩纷呈,文献【9]给出了JPEG编码在SoC(SystemonChip)上的实时实现,它是为数码相机而设计的,JPEG图像通过CMOS图像传感器获得。文献[10】根据长途汽车对上车人员进行记录的应用要求,开发了一套基于EZ-USB的低端图像数据采集存储及传输系统,采用OmniVision公司的CMOS图像传感器OV7620作为采集芯片,Zoran公司的zR36060作为数据压缩芯片,Cypress的带USB接口的单片机AN2131QC作为总控制芯片和USB数据传输芯片。文献[1I】中,松下电器产业公司开发出的SoC能够进行JPEG、MPEG--2和3
江南大学硕士学位论文MPEG--4等标准的编解码,它配备了支持SD卡、DVD、硬盘和USB等设备的接口电路,上述编解码处理由对多媒体处理进行了优化的可扩展信号处理器“UniPhier处理器”执行。文献[12】在基于Motorola公司的ColdFire系列的32位DSP处理器MCF5272上实现JPEG解码算法的设计与实现。文献[131在DSP开发板上实现了JPEG图像压缩编码算法。其中的二维DCT部分采用行列分解法,一维DCT部分使用DFT系数方法实现。文献[14】采用以TI公司的高速DSP芯片TMS320C6201为核心的开发板做为图像压缩器的硬件平台,通过自行开发的压缩程序,实现了图像的实时压缩。文献[151利用Fujitsu公司生产的FRl000作为嵌入式系统的多核处理器,将JPEG图像划分为4个部分,分别在4个处理器核上进行解码,实现了JPEG图像的实时解码;FRl000将4个处理器核集成在1枚芯片上,各个处理器核之间共享内存和其它外部设备。文献[16】在FujitsuFRl000VDK开发环境下,实现了一个可在多处理器嵌入式系统环境下运行的JPEG解码的FarmWare软件产品。另外,随着可编程逻辑器件技术的发展,人们在利用FPGA来实现图像的编解码芯片方面也进行了研究。文献[171利用Altera公司的CycloneFPGA芯片实现了JPEG图像的高速编码。文献【18]利用硬件描述语言VHDL、ALTERA公司的QUANTUSII2.0EAD工具平台及上海TrainSillcon公司的OPEN.FPGA4.0开发板上实现了JPEG的编解码。上面介绍的JPEG编解码的实现方法,主要都是利用硬件的方法实现的,其成本较高,比较专一,系统升级比较困难,而且系统不容易拓展;另一方面,随着ARM技术的不断发展,ARM处理器的速度在不断提高,其对数据处理的能力也越来越强,价格也在不断降低。因此我们利用以ARM公司的s3c44BOx微处理器为核心的开发板设计出了一个成本较低、系统易于升级且容易拓展的嵌入式JPEG解码系统。1.4论文组织结构论文全文共由六部分组成:第一章为绪论,介绍了JPEG标准相关内容,课题的意义及研究内容,JPEG的国内外研究现状。第二章介绍了基于ARM的硬件平台,S3C44BOX及外围相关电路及接口。第三章以JPEG标准为依据,分析了JPEG图像编解码的基本原理和方法,详细论述了图像压缩中所使用的一些关键技术。第四章着重阐述了软件系统的基础构建与设计。包括运行环境ADSl.2的介绍,系统启动引导程序Bootloader的裁减、实现,底层驱动程序和LCD的驱动程序的设计编写等。第五章给出了解码芯片总体方案的设计,详细论述了在PC机上实现JPEG解码的步骤,其次讲解了软件到硬件平台上的移植,然后从软件和硬件角度讲解了优化,最后对解码时间和图像重建质量进行了讨论,最后给出了实验结果。第六章对论文的全部工作进行了总结和展望。4