采用块向量导出的帧内块复制编码的方法转让专利

申请号 : CN201580032695.4

文献号 : CN106576178B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 贺玉文叶琰修晓宇

申请人 : VID拓展公司

摘要 :

描述了用于在帧内块复制模式下将导出的块向量用作预测器对视频进行编码和解码的系统和方法。根据一种示例编码方法,编码器对至少第一候选块向量进行标识以用于预测输入视频块,其中所述第一候选块向量指向第一候选块。所述编码器接着对用于编码所述第一候选块的第一预测向量(例如块向量或运动向量)进行标识。根据所述第一候选块向量和所述第一预测向量,所述编码器根据所述第一候选块向量和所述第一预测向量生成导出的预测向量。所述编码器接着使用所述导出的预测向量在比特流中编码视频块以用于预测所述输入视频块。

权利要求 :

1.一种为帧内块复制编码导出块向量的视频编码方法,该方法包括:对第一块向量(BV0)进行标识以用于预测视频块,其中该第一块向量(BV0)用于编码所述视频内的另一块,且其中该第一块向量从当前视频块(B0)指向第一候选块(B1);

对用于对所述第一候选块(B1)进行编码的至少第二块向量(BV1)进行标识;

通过将所述第一块向量(BV0)与所述第二块向量(BV1)相加,从所述第一块向量(BV0)和所述第二块向量(BV1)生成导出的块向量(BVd);以及使用所述导出的块向量(BVd)并利用帧内块复制编码对所述视频块进行编码。

2.根据权利要求1所述的方法,其中使用所述导出的块向量(BVd)对所述视频块进行编码包括:对所述导出的块向量指向的第二候选块(B2)进行标识;以及

使用所述第二候选块(B2)并利用帧内块复制编码对所述视频块进行预测。

3.根据权利要求1所述的方法,其中对所述视频块进行编码包括:在比特流中以信号传递所述第一块向量(BV0)。

4.根据权利要求3所述的方法,其中对所述视频块进行编码还包括:在所述比特流中以信号传递所述第二块向量(BV1)。

5.根据权利要求3所述的方法,其中对所述视频块进行编码还包括:在所述比特流中以信号传递一标记,其中该标记的第一值指示所述导出的块向量(BVd)用于编码所述视频块。

6.根据权利要求5所述的方法,其中所述标记的第二值指示所述第一块向量(BV0)用于编码所述视频块。

7.根据权利要求1所述的方法,其中所述视频编码方法还包括:将所述导出的块向量(BVd)插入到用于块向量选择的合并候选者列表中。

8.根据权利要求7所述的方法,该方法还包括:确定所述导出的块向量(BVd)是否有效,其中所导出的块向量仅在由该导出的块向量所指向的参考块并非位于图片边界之外且已经被编码的情况下被确定为有效,且其中仅在确定所述导出的块向量有效时将所述导出的块向量插入到所述合并候选者列表中。

9.根据权利要求7所述的方法,其中使用所述导出的块向量(BVd)对所述视频块进行编码包括:提供索引,其中该索引在所述合并候选者列表中标识所述导出的块向量。

10.一种从编码视频的比特流中解码编码后的视频块的方法,该方法包括:对至少第一块向量(BV0)进行标识以用于预测所述编码后的视频块,其中该第一块向量(BV0)用于编码所述视频内的另一块,且其中所述第一块向量从当前视频块(B0)指向第一候选块(B1);

对用于编码所述第一候选块(B1)的至少第二块向量(BV1)进行标识;

通过将所述第一块向量(BV0)与所述第二块向量(BV1)相加,从所述第一块向量(BV0)和所述第二块向量(BV1)生成导出的块向量(BVd);以及使用所述导出的块向量(BVd)并利用帧内块复制编码来解码所述编码后的视频块。

说明书 :

采用块向量导出的帧内块复制编码的方法

[0001] 相关申请的交叉引用
[0002] 本申请为于2014年6月19日根据美国专利法35U.S.C.第119(e)条递交的美国专利申请No.62/014,664的非临时专利申请并要求该申请的权益。该申请的全部内容结合于此作为参考。

背景技术

[0003] 过去的二十多年来,不同的数字视频压缩技术得到了开发和规范化,以实现高效的数字视频通信、分发和消费。大多数在商业上被广泛应用的标准是通过ISO/IEC和ITU-T(例如H.261、MPEG-1、MPEG-2H.263、MPEG-4 (第二部分))以及H.264/AVC(MPEG-4第10部分高级视频编码)来开发的。随着新的先进视频压缩技术的不断涌现和成熟,由ITU-T视频编码专家组(VCEG)和ISO/IEC MPEG.HEVC(ITU-T H.265/ISO/IEC 23008-2)共同开发的一种新的视频编码标准--高效率视频编码(HEVC)--在2013年初被批准为国际标准,并且能够实现远高于当前最高水准H.264/AVC的编码效率。
[0004] 近年来,随着远程桌面、视频会议和移动媒体呈现应用的增多,屏幕内容共享应用变得越来越受欢迎。一种双向屏幕内容共享系统可包括主机子系统(包括捕捉器(capturer)、编码器和发射机)以及客户端子系统(包括接收机、解码器和显示器(渲染器))。产业界对屏幕内容编码(SCC)有不同的应用要求。由于屏幕内容中频繁出现锐曲线和文字,与自然视频内容相比,屏幕内容常常会包含有多个具有若干主要颜色和明显边界的块。虽然现有的视频压缩方法能够用于对屏幕内容进行编码并随后将所述内容传送至接收机一侧,但大多数现有的方法并不能适应屏幕内容的特性,因此导致较低的压缩性能。使用传统视频编码技术对屏幕内容进行重建常常导致严重的质量问题。例如,曲线和文字变得模糊并由此可能难以识别。因此,为了有效地对屏幕内容进行重建,需要一种设计合理的屏幕内容压缩方法。

发明内容

[0005] 根据某些示例性实施方式,提供了一种用于生成编码包括有输入视频块的视频的比特流的方法。编码器标识至少第一候选块向量(BV)以用于预测输入视频块,其中该第一候选块向量指向第一候选块。所述编码器随后标识用于编码所述第一候选块的第一预测向量(例如块向量或运动向量)。根据所述第一候选块向量和所述第一预测向量,所述编码器根据所述第一候选块向量和所述第一预测向量生成导出的预测向量(例如导出的块向量或导出的运动向量)。所述编码器随后使用导出的预测向量在所述比特流中编码所述视频块以用于预测所述输入视频块。
[0006] 根据某些实施方式,所述编码器在所述比特流中以信号传递导出的预测向量。根据某些实施方式,所述编码器在所述比特流中以信号传递所述第一预测向量并且还在所述比特流中以信号传递一标记,该标记指示所述输入视频块是使用导出自所述第一预测向量的导出的预测向量编码的。
[0007] 根据某些实施方式,所述编码器在所述比特流中以信号传递一索引,该索引将导出的预测向量标识在合并候选者(merge candidate)列表中。
[0008] 导出的预测向量可通过将所述第一候选块向量与所述第一预测向量相加生成。在这种实施方式中,在所述第一预测向量为第二块向量的情况中,导出的预测向量可以是通过将所述第一候选块向量与所述第二块向量(所述第一预测向量)相加生成的块向量。如果所述第一预测向量为运动向量,则导出的预测向量可以是根据以下等式通过将所述第一候选块向量与所述第一运动向量相加生成的运动向量:
[0009] MVd=BV0+((MV1+2)>>2),
[0010] 其中BV0为所述第一候选块向量,MV1为所述第一运动向量,而MVd为导出的运动向量。
[0011] 根据某些示例性实施方式,导出的预测向量(块向量或运动向量)用作合并候选者。根据示例性方法,编码器标识至少第一块向量合并候选者以用于编码所述输入视频块,并且所述编码器标识用于编码所述第一候选块的第一预测向量。所述编码器随后根据所述第一块向量合并候选者和所述第一预测向量生成导出的预测向量(导出的块向量或导出的运动向量)。导出的预测向量被插入到合并候选者列表中。所述编码器从所述合并候选者列表中选取所选择的预测向量以用于预测所述输入视频块。所述编码器随后使用所选择的预测向量在所述比特流中编码所述视频输入块以用于预测所述输入视频块。所选择的预测向量可以是导出的预测向量。
[0012] 采用这种实施方式,所述编码器确定在生成和插入导出的预测向量之前所述合并候选者列表是否被填满(full)。在所述合并候选者列表中生成和插入导出的预测向量的步骤仅在确定所述合并候选者列表未被填满之后执行。
[0013] 在某些实施方式中,所述编码器通过实施对之前编码的视频块的搜索来标识所述第一候选块向量。
[0014] 采用一种根据比特流解码编码后的视频块的示例方法,解码器标识至少第一候选块向量以用于预测输入视频块,其中所述第一候选块向量指向第一候选块。所述解码器标识用于编码所述第一候选块的第一预测向量。所述解码器随后根据所述第一块向量和所述第一预测向量生成导出的预测向量并使用导出的预测向量解码所述编码后的视频块以用于预测所述编码后的视频块。
[0015] 在这类实施方式中,所述第一候选块向量可使用各种不同技术来标识。根据这类方法中的一种方法,所述第一候选块向量在所述比特流中以信号传递,并且对所述第一候选块向量的标识包括接收在所述比特流中以信号传递的所述第一候选块向量。在这种方法中,生成导出的预测向量可响应于在所述比特流中接收一个标记而执行,该标记指示所述输入视频块是采用导出的预测向量编码的。根据这类方法中的另一种方法,对所述第一候选块向量的标识包括对第一块向量合并候选者的标识。采用这种实施方式,导出的预测向量还可以是合并候选者。响应于在所述比特流中接收标识导出的预测向量合并候选者的索引,所述解码器可使用导出的预测向量来解码所述编码后的视频块。

