CN116647688A - 视频译码中使用交叉分量线性模型进行帧内预测 - Google Patents

视频译码中使用交叉分量线性模型进行帧内预测 Download PDF

Info

Publication number
CN116647688A
CN116647688A CN202310278245.XA CN202310278245A CN116647688A CN 116647688 A CN116647688 A CN 116647688A CN 202310278245 A CN202310278245 A CN 202310278245A CN 116647688 A CN116647688 A CN 116647688A
Authority
CN
China
Prior art keywords
block
luminance
reconstructed
downsampled
chroma
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
CN202310278245.XA
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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Publication of CN116647688A publication Critical patent/CN116647688A/zh
Pending legal-status Critical Current

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/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/103Selection of coding mode or of prediction mode
    • H04N19/11Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
    • 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/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • 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/17Methods 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 an image region, e.g. an object
    • H04N19/176Methods 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 an image region, e.g. an object the region being a block, e.g. a macroblock
    • 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/59Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial sub-sampling or interpolation, e.g. alteration of picture size or resolution
    • 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

Landscapes

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

Abstract

公开了一种视频译码机制。所述机制包括接收分割成色度块和第一相邻亮度块的视频信号。所述机制还包括将所述色度块的色度像素点的预测信息编码到码流中。根据下采样相邻亮度像素点,通过帧内预测确定所述色度像素点的所述预测信息。由所述第一相邻亮度块中的单行亮度像素点生成所述下采样相邻亮度像素点。发送包括所述色度像素点的所述预测信息的码流以支持对所述色度像素点进行解码和显示。

Description

