CN113454998A - 视频编码中的跨分量量化 - Google Patents

视频编码中的跨分量量化 Download PDF

Info

Publication number
CN113454998A
CN113454998A CN201980092594.4A CN201980092594A CN113454998A CN 113454998 A CN113454998 A CN 113454998A CN 201980092594 A CN201980092594 A CN 201980092594A CN 113454998 A CN113454998 A CN 113454998A
Authority
CN
China
Prior art keywords
chroma
unit
picture
flag
default
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.)
Pending
Application number
CN201980092594.4A
Other languages
English (en)
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.)
ZTE Corp
Original Assignee
ZTE Corp
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 ZTE Corp filed Critical ZTE Corp
Publication of CN113454998A publication Critical patent/CN113454998A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • 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/186Methods 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 a colour or a chrominance component
    • 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/124Quantisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards

Landscapes

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

Abstract

一种视频解码技术包括解析比特流,以从被包括在比特流中的参数集的数据单元中确定用于区域的亮度分量的量化参数(QP),从参数集的数据单元中确定标志,在标志等于第一值的情况下,确定用于该区域的色度分量的QP作为用于亮度分量的QP和由标志指示的默认色度delta QP的第一函数,在标志等于第二值的情况下,通过以下步骤确定用于该区域的色度分量的QP:(a)从数据单元中获取delta色度QP,以及(b)确定用于色度分量的QP作为用于亮度分量的QP和delta色度QP的第二函数,并且在参数集被激活用于解码该区域的情况下,使用用于色度分量的QP来解码色度分量。

Description

