使用误差平面编码的数据压缩方法及装置制造方法

文档序号:7772383阅读:251来源:国知局
使用误差平面编码的数据压缩方法及装置制造方法
【专利摘要】本发明提供图像数据的压缩/解压缩方法及装置。一种图像数据的压缩方法包括:接收图像数据,其中该图像数据被分割成多个访问单元并针对每一访问单元作压缩;应用第一数据压缩至该访问单元以为该访问单元产生第一位元流,其中该第一位元流的大小小于或等于该访问单元的目标位元预算;如果第一位元流的大小小于该访问单元的目标位元预算,应用第二数据压缩至该访问单元的误差数据,以为该访问单元产生第二位元流。本方法的解压缩会根据第一位元流以产生第一重建数据,如果有第二位元流,会再解出误差数据,并根据第一重建数据与误差数据产生最后的解压缩结果。
【专利说明】使用误差平面编码的数据压缩方法及装置
【技术领域】
[0001]本发明涉及视频数据的压缩及解压缩。特别地,本发明涉及的方法与系统为有限位元预算下的有损数据压缩,并使用误差平面编码技术。
【背景技术】
[0002]数据压缩技术是在图像及视频编码系统中越来越重要的一项技术以缩减数据冗余。数据压缩一个重要的益处是减少对外部记忆体的需求,这能减少整个系统的成本。数据压缩的另一个益处在于减少数据的大小可能可以降低存取外部记忆体的频宽需求,因此可使用较低频率的动态随机存取记忆体(dynamic random-access memory, DRAM)。为获得更好的压缩率(本案定义为压缩后数据大小比原始数据大小的比率,越低越好),当压缩影像的品质损耗是可以被接受时,一般常使用有损数据压缩方法。举例来说,如JPEG标准就是被广泛采用的有损数据压缩方法
[0003]传统的数据压缩技术,如JPEG,一般基于帧的编码数据。基于帧的压缩技术的最小编码单元典型是8x8或是16x16,这限制了这些算法在较小的访问单元的系统中的应用。对于算法在固件系统的实施,访问单元(access units, AUs)具有较小的大小是特别重要的,如:8xl, 16x1,32x1,4x4等等。此外,较小的访问单元大小能允许较简单的压缩方法及更灵活的配置,因而能够帮助平行处理且特别适合固件的实施。
[0004]另一基于帧的压缩技术的挑战是压缩数据的位元流大小变化与原始影像相关。例如,复杂的区域所压出的位元流比较大,而单纯的区域所压出的位元流比较小。因此,如果想要找出特定区域影像的位元流资料并不容易,可能需要从头开始解码。在许多图像和视频相关的应用中,可能需要存取某块特定位置的图像资料。如JPEG压缩图像的一已选择的小区域可能需被播放,或者前一图像中的一块区域可能需被访问以进行运动补偿(motioncompensation)。任意基于巾贞或者基于大的图像基础的压缩在访问所需视频数据之前,可能需要访问和处理大量的已压缩数据。这会引起更多的电力消耗和在固件实施中低效的DRAM频宽的使用。使用较小的访问单元(AUs),并且让每个访问单元的位元预算固定,可使得记忆体的访问和电力的损耗问题可以被减轻。然而,针对每一访问单元作压缩后,有可能压缩后的位元流大小是小于位元预算的,因为传统的高效率有损压缩并无法精确的控制所压出位元大小。在视频和图像编码系统中,需要开发一种数据压缩方案,能够基于小的访问单元和同时有效地使用全输出位元预算,实现高的压缩效率(即低压缩率,本案定义为压缩后数据大小比原始数据大小的比率)。

【发明内容】

