CN103299631B - 处理视频数据拼贴的视频编码器/解码器、方法 - Google Patents

处理视频数据拼贴的视频编码器/解码器、方法 Download PDF

Info

Publication number
CN103299631B
CN103299631B CN201280005158.7A CN201280005158A CN103299631B CN 103299631 B CN103299631 B CN 103299631B CN 201280005158 A CN201280005158 A CN 201280005158A CN 103299631 B CN103299631 B CN 103299631B
Authority
CN
China
Prior art keywords
video
processor
frame
block
piecing
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.)
Active
Application number
CN201280005158.7A
Other languages
English (en)
Other versions
CN103299631A (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.)
Cisco Technology Inc
Original Assignee
Cisco Technology 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 Cisco Technology Inc filed Critical Cisco Technology Inc
Publication of CN103299631A publication Critical patent/CN103299631A/zh
Application granted granted Critical
Publication of CN103299631B publication Critical patent/CN103299631B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/436Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation using parallelised computational arrangements
    • 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/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • 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/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/156Availability of hardware or computational resources, e.g. encoding based on power-saving criteria
    • 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/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/174Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a slice, e.g. a line of blocks or a group of blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

在视频编码中,对图像数据进行编码以除去将被传输的信息中的冗余是常见的。当像素数据通常是按照像素块来布置时,这些块可以按照称为拼贴的N×M个块的一个或多个组来布置。拼贴避免了逐拼贴或者逐块地发送头部信息的需要,并且简化了对拼贴的并行处理。来自各个拼贴的比特然后可被重新格式化以根据光栅扫描方向重新创建比特。这使得解码器能够接收常规光栅扫描格式的比特,而且一旦比特被重新格式化还具有对拼贴进行解码的能力。通过将图像划分为N×M尺寸的拼贴,可以在垂直方向以及水平方向上进一步利用图像的帧内对应关系,这是因为拼贴无需破坏拼贴中的块之间的像按照片或者片组组织的块一样多的依赖。

Description

