一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

针对视频译码使用与位置相关的预测组合的改进视频帧内预测的制作方法

2021-11-05 23:57:00 来源:中国专利 TAG:

针对视频译码使用与位置相关的预测组合的改进视频帧内预测
1.本技术是申请日为2016年9月22日、申请号为201680055903.7、发明名称为“针对视频译码使用与位置相关的预测组合的改进视频帧内预测”的中国专利申请的分案申请。
2.该申请要求2015年9月29日申请的美国临时专利申请案第62/234,645号的权益,所述临时专利申请案的全部内容以引用的方式并入本文中。
技术领域
3.本发明涉及视频译码。


背景技术:

4.数字视频能力可并入到广泛范围的装置中,包含数字电视、数字直播系统、无线广播系统、个人数字助理(pda)、膝上型或台式计算机、平板计算机、电子书阅读器、数码相机、数字记录装置、数字媒体播放器、视频游戏装置、视频游戏控制台、蜂窝式或卫星无线电电话(所谓的“智能型电话”)、视频电话会议装置、视频流式发射装置及其类似者。数字视频装置实施视频译码技术,例如在包含由itu

t h.261、iso/iec mpeg

1visual、itu

t h.262或iso/iec mpeg

2visual、itu

t h.263、iso/iec mpeg

4visual、itu

t h.264/mpeg

4高级视频译码(avc)第10部分及itu

t h.265高效率视频译码(hevc)所定义的各种标准及这些标准的扩展中所描述的那些技术。视频装置可通过实施这类视频译码技术来更有效地发射、接收、编码、解码及/或存储数字视频信息。
5.视频译码技术包含空间(图片内)预测及/或时间(图片间)预测以减少或去除视频序列中固有的冗余。对于基于块的视频译码,可将视频切片(例如,视频帧或视频帧的一部分)分割成视频块,其也可被称作树型块、译码单元(cu)及/或译码节点。可使用相对于同一图片中的相邻块中的参考样本的空间预测来编码图片的经帧内译码(i)切片中的视频块。图片的经帧间译码(p或b)切片中的视频块可使用相对于同一图片中的相邻块中的参考样本的空间预测或相对于其它参考图片中的参考样本的时间预测。图片可被称作帧,且参考图片可被称作参考帧。
6.空间或时间预测产生待译码的块的预测性块。残余数据表示待译码的原始块与预测性块之间的像素差。根据指向形成预测性块的参考样本的块的运动向量及指示经译码块与预测性块之间的差异的残余数据来编码经帧间译码块。经帧内译码块是根据帧内译码模式及残余数据来编码的。为进行进一步压缩,可将残余数据从像素域变换到变换域,从而产生可接着进行量化的残余变换系数。可扫描最初布置成二维阵列的经量化变换系数以便产生变换系数的一维向量,且可应用熵译码以实现更多压缩。


技术实现要素:

7.大体而言,本发明描述关于在视频译码中使用与位置相关的预测组合的改进视频帧内预测的技术。所述技术可用于高级视频编解码器的上下文中,例如hevc的扩展或下一
代视频译码标准。在hevc中,例如,35个线性预测子的集合用于进行帧内译码,且可根据所选择预测子模式及块大小从相邻“参考”像素的未经滤波或经滤波集合计算预测。本发明的技术可使用参考像素的未经滤波及经滤波集合两者的加权组合以实现更好压缩(通过(例如)经改进预测且因此通过较少残余),致能预测值的所有集合的有效平行计算,并维持低复杂度(通过(例如)仅对参考像素的集合而非预测值本身应用滤波)。
8.在一个实例中,本发明涉及解码视频数据的方法,所述方法包括:将相邻块解码为视频数据的图片中的当前块;将包括多个经滤波参考值的经滤波参考阵列形成到相邻块中的当前块,所述多个经滤波参考值包括相邻像素的经滤波版本;形成包括对应于相邻像素的未经滤波版本的多个未经滤波参考值的未经滤波参考阵列;基于经滤波参考阵列中的多个经滤波参考值中的一或多者乘以权重的第一集合与未经滤波的参考阵列中的多个未经滤波参考值中的一或多者乘以权重的第二集合的线性组合来计算与当前块的像素的集合相关联的预测值的集合;及基于经计算的预测值的集合重建当前块。
9.在另一实例中,本发明涉及编码视频数据的方法,所述方法包括:接收图片的当前块、包括多个经滤波参考值的经滤波参考阵列及包括多个未经滤波参考值的未经滤波参考阵列;将相邻块解码为视频数据的图片中的当前块;将包括多个经滤波参考值的经滤波参考阵列形成到相邻块中的当前块,所述多个经滤波参考值包括相邻像素的经滤波版本;形成包括对应于相邻像素的未经滤波版本的多个未经滤波参考值的未经滤波参考阵列;产生用于当前块的预测性块,其中产生包括基于经滤波参考阵列中的多个经滤波参考值中的一或多者乘以权重的第一集合与未经滤波的参考阵列中的多个未经滤波参考值中的一或多者乘以权重的第二集合的线性组合来计算与当前块的像素的集合相关联的预测值的集合;基于当前块与预测性块之间的差异产生残余块;及在位流中编码表示残余块的数据。
10.在另一实例中,本发明涉及用于解码视频数据的装置,所述装置包括存储器及与所述存储器通信的一或多个处理器。所述一或多个处理器经配置以将相邻块解码为视频数据的图片中的当前块;将包括多个经滤波参考值的经滤波参考阵列形成到相邻块中的当前块,所述多个经滤波参考值包括相邻像素的经滤波版本;形成包括对应于相邻像素的未经滤波版本的多个未经滤波参考值的未经滤波参考阵列;基于经滤波参考阵列中的多个经滤波参考值中的一或多者乘以权重的第一集合与未经滤波的参考阵列中的多个未经滤波参考值中的一或多者乘以权重的第二集合的线性组合来计算与当前块的像素的集合相关联的预测值的集合;及基于经计算的预测值的集合重建当前块。
11.在另一实例中,本发明涉及用于编码视频数据的装置,所述装置包括存储器及与所述存储器通信的一或多个处理器。所述一或多个处理器经配置以接收图片的当前块、包括多个经滤波参考值的经滤波参考阵列及包括多个未经滤波参考值的未经滤波参考阵列;将相邻块解码为视频数据的图片中的当前块;将包括多个经滤波参考值的经滤波参考阵列形成到相邻块中的当前块,所述多个经滤波参考值包括相邻像素的经滤波版本;形成包括对应于相邻像素的未经滤波版本的多个未经滤波参考值的未经滤波参考阵列;产生用于当前块的预测性块,其中产生包括基于经滤波参考阵列中的多个经滤波参考值中的一或多者乘以权重的第一集合与未经滤波的参考阵列中的多个未经滤波参考值中的一或多者乘以权重的第二集合的线性组合来计算与当前块的像素的集合相关联的预测值的集合;基于当前块与预测性块之间的差异产生残余块;及在位流中编码表示残余块的数据。
12.在另一实例中,本发明涉及用于解码视频数据的装置,所述装置包括:用于将相邻块解码为视频数据的图片中的当前块的装置;用于将包括多个经滤波参考值的经滤波参考阵列形成到相邻块中的当前块的装置,所述多个经滤波参考值包括相邻像素的经滤波版本;用于形成包括对应于相邻像素的未经滤波版本的多个未经滤波参考值的未经滤波参考阵列的装置;用于基于经滤波参考阵列中的多个经滤波参考值中的一或多者乘以权重的第一集合与未经滤波的参考阵列中的多个未经滤波参考值中的一或多者乘以权重的第二集合的线性组合来计算与当前块的像素的集合相关联的预测值的集合的装置;及用于基于经计算的预测值的集合重建当前块的装置。
13.在另一实例中,本发明涉及用于编码视频数据的装置,所述装置包括:用于接收图片的当前块、包括多个经滤波参考值的经滤波参考阵列及包括多个未经滤波参考值的未经滤波参考阵列的装置;用于将相邻块解码为视频数据的图片中的当前块的装置;用于将包括多个经滤波参考值的经滤波参考阵列形成到相邻块中的当前块的装置,所述多个经滤波参考值包括相邻像素的经滤波版本;用于形成包括对应于相邻像素的未经滤波版本的多个未经滤波参考值的未经滤波参考阵列的装置;用于产生当前块的预测性块的装置,其中产生包括基于经滤波参考阵列中的多个经滤波参考值中的一或多者乘以权重的第一集合与未经滤波的参考阵列中的多个未经滤波参考值中的一或多者乘以权重的第二集合的线性组合来计算与当前块的像素的集合相关联的预测值的集合;用于基于当前块与预测性块之间的差异产生残余块的装置;及用于在位流中编码表示残余块的数据的装置。
14.在另一实例中,本发明涉及其上存储有用于处理视频数据的指令的非暂时性计算机可读媒体,所述指令在执行时使一或多个处理器:将相邻块解码为视频数据的图片中的当前块;将包括多个经滤波参考值的经滤波参考阵列形成到相邻块中的当前块,所述多个经滤波参考值包括相邻像素的经滤波版本;形成包括对应于相邻像素的未经滤波版本的多个未经滤波参考值的未经滤波参考阵列;基于经滤波参考阵列中的多个经滤波参考值中的一或多者乘以权重的第一集合与未经滤波的参考阵列中的多个未经滤波参考值中的一或多者乘以权重的第二集合的线性组合来计算与当前块的像素的集合相关联的预测值的集合;及基于经计算的预测值的集合重建当前块。
15.在另一实例中,本发明涉及其上存储有用于处理视频数据的指令的非暂时性计算机可读媒体,所述指令在执行时使一或多个处理器:接收图片的当前块、包括多个经滤波参考值的经滤波参考阵列及包括多个未经滤波参考值的未经滤波参考阵列;将相邻块解码为视频数据的图片中的当前块;将包括多个经滤波参考值的经滤波参考阵列形成到相邻块中的当前块,所述多个经滤波参考值包括相邻像素的经滤波版本;形成包括对应于相邻像素的未经滤波版本的多个未经滤波参考值的未经滤波参考阵列;产生用于当前块的预测性块,其中产生包括基于经滤波参考阵列中的多个经滤波参考值中的一或多者乘以权重的第一集合与未经滤波的参考阵列中的多个未经滤波参考值中的一或多者乘以权重的第二集合的线性组合来计算与当前块的像素的集合相关联的预测值的集合;基于当前块与预测性块之间的差异产生残余块;及在位流中编码表示残余块的数据。
16.在以下附图及实施方式中阐述一或多个实例的细节。其它特征、目标及优点将从所述描述及所述图式以及权利要求书显而易见。
附图说明
17.图1为说明在可利用本发明中所描述的技术的帧内译码中待预测的4
×
4像素的块的图。
18.图2为说明用于基于块大小的方向预测子的滤波器设定的图。
19.图3说明根据本发明的技术的使用未经滤波参考的4
×
4块的预测。
20.图4说明根据本发明的技术的使用经滤波参考的4
×
4块的预测。
21.图5为说明可利用本发明中所描述的技术的实例视频编码及解码系统的框图。
22.图6为说明可实施本发明中所描述的技术的视频编码器的实例的框图。
23.图7为说明可实施本发明中所描述的技术的视频解码器的实例的框图。
24.图8为说明根据本发明的技术的实例方法的流程图。
25.图9为说明根据本发明的技术的实例方法的流程图。
具体实施方式
26.大体而言,本发明描述关于在视频译码中使用与位置相关的预测组合的改进视频帧内预测的技术。所述技术可用于高级视频编解码器的上下文中,例如hevc的扩展或下一代视频译码标准。
27.大体上相对于itu

