下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、基于blackfin561的jpeg2000压缩算法实现及优化jpeg2000数字图像压缩标准是国际标准组织(iso)和国际电信联盟(itu)联合制定的新一代静止图像压缩标准。与以往的压缩标准相比,jpeg2000标准具有无数优点。它不仅仅在图像编码过程中能保证良好的图像质量,而且还具有现代图像压缩所要求的新性能,犹如时支持有损压缩和无损压缩两种模式、保证在图像传输过程中的容错性、支持感爱好区域编码等。但是,因为新技术的引入,jpeg2000的算法复杂度也相应提高,在实际应用中,jpeg2000并不如想象中的那么应用广泛。而因为其丰盛灵便的命令集、特别的内部结构、超强的数据吞吐能力及运算速度,
2、使得以dsp处理器为核心的办法成为实现jpeg2000算法的一种有效途径。2 jpeg2000系统的组成原理jpeg2000相对于jpeg的最大改进就是以离散小波变换(dwt)代替了dct编码。jpeg2000的编解码流程1所示。本系统首先对源图像数据举行离散小波变换,然后对变换后的小波系数举行量化,接着对量化后的数据熵编码,最后形成输出码流。是的逆过程,解码时,首先对码流举行熵解码,然后解量化和小波反变换,最后生成重建图像数据。通过预处理可为不同类型的图像提供一个统一的接口,以便于后续用法同样的编码器举行处理,这一步骤是将多种类型的图像压缩加入到统一框架中的关键。它主要包括三个步骤:图像分片
3、、直流平移和重量变换。小波的多辨别率分析特性使之既可高效地描述图像的平坦区域,又可有效地表示图像信号的局部突变(即图像的边缘轮廓部分),它在空域和频域都有良好的局部性,因而能够聚焦到图像的随意详情。优化截断嵌入块编码(the embedded blockcoding with optimized truncation,简称ebcot)是jpeg2000标准的核心,它不仅能对图像举行有效压缩,同时,其产生的码流还具有辨别率可伸缩性、信噪比可伸缩性、随机拜访和处理等十分好的特性。ebcot分tierl和tier2两部分,ebcot可将子带分成互不重叠的编码块,每个编码块的比特层编码称为tierl;
4、然后对全部编码块的编码流举行优化截断排序和打包等处理,以使其成为tier2。3 blackfin56l处理器blackfin处理器是一类专为满足当今音频、视频和通信应用的计算要求和功耗约束条件而设计的新型32位dsp。blackfin处理器主要基于和intel公司联合开发的微信号架构(msa),它将一个32位risc型命令集和双16位乘法累加(mac)信号处理功能与通用型微控制器所具有的易用性组合在了一起。blackfin561是blackfin处理器系列中的新型对称双核处理器成员,可在相同的频率条件下实现性能的翻番。该器件具有以下特点:(1)高性能的处理器内核blackfin处理器架构基于一
5、个10级riscdsp流水线和一个专为实现最佳代码密度而设计的混合1632位命令集架构。blackfin561具有两个内核频率可达600mhz的处理器,可提供高效risc mcu控制任务执行能力。(2)高带宽dma能力blackfin561具有多个自立的dma控制器,这些控制器可支持自动数据传输,而且所需的处理器内核开销极少。dma传输可浮现于内部存储器和诸多具有dma功能的外设之间。传输也有可能浮现于外设和与外部存储器接口相连的外部器件之间,包括sdram控制器和异步存储器控制器。(3)专用视频命令除了具有对8位数据以及许多像素处理算法所常用的字长的固有支持之外,blackfin处理器架构还
6、包括专为增加视频处理应用而定义的命令。(4)高效控制处理blackfin561提供有各式各样的微控制器型外设,包括uarts、spi、ppi控制器、支持的定时器、定时器、实时时钟和一个无缝同步和异步存储器控制器。因而为设计师提供了巨大的设计灵便性,并最大限度地降低了终端系统成本。(5)分层的存储器架构blackfin561支持改进的哈佛结构,该结构是具有分级的存储器结构的组合。bf56l器件的地址宽度为32位,可以拜访4g字节的地址空间。blackfin处理器的存储器架构在器件实现中可提供level l(l1)和level 2(l2)存储模块,并可以通过ebiu外接l3处理器(sdram、fl
7、ash等)。4 系统设计本系统主要实现数字图像的采集和压缩处理。它有效利用了blackfin561的专用视频接口ppi和其它丰盛的接口资源,具有设计容易、便于软件编程的特点。图2所示其系统工作流程及衔接框图。由图2可见,本系统首先由ccd摄像头来采集图像,输入的模拟信号经adv7183视频编码芯片转换成itu一656格式的数字视频流,该视频流通过bf561的ppi传输到sdram。然后由dsp从sdram读入图像,并执行jpeg2000编码操作,最后将压缩视频流输入到输出模块举行传输。输出模块由控制芯片ispl362组成,可以实现系统和pc机的互连。flash用来存放加载文件ldr。5 jpe
8、g2000算法移植假如用户导入的blackfin处理器的c代码能够兼容ansi ,那么,就能挺直在blackfin上举行构建并执行这个“现成的”代码程序。但是结合嵌入式应用环境,移植时还需注重以下几点:首先要注重不同的平台对数据类型的长度定义可能是不一样的。在程序移植中可以对数据类型用法typedef宏举行定义,如“typedef intint32;”这样便于移植时更改。第二,由于嵌入式系统中的存储空间有限,而且是分级的,且不同级别的处理器大小和运算速度均不同。因此,在定义变量时需要考虑其存放地址。通过section(“存储器段名”)语句可以将变量和代码放入指定地址。其中“存储器段名”可在ld
9、f件中设置。第三为了程序调用便利,pc平台下的c程序会常常用法大量的动态内存分配(如calloc、realloc、new等)。考虑到嵌入式系统的特点,即需要不停的循环处理,因此,应当用静态数组代替动态内存分配。这样不仅可以避开动态内存分配造成的内存碎片问题,同时存储结构也越发清晰明白。此外,因为源程序中有许多文件操作,而嵌入式系统并不挺直支持文件操作,所以应予以剔除,用读写数组的方式来替代。最后应注重visual dsp+兼容的c语言库函数。因为它不能识别等库文件名称,而calloc、malloc等动态内存分配函数均包含在中。所以,若要用法malloc,只需在程序中包入即可。注重以上几点,c语
10、言源程序就可以在visualdsp+下运行,从而实现其功能了。6 程序优化因为移植后的算法只是容易的实现了图像编码功能,而远不能保证其实时性,因而需要对其举行优化。优化主要涉及浮点转定点运算、代码优化和存储器优化。61 浮点运算转定点运算blackfin处理器是一款定点处理器。该处理器本身并不支持float、double等浮点数据类型,而只能通过实现,所以,用blackfln挺直举行浮点运算是很费时的。因而应将小波变换及其它涉及浮点运算的模块所有定点化。可以将浮点系数乘以一个尺度因子,使其变换成整数。然后在运算过程中再除以尺度因子,这样就避开了浮点操作。同时,blackfin处理器是针对小数形
11、式举行优化设计的,它提供了大量的运算命令,可以迅速的执行定点和小数运算。若用汇编编写,则可以充分发挥处理器的性能,优化幅度更大。下面给出小波变换定点化的一段程序:62 代码优化设计时可以结合详细的硬件环境对代码本身做出大量优化,以使得编译器能够充分的用法硬件循环、软件流水化、矢量化等技术。但是,也应注重一下几个方面:首先,由于循环是程序中时光消耗最大的部分,所以要把主要精力集中在循环程序的设计上。应尽量用法短循环;避开循环执行的依靠性;确保内部循环次数比外部的多;在循环中应避开条件代码,否则会浮现大量控制流延迟;在循环体中不要放函数调用语句,这样会阻碍编译器用硬件循环结构。第二,定点处理器本身
12、不挺直支持除法操作,所以,应当尽量避开除法。如“if(xy>ab)”可以写成“if(x*b>a*y)”。通过移位操作同样可以避开除法,如除以8可以用左移3位来代替。最后,通过查询表的办法也可以避开一些复杂运算。63 存储器优化blackfin56l中的存储器采纳分层结构,距离核最近的ll存储器运行速度最快,但容量很小。因此需要对图像数据举行合理的存储器资源分配,以使得绝大多数操作都集中在l1存储器。下面以小波变换为例来举行解释。本系统中待处理的图像位于sdram中。图3所示是dma双缓冲操作暗示图,dma优化的总体思想是以一行图像数据为基本单位,然后通过dma把要处理的数据转移到ll,实现数据的高效处理。传输可采纳双缓冲乒乓操作,这样可避开dma传输数据所耗费的时光。为了验证jpeg2000编码器在bf56l上移植和优化后的效果,我们对一幅512x512x8bit图像举行测试并给出了相关数据。表l所列为16倍压缩率下优化前后
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论