CN113168718B - 视频解码方法、装置和存储介质 - Google Patents

视频解码方法、装置和存储介质 Download PDF

Info

Publication number
CN113168718B
CN113168718B CN201980057670.8A CN201980057670A CN113168718B CN 113168718 B CN113168718 B CN 113168718B CN 201980057670 A CN201980057670 A CN 201980057670A CN 113168718 B CN113168718 B CN 113168718B
Authority
CN
China
Prior art keywords
palette
color
tree structure
block
current
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.)
Active
Application number
CN201980057670.8A
Other languages
English (en)
Other versions
CN113168718A (zh
Inventor
夜静
刘杉
许晓中
李翔
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent America LLC
Original Assignee
Tencent America LLC
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 Tencent America LLC filed Critical Tencent America LLC
Publication of CN113168718A publication Critical patent/CN113168718A/zh
Application granted granted Critical
Publication of CN113168718B publication Critical patent/CN113168718B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/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/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • 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/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/96Tree coding, e.g. quad-tree coding

Landscapes

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

Abstract

本公开的各方面提供了视频解码方法、装置和存储介质。一种对已编码视频流的视频序列进行解码的方法,所述方法由至少一个处理器使用处于调色板模式的至少一个颜色调色板执行,其中,所述至少一个颜色调色板中的每个颜色调色板包括至少一个亮度值或至少一个色度值,所述方法包括:确定当前树结构是否为双树结构,其中,在双树结构中,亮度颜色平面的分割树结构与色度颜色平面的分割树结构不同;以及,基于所述确定当前树结构是否为双树结构,使用所述至少一个颜色调色板的一个或多个颜色调色板,解码所述视频序列的至少一个图像。

Description

视频解码方法、装置和存储介质
相关申请的交叉引用
本公开要求于2018年9月14日提交的第62/731,767号美国临时申请的优先权,在2018年9月25日提交的第62/736,353号美国临时申请的优先权,在2018年10月3日提交的第62/740,920号美国临时申请的优先权,以及在2019年8月9日提交的第16/536,460号美国申请的优先权,上述美国申请的全部内容通过引用并入本申请。
技术领域
本公开针对一组高级视频编解码技术。并且更具体地,涉及基于调色板的编码和解码过程。
背景技术
由于屏幕内容的特定特性,开发了用于高效视频编解码(High Efficiency VideoCoding,HEVC)的屏幕编解码扩展的编解码工具。这些工具证实了编解码效率的显著提高。其中,调色板模式使用调色板的索引(主要颜色)表示像素块,并且利用空间冗余对调色板和索引进行编码。典型的调色板模式编码方法由两部分组成:调色板的编码方法,和使用调色板对样本进行编码的方法。后者可以包括调色板索引编码、行程长度编码(Run LengthCoding,RLC)和跳出像素编码(escape pixel coding)。
发明内容
根据本公开的实施例,提供了一种对已编码视频流的视频序列进行解码的方法,所述方法由至少一个处理器使用处于调色板模式的至少一个颜色调色板执行,其中,所述至少一个颜色调色板中的每个颜色调色板包括至少一个亮度值或至少一个色度值,所述方法包括:确定当前树结构是否为双树结构,其中,在双树结构中,亮度颜色平面的分割树结构与色度颜色平面的分割树结构不同;以及,基于所述确定当前树结构是否为双树结构,使用所述至少一个颜色调色板的一个或多个颜色调色板,解码所述视频序列的至少一个图像。
根据本公开实施例,所述方法进一步包括:更新调色板预测器列表,其中,所述更新包括:在确定所述当前树结构为双树结构时,将所述至少一个颜色调色板的第一调色板的第一亮度值提供给所述调色板预测器列表,忽略所述第一调色板的所有色度值,从而不会向所述调色板预测器列表提供所述第一调色板的色度值,其中,所述解码至少一个图像包括:使用所述调色板预测器列表预测所述至少一个颜色调色板的第二调色板,解码所述视频序列的至少一个图像。
根据本公开的实施例,所述方法进一步包括:接收调色板预测器初始化器;在确定所述当前树结构为双树结构时,使用所述调色板预测器初始化器发信号通知的亮度值,初始化所述调色板预测器列表;以及,在确定所述当前树结构为双树结构时,使用预定义值设置所述调色板预测器列表的色度值,所述调色板预测器初始化器不向所述调色板预测器列表发信号通知任何色度值。
根据本公开的实施例,所述方法进一步包括:当确定所述当前树结构为双树结构,同时即将解码所述亮度颜色平面,接收指示转义像素(escape pixel)的亮度值的信号,而不接收指示将在所述调色板模式中使用的所述转义像素的色度值的任何信号,其中,所述解码至少一个图像包括:在所述调色板模式中使用所述转义像素的亮度值,解码所述至少一个图像。
根据本公开的实施例,所述方法进一步包括:在确定所述当前树结构为双树结构时,接收一个信号,以指示是否将使用所述调色板模式解码当前色度块;以及,基于所述信号,确定是否将使用所述调色板模式解码所述当前色度块,其中,所述解码至少一个图像包括:当所述信号指示将使用所述调色板模式解码所述当前色度块时,使用所述至少一个颜色调色板的调色板,解码所述当前色度块。
根据本公开的实施例,所述信号是根据处于所述调色板模式的位于相同位置的至少一个亮度块接收的,其中,所述信号指示是否将使用所述调色板模式解码所述当前色度块。
根据本公开的实施例,所述方法进一步包括:确定与当前色度块位于同一位置的至少一个亮度块是否正在使用所述调色板模式;根据所述确定至少一个亮度块是否正在使用所述调色板模式,确定当前色度块是否将使用所述调色板模式,其中,所述解码至少一个图像包括:若即将使用所述调色板模式解码所述当前色度块,使用所述至少一个颜色调色板中的调色板,解码所述当前色度块。
根据本公开的实施例,所述至少一个亮度块是与所述当前色度块位于同一位置的多个亮度块,并且,当确定所述多个亮度块全部使用所述调色板模式时,确定所述当前色度块使用所述调色板模式。
根据本公开的实施例,所述至少一个亮度块是与所述当前色度块位于同一位置的多个亮度块,并且,当确定所述多个亮度块中大于预定阈值数目的亮度块正在使用所述调色板模式时,确定所述当前色度块使用所述调色板模式。
根据本公开的实施例,被解码的所述至少一个图像是具有三个颜色分量的视频的一部分,所述至少一个颜色调色板包括:所述三个颜色分量中每一个颜色分量各自的颜色调色板表,并且,所述方法进一步包括:使用所述三个颜色分量中每一个颜色分量各自的调色板预测器列表,预测所述三个颜色分量中每一个颜色分量各自的颜色调色板表。
根据本公开的实施例,提供了一种对已编码视频流的视频序列进行解码的方法,所述方法由至少一个处理器使用处于调色板模式的至少一个颜色调色板执行,所述方法包括:生成第一调色板预测器列表,所述生成包括:确定当前块的至少一个相邻块是否处于所述调色板模式;以及,当确定所述相邻块处于所述调色板模式时,将所述至少一个相邻块中一个相邻块的至少一个调色板条目***到所述第一调色板预测器列表中。所述方法进一步包括生成所述当前块的第二调色板预测器列表;将所述第一调色板预测器列表的至少一个调色板条目与所述第二调色板预测器列表的至少一个调色板条目进行组合,生成组合的调色板预测器列表;使用所述组合的调色板预测器列表,解码所述视频序列中的所述当前块,其中,所述解码包括:使用所述组合的调色板预测器列表,预测所述至少一个颜色调色板的调色板。
根据本公开的实施例,所述***相邻块的至少一个调色板条目包括:将所述多个相邻块中每一个确定处于调色板模式的相邻块中的调色板条目***到所述第一调色板预测器列表中。
根据本公开的实施例,所述当前块的至少一个相邻块包括邻近的相邻块,其中,所述邻近的相邻块包括:第一相邻块,其中,所述第一相邻块的右下角位于当前块的左下角直接相邻;第二相邻块,其中,所述第二相邻块的右下角位于当前块的右上角直接相邻;第三相邻块,其中,所述第三相邻块的左下角与当前块的右上角直接相邻;第四相邻块,其中,所述第四相邻块的右上角位于当前块的左下角直接相邻,以及第五相邻块,其中,所述第五相邻块的右下角与当前块的左上角直接相邻。
根据本公开的实施例,所述当前块的至少一个相邻块进一步包括多个间隔块,其中,所述多个间隔块中的每一个间隔块的位置与所述邻近的相邻块中的一个相邻块的位置相对应,所述每一个间隔块的位置在所述邻近的相邻块中对应相邻块位置的相应偏移距离处,使得所述多个间隔块与所述当前块间隔开。
根据本公开的实施例,所述确定当前块的至少一个相邻块是否处于所述调色板模式包括:确定所述邻近的相邻块中每一个相邻块是否处于所述调色板模式;以及,在确定所述邻近的相邻块中每一个相邻块是否处于所述调色板模式之后,确定所述多个间隔块中的每一个间隔块是否处于所述调色板模式。
根据本公开的实施例,所述生成组合的调色板预测器列表包括:将所述第一调色板预测器列表的至少一个调色板条目***到所述组合的调色板预测器列表中;以及,在***所述第一调色板预测器列表的至少一个调色板条目之后,将所述第二调色板预测器列表的至少一个调色板条目中的一个或多个***到所述组合的调色板预测器列表中,直到所述组合的调色板预测器列表达到预定义的或用信号通知的大小限制。
根据本公开的实施例,所述生成组合的调色板预测器列表包括:将所述第二调色板预测器列表的至少一个调色板条目***到所述组合的调色板预测器列表中;以及,在***所述第二调色板预测器列表的至少一个调色板条目之后,将所述第一调色板预测器列表的至少一个调色板条目中的一个或多个***到所述组合的调色板预测器列表中,直到所述组合的调色板预测器列表达到预定义的或用信号通知的大小限制。
根据本公开的实施例,所述生成第一调色板预测器列表进一步包括:确定所述相邻块的至少一个调色板条目的颜色与所述第一调色板预测器列表中已提供的调色板条目的颜色之间的差是否大于预定阈值,以及,当确定所述相邻块处于调色板模式,并且,确定所述至少一个调色板条目的颜色与所述第一调色板预测器列表中已提供的调色板条目的颜色之间的差大于所述预定阈值,将所述相邻块的至少一个调色板条目***到所述第一调色板预测器列表中。
根据本公开的实施例,所述生成组合的调色板预测器列表包括:确定所述第一调色板预测器列表的至少一个调色板条目的条目颜色和所述第二调色板预测器列表的至少一个调色板条目的条目颜色中的一个,与所述组合的调色板预测器列表中已提供的调色板条目的颜色之间的差是否大于所述预定阈值;确定所述第一调色板预测器列表的条目颜色和所述第二调色板预测器列表的条目颜色中的一个,与所述组合的调色板预测器列表中已提供的调色板条目的颜色之间的差大于所述预定阈值,将用于确定上述颜色之差的所述第一调色板预测器列表的至少一个调色板条目中的条目、或所述第二调色板预测器列表的至少一个调色板条目中的条目,***到所述组合的调色板预测器列表中。
根据本公开实施例,提供了一种视频解码装置,其中,所述装置包括:确定模块,用于确定当前树结构是否为双树结构,其中,在所述双树结构中,亮度颜色平面的分割树结构与色度颜色平面的分割树结构不同;以及,解码模块,根据所述确定当前树结构是否为双树结构,使用处于调色板模式的至少一个颜色调色板的一个或多个颜色调色板,解码所述视频序列的至少一个图像,其中,所述至少一个颜色调色板中的每个颜色调色板包括至少一个亮度值或至少一个色度值。
根据本公开实施例,还提供了一种视频解码装置,其中,所述装置包括:第一生成模块,用于确定当前块的至少一个相邻块是否处于所述调色板模式,当确定所述相邻块处于所述调色板模式时,将所述至少一个相邻块中一个相邻块的至少一个调色板条目***到所述第一调色板预测器列表中,生成第一调色板预测器列表;第二生成模块,用于生成所述当前块的第二调色板预测器列表,将所述第一调色板预测器列表的至少一个调色板条目与所述第二调色板预测器列表的至少一个调色板条目进行组合,生成组合的调色板预测器列表;解码模块,用于使用所述组合的调色板预测器列表,预测处于所述调色板模式的所述至少一个颜色调色板中的调色板,解码所述视频序列中的所述当前块。
根据本公开的实施例,提供了一种计算机设备,包括处理器和存储器,所述存储器中存储有指令,当所述指令被处理器执行时,使得所述处理器执行上述对视频序列进行解码的方法方法。
附图说明
通过下面的详细描述和附图,所公开的主题的进一步的特征,性质和各种优点将更加明显。
图1是根据一个实施例的通信***的简化框图的示意图。
图2是根据一个实施例的流式传输***的简化框图的示意图。
图3是根据一个实施例的视频解码器和显示器的简化框图的示意图。
图4是根据一个实施例的视频编码器和视频源的简化框图的示意图。
图5是当前块的合并候选的搜索模式的图。
图6是当前块的合并候选的搜索模式的图。
图7是从当前块生成的新块的图。
图8是当前块的合并候选的搜索模式的图。
图9是根据本公开实施例的视频编码器或解码器的功能框图。
图10是根据本公开实施例的视频编码器或解码器的功能框图。
图11是根据本公开实施例的视频编码器或解码器的功能框图。
图12是根据本公开实施例的视频解码器的功能框图。
图13是根据本公开实施例的视频解码器的功能框图。
图14是根据本公开实施例的视频编码器或解码器的功能框图。
图15是亮度索引图示例的图。
图16是实施例中索引重用图生成过程的图。
图17是根据本公开实施例的视频编码器或解码器的功能框图。
图18是适合于实现实施例的计算机***的图。
具体实施方式
图1是根据本公开实施例的通信***(100)的简化框图。通信***(100)可以包括至少两个通过网络(150)互联的终端(110-120)。对于单向数据传输,第一终端(110)可以在本地位置编码视频数据,以经由网络(150)发送到第二终端(120)。第二终端(120)可以从网络(150)接收另一终端的已编码视频数据,解码该已编码数据,并显示恢复的视频数据。单向数据传输在媒体服务应用等应用中可能是常见的。
图1示出了第二对终端(130,140),第二对终端(130,140)支持已编码视频的双向传输,例如,该已编码视频的双向传输可以在视频会议期间发生。对于数据的双向传输,每个终端(130,140)可以在本地位置对捕获的视频数据进行编码,以经由网络(150)传输到另一终端。每个终端(130,140)也可以接收由另一终端发送的已编码视频数据,可以解码已编码数据,并在本地位置显示恢复的视频数据。
在图1中,终端(110-140)可以是例如服务器,个人计算机和智能电话,和/或,任何其他类型的终端。例如,终端(110-140)可以是膝上型计算机,平板电脑,媒体播放器,和/或,专用视频会议设备。网络(150)表示在终端(110-140)之间传送已编码视频数据的任何数量的网络,包括,例如,有线和/或无线通信网络。网络(150)可以在电路交换和/或分组交换信道中交换数据。代表性网络包括电信网络、局域网(Local Area Network,LAN),广域网(Wide Area Network,WAN),和/或,互联网。出于本讨论的目的,除非以下在此说明,否则,网络(150)的架构和拓扑对于本公开的操作可能并不重要。
作为所公开主题的应用的示例,图2示出了在流式传输环境中视频编码器和解码器的位置。所公开的主题可以与其他视频使能应用一起使用,包括,例如,视频会议,数字电视,将压缩的视频存储在数字媒体上,其中,数据媒体包括光盘(Compact Disk,CD),数字多功能影音光盘(Digital Video Disk,DVD),存储棒等。
如图2所示,流式传输***(200)可以包括采集子***(213),所述采集子***(213)包括视频源(201)和视频编码器(203)。流式传输***(200)可以进一步包括至少一个流式传输服务器(205),和/或,至少一个流式传输客户端(206)。
视频源(201)可以创建,例如,未压缩的视频样本流(202)。视频源(201)可以是例如数码相机。相较于已编码视频比特流,样本流(202)被描绘为粗线,以强调可以通过耦合到相机的视频编码器(203)处理高数据量。视频编码器(203)可以包括硬件,软件,或硬件和软件的组合,以实现或实施如下文更详细的描述的所公开主题的各个方面。视频编码器(203)也可以生成已编码视频比特流(204)。相较于未压缩的视频样本流(202),已编码视频比特流(204)被描绘为细线,以强调较低数据量的已编码视频比特流(204)可以存储在流式传输服务器(205)中以供将来使用。一个或多个流式传输客户端(206)可以访问流式传输服务器(205),以获取视频比特流(209)。其中,视频比特流(209)可以是已编码视频比特流(204)的副本。
流式传输客户端(206)可以包括视频解码器(210)和显示器(212)。视频解码器(210)可以例如解码视频比特流(209),其中,视频比特流(209)是已编码视频比特流(204)的输入副本,并且创建可以在显示器(212)或另一个渲染设备(未显示)上渲染的外发视频样本流(211)。在一些流式传输***中,可以根据某些视频编解码/压缩标准,对视频比特流(204,209)进行编码。此类标准的示例包括,但不限于,ITU-T H.265建议书。正在开发的是一种视频编解码标准,非正式的称为通用视频编码(Versatile Video Coding,VVC)。可以在VVC的上下文中使用本公开的实施例。
图3示出了根据本公开实施例的附接到显示器(212)的视频解码器(210)的示例功能框图。
视频解码器(210)可以包括一个信道(312),接收器(310),缓冲存储器(315),熵解码器/解析器(320),缩放器/逆变换单元(351),帧内预测单元(352),运动补偿预测单元(353),聚合器(355),环路滤波器单元(356),参考图像存储器(357)和当前图片存储器(358)。在至少一个实施例中,视频解码器(210)可以包括集成电路,一系列集成电路,和/或,其他电子电路。视频解码器(210)也可以部分或全部体现在软件中,其中,该软件运行在具有关联存储器的一个或多个中央处理单元(Central ProcessingUnit,CPU)中。
在这个实施例和其他实施例中,接收器(310)可以接收一个或多个将由视频解码器(210)解码的视频序列,其中,视频解码器(210)一次解码一个已编码视频序列,每个已编码视频序列的解码都独立于其他的已编码视频序列。可以从信道(312)接收已编码视频序列,该信道可以是到存储已编码视频数据的存储设备的硬件/软件链接。接收器(310)可以接收已编码视频数据以及其他数据,例如,已编码的音频数据,和/或,辅助数据流,这些数据可以被转发到他们各自的使用实体(未示出)。接收器(310)可以将已编码视频数据与其他数据分开。为了对抗网络抖动,缓冲存储器(315)可以耦合在接收器(310)和熵解码器/解析器(320)(此后称为“解析器”)之间。当接收器(310)从具有足够带宽和可控性的存储/转发设备,或等时网络接收数据时,可能不使用缓冲存储器(315),或者,缓冲存储器(315)可以很小。为了在尽力而为的分组网络例如因特网使用,可能需要缓冲存储器(315),缓冲存储器(315)可能相对较大,并且,缓冲存储器(315)的大小可以自适应。
视频解码器(210)可包括解析器(320)以根据熵编码视频序列重建符号(321)。这些符号的类别包括,例如,用于管理视频解码器(210)的操作的信息,以及用以控制显示装置,例如,显示器(212)的潜在信息,所述显示装置可耦接到如图2中所示的解码器。用于显示装置的控制信息可以是,例如,辅助增强信息(Supplemental EnhancementInformation,SEI消息)或视频可用性信息(Video Usability Information,VUI)的参数集片段(未标示)。解析器(320)可对接收到的已编码视频序列进行解析/熵解码。已编码视频序列的编码可根据视频编码技术或标准进行,且可遵循本领域技术人员众所周知的各种原理,包括可变长度编码、霍夫曼编码(Huffman coding)、具有或不具有上下文灵敏度的算术编码等等。解析器(320)可基于对应于群组的至少一个参数,从已编码视频序列提取用于视频解码器中的像素的子群中的至少一个子群的子群参数集。子群可包括图片群组(Groupof Pictures,GOP)、图片、图块、切片、宏块、编码单元(Coding Unit,CU)、块、变换单元(Transform Unit,TU)、预测单元(Prediction Unit,PU)等等。解析器(320)还可从已编码视频序列提取信息,例如变换系数、量化器参数值、运动矢量等等。
解析器(320)可对从缓冲存储器(315)接收的视频序列执行熵解码/解析操作,从而创建符号(321)。
取决于已编码视频图片或一部分已编码视频图片(例如:帧间图片和帧内图片、帧间块和帧内块)的类型以及其它因素,符号(321)的重建可涉及多个不同单元。涉及哪些单元以及他们如何涉及的方式可由解析器(320)从已编码视频序列解析的子群控制信息控制。为了简洁起见,未描述解析器(320)与下文描述的多个单元之间的此类子群控制信息流。
除已经提及的功能块以外,视频解码器(210)可在概念上细分成如下文所描述的数个功能单元。在商业约束下运行的实际实施例中,这些单元中的许多单元彼此紧密交互并且可以彼此集成。然而,出于描述所公开主题的目的,概念上细分成下文的功能单元是适当的。
一个单元可以是缩放器/逆变换单元(351)。缩放器/逆变换单元(351)从解析器(320)接收作为符号(321)的量化变换系数以及控制信息,包括使用哪种变换方式、块大小、量化因子、量化缩放矩阵等。缩放器/逆变换单元(351)可输出包括样本值的块,所述样本值可输入到聚合器(355)中。
在一些情况下,缩放器/逆变换单元(351)的输出样本可属于帧内编码块;即:不使用来自先前重建的图片的预测性信息,但可使用来自当前图片的先前重建部分的预测性信息的块。此类预测性信息可由帧内预测单元(352)提供。在一些情况下,帧内预测单元(352)采用从当前图片存储器(358)的当前(部分重建)图片提取的周围已重建信息生成大小和形状与正在重建的块相同的块。在一些情况下,聚合器(355)基于每个样本,将帧内预测单元(352)生成的预测信息添加到由缩放器/逆变换单元(351)提供的输出样本信息中。
在其它情况下,缩放器/逆变换单元(351)的输出样本可属于帧间编码和潜在运动补偿块。在此情况下,运动补偿预测单元(353)可访问参考图像存储器(357)以提取用于预测的样本。在根据符号(321)对提取的样本进行运动补偿之后,这些样本可由聚合器(355)添加到缩放器/逆变换单元(351)的输出(在这种情况下被称作残差样本或残差信号),从而生成输出样本信息。运动补偿预测单元(353)从参考图像存储器(357)内的地址获取预测样本可受到运动矢量控制,且所述运动矢量以所述符号(321)的形式而供运动补偿预测单元(353)使用,所述符号(321)例如是包括X、Y和参考图片分量。运动补偿还可包括在使用子样本精确运动矢量时,从参考图像存储器(357)提取的样本值的内插、运动矢量预测机制等等。
聚合器(355)的输出样本可在环路滤波器单元(356)中被各种环路滤波技术采用。视频压缩技术可包括环路内滤波器技术,所述环路内滤波器技术受控于包括在已编码视频比特流中的参数,且所述参数作为来自解析器(320)的符号(321)可用于环路滤波器单元(356)。然而,在其他实施例中,视频压缩技术还可响应于在解码已编码图片或已编码视频序列的先前(按解码次序)部分期间获得的元信息,以及响应于先前重建且经过环路滤波的样本值。
环路滤波器单元(356)的输出可以是样本流,所述样本流可输出到显示装置,比如,显示器212,以及存储在参考图像存储器(357),以用于后续的帧间图片预测。
一旦完全重建,某些已编码图片就可用作参考图片以用于将来预测。一旦已编码图片被完全重建,且已编码图片(通过例如解析器(320))被识别为参考图片,则当前图片存储器(358)中存储的当前参考图片可变为参考图像存储器(357)的一部分,且可在开始重建后续已编码图片之前重新分配新的当前图片存储器。
视频解码器(210)可根据例如ITU-T H.265标准中可能记录的预定视频压缩技术执行解码操作。在某种意义上说,已编码视频序列遵循视频压缩技术或标准中的语法,如视频压缩技术文档或标准中(尤其是其中的配置文件)指定的语法,已编码视频序列可符合所使用的视频压缩技术或标准指定的语法。并且,为了遵循某些视频压缩技术或标准,已编码视频序列的复杂度可以处于视频压缩技术或标准的层级所限定的范围内。在一些情况下,层级限制最大图片大小、最大帧率、最大重建取样率(以例如每秒兆(mega)个样本为单位进行测量)、最大参考图片大小等。在一些情况下,由层级设定的限制可通过假想参考解码器(Hypothetical Reference Decoder,HRD)规范和在已编码视频序列中用信号表示的HRD缓冲器管理的元数据来进一步限定。
在实施例中,接收器(310)可连同已编码视频一起接收附加(冗余)数据。所述附加数据可以是已编码视频序列的一部分。所述附加数据可由视频解码器(210)用以对数据进行适当解码和/或较准确地重建原始视频数据。附加数据可呈例如时间、空间或信噪比(signal noise ratio,SNR)增强层、冗余切片、冗余图片、前向纠错码等形式。
图4是根据本公开实施例的与视频源(201)相关的视频编码器(203)的示例功能框图。
视频编码器(203)可以包括,例如,作为源编码器(430)的编码器,编码引擎(432),本地解码器(433),参考图片存储器(434),预测器(435),传输器(440),熵编码器(445),控制器(450)以及信道(460)。
视频编码器(203)可以从视频源(201)(不属于编码器)接收视频样本,其中,视频源(201)可以捕获将由视频编码器(203)编码的视频图像。
视频源(201)可提供将由视频编码器(203)编码的呈数字视频样本流形式的源视频序列,所述数字视频样本流可具有任何合适位深度(例如:x位、10位、12位……)、任何色彩空间(例如BT.601Y CrCB、RGB……)和任何合适取样结构(例如Y CrCb 4:2:0、Y CrCb 4:4:4)。在媒体服务***中,视频源(201)可以是存储先前已准备的视频的存储装置。在视频会议***中,视频源(201)可以是采集本地图像信息作为视频序列的相机。可将视频数据提供为多个单独的图片,当按顺序观看时,这些图片被赋予运动。图片自身可构建为空间像素阵列,其中取决于所用的取样结构、色彩空间等,每个像素可包括一个或多个样本。所属领域的技术人员可以很容易理解像素与样本之间的关系。下文侧重于描述样本。
根据实施例,视频编码器(203)可实时或在由应用所要求的任何其它时间约束下,将源视频序列的图片编码且压缩成已编码视频序列(443)。施行适当的编码速度可能是控制器(450)的一个功能。控制器(450)可以控制如下文所描述的其它功能单元且在功能上耦接到这些单元。为了简洁起见,图中未标示耦接。由控制器(450)设置的参数可包括速率控制相关参数(图片跳过、量化器、率失真优化技术的λ值等)、图片大小、图片群组(group ofpictures,GOP)布局,最大运动矢量搜索范围等。本领域技术人员可以容易地识别控制器(450)的其他功能,因为它们可能与针对特定***设计优化的视频编码器(203)有关。
一些视频编码器以本领域技术人员容易理解为“编码循环”的方式进行操作。作为简单的描述,编码环路可包括源编码器(430)(负责基于待编码的输入图片和参考图片创建符号)的编码部分,和嵌入于视频编码器(203)中的本地解码器(433)。在某些视频压缩技术中,当符号与已编码视频比特流之间的压缩是无损的,解码器以(远程)解码器创建样本数据的方式重建符号。将重建的样本流输入到参考图片存储器(434)。由于符号流的解码产生与解码器位置(本地或远程)无关的位精确结果,因此参考图片存储器中的内容在本地编码器与远程编码器之间也是按比特位精确对应的。换句话说,编码器的预测部分“看到”的参考图片样本与解码器将在解码期间使用预测时所“看到”的样本值完全相同。这种参考图片同步性基本原理(以及在例如因信道误差而无法维持同步性的情况下产生的漂移)是本领域技术人员已知的。
本地解码器(433)的操作可以基本与“远程”视频解码器(210)的操作相同。其中,在上面已经结合图3对“远程”解码器进行了详细描述。然而,当符号可用且熵编码器(445)和解析器(320)能够无损地将符号编码/解码为已编码视频序列时,包括信道(312),接收器(310),缓冲存储器(315)和解析器(320)在内的视频解码器(210)的熵解码部分,可能无法完全在本地解码器(433)中实施。
此时可以观察到,除存在于解码器中的解析/熵解码之外的任何解码器技术,可能需要以基本上相同的功能形式存在于对应的编码器中。出于此原因,本申请侧重于解码器操作。可简化编码器技术的描述,因为编码器技术可能与全面地描述的解码器技术互逆。仅在某些区域中需要更详细的描述,并且在下文提供。
作为其操作的一部分,源编码器(430)可执行运动补偿预测编码。参考来自视频序列中被指定为“参考帧”的一个或多个先前已编码帧,所述运动补偿预测编码对输入帧进行预测性编码。以此方式,编码引擎(432)对输入帧的像素块与参考帧的像素块之间的差异进行编码,所述参考帧可被选作所述输入帧的预测参考。
本地解码器(433)可基于源编码器(430)创建的符号,对可指定为参考帧的帧的已编码视频数据进行解码。编码引擎(432)的操作可为有损过程。当已编码视频数据在视频解码器(图4中未示)处被解码时,重建的视频序列通常可以是带有一些误差的源视频序列的副本。本地解码器(433)复制解码过程,所述解码过程可由视频解码器对参考帧执行,且可使重建的参考帧存储在参考图片存储器(434)中。以此方式,视频编码器(203)可在本地存储重建的参考帧的副本,所述副本与将由远端视频解码器获得的重建参考帧具有共同内容(不存在传输误差)。
预测器(435)可针对编码引擎(432)执行预测搜索。即,对于将要编码的新帧,预测器(435)可在参考图片存储器(434)中搜索可作为所述新图片的适当预测参考的样本数据(作为候选参考像素块)或某些元数据,例如参考图片运动矢量、块形状等。预测器(435)可基于样本块逐像素块操作,以找到合适的预测参考。在一些情况下,根据预测器(435)获得的搜索结果,可确定输入图片可具有从参考图片存储器(434)中存储的多个参考图片取得的预测参考。
控制器(450)可管理源编码器(430)的编码操作,包括例如设置用于对视频数据进行编码的参数和子群参数。
可在熵编码器(445)中对所有上述功能单元的输出进行熵编码。熵编码器根据本领域技术人员已知的技术,例如,霍夫曼编码、可变长度编码、算术编码等,对各种功能单元生成的符号进行无损压缩,从而将所述符号转换成已编码视频序列。
传输器(440)可缓冲由熵编码器(445)创建的已编码视频序列,从而为通过通信信道(460)进行传输做准备,所述通信信道可以是通向将存储已编码的视频数据的存储装置的硬件/软件链路。传输器(440)可将来自源编码器(430)的已编码视频数据与要传输的其它数据合并,所述其它数据例如是已编码音频数据和/或辅助数据流(未示出来源)。
控制器(450)可管理视频编码器(203)的操作。在编码期间,控制器(450)可以为每个已编码图片分配某一已编码图片类型,但这可能影响可应用于相应的图片的编码技术。例如,通常可将图片分配为帧内图片(I图片),预测性图片(P图片),或双向预测性图片(B图片)。
帧内图片(I图片),其可以是不将序列中的任何其它帧用作预测源就可被编码和解码的图片。一些视频编解码器容许不同类型的帧内图片,包括例如独立解码器刷新(Independent Decoder Refresh,“IDR”)图片。所属领域的技术人员了解I图片的变体及其相应的应用和特征。
预测性图片(P图片),其可以是可使用帧内预测或帧间预测进行编码和解码的图片,所述帧内预测或帧间预测使用至多一个运动矢量和参考索引来预测每个块的样本值。
双向预测性图片(B图片),其可以是可使用帧内预测或帧间预测进行编码和解码的图片,所述帧内预测或帧间预测使用至多两个运动矢量和参考索引来预测每个块的样本值。类似地,多个预测性图片可使用多于两个参考图片和相关联元数据以用于重建单个块。
源图片通常可在空间上细分成多个样本块(例如,4×4、8×8、4×8或16×16个样本的块),且逐块进行编码。这些块可参考其它(已编码)块进行预测编码,根据应用于块的相应图片的编码分配来确定所述其它块。举例来说,I图片的块可进行非预测编码,或所述块可参考同一图片的已经编码的块来进行预测编码(空间预测或帧内预测)。P图片的像素块可参考一个先前编码的参考图片通过空间预测或通过时域预测进行非预测编码。B图片的块可参考一个或两个先前编码的参考图片通过空间预测或通过时域预测进行非预测编码。
视频编码器(203)可根据例如ITU-T H.265建议书的预定视频编码技术或标准执行编码操作。在操作中,视频编码器(203)可执行各种压缩操作,包括利用输入视频序列中的时间和空间冗余的预测编码操作。因此,已编码视频数据可符合所用视频编码技术或标准指定的语法。
在实施例中,传输器(440)可在传输已编码的视频时传输附加数据。源编码器(430)可将此类数据作为已编码视频序列的一部分。附加数据可包括时间/空间/SNR增强层、冗余图片和切片等其它形式的冗余数据、辅助增强信息(Supplementary EnhancementInformation,SEI)消息、视频可用性信息(Visual Usability Information,VUI)参数集片段等。
本公开的编码器和解码器可分别执行调色板编码和解码过程。下面描述调色板编码和解码过程的一些方面。
1、选择主要颜色
可以使用非常简单但有效的基于直方图的算法对像素进行分类。具体地,可以选择直方图中最显著的L峰值作为主要颜色,并且将接近主要颜色的像素值量化为主要颜色。不属于任何主要颜色集合的其它像素是转义像素(escape pixel),可以在编码之前量化转义像素。对于无损编码,可以不使用量化过程。对于每个像素,可以分配颜色索引以指示每个像素所属的颜色集合。为了方便起见,当术语不引起任何混淆时,可以将颜色索引称为索引。如果使用L个主要颜色,可以针对L个主要颜色的集合,用信号通知主要颜色0到主要颜色(L-1)的值,并且可以针对转义像素集合用信号通知主要颜色N的值。可以将调色板实现为颜色查找表,其中每一颜色条目与索引相关联。单个调色板可以用于对亮度分量和色度分量进行编码。每个条目可以表示特定的RGB(YUV)颜色。例如,(R,G,B)=(0,0,0)的条目1可以表示纯黑色,而(R,G,B)=(2,10,200)的条目0可以表示浅蓝色。当视频格式是420时,对色度平面进行上采样,以生成颜色调色板表。
2、调色板模式编码
可在编码单元(CodingUnit,CU)的基础上,执行基于调色板的编码和解码。
2.1调色板预测器初始化器:
在比较实施例中,假设在切片和图块边界处重置调色板预测器列表时,切片和图块可导致相当大的编码效率损失。在重置之后,需要时间来重建调色板预测器列表。具有预定义条目的调色板初始化器可以用于初始化调色板预测器列表,从而在这种情况下提高了编码效率。可以在图片参数集(Picture Parameter Set,PPS)或序列参数集(SequenceParameter Set,SPS)中发信号通知调色板初始化器。在切片或图块的开始处,可以由调色板初始化器初始化调色板预测器。可发信号通知调色板初始化器的三个分量中的每一个分量。调色板预测器列表条目还可以是三个分量条目。可以从调色板预测器初始化器复制调色板预测器中的每一个条目。
2.2编码调色板条目和调色板信息
为了使用调色板预测器列表作为参考以对当前调色板进行编码(或解码),可以使用二进制矢量,以指示是否在当前调色板中重新使用调色板预测器列表中的每个条目。可以将多个重用条目置于当前调色板的开始处,保持各个重用条目在调色板预测器列表中的顺序。重用条目之后可以是不在调色板预测器列表中的新调色板条目。可以使用具有预定义条目的调色板初始化器初始化调色板预测器列表,在这种情况下提高了编码效率。可以在图片参数集PPS或序列参数集SPS中发信号通知调色板初始化器。
调色板预测器列表:在高效视频编解码HEVC屏幕内容编解码(screen contentcoding,SCC)中,调色板预测器列表存储先前已编码(或已解码)的调色板条目作为预测当前调色板的参考。在每个调色板模式编码单元CU之后,可以更新该列表。该列表可以像最近最少使用的高速缓存一样操作。可以将最新的调色板***到列表的开始处,如果列表大小超过阈值,则可以丢弃扫描顺序中最远CU的条目。在SPS报头中(间接)发信号通知调色板预测器列表大小的上限。在配置中,选择调色板预测器列表大小的上限大约是调色板大小限制的两倍。在本公开中,将该调色板预测器列表称为历史调色板预测器列表(HistoryPalette Predictor List,HPPL)
为了使用调色板预测器列表作为参考,对当前调色板进行编码(或解码),可以使用二进制矢量,以指示当前调色板是否重用调色板预测器列表中的每个条目。如果重用标志是1,可将预测器条目中的三个分量复制到当前调色板表。可以将多个重用条目置于当前调色板的开始处,保持它们在调色板预测器列表中的顺序。多个重用条目之后可以是不在调色板预测器列表中的新调色板条目。新的调色板条目可以包括三个部分。可以发信号通知这些新的调色板条目。
2.3编码转义值
一旦建立了调色板,可将CU内的样本分成两类。属于第一类别的样本与调色板中的条目相同或非常接近。在这种情况下,可以用调色板中对应条目的索引表示样本。可由编码器定义失真度量和阈值,以确定样本是否足够接近调色板条目。所使用的示例失真度量是绝对差之和(Sum of Absolute Differences,SAD)和平方误差之和(Sum of SquaredErrors,SSE)。通过使用对应索引查找调色板条目,解码器可重建样本。将这些样本称为索引样本。对于属于其它类别的样本,每个样本明显不同于调色板中的任何条目。这些样本可能不适于由调色板索引表示,并且被称为转义样本。可以在码流中量化和显式编码转义样本的颜色分量值。
3、用于亮度分量和色度分量的单独的编码树结构
在一些实施例中,编码单元包含亮度分量和色度分量的样本。与亮度分量的样本相比,色度分量的样本可以具有独立或单独的分割树结构。在一些实施例中,该单独的编码树结构从编码树单元(Coding Tree Unit,CTU)级开始。在实施例中,用单独的树结构对I切片进行编码,并将该I切片称为“双树”开启。对于亮度平面和色度平面,可以用统一的树结构对P/B切片进行编码,并且将该P/B切片称为“双树”关闭。可在序列参数集SPS处,发信号通知双树启用标志。可以由信道类型指示亮度平面和色度平面,当信道类型是亮度时,它是亮度平面。当信道类型是色度时,它是色度平面。
4、用于亮度和色度平面的单独调色板模式
在提案联合视频探索小组(Joint Video Experts Team,JVET)-L0336中,当启用双树时,提出了针对亮度和色度的单独调色板模式。亮度和色度具有自己的调色板表和调色板索引图。
5、扩展的合并模式
附加合并候选可以是HEVC合并候选的直接扩展。可以检查不紧邻当前块(510)的左(参考块A1-A3)、上(参考块B1-B3)、左下(参考块D1-D3)、右上(参考块C1-C3)和左上(参考块E1-E3)候选(530)。在实施例中,合并候选的最大数目可以是8。示例合并候选的详细位置在图5中示出。
如图5所示,相对于当前块(510),参考块E3的左上角(531)的偏移为(-96,-96)。与先前的B或C候选相比,每个候选参考块Bi或Ci在垂直方向上具有高度偏移。与先前的A或D候选相比,每个候选参考块Ai或Di在水平方向上具有块宽度的偏移。与先前的E候选相比,每个候选参考块Ei在水平方向和垂直方向上都具有宽度和高度的偏移。可以从内到外检查多个候选。并且候选的顺序可以是例如Ai、Bi、Ci、Di和Ei,其中“i”表示任意整数。
在一些实施例中,候选参考块Ai、Bi、Ci、Di都可以在对角线方向上扩展,如图6至图7所示。如图7所示,对于每一i轮,可以将其视为生成新块(540)。相对于当前块(510),候选参考块(520和530)的左上角具有偏移。可以如下计算偏移:
Offsetx=-i*gridX Offsety=-i*gridY
在上述等式中,gridX(541)和gridY(543)是搜索的网格大小。并且,Offsetx和Offsety表示新块(540)相对于当前块(510)的偏移。gridX(541)和gridY(543)可以是固定的,或者gridX(541)可以是当前块宽度(542),并且gridY(543)可以是当前块高度(544)。可以如下计算新块(540)的宽度和高度:
newWidth=i*2*gridX+width newHeight=i*2*gridY+height。
在上述等式中,宽度和高度是当前块宽度(542)和高度(544)。newWidth和newHeight是新块宽度和高度。在这种情况下,可以将扩展的非相邻合并候选,参考块(530),视为当前块(510)的扩展。Ai、Bi、Ci、Di、Ei参考块(530)是新块540的上、左、右上、左下、左上候选。
在一些实施例中,将附加中间候选添加到搜索模式。例如,如图8所示,可以从邻近位置(552)添加中间候选,或者可以从非邻近位置(554)添加中间候选。
可将新块的左上视为(Sx,Sy)。可将上中间位置Gi计算为(Sx+(newWidth>>1),Sy-4),左中间位置Fi可计算为(Sx-4,Sy+(newHeight>>1),上中间位置也可计算为(Sx+(newWidth>>1)–4,Sy-4),左中间位置可计算为(Sx-4,Sy+(newHeight>>1)–4)。
[示例方面]
下面描述本公开的调色板编码和解码过程的实施例的一些示例方面。
[第一方面]
当双树开启或关闭时,可以使用相同的调色板结构。基于不同的切片类型,可以在SPS级别上开启或关闭双树。例如,当切片类型是帧内切片时,可以开启双树。并且当切片类型是帧间切片时,可以关闭双树。
包括“第一方面”的本公开实施例可以解决当单独编码亮度和色度颜色平面时,不能将具有多个颜色分量的一个调色板表格应用于单独的颜色平面的问题。
如图9所示,在实施例中,编码器或解码器可确定当前树结构是否是双树结构,其中,在双树结构中,亮度颜色平面的分割树结构不同于色度颜色平面的分割树结构(802)。然后,基于确定所述当前树结构是否是双树结构(804),所述编码器或解码器使用一个或多个颜色调色板,对视频序列的至少一个图像进行编码或解码。
例如,当关闭双树时,可以使用SCC调色板模式进行编码或解码。当开启双树时,可能会对编码或解码的SCC调色板模式进行一些修改。下面描述对SCC调色板模式的非限制性示例修改。
1.对调色板预测器初始化的修改
当开启双树时,调色板预测器初始化器只发信号通知亮度值,丢弃色度值。
为当前切片开启双树时,并且为当前切片初始化调色板预测器列表时,仅初始化亮度值,用预定义值填充色度值。
下面提供了基于HEVC语法的示例SPS和PPS语法表,其中,亮度平面和色度平面具有不同的编码树结构。
SPS语法
PPS语法
关于调色板预测器条目的初始化过程,该过程的输出可以包括初始化的调色板预测器变量“PredictorPaletteSize”和“PredictorPaletteEntries”。
可以如下得出变量“numComps”:
numComps=(ChromaArrayType==0)||isdualtree?1:3 (9-8)
如果pps_palette_predictor_initializer_present_flag等于1,以下适用:
–将PredictorPaletteSize设置为等于
pps_num_palette_predictor_initializer.
–可以如下得出数组PredictorPaletteEntries:
否则,(pps_palette_predictor_initializer_present_flag等于0),如果
sps_palette_predictor_initializer_present_flag等于1,以下可能适用:
–将PredictorPaletteSize设置为等于
sps_num_palette_predictor_initializer_minus1加1。
可以如下得出数组PredictorPaletteEntries:
否则,(pps_palette_predictor_initializer_present_flag等于0,并且sps_palette_predictor_initializer_present_flag等于0),将PredictorPaletteSize设置为等于0.
the above syntaxes are different from prior HEVC syntax by includingthe"isdualtree"syntax.
在至少一方面,上面的语法与以前的HEVC语法不同,上面的语法包括“是双树(isdualtree)”语法。
如图10所示,在实施例中,编码器或解码器可以确定当前树结构是否是双树结构,其中,在双树结构中,亮度颜色平面的分割树结构与色度颜色平面的分割树结构不同(802)。然后,基于确定当前树结构是否为双树结构,即,双树结构为“开启”还是“关闭”(805),所述编码器或解码器使用一个或多个颜色调色板对视频序列的至少一个图像进行编码或解码。例如,如果确定双树结构已开启,则编码器或解码器可使用亮度值初始化调色板预测器列表,其中,所述亮度值由调色板预测器初始化器(807)发信号通知,并且,在编码或解码过程中使用该调色板预测器列表,所述编码器或解码器用预定义值设置调色板预测器列表的色度值,而调色板预测器初始化器不向调色板预测器列表(809)发信号通知任何色度值。如果确定双树结构为关闭,则编码器或解码器可在编码或解码中使用SCC调色板模式而无需修改(811)。
2、修改调色板信息和调色板条目的信令
当开启编码亮度平面和双树时,调色板表中的调色板条目仍可为三个分量条目。然而,调色板表中的色度值可以用预定义值填充,该值可以是0,255或任何其它整数。当对调色板条目进行编码时,仍可使用调色板预测器。仍然可以发信号通知重用标志。当重用标志是1时,仅复制调色板条目的亮度分量。丢弃色度值。对于随后的新调色板条目,仅发信号通知亮度值。丢弃色度值。当更新调色板预测器时,仅更新亮度值,而忽略色度值。
当关闭编码亮度平面和双树时,调色板表中的调色板条目可为三个分量条目,并且可以使用HEVC SCC调色板信令方法。
当开启双树并且当前信道类型是色度时,调色板模式标志是0,并且,当前色度块不能为调色板模式。不需要发信号通知调色板模式标志。
下面提供了基于HEVC语法的示例编码单元语法表,其中,亮度平面和色度平面具有不同的编码树结构。
在一个实施例中,当开启双树并且当前平面是色度时,推断"palette_mode_flag[x0][y0]"为0。
在另一个实施例中,当开启双树并且当前平面是色度时,仍然发信号通知"palette_mode_flag"。但是调色板模式标志palette_mode_flag总是0,指示未使用调色板模式。
下面提供了一个示例调色板模式语法表。
在一个实施例中,关于生成当前调色板的解码过程,对于颜色分量cIdx,变量"CurrentPaletteEntries[cIdx][i]"指定当前调色板的第i个元素,并且可以如下推导:
在一个实施例中,关于调色板预测器的更新过程,可以如下推导或修改变量PredictorPaletteSize和数组PredictorPaletteEntries。
在至少一方面,上述语法与之前的HEVC语法的不同之处在于包括"||(isdualtree&&
channelType=LUMA)"语法。
如图11所示,在一个实施例中,编码器或解码器可以确定当前树结构是否是双树结构,其中,在双树结构中,亮度颜色平面的分割树结构与色度颜色平面的分割树结构不同(802),然后,基于确定当前树结构是否为双树结构,即双树结构为“开启”还是“关闭”,使用一个或多个颜色调色板,对视频序列的至少一个图像进行编码或解码(805)。例如,如果确定开启了双树结构,则编码器或解码器可向调色板预测器列表提供第一调色板的第一亮度值,并且忽略所有第一调色板的色度值,这样就不会将第一调色板的色度值提供给调色板预测器列表(813)。然后,编码器或解码器使用第二调色板对图像进行编码或解码,其中,编码器或解码器使用调色板预测器列表预测该第二调色板。如果确定关闭了双树结构,则编码器或解码器可在编码或解码中使用SCC调色板模式而无需修改(811)。
3、修改转义值的信令
在一个实施例中,当开启编码亮度平面和双树时,如果像素值是转义的,仅发信号通知亮度值并且丢弃色度值。
下面提出了基于HEVC语法的示例语法表,其中,亮度平面和色度平面具有不同的编码树结构。
在上面的语法表中,“isdualtree”指示当前树结构是否是单独的树。如果“isdualtree”为1,那么当前树结构是单独的树。如果“isdualtree”为0,那么当前树结构不是单独的树。
变量“channelType”指示当前颜色平面是亮度平面还是色度平面。如果“channelType”等于亮度Luma,则当前颜色平面是亮度平面。如果“channelType”等于色度Chroma,则当前颜色平面是色度平面。
在一个实施例中,当编码器确定开启双树结构时,编码器可以向解码器发信号通知转义像素的亮度值,而不发信号通知调色板模式的转义像素的任何色度值。如图12所示,在实施例中,解码器可接收指示转义像素的亮度值的信号,而不接收指示将在调色板模式中使用的转义像素的色度值的任何信号(817),然后在调色板模式中使用转义像素的亮度值解码至少一个图像(819)。
[第二方面]
在实施例中,当开启isdualtree时,若对色度平面进行编码,色度平面仍然可以使用调色板模式。若干实施例可启用色度平面的调色板模式。包括“第二方面”的本公开实施例可以解决当分别编码亮度和色度颜色平面时,不能将具有多个颜色分量的一个调色板表格应用于单独的颜色平面的问题。
下面描述启用色度平面的调色板模式的本公开的非限制性示例实施例。
1、发信号通知当前色度块是否使用调色板模式
在实施例中,当开启双树时,对于每个色度块,发信号通知标志,以指示当前块是否使用调色板模式。如果当前色度块正在使用调色板模式,还可以发信号通知与调色板模式有关的对应语法元素。该标志可由编码器发信号通知,并由解码器接收。
如图13所示,在实施例中,解码器可以接收信号(例如,一个标志),以指示是否使用调色板模式对当前色度块进行解码(821),并基于信号确定是否使用调色板模式对当前色度块进行解码(823)。接下来,解码器可以根据上述确定进行解码(825)。例如,在信号指示将使用调色板模式对当前色度块进行解码的情况下,解码器可以使用颜色调色板对当前色度块进行解码。
2、若与当前块位于同一位置的亮度块为调色板模式时,发信号通知当前色度块是否使用调色板模式
在实施例中,如果与色度块位于同一位置的全部或部分亮度块是调色板模式,则色度块发信号通知该色度块是否正在使用调色板模式。如果当前色度块正在使用调色板模式,还将发信号通知与调色板模式有关的对应语法元素。
在另一实施例中,如果与色度块位于同一位置的亮度块都是调色板模式,则色度块发信号通知该色度块是否正在使用调色板模式。如果当前色度块正在使用调色板模式,则还可以发信号通知与调色板模式有关的对应语法元素。如果并非所有位于同一位置的亮度块都在使用调色板模式,则当前色度块不是调色板模式,并且不需要发信号通知。
在另一实施例中,如果与色度块位于同一位置的亮度块是部分调色板模式,则当调色板模式的部分大于阈值时,发信号通知当前色度块是否正在使用调色板模式。如果当前色度块正在使用调色板模式,还可以发信号通知与调色板模式有关的对应语法元素。如果位于同一位置的亮度块使用调色板模式的部分小于或等于阈值,则当前色度块不是调色板模式,并且没有必要发信号通知。
3、使用调色板模式或不从位于同一位置的亮度块导出当前色度块。
在实施例中,如果与色度块位于同一位置的所有或部分亮度块是调色板模式,则色度块默认正在使用调色板模式。如果当前色度块正在使用调色板模式,还可以发信号通知与调色板模式有关的对应语法元素。当发信号通知色度调色板信息时,色度调色板表可以是有两个条目的表,并且两个色度分量可以共享一个索引图。
在实施例中,如果与色度块位于同一位置的亮度块都是调色板模式,则默认色度块正在使用调色板模式。如果当前色度块正在使用调色板模式,还可以发信号通知与调色板模式有关的对应语法元素。如果并非所有位于同一位置的亮度块都在使用调色板模式,则当前色度块不是调色板模式。
在实施例中,如果与色度块位于同一位置的亮度块是部分调色板模式,则当调色板模式的部分大于阈值时,默认色度块正在使用调色板模式。如果当前色度块正在使用调色板模式,还可以发信号通知与调色板模式有关的对应语法元素。如果位于同一位置的亮度块使用调色板模式的部分小于或等于阈值,则当前色度块不是调色板模式
在包括“第二方面”的上述实施例中,色度块的最大调色板大小和最大调色板预测器大小可以与亮度块相同。
在实施例中,色度块的最大调色板大小和最大调色板预测器大小可以不同于亮度块,并且可以在序列参数集、图片参数集或切片头处用信号通知最大调色板大小和最大调色板预测器大小。
当发信号通知色度块调色板模式标志时,可以发信号通知chroma_palette_mode_flag。对该标志可以进行旁路编码或上下文编码。当对该标志进行上下文编码时,可以使用1、2、……N上下文,其中,N是大于0的整数。
如图14所示,在实施例中,编码器或解码器可确定与当前色度块位于同一位置的至少一个亮度块是否正在使用调色板模式(827),根据确定的当前亮度块是否正在使用调色板模式,确定当前色度块是否将使用调色板模式(829),然后根据上述确定进行编码或解码(831)。例如,在确定使用调色板模式对当前色度块进行编码或解码的情况下,可以在调色板模式中对当前色度块进行编码或解码。该确定(829)可以根据任何上述实施例执行。
4、从位于同一位置的亮度块导出色度调色板信息
4a、从亮度索引图导出色度索引图
在实施例中,如果与色度块位于同一位置的亮度块都是调色板模式,则可以从亮度索引图导出色度块索引图。可以使用一个标志,以指示当前块是否正在重新使用亮度索引图。在实施例中,当与色度块位于同一位置的亮度块都是调色板模式时,从亮度索引图导出色度块索引图,而无需发信号通知。
如果当前色度块正在重新使用亮度索引图,由于亮度和色度的不同分辨率,色度索引图可能是从亮度向下采样的索引图。当对4:2:0格式进行下采样时,存在许多可能的位置,例如图15所示。
色度指数可以来自亮度索引图700的位置0、1、2、3,如图15所示。可以在SPS、PPS或切片头处预定义或用信号通知。
如果当前色度块没有重新使用亮度索引图,则色度可发信号通知调色板索引信息,比如,运行类型和运行长度。
在实施例中,如果与色度块位于同一位置的亮度块是部分调色板模式,当调色板模式的部分大于阈值时,色度块可以从亮度块导出索引图。推导过程可以类似于上述示例实施例的推导过程。在另一实施例中,当调色板模式的部分大于阈值时,发信号通知一个标志,以指示是否从亮度索引图导出色度块索引图。
4b、从亮度调色板预测器重用标志导出色度调色板预测器重用标志
在实施例中,如果与色度块位于同一位置的亮度块都是调色板模式,则可以从亮度调色板预测器重用标志导出色度块调色板预测器重用标志。可以使用一个标志,以指示当前块是否正在重新使用亮度调色板预测器重用标志。在实施例中,当与色度块位于同一位置的亮度块都是调色板模式时,可以从亮度调色板预测器重用标志导出色度块调色板预测器重用标志,而不发信号通知。
在实施例中,如果与色度块位于同一位置的亮度块是部分调色板模式,当调色板模式的部分大于阈值时,色度块可以从亮度块导出调色板预测器重用标志。在另一实施例中,当调色板模式的部分大于阈值时,发信号通知一个标志,以指示是否从亮度调色板预测器重用标志导出色度块调色板预测器重用标志。
[第三方面]
在示例方法中,如果输入视频是3个颜色分量视频,比如,Y、Cb和Cr,则对于每个分量,可以使用3组单独的调色板模式编码。例如,每一颜色分量可以有各自的调色板表,并且,每一颜色分量还可以有各自的调色板索引图。可以将调色板表和调色板索引图的预测信令用于每一颜色分量中。也可以具有三组调色板预测器初始化器。
1、当分别编码三个分量时,修改调色板预测器初始化
在实施例中,三个分量共享相同的“sps_palette_predictor_initializer_present_flag”或“pps_palette_predictor_initializer_present_flag”,并且当该标志为“1”时,发信号通知随后的调色板预测器初始化器语法元素。
在实施例中,三个分量具有它们自己的“sps_palette_predictor_initializer_present_flag”或“pps_palette_predictor_initializer_present_flag”。当每个分量的这些标志是“1”时,发信号通知随后的对应颜色分量的调色板预测器初始化器语法。
在实施例中,三个分量可共享相同的最大调色板大小和相同的最大调色板预测器大小,其中,最大调色板大小可由"palette_max_size"语法发信号通知,最大调色板预测器大小可由"delta_palette_max_predictor_size"语法发信号通知。在另一个实施例中,三个分量具有自己的最大调色板大小和最大调色板预测器大小。
在实施例中,这三个分量具有相同数目的调色板预测器初始化器。在这种情况下,HEVC SCC语法调色板初始化器部分不需要改变任何东西。
在实施例中,这三个分量具有它们自己的调色板预测器初始化器的数量,可以在SPS或PPS处发信号通知。以下提供了基于HEVC语法的示例SPS和PPS语法表,其中,分别编码这三个分量。在该示例中,这三个分量共享相同的"sps_palette_predictor_initializer_present_flag"或"pps_palette_predictor_initializer_present_flag"。
SPS语法
PPS语法
关于调色板预测器条目的初始化过程,该过程的输出可以是初始化的调色板预测器变量PredictorPaletteSize和PredictorPaletteEntries。
可以如下得出变量numComps:
numComps=(ChromaArrayType==0)?1:3 (9-8)
If pps_palette_predictor_initializer_present_flag is equal to 1,thefollowing applies:
–PredictorPaletteSize[comp]is set equal to
pps_num_palette_predictor_initializer[comp].
可以如下得出数组PredictorPaletteEntries:
否则(pps_palette_predictor_initializer_present_flag等于0),若
sps_palette_predictor_initializer_present_flag等于1,以下适用:
–将PredictorPaletteSize[comp]设置为等于
sps_num_palette_predictor_initializer_minus1加1[comp].
可以如下得出数组PredictorPaletteEntries:
否则(pps_palette_predictor_initializer_present_flag等于0并且
sps_palette_predictor_initializer_present_flag等于0),将PredictorPaletteSize[comp]设置为等于0。
在上述过程中,"comp"指定颜色分量,值可以是0,1,2,以指示使用了哪个颜色分量。
在至少一个方面,上述语法不同于现有HEVC语法,例如,包括以下语法:
(1)
(2)
(3)"[comp]"
2、修改调色板信息和调色板条目的信令
当使用调色板模式分别编码三个分量时,在实施例中,所有三个分量共享一个"palette_mode_flag"。如果"palette_mode_flag"为真,则使用所有三个分量的调色板模式。
在实施例中,每一个分量具有自己的“palette_mode_flag”。此标志指示当前块的对应颜色分量是否使用调色板模式。
在实施例中,三个分量中的两个分量共享一个“palette_mode_flag”,而剩余的一个分量具有自己的调色板模式标志。在一个实施例中,Cb和Cr共享一个调色板模式标志。
在实施例中,当存在不同的配置时,上述三个实施例可以一起使用。在实施例中,当存在单独的亮度和色度平面编码时,亮度可具有自己的“palette_mode_flag”。Cb和Cr可具有自己的palette_mode_flags。当亮度平面和色度平面具有相同分区时,Y、Cb和Cr可共享一个“palette_mode_flag”。
当“palette_mode_flag”为真时,针对每一颜色分量,可以发信号通知对应的调色板语法信息。下文提供基于HEVC语法的示例语法表,其中,单独地发信号通知三个颜色分量的调色板模式。该语法表还包括单独的树结构。在该示例中,变量"treeType"指定了使用单树还是双树,如果使用双树,该变量指定当前树对应于亮度分量还是色度分量。在以下语法表和解码过程中,“ComBegin”指定颜色分量,值可以是0、1、2,以指示使用哪个颜色分量。下面提供的语法名称仅是示例,并且可以是任何其它有意义的名称。
编码单元语法
调色板模式语法
/>
/>
/>
/>
生成当前调色板的解码过程可以如下:
对于ComBegin指定的颜色分量,变量CurrentPaletteEntries[ComBegin][i]指示当前调色板的第i个元素,并且可以如下得出:
可以如下得出或修改变量PredictorPaletteSize和数组PredictorPaletteEntries:
在至少一个方面,上述语法不同于现有的HEVC语法,例如,包括下列语法:
(1)
(2)"ComBegin"
(3) "&& treeType = = SINGLE_TREE | | treeType = = DUAL_TREE_LUMA"
(4) "&& treeType = = SINGLE_TREE | | treeType = = DUAL_TREE_CHROMA"
[第四方面]
在第四方面中,本公开实施例可以从位于同一位置的其它颜色分量调色板语法元素预测一个颜色分量的调色板语法元素。
1、从Cb索引图导出色度Cr索引图
在实施例中,可以从色度Cb索引图导出色度Cr块索引图。
可以使用一个标志,以指示当前Cr块是否正在重新使用Cb索引图。如果当前色度Cr块正在重新使用Cb索引图,则色度Cr不需要发信号通知调色板语法元素。
如果当前色度Cr块没有重新使用Cb索引图,则色度Cr可发信号通知调色板索引信息,比如,运行类型及运行长度。
在实施例中,可以从色度Cb索引图导出色度Cr块索引图的每个条目。
与调色板预测器的调色板预测信令类似,索引图也可以使用基于重用标志的预测编码。如果Cr索引图索引与Cb中的同位索引相同,则将索引图重用标志设置为1,否则,将索引图重用标志设置为0。然后生成索引重用图。使用对于索引图重用标志的基于运行长度的编码,发信号通知索引图重用标志。如图16所示,通过比较Cr索引图710和Cb索引图720的每个索引,生成重用索引表730。然后,可以通过运行长度编码,发信号通知重用索引图730。
2、从色度Cb调色板预测器重用标志导出色度Cr调色板预测器重用标志
在一个实施例中,可以从Cb调色板预测器重用标志导出色度Cr块调色板预测器重用标志。可以使用一个标志,以指示当前Cr块是否正在重新使用Cb调色板预测器重用标志。
在本公开的至少一个实施例中,不仅可以从Cb预测Cr,而且可以从亮度预测Cr和Cb。当根据亮度预测Cr和Cb时,可能有一些修改。例如,当预测索引图时,Cb和Cr可能需要下采样。
[第五方面]:生成具有当前块空间相邻块的组合的调色板预测器列表和HEVC调色板预测器列表]
在第五方面中,本公开实施例可以生成具有当前块的空间相邻块的组合的调色板预测器列表和HEVC调色板预测器列表。
在比较示例中,当生成调色板预测器列表时,最后一个已编码的调色板表可能不是来自当前块的空间相邻块。此外,一些相邻块可能与当前块具有较高相关性,生成调色板预测器列表时不使用这些相邻块。包括“第五方面”的本公开实施例可以使用空间相邻调色板表生成调色板预测器列表,从而解决该问题。
当对当前调色板表的调色板条目进行编码(或解码)时,可以生成新的调色板预测器列表。新的调色板预测器列表可以将空间相邻块的调色板表与HPPL组合。空间相邻块的调色板表可以生成称为SPPL的调色板预测器列表。SPPL和HPPL可以生成当前块的组合的调色板预测器列表。
例如,如图17所示,编码器或解码器可以生成第一调色板预测器列表(850)。该生成可以包括确定当前块的至少一个相邻块是否处于调色板模式;当确定相邻块处于调色板模式时,将至少一个相邻块中一个相邻块的至少一个调色板条目***到第一调色板预测器列表中。编码器或解码器还可生成当前块的第二调色板预测器列表(852),将第一调色板预测器列表的至少一个调色板条目与第二调色板预测器列表的至少一个调色板条目进行组合,生成组合的调色板预测器列表(854)。接下来,通过使用组合的调色板预测器列表,编码器或解码器可以对当前块进行编码或解码(856)。例如,通过使用组合的调色板预测器列表,编码器或解码器可以预测颜色调色板。
[1、生成SPPL]
当生成SPPL时,建议在CE4中使用虚拟块概念,这也在图7中描述。
例如,对当前块510的相邻块520和530的检查可能总共有N轮。N可以是从0开始的任何整数,比如,0、1、2、……。当N为0时,可以检查邻近的相邻块520。当N大于0时,可以检查邻近的相邻块520和非邻近的相邻块530。
在实施例中,对于每i轮,将检查五个相邻块(A、B、C、D、E)是否是调色板模式。如果一个相邻块是调色板模式,则调整(prun)调色板条目,然后将该调色板条目***到SPPL中。检查五个相邻块时可能有许多顺序。在一个实施例中,顺序可以是B->A->D->C->E。在一个实施例中,顺序可以是A->D->B->C->E。在一个实施例中,顺序可以是B->C->A->D->E。在一个实施例中,该顺序可以与块形状相结合,例如,对于较长边,编码器或解码器可以首先检查较长边中的相邻块。然后,编码器或解码器可以检查短边的相邻块。
在实施例中,对于每i轮,并非所有五个候选都需要检查。在一个实施例中,仅检查顶部候选和左侧候选,即A和B。顺序可以是B->A或A->B。在一个实施例中,仅检查右上候选(E)。在一个实施例中,仅检查右上和左下候选(C,D)。
在一个实施例中,对于每“i”轮,也检查E和B之间(称为G)或E和A之间(称为F)的附加中间候选。例如,可以检查图8的参考块552和554。在一个实施例中,F和G都进行检查,F和G的检查顺序可以基于五个候选的位置中任意设置,例如放入到五个候选中的任意两个位置。在一个实施例中,检查F或G。在一个实施例中,检查当前块的长边的中间候选。
2、将SPPL与HPPL组合
在一个实施例中,当组合两个列表时,总调色板预测器列表可保持相同,并且可由最大调色板预测器大小来约束。可以首先***SPPL,如果调色板预测器列表大小不超过最大调色板预测器列表大小,可将HPPL中的调色板条目***到调色板预测器列表中。在一个实施例中,首先***HPPL,并且以最大HPPL大小为上限,其中,可以预定义或发信号通知最大HPPL大小。然后,将SPPL***到列表中。
在一个实施例中,可以有最大组合的预测列表大小(Maximum CombinedPredictor List Size,MCPLS),可以在SPS、PPS或切片头处发信号通知MCPLS。在一个实施例中,首先***SPPL,如果调色板预测器列表大小小于MCPLS,则***HPPL,直到调色板预测器列表大小等于MCPLS。在一个实施例中,首先***HPPL,如果调色板预测器列表大小小于MCPLS,则***SPPL,直到调色板预测器列表大小等于MCPLS。
3、生成SPPL并将SPPL与HPPL组合时的调整(Pruning)方法
在实施例中,当将新的调色板条目***到列表中时,编码器或解码器可使用有损调整(lossy prunning)。当使用有损调整(lossy prunning)时,可以使用选择主要颜色的方法。当比较新的调色板条目和预测器列表中的调色板条目时,误差阈值可与量化参数(Quantization Parameter,QP)相关联。不同的QP具有不同的误差阈值。如果调色板条目的差小于误差阈值,则不***调色板条目。在实施例中,当将新的调色板条目***到列表中时,可以使用无损调整(lossless prunning)。
在一个实施例中,编码器或解码器可以例如通过以下方式执行调整(prunning):确定相邻块的至少一个调色板条目的颜色与第一调色板预测器列表已提供的调色板条目的颜色之间的差是否大于预定阈值,若确定相邻块处于调色板模式,并且,至少一个调色板条目的颜色与第一调色板预测器列表中已提供的调色板条目的颜色之间的差大于预定阈值,将相邻块的至少一个调色板条目***到第一调色板预测器列表中。
在一个实施例中,编码器或解码器可以例如通过以下方式生成组合的调色板预测器列表,从而进行调整(prunning):确定第一调色板预测器列表的至少一个调色板条目的条目颜色和第二调色板预测器列表的至少一个调色板条目的条目颜色中的一个,与组合的调色板预测器列表中已提供的调色板条目的颜色之间的差是否大于预定阈值。然后,可通过以下方式执行调整(prunning):确定第一调色板预测器列表的条目颜色和第二调色板预测器列表的条目颜色中的一个,与组合的调色板预测器列表中已提供的调色板条目的颜色之间的差大于预定阈值,将用于确定上述颜色之差的第一调色板预测器列表的至少一个调色板条目中的条目、或第二调色板预测器列表的至少一个调色板条目中的条目,***到组合的调色板预测器列表中。
4、限制SPPL的缓冲器使用
生成SPPL列表时,缓冲器使用可能受到限制。在一个实施例中,上方范围不能超过当前编码树单元(Coding Tree Unit,CTU)。在一个实施例中,上方范围不能超过当前CTU的行缓冲器(当前CTU上方的一个最小编码单元(Coding Unit,CU))。在一个实施例中,左侧范围不能超过当前CTU。在一个实施例中,左侧范围不能超过当前CTU左侧的一列。在一个实施例中,左侧范围不能超过当前CTU左侧的4像素列。在一个实施例中,左侧范围不能超过当前CTU左侧的最小cu列。
上述技术可以通过计算机可读指令实现为计算机软件,并且物理地存储在一个或多个计算机可读介质中。例如,图18示出了计算机***(600),其适于实现本公开的某些实施例。
所述计算机软件可通过任何合适的机器代码或计算机语言进行编码,通过汇编、编译、链接等机制创建包括指令的代码,所述指令可由计算机中央处理单元CPU,图形处理单元(Graphics Processing Unit,GPU)等直接执行或通过译码、微代码等方式执行。
所述指令可以在各种类型的计算机或其组件上执行,包括例如个人计算机、平板电脑、服务器、智能手机、游戏设备、物联网设备等。
图18所示的用于计算机***(600)的组件本质上是示例性的,并不用于对实现本申请实施例的计算机软件的使用范围或功能进行任何限制。也不应将组件的配置解释为与计算机***(600)的非限制性实施例中所示的任一组件或其组合具有任何依赖性或要求。
计算机***(600)可以包括某些人机界面输入设备。这种人机界面输入设备可以通过触觉输入(如:键盘输入、滑动、数据手套移动)、音频输入(如:声音、掌声)、视觉输入(如:手势)、嗅觉输入(未示出),对一个或多个人类用户的输入做出响应。所述人机界面设备还可用于捕获某些媒体,气与人类有意识的输入不必直接相关,如音频(例如:语音、音乐、环境声音)、图像(例如:扫描图像、从静止影像相机获得的摄影图像)、视频(例如二维视频、包括立体视频的三维视频)。
人机界面输入设备可包括以下中的一个或多个(仅绘出其中一个):键盘(601)、鼠标(602)、触控板(603)、触摸屏(610)、数据手套、操纵杆(605)、麦克风(606)、扫描仪(607)、照相机(608)。
计算机***(600)还可以包括某些人机界面输出设备。这种人机界面输出设备可以通过例如触觉输出、声音、光和嗅觉/味觉来刺激一个或多个人类用户的感觉。这样的人机界面输出设备可包括触觉输出设备(例如通过触摸屏(610)、数据手套或操纵杆(605)的触觉反馈,但也可以有不用作输入设备的触觉反馈设备)。例如,这样的设备可以为音频输出设备(例如,扬声器(609)、耳机(未示出))、视觉输出设备(例如,包括阴极射线管屏幕、液晶屏幕、等离子屏幕、有机发光二极管屏的屏幕,其中每一个都具有或没有触摸屏输入功能、每一个都具有或没有触觉反馈功能——其中一些可通过诸如立体画面输出的手段输出二维视觉输出或三维以上的输出;虚拟现实眼镜(未示出)、全息显示器和放烟箱(未示出))以及打印机(未示出)。
计算机***(600)还可以包括人可访问的存储设备及其相关介质,如包括具有CD/DVD的高密度只读/可重写式光盘(CD/DVD ROM/RW)(620)或类似介质(621)的光学介质、拇指驱动器(622)、可移动硬盘驱动器或固体状态驱动器(623),诸如磁带和软盘(未示出)的传统磁介质,诸如安全软件保护器(未示出)等的基于ROM/ASIC/PLD的专用设备,等等。
本领域技术人员还应当理解,结合所公开的主题使用的术语“计算机可读介质”不包括传输介质、载波或其它瞬时信号。
计算机***(600)还可以包括通往一个或多个通信网络的接口。例如,网络可以是无线的、有线的、光学的。网络还可为局域网、广域网、城域网、车载网络和工业网络、实时网络、延迟容忍网络等等。网络还包括以太网、无线局域网、蜂窝网络(GSM、3G、4G、5G、LTE等)等局域网、电视有线或无线广域数字网络(包括有线电视、***、和地面广播电视)、车载和工业网络(包括CANBus)等等。某些网络通常需要外部网络接口适配器,用于连接到某些通用数据端口或***总线(649)(例如,计算机***(600)的USB端口);其它***通常通过连接到如下所述的***总线集成到计算机***(600)的核心(例如,以太网接口集成到PC计算机***或蜂窝网络接口集成到智能电话计算机***)。通过使用这些网络中的任何一个,计算机***(600)可以与其它实体进行通信。所述通信可以是单向的,仅用于接收(例如,无线电视),单向的仅用于发送(例如CAN总线到某些CAN总线设备),或双向的,例如通过局域或广域数字网络到其它计算机***。这样的通信可以包括与云计算环境的通信(655)。上述的每个网络和网络接口可使用某些协议和协议栈。
上述的人机界面设备、人可访问的存储设备以及网络接口(654)可以连接到计算机***(600)的核心(640)。
核心(640)可包括一个或多个中央处理单元(CPU)(641)、图形处理单元(GPU)(642)、以现场可编程门阵列(FPGA)(643)形式的专用可编程处理单元、用于特定任务的加速器(644)等。这些设备以及只读存储器(ROM)(645)、随机存取存储器(646)、内部大容量存储器(例如内部非用户可存取硬盘驱动器、固态硬盘等)(647)等可通过***总线(648)进行连接。在某些计算机***中,可以以一个或多个物理插头的形式访问***总线(648),以便可通过额外的中央处理单元、图形处理单元等进行扩展。***装置可直接附接到核心的***总线(648),或通过***总线(649)进行连接。***总线的体系结构包括外部控制器接口PCI、通用串行总线USB等。图形适配器(650)可以包含在核心(640)中。
CPU(641)、GPU(642)、FPGA(643)和加速器(644)可以执行某些指令,这些指令组合起来可以构成上述计算机代码。该计算机代码可以存储在ROM(645)或RAM(646)中。过渡数据也可以存储在RAM(646)中,而永久数据可以存储在例如内部大容量存储器(647)中。通过使用高速缓冲存储器可实现对任何存储器设备的快速存储和检索,高速缓冲存储器可与一个或多个CPU(641)、GPU(642)、大容量存储器(647)、ROM(645)、RAM(646)等紧密关联。
所述计算机可读介质上可具有计算机代码,用于执行各种计算机实现的操作。介质和计算机代码可以是为本申请的目的而特别设计和构造的,也可以是计算机软件领域的技术人员所熟知和可用的介质和代码。
作为实施例而非限制,具有体系结构的计算机***(600),特别是核心(640),可以作为处理器(包括CPU、GPU、FPGA、加速器等)提供执行包含在一个或多个有形的计算机可读介质中的软件的功能。这种计算机可读介质可以是与上述的用户可访问的大容量存储器相关联的介质,以及具有非易失性的核心(640)的特定存储器,例如核心内部大容量存储器(647)或ROM(645)。实现本申请的各种实施例的软件可以存储在这种设备中并且由核心(640)执行。根据特定需要,计算机可读介质可包括一个或一个以上存储设备或芯片。该软件可以使得核心(640)特别是其中的处理器(包括CPU、GPU、FPGA等)执行本文所述的特定过程或特定过程的特定部分,包括定义存储在RAM(646)中的数据结构以及根据软件定义的过程来修改这种数据结构。另外或作为替代,计算机***可以提供逻辑硬连线或以其它方式包含在电路(例如,加速器(644))中的功能,该电路可以代替软件或与软件一起运行以执行本文所述的特定过程或特定过程的特定部分。在适当的情况下,对软件的引用可以包括逻辑,反之亦然。在适当的情况下,对计算机可读介质的引用可包括存储执行软件的电路(如集成电路(IC)),包含执行逻辑的电路,或两者兼备。本申请包括任何合适的硬件和软件组合。
虽然本申请已对多个非限制性实施例进行了描述,但实施例的各种变更、排列和各种等同替换均属于本申请的范围内。因此应理解,本领域技术人员能够设计多种***和方法,所述***和方法虽然未在本文中明确示出或描述,但其体现了本申请的原则,因此属于本申请的精神和范围之内。