附图说明

[0016] 结合附图,根据以下以示例的方式呈现的描述可对本发明进行更详细的理解,附图在下文中得到简要描述。
[0017] 图1是说明了示例基于块的视频编码器的框图。
[0018] 图2是说明了示例基于块的视频解码器的框图。
[0019] 图3是示例八定向预测模式的图示。
[0020] 图4是说明了示例33定向预测模式和两个非定向预测模式的图示。
[0021] 图5是示例水平预测的图示。
[0022] 图6是示例平面模式的图示。
[0023] 图7是说明了示例运动预测的图示。
[0024] 图8是说明了图片中的示例块级活动的图示。
[0025] 图9是说明了示例编码后的比特流结构的图示。
[0026] 图10是说明了示例通信系统的图示。
[0027] 图11是说明了示例无线发射/接收单元(WTRU)的图示。
[0028] 图12是说明了示例屏幕内容共享系统的图示。
[0029] 图13是说明了示例全帧帧内块复制(intra block copy)模式的图示。
[0030] 图14是说明了示例局部区域帧内块复制模式的图示。
[0031] 图15是说明了两个用于帧内块复制合并的空间候选者示例的图示。
[0032] 图16是说明了示例块向量导出的图示。
[0033] 图17是说明了示例运动向量导出的图示。
[0034] 图18A和18B共同为示例方法的流程图。

具体实施方式