t h.265(也被称作高效视频译码(hevc))描述本发明的技术,itu

t h.265描述于2013年4月的“h系列:视听及多媒体系统,视听服务基础设施—移动视频的译码(series h:audiovisual and multimedia systems,infrastructure of audiovisual services

coding of moving video)”,高效视频译码(high efficiency video coding),itu

t h.265中。然而,这些技术可应用于其它视频译码标准,包含hevc的扩展及其它标准的扩展。其它视频译码标准的实例包含itu

t h.261、iso/iec mpeg

1visual、itu

t h.262或iso/iec mpeg

2visual、itu

t h.263、iso/iec mpeg

4visual及itu

t h.264/mpeg

4高级视频译码(avc)第10部分,包含其可调式视频译码(svc)及多视图视频译码(mvc)扩展。
28.h.265标准最近由itu

t视频译码专家组(vceg)及iso/iec动画专家组(mpeg)的视频译码联合合作小组(jct

vc)完成。最新的hevc草案说明书(下文被称作hevc wd)可从http://phenix.int

evry.fr/jct/doc_end_user/documents/14_vienna/wg11/jctvc

n1003

v1.zip获得。
29.hevc的多视图扩展(mv

hevc)也由jct

3v开发。mv

hevc的工作草案(wd)的实例(被称作mv

hevc wd8)可从phenix.it

sudparis.eu/jct2/doc_end_user/documents/8_valencia/wg11/jct3v

h 1002

v5.zip获得。hevc的可调式扩展(被称为shvc)也已由jct

vc开发。shvc的工作草案(wd)(被称作shvc wd6)的实例可从phenix.it

sudparis.eu/jct/doc_end_user/documents/17_valencia/wg11/jctvc

q 1008

v2.zip获得。
30.在hevc视频压缩标准中,使用邻近待预测块的4n 1个像素(即,参考像素)的群组将帧内预测应用到具有n
×
n个像素的块。当计算块预测时,那些参考像素具有已经重建且在编码器及解码器处已知的值。举例来说,图1展示在供hevc使用的帧内译码方法中待预测的4
×
4个像素的块。待预测像素90经展示为白色方块且参考像素92经展示为灰色方块。
31.帧内预测为用于使用一个图像内的相邻像素来减少或去除空间冗余的译码工具。
为找到精确预测方向并有效地去除冗余,hevc可针对每一pu使用至多35个预测模式。可存在用于预测的值的两个集合,其视预测子模式(平面的、dc或方向型)及块大小而定。对于每一模式,参考像素的未经滤波或经滤波版本可用于预测。hevc例如定义用于确定是否在帧内预测中使用经滤波或未经滤波参考像素的固定表。
32.图2为说明定义用于基于块大小的方向预测的滤波器设定的图形表示的概念图。图2中展示一圆,其中预测模式(例如,方向预测模式)针对特定块大小(例如,8
×
8、16
×
16及32
×
32)使用参考样本滤波。图2中展示灰色
“×”
,其中预测模式针对特定块大小使用未经滤波参考样本。举例来说,预测模式2、18及34可使用经滤波参考像素而无论块大小如何,模式10及26可利用未经滤波参考像素而无论块大小如何,模式3到8、12到17、19到24及28到33可利用大小为8
×
8的块中的未经滤波参考像素,但使用大小为16
×
16及32
×
32的块中的经滤波参考像素,且模式9、11、25及27利用大小为8
×
8及16
×
16的块中的未经滤波参考像素及大小为32
×
32的块中的经滤波参考像素。此外,可存在可与三个分接头(tap)(1/4、1/2、1/4)一起使用的一种类型的低通滤波器。
33.当前方法可更适合用于过去使用的低分辨率视频,其中通过大部分较小块(例如,4
×
4或8
×
8)实现最佳压缩。然而,较新趋势为具有1080
×
1920hd视频或2160
×
3840uhd视频。对于那些分辨率,使用较大块大小的预测可更高效并获得更好压缩。
34.那些较大块中的参考的更强低通滤波可用于获得更好压缩。然而,在那些情况下,优化对于给定块大小的所有块的预测的单个低通滤波器及最佳滤波器根据各块中的纹理而变化。
35.实施当前hevc标准的视频装置使用基于经滤波参考或未经滤波参考的预测,其不支持用以组合来自那两种情况的信息的方式,即使数据可易于在编码器及解码器处获得也一样。
36.视频译码装置(例如视频编码器或视频解码器)可使用本发明的技术以执行与位置相关的预测组合(pdpc),即,使用定义如何组合基于经滤波及未经滤波参考值及基于经预测像素的位置的预测的一或多个经参数化的方程式。本发明描述参数的若干集合,以使得编码器可测试每一者(通过例如使用速率

失真分析)并向解码器用信号表示最优选参数(例如,在所测试的那些参数中产生最佳速率

失真性能的参数)。
37.图3说明根据本发明的技术的使用未经滤波参考(r)的4
×
4块(p)的预测。图4说明根据本发明的技术的使用经滤波参考(s)的4
×
4块(q)的预测。尽管图3及4都说明4
×
4像素块及17(4
×
4 1)相应参考值,但本发明的技术可应用到任何块大小及数目的参考值。
38.执行与位置相关的预测组合的视频译码器可利用经滤波(q)预测与未经滤波(p)预测之间的组合,以使得可使用来自经滤波(s)参考阵列及未经滤波(r)参考阵列两者的像素值来计算用于待译码的当前块的经预测块。
39.在pdpc的技术的一个实例中,在给定分别仅使用未经滤波及经滤波参考r及s计算的像素预测p
r
[x,y]及q
s
[x,y]的任何两个集合的情况下,通过v[x,y]表示的像素的经组合预测值由下式定义:
[0040]
v[x,y]=c[x,y]p
r
[x,y] (1

c[x,y])q
s
[x,y]
ꢀꢀꢀꢀꢀ
(1)
[0041]
其中c[x,y]为组合参数的集合。权重c[x,y]的值可为0与1之间的值。权重c[x,y]与(1

c[x,y])的总和可等于一。
[0042]
在某些实例中,具有与块中的像素的数目一样大的参数的集合可为不实际的。在这些实例中,c[x,y]可由更小的参数集合加方程式定义,以计算来自那些参数的所有组合值。在这个实例中,可使用下式:
[0043][0044]
其中g及d
v
,d
h
∈{1,2}为预测参数,n为块大小,及为针对特定模式分别使用未经滤波及经滤波参考使用根据hevc标准计算的预测值,及
[0045][0046]
为由预测参数定义的正规化因子(即,用以使经指配到及的总权重增加到1)。
[0047]
公式2可针对公式2a中的任何视频译码标准一般化:
[0048][0049]
其中g及d
v
,d
h
∈{1,2}为预测参数,n为块大小,及为针对特定模式分别使用未经滤波及经滤波参考使用根据视频译码标准(或视频译码方案或算法)计算的预测值,及
[0050][0051]
为由预测参数定义的正规化因子(即,用以使经指配到及的总权重增加到1)。
[0052]
这些预测参数可包含用以根据所使用的预测模式的类型(例如,hevc的dc、平面及33方向模式)提供经预测项的最优选线性组合的权重。举例来说,hevc含有35个预测模式。可通过用于预测模式中的每一者的预测参数g、d
v
及d
h
中的每一者的值(即,用于每一预测模式的g、d
v
及d
h
的35个值)来构建查找表。这些值可在具有视频的位流中编码或可为编码器及解码器提前已知的恒定值,且可不需要在文件或位流中发射。g、d
v
及d
h
的值可由训练算法通过求出针对训练视频的集
合产生最佳压缩的预测参数的值来确定。在另一实例中,存在用于每一预测模式(在例如查找表中)的多个预定义预测参数集且在经编码文件或位流中将所选择的预测参数集(而非参数本身)发射到解码器。在另一实例中,g、d
v
及d
h
的值可通过视频编码器在运行中产生且在经编码文件或位流中将其发射到解码器。
[0053]
在另一实例中,代替使用hevc预测,执行这些技术的视频译码装置可使用经修改版本的hevc,与使用65个方向预测而非33个方向预测的技术相同。实际上,可使用任何类型的帧内预测。
[0054]
在另一实例中,可选择公式以便于计算。举例来说,可使用以下类型的预测子
[0055][0056]
其中
[0057][0058]