处理视频数据拼贴的视频编码器/解码器、方法
技术领域
本申请总地涉及视频编码器/解码器、方法和计算机程序产品,更具体地涉及处理按照拼贴(tile)布置的相邻块的组的视频编码器/解码器、方法和计算机程序产品。
背景技术
这里提供的“背景”描述是为了总地给出本公开的上下文的目的。到本背景部分中描述的程度的当前指名发明人的工作以及本描述中在申请时可能不适合作为现有技术的各方面既未明确也未隐含地被承认是本发明的现有技术。
视频编码器通常通过按照像素块划分原始视频数据的每个帧来实现。在视频压缩的现有标准(例如,MPEG1、MPEG2、H.261、H.263和H.264)中,这些块通常将是16×16尺寸的并且被称作宏块(MB)。在未来的HEVC/H.265标准中,块通常将会更大(例如64×64)并且例如在帧边界处可能是矩形的。
通常,块按照光栅扫描次序,即从块的顶行到块的底行并且在块的每一行内从左到右,被处理和/或传输。
对于原始像素数据的每个块,编码通常按照以下步骤执行:
-使用来自i)前一帧(帧间预测)或者ii)当前帧中的先前重构像素(帧内预测)的重构像素值来产生预测像素。取决于预测类型,块被分类为间块(inter block)或者内块(intra block)。
-计算块内的每个原始像素与对应预测像素之间的差异。
-向差异样本应用二维变换从而产生一组变换系数。
-将每个变换系数量化为整数。
-执行对量化变换系数的无损熵编码。
-向量化变换系数应用二维逆变换以计算量化版本的差异样本。
-添加预测以形成当前块的重构像素。
另外,参考图1,当前帧以及预测帧被输入到减法器9。减法器9被提供有来自帧内预测处理路径3和运动补偿处理路径5的输入,其选择受开关7控制。帧内预测处理是为了找出当前图像帧内的相似点而被选择的,因而被称作“帧内”预测。运动补偿具有时间分量并因而涉及被称作“帧间”预测的连续帧之间的分析。
开关7的输出在减法器9中被从当前帧的像素中减去,然后经过二维变换处理13。经变换系数然后经过量化器15中的量化并且然后经过熵编码器17。熵编码在不丢失信息的情况下除去冗余,并且被称作无损编码处理。接下来,经编码数据经由分组器被按照网络分组来布置,然后被以比特流传输。
然而,量化器15的输出也被应用逆变换并被用于辅助预测处理。该输出被应用于去块滤波器8,去块滤波器8抑制边缘中的某些锐利以改善清晰度并且更好地支持预测处理。去块滤波器8的输出被应用于帧存储器6,帧存储器6将经处理的图像像素数据保存在存储器中以供在后续运动处理中使用。
每个块的对应解码处理可被描述如下(如在图2中指示)。在熵解码22(以产生量化变换系数)和对量化变换系数的二维逆变换26以提供量化版本的差异样本之后,由此得到的图像在添加先前讨论的帧间预测和帧内预测数据之后被重构。
更详细的编码器和解码器处理步骤中的一些现在将被更详细地描述。在视频编码器中,块可被划分为子块。通常,块是固定(正方形)尺寸的,而子块可以是各种(例如矩形)形状。另外,划分为子块通常将因块而异。
帧间预测通常通过针对每个子块得到一组运动向量来实现。运动向量定义了原始像素数据与前一帧中的对应重构像素数据之间的空间位移。因此,如果第一帧中的特征可被识别出已移动到后一帧中的另一位置,则需要被传输给解码器的数据量可被极大减少。在该情形中,运动向量可被用 来高效传达关于从一个帧到下一帧已改变位置的特征的信息。
帧内预测通常通过针对每个子块得到内部方向模式来实现。该内部方向模式定义了原始像素数据与当前帧中的先前重构像素数据之间的空间位移。
运动向量和内部方向模式两者都被编码并传输到解码器作为每个子块的边信息(side information)。为了减少用于该边信息的比特数目,对这些参数的编码依赖于先前经处理子块的对应参数。
通常,某种形式的自适应熵编码被使用。自适应使得子块的熵编码/解码依赖于先前处理的子块。熵编码是减少向接收地点传达信息所需的比特数目的无损编码。
许多视频编码/解码系统和方法跨块之间的边界来应用去块滤波器(图2中的8)。另外,去块滤波器被应用于经解码视频中的块以通过使当块编码技术被使用时可以在块之间形成的锐利边缘平滑化来提高视觉质量和预测性能。该滤波器旨在改善经解码图片的外观。
视频压缩的AVC/H.264标准支持两种用于块的并行处理的机制:片(slice)和片组。
AVC/H.264中的片被定义为按照光栅扫描次序的多个连续块。片的使用在编码器侧是可选的,并且关于片边界的信息被发送到网络传输层中的解码器或者作为独特比特式样在比特流中被发送。
AVC/H.264中的片设计的最重要特征是允许通过基于分组的网络来传输压缩视频。通常,一个片的压缩视频数据是作为一个分组来传输的。为了保证对分组丢失的恢复力,每个片是独立可解码的。如本发明人所认识到的,该要求暗示不同片的块之间的所有依赖性被打破。此外,整个片的关键参数是在片头部中传输的。
片组
AVC/H.264中的片组定义了对帧内的块的划分。该划分是在图片头部 中表示的。块在片组内以光栅扫描次序来处理和传输。另外,如本发明人所认识到的,因为一个片无法跨越超过一个片组,因此片组之间的依赖性以与片之间相同的方式被打破。如本发明人所认识到,片组在至少两个重要方面不同于“拼贴(tile)”(如接下来将详细讨论的)。首先,在片组的情况下,块在片组内按照光栅扫描次序传输。必须解码使用片组内的光栅扫描次序的比特流对许多解码器尤其是使用单核心的那些解码器而言是非常不希望的要求。这是因为像素最好按照它们被渲染并存储在存储器中以供在显示设备上渲染的相同次序来解码。在极端情况下,具有片组的比特流可以强迫解码器一次一列(块)而非一次一行(块)地解码每个帧。其次,片组可以指定帧的非临近部分(例如棋盘式样)。必须例如在棋盘式样乃至更复杂式样的所有“黑”块之前解码所有“白”块对解码器造成了甚至更糟的负担。由于在AVC/H.264解码器中实现一般片组时的这些困难,最新修订的AVC/H.264标准引入了不允许在比特流中使用片组的新的类(profile)(约束类)。不能解码片组的解码器然后可以声称符合约束类(而非基线类)。在拼贴(如将在具体实施方式中讨论)的情况下,块在帧内按照作为多数单核心解码器的最优传输次序的光栅扫描次序来传输。
发明内容
将会明白本发明的前述一般描述以及以下详细描述都是本发明的示例而非限制。
本发明人认识到用于将帧划分为宏块组的传统方法的局限。例如,尽管针对AVC/H.264中的片定义的依赖性打破对于并行处理也是有用的,但是片的定义也具有一些缺点。片头部意味着并行处理所不需要的极大开销。另外,将块分组为片需要遵守对块的光栅扫描处理。转而,这对帧可被如何划分为独立可编码块强加了不必要常常不希望的限制。
针对能够使许多分区可用的片组,本发明人认识到矩形的分区/片组对于并行处理是最相关的。矩形划分使能垂直(列)以及水平地划分。尽管片组的定义给予编码器定义帧的几乎任何分区的灵活性,但是该方案对解 码器具有一些不希望的可能结果。具体而言,解码器被强迫按照与编码器相同的次序(即,片组内的光栅扫描)处理块。这可能对解码器实现方式具有严重可能结果,因为解码器必须被设计为处理几乎任意扫描次序。AVC/H.264中的片组的另一缺点在于最多8个片组被允许,并且每个片组由包括片头部在内的单独片组成。
通常,视频解码器规范将按照光栅扫描次序的顺序块处理定义为正常操作模式。这通过允许没有限制地利用同一帧中的临近块之间的依赖性来保证最大压缩效率。通常,这意味着给定块的参数依赖于左侧和上面的块中的相同参数。如先前描述,这通常适用于帧内预测的重构像素、运动向量编码、内部方向模式编码以及自适应熵编码。
独立于视频编码/解码方法的顺序性质,许多硬件架构是针对并行处理设计的以使吞吐量(每秒处理的像素数目)最大化。通常,针对并行处理设计的处理设备包括多个核心(通常在2和100之间),每个核心能够与其他核心并行地对帧内的块的子集进行编码/解码。如果正在不同核心上处理的块之间没有依赖性则这被最好地实现。因此在压缩效率与并行处理程度(同时处理的块的数目)之间存在权衡。
优选地,根据本发明,核心能够访问先前重构的帧所存储于的共享存储器。在这些情况下,临近块之间的依赖性仅需针对当前帧被打破,从而允许对运动向量的无限制选择。
相应地,本发明的一个方面是其使对压缩效率的惩罚最小化,同时使在编码视频帧时的并行处理的程度和灵活性最大化。
另外,本发明的另一个方面在于其引入了作为在拼贴边界处具有依赖性打破的N×M个相邻块的组的拼贴。与片和片组相反,拼贴的定义独立于传输次序。传输次序被假定为遵循帧(或者片组)内的正常光栅扫描次序。该意味着编码器/解码器可以选择针对每个拼贴独立地执行除比特流生成/解析之外的所有处理。即使编码器按照拼贴来处理帧,解码器也可以选择按照光栅扫描次序来解码帧。
附图说明
随着本公开及其许多伴随优点参考联系附图考虑时的以下具体实施方式变得被更好地理解,对本公开及其许多伴随优点的更完全认识将被容易地获得,在附图中:
图1是视频编码器的框图;
图2是视频解码器的框图;
图3a和3b分别示出了根据一个实施例的编码器处理次序与传输次序之间的布局关系;
图4示出了根据一个实施例的利用拼贴来支持并行处理的编码器的框图;
图5示出了根据一个实施例的利用拼贴来支持并行处理的解码器的框图;
图6是根据本发明一个实施例执行的示例性处理的流程图,并且
图7是根据本发明一个实施例的在视频编码和解码中利用拼贴的主通信设备的框图。
具体实施方式
本实施例引入了“拼贴”的概念来利用块之间的二维依赖性,同时还支持利用多个处理器(如果在编码器中可用的话)对多个拼贴同时执行编码操作。将帧划分为拼贴完全由数目N和M指定,从而消除了对作为传统片处理中的基本要求的片头部的需要。这里,N和M是按照块的数目测量得到的拼贴的高度和宽度。通常,N和M的值在序列头部或者图片头部中被传达给解码器,从而产生可以忽略的传输带宽开销。除了在序列或图片头部中单方面向解码器传输N和M数目之外,一种替代方式是在解码设备与编码设备之间进行握手操作,其中N和M的值以及也许解码器的处理能力被交换。
通过在N×M的拼贴中做出依赖性打破,系统利用图像中的可能性来创建最低限度地妨碍块之间的对应性的垂直边界以及水平边界两者。另外,一系列具体图像的内容可以是经常具有水平依赖性(例如地平线等)的自然景观。另一方面,通过具有更大的垂直维度以使得垂直维度上的更 多块可被包括作为共同拼贴的一部分,从而允许利用垂直方向上的块之间的依赖性,涉及森林或者其他垂直朝向图像的影像可更大地受益。数目N和M的规定通过暗示指定了拼贴边界处的依赖性打破。
在根据本实施例的典型视频编码器中,至少以下依赖性在拼贴边界处被打破(其他依赖性取决于定义解码要求的相关标准也可被打破):
-针对帧内预测使用重构像素,
-针对运动向量编码使用来自邻近块的运动向量,
-使用来自邻近块的内部方向模式。
-基于先前编码块的自适应熵编码。
-算术编码比特的冲刷(flush)。
-跨拼贴边界的去块滤波器,尽管如果去块在单个处理核心上作为另一遍执行则这可被避免。
图3a示出了2×3拼贴的布置(任意选择2作为拼贴的垂直分量并且选择3作为拼贴的水平分量,但是反过来也将是可接受的约定)。具有相同字母的块属一于共同拼贴并因而最适合利用一个处理核心来处理。因此,假定四个处理核心可用,则“A”拼贴可由一个核心处理而另外的核心可分别处理B、C和D,其中所有处理是并行完成的。
在非限制性的上下文中,图3a中的每个拼贴中的数字表示拼贴内的宏块(或者其他块)的排序。例如,对于拼贴A,前三个块0-2被布置在水平行中(按照光栅扫描方向),而第二行的块3-5被布置在第一行之下的行中。因此,块被布置在块的二维组中,其中依赖性在拼贴A与拼贴B之间的垂直边缘处并且在拼贴A与拼贴C之间的水平边缘处被打破。
图3b示出了帧的传输次序,其遵循光栅扫描次序。为了将来自拼贴的比特重新排序为按照光栅扫描次序的比特,拼贴重新格式化器被使用。类似地,在解码器处,如果按照拼贴的处理被选择,则拼贴格式化器被用于使比特返回每个拼贴的正确块。编码器转换处的拼贴重新格式化器将如在图3a中示出的拼贴次序(A0、A1、A2、A3、A4、A5、B0、B1、B2,..)改变为如在图3b中示出的光栅扫描次序(A0、A1、A2、B0、B1、B2、A3、A4,…)。类似地,解码器处的拼贴格式化器执行从光栅扫描次 序到拼贴次序的重新排序操作。
关于该重新格式化处理,如果编码器按照拼贴来处理并且来自每个拼贴的比特未曾被重新排序,则由此得到的比特流将会按照拼贴次序。在该情况下,解码器将具有两种选项:可以a)不对比特流做任何事情并且按照拼贴次序对块进行解码,或者可以b)转换为光栅扫描次序然后按照光栅扫描次序对块进行解码。两种选项都是可替代的实施例,虽然它们对解码器造成了额外的处理负担。另一方面,附图中反映的主要实施例是使编码器按照光栅扫描次序放置比特。转而,这使解码器上的处理负担最小化并且允许解码器:要么a)不对比特流做任何事情并且按照光栅扫描次序对块进行解码(即无拼贴惩罚),要么b)从光栅扫描次序转换为拼贴次序并且按照拼贴次序对块进行解码。因此,如果编码器按照拼贴来处理并且承担从拼贴次序转换为光栅扫描次序的负担,则解码器除了尊重拼贴边界处的依赖性打破之外不被强迫做任何事情。
在根据本实施例的编码器中,拼贴在不同核心上被并行地处理。每个核心针对该具体拼贴产生一串压缩比特。为了按照光栅扫描次序传输压缩数据,由不同拼贴/核心产生的比特需要被重新格式化。这通常在单个核心上完成。
并行处理器实施例在图4中被图示出,其中虚线指示在各核心上被并行处理的模块。另外,每个核心被指派每一拼贴的处理任务(尽管对每个核心处理多个拼贴没有限制),并且共享存储器资源以辅助共享用于拼贴和块之间的帧间预测的参考数据。帧存储器存在于共享存储器中,而拼贴重新格式化器被实现在单个核心上。(可替代地,去块滤波器可以在单个核心上运行。)另外,减法器9、变换13、量化15、逆变换26、去块滤波器8、帧存储器6、运动补偿5、帧内预测3、开关7和熵编码器17都与早先在图1中描述的类似。然而,在该提供拼贴兼容处理的多核心实施例中,拼贴重新格式化器18被用于取回并布置来自各拼贴的比特以将其按照光栅扫描次序放置,以使得从图4中的编码器发送的比特流将会按照光栅扫描次序。类似地,解码器将可选地使用对应的拼贴格式化器,如果其被配置为在解码前将比特重新封装为首尾相连(end by end)的拼贴的 话。
图4中要注意的另一件事是虚线的存在。如在上面讨论的,共同的核心可以执行例如变换13、量化15、熵编码器17、逆变换26、去块滤波器8、运动补偿5、开关7和帧间预测3的所有功能。因为拼贴重新格式化器18和帧存储器6可用作各自用于处理不同拼贴的不同核心当中的公共资源,因此帧存储器和拼贴重新格式化器18不限于在单个核心上使用,而是可用于在不同核心之间进行接口连接。类似地,所示出的减法器和加法器是在另一核心上实现的。编码功能在不同核心上的本布置旨在是非无遗漏的。相反,具有按照拼贴的布置的一个方面在于在拼贴与所提供核心数目之间可以存在对应关系。另外,如在上面讨论的,具有多个处理器核心提供了可导致将多个拼贴布置为与那些核心相对应的可用处理资源。
在解码器侧,解码器在与编码器的握手处理中可以指定拼贴重新格式化器18应当被使用与否(在拼贴划分模式下与否)。该拼贴划分模式允许接收从各拼贴中读出的比特,不重新格式化,或者重新格式化以按照如在光栅扫描中将会提供的或者如利用传统编码器将会完成的相同次序来放置这些比特。当然,在更加直截了当的处理中,握手不被执行并且编码器和解码器总是在拼贴划分模式下操作。应当注意到,当编码器和解码器两者都在拼贴划分模式下操作时,拼贴重新格式化器(编码器)和拼贴格式化器(解码器)是不需要的,因为无需按照光栅扫描次序放置比特流。因此,拼贴重新格式化器18和拼贴格式化器25具有用于在没有操纵的情况下使比特流穿过其中的内部旁通能力。当然在图4和5中,拼贴重新格式化器18和拼贴格式化器25也被用于示出编码器与解码器之间的双向通信。该连接仅仅是示例性的,因为编码器和解码器可以通过各种通信接口中的任何一种来交换信息(例如通过序列或图片的头部交换N和M的值)。另外,表示N和M的值的比特无需以任何方式被重新格式化,并且因而分别绕过拼贴重新格式化器18和拼贴格式化器25中的重新格式化和格式化功能。以该同样方式,在编码器与解码器之间交换的其他消息数据在没有比特重新排序的情况下使用拼贴重新格式化器和拼贴格式化器作为通信接口。
图5是根据一个实施例的支持拼贴划分操作模式并且包括用于辅助处理单独拼贴的并行处理的解码器的框图。与图4的情况一样,虚线指示什么解码组件在一单独处理核心上被支持,使得多个核心可被用于同时处理从编码器接收到的拼贴。帧存储器6被用作公共资源,类似于在图4中的编码器处所做的。拼贴格式化器25初始接收来自编码器的拼贴重新格式化器18的值N和M,虽然拼贴重新格式化器不执行对这些值的任何比特操纵或重新排序。相反,根据值N和M,拼贴格式化器25识别从输入比特流到达的数据的拼贴形状并且最终允许解码器组件基于在编码器处引入的拼贴划分(以及相关联的依赖性打破)来执行解码操作。另外,解码器在如值N和M指示的拼贴边界处的块之间打破当前帧中的依赖性。应当注意到,编码器可以提供多对N和M,从而指示一个帧中的每个拼贴或者至少多个拼贴可以具有不同的矩形形状。
在一些实例中,解码器可以向编码器指明其对N和M的所需值/希望值的愿望或者究竟是否要使用拼贴划分。例如,通过解码器向编码器通知解码器如果不在拼贴划分模式下则仅可以支持720p30显示格式,但是如果在利用不大于N×M的拼贴的拼贴划分模式下使用则可以支持1080p30显示格式,这可以使有用的。编码器与解码器之间的这种双向通信由图5中的拼贴格式化器25处的双头箭头表示。
当以这种方式布置时,拼贴提供了相比传统的片和片组的优点,该优点在于识别拼贴边界无需拼贴头部。另外,不需要逐拼贴或者逐块的开销来支持对拼贴边界的识别。相反,通过首先指定拼贴的形状,或者通过读取序列或者帧的头部,解码器具有其基于值N和M的原始规格识别拼贴边界所需的所有信息。另外,解码器具有使用拼贴与否的选项。以这种方式,对解码器的影响是最小的,因为解码器如果选择不执行拼贴处理则无需执行拼贴处理。另外通过允许编码器指定不同N×M形状的拼贴,关于安排拼贴的数目和尺寸以更好地支持并行处理以及当多个核心可用时可用来执行编码的速度,存在大量的灵活性。
另外,拼贴提供了使编码处理与比特被传输的传输次序去耦合的优点。这与传统处理相比允许更好的垂直帧内预测。另外,通过使用并行拼 贴允许用于分析的更好并行化,这是因为对拼贴形状有更少约束并且不需要头部。
如进一步说明,在列边界(垂直边界)处打破依赖性的优点在于,通过垂直地划分帧提供了对压缩性能的更小惩罚,这是因为当16:9纵横比是显示格式时垂直边界比水平边界更短,因为运动一般倾向于在水平方向上执行。另外,按照列的并行化降低了延迟,这是因为数据一次一行地从相机到达,并且所有可用核心可以在新一行到达时立即开始在新一行上工作。因此,与使用片或片组的传统方法相比,将帧划分为拼贴允许对可用核心的更高效使用以开始对从相机提供的数据的立即处理。
另外,通过使用拼贴,在编码器中执行“缝合(stitching)”可以更加灵活。缝合是任意形状的矩形的集合,这意味着由压缩域中的操纵引起的子图片的空间位置的改变可变为可能。
拼贴还允许更高效地分组化为(几乎)固定大小的分组。由此分组化器可以将独立架子的压缩数据(每列/行一个)装配为一个分组,而没有对编码处理的任何反向依赖。这帮助针对通过不同通信路径的传输以及解码器侧的独立处理两者在数据如何被从一个位置传输到下一位置方面提供了自主性。如上面讨论的,允许按照列的分组化还提供了处理核心当中的更细粒度的并行化以及更好的负载均衡。
最后,使用拼贴的另一优点在于:与片处理或者片组相比,通过按照更小宽度进行编码提供了使存储器带宽和内部存储器减少的机会。另外,即使使用单核心实现方式也可以提供存储器带宽和内部存储器的减少。
总之,下面是列边界处的依赖性打破的优点列表:
1)垂直地划分帧给予对压缩性能的更小惩罚,这是因为垂直边界比水平边界更短(假设16:9纵横比)并且因为运动倾向于是水平的。
2)按照列的并行化降低了延迟,这是因为数据一次一行地从相机到达,并且当新一行到达时所有核心可以立即开始工作。
3)在编码器中对任意形状的矩形执行“缝合”的灵活性,即通过压缩域中的操纵来改变子图片的空间位置。
4)更高效地分组化为(几乎)固定大小的分组。分组化器可以将独立块的压缩数据(每列/行一个)装配为一个分组,而没有对编码处理的任何反向依赖。
5)按照列的并行化提供了更细粒度的并行化以及更好的负载均衡。
6)按照更小宽度进行编码可以使存储器带宽和内部存储器减少。即使对于单核心实现方式也是这样。
图6是示出了一种利用N×M的拼贴对帧进行编码的方法的流程图。处理在步骤S1中开始,其中帧被划分为像素块。处理然后前进到步骤S3,其中块被布置为N×M的拼贴。拼贴独立于块的传输次序而被分组。处理然后前进到步骤S5,其中在认识到AVC/H.264不支持除片或片组之外的任何事物的情况下N和M的值在序列或图片的头部中而非在片或片组的头部中被传输到接收设备。拼贴将不会符合AVC/H.264,因为如果编码器决定将帧划分为拼贴,则解码器将不会认识该格式。在序列头部(在第一帧之前——其是视频流的一部分,但是在呼叫建立之后)中,编码器将发送拼贴的高度和宽度。这样解码器将知道拼贴的尺寸。应当注意到,还可以存在向帧类型(例如I(内部帧)、B和P帧)预先指派拼贴形状。
每个拼贴然后可在步骤S7中被并行编码,其中每个拼贴可选地被一单独处理核心编码。当然单个核心可以处理多于一个拼贴。另外,具有仅一个核心的设备可以处理所有拼贴。处理然后前进到步骤S9,其中经编码拼贴被传输到接收设备。传输次序可以按照光栅扫描次序,即使拼贴可能已被按照不同次序编码。一旦被传输到接收设备处的解码器,解码器在步骤S11中利用一个或多个核心对拼贴进行解码。处理然后在步骤S13中重复以处理下一帧。
图7图示出本发明的实施例可被实现于的计算机系统1201。计算机系统1201可被编程为实现包括用于处理实时视频图像的视频编码器或解码器的基于计算机的视频会议端点。计算机系统1201包括总线1202或者用于传送信息的其他通信机构,以及与总线1202相耦合的用于处理信息的 处理器1203。虽然该图示出了用于处理器的信号块1203,但是应当明白处理器1203表示多个处理核心,其中的每一个核心可以执行不同拼贴。计算机系统1201还包括与总线1202相耦合的用于存储信息和将由处理器1203执行的指令的主存储器1204,例如随机存取存储器(RAM)或者其他动态存储设备(例如,动态RAM(DRAM)、静态RAM(SRAM)以及同步DRAM(SDRAM))。此外,主存储器1204可被用于存储在处理器1203执行指令期间的临时变量或者其他中间信息。计算机系统1201还包括与总线1202相耦合的用于存储静态信息和处理器1203的指令的只读存储器(ROM)1205或者其他静态存储设备(例如,可编程ROM(PROM)、可擦除PROM(EPROM)以及电可擦除PROM(EEPROM))。
计算机系统1201还包括与总线1202相耦合的用来控制诸如磁性硬盘1207和可移除介质驱动器1208(例如,软盘驱动器、只读紧凑盘驱动器、读/写紧凑盘驱动器、紧凑盘自动点唱机、磁带驱动器以及可移除磁光驱动器)之类的一个或多个用于存储信息和指令的存储设备的盘控制器1206。利用适当设备接口(例如,小型计算机系统接口(SCSI)、集成设备电路(IDE)、增强型IDE(E-IDE)、直接存储器访问(DMA)或者高速DMA)可将这些存储设备添加到计算机系统1201。
计算机系统1201也可以包括专用逻辑器件(例如,专用集成电路(ASIC))或者可配置逻辑器件(例如,简单可编程逻辑器件(SPLD)、复杂可编程逻辑器件(CPLD)以及现场可编程门阵列(FPGA))。
计算机系统1201还可以包括与总线1202相耦合的用来控制诸如阴极射线管(CRT)之类用于向计算机用户显示信息的显示设备1210的显示控制器1209。计算机系统包括用于与计算机用户交互并且向处理器1203提供信息的输入设备,例如键盘1211和指点设备1212。指点设备1212例如可以是用于向处理器1203传送方向信息和命令选择并且用于控制显示设备1210上的光标移动的鼠标、轨迹球或者指点杆。此外,打印机可以提供由计算机系统1201存储和/或生成的数据的打印清单。
计算机系统1201响应于处理器1203执行在诸如主存储器1204之类的存储器内包含的一个或多个指令的一个或多个序列而执行本发明的处理步骤中的一部分或者全部。这种指令可被从诸如硬盘1207或者可移除介质驱动器1208之类的另一计算机可读介质中读取到主存储器1204中。多处理布置中的一个或多个处理器也可被用来执行主存储器1204中包含的指令序列。在可替代实施例中,硬连线电路可被用来代替软件指令或者可被结合软件指令使用。因此,实施例不限于硬件电路和软件的任何特定组合。
如上面所述,计算机系统1201包括用于保存根据本发明教导而编程的指令并且用于包含在此描述的数据结构、表、记录或其他数据的至少一个计算机可读介质或存储器。计算机可读介质的示例是紧凑盘、硬盘、软盘、磁带、磁光盘、PROM(EPROM、EEPROM、闪速EPROM)、DRAM、SRAM、SDRAM或者任何其他磁介质、紧凑盘(例如,CD-ROM)或者任何其他光介质、穿孔卡片、纸带或者其他具有孔图案的物理介质、载波(在下面描述),或者计算机可以从中进行读取的任何其他介质。
存储在计算机可读介质中的任一个上或者计算机可读介质的组合上,本发明包括用于控制计算机系统1201、用于驱动用于实现本发明的一个或多个设备并且用于使得计算机系统1201能够与人类用户(例如,印刷制造人员)交互的软件。这种软件可以包括但不限于设备驱动程序、操作系统、开发工具以及应用软件。这种计算机可读介质还包括本发明的用于执行在实现本发明时执行的处理的全部或者一部分(如果处理是分布式的话)的计算机程序产品。
本发明的计算机代码设备可以是任何可解释或者可执行的代码机制,包括但不限于脚本、可解释程序、动态链接库(DLL)、Java类以及完全可执行程序。另外,本发明的处理的多个部分为了更好的性能、可靠性和/或成本可以是分布式的。
这里所使用的术语“计算机可读介质”指代参与向处理器1203提供供执行的指令的任何介质。计算机可读介质可以采用许多形式,包括但不 限于非易失性介质、易失性介质以及传输介质。非易失性介质例如包括光盘、磁盘和磁光盘,例如硬盘1207或者可移除介质驱动器1208。易失性介质包括动态存储器,例如主存储器1204。传输介质包括同轴电缆、铜线和光纤,包括组成总线1202的电线。传输介质也可以采用声波或者光波的形式,例如在无线电波和红外数据通信期间生成的那些。
在向处理器1203携带供执行的一个或多个指令的一个或多个序列时可涉及各种形式的计算机可读介质。例如,指令初始可被携带在远程计算机的磁性盘上。远程计算机可以将用于实现本发明的全部或者一部分的指令远程地加载到动态存储器中并且利用调制解调器通过电话线来发送这些指令。位于计算机系统1201本地的调制解调器可以接收电话线上的数据并且利用红外发射器将该数据转换为红外信号。与总线1202相耦合的红外检测器可以接收红外信号中携带的数据并将该数据置于总线1202上。总线1202将该数据携带到处理器1203从中取回并执行指令的主存储器1204。主存储器1204所接收到的指令在被处理器1203执行之前或之后可被可选地存储在存储设备1207或1208上。
计算机系统1201还包括与总线1202相耦合的通信接口1213。通信接口1213提供与网络链路1214的双向数据通信耦合,网络链路1214例如与局域网(LAN)1215相连或者与诸如因特网的另一通信网络1216相连。例如,通信接口1213可以是附接到任何分组交换LAN的网络接口卡。作为另一示例,通信接口1213可以是用来向相应类型的通信线路提供数据通信连接的非对称数字用户线(ADSL)卡、集成业务数字网络(ISDN)卡或者调制解调器。无线链路也可被实现。在任何这种实现方式中,通信接口1213发送并接收携带表示各类信息的数字数据流的电、电磁或光信号。
网络链路1214通常提供通过一个或多个网络到其他数据设备的数据通信。例如,网络链路1214可提供通过本地网络1215(例如LAN)或者通过由服务提供商操作的设备(其提供通过通信网络1216的通信服务)到另一计算机的连接。本地网络1214和通信网络1216例如使用携带数字数据流的电、电磁或光信号,以及相关联的物理层(例如,CAT5线缆、同轴线缆、光纤等)。通过各种网络的信号以及在网络链路1214上并且通过通信接口1213的信号(其向和从计算机系统1201携带数字数据)可被实现在基带信号或者基于载波的信号中。基带信号传达作为未经调制的电脉冲的数字数据,这些未经调制的电脉冲描述数字数据比特的流,其中术语“比特”将被宽泛地理解为意思是符号,其中每个符号传达至少一个或多个信息比特。数字数据也可被用于例如利用幅度、相位和/或通过传导介质传播或者通过传播介质作为电磁波传输的频移键控信号来调制载波。因此,数字数据可被通过“有线”通信信道作为未经调制的基带数据来发送,并且/或者通过调制载波而在不同于基带的预定频带内发送。计算机系统1201可以通过一个或多个网络1215和1216、网络链路1214和通信接口1213来发送和接收包括程序代码在内的数据。另外,网络链路1214可以提供通过LAN 1215到诸如个人数字助理(PDA)、膝上型计算机或蜂窝电话的移动设备1217的连接。
(选项1)显然,本公开的许多修改和变更鉴于以上教导是可能的。因而将会明白,在所附权利要求的范围内,本发明可被以除如在这里具体描述的方式以外的方式实现。

