数据编码方法和装置以及解码数据流的方法和装置与流程

文档序号:32788231发布日期:2023-01-03 20:07阅读:19来源:国知局
数据编码方法和装置以及解码数据流的方法和装置与流程
数据编码方法和装置以及解码数据流的方法和装置
1.本技术是国际申请日2019年1月23日、国际申请号pct/gb2019/050182的国际申请于2019年1月23日进入国家阶段的申请号为201980011633.3、发明名称为“数据编码和解码”的专利申请的分案申请,其全部内容结合于此作为参考。
技术领域
2.本公开涉及图像数据编码和解码。


背景技术:

3.本文提供的“背景”描述是为了通常呈现本公开的上下文的目的。针对在此背景部分描述的程度,目前署名的发明人的工作以及申请时未另有资格作为现有技术的描述的方面,既没有明确地也没有隐含地承认作为与本公开的相对的现有技术。
4.存在一些视频数据编码和解码系统,其涉及将视频数据变换成频域表示、量化频域系数并且然后向量化系数应用某种形式的熵编码(entropy encoding)。这可以实现视频数据的压缩。应用相应的解码或解压缩技术来恢复原始视频数据的重构版本。


技术实现要素:

5.本公开解决或减轻由该处理引起的问题。
6.本公开的相应方面和特征在所附权利要求中限定。
7.应当理解,前述一般性描述和以下具体实施方式是示例性的而不是对本技术的限制。
附图说明
8.通过结合附图考虑下面的详细描述,将更容易地获得以及更好地理解对本公开的更完整的理解以及其许多伴随的优点,其中:
9.图1示意性地示出了使用视频数据压缩和解压缩的音频/视频(a/v)数据传输和接收系统;
10.图2示意性地示出了使用视频数据解压缩的视频显示系统;
11.图3示意性地示出了使用视频数据压缩和解压缩的音频/视频存储系统;
12.图4示意性地示出了使用视频数据压缩的摄影机;
13.图5和图6示意性地示出了存储介质;
14.图7提供视频数据压缩和解压缩装置的示意性概图;
15.图8示意性地示出预测器;
16.图9示意性地示出了部分编码的图像;
17.图10示意性地示出了一组可行的帧内预测方向;
18.图11示意性地示出了一组预测模式;
19.图12示意性地示出了另一组预测模式;
20.图13示意性地示出了帧内预测处理;
21.图14示意性地示出了帧间预测处理;
22.图15示意性地示出了示例性扫描顺序;
23.图16示意性地示出了频率变换处理;
24.图17示意性地示出了变换跳过处理;
25.图18和图19是示出相应方法的示意性流程图;
26.图20和图21分别示意性地示出了传统编码器和解码器的部分;以及
27.图22和图23示意性地示出了分别使用图18和图19的技术的编码器和解码器的部分。
具体实施方式
28.现在参考附图,提供图1至图4以给出将结合本技术的实施方式在下文描述的、使用压缩及/或解压缩装置的装置或系统的示意图。
29.下文将描述的所有数据压缩和/或解压缩装置可以在运行在如通用计算机、如可编程硬件(专用集成电路(asic)或者现场可编程门阵列(fpga)或如这些的组合)的通用数据处理装置上的硬件、软件上实施。在由软件和/或固件实施实施方式的情况下,应当理解,这样的软件和/或固件,以及通过其存储或以其他方式提供这种软件和/或固件的非暂时性数据存储介质被认为是本技术的实施方式。
30.图1示意性地示出了使用视频数据压缩和解压缩的音频/视频数据传输和接收系统。
31.将输入的音频/视频信号10提供给视频数据压缩装置20,其压缩音频/视频信号10的至少视频组分,以用于沿着如电缆、光纤、无线链路等的传输路径30传输。解压缩装置40处理压缩信号以提供输出的音频/视频信号50。对于返回路径,压缩装置60压缩音频/视频信号,用于沿着传输路径30传输到解压缩装置70。
32.因此压缩装置20和解压缩装置70可以形成传输链路的一个节点。解压缩装置40和压缩装置60可以形成传输链路的另一节点。当然,在传输链路为单向的情况下,一个节点仅需要压缩装置并且另一节点仅需要解压缩装置。
33.图2示意性地示出了使用视频数据解压缩的视频显示系统。具体地,由解压缩装置110处理压缩的音频/视频信号100以提供可以在显示器120上显示的解压缩信号。解压缩装置110可以实施为显示器120的组成部分,例如,与显示设备设置在同一壳体内。可替换地,解压缩装置110可以提供为(例如)所谓的机顶盒(stb),注意,表述“机顶”并非表示该盒需要位于相对于显示器120的任何特定方位或位置;其仅为本领域中使用的术语,以指示作为外围设备可连接至显示器的设备。
34.图3示意性地示出了使用视频数据压缩和解压缩的音频/视频存储系统。将输入的音频/视频信号130提供给压缩装置140,压缩装置生成由存储设备150存储的压缩信号,存储设备如磁盘设备、光盘设备、磁带设备、如半导体存储器的固态存储设备或者其他存储设备。对于重放,从存储设备150读取压缩数据并且将其传送到解压缩装置160用于解压缩以提供输出的音频/视频信号170。
35.将理解的是,压缩的或编码的信号以及存储该信号的存储介质(诸如,机器可读非
暂时性存储介质)被视为本技术的实施方式。
36.图4示意性地示出了使用视频数据解压缩的摄影机。在图4中,图像捕获设备180(诸如,电荷耦合器件(ccd)图像传感器和相关联的控制和读出电子器件)生成视频信号,该视频信号被传送到压缩装置190。麦克风(或多个麦克风)200生成要传送至压缩装置190的音频信号。压缩装置190生成要存储和/或传输(通常示出为示意性阶段220)的压缩的音频/视频信号210。
37.下文描述的技术主要涉及视频数据压缩和解压缩。应当理解,许多现有技术可结合将描述的视频数据压缩技术用于音频数据压缩以生成压缩的音频/视频信号。因此,将不提供对音频数据压缩的单独讨论。还应理解,与视频数据相关联的数据速率,尤其是广播质量的视频数据,通常比与音频数据(无论是压缩或者未压缩)相联的数据速率高很多。因此,应当理解,未压缩的音频数据可伴随压缩的视频数据形成压缩的音频/视频信号。应进一步理解,虽然本实例(图1至图4中示出的)涉及音频/视频数据,但下文将描述的技术可以在仅处理(即,压缩、解压缩、储存、显示及/或传输)视频数据的系统中获得使用。也就是说,实施方式能够在完全不具有任何相关的音频数据处理的情况下应用于视频数据压缩。
38.因此图4提供了视频捕获装置的实例,包括图像传感器和下文将讨论的类型的编码装置。因此图2提供了下文将讨论的类型的解码装置和输出解码图像的显示器的实例。
39.图2和图4的组合可以提供视频捕获装置,视频捕获装置包括图像传感器180、编码装置190、解码装置110及向输出解码图像的显示器120。
40.图5和图6示意性地示出了存储介质,其存储(例如)由装置20、60生成的压缩数据、输入到装置110或存储介质或阶段150、220的压缩数据。图5示意性地示出了诸如磁盘或光盘的磁盘存储介质,并且图6示意性地示出了诸如闪存的固态存储介质。应注意,图5和图6还可提供存储计算机软件的非暂时性机器可读存储介质的实例,该计算机软件在由计算机执行时使计算机执行下文将讨论的一种或多种方法。
41.因此,以上布置提供了体现本技术中的任何技术的视频存储、捕获、传输或接收装置的实例。
42.图7提供了视频数据压缩和解压缩装置的示意性概图。
43.控制器343控制装置的总体操作,具体地,在参考压缩模式时,控制器通过充当选择器以选择各种操作模式(诸如,块尺寸和形状)以及视频数据是否是无损编码,来控制试验编码处理(trial encoding process)。控制器被认为是图像编码器或图像解码器的一部分(根据情况而定)。将输入的视频信号300的连续图像提供给加法器310和图像预测器320。下面将参考图8更详细地描述图像预测器320。图像编码器或解码器(根据情况而定)以及图8的帧内图像预测器可以使用来自图7的装置的特征。然而,这并非意味着图像编码器或解码器必然需要图7的每个特征。
44.事实上,加法器310执行减法(负加法)操作,因为其在“+”输入端接收输入的视频信号300并且在
“‑”
输入端接收图像预测器320的输出,因而从输入图像中减去预测图像。结果是生成表示实际图像与投影图像之间差的所谓残差图像信号330。
45.生成残差图像信号的原因之一如下。将描述的数据编码技术,(即将应用于残差图像信号的技术),在待编码的图像中存在较少“能量”时趋向于更高效地工作。此处,术语“高效地”指少量的编码数据的生成;对于特定的图像质量水平,期望生成实际尽可能少的数据
(并且认为是“高效的”)。提及的残差图像中的“能量”是指残差图像中含有的信息量。如果预测图像与实际图像一致,两者之间的差(即残差图像)将含有零信息(零能量)并且非常容易编码成少量的编码数据。通常,如果可以使预测处理合理地良好工作使得预测的图像内容类似于要编码的图像内容,则期望残差图像数据将包含比输入图像更少的信息(更少的能量)并且因此将更容易编码成少量的编码数据。
46.现在将描述用作编码器(对残差图像或差分图像进行编码)的装置的其余部分。将残差图像数据330提供给生成残差图像数据块或区域的离散余弦变换(dct)表示的变换单元或电路340。dct技术本身是公知的并且此处将不详细描述。还注意dct的使用仅为一个示例性布置的说明。其他可能使用的变换包括例如离散正弦变换(dst)。变换还可包括单独变换的序列或级联,诸如一个变换之后(无论是否直接)是另一变换的布置。变换的选择可以明确地确定和/或取决于用于配置编码器和解码器的边带信息。
47.在一些实例中,这表示数据值的有序阵列的生成,该数据值的有序阵列表示图像区域并且具有阵列顺序。该过程可包括由预测器320预测待编码的图像的图像区域;以及(由加法器310)根据预测图像区域与待编码的图像的相应区域之间的差异,产生残差图像区域。
48.然后数据值的有序阵列可以包括表示残差图像区域的数据值。在所谓的变换跳过模式(transform skip mode)中,不使用频率变换,但在其他实例中,例如上文给出的dct实例(或在使用其他变换(例如,离散正弦变换(dst))、或在正交阵列方向上的不同变换、或具有任选的额外不可分离二次变换(nsst)的实例)中,有序阵列的产生还包括对残差图像区域进行频率变换,其中数据值的有序阵列包括残差图像区域的频率变换表示的数据值。可在解码时对去量化数据执行逆变换(在适当情况下),且将所得数据与预测形式的图像区域(使用与在编码时应用的技术相同的技术来预测)相结合以产生输出图像区域。
49.在chen等人的“联合勘探试验模型的算法描述1(algorithm description of joint exploration test model 1)”,联合视频勘探小组(joint video exploration team)(jvet)文档jvet-a1001中讨论了不可分离二次变换(nsst)。在该文档中,公开了nsst,其表示在正向核心变换和量化(编码器侧)之间、在去量化与逆核心变换(解码器侧)之间应用的二次变换。本文通过引用将该文档的内容结合到本说明书中。
50.在使用一个或多个频率变换的示例性实施方式中,阵列顺序可以是从表示最低空间频率的数据值(诸如,在dct变换的情况下的dc系数)到表示最高空间频率的数据值。例如,可以使用所谓的之字形顺序。
51.在不使用频率变换的其他实例中,预测步骤可以包括根据沿预测模式限定的方向、从预测样本移位的其他先前编码和解码的图像样本,来预测图像区域的样本,并且阵列顺序可以为使得在空间上更接近其他先前编码和解码的图像样本的预测数据值在阵列顺序中较早。
52.将变换单元340的输出(即,对于每个变换的图像数据块的一组dct系数),提供给量化器350。从简单地乘以量化比例因数到在量化参数的控制下的量化程度的复杂查找表的用范围内,各种量化技术在视频数据压缩的领域中是已知的。总的目标是双重的。首先,量化过程减少了变换数据的可能值的数量。其次,量化过程可以增加变换数据的值为零的可能性。这两者可以使将在下文描述的熵编码处理更高效地产生少量的压缩视频数据。
53.作为量化过程的一部分,导出指示量化程度的量化参数(qp),使得数据值的有序阵列在使用该量化程度编码时,满足一个或多个预定标准。这种预定标准的实例是数据量标准,例如,要求从这种量化和后续熵编码中得出的编码比特流中的数据量(至少预测)不大于一定的限度。
54.经变换的数据(或者,在下文将讨论的变换跳过操作的情况下,经重新排序但未经变换的残差数据)经受量化处理,该量化处理可等同于除以量化步长。(在解码时,可以将去量化的处理视为等同于乘以量化步长)。量化步长确定所应用的量化的程度或量(例如,粗糙度)。量化步长本身由映射至量化步长的量化参数qp指示。映射可以为使得量化步长与qp对数地关联。例如,qp增加6可指示量化步长加倍。然而,可以使用不同的映射。映射根据(例如)位深度(编码之前表示每个样本的位数)变化。因此,例如,在8位的位深度处,22的qp指示或映射到除以8的运算(量化步长=8)。在10位的位深度处,22的qp指示或映射到除以32的运算(量化步长=32)。因此,在示例性实施方式中,正是例如为了解决一个或多个预定标准而选择的qp值,但在另一方面通过qp值的映射来确定量化的程度(与量化步长有关)。
55.通过扫描单元360应用数据扫描处理。扫描处理的目的是对量化的变换数据重新排序,从而将尽可能多的非零量化的变换系数聚集在一起,并且当然,由此将尽可能多的零值系数聚集在一起。这些特征可以使得所谓的行程编码(run-length coding,游程编码)或类似的技术高效地应用。所以,扫描处理涉及从量化的变换数据选择系数,并且具体地,根据“扫描顺序”从对应于已经变换和量化的图像数据块的系数块中选择系数,使得(a)一次选择所有系数作为扫描的一部分;并且(b)扫描趋向于提供期望的重新排序。可以倾向于给出有用结果的一个扫描顺序实例是所谓的右上对角扫描顺序。
56.然后,将扫描的系数传送至熵编码器(ee)370。再次,可使用各种类型的熵编码。两个实例是所谓的cabac(上下文自适应二进制算术编码)系统的变形和所谓的cavlc(上下文自适应可变长度编码)系统的变形。总体而言,认为cabac提供更优选的效率,并且在一些研究中已经示出,与cavlc相比,对于相当的图像质量,提供减少10%至20%的编码输出数据的量。然而,认为cavlc表现出(在其实施方面)比cabac低得多的复杂水平。应注意,扫描处理和熵编码处理示出为单独的处理,但事实上,可以组合或者一起处理。也就是说,将数据读入熵编码器可以以扫描顺序进行。相应的考虑适于下文将描述的相应的逆过程。
57.熵编码器370的输出以及例如限定预测器320产生预测图像的方式的另外的数据(上述的和/或下文讨论的)提供压缩的输出视频信号380。
58.然而,由于预测器320自身的操作取决于压缩的输出数据的解压缩的形式,因此还提供了返回路径。
59.该特征的原因如下。在解压缩过程(下文将描述)中的适当的阶段中,产生残差数据的解压缩的形式。该解压缩的残差数据被加入预测图像中以生成输出图像(因为原始残差数据是输入图像与预测图像之间的差)。为了使该过程在压缩侧与解压缩侧之间是相当的,在压缩过程期间和在解压缩过程期间由预测器320生成的预测图像应相同。当然,在解压缩时,该装置并不访问原始输入图像,而仅访问解压缩的图像。因此,在压缩时,预测器320基于压缩图像的解压缩形式(至少,对图像间编码)进行预测。
60.(在至少一些实例中)由熵编码器370进行的熵编码过程认为是“无损的”,即,其可以被反向以精确实现与初始提供给熵编码器370的相同的数据。因此,在这种实例中,在熵
编码阶段之前可以实施返回路径。实际上,由扫描单元360进行的扫描过程也认为是无损的,但是在本实施方式中,返回路径390为从量化器350的输出至互补去量化器420的输入。在一阶段引入损耗或潜在损耗的情况下,该阶段可被包括在由返回路径形成的反馈回路中。例如,可以例如通过在奇偶校验信息内对位进行编码的技术而使熵编码阶段至少大体上是有损的。在这种实例中,熵编码和解码应当构成反馈回路的部分。
61.概括地说,熵解码器410、反向扫描单元400、去量化器420和逆变换单元或电路430提供熵编码器370、扫描单元360、量化器350和变换单元340的相应的逆功能。目前,将通过压缩过程继续讨论;将在下文分开讨论解压缩输入的压缩视频信号的过程。
62.在压缩过程中,通过返回路径390将扫描系数从量化器350传送至去量化器420,其进行扫描单元360的逆运算。由单元420、430进行逆量化和逆变换过程以生成压缩-解压缩残差图像信号440。
63.在加法器450处,将图像信号440加入预测器320的输出以生成重构的输出图像460。如将在下文描述的,这形成图像预测器320的一个输入。
64.现在转到应用于解压缩接收到的压缩视频信号470的过程,将该信号提供给熵解码器410,并且在由加法器450添加到图像预测器320的输出之前,从熵解码器410提供到反向扫描单元400、去量化器420和逆变换单元430的链。因此,在解码器侧,解码器重构残差图像的形式,并且然后将其(由加法器450)应用于图像的预测形式(逐块地)以便解码每个块。简单来说,加法器450的输出460形成输出的解压缩视频信号480。实际上,在输出信号之前,可以可选地应用进一步的滤波(例如,通过图8所示的滤波器560,但为了图7的高层示图的清楚起见,从图7中省略了该滤波器)。
65.图7和图8的装置可以用作压缩(编码)装置或解压缩(解码)装置。两种类型的装置的功能基本重叠。在解压缩模式中不使用扫描单元360和熵编码器370,并且预测器320(下面将详细描述)和其他单元的操作遵循包含在所接收的压缩位流中的模式和参数信息,而不是它们自身生成这种信息。
66.图8示意性地示出了预测图像的生成,并且具体地示出了图像预测器320的操作。
67.存在两种由图像预测器320实现的基本预测模式:所谓的图像内预测和所谓的图像间或者运动补偿(mc)预测。在编码器侧,每个涉及关于要预测的当前块检测预测方向,并且根据其他样本(在相同(帧内)或另一(帧间)图像中)生成样本的预测块。借助于单元310或450,预测块与实际块之间的差异被编码或应用以便分别对该块进行编码或解码。
68.(在解码器处,或在编码器的反向解码侧,预测方向的检测可响应于与编码器的编码数据相关联的数据,指示在编码器处使用哪种方向。或者检测可以响应于与在编码器处做出决定的因素相同的因素)。
69.图像内预测基于来自同一图像内的数据,预测图像的块或区域的内容。这对应于其他视频压缩技术中的所谓i帧编码。然而,与涉及通过帧内编码对整个图像进行编码的i帧编码不同,在本实施方式中,可以在逐块的基础上进行帧内编码与帧间编码之间的选择,虽然在其他实施方式中仍然在逐图像的基础上进行选择。
70.运动补偿预测是图像间预测的实例,并且使用运动信息,该运动信息试图限定在另一相邻的或附近的图像中的、将在当前图像中编码的图像细节的来源。因此,在理想的实例中,预测图像中的图像数据块的内容可以非常简单地编码为:指向相邻图像中位于相同
的或略微不同的位置的相应块的参照(运动矢量)。
71.已知为“块复制”预测的技术在某些方面是两者的混合,因为其使用向量来指示在同一图像内从当前预测的块移位的位置处的样本块,应当复制该样本块以形成当前预测的块。
72.回到图8,示出了两种图像预测布置(对应于图像内预测和图像间预测),其结果由模式信号510(例如,来自控制器343的)的控制下的多路转换器500选择,以提供用于提供至加法器310和450的预测图像的块。根据哪个选项给出最低“能量”(如上所述,被认为是需要编码的信息内容)做出选择,并且将该选择信号通知给编码输出数据流内的解码器。例如,通过对输入图像进行两种形式的预测图像的区域的试验减法,使差分图像的每个像素值平方,对平方值求和,并且确定两种形式中的哪一个产生了有关该图像数据的差分图像的较低均方值,来检测在该上下文中的图像能量。在其他实例中,可针对每一选择或潜在选择执行试验编码,然后根据每一潜在选择的成本,在编码所需的位数量和图片的失真中的一者或两者方面做出选择。
73.帧内编码系统中的实际预测是基于接收为信号460的部分的图像块做出的(即,预测是基于编码的-解码的图像块),以在解压缩装置处能够做出准确相同的预测。然而,可以通过帧内模式选择器520从输入的视频信号300得出数据,以控制图像内预测器530的操作。
74.对于图像间预测,运动补偿(mc)预测器540使用如由运动估测器550从输入的视频信号300得出的运动矢量的运动信息。那些运动矢量由运动补偿预测器540应用于重构图像460的处理形式,以生成图像间预测的块。
75.因此,(与估测器550一起操作的)单元530和540各自用作检测器以检测关于要预测的当前块的预测方向,并且用作生成器以根据由预测方向限定的其他样本生成样本的预测块(形成传送到单元310和450的预测的部分)。
76.现将描述应用于信号460的处理。首先,信号可选地由滤波器单元560滤波,这将在下面更详细地描述。这涉及应用“去块化”滤波器以去除或者至少趋向于减少由变换单元340和后续操作进行的基于块处理的效果。还可以使用样本自适应偏移(sao)滤波器。此外,使用通过处理重构信号460和输入的视频信号300得到的系数,来可选地应用自适应环路滤波器。自适应环路滤波器是使用已知技术将自适应滤波器系数应用于要过滤的数据的滤波器类型。也就是说,滤波器系数可根据各种因素而变化。限定使用哪种滤波器系数的数据被包括为编码输出数据流的一部分。
77.当装置作为解压缩装置操作时,来自滤波器单元560的经滤波的输出实际上形成输出的视频信号480。其还缓存在一个或者多个图像或帧存储器570中;连续图像的存储是运动补偿预测处理(并且特别是运动矢量生成)的要求。为了节省存储需求,图像存储器570中的存储图像可保持为压缩形式并且然后解压缩用于生成运动矢量。对于这个特定目的,可使用任何已知的压缩/解压缩系统。存储的图像被传送到生成存储图像的更高分辨率形式的内插滤波器580;在该实例中,生成中间样本(子样本)使得内插滤波器580输出的内插图像的分辨率为4:2:0的亮度通道的在图像存储器570中存储的图像的分辨率的4倍(在每一维度上)、以及为4:2:0的色度通道的在图像存储器570中存储的图像的分辨率的8倍(在每一维度上)。内插图像作为输入传送至运动估测器550以及运动补偿预测器540。
78.现将描述将图像分区以用于压缩处理的方式。在基本水平,要压缩的图像被认为
是样本的块或区域的阵列。可以由决策树执行图像到这种块或区域的分割,诸如在h系列:视听和多媒体系统视听服务基础设施-高效移动视频编码的建议(series h:audiovisual and multimedia systems infrastructure of audiovisual services-coding of moving video high efficiency video coding recommendation)itu-t h.265 12/2016,以及:高效视频编码算法和体系结构(high efficiency video coding(hecv)algorithms and architectures),编者:madhukar budagavi,gary j.sullivan,vivienne sze;isbn 978-3-319-06894-7;2014(通过引用整体结合于此)的编码中描述的决策树。在一些实例中,所得块或区具有借助于决策树可大体上遵循图像特征在图像内的配置的尺寸和(在一些情况下)形状。这本身可以产生改进的编码效率,因为表示或遵循类似图像特征的样本将倾向于通过这种布置而被分组在一起。在一些实例中,不同尺寸(诸如,多达约64
×
64或更大块的4
×
4的样本)的方形块或区域可供选择。在其他示例性布置中,可以使用(例如,垂直或水平取向的)诸如矩形块的不同形状的块或区域。设想其他非正方形和非矩形块。图像到这种块或区域的划分结果(至少在本实例中)为向一个且仅一个这种块或区域分配图像的每个样本。
79.现在将讨论帧内预测过程。一般地说,帧内预测涉及由同一图像中先前编码和解码的样本来生成样本的当前块的预测。
80.图9示意性地示出部分编码的图像800。此处,图像基于块从左上至右下编码。通过处理完整图像而部分编码的示例性块示出为块810。块810上方和左侧的阴影区820已被编码。块810的内容的图像内预测可利用阴影区820的任一个但不能利用其下方无阴影的区域。
81.在一些实例中,逐块地对图像进行编码,使得较大块(称为编码单元(coding unit,译码单元)或cu)以例如参见图9讨论的顺序的顺序进行编码。在每一cu内,存在将cu处理为两个或两个以上较小块或变换单元(tu)的集合的可能性(取决于已发生的块分割过程)。这可给出编码的分层顺序,使得逐cu地对图像进行编码,并且可能逐tu地对每一cu进行编码。然而,注意,对于当前编码树单元内的单个tu(块划分的树结构中的最大节点),上面讨论的编码的分层顺序(逐cu然后逐tu)意味着在当前cu中可以存在先前编码的样本,并且可用于该tu的编码,这些样本例如在该tu的右上方或左下方。
82.块810表示cu;如上所述,对于图像内预测处理的目的,其可以细分为较小的单元的集合。在cu 810内示出当前tu 830的实例。一般地说,图片被分割成样本的区域或分组以允许信令信息和变换数据的有效编码。信息的信令可能需要与变换的树结构不同的细分树结构,并且实际上需要预测信息或预测本身的树结构。因此,编码单元可具有与变换块或区域、预测块或区域和预测信息不同的树结构。在诸如hevc的一些实例中,结构可以是所谓的编码单元的四叉树,四叉树的叶节点包含一个或多个预测单元和一个或多个变换单元;变换单元可以包含与图片的亮度和色度表示相对应的多个变换块,并且预测可以被认为在变换块级别是可应用的。在实例中,应用于特定样本组的参数可视为主要以块级限定的,该块级可能不具有与变换结构相同的粒度。
83.图像内预测考虑了在考虑当前tu之前编码的样本,诸如,当前tu上方和/或左侧的样本。从其预测所需样本的源样本可相对于当前tu位于不同位置或方向。为了决定哪一方向适合于当前预测单元,示例性编码器的模式选择器520可针对每一候选方向测试可用tu
结构的所有组合,并且选择具有最佳压缩效率的预测方向和tu结构。
84.还可以以“片(slice)”为基础编码图片。在一个实例中,片是水平相邻的cu的组。但是更一般而言,整个的残差图像可以形成片,或者片可以是单个cu,或片可以是一行cu等。因为片被编码为独立单元,因此它们可以提供对错误的一定弹性。在片的边界,编码器和解码器状态完全重置。例如,帧内预测不越过片的边界进行;为此目的,将片的边界当作图像边界。
85.图10示意性地示出了一组可能的(候选)预测方向。该全组完整的候选方向可用于预测单元。该方向是通过相对于当前块位置的水平及垂直位移确定的,但编码为预测“模式”,其组在图11中示出。应注意,所谓的dc模式表示围绕上部和左侧样本的简单算术平均。还注意,图10中示出的一组方向仅是一个实例;在其他实例中,如图12中示意性示出的一组(例如)65个角度模式加上dc和平面(一组完整的67个模式)组成全组。可以使用其他数量的模式。
86.一般而言,在检测预测方向之后,系统可操作以根据由预测方向限定的其他样本来生成样本的预测块。在实例中,图像编码器经配置为对识别针对图像的每一样本或区域而选择的预测方向的数据(且图像解码器被配置为检测该数据)进行编码。
87.图13示意地示出了帧内预测过程,其中根据与该样本关联的帧内预测模式限定的方向930,从相同图像的其他参考样本920导出样本的块或区域910的样本900。在该实例中,参考样本920来自正在讨论的块910上方和左侧的块,并且样本900的预测值通过沿着到参考样本920的方向930跟踪而获得。方向930可以指向单个单独的参考样本,但是在更一般的情况下,在周围参考样本之间的内插值被用作预测值。应注意,块910可以是图13中示出的正方形或者可以是诸如矩形的另一形状。
88.图14示意地示出帧间预测过程,其中当前图像1410的块或区域1400相对于由一个或多个其他图像1450、1460中的运动矢量1420指向的块1430、1440或两者而预测。预测的块可以如上文讨论的用于生成如上所述编码的残差数据。
89.图15提供了与示例性4
×
4数据块相关联的阵列顺序的实例。该顺序不一定是上述编码或解码处理的每个方面的处理顺序,而是为了以下文所描述的方式检测有效非零系数在阵列顺序中的存在的目的而与块或区域相关联。不同尺寸和/或不同形状的块或区域可具有相应相关联的阵列顺序,并且在至少一些实例中,阵列顺序设定为待量化的系数的期望有效(从预期最高朝向预期最低的幅度)的顺序。
90.图15的实例涉及应用于残差块的离散余弦变换,其中左上系数(如所绘制)为dc(最低空间频率)系数,通常预期为该系数的最大幅度。下面将讨论包括离散正弦变换(dst)和所谓变换跳过块的其他实例。
91.在(例如)仅具有非零的dc系数的dct块的情况下可能出现潜在的问题。这并不是罕见的情形,并且可导致编码系数实际上大于系统正尝试编码(在空间域中)的实际残差dc。
92.例如,对于qp《22,量化器将除以小于8的因子(假设通过例如缩放列表/量化矩阵而不应用额外的缩放)。然而,用于8
×
8块的dct过程将在变换期间应用sqrt(8
×
8)=8的有效缩放。这将导致幅度大于实际dc偏移的dc系数。或者,对于16
×
16块,dct将使具有有效dc值的残差块缩放16,且因此编码系数值为所得dc残差值大小的至少两倍。
93.就是说,如果16
×
16残差块仅由每个位置中的值
‘1’
组成,则在变换之后,变换dc系数将包含值

