当前位置: 首页 > 专利查询>天津大学专利>正文

一种应用于JPEG2000的MQ编码器制造技术

技术编号:16080960 阅读:84 留言:0更新日期:2017-08-25 16:01
本发明专利技术涉及一种应用于JPEG2000的MQ编码器,包括索引预测模块以及主体编码模块两个部分,当前待编码的上下文判决对CXD进入第一部分索引预测模块以获得正确的索引值;当前上下文判决对CXD获得的索引值将进入第二部分主体编码模块进行MQ编码器的主要编码过程,该模块是一个四级流水线结构,第一级流水线根据输入的索引值从概率估计值表PET中得到对应的Qe值以及LZ值,LZ值是用来指明移位的次数;Qe值以及LZ值进入第二级流水线,主要完成寄存器A的更新;Qe值以及寄存器A的移位次数进入第三级流水线,主要完成寄存器C低16位C16的更新;第四级流水线主要完成寄存器C高12位的更新,最终输出压缩字节。

【技术实现步骤摘要】
一种应用于JPEG2000的MQ编码器
本专利技术属于图像压缩编码领域,涉及静态图像压缩标准JPEG2000。
技术介绍
图像是人类社会一个重要的信息渠道。原始图像的信息量往往十分巨大,对存储资源和传输带宽提出了很高的要求,然而这些原始信息当中包含了许多冗余信息。为了节约存储资源以及传输带宽,在不影响图像信息获取的前提下,应该对原始图像进行一定程度的压缩,去除冗余信息。因次,图像编码压缩技术一直以来都是图像处理的热门领域。JPEG2000是国际标准化组织(ISO)于2000年发布的新一代静态图像压缩标准。该标准在原有JPEG标准的基础上,采用了DWT(离散小波变换)和EBOCT(最优截断嵌入式块编码)两种新的技术,因此具有:(1)在低码率下保持着较高的压缩质量;(2)具有良好的容错纠错能力;(3)支持“感兴趣区域”(ROI);(4)支持渐进传输等优点。JPEG2000的编码复杂程度较高,其中EBOCT部分的编码占据整体编码时间的80%以上,是当前JPEG2000算法结构优化的主要关注点。EBOCT编码包括Tier1编码以及Tier2编码两部分,前者承担主要的编码工作。Tier1编码由BPC编码器和MQ编码器组成,前者产生上下文-判决对(CXD对),后者根据二进制编码原理对CXD对进行编码产生压缩码流。BPC编码器的优化目前已实现较大的突破,“skipscanningmethod”等改进方法的提出大大提高了BPC编码器的处理速度。然而,MQ编码器由于其本身严格串行的编码特点以及前后CXD对输入之间强烈的关联性,吞吐率一直难以提高。目前针对MQ编码器的优化有两种思路:(1)提高编码器的吞吐率,设计出一个周期能处理多个CXD对的编码器;(2)对单CXD对处理的MQ编码器进行优化,提高编码速度,缩短编码周期。对于前一种思路,有许多研究团队提出了相应的结构。但这些结构的通常具有以下问题:(1)编码器整体工作频率较低;(2)为了实现多对CXD对同时编码而采用较大面积的电路结构,存储需求也较大;(3)往往忽略了前后输入CXD对的相关性。当前后输入CXD对相同时,优化结构往往不能正常工作。第二种思路则得到了比较广泛的应用,本专利技术也是基于这一思路提出了优化的MQ编码器结构。MQ编码器前后输入的CXD对之间具有强烈的相关性。每个CXD对进入MQ编码器时会首先从ILT表格中找到一个对应Index值。然而每次编码结束之后,这个对应的Index有可能会被更新。因此,如果前后输入的CXD对的值相同,那么后一个CXD对就必须等待前一个CXD对的编码完成以获得正确的Index。这样严格的关联性导致流水线结构无法应用到编码过程当中,使得编码速度较慢。
技术实现思路
本专利技术的目的是克服现有技术的上述不足,提供一种编码速度快、能够减少存储占用量的应用于JPEG2000的MQ编码器。技术方案如下:一种应用于JPEG2000的MQ编码器,包括索引预测模块以及主体编码模块两个部分,其特征在于,(1)当前待编码的上下文判决对CXD进入第一部分索引预测模块以获得正确的索引值,该索引值有两种可能:a.根据上下文判决对CXD中的上下文值CX从索引查找表ILT中查询到的原始索引值;b.上一个上下文判决对CXD编码产生的更新索引值;选择索引值需要判断两个条件:a.判断当前上下文判决对CXD的上下文值CX值是否与前一个上下文判决对CXD的上下文值CX值相同;b.前一个上下文判决对CXD是否发生重归一化操作,如果两个条件都符合,那么就采用更新索引值作为当前上下文判决对CXD的索引值,否则采用原始索引值;获得的索引值将替换掉索引查找表ILT的原始索引值,另外,获得正确的索引值之后,当前的上下文判决对CXD还将根据自身将要进行的编码模式从概率估计值表PET中获取的NMPS和NLPS当中选择一个来选定本次编码的更新索引值,以提供给下一个上下文判决对CXD选择,编码模式由当前上下文判决对CXD的判决值D与其选定索引值的最低一位的比较来决定是CODEMPS或者CODELPS,完成上述工作后,当前上下文判决对CXD开始后续的编码过程;(2)当前上下文判决对CXD获得的索引值将进入第二部分主体编码模块进行MQ编码器的主要编码过程,该模块是一个四级流水线结构,第一级流水线根据输入的索引值从概率估计值表PET中得到对应的Qe值以及LZ值,LZ值是用来指明移位的次数,用在寄存器A的更新当中,此外,当前上下文判决对CXD的判决值D也将和其索引值的最低一位进行比较得到当前上下文判决对CXD的编码模式是CODEMPS或者CODELPS;(3)Qe值以及LZ值进入第二级流水线,主要完成寄存器A的更新:首先,根据编码模式,寄存器A的原始值将和Qe值进行加法器计算以获得新的编码区间宽度,然后将该宽度与规定的0x800进行比较;如果小于0x800,那么就需要进行重归一化操作,编码区间宽度值左移倍增;在CODELPS编码模式下,从概率估计值表PET表中获取的LZ值可以指示需要左移的次数,从而实现一次性完成重归一化操作;重归一化操作完成之后,编码器A完成更新,总共移位的次数将被送到下一级流水线完成寄存器C的更新;(4)Qe值以及寄存器A的移位次数进入第三级流水线,主要完成寄存器C低16位C16的更新:与前一级流水线类似,首先从C16的原始值将根据编码模式与Q进行加法器计算得到更新的值,然后根据寄存器A的移位次数完成C16的移位进而完成寄存器C低16位的更新;产生的进位位将送入第四级流水线;(5)第四级流水线主要完成寄存器C高12位的更新,并且根据寄存器C的移位情况进行比特输出操作,最终输出压缩字节。在原始的MQ编码器结构当中,当前CXD对为了得到正确的Index值,必须等待前一个CXD对的编码完成,这样的机制导致MQ编码器难以使用流水线结构。本专利技术提供的MQ编码器主要由两部分组成——indexdetector以及Codingpart,Indexdetector的作用是为进入MQ编码的CXD对预测对应的index值从而提前开始编码,使其不必等待前一个CXD对的编码结束。这样就可以在后续编码过程中采用流水线结构。Codingpart承担主要的编码工作。这是一个四级流水线结构,主要的改进点有:(1)对PET表格进行优化,减小存储占用量;(2)对寄存器A的更新进行了优化,缩短关键路径;(3)将寄存器C分为低16位和高12位两个寄存器,由两级流水线分别更新。避免使用28位的加法器;附图说明图1本专利技术的高性能MQ编码器结构图2Indexdetector的结构图图3四级流水线结构Codingpart图4简化后的更新寄存器A电路结构具体实施方式本专利技术提出的高性能MQ编码器结构图如图1所示。该编码器由Indexdetector(索引预测模块)以及Codingpart(主体编码模块)两部分组成。一个时钟周期可以处理一个CXD对。1.Indexdetector设计Indexdetector的目的是为了让当前进入MQ编码器的CXD对提前获取正确的Index值,从而开始编码,不必再等待前一个CXD对编码结束,其结构如图2所示。在传统的结构当中,每个CXD对在编码过程如果发生重归一化(Renormalizaton)操作本文档来自技高网
...
一种应用于JPEG2000的MQ编码器