Claims (31)

1.一种视频编码器,包括:
至少一个处理器,该至少一个处理器被配置为将视频帧划分为矩形拼贴,以打破视频帧中的矩形区域之间的依赖性并且允许具有多个处理器的解码器处和编码器中的拼贴的并行处理,其中:
所述矩形拼贴包括整数个二维像素块,
每一个所述矩形拼贴的形状是由高为N块且宽为M块的所述二维像素块中的部分定义的,其中N和M的值不依赖于像素值,以使得拼贴的维度可以每一视频帧不同,并且
所述处理器被配置为向接收设备传送用于指示头部中的N和M的值的信息;以及
接口,该接口被配置为向解码器传输输出比特流。
2.如权利要求1所述的视频编码器,还包括:
至少另一个处理器,其被配置为执行视频编码,其中
所述处理器对所述矩形拼贴中的第一拼贴执行视频编码,并且所述至少另一个处理器对所述矩形拼贴中的第二拼贴执行视频编码,所述对第二拼贴执行视频编码不依赖于被所述处理器对所述第一拼贴执行的视频编码。
3.如权利要求1所述的视频编码器,还包括:
多个处理器,其中所述矩形拼贴中的每个拼贴利用所述多个处理器的不同处理器被视频编码,所述多个处理器的每一个在各自拼贴上执行编码不依赖于在其它拼贴上执行的编码。
4.如权利要求3所述的视频编码器,还包括帧存储器,该帧存储器是在所述多个处理器当中的共享资源。
5.如权利要求1所述的视频编码器,其中所述视频帧包括多于8个矩形拼贴。
6.如权利要求1所述的视频编码器,其中所述处理器被配置为接收来自解码器的信息并且基于该信息来设置N和M的大小。
7.如权利要求1所述的视频编码器,还包括:
拼贴重新编排器,被配置为基于所述矩形拼贴的所述形状,重新排序来自所述拼贴顺序的比特,以生成按照关于所述二维像素块的光栅扫描次序排列比特的输出比特流。
8.如权利要求1所述的视频编码器,其中指示N和M的值的所述信息还指示多对N和M的值,所述多对N和M的值指示视频帧中的每个拼贴,或至少多个拼贴能够具有不同的矩形形状。
9.如权利要求1所述的视频编码器,其中拼贴边界处的依赖性打破被尊重,并且所有拼贴被多个处理器的同一处理器处理,或者两个或更多个拼贴的每一个被所述多个处理器的不同处理器处理。
10.如权利要求1所述的视频编码器,其中邻近的矩形区域之间的依赖性仅对于当前的视频帧被打破,从而允许运动向量的无限制选择。
11.一种视频编码方法,包括:
利用至少一个处理器将视频帧划分为矩形拼贴以打破当前视频帧中的矩形区域之间的依赖性以允许具有多个处理器的解码器处或编码器中的拼贴的并行处理,其中所述划分包括
利用整数个二维像素块来建立所述矩形拼贴,
通过高为N块且宽为M块的所述二维像素块中的部分来定义每一个所述矩形拼贴的形状,其中N和M赖于像素值,以使得拼贴边界处的依赖性被打破并且使得拼贴的维度可以每一视频帧不同;并且基于所述矩形拼贴的形状,以拼贴的顺序向解码器传送输出比特流;以及
在所述视频帧之前,向接收设备传送指示N和M的值的头部信息。
12.如权利要求11所述的视频编码方法,其中:
所述编码包括:
利用第一处理器对所述矩形拼贴中的第一拼贴执行视频编码,以及
利用第二处理器对所述矩形拼贴中的第二拼贴执行视频编码;所述对第二拼贴执行视频编码不依赖于被所述第一处理器对所述第一拼贴执行的视频编码。
13.如权利要求11所述的视频编码方法,还包括:
利用多个处理器中的一个来对所述矩形拼贴中的每一个拼贴进行视频编码;所述多个处理器的每一个执行编码不依赖于在其它拼贴上执行的编码。
14.如权利要求13所述的视频编码方法,还包括在所述多个处理器当中作为资源来共享帧存储器。
15.如权利要求11所述的视频编码方法,其中所述划分包括将所述视频帧划分为多于8个矩形拼贴。
16.如权利要求11所述的视频编码方法,还包括:
接收来自解码器的信息并且基于该信息来设置N和M的大小。
17.如权利要求11所述的视频编码方法,还包括:
基于所述矩形拼贴的所述形状,重新排序来自所述拼贴顺序的比特,以生成按照关于所述二维像素块的光栅扫描次序排列比特的输出比特流。
18.如权利要求11所述的方法,其中邻近的矩形区域之间的依赖性仅对于当前的视频帧被打破,从而允许运动向量的无限制选择。
19.一种视频解码器,包括:
接口,该接口被配置为接收在被编码为矩形拼贴的视频帧内的比特的比特流,所述视频帧中的矩形区域之间的依赖性被打破;以及
多个处理器,该多个处理器被配置为在尊重拼贴边界处的依赖性打破的同时对所述视频帧进行解码,其中
所述多个处理器的第一个被配置为确定第一拼贴,同时所述多个处理器的第二个对第二拼贴解码,
所述矩形拼贴包括整数个二维像素块,
每一个所述矩形拼贴的形状是由高为N块且宽为M块的所述二维像素块中的部分定义的,其中
N和M的值不依赖于像素值,以使得拼贴的维度可以每一视频帧不同,
在所述视频帧之前被传送的头部中,N和M的值被从编码器传达到所述解码器。
20.如权利要求19所述的视频解码器,其中所述多个处理器的第二处理器对所述第二拼贴执行视频解码,所述对所述第二拼贴执行视频解码不依赖于被所述多个处理器的第一处理器对所述拼贴执行的处理。
21.如权利要求19所述的视频解码器,
其中所述矩形拼贴的每一个拼贴利用不同的处理器被解码,并且每一个不同的处理器执行解码不依赖于对其它拼贴执行的解码。
22.如权利要求19所述的视频解码器,还包括:
帧存储器,该帧存储器是在所述处理器与所述多个处理器当中的共享资源。
23.如权利要求19所述的视频解码器,其中所述视频帧包括多于8个矩形拼贴。
24.如权利要求19所述的视频解码器,其中:
所述接口被配置为在序列头部和图片头部中的至少一者中接收N和M的值;并且
所述多个处理器被配置为基于N和M的值来确定所述矩形拼贴的形状。
25.如权利要求19所述的视频解码器,其中:
所述接口被配置为向所述编码器传达一消息,该消息指定被所述编码器用来设置N和M的解码器功能和所请求的N和M的大小中的至少一者。
26.一种视频解码方法,包括:
接收在被编码为矩形拼贴的视频帧内的比特流,所述视频帧中的矩形区域之间的依赖性被打破;以及
在尊重拼贴边界处的依赖性打破的同时利用多个处理器对所述视频帧的至少一部分进行解码,其中
所述矩形拼贴包括整数个二维像素块,
每一个所述矩形拼贴的形状是由高为N块且宽为M块的所述二维像素块中的部分定义的,其中N和M的值不依赖于像素值,以使得拼贴的维度可以每一视频帧不同,
在所述视频帧之前被传送的头部中,N和M的值被从编码器传达到解码器,以及
所述解码包括利用第一处理器对第一拼贴以及利用第二处理器对第二拼贴独立地解码。
27.如权利要求26所述的视频解码方法,还包括:
所述第二处理器对所述矩形拼贴的第二拼贴执行视频解码不依赖于由所述第一处理器对所述第一拼贴执行的处理。
28.如权利要求26所述的视频解码方法,其中:
所述解码包括利用不同的处理器对所述矩形拼贴中的每个拼贴进行解码以及被执行的解码独立于在其它拼贴上执行的解码。
29.如权利要求28所述的视频解码方法,其中所述视频帧包括多于8个矩形拼贴。
30.如权利要求26所述的视频解码方法,其中:
所述接收步骤包括在序列头部和图片头部中的至少一个者接收N和M的值;并且
利用所述多个处理器的至少一个基于N和M的值来确定所述矩形拼贴的形状。
31.如权利要求27所述的视频解码方法,还包括:
向编码器发送一消息,该消息指定被所述编码器用来设置N和M的解码器功能和所请求的N和M的大小中的至少一者。
CN201280005158.7A 2011-01-14 2012-01-11 处理视频数据拼贴的视频编码器/解码器、方法 Active CN103299631B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/007,271 US9300976B2 (en) 2011-01-14 2011-01-14 Video encoder/decoder, method and computer program product that process tiles of video data
US13/007,271 2011-01-14
PCT/IB2012/050138 WO2012095801A1 (en) 2011-01-14 2012-01-11 Video encoder/decoder, method and computer program product that process tiles of video data