[0059][0060]
这种方法可利用hevc(或其它)预测的线性。将h定义为来自预定义集合的滤波器k的脉冲响应,如果具有
[0061]
s=ar (1

n)(h*r)
ꢀꢀꢀꢀꢀꢀ
(7)
[0062]
其中“*”表示卷积,那么
[0063][0064]
即,可从线性组合参考计算线性组合预测。
[0065]
公式4、6及8可针对公式4a、6a及8a中的任何视频译码标准一般化:
[0066][0067]
其中
[0068][0069]

[0070][0071]
这种方法可利用译码标准的预测的线性。将h定义为来自预定义集合的滤波器k的脉冲响应,如果具有
[0072]
s=ar (1

a)(h*r)
ꢀꢀꢀꢀꢀꢀ
(7a)
[0073]
其中“*”表示卷积,那么
[0074][0075]
即,可从线性组合参考计算线性组合预测。
[0076]
在一实例中,预测函数可仅使用参考向量(例如,r及s)作为输入。在这个实例中,如果参考已经滤波或未经滤波,那么参考向量的行为不改变。如果r及s相等(例如,某一未经滤波参考r恰好与另一经滤波参考s相等),那么应用到经滤波及未经滤波参考的预测函数相等,例如,p
r
[x,y](也写作p(x,y,r))等于p
s
[x,y](也写作p(x,y,s))。另外,像素预测p及q可为等效的(例如,在给定相同输入的情况下产生相同输出)。在这个实例中,可通过替换像素预测p[x,y]的像素预测q[x,y]来重写公式(1)到公式(8)。
[0077]
在另一实例中,预测(例如,函数的集合)可根据参考已经滤波的信息而改变。在这个实例中,可指示函数的不同集合(例如,p
r
[x,y]及q
s
[x,y])。在这种情况下,即使r及s相等,p
r
[x,y]及q
s
[x,y]仍可不相等。换句话说,同一输入可产生不同输出,其视输入是否已经滤波或未经滤波而定。在这个实例中,p[x,y]可不能够由q[x,y]替换。
[0078]
所展示的预测方程式的优点在于:利用经参数化的公式化,可针对不同类型的视频纹理使用例如训练的技术来确定最优选参数的集合(即,优化预测准确度的那些参数)。在一些实例中,又可通过针对一些典型类型的纹理计算预测参数的若干集合及具有其中编码器测试来自每一集合的预测子且将产生最佳压缩的预测子编码为旁侧信息的压缩方案来扩展这种方法。
[0079]
图5为说明可利用本发明中所描述的技术(包含pdpc)的实例视频编码及解码系统10的框图。如图5中所示,解码系统10包含源装置12,其提供稍后时间将由目的地装置14解码的经编码视频数据。特定而言,源装置12通过计算机可读媒体16将视频数据提供到目的地装置14。源装置12及目的地装置14可包括广泛范围的装置中的任一者,包含台式计算机、笔记型(即,膝上型)计算机、平板计算机、机顶盒、电话手持机(例如,所谓的“智能型”电话)、所谓的“智能型”平板计算机、电视机、相机、显示装置、数字媒体播放器、视频游戏控制台、视频流式发射装置或其类似者。在一些情况下,源装置12及目的地装置14可经装备以用于无线通信。
[0080]
目的地装置14可通过计算机可读媒体16接收待解码的经编码视频数据。计算机可读媒体16可包括能够将经编码视频数据从源装置12移动到目的地装置14的任何类型的媒体或装置。在一个实例中,计算机可读媒体16可包括使得源装置12能够实时将经编码视频数据直接发射到目的地装置14的通信媒体。可根据通信标准(例如,无线通信协议)调制经编码视频数据,且将经编码视频数据发射到目的地装置14。通信媒体可包括任何无线或有线通信媒体,例如,射频(rf)频谱或一或多个物理发射线。通信媒体可形成基于包的网络(例如局域网、广域网或例如因特网的全球网络)的部分。通信媒体可包含路由器、交换器、基站,或可用以促进从源装置12到目的地装置14的通信的任何其它设备。
[0081]
在一些实例中,经编码数据可从输出接口22输出到存储装置。类似地,可通过输入接口从存储装置存取经编码数据。存储装置可包含多种分散式或本地存取式数据存储媒体中的任一者,例如硬盘驱动器、蓝光光盘、dvd、cd

