CN103959790A - 高效视频编码中的预测残余的扫描 - Google Patents

高效视频编码中的预测残余的扫描 Download PDF

Info

Publication number
CN103959790A
CN103959790A CN201280056798.0A CN201280056798A CN103959790A CN 103959790 A CN103959790 A CN 103959790A CN 201280056798 A CN201280056798 A CN 201280056798A CN 103959790 A CN103959790 A CN 103959790A
Authority
CN
China
Prior art keywords
prediction
original position
scanning
residual block
piece
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
CN201280056798.0A
Other languages
English (en)
Other versions
CN103959790B (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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Publication of CN103959790A publication Critical patent/CN103959790A/zh
Application granted granted Critical
Publication of CN103959790B publication Critical patent/CN103959790B/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/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive 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/129Scanning of coding units, e.g. zig-zag scan of transform coefficients or flexible macroblock ordering [FMO]
    • 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/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • 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/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • 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/176Methods 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 block, e.g. a macroblock

Abstract

一种包含处理器的视频编解码器,所述处理器配置成生成当前块的预测块、计算所述当前块与所述预测块之间的差值以生成残余块、扫描位于所述残余块中的多个预测残余,并且如果多个残余值包含至少一个非零预测残余,那么对所述至少一个非零预测残余进行熵编码。一种包含以下步骤的方法:生成当前块的预测块、计算所述当前块与所述预测块之间的差值以生成残余块、扫描位于所述残余块中的多个预测残余,并且如果所述多个残余值包含至少一个非零预测残余,那么对所述至少一个非零预测残余进行熵编码。

Description

高效视频编码中的预测残余的扫描
相关申请案的交叉参考
本申请案要求由高文(Wen Gao)等人在2011年11月18日提交的名称为“用于高效视频编码的新无损编码工具(New Lossless Coding Toolsfor High Efficiency Video Coding)”的第61/561,705号美国临时专利申请案的优先权,并且要求由高文(Wen Gao)等人在2012年11月16日提交的名称为“高效视频编码中的预测残余的扫描(Scanning of PredictionResiduals in High Efficiency Video Coding)”的第13679184号美国专利申请案的优先权,所述申请案如同被复制以全文引用的方式并入本文中。
技术领域
本发明涉及通信网络,并且更确切地说,涉及在高效视频编码中的预测残余的扫描。
背景技术
当数据将要在宽带容量受限的通信网络中流过或以其他方式传送时,需要对大量的视频数据进行描述,即使在影片相对较短情况下也会如此,这种情况可能会产生问题。因此,视频数据通常先进行压缩,然后在现代电信网络中传送。在传输之前,视频压缩设备通常在源处使用软件和/或硬件来对视频数据进行编码,从而减少了用以表示数字视频图像所需的数据量。随后经压缩的数据在目的地由视频解压装置接收,所述视频解压装置对视频数据进行解码。在网络资源受限而更高质量的视频需求不断增加的情况下,需要改进的压缩以及解压技术来提高压缩比,而很少或几乎不会损坏图像质量。
例如,视频压缩可以对预测残余(表示原始像素与预测像素之间的差值)而非原始像素进行编码以降低比特率。预测残余可以进行变换和量化而产生量化后的变换系数,随后可以对所述量化后的变换系数进行扫描以确定非零系数的位置。因为非零系数通常会位于变换块的左上部分,所以现有扫描方案已经针对非零系数的此分布图案进行设计。在可以略过变换的方案中,非零系数可能不集中在左上部分。因此,当对残余块中的任何地方都可能具有非零值的预测残余进行扫描时,现有扫描方案可能是低效的。
发明内容
在一个实施例中,本发明包括包含处理器的视频编解码器,所述处理器配置成生成当前块的预测块、计算当前块与预测块之间的差值以生成残余块、扫描位于残余块中的多个预测残余,并且如果多个残余值包含至少一个非零预测残余,那么对至少一个非零预测残余进行熵编码。
在另一实施例中,本发明包括一种方法,所述方法包含生成当前块的预测块、计算当前块与预测块之间的差值以生成残余块、扫描位于残余块中的多个预测残余,并且如果多个残余值包含至少一个非零预测残余,那么对至少一个非零预测残余进行熵编码。
在又另一实施例中,本发明包括视频编解码器,所述视频编解码器包含:配置成接收比特流的接收器,所述比特流包含至少一个经编码的预测残余、经编码的两位语法元素,以及经编码的完整重要图;以及处理器,所述处理器耦合到接收器上并且配置成对至少一个经编码的预测残余、经编码的两位语法元素,以及经编码的完整重要图进行熵解码以分别生成至少一个经解码的预测残余、经解码的两位语法元素,以及经解码的完整重要图,并且基于至少一个经解码的预测残余、经解码的两位语法元素,以及经解码的完整重要图来重建残余块。
从结合附图以及权利要求书进行的以下详细描述中将更清楚地理解这些以及其他特征。
附图说明
为了更完整地理解本发明,现在参考以下结合附图和具体实施方式进行的简要描述,其中相同参考标号表示相同部分。
图1为多个帧内预测模式的图。
图2为变换略过编码方案的一个实施例的示意图。
图3为变换略过解码方案的一个实施例的示意图。
图4为无变换量化编码方案一个的实施例的示意图。
图5为无变换量化解码方案的一个实施例的示意图。
图6A到图6D为Z字形扫描图案的实施例的图。
图7为编码方法的一个实施例的流程图。
图8为计算机系统的示意图。
具体实施方式
在开始应理解,尽管下文提供一个或多个实施例的说明性实施方案,但可以使用任何数目的技术,不管是当前已知还是现有的,来实施所揭示的系统和/或方法。本发明决不应限于下文所示出的说明性实施方案、图式以及技术,包括本文中所示出以及描述的示例性设计以及实施方案,而是可以在所附权利要求书的范围以及其等效物的整个范围内修改。
视频媒体可以涉及相对较快地连续显示一系列静态图像或帧,从而让观察者感觉到运动。每个帧可以包含多个图像样本或像素,每个图像样本或像素可以表示帧中的单个参考点。在数字处理期间,每个像素可以被分配一个整数值(例如,0、1、…或255),所述整数值表示在对应参考点处的图像质量或特征,诸如,亮度(luma或Y)或色度(包括U和V的chroma)。使用时,图像或视频帧可以包含大量像素(例如,1920×1080的帧中包含2,073,600个像素),因此对每个像素独立地进行编码和解码(下文中简称为编码)可能繁琐而低效。为了提高编码效率,通常将视频帧分成多个矩形块或宏块,所述矩形块或宏块可以作为诸如预测、变换以及量化等处理过程的基本单元。例如,典型的N×N个块可以包含N2个像素,其中N是整数并且通常是四的倍数。
在由国际电信联盟(ITU)电信标准化部门(ITU-T)和国际标准化组织(ISO)/国际电工技术委员会(IEC)发布并准备作为未来视频标准的高效率视频编码(HEVC)的工作草案中,已经引入了新的块概念。例如,编码单元(CU)可以指代将视频帧分为相等尺寸或不同尺寸的正方形块的子分区。在HEVC中,CU可以取代先前标准的宏块结构。根据帧间或帧内预测模式,一个CU可以包含一个或多个预测单元(PU),每个预测单元可以用作预测的基本单元。例如,对于帧内预测而言,一个64×64的CU可以对称地分为四个32×32的PU。又例如,对于帧间预测而言,一个64×64的CU可以非对称地分为一个16×64的PU和一个48×64的PU。类似地,一个PU可以包含一个或多个变换单元(TU),每个变换单元可以用作变换和/或量化的基本单元。例如,一个32×32的PU可以对称地分为四个16×16的TU。一个PU的多个TU可以共享同一预测模式,但是可以单独地进行变换。本文中,术语“块”通常可以指宏块、CU、PU或TU中的任一者。
连续的视频帧或切片可以是大体相关的,使得帧中的块与先前编码的帧中的对应块不会有显著不同。帧之间的预测(简称帧间预测)可以利用帧序列中的时间冗余,例如,连续帧的对应块之间的相似性,以便减少压缩数据。在帧间预测中,基于位于当前帧之前的一个或多个参考帧中的对应块,可以根据编码顺序实施运动补偿算法以计算当前帧中的当前块的运动矢量。
类似地,在视频帧内,像素可以与同一帧内的其他像素相关,使得块内的像素值或一些块上的像素值可能仅略有不同和/或呈现出重复的结构(texture)。为了利用同一帧中的相邻块之间的空间相关性,可以通过视频编码器/解码器(编解码器)来实施帧内部的预测(简称帧内预测)以插入来自一个或多个先前编码的相邻块的预测块(或经预测块),从而产生当前块的估计。编码器和解码器可以独立地插入预测块中,从而使得大部分的帧和/或图像能够根据相对少量的参考块的通信进行重建,所述参考块例如,位于帧的左上角(并从此处延伸)的块。
为了控制这些编码效率,视频/图像编码标准可以通过在帧内预测期间利用多个预测模式来提高预测精确性,所述预测模式中的每一者可以生成唯一的结构。图1为多个帧内预测模式10(下文中也称作帧内模式)的图,所述帧内预测模式10可以用于HEVC统一帧内预测(UIP)方案中。对于亮度分量,帧内预测模式10可以包含多达35个帧内预测模式,所述帧内预测模式可以包括33个定向模式以及2个非定向模式,诸如直流(DC)预测模式和平面预测模式。每一个模式可以被分配一个取决于应用的模式名称。在HEVC中,平面模式可以被分配或指定为模式0、DC模式为模式3、水平模式为模式2等等。尽管图1示出了针对亮度分量(也即,Y)的35个帧内预测模式,但是根据块的尺寸、帧内预测方案,和/或视频编码标准,也可以使用任何其他数目的预测模式。对于两个色度分量(也即,U和V)中的每一者,可以使用多达6个帧内预测模式,所述帧内预测模式包括来自亮度预测模式(通常称作线性方法(LM)模式)、垂直预测模式、水平预测模式、对角线模式、DC模式,以及从亮度分量获得的直接模式(DM)的色度。在DM模式中,色度块使用与其对应的亮度块相同的帧内预测模式。
如图1中所示,33个定向模式可以关于垂直方向、水平方向以及对角线方向对称。因此,只需要9个方向来表示33个方向,而其他24个方向可以通过加法、减法和/或移位运算获得。例如,可以使用包括模式1、23、13、24、6、25、14、26和7的9个模式,这些模式在45度(零度表示右水平侧)到90度的范围内。所述9个模式中的每一者都具有与右水平线形成的预定义的角度。在HEVC中,所述角度可以定义为arccot(k/32),其中k具有分别对应于9个模式1、23、13、24、6、25、14、26和7的值0、2、5、9、13、17、21、26和32。例如,模式14具有的角度为arccot(21/32)=56.7度。
在帧内预测之后,编码器可以计算预测块与原始块之间的差值(例如,通过从原始块减去预测块)以产生残余块。由于用来表示残余块所需的数据量通常小于用来表示原始块所需的数据量,所以可以对残余块而非原始块进行编码以获得更高的压缩比。在现有的HEVC软件模型(HM)中,空间域中的残余块的预测残余可以被转换成频域中的变换矩阵的变换系数。所述转换可以通过二维变换来实现,例如,与离散余弦变换(DCT)非常相似或相同的变换。在变换矩阵中,低索引变换系数(例如,在左上部分中),例如与具有低空间频率分量的大空间特征相对应,可能具有相对较高的量值;而高索引变换系数(例如,在右下部分中),例如与具有高空间频率分量的小空间特征相对应,可能具有相对较小的量值。
此外,在跟随着变换的量化操作中,高索引变换系数的数量可以减小至零,从而可以在随后的编码步骤中被跳过。由于零变换系数可能集中于变换矩阵的右下部分,因此块结束(EOB)符号可以用于表示最后的非零变换系数。
为了确定EOB位置以及其他非零变换系数的潜在位置,在当前HM(例如,HM4.0)中,模式相关的系数扫描(MDCS)可以用于帧内编码。可以有三种扫描图案或顺序,包括Z字形图案(由索引0表示)、水平图案(由索引1表示),以及垂直图案(由索引2表示)。MDCS的主要思想为对于相对较小的TU(例如,8×8或4×4的TU),当(例如)在垂直方向进行帧内预测(也即,图1中的模式1)时,经变换的系数可能通常出现在变换矩阵的顶部水平部分中。在此情况下,水平扫描顺序可以有助于减少用以对重要图以及EOB进行编码所需的总比特数。类似地,当在水平方向进行帧内预测(也即,图1中的模式2)时,变换系数的垂直扫描可能更加有效。基于此思想,映射表或查找表被采纳进HM4.0中,如表1中所示。可以看到,可以基于帧内预测模式以及TU的尺寸来选择扫描图案。
表1-HM4.0中的MDCS映射表
当前HM中的扫描方案可能已经设计用于经量化的变换系数的扫描,所述经量化的变换系数在变换块的特定区域或部分中(例如,在左上部分中)通常具有较高的绝对值。然而,在一些编码方案中可能不存在变换块,在所述情况下,可以直接扫描预测残余并且对其进行编码。无论是否经量化,预测残余都可以呈现出与变换系数不同的统计特性。例如,具有高绝对值的预测残余可能出现在残余块中的任何地方,例如,在右下部分或右上部分中。与变换系数相比,此分布图案可能是不同的,所述变换系数通常在右下部分中具有较小绝对值或零绝对值。因此,为了适合非零预测残余的分布图案,可能需要更改现有的扫描方案。
本文中所揭示的为用于预测残余的改进扫描的系统和方法。在本发明中,变换略过编码方案可以用于实现无损编码,并且无变换量化编码方案(有时称为变换跳过方案)可以用于实现近无损编码。在这些方案中,经量化或未经量化的预测残余都可以使用熵编码器来直接进行编码。在没有变换步骤将非零残余值集中在变换矩阵左上角的情况下,非零预测残余可能以不同方式表现,例如,出现在残余块的随机位置中。在对非零预测残余进行编码之前,可以对所有的预测残余进行扫描以生成指示出非零预测残余以及零预测残余的位置的完整重要图。为了提高对完整重要图进行编码的效率,本文中揭示了模式相关的残余扫描(MDRS)方案,所述方案基于预测模式来确定起始位置和/或扫描顺序。例如,在帧间预测中,起始位置可以为残余块的四个角中的任一者,并且两位语法元素可以用于指定起始位置。在帧内预测中,扫描顺序可以取决于帧内预测模式。取决于预测块(或残余块)的尺寸是否不超过预设限制以及帧内预测模式是在水平组、垂直组还是在对角线组中,可以实施包括水平、垂直,以及Z字形顺序的各种扫描顺序。
图2示出了可以在视频编码器中实施的变换略过编码方案100的一个实施例。变换略过编码方案100可以包含如图2中所示进行布置的率失真优化(RDO)模块110、预测模块120、熵编码器130以及重建模块140。在操作中,包含视频帧(或切片)序列的输入视频可以由编码器接收。本文本中,帧可以指预测帧(P帧)、帧内编码帧(I帧),或双向预测帧(B帧)中的任一者。同样,切片可以指P切片、I切片,或B切片中的任一者。
RDO模块110可以配置成为一个或多个其他模块作出逻辑决策。在一个实施例中,基于一个或多个先前编码的帧,RDO模块110可以确定正进行编码的当前帧(或切片)被分成多个CU的方法,以及CU被分成一个或多个PU和TU的方法。例如,当前帧的均质区域(即,这些区域中的像素值没有差别或差别很小)可以分成相对较大的块,而当前帧的细节区域(即,这些区域中的像素值差别很大)可以分成相对较小的块。此外,RDO模块110可以通过确定预测当前帧的方法来控制预测模块120。当前帧可以通过帧间和/或帧内预测进行预测。帧间预测可以使用运动补偿算法来实施。帧内预测可以使用多个可用预测模式或方向(例如,HEVC中亮度分量的35个模式)中的任一者来实施,其可以由RDO模块110确定。例如,RDO模块110可以针对所有帧内预测模式或帧内预测的子集来计算绝对差之和(SAD),并且选择产生最小SAD的帧内预测模式。
基于由RDO模块110作出的逻辑决策,预测模块120可以利用一个或多个参考帧(帧间预测)或多个参考像素(帧内预测)来生成预测块,所述预测块可能是对当前块的估计。随后,可以从当前块中减去预测块,从而生成残余块。残余块可以包含多个残余值,每个残余值都可以表示当前块中的像素与预测块中的对应像素之间的差值。残余值和预测残余在本文中可以互换着使用。随后,可以扫描残余块的所有值,并且可以确定非零残余值的位置。对残余值的扫描从起始位置开始并且按照特定的扫描顺序。起始位置和/或扫描顺序可以基于用于生成预测块的预测模式以及预测块的尺寸来确定。例如,如果残余块通过帧间预测生成,那么起始位置可以为该残余块的四个角中的任一者,并且扫描顺序可以为水平顺序或Z字形顺序。再如,如果残余块通过帧内预测生成,那么起始位置可以为该残余块的左上角像素,并且扫描顺序可以为水平、垂直,或Z字形顺序。
在一个实施例中,指出每一个非零残余值以及每一个零残余值的位置的完整重要图可以在扫描之后生成。随后,完整重要图以及非零残余值可以由熵编码器130进行编码并且被插入经编码的比特流中。熵编码器130可以采用任何熵编码方案,诸如上下文自适应二进制算术编码(CABAC)编码、指数哥伦布编码,或定长编码,或其任意组合。在变换略过编码方案100中,由于在没有变换步骤或量化步骤的情况下对残余块进行编码,因此编码过程中不会引起任何信息损失。
为了便于视频帧的连续编码,残余块也可以送入重建模块140中,该重建模块可以生成参考像素以用于未来块的帧内预测,或生成参考帧以用于未来帧的帧间预测。如果需要,可以在参考帧/像素用于帧间/帧内预测之前对它们进行滤波。由于所属领域的技术人员熟悉预测模块120和重建模块140的功能,因此将不再进一步对这些模块进行描述。应注意,图1可以为视频编码器的简化图示,因此它可以只包括存在于编码器中的模块的一部分。其他模块(例如,滤波器、扫描仪以及发射器)虽然未在图1中示出,但是也可以被包括在内以便于视频编码。在从编码器进行传输之前,经编码的比特流可以进一步配置成包括其他信息,诸如视频分辨率、帧速率、块分区信息(尺寸、坐标),预测模式等,因此可以恰当地对视频帧的编码序列进行解码。
图3示出了可以在视频解码器中实施的变换略过解码方案200的一个实施例。变换略过解码方案200可以对应于变换略过编码方案100,并且可以包含如图3所示进行布置的熵解码器210、预测模块220以及重建模块230。在操作中,含有视频帧序列信息的经编码的比特流可以由熵解码器210接收,所述熵解码器可以将比特流解码成未压缩格式。非零经编码的残余值可以由熵解码器210进行解码。所述熵解码器210可以采用任何熵解码方案,诸如CABAC解码、指数哥伦布解码,或定长解码,或其任意组合。
对于正进行解码的当前块,残余块可以在执行熵解码器210之后生成。为了恰当放置每一个非零残余像素,可以使用由熵解码器210进行解码的完整重要图。此外,含有预测模式的信息也可以由熵解码器210进行解码。随后,基于预测模式,预测模块220可以生成预测块。如果经解码的预测模式为帧间模式,那么可以使用一个或多个先前解码的参考帧来生成预测块。否则,如果经解码的预测模式为帧内模式,那么可以使用多个先前解码的参考像素来生成预测块。随后,重建模块230可以将残余块与预测块结合起来以生成经重建块。另外地,为了便于视频帧的连续解码,可以在参考帧中使用重建块,以对未来帧进行帧间预测。重建块的一些像素也可以用作参考像素,以用于同一帧中的未来块的帧内预测。
在使用中,如果使用诸如变换略过编码方案100和变换略过解码方案200等无损方案对原始块进行编码和解码,那么整个编码过程中将不会引起信息损失。因此,除非在传输期间导致失真,否则重建块可以与原始块完全相同。此编码的高保真度可以改进用户在查看诸如复合视频中的文本和图形等视频内容时的体验。
有时可能需要将量化步骤而非变换步骤包括在编码过程中。图4示出了无变换量化编码方案400(有时称为变换跳过方案)的一个实施例,其可以在视频编码器中实施。无变换量化编码方案400可以包含RDO模块410、预测模块420、量化模块430、熵编码器440、去量化模块450,以及重建模块460。无变换量化编码方案400的一些方面可以与图2中的变换略过编码方案100相同或相似,因此为了简洁起见,进一步的描述将关注不同的方面。
无变换量化编码方案400可以在视频编码器中实施,所述视频编码器可以接收包含视频帧序列的输入视频。RDO模块410可以配置成控制一个或多个其他模块。基于由RDO模块410作出的逻辑决策,预测模块420可以利用外部参考像素和内部参考像素两者来生成当前块的预测像素。可以从当前块中的对应原始像素中减去每个预测像素,从而生成残余像素。在已经对所有残余像素进行计算以获得残余块之后,残余块可以经过量化模块430。残余值的范围可能被改变,例如,每一个残余值除以因数五。因此,一些非零残余值可以被转换成零残余值(例如,小于某一阈值的值被视为零)。
在已经针对当前块生成所有经量化的残余像素之后,可以对经量化的残余像素进行扫描,并且可以确定非零经量化的残余值的位置。对残余值的扫描从起始位置开始并且按照特定的扫描顺序。起始位置和/或扫描顺序可以基于预测块的尺寸以及用于生成预测块的预测模式来确定。例如,如果残余块通过帧间预测生成,那么起始位置可以为经量化的残余块的四个角中的任一者,并且扫描顺序可以为水平顺序或Z字形顺序。再如,如果残余块通过帧内预测生成,那么起始位置可以为经量化的残余块的左上角像素,并且扫描顺序可以为水平、垂直,或Z字形顺序。
在一个实施例中,指示出每一个经量化的非零残余值以及每一个零经量化的残余值的位置的完整重要图可以在扫描之后生成。随后,完整重要图以及非零残余值可以由熵编码器130进行编码并且被插入经编码的比特流中。在从编码器进行传输之前,经编码的比特流可以进一步配置成包括其他信息,诸如视频分辨率、帧速率、块分区信息(尺寸、坐标),预测模式等,因此可以恰当地对视频帧的编码序列进行解码。
图5示出了可以在视频解码器中实施的无变换量化解码方案500的一个实施例。变换略过解码方案500可以对应于无变换量化编码方案400,并且可以包含如图5中所示进行布置的熵解码器510、去量化模块520、预测模块530,以及重建模块540。在操作中,含有视频帧序列信息的经编码的比特流可以由熵解码器510接收,所述熵解码器可以将比特流解码成未压缩格式。非零经量化的编码残余值可以由熵解码器510进行解码。
对于正进行解码的当前块,残余块可以在执行熵解码器510之后生成。为了将每一个非零经量化的残余像素恰当放置在残余块中,可以使用由熵解码器510进行解码的完整重要图。随后,经量化的残余值可以被送入去量化模块520中,所述去量化模块520恢复残余值的范围(例如,将每一个残余值乘以因数5)。注意,在量化和去量化之后,残余值可能并未完全恢复至其原始值,因此在编码过程中可能会引起一些信息损失。
此外,含有预测模式的信息也可以由熵解码器510进行解码。基于预测模式,预测模块530可以生成预测块。如果经解码的预测模式为帧间模式,那么可以使用一个或多个先前解码的参考帧来生成预测块。否则,如果经解码的预测模式为帧内模式,那么可以使用多个先前解码的参考像素来生成预测块。随后,重建模块230可以将残余块与预测块结合起来以生成重建块。另外地,为了便于视频帧的连续解码,可以在参考帧中使用重建块,以对未来帧进行帧间预测。重建块的一些像素也可以用作参考像素,以用于同一帧中的未来块的帧内预测。
当变换步骤被跳过时,例如,在变换略过编码方案100或无变换量化编码方案400中,可以对预测残余而非变换系数进行扫描并且随后进行编码。无论是否经量化,预测残余都可以呈现出与变换系数不同的统计特性。例如,在帧内预测中,残余像素可能与变换系数表现得不一样。作为替代,对于相对较小的块(例如,具有8×8或4×4尺寸的TU),当在垂直方向进行帧内预测(例如,图1中的模式1)时,预测残余可能在垂直方向出现。换句话说,位于同一列中的预测残余更有可能具有相同或相似的像素值。因此,可以实施垂直扫描顺序或图案,在所述情况下,逐列对预测残余进行扫描。此外,根据起始位置,垂直扫描可以从残余块的四个角中的任一者开始。假设起始位置为具有索引(0,0)的左上像素,那么垂直扫描可以首先从上到下对第0列进行扫描,随后从上到下对第1列进行扫描,…,最后从上到下对第(N-1)列进行扫描。预测残余的垂直扫描可以减少用以对完整重要图进行编码所需的总比特数,从而实现较高的编码效率。
类似地,对于相对较小的块(例如,具有8×8或4×4尺寸的TU),当在水平方向进行帧内预测(例如,图1中的模式2)时,预测残余可能在水平方向出现。换句话说,位于同一行中的预测残余更有可能具有相同或相似的像素值。因此,可以实施水平扫描顺序或图案,在所述情况下,逐行对预测残余进行扫描。此外,根据起始位置,水平扫描可以从残余块的四个角中的任一者开始。假设起始位置为具有索引(0,0)的左上像素,那么水平扫描可以首先从左到右对第0行进行扫描,随后从左到右对第1行进行扫描,…,并且最后从左到右对第(N-1)行进行扫描。在此情况下,水平扫描可以有助于提高编码效率。
当在对角线方向进行帧内预测(例如,图1中的模式4、7以及10)时,预测残余可以按照Z字形顺序进行扫描。根据起始位置,Z字形扫描可以从残余块的四个角中的任一者开始。此外,可以存在其他帧内预测方向(例如,在亮度分量的HEVC中多达33个定向模式),所述方向基于其与垂直、水平,或对角线轴线之间的相对接近度而被分类到垂直、水平,或对角线组中。例如,如果帧内预测方向与垂直轴线所成的角度小于预定阈值,那么帧内预测方向可以被分类到垂直组中,并且可以按照垂直顺序扫描残余值。否则,如果帧内预测方向与水平轴线所成的角度小于预定阈值,那么帧内预测方向可以被分类到水平组中,并且可以按照水平顺序扫描残余值。否则,如果帧内预测方向与对角线方向所成的角度小于预定阈值,那么帧内预测方向可以被分类到对角线组中,并且可以按照Z字形顺序扫描残余值。
因为扫描顺序取决于帧内预测模式,以及块(例如,TU)的尺寸,所以扫描方案可以称为模式相关的残余扫描(MDRS)。映射表可以用于帮助确定在给定帧内预测模式和TU尺寸的情况下应当使用的扫描顺序。表2示出了映射表的一个实施例,其包括三种扫描图案:Z字形图案(由索引0表示)、水平图案(由索引1表示),以及垂直图案(由索引2表示)。
表2-用于预测残余的MDRS映射表
注意,表2使用图1中所指定的模式数目。帧内预测模式和TU尺寸的每一个组合确定用于预测残余的扫描图案。例如,如果帧内模式24用于8×8的TU,那么可以使用垂直图案来对预测残余进行扫描。从表2可见,如果帧内预测方向与垂直方向(即,模式1的方向)之间的角度小于π/8弧度或22.5度,那么帧内预测方向被分类到垂直组中。在此情况下,22.5度为预定阈值。根据图1,模式5、21、12、22、1、23、13、24以及6属于此组。在垂直组中,模式5以及模式6与垂直方向所成的角度最大(arctan(13/32)=22.1度),所述角度仍小于22.5度。类似地,如果在帧内预测方向与水平方向(即,模式2的方向)之间的角度小于22.5度,那么帧内预测方向被分类到水平组中。根据图1,模式9、32、17、31、2、30、16、29以及8属于此组。否则,如果在帧内预测方向与对角线方向(即,模式4、7以及10的方向)之间的角度小于22.5度,那么帧内预测方向被分类到对角线组中。根据图1,模式10、34、18、33、28、15、27、4、19、11、20、25、14、26以及7属于此组。对于相对较小的块(例如,8×8或4×4的TU),扫描顺序可以取决于帧内预测方向。然而,对于相对较大的块(例如,32×32或16×16的TU),不管帧内预测方向如何,都可以使用Z字形扫描顺序。此外,对于DC模式(图1中的模式3)以及平面模式(图1中的模式0),Z字形扫描顺序可以用于所有的块尺寸。与当前用于HM中的表1相比,表2可以是1的位置与2的位置的简单交换。
应注意,在不脱离本发明的原则的情况下,可以对表1进行另外的改变。例如,如果并入另外的帧内预测方向,那么使用上文所设置的标准,另外的方向可以相应地被分类到垂直、水平或对角线组中。此外,可以添加另外的TU尺寸或其他块,例如,包括64×64的块。较小块和较大块的标准可以根据具体应用而改变。同样,22.5度的预定阈值可以改变成任何其他合适的值。
与通常集中在块的左上部分的变换系数不同,具有高绝对值的帧间预测残余可以出现在残余块的随机位置,例如,在右下部分或右上部分。因此,为了提高编码效率,本发明教示了用于预测残余的扫描(MSCAN)的多个起始位置。MSCAN工具或方案可以基于RDO过程而选择不同的起始位置。例如,当对预测残余的完整重要图进行编码时,产生最小经编码的比特数的起始位置可以被选择为最优起始位置。
在使用中,关于起始位置的信息可以被包括在经编码的比特流中以便于由解码器进行解码。在一个实施例中,为了表示不同的起始位置,在HEVC语法的背景下,表示为(C0,C1)的2位语法元素可以被包括在比特流中。例如,考虑N×N的残余块,其残余值表示为Z(m,n),其中N为大于一的整数,m为在0与N-1之间变化的列索引,n为在0与N-1之间变化的行索引,并且Z(m,n)为位置(m,n)处的残余值。应注意,尽管本文中出于说明的目的而使用N×N的正方形块,但是也可以类似地使用非正方形的矩形块。(C0,C1)可以配置成表示:
根据上述(C0,C1),例如,具有二进制值‘11’的语法元素等于3并且可以表示残余值的扫描从Z(N-1,N-1)开始。应理解,语法元素的分配值可以在本发明的原则内变化。例如,如果需要,那么‘11’语法元素的解译可以被改变,从而表示起始位置为Z(0,N-1)。
伴随着起始位置,预测残余的扫描可以以各种顺序来实施。假设经帧间编码的残余块包含按照以下顺序的预测残余,其中每一排表示一行:
在一个实施例中,水平扫描顺序可以用于帧间预测残余。在此实施例中,扫描起始位置索引的定义可以设置为:
●索引=00:从左上角的残余开始扫描残余。也就是说,从左到右扫描第0行(即,从Z(0,0)到Z(N-1,0)),随后从左到右扫描第1行,…,并且从左到右扫描第(N-1)行。因为此扫描顺序与光栅扫描顺序相同(其中从左到右并且从上到下进行逐行对残余进行扫描),所以残余块可以保持原样(即,不需要将原始残余块转换成新残余块)。或者,如果形成了新残余块,那么它与原始残余块相同。
●索引=01:从右上角的残余开始扫描残余。也就是说,从右到左扫描第0行(即,从Z(N-1,0)到Z(0,0)),随后从右到左扫描第1行,…,并且从右到左扫描第(N-1)行。此扫描顺序可以被认为是新残余块的光栅扫描,所述新残余块通过水平翻转原始残余块获得。具体地说,新残余块包含按照以下顺序的预测残余:
●索引=10:从左下角的残余开始扫描残余。也就是说,从左到右扫描第(N-1)行,随后从左到右扫描第(N-2)行,…,并且从左到右扫描第0行。此扫描顺序可以被认为是新残余块的光栅扫描,所述新残余块通过垂直翻转原始残余块获得。具体地说,新残余块包含按照以下顺序的预测残余:
●索引=11:从右下角的残余开始扫描残余。也就是说,从右到左扫描第(N-1)行,随后从右到左扫描第(N-2)行,…,并且从右到左扫描第0行。此扫描顺序可以被认为是新残余块的光栅扫描,所述新残余块通过将原始残余块旋转180度获得。具体地说,新残余块包含按照以下顺序的预测残余:
在一个实施例中,三个不同的起始位置索引可以用于三个颜色分量(即,亮度Y、色度U,以及色度V)。例如,表示为ScanIdxY的第一索引表示用于Y分量扫描的起始位置索引,表示为ScanIdxU的第二索引表示用于U分量扫描的起始位置索引,以及表示为ScanIdxV的第三索引表示用于V分量扫描的起始位置索引。在一个替代实施例中,两个或两个以上的颜色分量可以共享同一起始位置索引。
在一个实施例中,MSCAN方案可以如上文所描述来实施以形成新残余块,所述新残余块随后将按照常规的Z字形顺序来扫描。常规的Z字形扫描从新残余块的左上角残余开始,穿过所有残余,并且在新残余块的右下角残余结束。
在一个替代实施例中,所揭示的MSCAN方案可以与常规的Z字形扫描合并成单个扫描操作。在此情况下,不需要形成新残余块并且各种Z字形扫描图案可以用于对在原始残余块中的经帧间编码的残余的完整重要图进行编码。图6A到图6D示出了Z字形扫描图案的四个不同实施例,所述Z形扫描图案可以经实施以扫描经帧间编码的残余块。如图6A中所示,当起始位置为由起始位置索引00所表示的左上角的残余时,可以实施Z字形扫描图案610。Z字形扫描图案610为常规的Z字形扫描图案。类似地,如图6B中所示,当起始位置为由起始位置索引01所表示的右上角的残余时,可以实施Z字形扫描图案620。如图6C中所示,当起始位置为由起始位置索引10所表示的左下角的残余时,可以实施Z字形扫描图案630。如图6D中所示,当起始位置为由起始位置索引11所表示的右下角的残余时,可以实施Z字形扫描图案640。图6A到图6D的每一者中的箭头展示了残余块中的所有残余像素可以进行扫描的顺序。所揭示的MSCAN方案的各实施例可以提高通过帧间或帧内预测而生成的残余块的编码效率。
为了调节在扫描帧间/帧内预测残余时选择多个起始位置的能力,可以相应地更改软件语法。在一个实施例中,用于残余编码的CABAC语法可以如表3所指定。
表3-用于残余编码的语法表
在表3中,表示为LosslessCodingFlag的变量可以指示当前块(例如,CU)是否以无损模式(例如,使用变换略过编码方案100)进行编码。LosslessCodingFlag可以基于当前块的Y分量(QPY)的量化参数来确定。如果QPY=0,那么LosslessCodingFlag可以被设置为1;否则如果QPY≠0,那么LosslessCodingFlag可以被设置为0。所属领域的技术人员将认识并且理解表3中的符号以及逻辑,因此为了简洁起见,将不再对这些方面进一步进行讨论。
图7示出了编码方法700的一个实施例,所述编码方法700可以在编解码器中实施为编码方案的一部分,诸如变换略过编码方案100或无变换量化编码方案400。方法700可以在步骤710中开始,其中可以生成或计算出用于视频帧中的当前块的预测块。使用位于先前编码的视频帧中的参考块经由帧间预测,或使用位于同一视频帧中的参考像素经由帧内预测,可以生成预测块。此外,帧内预测可以使用多个可用的帧内预测模式(例如,对于Y分量多达35个模式,并且对于U或V分量多达6个模式)中的任一者来实施。
接下来,在步骤720中,可以计算出当前块与预测块之间的差值以生成残余块。残余块包含多个预测残余,所述预测残余可以包括零残余和/或非零残余。在步骤730中,方法700可以检查用以生成预测块的预测模式是否为帧内预测模式。如果满足步骤730中的条件,那么方法700可以前进到步骤740;否则,方法700可以前进到步骤770。在步骤740中,方法700可以进一步检查预测块(例如,TU)的尺寸是否不超过预设限制(例如,8×8)并且预测模式的方向是否属于水平组。在一个实施例中,水平组中的每一个帧内预测模式的方向与水平方向(即,图1中的模式2的方向)所成的角度小于22.5度。如果满足步骤740中的条件,那么方法700可以前进到步骤742,其中多个预测残余可以从左上角残余开始逐行进行扫描(即,按照水平顺序);否则方法700可以前进到步骤750。
在步骤750中,该方法可以进一步检查预测块的尺寸是否不超过预设限制(例如,8×8)并且预测模式的方向是否属于垂直组。在一个实施例中,垂直组中的每一个帧内预测模式的方向与垂直方向(即,图1中的模式1的方向)所成的角度小于22.5度。如果满足步骤750中的条件,那么方法700可以前进到步骤752,其中多个预测残余可以从左上角残余开始逐列进行扫描(即,按照垂直顺序);否则,方法700可以前进到步骤760,其中多个预测残余可以从左上角残余开始按照Z字形顺序(即,图6A中的Z字形顺序610)进行扫描。
如果预测块通过帧间预测生成,那么在步骤770中,方法700可以使用率失真标准来确定扫描的最优起始位置。该起始位置可以从残余块的四个角位置中选出。在一个实施例中,产生用以对残余块的完整重要图进行编码所需的最小比特数的起始位置可以视为最优起始位置。在步骤772中,多个预测残余可以从最优起始位置开始并且按照Z字形顺序进行扫描。在步骤774中,表示为(C0,C1)的两位语法元素可以经编码以表示最优起始位置。两位语法元素可以被插入经编码的比特流中,因此视频解码器可以使用该信息来恰当地恢复非零预测残余的位置。
在步骤780中,可以生成完整重要图以表示每一个非零值残余像素以及每一个零值残余像素的位置,并且随后方法700可以结束。应注意,在不脱离本发明的原则的情况下,可以更改方法700。例如,步骤740和步骤750可以被合并成一个步骤,其中可以确定帧内预测模式是属于水平组、垂直组、对角线组,还是为非定向模式(例如,DC模式)。同时,可以检查预测块的尺寸。之后,在一个实施例中,查找或映射表(例如,表2)可以用于确定所应采用以对多个预测残余进行扫描的扫描顺序。此外,注意,扫描也可以从除了左上角位置之外的位置开始。如果步骤并不彼此依赖,那么方法700的某些步骤可以在顺序上进行交换。例如,如果需要,那么步骤774可以在步骤772之前执行或与步骤772同时执行。此外,在对当前块进行编码时,方法700可以仅包括必要步骤的一部分。因此,如果需要,那么可以将另外的步骤添加到方法700中,诸如在生成残余块之后并且在对预测残余进行扫描之前的预测残余的量化。
上文所描述的方案可以在网络组件上实施,诸如计算机或网络组件,其具有足够的处理能力、存储资源以及网络吞吐能力以处理其上的必要工作量。图8示出了网络组件或计算机系统1300的一个实施例,所述网络组件或计算机系统1300适合于实施本文中所揭示的方法的一个或多个实施例,诸如变换略过编码方案100、变换略过解码方案200、无变换量化编码方案400、无变换量化解码方案500,以及编码方法700。网络组件或计算机系统1300包括与存储装置进行通信的处理器1302,所述存储装置包括辅助存储器1304、只读存储器(ROM)1306、随机存取存储器(RAM)1308、输入/输出(I/O)装置1310,以及发射器/接收器1312。尽管被图示为单个的处理器,但处理器1302并不限于此并且可以包含多个处理器。处理器1302可以实施为一个或多个中央处理器单元(CPU)芯片、核心(例如,多核处理器)、现场可编程门阵列(FPGA)、专用集成电路(ASIC),和/或数字信号处理器(DSP),并且/或者可以为一个或多个ASIC的一部分。处理器1302可以配置成实施本文中所描述的任何方案,包括变换略过编码方案100、变换略过解码方案200、无变换量化编码方案400、无变换量化解码方案500,以及编码方法700。处理器1302可以使用硬件或硬件与软件的组合来实施。
辅助存储器1304通常由一个或多个磁盘驱动器或磁带驱动器组成并且用于数据的非易失性存储,并且如果RAM1308不足以容纳所有的工作数据,那么所述辅助存储器则用作溢流数据存储装置。辅助存储器1304可以用于存储程序,当选择执行这些程序时,所述程序将加载到RAM1308中。ROM1306用于存储在程序执行期间读取的指令以及可能的数据。ROM1306为非易失性存储装置,其存储容量相对于辅助存储器1304的较大存储容量而言通常较小。RAM1308用于存储易失性数据,还可能用于存储指令。访问ROM1306和RAM1308通常比访问辅助存储器1304要快。
发射器/接收器1312可以用作计算机系统1300的输出和/或输入装置。例如,如果发射器/接收器1312充当发射器,那么它可以将数据发送到计算机系统1300之外。如果发射器/接收器1312充当接收器,那么它可以将数据接收到计算机系统1300中。发射器/接收器1312可以采取以下形式:调制解调器、调制解调器组、以太网卡、通用串行总线(USB)接口卡、串行接口、令牌环卡、光纤分布式数据接口(FDDI)卡、无线局域网络(WLAN)卡、诸如码分多址接入(CDMA)等无线电收发器卡、全球移动通信系统(GSM)、长期演进(LTE)、全球微波接入互操作性(WiMAX),和/或其他空中接口协议无线电收发器卡,以及其他熟知的网络装置。发射器/接收器1312可以使处理器1302与互联网或者一个或多个内联网进行通信。I/O装置1310可以包括视频监控器、液晶显示器(LCD)、触摸屏显示器,或者用于显示视频的其他类型的视频显示器,并且还可以包括用于采集视频的录像装置。I/O装置1310还可以包括一个或多个键盘、鼠标,或轨迹球,或者其他熟知的输入装置。
应理解,通过对可执行指令进行编程和/或将其加载到计算机系统1300上,处理器1302、辅助存储器1304、RAM1308,以及ROM1306中的至少一者会发生改变,从而将计算机系统1300部分地变换为特定的机器或设备(例如,具有本发明所教示的新颖功能的视频编解码器)。可执行指令可以被存储在辅助存储器1304、ROM1306,和/或RAM1308上,并且被加载到处理器1302中以用于执行。在电气工程和软件工程领域中的基本原理是可以通过将可执行软件加载到计算机中来实施的功能可以通过熟知的设计规则转换为硬件实施。关于在软件还是硬件中实施一个概念的决定通常取决于对设计的稳定性以及待生产的单元数目的考虑,而不是取决于对涉及从软件领域转换到硬件领域的任何问题的考虑。通常,容易经常发生改变的设计可以优选地在软件中实施,这是因为硬件实施的再次旋压比软件设计的再次旋压更加昂贵。通常,将以较大体积生产的稳定设计可以优选地在硬件中实施,例如在专用集成电路(ASIC)中实施,这是因为对于较大的生产运行,硬件实施可以比软件实施更加便宜。通常设计会以软件形式进行开发和测试,并且稍后由熟知的设计规则在专用集成电路中变换为等效的硬件实施,所述专用集成电路对软件的指令进行硬接线。采用与由新的ASIC控制的机器相同方式的是特定的机器或设备,同样地,已进行编程的计算机和/或已加载有可执行指令的计算机可以被视作特定的机器或设备。
揭示了至少一个实施例,并且所属领域的技术人员作出的对所述实施例和/或所述实施例的特征的变体、组合和/或修改都在本发明的范围内。由组合、合并和/或省略所述实施例的特征而得到的替代实施例也在本发明的范围内。在明确陈述数值范围或限制的情况下,应将此类表达范围或限制理解成包括属于明确陈述的范围或限制内的类似量值的迭代范围或限制(例如,从约为1到约为10包括2、3、4等;超过0.10包括0.11、0.12、0.13等)。例如,只要揭示具有下限Rl和上限Ru的数值范围,则也具体揭示属于此范围内的任何数字。具体地说,特别揭示所述范围内的以下数字:R=Rl+k*(Ru-Rl),其中k是从1%到100%以1%增量递增的变量,即,k是1%、2%、3%、4%、5%、…、70%、71%、72%、…、95%、96%、97%、98%、99%,或100%。此外,还特别揭示由如上文所定义的两个R数字定义的任何数值范围。除非另有说明,否则使用术语“约”意味着随后数字的±10%。关于权利要求的任一元件使用术语“任选地”意味着需要所述元件,或者不需要所述元件,这两种替代方案均在所述权利要求的范围内。使用诸如“包含”、“包括”以及“具有”等较广义术语应被理解为提供对诸如“由…组成”、“基本上由…组成”以及“大体上由…组成”等较狭义术语的支持。因此,保护范围不受上文所述描述的限制,而是由所附权利要求书界定,所述范围包括权利要求书的标的物的所有等效物。每一和每条权利要求作为进一步揭示内容并入说明书中,且各项权利要求是本发明的实施例。揭示内容中对参考的论述并非承认其为现有技术,尤其是公开日期在本申请案的优先日期之后的任何参考。本发明中所引用的所有专利、专利申请案,以及公开案的揭示内容特此以引用的方式并入本文本中,在某种程度上其提供补充本发明的示例性、程序性或其他细节。
虽然本发明中已提供若干实施例,但应理解,在不脱离本发明的精神或范围的情况下,所揭示的系统和方法可以以许多其他具体形式来体现。所呈现的实例应被视为说明性而非限制性的,并且并不意图限于本文中所给出的细节。例如,各种元件或组件可以在另一系统中组合或合并,或者某些特征可以省略或不实施。
此外,在不脱离本发明的范围的情况下,各种实施例中描述和说明为离散或单独的技术、系统、子系统,以及方法可以与其他系统、模块、技术,或方法组合或合并。展示或论述为彼此耦接或直接耦接或通信的其他项也可以通过某一接口、装置或中间组件以电气方式、机械方式或以其他方式间接地耦接或通信。变化、替代和改变的其他实例可以由所属领域的一般技术人员确定,且可以在不脱离本文本所揭示的精神和范围的情况下作出。

Claims (29)

1.一种视频编解码器,其包含:
处理器,所述处理器配置成:
生成当前块的预测块;
计算所述当前块与所述预测块之间的差值以生成残余块;
扫描位于所述残余块中的多个预测残余;以及
如果多个残余值包含至少一个非零预测残余,那么对所述至少一个非零预测残余进行熵编码。
2.根据权利要求1所述的视频编解码器,其中所述预测块基于帧内预测模式生成,其中对所述多个预测残余的扫描按照某一扫描顺序,并且其中所述扫描顺序基于所述帧内预测模式以及所述预测块的尺寸而确定。
3.根据权利要求2所述的视频编解码器,其中所述处理器进一步配置成:
如果所述预测块的尺寸不超过预设限制并且所述帧内预测模式属于水平组,那么设置所述扫描顺序,从而使得逐行对所述多个预测残余进行扫描;
否则如果所述预测块的尺寸不超过所述预设限制并且所述帧内预测模式属于垂直组,那么设置所述扫描顺序,从而使得逐列对所述多个预测残余进行扫描;
否则将所述扫描顺序设置为Z字形顺序。
4.根据权利要求3所述的视频编解码器,其中在所述垂直组中每一个帧内预测模式的方向与垂直方向所成的角度小于22.5度,并且其中在所述水平组中每一个帧内预测模式的方向与水平方向所成的角度小于22.5度。
5.根据权利要求3所述的视频编解码器,其中所述预设限制为8×8。
6.根据权利要求5所述的视频编解码器,其中所述处理器进一步配置成在扫描所述多个预测残余之前对所述残余块进行量化,并且其中所述多个预测残余为经量化的预测残余。
7.根据权利要求2所述的视频编解码器,其中所述残余块为变换单元(TU),其中对所述扫描顺序的确定使用如下包含各条目的查找表:
其中模式表示所述帧内预测模式,TU尺寸表示所述预测块的尺寸,并且其中在所述查找表第一行之下,条目“0”表示所述扫描顺序为Z字形顺序,条目“1”表示所述扫描顺序为水平顺序,并且条目“2”表示所述扫描顺序为垂直顺序。
8.根据权利要求1所述的视频编解码器,其中所述处理器进一步配置成基于率失真标准来确定起始位置,其中所述起始位置为所述残余块的四个角位置中的一者,并且其中对所述多个预测残余的扫描从所述起始位置开始。
9.根据权利要求8所述的视频编解码器,其中所述起始位置由起始位置索引指定,其中所述残余块具有N×N的尺寸,其中N为大于一的整数,其中所述残余块中的位置表示为(m,n),其中m为在0与N-1之间变化的列索引,其中n为在0与N-1之间变化的行索引,并且其中对表示为(C0,C1)的所述起始位置索引进行配置,从而:
如果(C0,C1)等于0,那么所述起始位置为(0,0);
如果(C0,C1)等于1,那么所述起始位置为(N-1,0);
如果(C0,C1)等于2,那么所述起始位置为(0,N-1);以及
如果(C0,C1)等于3,那么所述起始位置为(N-1,N-1)。
10.根据权利要求9所述的视频编解码器,其中所述起始位置索引为对应于所述当前块的三个起始位置索引中的一者,并且其中所述三个起始位置索引针对三个颜色分量而设置。
11.根据权利要求9所述的视频编解码器,其中所述预测块通过帧间预测生成。
12.根据权利要求11所述的视频编解码器,其中对所述多个预测残余的扫描从角残余开始并且按照逐行顺序。
13.根据权利要求12所述的视频编解码器,其中所述处理器进一步配置成:
在按照逐行顺序对所述多个预测残余进行扫描之后,从左上角残余开始并且按照Z字形顺序对所述多个预测残余再次进行扫描。
14.根据权利要求11所述的视频编解码器,其中对所述多个预测残余的扫描从角残余开始并且按照Z字形顺序。
15.一种方法,其包含:
生成当前块的预测块;
计算所述当前块与所述预测块之间的差值以生成残余块;
扫描位于所述残余块中的多个预测残余;以及
如果多个残余值包含至少一个非零预测残余,那么对所述至少一个非零预测残余进行熵编码。
16.根据权利要求15所述的方法,其中所述预测块基于帧内预测模式生成,其中对所述多个预测残余的扫描按照某一扫描顺序,并且其中所述扫描顺序基于所述帧内预测模式以及所述预测块的尺寸而确定。
17.根据权利要求16所述的方法,其进一步包含:
如果所述预测块的尺寸不超过预设限制并且所述帧内预测模式属于水平组,那么设置所述扫描顺序,从而使得逐行对所述多个预测残余进行扫描;
否则如果所述预测块的尺寸不超过所述预设限制并且所述帧内预测模式属于垂直组,那么设置所述扫描顺序,从而使得逐列对所述多个预测残余进行扫描;
否则将所述扫描顺序设置为字Z形顺序。
18.根据权利要求17所述的方法,其中在所述垂直组中每一个帧内预测模式的方向与垂直方向所成的角度小于22.5度,并且其中在所述水平组中每一个帧内预测模式的方向与水平方向所成的角度小于22.5度。
19.根据权利要求17所述的方法,其中所述预设限制为8×8。
20.根据权利要求16所述的方法,其中所述残余块为变换单元(TU),其中对所述扫描顺序的确定使用如下包含各条目的查找表:
其中模式表示所述帧内预测模式,TU尺寸表示所述预测块的尺寸,并且其中在所述查找表第一行之下,条目“0”表示所述扫描顺序为Z字形顺序,条目“1”表示所述扫描顺序为水平顺序,并且条目“2”表示所述扫描顺序为垂直顺序。
21.根据权利要求15所述的方法,其进一步包含基于率失真标准来确定起始位置,其中所述起始位置为所述残余块的四个角位置中的一者,并且其中对所述多个预测残余的扫描从所述起始位置开始。
22.根据权利要求21所述的方法,其中所述起始位置由起始位置索引指定,其中所述残余块具有N×N的尺寸,其中N为大于一的整数,其中所述残余块中的位置表示为(m,n),其中m为在0与N-1之间变化的列索引,其中n为在0与N-1之间变化的行索引,并且其中对表示为(C0,C1)的所述起始位置索引进行配置,从而:
如果(C0,C1)等于0,那么所述起始位置为(0,0);
如果(C0,C1)等于1,那么所述起始位置为(N-1,0);
如果(C0,C1)等于2,那么所述起始位置为(0,N-1);以及
如果(C0,C1)等于3,那么所述起始位置为(N-1,N-1)。
23.根据权利要求22所述的方法,其中所述起始位置索引为对应于所述当前块的三个起始位置索引中的一者,并且其中所述三个起始位置索引针对三个颜色分量而设置。
24.根据权利要求22所述的方法,其中所述预测块通过帧间预测生成。
25.根据权利要求24所述的方法,其进一步包含,在从角残余开始并且按照逐行顺序对所述多个预测残余进行扫描之后,从左上角残余开始并且按照Z字形顺序对所述多个预测残余再次进行扫描。
26.根据权利要求24所述的方法,其中对所述多个预测残余的扫描从角残余开始并且按照Z字形顺序。
27.一种视频编解码器,其包含:
配置成接收比特流的接收器,所述比特流包含至少一个经编码的预测残余、经编码的两位语法元素,以及经编码的完整重要图;以及
处理器,所述处理器耦合到所述接收器并且配置成:
对所述至少一个经编码的预测残余、所述经编码的两位语法元素,以及所述经编码的完整重要图进行熵解码,以分别生成至少一个经解码的预测残余、经解码的两位语法元素,以及经解码的完整重要图;以及
基于所述至少一个经解码的预测残余、所述经解码的两位语法元素,以及所述经解码的完整重要图重建残余块。
28.根据权利要求27所述的视频编解码器,其中所述至少一个经编码的预测残余通过帧间预测生成,其中所述残余块具有N×N的尺寸,其中N为大于一的整数,其中所述残余块中的位置表示为(m,n),其中m为在0与N-1之间变化的列索引,其中n为在0与N-1之间变化的行索引,并且其中表示为(C0,C1)的所述经解码的两位句法元素指定起始位置如下:
如果(C0,C1)等于0,那么所述起始位置为(0,0);
如果(C0,C1)等于1,那么所述起始位置为(N-1,0);
如果(C0,C1)等于2,那么所述起始位置为(0,N-1);以及
如果(C0,C1)等于3,那么所述起始位置为(N-1,N-1)。
29.根据权利要求27所述的视频编解码器,其中所述至少一个经编码的预测残余自原始残余块生成,其中所述原始残余块基于应用在当前块上的帧内预测模式而生成,其中所述经编码的完整重要图基于扫描顺序而生成,并且其中所述扫描顺序取决于所述帧内预测模式以及所述当前块的尺寸。
CN201280056798.0A 2011-11-18 2012-11-19 高效视频编码中的预测残余的扫描 Active CN103959790B (zh)

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
US201161561705P 2011-11-18 2011-11-18
USUS61/561,705 2011-11-18
US61/561,705 2011-11-18
US13/679,184 2012-11-16
USUS13/679,184 2012-11-16
US13/679,184 US9344722B2 (en) 2011-11-18 2012-11-16 Scanning of prediction residuals in high efficiency video coding
PCT/CN2012/084806 WO2013071889A1 (en) 2011-11-18 2012-11-19 Scanning of prediction residuals in high efficiency video coding

Publications (2)

Publication Number Publication Date
CN103959790A true CN103959790A (zh) 2014-07-30
CN103959790B CN103959790B (zh) 2017-05-24

Family

ID=48426921

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201280056798.0A Active CN103959790B (zh) 2011-11-18 2012-11-19 高效视频编码中的预测残余的扫描

Country Status (4)

Country Link
US (1) US9344722B2 (zh)
EP (1) EP2781097B1 (zh)
CN (1) CN103959790B (zh)
WO (1) WO2013071889A1 (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107258084A (zh) * 2015-02-17 2017-10-17 Lg 电子株式会社 使用自适应扫描顺序编码/解码视频信号的方法和设备
CN107580224A (zh) * 2017-08-08 2018-01-12 西安理工大学 一种面向hevc熵编码的自适应扫描方法
CN109660794A (zh) * 2018-11-07 2019-04-19 北京达佳互联信息技术有限公司 帧内预测模式的决策方法、决策装置和计算机可读存储介质
CN110024399A (zh) * 2016-11-28 2019-07-16 韩国电子通信研究院 对图像编码/解码的方法和设备及存储比特流的记录介质
WO2020258378A1 (zh) * 2019-06-25 2020-12-30 北京大学 一种视频图像处理方法、设备及存储介质
CN114513663A (zh) * 2020-11-17 2022-05-17 腾讯科技(深圳)有限公司 视频解码方法、装置及电子设备
US11871004B2 (en) 2019-06-25 2024-01-09 SZ DJI Technology Co., Ltd. Video image processing method and device, and storage medium
CN110024399B (zh) * 2016-11-28 2024-05-17 韩国电子通信研究院 对图像编码/解码的方法和设备及存储比特流的记录介质

Families Citing this family (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012120908A1 (ja) 2011-03-09 2012-09-13 パナソニック株式会社 動画像符号化装置および動画像符号化方法
KR101591352B1 (ko) * 2012-04-16 2016-02-04 한국전자통신연구원 비디오 복호화 장치
WO2013175736A1 (ja) * 2012-05-25 2013-11-28 パナソニック株式会社 動画像符号化方法、動画像符号化装置、動画像復号方法、動画像復号装置、および、動画像符号化復号装置
RU2623800C2 (ru) 2012-05-25 2017-06-29 Сан Пэтент Траст Способ кодирования видеоизображений, способ декодирования видеоизображений, устройство кодирования видеоизображений, устройство декодирования видеоизображений и устройство кодирования-декодирования видеоизображений
RU2679984C2 (ru) 2012-05-25 2019-02-14 Вилос Медиа Интернэшнл Лимитед Способ кодирования изображений, устройство кодирования изображений, способ декодирования изображений, устройство декодирования изображений и устройство кодирования и декодирования изображений
EP4020990A1 (en) 2012-06-04 2022-06-29 Sun Patent Trust Video image encoding device, video image decoding device
US10257520B2 (en) 2012-06-26 2019-04-09 Velos Media, Llc Modified coding for transform skipping
US9549182B2 (en) 2012-07-11 2017-01-17 Qualcomm Incorporated Repositioning of prediction residual blocks in video coding
US9264713B2 (en) 2012-07-11 2016-02-16 Qualcomm Incorporated Rotation of prediction residual blocks in video coding with transform skipping
EP2920964B1 (en) * 2013-03-26 2018-05-09 MediaTek Inc. Method of cross color intra prediction
JP6285014B2 (ja) * 2013-04-23 2018-02-28 クゥアルコム・インコーポレイテッドQualcomm Incorporated 映像コーディングにおける予測残差ブロックの位置再設定
SG11201600128WA (en) * 2013-07-24 2016-02-26 Microsoft Technology Licensing Llc Scanning orders for non-transform coding
US9813737B2 (en) 2013-09-19 2017-11-07 Blackberry Limited Transposing a block of transform coefficients, based upon an intra-prediction mode
US9215464B2 (en) * 2013-09-19 2015-12-15 Blackberry Limited Coding position data for the last non-zero transform coefficient in a coefficient group
US9215468B1 (en) * 2014-08-07 2015-12-15 Faroudja Enterprises, Inc. Video bit-rate reduction system and method utilizing a reference images matrix
US9998742B2 (en) * 2015-01-27 2018-06-12 Qualcomm Incorporated Adaptive cross component residual prediction
WO2017142085A1 (ja) * 2016-02-17 2017-08-24 日本放送協会 符号化装置、復号装置及びプログラム
US10575007B2 (en) 2016-04-12 2020-02-25 Microsoft Technology Licensing, Llc Efficient decoding and rendering of blocks in a graphics pipeline
US10157480B2 (en) 2016-06-24 2018-12-18 Microsoft Technology Licensing, Llc Efficient decoding and rendering of inter-coded blocks in a graphics pipeline
US11197010B2 (en) 2016-10-07 2021-12-07 Microsoft Technology Licensing, Llc Browser-based video decoder using multiple CPU threads
CN110326294A (zh) * 2017-01-03 2019-10-11 Lg电子株式会社 使用二次变换编码/解码视频信号的方法和设备
CN116614644A (zh) * 2018-03-27 2023-08-18 株式会社Kt 对图像进行解码或编码的方法以及图像数据的传送方法
US11350093B2 (en) 2018-06-11 2022-05-31 Hanwha Techwin Co., Ltd. Residual coefficient encoding/decoding method and device
KR102030384B1 (ko) 2018-06-19 2019-11-08 광운대학교 산학협력단 잔차 계수 부호화/복호화 방법 및 장치
US10630979B2 (en) * 2018-07-16 2020-04-21 Tencent America LLC Reference sample padding and filtering for intra prediction in video compression
TWI814890B (zh) * 2018-08-17 2023-09-11 大陸商北京字節跳動網絡技術有限公司 簡化的跨分量預測
CN110896480A (zh) 2018-09-12 2020-03-20 北京字节跳动网络技术有限公司 交叉分量线性模型中的尺寸相关的下采样
FR3086485A1 (fr) * 2018-09-21 2020-03-27 Orange Procedes et dispositifs de codage et de decodage d'un flux de donnees representatif d'au moins une image.
KR102653562B1 (ko) 2018-11-06 2024-04-02 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 위치에 따른 인트라 예측
WO2020108591A1 (en) * 2018-12-01 2020-06-04 Beijing Bytedance Network Technology Co., Ltd. Parameter derivation for intra prediction
JP7317965B2 (ja) 2018-12-07 2023-07-31 北京字節跳動網絡技術有限公司 コンテキストベースのイントラ予測
KR20240018691A (ko) * 2019-01-14 2024-02-13 로즈데일 다이나믹스 엘엘씨 영상 코딩 시스템에서 레지듀얼 정보를 사용하는 영상 디코딩 방법 및 그 장치
CA3128429C (en) 2019-02-22 2023-11-21 Beijing Bytedance Network Technology Co., Ltd. Neighbouring sample selection for intra prediction
BR112021015017B1 (pt) 2019-02-24 2022-07-26 Bytedance Inc. Método e aparelho para codificar dados de vídeo, e, mídia de armazenamento
CN113767631B (zh) 2019-03-24 2023-12-15 北京字节跳动网络技术有限公司 用于帧内预测的参数推导中的条件
CN109889827B (zh) * 2019-04-11 2021-01-29 腾讯科技(深圳)有限公司 帧内预测编码方法、装置、电子设备及计算机存储介质
US11425393B1 (en) * 2021-06-10 2022-08-23 Meta Platforms, Inc. Hardware optimization of rate calculation in rate distortion optimization for video encoding

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6275527B1 (en) * 1998-01-14 2001-08-14 Conexant Systems, Inc. Pre-quantization in motion compensated video coding
CN101771876A (zh) * 2009-01-07 2010-07-07 索尼公司 编码设备、编码方法、记录介质和图像处理装置
US20110150072A1 (en) * 2009-12-21 2011-06-23 Han Ki-Hun Encoding method, decoding method and apparatus thereof
US8031954B2 (en) * 2007-04-26 2011-10-04 Canon Kabushiki Kaisha Image encoding apparatus and control method thereof using prediction encoding and pixel classification

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007066710A1 (ja) * 2005-12-07 2007-06-14 Sony Corporation 符号化装置、符号化方法および符号化プログラム、ならびに、復号装置、復号方法および復号プログラム
CN100592798C (zh) 2007-09-14 2010-02-24 四川虹微技术有限公司 一种视频编码快速变换量化的实现方法
US9049444B2 (en) * 2010-12-22 2015-06-02 Qualcomm Incorporated Mode dependent scanning of coefficients of a block of video data

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6275527B1 (en) * 1998-01-14 2001-08-14 Conexant Systems, Inc. Pre-quantization in motion compensated video coding
US8031954B2 (en) * 2007-04-26 2011-10-04 Canon Kabushiki Kaisha Image encoding apparatus and control method thereof using prediction encoding and pixel classification
CN101771876A (zh) * 2009-01-07 2010-07-07 索尼公司 编码设备、编码方法、记录介质和图像处理装置
US20110150072A1 (en) * 2009-12-21 2011-06-23 Han Ki-Hun Encoding method, decoding method and apparatus thereof

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
KRIT PANUSOPONE,YUE YU,LIMIN WANG,: "Motorola Mobility’s adaptive scan", 《JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC)》 *

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107258084A (zh) * 2015-02-17 2017-10-17 Lg 电子株式会社 使用自适应扫描顺序编码/解码视频信号的方法和设备
CN110024399A (zh) * 2016-11-28 2019-07-16 韩国电子通信研究院 对图像编码/解码的方法和设备及存储比特流的记录介质
CN110024399B (zh) * 2016-11-28 2024-05-17 韩国电子通信研究院 对图像编码/解码的方法和设备及存储比特流的记录介质
CN107580224A (zh) * 2017-08-08 2018-01-12 西安理工大学 一种面向hevc熵编码的自适应扫描方法
CN107580224B (zh) * 2017-08-08 2019-11-22 西安理工大学 一种面向hevc熵编码的自适应扫描方法
CN109660794A (zh) * 2018-11-07 2019-04-19 北京达佳互联信息技术有限公司 帧内预测模式的决策方法、决策装置和计算机可读存储介质
WO2020258378A1 (zh) * 2019-06-25 2020-12-30 北京大学 一种视频图像处理方法、设备及存储介质
US11871004B2 (en) 2019-06-25 2024-01-09 SZ DJI Technology Co., Ltd. Video image processing method and device, and storage medium
CN114513663A (zh) * 2020-11-17 2022-05-17 腾讯科技(深圳)有限公司 视频解码方法、装置及电子设备

Also Published As

Publication number Publication date
CN103959790B (zh) 2017-05-24
EP2781097B1 (en) 2018-01-10
WO2013071889A1 (en) 2013-05-23
US9344722B2 (en) 2016-05-17
US20130128966A1 (en) 2013-05-23
EP2781097A1 (en) 2014-09-24
EP2781097A4 (en) 2015-05-06

Similar Documents

Publication Publication Date Title
CN103959790A (zh) 高效视频编码中的预测残余的扫描
US11871007B2 (en) Encoding device, decoding device, encoding method, and decoding method
CN103650496B (zh) 用于在hevc中编码的基于像素的帧内预测
US9813733B2 (en) Differential pulse code modulation intra prediction for high efficiency video coding
JP7401556B2 (ja) イントラ予測のためのエンコーダ、デコーダおよび対応する方法
CN104041035B (zh) 用于复合视频的无损编码及相关信号表示方法
CN103891283B (zh) 帧内预测的方法和设备
KR20220151140A (ko) 영상 부호화 방법 및 컴퓨터로 읽을 수 있는 기록 매체
JP7191211B2 (ja) 復号する方法、コンピュータプログラム、ビデオ復号装置
CN103283238B (zh) 利用按照编码单元的并行帧内预测进行编码和解码的方法和装置
CN103621099A (zh) 熵解码方法和使用其的解码装置
CN108141585A (zh) 视频编码系统中的帧内预测方法和装置
CN104126303A (zh) 用于高效率视频译码的统一分割结构和信令方法
CN104185989A (zh) 用于帧内预测残差的二值化方案和hevc中无损编码中的改进帧内预测
CN103782598A (zh) 用于无损编码的快速编码方法
CN103283237A (zh) 帧内预测方法和使用该方法的设备
CN109547790A (zh) 用于在高效率视频编解码中处理分区模式的设备和方法
CN104285444A (zh) 视频编码方法、视频解码方法和使用其的设备
TWI813922B (zh) 從視訊位元流解碼影像和編碼影像為視訊位元流的方法及其解碼設備和編碼設備以及非暫態電腦可讀取媒體
CN104885453A (zh) 支持多个层的用于编码/解码图像的方法和设备
CN110868587A (zh) 一种视频图像预测方法及装置
CN107251556A (zh) 用于运动搜索中低复杂度四分之一像素产生的方法及设备
CN102801980B (zh) 一种用于可伸缩视频编码的解码装置和方法
JP2022523903A (ja) ビデオコード化のための残差コード化における通常のビンの柔軟な割り当て
CN102833542A (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
GR01 Patent grant
GR01 Patent grant