视频译码中使用交叉分量线性模型进行帧内预测
本申请是分案申请,原申请的申请号是201980046756.0,原申请日是2019年07月12日,原申请的全部内容通过引用结合在本申请中。
技术领域
本发明大体涉及视频译码,具体涉及作为视频译码机制的一部分,使用亮度像素点通过帧内预测来预测色度像素点。
背景技术
即使在视频较短的情况下也需要对大量的视频数据进行描述,当数据要在带宽容量受限的通信网络中发送或以其它方式发送时,这样可能会造成困难。因此,视频数据通常要先压缩然后在现代电信网络中发送。由于内存资源可能有限,当在存储设备中存储视频时,视频的大小也可能成为问题。视频压缩设备通常在信源侧使用软件和/或硬件,以在发送或存储之前对视频数据进行译码,从而减少用来表示数字视频图像所需的数据量。然后,压缩数据在目的地侧由用于对视频数据进行解码的视频解压缩设备接收。在有限的网络资源以及对更高视频质量的需求不断增长的情况下,需要改进压缩和解压缩技术,这些改进的技术在几乎不影响图像质量的情况下能够提高压缩比。
发明内容
在一个实施例中,本发明包括一种用于对视频数据块进行交叉分量预测的方法,其中,所述方法包括:对重建亮度块进行下采样以获得下采样亮度块,其中,所述重建亮度块与色度块对应;获取在所述重建亮度块上方的重建上方相邻亮度像素点的第一下采样像素点,或在所述重建亮度块左侧的重建左侧相邻亮度像素点的第二下采样像素点,其中,所述重建上方相邻亮度像素点位于与所述重建亮度块相邻的单行内;根据所述第一下采样像素点或第二下采样像素点,以及在所述色度块上方的重建相邻色度像素点,或在所述色度块左侧的重建相邻色度像素点,推导线性模型(linear model,LM)的参数;根据所述LM的参数和所述下采样亮度块生成所述色度块的预测色度值。
在一个实施例中,本发明包括一种用于对视频数据块进行交叉分量预测的方法,其中,所述方法包括:对重建亮度块进行下采样以获得下采样亮度块,其中,所述重建亮度块与色度块对应;获取在所述重建亮度块上方(紧接上方)的重建上方相邻亮度像素点的第一下采样像素点,和在所述重建亮度块左侧的重建左侧相邻亮度像素点的第二下采样像素点,其中,所述重建上方相邻亮度像素点位于与所述重建亮度块相邻的单行内;根据所述第一下采样像素点和所述第二下采样像素点,以及在所述色度块上方的重建相邻色度像素点,和在所述色度块左侧的重建相邻色度像素点,推导线性模型(linear model,LM)的参数;根据所述LM的参数和所述下采样亮度块生成所述色度块的预测色度值。
可选地,在上述任一方面中,提供了所述方面的另一种实现方式:通过对所述单行内的所述重建上方相邻亮度像素点进行下采样来获得所述第一下采样亮度像素点。
可选地,在上述任一方面中,提供了所述方面的另一种实现方式:通过对所述重建左侧相邻亮度像素点进行下采样来获得所述第二下采样亮度像素点。
可选地,在上述任一方面中,提供了所述方面的另一种实现方式:所述重建左侧相邻亮度像素点位于所述重建亮度块左侧的N列内,其中,0<N≤3,且N为正整数。
可选地,在上述任一方面中,提供了所述方面的另一种实现方式:所述重建左侧相邻亮度像素点位于所述重建亮度块左侧(紧接左侧)的单列内。
可选地,在上述任一方面中,提供了所述方面的另一种实现方式:所述线性模型(linear model,LM)包括以下线性模型中的一种或多种:交叉分量线性模型(cross-component linear model,CCLM)模式;多方向线性模型(multi-directional linearmodel,MDLM)模式;多模型线性模型(multiple model linear model,MMLM)模式。
在一个实施例中,本发明包括一种用于对视频数据块进行交叉分量预测的方法,其中,所述方法包括:对重建亮度块进行下采样以获得下采样亮度块,其中,所述重建亮度块与色度块对应;根据在所述重建亮度块上方的重建上方相邻亮度像素点的第一下采样像素点,或在所述重建亮度块左侧的重建左侧相邻亮度像素点的第二下采样像素点,确定最大亮度值和最小亮度值,其中,所述重建上方相邻亮度像素点位于与所述重建亮度块相邻的单行内;根据所述色度块的重建相邻色度像素点,确定第一色度值和第二色度值,其中,所述第一色度值和所述第二色度值分别与所述最大亮度值和最小亮度值相关联;根据所述最大亮度值和所述最小亮度值以及所述第一色度值和所述第二色度值,推导线性模型(linear model,LM)的参数;根据所述LM的参数和所述下采样亮度块生成所述色度块的预测色度值。
可选地,在上述任一方面中,提供了所述方面的另一种实现方式:根据大于所述第一下采样像素点的其余部分的值的一个或多个第一下采样像素点的值,确定所述最大亮度值;或根据小于所述第一下采样像素点的其余部分的值的一个或多个第一下采样像素点的值,获得所述最小亮度值;或者,根据大于所述第二下采样像素点的其余部分的值的一个或多个第二下采样像素点的值,确定所述最大亮度值;或根据小于所述第二下采样像素点的其余部分的值的一个或多个第二下采样像素点的值,获得所述最小亮度值。
可选地,在上述任一方面中,提供了所述方面的另一种实现方式:根据一个或多个重建相邻色度像素点的值确定所述第一色度值,其中,所述一个或多个重建相邻色度像素点与所述一个或多个第一下采样像素点对应,所述一个或多个第一下采样像素点的值大于所述第一下采样像素点的其余部分的值;和/或根据一个或多个重建相邻色度像素点的值确定所述第二色度值,其中,所述一个或多个重建相邻色度像素点与所述一个或多个第一下采样像素点对应,所述一个或多个第一下采样像素点的值小于所述第一下采样像素点的其余部分的值。
可选地,在上述任一方面中,提供了所述方面的另一种实现方式:根据一个或多个重建相邻色度像素点的值确定所述第一色度值,其中,所述一个或多个重建相邻色度像素点与所述一个或多个第二下采样像素点对应,所述一个或多个第二下采样像素点的值大于所述第二下采样像素点的其余部分的值;和/或根据一个或多个重建相邻色度像素点的值确定所述第二色度值,其中,所述一个或多个重建相邻色度像素点与所述一个或多个第二下采样像素点对应,所述一个或多个第二下采样像素点的值小于所述第二下采样像素点的其余部分的值。
可选地,在上述任一方面中,提供了所述方面的另一种实现方式:所述根据所述色度块的重建相邻色度像素点确定第一色度值和第二色度值包括:根据所述色度块的所述重建相邻色度像素点,确定分别与所述最大亮度值和最小亮度值对应的第一色度值和第二色度值。
可选地,在上述任一方面中,提供了所述方面的另一种实现方式:通过对所述重建上方相邻亮度像素点进行下采样获得所述第一下采样像素点,其中,所述重建上方相邻亮度像素点位于与所述重建亮度块相邻的所述单行内。
可选地,在上述任一方面中,提供了所述方面的另一种实现方式:通过对所述重建左侧相邻亮度像素点进行下采样来获得所述第二下采样像素点。
可选地,在上述任一方面中,提供了所述方面的另一种实现方式:所述重建左侧相邻亮度像素点位于所述重建亮度块左侧的N列内,其中,0<N≤3,且N为正整数。
可选地,在上述任一方面中,提供了所述方面的另一种实现方式:所述重建左侧相邻亮度像素点位于所述重建亮度块左侧的单列内。
可选地,在上述任一方面中,提供了所述方面的另一种实现方式:所述线性模型(linear model,LM)包括以下线性模型中的一种或多种:交叉分量线性模型(cross-component linear model,CCLM)模式;多方向线性模型(multi-directional linearmodel,MDLM)模式;多模型线性模型(multiple model linear model,MMLM)模式。
在一个实施例中,本发明包括一种用于对视频数据块进行交叉分量预测的方法,其中,所述方法包括:对重建亮度块进行下采样以获得下采样亮度块,其中,所述重建亮度块与色度块对应;根据在所述重建亮度块上方的重建上方相邻亮度像素点的第一下采样像素点,和在所述重建亮度块左侧的重建左侧相邻亮度像素点的第二下采样像素点,确定最大亮度值和最小亮度值,其中,所述重建上方相邻亮度像素点位于与所述重建亮度块相邻的单行内;根据所述色度块的重建相邻色度像素点,确定第一色度值和第二色度值,其中,所述第一色度值和所述第二色度值分别与所述最大亮度值和最小亮度值相关联;根据所述最大亮度值和所述最小亮度值以及所述第一色度值和所述第二色度值,推导线性模型(linear model,LM)的参数;根据所述LM的参数和所述下采样亮度块生成所述色度块的预测色度值。
可选地,在上述任一方面中,提供了所述方面的另一种实现方式:根据大于所述第一下采样像素点和第二下采样像素点的其余部分的值的一个或多个第一下采样像素点和第二下采样像素点的值,确定所述最大亮度值;或者,根据小于所述第一下采样像素点和第二下采样像素点的其余部分的值的一个或多个第一下采样像素点和第二下采样像素点的值,确定所述最小亮度值。
可选地,在上述任一方面中,提供了所述方面的另一种实现方式:根据一个或多个重建相邻色度像素点的值确定所述第一色度值,其中,所述一个或多个重建相邻色度像素点与所述一个或多个第一下采样像素点和第二下采样像素点对应,所述一个或多个第一下采样像素点和第二下采样像素点的值大于所述第一下采样像素点和第二下采样像素点的其余部分的值;或根据一个或多个重建相邻色度像素点的值确定所述第二色度值,其中,所述一个或多个重建相邻色度像素点与所述一个或多个第一下采样像素点和第二下采样像素点对应,所述一个或多个第一下采样像素点和第二下采样像素点的值小于所述第一下采样像素点和第二下采样像素点的其余部分的值。
可选地,在上述任一方面中,提供了所述方面的另一种实现方式:所述根据所述色度块的重建相邻色度像素点确定第一色度值和第二色度值包括:根据所述色度块的所述重建相邻色度像素点,确定分别与所述最大亮度值和最小亮度值对应的第一色度值和第二色度值。
可选地,在上述任一方面中,提供了所述方面的另一种实现方式:通过对所述重建上方相邻亮度像素点进行下采样获得所述第一下采样像素点,其中,所述重建上方相邻亮度像素点位于与所述重建亮度块相邻的单行内。
可选地,在上述任一方面中,提供了所述方面的另一种实现方式:通过对所述重建左侧相邻亮度像素点进行下采样来获得所述第二下采样像素点。
可选地,在上述任一方面中,提供了所述方面的另一种实现方式:所述重建左侧相邻亮度像素点位于所述重建亮度块左侧的N列内,其中,0<N≤3,且N为正整数。
可选地,在上述任一方面中,提供了所述方面的另一种实现方式:所述重建左侧相邻亮度像素点位于所述重建亮度块左侧的单列内。
可选地,在上述任一方面中,提供了所述方面的另一种实现方式:所述线性模型(linear model,LM)包括以下线性模型中的一种或多种:交叉分量线性模型(cross-component linear model,CCLM)模式;多方向线性模型(multi-directional linearmodel,MDLM)模式;多模型线性模型(multiple model linear model,MMLM)模式。
在一个实施例中,本发明包括一种用于对视频数据块进行交叉分量预测的装置,其中,所述装置包括:处理器和存储有指令的存储器,当所述处理器执行所述指令时,所述处理器:对重建亮度块进行下采样以获得下采样亮度块,其中,所述重建亮度块与色度块对应;获取在所述重建亮度块上方的重建上方相邻亮度像素点的第一下采样像素点,或在所述重建亮度块左侧的重建左侧相邻亮度像素点的第二下采样像素点,其中,所述重建上方相邻亮度像素点位于与所述重建亮度块相邻的单行内;根据所述第一下采样像素点或第二下采样像素点,以及在所述色度块上方的重建相邻色度像素点,或在所述色度块左侧的重建相邻色度像素点,推导线性模型(linear model,LM)的参数;根据所述LM的参数和所述下采样亮度块生成所述色度块的预测色度值。
在一个实施例中,本发明包括一种用于对视频数据块进行交叉分量预测的装置,其中,所述装置包括:处理器和存储有指令的存储器,当所述处理器执行所述指令时,所述处理器:对重建亮度块进行下采样以获得下采样亮度块,其中,所述重建亮度块与色度块对应;获取在所述重建亮度块上方(紧接上方)的重建上方相邻亮度像素点的第一下采样像素点,和在所述重建亮度块左侧的重建左侧相邻亮度像素点的第二下采样像素点,其中,所述重建上方相邻亮度像素点位于与所述重建亮度块相邻的单行内;根据所述第一下采样像素点和所述第二下采样像素点,以及在所述色度块上方的重建相邻色度像素点,和在所述色度块左侧的重建相邻色度像素点,推导线性模型(linear model,LM)的参数;根据所述LM的参数和所述下采样亮度块生成所述色度块的预测色度值。
可选地,在上述任一方面中,提供了所述方面的另一种实现方式:通过对所述单行内的所述重建上方相邻亮度像素点进行下采样来获得所述第一下采样亮度像素点。
可选地,在上述任一方面中,提供了所述方面的另一种实现方式:通过对所述重建左侧相邻亮度像素点进行下采样来获得所述第二下采样亮度像素点。
可选地,在上述任一方面中,提供了所述方面的另一种实现方式:所述重建左侧相邻亮度像素点位于所述重建亮度块左侧的N列内,其中,0<N≤3,且N为正整数。
可选地,在上述任一方面中,提供了所述方面的另一种实现方式:所述重建左侧相邻亮度像素点位于所述重建亮度块左侧(紧接左侧)的单列内。
可选地,在上述任一方面中,提供了所述方面的另一种实现方式:所述线性模型(linear model,LM)包括以下线性模型中的一种或多种:交叉分量线性模型(cross-component linear model,CCLM)模式;多方向线性模型(multi-directional linearmodel,MDLM)模式;多模型线性模型(multiple model linear model,MMLM)模式。
在一个实施例中,本发明包括一种用于对视频数据块进行交叉分量预测的装置,其中,所述装置包括:处理器和存储有指令的存储器,当所述处理器执行所述指令时,所述处理器:对重建亮度块进行下采样以获得下采样亮度块,其中,所述重建亮度块与色度块对应;根据在所述重建亮度块上方的重建上方相邻亮度像素点的第一下采样像素点,或在所述重建亮度块左侧的重建左侧相邻亮度像素点的第二下采样像素点,确定最大亮度值和最小亮度值,其中,所述重建上方相邻亮度像素点位于与所述重建亮度块相邻的单行内;根据所述色度块的重建相邻色度像素点,确定第一色度值和第二色度值,其中,所述第一色度值和所述第二色度值分别与所述最大亮度值和最小亮度值相关联;根据所述最大亮度值和所述最小亮度值以及所述第一色度值和所述第二色度值,推导线性模型(linear model,LM)的参数;根据所述LM的参数和所述下采样亮度块生成所述色度块的预测色度值。
可选地,在上述任一方面中,提供了所述方面的另一种实现方式:根据大于所述第一下采样像素点的其余部分的值的一个或多个第一下采样像素点的值,确定所述最大亮度值;或根据小于所述第一下采样像素点的其余部分的值的一个或多个第一下采样像素点的值,获得所述最小亮度值;或者,根据大于所述第二下采样像素点的其余部分的值的一个或多个第二下采样像素点的值,确定所述最大亮度值;或根据小于所述第二下采样像素点的其余部分的值的一个或多个第二下采样像素点的值,获得所述最小亮度值。
可选地,在上述任一方面中,提供了所述方面的另一种实现方式:根据一个或多个重建相邻色度像素点的值确定所述第一色度值,其中,所述一个或多个重建相邻色度像素点与所述一个或多个第一下采样像素点对应,所述一个或多个第一下采样像素点的值大于所述第一下采样像素点的其余部分的值;和/或根据一个或多个重建相邻色度像素点的值确定所述第二色度值,其中,所述一个或多个重建相邻色度像素点与所述一个或多个第一下采样像素点对应,所述一个或多个第一下采样像素点的值小于所述第一下采样像素点的其余部分的值。
可选地,在上述任一方面中,提供了所述方面的另一种实现方式:根据一个或多个重建相邻色度像素点的值确定所述第一色度值,其中,所述一个或多个重建相邻色度像素点与所述一个或多个第二下采样像素点对应,所述一个或多个第二下采样像素点的值大于所述第二下采样像素点的其余部分的值;和/或根据一个或多个重建相邻色度像素点的值确定所述第二色度值,其中,所述一个或多个重建相邻色度像素点与所述一个或多个第二下采样像素点对应,所述一个或多个第二下采样像素点的值小于所述第二下采样像素点的其余部分的值。
可选地,在上述任一方面中,提供了所述方面的另一种实现方式:所述根据所述色度块的重建相邻色度像素点确定第一色度值和第二色度值包括:根据所述色度块的所述重建相邻色度像素点,确定分别与所述最大亮度值和最小亮度值对应的第一色度值和第二色度值。
可选地,在上述任一方面中,提供了所述方面的另一种实现方式:通过对所述重建上方相邻亮度像素点进行下采样获得所述第一下采样像素点,其中,所述重建上方相邻亮度像素点位于与所述重建亮度块相邻的所述单行内。
可选地,在上述任一方面中,提供了所述方面的另一种实现方式:通过对所述重建左侧相邻亮度像素点进行下采样来获得所述第二下采样像素点。
可选地,在上述任一方面中,提供了所述方面的另一种实现方式:所述重建左侧相邻亮度像素点位于所述重建亮度块左侧的N列内,其中,0<N≤3,且N为正整数。
可选地,在上述任一方面中,提供了所述方面的另一种实现方式:所述重建左侧相邻亮度像素点位于所述重建亮度块左侧的单列内。
可选地,在上述任一方面中,提供了所述方面的另一种实现方式:所述线性模型(linear model,LM)包括以下线性模型中的一种或多种:交叉分量线性模型(cross-component linear model,CCLM)模式;多方向线性模型(multi-directional linearmodel,MDLM)模式;多模型线性模型(multiple model linear model,MMLM)模式。
在一个实施例中,本发明包括一种用于对视频数据块进行交叉分量预测的装置,其中,所述装置包括:处理器和存储有指令的存储器,当所述处理器执行所述指令时,所述处理器:对重建亮度块进行下采样以获得下采样亮度块,其中,所述重建亮度块与色度块对应;根据在所述重建亮度块上方的重建上方相邻亮度像素点的第一下采样像素点,和在所述重建亮度块左侧的重建左侧相邻亮度像素点的第二下采样像素点,确定最大亮度值和最小亮度值,其中,所述重建上方相邻亮度像素点位于与所述重建亮度块相邻的单行内;根据所述色度块的重建相邻色度像素点,确定第一色度值和第二色度值,其中,所述第一色度值和所述第二色度值分别与所述最大亮度值和最小亮度值相关联;根据所述最大亮度值和所述最小亮度值以及所述第一色度值和所述第二色度值,推导线性模型(linear model,LM)的参数;根据所述LM的参数和所述下采样亮度块生成所述色度块的预测色度值。
可选地,在上述任一方面中,提供了所述方面的另一种实现方式:根据大于所述第一下采样像素点和第二下采样像素点的其余部分的值的一个或多个第一下采样像素点和第二下采样像素点的值,确定所述最大亮度值;或者,根据小于所述第一下采样像素点和第二下采样像素点的其余部分的值的一个或多个第一下采样像素点和第二下采样像素点的值,确定所述最小亮度值。
可选地,在上述任一方面中,提供了所述方面的另一种实现方式:根据一个或多个重建相邻色度像素点的值确定所述第一色度值,其中,所述一个或多个重建相邻色度像素点与所述一个或多个第一下采样像素点和第二下采样像素点对应,所述一个或多个第一下采样像素点和第二下采样像素点的值大于所述第一下采样像素点和第二下采样像素点的其余部分的值;或根据一个或多个重建相邻色度像素点的值确定所述第二色度值,其中,所述一个或多个重建相邻色度像素点与所述一个或多个第一下采样像素点和第二下采样像素点对应,所述一个或多个第一下采样像素点和第二下采样像素点的值小于所述第一下采样像素点和第二下采样像素点的其余部分的值。
可选地,在上述任一方面中,提供了所述方面的另一种实现方式:所述根据所述色度块的重建相邻色度像素点确定第一色度值和第二色度值包括:根据所述色度块的所述重建相邻色度像素点,确定分别与所述最大亮度值和最小亮度值对应的第一色度值和第二色度值。
可选地,在上述任一方面中,提供了所述方面的另一种实现方式:通过对所述重建上方相邻亮度像素点进行下采样获得所述第一下采样像素点,其中,所述重建上方相邻亮度像素点位于与所述重建亮度块相邻的单行内。
可选地,在上述任一方面中,提供了所述方面的另一种实现方式:通过对所述重建左侧相邻亮度像素点进行下采样来获得所述第二下采样像素点。
可选地,在上述任一方面中,提供了所述方面的另一种实现方式:所述重建左侧相邻亮度像素点位于所述重建亮度块左侧的N列内,其中,0<N≤3,且N为正整数。
可选地,在上述任一方面中,提供了所述方面的另一种实现方式:所述重建左侧相邻亮度像素点位于所述重建亮度块左侧的单列内。
可选地,在上述任一方面中,提供了所述方面的另一种实现方式:所述线性模型(linear model,LM)包括以下线性模型中的一种或多种:交叉分量线性模型(cross-component linear model,CCLM)模式;多方向线性模型(multi-directional linearmodel,MDLM)模式;多模型线性模型(multiple model linear model,MMLM)模式。
在一个实施例中,本发明包括一种用于对视频数据进行编码/解码的电子设备,其特征在于,所述电子设备包括用于执行上述任一方面的一个或多个处理单元。
在一个实施例中,本发明包括一种存储指令的计算机可读介质,其中,所述指令在处理器中执行时,所述处理器执行根据上述任一方面的方法。
为了清楚起见,上述任一实施例可以与上述其它实施例中的任意一个或多个实施例结合,在本发明的范围内产生新的实施例。
根据以下详细说明结合附图和权利要求能更清楚地理解这些和其它特征。
附图说明
为了更透彻地理解本发明,现结合附图和具体实施方式,参阅以下简要说明,其中相同参考数字表示相同部件。
图1为对视频信号进行译码的示例性方法的流程图。
图2为用于视频译码的示例性编码和解码(编解码)系统的示意图。
图3为可以执行交叉分量帧内预测的示例性视频编码器的示意图。
图4为可以执行交叉分量帧内预测的示例性视频解码器的示意图。
图5为帧内预测模式示例的示意图。
图6为用于执行交叉分量帧内预测的示例性机制的示意图。
图7为用于执行交叉分量线性模型(cross-component linear model,CCLM)帧内预测的示例性机制的示意图。
图8为用于确定线性模型参数以支持CCLM帧内预测的示例性机制的图。
图9-图10为用于执行多方向线性模型(multi-directionl linear model,MDLM)帧内预测的示例性机制的示意图。
图11为用于确定线性模型参数以支持多模型CCLM(multiple model CCLM,MMLM)帧内预测的示例性机制的图。
图12-图15为用于下采样以支持交叉分量帧内预测的示例性机制的示意图。
图16为用于在编码器侧执行交叉分量帧内预测时采用下采样的示例性方法的流程图。
图17为用于在解码器侧执行交叉分量帧内预测时采用下采样的示例性方法的流程图。
图18为示例性视频译码设备的示意图。
图19为用于在执行交叉分量帧内预测时采用下采样的示例性系统的示意图。
图20示出了上方模板和左侧模板。
图21示出了参考像素点。
具体实施方式
首先应理解,尽管下文提供了一个或多个实施例的说明性实现方式,但所公开的系统和/或方法可使用任何数量的技术来实现,无论该技术是当前已知还是现有的。本发明决不应限于下文所说明的说明性实现方式、附图和技术,包括本文所说明并描述的示例性设计和实现方式,而是可在所附权利要求书的范围以及其等效物的完整范围内修改。
视频译码包括将视频帧分割成块,并通过帧内预测和帧间预测对块进行编码,以压缩视频文件的大小。具体地,可以将视频帧分割成编码单元(coding unit,CU),这些编码单元包括亮度编码块(coding block,CB)和色度CB(分别为亮度值和颜色值)。然后,可以使用预测(帧内或帧间)来确定编码块的参考块。预测产生预测信息,该预测信息通过参考一个或多个参考块对CB进行译码。将CB的像素点(例如,像素)与一个或多个参考块的像素点进行比较,值差保持为残差像素点。帧内预测选择与当前块在同一帧中的参考块,而帧间预测选择与当前块在不同帧中的参考块。在大多数情况下,帧内预测模式使用参考亮度块来预测亮度块,使用参考色度块来预测色度块。也可以使用交叉分量模式。在交叉分量帧内预测中,使用亮度参考像素点预测当前块中的色度像素点。
本发明涉及对执行交叉分量帧内预测的过程进行改进。具体地,亮度块所包含的像素点数通常是对应色度块的像素点数的4倍。因此,对亮度参考块进行下采样以匹配色度块的分辨率,从而支持准确的交叉分量帧内预测。下采样是降低一组像素像素点的分辨率的过程。某些下采样机制会占用大量的内存资源,却不会显著提高准确性。具体地,某些下采样机制使用多行和多列参考像素点来生成单行/单列下采样参考像素点,从而用于交叉分量帧内预测。
本文公开了改进的下采样机制,以提高交叉分量帧内预测的效率。交叉分量帧内预测可以包括CCLM模式帧内预测、MDLM模式帧内预测和/或MMLM模式帧内预测。为了进行这种帧内预测,使用同一CU中的亮度像素点和相邻CB中的亮度像素点和色度像素点作为参考像素点来预测当前块中的色度像素点。在本发明中,可以在下采样期间使用单行和/或单列相邻参考像素点来创建单行和/或单列下采样相邻参考像素点。所得到的下采样相邻参考像素点通常与从多行/多列中下采样的参考像素点一样准确。然而,使用单行和/或单列进行下采样会显著减少用于帧内预测过程的行缓冲存储器量。因此,使用单行和/或单列对相邻亮度参考像素点进行下采样降低了资源利用率,而不会显著降低交叉分量帧内预测机制的译码效率。
图1为对视频信号进行译码的示例性操作方法100的流程图。具体地,在编码器侧对视频信号进行编码。编码过程通过采用各种机制来压缩视频信号以减小视频文件大小。较小的文件大小允许在减少相关的带宽开销的同时,将压缩的视频文件发送给用户。然后,解码器对压缩的视频文件进行解码,以重建原始视频信号,向终端用户显示。解码过程通常与编码过程对应以允许解码器一致地重建视频信号。
在步骤101中,将视频信号输入编码器中。例如,所述视频信号可以是存储在存储器中的未压缩的视频文件。在另一示例中,视频文件可以由视频采集设备(如视频摄像机)采集,并且进行编码以支持视频的直播。所述视频文件可以包括音频分量和视频分量。所述视频分量包括一系列图像帧,当按顺序观看时,这些图像帧会产生运动的视觉效果。这些帧包括根据光(本文称为亮度分量(或亮度像素点))和颜色(称为色度分量(或颜色像素点))表示的像素。在一些示例中,这些帧还可以包括深度值以支持三维观看。
在步骤103中,将视频分割成块。分割包括将每个帧中的像素细分为方块和/或矩形块进行压缩。例如,在高效视频编码(High Efficiency Video Coding,HEVC)(也称为H.265和MPEG-H第2部分)中,可以首先将帧分为编码树单元(coding tree unit,CTU),这些编码树单元是预定义大小(例如,64个像素×64个像素)的块。CTU包括亮度像素点和色度像素点。可以使用编码树将CTU分成块,然后递归地细分这些块,直到获得支持进一步编码的配置。例如,可以对帧的亮度分量进行细分,直到各个块包括相对均匀的亮度值。此外,可以对帧的色度分量进行细分,直到各个块包括相对均匀的色值。因此,分割机制根据视频帧的内容而不同。
在步骤105中,采用各种压缩机制来压缩在步骤103中分割的图像块。例如,可以采用帧间预测和/或帧内预测。帧间预测旨在利用共同场景中的对象往往出现在连续帧中这一事实。因此,无需在相邻帧中对参考帧中描绘对象的块进行重复描述。具体地,一个对象(如一张桌子)可能在多个帧中保持恒定的位置。因此,只描述一次桌子,相邻帧可以重新参考参考帧。可以采用模式匹配机制来匹配多个帧中的对象。此外,由于对象移动或摄像机移动等,移动对象可以通过多个帧表示。在特定示例中,视频可以通过多个帧显示在屏幕上移动的汽车。可以使用运动矢量描述这种移动。运动矢量是一个二维矢量,提供从帧中对象的坐标到参考帧中该对象的坐标的偏移。因此,帧间预测可以将当前帧中的图像块编码为运动矢量集合,指示相对于参考帧中对应块的偏移。
帧内预测对公共帧中的块进行编码。帧内预测利用亮度分量和色度分量往往在帧中聚集这一事实。例如,一棵树的一部分中的一片绿色往往与几片类似的绿色相邻。帧内预测采用多种方向预测模式(例如,HEVC中的33种模式)、平面模式和直流(direct current,DC)模式。所述方向模式指示当前块与对应方向上邻块的像素点相似/相同。平面模式指示可以根据行边缘处的邻块对行/列(例如平面)上的一系列块进行插值。实际上,平面模式通过采用变化值的相对恒定的斜率来指示光/颜色在行/列上的平滑转变。DC模式用于边界平滑,指示块和与所有邻块的像素点相关联的平均值相似/相同,所述邻块与方向预测模式的角方向相关联。因此,帧内预测块可以将图像块表示为各种关系预测模式值而非实际值。此外,帧间预测块可以将图像块表示为运动矢量值而非实际值。在任一种情况下,预测块在某些情况下可能无法准确地表示图像块。所有差值都存储在残差块中。可以对残差块应用变换以进一步压缩文件。
在步骤107中,可以应用各种滤波技术。在HEVC中,根据环内滤波方案应用滤波器。上文描述的基于块的预测可以在解码器侧创建块状图像。此外,基于块的预测方案可以对块进行编码,然后重建编码块,以供以后用作参考块。所述环内滤波方案迭代地将噪声抑制滤波器、去块效应滤波器、自适应环路滤波器和像素点自适应偏移(sample adaptiveoffset,SAO)滤波器应用于块/帧。这些滤波器减少了此类块伪影,从而可以准确地重建编码文件。此外,这些滤波器减少了重建参考块中的伪影,使得伪影不太可能在基于重建参考块编码的后续块中产生其它的伪影。
在步骤109中,一旦对视频信号进行了分割、压缩和滤波,就将所得到的数据编码到码流中。所述码流包括上述数据以及支持在解码器侧进行适当的视频信号重建所需要的任何指示数据。例如,此类数据可以包括分割数据、预测数据、残差块和向解码器提供译码指令的各种标志。所述码流可以存储在存储器中,以便在请求时向解码器发送。还可以向多个解码器广播和/或组播所述码流。创建码流是一个迭代过程。因此,步骤101、103、105、107和109可以在多个帧和块中连续和/或同时进行。图1所示的顺序是为了清楚和便于描述而呈现的,并非旨在将视频译码过程限制于特定顺序。
在步骤111中,所述解码器接收所述码流并开始解码过程。具体地,所述解码器采用熵解码方案将所述码流转换为对应的语法数据和视频数据。在步骤111中,所述解码器使用所述码流中的语法数据来确定帧的分割。分割应该与步骤103中的块分割结果匹配。这里描述了步骤111中采用的熵编码/解码。编码器在压缩过程中进行许多选择,例如根据一个或多个输入图像中值的空间定位从多个可能选择中选择块分割方案。指示确切的选择可能会占用大量的位元。本文中使用的位元是被视为变量的二进制值(例如,可能根据上下文变化的比特值)。熵编码允许编码器丢弃任何明显不适合特定情况的选项,从而留下一组可使用的选项。然后,为每个可使用的选项分配码字。码字的长度取决于可使用的选项的数量(例如,一个位元对应两个选项,两个位元对应三个或四个选项等)。然后,所述编码器对所选选项的码字进行编码。该方案减小了码字的大小,因为码字的大小与唯一地指示从可使用选项的小子集中的一个选项,而非唯一指示从所有可能选项的潜在大集中的选择所需要的码字一样大。然后,解码器通过以与编码器类似的方式确定可使用选项集来对所述选择进行解码。通过确定可使用选项集,解码器可以读取码字并确定编码器做出的选择。
在步骤113中,所述解码器执行块解码。具体地,解码器进行逆变换来生成残差块。然后,解码器使用残差块和对应的预测块,根据分割重建图像块。所述预测块可以包括在步骤105中编码器侧生成的帧内预测块和帧间预测块。然后,根据在步骤111中确定的分割数据将重建图像块定位到重建视频信号的帧中。步骤113的语法还可以通过上文描述的熵编码在码流中指示。
在步骤115中,以类似于步骤107的方式在编码器侧对重建视频信号的帧进行滤波。例如,可以对帧应用噪声抑制滤波器、去块效应滤波器、自适应环路滤波器和SAO滤波器以去除块伪影。一旦对帧进行滤波,可以在步骤117中将视频信号输出到显示器以供终端用户观看。
本发明涉及对下采样机制进行修改,以支持帧内预测,从而在压缩块时降低资源利用率,而不会显著降低准确性,从而提高译码效率。因此,本发明改进了步骤105中在编码器侧块压缩和步骤113中在解码器侧块解码的功能。具体地,在步骤105和113中,对单行亮度像素点进行下采样,然后用于交叉分量帧内预测。
图2为用于视频译码的示例性编码和解码(编解码)系统200的示意图。具体地,编解码系统200能够实现操作方法100。编解码系统200广义地描述编码器和解码器中使用的组件。编解码系统200接收视频信号并对视频信号进行分割,如操作方法100中的步骤101和103所描述,从而产生经分割的视频信号201。然后,当作为编码器时,编解码系统200将经分割的视频信号201压缩到经编码码流中,如方法100中的步骤105、107和109所描述的。当作为解码器时,编解码系统200从码流中生成输出视频信号,如操作方法100中的步骤111、113、115和117所描述的。编解码系统200包括通用译码器控制组件211、变换缩放和量化组件213、帧内估计组件215、帧内预测组件217、运动补偿组件219、运动估计组件221、缩放和逆变换组件229、滤波器控制分析组件227、环内滤波器组件225、解码图像缓冲器组件223、标头格式化和上下文自适应二进制算术编码(context adaptive binary arithmeticcoding,CABAC)组件231。此类组件如图所示耦合。在图2中,黑线表示待编码/解码数据的移动,而虚线表示控制其它组件操作的控制数据的移动。编解码系统200的组件都可以在编码器中使用。解码器可以包括编解码系统200的组件的子集。例如,解码器可以包括帧内预测组件217、运动补偿组件219、缩放和逆变换组件229、环内滤波器组件225和解码图像缓冲器组件223。这里对这些组件进行描述。
经分割的视频信号201是已通过编码树分割成像素块的采集视频序列。编码树采用各种划分模式将像素块细分为更小的像素块。然后,可以将这些块进一步细分为更小块。所述块可以称为所述编码树上的节点。较大的父节点被划分成较小的子节点。节点被细分的次数称为节点/编码树的深度。在某些情况下,划分的块可以包括在编码单元(codingunit,CU)中。例如,CU可以是CTU的子部分,包括亮度块、一个或多个红差色度(Cr)块和一个或多个蓝差色度(Cb)块以及CU的对应语法指令。所述划分模式可以包括二叉树(binarytree,BT)、三叉树(triple tree,TT)和四叉树(quad tree,QT),用于根据所采用的划分模式,分别将节点分割为不同形状的两个、三个或四个子节点。将经分割的视频信号201转发给通用编码器控制组件211、变换缩放和量化组件213、帧内估计组件215、滤波器控制分析组件227和运动估计组件221进行压缩。
通用编码器控制组件211用于根据应用约束做出与将视频序列的图像编码到码流中相关的决策。例如,通用编码器控制组件211管理码率/码流大小相对于重建质量的优化。可以根据存储空间/带宽可用性和图像分辨率请求做出此类决策。通用编码器控制组件211还根据发送速度管理缓冲器利用率,以缓解缓存欠载和超载问题。为了解决这些问题,通用编码器控制组件211管理由其它组件进行的分割、预测和过滤。例如,通用编码器控制组件211可以动态地提高压缩复杂度以提高分辨率和增加带宽利用率,或者降低压缩复杂度以降低分辨率和带宽利用率。因此,通用编码器控制组件211控制编解码系统200的其它组件来平衡视频信号重建质量与码率问题。通用编码器控制组件211创建控制数据,这些控制数据控制其它组件的操作。还将所述控制数据转发给标头格式化和CABAC组件231,以编码到码流中,从而指示用于在解码器侧解码的参数。
还将经分割的视频信号201发送到运动估计组件221和运动补偿组件219进行帧间预测。可以将经分割的视频信号201的帧或条带分成多个视频块。运动估计组件221和运动补偿组件219相对于一个或多个参考帧中的一个或多个块对所接收视频块进行帧间预测编码以提供时间预测。编解码系统200可以执行多个译码过程,以便为每个视频数据块选择适当的译码模式等等。
运动估计组件221和运动补偿组件219可以高度集成,但出于概念目的进行单独说明。运动估计组件221执行的运动估计是生成运动矢量的过程,其中,这些运动矢量用于估计视频块的运动。例如,运动矢量可以指示译码对象相对于预测块的位移。预测块是被发现在像素差异方面与待编码块高度匹配的块。预测块也可以称为参考块。此类像素差异可以通过绝对差异和(sum of absolute difference,SAD)、平方差异和(sum of squaredifference,SSD)或其它差异度量来确定。HEVC采用若干译码对象,包括CTU、编码树块(coding tree block,CTB)和CU。例如,可以将CTU分成多个CTB,然后可以将CTB划分为多个CB包括在CU中。可以将CU编码为包括预测数据的预测单元(prediction unit,PU)和/或包括CU的变化残差数据的一个或多个变换单元(transform unit,TU)。运动估计组件221使用率失真分析作为率失真优化过程的一部分来生成运动矢量、PU和TU。例如,运动估计组件221可以确定当前块/帧的多个参考块、多个运动矢量等,并且可以选择具有最佳率失真特性的参考块、运动矢量等。最佳率失真特性平衡视频重建的质量(例如,压缩造成的数据丢失量)和译码效率(例如,最终编码的大小)。
在一些示例中,编解码系统200可以计算存储在解码图像缓冲器组件223中的参考图像的子整数像素位置的值。例如,视频编解码系统200可以插值参考图像的四分之一像素位置、八分之一像素位置或其它分数像素位置的值。因此,运动估计组件221可以执行相对于全像素位置和分数像素位置的运动搜索,并输出具有分数像素精度的运动矢量。运动估计组件221通过将PU的位置与参考图像的预测块的位置进行比较来计算帧间编码条带中视频块的PU的运动矢量。运动估计组件221将计算的运动矢量作为运动数据输出到标头格式化和CABAC组件231以进行编码,并将运动输出到运动补偿组件219。
运动补偿组件219执行的运动补偿可以涉及根据运动估计组件221所确定的运动矢量获取或生成预测块。另外,在一些示例中,运动估计组件221和运动补偿组件219可以在功能上集成。在接收当前视频块的PU的运动矢量之后,运动补偿组件219可以定位运动矢量指向的预测块。然后,从所译码的当前视频块的像素值中减去预测块的像素值,从而形成像素差值,如此形成残差视频块。通常,运动估计组件221相对于亮度分量执行运动估计,运动补偿组件219将根据亮度分量计算的运动矢量用于色度分量和亮度分量。将预测块和残差块转发给变换缩放和量化组件213。
还将经分割的视频信号201发送到帧内估计组件215和帧内预测组件217。如同运动估计组件221和运动补偿组件219,帧内估计组件215和帧内预测组件217可以高度集成,但出于概念目的进行单独说明。帧内估计组件215和帧内预测组件217相对于当前帧中的块对当前块进行帧内预测,以替代如上所述的由运动估计组件221和运动补偿组件219在各帧之间执行的帧间预测。具体地,帧内估计组件215确定帧内预测模式来用于对当前块进行编码。在一些示例中,帧内估计组件215从多个测试的帧内预测模式中选择适当的帧内预测模式来对当前块进行编码。然后,将所选择的帧内预测模式转发给标头格式化和CABAC组件231进行编码。
例如,帧内估计组件215对各种测试的帧内预测模式进行率失真分析来计算率失真值,并在测试的模式中选择具有最佳率失真特性的帧内预测模式。率失真分析通常确定编码块与经编码以产生编码块的原始未编码块之间的失真(或误差)量,以及用于产生编码块的码率(例如,比特数)。帧内估计组件215根据各种编码块的失真和速率计算比率,以确定表现出块的最佳率失真值的帧内预测模式。此外,帧内估计组件215可用于根据率失真优化(rate-distortion optimization,RDO),使用深度建模模式(depth modeling mode,DMM)对深度图的深度块进行译码。
当在编码器上实现时,帧内预测组件217可以根据由帧内估计组件215确定的所选帧内预测模式从预测块生成残差块,或者当在解码器上实现时,从码流读取残差块。所述残差块包括预测块与原始块之间的值差,表示为矩阵。然后,将残差块转发给变换缩放和量化组件213。帧内估计组件215和帧内预测组件217可以对亮度分量和色度分量进行操作。
变换缩放和量化组件213用于进一步压缩残差块。变换缩放和量化组件213对残差块应用变换,如离散余弦变换(discrete cosine transform,DCT)、离散正弦变换(discrete sine transform,DST)或概念上类似的变换,从而产生包括残差变换系数值的视频块。还可以使用小波变换、整数变换、子带变换或其它类型的变换。变换可以将残差信息从像素值域转化到变换域,如频域。变换缩放和量化组件213还用于根据频率等对变换的残差信息进行缩放。这种缩放涉及对残差信息应用缩放因子,以便在不同粒度下量化不同的频率信息,这可能会影响重建视频的最终视觉质量。变换缩放和量化组件213还用于量化变换系数以进一步降低码率。量化过程可以降低与一些或全部系数有关的位深度。可以通过调整量化参数来修改量化程度。在一些示例中,变换缩放和量化组件213随后可以对包括量化变换系数的矩阵进行扫描。将量化变换系数转发给标头格式化和CABAC组件231,以编码到码流中。
缩放和逆变换组件229应用变换缩放和量化组件213的逆操作以支持运动估计。缩放和逆变换组件229使用逆缩放、逆变换和/或反量化以重建像素域中的残差块,例如,用于以后用作参考块,所述参考块可成为另一当前块的预测块。运动估计组件221和/或运动补偿组件219可以通过将残差块添加回对应的预测块来计算参考块,以用于后续块/帧的运动估计。将滤波器应用于重建参考块,以减少在缩放、量化和变换期间产生的伪影。当预测后续块时,此类伪影可能另外导致预测不准确(并产生其它伪影)。
滤波器控制分析组件227和环内滤波器组件225将滤波器应用于残差块和/或重建图像块。例如,可以将缩放和逆变换组件229的变换残差块与帧内预测组件217和/或运动补偿组件219的对应预测块合并以重建原始图像块。然后,可以将滤波器应用于重建图像块。在一些示例中,滤波器可以转而应用于残差块。如同图2中的其它组件,滤波器控制分析组件227和环内滤波器组件225高度集成,可以一起实现,但出于概念目的进行单独描述。应用于重建参考块的滤波器应用于特定空间区域,包括多个参数以调整应用此类滤波器的方式。滤波器控制分析组件227对重建参考块进行分析,以确定应该应用此类滤波器的位置并设置对应的参数。将此类数据作为滤波器控制数据转发给标头格式化和CABAC组件231进行编码。环内滤波器组件225根据滤波器控制数据应用此类滤波器。所述滤波器可以包括去块效应滤波器、噪声抑制滤波器、SAO滤波器和自适应环路滤波器。此类滤波器可以根据示例应用于空域/像素域(例如,针对重建像素块)或频域中。
当作为编码器操作时,将经滤波的重建图像块、残差块和/或预测块存储在解码图像缓冲器组件223中,以供以后用于运动估计,如上所述。当作为解码器操作时,解码图像缓冲器组件223存储经重建和经滤波的块并将其作为输出视频信号的一部分向显示器转发。解码图像缓冲器组件223可以是能够存储预测块、残差块和/或重建图像块的任何存储器设备。
标头格式化和CABAC组件231从编解码系统200的各组件接收数据并将此类数据编码到经编码码流中以向解码器发送。具体地,标头格式化和CABAC组件231生成各种标头以对控制数据(如总体控制数据和滤波器控制数据)进行编码。此外,将预测数据(包括帧内预测)和运动数据,以及量化变换系数数据形式的残差数据均编码到码流中。最终码流包括解码器重建原始的经分割的视频信号201所需要的所有信息。此类信息还可以包括帧内预测模式索引表(也称为码字映射表)、各种块的编码上下文的定义、最可能的帧内预测模式的指示、分割信息的指示等。此类数据可以采用熵编码进行编码。例如,可以采用上下文自适应可变长度编码(context adaptive variable length coding,CAVLC)、CABAC、基于语法的上下文自适应二进制算术编码(syntax-based context-adaptive binary arithmeticcoding,SBAC)、概率区间分割熵(probability interval partitioning entropy,PIPE)编码或其它熵编码技术对信息进行编码。在熵编码之后,可以将经编码码流发送到另一设备(例如,视频解码器)或存档以用于后续发送或检索。
本发明涉及对下采样机制进行修改,以支持帧内预测,从而在压缩块时降低资源利用率,而不会显著降低准确性,从而提高译码效率。例如,本发明改进了帧内估计组件215和/或帧内预测组件217的功能。具体地,帧内估计组件215和/或帧内预测组件217获取相邻的亮度像素点块,作为预测当前色度像素点块的一部分。然后,帧内估计组件215和/或帧内预测组件217可以从邻块中对亮度像素点进行下采样,以便在进行交叉分量帧内预测时用作参考像素点。此外,帧内估计组件215和/或帧内预测组件217在下采样时使用单列和/或单行,以在不显著降低帧内预测过程的准确性的情况下,降低行缓冲存储器的利用率。
图3为可以执行交叉分量帧内预测的示例性视频编码器300的框图。视频编码器300可以用于实现编解码系统200的编码功能和/或实现操作方法100的步骤101、103、105、107和/或109。编码器300对输入视频信号进行分割,从而产生经分割的视频信号301,其中,所述经分割的视频信号301实质上类似于经分割的视频信号201。然后,通过编码器300的组件压缩经分割的视频信号301并编码到码流中。
具体地,将经分割的视频信号301转发给帧内预测组件317进行帧内预测。帧内预测组件317可以实质上类似于帧内估计组件215和帧内预测组件217。还将经分割的视频信号301转发给运动补偿组件321,以根据解码图像缓冲器组件323中的参考块进行帧间预测。运动补偿组件321可以实质上类似于运动估计组件221和运动补偿组件219。将帧内预测组件317和运动补偿组件321的预测块和残差块转发给变换和量化组件313以对残差块进行变换和量化。变换和量化组件313可以实质上类似于变换缩放和量化组件213。将经变换和量化的残差块和对应的预测块(连同相关控制数据)转发给熵编码组件331以编码到码流中。熵编码组件331可以实质上类似于标头格式化和CABAC组件231。
也将经变换和量化的残差块和/或对应的预测块从变换和量化组件313转发给逆变换和量化组件329以重建成参考块供运动补偿组件321使用。逆变换和量化组件329可以实质上类似于缩放和逆变换组件229。根据示例,也将环内滤波器组件325中的环内滤波器应用于残差块和/或重建参考块。环内滤波器组件325可以实质上类似于滤波器控制分析组件227和环内滤波器组件225。环内滤波器组件325可以包括多个滤波器,如环内滤波器组件225所描述的。然后,将滤波块存储在解码图像缓冲器组件323中,以供运动补偿组件321用作参考块。解码图像缓冲器组件323可以实质上类似于解码图像缓冲器组件223。
例如,帧内预测分量317可用于执行交叉分量帧内预测。在交叉分量帧内预测中,部分根据邻块的亮度分量预测当前块的色度分量。在编码器300中,可以对邻块进行编码,然后进行重建以用作其它块的参考块。因此,根据重建邻块中的重建相邻亮度像素点预测当前块的色度分量。下文更详细地描述多种交叉分量机制。无论使用的是哪种交叉分量机制,都对相邻亮度分量进行下采样。这是因为亮度块的分辨率通常为色度块的分辨率的四倍,因此所包含的像素点数为色度块的四倍。下采样可以使参考亮度像素点的数量与色度像素点的数量相匹配,以便在进行交叉分量帧内预测时进行准确比较。
帧内预测组件317通过使用相邻参考块中的单行和/或单列亮度像素点来进行下采样。通过比较,在下采样期间使用多行和多列亮度像素点产生与单行/单列中的下采样亮度参考像素点没有显著差异的下采样亮度参考像素点。然而,多行中的下采样亮度参考像素点进行生成所使用的行缓冲存储器空间明显多于单行中的下采样亮度参考像素点。因此,通过在确定相邻亮度参考像素点时采用单行/单列亮度像素点进行下采样,显著减少了行缓冲存储器空间量,而不会显著影响所得到的下采样亮度参考像素点的准确性。因此,帧内预测组件317占用较少的内存资源,而不会显著降低译码效率,这改进了帧内预测组件317的功能。
图4为可以执行交叉分量帧内预测的示例性视频解码器400的框图。视频解码器400可以用于实现编解码系统200的解码功能和/或实现操作方法100的步骤111、113、115和/或117。例如,解码器400从编码器300接收码流,并根据所述码流生成重建的输出视频信号,向终端用户显示。
所述码流由熵解码组件433接收。熵解码组件433用于实现熵解码方案,如CAVLC、CABAC、SBAC、PIPE编码或其它熵编码技术。例如,熵解码组件433可以使用标头信息来提供上下文以解释在码流中编码为码字的其它数据。解码信息包括对视频信号进行解码所需的任何信息,如总体控制数据、滤波器控制数据、分割信息、运动数据、预测数据和残差块中的量化变换系数。将量化变换系数转发给逆变换和量化组件429以重建成残差块。逆变换和量化组件429可以类似于逆变换和量化组件329。
将重建残差块和/或预测块转发给帧内预测组件417,以根据帧内预测操作重建成图像块。帧内预测组件417可以类似于帧内估计组件215和帧内预测组件217。具体地,帧内预测组件417采用预测模式来定位帧中的参考块,并将残差块应用于结果以重建帧内预测图像块。将重建的帧内预测图像块和/或残差块以及对应的帧间预测数据通过环内滤波器组件425转发给解码图像缓冲器组件423。解码图像缓冲器组件423和环内滤波器组件425可以分别实质上类似于解码图像缓冲器组件223和环内滤波器组件225。环内滤波器组件425对重建图像块、残差块和/或预测块进行滤波,并且将此类信息存储在解码图像缓冲器组件423中。将解码图像缓冲器组件423的重建图像块转发给运动补偿组件421进行帧间预测。运动补偿组件421可以实质上类似于运动估计组件221和/或运动补偿组件219。具体地,运动补偿组件421使用参考块的运动矢量来生成预测块,并将残差块应用于结果以重建图像块。还可以通过环内滤波器组件425将所得到的重建块转发给解码图像缓冲器组件423。解码图像缓冲器组件423继续存储附加重建图像块,这些重建图像块可以通过分割信息重建成帧。此类帧也可以位于序列中。将所述序列作为重建的输出视频信号向显示器输出。
如同编码器300,解码器400的帧内预测组件417可用于执行交叉分量帧内预测。在交叉分量帧内预测中,根据对应的重建亮度块的亮度分量,以及从相邻色度块中的重建相邻色度像素点和相邻亮度块中的重建相邻亮度像素点获得的参数,预测色度块的色度分量。例如,在解码器400中,可以重建相邻亮度块和色度块,然后用作其它块(例如,当前块)的参考块。因此,根据重建相邻亮度块中的重建相邻亮度像素点和重建相邻色度块中的重建相邻色度像素点,部分预测色度块的色度分量。下文更详细地描述多种交叉分量机制。无论使用的是哪种交叉分量机制,都对相邻亮度分量进行下采样。这是因为亮度块的分辨率通常为色度块的分辨率的4倍,因此所包含的像素点数为色度块的4倍。下采样可以使参考亮度像素点的数量与参考色度像素点的数量相匹配,以便在进行交叉分量帧内预测时进行准确比较。
帧内预测组件417通过使用相邻参考亮度块中的单行和/或单列亮度像素点来进行下采样。通过比较,在下采样期间使用多行和多列亮度像素点产生与单行/单列中的下采样的相邻亮度参考像素点没有显著差异的下采样的相邻亮度参考像素点。然而,多行中的下采样亮度参考像素点进行生成所使用的行缓冲存储器空间明显多于单行中的下采样亮度参考像素点。因此,通过采用单行/单列相邻亮度像素点进行下采样,显著减少了行缓冲存储器空间量,而不会显著影响所得到的下采样亮度参考像素点的准确性。因此,帧内预测组件417占用较少的内存资源,而不会显著降低译码效率,这改进了帧内预测组件417的功能。
图5为视频译码中使用的帧内预测模式500的示例的示意图。例如,方法100的步骤105和113、编解码系统200的帧内估计组件215和帧内预测组件217、编码器300的帧内预测组件317和/或解码器400的帧内预测组件417可以使用帧内预测模式500。
帧内预测涉及将CU中当前块中的一个或多个像素点与一个或多个邻块的一个或多个参考像素点进行匹配。然后,可以将当前块表示为选择的预测模式索引和残差块,与表示包括在当前中的所有亮度/色度值相比,当前块表示和发送的数据量小得多。当没有可用参考帧时,或者当没有对当前块、条带和/或帧使用帧间预测译码时,可以使用帧内预测。通常从同一帧中的邻块推导用于帧内预测的参考像素点。高级视频编码(Advanced VideoCoding,AVC)(也称为H.264)和H.265/HEVC都使用邻块的边界像素点的参考线作为参考像素点进行帧内预测。为了覆盖不同的纹理或结构特性,采用了多种不同的帧内预测模式500。H.265/HEVC总共支持35种单分量帧内预测模式500,这些单分量帧内预测模式500将当前像素点块与相同类型的一个或多个参考像素点(例如,通过参考亮度像素点预测的亮度像素点和通过参考色度像素点预测的色度像素点)在空间上关联。具体地,帧内预测模式500包括以模式2至模式34索引的33种方向预测模式、以模式1索引的DC模式和以模式0索引的平面模式。
在编码期间,编码器将CU中当前块的亮度值/色度值与跨越邻块边缘的参考线中对应参考像素点的亮度值/色度值进行匹配。在查找与其中一条参考线的最佳匹配时,编码器选择指向最佳匹配参考线(例如,一个或多个像素点值的最小差值)的一个方向帧内预测模式500。为了描述清楚,下文使用缩写来指代特定的方向帧内预测模式500。DirS表示从左下角顺时针计数时的起始方向帧内预测模式(例如,HEVC中的模式2)。DirE表示从左下角顺时针计数时的终止方向帧内预测模式(例如,HEVC中的模式34)。DirD表示从左下角顺时针计数时的中间方向帧内编码模式(例如,HEVC中的模式18)。DirH表示水平帧内预测模式(例如,HEVC中的模式10)。DirV表示垂直帧内预测模式(例如,HEVC中的模式26)。
DC模式作为平滑函数,推导CU中块的预测值,作为穿过邻块的参考线中所有参考像素点的平均值。平面模式返回预测值,该预测值指示参考像素点的参考线的底部与左上角处的像素点之间或左上角与右上角处的像素点之间的平滑转变(例如,值的斜率恒定)。
对于平面模式、DC模式以及从DirH到DirV的预测模式,参考线的顶行和参考线的左列都作为参考像素点。对于预测方向从DirS到DirH(包括DirS和DirH)的预测模式,参考线左列上邻块中的参考像素点作为参考像素点。对于预测方向从DirV到DirE(包括DirV和DirE)的预测模式,参考线顶行上邻块的参考像素点作为参考像素点。因此,帧内预测模式500可用于指示像素点与一个或多个参考像素点之间的空间和/或方向关系。
图6为用于执行交叉分量帧内预测600的示例性机制的示意图。编解码系统200的帧内估计组件215和/或帧内预测组件217、编码器300的帧内预测组件317和/或解码器400的帧内预测组件417可以执行交叉分量帧内预测600。具体地,可以分别在编码器侧方法100的步骤105中的块压缩期间和解码器侧方法100的步骤113中的块解码期间采用交叉分量帧内预测600。交叉分量帧内预测600的操作方式实质上类似于帧内预测模式500。然而,交叉分量帧内预测600使用亮度参考像素点来预测色度像素点以减少交叉分量冗余。
交叉分量帧内预测600根据同一CU中对应亮度块611、相邻色度块607和相邻亮度块617的参考像素点,对色度块601进行操作。具体地,CU包含一个亮度块和两个色度块。色度块601包含重建后的色度像素点。色度像素点可以包括红差色度(Cr)像素点、蓝差色度(Cb)像素点或其组合。相邻色度块607包含相邻色度像素点,相邻亮度块617包含相邻亮度像素点。相邻色度块607为与色度块601直接相邻的色度像素点块。相邻亮度块617为与亮度块611直接相邻的亮度像素点块。亮度块611位于与色度块601相同的位置,并一起渲染以分别表示图像中的亮度和颜色。交叉分量帧内预测600根据亮度块611的对应亮度像素点、相邻色度块607中的相邻色度参考像素点603以及相邻亮度块617中的相邻亮度参考像素点613进行操作。具体地,可以通过与当前块处于同一CU中的亮度块611中的亮度像素点组合,以及分别作为相邻亮度块617中的相邻参考亮度像素点613和相邻色度块607中的相邻色度参考像素点603的亮度像素点和色度像素点的集合,预测当前块601中的色度像素点。相邻色度参考像素点603取自与色度块601直接相邻的相邻色度块607的行。相邻色度参考像素点603也取自与色度块601直接相邻的相邻色度块607的列。相邻亮度参考像素点613取自与亮度块611直接相邻的相邻亮度块617的行。相邻亮度参考像素点613也取自与亮度块611直接相邻的相邻亮度块617的列。
可以采用几种机制,根据亮度块611中的亮度像素点,使用分别根据相邻亮度块617中的相邻亮度参考像素点613和相邻色度块607中的相邻色度参考像素点603生成的参数,预测当前块601中的色度像素点,如下文所详述。通常,创建线性模型,以通过将色度块601中的色度像素点与同一CU中亮度块611中的亮度像素点以及相邻亮度参考像素点613和相邻色度参考像素点603关联来确定参数。可以通过最小化相邻亮度参考像素点613与相邻色度参考像素点603之间的回归误差来计算模型参数。另一种方法涉及根据相邻亮度参考像素点613的最小亮度值和最大亮度值计算模型参数。下文详述这类计算机制。
图7为用于执行CCLM帧内预测700的示例性机制的示意图。CCLM帧内预测700是一种交叉分量帧内预测600。因此,编解码系统200的帧内估计组件215和/或帧内预测组件217、编码器300的帧内预测组件317和/或解码器400的帧内预测组件417可以执行CCLM帧内预测700。具体地,可以分别在编码器侧方法100的步骤105中的块压缩期间和解码器侧方法100的步骤113中的块解码期间采用CCLM帧内预测700。
CCLM帧内预测700预测色度块701中的色度像素点703。色度像素点703出现在以相交线示出的整数位置处。预测部分基于相邻参考像素点,这些相邻参考像素点描绘为黑色圆圈。与帧内预测模式500不同,并非仅根据相邻色度参考像素点705(表示为重建色度像素点(Rec'C))预测色度像素点703。还根据亮度参考像素点713和相邻亮度参考像素点715预测色度像素点703。具体地,CU包含一个亮度块711和两个色度块701。生成将同一CU中的色度像素点703与亮度参考像素点713关联的模型。通过将相邻亮度参考像素点715与相邻色度参考像素点705进行比较来确定模型的线性系数。
从与色度块701处于同一CU中的亮度块711中选择亮度参考像素点713。从与亮度块711相邻的邻块中的亮度像素点中选择相邻亮度参考像素点715。通过将模板717应用于亮度块711上方的邻块并将模板716应用于亮度块711左侧的邻块来选择相邻亮度参考像素点715。在重建亮度参考像素点713时,亮度参考像素点713表示为重建亮度像素点(Rec'L)。从与色度块701相邻的邻块中的色度像素点中选择相邻色度参考像素点705。通过将与模板717对应的模板707应用于色度块701上方的相邻色度块中的相邻色度像素点,并将与模板716对应的模板706应用于色度块701左侧的相邻色度块中的相邻色度像素点,选择相邻色度参考像素点705。在重建相邻色度参考像素点705时,相邻色度参考像素点705表示为重建色度像素点(Rec'C)。此外,本文所使用的模板706、707、716和717是将相邻亮度参考像素点715与相邻色度参考像素点705关联的机制。
如图所示,亮度块711所包含的像素点是色度块701的四倍。具体地,色度块701包含N个像素点数×N个像素点数,而亮度块711包含2N个像素点数×2N个像素点数。因此,亮度块711的分辨率是色度块701的分辨率的四倍。为了对亮度参考像素点713和相邻亮度参考像素点715操作以进行预测,对亮度参考像素点713和相邻亮度参考像素点715进行下采样以准确比较相邻色度参考像素点705与色度像素点703。下采样是降低一组像素点值的分辨率的过程。例如,当使用YUV 4:2:0格式时,可以按因子4(例如,宽度除以2,高度除以2)对亮度像素点进行下采样。YUV是一种颜色编码系统,根据亮度分量Y和两个色度分量U和V使用颜色空间。
一旦对相邻亮度参考像素点715和亮度参考像素点713进行下采样,就可以生成模型来预测色度块701的色度像素点703。具体地,在CCLM帧内预测700中,可以根据由等式1描述的模型预测色度块701的色度像素点703:
predC(i,j)=α·recL′(i,j)+ β (1)
其中,predC(i,j)是高度为i、宽度为j的色度块701的预测色度像素点703;recL′(i,j)为重建的下采样亮度参考像素点713;α和β为通过比较相邻的下采样亮度参考像素点715和色度参考像素点705确定的线性系数。
在一个示例中,通过最小化下采样的相邻亮度参考像素点715与色度参考像素点705之间的回归误差来确定α和β。这可以根据等式2和等式3进行:
其中,L(n)表示下采样的上方和左侧相邻重建亮度像素点(例如,下采样的相邻亮度参考像素点715);C(n)表示上方和左侧相邻重建色度像素点(例如,相邻色度参考像素点705);值N等于当前色度编码块(例如,色度块701)的宽度和高度之和。在另一示例中,根据下采样的相邻亮度参考像素点715的最小值和最大值确定α和β,如下文图8所述。
如上所述,在生成线性模型之前,对相邻亮度参考像素点715和亮度参考像素点713进行下采样。此外,使用多行和多列生成相邻亮度参考像素点715不会显著提高依照CCLM帧内预测700进行剩余计算的准确性。因此,可以在下采样期间使用单行和/或单列相邻亮度参考像素点715,这降低了行缓冲存储器的利用率,而不会显著影响CCLM帧内预测700的准确性和/或译码效率。
图8为用于确定线性模型参数以支持CCLM帧内预测700的示例性机制800的图。在机制800中,根据下采样的相邻亮度参考像素点的最小值和最大值确定在等式1中使用的α和β。这是通过最小化回归误差确定α和β的替代方法。
如图所示,可以将相邻亮度参考值与对应的相邻色度参考值进行比较。可以经过包含最小相邻亮度参考值和最大相邻亮度参考值的点绘制一条线。这条线可以表示为Y=α·X+β。
可以基于两个点根据等式4和等式5确定斜率α和Y截距β。
β=yA–αxA (5)
其中,(xA,yA)为最小相邻亮度参考值和对应的色度参考值定义的坐标;(xB,yB)为最大相邻亮度参考值和对应的色度参考值定义的坐标。因此,可以根据经过下采样的相邻亮度参考像素点的最小值和最大值的线来确定α和β。然后,可以在等式1中使用α和β来确定当前块中的色度像素点的预测值。
图9-图10为用于执行MDLM帧内预测的示例性机制的示意图。MDLM帧内预测的操作方式类似于CCLM帧内预测700,但采用了不同的模板。具体地,MDLM帧内预测在确定线性模型系数α和β时同时使用交叉分量线性模型预测(cross-component linear modelprediction,CCIP)_A模式900和CCIP_L模式1000。例如,MDLM帧内预测可以使用CCIP_A模式900和CCIP_L模式1000计算线性模型系数α和β。然后,MDLM帧内预测可以根据提供最大译码效率(例如,最小残差像素点)的结果选择CCIP_A模式900或CCIP_L模式1000。在另一示例中,MDLM帧内预测可以使用CCIP_A模式900和CCIP_L模式1000两者来确定线性模型系数α和β。
因此,使用CCIP_A模式900或CCIP_L模式1000的MDLM帧内预测是一种交叉分量帧内预测600。因此,编解码系统200的帧内估计组件215和/或帧内预测组件217、编码器300的帧内预测组件317和/或解码器400的帧内预测组件417可以执行使用CCIP_A模式900或CCIP_L模式1000的MDLM帧内预测。具体地,可以分别在编码器侧方法100的步骤105中的块压缩期间和解码器侧方法100的步骤113中的块解码期间执行使用CCIP_A模式900或CCIP_L模式1000的MDLM帧内预测。
CCIP_A模式900以类似于CCLM帧内预测700的方式生成模型,该模型根据亮度块911中的亮度参考像素点913预测色度块901中的色度像素点903,其中,亮度块911与色度块901处于相同的CU中。具体地,根据上述等式1生成线性模型。此外,以类似于CCLM帧内预测700的方式,使用模板917和对应的模板907来选择相邻亮度参考像素点915和相邻色度参考像素点905。不同之处在于模板907和模板917的形状不同。如同CCLM帧内预测700,CCIP_A模式900对相邻亮度参考像素点915和亮度参考像素点913进行下采样。CCIP_A模式900使用亮度参考像素点913来确定等式1中的Rec'L。然后,CCIP_A模式900使用下采样的相邻亮度参考像素点915和相邻色度参考像素点905来确定线性模型系数α和β。然后,可以使用线性模型系数α和β来根据等式1完成线性模型,以获得对色度像素点903的预测。
模板907和模板917分别应用于分别位于色度块901和对应的亮度块911上方并直接相邻的相邻色度块和亮度块。模板907和模板917未获得色度块901和对应的亮度块911左侧的像素点。由于模板907和模板917仅应用于色度块901和亮度块911上方,因此模板907和模板917分别水平地延伸经过色度块901和对应的亮度块911以获得更多的像素点。这使模板907和模板917可以分别获得与CCLM帧内预测700在确定线性模型系数α和β时所使用的数量相等的相邻色度参考像素点905和相邻亮度参考像素点915的数量。
CCIP_L模式1000以类似于CCLM帧内预测700的方式生成模型,该模型根据亮度块1011中的亮度参考像素点1013预测色度块1001中的色度像素点1003,其中,亮度块1011与色度块1001处于相同的CU中。具体地,根据上述等式1生成线性模型。此外,以类似于CCLM帧内预测700的方式,使用模板1016和对应的模板1006来选择相邻亮度参考像素点1015和相邻色度参考像素点1005。不同之处在于模板1006和模板1016的形状不同。如同CCLM帧内预测700,CCIP_L模式1000对相邻亮度参考像素点1015和亮度参考像素点1013进行下采样。CCIP_A模式1000使用亮度参考像素点1013来确定等式1中的Rec'L。然后,CCIP_A模式1000使用下采样的相邻亮度参考像素点1015和相邻色度参考像素点1005来确定线性模型系数α和β。然后,可以使用线性模型系数α和β来根据等式1完成线性模型,以获得对色度像素点1003的预测。
模板1006和模板1016分别应用于分别位于色度块1001和对应的亮度块1011左侧并直接相邻的相邻色度块和亮度块。模板1006和模板1016未获得色度块1001和对应的亮度块1011上方的像素点。由于模板1006和模板1016仅应用于色度块1001和亮度块1011左侧,因此模板1006和模板1016分别垂直地延伸到色度块1001和对应的亮度块1011下方以获得更多的像素点。这使模板1006和模板1016可以分别获得与CCLM帧内预测700在确定线性模型系数α和β时所使用的数量相等的相邻色度参考像素点1005和相邻亮度参考像素点1015的数量。
如上所述,在生成线性模型之前,对相邻亮度参考像素点915和1015以及亮度参考像素点913和1013进行下采样。此外,使用多行和多列生成相邻亮度参考像素点915和1015不会显著提高依照使用CCIP_A模式900和/或CCIP_L模式1000的MDLM帧内预测进行剩余计算的准确性。因此,可以在下采样期间使用单行和/或单列相邻亮度参考像素点915和1015,这降低了行缓冲存储器的利用率,而不会显著影响MDLM帧内预测的准确性和/或译码效率。
图11为用于确定线性模型参数以支持MMLM帧内预测的示例性机制1100。如图11所示的MMLM帧内预测是一种交叉分量帧内预测600。因此,编解码系统200的帧内估计组件215和/或帧内预测组件217、编码器300的帧内预测组件317和/或解码器400的帧内预测组件417可以执行MMLM帧内预测。具体地,可以分别在编码器侧方法100的步骤105中的块压缩期间和解码器侧方法100的步骤113中的块解码期间采用MMLM帧内预测。
MMLM帧内预测类似于CCLM帧内预测700。不同之处在于,在MMLM中,通过将相关亮度值(例如,Rec'L)与阈值进行比较,将相邻色度参考像素点705、相邻亮度参考像素点715和亮度参考像素点713分成各组。然后,对每个组执行CCLM帧内预测700,以确定线性模型系数α和β,并根据等式1完成对应的线性模型。可以根据以下等式6确定每个组的预测:
其中,等式6的变量与等式1类似地定义,下标1表示与第一组的关系,下标2表示与第二组的关系。
如图11所示,可以针对第一组计算线性模型系数α1和β1,可以针对第二组计算线性模型系数α2和β2。在一个具体示例中,这类值可以是α1为2、β1为1、α2为1/2、β2为–1,其中阈值为亮度值17。然后,MMLM帧内预测可以选择提供最少残差像素点和/或产生最大译码效率的结果模型。
如同本文所述的其它交叉分量帧内预测模式,在生成线性模型之前,对相邻亮度参考像素点和亮度参考像素点进行下采样。此外,使用多行和多列生成相邻亮度参考像素点不会显著提高依照MMLM帧内预测进行剩余计算的准确性。因此,可以在下采样期间使用单行和/或单列相邻亮度参考像素点,这降低了行缓冲存储器的利用率,而不会显著影响MMLM帧内预测的准确性和/或译码效率。
应说明的是,编码器可以选择所使用的帧内预测模式(例如,CCLM、MDLM和/或MMLM),并选择使用的相关模型(例如,CCIP_A、CCIP_L、第一组、第二组等)作为对应帧内预测模式的一部分。此类信息可以通过语法(例如通过使用标志)信号发送给解码器。然后,解码器可以使用所指示的帧内预测模式来重建色度块的色度像素点。
图12-图15为示例性机制1200、1300、1400和1500的示意图,这些示例性机制根据交叉分量帧内预测600、CCLM帧内预测700、机制800、使用CCIP_A模式900和CCIP_L模式1000的MDLM帧内预测,和/或如图11所示的MMLM帧内预测等进行下采样以支持交叉分量帧内预测。因此,编解码系统200的帧内估计组件215和/或帧内预测组件217、编码器300的帧内预测组件317和/或解码器400的帧内预测组件417可以执行机制1200、1300和1400。具体地,可以分别在编码器侧方法100的步骤105中的块压缩期间和解码器侧方法100的步骤113中的块解码期间采用机制1200、1300、1400和1500。
机制1200对两行1218和1219相邻亮度参考像素点以及三列1220、1221和1222相邻亮度参考像素点进行下采样。行1218和1219以及列1220、1221和1222与亮度块1211直接相邻,其中,所述亮度块1211与根据交叉分量帧内预测预测的色度块共用CU。在下采样之后,相邻亮度参考像素点的行1218和1219成为下采样的相邻亮度参考像素点的单行1216。此外,对相邻亮度参考像素点的列1220、1221和1222进行下采样,产生单列1217下采样的相邻亮度参考像素点。此外,对亮度块1211的亮度像素点进行下采样以产生下采样亮度参考像素点1212。然后,可以根据等式1,将下采样亮度参考像素点1212以及行1216和列1217的下采样的相邻亮度参考像素点用于交叉分量帧内预测。应说明的是,行1218和1219以及列1220、1221和1222的尺寸可以延伸超出亮度块1211,如图12所示。例如,每行1218/1219中的上方相邻亮度参考像素点的数量(可以表示为M)大于亮度块1211的一行中的亮度像素点数量(可以表示为W)。此外,每列1220/1221/1222中的左侧相邻亮度参考像素点的数量(可以表示为N)大于亮度块1211的列中的亮度像素点数量(可以表示为H)。
在一个示例中,可以如下实现机制1200。对于亮度块1211,将表示为A1和A2的两个上方相邻行1218和1219用于下采样以获得表示为A的下采样相邻行1216。A[i]为A中的第i个像素点,A1[i]为A1中的第i个像素点,A2[i]为A2中的第i个像素点。在一个具体示例中,可以将六抽头下采样滤波器应用于相邻行1218和1219,以根据等式7获得下采样相邻行1216。
A[i] = (A2[2i]*2+ A2[2i–1]+ A2[2i+1]+ A1[2i]*2+ A1[2i–1]+ A1[2i+1]+4)>>3; (7)
此外,左侧相邻列1220、1221和1222表示为L1、L2和L3,用于下采样以获得下采样相邻列1217,表示为L。L[i]为L中的第i个像素点,L1[i]为L1中的第i个像素点,L2[i]为L2中的第i个像素点,L3[i]为L3中的第i个像素点。在一个具体示例中,可以将六抽头下采样滤波器应用于相邻列1220、1221和1222,以根据等式8获得下采样相邻列1217。
L[i] = (L2[2i]*2+L1[2i]+L3[2i]+ L2[2i+1]*2+L1[2i+1]+L3[2i+1] +4) >>3; (8)
机制1300实质上类似于机制1200。机制1300包括亮度块1311,亮度块1311具有相邻亮度参考像素点的行1318和1319以及列1320、1321和1322,其中,亮度块1311、行1318和1319以及列1320、1321和1322分别类似于亮度块1211、行1218和1219以及列1220、1221和1222。不同之处在于,行1318和1319以及列1320、1321和1322不延伸超过亮度块1211。如同在机制1200中,对亮度块1311、行1318和1319以及列1320、1321和1322进行下采样以产生下采样亮度参考像素点1312、包含下采样的相邻亮度参考像素点的列1317和行1316。列1317和行1316不延伸超出下采样亮度参考像素点1312的块。在其它方面,下采样亮度参考像素点1312、列1317和行1316分别实质上类似于下采样亮度参考像素点1212、列1217和行1216。
机制1400类似于机制1200和1300,但采用单行1218相邻亮度参考像素点而不是两行。机制1400还采用三列1420、1421和1422相邻亮度参考像素点。行1418和列1420、1421和1422与亮度块1411直接相邻,其中,所述亮度块1411与根据交叉分量帧内预测预测的色度块共用CU。在下采样之后,相邻亮度参考像素点的行1418成为下采样的相邻亮度参考像素点的行1416。此外,对相邻亮度参考像素点的列1420、1421和1422进行下采样,产生单列1417下采样的相邻亮度参考像素点。此外,对亮度块1411的亮度像素点进行下采样以产生下采样亮度参考像素点1412。然后,可以根据等式1,将下采样亮度参考像素点1412以及行1416和列1417的下采样的相邻亮度参考像素点用于交叉分量帧内预测。
在下采样期间,行和列存储在行缓冲器的内存中。在下采样期间省略行1319,而是使用单行1418的值显著降低了行缓冲器中的内存利用率。然而,已经发现行1316的下采样的相邻亮度参考像素点实质上类似于行1416的下采样的相邻亮度参考像素点。因此,在下采样期间省略行1319而是使用单行1418降低了行缓冲器中的内存利用率,并因此实现了更高的处理速度、更高的并行性、更少的内存需求等,而不牺牲准确性和译码效率。因此,在一个示例性实施例中,对相邻亮度参考像素点的单行1418进行下采样以用于交叉分量帧内预测。
在一个示例中,可以如下实现机制1400。对于亮度块1411,将表示为A1的上方相邻行1418用于下采样以获得表示为A的下采样相邻行1416。A[i]为A中的第i个像素点,A1[i]为A1中的第i个像素点。在一个具体示例中,可以将三抽头下采样滤波器应用于相邻行1418,以根据等式9获得下采样相邻行1416。
A[i] = (A1[2i]*2+ A1[2i–1]+ A1[2i+1]+2)>>2; (9)
此外,左侧相邻列1420、1421和1422表示为L1、L2和L3,用于下采样以获得下采样相邻列1417,表示为L。L[i]为L中的第i个像素点,L1[i]为L1中的第i个像素点,L2[i]为L2中的第i个像素点,L3[i]为L3中的第i个像素点。在一个具体示例中,可以将六抽头下采样滤波器应用于相邻列1320、1321和1322,以根据等式10获得下采样相邻列1317。
L[i] = (L2[2i]*2+L1[2i]+L 3[2i]+ L2[2i+1]*2+L1[2i+1]+L0[2i+1] +4) >>3; (10)
应说明的是,机制1400不限于所描述的下采样滤波器。例如,并非如等式9中所述采用三抽头下采样滤波器,也可以如下式11中所述直接提取像素点。
A[i] = A1[2i]; (11)
机制1500与机制1300类似,但分别使用单行1518相邻亮度参考像素点和单列1520相邻亮度参考像素点,而不是使用两行1318和1319以及三列1320、1321和1322。行1518和列1520与亮度块1511直接相邻,其中,所述亮度块1511与根据交叉分量帧内预测预测的色度块共用CU。在下采样之后,相邻亮度参考像素点的行1518成为下采样的相邻亮度参考像素点的行1516。此外,对相邻亮度参考像素点的列1520进行下采样,产生单列1517下采样的相邻亮度参考像素点。然后,可以根据等式1,将行1516和列1517的下采样的相邻亮度参考像素点用于交叉分量帧内预测。
机制1500在下采样期间省略行1319以及列1321和1322,而是使用单行1518和单列1520的值,这显著降低了行缓冲器中的内存利用率。然而,已经发现行1316和列1317的下采样的相邻亮度参考像素点分别实质上类似于行1516和列1517的下采样的相邻亮度参考像素点。因此,在下采样期间省略行1319以及列1321和1322而是使用单行1518和单列1520降低了行缓冲器中的内存利用率,并因此实现了更高的处理速度、更高的并行性、更少的内存需求等,而不牺牲准确性和译码效率。因此,在另一个示例性实施例中,对单行1518的相邻亮度参考像素点和单列1520的相邻亮度参考像素点进行下采样,以用于交叉分量帧内预测。
在一个示例中,可以如下实现机制1500。对于亮度块1511,将表示为A1的上方相邻行1518用于下采样以获得表示为A的下采样相邻行1516。A[i]为A中的第i个像素点,A1[i]为A1中的第i个像素点。在一个具体示例中,可以将三抽头下采样滤波器应用于相邻行1518,以根据等式12获得下采样相邻行1516。
A[i] = (A1[2i]*2+ A1[2i–1]+ A1[2i+1]+2)>>2; (12)
此外,左相邻列1520表示为L1,用于下采样以获得下采样相邻列1517,表示为L。L[i]为L中的第i个像素点,L1[i]为L1中的第i个像素点。在一个具体示例中,可以将二抽头下采样滤波器应用于相邻列1520,以根据等式13获得下采样相邻列1517。
L[i] = (L1[2i] + L1[2i+1] +1) >>2; (13)
在一个替代示例中,可以修改机制1500以在下采样时采用L2列(例如,列1321)而不是L1列(例如,列1520)。在这种情况下,可以将二抽头下采样滤波器应用于相邻列L2,以根据等式14获得下采样相邻列1517。应说明的是,机制1500不限于所描述的下采样滤波器。例如,并非如等式12和13中所述采用二抽头和三抽头下采样滤波器,也可以如下式14和15中所述直接提取像素点。
A[i] = A1[2i]; (14)
L[i] = L2[2i]; (15)
此外,还应说明,当行1418、1416、1518、1516和/或列1420、1421、1422、1417、1520和/或1517的尺寸延伸超出对应的亮度块1411和/或1511(例如,如图12所示)时,也可以应用机制1400和1500。
图16为用于对视频数据块进行交叉分量预测的示例性方法1600的流程图。在步骤1601中,对重建亮度块进行下采样以获得下采样亮度块。所述重建亮度块与色度块对应。在步骤1603中,获取在所述重建亮度块上方的重建上方相邻亮度像素点的第一下采样像素点,和/或在所述重建亮度块左侧的重建左侧相邻亮度像素点的第二下采样像素点。所述重建上方相邻亮度像素点位于与所述重建亮度块相邻的单行内。在步骤1605中,根据所述第一下采样像素点和/或第二下采样像素点,以及在所述色度块上方的重建相邻色度像素点,和/或在所述色度块左侧的重建相邻色度像素点,推导LM的参数。在步骤1607中,根据所述LM的参数和所述下采样亮度块生成所述色度块的预测色度值。
具体地,在使用CCIP_A模式900进行MDLM帧内预测的情况下,根据第一下采样像素点和在色度块上方的重建相邻色度像素点,推导LM的参数。在使用CCIP_L模式1000进行MDLM帧内预测的情况下,根据第二下采样像素点和在色度块左侧的重建相邻色度像素点,推导LM的参数。在进行CCLM帧内预测的情况下,根据所述第一下采样像素点和第二下采样像素点,以及在所述色度块上方的重建相邻色度像素点,和在所述色度块左侧的重建相邻色度像素点,推导LM的参数。
应说明的是,在重建亮度块左侧的重建相邻亮度像素点可以包括在重建亮度块左侧的N列亮度像素点,其中,0<N≤3,且N为正整数。此外,在重建亮度块左侧的重建相邻亮度像素点可以包括在重建亮度块左侧的单列亮度像素点。此外,LM可以包括以下中的一种或多种:CCLM模式、MDLM模式和MMLM模式。
图17为用于对视频数据块进行交叉分量预测的另一示例性方法的流程图。在步骤1701中,对重建亮度块进行下采样以获得下采样亮度块。所述重建亮度块与色度块对应。在步骤1703中,根据在所述重建亮度块上方的重建上方相邻亮度像素点的第一下采样像素点,和/或在所述重建亮度块左侧的重建左侧相邻亮度像素点的第二下采样像素点,确定最大亮度值和最小亮度值,其中,所述重建上方相邻亮度像素点位于与所述重建亮度块相邻的单行内。在步骤1705中,根据所述色度块的重建相邻色度像素点,确定第一色度值和第二色度值,其中,所述第一色度值和所述第二色度值分别与所述最大亮度值和最小亮度值相关联。在步骤1707中,根据所述最大亮度值和所述最小亮度值以及所述第一色度值和所述第二色度值,推导LM的参数。在步骤1709中,根据所述LM的参数和所述下采样亮度块生成所述色度块的预测色度值。
具体地,在使用CCIP_A模式900进行MDLM帧内预测的情况下,根据在重建亮度块上方的重建上方相邻亮度像素点的第一下采样像素点,确定最大亮度值和最小亮度值。在使用CCIP_L模式1000进行MDLM帧内预测的情况下,根据在重建亮度块左侧的重建左侧相邻亮度像素点的第二下采样像素点,确定最大亮度值和最小亮度值。在进行CCLM帧内预测的情况下,根据在重建亮度块上方的重建上方相邻亮度像素点的第一下采样像素点,和在重建亮度块左侧的重建左侧相邻亮度像素点的第二下采样像素点,确定最大亮度值和最小亮度值。
应说明的是,在重建亮度块左侧的重建相邻亮度像素点可以包括在重建亮度块左侧的N列亮度像素点,其中,0<N≤3,且N为正整数。此外,在重建亮度块左侧的重建相邻亮度像素点可以包括在重建亮度块左侧的单列亮度像素点。此外,LM可以包括以下中的一种或多种:CCLM模式、MDLM模式和MMLM模式。
例如,方法1600可以采用机制1300和/或1400作为交叉分量帧内预测600、CCLM帧内预测700、机制800、使用CCIP_A模式900和CCIP_L模式1000的MDLM帧内预测,和/或图11中所述的MMLM帧内预测的一部分。此外,编解码系统200的帧内估计组件215和/或帧内预测组件217以及编码器300的帧内预测组件317可以执行方法1600。具体地,可以在编码器侧方法100的步骤105中的块压缩期间采用方法1600。
在块压缩期间进行方法1600,例如作为率失真优化过程的一部分。在编码器侧接收视频信号。可以将视频信号分割成CU,所述CU包含:包含色度像素点的色度块和包含用作亮度参考像素点的亮度像素点的对应亮度块。方法1600可以确定执行交叉分量帧内预测以压缩色度像素点的色度块。
下采样包括对单行相邻亮度参考像素点进行下采样和/或对单列相邻亮度参考像素点进行下采样。
用于对色度像素点进行编码的交叉分量帧内预测机制可以包括CCLM预测模式帧内预测、MDLM预测模式帧内预测和/或MMLM预测模式帧内预测。
根据下采样相邻亮度像素点和对应的相邻色度像素点确定表示为α和β的线性模型系数。如上所述,可以使用如上所述的等式2和等式3,使下采样相邻亮度像素点与相邻色度像素点之间的回归误差最小化而确定线性模型系数。在另一示例中,可以根据如上所述的等式4和等式5,计算穿过下采样的相邻亮度参考像素点的最小值和最大值的线的斜率和Y截距,从而确定线性模型系数。
根据线性模型系数确定色度块中色度像素点的预测信息。具体地,可以根据等式1确定色度像素点的预测信息。因此,可以根据下采样亮度块(如亮度块)的值以及线性模型系数α和β来确定这种预测信息。在确定预测信息后,就可以根据预测信息与色度像素点之间的差值确定色度块的残差块。
将色度块的残差数据编码到码流中。如上所述,根据下采样相邻亮度像素点,通过帧内预测确定色度像素点的预测信息。此外,由第一邻块的单行亮度像素点和/或第二邻块的单列亮度像素点生成下采样相邻亮度像素点。这种编码包括将帧内预测模式(例如,CCLM、MDLM和/或MMLM和/或对应的模型/组)的指示和残差块编码到码流中以表示色度像素点。
将码流发送给解码器。所述码流包括色度像素点的预测信息,以支持对作为视频流一部分的色度像素点进行解码和显示。
例如,方法1700可以采用机制1300和/或1400作为交叉分量帧内预测600、CCLM帧内预测700、机制800、使用CCIP_A模式900和CCIP_L模式1000的MDLM帧内预测,和/或图11中所述的MMLM帧内预测的一部分。此外,编解码系统200的帧内估计组件215和/或帧内预测组件217以及解码器400的帧内预测组件417可以执行方法1700。具体地,可以在解码器侧方法100的步骤113中的块解码期间采用方法1700。
方法1700在块解码期间进行,例如作为对码流中的块进行重建以显示的一部分。接收码流。所述码流包括色度块的残差数据。方法1700可以确定执行交叉分量帧内预测以压缩色度像素点的色度块。
下采样包括对单行相邻亮度参考像素点进行下采样和/或对单列相邻亮度参考像素点进行下采样。
交叉分量帧内预测机制可以通过码流中的语法、标志或其它数据指示,并且可以包括CCLM预测模式帧内预测、MDLM预测模式帧内预测和/或MMLM预测模式帧内预测。
根据下采样相邻亮度像素点和对应的相邻色度像素点确定表示为α和β的线性模型系数。如上所述,可以使用如上所述的等式2和等式3,使下采样相邻亮度像素点与相邻色度像素点之间的回归误差最小化而确定线性模型系数。在另一示例中,可以根据如上所述的等式4和等式5,计算穿过下采样的相邻亮度参考像素点的最小值和最大值的线的斜率和Y截距,从而确定线性模型系数。
根据线性模型系数确定色度块中色度像素点的预测信息。具体地,可以根据等式1确定色度像素点的预测信息。因此,可以根据与色度块在相同的CU中的亮度块中的下采样亮度参考像素点的值,以及在步骤1707处确定的线性模型系数α和β,确定这种预测信息。在确定预测信息后,可以确定码流中色度块的残差块。应说明的是,上述项目可以包括从码流中确定帧内预测模式(例如,CCLM、MDLM和/或MMLM和/或对应的模型/组)的指示和残差块。
根据预测信息对色度块的色度像素点进行解码,而所述预测信息转而通过码流所指示的帧内预测,根据下采样相邻亮度像素点确定。如上所述,由单行相邻亮度像素点和/或单列相邻亮度像素点生成下采样相邻亮度像素点。这种解码可以包括通过将残差块应用于预测信息对色度块的色度像素点进行解码。在步骤1711中,将包含重建色度像素点的色度块作为重建视频的一部分向显示器转发。
图18为示例性视频译码设备1800的示意图。视频译码设备1800适用于实现本文描述的所公开示例/实施例。视频译码设备1800包括下行端口1820、上行端口1850,和/或收发单元(Tx/Rx)1810,其中,所述收发单元包括用于通过网络在上游和/或下游发送数据的发射器和/或接收器。视频译码设备1800还包括:处理器1830,包括用于处理数据的逻辑单元和/或中央处理单元(central processing unit,CPU);和用于存储数据的存储器1832。视频译码设备1800还可以包括与上行端口1850和/或下行端口1820耦合的光电(optical-to-electrical,OE)组件、电光(electrical-to-optical,EO)组件,和/或无线通信组件,用于通过光或无线通信网络进行数据通信。视频译码设备1800还可以包括输入和/或输出(input/output,I/O)设备1860,用于向用户发送数据和从用户发送数据。I/O设备1860可以包括输出设备,如用于显示视频数据的显示器、用于输出音频数据的扬声器等。I/O设备1860还可以包括输入设备,如键盘、鼠标、轨迹球等,和/或用于与此类输出设备交互的对应接口。
处理器1830通过硬件和软件实现。处理器1830可以实现为一个或多个CPU芯片、核(例如,多核处理器)、现场可编程门阵列(field-programmable gate array,FPGA)、专用集成电路(application specific integrated circuit,ASIC)和数字信号处理器(digitalsignal processor,DSP)。处理器1830与下行端口1820、Tx/Rx 1810、上行端口1850和存储器1832通信。处理器1830包括译码模块1814。译码模块1814实现上述公开的实施例,如方法100、1600和1700和/或机制1400和/1500,作为帧内预测600、CCLM帧内预测700、机制800、使用CCIP_A模式900和CCIP_L模式1000的MDLM帧内预测,和/或图11所述的MMLM帧内预测的一部分,以及本文所述的任何其它方法/机制。此外,译码模块1814可以实现编解码系统200、编码器300和/或解码器400。例如,译码模块1814可以用于根据同一CU的下采样亮度像素点,并通过将相邻色度参考像素点与下采样的相邻亮度参考像素点进行比较来执行交叉分量帧内预测,以对色度像素点进行译码。这可以根据等式1和等式2-3和/或根据等式1和等式4-5来完成。具体地,译码模块1814使用在色度块上方的邻块的单行和/或在色度块左侧的邻块的单列对相邻亮度参考像素点进行下采样。如上所述,使用单行和/或单列可以减少行缓冲存储器的利用率,而不会显著降低译码准确性和/或译码效率。因此,译码模块1814改进了视频译码设备1800的功能,并解决了视频译码领域特有的问题。此外,译码模块1814可以将视频译码设备1800变换到不同的状态。或者,译码模块1814可以实现为存储在存储器1832中并由处理器1830执行的指令(例如,存储在非瞬时性介质中的计算机程序产品)。
存储器1832包括一个或多个存储器类型,如磁盘、磁带机、固态驱动器、只读存储器(read only memory,ROM)、随机存取存储器(random access memory,RAM)、闪存、三元内容可寻址存储器(ternary content-addressable memory,TCAM)、静态随机存取存储器(static random-access memory,SRAM)等。存储器1832可用作溢出数据存储设备,以在选择程序执行时存储此类程序,并存储在程序执行期间读取的指令和数据。
图19为用于在执行交叉分量帧内预测时采用下采样的示例性系统1900的示意图。系统1900包括编码器1902和解码器1910,可以由编解码系统200、编码器300和/或解码器400实现。
编码器1902包括输入模块1903,用于接收分割成色度块和第一邻块的视频信号。编码器1902还包括编码模块1905,用于将色度块的色度像素点的预测信息编码到码流中,其中,根据下采样相邻亮度像素点,通过帧内预测确定色度像素点的预测信息,其中,所述下采样相邻亮度像素点由第一邻块的单行亮度像素点生成。编码器1902还包括发送模块1907,用于发送包括色度像素点的预测信息的码流,以支持对色度像素点进行解码和显示。编码器1902还用于执行方法1600中的任一步骤。
解码器1910包括接收模块1911,用于接收包括色度块的色度像素点的预测信息的码流。解码器1910还包括解码模块1913,用于根据预测信息和下采样相邻亮度像素点对色度块的色度像素点进行解码,其中,所述下采样相邻亮度像素点由第一邻块的单行亮度像素点生成。解码器1910还包括输出模块1915,用于将色度块作为重建视频的一部分转发给显示器。解码器1910还用于执行方法1700中的任一步骤。
当第一组件与第二组件之间除了线、迹线或其它介质之外没有中间组件时,所述第一组件与所述第二组件直接耦合。当第一组件与第二组件之间除了线、迹线或其它介质之外还有中间组件时,第一组件与第二组件间接耦合。术语“耦合”及其变型包括直接耦合和间接耦合。除非另有说明,否则使用术语“约”意指包括后续数字±10%的范围。
虽然本发明中已提供若干实施例,但可以理解,在不脱离本发明的精神或范围的情况下,所公开的系统和方法可以以许多其它特定形式来体现。本发明示例应被视为说明性而非限制性的,且本发明并不限于本文所给出的细节。例如,可以在另一系统中结合或集成各种元件或组件,或者可以省略或不实现某些特征。
此外,在不脱离本发明范围的情况下,各种实施例中描述和说明为离散或单独的技术、系统、子系统和方法可以与其它系统、组件、技术或方法进行组合或集成。变化、替换和变更的其它实例可由本领域技术人员确定,并可在不脱离本文公开的精神和范围的情况下举例。

Claims (16)

1.一种用于对视频数据块进行交叉分量预测的方法,其特征在于,所述方法由编码装置执行,包括:
对重建亮度块进行下采样以获得下采样亮度块,其中,所述重建亮度块与色度块对应;
获取在所述重建亮度块上方的重建上方相邻亮度像素点的下采样像素点,其中,所述重建亮度块上方的重建亮度像素点位于多行内,所述重建上方相邻亮度像素点位于与所述重建亮度块相邻的单行内;
根据以下各项推导线性模型(linear model,LM)的参数:
-所述下采样像素点;
-在所述色度块上方的重建相邻色度像素点;
根据所述LM的参数和所述下采样亮度块生成所述色度块的预测色度值;
发送码流,所述码流指示帧内预测模式为LM中的CCIP_A。
2.根据权利要求1所述的方法,通过对所述单行内的所述重建上方相邻亮度像素点进行下采样来获得所述第一下采样亮度像素点。
3.一种用于对视频数据块进行交叉分量预测的方法,其特征在于,所述方法由编码装置执行,包括:
对重建亮度块进行下采样以获得下采样亮度块,其中,所述重建亮度块与色度块对应;
获取在所述重建亮度块上方(紧接上方)的重建上方相邻亮度像素点的第一下采样像素点,和在所述重建亮度块左侧的重建左侧相邻亮度像素点的第二下采样像素点,其中,所述重建上方相邻亮度像素点位于与所述重建亮度块相邻的单行内;
根据以下各项推导线性模型(linear model,LM)的参数:
-所述第一下采样像素点和所述第二下采样像素点;
-在所述色度块上方的重建相邻色度像素点,和在所述色度块左侧的重建相邻色度像素点;
根据所述LM的参数和所述下采样亮度块生成所述色度块的预测色度值;
发送码流,所述码流指示帧内预测模式为LM中的CCLM。
4.根据权利要求3所述的方法,其特征在于,通过对所述单行内的所述重建上方相邻亮度像素点进行下采样来获得所述第一下采样亮度像素点。
5.根据权利要求3所述的方法,其特征在于,通过对所述重建左侧相邻亮度像素点进行下采样来获得所述第二下采样亮度像素点。
6.根据权利要求3至5中任一项所述的方法,其特征在于,所述重建左侧相邻亮度像素点位于所述重建亮度块左侧的N列内,其中,0<N≤3,且N为正整数。
7.根据权利要求3至5中任一项所述的方法,其特征在于,所述重建左侧相邻亮度像素点位于所述重建亮度块左侧(紧接左侧)的单列内。
8.一种用于对视频数据块进行交叉分量预测的编码装置,其特征在于,所述编码装置包括:
处理器和存储有指令的存储器,当所述处理器执行所述指令时,所述处理器用于:
对重建亮度块进行下采样以获得下采样亮度块,其中,所述重建亮度块与色度块对应;
获取在所述重建亮度块上方的重建上方相邻亮度像素点的下采样像素点,其中,所述重建亮度块上方的重建亮度像素点位于多行内,所述重建上方相邻亮度像素点位于与所述重建亮度块相邻的单行内;
根据以下各项推导线性模型(linear model,LM)的参数:
-所述下采样像素点;
-在所述色度块上方的重建相邻色度像素点;
根据所述LM的参数和所述下采样亮度块生成所述色度块的预测色度值;
收发单元,用于发送码流,所述码流指示帧内预测模式为LM中的CCIP_A。
9.根据权利要求8所述的编码装置,其特征在于,通过对所述单行内的所述重建上方相邻亮度像素点进行下采样来获得所述第一下采样亮度像素点。
10.一种用于对视频数据块进行交叉分量预测的编码装置,其特征在于,所述编码装置包括:
处理器和存储有指令的存储器,当所述处理器执行所述指令时,所述处理器用于:
对重建亮度块进行下采样以获得下采样亮度块,其中,所述重建亮度块与色度块对应;
获取在所述重建亮度块上方(紧接上方)的重建上方相邻亮度像素点的第一下采样像素点,和在所述重建亮度块左侧的重建左侧相邻亮度像素点的第二下采样像素点,其中,所述重建上方相邻亮度像素点位于与所述重建亮度块相邻的单行内;
根据以下各项推导线性模型(linear model,LM)的参数:
-所述第一下采样像素点和所述第二下采样像素点;
-在所述色度块上方的重建相邻色度像素点,和在所述色度块左侧的重建相邻色度像素点;
根据所述LM的参数和所述下采样亮度块生成所述色度块的预测色度值;
收发单元,用于发送码流,所述码流指示帧内预测模式为LM中的CCLM。
11.根据权利要求10所述的编码装置,其特征在于,通过对所述单行内的所述重建上方相邻亮度像素点进行下采样来获得所述第一下采样亮度像素点。
12.根据权利要求10所述的编码装置,其特征在于,通过对所述重建左侧相邻亮度像素点进行下采样来获得所述第二下采样亮度像素点。
13.根据权利要求10至12中任一项所述的编码装置,其特征在于,所述重建左侧相邻亮度像素点位于所述重建亮度块左侧的N列内,其中,0<N≤3,且N为正整数。
14.根据权利要求10至12中任一项所述的编码装置,其特征在于,所述重建左侧相邻亮度像素点位于所述重建亮度块左侧(紧接左侧)的单列内。
15.一种用于对视频数据进行编码的电子设备,其特征在于,所述电子设备包括用于执行根据权利要求1至7中任一项所述的方法。
16.一种存储指令的计算机可读介质,其中,所述指令在处理器中执行时,所述处理器执行根据权利要求1至7中任一项所述的方法。
CN202310278245.XA 2018-07-12 2019-07-12 视频译码中使用交叉分量线性模型进行帧内预测 Pending CN116647688A (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201862697268P 2018-07-12 2018-07-12
US62/697,268 2018-07-12
PCT/US2019/041526 WO2020014563A1 (en) 2018-07-12 2019-07-12 Intra-prediction using a cross-component linear model in video coding
CN201980046756.0A CN112425166B (zh) 2018-07-12 2019-07-12 视频译码中使用交叉分量线性模型进行帧内预测

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN201980046756.0A Division CN112425166B (zh) 2018-07-12 2019-07-12 视频译码中使用交叉分量线性模型进行帧内预测

Publications (1)

Publication Number Publication Date
CN116647688A true CN116647688A (zh) 2023-08-25

Family

ID=69142555

Family Applications (4)

Application Number Title Priority Date Filing Date
CN202310278245.XA Pending CN116647688A (zh) 2018-07-12 2019-07-12 视频译码中使用交叉分量线性模型进行帧内预测
CN201980046756.0A Active CN112425166B (zh) 2018-07-12 2019-07-12 视频译码中使用交叉分量线性模型进行帧内预测
CN202310292480.2A Pending CN116405687A (zh) 2018-07-12 2019-07-12 视频译码中使用交叉分量线性模型进行帧内预测
CN202310292487.4A Pending CN116405688A (zh) 2018-07-12 2019-07-12 视频译码中使用交叉分量线性模型进行帧内预测

Family Applications After (3)

Application Number Title Priority Date Filing Date
CN201980046756.0A Active CN112425166B (zh) 2018-07-12 2019-07-12 视频译码中使用交叉分量线性模型进行帧内预测
CN202310292480.2A Pending CN116405687A (zh) 2018-07-12 2019-07-12 视频译码中使用交叉分量线性模型进行帧内预测
CN202310292487.4A Pending CN116405688A (zh) 2018-07-12 2019-07-12 视频译码中使用交叉分量线性模型进行帧内预测

Country Status (4)

Country Link
US (3) US11528506B2 (zh)
EP (1) EP3815370A4 (zh)
CN (4) CN116647688A (zh)
WO (1) WO2020014563A1 (zh)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FI3815377T3 (fi) 2018-07-16 2023-03-01 Huawei Tech Co Ltd Videokooderi, videodekooderi sekä vastaavat koodaus- ja dekoodausmenetelmät
HUE062478T2 (hu) * 2018-09-20 2023-11-28 Lg Electronics Inc Eljárás és eszköz kép dekódolására CCLM predikció alapján képkódoló rendszerben
WO2020076036A1 (ko) 2018-10-07 2020-04-16 주식회사 윌러스표준기술연구소 복수개의 참조 라인을 위한 mpm 구성 방법을 이용한 비디오 신호 처리 방법 및 장치
KR102398217B1 (ko) * 2018-10-08 2022-05-16 베이징 다지아 인터넷 인포메이션 테크놀로지 컴퍼니 리미티드 크로스-검포넌트 선형 모델에 대한 간단화
WO2020073990A1 (zh) * 2018-10-12 2020-04-16 Oppo广东移动通信有限公司 视频图像分量预测方法及装置、计算机存储介质
KR20230162148A (ko) * 2018-10-12 2023-11-28 삼성전자주식회사 교차성분 선형 모델을 이용한 비디오 신호 처리 방법 및 장치
GB2580326A (en) 2018-12-28 2020-07-22 British Broadcasting Corp Video encoding and video decoding
CN116546218A (zh) 2019-01-02 2023-08-04 Oppo广东移动通信有限公司 解码预测方法、装置及计算机存储介质
CN113475064A (zh) * 2019-01-09 2021-10-01 北京达佳互联信息技术有限公司 使用交叉分量线性模型的视频编解码
KR20220087451A (ko) 2019-11-01 2022-06-24 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 크로스 컴포넌트 비디오 코딩에서 선형 파라미터의 유도
GB2591806B (en) * 2020-02-07 2023-07-19 British Broadcasting Corp Chroma intra prediction in video coding and decoding
WO2021209064A1 (en) * 2020-04-18 2021-10-21 Beijing Bytedance Network Technology Co., Ltd. Syntax for signaling cross-component video coding
EP4272444A1 (en) * 2020-12-29 2023-11-08 Nokia Technologies Oy A method, an apparatus and a computer program product for encoding and decoding
WO2023071778A1 (en) * 2021-10-29 2023-05-04 Mediatek Singapore Pte. Ltd. Signaling cross component linear model
WO2023089230A2 (en) * 2021-11-16 2023-05-25 Nokia Technologies Oy An apparatus, a method and a computer program for video coding and decoding
WO2023225013A1 (en) * 2022-05-16 2023-11-23 Beijing Dajia Internet Information Technology Co., Ltd. Improved cross-component prediction for video coding
WO2023239676A1 (en) * 2022-06-06 2023-12-14 Beijing Dajia Internet Information Technology Co., Ltd. Improved cross-component prediction for video coding
WO2023244592A1 (en) * 2022-06-17 2023-12-21 Innopeak Technology, Inc. System and method for chromaticity intra prediction

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI433053B (zh) * 2010-11-02 2014-04-01 Orise Technology Co Ltd 運用像素區域特性之影像銳利度強化方法及系統
US9288500B2 (en) * 2011-05-12 2016-03-15 Texas Instruments Incorporated Luma-based chroma intra-prediction for video coding
WO2013102293A1 (en) * 2012-01-04 2013-07-11 Mediatek Singapore Pte. Ltd. Improvements of luma-based chroma intra prediction
CN104871537B (zh) * 2013-03-26 2018-03-16 联发科技股份有限公司 色彩间帧内预测的方法
CN105474639B (zh) * 2013-07-10 2018-08-07 凯迪迪爱通信技术有限公司 视频编码装置、视频解码装置、视频系统、视频编码方法、视频解码方法以及程序
US10200700B2 (en) * 2014-06-20 2019-02-05 Qualcomm Incorporated Cross-component prediction in video coding
US10455249B2 (en) * 2015-03-20 2019-10-22 Qualcomm Incorporated Downsampling process for linear model prediction mode
US10419757B2 (en) * 2016-08-31 2019-09-17 Qualcomm Incorporated Cross-component filter
US10652575B2 (en) * 2016-09-15 2020-05-12 Qualcomm Incorporated Linear model chroma intra prediction for video coding
JP2018056685A (ja) * 2016-09-27 2018-04-05 株式会社ドワンゴ 画像符号化装置、画像符号化方法、及び画像符号化プログラム、並びに、画像復号装置、画像復号方法、及び画像復号プログラム

Also Published As

Publication number Publication date
EP3815370A1 (en) 2021-05-05
US20230057680A1 (en) 2023-02-23
CN112425166A (zh) 2021-02-26
CN112425166B (zh) 2023-03-10
US11528506B2 (en) 2022-12-13
EP3815370A4 (en) 2021-08-11
WO2020014563A1 (en) 2020-01-16
US11877006B2 (en) 2024-01-16
US20210136409A1 (en) 2021-05-06
US20240205453A1 (en) 2024-06-20
CN116405688A (zh) 2023-07-07
CN116405687A (zh) 2023-07-07

Similar Documents

Publication Publication Date Title
CN112425166B (zh) 视频译码中使用交叉分量线性模型进行帧内预测
JP7234300B2 (ja) 複数の参照線を用いたイントラ予測
US11146809B2 (en) Adaptive interpolation filter
US10841794B2 (en) Adaptive motion vector resolution
WO2019056839A1 (en) RESTRICTION ON SUB-BLOCK SIZE DERIVATION FOR AFFINE INTER-IMAGE PREDICTION
WO2019001485A1 (en) MOTION VECTOR DERIVATION SIDE OF DECODER SIDE IN VIDEO CODING
JP7150861B2 (ja) ビデオコーディングのための空間変動変換
CN112385239A (zh) 亮度块和色度块的分割
WO2019201232A1 (en) Intra-prediction using cross-component linear model
CN115665412A (zh) 视频译码中用于光栅扫描分块组和矩形分块组的分块组分配
CN114205629B (zh) 一种支持受约束编码树划分的编解码方法及装置
WO2020069652A1 (en) Candidate mv construction method for hmvp mode
CN111971958B (zh) 视频编码中的块分割方法和设备
CN112042199B (zh) 自适应插值滤波器
RU2806278C2 (ru) Устройство и способ кодирования видео

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