rom、快闪存储器、易失性或非易失性存储器或用于存储经编码视频数据的任何其它合适的数字存储媒体。在另一实例中,存储装置可对应于文件服务器或可存储由源装置12产生的经编码视频的另一中间存储装置。目的地装置14可通过流式发射或下载从存储装置存取所存储的视频数据。文件服务器可为能够存储经编码视频数据且将所述经编码视频数据发射到目的地装置14的任何类型的服务器。实例文件服务器包含网页服务器(例如,用于网站)、ftp服务器、网络附加存储(nas)装置或本
地磁盘驱动器。目的地装置14可通过任何标准数据连接(包含因特网连接)而存取经编码视频数据。所述数据连接可包含适合于存取存储于文件服务器上的经编码的视频数据的无线信道(例如,wi

fi连接)、有线连接(例如,dsl、缆线调制解调器,等等),或两者的组合。经编码视频数据从存储装置的发射可为流式发射、下载发射或其组合。
[0082]
本发明的技术不必限于无线应用或设定。所述技术可应用于支持多种多媒体应用中的任一者的视频译码,例如,空中电视广播、有线电视发射、卫星电视发射、因特网流式视频发射(例如,通过http的动态自适应流式发射(dash))、经编码到数据存储媒体上的数字视频、存储在数据存储媒体上的数字视频的解码或其它应用。在一些实例中,解码系统10可经配置以支持单向或双向视频发射从而支持例如视频流式发射、视频播放、视频广播及/或视频电话的应用。
[0083]
在图5的实例中,源装置12包含视频源18、视频编码器20及输出接口22。目的地装置14包含输入接口28、视频解码器30及显示装置32。根据本发明,源装置12的视频编码器20可经配置以应用本发明中所描述的技术,例如关于使用与位置相关的预测组合的改进视频帧内预测的技术。根据本发明,目的地装置14的视频解码器30可经配置以应用本发明中所描述的技术,例如关于使用与位置相关的预测组合的改进视频帧内预测的技术。在其它实例中,源装置及目的地装置可包含其它组件或布置。举例来说,源装置12可从外部视频源18(例如,外部相机)接收视频数据。同样,目的地装置14可与外部显示装置介接,而非包含集成式显示装置。
[0084]
如上文所述,源装置12包含输出接口22且目的地装置14包含输入接口28。在一些实例中,输出接口22表示发射器且输入接口28表示接收器。在其它实例中,输出接口22及输入接口28表示收发器的实例(即,能够无线发射及接收数据信号的接口)。收发器可经配置以按无线信号发送及接收视频数据。举例来说,输出接口22在实施为收发器时可发送包含经编码视频数据的数据信号(例如,计算机可读媒体16),而输入接口28在实施为收发器时可接收包含经编码视频数据的数据信号(例如,计算机可读媒体16)。如上文所讨论,视频编码器20可将经编码视频数据提供到输出接口22,而输入接口28可将经编码视频数据提供到视频解码器30。
[0085]
图5的所说明的解码系统10仅为一个实例。本发明中所描述的技术可通过任何数字视频编码及/或解码装置来执行。虽然本发明的技术大体上由视频编码装置执行,但所述技术也可由视频编码器/解码器(通常被称作“编解码器”)执行。此外,本发明的技术也可由视频预处理器执行。源装置12及目的地装置14仅为其中源装置12产生经译码视频数据以供发射到目的地装置14的这类译码装置的实例。在一些实例中,装置12、14可以大体上对称的方式操作,使得装置12、14中的每一者包含视频编码及解码组件。因此,解码系统10可支持视频装置12、14之间的单向或双向视频发射以(例如)用于视频流式发射、视频播放、视频广播或视频电话。
[0086]
源装置12的视频源18可包含视频捕捉装置,例如摄像机、含有先前捕捉的视频的视频存档及/或用于从视频内容提供者接收视频的视频馈送接口。作为另一替代例,视频源18可产生基于计算机图形的数据作为源视频,或实况视频、存档视频及计算机产生的视频的组合。在一些情况下,如果视频源18为摄像机,那么源装置12及目的地装置14可形成所谓的相机电话或视频电话。然而,如上文所提及,本发明所描述的技术大体上可适用于视频译
码,且可适用于无线及/或有线应用。在每一情况下,可由视频编码器20编码所捕捉、预捕捉或计算机产生的视频。可接着通过输出接口22将经编码视频信息输出到计算机可读媒体16上。
[0087]
计算机可读媒体16可包含暂时性媒体,例如无线广播或有线网络发射,或存储媒体(即,非暂时性存储媒体),例如硬盘、闪存驱动器、压缩光盘、数字视频光盘、蓝光光盘或其它计算机可读媒体。在一些实例中,网络服务器(未展示)可从源装置12接收经编码视频数据,且(例如)通过网络发射将经编码视频数据提供到目的地装置14。类似地,媒体生产设施(例如光盘冲压设施)的计算装置可从源装置12接收经编码视频数据且生产含有经编码视频数据的光盘。因此,在各种实例中,可理解计算机可读媒体16包含各种形式的一或多个计算机可读媒体。
[0088]
目的地装置14的输入接口28从计算机可读媒体16接收信息。计算机可读媒体16的信息可包含由视频编码器20定义的语法信息,所述语法信息也供视频解码器30使用,其包含描述块及其它经译码单元(例如,gop)的特性及/或处理的语法元素。显示装置32向用户显示经解码视频数据,且可包括多种显示装置中的任一者,例如,阴极射线管(crt)、液晶显示器(lcd)、等离子体显示器、有机发光二极管(oled)显示器或另一类型的显示装置。
[0089]
视频编码器20及视频解码器30可根据视频译码标准(例如上文所描述的标准)且在一些实例中根据高效视频译码(hevc)标准(也称作itu

th.265或hevc标准的扩展)或根据下一代视频译码标准操作。然而,本发明的技术不限于任何特定译码标准。视频译码标准的其它实例包含mpeg

2及itu

th.263。尽管图5中未展示,但在一些方面中,视频编码器20及视频解码器30可各自与音频编码器及解码器集成,且可包含适当的多路复用器

多路分用器(mux

demux)单元或其它硬件及软件,以处置共同数据流式发射或单独数据流式发射中的音频及视频两者的编码。如果适用,那么多路复用器