【技术保护点】
一种应用于JPEG2000的MQ编码器,包括索引预测模块以及主体编码模块两个部分,其特征在于,(1)当前待编码的上下文判决对CXD进入第一部分索引预测模块以获得正确的索引值,该索引值有两种可能:a.根据上下文判决对CXD中的上下文值CX从索引查找表ILT中查询到的原始索引值;b.上一个上下文判决对CXD编码产生的更新索引值;选择索引值需要判断两个条件:a.判断当前上下文判决对CXD的上下文值CX值是否与前一个上下文判决对CXD的上下文值CX值相同;b.前一个上下文判决对CXD是否发生重归一化操作,如果两个条件都符合,那么就采用更新索引值作为当前上下文判决对CXD的索引值,否则采用原始索引值;获得的索引值将替换掉索引查找表ILT的原始索引值,另外,获得正确的索引值之后,当前的上下文判决对CXD还将根据自身将要进行的编码模式从概率估计值表PET中获取的NMPS和NLPS当中选择一个来选定本次编码的更新索引值,以提供给下一个上下文判决对CXD选择,编码模式由当前上下文判决对CXD的判决值D与其选定索引值的最低一位的比较来决定是CODEMPS或者CODELPS,完成上述工作后,当前上下文判决对CXD开始后续的编码过程;(2)当前上下文判决对CXD获得的索引值将进入第二部分主体编码模块进行MQ编码器的主要编码过程,该模块是一个四级流水线结构,第一级流水线根据输入的索引值从概率估计值表PET中得到对应的Qe值以及LZ值,LZ值是用来指明移位的次数,用在寄存器A的更新当中,此外,当前上下文判决对CXD的判决值D也将和其索引值的最低一位进行比较得到当前上下文判决对CXD的编码模式是CODEMPS或者CODELPS;(3)Qe值以及LZ值进入第二级流水线,主要完成寄存器A的更新:首先,根据编码模式,寄存器A的原始值将和Qe值进行加法器计算以获得新的编码区间宽度,然后将该宽度与规定的0x800进行比较;如果小于0x800,那么就需要进行重归一化操作,编码区间宽度值左移倍增;在CODELPS编码模式下,从概率估计值表PET表中获取的LZ值可以指示需要左移的次数,从而实现一次性完成重归一化操作;重归一化操作完成之后,编码器A完成更新,总共移位的次数将被送到下一级流水线完成寄存器C的更新;(4)Qe值以及寄存器A的移位次数进入第三级流水线,主要完成寄存器C低16位C16的更新:与前一级流水线类似,首先从C16的原始值将根据编码模式与Q进行加法器计算得到更新的值,然后根据寄存器A的移位次数完成C16的移位进而完成寄存器C低16位的更新;产生的进位位将送入第四级流水线;(5)第四级流水线主要完成寄存器C高12位的更新,并且根据寄存器C的移位情况进行比特输出操作,最终输出压缩字节。...