Claims (9)

1.一种对视频序列进行解码的方法,其特征在于,所述方法由至少一个处理器使用处于调色板模式的至少一个颜色调色板执行,其中,所述至少一个颜色调色板中的每个颜色调色板具有多个颜色分量,当双树开启或关闭时,使用相同的颜色调色板结构,所述方法包括:
确定当前树结构是否为双树结构,其中,在双树结构中,亮度颜色平面的分割树结构与色度颜色平面的分割树结构不同;
当确定所述当前树结构为双树结构时,向调色板预测器列表提供第一颜色调色板的第一亮度值,并且忽略所有所述第一颜色调色板的色度值,从而不向所述调色板预测器列表提供所述第一颜色调色板的色度值;及,
使用所述调色板预测器列表预测出第二颜色调色板,并使用所述第二颜色调色板,对所述视频序列的至少一个图像进行解码。
2.根据权利要求1所述的方法,其特征在于,进一步包括:
接收调色板预测器初始化器;
在确定所述当前树结构为双树结构时,使用所述调色板预测器初始化器发信号通知的亮度值,初始化所述调色板预测器列表;以及,使用预定义值,设置所述调色板预测器列表的色度值,所述调色板预测器初始化器不向所述调色板预测器列表发信号通知任何色度值。
3.根据权利要求1所述的方法,其特征在于,进一步包括:
当确定所述当前树结构为双树结构,同时即将解码所述亮度颜色平面时,接收指示转义像素的亮度值的信号,而不接收指示将在所述调色板模式中使用的所述转义像素的色度值的任何信号,其中,
所述使用所述第二颜色调色板,对所述视频序列的至少一个图像进行解码包括:
使用所述转义像素的亮度值,解码所述至少一个图像。
4.根据权利要求1所述的方法,其特征在于,进一步包括:
确定与当前色度块位于同一位置的至少一个亮度块是否正在使用所述调色板模式;
若根据所述确定至少一个亮度块是否正在使用所述调色板模式,确定出当前色度块将使用所述调色板模式,则使用所述至少一个颜色调色板中的颜色调色板,解码所述当前色度块。
5.根据权利要求4所述的方法,其特征在于,
所述至少一个亮度块是与所述当前色度块位于同一位置的多个亮度块,并且,
当确定所述多个亮度块全部使用所述调色板模式时,确定所述当前色度块使用所述调色板模式。
6.根据权利要求4所述的方法,其特征在于,
所述至少一个亮度块是与所述当前色度块位于同一位置的多个亮度块,并且,
当确定所述多个亮度块中大于预定阈值数目的亮度块正在使用所述调色板模式时,确定所述当前色度块使用所述调色板模式。
7.一种视频解码装置,其特征在于,所述装置使用处于调色板模式的至少一个颜色调色板对视频序列进行解码,其中,所述至少一个颜色调色板中的每个颜色调色板具有多个颜色分量,当双树开启或关闭时,使用相同的颜色调色板结构,所述装置包括:
确定模块,用于确定当前树结构是否为双树结构,其中,在双树结构中,亮度颜色平面的分割树结构与色度颜色平面的分割树结构不同;以及,
解码模块,用于当确定所述当前树结构为双树结构时,向调色板预测器列表提供第一颜色调色板的第一亮度值,并且忽略所有所述第一颜色调色板的色度值,从而不向所述调色板预测器列表提供所述第一颜色调色板的色度值;使用所述调色板预测器列表预测出第二颜色调色板,并使用所述第二颜色调色板,对所述视频序列的至少一个图像进行解码。
8.一种计算机设备,其特征在于,包括处理器和存储器,所述存储器中存储有指令,当所述指令被处理器执行时,使得所述处理器执行如权利要求1-6中任一项所述的方法。
9.一种非易失性计算机可读介质,其特征在于,所述非易失性计算机可读介质中存储有指令,所述指令在由处理器执行时,使所述处理器执行如权利要求1-6中任一项所述的方法。
CN201980057670.8A 2018-09-14 2019-08-19 视频解码方法、装置和存储介质 Active CN113168718B (zh)