16’,所有其他变换系数为
‘0’
。量化器然后将根据需要缩放系数。然而,如果量化器仅应用除以8,则所得到的量化系数将为值
‘2’
,其比逆操作所需的要精确两倍。因此,在这种情况下,量化器可能已经同等地应用除以16并且仍导致相同(或相似)的结果。因此,在这种情况下,最小量化可被定义为除以16;除以8将是不足够苛刻的量化量。
94.例如,对于qp《28,量化器应用/16,并且16
×
16的量化dc系数大于所需要的值。
95.例如,对于qp《34,量化器应用/32,并且32
×
32的量化dc系数大于所需要的值。
96.例如,对于qp《40,64
×
64的量化dc系数大于所需要的值。
97.示例性实施方式解决了这一潜在问题,即,至少对于那些仅具有(与不大于1的阈值系数数量的数量相对应的)dc系数的块,量化器应当应用可选地依赖于块大小的最小量化。类似地,对于不仅具有dc还具有另一阈值数量(诸如,3个)的非零系数的块,量化器可应用(可能不同的)最小量化参数,如上文所讨论,从该最小量化参数确定量化程度。所应用的量化参数可不同于导出用于该块的量化参数。
98.本文应用的测试的另一方面可涉及非零系数的位置。例如,测试可检测n个(诸如,1或3个)非零系数是否为n个最低频率(或者从dc开始扫描或阵列顺序中最低的)系数以便应用不同的量化参数。
99.可关于值预量化(即(在上文给出的实例中)关于dct值)进行是否存在至少阈值数量的非零值的测试。可替代地,可以关于量化数据值进行判断。所做的判断是指阵列顺序中的数据值,例如,在dc处开始(在该实例中)并且例如使用图15的扫描朝向较高空间频率分量进行。
100.如果在解码器侧做出相应的判断,为了应用量化参数的相应修改用于确定去量化时使用的量化(或去量化)程度,则基于相同的数据集做出判断可是合适的,即:
101.(a)检测在编码器处以阵列顺序的量化数据值的数量是否具有至少阈值数量的非零值;并且
102.(b)检测在解码器处以阵列顺序的待去量化的熵解码数据值的数量是否具有至少阈值数量的非零值。
103.然而,在其他实例中,诸如在编码数据流中或与编码数据流一起用信号通知编码器实际使用的量化参数的实例,编码器反而可操作以检测在编码器处以阵列顺序的量化数据值的数量是否至少具有阈值数量的非零值。
104.图16示意性地示出了离散正弦变换(dst)变换单元1600的使用。虽然准确效果不同于dct,但如同dct一样,将倾向于在变换块1620的左上(最低空间频率)位置1610处找到预期最高有效系数。与图15的阵列顺序相似的左上到右下阵列顺序可用于检测存在多少第一非零值。
105.图17示意性地示出了所谓的变换跳过模式的使用,其中选择性地不使用空间频率变换。由编码器发信号通知解码器变换跳过模式的使用。然而,由于残差数据块的性质可以为使得最接近参考样本的样本位置(即,块的左边缘和上边缘)可能由于其与参考样本的接近度而倾向于具有较低差异,逆过程1700可用于旋转样本位置以用于后续编码(和在解码时应用的相应逆过程),使得在反转块1720的左上位置1710(如与dct系统中的dc系数的位置相应绘制的左上位置)处的样本是来自残差块的右下方(即,离参考样本最远的样本位
置)的样本。预期样本1710在变换跳过块中通常具有最大值。与图15的阵列顺序相似的左上到右下阵列顺序可用于检测存在多少第一非零值。
106.在caba上下文建模(the caba context modelling)的章节8.6.2中讨论了变换跳过操作,在h系列:视听和多媒体系统视听服务基础设施-高效移动视频编码的建议(series h:audiovisual and multimedia systems infrastructure of audiovisual services-coding of moving video high efficiency video coding recommendation)itu-t h.26512/2016,以及:高效视频编码算法和体系结构(high efficiency video coding(hecv)algorithms and architectures),编者:madhukar budagavi,gary j.sullivan,vivienne sze;isbn 978-3-319-06894-7;2014年,第8章第209-274页(其全部内容通过引用结合在此)中详细描述了编码过程。对于一些区域或块,可通过跳过变换实现编码增益。对空间域中的残差进行量化和编码,在一些情况下以反向空间顺序(以频率变换块中的系数幅度的预期顺序(在dc系数的左上方通常最大),与空间差值的预期幅度对准,该幅度将在离参考样本最远的块的右下方最大)。
107.图18是示出了数据编码方法的示意性流程图。
108.在步骤1800中,生成表示图像区域并且具有阵列顺序的数据值的有序阵列。
109.步骤1810涉及导出指示量化程度的量化参数,使得数据值的有序阵列在使用该量化程度编码时满足一个或多个预定标准。例如,预定标准可包括数据量标准使得编码数据的量被预测不超过所需数据量、和/或质量或错误率标准。
110.在步骤1820中,使用由导出的量化参数指示的量化程度对数据值进行量化以生成相应量化值。
111.在步骤1830中,检测多个非零量化值。
112.将非零量化值的数量(和如上所述的可选位置)与在步骤1840中的阈值或数量相比较。如果阵列顺序中不超过阈值数量的第一值为非零,控制就传递到步骤1850,在该步骤中选择不同的量化参数,使用由所选择的不同的量化参数指示的量化程度来对数据值进行量化,并且控制传递到步骤1860。以另外方式,或者换言之,如果阵列顺序中至少阈值数量的第一值为非零。控制直接传递到步骤1860。
113.将理解的是,可以各种方式表示(在该实例中,非零数据值的)数量n与阈值t的比较,出于本说明书的目的,所有这些都被认为是等效的。两个实例如下:
[0114][0115]
还应理解,在一些情况下,可以在实际上没有首先量化数据值的情况下,预测或检测将由量化过程产生的非零量化值的数量。这里,量化器有效地执行v[i]/分母。预测或测试可以检查abs(v[i])≥分母(尽管舍入将修改正在测试的实际偏移)。在这种情况下,量化步骤1820将转移到比较步骤1840之后,使得在比较步骤的任一结果处,发生量化,通过比较
步骤选择关于使用由在步骤1810中导出的量化参数指示的量化程度,还是由在步骤1850中选择的不同的量化参数指示的量化程度。
[0116]
在步骤1860中,至少对非零量化值进行熵编码。
[0117]
作为图18的进一步变型,将理解的是,如上所述,事实上可对量化之前的数据进行步骤1830、1840中的检测,这意味着将步骤1830和步骤1840重新定位到步骤1800与步骤1810之间,量化程度由在步骤1810中导出的量化参数指示、或在步骤1820中使用的所选择的不同的量化参数指示。
[0118]
图19是示出了对数据流进行解码的方法的示意性流程图。
[0119]
在步骤1900中,对具有阵列顺序的数据值的有序阵列进行熵解码。
[0120]
步骤1910涉及检测多个非零熵解码值。在步骤1920中,从数据流中检测量化参数。应注意,步骤1920可以相对于步骤1900、1910的顺序在任何流程图位置中执行,或者实际上与它们中的任何一个并行执行。
[0121]
在步骤1930中,将阵列顺序中的多个第一熵解码值(去量化之前的数据)与阈值数量进行比较。如果至少阈值数量为非零,则控制传递到步骤1950,在步骤1950中,使用由来自数据流的量化参数(即,由编码器提供的参数)指示的量化程度来去量化熵解码值,或否则控制传递到步骤1940,步骤1940涉及选择不同的量化参数并且使用由所选择的不同的量化参数指示的量化程度来去量化熵解码数据值。
[0122]
相同的考虑适用于与如以上讨论的那些阈值的比较。
[0123]
以上讨论导致本技术的至少两个可能的示例性实施方式。
[0124]
在一些示例实施方式中,编码器选择和使用所导出的量化参数(在步骤1810中)或不同的量化参数(在步骤1850中),并且将其在编码数据的量化中实际使用的无论哪个量化参数编码到数据流。在此情况下,可使用常规解码器,其简单地检测来自编码数据流的量化参数且将其用于去量化。另一选项可为将一个或一个以上额外标记添加到数据流以指示针对特定块大小/分量/位深度等的不同量化参数的使用。
[0125]
但是在其他示例性实现方式中,即使不同的量化参数实际上用于指示在步骤1850中为实际量化所指示的量化程度,编码器在步骤1810中导出量化参数并且将所导出的量化参数写入数据流。在这种情况下,图19的方法是相关的,因为如果应用相同的条件,解码器应用相同的测试(在相应的步骤1840、1930中)并且还选择不同的量化参数。在示例性实施方式中,例如,通过应用确定不同量化参数的选择的一组相应的标准或规则,如在编码器所选择的,解码器在这些情况下选择同样不同的量化参数。
[0126]
这些布置可对(例如)其他可操作特征或参数的编码或使用取决于所传输的量化参数的情形有用,在这些布置中,实际写入到数据流的量化参数并非所使用的量化参数,并且其中在步骤1810中量化参数的选择实际上由编码器和解码器两者支配。当量化参数实际在数据流本身中传输的方式取决于本技术未改变的其他参数时,它们也可以是有用的。
[0127]
图20示意性地示出了先前提出的量化布置,其中量化参数(qp)选择器2000选择量化参数,然后该量化参数由量化器2010应用,使得由量化参数指示的量化程度用于量化输入数据2020以生成量化的输出数据2030。所选择的qp值在编码数据流中或与编码数据流一起直接或间接地(例如,通过对其他数据或参数的依赖)传送。
[0128]
在解码器侧,图21示意地示出一种布置,其中量化参数检测器2100检测编码于数
据流中或与数据流一起编码的量化参数,并且去量化器2110将由检测到的量化参数指示的量化程度应用于输入数据2120以生成去量化输出数据2130。
[0129]
应用上文所讨论的技术,图22示意性地示出使用这些技术的编码器的一部分。
[0130]
如前所述,量化参数选择器2200导出由量化器2210应用于(例如,暂时存储于数据缓冲器2220中的)输入数据的初始量化参数qp
init