【技术特征摘要】
1.一种应用于JPEG2000的MQ编码器,包括索引预测模块以及主体编码模块两个部分,其特征在于,(1)当前待编码的上下文判决对CXD进入第一部分索引预测模块以获得正确的索引值,该索引值有两种可能:a.根据上下文判决对CXD中的上下文值CX从索引查找表ILT中查询到的原始索引值;b.上一个上下文判决对CXD编码产生的更新索引值;选择索引值需要判断两个条件:a.判断当前上下文判决对CXD的上下文值CX值是否与前一个上下文判决对CXD的上下文值CX值相同;b.前一个上下文判决对CXD是否发生重归一化操作,如果两个条件都符合,那么就采用更新索引值作为当前上下文判决对CXD的索引值,否则采用原始索引值;获得的索引值将替换掉索引查找表ILT的原始索引值,另外,获得正确的索引值之后,当前的上下文判决对CXD还将根据自身将要进行的编码模式从概率估计值表PET中获取的NMPS和NLPS当中选择一个来选定本次编码的更新索引值,以提供给下一个上下文判决对CXD选择,编码模式由当前上下文判决对CXD的判决值D与其选定索引值的最低一位的比较来决定是CODEMPS或者CODELPS,完成上述工作后,当前上下文判决对CXD开始后续的编码过程;(2)当前上下文判决对CXD获得的索引值将进入第二部分主体编码模块进行MQ编码器的主要编码过程,该模块是一个四级流水...

【专利技术属性】
技术研发人员:梁煜陈超伟张为
申请(专利权)人:天津大学
类型:发明
国别省市:天津,12

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1