[0005]为了解决上述编码/解码效率较低或质量较差的问题,本发明提供一种图像数据压缩及解压缩方法,且提供相应的图像数据的压缩及解压缩装置。
[0006]一种图像数据的压缩方法,该方法包括:接收图像数据,其中该图像数据被分割成多个访问单元;应用第一数据压缩至每一访问单元以为该访问单元产生第一位元流,其中该第一位元流的大小小于或等于该访问单元的目标位元预算;响应该第一数据压缩的结果,如果第一位元流的大小小于该访问单元的目标位元预算,应用第二数据压缩至该访问单元的误差数据,以为该访问单元产生第二位元流,其中,该误差数据对应该访问单元的原始数据与第一重建数据之间的差异,该第一重建数据对应第一位元流的解码结果,也可由第一数据压缩产生;此压缩方法会提供该第一位元流;及若该第二位元流存在,提供该第二位元流。在一范例中,该第二数据压缩包括应用位元平面编码至位元平面顺序数据,其中,该位元平面顺序数据是以一位元平面顺序扫描该误差数据的最高有效位至最低有效位产生;取该位元平面顺序数据的前N个位元作为该的第二位元流,该第二位元流作为该第二数据压缩的结果,其中N为该访问单元的目标位元预算与第一位元流大小的相减。
[0007]—种图像数据的解压缩方法,该方法包括:接收与图像数据的访问单元相关的位元流,其中该位元流包括第一位元流,且依据该第一位元流的情况,该位元流也可能进一步包括第二位元流;使用第一数据解压缩解码该第一位元流,以产生对应于该访问单元的第一重建数据;如果该第二位元流存在(例如,第一位元流大小小于位元预算),使用第二数据解压缩解码该第二位元流,以产生第二重建数据,其中,该第二重建数据对应于该访问单元的误差数据;若该第二位元流存在,合并该第一重建数据及该第二重建数据以产生该访问单元的最终重建数据;否则使用该第一重建数据作为该访问单元的最终重建数据。在一范例中,该解码方码包括使用位元平面编/解码方法来解码该第二位元流。
[0008]本发明实施例更提供一用于图像数据压缩的装置,该装置包括:一模块,用于接收图像数据,其中该图像数据被分割成多个访问单元;一模块,用于应用第一数据压缩至每一访问单元以为该访问单元产生第一位元流,其中该第一位元流的大小小于或等于该访问单元的目标位元预算;一模块,用于响应该第一数据压缩的结果,如果第一位元流的大小小于该访问单元的目标位元预算,应用第二数据压缩至该访问单元的误差数据,以为该访问单元产生第二位元流,其中,该误差数据对应该访问单元的原始数据与第一重建数据之间的差异,该第一重建数据对应该第一位元流的解码结果,也可由第一数据压缩产生;一模块,用于提供该第一位元流;及若该第二位元流存在,提供该第二位元流。
[0009]一用于图像数据解压缩的装置,该装置包括:一模块,接收与图像数据的访问单元相关的位元流,其中该位元流包括第一位元流,且该依据该第一位元流的情况,该位元流进一步包括第二位元流;一模块,使用第一数据解压缩解码该第一位元流,以产生对应于该访问单元的第一重建数据;一模块,用于如果该第二位元流存在(例如,第一位元流大小小于位元预算),使用第二数据解压缩解码该第二位元流,以产生第二重建数据,其中,该第二重建数据对应于该访问单元的误差数据;一模块,用于若该第二位元流存在,合并该第一重建数据及该第二重建数据以产生该访问单元的最终重建数据;否则使用该第一重建数据作为该访问单元的最终重建数据;及一模块,用于为该访问单元提供该最终重建数据。
[0010]本发明提供的压缩及解压缩方法及相应的装置,藉由对误差数据的处理,能够提高图像效率和/或压缩质量。
【专利附图】