[0131]
将应用由初始量化参数qp
init
指示的量化程度而产生的量化数据,提供至检测器、比较器及选择器单元2230。该单元执行结合图18的步骤1830、1840、1850讨论的操作。具体地,其检测应用初始量化参数qp
init
而生成的量化数据中的非零数据的数量(该非零数据在阵列顺序中为第一值),并且将该数量与阈值数量(诸如1或3)进行比较。如果在使用中非零数据的数量小于阈值,则由单元2230选择不同的qp值qp
new
。量化器2210和数据缓冲器2220由单元2230控制以再次使用qp
new
量化数据。
[0132]
响应于检测到至少存在阈值数量的非零数据,或者响应于利用qp
new
的再量化,输出量化的数据作为输出信号2235。
[0133]
可以基于不同方式并且基于不同参数来进行qp
new
的选择。
[0134]
在一些实例中,qp
new
可表示对将在特定情形中使用的最小qp的约束。
[0135]
在一些实例中,qp
new
可由查找表或函数基于数据值的有序阵列的阵列大小来选择。例如,由于各个变换过程的缩放,qp
new
的不同值可应用于4
×
4、8
×
8、16
×
16、32
×
32或其他块大小。例如,两倍大小的块将通常具有两倍最小量化缩放值(其对于hevc型qp方法,将导致qp增加6)。因此,通常,用sqrt(4*4)=4来缩放4
×
4dct,并且因此最小qp将应用至少4的有效量化。在此,sqrt意味平方根。
[0136]
在一些实例中,qp
new
可由查找表或函数基于处理的图像数据的位深度来选择。例如,qp
new
的不同的值可以应用于8位数据、9位数据、10位数据、12位数据等。例如,超过8位的位深度每位,qp可增加3。
[0137]
在一些实例中,qp
new
可由查找表或函数基于在生成数据值的有序阵列中使用的变换类型(例如,离散余弦变换、离散正弦变换、变换跳过、非可分离二次变换等)来选择。
[0138]
在一些实例中,可以使用这些因素(变换类型、阵列大小和位深度)中的两个或两个以上的任何置换,使得通过两个因素的二维查找表或函数获得qp
new
的值。
[0139]
在以上实例的任一项中,可在解码器处执行相同过程,使得即使在数据流中或者与数据流一起用信号通知初始量化参数qp
init
,在解码器侧也可获得并且使用适当的qp
new