视频编码中的跨分量量化
技术领域
本专利文档总体上涉及视频和图像的编码和解码。
背景技术
视频编码使用压缩工具将二维视频帧编码成压缩的比特流表示,这种表示在用于网络上存储或传输时更有效。随着能够接收数字视频和显示视频和图像的设备的进展在增加,对数字视频内容的需求也在增加。业界当前正在努力定义下一代视频编码技术。
发明内容
除其他外,本专利文档描述了使用跨分量量化参数编码实施例对数字视频进行编码和解码的技术。
本申请中描述的实施例提供了视频或图片编码和解码方法、编码和解码设备,以至少解决用信号发送默认色度delta量化参数(QP)问题,以减轻编码器在确定色度deltaQP时的计算负担。
在一个示例方面,公开了一种处理视觉信息的方法。该方法包括解析比特流以从比特流中包含的参数集的数据单元确定视觉信息的区域的亮度分量的量化参数(QP),从参数集的数据单元中确定标志,在标志等于第一值的情况下,将用于该区域的色度分量的QP确定作为用于亮度分量的QP和由标志指示的默认色度delta QP的第一函数,在标志等于第二值的情况下,通过以下步骤确定用于该区域的色度分量的QP:(a)从数据单元中获取delta色度的QP,以及(b)将用于色度分量的QP确定作为用于亮度分量的QP和delta色度QP的第二函数,并且在参数集被激活用于解码该区域的情况下,使用用于色度分量的QP来解码色度分量。
在另一个示例方面,公开了一种生成视觉信息的编码表示的方法。该方法包括确定用于视觉信息的区域的亮度分量的QP,按照以下方式用信号发送在视觉信息的编码表示中用于色度分量的QP:在用于色度分量的QP等于用于色度分量的默认QP和亮度分量QP的第一函数的值的情况下,在编码表示中用标志位的第一值来指示默认色度delta QP将被用于解码,并将所述标志编码在编码表示的参数集的数据单元中,否则,在编码表示中用标志位的第二值来指示,并指示delta色度QP的数据单元中的值,使得用于色度分量的QP是亮度分量和delta色度QP的第二函数。
在另一个示例方面,公开了一种用于处理视频或图片的一个或多个比特流的装置。
在又一个示例中,公开了一种计算机程序存储介质。该计算机程序存储介质包括存储在其上的代码。当代码被处理器执行时,会导致处理器实现所描述的方法。
这些和其他方面将在本文档中进行描述。
附图说明
图1A是用于视觉信息处理的示例方法的流程图。
图1B是用于视觉信息编码的示例方法的流程图。
图2是示出了实现本公开中的方法的示例视频或图片编码器的图。
图3是示出了将图片划分成瓦片组的示例的图。
图4A-4C是示出了用于表示比特流中的色度QP的参数的语法结构的示例的图。
图5是示出了实现本公开中的方法的示例视频或图片解码器的图。
图6是示出了至少包括本公开中描述的示例编码器的第一示例设备的图。
图7是示出了至少包括本公开中描述的示例解码器的第二示例设备的图。
图8是示出了包括第一示例设备和第二示例设备的电子系统的图。
具体实施例
本文档中使用章节标题仅用于提高可读性,并且不将每个章节中所披露的实施例和技术的范围限制于该章节。使用H.264/AVC(高级视频编码)和H.265/HEVC(高效视频编码)标准的示例描述了某些功能。但是,公开技术的适用性不仅限于H.264/AVC或H.265/HEVC系统。
本公开涉及视频处理和通信,特别是用于对数字视频或图片进行编码以生成比特流的方法和装置、用于对比特流进行解码以重构数字视频或图片的方法和设备。
简要讨论
在当前的H.266/VVC(通用视频编码)WD(工作草案)中,图像级色度delta QP可以被用信号发送(signal)在PPS(图片参数集)(即pps_cb_qp_offset和pps_cr_qp_offset)和瓦片组头(即tile_group_cb_qp_offset和tile_group_cr_qp_offset)中。瓦片组级QP的值被设置为等于亮度QP、PPS中被用信号发送的色度delta QP以及瓦片组头中被用信号发送的色度delta QP之和。
在当前的H.266/VVC开发中,用于色度的高级编码工具,诸如对偶树(dual tree)(即对于编码块的亮度和色度分量的单独块划分)、CCLM(跨分量线性模式)等,对色度分量的编码效率带来了极大的益处。从比特分配的角度来看,通过将多个比特从色度移位到亮度,将进一步提高亮度分量的编码效率。这通过在用于H.266/VVC软件(即VTM)的常见测试条件(CTC)中在序列(或至少图片)级别下设置示例性色度delta QP(例如等于1)来展示。结果,在比特流中,pps_cb_qp_offset和pps_cr_qp_offset等于1,并且tile_group_cb_qp_offset和tile_group_cr_qp_offset等于0。
在用于色度的高级编码工具下,通过在色度和亮度分量之间移位比特来平衡色度和亮度的压缩增益实际上提高了感知质量。在当前的H.266/VVC WD中,没有默认(或推荐)值可用于这种色度delta QP,并且编码器总是需要自己去确定色度delta QP,这导致编码器的计算负担很重。
用于压缩数字视频和图片的技术利用了像素样本之间的相关特性来去除视频和图片中的冗余。通过在亮度和色度分量之间分配比特,编码器在对视频进行编码时实现质量和压缩之间的最佳权衡的操作点。通常,可以通过确定用于视频序列、图片、不同颜色分量和图片区域(其中一个图片区域包含一个或多个编码块)的量化参数(QP)来执行比特分配。
在当前的H.266/VVC(通用视频编码)WD(工作草案)中,图片级色度delta QP可以被用信号发送在PPS(图像参数集)(即pps_cb_qp_offset和pps_cr_qp_offset)和瓦片组头(即tile_group_cb_qp_offset和tile_group_cr_qp_offset)中。瓦片组级QP的值被设置为等于亮度QP、PPS中被用信号发送的色度delta QP和瓦片组头中被用信号发送的色度deltaQP之和。
在当前的H.266/VVC开发中,用于色度的高级编码工具,诸如对偶树(即对于编码块的亮度和色度分量的单独块划分)、CCLM(跨分量线性模式)等,对色度分量的编码效率带来了极大的益处。从比特分配的角度来看,通过将多个比特从色度移位到亮度,可以进一步提高亮度分量的编码效率。这可以通过在用于H.266/VVC软件(即VTM)的常见测试条件(CTC)中在序列(或至少图片)级别下设置示例性色度delta QP(例如,等于1)来展示。结果,在比特流中,pps_cb_qp_offset和pps_cr_qp_offset等于1,并且tile_group_cb_qp_offset和tile_group_cr_qp_offset等于0。
根据本文档描述的一些实施例,提供了一种用于处理视频或图片的编码方法,包括:
确定用于图片或图片区域的亮度分量的量化参数(QP);
使用默认色度delta QP计算用于图片或图片区域的色度分量的第一色度QP;
如果确定出第一色度QP用于对色度分量进行编码,则将标志设置为指示使用默认色度delta QP的第一值,并且将标志编码在比特流中的参数集的数据单元中;
否则,确定用于色度分量的第二色度QP,将标志设置为指示不使用默认色度deltaQP的第二值,设置色度delta QP等于用于亮度分量的QP与第二色度QP的差,并且将标志和色度delta QP编码在比特流中的参数集的数据单元中。
根据本文档的一些实施例,提供了一种用于处理比特流以重构视频或图片的解码方法,包括:
解析比特流以从参数集的数据单元中确定用于图片或图片区域的亮度分量的量化参数(QP);
解析比特流以从参数集的数据单元中获得标志;
如果所述标志等于第一值,则将用于所述图片或图片区域的色度分量的QP设置为等于用于亮度分量的QP与由标志指示的默认色度delta QP之和;
否则,如果标志等于第二值,则解析比特流以从参数集的数据单元中获得delta色度QP,并且将用于色度分量的QP设置为等于用于亮度分量的QP与delta色度QP之和;
当参数集被激活用于解码图片或图片区域时,使用用于色度分量的QP对色度分量进行解码。
通过上述方法,减轻了编码器确定色度QP的计算负担,这是因为一旦确定了用于亮度分量的QP,就可以使用默认色度delta QP获得色度QP,至少作为候选色度QP。
在一些实施例中,视频由一个或多个图片的序列组成。比特流,有时也被称为也称为视频基本流,其通过编码器处理视频或图片来生成。比特流也可以是传输流或媒体文件,其是对由视频或图片编码器生成的视频基本流执行系统层处理的输出。解码比特流产生了视频或图片。系统层处理是封装视频基本流。例如,视频基本流作为有效载荷打包到传输流或媒体文件中。系统层处理还包括将传输流或媒体文件封装为用于传输的流或用于存储的文件以作为有效载荷的操作。在系统层处理中生成的数据单元称为系统层数据单元。在系统层处理中封装有效载荷期间附加在系统层数据单元中的信息称为系统层信息,例如,系统层数据单元的头。提取比特流获得了子比特流,该子比特流包含比特流的一部分比特以及通过提取过程对语法元素进行的一个或多个必要修改。解码子比特流产生了视频或图片,其与通过解码比特流获得的视频或图片相比,可具有较低的分辨率和/或较低的帧速率。从子比特流获得的视频或图片也可以是从比特流获得的视频或图片的区域。
实施例1
图2示出了利用本公开方法对视频或图片进行编码的编码器的图。编码器的输入是视频,而输出是比特流。当视频包括图片的序列时,编码器以预设顺序(即,编码顺序)一个接一个地处理图像。编码器顺序根据在编码器的配置文件中指定的预测结构确定。注意,视频中图片的编码顺序(对应于解码器端图片的解码顺序)可以与图片的显示顺序相同或不同。
划分单元201根据编码器的配置来划分输入视频中的图片。通常,可将图片划分为一个或多个最大编码块。最大编码块是在编码处理中最大所允许或配置的块并且通常是正方形区域。可以将图片划分为一个或多个瓦片,并且瓦片可以包含整数个最大编码块,或者非整数个最大编码块。一个选项是瓦片可以包含一个或多个条带。即,瓦片可以进一步被划分为一个或多个条带,并且每个条带可以包含整数个最大编码块,或者非整数个最大编码块。另一选项是条带包含一个或多个瓦片,或者等价地,瓦片组包含一个或多个瓦片。即,图片中以特定顺序(例如光栅扫描顺序)的一个或多个瓦片形成了瓦片组(或等价地条带)。在以下描述中,以“瓦片组”为示例。划分单元201可以被配置为使用固定图样对图片进行划分。例如,划分单元201将图片划分为瓦片组,并且每个瓦片组具有包含一行最大编码块的单个瓦片。另一个示例是划分单元201将图片划分为多个瓦片,并在图片中以光栅扫描顺序将瓦片形成为瓦片组。可替选地,划分单元201也可以采用动态图样将图片划分成瓦片组、瓦片和块。例如,为适应最大传输单元(MTU)大小的限制,划分单元201采用动态瓦片组划分方法,以确保每个瓦片组的编码比特数不超过MTU的限制。
图3是示出了将图片划分成瓦片组的示例的图。划分单元201将具有16乘8最大编码块的图片30(以虚线描绘)划分成8个瓦片300、310、320、330、340、350、360和370。划分单元201将图片30划分成3个瓦片组。瓦片组3000包含瓦片300,瓦片组3100包含瓦片310、320、330、340和350,瓦片组3200包含瓦片360和370。一个或多个瓦片组或瓦片可以被称为图片区域。通常,将图片划分为一个或多个瓦片根据编码器配置文件来进行。划分单元201设置划分参数以指示将图片划分为瓦片的划分方式。例如,划分方式可以是将图片划分为(几乎)相等大小的瓦片。另一示例是划分方式可以指示行和/或列中的瓦片边界的位置,以促进灵活的划分。
划分单元201的输出参数指示图片的划分方式。
预测单元202确定编码块的预测样本。预测单元202包括块划分单元203,运动估计(ME)单元204,运动补偿(MC)单元205,以及帧内预测单元206。预测单元202的输入是由划分单元201输出的最大编码块,以及与最大编码块相关联的属性参数,例如最大编码块在图片中、在瓦片组中和/或在瓦片中的位置。预测单元202使用将最大编码块划分为一个或多个编码块,还可以将其进一步划分为更小的编码块。可以应用一种或多种划分方法,包括四叉树、二元分割和三元分割。预测单元202确定在划分中获得的编码块的预测样本。可选地,预测单元202可以进一步将编码块划分为一个或多个预测块,以确定预测样本。预测单元202采用经解码图片缓冲区(DPB)单元214中的一个或多个图片作为参考以确定编码块的帧间预测样本。预测单元202还可以将由加法器212输出的图片的重构部分用作参考以导出编码块的预测样本。预测单元202例如通过使用一般性的率失真优化(RDO)方法来确定编码块的预测样本以及用于导出预测样本的相关参数,其也是预测单元202的输出参数。
在预测单元202内部,块划分单元203确定编码块的划分。块划分单元203将最大编码块划分为一个或多个编码块,还可以将其进一步划分为更小的编码块。可以应用一种或多种划分方法,包括四叉树、二元分割和三元分割。可选地,块划分单元203可以进一步将编码块划分为一个或多个预测块,以确定预测样本。块划分单元203可以在确定编码块的划分中采用RDO方法。块划分单元203的输出参数包括指示编码块的划分的一个或多个参数。
ME单元204和MC单元205利用来自DPB 214的一个或多个经解码图片作为参考图片,以确定编码块的帧间预测样本。ME单元204构造了包含一个或多个参考图片的一个或多个参考列表,并且为编码块确定参考图片中的一个或多个匹配块。MC单元205使用匹配块中的样本来导出预测样本,并且计算编码块中的原始样本与预测样本之间的差(即,残差)。ME单元204的输出参数指示匹配块的位置,包括参考列表索引、参考索引(refIdx)、及运动矢量(MV)等,其中参考列表索引指示包含匹配块所位于的参考图片的参考列表,参考索引指示包含匹配块的参考列表中的参考图片,并且MV指示在同一坐标中编码块和匹配块的位置之间的相对偏移以表示图片中的像素的位置。MC单元205的输出参数为编码块的帧间预测样本,以及用于构造帧间预测样本的参数,例如,针对匹配块中的样本的加权参数,滤波器类型和用于滤波匹配块中的样本的参数。通常,可以将RDO方法联合地应用于ME单元204和MC单元205,以获取率失真(RD)意义上的最佳匹配块以及两个单元的对应输出参数。
具体地且可选地,ME单元204和MC单元205可以使用包含编码块的当前图片作为参考来获得编码块的帧内预测样本。在本文中,帧内预测意味着仅将包含编码块的图片中的数据用作导出编码块的预测样本的参考。在这种情况下,ME单元204和MC单元205使用当前图片中的重构部分,其中重构部分来自加法器212的输出。一个示例是,编码器分配图片缓冲区以(临时)存储加法器212的输出数据。编码器的另一种方法是保留DPB单元214中的特殊图片缓冲区以保持来自加法器212的数据。
帧内预测单元206使用包含编码块的当前图片的重构部分作为参考来获得编码块的帧内预测样本。帧内预测单元206将编码块的重构相邻样本用作用于导出编码块的帧内预测样本的滤波器的输入,其中该滤波器可以是插值滤波器(例如,用于在使用角度帧内预测时计算预测样本)或低通滤波器(例如,用于计算DC值),或跨分量过滤器以使用已经编码的(颜色)分量导出(颜色)分量的预测值。具体地,帧内预测单元206可以执行搜索操作以在当前图片中的重构部分的范围中获得编码块的匹配块,并且将匹配块中的样本设置为编码块的帧内预测样本。帧内预测单元206调用RDO方法来确定帧内预测模式(即,用于计算编码块的帧内预测样本的方法)和对应的预测样本。除了帧内预测样本之外,帧内预测单元206的输出还包括指示使用中的帧内预测模式的一个或多个参数。
加法器207被配置为计算编码块的原始样本和预测样本之间的差。加法器207的输出是编码块的残差。残差可以表示为N x M的二维矩阵,其中N和M是两个正整数,并且N和M可以是相同或不同的值。
变换单元208将残差作为其输入。变换单元208可以将一种或多种变换方法应用于残差。从信号处理的角度来看,可以由变换矩阵来表示变换方法。可选地,变换单元208可以确定将形状和大小与编码块的形状和大小相同的矩形块(在文本中,正方形块是矩形块的特殊情况)用作变换块以用于残差。可选地,变换单元208可以确定将残差划分为几个矩形块(也可以包括矩形块的宽度或高度是一个样本的特殊情况),并依次对这几个矩形执行变换操作,例如,根据默认顺序(例如,光栅扫描顺序)、预定义顺序(例如,与预测模式或变换方法相对应的顺序)、针对几个候选顺序的所选顺序。变换单元208可以确定对残差执行多次变换。例如,变换单元208首先对残差执行核心变换,然后对完成核心变换之后获得的系数执行二次变换。变换单元208可以利用RDO方法来确定变换参数,该变换参数指示在应用于残差块的变换处理中使用的执行方式,例如,将残差块划分为变换块,变换矩阵,多次变换等。变换参数被包括在变换单元208的输出参数中。变换单元208的输出参数包括:可由二维矩阵表示的残差(例如,变换系数)变换后获得的参数和数据。
量化单元209在变换单元208对残差进行变换之后,对由变换单元208输出的数据进行量化。量化单元209中使用的量化器可以是标量量化器和矢量量化器之一或两者。在大多数视频编码器中,量化单元209采用标量量化器。标量量化器的量化步骤由视频编码器中的量化参数(QP)表示。通常,在编码器和对应的解码器中预设置或预定义QP和量化步骤之间的相同映射。
QP的值(例如,图片级QP和/或块级QP)可以根据应用于编码器的配置文件来设置,或者可以由编码器中的编码器控制单元来确定。例如,编码器控制单元使用速率控制(RC)方法确定图片和/或块的量化步骤,然后根据QP和量化步骤之间的映射将量化步骤转换为QP。通常,颜色分量(即RGB分量、亮度和色度分量)对感知质量的贡献和影响不同,例如,人类视觉系统(HVS)对亮度分量比色度分量更敏感。因此,从颜色分量之间比特分配的角度来看,编码器需要在编码质量和压缩之间得到合理的权衡。为了实现最佳权衡,量化单元209使用不同的QP来量化颜色分量。
量化单元209的示例实施方式是通过调用通用RC方法来确定用于图片或图片区域的QP。量化单元209使用此QP作为用于此图片或此图片区域的亮度分量的QP(即,亮度QP)。在编码器的示例实施方式中,默认色度delta QP可用于快速计算用于此图片或此图片区域的色度分量的QP(即色度QP),以便可以节省在RC方法中确定色度QP的计算负担。色度deltaQP是亮度QP和色度QP的差,其代表了亮度和色度分量之间比特分配的相对权衡。默认色度delta QP可以通过以各种特性的视频芯片进行大量测试和实验而获得,并且最常用的色度delta QP的值可以烧录在编码器(以及对应的解码器)中。
可替换地,由于简档/层级/级别指定了在符合该简档/层级/级别的编码器(以及解码器)中支持的图片的最大尺寸,因此可以为简档/层级/级别的各种组合设置各种默认色度delta QP。例如,用于RGB简档的默认色度delta QP可能与用于YUV简档的另一个默认色度delta QP不同。用于第一级别的默认色度delta QP可能与用于第二级别的另一个默认色度delta QP不同。
使用默认色度QP的情况下,在获得亮度QP之后,编码器使用默认色度QP计算用于此图片或此图片区域的色度分量的第一色度QP。编码器将第一色度QP设置为等于亮度QP和默认色度QP之和。
编码器确定第一色度QP是否用于对色度分量进行编码。例如,编码器遵循被设计用于表示客观或主观质量的质量标准来计算指示值。如果该指示值在允许范围内,则编码器确定出第一色度QP用作用于图片或图片区域的色度QP。否则,编码器导出用于色度分量的第二色度QP。一种方法是评估第一色度QP周围的一个或几个相邻值,然后选择导致在允许范围内的指示值的第一QP,而不是调用大量计算的算法,诸如具有首先确定被分配给色度分量的比特的通用速率控制方法。
用于量化单元209的控制参数是QP,包括用于色度QP的参数。除了直接采用色度QP的值作为用于色度QP的参数外,用于色度QP的参数可以是指示是否使用默认色度QP的标志,并且如果不使用,则色度delta QP的值等于用于亮度分量的QP和色度QP之间的差。量化单元209的输出是以二维矩阵形式表示的一个或多个经量化的变换系数(也称为“级别(Level)”)。
逆量化210对量化209的输出执行缩放操作以获得重构系数。逆变换单元211根据来自变换单元208的变换参数,对来自逆量化单元210的重构系数进行逆变换。逆变换单元211的输出是重构残差。特别地,当编码器确定在块编码中跳过量化时(例如,编码器实施RDO方法以确定是否将量化应用于编码块),编码器通过绕过量化单元209和逆量化单元210而将变换单元208的输出数据引导至逆变换单元211。
加法器212将来自预测单元202的编码块的预测样本和重构残差作为输入,计算编码块的重构样本,并将重构样本放入缓冲区(例如图片缓冲区)中。例如,编码器分配图片缓冲区以(临时)存储加法器212的输出数据。编码器的另一种方法是在DPB 214中保留特殊图片缓冲区以保持来自加法器212的数据。
滤波单元213对解码图片缓冲区中的重构图片样本执行滤波操作,并输出解码图片。滤波单元213可以包括一个滤波器或多个级联滤波器。例如,根据H.265/HEVC标准,滤波单元由两个级联滤波器构成:即,解块滤波器和样本自适应偏移(SAO)滤波器。滤波单元213还包括自适应环路滤波器(ALF)。滤波单元213还可包括神经网络滤波器。当图片中所有编码块的重构样本已经被存储在解码图片缓冲区中时,滤波单元213可以开始对图片的重构样本进行滤波,这可以被称为“图片层滤波”。可选地,滤波单元213的图片层滤波的另一种实现方式(称为“块层滤波”)是:如果在编码图片中的所有连续编码块中未将重构样本作为参考,则开始对图片中编码块的重构样本进行滤波。块层滤波不需要滤波单元213保持滤波操作直到图片的所有重构样本可用为止,从而节省了编码器中线程之间的时间延迟。滤波单元213通过调用RDO方法来确定滤波参数。滤波单元213的输出是图片的经解码样本和滤波参数,该滤波参数包括滤波器的指示信息,滤波器系数,和滤波器控制参数等。
编码器将来自滤波单元213的经解码图片存储在DPB 214中。编码器可以确定应用于DPB 214的一个或多个指令,这些指令用于控制对DPB 214中的图片的操作,例如,将图片的时间长度存储在DPB 214中,以及从DPB 214输出图片等。在一些实施例中,这些指令被取为DPB 214的输出参数。
熵编码单元215对图片的一个或多个编码参数执行二值化和熵编码,以将编码参数的值转换为由二进制符号“0”和“1”组成的码字,并根据规范或标准将码字写成比特流。编码参数可以分类为纹理数据和非纹理。纹理数据是编码块的变换系数,非纹理数据是编码参数中除纹理数据以外的其他数据,包括编码器中单元的输出参数,参数集,头,及补充信息等。熵编码单元215的输出是符合规范或标准的比特流。
熵编码单元215从量化单元209接收输出参数,特别是用于色度QP的参数。特别地,如果用于色度QP的参数是用于图片或图片区域的色度分量的色度QP,则熵编码单元215将色度QP转换为指示是否使用默认色度delta QP的标志,并且,如果不是,则色度delta QP设置为等于亮度QP和色度QP之间的差。如果用于色度QP的参数是上述标志和(如果需要的话)色度delta QP,则熵编码单元215不对用于色度QP的参数调用此类转换操作。
图4A-4C是示出了用于表示比特流中的色度QP的参数的语法结构的示例的图,其中图4A-4C中以粗体显示的语法是由存在于比特流中的一个或多个比特的字符串表示的语法元素,以及u(1)和se(v)是具有与所公开的标准类似H.264/AVC和H.265/HEVC中的功能相同的功能的两种编码方法。
图4A中的语法元素的语义呈现如下。
default_chroma_qp_offset_flag等于1指定在比特流中不存在cb_qp_offset和cr_qp_offset。default_chroma_qp_offset_flag等于0指定在比特流中存在cb_qp_offset和cr_qp_offset。
cb_qp_offset和cr_qp_offset分别指定用于导出用于Cb和Cr分量的色度QP的亮度QP的偏移。cb_qp_offset和cr_qp_offset的值将在-12到+12的范围内(包括端值)。当未呈现时,cb_qp_offset的值被推断为第一默认值,并且cr_qp_offset的值被推断为第二默认值。
第一默认值和第二默认值可以是相同的值或两个不同的值。
图4B中的语法元素的语义呈现如下。使用这种语法结构,编码器具有为不同的色度分量单独设置默认色度QP的能力。
default_cb_qp_offset_flag等于1指定在比特流中不存在cb_qp_offset。default_chroma_qp_offset_flag等于0指定在比特流中存在cb_qp_offset。
cb_qp_offset指定用于导出用于Cb分量的色度QP的亮度QP的偏移。cb_qp_offset的值应在-12到+12的范围内(包括端值)。当未呈现时,cb_qp_offset的值被推断为第一默认值。
default_cr_qp_offset_flag等于1指定在比特流中不存在cr_qp_offset。default_chroma_qp_offset_flag等于0指定在比特流中存在cr_qp_offset。
cr_qp_offset指定用于导出用于Cb分量的色度QP的亮度QP的偏移。cr_qp_offset的值应在-12到+12的范围内(包括端值)。当未呈现时,cr_qp_offset的值被推断为第一默认值。
第一默认值和第二默认值可以是相同的值或两个不同的值。
图4C中的语法元素的语义呈现如下。使用这种语法结构,编码器具有为不同的色度分量单独设置默认色度QP的能力,同时保持为不同的色度分量同时开启默认QP的能力。
default_chroma_qp_offset_flag等于1指定在比特流中不存在default_cb_qp_offset_flag、cb_qp_offset、default_cr_qp_offset_flag和cr_qp_offset。default_chroma_qp_offset_flag等于0指定在比特流中存在default_cb_qp_offset_flag、cb_qp_offset、default_cr_qp_offset_flag和cr_qp_offset。
default_cb_qp_offset_flag等于1指定在比特流中不存在cb_qp_offset。default_chroma_qp_offset_flag等于0指定在比特流中存在cb_qp_offset。当未呈现时,default_cb_qp_offset_flag的值被推断为1。
cb_qp_offset指定用于导出用于Cb分量的色度QP的亮度QP的偏移。cb_qp_offset的值可以在-12到+12的范围内(包括端值)。当未存在时,cb_qp_offset的值被推断为第一默认值。
default_cr_qp_offset_flag等于1指定在比特流中不存在cr_qp_offset。default_chroma_qp_offset_flag等于0指定在比特流中存在cr_qp_offset。当未呈现时,default_cr_qp_offset_flag的值被推断为1。
cr_qp_offset指定用于导出用于Cb分量的色度QP的亮度QP的偏移。cr_qp_offset的值应在-12到+12的范围内(包括端值)。当未呈现时,cr_qp_offset的值被推断为第一默认值。
第一默认值和第二默认值可以是相同的值或两个不同的值。
在一个示例中,熵编码单元215在参数集的数据单元中对用于色度QP的参数进行编码。参数集被应用于对图片或图片区域(例如,瓦片组)进行编码中,例如序列参数集(SPS)、图片参数集(PPS)、自适应参数集(APS)。熵编码单元215在瓦片组的头中设置参数集标识符的值等于参数集的标识符。这样,参数集将在解码瓦片组时被激活。
在另一示例中,熵编码单元215在包含瓦片组的头的数据单元中对用于色度QP的参数进行编码。以此方式,如果用于色度QP的另一参数集可用在解码瓦片组中激活的参数集中,则用于瓦片组的头中的色度QP的参数覆盖(override)在解码瓦片组中的参数集中的色度QP的参数。
实施例2
图5是示出了解码器利用本文档的方法对由上述实施例1中的编码器生成的比特流进行解码的图。解码器的输入为比特流,并且解码器的输出为通过对比特流进行解码而获取经解码的视频或图片。
解码器中的解析单元501对输入比特流进行解析。解析单元501使用标准中指定的熵解码方法和二值化方法将由一个或多个二进制符号(即“0”和“1”)组成的比特流中的每个码字转换为对应参数的数值。解析单元501还根据一个或多个可用参数导出参数值。例如,当比特流中具有有标志,其指示解码块是图片中的第一个解码块时,解析单元501将地址参数(其指示图片区域的第一个解码块的地址)设置为0。
解析单元501解析比特流中的一个或多个数据单元,例如参数集数据单元、瓦片组数据单元以获得用于色度QP的参数,包括指示是否使用默认色度delta QP的标志,并且,如果不是,色度delta QP是亮度QP和色度QP之间的差。
图4A-4C是示出了用于表示用于色度QP的参数的语法结构的示例的图,其中图4A-4C中粗体的语法是由比特流中存在的一个或多个比特的字符串所表示的语法元素,u(1)和se(v)是两种解码方法,其功能与H.264/AVC和H.265/HEVC等公开标准中的功能相同。
图4A、4B和4C是示出了用于由解析单元501解析比特流中用于色度QP的参数的语法结构的示例的图。图4A、4B和4C的语法结构可以被单独解析并从比特流中的一个或多个数据单元获得。可选地,数据单元可以是参数集数据单元。参数集应用于对图片或图片区域(例如瓦片组)进行解码,例如序列参数集(SPS)、图片参数集(PPS)、自适应参数集(APS)。解析单元501从瓦片组的头中获取参数集标识符的标识符值,激活其标识符等于标识符值的参数集,并从激活的参数集中获得色度QP。可选地,数据单元可以是包含瓦片组的头的数据单元。此外,如果解析单元501首先从参数集然后从瓦片组的头获得用于色度QP的参数,则解析单元501将从瓦片组获得的色度QP覆盖从参数集中获得的色度QP。解码器在解码色度分量时使用该色度QP。
图4A中的语法元素的语义呈现如下。
default_chroma_qp_offset_flag等于1指定在比特流中不存在cb_qp_offset和cr_qp_offset。default_chroma_qp_offset_flag等于0指定在比特流中存在cb_qp_offset和cr_qp_offset。
cb_qp_offset和cr_qp_offset分别指定用于导出Cb和Cr分量的色度QP的亮度QP的偏移。cb_qp_offset和cr_qp_offset的值可以在-12到+12的范围内(包括端值)。当未呈现时,cb_qp_offset的值被推断为第一默认值,并且cr_qp_offset的值被推断为第二默认值。
第一默认值和第二默认值可以是相同的值或两个不同的值。
图4B中的语法元素的语义呈现如下。使用这种语法结构,编码器具有为不同的色度分量分别设置默认色度QP的能力。
default_cb_qp_offset_flag等于1指定在比特流中不存在cb_qp_offset。default_chroma_qp_offset_flag等于0指定在比特流中存在cb_qp_offset。
cb_qp_offset指定用于导出用于Cb分量的色度QP的亮度QP的偏移。cb_qp_offset的值应在-12到+12的范围内(包括端值)。当未呈现时,cb_qp_offset的值被推断为第一默认值。
default_cr_qp_offset_flag等于1指定在比特流中不存在cr_qp_offset。default_chroma_qp_offset_flag等于0指定在比特流中存在cr_qp_offset。
cr_qp_offset指定用于导出用于Cb分量的色度QP的亮度QP的偏移。cr_qp_offset的值应在-12到+12的范围内(包括端值)。当未呈现时,cr_qp_offset的值被推断为第一默认值。
第一默认值和第二默认值可以是相同的值或两个不同的值。
图4C中的语法元素的语义呈现如下。使用这种语法结构,编码器具有为不同的色度分量单独设置默认色度QP的能力,同时保持为不同的色度分量同时开启默认QP的能力。
default_chroma_qp_offset_flag等于1指定在比特流中不存在default_cb_qp_offset_flag、cb_qp_offset、default_cr_qp_offset_flag和cr_qp_offset。default_chroma_qp_offset_flag等于0指定在比特流中存在default_cb_qp_offset_flag、cb_qp_offset、default_cr_qp_offset_flag和cr_qp_offset。
default_cb_qp_offset_flag等于1指定在比特流中不存在cb_qp_offset。default_chroma_qp_offset_flag等于0指定在比特流中存在cb_qp_offset。当未呈现时,default_cb_qp_offset_flag的值被推断为1。
cb_qp_offset指定用于导出用于Cb分量的色度QP的亮度QP的偏移。cb_qp_offset的值应在-12到+12的范围内(包括端值)。当未呈现时,cb_qp_offset的值被推断为第一默认值。
default_cr_qp_offset_flag等于1指定在比特流中不存在cr_qp_offset。default_chroma_qp_offset_flag等于0指定在比特流中存在cr_qp_offset。当未呈现时,default_cr_qp_offset_flag的值被推断为1。
cr_qp_offset指定用于导出用于Cb分量的色度QP的亮度QP的偏移。cr_qp_offset的值应在-12到+12的范围内(包括端值)。当未呈现时,cr_qp_offset的值被推断为第一默认值。
第一默认值和第二默认值可以是相同的值或两个不同的值。
解析单元501通过以下步骤获得色度QP。
步骤1:解析单元501对输入比特流进行解析,以从比特流中的数据单元确定用于图片或图片区域的亮度分量的QP。数据单元可以是瓦片组的头和/或一个或多个参数集。解析单元501使用与H.266/VVC WD相同的方法计算亮度QP(记为QpY)。
步骤2:解析单元501从数据单元中获取标志。该标志指示是否使用默认色度deltaQP来导出用于图片或图片区域的色度分量的色度QP。
步骤3:解析单元501检查标志是否等于第一值(例如“1”),如果是,则解析单元501将色度QP设置为等于QpY和默认色度delta QP(表示为“defaultChromaDeltaQP”)之和并由标志指示。否则,如果标志等于第二值(例如“0”),则解析单元501解析比特流以从数据单元获得delta色度QP,并将用于色度分量的QP设置为等于用于亮度分量的QP和delta色度QP之和。
如果使用图4A中的语法元素,则解析单元501针对Cb和Cr分量将标志的值设置为等于default_chroma_qp_offset_flag的值。当default_chroma_qp_offset_flag等于1时,对于Cb分量,解析单元501将defaultChromaDeltaQP设置为等于如cb_qp_offset的语义中指定的第一默认值,并将用于Cb分量的色度QP设置为等于QpY+defaultChromaDelta QP;对于Cr分量,解析单元501将defaultChromaDelta QP设置为等于如cr_qp_offset语义中指定的第二默认值,并将用于Cb分量的色度QP设置为等于QpY+defaultChromaDelta QP。当default_chroma_qp_offset_flag等于0时,解析单元501从数据单元中获取cb_qp_offset的值,并将用于Cb分量的色度delta QP设置为等于QpY+cb_qp_offset;解析单元501从数据单元中获取cr_qp_offset的值并将用于Cr分量的色度delta QP设置为等于QpY+cr_qp_offset。
如果使用图4B中的语法元素,则对于Cb分量,解析单元501将标志设置为等于default_cb_qp_offset_flag的值。当default_cb_qp_offset_flag等于1时,解析单元501将defaultChromaDeltaQP设置为等于如cb_qp_offset的语义中指定的第一默认值,并将用于Cb分量的色度QP设置为等于QpY+defaultChromaDeltaQP。当default_cb_qp_offset_flag等于0时,解析单元501从数据单元中获取cb_qp_offset的值,并将用于Cb分量的色度delta QP设置为等于QpY+cb_qp_offset。对于Cr分量,解析单元501将标志设置为等于default_cr_qp_offset_flag的值。当default_cr_qp_offset_flag等于1时,解析单元501将defaultChromaDeltaQP设置为等于如cr_qp_offset的语义中指定的第二默认值,并将用于Cb分量的色度QP设置为等于QpY+defaultChromaDeltaQP。当default_cr_qp_offset_flag等于0时,解析单元501从数据单元中获取cr_qp_offset的值,并将用于Cr分量的色度delta QP设置为等于QpY+cr_qp_offset。
如果使用图4C中的语法元素,对于Cr分量,解析单元501将标志设置为等于(default_chroma_qp_offset_flag&&default_cb_qp_offset_flag)的值。当标志等于1时,解析单元501将defaultChromaDeltaQP设置为等于如cb_qp_offset语义中指定的第一默认值,并将用于Cb分量的色度QP设置为等于QpY+defaultChromaDelta QP。当标志等于0时,解析单元501从数据单元获取cb_qp_offset的值,并将用于Cb分量的色度delta QP设置为等于QpY+cb_qp_offset。对于Cr分量,解析单元501将标志设置为等于(default_chroma_qp_offset_flag&&default_cr_qp_offset_flag)的值。当标志等于1时,解析单元501将defaultChromaDeltaQP设置为等于如cr_qp_offset的语义中指定的第二默认值,并将用于Cb分量的色度QP设置为等于QpY+defaultChromaDeltaQP。当标志等于0时,解析单元501从数据单元中获取cr_qp_offset的值,并将用于Cr分量的色度delta QP设置为等于QpY+cr_qp_offset。
对应于编码器的实施方式,默认色度delta QP可以通过以各种特性的视频芯片进行大量的测试和实验获得,并且最常用的色度delta QP的值可以烧录在解码器(以及作为对应的编码器)中。即,默认色度delta QP,即cb_qp_offset的第一默认值和cr_qp_offset的第二默认值,可以是编解码器中预设的固定值。
可替选地,由于简档/层级/级别指定了在符合该简档/层级/级别的解码器中支持的图片的最大尺寸,因此可以为该简档/层级/级别的各种组合设置各种默认色度deltaQP。例如,用于RGB简档的默认色度delta QP可能与用于YUV简档的另一个默认色度deltaQP不同。第一级别的默认色度delta QP可以不同于第二级别的另一个默认色度delta QP。解析单元501根据输入比特流中指定的简档/层级/级别信息,得到cb_qp_offset的第一默认值和cr_qp_offset的第二默认值。
以Cb分量为示例。步骤3的另一种实施方式是解析单元501根据标志确定cb_qp_offset的值。当标志等于第一值时,解析单元501将cb_qp_offset设置为第一默认值;否则,解析单元501从数据单元中获取cb_qp_offset的值。最后,解析单元501将用于Cb分量的色度QP设置为等于QpY+cb_qp_offset。解析单元501也应用与上述相同的步骤来确定用于Cr分量的色度QP。
解析单元501将上述色度QP值传递给解码器中的其他单元并用于解码对应的色度分量。
解析单元501可以将用于导出解码块的预测样本的一个或多个预测参数传递给预测单元502。在本文中,预测参数可以包括上述编码器中的划分单元201和预测单元202的输出参数。
解析单元501可以将用于重构解码块的残差的一个或多个残差参数传递给缩放单元505和变换单元506。在本文中,该残差参数可以包括变换单元208和量化单元209的输出参数以及一个或多个经量化参数(例如,“级别”),其由量化单元209在上述编码器中输出。
解析单元501将滤波参数传递给滤波单元508,以对图片中的重构样本进行滤波(例如,环路滤波)。
预测单元502可以根据预测参数来导出解码块的预测样本。预测单元502由MC单元503和帧内预测单元504构成。预测单元502的输入还可以包括从加法器507输出的当前解码图片的重构部分(未被滤波单元508处理)以及DPB509中的一个或多个经解码图片。
当预测参数指示帧间预测模式被用于导出解码块的预测样本时,预测单元502采用与前述编码器中的ME单元204相同的方法来构造一个或多个参考图片列表。参考列表包含来自DPB 509的一个或多个参考图片。MC单元503根据参考列表、参考索引和预测参数中的MV的指示来确定用于解码块的一个或多个匹配块,并且使用与前述编码器中的MC单元205中相同的方法来获得解码块的帧间预测样本。预测单元502输出帧间预测样本作为解码块的预测样本。
具体地且可选地,MC单元503可以使用包含解码块的当前解码图片作为参考来获得解码块的帧内预测样本。在本文档中,帧内预测意味着仅将包含编码块的图片中的数据用作导出编码块的预测样本的参考。在这种情况下,MC单元503使用当前图片中的重构部分,其中,重构部分来自加法器507的输出,并且不被滤波单元508处理。例如,解码器分配图片缓冲区以(临时)存储加法器507的输出数据。解码器的另一种方法是预留DPB 509中的特殊图片缓冲区以保持来自加法器507的数据。
当预测参数指示帧内预测模式用于导出解码块的预测样本时,预测单元502采用与前述编码器中的帧内预测单元206相同的方法来从解码块的重构的相邻样本中确定帧内预测单元504的参考样本。帧内预测单元504获得帧内预测模式(即,DC模式,平面模式或角度预测模式),并且在帧内预测模式的指定处理之后,使用参考样本来导出解码块的帧内预测样本。注意,在前述编码器(例如,帧内预测单元206)和解码器(例如,帧内预测单元504)中实现了帧内预测模式的相同导出处理。具体地,如果预测参数指示当前解码图片(包含解码块)中针对解码块的匹配块(包括其位置),则帧内预测单元504使用匹配块中的样本来导出解码块的帧内预测样本。例如,帧内预测单元504将帧内预测样本设置为等于匹配块中的样本。预测单元502将解码块的预测样本设置为等于由帧内预测单元504输出的帧内预测样本。
解码器将QP(包括亮度QP和色度QP)和经量化系数传递给缩放单元505,以用于处理逆量化以获取重构系数作为输出。解码器将来自缩放单元505的重构系数和残差参数中的变换参数(即,前述编码器中的变换单元208的输出中的变换参数)馈送到变换单元506中。具体地,如果残差参数指示在对块进行解码时跳过缩放,则解码器通过绕过缩放单元505来将残差参数中的系数指引到变换单元506。
变换单元506在标准中指定的变换处理后对输入系数执行变换操作。变换单元506中使用的变换矩阵与前述编码器中的逆变换单元211中使用的变换矩阵相同。变换单元506的输出是解码块的重构残差。
通常,由于在标准中仅指定解码处理,因此从视频编码标准的角度出发,将解码处理中的处理和相关矩阵指定为标准文本中的“变换处理”和“变换矩阵”。因此,在本文档中,关于解编码器的描述将实施标准文本中指定的变换处理的单元命名为“变换单元”,以符合标准。然而,基于将解码处理视为编码的逆处理的考虑,该单元始终可以命名为“逆变换单元”。
加法器507将变换单元506的输出中的重构残差和预测单元502的输出中的预测样本作为输入数据,计算解码块的重构样本。加法器507将重构样本存储到图片缓冲区中。例如,解码器分配图片缓冲区以(临时)存储加法器507的输出数据。解码器的另一种方法是在DPB 509中预留特殊图片缓冲区,以保持来自加法器507的数据。
解码器将滤波参数从解析单元501传递到滤波单元508。用于滤波单元508的滤波参数与前述编码器中的滤波单元213的输出中的滤波参数相同。滤波参数包括要使用的一个或多个滤波器的指示信息、滤波器系数和滤波控制参数。滤波单元508使用滤波参数对存储在解码图片缓冲区中的图片的重构样本执行滤波处理,并输出经解码图片。滤波单元508可以由一个滤波器或多个级联滤波器组成。例如,根据H.265/HEVC标准,滤波单元由两个级联滤波器组成:即,解块滤波器和样本自适应偏移(SAO)滤波器。滤波单元508可以包括自适应环路滤波器(ALF)。滤波单元508还可包括神经网络滤波器。当图片中的所有编码块的重构样本已经被存储在解码图片缓冲区中时,滤波单元508可以开始对图片的重构样本进行滤波,这可以被称为“图片层滤波”。可选地,用于滤波单元508的图片层滤波的替代实施方式(称为“块层滤波”)是:如果在对图片中的所有连续编码块进行解码时未将重构样本用作参考,则开始对图片中的编码块的重构样本进行滤波。块层滤波不需要滤波单元508来保持滤波操作直到图片的所有重构样本可用为止,从而节省了解码器中线程之间的时间延迟。
解码器将由滤波单元508输出的解码图片存储在DPB 509中。此外,解码器可以根据由解析单元501输出的一个或多个指令,对DPB 509中的图片执行一个或多个控制操作,例如,图片的时间长度存储在DPB 509中,和从DPB 509输出图片,等等。
实施例3
图6是示出了至少包含如图2所示的示例视频编码器或图片编码器的第一示例设备的图。
获取单元601捕获视频和图片。获取单元601可以配备有一个或多个相机以拍摄自然场景的视频或图片。可选地,获取单元601可以以用于得到深度视频或深度图片的相机来实现。可选地,获取单元601可以包括红外相机的组件。可选地,获取单元601可以配置有遥感相机。获取单元601还可以是通过使用放射线扫描对象来生成视频或图片的设备或装置。
可选地,获取单元601可以对视频或图片执行预处理,例如,自动白平衡、自动聚焦、自动曝光、背光补偿、锐化、去噪、拼接、上采样/下采样、帧率转换、虚拟视图合成等)。
获取单元601还可从另一设备或处理单元接收视频或图片。例如,获取单元601可以是代码转换器中的组件单元。代码转换器将一个或多个经解码(或部分经解码)图片馈送到获取单元601。另一示例是,获取单元601从另一设备,经由与该设备的数据链路获取视频或图片。
注意,除了视频和图片之外,获取单元601还可以用于捕获其他媒体信息,例如,音频信号。获取单元601还可以接收人工信息,例如,字符、文本,以及计算机生成的视频或图片等。
编码器602是图2所示的示例编码器或图9中所示的源设备的实施方式。编码器602的输入为由获取单元601输出的视频或图片。编码器602对视频或图片进行编码,并输出所生成的视频或图片比特流。
存储/发送单元603从编码器602接收视频或图片比特流,并且对该比特流执行系统层处理。例如,存储/发送单元603根据传输标准和媒体文件格式(例如,MPEG-2TS、ISOBMFF、DASH、MMT等)对比特流进行封装。存储/发送单元603将封装后获得的传输流或媒体文件存储在第一示例设备的存储器或磁盘中,或者经由有线或无线网络发送该传输流或媒体文件。
注意,除了来自编码器602的视频或图片比特流之外,存储/发送单元603的输入还可以包括音频、文本、图像,和图形等。存储/发送单元603通过封装这样的不同类型的媒体比特流来生成传输或媒体文件。
在本实施例中描述的第一示例设备可以是能够在视频通信的应用中生成或处理视频(或图片)比特流的设备(例如,移动电话、计算机、媒体服务器、便携式移动终端、数码相机、广播设备、内容分发网络设备(CDN)、监控摄像头,视频会议设备等)。
实施例4
图7是示出了至少包含如图5中所示的示例视频解码器或图片解码器的第二示例设备的图。
接收单元701通过从有线或无线网络获取比特流、通过读取电子设备中的存储器或磁盘、或通过经由数据链路从其他设备获取数据来接收视频或图片比特流。
接收单元701的输入还可包括包含视频或图片比特流的传输流或媒体文件。接收单元701根据传输或媒体文件格式的规范从传输流或媒体文件中提取视频或图片比特流。
接收单元701将视频或图片比特流输出并传递给解码器702。注意,除了视频或图片比特流,接收单元701的输出还可以包括音频比特流、字符、文本、图像、图形等。接收单元701在第二示例设备中输出至对应处理单元。例如,接收单元701将输出音频比特流传递给该设备中的音频解码器。
解码器702是图5所示的示例解码器的实施方式。编码器702的输入为由接收单元701输出的视频或图片比特流。解码器702对视频或图片比特流进行解码,并输出经解码的视频或图片。
呈现单元703从解码器702接收经解码的视频或图片。呈现单元703将经解码的视频或图片呈现给观看者。呈现单元703可以是第二示例设备的组件,例如,屏幕。呈现单元703也可以是与第二示例设备分离的、与第二示例设备有数据链路的设备,例如投影仪、监视器、电视机等。可选地,呈现703在将经解码的视频或图片呈现给观看者之前对其进行后处理,例如,自动白平衡、自动聚焦、自动曝光、背光补偿、锐化、去噪、拼接、上采样/下采样、帧率转换,虚拟视图合成等。
注意,除了经解码的视频或图片之外,呈现单元703的输入可以是来自第二示例设备的一个或多个单元的其他媒体数据,例如,音频,字符,文本,图像,图形等。呈现单元703的输入还可以包括人造数据,例如,本地教师在幻灯片上绘制的线条和标记,以引起远程教育应用中的注意。呈现单元703将不同类型的媒体包括在一起,然后将作品呈现给观看者。
在本实施例中描述的第二示例设备可以是能够在视频通信的应用中解码或处理视频(或图片)比特流的设备,例如,移动电话,计算机,机顶盒,电视机,HMD,监视器,媒体服务器,便携式移动终端,数码相机,广播设备,内容分发网络设备(CDN),监视器件,视频会议设备等。
实施例5
图8是包含图6所示的第一示例设备和图7所示的第二示例设备的电子系统的图。
服务设备801是图6中的第一示例设备。
存储介质/传输网络802可以包括设备或电子系统的内部存储资源,可经由数据链路访问的外部存储资源,和/或由有线和/或无线网络组成的数据传输网络。存储介质/传输网络802为服务设备801中的存储/发送单元603提供存储资源或数据传输网络。
目的地设备803是图7中的第二示例设备。目的地设备803中的接收单元701从存储介质/传输网络802接收视频或图片比特流,包含视频或图片比特流的传输流或包含视频或图片比特流的媒体文件。
在本实施例中描述的电子系统可以是能够在视频通信的应用中生成、存储或传输、以及解码视频(或图片)比特流的设备或系统(例如,移动电话,计算机,IPTV系统,OTT系统,互联网上的多媒体系统,数字电视广播系统,视频监视系统,便携式移动终端,数码相机,和视频会议系统等)。
在一个实施例中,本实施例中的具体示例可以参考上述实施例和示例性实施方式中描述的示例,并且在本实施例中将不再赘述。
显然,本领域技术人员应该知道,本文档的每个模块或每个行为可以由一个通用的计算装置来实现,并且这些模块或行为可以集中在单个计算装置上,或者可以分布在由多个计算装置形成的网络上,并且可以可选地由供计算装置执行的程序代码来实现,使得这些模块或行为可以存储在存储装置中以供计算装置执行,所显示或描述的行为可能在某些情况下以不同于这里所显示或描述的顺序执行,或者可以分别形成单个集成电路模块,或者其中的多个模块或行为可以形成单个集成电路模块来实现。因此,所公开的技术不限于任何特定的硬件和软件组合。
图1A示出了处理视觉信息的示例方法100的流程图。该方法可以由使用方法100从压缩比特流表示中生成视频或图片帧的解码器装置来实施。
方法100包括解析(102)比特流以从被包括在比特流中的参数集的数据单元确定用于视觉信息的区域的亮度分量的量化参数(QP),从参数集的数据单元确定(104)标志,在标志等于第一值的情况下,将用于该区域的色度分量的QP确定(106)作为用于亮度分量的QP和由标志指示的默认色度delta QP的第一函数,在标志等于第二值的情况下,通过以下方法确定(108)用于该区域的色度分量的QP:(a)从数据单元获得(110)delta色度QP,以及(b)将用于色度分量的QP确定(112)作为用于亮度分量的QP和delta色度QP的第二函数,并且在参数集被激活用于对区域进行解码的情况下,使用用于色度分量的QP解码(114)该色度分量。
如对应于106和108的方框的虚线所指示的,应当理解的是,在解析(102)的操作期间,视频解码装置对于给定的视频区域,在当视频解码装置解析以获得标志,标志的值可以触发步骤106(标志等于第一值)或步骤108(标志等于不同于第一值的第二值),但不能同时触发这两者。在一些情况下,也可能根本不包括用于区域的标志(例如,在不使用本文档中描述的跨分量QP编码的优势的情况下对其进行编码)。因此,方法100可以通过实施步骤106或步骤108来执行,但对于正被解码的视频的相同区域,不能同时执行这两者。
图1B示出了示例方法150的流程图。方法150包括确定(152)用于视觉信息的区域的亮度分量的QP,按照以下方式用信号发送(154)用于视觉信息的编码表示中的色度分量的QP:在用于色度分量的QP等于用于色度分量的默认QP和用于亮度分量的QP的第一函数的值的情况下,在编码表示中用(156)标志位的第一值指示默认色度delta QP要被用于解码,并将该标志编码在编码表示的参数集的数据单元中,否则在编码表示中,用(158)标志位的第二值来指示,并指示数据单元中的值以指示delta色度QP,使得用于色度分量的QP是亮度分量和delta色度QP的第二函数。
应当理解的是,实施方法150的视频编码装置可以实施用于编码视频区域的步骤156或步骤158,但对相同视频区域不能实施两者。在一些情况下,不使用本文档中描述的跨分量QP信令技术来执行区域编码的视频编码器可能无法实现步骤156和158两者。因此,如图1B中的虚线边框所指示,步骤156和158可以作为对视频区域进行编码的两个不同的、互斥的选项来实现。
在一些实施例中,在方法100、150中,第一函数是加法函数。因此,delta色度QP可以与亮度QP相加以获得色度QP值。第一函数的其他可能性包括对delta色度QP进行上下文编码并使用上下文信息(例如,相邻块)来获得色度QP。在一些实施例中,第一函数可以基于查找表或delta色度QP值到色度QP值的映射。图4A-4C示出了方法100、150中描述的技术的示例实施例。
类似于第一函数,在各种实施例中,第二函数也可以是求和或加法函数,或者可以基于上下文或基于表的亮度QP和delta色度QP的值的表示。
如前所述,方法100、150中使用的区域可以对应于图片或视频图片的大小,或者可以是图片的较小部分。
在一些实施例中,在方法100、150中,由标志指示的默认色度delta QP是基于映射确定的,并且其中映射在比特流中保持不变。可替选地,在图片、瓦片或序列等级,映射可通过比特流中的信令来改变。
方法100、150可以被实施为(例如,使用预测编码)对单个图片或图像或图片序列进行编码(或解码)。
关于图2描述的,编码器可以在视频编码期间实施方法150。例如,图3中描述的技术可用于将视频划分为不同的区域(例如,瓦片组)。量化单元209可以确定亮度和色度分量并且可以包括在比特流中的对应的指示,如关于方法150所描述的。一些示例语法结构在图4A-4C中示出。
关于图5描述的解码器可以实施方法100。例如,解析单元可以对指示色度QP的标志进行解析。图4A-4C示出了可由解码器解析的比特流语法的各种示例。
在一些实施例中,视频编码器装置可以包括处理器,该处理器被配置为实施在本文档中描述的比特流生成或编码技术。
在一些实施例中,视频解码器装置可以包括被配置为实现本文档中描述的比特流解码的处理器。解码器设备可以进一步处理经解码的视觉信息以生成可显示图像(或图像序列)。
本文描述的各种装置实施例仅用于说明目的,并不旨在限制本文档中描述的编码和解码操作的实施方式。
工业适用性
从以上描述可以知道,一旦确定了用于亮度分量的QP,就可以使用默认色度deltaQP获得色度QP,至少作为候选色度QP。通过上述步骤,减轻了编码器确定色度QP的计算负担。因此,现有方法的缺点通过使用前述编码器生成比特流,并且使用前述解码器对比特流进行解码来解决。
图8示出了可用于实现本文档中描述的编码器侧或解码器侧技术的示例装置800。装置800包括处理器802,其可被配置为执行编码器侧或解码器侧技术或两者。装置800还可包括用于存储处理器可执行指令和用于存储视频比特流和/或显示数据的存储器(未示出)。装置800可以包括视频处理电路(未示出),诸如变换电路、算术编码/解码电路、基于查找表的数据编码技术等。视频处理电路可以部分地被包含在处理器中和/或部分地被包含在诸如图形处理器、现场可编程门阵列(FPGA)等的其他专用电路中。
应当理解的是,本文档提供了各种技术,可由视频或图像编码器和解码器实施例用来基于来自亮度量化参数的信息对色度量化参数进行差别性编码。在一个示例方面,所公开的技术可用于在编码视觉信息的视觉质量与用于色度分量编码的比特数之间进行权衡。在一个有利方面,在色度和亮度分量之间权衡比特精度的决定可以在子图片边界处执行,并根据色差QP值以信号发送。
本文档中描述的公开的和其他实施例、模块和功能操作可以以数字电子电路或计算机软件、固件或硬件来实现,包括本文档中公开的结构及其等同结构,或以其中一个或多个的组合。所公开的实施例和其他实施例可以被实现为一个或多个计算机程序产品,即,在计算机可读介质上编码的计算机程序指令的一个或多个模块,以由数据处理设备执行或控制数据处理设备的操作。所述计算机可读介质可以是机器可读存储设备,机器可读存储基板,存储设备,影响机器可读传播信号的物质组成或它们中的一个或多个的组合。术语“数据处理设备”涵盖用于处理数据的所有设备,装置和机器,例如包括可编程处理器,计算机或多个处理器或计算机。除了硬件之外,该设备还可以包括为所讨论的计算机程序创建执行环境的代码,例如,构成处理器固件,协议栈,数据库管理系统,操作系统或其一项或多项的组合的代码。传播的信号是人工产生的信号,例如机器产生的电,光或电磁信号,其被产生以对信息进行编码以传输到合适的接收器设备。
计算机程序(也称为程序,软件,软件应用程序,脚本或代码)可以以任何形式的编程语言(包括编译或解释语言)编写,并且可以以任何形式进行部署,包括独立程序或适合在计算环境中使用的模块,组件,子例程或其他单元。计算机程序不一定与文件系统中的文件相对应。程序可以存储在保存其他程序或数据的文件的一部分中(例如,存储在标记语言文档中的一个或多个脚本),专用于所讨论程序的单个文件或多个协调文件(例如,存储一个或多个模块、子程序或部分代码的文件)。可以将计算机程序部署为在一台计算机上执行,或者在位于一个站点上或分布在多个站点上并通过通信网络互连的多台计算机上执行。
本文档中描述的过程和逻辑流程可以由执行一个或多个计算机程序以通过对输入数据进行操作并生成输出来执行功能的一个或多个可编程处理器来执行。处理和逻辑流程也可以由专用逻辑电路执行,并且设备也可以实现为专用逻辑电路,例如,FPGA(现场可编程门阵列)或ASIC(专用集成电路)。
例如,适合于执行计算机程序的处理器包括通用和专用微处理器,以及任何种类的数字计算机的任何一个或多个处理器。通常,处理器将从只读存储器或随机存取存储器或两者接收指令和数据。计算机的基本元件是用于执行指令的处理器和用于存储指令和数据的一个或多个存储设备。通常,计算机还将包括或可操作地耦合以从一个或多个用于存储数据的大容量存储设备(例如,磁,磁光盘或光盘)接收数据或将数据传输到一个或多个大容量存储设备或这两者。但是,计算机不必具有此类设备。适用于存储计算机程序指令和数据的计算机可读介质包括所有形式的非易失性存储器,介质和存储设备,包括例如半导体存储设备,例如EPROM,EEPROM和闪存设备;磁盘,例如内部硬盘或可移动磁盘;磁光盘;以及CD ROM和DVD-ROM磁盘。处理器和存储器可以由专用逻辑电路补充或并入专用逻辑电路中。
尽管该专利文件包含许多细节,但是这些细节不应解释为对任何发明或可要求保护的范围的限制,而应解释为对特定发明的特定实施例可能特定的特征的描述。在单独的实施例的上下文中在该专利文件中描述的某些特征也可以在单个实施例中组合实现。相反,在单个实施例的上下文中描述的各种特征也可以分别在多个实施例中或以任何合适的子组合来实现。而且,尽管以上可以将特征描述为以某些组合起作用并且甚至最初如此声称,但是在某些情况下可以从组合中切除所要求保护的组合中的一个或多个特征,并且所要求保护的组合可以针对子组合或子组合的变化。
类似地,尽管在附图中以特定顺序描绘了操作,但是这不应被理解为要求以所示的特定顺序或以连续的顺序执行这样的操作,或者执行所有示出的操作以实现期望的效果。此外,在该专利文献中描述的实施例中的各种系统组件的分离不应被理解为在所有实施例中都需要这种分离。
仅描述了一些实施方式和示例,并且可以基于本专利文献中描述和示出的内容进行其他实施方式、增强和变化。

