用于紧凑比特平面数据压缩的装置和方法

文档序号:7816290阅读:97来源:国知局
用于紧凑比特平面数据压缩的装置和方法
【专利摘要】一种编码器包括多个寄存器并且被配置为:顺序地接收系数的阵列,每个系数被分解成位于该系数的多个相应比特位置处的多个比特;以及并发地操作每个系数的多个比特。
【专利说明】用于紧凑比特平面数据压缩的装置和方法
[0001] 相关申请的交叉引用
[0002] 本专利申请要求2013年10月3日递交的标题为"CompactBitplaneCoding DesignforFixedBitrateImageandVideoCompression,'、序列号为 61/886, 580 的美 国临时申请以及2014年8月4日递交的序列号为14/451,150的美国非临时申请的优先权 和权益,这里通过引用并入该临时申请的全部内容。

【技术领域】
[0003] 本发明的实施例涉及用于数据压缩的装置和方法。

【背景技术】
[0004] 数据压缩或者说源编码是计算中的一种普遍存在的过程,其涉及利用比原始表示 更少的比特来对信息编码。数据可能因为各种原因而被压缩,例如包括减少资源使用,比如 数据存储空间或传送容量。然而,因为数据压缩(例如,编码)要求有数据解压缩(例如, 解码)才能使数据可使用,所以数据压缩要服从于空间与时间之间的平衡(例如,数据压缩 可节省计算机空间,但也可由于解压缩而增加处理时间)。
[0005] 数据压缩过程的设计还涉及其他考虑因素,包括压缩的程度、引入的失真的量 (例如,当使用有损数据压缩时)以及用于对数据进行压缩和解压缩的计算资源。因此,一 直需要能够在提高解压缩之后的数据准确性并且减少用于对数据进行压缩和解压缩的处 理功率和时间的同时减小存储空间的数据压缩方案。


【发明内容】

[0006] 本发明的实施例提供了一种用于数据压缩的比特平面编码的装置和方法,其减少 了过程中使用的空间的量,同时增大了解压缩之后的数据精确度,并且同时减少了用于对 数据压缩和解压缩的处理功率和时间(例如,是"紧凑的")。
[0007] 根据本发明的一个实施例,一种编码器包括多个寄存器并且被配置为:顺序地接 收系数的阵列,每个系数被分解成位于该系数的多个相应比特位置处的多个比特;以及并 发地操作每个系数的多个比特。
[0008] 编码器还可被配置为,响应于检测到多个比特中的某一比特为0,将多个寄存器之 中与多个比特位置中的与该比特相对应的比特位置相对应的寄存器增大1。
[0009] 编码器还可被配置为,响应于检测到多个比特中的该比特为1,通过对与对应于该 比特的比特位置相对应的寄存器的值编码来生成编码码元。
[0010] 编码器还可被配置为,响应于检测到多个比特中的该比特为1,将与对应于该比特 的比特位置相对应的寄存器复位到零。
[0011] 与对应于该比特的比特位置相对应的寄存器的值可表示该比特位置的零游程。
[0012] 每个系数的比特位置可形成多个相应的比特平面级别,并且编码器还可被配置为 生成包括多个编码码元的多个编码比特平面级别。
[0013] 编码器还可被配置为,响应于检测到系数的序列的结束,向多个编码比特平面级 别发送多个序列结束(E0S)信号。
[0014] 编码器还可被配置为,响应于检测到系数的序列的结束,将多个寄存器复位到零。
[0015] 多个比特位置中的第一比特位置可表示每个系数的符号。
[0016] 根据本发明的另一实施例,一种解码器被配置为:接收布置在多个比特平面中的 编码码元序列,每个比特平面对应于多个系数的比特位置;读取编码码元序列中的与多个 比特平面中的某一比特平面相对应的编码码元;响应于检测到该编码码元是游程值,输出 数目等于游程值的0比特比特;以及在输出该数目的0比特比特之后,输出1比特。
[0017] 解码器还可被配置为,响应于检测到编码码元是序列结束(E0S)码元,读取编码 码元序列的与多个比特平面中的下一比特平面相对应的下一编码码元。
[0018] 解码器还可被配置为,响应于检测到E0S码元对应于多个比特平面中的最末比特 平面,接收另一编码码元序列。
[0019] 根据本发明的另一实施例,一种利用包括多个寄存器的编码器进行编码的方法包 括:顺序地接收系数的阵列,每个系数被分解成位于该系数的多个相应比特位置处的多个 比特;以及并发地操作每个系数的多个比特。
[0020] 该方法还可包括:响应于检测到多个比特中的某一比特为0,将与多个比特位置 中的与该比特相对应的比特位置相对应的寄存器增大1。
[0021] 该方法还可包括:响应于检测到多个比特中的该比特为1,通过对与对应于该比 特的比特位置相对应的寄存器的值编码来生成编码码元。
[0022] 该方法还可包括:响应于检测到多个比特中的该比特为1,将寄存器复位到零。
[0023] 寄存器的值可表示比特位置的零游程。
[0024] 每个系数的比特位置可形成多个相应的比特平面级别,并且该方法还可包括生成 包括多个编码码元的多个编码比特平面级别。
[0025] 该方法还可包括:响应于检测到系数的序列的结束,向多个编码比特平面级别发 送多个序列结束(E0S)信号。
[0026] 该方法还可包括:响应于检测到系数的序列的结束,将多个寄存器复位到零。
[0027] 多个比特位置中的第一比特位置可表示每个系数的符号。