Applications Claiming Priority (9)

Application Number Priority Date Filing Date Title
US201862731767P 2018-09-14 2018-09-14
US62/731,767 2018-09-14
US201862736353P 2018-09-25 2018-09-25
US62/736,353 2018-09-25
US201862740920P 2018-10-03 2018-10-03
US62/740,920 2018-10-03
US16/536,460 2019-08-09
US16/536,460 US11025905B2 (en) 2018-09-14 2019-08-09 Method and device for decoding with palette mode
PCT/US2019/047019 WO2020055546A1 (en) 2018-09-14 2019-08-19 Method and device for decoding with palette mode

Publications (2)

Publication Number Publication Date
CN113168718A CN113168718A (zh) 2021-07-23
CN113168718B true CN113168718B (zh) 2023-08-04

Family

ID=69773471

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980057670.8A Active CN113168718B (zh) 2018-09-14 2019-08-19 视频解码方法、装置和存储介质

Country Status (4)

Country Link
US (1) US11025905B2 (zh)
EP (1) EP3759689A4 (zh)
CN (1) CN113168718B (zh)
WO (1) WO2020055546A1 (zh)

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112673640A (zh) * 2018-08-30 2021-04-16 华为技术有限公司 使用调色板译码的编码器、解码器和相应方法
US10893286B2 (en) * 2018-10-09 2021-01-12 Tencent America LLC Methods and apparatus for low-complexity MTS
AU2020224256A1 (en) * 2019-02-24 2021-09-09 Beijing Bytedance Network Technology Co., Ltd. Independent coding of palette mode usage indication
US10924750B2 (en) * 2019-03-01 2021-02-16 Alibaba Group Holding Limited Palette size constraint in palette mode for video compression system
WO2020243295A1 (en) * 2019-05-31 2020-12-03 Bytedance Inc. Palette mode with intra block copy prediction
EP3970369A4 (en) 2019-06-28 2022-07-20 ByteDance Inc. TECHNIQUES FOR MODIFYING QUANTIZATION PARAMETERS IN TRANSFORM SKIP MODE
EP3973450A4 (en) * 2019-06-28 2023-02-22 ByteDance Inc. CHROMINANCE INTRA MODE DERIVATION IN SCREEN CONTENT ENCODING
CN117459744A (zh) 2019-07-20 2024-01-26 北京字节跳动网络技术有限公司 调色板模式使用指示的条件相关编解码
CN117221536A (zh) 2019-07-23 2023-12-12 北京字节跳动网络技术有限公司 调色板模式编解码的模式确定
US11277611B2 (en) * 2019-07-24 2022-03-15 Qualcomm Incorporated Delta quantization parameter (QP) signaling in palette mode
JP2022543009A (ja) 2019-07-29 2022-10-07 北京字節跳動網絡技術有限公司 予測処理におけるパレットモードの符号化
US11206413B2 (en) * 2019-08-13 2021-12-21 Qualcomm Incorporated Palette predictor updates for local dual trees
JP7494289B2 (ja) * 2019-08-15 2024-06-03 バイトダンス インコーポレイテッド 異なるパーティション構造をもつパレット・モード
KR20220044279A (ko) 2019-08-15 2022-04-07 바이트댄스 아이엔씨 팔레트 이스케이프 심벌에 대한 엔트로피 코딩
JP2022548582A (ja) * 2019-09-12 2022-11-21 バイトダンス インコーポレイテッド 映像符号化におけるパレット予測子の使用
WO2021055782A1 (en) 2019-09-19 2021-03-25 Bytedance Inc. Quantization parameter derivation for palette mode
US11683489B2 (en) * 2019-12-26 2023-06-20 Qualcomm Incorporated Monochrome palette mode for video coding
WO2021137962A1 (en) * 2019-12-30 2021-07-08 Alibaba Group Holding Limited Method and apparatus for coding video data in palette mode
CN115152221A (zh) 2020-02-05 2022-10-04 抖音视界有限公司 用于色度分量的去方块参数
KR20220131249A (ko) * 2020-02-05 2022-09-27 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 로컬 이중 트리용 팔레트 모드
CN117544767A (zh) * 2020-03-27 2024-02-09 北京达佳互联信息技术有限公司 对视频进行编码的方法、电子装置、存储介质和程序产品
US11582491B2 (en) * 2020-03-27 2023-02-14 Qualcomm Incorporated Low-frequency non-separable transform processing in video coding
KR20220161409A (ko) * 2020-03-31 2022-12-06 알리바바 그룹 홀딩 리미티드 팔레트 예측을 위한 방법
US11700386B2 (en) 2020-06-10 2023-07-11 Tencent America LLC Adaptive colour transform related signalling for both of CU level and TU level
CN114208177B (zh) * 2020-06-10 2024-04-26 腾讯美国有限责任公司 视频编解码的方法、装置以及存储介质
US11683514B2 (en) * 2020-12-22 2023-06-20 Tencent America LLC Method and apparatus for video coding for machine

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015094711A1 (en) * 2013-12-18 2015-06-25 Mediatek Inc. Palette prediction and sharing in video coding
CN106464883A (zh) * 2014-05-22 2017-02-22 高通股份有限公司 基于调色板的视频译码中的逃脱样本译码
WO2017206805A1 (en) * 2016-05-28 2017-12-07 Mediatek Inc. Method and apparatus of palette mode coding for colour video data

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110234009B (zh) 2012-01-20 2021-10-29 维洛媒体国际有限公司 色度量化参数扩展的解码方法及装置
US20150058213A1 (en) 2013-08-21 2015-02-26 Rogers Communications Inc. Preventative security for credential transmission using smart cards
US10419774B2 (en) 2013-12-10 2019-09-17 Canon Kabushiki Kaisha Palette mode in HEVC
US9955157B2 (en) * 2014-07-11 2018-04-24 Qualcomm Incorporated Advanced palette prediction and signaling
CN107431795B (zh) 2014-12-19 2019-12-06 寰发股份有限公司 视频编码方法
KR102088560B1 (ko) * 2015-01-29 2020-03-12 캐논 가부시끼가이샤 자족식 코딩 구조를 인코딩 또는 디코딩할 때의 팔레트 예측자 초기화기
US10057587B2 (en) 2015-01-31 2018-08-21 Qualcomm Incorporated Coding escape pixels for palette mode coding
US10356432B2 (en) * 2015-09-14 2019-07-16 Qualcomm Incorporated Palette predictor initialization and merge for video coding
CN115052153A (zh) 2016-02-11 2022-09-13 交互数字Vc控股公司 用于对图像单元进行编码/解码的方法和设备
JP2021010046A (ja) * 2017-10-06 2021-01-28 シャープ株式会社 画像符号化装置及び画像復号装置
CN112673640A (zh) * 2018-08-30 2021-04-16 华为技术有限公司 使用调色板译码的编码器、解码器和相应方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015094711A1 (en) * 2013-12-18 2015-06-25 Mediatek Inc. Palette prediction and sharing in video coding
CN106464883A (zh) * 2014-05-22 2017-02-22 高通股份有限公司 基于调色板的视频译码中的逃脱样本译码
WO2017206805A1 (en) * 2016-05-28 2017-12-07 Mediatek Inc. Method and apparatus of palette mode coding for colour video data