【附图说明】
[0011]图1揭露了基于小访问单元的有损数据压缩技术的流程图的范例。
[0012]图2揭露了基于有限位元预算的有损数据压缩技术的流程图范例,其中,应用误差平面编码方法以提高重建图像的质量。
[0013]图3揭露了包含误差数据预处理和位元平面编码的误差平面编码技术的示范性流程图。
[0014]图4揭露了通过限制误差平面的位元深度进行的误差数据预处理的范例。
[0015]图5A揭露了依据本发明通过编码最高有效位(most significant bit,MSB)至最低有效位(least significant bit, LSB)的误差数据的误差平面编码方法的范例。
[0016]图5B揭露了依据本发明的一实施方式的位元平面编码,其中该误差平面包括3个范例“2,O, -1”,且该误差大小位元深度为2。
[0017]图6揭露了基于有限位元预算的访问单元的数据解压缩技术的示范性流程图,其中,误差平面编码被实施以提高重建数据的质量。
[0018]图7揭露了依据本发明的位元平面编码和解码的实例。
【具体实施方式】
[0019]传统的高效数据压缩方法经常引起大小可变的输出流,因为有限的位元预算而留下一些未使用的输出位元。依据本发明的实施例,该自AU压缩残留的位元预算可被用于进一步提高该修复的图像质量。通过在已压缩的AU位元流中使用该残留的位元预算传输该图像/视频数据更多的编码信息,该图像/视频数据的质量可以被提高。以此方式的挑战是针对可变长度的AU压缩位元流,有效地使用残留的位元预算。本发明介绍误差平面编码(Error plane coding, EPC)以有效地编码残留的位元预算中的每一 AU的误差数据,即作为范例,可使用位元平面编码(bit-plane coding, BPC)编码误差数据。
[0020]本申请的一范例中,该有损数据压缩可用于具有固定压缩率的图框或图像缓存压缩,以符合规定大小的外部DRAM。在基于AU的数据压缩系统中,通常的做法是独立限制每一单独的AU的输出位元流的大小,以简化系统实施及提供随机访问(random access)任意的AUs。举例来说,一压缩预算为原始大小的0.5X被设定为每一 AU的目标,该每一 AU的大小被设计为被压缩至原始大小的一半或者少于一半。每一 AU的压缩数据大小依据该输入数据的特性和已选的压缩系数如量化指数变化。上述变化使得输出位元流的大小很难精确的等于AU的位元预算。为了保证就算在最坏的情况下,该输出位元流的大小也不会超出该预算,每一AU的压缩被谨慎地设计,所以该输出位元流的大小总是小于或等于该预算。故,该AU的输出经常具有残留的位元预算。
[0021]图1揭露一基于访问单元的有损数据压缩。源图像110被分割成多个访问单元120。然后,每一访问单元120被有损数据压缩单元130以一目标压缩率压缩。举例来说,一访问单元可包含16-byte且被设定为以一 0.5的压缩率压缩至小于等于8_byte。该有损压缩输出的位元流131依次输入一输出缓存140,在该压缩数据被以转移至外部DRAM之前,临时存储该一个或多个压缩访问单元。
[0022]在本发明中,发展一种两步压缩方案以全部利用该输出位元预算和提高数据压缩质量。该第一步骤是为该多个独立的访问单元提供一压缩方法。在这个步骤中,该每一 AU的数据被压缩至一小于或者等于该输出位元预算的位元流大小。为了保证该压缩数据在目标预算内,与压缩方法有关的编码参数需被调整。第二步骤是提供另一方法以使用残留的位元预算以提高压缩质量。虽然第二步骤中通过使用误差数据填充残留的位元预算将会产生一固定大小的输出位元流,通过在第一步骤中选择合适的编码参数,所需压缩比可以被保证。
[0023]图2揭露本发明一实施例的示范性系统。其中提供第二编码方法以使用每一AU的残留的位元预算来编码误差数据。源图像210被分割成多个访问单元220,如8xl、16xl、32x1,4x4或者8x8等等。每一访问单元220被一有损数据压缩单元230压缩,以产生一第一位元流231,其中该第一位元流231被依次存储在一输出缓存240内。举例来说,设定一目标压缩比r,如r=0.5,每一 SxlAU的目标输出位元预算为32位(此例中,假设每一像素为8位,每一访问单元为64位)。本领域通常知识者知晓多种有损数据压缩技术,如变换编码和小波编码。这些编码技术通常包括熵编码,如可变长度编码或算法编码。因此,不再在此详细描述有损编码技术的细节。如果一有损数据压缩为该AU产生y位元,这一结果可为第二编码方法残留(x_y)有效位。举例来说,一 AU的有损数据压缩可以产生28位元,因此,剩余一 4位元的残留预算。然而,如果该第一位元流等于目标位元预算,即(x_y)=0,这表示没有为第二数据压缩剩下残留的位元预算。因此,这种情况下,第二数据压缩不会被执行。
[0024]为了利用该第一步骤残留的位元预算,有损压缩的冗余,也叫误差数据,第一次获得是从该AU的原始数据中减去该AU的重建数据。加法器260被用于自该原始数据221中减去第一重建数据251以形成该误差数据261。有损数据解压缩单元250被用于恢复该第一重建数据251。然后使用一第二编码方法编码该误差数据261产生一第二位元流271。如图2显示,误差平面编码单元270是示范性的第二编码方法。依据本发明的误差平面编码,可以产生精确合适该目标位元预算的已编码位元。该第一位元流231和该第二位元流271在该压缩数据被传输至外部记忆体之前,均被存储在一输出缓存240中。
[0025]如图2所示,该误差平面编码单元270被用于编码该误差数据。在一些情况下,该第一数据压缩会导致无损压缩,其中,该所有误差数据均为O。在这些情况下,无须应用第二数据压缩。该无损数压缩的情况可在该第一位元流中使用一语法元素来表示。举例来说,在这种情况下,量化指数(Quantization index)可以被设置为O以表示该第一数据压缩是无损的。因此,该第二数据压缩可以被跳过,以减少能量损耗。如果应用该第二数据压缩,该EPC会对误差数据做位元平面扫瞄(bit-plane scan),并根据剩余位元预算,从位元平面的最低有效位至最高有效位开始丢弃。因此,该EPC能精准控制该位元流的大小以符合该位元预算。一 EPC的范例显示于图3,其中,该EPC的处理包括误差数据预处理310及位元平面编码320。该误差数据预处理310是处理和准备该误差数据,使其更适合随后的编码,以提高编码效率及/或提高编码质量。该误差数据可能具有宽的动态范围及/或表现在大的位元深度,这会引起随后的位元平面编码是非常低效的。依据本发明的一实施例,误差数据预处理能够减少该误差数据的动态范围,被用于如图4所示的数据剪辑。其中,e(i) I指的是误差数据e(i)在像素位置i的绝对值。一误差数据限制410 (Thr)可被选择以剪辑该误差数据,因此,若e(i)3Thr,e(i)=Thr且若e(i) £Thr, e (i) =_Thr。该误差数据可由一个符号位(sign bit)及η-位误差大小(n-bit magnitude)表示。举例来说,若该误差限制Thr被设置成1,该误差大小将被限制在O和I (即,1-位元表示)。因此,该误差数据将被表示为0、+1或者-1。类似地,若该误差限制Thr被设置成3,该误差大小将被限制在O、1、2及3(即,2-位元表示)。 当数据剪辑(clipping)被用于该误差预处理的范例,其他预处理装置也可以被使用。举例来说,量化(quantization)或数据舍入(rounding)也可以取代剪辑,被用于减少表示该误差数据的位元数。在另一范例中,数据滤波(filter)如中值滤波(median filter)也可以被应用至该误差数据的预处理以准备随后的编码。进一步,一预处理的组合装置也可以被使用。如一中值滤波器可以被应用至该误差数据,随后进行上述的数据剪辑。
[0026]在预处理该误差数据后,位元平面编码(bit-plane coding,BPC)被用于编码该已预处理的误差数据。该位元平面编码自最高有效位至最低有效位排列该误差数据以产生一位元平面顺序数据(自高优先级至低优先级)。该位元平面编码选择该位元平面输出自高优先级的位元至低优先级的位元。换 句话来说,该位元平面编码选择该第一样本的最高有效位(MSB),然后至该第二样本的MSB…至最后样本数据的MSB。接着,继续该第一样本的MSB-1,然后是该第二样本的MSB-2,以此类推。该最后样本数据的LSB将是该位元平面编码的最后一个位元。该位元平面顺序数据将被剪辑以填补该残留的位元预算。在剪辑该位元平面顺序数据的过程中(本案中简称为有序数据(ordered data)),在位元平面顺序中的自该第一样本数据的MSB至该最后样本数据的LSB能够填满该残留的位元预算的位元,被保留作为该第二位元流,而剩余的有序数据则不被考虑。图5A揭露了依据本发明实施例产生有序数据的范例。在图5A中,该已预处理的误差数据相当预包含3个样本的一个AU,其中,该误差数据大小的位元深度为2。在像素i的已预处理的误差数据大小被表示为Bi,j,其中,j=0,…,(M-1),且M相应于该已预处理的误差数据大小的位元深度。因此,该已预处理的第一样本的两大小位元分别显示为BI,I (为MSB)和BI,0(为LSB)。通过沿着如图5A揭露的该位元平面的箭头指示的方向扫描该第一样本数据的MSB至最后样本数据的LSB,产生该有序数据。因此,图5A的范例中的有序数据为{BI,1;B2,1;B3,1;B1,0;B2,0;B3,0}
ο
[0027]本发明的一 BPC的一实施例描述了使用符号和大小来表示误差数据。当依据该误差数据的大小部份,填补该有序数据至该残留的位元预算时,该误差数据的符号(sign)部分也必须被考虑。依据本发明一实施的误差数据的符号部分的编码装置宣称,对于该第二位元流,对于每一误差数据,将对应的符号位元插入误差数据大小的第一个遇到的“I”位元之后。举例来说,正数的符号位元被编码成位元“0”,而负数的符号位元被编码成“I”。一样本值为“_4”包括一符号位元“I”和大小“4”。该大小可以被编码成常规的二进制表示。因此,该大小可以被表示为“100”(若3-位元位元深度被使用)。该符号位元(即“I”)被插入在二进制表示的大小的第一个非O位元(“I”)后面。因此,依据本发明,一值“_4”插入符号位元可表示为“1100”。在位元平面编码中,每一个数据样本的数据自位元平面的MSB至LSB被编码。该第一 “ I ”位元及其接下来的符号位元被认为位元平面扫描的一实例,其中,该接下来的符号位元应总被包含在该BPC位元流中。需明白的是,该符号位元的定义也可以被逆定义,正数符号为“1”,负数符号为“0”,其余的处理无须改变。上述范例描述了合并该符号位元至使用位元平面编码的大小部分。本领域通常知识技艺者可以使用其他的装置插入该符号位元以执行本发明。举例来说,每一误差数据的符号位元可与该误差数据的大小一同被存储在一预决定位置(pre-determined location),如大小的二进制数据的开始或者末端或者与该误差数据的大小分离。当该误差数据的第一“I”位元被包含在该BPC位元流中,相关的符号位元被立即插入到该第一“ I”位元后。在该误差数据的符号与大小均被编码以填补该残留的位元预算后,位元平面编码位元流(即该第二位元流)被合并至该有损压缩的输出位元流(即该第一位元流)。更进一步,基于二进制表示的其他符号-大小也可被用于执行本发明。举例来说,依据传统的二进制表示(如:位元深度为3,5->”101”和3->”011”)的该大小的位元可以逐位元被反向(如:5->”010”及3->”100”),且该符号位元可以被插入在该第一“O”位元后,这将导致使用上述传统的二进制表示相同的效果。
[0028]图5B揭露了一包含大小位元和符号位元的位元平面编码的范例,其中,该AU包含三个误差样本,相应的为“2”,“O”及“-1”,且该位元深度的大小为2。依据上述的一实施例,该三个误差样本将被第一编码成“1,0(s),0”,“0,O,,及“0,I, I (s) ”,其中后面接“ (s) ”的位元表示符号位元。进一步,该第一“I”位元和其接下来的符号位元被下划线标示以强调当该第一 “ I ”位元被包含在该BPC位元流中,该符号位元也被包含在BPC位元流中。下一步骤是自MSB至LSB扫描该误差样本,且相应在误差数据的大小位元的第一非O ( “I”)位元后插入该符号位元。因此,导致该位元流为{1,O(S), 0,0,0,0,1,I (S)}。如果该残留的位元预算为5位元,然后该第二位元流是前5位元,即{1,0(s), 0,O, 0}。该最后的3位元,S卩{0,l,l(s)}被忽视。如果该第一“I”位元被包含在该BPC位元流中,且无更多的残留的位元预算在其后有效以包含该符号位元,则该第一 “ I ”位元及其接下来的符号位元被忽视。在这种情况下,该第一“ I ”位元并不需要被包含在该BPC位元流内,或者若其被包含在该BPC位元流内,解码器将忽视他。
[0029]图6揭露了依据本发明的一实施例解码器解码EPC压缩位元流的范例。解码单元的输入缓存610包含第一位元流和第二位元流的数据。该第一位元流611藉由有损数据解压缩单元620解码以提供一第一重建数据621。因为该第一位元流被长度可变编码,该第一位元流的大小并不固定。取决于长度可变编码技术的使用,该第一位元流和该第二位元流之间的分隔符可能不被知晓,直至该第一位元流被解码。举例来说,当一访问单元的所有数据被解码,该第一位元流的末段被决定。依据本发明的一实施例,该有损数据解压缩单元620可以在其解码该第一位元流后,决定该第一位元流的大小。该第一位元流的大小信息(或者该第一位元流的末端信息)622被用于识别该第二位元流。作为替换的,一标识相应于(End of Block,Ε0Β)可被用于指示该第一位元流的末端。在一些情况下,该系统可使用一个独特的码字作为该第一位元流和第二位元流之间的分隔符。因此,该第二位元流可以被识别而无须解码该第一位元流,且同时解码该第一位元流和第二位元流成为可能。因为该第一位元流可能用完该有效的位元预算,该访问单元可能不存在该第二位元流。如果该访问单元存在该第二位元流,该第二位元流612被该误差平面解码单元650解码以获得重建误差数据651。该重建误差数据651随后藉由该加法器630被加至该第一重建数据621以产生解码数据,即图6显示的重建访问单元640。如果该第二位元流不存在,该第一重建数据621被用于作为该重建访问单元640。
[0030]图7揭露了对图5B所示的BPC位元流进行位元平面解码的范例。位元平面解码为位元平面编码的逆处理。依据本发明的一实施例自大小位元的最高有效位至最低有效位解码该已被位元平面编码的误差数据。每一样本数据的第一非O大小位元后的一位元为舆该将被解码的样本数据相关的符号位元。该第二位元流是由图5B的范例产生的,即,{1,0,0,0,0}被用于重建该误差数据及。该第二位元流的位元被分配至该重建误差数据在位元平面内的自MSB至LSB的位元位置。对于每一样本数据的第一 “ I ”位元后面接着的被插入的位元为一符号位元。因此,在步骤A中,该第一 “I”位元及其接下来的位元(即“O”)被分配至相应于该第一样本数据的MSB及符号位元的位元位置。在步骤b中,下一位元(即,“O”)被分配至相应于该第二样本数据的MSB的位元位置。在步骤c中,再下一位元(即,“O”)被分配至相应于该第三样本数据的MSB的位元位置。在步骤d中,该最后位元(即,“O”)被分配至相应于该第一样本数据的LSB的位元位置。在步骤d后,没有更多的有效位元可分配该重建误差数据。这些空的位元位置将被一默认值(即O)填满,如图7所示的“(O) ”。作为替换的,该重建误差数据的位元位置可以初始化为默认值,如所有的为O,则无需填满未被分配的位元位置。因此,该重建数据为{2,O,O}。
[0031]本领域的通常知识技艺人员依据本发明上下文所描述的实施方式可以执行本发明,且本领域的通常知识技艺人员可依据本发明对实施方式进行多种修改。且本发明的总体精神可以应用至其他实施方式。因此,本发明并不限制于上述实施方式,其包括依本发明揭露的精神和新颖的特征产生更广泛的范围。在上述细节描述中,多种特定的细节描述是为了提供本发明最深入的理解。本领域的通常知识技艺者能够明白本发明可以被实施。
[0032]虽然本发明已就较佳实施例揭露如上,然其并非用以限制本发明。本发明所属【技术领域】中普通技术人员,在不脱离本发明的精神和范围内,当可作各种的变更和润饰。因此,本发明的保护范围当视之前的权利要求书所界定为准。
[0033]上述依据本发明的合并位元平台编码误差数据的数据压缩的实施方式可通过多种硬件、软件码或上述结合实现。举例来说,本发明的一实施例可为电路集成到视频压缩芯片,或者程序码集成到视频压缩系统,以进行相应处理。该DRAM记忆体可以为图像或者视频压缩芯片的外部记忆体或者这些芯片的内部记忆体,或者其他形式的记忆体,如FPGA(field programmable gate array)内部记忆体。本发明的一实施例也可为集成在程序码在图像或者视频压缩/解压缩软件上执行在CPU、数字信号处理器(Digital SignalProcessor, DSP)以进行相应处理。本发明还可包含一系列功能,并由电脑处理器、数字信号处理器、微处理器、现场可编程门阵列(Field Programmable Gate Array, FPGA)执行。通过执行定义本发明实施例的机器可读软件码或韧件码,上述处理器可根据本发明执行特定任务。软件码或韧件码可在不同程序语言和不同格式或方式中进行。软件码可编译成不同的目标平台。不过,不同的编码格式、方式和软件码语言,以及与本发明有关的使码执行任务的其它方法均符合本发明的精神,落入本发明的保护范围。
[0034]虽然本发明数据压缩及解压缩已以较佳实施例揭露如上,可被实施在多种可读软件码或韧件码或者其结合。然其并非用以限定本发明,任何熟悉此项技艺者,在不脱离本发明之精神和范围内,当可做些许更动与润饰,因此本发明之保护范围当视后附之申请专利范围所界定者为准。
【权利要求】
1.一种图像数据的压缩方法,该方法包括: 接收图像数据,其中该图像数据被分割成多个访问单元; 应用第一数据压缩至每一访问单元,为该每一访问单元产生第一位元流,其中该第一位元流的大小小于或等于该每一访问单元的目标位元预算; 响应该第一数据压缩的结果,应用第二数据压缩至该每一访问单元的误差数据,为该每一访问单元产生第二位元流,其中,该误差数据对应该每一访问单元的原始数据与第一重建数据之间的差异,该第一重建数据对应该每一访问单元的第一数据压缩; 提供该第一位元流;及 若该第二位元流存在,提供该第二位元流。
2.如权利要求1所述的压缩方法,其特征在于,若该第一位元流的大小等于该目标位元预算,该应用该第二数据压缩至该访问单元的误差数据的步骤被跳过。
3.如权利要求1所述的压缩方法,其特征在于,若该第一数据压缩导致一无损压缩,该应用该第二数据压缩至该访问单元的误差数据的步骤被跳过。
4.如权利要求1所述的压缩方法,其特征在于,该第二数据压缩包括位元平面编码应用于位元平面顺序数据,其中该位元平面顺序数据是以位元平面顺序扫描该误差数据的最高有效位至最低有效位形成。
5.如权利要求4所述的压缩方法,其特征在于,该第二数据压缩进一步包括在进行该位元平面编码之前执行误差数据预处理。
6.如权利要求5所述的压缩方法,其特征在于,该误差数据预处理包括剪辑处理、数据量化处理、数据滤波处理、数据舍入处理或者这几种处理的集合。
7.如权利要求4所述的压缩方法,其特征在于,该误差数据的每一样本数据被表示为符号和大小,其中该符号被表不为一符号位兀,且该大小被表不为一个或多个大小位兀。
8.如权利要求7所述的压缩方法,其特征在于,如果该一个或多个大小位元包含一个“ I ”,相应于该样本数据的符号位元被插入在该一个或多个大小位元的第一个“ I ”位元后,且使用该一个或多个大小位元及该插入的符号位元作为二进制来表示该样本数据;否则使用相应于该样本数据的该一个或多个大小位元作为二进制来表示该样本数据。
9.如权利要求4所述的压缩方法,其特征在于,该位元平面顺序数据的前N位元被使用作为该第二位元流,且其中N为一整数,相应于访问单元的第一位元流的大小与目标位元预算之间的差异。
10.如权利要求9所述的压缩方法,其特征在于,该位元平面顺序数据超出该前N位元的位元被忽视。
11.如权利要求1所述的压缩方法,其特征在于,该访问单元的该第二位元流被附加至该访问单元的该第一位元流。
12.如权利要求1所述的压缩方法,其特征在于,该访问单元的第一重建数据是使用第一数据解压缩解码该访问单元的第一位元流产生的。
13.一种图像数据的解压缩方法,该方法包括: 接收与图像数据的访问单元相关的位元流,其中该位元流包括第一位元流,且该依据该第一位元流的情况,该位元流进一步包括第二位元流; 使用第一数据解压缩解码该第一位元流,以产生对应于该访问单元的第一重建数据;如果该第二位元流存在,使用第二数据解压缩解码该第二位元流,以产生第二重建数据,其中,该第二重建数据对应于该误差数据,该误差数据相应于该访问单元的原始图像数据与该访问单元的该第一重建数据之间的差异; 若该第二位元流存在,合并该第一重建数据及该第二重建数据以产生该访问单元的最终重建数据;否则使用该第一重建数据作为该访问单元的最终重建数据;及为该访问单元提供该最终重建数据。
14.如权利要求13所述的解压缩方法,其特征在于,该第一位元流的总大小小于或等于该访问单元的目标位元预算。
15.如权利要求13所述的解压缩方法,其特征在于,该第一位元流的情况对应于该第一位元流的大小小于该访问单元已知的位元预算。
16.如权利要求13所述的解压缩方法,其特征在于,该合并该第一重建数据与该第二重建数据的步骤对应于求和该第一重建数据与该第二重建数据。
17.如权利要求13所述的解压缩方法,其特征在于,该第二数据解压缩对应位元平面解码,且该位元平面解码解压缩该第二位元流是通过以位元平面顺序自最高有效位置到最低有效位置分配该第二位元流至该第二重建数据。
18.如权利要求17所述的解压缩方法,其特征在于,该第二重建数据的一个或多个位元位置没有被分配到该第二位元流的位元则被分配一默认值。
19.如权利要求17所述的解压缩方法,其特征在于,如果一“I”位元第一次被分配至该第二重建数据的一样本数据,该第二重建数据在该“ I ”位元后的位元被分配至该样本数据的一符号位兀。
20.如权利要求13所述的解压缩方法,其特征在于,该第一数据解压缩在解压该第一位元流后决定该第一位元流的大小。
21.一用于图像数据压缩的装置,该装置包括: 一模块,用于接收图像数据,其中该图像数据被分割成多个访问单元; 一数据压缩单元,应用第一数据压缩至每一访问单元,为该访问单元产生第一位元流,其中该第一位元流的大小小于或等于该访问单元的目标位元预算; 一误差平面编码单元,响应该第一数据压缩的结果,应用第二数据压缩至该访问单元的误差数据,为该访问单元产生第二位元流,其中,该误差数据对应该访问单元的原始数据与第一重建数据之间的差异,该第一重建数据对应该访问单元的第一数据压缩; 一模块,用于提供该第一位元流;及 若该第二位元流存在,提供该第二位元流。
22.一用于图像数据解压缩的装置,该装置包括: 一模块,接收与图像数据的访问单元相关的位元流,其中该位元流包括第一位元流,且该依据该第一位元流的情况,该位元流进一步包括第二位元流; 一数据解压缩单元,使用第一数据解压缩解码该第一位元流,以产生对应于该访问单元的第一重建数据; 一误差平面解码单元,如果该第二位元流存在,使用第二数据解压缩解码该第二位元流,以产生第二重建数据,其中,该第二重建数据对应于该误差数据,该误差数据相应于该访问单元的原始图像数据与该访问单元的该第一重建数据之间的差异;一模块,用于若该第二位元流存在,合并该第一重建数据及该第二重建数据以产生该访问单元的最终重建数据;否则使用该第一重建数据作为该访问单元的最终重建数据;及一模块,用于为该访问单元提供该最终重建数据。
23.如权利要求22所述的装置,其特征在于,该第一位元流的总大小小于或等于该访问单元的一目标位元预·算。
【文档编号】H04N19/42GK103716634SQ201310456221
【公开日】2014年4月9日 申请日期:2013年9月29日 优先权日:2012年10月2日
【发明者】周汉良, 吴东兴, 李坤傧, 朱启诚 申请人:联发科技股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1