CN103297768A - 用于视频和图像压缩的并行金字塔熵编码 - Google Patents

用于视频和图像压缩的并行金字塔熵编码 Download PDF

Info

Publication number
CN103297768A
CN103297768A CN2012105766569A CN201210576656A CN103297768A CN 103297768 A CN103297768 A CN 103297768A CN 2012105766569 A CN2012105766569 A CN 2012105766569A CN 201210576656 A CN201210576656 A CN 201210576656A CN 103297768 A CN103297768 A CN 103297768A
Authority
CN
China
Prior art keywords
piece
sub
pixel groups
divided
code block
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN2012105766569A
Other languages
English (en)
Other versions
CN103297768B (zh
Inventor
张雷
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Avago Technologies International Sales Pte Ltd
Original Assignee
Zyray Wireless Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zyray Wireless Inc filed Critical Zyray Wireless Inc
Publication of CN103297768A publication Critical patent/CN103297768A/zh
Application granted granted Critical
Publication of CN103297768B publication Critical patent/CN103297768B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

本发明涉及用于视频和图像压缩的并行金字塔熵编码,提供了将诸如图像或视频数据的量化系数的块的代码块划分为更小的块和子块的方法、系统以及计算机程序产品,该更小的块和子块能够使用分层的熵编码和解码方案来并行地处理。本划分在仍然使用同一分层的熵编码方案来编码整个代码块的同时实现。

Description

用于视频和图像压缩的并行金字塔熵编码
技术领域
本公开总体上涉及视频处理,并且更具体地,涉及视频编码技术。
背景技术
视频编码中的许多处理都涉及串行比特流的处理。为了编码或解码比特流,这些自身绑定至串行操作的处理需要更强力的处理器来有效地完成此目的。
尤其是,当处理串行数据时,时钟速度成为了限制因素。如果在能够解析(分辨,resolve)下一条数据之前需要先处理各条数据,那么可以通过增加处理时钟速度来(通常线性地)增加系统速度。然而,高时钟速度需要额外的功耗和散热。
因此,希望提供一种可并行化编码技术。
发明内容
本发明提供了一种方法,包括:将代码块划分为像素组;将像素组划分为子块;以及使用用于代码块的分层编码方案来将分配给子块的像素编码。
优选地,将代码块划分为像素组包括:将代码块划分为四个等尺寸的像素组。
优选地,将像素组划分为子块包括:确定一组群集样式;以及选择用于配置像素组之一的相应子块的群集样式。
优选地,选择群集样式包括:确定用于每个子块的最小和最大代码尺寸;以及确定用于相应像素组的子块的最小尺寸配置。
优选地,该方法还包括:使用分层熵编码方案来将用于子块和像素组的代码尺寸存储在所编码的流中。
优选地,该方法还包括:接收包括代码块的数据流;使用代码尺寸和分层的解码方案来将代码块分开为像素组;使用代码尺寸来将像素组分开为子块;以及并行地解码子块。
本发明还提供了一种计算机可读存储装置,其上存储有指令,指令通过计算装置来执行,指令的执行使计算装置执行以下操作,包括:将代码块划分为像素组;将像素组划分为子块;以及使用用于代码块的分层编码方案来将分配给子块的像素编码。
优选地,将代码块划分为像素组包括:将代码块划分为四个等尺寸的像素组。
优选地,将像素组划分为子块包括:确定一组群集样式;以及选择用于配置像素组之一的相应子块的群集样式。
优选地,选择群集样式包括:确定用于每个子块的最小和最大代码尺寸;以及确定用于相应像素组的子块的最小尺寸配置。
优选地,操作还包括:使用分层的熵编码方案来将用于子块和像素组的代码尺寸存储在编码的流中。
优选地,操作还包括:接收包括代码块的数据流;使用代码尺寸和分层的解码方案将代码块分开为像素组;使用代码尺寸来将像素组分开为子块;以及并行地解码子块。
本发明还提供了一种系统,包括:编码器,存储在存储器中并且被配置为执行以下操作,包括:将代码块划分为像素组,将像素组划分为子块,以及使用用于代码块的分层编码方案来将分配给子块的像素编码;以及一个以上的处理器,被配置为处理编码器。
优选地,将代码块划分为像素组包括:将代码块划分为四个等尺寸的像素组。
优选地,将像素组划分为子块包括:确定一组群集样式;以及选择用于配置像素组之一的相应子块的群集样式。
优选地,选择群集样式包括:确定用于每个子块的最小和最大代码尺寸;以及确定用于相应像素组的子块的最小尺寸配置。
优选地,编码器还被配置为进行以下操作,包括:使用分层的熵编码方案将用于子块和像素组的代码尺寸存储在所编码的流中。
优选地,该方法还包括:解码器,被配置为执行以下操作,包括:接收包括代码块的数据流,使用代码尺寸和分层的解码方案将代码块分开为像素组,使用代码尺寸来将像素组分开为子块,以及并行地解码子块。
附图说明
结合在本文中并形成说明书的一部分的附图示出了本公开的实施方式,并且还与描述一起用于解释本公开的原理以及用于使本领域内的技术人员能够实现和使用所公开的实施方式。
图1示出了示例性熵编码标准。
图2是示出了根据本公开的实施方式的去除代码块相互依赖性的步骤的处理的流程图。
图3是示出了根据本公开的实施方式的可以将代码块划分为像素组(子块)的步骤的编码处理的流程图。
图4示出了根据本公开的实施方式的将代码块划分为块和子块的方式。
图5是示出了根据本公开的实施方式的解码步骤的处理的流程图。
图6示出了可以实现本公开的实施方式的示例性计算机系统。
本公开的实施方式将通过参考附图来详细描述。在附图中,相似的参考标号通常表示相同或功能相近的元件。此外,参考标号的最左边的数字通常表示该参考标号第一次出现的附图。
具体实施方式
I.介绍
以下详细描述参考了示出示例性实施方式的附图。其他的实施方式也是可能的,并且可以在本公开的实质和范围内对实施方式进行修改。因此,详细描述不旨在限制本发明。相反地,本发明的范围由所附权利要求来限定。
对本领域内的技术人员显而易见的是,本公开可以以诸如软件、硬件、固件和/或附图中所示的实体的不同的实施方式来实施。任何具有对实现本公开的硬件的具体控制的实际软件代码都不限于本公开。因此,将在理解实施方式的修改和变形都为可能的条件下,并且在本公开的实质和范围内来描述本公开的操作行为。
在说明书和权利要求书中的对模块的提及意味着用于执行所指示的功能的硬件、固件或软件成分的任意组合。模块不需要是严格定义的实体,这使得几个模块可以将硬件和软件成分在功能上重叠。例如,软件模块可以指在程序内的一行代码,该程序本身是单独的软件程序。本领域内的技术人员将理解的是可以根据例如多种格式或性能优化技术来定义模块的功能。
根据公开的实施方式,提供了用于将代码块划分为像素组,用于将像素组划分为子块,以及使用用于代码块的编码方案来将分配给子块的像素编码的方法、计算机可读存储装置和系统。
本公开此外的特征和优点,还有本公开的各种实施方式的结构和操作,都在以下通过参考附图来详细描述。应注意,本公开不限于本文中描述的具体实施方式。这些实施方式在本文中的提出仅用于说明性的目的。基于本文中所包含的教导,另外的实施方式对本领域内的技术人员也是显而易见的。
图1示出了示例性熵编码标准100(现有技术)。诸如霍夫曼编码的熵编码是依赖于相应的可变长度的无前缀码字(或简单的“代码”)来表示每个固定长度输入的无损数据压缩技术。例如,如编码标准100中所示,在数据流中提供了一组像素104a、104b、104n(统称为像素104)。每个像素都可以由例如包括该像素的颜色强度信息的数据的24比特来表示(例如,8比特的数据用于红色,8比特的数据用于绿色,8比特的数据用于蓝色)。然而,虽然数据的24比特可以表示1678万个不同的值,但是像素块(例如,在图像内的16×16像素区域)只会每像素至多具有一个不同的值(例如,256个可能的值)。此外,尤其是在应用了有损压缩算法之后(例如,通过减少像素数据可以解析的唯一值的数量),一些重复很可能意味着一些像素可以具有相同的量化系数值。
例如,假设在16×16的像素块中的全部像素都具有从只有三种可能的颜色的调色板中选择的颜色。在这种情况下,熵编码可以仅使用最多二比特的数据(例如,‘00=红色’,‘01=蓝色’,‘1=黄色’)来表示四种可能的值。在编码阶段期间,这些编码使用已知的编码技术来确定(诸如霍夫曼编码)。应注意,在熵编码中,如本领域的技术人员应当理解的,编码长度是可变的。在以上示例中,在编码序列的起始处检测到‘1’之后,颜色就会被确定为黄色——数据的下一比特将是新代码的开始。在编码序列的起始处的代码‘0’仅将概率减小至‘红色’或‘蓝色’,这取决于数据的下一比特。
为了导航的简单,该行为通常包括在诸如树的数据结构中。例如,诸如“1001010111011”的代码序列应当被翻译为‘黄色’(1)、‘红色’(00)、‘黄色’(1)、‘蓝色’(01)、‘蓝色’(01)、‘黄色’(1)、‘黄色’(1)、‘蓝色’(01)、‘黄色’(1)。编码本身(例如,诸如树的数据结构)可以与所编码的数据一起被设置为前缀代码列表102。然后,各个像素104仅包括唯一地表示其前缀代码所需的数量的数据比特。
该方法的严重缺陷是全部编码序列都必须被串行(顺序)地解码。因为像素间的分割是提前未知的,所以不可能例如用第一处理线程对首先的X个像素解码,以及用第二处理线程对其次的Y个像素解码。例如,跳至以上示例代码序列的中间(例如,‘111011’)并且照常对其解码会将‘黄色’(1)生成为第一个值。然而,这第一个‘1’实际上是用于‘蓝色’(01)的编码的一部分,但是在没有串行处理全部的序列的条件下这是不可能确定的。
II.并行化技术
如上所述,现有的解码技术必须串行处理。为了了解对随后的像素解码所需要的信息,必须解码先前的像素。因此,为了实现并行,需要一种技术来去除该相互依赖性。
图2是示出了根据本公开的实施方式的去除代码块相互依赖性的步骤的处理200的流程图。虽然本领域内的技术人员应当理解本文中描述的技术可以以任何等级(例如,以在独立图像中的相互依赖的代码块、以在独立流中的相互依赖的图像等)来应用,但是例如,但不限于,在图像或图像序列中代码块(例如,16×16的像素块)与其他代码块独立。
本方法开始于步骤202并且进行至将代码块(例如,图像被划分为16×16的代码块)划分为像素组的步骤204。例如,完整的图像可以被划分为独立的16×16的代码块,该16×16的代码块继而被划分为8×8的像素组,并且8×8的像素组可以被划分为四个4×4的像素组。在步骤206中,做出是否对新的像素组进行进一步的划分的决定。如果是,那么本方法进行至步骤204从而进一步地划分像素组(例如,每个4×4的像素组可以更进一步地划分为四个2×2的像素组;四个4×1的像素组;一个2×1、一个2×3和两个1×4的像素组的组合;等)。本领域内的技术人员应当理解的是步骤204中进行的划分可以视情况由相同的模块或几个不同的模块处理。
如果没有请求进一步的划分,那么本方法进行至在各层提供本地前缀代码的步骤208。本方法随后结束于步骤210。根据本发明的实施方式,每次划分根据层号来命名。全部图像的第一级划分的代码块包括“层0”。第一组像素组(例如,划分16×16的代码块的8×8像素组)包括“层1”等。在以上示例中,采用了层0至3。
III.划分代码块
根据本公开的实施方式,每个代码块都包括用于表示块内的像素值的一组量化系数。本领域内的技术人员将理解的是代码块可以包含额外的或不同的数据,并且量化系数的使用以示例而非限制的方式来提供。具体地,尽管系数通常被量化,但是它们可以是非量化的。因此,公开的实施方式还预期以一组非量化的系数来工作。
根据本公开的实施方式,代码块根据“群集样式(cluster pattern)”来划分,该群集样式(图案)诸如如上所述4×4的像素组可以被划分为四个2×2的像素组,四个4×1的像素组,一个2×1、一个2×3以及两个1×4的像素组的组合,或诸如三角形、对角线或L形样式的其他样式。不管使用什么样式,编码器都会通过例如将群集样式信息嵌入在块或子块的前缀中来告知解码器选择了哪个样式,否则该样式应当提前由解码器得知。
图3是示出了根据本公开的实施方式的可以将代码块划分为像素组(子块)的步骤的编码处理300的流程图。本领域内的技术人员应当理解的是可以应用各种技术以不同等级来分割块,并且本文中描述的技术以示例而非限制的方式来提供。例如,4×4代码块可以被划分为四个2×2代码块——实现方式始终可以选择进行这种特定的划分,或可以采用以下进一步详细描述的群集样式。
为了本文中概述的示例的目的,代码块包括最终被划分为4×4块(例如,16×16的代码块被划分为8×8的像素组,每个8×8的像素组被划分为4×4的像素组)的几个像素组。如以下描述的,每个4×4块都被划分为进一步的子块。
本方法开始于步骤302并且进行至确定要分析的可能的群集样式的步骤304。例如,如果在四个2×2子块或四个4×1子块之间选择,那么具有两个待分析的群集样式。本领域内的技术人员将理解的是多个群集样式是可用的,并且所分析的样式可以包括这些样式的任何子集。此外,可以使用特定的样式而不进行任何分析。
在步骤306中,对于给定群集样式确定用于子块的最小和最大尺寸。例如,通过四个2×2子块的群集样式,用于编码每一个子块的最大代码尺寸被确定。然后,通过四个2×2子块的组集,最小代码尺寸(即,对于具有最小代码尺寸的单独子块的代码尺寸)与最大代码尺寸(即,对于具有最大代码尺寸的单独子块的代码尺寸)一起被确定。
根据本公开的实施方式,对用于各个子块的代码尺寸的确定通过找到两者的每个量化系数的补码尺寸(complement size)来完成,尽管本领域内的技术人员将理解本技术可以被不同地应用于其他数据,或可以使用不同的技术来找到全部的量化系数的代码尺寸。可以基于通过应用特定代码表示量化系数所需的字节来确定子块的最大和最小尺寸。根据本发明的实施方式,由编码技术领域中的技术人员来选择代码从而编码独立的量化系数。如上所述,该信息用于确定相应的群集样式的最小和最大尺寸(即,该组子块的最小和最大代码尺寸)。
在步骤308中,将各种群集样式的尺寸与其他群集样式相比较。根据本公开的实施方式,通过将用于编码全部量化系数的全部代码尺寸和用于编码群集样式的前缀代码尺寸相加,基于最小化用于块(例如,4×4块)的比特总数来选择来自一组可用群集样式的群集样式。例如,可以做出使用四个2×2子块将比使用四个4×1子块需要更少的比特来表示整个块的决定。
在步骤310中,如以下描述地存储关于所选配置的前缀代码信息,并且本方法结束于步骤312。作为非限制性的示例,需要1至4比特来编码在左上4×4块的系数的最大尺寸与在该4×4块中的每个子块的系数的最大尺寸之间的差异,同时可以需要1或3比特来编码对于其余的4×4块的上述差异。本算法可以将2比特用于左上的4×4块从而规定被用于对用于编码上述差异(即在左上4×4块的系数的最大尺寸与该4×4块中样式的每个子块的系数的最大尺寸之间的差异)的比特数量进行编码的比特数量,以及将1比特用于其余的4×4块从而规定被用于对用于编码上述差异的比特数量进行编码的比特数量,即,将用于对其余的4×4块的上述差异进行编码的1或3比特。
根据本公开的实施方式,群集(诸如4×4块)的尺寸(会被用于编码的比特的数量)被编码为在较上层(诸如包含该4×4块的8×8块)中的前缀的一部分,使得当解码器解码该比特流时,能够与提取用于编码其他群集的全部比特并行地提取用于编码该群集的全部比特。将同样的想法应用于以上示例中的低于该群集等级(例如,对于2×2子块(层3)的4×4块层(层2))的层(诸如组成群集4×4块的四个2×2子块)中,其中用于编码每个子块的比特数量被编码为4×4块中的前缀的一部分。
转至图4,作为与本公开的实施方式一致的非限制性示例,8×8代码块402被示出为划分为四个4×4块。根据本公开的实施方式,四个块404a、404b、404c和404d都各自根据群集或分割样式被进一步地划分为子块。
在块404a的情况中,子块405被示出为2×2块。根据本公开的实施方式,块404a的所有子块405的尺寸都一致。在如以上所述确定子块405的最大尺寸之后,将其与块404a的其他子块的最大尺寸相比较从而确定子块的最大(和最小)尺寸。与以上示例一致,在块404a的最大尺寸和各个子块的最大尺寸之间的差可以需要1至4比特来用于编码。因此,2比特专门用于规定需要多少比特(从1到4)来编码以上的差异。
将最大尺寸编码为图3中描述的尺寸的处理在块级进行,其中每个4×4块即404a、404b、404c和404d的最大样式尺寸也都被编码。
图4在示图的左手侧示出了根据本公开的实施方式的术语为并行金字塔熵编码(“PPEC”)的算法。该名称来源于被展开的本示图看上去会像金字塔形的概念,其中以编码的像素数据410为基础,子块数据408为中间层并且块数据406为顶层。在每一层中,所有的块或子块都可以被并行地编码和解码。
如图4中所示,各个子块都包括编码的像素数据。如上所述,各个块包括的数据具有用于限定比特(其用于编码在块的最大尺寸与该块内的各个子块的最大尺寸之间的差异)数量的比特,以及编码子块数据的比特。全部的代码块数据包括每个块的最大尺寸,还有用于编码像素数据的前缀代码(例如,霍夫曼编码方案)。本领域内的技术人员应当理解虽然本示图示出了上述各种成分,但是这些成分不需要以图4中所示的特定顺序出现。此外,如早先论述的,可以引入额外的层来提供子块和子子块的更细致的划分。此外,可以采用其中特定的块被划分为子块,但是其他的块被串行编码而不进行进一步划分的混合方法。本领域内的技术人员应当理解的是这些改变及其他都在本公开的实质和范围内。
V.解码器侧操作
以前述方式来构造代码块将极大地有利于解码器的尺寸。根据本公开的实施方式,对与以上描述一致的方式来构造的代码块进行操作的解码器可以并行地处理代码块,并且甚至可以并行地处理独立的子块。
在先前的串行操作中,需要按顺序将代码块内的各个符号解码。然而,通过如本文中描述将代码块分解为层,可以并行地解码多个符号(例如,像素组、字符组或可解码数据的其他组),这为以可相比的时钟速度运行的串行处理解决方案提供了量级上的改进。可选地,可以使用较低的时钟速度获得相同的处理速度,这导致了高能量效率。
为了将如上所述的由编码器包括的信息从整体的代码块解析为分离的块和子块而构造解码器。这意味着例如解码器应当能够了解在代码块中存在多少划分的层,采用了什么群集样式等。全部该数据都在报头块中的某处规定或遍及代码块而展开。
图5是示出了根据本公开的实施方式的解码步骤的处理500的流程图。本方法开始于步骤502并且进行至将块代码数据划分为独立块成分(例如,图4的块404a、404b、404c和404d)的步骤504。在步骤506中,根据本公开的实施方式,各个块进一步分为子块(例如,图4的子块405)。应注意,因为以上的层(例如,用于层2解码的层1)限定了被解码层的代码尺寸,所以在步骤506中对各个块的处理可以并行地进行。此外,因为限定并且已经解码了各个子块的尺寸,所以在步骤508中并行地实行对各个子块的解码。该方法结束于步骤510。
VI.示例性计算机系统实现方式
本公开的各方面可以由软件、固件、硬件或它们的组合来实现。图6示出了本公开或其部分可以实现为计算机可读代码的计算机系统600的示例。例如,处理200(图2)、处理300(图3)和处理500(图5)可以在系统600中实现。本公开的各种实施方式都依照该示例性计算机系统600来描述。在读完本描述后,怎么使用其他的计算机系统和/或计算机架构来实现本公开对本领域内的技术人员而言应当是显而易见的。
计算机系统600包括诸如处理器604的一个以上的处理器。处理器604可以是专用目的或一般目的的处理器。处理器604连接至通信基础设施606(例如,总线或网络)。
计算机系统还包括主存储器608,优选为随机存取存储器(RAM)并且还可以包括第二存储器610。第二存储器610可以包括例如硬盘驱动器612、可移除存储驱动器614和/或存储棒。可移除存储驱动器614可以包括软盘驱动器、磁带驱动器、光盘驱动器、闪速存储器等。可移除存储驱动614以众所周知的方式从可移除存储单元615中读取和/或写入至可移除存储单元615。可移除存储单元615可以包括由可移除存储驱动614读取并且写入的软盘、磁带、光盘等。如本领域内的技术人员应当了解的,可移除存储单元615包括计算机可用存储介质,该计算机可用存储介质具有存储在其中的软件和/或数据。
在可选的实现方式中,第二存储器610可以包括其他类似地装置以用于允许将计算机程序或其他指令装载在计算机系统600中。这样的装置可以包括,例如可移除存储单元622和接口620。这样的装置的示例可以包括程序盒以及盒式接口(诸如在视频游戏装置中出现的)、可移除存储器芯片(诸如EPROM或PROM)和关联的针槽(socket)、以及其他的诸如可移除存储单元622的可移除存储单元以及允许软件和数据从可移除存储单元622中传输至计算机系统600的诸如接口620的接口。
计算机系统600还可以包括通信接口624。通信接口624允许软件和数据在计算机系统600和外部装置之间传输。通信接口624可以包括调制解调器、网络接口(诸如以太网卡)、通信端口、PCMCIA卡槽(slot)和卡等。经由通信接口624传输的软件和数据可以是电子的、电磁的、光学的信号或者能够由通信接口624接收的其他信号的形式。这些信号经由通信路径626而提供给通信接口624。通信路径626运载信号并且可以使用线路或线缆、光纤、电话线、蜂窝电话链路、RF链路或其他通信信道来实现。
在本文中,术语“计算机程序介质”和“计算机可读介质”用于一般地指诸如可移除存储单元615、可移除存储单元622和安装在硬盘驱动器612中的硬盘的介质。在通信路径626上运载的信号也可以体现本文中描述的逻辑。计算机程序介质和计算机可用介质还可以指诸如主存储器608和第二存储器610的存储器,该存储器可以是存储半导体(例如,DRAM等)。这些计算机程序产品是用于将软件系统提供给系统600的装置。
计算机程序(也称为计算机控制逻辑)存储在主存储器608和/或第二存储器610中。计算机程序还可以经由通信接口624来接收。当执行计算机程序时,该计算机程序使计算机系统600能够按照本文中所描述的来实现本公开。尤其是,当执行计算机程序时,该计算机程序使处理器604能够实现本公开的处理,该处理诸如上述的处理200(图2)、处理300(图3)和处理500(图5)中的步骤。因此,该计算机程序表示计算机系统600的控制器。其中,本公开使用软件来实现,可以使用可移除存储驱动器614、接口620、硬盘驱动器612或通信接口624来将该软件存储在计算机程序产品中以及装载在计算机系统600中。
本公开还涉及包括存储在计算机可用介质上的软件的计算机程序产品。这样的软件当在一个以上的数据处理装置中执行时使数据处理装置如本文所述的那样进行操作。本公开的实施方式采用任何现在或将来所知晓的计算可用或可读介质。计算机可用介质的示例包括但不限于主存储装置(例如任何类型的随机存取存储器)、第二存储装置(例如硬盘驱动器、软盘、CD-ROM、ZIP盘、磁带、磁存储装置、光存储装置、MEMS、纳米技术存储装置等)以及通信媒介(例如有线和无线通信网络、局域网、广域网、内联网等)。
VII.结论
应理解,具体说明部分,而非发明内容和摘要部分,旨在用于解释权利要求。发明内容和摘要部分可以提出一个以上的而非全部的由发明人设想的本公开的实施方式,并且因此,发明和摘要部分不旨在以任何方式来限制本公开和所附的权利要求。
在示出具体功能的实现方式的功能构造块和它们的关系的帮助下,在以上描述了本公开。为了表述的方便,在本文中任意地定义了这些功能构造块的界限。只要具体的功能和其关系被合适地执行,就可以定义其他的界限。
之前的具体实施方式的描述将完整地体现本公开的一般性质,使得他人在没有进行过度的实验、没有偏离本公开的整体概念的条件下,可以通过运用本领域内的技术知识来容易地修改和/或调整以用于该具体实施方式的各种应用。因此,基于本文中呈现的教导和指导,这些调整和修改旨在处于公开的实施方式的等同物的范围和含义内。应当理解,本文中的措辞和术语为了描述而非限制的目的,这使得本公开的术语或措辞能够依照教导和指导而被技术人员理解。
本公开的外延和范围应当不由上述任何示例性实施方式来限制,而应当只根据所附的权利要求及其等同物来限定。

Claims (10)

1.一种方法,包括:
将代码块划分为像素组;
将所述像素组划分为子块;以及
使用用于所述代码块的分层编码方案来将分配给所述子块的像素编码。
2.根据权利要求1所述的方法,其中,将所述代码块划分为像素组包括:
将所述代码块划分为四个等尺寸的像素组。
3.根据权利要求1所述的方法,其中,将所述像素组划分为子块包括:
确定一组群集样式;以及
选择用于配置所述像素组之一的相应子块的群集样式。
4.根据权利要求1所述的方法,还包括:
使用分层熵编码方案来将用于所述子块和所述像素组的代码尺寸存储在所编码的流中。
5.根据权利要求4所述的方法,还包括:
接收包括所述代码块的数据流;
使用所述代码尺寸和分层的解码方案来将所述代码块分开为像素组;
使用所述代码尺寸来将所述像素组分开为子块;以及
并行地解码所述子块。
6.一种系统,包括:
编码器,存储在存储器中并且被配置为执行以下操作,包括:
将代码块划分为像素组,
将所述像素组划分为子块,以及
使用用于所述代码块的分层编码方案来将分配给所述子块的像素编码;以及
一个以上的处理器,被配置为处理所述编码器。
7.根据权利要求6所述的系统,其中,将所述代码块划分为像素组包括:
将所述代码块划分为四个等尺寸的像素组。
8.根据权利要求6所述的系统,其中,将所述像素组划分为子块包括:
确定一组群集样式;以及
选择用于配置所述像素组之一的相应子块的群集样式。
9.根据权利要求6所述的系统,其中,所述编码器还被配置为进行以下操作,包括:
使用分层的熵编码方案将用于所述子块和所述像素组的代码尺寸存储在所编码的流中。
10.根据权利要求9所述的方法,还包括:
解码器,被配置为执行以下操作,包括:
接收包括所述代码块的数据流,
使用所述代码尺寸和分层的解码方案将所述代码块分开为像素组,
使用所述代码尺寸来将所述像素组分开为子块,以及
并行地解码所述子块。
CN201210576656.9A 2012-02-29 2012-12-26 用于视频和图像压缩的并行金字塔熵编码 Active CN103297768B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13/408,404 US9106932B2 (en) 2012-02-29 2012-02-29 Parallel pyramid entropy coding for video and image compression
US13/408,404 2012-02-29

Publications (2)

Publication Number Publication Date
CN103297768A true CN103297768A (zh) 2013-09-11
CN103297768B CN103297768B (zh) 2017-12-29

Family

ID=47630050

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210576656.9A Active CN103297768B (zh) 2012-02-29 2012-12-26 用于视频和图像压缩的并行金字塔熵编码

Country Status (5)

Country Link
US (1) US9106932B2 (zh)
EP (1) EP2635026A3 (zh)
KR (1) KR101443804B1 (zh)
CN (1) CN103297768B (zh)
TW (1) TWI517662B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103596011A (zh) * 2013-11-20 2014-02-19 北京中星微电子有限公司 图像数据的存储处理方法和装置
CN106063278A (zh) * 2013-11-21 2016-10-26 谷歌公司 使用子组块化来对媒体流进行代码转换

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013055500A (ja) * 2011-09-02 2013-03-21 Sony Corp 固体撮像素子およびカメラシステム
JP6511284B2 (ja) * 2015-02-13 2019-05-15 パナソニック株式会社 最小値選択回路、復号器及び最小値選択方法
US11190975B2 (en) 2017-02-13 2021-11-30 Qualcomm Incorporated Feedback techniques for wireless communications
CN112866723B (zh) 2019-11-28 2024-04-19 瑞昱半导体股份有限公司 图像数据处理方法与系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110091121A1 (en) * 2009-10-21 2011-04-21 Sony Corporation Coding apparatus and method
US20120014436A1 (en) * 2010-07-15 2012-01-19 Sharp Laboratories Of America, Inc. Parallel video coding based on block size

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3679083B2 (ja) * 2002-10-08 2005-08-03 株式会社エヌ・ティ・ティ・ドコモ 画像符号化方法、画像復号方法、画像符号化装置、画像復号装置、画像符号化プログラム、画像復号プログラム
US8718140B1 (en) * 2005-05-12 2014-05-06 Visualon, Inc. Encoding video data
US8634456B2 (en) * 2008-10-03 2014-01-21 Qualcomm Incorporated Video coding with large macroblocks
KR101038531B1 (ko) * 2009-06-25 2011-06-02 한양대학교 산학협력단 복호화시 병렬처리가 가능한 영상 부호화 장치 및 방법, 그리고 병렬처리가 가능한 영상 복호화 장치 및 방법

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110091121A1 (en) * 2009-10-21 2011-04-21 Sony Corporation Coding apparatus and method
US20120014436A1 (en) * 2010-07-15 2012-01-19 Sharp Laboratories Of America, Inc. Parallel video coding based on block size

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103596011A (zh) * 2013-11-20 2014-02-19 北京中星微电子有限公司 图像数据的存储处理方法和装置
CN103596011B (zh) * 2013-11-20 2017-07-04 北京中星微电子有限公司 图像数据的存储处理方法和装置
CN106063278A (zh) * 2013-11-21 2016-10-26 谷歌公司 使用子组块化来对媒体流进行代码转换

Also Published As

Publication number Publication date
KR101443804B1 (ko) 2014-11-04
KR20130099863A (ko) 2013-09-06
US9106932B2 (en) 2015-08-11
TWI517662B (zh) 2016-01-11
US20130223536A1 (en) 2013-08-29
TW201336311A (zh) 2013-09-01
EP2635026A2 (en) 2013-09-04
CN103297768B (zh) 2017-12-29
EP2635026A3 (en) 2015-12-16

Similar Documents

Publication Publication Date Title
CN103297768A (zh) 用于视频和图像压缩的并行金字塔熵编码
EP2290985B1 (en) Image decoding apparatus and image coding apparatus
US9749643B2 (en) Encoding/decoding method and apparatus using a tree structure
KR101650115B1 (ko) 계층적 무손실 압축
CN105357540A (zh) 对视频进行解码的方法和设备
WO2015021942A1 (zh) 定宽度变长度像素样值串匹配增强的图像压缩方法和装置
US20150010088A1 (en) Method of Coding and Decoding Images, Coding and Decoding Device and Computer Programs Corresponding Thereto
TWI539793B (zh) 用於解碼行程編碼資料的解碼器與方法
CN104754362B (zh) 使用精细划分块匹配的图像压缩方法
CN103703779A (zh) 使用次分辨率图像的图像压缩
US7511639B2 (en) Data compression for communication between two or more components in a system
CN112352431B (zh) 一种数据编码、解码方法、设备及存储介质
CN102668560B (zh) 嵌入式图形编码:用于并行解码的重排序比特流
CN104429067A (zh) 通过预测当前块的划分进行视频编码的方法、解码方法、编码和解码装置及其相应的计算机程序
CN102497546A (zh) 一种屏幕图像压缩装置及压缩方法
CN112995662B (zh) 一种点云的属性熵编码和熵解码的方法及设备
CN103413287A (zh) 一种jpeg图片合成方法及装置
CN107431827B (zh) 使用调色板编码模式的视频和图像编解码的方法和装置
US20160191937A1 (en) Video data processing system
CN106488245A (zh) 用于对视频数字数据流进行解码的系统和方法
CN110290382A (zh) 一种残差数据编码和解码方法
CN113784147A (zh) 一种基于卷积神经网络的高效视频编码方法及系统
CN113259674A (zh) 用于图像或视频编解码的方法和装置
KR20180029448A (ko) 프로세서 및 프로세서의 데이터 처리 방법
CN105940676A (zh) 能够至少依据一个语法元素解码结果来控制扫描程序的重复次数的解码装置与相关的解码方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 1185486

Country of ref document: HK

TA01 Transfer of patent application right

Effective date of registration: 20170306

Address after: Singapore Singapore

Applicant after: Avago Technologies Fiber IP Singapore Pte. Ltd.

Address before: American California

Applicant before: Zyray Wireless Inc.

TA01 Transfer of patent application right
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20181022

Address after: Singapore Singapore

Patentee after: Annwa high tech Limited by Share Ltd

Address before: Singapore Singapore

Patentee before: Avago Technologies Fiber IP Singapore Pte. Ltd.

TR01 Transfer of patent right
REG Reference to a national code

Ref country code: HK

Ref legal event code: WD

Ref document number: 1185486

Country of ref document: HK