[0140]
在其他实例中,可在编码器处反复地执行上述过程,使得单元2230检测到在使用qp
init
时存在不充足的非零第一量化数据值,因此如果重复qp
new
=qp
init-delta(其中delta是改变量,其本身可以取决于位深度和/或阵列大小)并且重复量化过程,导致qp的变化。如果阵列顺序中仍存在不充足的非零第一量化数据值,那么可再次应用改变,或者换言之:
[0141]
qp
new
(2)=qp
new
(1)

delta,
[0142]
并且过程反复地迭代直到阈值数量的测试通过(即,阵列顺序中存在充足的非零第一量化数据值),并且在数据流中或者与数据流一起用信号通知qp
new
的最终值。
[0143]
通常,编码器可以尝试两种情况(或者如果存在多个条件/qp,其可以尝试所有可能的结果),以检测可以使用的qp,确保将由解码器(例如,通过空出系数(blanking off coefficient))适当地检测利用修改的量化器进行的试验。这样的试验可导致编码成本较
低(在比特率与图像质量之间的平衡方面)。
[0144]
图23示意性地示出了在解码器处使用的布置,其中熵解码数据临时保存在数据缓冲器2320中,并且由去量化器2310使用由在数据流中或与数据流一起用信号通知的量化参数qp
init
、或者通过不同的值qp
new
指示的量化程度,选择性地去量化。
[0145]
熵解码数据被传递到执行图19的步骤1920和步骤1930的功能的检测器、比较器和选择器单元2330,使得如果阵列顺序中存在不超过阈值数量的第一非零熵解码值(其中阈值为,例如1或3),则单元2330控制去量化器2310以利用不同的qp(即qp
new
)执行熵解码数据的去量化,不同的qp是使用与在编码器侧执行的选择过程相同依赖性选择的(潜在地取决于位深度、阵列大小或两者)。如果步骤1930的比较示出存在至少阈值数量的非零数据值,则使用qp检测器从数据流中检测到的qp值2305。
[0146]
提供了量化数据作为用于进一步处理的输出信号2335。
[0147]
已经将本公开的实施方式描述为至少部分地由软件控制的数据处理装置实现,应当理解,承载这样的软件的诸如光盘、磁盘、半导体存储器等的非暂时性机器可读介质,也被认为表示本公开的实施方式。类似地,还考虑了包括根据上述方法生成的编码数据的数据信号(是否在非暂时性机器可读介质上体现)以表示本公开的实施方式。
[0148]
显然,鉴于以上教导,本公开的各种修改和变化是可行的。因此应当理解,在所附条款的范围内本技术可以按不同于本文具体描述的方式来实施。
[0149]
相应的方面和特征由以下编号的项限定:
[0150]
1.一种数据编码方法,包括:
[0151]
生成表示图像区域并且具有阵列顺序的数据值的有序阵列;
[0152]
导出指示量化程度的量化参数,使得数据值的有序阵列在使用该量化程度编码时满足一个或多个预定标准;
[0153]
在数据值的有序阵列或者根据导出的量化参数指示的量化程度而量化的数据值的有序阵列中,检测多个非零值作为阵列顺序中的第一值;
[0154]
如果检测的数量不超过阈值数量,则选择不同的量化参数;
[0155]
量化数据值以生成相应的量化值;以及
[0156]
对量化值进行熵编码。
[0157]
2.根据项1的方法,其中生成步骤包括:
[0158]
预测待编码的图像的图像区域;以及
[0159]
根据预测图像区域与待编码的图像的相应区域之间的差异,生成残差图像区域;
[0160]
其中数据值的有序阵列包括表示残差图像区域的数据值。
[0161]
3.根据项2的方法,包括对残差图像区域进行频率变换;
[0162]
其中数据值的有序阵列包括残差图像区域的频率变换表示的数据值。
[0163]
4.根据项3的方法,其中阵列顺序是从表示最低空间频率的数据值到表示最高空间频率的数据值。
[0164]
5.根据项2的方法,其中:
[0165]
预测步骤包括:根据在由预测模式限定的方向上,从预测样本移位的其他先前编码和解码的图像样本,来预测图像区域的样本;并且
[0166]
阵列顺序为使得在空间上更接近其他先前编码和解码的样本的预测数据值在阵
列顺序中较早。
[0167]
6.根据先前项中任一项的方法,其中一个或多个预定标准包括至少数据量标准。
[0168]
7.根据先前项中任一项的方法,其中阈值数量为1。
[0169]
8.根据项1至6中任一项的方法,其中阈值数量为3。
[0170]
9.根据先前项中任一项的方法,其中选择的不同的量化参数取决于数据值的有序阵列的阵列大小。
[0171]
10.根据先前项中任一项的方法,其中选择的不同的量化参数取决于数据值的有序阵列的位深度。
[0172]
11.根据先前项中任一项的方法,其中选择的不同的量化参数取决于可应用于数据值的有序阵列的变换类型。
[0173]
12.一种解码数据流的方法,方法包括:
[0174]
对具有阵列顺序的数据值的有序阵列进行熵解码;
[0175]
检测多个非零熵解码值;
[0176]
从数据流中检测量化参数;以及
[0177]
如果阵列顺序中至少阈值数量的第一熵解码值为非零,则使用来自数据流中的量化参数指示的量化程度,去量化熵解码值,或者以其他方式选择不同的量化参数,并且使用由选择的不同的量化参数指示的量化程度去量化熵解码数据值。
[0178]
13.根据项12的方法,其中选择的不同的量化参数取决于数据值的有序阵列的阵列大小。
[0179]
14.根据项12或13的方法,其中选择的不同的量化参数取决于数据值的有序阵列的位深度。
[0180]
15.根据项12至14中任一项的方法,其中选择的不同的量化参数取决于可应用于数据值的有序阵列的变换类型。
[0181]
16.根据项12至15中任一项的方法,其中阈值数量为1。
[0182]
17.根据项12至15中任一项的方法,其中阈值数量为3。
[0183]
18.一种计算机软件,当由计算机执行时,使计算机执行先前项中任一项的方法。
[0184]
19.一种非暂时性机器可读存储介质,其存储根据项18的计算机软件。
[0185]
20.一种数据编码装置,被配置为对表示图像区域并且具有阵列顺序的数据值的有序阵列进行编码,装置包括:
[0186]
量化参数生成器,被配置为导出指示量化程度的量化参数,使得数据值的有序阵列在使用该量化程度编码时满足一个或多个预定标准;
[0187]
检测器,被配置为在数据值的有序阵列或者根据导出的量化参数指示的量化程度而量化的数据值的有序阵列中,检测多个非零值作为阵列顺序中的第一值;
[0188]
控制器,被配置为,如果检测的数量不超过阈值数量,则选择不同的量化参数;
[0189]
量化器,被配置为对数据值进行量化以生成相应的量化值;
[0190]
以及
[0191]
熵编码器,被配置为对量化值进行熵编码。
[0192]
21.一种用于解码数据流的装置,装置包括:
[0193]
熵解码器,被配置为对具有阵列顺序的数据值的有序阵列进行熵解码;
[0194]
检测器,被配置为检测多个非零熵解码值,并且从数据流中检测量化参数;以及
[0195]
去量化器,被配置为如果阵列顺序中至少阈值数量的第一熵解码值为非零,则使用来自数据流的量化参数指示的量化程度去量化熵解码值,或者以其他方式选择不同的量化参数并且使用所选择的不同的量化参数指示的量化程度去量化熵解码数据值。
[0196]
22.一种包括根据项20或项21的装置的视频存储、捕获、传输或接收装置。
[0197]
23.一种包括图像传感器和根据项20的编码器装置的视频捕获装置。
[0198]
24.根据项23的视频捕获装置,还包括根据项21的装置和输出数据流的显示器。
[0199]
25.根据项23的视频捕获装置,包括被配置为传输编码数据流的传输器。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1