Publications (2)

Publication Number Publication Date
CN103299631A CN103299631A (zh) 2013-09-11
CN103299631B true CN103299631B (zh) 2016-11-16

Family

ID=46490760

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201280005158.7A Active CN103299631B (zh) 2011-01-14 2012-01-11 处理视频数据拼贴的视频编码器/解码器、方法

Country Status (4)

Country Link
US (1) US9300976B2 (zh)
EP (1) EP2664148B1 (zh)
CN (1) CN103299631B (zh)
WO (1) WO2012095801A1 (zh)

Families Citing this family (46)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10244239B2 (en) 2010-12-28 2019-03-26 Dolby Laboratories Licensing Corporation Parameter set for picture segmentation
US9300976B2 (en) 2011-01-14 2016-03-29 Cisco Technology, Inc. Video encoder/decoder, method and computer program product that process tiles of video data
FR2972588A1 (fr) 2011-03-07 2012-09-14 France Telecom Procede de codage et decodage d'images, dispositif de codage et decodage et programmes d'ordinateur correspondants
FR2977111A1 (fr) 2011-06-24 2012-12-28 France Telecom Procede de codage et decodage d'images, dispositif de codage et decodage et programmes d'ordinateur correspondants
US9398307B2 (en) * 2011-07-11 2016-07-19 Sharp Kabushiki Kaisha Video decoder for tiles
US8767824B2 (en) 2011-07-11 2014-07-01 Sharp Kabushiki Kaisha Video decoder parallelization for tiles
KR20140092861A (ko) * 2011-10-31 2014-07-24 미쓰비시덴키 가부시키가이샤 동화상 부호화 장치, 동화상 복호 장치, 동화상 부호화 방법 및 동화상 복호 방법
RU2589341C2 (ru) * 2011-11-08 2016-07-10 Телефонактиеболагет Л М Эрикссон (Пабл) Размер элемента мозаичного изображения при кодировании видео
US9332259B2 (en) * 2012-01-18 2016-05-03 Qualcomm Incorporated Indication of use of wavefront parallel processing in video coding
US10244246B2 (en) 2012-02-02 2019-03-26 Texas Instruments Incorporated Sub-pictures for pixel rate balancing on multi-core platforms
RU2716060C1 (ru) * 2012-04-06 2020-03-05 Сони Корпорейшн Устройство декодирования и способ декодирования и устройство кодирования и способ кодирования
IN2014DN07859A (zh) * 2012-04-16 2015-04-24 Ericsson Telefon Ab L M
US20130272428A1 (en) * 2012-04-16 2013-10-17 Sharp Laboratories Of America, Inc. Video decoder for copy slices
US20130279882A1 (en) * 2012-04-23 2013-10-24 Apple Inc. Coding of Video and Audio with Initialization Fragments
US9270994B2 (en) 2012-06-29 2016-02-23 Cisco Technology, Inc. Video encoder/decoder, method and computer program product that process tiles of video data
US9621905B2 (en) 2012-06-29 2017-04-11 Qualcomm Incorporated Tiles and wavefront parallel processing
PL4033764T3 (pl) * 2012-09-26 2023-12-27 Sun Patent Trust Sposób dekodowania obrazów, sposób kodowania obrazów, urządzenie do dekodowania obrazów, urządzenie do kodowania obrazów oraz urządzenie do kodowania/dekodowania obrazów
US20140092961A1 (en) * 2012-09-28 2014-04-03 Sharp Laboratories Of America, Inc. Signaling decoder picture buffer information
US9930353B2 (en) * 2013-03-29 2018-03-27 Sony Corporation Image decoding device and method
US9749627B2 (en) 2013-04-08 2017-08-29 Microsoft Technology Licensing, Llc Control data for motion-constrained tile set
JP6208993B2 (ja) * 2013-06-28 2017-10-04 ルネサスエレクトロニクス株式会社 画像復号装置及び画像復号装置の復号処理方法
JP6268066B2 (ja) * 2013-09-20 2018-01-24 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America 送信方法、受信方法、送信装置及び受信装置
CN109905748B (zh) * 2013-09-20 2022-05-10 松下电器(美国)知识产权公司 图像编码方法及装置、图像解码方法及装置
KR20150057790A (ko) * 2013-11-20 2015-05-28 삼성전자주식회사 웨이브-프런트 어프로치에 기초한 비디오 프레임의 병렬 처리 방법
WO2015184067A1 (en) * 2014-05-28 2015-12-03 Arris Enterprises, Inc. Content aware scheduling in a hevc decoder operating on a multi-core processor platform
FR3022063B1 (fr) * 2014-06-05 2018-04-27 Harmonic Inc. Systeme de codage de sequence video utilisant des zones de codage elargies
CN107005694B (zh) 2014-09-30 2020-05-19 瑞典爱立信有限公司 在独立处理单元中编码和解码视频帧的方法、装置和计算机可读介质
US10212445B2 (en) * 2014-10-09 2019-02-19 Qualcomm Incorporated Intra block copy prediction restrictions for parallel processing
US10009620B2 (en) 2015-06-22 2018-06-26 Cisco Technology, Inc. Combined coding of split information and other block-level parameters for video coding/decoding
US10003807B2 (en) 2015-06-22 2018-06-19 Cisco Technology, Inc. Block-based video coding using a mixture of square and rectangular blocks
CN108293121B (zh) * 2015-11-24 2021-04-23 三星电子株式会社 视频解码方法和设备及其编码方法和设备
US10575007B2 (en) 2016-04-12 2020-02-25 Microsoft Technology Licensing, Llc Efficient decoding and rendering of blocks in a graphics pipeline
US10034026B2 (en) * 2016-04-22 2018-07-24 Akila Subramaniam Device for and method of enabling the processing of a video stream
US10157480B2 (en) 2016-06-24 2018-12-18 Microsoft Technology Licensing, Llc Efficient decoding and rendering of inter-coded blocks in a graphics pipeline
US11880918B2 (en) * 2016-07-28 2024-01-23 Kodak Alaris, Inc. Method for dynamic creation of collages from mobile video
US11197010B2 (en) 2016-10-07 2021-12-07 Microsoft Technology Licensing, Llc Browser-based video decoder using multiple CPU threads
WO2018107467A1 (en) * 2016-12-16 2018-06-21 Thomson Licensing Apparatus, method, and storage medium for providing preview of restricted video asset
CN115442597A (zh) * 2017-10-20 2022-12-06 韩国电子通信研究院 图像编码、解码方法以及存储比特流的记录介质
EP3811624A1 (en) * 2018-06-21 2021-04-28 Telefonaktiebolaget LM Ericsson (publ) Tile shuffling for 360 degree video decoding
MX2020013864A (es) 2018-06-21 2021-03-25 Ericsson Telefon Ab L M Particiones de mosaicos con sub-mosaicos en codificacion de video.
JP2020017946A (ja) * 2018-07-03 2020-01-30 財團法人工業技術研究院Industrial Technology Research Institute ポイントクラウドパッチ処理方法および装置
WO2020070196A1 (en) 2018-10-02 2020-04-09 Telefonaktiebolaget Lm Ericsson (Publ) Encoding and decoding pictures based on tile group id
EP3668096A1 (en) 2018-12-11 2020-06-17 Axis AB Method and device for encoding a sequence of image frames using a first and a second encoder
EP3766245A4 (en) * 2018-12-20 2021-01-27 Telefonaktiebolaget Lm Ericsson (Publ) IMPROVED SIGNAGE OF PAVERS ADDRESSES IN VIDEO ENCODING AND DECODING
EP3713235B1 (en) 2019-03-19 2023-08-02 Axis AB Methods and devices for encoding a video stream using a first and a second encoder
GB2601504B (en) * 2020-12-01 2023-03-29 Imagination Tech Ltd Data compression and packing

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5471248A (en) * 1992-11-13 1995-11-28 National Semiconductor Corporation System for tile coding of moving images
US6040879A (en) * 1997-04-21 2000-03-21 Samsung Electronics Co., Ltd. Method for decoding video data corrupted by channel noise
CN101080008A (zh) * 2007-05-24 2007-11-28 北京交通大学 一种基于迭代函数系统的多描述编码方法

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6263023B1 (en) 1998-10-15 2001-07-17 International Business Machines Corporation High definition television decoder
JP2000244924A (ja) * 1999-02-19 2000-09-08 Ricoh Co Ltd データ圧縮伸長装置
CN100342401C (zh) * 2002-12-20 2007-10-10 皇家飞利浦电子股份有限公司 基于段的运动估计
US8116379B2 (en) * 2004-10-08 2012-02-14 Stmicroelectronics, Inc. Method and apparatus for parallel processing of in-loop deblocking filter for H.264 video compression standard
US8542748B2 (en) 2008-03-28 2013-09-24 Sharp Laboratories Of America, Inc. Methods and systems for parallel video encoding and decoding
US20100232504A1 (en) * 2009-03-13 2010-09-16 The State of Oregon acting by and through the State Board of Higher Education on behalf of the Supporting region-of-interest cropping through constrained compression
US9300976B2 (en) 2011-01-14 2016-03-29 Cisco Technology, Inc. Video encoder/decoder, method and computer program product that process tiles of video data

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5471248A (en) * 1992-11-13 1995-11-28 National Semiconductor Corporation System for tile coding of moving images
US6040879A (en) * 1997-04-21 2000-03-21 Samsung Electronics Co., Ltd. Method for decoding video data corrupted by channel noise
CN101080008A (zh) * 2007-05-24 2007-11-28 北京交通大学 一种基于迭代函数系统的多描述编码方法