【专利附图】

【附图说明】
[0028] 通过参考附图详细描述其示例实施例,本发明的实施例的上述和其他方面将变得 更清楚,附图中:
[0029] 图1是示出根据本发明的实施例的编码过程的流程图;
[0030] 图2是示出根据本发明的实施例的编码系统的示意性框图;
[0031] 图3是示出根据本发明的实施例的解码过程的流程图;并且
[0032] 图4是示出根据本发明的实施例的解码系统的示意性框图。

【具体实施方式】
[0033] 以下,将参考附图更充分地描述本发明的实施例,附图中示出了本发明的示例实 施例。正如本领域技术人员将会认识到的,描述的实施例容许各种修改和替换形式,而不脱 离本发明的精神或范围。为了清晰描述本发明,可省略对于完整理解本发明并非必需的一 些元素或特征。
[0034] 本说明书中使用的术语是用于描述特定实施例,而并不打算限制本发明。例如,将 会理解,虽然术语"第一"、"第二"等等在本文中可用于描述各种元素,但这些元素将不受这 些术语的严格解释所限制。反而,这些术语只是用于将一个组件与另一组件相区分。另外, 以单数使用的表述涵盖了复数的表述,除非其在上下文中具有明显不同的含义。在本说明 书中,要理解诸如"包括"、"包含"、"具有"等等之类的术语打算指示说明书中公开的特征、 数字、步骤、动作、组件、部件或其组合的存在,而并不打算排除可存在或者可添加一个或多 个其他特征、数字、步骤、动作、组件、部件或其组合的可能性。
[0035] 将会理解,当一元素或层被称为"在另一元素或层上"、"连接到另一元素或层"或 者"耦合到另一元素或层"时,其可直接在该另一元素或层上、直接连接到该另一元素或层 或者直接耦合到该另一元素或层,或者也可存在一个或多个居间的元素或层。当一元素被 称为"直接在另一元素或层上"、"直接连接到另一元素或层"或者"直接耦合到另一元素或 层"时,则没有居间的元素或层存在。相似的数字始终指代相似的元素。当在本文中使用 时,术语"和/或"包括关联的列出项目中的一个或多个的任何以及所有组合。
[0036] 空间相关术语,例如"在…下面"、"在…下方"、"下部的"、"在…上方"、"上部的" 等等,在本文中为了易于描述可用于描述如附图所示的一个元素或特征与另外(一个或多 个)元素或(一个或多个)特征的关系。将会理解,除了附图中描绘的方位之外,这些空间 相关术语还打算涵盖使用或操作中的设备的不同方位。例如,如果图中的设备被翻过来,则 被描述为在其他元素或特征"下面"或"下方"的元素的方位于是将是在其他元素或特征的 "上方"或"上面"。从而,示例术语"下方"可涵盖上方和下方两个方位。设备可以有其他的 方位(例如,旋转90度或处于其他方向),并且本文使用的空间相关描述语应当被相应地解 读。
[0037] 除非另有定义,否则本文使用的所有术语(包括技术术语和科学术语)具有与本 发明所属领域的普通技术人员通常所理解相同的含义。还将理解,术语--例如常用的字 典中定义的那些--应当被解读为具有与其在相关技术的上下文中的含义一致的含义,而 不应被以理想化或过度正式的意义来解读,除非本文明确地这样定义。另外,当描述本发明 的实施例时,对"可"的使用涉及"本发明的一个或多个实施例"。
[0038] 附图中相似的标号表示相似的元素,并且对其的重复描述可被省略。
[0039] 用于图像和视频的压缩的典型数据压缩方案涉及首先将原始像素数据转化成变 换系数。例如,块内数据或残余块间数据可首先被利用一些二维变换从像素强度值变换成 频率系数,所述二维变换例如是离散余弦变换(discretecosinetransform,DCT)、哈达玛 (Hadamard)变换、小波或者本领域技术人员已知的任何其他适当的变换过程。作为示例,原 始的照片图像可被变换成二维NxN块(例如,8x8块),并且DCT公式可被应用到覆盖图 像的NxN矩阵的每一行和列,以使得每个块具有相应的变换系数。在其他实施例中,可以 有对应于每一块的多个变换系数。
[0040] 变换系数随后被根据其相应的重要性来量化或加权,以使得许多或大部分的变换 系数变成具有零值的量化系数。接下来,按照设定或预定的顺序(例如,按Z字形顺序)利 用一些可变长度熵编码方法(例如,静态、自适应、哈夫曼编码、算术编码或者本领域技术 人员已知的任何其他适当的熵编码方法)来对量化值或系数编码。这个过程的结果可以是 与原始的未压缩数据相对应的编码比特流。在其他示例中,可以首先将原始图像划分成分 区,并且对原始图像的每个分区执行上述的压缩过程。
[0041] 例如,给定变换系数的有序序列,编码器通过基于一些量化阈值(例如,量化器) 调节值来调整数据大小。然后,量化系数被转化成1)连续零的数目(例如,游程)和2)非 零绝对值和符号的对的码元。接下来,经由一些熵编码来打包零的游程或者系数的量化或 近似的非零值。
[0042] 作为示例,可根据上述过程来压缩以下的有序的16个量化数字:

【权利要求】
1. 一种编码器,包括多个寄存器并且被配置为: 顺序地接收系数的阵列,每个所述系数被分解成位于该系数的多个相应比特位置处的 多个比特;以及 并发地操作每个所述系数的多个比特。
2. 如权利要求1所述的编码器,其中,所述编码器还被配置为,响应于检测到所述多个 比特中的某一比特为0,将所述多个寄存器之中与所述多个比特位置中的与该比特相对应 的比特位置相对应的寄存器增大1。
3. 如权利要求2所述的编码器,其中,所述编码器还被配置为,响应于检测到所述多个 比特中的该比特为1,通过对与对应于该比特的比特位置相对应的寄存器的值编码来生成 编码码兀。
4. 如权利要求3所述的编码器,其中,所述编码器还被配置为,响应于检测到所述多个 比特中的该比特为1,将与对应于该比特的比特位置相对应的寄存器复位到零。
5. 如权利要求3所述的编码器,其中,与对应于该比特的比特位置相对应的寄存器的 值表示该比特位置的零游程。
6. 如权利要求3所述的编码器,其中,每个系数的比特位置形成多个相应的比特平面 级别,并且其中,所述编码器还被配置为生成包括多个编码码元的多个编码比特平面级别。
7. 如权利要求6所述的编码器,其中,所述编码器还被配置为,响应于检测到系数的序 列的结束,向所述多个编码比特平面级别发送多个序列结束(EOS)信号。
8. 如权利要求7所述的编码器,其中,所述编码器还被配置为,响应于检测到系数的序 列的结束,将所述多个寄存器复位到零。
9. 如权利要求1所述的编码器,其中,所述多个比特位置中的第一比特位置表示每个 系数的符号。
10. -种解码器,被配置为: 接收布置在多个比特平面中的编码码元序列,每个所述比特平面对应于多个系数的比 特位置; 读取所述编码码元序列中的与所述多个比特平面中的某一比特平面相对应的编码码 元; 响应于检测到所述编码码元是游程值,输出数目等于所述游程值的0比特比特;以及 在输出所述数目的〇比特比特之后,输出1比特。
11. 如权利要求10所述的解码器,其中,所述解码器还被配置为,响应于检测到所述编 码码元是序列结束(EOS)码元,读取所述编码码元序列的与所述多个比特平面中的下一比 特平面相对应的下一编码码元。
12. 如权利要求11所述的解码器,其中,所述解码器还被配置为,响应于检测到所述 EOS码元对应于所述多个比特平面中的最末比特平面,接收另一编码码元序列。
13. -种利用包括多个寄存器的编码器进行编码的方法,该方法包括: 顺序地接收系数的阵列,每个所述系数被分解成位于该系数的多个相应比特位置处的 多个比特;以及 并发地操作每个所述系数的多个比特。
14. 如权利要求13所述的方法,还包括:响应于检测到所述多个比特中的某一比特为 0,将与所述多个比特位置中的与该比特相对应的比特位置相对应的寄存器增大1。
15. 如权利要求14所述的方法,还包括:响应于检测到所述多个比特中的该比特为1, 通过对与对应于该比特的比特位置相对应的寄存器的值编码来生成编码码元。
16. 如权利要求15所述的方法,还包括:响应于检测到所述多个比特中的该比特为1, 将所述寄存器复位到零。
17. 如权利要求15所述的方法,其中,所述寄存器的值表示所述比特位置的零游程。
18. 如权利要求15所述的方法,其中,每个系数的比特位置形成多个相应的比特平面 级别,并且其中,所述方法还包括生成包括多个编码码元的多个编码比特平面级别。
19. 如权利要求18所述的方法,还包括:响应于检测到系数的序列的结束,向所述多个 编码比特平面级别发送多个序列结束(EOS)信号。
20. 如权利要求19所述的方法,还包括:响应于检测到系数的序列的结束,将所述多个 寄存器复位到零。
21. 如权利要求1所述的方法,其中,所述多个比特位置中的第一比特位置表示每个系 数的符号。
【文档编号】H04N19/63GK104519355SQ201410524830
【公开日】2015年4月15日 申请日期:2014年10月8日 优先权日:2013年10月3日
【发明者】鲁宁, 胡肯 申请人:三星显示有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1