Also Published As

Publication number Publication date
US20200092546A1 (en) 2020-03-19
WO2020055546A1 (en) 2020-03-19
CN113168718A (zh) 2021-07-23
EP3759689A1 (en) 2021-01-06
US11025905B2 (en) 2021-06-01
EP3759689A4 (en) 2022-03-16

Similar Documents

Publication Publication Date Title
CN113168718B (zh) 视频解码方法、装置和存储介质
CN111869212B (zh) 视频解码方法、装置和可读介质
CN113491120B (zh) 视频编解码方法、装置、电子设备和存储介质
US10694195B2 (en) Methods and apparatus for palette coding
CN111989918B (zh) 视频解码的方法、装置及存储介质
JP7244646B2 (ja) ビデオ符号化又は復号の方法及び装置並びにコンピュータプログラム
US11265581B2 (en) Method and apparatus for video coding
CN113545091B (zh) 对视频序列执行最大变换大小控制的解码方法和装置
CN112019844B (zh) 视频解码的方法和装置、计算机设备和存储介质
CN113966613B (zh) 视频编解码的方法、装置、可读介质及计算机***
CN113615185A (zh) 用于视频编码的方法和装置
CN113875256B (zh) 进行视频解码的方法、装置及存储介质
CN113826391A (zh) 视频编解码中最小编码块大小的范围
CN114270836A (zh) 视频编解码的颜色转换
JP2022515799A (ja) ビデオ復号の方法および装置、並びにプログラム
CN111901609A (zh) 视频解码的方法和装置、计算机设备和存储介质
CN113841390B (zh) 用于视频编解码的方法和设备
KR20220059550A (ko) 비디오 코딩을 위한 방법 및 장치
US11736708B2 (en) Method and apparatus for video coding
CN113286152B (zh) 视频解码方法、装置、计算机设备及存储介质
CN113748678B (zh) 视频编解码方法、装置和存储介质
US11496731B2 (en) String matching with single color value
JP2022548914A (ja) デブロッキング操作の高度制御
CN118235395A (zh) 应用于离线固定滤波输出的自适应环路滤波
CN112351286A (zh) 视频解码方法、装置以及可读存储介质

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
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40048501

Country of ref document: HK

GR01 Patent grant
GR01 Patent grant