多路分用器单元可遵照例如ituh.223多路复用器协议的协议或例如用户数据报协议(udp)的其它协议。
[0090]
视频编码器20及视频解码器30各自可实施为多种合适的编码器电路中的任一者,例如一或多个微处理器、数字信号处理器(dsp)、专用集成电路(asic)、现场可编程门阵列(fpga)、离散逻辑、软件、硬件、固件或其任何组合。当所述技术部分地以软件实施时,装置可将用于软件的指令存储于合适的非暂时性计算机可读媒体中,且使用一或多个处理器执行硬件中的指令以执行本发明的技术。视频编码器20及视频解码器30中的每一者可包含在一或多个编码器或解码器中,编码器或解码器中的任一者可集成为相应装置中的组合式编码器/解码器(编解码器)的部分。
[0091]
大体而言,可将视频帧或图片划分成一系列树型块,其也被称为可包含明度及色度样本两者的最大译码单元(lcu)。位流内的语法数据可定义lcu的大小,lcu就像素的数目而言为最大译码单元。切片包含按译码次序的多个连续树型块。视频帧或图片可分割成一或多个切片。每一树型块可根据四分树数据结构而分裂成译码单元(cu)。大体而言,四分树数据结构每cu包含一个节点,其中根节点对应于树型块。如果将cu分裂成四个子cu,那么对应于所述cu的节点包含四个叶节点,所述四个叶节点中的每一者对应于所述子cu中的一者。
[0092]
所述四分树数据结构中的每一节点可提供针对对应cu的语法数据。举例来说,所述四分树中的节点可包含分裂旗标,从而指示对应于所述节点的cu是否分裂成子cu。针对
cu的语法元素可经递回地定义,且可取决于所述cu是否分裂成子cu。如果cu未经进一步分裂,那么其被称作叶cu。在本发明中,即使不存在原始叶cu的明显分裂,叶cu的四个子cu也被称作叶cu。举例来说,如果16
×
16大小的cu未进一步分裂,那么四个8
×
8子cu也被称作叶cu,尽管所述16
×
16cu从未分裂。
[0093]
除cu不具有大小区别外,cu具有与h.264标准的宏块类似的用途。举例来说,可将树型块分裂成四个子节点(也称作子cu),且每一子节点又可为上代节点且可被分裂成另外四个子节点。被称作四分树的叶节点的最终的未分裂子节点包括一译码节点,所述译码节点也被称作叶cu。与经译码位流相关联的语法数据可定义可分裂树型块的最大次数(其被称作最大cu深度),且也可定义所述译码节点的最小大小。因此,位流也可定义最小译码单元(scu)。本发明使用术语“块”来指hevc的上下文中的cu、预测单元(pu)或变换单元(tu)中的任一者或其它标准的上下文中的类似数据结构(例如,h.264/avc中的宏块及其子块)。
[0094]
cu包含译码节点以及与所述译码节点相关联的预测单元(pu)及变换单元(tu)。cu的大小对应于译码节点的大小,且形状通常为正方形。cu的大小可在从8
×
8像素到具有最大大小(例如,64
×
64像素或更大)的树型块的大小的范围内。每一cu可含有一或多个pu及一或多个tu。与cu相关联的语法数据可描述例如将cu分割成一或多个pu。分割模式可在cu经跳过或直接模式编码、经帧内预测模式编码或经帧间预测模式编码之间而不同。pu可经分割成非正方形形状。与cu相关联的语法数据也可描述(例如)cu根据四分树分割成一或多个tu。tu的形状可为正方形或非正方形(例如,矩形)。
[0095]
hevc标准允许根据tu进行变换,所述变换对于不同cu可不同。tu的大小通常是基于针对经分割lcu定义的给定cu内的pu的大小,但情况可并非总是如此。tu通常与pu大小相同或小于pu。在一些实例中,可使用被称为“残余四分树”(rqt)的四分树结构而将对应于cu的残余样本再分为更小单元。可将rqt的叶节点称作变换单元(tu)。与tu相关联的像素差值可经变换以产生可经量化的变换系数。
[0096]
叶cu可包含一或多个pu。大体而言,pu表示对应于对应cu的所有或一部分的空间区域,且可包含用于检索及/或产生pu的参考样本的数据。此外,pu包含与预测有关的数据。举例来说,当pu经帧内模式编码时,pu的数据可包含于残余四分树(rqt)中,所述rqt可包含描述用于对应于所述pu的tu的帧内预测模式的数据。rqt也可被称作变换树。在一些实例中,可在叶cu语法而非rqt中用信号表示帧内预测模式。作为另一实例,当pu经帧间模式编码时,pu可包含定义例如pu的一或多个运动向量的运动信息的数据。定义pu的运动向量的数据可描述(例如)运动向量的水平分量、运动向量的垂直分量、运动向量的分辨率(例如,四分之一像素精确度或八分之一像素精确度)、运动向量所指向的参考图片,及/或运动向量的参考图片列表(例如,列表0、列表1或列表c)。
[0097]
具有一或多个pu的叶cu也可包含一或多个tu。如上文所讨论,可使用rqt(也称作tu四分树结构)来指定所述变换单元。举例来说,分裂旗标可指示叶cu是否分裂成四个变换单元。接着,可将每一变换单元进一步分裂为另外的子tu。当tu未进一步分裂时,可将其称作叶tu。大体而言,对于帧内译码,属于叶cu的所有叶tu共享相同帧内预测模式。即,通常应用相同帧内预测模式来计算叶cu的所有tu的预测值。对于帧内译码,视频编码器可使用帧内预测模式将每一叶tu的残余值计算为在cu的对应于所述tu的部分与原始块之间的差。tu不必限于pu的大小。因此,tu可大于或小于pu。对于帧内译码,pu可与用于同一cu的对应叶
tu共置。在一些实例中,叶tu的最大大小可对应于对应叶cu的大小。
[0098]
此外,叶cu的tu也可与如上文所述的相应四分树数据结构(被称作残余四分树(rqt)或变换树)相关联。即,叶cu可包含指示叶cu如何被分割成tu的四分树。tu四分树的根节点大体对应于叶cu,而cu四分树的根节点大体对应于树型块(或lcu)。将rqt的未被分裂的tu称作叶tu。大体而言,除非另有指示,否则本发明分别使用术语cu及tu来指代叶cu及叶tu。
[0099]
视频序列通常包含一系列视频帧或图片。图片群组(gop)大体上包括一系列视频图片中的一或多者。gop可包含gop的标头中、图片中的一或多者的标头中或别处的语法数据,所述语法数据描述包含于gop中的图片的数目。图片的每一切片可包含描述相应切片的编码模式的切片语法数据。视频编码器20通常对个别视频切片内的视频块进行操作,以便编码视频数据。视频块可对应于cu内的译码节点。视频块可具有固定或变化的大小,且可根据指定译码标准而在大小方面不同。
[0100]
作为实例,可针对各种大小的pu执行预测。假定特定cu的大小为2n
×
2n,那么可对2n
×
2n或n
×
n的pu大小执行帧内预测,且对2n
×
2n、2n
×
n、n
×
2n或n
×
n的对称pu大小执行帧间预测。也可针对2n
×
nu、2n
×
nd、nl
×
2n及nr
×
2n的pu大小执行帧间预测的不对称分割。在不对称分割中,cu的一方向未分割,而另一方向分割成25%及75%。cu的对应于25%分割的部分由“n”其后接着“上”、“下”、“左”或“右”的指示来指示。因此,举例来说,“2n
×
nu”指水平上以顶部的2n
×
0.5n pu及底部的2n
×
1.5n pu分割的2n
×
2n cu。
[0101]
根据本发明的技术,视频编码器20及视频解码器30可经配置以使用经滤波参考值的集合与未经滤波参考值的集合的线性组合来对视频数据块进行帧内预测,其中参考值对应于先前解码的相邻像素。即,视频编码器20及视频解码器30可将一或多个滤波器应用到相邻像素以形成经滤波参考值的集合,且使用相邻像素本身作为未经滤波的参考值。此外,线性组合可包含将权重及/或其它预测参数的相应集合应用到经滤波及未经滤波的参考值。举例来说,视频编码器20及视频解码器30可使用如上文所讨论的公式(1)、公式(2)及公式(4)中的任一者计算经预测块。
[0102]
更特定而言,如下文更详细地讨论,视频编码器20通常使用这些技术预测接着编码视频数据,且也可确定并接着用信号表示待在帧内预测期间使用的预测参数。同样地,当在位流中编码这些预测参数时,视频解码器30从所述位流检索预测参数,且接着应用这些技术以预测、解码及重建视频数据。
[0103]
在本发明中,“n
×
n”与“n乘n”可互换地使用以指代视频块在垂直维度与水平维度方面的像素尺寸,例如,16
×
16像素或16乘16像素。大体而言,16
×
16块在垂直方向上具有16个像素(y=16)且在水平方向上将具有16个像素(x=16)。同样地,n
×
n块通常在垂直方向上具有n个像素且在水平方向上具有n个像素,其中n表示非负整数值。可按行及列来排列块中的像素。此外,块未必需要在水平方向上与垂直方向上具有同一数目个像素。举例来说,块可包括n
×
m像素,其中m未必等于n。
[0104]
在使用cu的pu的帧内预测性或帧间预测性译码之后,视频编码器20可计算cu的tu的残余数据。pu可包括描述在空间域(也被称作像素域)中产生预测性像素数据的方法或模式的语法数据,且tu可包括在对残余视频数据应用变换(例如离散余弦变换(dct)、整数变换、小波变换或在概念上类似的变换)之后变换域中的系数。所述残余数据可对应于未经编
码的图片的像素与对应于pu的预测值之间的像素差。视频编码器20可形成包含表示cu的残余数据的经量化变换系数的tu。即,视频编码器20可计算残余数据(以残余块的形式)、变换残余块以产生变换系数的块,且接着量化变换系数以形成经量化变换系数。视频编码器20可形成包含经量化变换系数的tu,以及其它语法信息(例如,tu的分裂信息)。
[0105]
如上文所述,在任何变换以产生变换系数之后,视频编码器20可执行变换系数的量化。量化通常指对变换系数进行量化以可能地减少用以表示所述系数的数据的量从而提供进一步压缩的过程。量化过程可减少与一些或所有系数相关联的位深度。举例来说,可在量化期间将n位值降值舍位到m位值,其中n大于m。
[0106]
在量化之后,视频编码器20可扫描所述变换系数,从而从包含所述经量化的变换系数的二维矩阵产生一维向量。所述扫描可经设计以将较高能量(且因此较低频率)系数置于阵列前部,及将较低能量(且因此较高频率)系数置于阵列后部。在一些实例中,视频编码器20可利用预定义扫描次序来扫描经量化变换系数以产生可经熵编码的经串行化向量。在其它实例中,视频编码器20可执行适应性扫描。在扫描经量化变换系数以形成一维向量之后,视频编码器20可(例如)根据上下文适应性可变长度译码(cavlc)、上下文适应性二进制算术译码(cabac)、基于语法的上下文适应性二进制算术译码(sbac)、概率区间分割熵(pipe)译码或另一熵编码方法来对一维向量进行熵编码。视频编码器20也可熵编码与经编码视频数据相关联的供视频解码器30用于解码视频数据的语法元素。
[0107]
为执行cabac,视频编码器20可将上下文模型内的上下文指配到待发射的符号。所述上下文可涉及(例如)符号的邻近值是否为非零。为了执行cavlc,视频编码器20可选择用于待发射的符号的可变长度码。可将vlc中的码字构建成使得相对较短码对应于更有可能的符号,而较长码对应于较不可能的符号。以这种方式,相对于(例如)针对待发射的每一符号使用相等长度码字,使用vlc可实现位节省。概率确定可基于经指配到符号的上下文。
[0108]
大体而言,视频解码器30执行尽管与由视频编码器20执行的过程互逆但与其大体上类似的过程以解码经编码数据。举例来说,视频解码器30逆量化且逆变换所接收tu的系数以再生残余块。视频解码器30使用用信号表示的预测模式(帧内预测或帧间预测)以形成经预测块。接着视频解码器30(在逐像素基础上)使经预测块与残余块组合以再生原始块。可执行额外处理,例如执行解块过程以减少沿块边界的视觉伪影。另外,视频解码器30可以尽管与由视频编码器20的cabac编码过程互逆但与其大体上类似的方式使用cabac来解码语法元素。
[0109]
视频编码器20可(例如)在帧标头、块标头、切片标头或gop标头中进一步将语法数据(例如,基于块的语法数据、基于帧的语法数据,及基于gop的语法数据)发送到视频解码器30。gop语法数据可描述相应gop中的帧的数目,且帧语法数据可指示用以编码对应帧的编码/预测模式。
[0110]
在适用时,视频编码器20及视频解码器30各自可经实施为多种合适的编码器或解码器电路中的任一者,例如,一或多个微处理器、数字信号处理器(dsp)、专用集成电路(asic)、现场可编程门阵列(fpga)、离散逻辑电路、软件、硬件、固件或其任何组合。视频编码器20及视频解码器30中的每一者可包含在一或多个编码器或解码器中,编码器或解码器中的任一者可经集成为组合式编码器/解码器(编解码器)的部分。包含视频编码器20及/或视频解码器30的装置可包括集成电路、微处理器及/或无线通信装置(例如蜂窝式电话)。
[0111]
图6为说明可实施本发明中所描述的技术的视频编码器20的实例的框图,例如关于使用与位置相关的预测组合的改进视频帧内预测的技术。根据本发明,视频编码器20可经配置以应用本发明中所描述的技术,例如关于使用与位置相关的预测组合的改进视频帧内预测的技术。视频编码器20可执行视频切片内的视频块的帧内译码及帧间译码。帧内译码依赖于空间预测以减少或去除给定视频帧或图片内的视频的空间冗余。帧间译码依赖于时间预测以减小或去除视频序列的邻近帧或图片内的视频的时间冗余。帧内模式(i模式)可指代若干基于空间的译码模式中的任一者。帧间模式(例如,单向预测(p模式)或双向预测(b模式))可指代若干基于时间的译码模式中的任一者。
[0112]
如图6中所示,视频编码器20接收待编码的视频图帧内的当前视频块。在图2的实例中,视频编码器20包含模式选择单元40、参考图片存储器64(其也可被称为经解码图片缓冲器(dpb))、求和器50、变换处理单元52、量化单元54及熵编码单元56。模式选择单元40又包含运动补偿单元44、运动估计单元42、帧内预测单元46及分割单元48。对于视频块重建,视频编码器20也包含逆量化单元58、逆变换单元60及求和器62。低通滤波器66可从参考图片存储器64接收图片信息且可预滤波参考样本以供模式选择单元40(及帧内预测单元46)使用。也可包含解块滤波器(图6中未展示)以便对块边界进行滤波以从经重建视频去除块效应伪影。如果需要,解块滤波器将通常对求和器62的输出进行滤波。除解块滤波器及低通滤波器66以外,也可使用额外滤波器(回路内或回路后)。
[0113]
在编码过程期间,视频编码器20接收待译码的视频帧或切片。可将所述帧或切片分成多个视频块。运动估计单元42及运动补偿单元44执行所接收视频块相对于一或多个参考帧中的一或多个块的帧间预测性编码以提供时间预测。帧内预测单元46可替代地执行所接收视频块相对于与待译码块相同的帧或切片中的一或多个相邻块的帧内预测性编码以提供空间预测。视频编码器20可执行多个译码遍次(例如)以选择用于视频数据的每一块的适当译码模式。
[0114]
低通滤波器66可应用于所有块或在一些实例中应用于上述某一大小的块(例如,在hevc中大于4
×
4的块)。在一些实例中,低通滤波器66可仅应用于参考像素。可将3分接头低通滤波器应用于视频数据的块。然而,本领域技术人员将认识到可基于所描述的技术使用任何数目类型的低通滤波器。
[0115]
在本发明的实例中,可将强滤波器应用到一些或所有块的参考值且与未经滤波及/或低通经滤波参考像素组合以供在预测方程式中使用。下文讨论关于这些滤波器的用途及通过帧内预测单元46执行的所得帧内预测的更多细节。
[0116]
此外,分割单元48可基于对先前译码遍次中的先前分割方案的评估而将视频数据的块分割为子块。举例来说,分割单元48可初始地将帧或切片分割成lcu,且基于速率失真分析(例如,速率失真优化)来将所述lcu中的每一者分割成子cu。模式选择单元40可进一步产生指示将lcu分割为子cu的四分树数据结构。四分树的叶节点cu可包含一或多个pu及一或多个tu。
[0117]
模式选择单元40可(例如)基于误差结果而选择预测码模式(帧内或帧间)中的一者,且将所得经预测块提供到求和器50以产生残余数据,及提供到求和器62以重建经编码块以用作参考帧。模式选择单元40还将语法元素(例如,运动向量、帧内模式指示符、分割区信息及其它这类语法信息)提供到熵编码单元56。
[0118]
运动估计单元42及运动补偿单元44可高度集成,但出于概念目的而加以单独说明。通过运动估计单元42执行的运动估计为产生估计视频块的运动的运动向量的过程。举例来说,运动向量可指示在当前视频帧或图片内的视频块的pu相对于在参考帧(或其它经译码单元)内的预测性块相对于在所述当前帧(或其它经译码单元)内正经译码的当前块的位移。预测性块为就像素差而言被发现紧密地匹配待译码的块的块,所述像素差可通过绝对差总和(sad)、平方差总和(ssd)或其它差度量确定。在一些实例中,视频编码器20可计算存储于参考图片存储器64中的参考图片的子整数像素位置的值。举例来说,视频编码器20可内插所述参考图片的四分之一像素位置、八分之一像素位置或其它分数像素位置的值。因此,运动估计单元42可执行关于全像素位置及分数像素位置的运动搜索且输出具有分数像素精确度的运动向量。
[0119]
运动估计单元42通过比较pu的位置与参考图片的预测性块的位置而计算经帧间译码切片中的视频块的pu的运动向量。所述参考图片可选自第一参考图片列表(列表0)或第二参考图片列表(列表1),所述列表中的每一者识别存储于参考存储器64中的一或多个参考图片。运动估计单元42将所计算的运动向量发送到熵编码单元56及运动补偿单元44。
[0120]
由运动补偿单元44执行的运动补偿可涉及基于由运动估计单元42所确定的运动向量来提取或产生预测性块。而且,在一些实例中,运动估计单元42及运动补偿单元44可在功能上集成。在接收到当前视频块的pu的运动向量之后,运动补偿单元44可在参考图片列表中的一者中定位运动向量所指向的预测性块。求和器50通过从正被译码的当前视频块的像素值减去预测性块的像素值来形成残余视频块,从而形成像素差值,如下文所讨论。大体而言,运动估计单元42相对于明度分量而执行运动估计,且运动补偿单元44将基于所述明度分量所计算的运动向量用于色度分量与明度分量两者。模式选择单元40也可产生与视频块及视频切片相关联的语法元素以供视频解码器30在解码视频切片的视频块中使用。
[0121]
作为由运动估计单元42及运动补偿单元44执行的帧间预测的替代方案,帧内预测单元46可对当前块进行帧内预测,如上文所描述。特定而言,帧内预测单元46可确定待用以编码当前块的帧内预测模式。在一些实例中,帧内预测单元46可(例如)在单独的编码遍次期间使用各种帧内预测模式来编码当前块,且帧内预测单元46(或在一些实例中为模式选择单元40)可从所测试模式中选择适当的帧内预测模式来使用。
[0122]
帧内预测单元46可使用与位置相关的预测协调根据所选择预测子模式及块大小从相邻“参考”像素的未经滤波或经滤波集合执行预测。经滤波参考像素可通过低通滤波器66滤波。帧内预测单元46可使用多个示范性公式(1)到(8)中的一或多者以计算像素的经组合预测值。
[0123]
在一个实例中,当给定分别仅使用未经滤波及经滤波参考r及s计算的像素预测p
r
[x,y]及q
s
[x,y]的任何两个集合时,帧内预测单元46可通过如上所定义的公式(1)来计算通过v[x,y]表示的像素的经组合预测值。
[0124]
在另一实例中,帧内预测单元46可利用具有较小参数集的方程式。在这些实例中,c[x,y]可由更小参数集加方程式定义以计算来自那些参数的所有组合值。在这个实例中,可由帧内预测单元46使用如上所定义的公式(2)。
[0125]
在另一实例中,可选择公式以便于计算。举例来说,帧内预测单元46可使用如以上公式(4)中所定义的预测子。这种方法可利用如以上公式(7)及(8)中所展示的hevc(或其
它)预测的线性。
[0126]
帧内预测单元46可选择与供最适合预测(例如,具有最佳速率

失真特征)的帧内预测单元46使用的预测方程式相对应的预测参数(例如,c[x,y]、g、d
v
及/或d
h
)。
[0127]
举例来说,模式选择单元40可使用用于各种经测试帧内预测模式的速率

失真分析来计算速率

失真值,且在所测试模式中选择具有最佳速率

失真特征的帧内预测模式及预测参数。使用速率

失真分析,模式选择单元40通常确定经编码块与经编码以产生经编码块的原始未经编码块以及用以产生经编码块的位率(即,位数目)之间的失真(或错误)的量。模式选择单元40可根据各种经编码块的失真及速率来计算比率以确定哪一帧内预测模式展现块的最佳速率

失真值。举例来说,帧内预测单元46可测试组合经滤波及未经滤波参考值的经参数化的方程式的集合中的每一者。帧内预测单元46可测试参数的集合的每一者(或多个)以确定哪一模式及参数展现块的最佳速率

失真值。
[0128]
在一实例中,模式选择单元40可利用含有用于预测模式中的每一者的预测参数的表。模式选择单元40可针对每一与位置相关的预测组合(pdpc)方法且不使用pdpc来计算速率失真结果。模式选择单元40可接着选择展现最佳速率

失真值的预测模式及预测参数(或缺少预测参数)。在不使用加速度技术的实例中,通过模式选择单元40执行的测试的数目将等于(预测子模式的数目)
×
(pdpc参数集 1的数目)。
[0129]
在选择用于块的帧内预测模式之后,模式选择单元40可将指示用于块的所选择帧内预测模式的信息及pdpc预测参数提供到熵编码单元56。熵编码单元56可编码指示所述所选择的帧内预测模式的信息。视频编码器20可包含于经发射的位流配置数据中,其可包含:多个帧内预测模式索引表及多个经修改的帧内预测模式索引表(也被称作码字映射表)、各种块的编码上下文的定义及最可能的帧内预测模式的指示、预测参数(预测参数值或对应于预测参数的预定义集合的单个值)、帧内预测模式索引表及用于上下文中的每一者的经修改帧内预测模式索引表。视频编码器20可包含视频参数集(vps)、序列参数集(sps)、图片参数集(pps)、切片标头、块标头或其它这类数据中的一或多者中的预测参数。
[0130]
视频编码器20通过从正经译码的原始视频块减去来自模式选择单元40的预测数据而形成残余视频块。求和器50表示执行所述减法运算的一或多个组件。变换处理单元52将变换(例如离散余弦变换(dct)或概念上类似的变换)应用于残余块,从而产生包括变换系数值的视频块。可使用小波变换、整数变换、子频带变换、离散正弦变换(dst)或其它类型的变换来代替dct。在任何情况下,变换处理单元52将变换应用于残余块,从而产生变换系数块。所述变换可将残余信息从像素域变换到变换域,例如频域。变换处理单元52可将所得变换系数发送到量化单元54。量化单元54量化变换系数以进一步减小位速率。量化过程可减小与一些或所有系数相关联的位深度。可通过调整量化参数来修改量化程度。
[0131]
在量化之后,熵编码单元56对经量化的变换系数进行扫描及熵编码。举例来说,熵编码单元56可执行上下文适应性可变长度译码(cavlc)、上下文适应性二进制算术译码(cabac)、基于语法的上下文适应性二进制算术译码(sbac)、概率区间分割熵(pipe)译码或另一熵译码技术。在基于上下文的熵译码的情况下,上下文可基于相邻块。在由熵编码单元56进行熵译码之后,可将经编码位流发射到另一装置(例如,视频解码器30)或存档以供稍后发射或检索。
[0132]
逆量化单元58及逆变换单元60分别应用逆量化及逆变换以在像素域中重建残余块。特定而言,求和器62将经重建的残余块添加到先前由运动补偿单元44或帧内预测单元46产生的经运动补偿的预测块,以产生经重建的视频块以用于存储于参考图片存储器64中。经重建的视频块可由运动估计单元42及运动补偿单元44用作参考块以对后续视频帧中的块进行帧间译码。
[0133]
视频编码器20通常使用上文所讨论的过程来对经译码视频序列中的每一图片的每一块进行编码。另外,在一些实例中,视频编码器20可确定向其指配图片中的每一者的时间层。此外,视频编码器20可经配置以对其它层(例如,其它视图、可调式视频译码层或类似者)的图片进行编码。在任何情况下,视频编码器20可针对(例如,各种视频尺寸的)一或多个层进一步编码指示每一图片所属的层的数据。
[0134]
图7为说明可实施本发明中所描述的技术的视频解码器30的实例的框图。根据本发明,视频解码器30可经配置以应用本发明中所描述的技术,例如关于使用与位置相关的预测组合的改进视频帧内预测的技术。在图7的实例中,视频解码器30包含熵解码单元70、运动补偿单元72、帧内预测单元74、逆量化单元76、逆变换单元78、参考图片存储器82、低通滤波器84及求和器80。在一些实例中,视频解码器30可执行大体上与相对于视频编码器20(图6)描述的编码遍次互逆的解码遍次。运动补偿单元72可基于从熵解码单元70接收的运动向量产生预测数据(直接地及通过低通滤波器84两者),而帧内预测单元74可基于从熵解码单元70接收的帧内预测模式指示符及预测参数产生预测数据。
[0135]
在解码过程期间,视频解码器30从视频编码器20接收表示经编码视频切片的视频块及相关联语法元素的经编码视频位流。视频解码器30的熵解码单元70对位流进行熵解码以产生经量化系数、运动向量或帧内预测模式指示符、pdpc预测参数及其它语法元素。熵解码单元70将运动向量及其它语法元素转寄到运动补偿单元72。视频解码器30可在视频切片层级及/或视频块层级处接收语法元素。
[0136]
当将视频切片译码为经帧内译码(i)切片时,帧内预测单元74可基于用信号表示的帧内预测模式、预测参数及来自当前帧或图片的先前经解码块的数据而产生当前视频切片的视频块的预测数据。通过供帧内预测单元74使用的低通滤波器84对当前帧或图片的经解码块中的一些或全部进行滤波。
[0137]
帧内预测单元74可使用与位置相关的预测协调根据所选择预测子模式及块大小而从相邻“参考”像素的未经滤波或经滤波集合执行预测。可通过低通滤波器84对经滤波参考像素进行滤波。帧内预测单元74可使用上文所定义的多个示范性公式(1)到(8)中的一或多者以计算像素的经组合预测值。
[0138]
在一个实例中,当给定分别仅使用未经滤波及经滤波参考r及s计算的像素预测p
r
[x,y]及q
s
[x,y]的任何两个集合时,帧内预测单元74可通过如上所定义的公式(1)来计算通过v[x,y]表示的像素的经组合预测值。
[0139]
在另一实例中,帧内预测单元74可利用具有较小参数集的方程式。在这些实例中,c[x,y]可由更小参数集加方程式定义以计算来自那些参数的所有组合值。在这个实例中,可由帧内预测单元74使用如上所定义的公式(2)。
[0140]
在另一实例中,可选择公式以便于计算。举例来说,帧内预测单元74可使用如以上公式(4)中所定义的预测子。这种方法可利用如以上公式(7)及(8)中所展示的hevc(或其
它)预测的线性。
[0141]
帧内预测单元74可使用与供帧内预测单元74使用的预测方程式相对应的经解码预测参数(例如,c[x,y]、g、d
v
及/或d
h
)以计算经预测块。
[0142]
当视频帧经译码为经帧间译码(即,b、p或gpb)切片时,运动补偿单元72基于运动向量及从熵解码单元70接收的其它语法元素产生当前视频切片的视频块的预测性块。预测性块可从参考图片列表中的一者内的参考图片中的一者产生。视频解码器30可基于存储于参考图片存储器82中的参考图片使用默认构建技术来构建参考帧列表:列表0及列表1。运动补偿单元72通过剖析运动向量及其它语法元素来确定当前视频切片的视频块的预测信息,并使用所述预测信息以产生经解码的当前视频块的预测性块。举例来说,运动补偿单元72使用一些所接收的语法元素以确定用以译码视频切片的视频块的预测模式(例如,帧内预测或帧间预测)、帧间预测切片类型(例如,b切片、p切片或gpb切片)、切片的参考图片列表中的一或多者的构建信息、切片的每一经帧间编码的视频块的运动向量、切片的每一经帧间译码的视频块的帧间预测状态,及用以解码当前视频切片中的视频块的其它信息。
[0143]
运动补偿单元72也可执行基于内插滤波器的内插。运动补偿单元72可使用如由视频编码器20在视频块的编码期间使用的内插滤波器,以计算参考块的子整数像素的内插值。在这种情况下,运动补偿单元72可根据接收的语法元素确定由视频编码器20使用的内插滤波器且使用所述内插滤波器来产生预测性块。
[0144]
逆量化单元76逆量化(即,解量化)提供于位流中并由熵解码单元70解码的经量化变换系数。逆量化过程可包含使用由视频解码器30针对视频切片中的每一视频块计算的量化参数qp
y
以确定应进行应用的量化程度及(同样地)逆量化程度。
[0145]
逆变换单元78将逆变换(例如,逆dct、逆整数变换或概念上类似的逆变换过程)应用于变换系数,以便在像素域中产生残余块。
[0146]
在运动补偿单元72或帧内预测单元74基于运动向量及其它语法元素而产生当前视频块的预测性块之后,视频解码器30通过将来自逆变换单元78的残余块与由运动补偿单元72或帧内预测单元74所产生的对应预测性块求和而形成经解码视频块。求和器80表示执行所述求和运算的一或多个组件。如果需要,也可应用解块滤波器来对经解码块进行滤波以便去除块效应伪影。也可使用其它回路滤波器(在译码回路中或在译码回路之后)以使像素转变平滑,或以其它方式改进视频质量。接着将给定帧或图片中的经解码视频块存储于参考图片存储器82中,所述参考图片存储器存储用于后续运动补偿的参考图片。参考图片存储器82还存储经解码视频以用于稍后在显示装置(例如,图5的显示装置32)上呈现。
[0147]
视频解码器30通常使用上文所讨论的过程来对经译码视频序列中的每一图片的每一块进行解码。另外,在一些实例中,视频解码器30可对指示向其指配图片的时间层的数据进行解码。此外,视频解码器30可经配置以对其它层(例如,其它视图、可调式视频译码层或类似者)的图片进行解码。在任何情况下,视频解码器30可针对(例如,各种视频尺寸的)一或多个层进一步解码指示每一图片所属的层的数据。
[0148]
图8为说明根据本发明的技术的实例方法的流程图。在本发明的一个实例中,视频编码器20中的帧内预测单元46可经配置以按光栅扫描次序编码当前图片的块(100)。视频编码器20可进一步经配置以确定对当前图片的当前块进行帧内预测(102)。视频编码器20可进一步经配置以从邻近于当前块的经解码块形成经滤波参考值(104)。低通滤波器66可
经配置以对前述参考值进行滤波。视频编码器20可进一步经配置以确定预测参数以用于对当前块进行帧内预测(106)。确定预测参数可包含通过各种参数的删削(lopping)以确定最优选参数集。额外实例包含选择所有预测参数的子集及检验子集的每一参数组合以选择最优选参数集。最优选参数集选择可基于速率

失真分析。
[0149]
视频编码器20可进一步经配置以使用经滤波参考值及未经滤波参考值,使用预测参数来对当前块进行帧内预测以形成经预测块(108)。在一实例中,视频编码器20可经配置以通过基于经滤波参考阵列中的多个经滤波参考值中的一或多者乘以权重的第一集合与未经滤波参考阵列中的多个未经滤波参考值中的一或多者乘以权重的第二集合的线性组合计算与像素的集合相关联的预测值的集合来产生预测性块。在一实例中,计算预测值的集合包括用不同参数值计算预测值的集合多次及选择不同参数值的最优选参数集。视频编码器20可经配置以通过上文所讨论的参数公式(1)到(8)中的任一者产生预测性块。
[0150]
视频编码器20可进一步经配置以计算表示经预测块与原始块之间的差异的残余块(110)。视频编码器20可进一步经配置以变换并量化残余块(112)。视频编码器20可进一步经配置以熵编码经量化变换系数、预测参数及用于当前块的帧内预测模式的指示(114)。视频编码器20可进一步经配置以产生具有经熵编码的经量化变换系数、预测参数及用于当前块的帧内预测模式的指示的位流。
[0151]
图9为说明根据本发明的技术的实例方法的流程图。在本发明的一个实例中,视频解码器30中的帧内预测单元74可经配置以按光栅扫描次序解码当前图片的块(200)。视频解码器30可进一步经配置以熵解码经量化变换系数、预测参数及用于当前块的帧内预测模式的指示(202)。
[0152]
视频解码器30可进一步经配置以解量化残余块(204)。
[0153]
视频解码器30可进一步经配置以从邻近于当前块的经解码块形成经滤波参考值(206)。
[0154]
视频解码器30可进一步经配置以使用经滤波参考值及未经滤波参考值,使用经解码预测参数对当前块进行帧内预测以形成经预测块(208)。在一实例中,视频解码器30可经配置以基于经滤波参考阵列中的多个经滤波参考值中的一或多者乘以权重的第一集合与未经滤波参考阵列中的多个未经滤波参考值中的一或多者乘以权重的第二集合的线性组合计算与像素的集合相关联的预测值的集合。在一实例中,权重的第一集合及权重的第二集合基于像素的集合中的经预测像素的位置而变化。在另一实例中,权重的第一集合内的第一权重大于权重的第一集合中的第二权重,其中与第一权重相关联的经预测值的集合中的第一预测性值与经滤波参考阵列之间的第一距离大于与第二权重相关联的经预测值的集合中的第二预测性值与经滤波参考阵列之间的第二距离。在这个实例中,预测性块内距参考像素越远的预测像素,经滤波参考像素的权重越大。
[0155]
在另一实例中,视频解码器30可经配置以基于未经滤波参考阵列中的多个未经滤波参考值计算未经滤波预测值的集合并基于经滤波参考阵列中的多个经滤波参考值计算经滤波预测值的集合。未经滤波预测值的集合及经滤波预测值的集合可基于从位流解码的一或多个方向性预测子参数(例如,例如上文描述于图2中的hevc方向性预测模式的方向性预测模式)。
[0156]
在一实例中,视频解码器30可经配置以通过如上文所讨论的参数公式(1)到(8)计
算预测性值的集合。
[0157]
视频解码器30可进一步经配置以基于经计算的预测性值的集合重建视频块(210)。
[0158]
应认识到,取决于实例,本文中所描述的技术中的任一者的某些动作或事件可以不同顺序执行,可添加、合并或完全省略所述动作或事件(例如,并非所有所描述动作或事件对于所述技术的实践都是必要的)。此外,在某些实例中,可(例如)通过多线程处理、中断处理或多个处理器同时而非依序执行动作或事件。
[0159]
在一或多个实例中,所描述的功能可以硬件、软件、固件或其任何组合来实施。如果以软件实施,那么所述功能可作为一或多个指令或代码而存储于计算机可读媒体上或通过计算机可读媒体进行发射,且通过基于硬件的处理单元执行。计算机可读媒体可包含计算机可读存储媒体,其对应于例如数据存储媒体的有形媒体或包含促进(例如)根据通信协议将计算机程式从一处传送到另一处的任何媒体的通信媒体。以这种方式,计算机可读媒体通常可对应于(1)非暂时性的有形计算机可读存储媒体,或(2)例如信号或载波的通信媒体。数据存储媒体可为可由一或多个计算机或一或多个处理器存取以检索用于实施本发明中所描述的技术的指令、代码及/或数据结构的任何可用媒体。计算机程式产品可包含计算机可读媒体。
[0160]
借助于实例而非限制,这类计算机可读存储媒体可包括ram、rom、eeprom、cd