Also Published As

Publication number Publication date
CN103299631A (zh) 2013-09-11
US9300976B2 (en) 2016-03-29
WO2012095801A1 (en) 2012-07-19
EP2664148B1 (en) 2021-09-08
EP2664148A4 (en) 2015-11-25
EP2664148A1 (en) 2013-11-20
US20120183074A1 (en) 2012-07-19

Similar Documents

Publication Publication Date Title
CN103299631B (zh) 处理视频数据拼贴的视频编码器/解码器、方法
TWI239207B (en) Method and device for coding digital images using intra-mode block prediction
CN104885467B (zh) 用于下一代视频编码的内容自适应参数变换
CN107295347B (zh) 用于解码合并模式下的运动信息的装置
CN103314581B (zh) 使用列的图像分割方法和系统
CN106059593B (zh) 视频解码装置、视频编码装置及其方法
CN103688543B (zh) 进行图像编码和解码的设备和方法
US9596464B2 (en) Method and device for encoding and decoding by using parallel intraprediction by a coding unit
US9270994B2 (en) Video encoder/decoder, method and computer program product that process tiles of video data
CN102833545B (zh) 灵活量化
US20160227221A1 (en) Method of Residue Differential Pulse-Code Modulation for HEVC Range Extension
US8699580B2 (en) Method, apparatus, and computer readable medium for video compression
KR20150056811A (ko) 차세대 비디오를 위한 콘텐츠 적응적 변환 코딩
CN105850132B (zh) 编解码视频数据块的方法和装置
CN106973298A (zh) 以gpu加速的软件视频转码器
CN108028925A (zh) 用于显示流压缩(dsc)的块预测模式的可变分区大小
CN109565587A (zh) 具有上下文解码和重构旁路的视频编码的方法和系统
CN103563388B (zh) 用于解码视频的方法
CN104904210B (zh) 视频编码设备、视频解码设备、视频编码方法、视频解码方法,以及程序
CN108293114A (zh) 用于显示流压缩的块预测模式的多区域搜索范围
CN105981383A (zh) 视频处理方法及装置
CN113557731B (zh) 用于编码和解码视频样本的块树的方法、设备和系统
KR102028016B1 (ko) 인트라 예측을 이용한 비디오 부호화/복호화 방법 및 장치
CN106233731A (zh) 用于针对显示流压缩(dsc)在图案模式中译码的系统和方法
KR20200071717A (ko) 인트라 예측을 이용한 비디오 부호화/복호화 방법 및 장치

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant