Jpeg2000标准中基于码块的低存储编码器及其编码方法

文档序号:6458577阅读:162来源:国知局

专利名称::Jpeg2000标准中基于码块的低存储编码器及其编码方法
技术领域
:本发明属于图像处理
技术领域
,涉及压縮编码,特别是一种涉及静止图像压縮标准JPEG2000中的低存储编码器与方法,用于符合JPEG2000标准的各种数字图像压縮编码。
背景技术
:随着多媒体和网络技术的发展及其在医学影像、遥感图像和数字图像/视频传输等方面的应用,以往的图像压縮编码方法已经无法适应高效压缩、实时传输与高效存储的要求。作为目前国际上最新的静止图像压縮通用标准,JPEG2000具有明显的优势,例如支持单分量或多分量的有损和无损编码、在低码率下仍具有很好的性能,同时还支持图像质量和分辨率的渐进传输、感兴趣区域ROI编码,具有良好的抗误码性能。以上这些优点来源于JPEG2000分别釆用了离散小波变换DWT和率失真优化截取内嵌码块编码结构EBCOT作为其核心的变换和编码方法。JPEG2000编码方法首先将大尺寸图像分割成若干小的分量图像片,然后对各个图像分片使用DWT进行多级子带分解,对划分在小波子带系数上的码块经过包括比特平面编码、算术编码和码率控制在内的EBCOT完成压縮编码,最后打包生成符合JPEG2000标准的文件或者码流。JPEG2000编码方法与之前釆用Mallat滤波器组方法实现的小波变换相比,由于在其标准中采用了基于提升的离散小波变换方法,大大降低了小波变换所需的计算量和存储量,具有计算复杂度低、可实现原位运算、变换形式简单可逆和能够实现整型系数小波变换等优点;同时JPEG2000标准中采纳了9/7和5/3两种小波基,其中9/7小波变换用于有损压缩,其性能最优,而5/3小波变换可用于无损压缩。由于图像信号是二维信号,需要对其进行二维小波变换。二维小波变换可分解为水平和垂直方向上的两个一维小波变换,每一次二维小波分解得到一个低频子带LL和三个高频子带,即;水平子带LH、垂直子带HL和对角子带HH。下一级小波变换是在前一级产生的低频子带LL的基础上进行的,如此重复多次,便可以完成一幅图像的多级小波分解。所述的EBCOT算法分为Tier-l和Tier-2两部分。Tier-l由内嵌的比特平面编码和MQ算术编码器组成,完成编码所需的上下文后进行算术编码,形成多个子、流;Tier-2部分按照由目标码率计算出来的斜率进行码流截取,完成码率控制。进行EBCOT编码时,各小波子带划分为更小的互不重叠的码块,如64x64或者32x32,以码块为单位独立作Tier-l编码。不同的码块产生的比特流长度是不相同的,它们对恢复图像质量的贡献也是不同的。因此对于所有码块产生的比特流,Tier-2釆用了率失真优化技术进行后压缩处理,完成码流的率控制。当前有很多关于JPEG2000标准硬件实现的研究和设计方法,但是这些方法在应用中存在以下几方面的不足第一,JPEG2000标准中的离散小波变换计算复杂度高于之前JPEG中的离散余弦变换,且DWT是按照字节或字进行运算;而EBCOT中的比特平面编码和算术编码是按照逐个比特处理。这种处理速率上的不匹配往往要求降低DWT的吞吐能力或者提高EBCOT的处理速度,从而导致整体处理能力的下降。第二,在进行EBCOT编码时,需要对DWT产生的各个子带的小波系数逐个进行编码,因此所有的小波系数都需要在编码之前存储下来。而以往的方法是将整幅图像或整个图像分片的小波系数全部存储到片外的静态随机存储器SRAM中,由此带来的后果是在图像分片较大的情况下占用的存储开销会非常大。如日本研究人员HidekiYamauchi等人在2005年期刊/£££J"owma/o/So/W-Wa/eC/rcwto发表的文章1440x1080Pixel,30FramesPerSecondMotion-JPEG2000CodecforHD-MovieTransmission(Vol.40,No.1,January2005,pp331-341)中,采用了4096x2048的分片大小,这样小波系数占用存储的地址空间就高达4Kx2K-8M(lM-1024K,1K=1024)。在小波变换为实时处理的要求下,往往需要釆用两块相同的SRAM进行兵乓互倒,这时的存储总量就为一幅图像小波系数存储容量的两倍。第三,图像压縮的质量与图像分片的尺寸和码块大小有着密切的关系。在码块大小固定的前提下,如采用恢复图像与原始图像之间的峰值信噪比PSNR来衡量恢复图像的质量,釆用较大的图像分片下恢复图像的质量要髙于采用小分片压縮的质量,因此在对图像压縮质量要求较高的应用场合应选用较大的图像分片。但正如上述第二点中所述,这样也会带来所需存储资源的相应增加。为此研究人员往往以图像压縮质量下降为代价换取较小的存储占用,如美国学者KishoreAndra等人在2003年期刊/五^^27a似.o"C/rcwto/orP7tfeorec/z"o/ogv上发表的文章AHigh-PerformanceJPEG2000Architecture(Vol.13,No.3,March2003,pp209-218)和中国学者HuangQuanping等人在2004年期干!j/Efi^7hmy.o"孤"ro"/w上发表文章LowMemoryandLowComplexityVLSIImplementationofJPEG2000Codec(Vol.50,No.2,May2004,pp638-646)都采用了128xl28的分片大小,这样会带来恢复图像的质量的较大下降。中国学者MeiKuizhi等在2007年期刊/五i:五7Va肌cmOcwtoS"/ewWcfeoTec/z"o/ogv上发表的文章VLSIDesignofaHigh-SpeedandArea-EfficientJPEG2000Encoder(Vol.17,No.8,August2007,ppl065-1078)中,釆用的分片尺寸为256x256,较之前述的小分片尺寸,会在图像质量上带来一定提高,但是仍无法满足对图像质量较高的要求。因此在具体的应用场合需要在这两方面进行考虑做出权衡。第四,前述的外部存储在硬件实现中功率消耗很高。有文献指出,使用内部存储要比使用外部存储消耗的功率低一个数量级,因此在功耗上优先考虑使用内部存储。而且,随着超大规模集成电路VLSI的深入研究和半导体工艺技术的不断发展,现场可编程门阵列FPGA器件的集成度和性能价格比都得到了很大提高。因此,在当前的硬件设计中,可以采用高集成度大存储量的FPGA芯片,以达到节省功耗的目的。以上是将JPEG2000标准转化到硬件实现过程中在小波系数存储上遇到的若干技术难题,以及目前国内外在这一方向上设计技术的发展和研究的现状。在已有的包括以上扭究成果的众多JPEG2000硬件结构中较为常见的是选择较小尺寸的分片,例如分片大小为128x128,小波系数存储直接在片内;或者选择大分片尺寸,在硬件实a中利用外部存储。两者仅在存储器的来源方面存在差别,很少涉及节省存储器的高效结构。发明的内容本发明的目的在于避免上述已有技术的不足,在高质量图像压縮的要求下,提供一种符合JPEG2000标准的基于码块的低存储编码器结构及其编码方法,用片内存储代替原有结构中的外部存储并进行高效复用,以克服原有结构中大图像分片占用外部存储量大的不足。实现本发明目的的技术关键是基于JPEG2000标准中在进行Tier-1编码时各子带被划分成码块、以码块为单位进行独立编码这一特性。在大尺寸图像分片下有效地组织存储区域,通过复用片内存储器减少小波系数占用的缓存,避免由于小波系数累积而占用大量存储的现象;同时采用有效的调度机制防止缓存在复用时出现读写冲突,在保证恢复图像质量的前提下节省存储资源,降低功耗;在具体实现中采用基于行的提升变换体制和比特平面并行的编码结构,提高变换和编码的效率及速度。本发明的技术方案包括按照JPEG2000标准所提出的基于码块的低存储编码器结构和按照JPEG2000标准进行编码的方法。一.JPEG2000标准中基于码块的低存储编码器,包括小波变换模块,用于对原始的数字图像数据进行多级二维离散小波变换,并将变换后系数写入FPGA内部的存储器;地址映射模块,用于将变换系数对应于小波分解图像后的地址映射为某个具体小波系数存储区域中的地址;小波系数存储区域,用于缓存经小波变换模块计算得到的小波系数;待编码码块仲裁模块,用于暂存没有进行后续处理的小波系数已存储完整的码块信息,并对已经存储完整码块中的小波系数准备进行比特平面编码;比特平面编码模块,用于将待编码码块仲裁模块未进行比特平面编码的码块小波系数进行比特平面编码和编码状态变量的组织,并对编码状态变量进行更新后输出到后续的MQ算术编码器中。所述的地址映射模块,通过二进制计数器累加某个小波分解子带中的系数个数,将计数器数值的某些比特位按照码块在这一子带中的位置,重新排列组合为该系数在对应小波系数存储区域中的地址。所述的小波系数存储区域的个数与小波分解子带的个数相同,且每个区域含有《个地址空间与码块大小相同的存储块,0<《S^,iV为该存储区域对应小波分解子带的宽度,M为码块宽度。所述的待编码码块仲裁模块,包括等待队列,通过FPGA芯片内部的先进先出存储器FIFO暂存小波系数已存储完整码块的小波分解子带,及该码块在该小波分解子带中的位置;控制器,根据等待队列是否暂存已存储完整小波系数码块的状态,控制比特平面编码模块的工作状态。所述的待编码码块仲裁模块对已经存储完整码块中的小波系数进行比特平面编码,是根据比特平面编码模块的状态进行,即比特平面编码模块处于空闲状态时,可以从待编码码块仲裁模块中读出一个码块数据进行编码;当比特平面编码模块处于工作状态时,将已存储完整的码块信息暂存于待编码码块仲裁模块中。二JPEG2000标准中基于码块的低存储编码方法,包括如下过程1.对原始图像进行小波变换;2.为小波变换分解的每一个小波子带建立存储区域,并将每个子带的存储区域划分为若干个码块存储块;3.计算各个子带的小波系数,并对小波系数进行新的码块判断,如果该系数是全新码块中的系数,将其写入新的码块存储块;如果该系数属于已有码块且码块存储块已经存储了部分小波系数,则将其写入该码块存储块的对应位置;4.码块存储块对所存储的小波系数进行累积,当码块的存储空间累积完整后,将该码块信息暂存为等待队列;5.按照等待队列的码块先后顺序,读出码块信息,并对每一个码块的小波系数进行比特平面编码。上述步骤2,按如下过程进行(1)按照小波变换时产生的小波分解子带数量,建立每一级水平子带LH、垂直子带HL、对角子带HH和最高一级分解的低频子带LL对应的小波系数存储区域,每个子带对应的小波系数存储区域大小与该级子带的宽度W和宽度M相关,即该子带对应的小波系数存储区域空间至少为iVxM;-(2)将每个子带对应的小波系数存储区域,划分成《个地址空间与码块大小相同的码块存储块,0<《^^,W为该存储区域对应小波分解子带的宽度,M为码块宽度,该码块存储块存在有空闲、存储、写满等待、编码和读空等待5种状态。上述步骤3所述的对小波系数进行新的码块判断,是按照小波系数在各个小波分解子带中的位置进行,若小波系数是在某一码块中首次出现,则该码块属于新的码块;若码块中已经存储了一部分小波系数,则该码块属于已有码块。本发明由于在编码器中采用了地址映射模块,可以将需要缓存小波系数的存储空间由分片大小精确到码块尺寸;同时由于本发明采用了小波系数存储区域来缓存各个码块小波系数,使得码块中小波系数的完整获得在时间上具有间隔特性;此外由于本发明采用了待编码码块仲裁模块,可以高效复用小波系数存储区域中的码块存储块。整个编码器结构的逻辑和存储均在FPGA内部实现,避免了以往结构中采用外部存储器占用存储量大的不足,使编码器的存储量显著降低,系统的功耗也有明显减少。图l是本发明编码器的结构图;图2是本发明基于码块的存储区域结构图;图3是本发明码块存储块的地址分配示意图;图4是本发明待编码码块仲裁模块的结构框图;图5是本发明编码方法的流程图;图6是本发明待编码码块的状态转移图。具体实施方式本发明的编码器结构是釆用XilinxISE9.1集成开发软件和VHDL、VerilogHDL语言,在Xilinx公司的型号为XC4V&140-llffl517的FPGA上实现。参照图1,本发明按照JPEG2000标准所提出的基于码块的低存储编码器结构包括小波变换模块、地址映射模块、各子带对应的小波系数存储区域、待编码码块仲裁模块和比特平面编码模块。小波变换模块首先对原始图像进行离散小波变换得到频率域的小波系数,输出到地址映射模块。地址映射模块由若干个二进制计数器组成,这些二进制计数器的个数与小波分解的级数相同,地址映射模块将变换系数对应于小波分解图像后的地址映射为某个具体小波系数存储区域中的地址,即通过二进制计数器累加某个小波分解子带中的系数个数,将计数器数值的某些比特位按照码块在这一子带中的位置,重新排列组合为该系数在对应小波系数存储区域中的地址。小波系数存储区域按照地址映射模块产生的地址将小波系数写入FPGA内部的存储器。该小波系数存储区域的个数与小波分解子带的个数相同,且每个区域含有《个地址空间与码块大小相同的存储块,0<《《^,W为该存储区域对应小波分解子带的M宽度,M为码块宽度。参照图2,每个子带的存储区域按照码块大小划分为若干个码块存储块,每个码块存储块的地址空间与码块大小相同,本实施例中采用码块大小为32"2。码块存储块由片内的双端口存储器实现,在写入端包括写选通信号、写入该码块中的地址以及对应地址上的小波系数。其中写选通信号根据此时码块存储块的状态决定,写入该码±央中的地址由地址映射模块将变换图像中这一小波系数所处的位置转换得到,同时将该位置处的小波系数写入转换后的地址中。码块存储块的读出端包括读选通信号、读出该石马块中的地址和存储于其上的数据;其中读选通信号由待编码码块仲裁模块根据比特平面编码模块状态产生,读地址在比特平面编码模块在处理到该码块时按照条带扫描顺序给出,同时取出对应地址上的小波系数进行比特平面编码。码块存储块还包含码块状态和码块信息两个指示信号,分别标识该码块是否可被读写以及对应于小波变换图像中的码块位置。参照图3,码块存储块的地址按照JPEG2000标准提供的正规条带扫描顺序regular方式进行分配,便于比特平面编码模块完成条带扫描和上下文生成。本实施例中选用的码块大小为32x32,因此每个码块存储块中的空间为01023共1024个地址。从图3中可见在每一个32x4的条带内,地址映射模块将小波系数在变换图像中的位置按照从上到下、从左到右的顺序转化为正规条带顺序。这样在比特平面编码模块进行条带扫描时,每个位置完成后对下一个位置扫描只需要地址自增,不必像原有结构中按照水平方向地址组织顺序那样进行地址计算和切换。小波系数存储区域对这些小波系数按照级数从高到低和频率从低频LL到高频HL、LH、HH的顺序进行编号,例如将小波分解的最高级LL子带编号为O,最高级分解的HL子带编号为1,最高级分解的LH子带编号为2,最高级分解的HH子带编号为3,对各级分解均按照以上规则编号到3n。本发明中的小波基选择JPEG2000建议的整数9/7或者5/3小波,小波分解级数为11=4,这样共产生13个子带的存储区域。小波系数存储区域中的这些小波系数再输出到待编码码块仲裁模块进行处理。参照图4,本发明的待编码码块仲裁模块由等待队列和控制器组成。等待队列的端口包含已存储完整码块的信息输入、需要进行编码码块的信息输出和队列的空满状态标志;控制器的端口包含由等待队列输入的码块信息和等待队列空满状态信号,向码块存储块发出的选通信号和读码块地址,以及从码块存储块中读出的小波系数,还有比特平面编码模块的状态和向比特平面编码模块传递的各层比特平面系数值。已存储完整码块的信息按照先后顺序全部暂存于等待队列中,当逻辑电路检测到等待f人列空满状态为非空时,若比特平面编码模块对存储在之前的码块编码完成后,便从等待队列中读出下一个码块信息进行编码。控制器为比特平面编码模块和等待队列进行调度和控制,当比特平面编码模块处于空闲状态且等待队列的状态为非空时,从等待队列中读出一个码块信息数据,将控制权交给比特平面编码模块。同时向对应的码块存储块发出读请求,按照比特平面编码的顺序从中读出小波系数,将每一层比特平面的系数值传递给比特平面编码模块进行编码,即将待编码码块仲裁模块未进行比特平面编码的码块小波系数进行比特平面编码和编码状态变量的组织,并对编码状态变量进行更新后输出到后续的MQ算术编码器中。在比特平面编码模块处于工作状态时,控制器对等待队列不起作用,等待队列可以继续接收己存储完整码块的信息。若比特平面编码模块对等待队列中己存储完整码块的小波系数全部编码完成后回到空闲状态而此时等待队列为空,则控制器将优先权交给等待队列,一旦等待队列接收到新的存储完整码块信息时,控制器检测到等待队列空满状态信号为非空,便从中读出这一码块信息,开启比特平面编码模块进行如上所述的操作。参照图5,本发明的编码方法按如下过程进行-歩骤l,对原始图像进行小波变换。对原始图像进行小波变换是指对原始图像进行n级二维离散小波变换,每一级二维离散小波变换都包含水平方向和垂直方向的小波分解,即水平子带LH、垂直子带HL、对角子带HH和最高一级分解的低频子带LL,共3n+l个。小波分解采用JPEG2000标准中的提升算法,同时兼容标准中推荐的9/7和5/3两种小波基。步骤2,建立小波系数存储区域。为了缓存在对原始图像进行小波变换时产生小波分解子带中的系数,要建立对应子带的小波系数存储区域,即为每一级分解的水平子带LH、垂直子带HL、对角子带HH和最高一级分解的低频子带LL都建立相应的小波系数存储区域,共3n+l个。每个子带对应的小波系数存储区域大小与该级子带的宽度W和宽度M相关,即该子带对应的小波系数存储区域空间至少为WxM。步骤3,对小波系数存储区域进行码块存储块的划分。在JPEG2000标准中,码块是进行EBCOT编码的最小独立单位。基于这一规则,将每个子带对应的小波系数存储区域,划分成若干个存储空间与码块大小相同的存储块,即码块存储块。每个码块存储块都可能存在如图6所示的5种状态,分别为(1)空闲状态,表明该码块存储块从未被占用,可以接受某个码块中的小波系数;(2)存储状态,表明某个码块的小波系数正写入该码块存储块,此时该码±央存储块被这一个码块的小波系数唯一占用;(3)写满等待状态,表明该码块存储块对应码块小波系数已经填充完毕,正处于等待比特平面编码模块处理的状态;(4)编码状态,在这一状态下,比特平面编码模块正为这一码块存储块对应码块的小波系数进行编码;(5)读空等待状态,此时该码块存储块经比特平面编码模块扫描之后并编码完成,正等待接收另一全新码块中的小波系数。码块存储块的这5种状态的切换,由有限状态机实现。各个状态之间的跳转依照待编码码块仲裁模块中的控制器和比特平面编码模块的状态信息决定。步骤4,计算各个子带的小波系数。通过JPEG2000标准中的提升算法计算各个子带的小波系数,包括三个步骤首先是把输入数据分为两个子集,分别是偶数集合和奇数集合;然后是预测提升,即用偶数集合来预测奇数集合,把产生的误差作为髙通小波系数;最后是更新提升,即用这些小波系数来更新偶数集合作为低通小波系数。步骤5,对小波系数进行新的码块判断。将计算得到的小波系数按照它们在各个分解子带中的位置判断其是否属于新的码块,若小波系数是在某一码块中首次出现,则该码块属于新的码块;若码块存储块中已经存储了一部分小波系数,则该码块属于己有码块。对于新码块中的小波系数,则将其写入新的或可重复使用的码块存储块;对于已有码块中的小波系数,则将其写入该码块存储块的对应位置。歩骤6,将码块信息暂存为等待队列。码块存储块对所存储的小波系数进行累积,当码块存储块的存储空间被累积完整后,将该码块信息暂存为等待队列,即当某个码块存储块写满对应码块的全部小波系数后,将该码块信息按照各自被累积完整的先后顺序进行暂存。步骤7,对每一个码块的小波系数进行比特平面编码。将等待队列中未处理的码块信息依次读出,对相应码块的小波系数进行比特平面编码和状态变量的组织,并对状态变量同时进行更新,将产生的上下文信息输出到后续的MQ算术编码器中。本发明的效果可以通过软件数据计算和硬件综合实现进一步说明。1.峰值信噪比PSNR计算选取airport、field和bridge这3幅图像,在采用不同分片尺寸下经过JPEG2000算法在多种比特率下压縮,解码后计算恢复图像与原始图像的峰值信噪比PSNR,其结果如表1所示。本发明中选择码块大小为32x32,小波系数精度为16比特。表l峰值信噪比比较<table>tableseeoriginaldocumentpage14</column></row><table>从表1可见,PSNR在分片大小为1024x1024时,比分片大小为128x128时平均要高0.20.4dB,在对birdge图像比特率为4.0bpp压縮时高达ldB以上。2.编码结构性能在XilinxISE9.1集成开发软件环境中,采用VHDL、VerilogHDL语言,对本发明编码器结构的性能综合结果如表2所示。表2本发明和1吏用外部乒乓存储实现性能的综合比较<table>tableseeoriginaldocumentpage14</column></row><table>从表2中可见,在连续变换编码的要求下,本发明所需存储量为2.875Mbit,现有技术使用乒乓互倒的存储方法所用存储量为32Mbit,本发明比现有技术的存储量降低了90%;本发明综合出的最高时钟频率接近现有技术;而本发明使用的功耗低于现有技术。对于本领域的专业人员来说,在了解了本
发明内容和原理后,都可能在不背离本发明原理、结构的情况下,进行形式和细节上的各种修正和改变,可以做出不局限于小波基类型、小波分解级数和码块大小的基于码块的低存储编码器结构和编码方法,例如,采用3级5/3小波变换、码块大小采用64x64的基于码块的低存储结构,包括3级小波变换模块、对应的地址映射模块、10个子带的小波系数存储区域,以及相应的待编码码块仲裁模块和比特平面编码模块。但是这些基于本发明思想的修正和改变仍在本发明的权利要求保护范围之内。权利要求1.一种JPEG2000标准中基于码块的低存储编码器,包括小波变换模块,用于对原始的数字图像数据进行多级二维离散小波变换,并将变换后系数写入FPGA内部的存储器;地址映射模块,用于将变换系数对应于小波分解图像后的地址映射为某个具体小波系数存储区域中的地址;小波系数存储区域,用于缓存经小波变换模块计算得到的小波系数;待编码码块仲裁模块,用于暂存没有进行后续处理的小波系数已存储完整的码块信息,并对已经存储完整码块中的小波系数准备进行比特平面编码;比特平面编码模块,用于将待编码码块仲裁模块未进行比特平面编码的码块小波系数进行比特平面编码和编码状态变量的组织,并对编码状态变量进行更新后输出到后续的MQ算术编码器中。2.根据权利要求1所述的基于码块的低存储编码器,其特征在于地址映射模块,通过二进制计数器累加某个小波分解子带中的系数个数,将计数器数值的某些比特位按照码块在这一子带中的位置,重新排列组合为该系数在对应小波系数存储区域中的地址。3.根据权利要求1所述的基于码块的低存储编码器,其特征在于小波系数存储区域的个数与小波分解子带的个数相同,且每个区域含有《个地址空间与码块大小相同的存储块,0<《S^,iV为该存储区域对应小波分解子带的宽度,M为码块宽度。4.根据权利要求1所述的基于码块的低存储编码器,其特征在于待编码码块仲裁模块,包括等待队列,通过FPGA芯片内部的先进先出存储器FIFO暂存小波系数己存储完整码块的小波分解子带,及该码块在该小波分解子带中的位置;控制器,根据等待队列是否暂存已存储完整小波系数码块的状态,控带j比特平面编码模块的工作状态。5.根据权利要求4所述的基于码块的低存储编码器,其特征在于所述的控制器控制比特平面编码模块的工作状态,通过逻辑电路的检测实现,即等待队歹U状态由空变为非空时,比特平面编码模块接收等待队列中的一个信息数据,对相应的码块进行比特平面编码;当等待队列状态由非空变为空时,比特平面编码模块归于空闲状态。6.根据权利要求1或4所述的基于码块的低存储编码器,其特征在于所述的待编码码块仲裁模块对已经存储完整码块中的小波系数进行比特平面编码,是根据比特平面编码模块的状态进行,即比特平面编码模块处于空闲状态时,可以从待编码码块仲裁模块中读出一个码块数据进行编码,当比特平面编码模块处于工作状态时,将已存储完整的码块信息暂存于待编码码块仲裁模块中。7.根据权利要求3或4所述的基于码块的低存储编码器,其特征在于所述的码块存储块在写满对应码块的全部小波系数后,由等待队列接受该码块的编码请求,按照码块被写满的先后顺序存入该队列。8.—种JPEG2000标准中基于码块的低存储编码方法,包括如下过程-(1)对原始图像进行小波变换;(2)为小波变换分解的每一个小波子带建立存储区域,并将每个子带的存储区域划分为若干个码块存储块;(3)计算各个子带的小波系数,并对小波系数进行新的码块判断,如果该系数是全新码块中的系数,将其写入新的码块存储块;如果该系数属于已有码^i且码块存储块已经存储了部分小波系数,则将其写入'该码块存储块的对应位置;(4)码块存储块对所存储的小波系数进行累积,当码块的存储空间累积完整后,将该码块信息暂存为等待队列;(5)按照等待队列的码块先后顺序,读出码块信息,并对每一个码块的小波系数进行比特平面编码。9.根据权利要求8所述的低存储编码方法,其特征在于步骤2,按如下过程进行(2a)按照小波变换时产生的小波分解子带数量,建立每一级水平子带LH、垂直子带HL、对角子带HH和最高一级分解的低频子带LL对应的小波系数存储区域,每个子带对应的小波系数存储区域大小与该级子带的宽度iV和宽度M相关,即该子带对应的小波系数存储区域空间至少为iVxM;(2b)将每个子带对应的小波系数存储区域,划分成〖个地址空间与码i央大小相同的码块存储块,0<尺^^,W为该存储区域对应小波分解子带的宽度,M为码块宽度,该码块存储块存在有空闲、存储、写满等待、编码和读空等待5种状态。10.根据权利要求8所述的低存储编码方法,其特征在于步骤3所述的对小波系数进行新的码块判断,是按照小波系数在各个小波分解子带中的位置进行,若小波系数是在某一码块中首次出现,则该码块属于新的码块;若码块中已经存储了一部分小波系数,则该码块属于己有码块。全文摘要本发明公开了一种JPEG2000标准中基于码块的低存储编码器及其编码方法。该编码器包括小波变换、地址映射、小波系数存储区域、待编码码块仲裁和比特平面编码模块。小波变换模块,对原始图像进行多级小波变换;地址映射模块,将变换系数对应于小波分解图像后的地址映射为具体小波系数缓存区域中的地址;小波系数存储区域,缓存经小波变换模块计算的小波系数;待编码码块仲裁模块,暂存没有进行后续处理的码块信息,并对已经存储完整码块中的小波系数准备进行比特平面编码;比特平面编码模块,对编码状态变量进行编码和更新。本发明具有图像压缩质量好,系统占用存储容量小的优点,可用于对各种数字设备的图像压缩编码,特别是大分辨率图像的压缩系统。文档编号G06T9/00GK101267558SQ20081001811公开日2008年9月17日申请日期2008年5月4日优先权日2008年5月4日发明者凯刘,吴成柯,李云松,王柯俨,杰郭,杰雷申请人:西安电子科技大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1