rom或其它光盘存储装置、磁盘存储装置或其它磁性存储装置、快闪存储器或可用以存储呈指令或数据结构形式的所要程序码且可由计算机存取的任何其它媒体。而且,将任何连接适当地称为计算机可读媒体。举例来说,如果使用同轴缆线、光纤缆线、双绞线、数字用户线(dsl)或例如红外线、无线电及微波的无线技术从网站、服务器或其它远程源发射指令,那么同轴缆线、光纤缆线、双绞线、dsl或例如红外线、无线电及微波的无线技术包含于媒体的定义中。然而,应理解,计算机可读存储媒体及数据存储媒体不包含连接、载波、信号或其它暂时性媒体,而是涉及非暂时性有形存储媒体。如本文所使用,磁盘及光盘包含压缩光盘(cd)、激光光盘、光学光盘、数字多功能光盘(dvd)、软盘及蓝光光盘,其中磁盘通常以磁性方式再生数据,而光盘用激光以光学方式再生数据。以上各者的组合也应包含于计算机可读媒体的范围内。
[0161]
指令可由一或多个处理器执行,所述一或多个处理器例如一或多个数字信号处理器(dsp)、通用微处理器、专用集成电路(asic)、现场可编程门阵列(fpga)或其它等效的集成或离散逻辑电路。因此,如本文中所使用的术语“处理器”可指代前述结构或适于实施本文中所描述的技术的任何其它结构中的任一者。另外,在一些方面中,本文中所描述的功能性可提供于经配置用于编码及解码的专用硬件及/或软件模块内,或并入于组合式编解码器中。而且,所述技术可完全实施于一或多个电路或逻辑元件中。
[0162]
本发明的技术可以多种装置或设备实施,所述装置或设备包含无线手持机、集成电路(ic)或ic的集合(例如,芯片集)。在本发明中描述各种组件、模块或单元以强调经配置以执行所公开技术的装置的功能方面,但未必需要由不同硬件单元来实现。确切而言,如上文所描述,可将各种单元组合于编解码器硬件单元中,或通过互操作性硬件单元(包含如上文所描述的一或多个处理器)的集合而结合合适软件及/或固件来提供所述单元。
[0163]
已描述各种实例。这些及其它实例在以下权利要求书的范围内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献