Claims (19)

1.一种处理视觉信息的方法,包括:
解析比特流以从被包含在所述比特流中的参数集的数据单元中确定用于所述视觉信息的区域的亮度分量的量化参数(QP);
从所述参数集的数据单元中确定标志;
在所述标志等于第一值的情况下,将用于所述区域的色度分量的QP确定作为用于亮度分量的QP和由所述标志指示的默认色度delta QP的第一函数;
在所述标志等于不同于第一值的第二值的情况下,通过以下步骤确定用于所述区域的色度分量的QP:
(a)从所述数据单元获得delta色度QP;以及
(b)将用于所述色度分量的QP确定作为用于所述亮度分量的QP和所述delta色度QP的第二函数;并且
在所述参数集被激活用于解码所述区域的情况下,使用用于所述色度分量的QP对所述色度分量进行解码。
2.根据权利要求1所述的方法,其中,所述第一函数是加法函数。
3.根据权利要求1-2中的任一项所述的方法,其中,所述第二函数是加法函数。
4.根据权利要求1-3中的任一项所述的方法,其中,所述区域对应于图片。
5.根据权利要求1-3中的任一项所述的方法,其中,所述区域是所述图片中的较小部分。
6.根据权利要求1-5中的任一项所述的方法,其中,由所述标志指示的默认色度deltaQP基于映射来确定,并且其中所述映射在所述比特流中保持不变。
7.根据权利要求1-5中的任一项所述的方法,其中,由所述标志指示的默认色度deltaQP基于映射来确定,并且其中所述映射由所述比特流中的信令改变。
8.根据权利要求1-7中的任一项所述的方法,其中,所述视觉信息对应于单个图片或图片的时间序列。
9.一种生成视觉信息的编码表示的方法,包括:
确定用于所述视觉信息的区域的亮度分量的量化参数(QP);
按照以下方式用信号发送用于所述视觉信息的编码表示中的色度分量的QP:
在用于所述色度分量的QP等于用于所述色度分量的默认QP和用于所述亮度分量的QP的第一函数的值的情况下,在所述编码表示中用标志位的第一值来指示默认色度delta QP将被用于解码,并将所述标志编码在所述编码表示的参数集的数据单元中;以及
在用于所述色度分量的QP不等于用于所述色度分量的默认QP和用于所述亮度分量的QP的第一函数的值的情况下,在所述编码表示中用标志位的第二值来指示,并指示delta色度QP的所述数据单元中的值,使得用于所述色度分量的QP是所述亮度分量和所述delta色度QP的第二函数。
10.根据权利要求9所述的方法,其中,所述第一函数是加法函数。
11.根据权利要求9-10中的任一项所述的方法,其中,所述第二函数是加法函数。
12.根据权利要求9-11中的任一项所述的方法,其中,所述区域对应于图片。
13.根据权利要求9-12中的任一项所述的方法,其中,所述区域是所述图片的较小部分。
14.根据权利要求9-13中的任一项所述的方法,其中,由所述标志指示的默认色度delta QP基于映射来确定,其中所述映射在所述比特流中保持不变。
15.根据权利要求9-13中的任一项所述的方法,其中,由所述标志指示的默认色度delta QP基于映射来确定,其中所述映射由所述比特流中的信令改变。
16.根据权利要求9-15中的任一项所述的方法,其中,所述视觉信息对应于单一图片或图片的时间序列。
17.一种视频编码器装置,包括被配置为实施根据权利要求9-16中的任一项或多项所述的方法的处理器。
18.一种视频解码器装置,包括被配置为实施根据权利要求1-8中的任一项或多项所述的方法的处理器。
19.一种计算机程序产品,其上存储有代码,当所述代码由处理器执行时,导致所述处理器实施根据权利要求1至16中的任一项或多项所述的方法。
CN201980092594.4A 2019-03-05 2019-03-05 视频编码中的跨分量量化 Pending CN113454998A (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2019/076977 WO2020177072A1 (en) 2019-03-05 2019-03-05 Cross-component quantization in video coding

Publications (1)

Publication Number Publication Date
CN113454998A true CN113454998A (zh) 2021-09-28

Family

ID=72337434

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980092594.4A Pending CN113454998A (zh) 2019-03-05 2019-03-05 视频编码中的跨分量量化

Country Status (4)

Country Link
US (1) US12126821B2 (zh)
EP (1) EP3935845A4 (zh)
CN (1) CN113454998A (zh)
WO (1) WO2020177072A1 (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113454998A (zh) * 2019-03-05 2021-09-28 中兴通讯股份有限公司 视频编码中的跨分量量化
US11979591B2 (en) * 2021-04-06 2024-05-07 Lemon Inc. Unified neural network in-loop filter
US11949918B2 (en) 2021-04-15 2024-04-02 Lemon Inc. Unified neural network in-loop filter signaling

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2789165A4 (en) * 2012-01-20 2015-08-05 Sony Corp EXPANSION OF CHROMISTRATION PARAMETERS
EP3598751B1 (en) * 2013-06-28 2024-04-10 Velos Media International Limited Methods and devices for emulating low-fidelity coding in a high-fidelity coder
US9510002B2 (en) * 2013-09-09 2016-11-29 Apple Inc. Chroma quantization in video coding
WO2016199409A1 (en) * 2015-06-07 2016-12-15 Sharp Kabushiki Kaisha Systems and methods for optimizing video coding based on a luminance transfer function or video color component values
US11146788B2 (en) * 2015-06-12 2021-10-12 Qualcomm Incorporated Grouping palette bypass bins for video coding
EP3466072A1 (en) * 2016-05-27 2019-04-10 Sharp Kabushiki Kaisha Systems and methods for varying quantization parameters
WO2017219342A1 (en) * 2016-06-24 2017-12-28 Mediatek Inc. Methods of signaling quantization parameter for quad-tree plus binary tree structure
CN110446041B (zh) * 2018-05-02 2021-11-19 中兴通讯股份有限公司 一种视频编解码方法、装置、系统及存储介质
CN111200732B (zh) * 2018-11-20 2023-04-07 深圳市中兴微电子技术有限公司 一种反量化反变换方法及装置
CN113454998A (zh) * 2019-03-05 2021-09-28 中兴通讯股份有限公司 视频编码中的跨分量量化
CN113454013B (zh) * 2019-03-15 2023-05-26 三菱电机楼宇解决方案株式会社 电梯的自动呼梯登记系统
US11388413B1 (en) * 2020-08-03 2022-07-12 Meta Platforms, Inc. Fast encoding parameter selection for convex hull video encoding

Also Published As

Publication number Publication date
EP3935845A1 (en) 2022-01-12
EP3935845A4 (en) 2022-11-09
WO2020177072A1 (en) 2020-09-10
US12126821B2 (en) 2024-10-22
US20220038721A1 (en) 2022-02-03

Similar Documents

Publication Publication Date Title
US10939110B2 (en) Adjusting quantization/scaling and inverse quantization/scaling when switching color spaces
CN107079150B (zh) 用于视频译码中自适应颜色变换的量化参数推导及偏移
EP3114843B1 (en) Adaptive switching of color spaces
US10506254B2 (en) Features of base color index map mode for video and image coding and decoding
WO2020005506A1 (en) Position dependent intra prediction combination with multiple reference lines for intra prediction
CN113519162B (zh) 数字视频中的参数集信令
US11589047B2 (en) Video encoding and decoding methods and apparatus
GB2534606A (en) Method and device for encoding or decoding an image comprising encoding of decoding information representing prediction modes
US12126821B2 (en) Cross-component quantization in video coding
CN114041288A (zh) 图像分量的预测方法、编码器、解码器以及存储介质
JP7416820B2 (ja) ビデオコーディングにおけるヌルタイルコーディング
CN112567739B (zh) 用于视觉媒体编码和解码的平面预测模式
WO2023195330A1 (ja) 画像処理装置および方法
KR20240089011A (ko) 선택 가능한 뉴럴 네트워크 기반 코딩 도구를 사용하는 비디오 코딩

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination