基于独立符号编码的JPEG2000位平面扫描方案.doc_第1页
基于独立符号编码的JPEG2000位平面扫描方案.doc_第2页
基于独立符号编码的JPEG2000位平面扫描方案.doc_第3页
基于独立符号编码的JPEG2000位平面扫描方案.doc_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

基于独立符号编码的JPEG2000位平面扫描方案杜列波 罗武胜 张进亮(国防科技大学机电工程与自动化学院, 长沙, 410073,)摘 要: JPEG2000压缩算法复杂度高、编码速度慢,极大地阻碍了其在以遥感图像压缩为代表的实时领域中的应用。为了解决这一难题,结合DSP的软件流水机制,本文提出了一种基于独立符号编码的位平面扫描方案。该方案将位平面扫描中的符号编码分离出来,在重要性编码通道和清除编码通道之外用一次扫描完成编码块中所有样本的符号编码。该方案的优点是可以减轻重要性编码通道和清除编码通道的任务量,保证软件流水正常建立,进而缩短位平面扫描的时间。实验结果表明,扫描方案改进后,位平面扫描速度提高为原来的8倍以上。关键词: JPEG2000,DSP,符号编码,EBC,软件流水A JPEG2000 Bit-Plane Scanning Method Based on Separate Sign CodingDU Lie-bo, LUO Wu-sheng, ZHANG Jin-liang (The College of Information Science & Engineering of Lanzhou University, Lanzhou 730000)Abstract: JPEG2000 provides excellent compression performance but at the cost of high computational complexity. In order to accelerate the embedded block coding algorithm in JPEG2000 which is implemented by TI DSP, We propose an improved bit-plane scanning architecture, in which the sign coding is separated from the significant propagation pass and clean-up pass. With the new architecture, DSP can build software pipeline and then the bit-plane scanning can be speeded up greatly. Experimental results show that the time for bit-plane scanning is reduced by 87.5%.Keywords: JPEG2000, DSP, Sign coding, EBC, Software pipeline2第十四届全国图象图形学学术会议1 引言JPEG2000作为新一代静止图像压缩标准,具有众多JPEG无法比拟的卓越品质,如同时支持有损和无损压缩、支持渐进传输、支持对感兴趣区域编码等等1,应用前景非常广阔。然而,JPEG2000压缩算法复杂度高、编码速度慢,极大地阻碍了其在以遥感图像压缩为代表的实时领域中的应用。为了解决这一难题,必须对JPEG2000压缩算法进行优化改进。众所周知,JPEG2000压缩算法实现的最大瓶颈在于EBCOT算法部分,根据文献2的分析,EBCOT算法运算量占JPEG2000算法运算总量的52.85。而EBC又是EBCOT算法中最为复杂的部分,因此,国内外对JPEG2000算法的优化改进研究主要集中于对EBC算法的改进。这些改进方案主要有两类,一类是以并行扫描为目的的改进方案3,4,5,另一类是以减少冗余扫描为目的改进扫描方案6,7,8。其中,第一类主要适用于以FPGA为代表的可并行运行的硬件,第二类是对算法本身的改进,对不同的硬件具有通用性。本文针对这一问题,结合DSP的软件流水机制,提出了一种基于独立符号编码的位平面扫描方案,大大缩短了JPEG2000压缩算法中位平面扫描的时间。2 EBC基本算法EBC算法的基本思想是把经过离散小波变换而得到的小波系数分成互不重叠的编码块,然后分别对每个编码块进行编码。编码时,首先将编码块按比特位分成多个位平面,然后从最高的有效位平面开始,依次对每个位平面进行编码,直至最低有效位平面编码完成。位平面编码的原理如图1所示,位平面依次进入1、2、3 三个编码通道,进行通道编码,这三个通道分别是:重要性传播通道(Significance Propagation Pass, SPP)、幅度细化通道(Magnitude Refinement Pass, MRP)和清除通道(Cleanup Pass, CP)。通道编码实际上是一个对位平面所有样本点遍历扫描并编码的过程。图1 位平面编码基本原理如图2所示,位平面列方向上每4个相邻的点称为一个编码列,处在同一水平方向上的编码列构成一个带,位平面扫描时,列内对点从上到下,带内对列从左到右,编码块内对带从上到下进行Z字型遍历扫描。扫描过程中,样本点根据其上下文窗口信息决定是否需要在该通道中进行编码。在通道编码过程中,编码通道只是提供一个入口,实际的编码操作是通过调用4个编码模块来完成的,这4个编码模块分别是零编码模块(Zero Coding, ZC)、符号编码模块(Sign Coding, SC)、幅度细化模块(Magnitude Refinement Coding, MRC)和行程编码模块(Run Length Coding, RLC)。其中,SPP调用SC模块和ZC模块,MRP调用MRC模块,CP调用SC、ZC和RLC三个模块。编码通道根据样本的上下文窗口信息调用相应的编码模块来处理,并输出符号类型和数据对至自适应MQ编码器进行编码。在JPEG2000标准中,上下文模型由19类符号组成,其中9类由ZC模块产生,5类由SC模块产生,3类由MRC模块产生,另外两类由RLC模块产生。 图2位平面内样本扫描方式3 基于独立符号编码的JPEG2000位平面扫描方案从图1可知,符号编码模块会在重要性编码通道和清除编码通道中被调用,其调用条件为:当前处理的样本点从不重要变为重要,即处理某个样本点的最高非零比特位。这就意味着一个编码块的所有样本点有且只有一次机会调用该编码模块。然而,在JPEG2000标准中,符号编码模块嵌入在通道编码中,即在重要性编码通道和清除编码通道中存在如下的条件判断,其中SIG表示当前样本点的重要性标志: (1)(1)式中的SC要么为一条函数调用语句,要么为一段函数代码。根据DSP的软件流水机制可知,循环中有函数调用或循环代码过长都会破坏软件流水。因此,首先可明确SC不能为函数调用,只能是函数代码。然而,笔者在实验中发现,SC以函数代码出现时,在重要性编码和清除编码两个通道编码中,DSP的软件流水因代码过长而无法建立。为此,本文提出了一种基于独立符号编码的JPEG2000位平面扫描改进方案,其改进思想为:在进行通道编码前,对所有样本点进行独立符号编码,并将编码得到的符号类型数据对(CX,D)缓存在DSP内部存储器中,当重要性编码通道和清除编码通道中需要符号编码时,只需要从事先缓存好的(CX,D)读出即可。采用该思想后,前面的条件判断可简化为 (2)31符号编码规则用x(i, j)和d(i,j)分别代表样本C(i, j)的正负性与重要性,CX和D分别代表当前样本符号编码输出的上下文符号类型与数据,其中i,j分别代表小波系数块中的第i行和第j 列对应的小波系数。定义 (3) (4) (5)根据表1直接查表求得CX和xflip的值,D的值根据x、xflip的符号确定,若二者异号则符号编码值为0,否则为1。flip等于-1表示为负, 1表示为正。表1 符号编码的上下文分类及应xflip Xh111000-1-1-1Xv10-110-110-1CX141312111011121314xflip11111-1-1-1-132独立符号编码可行性从符号编码规则可知,对一个样本进行符号编码时需要用到的参数为:该样本左边、右边、上面和下面4个相邻样本的重要性与符号以及当前样本本身的符号。要得到5个样本点的符号,取出它们的最高比特为位即可。要获得当前样本4个相邻样本的重要性,可以通过比较当前样本与其4个相邻样本的最高非零比特位的位置获得,规则如下,其中P表示样本的最高非零比特位的位置,SIG为重要性标志,下标中的L、T、R、B和C分别表示当前样本的左、上、右、下4个相邻样本及其本身: (6)33独立符号编码的实现在实际程序设计中,为了简化式(3)(4)(5)中的计算,将欲查找的列表直接做成CX、xflip与x(i,j-1)、x(i,j+1)、x(i-1,j)、x(i+1,j)、d(i,j-1)、d(i,j+1)、d(i-1,j) 和x(i+1,j) 的真值表。这样,只需经过一次查找256长度真值表的操作就可得到当前样本符号编码输出的上下文符号类型以及xflip的值。图3给出了独立符号编码的实现流程。图3 独立符号编码流程4 仿真分析本文提出的改进方案已应用于星载遥感图像压缩设备中,该设备中采用的处理器为TI公司的TMS320C6416T型DSP。为了验证改进方案的效果,一方面,比较扫描方案改进前后软件流水的建立情况;另一方面,比较扫描方案改进前后扫描所需要的时间。为了达到上面的两个目的,实验分成两步来完成:第一步,在仿真软件中,加上编译器的优化选项,将改进前后扫描方案对应的两个工程进行编译,根据编译器的反馈信息确定软件流水的建立情况。实验的结果是,扫描方案改进前,软件流水无法建立,改进后,软件流水正常建立,与预期的效果一致。第二步,对改进前后的位平面扫描方案进行硬件仿真,并利用计时辅助工具记录位平面扫描的时间。由于本文的应用环境为星载遥感图像压缩,因此,仿真实验中所用的样本图像不是JPEG2000标准测试图像,而是四幅遥感图像,如图4所示,图像尺寸为1024960。实验结果见表2,从比较的结果可以看出:采用改进方案后,位平面扫描的速度提高到原来的8倍以上。Image01 Image02 Image03 Image04图4 卫星遥感图片表2 改进前后,两方案扫描时钟消耗比较图像序号改进前的方案扫描所需时钟数改进后的方案扫描所需时钟数扫描速度提高倍数Image015.02 e+126.20 e+118.10Image024.53 e+125.62 e+118.06Image035.28 e+126.50 e+118.12Image044.81 e+125.96 e+118.075 结论本文针对JPEG2000图像实时压缩应用背景,提出了一种基于独立符号编码的JPEG2000位平面扫描方案。对具有软件流水功能的DSP而言,采用该扫描方案,可以使扫描时间缩短一半以上。另外,本文所提出的改进方案与文献7所提出的基于多级查询表的位平面扫描改进方案并不冲突,可以将二者结合起来,以期取得更好的改进效果。参 考 文 献1 M. D. Adams. The JPEG2000 Still Image Compression Standard, Tech. Rep. N2412, ISO/IEC JTC 1/SC 29/WG 1, Sept, 2001.2 Chung-Jr Lian, Kuan-Fu Chen. Analysis and architecture design of block-coding engine for EBCOT in JPEG2000. IEEE Transactions on Circuits and Systems for Video Technology. March,2003,13(3):219-230.3 Yanju Han, Chao Xu, Yizhen Zhang. An Improved Bit-plane And Pass Dual Parallel Architecture For Coefficient Bit Modeling In JPEG2000. IEEE ASP-DAC, pp.1284-1287,20054 Jen-Shiun Chiang, Yu-Sen Lin, Chang-Yo Hsieh. Efficient pass-parallel architecture for EBCOT in JPEG2000. IEEE International Symp

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论