[0035] 现在参考各个附图对说明性实施方式进行详细描述。尽管该描述提供了可能实现的详细实例,应当注意的是,所提供的详细实例旨在用于举例说明,并不会限定本申请的范围。
[0036] 图1是说明了示例基于块的视频编码器(例如混合视频编码系统)的框图。视频编码器100可接收输入视频信号102。所述输入视频信号102可逐块进行处理。视频块可以具有任意大小。例如,视频块单元可包括16×16 像素。16×16像素的视频块单元可被称为宏块(MB)。在高效率视频编码 (HEVC)中,扩展块大小(如可称为编码树单元(CTU)或编码单元(CU),出于本公开的目的,这两个术语是等同的)可用于有效地压缩高分辨率(例如1080p及以上)视频信号。在HEVC中,CU可以达到64×64像素。CU 可被划分成预测单元(PU),可针对所述PU应用不同的预测方法。
[0037] 对于输入视频块(例如MB或CU),可执行空间预测160和/或时间预测162。空间预测(例如“帧内预测”)可在同一视频图片/切片(slice)中使用来自已编码的相邻块的像素以预测当前视频块。空间预测可降低视频信号中固有的空间冗余。时间预测(例如“帧间预测”或“运动补偿预测”) 可使用来自已编码的视频图片(例如可称为“参考图片”)的像素来预测当前视频块。时间预测可降低视频信号中固有的时间冗余。视频块的时间预测信号可通过一个或多个运动向量以信号传递,所述运动向量可指示当前块与参考图片中其预测块之间的运动量和/或方向。如果有多个参考图片得到支持 (例如可以是H.264/AVC和/或HEVC情况下),那么对于视频块而言,其参考图片索引可被发送。所述参考图片索引可用于标识时间预测信号来自于参考图片存储164的哪张参考图片。
[0038] 编码器中的模式决策块180例如可在空间和/或时间预测之后选择预测模式。预测块可在116从当前视频块中减去。预测残差可在104被变换和/ 或在106被量化。量化后的残差系数可在110被逆量化和/或在112被逆变换以构成重建残差,其可被加回预测块126以构成重建视频块。
[0039] 环路滤波(例如去块滤波、采样自适应偏移、自适应回路滤波等等)在被放入参考图片存储164和/或用于编码将来的视频块之前,可在166被应用于重建视频块。视频编码器100可输出输出视频流120。为了构成输出视频比特流120,编码模式(例如帧间预测模式或帧内预测模式)、预测模式信息、运动信息、和/或量化后的残差系数可被发送至熵编码单元
108以被压缩和/ 或分组以构成所述比特流。所述参考图片存储164可被称为解码后的图片缓冲器(DPB)。
[0040] 图2是说明了示例基于块的视频解码器的框图。视频解码器200可接收视频比特流202。所述视频比特流202可在熵解码单元208被解包(unpack) 和/或熵解码。用于编码所述视频比特流的编码模式和/或预测信息可被发送至空间预测单元260(例如在被帧内编码的情况下)和/或时间预测单元262 (例如在被帧间编码的情况下)以构成预测块。在被帧间编码的情况下,所述预测信息可包括预测块大小、一个或多个运动向量(如可指示运动的方向和量)、和/或一个或多个参考索引(如可指示从哪张参考图片来获取预测信号)。运动补偿预测可由时间预测单元262应用以构成时间预测块。
[0041] 所述残差变换系数可被发送至逆量化单元210和逆变换单元212以重建残差块。所述预测块和残差块可在226被加到一起。重建块在被存储到参考图片存储264之前可经过环路滤波266。参考图片存储264中的重建视频可用于驱动显示设备和/或用于预测将来的视频块。视频解码器200可输出重建视频信号220。参考图片存储264也可被称为解码后的图片缓冲器(DPB)。
[0042] 视频编码器和/或解码器(例如视频编码器100或视频解码器200)可执行空间预测(如可被称为帧内预测)。空间预测可通过从随着多个预测方向中的一个预测方向的已编码的邻近像素预测(如可被称为定向帧内预测)来执行。
[0043] 图3是示例八向预测模式的图示。图3的所述八定向预测模式可在 H.264/AVC中得以支持。主要如图3中的300所示,九个模式(包括DC模式2)为:
[0044] ·模式0:垂直预测
[0045] ·模式1:水平预测
[0046] ·模式2:DC预测
[0047] ·模式3:下左对角线预测
[0048] ·模式4:下右对角线预测
[0049] ·模式5:垂直右预测
[0050] ·模式6:水平向下预测
[0051] ·模式7:垂直左预测
[0052] ·模式8:水平向上预测
[0053] 空间预测可在具有不同大小和/或形状的视频块上执行。例如对于4×4、 8×8、以及16×16像素的块大小(例如H.264/AVC中),可执行对视频信号的亮度分量的空间预测。例如对于8×8的块大小(例如H.264/AVC中),可执行对视频信号的色度分量的空间预测。对于具有4×4或8×8大小的亮度块,可支持总共九个预测模式,例如八个定向预测模式和DC模式(例如 H.264/AVC中)。例如对于16×16大小的亮度块,可支持四个预测模式;水平、垂直、DC和平面预测。
[0054] 此外,可支持定向帧内预测模式和非定向预测模式。
[0055] 图4是说明了示例33个定向预测模式和两个非定向预测模式的图示。主要在图4的400中示出的所述33个定向预测模式和两个非定向预测模式可由HEVC支持。使用较大的块大小的空间预测可被支持。例如,可以对任意大小的块(例如大小为4×4、8×8、16×16、32×32或64×64的方形块) 执行空间预测。可采用1/32像素预测来执行(例如HEVC中的)定向帧内预测。
[0056] 例如,除了定向帧内预测之外,可支持(例如H.264/AVC、HEVC等内的)非定向帧内预测模式。非定向帧内预测模式可包括DC模式和/或平面模式。对于DC模式,可通过对可用邻近像素取平均来获取预测值,并且所述预测值可被均匀地应用到整个块。对于平面模式,可使用线性内插来预测具有较小过渡的平滑区域。H.264/AVC可允许针对16×16亮度块和色度块使用所述平面模式。
[0057] 编码器(例如编码器100)可执行模式决策(例如在图1中的块180) 以确定视频块的最佳编码模式。当编码器确定应用帧内预测(如代替帧间预测)时,编码器可从可用模式组中确定最优帧内预测模式。所选择的定向帧内预测模式可提供有关输入视频块中任意纹理、边缘和/或结构的方向的明显提示(hint)。
[0058] 图5是示例水平预测(例如对于4×4块)的图示,主要如图5中的500 所示。已被重建的像素P0、P1、P2和P3(即阴影框)可用于预测当前4×4 视频块中的像素。根据水平预测,重建像素(例如P0、P1、P2和/或P3)可沿对应行的方向水平传播(propagate)以预测所述4×4块。例如,可根据以下等式(1)来执行预测,其中L(x,y)为将在(x,y)被预测的像素,x,y=
0…3。
[0059]
[0060]
[0061] 图6是示例平面模式的图示,主要如图6中的600所示。所述平面模式可由此执行:首行中最右的像素(标记为T)可被复制以预测最右列中的像素。左列中底部像素(标记为L)可被复制以预测底行中的像素。可执行水平方向的线性内插(如左块中所示)以生成中心像素的第一预测H(x,y)。可执行垂直方向的线性内插(如右块中所示)以生成中心像素的第二预测V (x,y)。使用L(x,y)=((H(x,y)+V(x,y))>>1,可执行水平预测与垂直预测之间的取平均以获取最终预测L(x,y)。
[0062] 图7和图8是说明了视频块的示例运动预测(例如使用图1的时间预测单元162)的图示,主要如700和800所示,说明了图片中的示例块级活动的图8为说明了示例解码后的图片缓冲器(例如包括参考图片“参考图片(Ref pic)0”、“参考图片1”、以及“参考图片2”)的图示。当前图片中的块B0、 B1和B2可分别根据参考图片“参考图片0”、“参考图片1”、以及“参考图片2”中的块来预测。运动预测可使用来自邻近视频帧的视频块来预测当前视频块。运动预测可利用时间相关性和/或可移除视频信号中固有的时间冗余。例如,在H.264/AVC和HEVC中,可针对不同大小的视频块执行时间预测(例如对于亮度分量,在H.264/AVC中时间预测块大小可从16×16改变到4×4,而在HEVC中从64×64改变到4×4)。采用运动向量(mvx,mvy),可如等式(2)中给出的来执行时间预测:
[0063] P(x,y)=ref (x-mvx,y-mvy)               (2)
[0064] 其中ref(x,y)可以是参考图片中位置(x,y)处的像素值,而P(x,y)可以是预测块。视频编码系统可利用分数像素精度支持帧间预测。当运动向量(mvx,mvy) 具有分数像素值时,可应用一个或多个插值滤波器来获取分数像素位置的像素值。基于块的视频编码系统例如可使用多假设预测来改进时间预测,其中可通过将来自不同参考图片的多个预测信号进行结合来形成预测信号。举例来说,H.264/AVC和/或HEVC可使用可结合两个预测信号的双预测。双预测可将两个预测信号(每一预测信号来自一参考图片)进行结合以形成预测,如以下等式(3)所示:
[0065]
[0066] 其中P0(x,y)和P1(x,y)可以分别为第一和第二预测块。如等式(3)中所示,这两个预测块可通过从两个参考图片ref0(x,y)和ref1(x,y)、分别采用两个运动向量(mvx0,mvy0)和(mvx1,mvy1)执行运动补偿预测来获取。预测块P(x,y) 可从源视频块(例如116处)减去以形成预测残差块。所述预测残差块可被变换(例如在变换单元104)和/或量化(例如在量化单元106)。量化后的残差变换系数块可被发送至熵编码单元(例如熵编码单元108)被熵编码以降低比特速率。熵编码后的残差系数可被打包以形成部分输出视频比特流(例如比特流120)。
[0067] 单层视频编码器可采用单视频序列输入并生成传送至单层解码器的单压缩比特流。视频编解码器可针对数字视频服务(例如但不限于通过卫星、电缆以及地面传输信道发送TV信号)设计。采用在异构环境中部署的视频中心应用,多层视频编码技术可被开发作为视频编码标准的扩展以实现不同的应用。举例来说,多层视频编码技术(例如可伸缩视频编码和/或多视图视频编码)可被设计成操控一个以上的视频层,其中每一层可被解码以重建具有特定空间分辨率、时间分辨率、保真度和/或视图的视频信号。尽管根据图 1和图2描述了单层编码器和解码器,此处描述的观点例如可针对多视图和/ 或可伸缩编码技术使用多层编码器和/或解码器。
[0068] 可伸缩视频编码可改进在异构网络上具有不同性能的设备上运行的视频应用的体验品质。可伸缩视频编码可在具有最高表示(例如时间分辨率、空间分辨率、质量等)时对信号进行编码,但能够根据在客户端设备上运行的某些应用所需的特定速率和表示从视频流的子集实现解码。与非伸缩性方案相比,可伸缩视频编码可节省带宽和/或存储。国际视频标准(例如MPEG-2 视频、H.263、MPEG4视觉、H.264等)可具有支持可伸缩性模式的工具和/ 或配置文件(profile)。
[0069] 表1提供了不同类型的可伸缩性连同可对其进行支持的对应标准的示例。举例来说,比特深度可伸缩性和/或色度格式可伸缩性可被绑定至视频格式(例如高于8比特视频,并且色度采样格式高于YUV4:2:0),其主要可由专业视频应用使用。宽高比可伸缩性可被提供。
[0070]
[0071] 表1
[0072] 可伸缩视频编码可使用基层比特流提供与第一组视频参数关联的第一级视频质量。可伸缩视频编码可使用一个或多个增强层比特流提供与一组或多组增强参数关联的一级或多级较高质量。所述视频参数组可包括下列中的一者或多者:空间分辨率、帧速率、重建视频质量(例如SNR、PSNR、VQM、视觉质量等形式的)、3D性能(例如具有两个或更多个视图)、亮度和色度比特深度、色度格式、以及基础单层编码标准。不同用例可使用不同类型的可伸缩性,如表1中所示。可伸缩编码架构可提供一种常用结构,其可被配置成支持一种或多种可伸缩性(例如表1中列出的可伸缩性)。可伸缩编码架构是可变的,以通过最小配置工作量(effort)来支持不同的可伸缩性。可伸缩编码架构可包括至少一种优选操作模式,其可能不需要改变为块级操作,由此编码逻辑(例如编码和/或解码逻辑)可在该可伸缩编码系统中被最大限度地重复使用。举例来说,可提供基于图片级层间处理和管理单元的可伸缩编码架构,其中层间预测可在图片级执行。
[0073] 图9是说明了示例编码后的比特流结构的图示。编码后的比特流1000 由多个NAL(网络抽象层)单元1001组成。NAL单元可包含编码后的样本数据(例如编码切片1006)或高级句法元数据(例如参数集数据、切片报头数据1005或补充增强信息数据1007(可被称为SEI消息))。参数集为包含有可应用于多个比特流层(例如视频参数集1002(VPS))或可应用于一个层内的编码后的视频序列(例如序列参数集1003(SPS))或可应用于一个编码后的视频序列内的多个编码后的图片(例如图片参数集1004(PPS)) 的基本句法元素的高级句法结构。所述参数集能够与视频比特流的编码后的图片一起发送,或通过其他方式(包括使用可靠信道、硬编码等的带外传输) 发送。切片报头1005同样为高级句法结构,可包含一些相对较小或仅与特定切片或图片类型相关的图片相关信息。SEI消息1007承载的信息可能不为解码进程所需但能够用于多种其他目的(例如图片输出定时或显示以及丢失检测和隐藏)。
[0074] 图10是说明了示例通信系统的图示。所述通信系统1300可包括编码器 1302、通信网络1304、以及解码器1306。所述编码器1302可经由连接1308 与网络1304通信,所述连接1308可以是有线连接或无线连接。编码器1302 可与图1中基于块的视频编码器类似。编码器1302可包括单层编解码器(例如图1)或多层编解码器。举例来说,编码器1302可以是具有图片级ILP 支持的多层(例如两层)可伸缩编码系统。解码器1306可经由连接1310与网络
1304通信,所述连接1310可以是有线连接或无线连接。解码器1306 可与图2中的基于块的视频解码器类似。解码器1306可包括单层编解码器 (例如图2)或多层编解码器。举例来说,解码器1306可以是具有图片级 ILP支持的多层(例如两层)可伸缩解码系统。
[0075] 编码器1302和/或解码器1306可被结合到多种有线通信设备和/或无线发射/接收单元(WTRU)(包括但不限于数字电视、无线广播系统、网络元素/终端、服务器(例如内容或网页服务器(如超文本传输协议(HTTP)服务器))、个人数字助理(PDA)、便携式或台式计算机、平板电脑、数字摄像机、数字录音设备、视频游戏设备、视频游戏机、蜂窝或卫星无线电电话、数字媒体播放器等等)中。
[0076] 通信网络1304可以是适当类型的通信网络。例如,通信网络1304可以是提供诸如声音、数据、视频、消息、广播等内容至多个无线用户的多接入系统。该通信系统1304可以通过系统资源(包括无线带宽)的共享使得多个无线用户能够访问这些内容。例如,该通信系统1304可以使用一种或多种信道接入方法,例如码分多址(CDMA)、时分多址(TDMA)、频分多址 (FDMA)、正交FDMA(OFDMA)、单载波FDMA(SC-FDMA)等等。该通信网络1304可包括多个连接的通信网络。该通信网络1304可包括因特网和/或一个或多个私人商业网络(例如蜂窝网络、WiFi热点、因特网服务提供商(ISP)网络等等)。
[0077] 图11是示例WTRU的系统图示。如图所示,WTRU 1202可包括处理器1218、收发信机1220、发射/接收元件1222、扬声器/麦克风1224、小键盘(keypad)或键盘(keyboard)1226、显示屏/触摸板1228、不可移动存储器1230、可移动存储器1232、电源1234、全球定位系统(GPS)芯片组1236 和/或其他外围设备1238。应该理解的是,在保持与实施方式一致的情况下, WTRU 1202可以包括上述元件的任何子组合。此外,编码器(例如编码器 100)和/或解码器(例如解码器200)结合在其中的终端可以包括参考图11 中的WTRU 1202描述的以及这里描述的元件的一些或全部。
[0078] 处理器1218可以是通用处理器、专用处理器、常规处理器、数字信号处理器(DSP)、多个微处理器、与DSP核心相关联的一个或多个微处理器、控制器、微控制器、专用集成电路(ASIC)、现场可编程门阵列(FPGA) 电路、任何其它类型的集成电路(IC)、状态机等。处理器1218可以执行信号编码、数据处理、功率控制、输入/输出处理和/或使得WTRU 1500能够运行在有线和/或无线环境中的其他任何功能。处理器1218可以耦合到收发信机1220,该收发信机1220可以耦合到发射/接收元件1222。尽管图11中将处理器1218和收发信机1220描述为独立的组件,但是处理器1218和收发信机1220可以被一起集成到电子封装和/或芯片中。
[0079] 发射/接收元件1222可以被配置成通过空中接口1215将信号发送到另一终端,或者从另一终端接收信号。例如,在一个或多个实施方式中,发射 /接收元件1222可以是被配置成发送和/或接收RF信号的天线。在一个或多个实施方式中,例如发射/接收元件1222可以是被配置成发送和/或接收例如 IR、UV或者可见光信号的发射器/检测器。在一个或多个实施方式中,发射 /接收元件1222可以被配置成发送和/或接收RF信号和光信号两者。可以理解发射/接收元件1222可以被配置成发送和/或接收无线信号的任意组合。
[0080] 此外,尽管发射/接收元件1222在图11中被描述为单个元件,但是 WTRU 1202可以包括任何数量的发射/接收元件1222。更具体地,WTRU 1202可以使用MIMO技术。由此,在一个实施方式中,WTRU 1202可以包括两个或更多个发射/接收元件1222(例如,多个天线)以用于通过空中接口1215发射和/或接收无线信号。
[0081] 收发信机1220可以被配置成对将由发射/接收元件1222发送的信号进行调制,并且被配置成对由发射/接收元件1222接收的信号进行解调。如上所述,WTRU 1202可以具有多模式能力。由此,收发信机1220可以包括多个收发信机以用于使得WTRU 1500能够经由多个RAT进行通信,例如 UTRA和IEEE 802.11。
[0082] WTRU 1202的处理器1218可以被耦合到扬声器/麦克风1224、小键盘 1226和/或显示屏/触摸板1228(例如,液晶显示(LCD)显示单元或者有机发光二极管(OLED)显示单元),并且可以从上述装置接收用户输入数据。处理器1218还可以向扬声器/麦克风1224、小键盘1226和/或显示屏/触摸板 1228输出用户数据。此外,处理器1218可以访问来自任何类型的合适的存储器中的信息,以及向任何类型的合适的存储器中存储数据,所述存储器例如可以是不可移动存储器1230和/或可移动存储器1232。不可移动存储器 1230可以包括随机存取存储器(RAM)、只读存储器(ROM)、硬盘或者任何其他类型的存储器存储装置。可移动存储器1232可以包括订户标识模块 (SIM)卡、记忆棒、安全数字(SD)存储卡等。在一个或多个实施方式中,处理器1218可以访问来自物理上未位于WTRU 1202上(例如位于服务器或者家用计算机(未示出)上)的存储器的数据,以及在该存储器中存储数据。
[0083] 处理器1218可以从电源1234接收电能,并且可以被配置成将该电能分配给WTRU 1202中的其他组件和/或对至WTRU 1202中的其他组件的电能进行控制。电源1234可以是任何适用于给WTRU 1202供电的装置。例如,电源1234可以包括一个或多个干电池(镍镉(NiCd)、镍锌(NiZn)、镍氢 (NiMH)、锂离子(Li-ion)等)、太阳能电池、燃料电池等。
[0084] 处理器1218还可以耦合到GPS芯片组1236,该GPS芯片组1236可以被配置成提供关于WTRU 1202的当前位置的位置信息(例如,经度和纬度)。作为来自GPS芯片组1236的信息的补充或者替代,WTRU 1202可以通过空中接口1215从终端(例如,基站)接收位置信息,和/或基于从两个或更多个相邻基站接收到的信号的定时来确定其位置。可以理解,在保持与实施方式一致性的同时,WTRU 1202可以通过任何合适的位置确定方法来获取位置信息。
[0085] 处理器1218还可以耦合到其他外围设备1238,该外围设备1238可以包括提供附加特征、功能和/或无线或有线连接的一个或多个软件和/或硬件模块。例如,外围设备1238可以包括加速度计、方向传感器、运动传感器、近距离传感器、电子指南针(e-compass)、卫星收发信机、数字相机和/或摄像机(用于照片或者视频)、通用串行总线(USB)端口、振动装置、电视收发信机、免持耳机、蓝牙模块、调频(FM)无线电单元、诸如数字音乐播放器、媒体播放器、视频游戏机模块、因特网浏览器的软件模块等等。
[0086] 作为示例,WTRU 1202可以被配置成发送和/或接收无线信号,并且可以包括用户设备(UE)、移动站、固定或移动订户单元、寻呼机、蜂窝电话、个人数字助理(PDA)、智能电话、便携式电脑、上网本、个人计算机、无线传感器、消费电子产品或任意其他能够接收和处理压缩视频通信的终端。
[0087] WTRU 1202和/或通信网络(例如通信网络804)可以实施诸如通用移动电信系统(UMTS)陆地无线电接入(UTRA)之类的无线电技术,其可以使用宽带CDMA(WCDMA)来建立空中接口1215。WCDMA可以包括诸如高速分组接入(HSPA)和/或演进型HSPA(HSPA+)的通信协议。HSPA 可以包括高速下行链路分组接入(HSDPA)和/或高速上行链路分组接入 (HSUPA)。WTRU 1202和/或通信网络(例如通信网络804)可以实施诸如演进型UMTS陆地无线电接入(E-UTRA)之类的无线电技术,其可以使用长期演进(LTE)和/或高级LTE(LTE-A)来建立空中接口1215。
[0088] WTRU 1202和/或通信网络(例如通信网络804)可以实施诸如IEEE 802.16(即,全球微波互联接入(WiMAX))、CDMA2000、CDMA2000 1X、 CDMA2000 EV-DO、临时标准2000(IS-2000)、临时标准95(IS-95)、临时标准856(IS-856)、全球移动通信系统(GSM)、增强型数据速率GSM演进(EDGE)、GSM EDGE(GERAN)之类的无线电技术。WTRU 1500和/ 或通信网络(例如通信网络804)可以实施诸如IEEE 802.11、IEEE 802.15 之类的无线电技术。
[0089] 图12是说明了示例双向屏幕内容共享系统1600的图示。所述图示说明了包括有捕捉器1602、编码器1604和发射机1606的主机子系统。图12还说明了包括有接收机1608(输出接收到的输入比特流1610)、解码器1612、以及显示器(渲染器)1618的客户端子系统。解码器1612输出至显示图片缓冲器1614,该显示图片缓冲器1614接着传送解码后的图片1616至显示器 1618。产业界对屏幕内容编码(SCC)有着各种应用要求。参见[R12]、[R13]。屏幕内容压缩方法对于某些特定应用来说变得更加重要,这是因为越来越多的人出于媒体呈现或远程电脑桌面的目的共享其设备内容。移动设备的屏幕显示具有很大的改进以支持高清或超高清分辨率。传统的视频编码方法提高了屏幕共享应用中传送屏幕内容的带宽需求。
[0090] 如上所述,图2为接收由编码器(例如图1中的编码器)生成的视频比特流并重建将被显示的视频信号的通用基于块的单层解码器的框图。同样如上所述,在视频解码器处,比特流首先由熵解码器解析。残差系数被逆量化并被逆变换以获取重建残差。编码模式和预测信息被用于通过使用空间预测或时间预测来获取预测信号。所述预测信号和重建残差被加在一起以获得重建视频。所述重建视频在被存储在参考图片存储以被显示和/或用于解码之后的视频信号之前还可另外进行回路滤波。如图1中所示,为了实现有效压缩,单层编码器采用了众所周知技术(例如空间预测(同样称作帧内预测)和时间预测(同样称作帧间预测和/或运动补偿预测))来预测输入视频信号。编码器还具有模式决策逻辑,其通常基于特定标准(例如速率和失真考虑的结合)选择最适合的预测方式。参见[R11]。编码器随后变换并量化预测残差(输入信号与预测信号之间的差分信号)。量化残差连同模式信息(例如帧内或帧间预测)和预测信息(运动向量、参考图片索引、帧内预测模式等)在熵编码器处被进一步压缩并被打包成输出视频比特流。如图1中所示,编码器还通过将逆量化和逆变换应用于量化残差以获取重建残差来生成重建视频信号,并将该重建残差加回预测信号。所述重建视频信号还可另外完成回路滤波进程(例如去块滤波、采样自适应偏移、或自适应回路滤波),并最终存储在参考图片存储中以用于预测之后的视频信号。
[0091] 为了节省传输带宽和存储空间,MPEG多年来一直致力于开发视频编码标准。高效视频编码(HEVC)(参见[R13])为新兴的视频压缩标准。HEVC 当前正由ITU-T视频编码专家组(VCEG)和ISO/IEC活动图片专家组 (MPEG)一起联合开发。在相同质量前提下,与H.264相比,HEVC能够节省50%的带宽。HEVC仍然为基于块的混合视频编码标准,其编码器和解码器通常根据以上结合图1和图2讨论的方式操作。HEVC允许使用更大的视频块,并且其使用四叉树分割来以信号传递块编码信息。所述图片或切片首先被分割成具有相同大小(例如64×64)的编码树块(CTB)。利用四叉树,每一CTB被分割成CU,并且同样地使用四叉树,每一CU被进一步分割成预测单元(PU)和变换单元(TU)。对于每一帧间编码的CU,其PU 可以是8个分割模式中的一个,如上文中结合图3示出及讨论的。时间预测 (同样称为运动补偿)被应用于重建所有帧间编码的PU。根据对运动向量 (在HEVC中能够达到四分之一像素)的预测,应用线性滤波以获取分数位的像素值。在HEVC中,插值滤波器针对亮度具有7或8个抽头(tap)而针对色度具有4个抽头。HEVC中的去块滤波器为基于内容的;根据多种因素(例如编码模式差异、运动差异、参考图片差异、像素值差异等等),不同的去块滤波器操作被应用于TU和PU边界。对于熵编码,HEVC针对除高阶参数之外的大部分块级句法元素采用了基于上下文的自适应二进制算术编码(CABAC)。在CABAC编码中具有两种二进制值:一种为基于上下文的编码常规二进制值,而另一种为不具有上下文的旁路编码二进制值。
[0092] 虽然当前HEVC设计包含不同的块编码模式,但并未将空间冗余完全用于屏幕内容编码。这是因为HEVC专注于4:2:0格式的连续音视频内容,并且模式决策和变换编码工具并非针对离散音屏幕内容进行优化,所述离散音频屏幕内容常常以4:4:4视频格式加以捕捉。由于HEVC标准在2012年末开始走向成熟和稳定,标准化组织VCEG和MPEG针对屏幕内容编码开始致力于HEVC的未来扩展。在2014年1月,屏幕内容编码的提案征集(CFP) 由ITU-T VCEG和ISO/IEC MPEG联合发布。该CFP受到了大量关注,并且获得了来自提出了多个有效SCC方案的多个不同公司的七个回应 [R2]-[R8]。由于与自然视频内容相比,屏幕内容材料(例如文本和绘图)表现出了不同的特性,提出了某些提升屏幕内容编码的编码效率的新的编码工具,例如1D字符串复制[R9]、调色板编码[R10]、[R11]以及帧内块复制(帧内BC)[R12]、[R17]。所有这些屏幕内容编码相关工具都在核心实验 [R18]-[R22]中进行研究。就线段或块以及多个小的均质区域(例如单色区域) 而言,屏幕内容具有高度重复模式。通常只有很少的颜色存在于小的块中。相反地,对于自然视频,即使在小的块中也有很多颜色。每一位置处的颜色值通常与其之上的或水平邻近像素重复。1D字符串复制包括利用来自先前重建的像素缓冲器的可变长度来预测字符串。位置和字符串长度将以信号进行传递。在调色板编码模式下,使用调色板表来作为记录这些显著颜色的词典(dictionary),而不是直接编码像素值。并且对应的调色板索引图被用于表示编码块中每一像素的颜色值。此外,“运行”值用于指示具有相同显著颜色(即调色板索引)的连续像素的长度,以降低空间冗余。调色板编码通常有利于包含稀疏色的大的块。帧内块复制包括使用重建像素来预测同一图片中的当前编码块,并且位移信息(被称为块向量)被编码。
[0093] 图13是说明了示例全帧帧内块复制模式的图示。考虑到复杂度和带宽接入,在HEVC中,屏幕内容编码扩展参考软件(SCM-1.0)[R13]针对帧内块复制模式具有两种配置。一种配置为全帧帧内块复制模式,其中所有重建像素均能够用于预测,主要如图13中1700所示。为了降低块向量检索复杂度,提出了基于哈希值的帧内块复制检索[R29]、[R30]。另一种配置为局部区域帧内块复制模式,接下来进行讨论。
[0094] 图14是说明了示例局部区域帧内块复制模式的图示,主要如1800所示。但使用局部区域帧内块复制模式时,只有在左边和当前编码树单元(CTU) 中的那些重建像素被允许作为参考使用。
[0095] SCC与自然视频编码之间存在另一差别。对于自然视频编码,编码失真分布在整个图片中。尽管如此,对于屏幕内容而言,误差通常定位于强边周围,这使得伪像更为可见,即使在整个图片的PSNR(峰值信噪比)相当高的情况下。由此,考虑到主观质量,屏幕内容的编码更加困难。
[0096] 使用帧内块复制模式要求以信号传递块向量。在全帧帧内块复制配置下,块向量可以非常大,对帧内块复制模式造成了巨大的开销。通常地,一个块能够获得多个相似匹配,这是由于存在屏幕内容的高度重复模式。为了提升块向量编码效率,提出了不同的预测和编码方法[R23]-[R28]。当前公开的系统和方法的实施方式使用块向量导出来提升帧内块复制编码效率。在本公开所讨论和描述的变形中包括:(i)帧内块复制合并模式下的块向量导出,以及(ii)具有显式块向量模式的帧内块复制中的块向量导出。
[0097] 本公开中包括了对用于帧内块复制编码的位移信息导出方法的讨论。根据参考块的编码类型,导出的块向量或运动向量能够以不同的方式使用。一种方法为将导出的BV用作帧内BC合并模式中的合并候选者;该选项在下文中名为“帧内块复制合并模式”的分段部分进行讨论。另一方法为将导出的BV/MV用于常规帧内BC预测;该选项在下文中名为“采用导出的块向量的帧内块复制模式”的分段部分进行讨论。
[0098] 图16是说明了示例块向量导出的图示。给定块向量,如果由给定BV 指向的参考块为帧内BC编码块,则第二块向量可被导出。导出的块向量根据等式(4)来计算。图16主要在2000示出了这种块向量导出。
[0099] BVd = BV0 + BV1      (4)
[0100] 图17是说明了示例运动向量导出的图示。如果由给定BV指向的块为帧间编码块,则运动向量可被导出。图17主要在2100示出了MV导出情况。如果图17中的块B1为单向预测模式,则块B0的整数像素中导出的运动 MVd为:
[0101] MVd = BV0 +((MV1+2)>>2)      (5)
[0102] 根据某些实施方式,四分之一像素分辨率中导出的值MVd_q计算如下: MVd_q=(BV0<<2)+MV1
[0103] 并且参考图片与B1的一样。在HEVC中,常规运动向量为四分之一像素精度,并且块向量为整数精度。导出的运动向量的整数像素运动在此处用于示例说明。如果块B1为双向预测模式,则存在两种方式来执行运动向量导出。一种方式为分别针对两个方向导出两个运动向量,并且参考索引与单向预测模式相同。另一种方式为利用较小的量化参数(较高的质量)从参考图片中选择运动向量。如果两个参考图片具有相同的量化参数,则我们可根据图片序列号(picture order of count,POC)距离(较高相关性)从较近的参考图片中选择运动向量。以下讨论了使用第二种方式将双向预测转换成单向预测以降低复杂性的示例。
[0104] 帧内块复制合并模式
[0105] 图15是说明了两个用于帧内块复制合并的空间候选者示例的图示。在 HEVC主类[R13]和范围扩展[R17]中,帧间编码单元合并模式不会直接以信号传递运动信息,而是以信号传递帧间合并候选者列表中的索引至解码器。所述帧间合并候选者列表将通过与编码器中相同的确定性方式进行构建。所述运动信息使用所述索引从所述候选者列表中导出。根据图15中编号1902 的示例,有五个空间相邻块和一个时间并置块。只有那些在帧间模式下编码的块将被添加至所述帧间合并候选者列表中。如果所述候选者列表并未被空间和时间相邻块填满,则通过将两个列表中的现有的合并候选者进行组合的双向运动和零运动可被添加。
[0106] 对于帧内块复制合并模式,可实施一种应用所述合并模式的类似方法。没有BV信息被显式编码,但合并候选者索引被编码。在HEVC SCC扩展(SCM-1.0)[R31]中,BV通过差分编码方式(使用最后一个编码后的BV 作为其预测器)进行编码。在BV候选者列表构建中,首先核查BV预测器。如果BV预测器对于当前CU有效,则其被添加作为第一合并候选者。之后,根据图15中编号1902和1904的示例,对五个空间块进行核查;在下列条件下,这些有效BV被按序添加:(1)空间相邻块被帧内BC编码并由此具有BV,(2)所述BV对于当前CU有效(例如由所述BV指向的参考块并未在图片边界之外且已被编码),以及(3)所述BV还未在当前候选者列表中出现。如果所述合并候选者列表并未被填满,则利用已存在于所述列表中的那些有效BV导出所述BV。根据一种实施方式,仅考虑了等式(4)中的导出的块向量,而不考虑等式(5)中的导出的运动向量;在这样的示例中,所述候选者列表中所有的合并候选者为与帧内块复制模式对应的块向量。
[0107] 针对复杂设计,来自等式(5)的导出的运动向量可被混合在一起并与块向量一起被添加至合并候选者。根据针对每一候选块向量BV0的另一实施方式,如果基于BV0导出的BVd或MVd有效,则我们将考虑候选者块为具有BV0和BVd/MVd的双向预测模式,其中所述双向预测通过对第一预测(由应用块向量BV0获取)和第二预测(由应用导出的块或运动向量BVd/MVd获取)取平均来获取。
[0108] 图18A和18B共同为帧内块复制合并候选者列表构建的示例方法流程图。示例方法2200开始于步骤2202,该步骤2202为“帧内BC合并候选者导出”。所述方法接下来进行到标为“空间BV候选者生成”的虚线框,并且特别进行到步骤2204,该步骤2204为“在针对当前CU有效的情况下将 BV预测器添加至合并候选者列表”。进程接下来进行到步骤2206,该步骤
2206为“核查来自空间相邻块的BV,在其有效的情况下将其添加至合并候选者列表”。
[0109] 所述方法接下来进行到决策框2208,对下列条件进行评估:“((核查左、上、右上、左下相邻块)||(num_of_cand_list(候选者列表数量)>= max_num_of_merge_cand(合并候选者最大数量)))?”。如果在2208的条件被确定为伪,则进程返回到步骤2206。
[0110] 如果在2208的条件相反被确定为真,则进程进行到决策框2210,对下列条件进行评估:“(num_of_cand_list=max_num_of_merge_cand))?”。
[0111] 如果在2216的条件被确定为真,则进程在2224结束。如果在2216的条件被确定为伪,则进程进行到步骤2218,该步骤2218为“从候选者列表中取得一个空间BV并导出BVd”。
[0112] 接下来,进程进行到决策框2220,对下列条件进行评估:“BVd是否有效?”。如果在2220的条件被确定为真,则进程进行到步骤2222,该步骤 2222为“将BVd添加至合并候选者列表”。如果在2220的条件相反被确定为伪,则进程返回到决策框2216。
[0113] 采用导出的块向量的帧内块复制模式
[0114] 在常规帧内块复制模式下,针对编码单元内的每一预测单元,块向量将被显式地以信号进行传递。根据某些实施方式,这种模式通过添加标记以指示在帧内BC预测中是使用以信号传递的块向量还是导出的块向量来扩展。如果所述标记为0,则针对帧内BC预测使用以信号传递的块向量,并且不需要应用BV导出。如果所述标记为1,则基于以信号传递的块向量使用等式(4)或等式(5)导出BV或MV,并且导出的BV或MV将针对帧内块复制预测或运动补偿预测使用。
[0115] 另一实施方式为将两个标记添加至常规帧内BC模式。第一标记用于指示是否应用BV导出进程。如果所述第一标记为1,则第二标记被编码以指示是使用单向预测还是双向预测。如果第二标记为0,则仅针对帧内块复制预测或运动补偿预测使用导出的BV或MV。否则,如果第二标记为1,则使用以信号传递的BV生成第一预测,而使用导出的BV或MV生成第二预测;最终预测通过对这两个预测取平均来生成,类似于双向预测模式。
[0116] 针对块向量导出的内存接入带宽压缩
[0117] 块向量导出使用与块编码模式和块向量/运动向量有关的信息(如图16 和图17中块B1的信息)操作。对于解码器芯片设计,有两种方式存储所有编码后的块的模式/BV/运动信息。一种方式为将所述信息存储在外置内存中。这种技术需要接入到外置内存,因而增加了内存接入带宽。另一种技术是将所述信息缓存在片上内存中,这增加了缓存大小。
[0118] 此处描述了用于减少需要被存储的信息量的两种示例方法。一种方法是利用粗粒度来存储所述信息。在HEVC中,原始BV/MV信息基于4×4块大小进行存储。基于较大的块大小(如16×16块大小)以压缩形式来存储所述原始BV/MV信息,可以大大减小内存大小。如果使用了16×16块大小,所需的BV存储具有与HEVC中压缩后的运动相同的粒度。采用这种方式,有可能以合适的大小缓存这些数据。第二种方案是在有限范围内而不是已编码的所有块的范围内将编码后的块的这些信息进行缓存。举例来说,解码器可以仅缓存属于当前CTU行以及在当前CTU行之上的有限数量的编码后的相邻CTU行的信息。如果图16和图17中由第一BV指向的块B1在解码器缓存的范围之外,则该BV将被认为是无效的,并且将不会应用BV/MV导出。
[0119] 编码句法和语义
[0120] 基于HEVC范围扩展草案[R17]的当前句法设计,提出了新的句法元素来以信号传递CU,所述CU利用帧内块复制合并和具有导出的块向量的帧内块复制来进行编码。在本部分讨论的所提出的调色板编码方法可通过引入额外的句法在比特流中以信号传递。下表(表2)示出了所提出的句法元素、以及被包含在编号为[10]、[12]、[13]、[14]、[17]、[27]、[28]、[29]、[40]、 [41]以及[42]的行中的HEVC范围扩展草案[R17]的句法元素的改变。
[0121] 句法
[0122]
[0123]
[0124]
[0125]
[0126] 表2
[0127] 参见表2,注意以下内容:
[0128] intra_bc_merge_flag(帧内bc合并标记)[x0][y0]等于1指的是当前编码单元在合并模式下编码,并且块向量从合并候选者中选择。intra_bc_merge_flag[x0][y0]等于0指的是编码单元未在合并模式下编码,并且当前编码单元的块向量被显式编码。未出现时,intra_bc_merge_flag的值被推定为等于0。阵列索引x0、y0指的是相对于图片的左上亮度样本的所考虑的编码块的左上亮度样本的位置(x0,y0)。
[0129] intra_bc_merge_index(帧内bc合并索引)[x0][y0]指的是合并候选者中的与当前编码单元的块向量相同的索引。intra_bc_merge_index[x0][y0]的范围为0至帧内块复制合并候选者最大数量减1。阵列索引x0、y0指的是相对于图片的左上亮度样本的所考虑的编码块的左上亮度样本的位置(x0, y0)。
[0130] intra_bc_bv_derivation_flag(帧内bcbv导出标记)[x0][y0]等于1指的是导出的BV或MV用于当前PU预测。
[0131] 更多示例实施方式
[0132] 根据一种示例实施方式,生成导出的块向量,并且该导出的块向量被用作帧内块复制合并模式下的合并候选者。在某些这样的方法中,导出的块向量BVd根据BVd=BV0+BV1(给出了块向量BV0)确定。
[0133] 根据另一示例实施方式,生成导出的运动向量,并且该导出的运动向量被用作帧内块复制合并模式下的合并候选者。在某些这样的方法中,整数像素单元中导出的运动向量MVd根据MVd=BV0+((MV1+2)>>2)(给出了块向量BV0)确定。
[0134] 根据一种示例实施方式,生成导出的块向量,并且该导出的块向量用于采用帧内块复制方法的常规帧内BC预测。
[0135] 根据另一示例实施方式,生成导出的运动向量,并且该导出的运动向量用于采用运动补偿预测方法的常规帧内BC预测。
[0136] 根据一种示例实施方式,形成块向量(BV)候选者列表。生成导出的 BV(BVd),并且所述BVd被添加至所述候选者列表。
[0137] 根据某些这样的实施方式,所述BV候选者列表的形成包括:在BV预测器对于当前编码单元(CU)有效的情况下添加所述BV预测器,并且核查五个空间块以及添加那些有效的各个空间块BV。根据某些这样的实施方式,仅在以下情况下添加空间块BV:(i)空间相邻块被帧内BC编码,(ii)所述BV对于当前CU有效,以及(iii)所述BV还未在当前候选者列表中出现。根据某些这样的实施方式,所述BVd仅在合并候选者列表未被填满的情况下生成。所述BVd可在被添加至候选者列表之前被核查有效性。根据某些实施方式,所生成的BVd仅根据BVd=BV0+BV1导出。根据某些这样的实施方式,生成导出的运动向量(MVd),并且所述MVd被添加至候选者列表。根据某些实施方式,所述BVd根据(i)BVd=BV0+BV1和(ii) MVd=BV0+((MV1+2)>>2)两者来导出。根据某些实施方式,候选块被视为具有BV0和BVd/MVd的双向预测模式。双向预测首先可通过对第一预测(通过应用块向量BV0获取)和第二预测(通过应用块或运动向量 BVd/MVd获取)取平均来获取。
[0138] 根据一种示例实施方式,接收视频编码后的比特流,并且在所述比特流中标识用于指示在帧内BC预测中是使用以信号传递的块向量还是导出的块向量的标记。如果所述标记为第一值,则所述以信号传递的块向量用于帧内 BC预测。如果所述标记为第二值,则所述BV或MV基于所述以信号传递的块向量导出。根据某些这样的方法,所述导出的BV或MV用于帧内块复制预测或运动补偿预测。
[0139] 根据另一示例实施方式,接收编码后的视频比特流。第一标记在所述比特流中被标识为指示在帧内BC预测中是使用以信号传递的块向量还是导出的块向量。第二标记在所述比特流中被标识为指示是使用单向预测还是双向预测。
[0140] 根据某些这样的实施方式,如果所述第一标记为1,而所述第二标记为 0,则仅导出的BV/MV被用于帧内块复制预测或运动补偿预测。如果所述第一标记为1且所述第二标记为1,则以信号传递的BV被用于生成第一预测,而导出的BV/MV被用于生成第二预测,并且最终预测通过对这两个预测取平均来生成。
[0141] 根据一种示例实施方式,原始BV/MV信息通过基于较大的块大小存储 BV/MV信息来压缩。所述较大的块大小例如可以为16×16块大小。
[0142] 根据另一示例实施方式,使用解码器将编码后的块的信息以有限的范围进行缓存,该有限范围小于所有已编码后的块的范围。根据某些这样的方法,所述解码器仅缓存当前CTU行以及当前CTU行之上的预定数量编码后的相邻CTU行的信息。
[0143] 根据一种示例实施方式,提供了一种导出预测向量的视频编码方法。该方法包括标识用于预测视频块的第一候选块向量,其中所述第一候选块向量指向第一候选块。与所述第一候选块关联的至少第一预测向量被标识。导出的预测向量根据所述第一候选块向量和所述第一预测向量生成,并且视频块使用所述导出的预测向量来编码。根据某些实施方式,使用所述导出的预测向量对视频块进行编码包括对所述导出的预测向量指向的第二候选块进行标识,并且使用所述第二候选块来预测所述视频块。
[0144] 根据某些实施方式,对所述视频块进行编码包括在比特流中以信号传递所述第一候选块向量。根据某些实施方式,对所述视频块进行编码还包括在所述比特流中以信号传递所述第一预测向量。根据某些实施方式,对所述视频块进行编码还包括在所述比特流中以信号传递标记,其中所述标记的第一值指示所述导出的预测向量用于编码所述视频块,并且其中所述标记的第二值指示所述第一候选块向量用于编码所述视频块。根据某些实施方式,在所述比特流中编码输入视频块包括在所述比特流中编码在合并候选者列表中标识所述导出的预测向量的索引。
[0145] 在某些实施方式中,所述导出的预测向量通过将第一候选块向量与第一预测向量相加生成。其中所述第一候选块向量和所述第一预测向量具有不同的精度,可在将所述第一候选块向量和所述第一预测向量校准到同一精度之后执行所述第一候选块向量与所述第一预测向量的相加。
[0146] 根据某些实施方式,所述视频编码方法还包括生成合并候选者列表并将导出的预测向量插入到该合并候选者列表中。根据某些这样的实施方式,确定所述导出的预测向量是否有效,并且仅在确定所述导出的预测向量有效的情况下将所述导出的预测向量插入到所述合并候选者列表中。使用所述导出的预测向量对所述视频块进行编码包括提供在所述合并候选者列表中标识所述导出的预测向量的索引。在某些实施方式中,确定所述导出的预测向量是否有效包括:标识所述导出的预测向量指向的第二候选块、确定所述第二候选块中的所有样本是否可用。在所述第二候选块中的所有样本均可用的情况下,确定所述导出的预测向量有效。在所述第二候选块中有至少一个样本不可用的情况下,确定所述导出的预测向量无效。根据某些实施方式,在下列中的任一者为真的情况下,所述第二候选块中的样本无效:所述样本尚未被编码,或者所述样本在不同的切片中或在不同的片(tile)中,或者所述样本在视频图片边界之外。
[0147] 根据一种示例实施方式,提供了一种从编码视频的比特流中解码编码后的视频块的方法。至少第一候选块向量被标识用于预测输入视频块,其中所述第一候选块向量指向第一候选块。与所述第一候选块关联的至少第一预测向量被标识。导出的预测向量根据所述第一候选块向量和所述第一预测向量生成,并且编码后的视频块使用所述导出的预测向量进行解码。根据某些这样的实施方式,对第一候选块向量进行标识包括接收在比特流中以信号传递的所述第一候选块向量。
[0148] 根据某些这样的实施方式,响应于在比特流中接收指示输入视频块采用导出的预测向量编码的标记,使用导出的预测向量对编码后的视频块进行解码被执行。
[0149] 根据某些实施方式,对第一候选块向量进行标识包括对第一块向量合并候选者进行标识。根据某些实施方式,导出的预测向量为导出的预测向量合并候选者,并且响应于在比特流中接收标识了导出的预测向量合并候选者的索引,使用导出的预测向量合并候选者对编码后的视频块进行解码被执行。
[0150] 根据示例实施方式,提供了一种用于生成编码包括输入视频块的视频的比特流的视频编码方法。对输入视频块的相邻块进行标识。所述相邻块例如可以是所述输入视频块的左、上、或者左上邻块。对与所述相邻块关联的第一块向量进行标识,其中所述第一块向量指向第一候选块。对与所述第一候选块关联的第二块向量进行标识。导出的块向量通过将所述第一块向量与所述第二块向量相加生成,并且使用导出的块向量,第一预测块被生成以用于预测所述输入视频块。
[0151] 根据某些这样的实施方式,对所述输入视频块进行编码还包括使用第三块向量生成至少第二预测块以用于预测所述输入视频块。对所述第一预测块和所述第二预测块进行比较,并且基于编码度量对预测块及其关联的块向量进行选择。所述编码度量例如可以是拉格朗日率失真成本。
[0152] 根据示例实施方式,提供了用于生成比特流以编码包括输入视频块的视频的视频编码器。所述编码器包括处理器和存储指令操作的非临时性存储介质,当在处理器上运行时执行以实现包括下列各项的功能:对至少第一候选块向量进行标识以用于预测输入视频块,其中所述第一候选块向量指向第一候选块;对用于编码所述第一候选块的第一预测向量进行标识;根据所述第一候选块向量和所述第一预测向量生成导出的预测向量;以及在比特流中使用所述导出的预测向量对输入视频块进行编码以用于预测所述输入视频块。
[0153] 根据示例实施方式,提供用于生成编码包括输入视频块的视频的比特流的视频编码器。所述编码器包括处理器和存储指令操作的非临时性存储介质,当在处理器上运行时执行以实现包括下列各项的功能:对至少第一块向量合并候选者进行标识以用于编码输入视频块;对用于编码第一候选块的第一预测向量进行标识;根据所述第一块向量合并候选者和所述第一预测向量生成导出的预测向量;将所述导出的预测向量插入到合并候选者列表中;从所述合并候选者列表中选取所选择的预测向量以用于预测所述输入视频块;以及使用所选择的预测向量在比特流中编码所述视频输入块以用于预测所述输入视频块。
[0154] 根据示例实施方式,提供用于从编码视频的比特流中解码编码后的视频块的视频解码器,所述解码器包括处理器和存储指令操作的非临时性存储介质,当在处理器上运行时执行以实现包括下列各项的功能:对至少第一块向量进行标识以用于解码编码后的视频块;对用于编码所述第一块向量的第一预测向量进行标识;根据所述第一块向量和所述第一预测向量生成导出的预测向量;以及使用所述导出的预测向量解码编码后的视频块以用于预测编码后的视频块。
[0155] 虽然上面以特定组合的方式描述了特征和元素,但是本领域技术人员应该理解的是每个特征或元素都可在没有其他特征和元素的情况下单独使用,或与其他特征和元素进行各种组合。此外,此处所述的方法可在结合至计算机可读存储介质中的计算机程序、软件或固件中实现,以由计算机或处理器执行。计算机可读介质的示例包括电子信号(通过有线或无线连接传送)和计算机可读存储媒介。计算机可读存储媒介的例子包括但不限于只读存储器 (ROM)、随机存取存储器(RAM)、寄存器、缓存存储器、半导体存储设备、例如内置磁盘和可移动磁盘的磁媒介、磁光媒介和光媒介(例如CD-ROM 盘和数字多用途盘(DVD))。与软件相关联的处理器可被用于实施在WTRU、 UE、终端、基站、RNC或任何主机中使用的射频收发信机。
[0156] 参考文献
[0157] [R1]ITU-T Q6/16及ISO/IEC JCT1/SC29/WG11,“Joint Call for
[0158] Proposals for Coding of Screen Content(屏幕内容编码的联合呼吁提案)”,MPEG2014/N14175,2014年1月,美国,
[0159] 圣何塞。
[0160] [R2]J.Chen、Y.Chen、T.Hsieh、R.Joshi、M.Karczewicz、W.-S.
[0161] Kim、X.Li、C.Pang、W.Pu、K.Rapaka、J.Sole、L.Zhang、
[0162] F.Zou,“Description of screen content coding technology
[0163] proposal by Qualcomm(高通提出的屏幕内容编码技术提案说明)”,JCTVC-Q0031,2014年3月,西班牙,瓦伦西亚。
[0164] [R3]C.-C.Chen、T.-S.Chang、R.-L.Liao、C.-W.Kuo、W.-H.Peng、[0165] H.-M.Hang、Y.-J.Chang、C.-H.Hung、C.-C.Lin、J.-S.Tu、
[0166] E.-C.Ke、J.-Y.Kao、C.-L.Lin、F.-D.Jou、F.-C.Chen,
[0167] “Description of screen content coding technology proposal by[0168] NCTU and ITRI International(NCTU和ITRI国际提出的屏幕内容编码技术提案说明)”,JCTVC-Q0032,2014年3
[0169] 月,西班牙,瓦伦西亚。
[0170] [R4]P.Lai、T.-D.Chuang、Y.-C.Sun、X.Xu、J.Ye、S.-T.Hsiang、[0171] Y.-W.Chen、K.Zhang、X.Zhang、S.Liu、Y.-W.Huang、
[0172] S.Lei,“Description of screen content coding technology
[0173] proposal by MediaTek(联发科技提出的屏幕内容编码技术提案说明)”,JCTVC-Q0033,2014年3月,西班牙,瓦伦西亚。
[0174] [R5]Z.Ma、W.Wang、M.Xu、X.Wang、H.Yu、“Description of
[0175] screen content coding technology proposal by Huawei
[0176] Technologies(华为技术提出的屏幕内容编码技术提案说明)”,JCTVC-Q0034,2014年3月,西班牙,瓦伦西亚。
[0177] [R6]B.Li、J.Xu、F.Wu、X.Guo、G.J.Sullivan,“Description of[0178] screen content coding technology proposal by Microsoft(微软提出的屏幕内容编码技术提案说明)”,JCTVC-Q0035,2014
[0179] 年3月,西班牙,瓦伦西亚。
[0180] [R7]R.Cohen、A.Minezawa、X.Zhang、K.Miyazawa、A.Vetro、 S.Sekiguchi、K.Sugimoto、T.Murakami,“Description of
[0181] screen content coding technology proposal by Mitsubishi
[0182] Electric Corporation(三菱电机公司提出的屏幕内容编码技术提案说明)”,JCTVC-Q0036,2014年3月,西班牙,
[0183] 瓦伦西亚。
[0184] [R8]X.Xiu、C.-M.Tsai、Y.He、Y.Ye,“Description of screen
[0185] content coding technology proposal by InterDigital(交互数字技术公司提出的屏幕内容编码技术提案说明)”,
[0186] JCTVC-Q0037,2014年3月,西班牙,瓦伦西亚。
[0187] [R9]T.Lin、S.Wang、P.Zhang及K.Zhou,“AHG8:P2M based
[0188] dual-coder extension of HEVC(AHG8:基于P2M的HEVC 的双编码器扩展)”,文件编号JCTVC-L0303,2013年1 月。
[0189] [R10]X.Guo、B.Li、J.-Z.Xu、Y.Lu、S.Li及F.Wu,“AHG8:
[0190] Major-color-based screen content coding(AHG8:基于主要颜色的屏幕内容编码)”,文件编号JCTVC-O0182,2013 年10月。
[0191] [R11]L.Guo、M.Karczewicz、J.Sole及R.Joshi,“Evaluation of[0192] Palette Mode Coding on HM-12.0+RExt-4.1(对 HM-12.0+RExt-4.1的调色板模式编码评估)”,
[0193] JCTVC-O0218,2013年10月。
[0194] [R12]C.Pang、J.Sole、L.Guo、M.Karczewicz及R.Joshi,
[0195] “Non-RCE3:Intra Motion Compensation with 2-D MVs(非
[0196] -RCE3:具有2-D MV的帧内运动补偿)”,JCTVC-N0256,
[0197] 2013年7月。
[0198] [R13]B.Bross、W-J.Han、G.J.Sullivan、J-R.Ohm、T.Wiegand,
[0199] “High Efficiency Video Coding(HEVC)Text Specification
[0200] Draft 10(高效率视频编码(HEVC)文本规范草案10)”,
[0201] JCTVC-L1003,2013年1月。
[0202] [R14]G.J.Sullivan及T.Wiegand,Rate-distortion optimization for[0203] video compression.IEEE Signal Processing Magazine(IEEE 信号处理杂志:视频压缩的率失真优化),1998年11月,
[0204] 第6期,第15卷。
[0205] [R15]T.Vermeir,“Use cases and requirements for lossless and[0206] screen content coding(无损和屏幕内容编码的使用情况及要求)”,JCTVC-M0172,2013年4月,韩国,仁川。
[0207] [R16]J.Sole、R.Joshi、M.Karczewicz,“AhG8:Requirements for[0208] wireless display applications(AhG8:无线显示应用要求)”,
[0209] JCTVC-M0315,2013年4月,韩国,仁川。
[0210] [R17]D.Flynn、M.Naccari、K.Sharman、C.Rosewarne、J.Sole、 G.J.Sullivan、T.Suzuki,“HEVC Range Extension Draft 6
[0211] (HEVC范围扩展草案6)”,JCTVC-P1005,2014年1月,
[0212] 圣何塞。
[0213] [R18]J.Sole、S.Liu,“HEVC Screen Content Coding Core
[0214] Experiment 1(SCCE1):Intra Block Copying Extensions
[0215] (HEVC屏幕内容编码核心实验1(SCCE1):帧内块复制扩展)”,JCTVC-Q1121,2014年3月,瓦伦西亚。
[0216] [R19]C.-C.Chen、X.Xu、L.Zhang,“HEVC Screen Content Coding[0217] Core Experiment 2(SCCE2):Line-based Intra Copy(HEVC 屏幕内容编码核心实验2(SCCE2):基于线的帧内复制)”,
[0218] JCTVC-Q1122,2014年3月,瓦伦西亚。
[0219] [R20]Y.-W.Huang、P.Onno、R.Joshi、R.Cohen、X.Xiu、Z.Ma,
[0220] “HEVC Screen Content Coding Core Experiment 3
[0221] (SCCE3):Palette mode(HEVC屏幕内容编码核心实验3
[0222] (SCCE3):调色板模式)”,JCTVC-Q1123,2014年3月,
[0223] 瓦伦西亚。
[0224] [R21]Y.Chen、J.Xu、“HEVC Screen Content Coding Core
[0225] Experiment 4(SCCE4):String matching for sample coding
[0226] (HEVC屏幕内容编码核心实验4(SCCE4):样本编码的字符串匹配)”,JCTVC-Q1124,2014年3月,瓦伦西亚。[R22]X.Xiu、J.Chen,“HEVC Screen Content Coding Core[0227] Experiment 5(SCCE5):Inter-component prediction and
[0228] adaptive color transforms(HEVC屏幕内容编码核心实验5
[0229] (SCCE5):组件间预测和自适应颜色变换)”,
[0230] JCTVC-Q1125,2014年3月,瓦伦西亚。
[0231] [R23]P.Onno、G.Laroche、T.Poirier、C.Gisquet,“AhG5:On the[0232] displacement vector prediction scheme for Intra Block Copy[0233] (AhG5:关于帧内块复制的位移向量预测方案)”,
[0234] JCTVC-Q0062,2014年3月,瓦伦西亚。
[0235] [R24]X.Zhang、K.Zhang、J.An、H.Huang、S.Lei,“Block vector[0236] prediction for intra block copy(帧内块复制的块向量预测)”,JCTVC-Q0080,2014年3月,瓦伦西亚。
[0237] [R25]K.Zhang、J.An、X.Zhang、H.Huang、S.Lei,“Symmetric
[0238] intra block copy(对称帧内块复制)”,JCTVC-Q0082,2014 年3月,瓦伦西亚。
[0239] [R26]S.-T.Hsiang、T.-D.Chuang、S.Lei,“AHG8:Coding the
[0240] prediction differences of the intra BC vectors(AHG8:对帧内BC向量的预测差异进行编码)”,JCTVC-Q0095,2014 年3月,瓦伦西亚。
[0241] [R27]C.Pang、J.Sole、R.Joshi、M.Karczewicz,“Block vector[0242] prediction method for intra block copy(帧内块复制的块向量预测方法)”,JCTVC-Q0114,2014年3月,瓦伦西亚。 [R28]L.Zhu、J.Xu、G.J.Sullivan、Y.Wu、S.Sankuratri、 B.A.Kumar,“Ping-pong block vector predictor for intra block[0243] copy(帧内块复制的乒乓块向量预测器)”,JCTVC-Q0134,
[0244] 2014年3月,瓦伦西亚。
[0245] [R29]B.Li、J.Xu,“Hash-based intraBC searc(基于哈希值的帧内BC检索)”,JCTVC-Q0252,2014年3月,瓦伦西亚。 [R30]C.Pang、J.Sole、T.Hsieh、M.Karczewicz、“Intra block copy
[0246] with larger search region(具有较大检索区域的帧内块复制)”,JCTVC-Q0139,2014年3月,瓦伦西亚。
[0247] [R31]R.Joshi、J.Xu、R.Cohen、S.Liu、Z.Ma、Y.Ye,“Screen
[0248] content coding test model 1(SCM 1)(屏幕内容编码测试模型1(SCM1)”,JCTVC-Q1014,2014年3月,瓦伦西亚。