CN113273215A - 逆映射简化 - Google Patents

逆映射简化 Download PDF

Info

Publication number
CN113273215A
CN113273215A CN201980087750.8A CN201980087750A CN113273215A CN 113273215 A CN113273215 A CN 113273215A CN 201980087750 A CN201980087750 A CN 201980087750A CN 113273215 A CN113273215 A CN 113273215A
Authority
CN
China
Prior art keywords
samples
block
inverse
function
mapping function
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
CN201980087750.8A
Other languages
English (en)
Inventor
E·弗兰科伊斯
C·奇万斯
F·海容
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.)
InterDigital VC Holdings Inc
Original Assignee
InterDigital VC Holdings Inc
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
Priority claimed from EP19305213.1A external-priority patent/EP3700217A1/en
Application filed by InterDigital VC Holdings Inc filed Critical InterDigital VC Holdings Inc
Publication of CN113273215A publication Critical patent/CN113273215A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/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/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • 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/46Embedding additional information in the video signal during the compression process
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression

Landscapes

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

Abstract

整形可用于更好地利用视频数据的样本值分布。当在译码循环内使用整形时,对根据帧内或帧间预测的预测信号应用前向映射,并且对重构信号应用逆映射。为了简化逆映射操作,在一个实施例中,逆映射函数被建模为分段线性函数,并且每个线段被定义在长度等于2的幂的等距区间上。在该实施例中,逆映射函数由以下来指定:分段的数量、初始偏移值、以及每个分段的斜率。在一个示例中,可在比特流中直接用信号通知斜率参数。在另一示例中,可以根据前向映射函数获得斜率参数的初始估计,并且用信号通知初始估计与实际参数之间的差。

Description

逆映射简化
技术领域
本实施例总体上涉及一种视频编码或解码的方法及装置,并且尤其涉及一种用于简化视频数据整形中的逆映射的方法及装置。
背景技术
为了实现高压缩效率,图像和视频译码方案通常采用预测和变换以利用视频内容中的空间和时间冗余。通常,使用帧内或帧间预测来利用帧内或帧间图片相关性,然后对通常表示为预测误差或预测残差的原始块与预测块之间的差进行变换、量化和熵译码。为了重构视频,通过与熵译码、量化、变换和预测相对应的逆处理来对压缩数据进行解码。
发明内容
根据一实施例,提供了一种视频编码或解码的方法,包括:基于前向映射函数,对与图片的块的样本对应的预测样本执行前向映射;以及基于逆映射函数,对所述块的所述样本的重构版本执行逆映射,其中所述逆映射函数是所述前向映射函数的逆函数的近似,其中所述逆映射函数被建模为分段线性函数,并且其中所述分段线性模型中的每个分段被定义为具有相同的区间长度。
根据另一实施例,提供一种用于视频编码或解码的装置,其包括一或多个处理器,其中所述一或多个处理器被配置成:基于前向映射函数,对与图片的块的样本对应的预测样本执行前向映射;以及基于逆映射函数,对所述块的所述样本的重构版本执行逆映射,其中所述逆映射函数是所述前向映射函数的逆函数的近似,其中所述逆映射函数被建模为分段线性函数,并且其中所述分段线性模型中的每个分段被定义为具有相同的区间长度。该装置进一步可以包括耦合到所述一个或多个处理器的一个或多个存储器。
根据另一实施例,提供了一种视频编码或解码的装置,包括:用于基于前向映射函数而对与图片的块的样本对应的预测样本执行前向映射的装置;以及用于基于逆映射函数而对所述块的所述样本的重构版本执行逆映射的装置,其中所述逆映射函数是所述前向映射函数的逆函数的近似,其中所述逆映射函数被建模为分段线性函数,并且其中所述分段线性模型中的每个分段被定义为具有相同的区间长度。
根据另一实施例,通过执行以下步骤来形成包括编码视频的信号:基于前向映射函数,对与图片的块的样本对应的预测样本执行前向映射;以及基于逆映射函数,对所述块的所述样本的重构版本执行逆映射,其中所述逆映射函数是所述前向映射函数的逆函数的近似,其中所述逆映射函数被建模为分段线性函数,并且其中所述分段线性模型中的每个分段被定义为具有相同的区间长度。
附图说明
图1(a)和图1(b)分别示出了编码器和解码器中的视频数据整形。
图2示出了视频编码器的实施例的框图。
图3示出了视频解码器的实施例的框图。
图4是示出前向映射函数的构造的图示示例。
图5是示出逆映射函数的构造的图示示例。
图6示出了根据实施例的逆映射函数简化的过程。
图7是示出逆映射函数的近似的图示示例。
图8是示出前向映射及逆映射函数的示例的图示示例。
图9示出了根据实施例的用于改进近似逆映射函数的过程。
图10示出了视频编码器的另一个实施例的框图。
图11示出了可以在其中实现本实施例的各方面的系统的框图。
具体实施方式
为了更好的译码效率,可以使用信号映射。映射(也称为整形)旨在更好地利用视频图像的样本值分布。映射和逆映射可以在解码环路之外。在这种情况下,在核心编码之前,映射直接应用于编码器的输入样本。逆映射过程在解码器侧应用于来自解码器的输出样本。映射和逆映射也可以在解码环路中,例如,如在JVET-L0247中所提出的(参见TaoranLu等人的“CE12相关:SDR和HDR视频的通用低复杂度整形器(CE12-related:Universal lowcomplexity reshaper for SDR and HDR video)”,第12次JVET会议,澳门,CN,2018年10月3-12日,JVET-L0247-v2,在下文中称为“JVET-L0247”)。
JVET-L0247描述了用于提高译码效率的环内映射解决方案。在这种解决方案中,在编码循环中内部地实现亮度或色度信号的映射。映射应用于预测信号,并且在编码器或解码器中,将附加的映射和逆映射块添加到传统的编码器和解码器框图。这在图1中示出,其中前向映射被应用于预测亮度或色度信号。
在编码器处,根据以下公式生成变换和量化之前的残差信号Res_source:
Res_source(p)=fwdMap[Orig(p)]–fwdMap[Pred(p)] (等式1)
其中Orig(p)是图片中位置p(x,y)处的源采样(要译码的)的值,Pred(p)是预测采样的值,以及Res_source(p)是变换和量化之前预测残差采样的值,以及fwdMap[.]是映射函数。然后,Res_source(p)被变换和量化。逆量化和逆变换的残差信号表示为Res(p)。
在解码器处,根据以下公式(图1(b)中所示)重构信号:
Rec(p)=invMap[fwdMap[Pred(p)]+Res(p)] (等式2)
重构如下实现:
前向映射:
Rec0(p)=fwdMap[Pred(p)] (等式3)
求和:
Rec1(p)=Rec0(p)+Res(p) (等式4)
逆映射:
Rec(p)=invMap[Rec1(p)] (等式5)
其中Rec(p)是重构样本的值,invMap[.]是逆映射函数(fwdMap[.]的逆,使得invMap[fwdMap[x]]=x,不考虑可能的舍入误差)。在JVET-L0247中,对处理块的每个样本执行该处理。映射和逆映射的功能对于整个图片或图片的区域是全局的。在图片的不同块或块的区域中,使用相同的功能。
图2示出了添加了整形过程的视频编码器200的示例,例如高效视频译码(HEVC)编码器。图2也可说明其中对HEVC标准作出改进的编码器或采用类似于HEVC的技术的编码器,例如JVCT(联合视频探索团队)开发的VVC(通用视频译码)编码器。
在本申请中,术语“重构”和“解码”可以互换使用,术语“编码”或“译码”可以互换使用,并且术语“图像”、“图片”和“帧”可以互换使用。通常,但不是必须的,术语“重构”在编码器侧使用,而“解码”在解码器侧使用。
在被编码之前,视频序列可以经历预编码处理,例如,对输入颜色图片应用颜色变换(例如,从RGB 4:4:4到YCbCr 4:2:0的转换),或者执行输入图片分量的重新映射,以便获得对压缩更有弹性的信号分布(例如,使用颜色分量之一的直方图均衡)。元数据可以与预处理相关联,并且被附加到比特流。
在HEVC中,为了用一个或多个图片编码视频序列,将图片分割成一个或多个切片,其中每一切片可包含一个或多个切片片段。切片片段被组织成译码单元、预测单元和变换单元。HEVC规范在“块”与“单元”之间进行区分,其中“块”寻址样本阵列中的特定区域(例如,明度、Y),且“单元”包含所有编码的颜色分量(例如,Y、Cb、Cr或单色)的并置块、语法元素及与所述块相关联的预测数据(例如,运动向量)。
对于HEVC中的译码,图片被划分为具有可配置大小的正方形形状的译码树块(CTB),并且译码树块的连续集合被分组为片。译码树单元(CTU)包含编码的颜色分量的CTB。CTB是将四叉树分割成译码块(CB)的根,且译码块可分割成一个或多个预测块(PB)且形成将四叉树分割成变换块(TB)的根。对应于译码块、预测块和变换块,译码单元(CU)包括预测单元(PU)和变换单元(TU)的树结构集合,PU包括所有颜色分量的预测信息,并且TU包括每个颜色分量的残差译码语法结构。亮度分量的CB、PB和TB的大小适用于对应的CU、PU和TU。在本申请中,术语“块”可以用于表示例如CTU、CU、PU、TU、CB、PB和TB中的任意者。另外,“块”还可用于指代如H.264/AVC或其它视频译码标准中指定的宏块和分区,且更一般来说指代各种大小的数据阵列。
在编码器200中,如下所述,由编码器元件对图片进行编码。映射(201)输入信号。201中的映射可以对应于291中的前向映射,或者还包括用于预处理的其他映射。以CU为单位处理要编码的图片(202)。每一CU是使用帧内或帧间模式编码的。当CU以帧内模式编码时,其执行帧内预测(260)。在帧间模式中,执行运动估计(275)和补偿(270)。前向映射(291)被应用于预测信号。编码器决定(205)使用帧内模式或帧间模式中的哪一者来编码CU,并且通过预测模式标志来指示帧内/帧间决定。通过从映射的原始图像块(来自步骤201)减去映射的预测块(来自步骤291)来计算预测残差(210)。
然后,对预测残差进行变换(225)和量化(230)。对量化的变换系数以及运动矢量和其它语法元素进行熵译码(245)以输出比特流。编码器也可跳过变换,并在4×4TU的基础上直接对未变换的残差信号应用量化。编码器还可以绕过变换和量化,即,直接对残差进行译码而不应用变换或量化过程。在直接PCM译码中,不应用预测,并且译码单元样本被直接译码到比特流中。
编码器对编码块进行解码,以提供用于进一步预测的参考。对量化变换系数进行去量化(240)和逆变换(250)以对预测残差进行解码。将解码的预测残差与预测块进行组合(255),重构图像块。逆映射(290)和环内滤波器(265)被应用于重构信号,例如,以执行去块/SAO(采样自适应偏移)滤波,从而减少编码伪像。将滤波图像存储在参考图片缓冲器(280)中。
图3示出了添加了整形过程的视频解码器300的示例的框图,例如HEVC解码器。在解码器300中,如下所述,由解码器元件解码比特流。视频解码器300通常执行与如图2中所描述的编码回合互逆的解码回合,其执行视频解码作为编码视频数据的部分。图3还可说明其中对HEVC标准作出改进的解码器或采用类似于HEVC的技术的解码器,例如VVC解码器。
明确地说,解码器的输入包含视频比特流,其可由视频编码器200产生。比特流首先被熵解码(330)以获得变换系数、运动矢量、图片分割信息和其它译码信息。图片分割信息指示CTU的大小,以及CTU被分割成CU且在适用时可能被分割成PU的方式。因此,解码器可以根据解码的图片分割信息将图片分割(335)为CTU,并且将每个CTU分割为CU。变换系数被去量化(340)和逆变换(350)以解码预测残差。
将解码的预测残差与预测块进行组合(355),重构图像块。预测块可以从帧内预测(360)或运动补偿预测(即,帧间预测)(375)获得(370)。此外,前向映射(395)被应用于预测信号。在双向预测的情况下,两个运动补偿预测可以利用加权和相结合。将逆映射(396)和环内滤波器(365)应用于重构信号。将滤波图像存储在参考图片缓冲器(380)中。
来自环内滤波器的输出可以经历逆映射(390),其执行在预处理中执行的映射过程(201)的逆过程。解码图片可进一步经历其它后解码处理,例如,逆颜色变换(例如,从YCbCr 4:2:0到RGB 4:4:4的转换)。后解码处理可使用在预编码处理中导出且在比特流中用信号表示的元数据。
如上所述,JVET-L0247描述了环内整形处理。特别地,JVET-L0247中的映射函数实现是基于尺度表,scale[k],k=0到N-1,N是2的幂(通常为16或32)。每个尺度适用于亮度值的范围。范围R是固定的,并且2的幂(R=2K),并且等于全亮度范围(rangeY)除以N,例如,对于10比特亮度信号,并且对于N=16,R=1024/N=64=26(K=6)。映射函数fwdMap在概念上定义如下:
-fwdMap[0]=0
-然后,对于k=0~N-1,如下计算各k*R索引的值:
○fwdMap[(k+1)*R]=fwdMap[k*R]+R*scale[k]
○注意,相当于,scale[k]对应于1/R*(fwdMap[(k+1)*R]-fwdMap[k*R])
-索引x=(k*R+1)to((k+1)*R-1)处的中间值,从其周边值fwdMap[(k+1)*R]及fwdMap[k*R]分别进行如下线性插补:
○fwdMap[x]=fwdMap[k*R]+(x–k*R)*(fwdMap[(k+1)*R]-fwdMap[k*R])/R
该过程在图4中示出。每个尺度与分段线性映射函数的一个分段相关联。每一分段是在相同长度(R)的亮度范围上指定。注意,该过程要求LUT fwdMap具有(rangeY+1)个元素,从Y=0到rangeY,即使实际最大样本值Y等于(rangeYY-1)。
使用长度为R的等长区间的优点在于,通过使用根据移位了K比特的值Y计算的索引对有限大小(大小N)的查找表进行简单访问,可以容易地即时执行样本值Y的映射。该过程概念上如下:
-索引k=Y/R=Y>K的计算
-Ymap=scale[k]*Y+A[k],
其中A是预先建立的大小为N的查找表,如下导出(对于k=0到N-1):
-A[k]=fwdMap[k*R]–k*R*scale[k]
逆映射函数invMap被构建为前向映射函数的逆。其数学上被建立为与由方程式y=x定义的线相关的fwdMap的对称函数,如图5中所示。此逆映射的问题是其不能如前向映射那样容易地被即时应用。实际上,即使逆映射函数保持分段线性,值Y所属的段的索引的识别也不是直接的。与可以应用简单移位操作的前向映射情况相反,这对于逆映射情况更加复杂,因为逆映射函数的索引不是预定长度(2的幂)的倍数,这在图5中示出,其中,由于构造idxk=fwdMap[k*R],逆映射函数的分段的索引(idx0至idx4)不是沿水平轴等距分布的。
为了执行逆映射,存在不同的解决方案。下面描述两种解决方案。
解决方案1
对于x=0到rangeY-1的完整查找表invMap[x],其中rangeY是完整的亮度范围(例如,对于10比特亮度信号为1024),最初在编码器和解码器处通过与由等式y=x定义的线相关的数学对称性,根据前向映射函数来构建。然后对于要进行逆映射的每个样本,Y,其逆映射版本Ymap被导出为:
Ymap=invMap[Y],其中Y属于范围[0,范围Y-1]
该过程需要对大尺寸的查找表(LUT)的每样本访问,这对于实现可能是有问题的。对1024个元素的查找表的每样本访问通常被认为是有问题的。通常,32或64个元素的最大LUT尺寸被认为是可接受的,并且通常优选16或更小。
解决方案2
替代解决方案是即时识别样本值Y所属的索引,并使用与区间[idxk,idxk+1]相关联的索引idxk的逆尺度和偏移值来执行逆映射。为此,必须执行与以下处理(伪码)等同的处理:
-k=0
-而(Y<idxk+1)
○k=k+1
包含Y的区间的索引被识别为idxk
这需要对每个样本值Y进行多次检查,这对于实际的实现也是个问题。例如,考虑M=8的情况,索引集合IdxTab={idx0=0,idx1=200,idx2=300,idx3=500,idx4=600,idx5=700,idx6=800,idx7=900,idx8=1024}。对于任何大于900的采样值Y,需要(M-1)次检查。即使在更好的实现中,每个采样必须执行若干次检查也可能是有问题的。
在一个实施例中,本方法的目的在于通过将逆映射函数转换成具有等长区间的分段线性函数来简化逆映射过程,其中长度为2的幂。因此,可以通过简单的过程来即时执行逆映射,如上文针对前向映射所述。所公开的技术可以一般地应用于视频内容(例如,SDR、HDR),但是当在编码器和解码器中使用前向映射和逆映射过程以实现改进的编码性能时,其尤其适用。
有利地,该过程可以使用简单的移位操作和对有限大小(例如,低于64个元素)的查找表的访问来实现每样本逆映射过程的简单实现。因此,所提出的技术可以简化逆映射过程的设计,同时保留根据整形(即,信号的前向映射、逆映射)的大多数潜在编码增益。
根据一个实施例的逆映射函数生成过程在图6中示出,它使用表征前向映射函数的数据作为输入。这可以由函数fwdMap或尺度表scale[]构成。在步骤601中,根据该输入数据构建逆映射函数invMap。这可以如上所述通过前向映射函数fwdMap的与线y=x相关的数学对称性来实现。在步骤602中生成逆映射函数invMap的近似。该近似可以使用函数的分段线性模型,其中每个分段是按等长区间定义的,区间具有等于2的幂的相同长度。
近似逆映射函数的规范
近似逆映射函数,标记为invMapBis,可以由下式指定:
-查找表大小M,其中M是2的幂,低于rangeY。
-初始偏移值invMapBis[0]。
-逆尺度表invScale[k],k=0到(M-1)。
分段线性函数invMapBis的区间长度,记为Rinv,计算为Rinv=rangeY/M。它为2的幂,Rinv=2Kinv。注意,在一些示例中,M被设置为大于或等于N(前向映射函数中的分段的数量),以便对于逆映射比前向映射具有更高的精度,并且保证在接近恒等函数的操作中级联两个操作(前向映射然后逆映射)(invMapBis[fwdMap[x]]接近x)。在这些实施例中,Rinv低于或等于R,因此Kinv低于或等于K。
图7中示出了一示例,其中逆映射函数invMap以虚线指示,而近似版本invMapBis以实线指示并且对于每段区间长度Rinv是线性的。每段的斜率k对应于invScale[k](仅针对图中的块0、2、7示出)。
近似逆映射函数的推导
在实施例中,用于构造近似逆函数invMapBis的步骤602如下实现:
-对于k=0到M-1
○invMapBis[(k+1)*Rinv]=invMapBis[k*Rinv]+Rinv*invScale[k]
-在索引x=(k*Rinv+1)至((k+1)*Rinv-1)处的中间值,从其周边值invMapBis[(k+1)*Rinv]和invMapBis[k*Rinv]进行线性插补,如下:
○对于x=(k*Rinv+1)至((k+1)*Rinv-1)
■invMapBis[x]=invMapBis[k*Rinv]+(x–k*Rinv)*(invMapBis[(k+1)*Rinv]-invMapBis[k*Rinv])/Rinv (等式6)
注意,该过程要求LUT invMapBis具有(rangeY+1)个元素,从Y=0到范围Y,即使实际最大样本值Y等于(rangeY-1)。
简化的即时逆映射
逆映射可以通过应用完整的LUT invMapBis而被获得:
Yinvmap=invMapBis[Y]
然而,代替使用完整的LUT invMapBis,通过使用根据移位了Kinv比特的值Y计算的索引,简单地访问有限大小(大小M)的查找表,可以容易地即时执行样本Y的逆映射。该过程如下:
-计算索引k=Y/Rinv=Y>Kinv。
-Yinvmap=invScale[k]*Y+Ainv[k],其中Ainv是预先建立的大小为M的查找表,其推导如下(对于k=0至M-1):
-Ainv[k]=invMapBis[k*Rinv]-k*Rinv*invScale[k]。
这种实现比前面描述的两种解决方案(解决方案1、解决方案2)更有效和更简单。
用于定义近似逆映射函数的参数
在实施例中,初始偏移值invMapBis[0]被设置为startPt,其中(startPt+1)是fwdMap为非零的第一索引。换句话说,startPt是这样的,对于任何x≤startPt,fwdMap[x]=0。
在实施例中,invScale[k]的值如下导出:
invScale[k]=1/Rinv*(invMap[(k+1)*Rinv]-invMap[k*Rinv]),其中Rinv=RangeY/M。
下面给出了尺度和invScale值的示例(通常用于HDR内容的表)。图8中还描述了相应的函数(LUT)fwdMap和invMapBis。
k 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
scale[k] 0 47 46 47 47 50 57 64 71 79 89 100 110 125 133 0
●该表包含16个元素(N=16),并且所有值都乘以R=64(中性值表示1.0的缩放比例)
Figure BDA0003145630160000121
●该表包含32个元素(M=32),并且所有值都乘以Rinv=32(中性值表示1.0的缩放比例)
改进近似逆函数
在实施例中,步骤602包括迭代地应用以减少应用前向映射然后逆映射的总误差的改进过程。如果明确地用信号通知逆函数,则在编码器处执行该过程,或者如果导出逆函数,则在解码器处执行该过程。该过程导致修改表invScale。
图9示出了根据该实施例的改进过程。最初,在步骤901中将变量distMin初始化为非常大的值,并将变量Change初始化为0。在步骤902中执行变量k从0到M的循环。例如,如步骤903中的“近似逆映射函数的推导”部分中所描述的,将变量initVal初始化为invMapBis[k*Rinv]。
在步骤904中执行变量n从-S到+S的循环。通常,在步骤905中,S被设定为2,invMapBis[k*Rinv]被设定为(initVal+n)。在步骤906中,逆映射函数invMapBis被重建为修改值invMapBis[k*Rinv],如在“近似逆映射函数的推导”部分中所解释的(参见(等式6))。在步骤907中,使用修改的函数invMapBis计算失真度量dist。
步骤908检查dist是否低于distMin。如果dist低于distMin,则在步骤909中,变量best被设置为n,distMin被设置为dist,并且Change被设置为1。如果dist不低于distMin,则过程进行到步骤910。在步骤910中,检查是否到达步骤904的循环的结尾。如果没有到达步骤904的循环的结尾,则过程返回到步骤904。如果到达步骤904的循环的结尾,则在步骤911中invMapBis[k*Rinv]被设置为(initVal+best)。在步骤912中,检查是否到达步骤902的循环的结尾。如果没有到达步骤902的循环的结尾,则过程返回到步骤902。如果到达步骤902的循环的结尾,则在步骤913中检查Change是否等于1。如果Change等于1,则过程返回到步骤901。如果Change不等于1,则过程通过更新invScale的表而结束(步骤914),如下:
○对于k=0到M-1,
■invScale[k]=1/Rinv*(invMapBis[(k+1)*Rinv]-invMapBis[k*Rinv])。
失真(在步骤907、908中使用)可以如下计算:
Figure BDA0003145630160000131
其中error(Y)、y0和y1定义如下:
-error(Y)=Y–invMapBis[fwdMap[Y]]。
-y0计算如下
○y0=0
○而(fwdMap[y0+1]==fwdMap[y0]),y0=y0+1。
-y1计算如下
○y1=rangeY-1
○而(fwdMap[y1-1]==fwdMap[y1]),y1=y1-1。
或者,error(Y)、y0和y1可以定义如下:
-error(Y)=invMapBis[Y]–invMap[Y]。
-y0=0且y1=rangeY-1。
在解码器处推断近似逆映射函数
在实施例中,在解码器处导出近似逆映射函数。在比特流中用信号通知函数的分段的数量。这在以下语法表(以斜体字)中指示。语法的其余部分对应于前向映射函数的信令。引入新的语法元素,reshaper_model_inv_log2_size,以指定逆映射函数的分段的数量。参考在本文档中使用的符号,M如下导出:
M=2reshaper_model_inv_log2_size=(1<<reshaper_model_inv_log2_size)。
Figure BDA0003145630160000141
在实施例中,该参数是要应用于用于对前向映射函数建模的分段的数量N的因子:
M=N*2reshaper_model_inv_log2_size=(N<<reshaper_model_inv_log2_size)。
在该实施例中,在编码器处确定分段的数量(M)的值。例如,可以确定,以便保证上述失真dist低于给定阈值(例如,T*rangeY2,T=0.02)。这可以通过迭代实现,从M=N开始。首先利用这个值M生成近似逆映射函数。若利用所得到的近似逆映射函数所获得的失真dist高于阈值(T*rangeY2),则将M加倍(M被设定为(M*2)),并重新迭代该过程,直到失真dist低于阈值(T*rangeY2),或直到M达到最大值Mmax(例如128)。或者,M可以基于实际实验任意设定。在我们的实验中,观察到在大多数情况下值为32是相关的。
如前所述,可以在解码器处根据分段的数量(M)导出近似逆函数。
用信号通知近似逆映射函数
在实施例中,在比特流中明确地用信号发送近似逆映射函数。这在以下语法表(以斜体字)中指示。语法的其余部分对应于前向映射函数的信令。
在编码器侧,表invScale、其大小M和invMapBis的第一值(invMapBis[0])是根据前向映射函数fwdMap导出的。这通常根据上述方法,例如通过(1)来实现。根据前向映射函数fwdMap导出逆映射函数invMap,(2)。根据逆映射函数invMap生成近似逆映射函数invMapBis(在该步骤中,M可以任意选择,或者如上所述自适应地计算),(3)。根据近似逆映射函数invMapBis导出表invScale。invMapBis用于在编码器中执行逆映射。然后,编码器按照下表中描述的语法,在比特流中编码表征近似映射函数的参数,例如,M,invMapBis[0],表invScale。
在解码器侧,遵循下表中描述的语法,从比特流中解码出表征近似逆映射函数的参数。然后根据这些参数导出近似逆映射函数invMapBis。invMapBis用于在解码器中执行逆映射。或者,不需要构建invMapBis,且如在“简化的即时逆映射”部分中所描述的即时执行逆映射。
在以下语法表中添加的语法元素(以斜体表示)指示:
-逆映射函数的段数,其可以根据语法元素reshaper_model_inv_log2_size导出,如下:
○reshaperModelInvSize=1<<reshaper_model_inv_log2_size或者
○reshaperModelInvSize=N<<reshaper_model_inv_log2_size
-逆映射函数reshaper_model_inv_offset的偏移值(对应于上文中的invMapBis[0])。
-缩放值reshapeModelInvScale[i](符号:reshape_model_sign_CW,绝对值:reshape_model_abs_CW)。
Figure BDA0003145630160000161
在另一实施例中,偏移值reshaper_model_inv_offset未被译码,而是根据前向函数推断出来。将reshaper_model_inv_offset(invMapBis[0])设置为等于y0,其中y0是fwdMap[y0]不同于fwdMap[y0+1]的第一值。
参数reshapeModelInvScale[i]可以相对于中性值(例如Rinv)或相对于先前译码值reshapeModelInvScale[i–1]进行差分编码。可以使用两种方法的混合:
-对于第一个元素(i=0),reshapeModelInvScale[0]相对于中性值(例如,Rinv)差分编码。
-对于接下来的元素(i>0),相对于先前译码值reshapeModelInvScale[i–1]对reshapeModelInvScale[i]进行差分译码。
在另一实施例中,编码器根据表fwdMap导出表invMap,然后如上所述通过以下操作执行表invScale(记为invScaleInit)的初始化:
○对于k=0到M-1,
■invScaleInit[k]=1/Rinv*(invMap[(k+1)*Rinv]-invMap[k*Rinv])。
然后,编码器改进该表,并通过例如在“改进近似逆函数”部分中描述的过程来导出表invMapBis。最终的表invScale推导如下:
○对于k=0到M-1,
■invScale[k]=1/Rinv*(invMapBis[(k+1)*Rinv]-invMapBis[k*Rinv])。
对于任何k=0至M-1,参数reshapeModelInvScale[k]可以被译码为初始表invScaleInit和最终表invScale之间的差:
○对于k=0到M-1,
■reshapeModelInvScale[k]=invScale[k]-invScaleInit[k]。
解码器根据表fwdMap导出表invMap,然后如之前通过以下操作所解释的那样导出表invScaleInit的初始化:
○对于k=0到M-1,
■invScaleInit[k]=1/Rinv*(invMap[(k+1)*Rinv]-invMap[k*Rinv])。
然后,解码器如下导出实际的最终表invScale:
○对于k=0到M-1,
■invScale[k]=invScaleInit[k]+reshapeModelInvScale[k]。
或者,对于任何k=0至M-1,参数reshapeModelInvScale[k]可以作为在索引(k*Rinv)处的初始逆映射LUT值(即InvMap[k*Rinv])与在索引(k*Rinv)处的最终逆映射LUT值(InvMap[k*Rinv]的值)的差进行译码:
○对于k=0到M-1,
■reshapeModelInvScale[k]=InvMapBis[k*Rinv]–InvMap[k*Rinv]。
然后解码器如下导出实际值InvMapBis[k*Rinv]:
○对于k=0到M-1,
■InvMapBis[k]=InvMap[k]+reshapeModelInvScale[k]。
随后,解码器可以如下计算表invScale:
○对于k=0到M-1,
■invScale[k]=1/Rinv*(invMapBis[(k+1)*Rinv]-invMapBis[k*Rinv])。
这可以导致译码表ReformModelInvscale的比特成本的降低,因为预期InvMapBis[i*Rinv]的大部分值与InvMap[i*Rinv]没有显著不同。
由于上述不同过程原则上是使用定点实现来实现的,因此可以调整本申请中使用的不同公式以便确保定点实现。然而,概念上,该实现方式将与本申请中所描述的不同。
预测残差等于0的情况
在预测残差等于0的情况下,等式2变为以下等式:
Rec(p)=invMap[fwdMap[Pred(p)] (等式7)
因此,前向映射之后的逆映射等同于恒等函数(记为Id),并且不必执行这两个映射步骤(Rec(p)=Pred(p))。
在实施例中,在预测残差对于给定样本位置等于0的情况下,对于该给定样本位置跳过前向映射和逆映射步骤。
在实施例中,在预测残差对于块的所有样本等于0的情况下,对于块的所有样本跳过前向映射和逆映射步骤。
在实施例中,对于利用跳过模式(例如,当参考VVC 4草案规范文档JVET-M1001,其中语法元素cu_skip_flag等于1)进行译码的译码单元,跳过前向映射和逆映射步骤。
在实施例中,对于译码块标志等于0的块跳过前向映射和逆映射步骤(例如,当参考VVC 4草案规范文档JVET-M1001时,其中语法元素cu_cbf等于0,指示当前译码单元的所有变换系数为零)。
残差调整
在实施例中,在图2的步骤210和225之间、在编码器侧执行残差调整的步骤(图10的步骤211)。
该步骤旨在减少由应用前向映射然后应用逆映射所产生的误差。给定位置p的误差测量为:
Error(p)=Orig(p)–invMapBis[fwdMap[Pred(p)]+Res_source(p)]
更接近的invMapBis[fwdMap[]]对应于确切识别函数(Id[]),则Error(p)应当越接近零。然而,由于invMapBis[]是fwdMap[]的逆函数的近似,并且还由于可能的舍入误差,invMapBis[fwdMap[]]可以不同于Id[]。为了补偿由逆映射函数的近似所引起的误差,可以调整残差样本Res_source(p)。
在残差调整步骤中,对于所考虑的给定块,修改每个样本位置p处的残差值Res_source(p),使得abs(Error(p))或(Error(p))2最小,其中abs(x)对应于x的绝对值。实际上,这可以包括扫描初始值周围的一些值,并且保持给出具有最小幅度的误差的值。对于所考虑的块的每个位置p,该过程可以如下实现:
-设置initVal=Res_source(p)
-计算minError=abs(Error(p))
-如果minError不等于0
-设置bestS=0
-对于s=-S到S,S是给定值(例如S=2)
设置Res_source(p)=initVal+s
计算Error(p)
如果(abs(error(p))<minError)
设置bestS=s
设置minError=abs(Error(p))
-设置Res_source(p)=initVal+bestS
在替代实施方案中,误差还考虑变换和量化的影响。该过程按变换单元工作,并且可以如下执行:
-针对所述块中的所有p个位置,将所述变换及量化应用于残差值Res_source(p)的所述块
-将minError设定为较大值
-对于k=0到BS-1,扫描每个变换系数Coef[k],BS是所考虑的块中的变换系数的数目
-设置initVal=Coef[k]
-对于t=-T到T,T是给定值(例如T=1)
-设置Coef[k]=initVal+t
-对系数块执行逆量化和逆变换
-计算块上的误差幅度之和
SumErr=∑pabs(Error(p)),其中使用Res(p)而不是Res_source(p)来计算Error(p)
-如果(SumErr<minError)
-设置bestT=t
-设置minError=SumErr
-设置Coef[k]=initVal+bestT
在另一实施例中,逆映射函数的区间长度不是2的幂,并且可以从一个分段到另一分段而变化,如在默认设计中那样。但是与前向映射函数相比,分段数量减少了。例如,将其减少2倍,以便减少识别必须被逆映射的值所属的块的索引所需的检查次数。这导致设计简化。
根据该实施例,除了逆映射函数的尺度值之外,还需要用信号通知区间长度。下表中提供了相应信令的示例。新的语法元素“reshape_interval_length[i]”被插入到语法中。reshape_interval_length[i]表示第i个区间(即,第i个分段)的长度。这些值可以被差分译码为根据前向函数导出的“默认”区间值。例如,对于i=0至reshaperModelInvSize,分段i的默认区间值等于(fwdMap[(i+1)*Rinv]–fwdMap[i*Rinv])。
Figure BDA0003145630160000221
本文描述了各种方法,并且每种方法包括用于实现所描述的方法的一个或多个步骤或动作。除非方法的正确操作需要特定顺序的步骤或动作,否则可修改或组合特定步骤和/或动作的顺序和/或使用。
本申请中描述的各种方法和其它方面可用于修改模块,例如图2和图3所示的视频编码器200和解码器300的逆映射模块(290,291,390,396)。此外,本发明的方面不限于VVC或HEVC,并且可应用于例如其它标准和建议,以及任何这种标准和建议的扩展。除非另外指出或在技术上排除,本申请中描述的方面可以单独或组合使用。
在本申请中使用各种数值,例如,在映射函数中使用的斜率。具体值是出于示例目的,并且所描述的方面不限于这些具体值。
图11示出了其中实现了各个方面和实施例的系统的示例的框图。系统1100可体现为包含下文所描述的各种组件的设备,且经配置以执行本申请案中所描述的方面中的一者或多者。此类设备的示例包括但不限于各种电子设备,诸如个人计算机、膝上型计算机、智能电话、平板计算机、数字多媒体机顶盒、数字电视接收机、个人视频记录系统、连接的家用电器和服务器。系统1100的元件可以单独地或组合地在单个集成电路、多个IC和/或分立组件中实现。例如,在至少一个实施例中,系统1100的处理和编码器/解码器元件分布在多个IC和/或分立组件上。在各种实施例中,系统1100经由例如通信总线或通过专用输入和/或输出端口通信地耦合到其它系统或其它电子设备。在各种实施例中,系统1100经配置以实施本申请案中所描述的方面中的一者或多者。
系统1100包括至少一个处理器1110,其被配置为执行加载在其中的指令,以用于实现例如本申请中描述的各个方面。处理器1110可以包括嵌入式存储器、输入输出接口和本领域已知的各种其它电路。系统1100包括至少一个存储器1120(例如,易失性存储器设备和/或非易失性存储器设备)。系统1100包括存储设备1140,其可以包括非易失性存储器和/或易失性存储器,包括但不限于EEPROM、ROM、PROM、RAM、DRAM、SRAM、闪存、磁盘驱动器、和/或光盘驱动器。作为非限制性示例,存储设备1140可以包括内部存储设备、附接的存储设备和/或网络可访问的存储设备。
系统1100包括编码器/解码器模块1130,其被配置成例如处理数据以提供编码视频或解码视频,并且编码器/解码器模块1130可包括其自己的处理器和存储器。编码器/解码器模块1130表示可以包括在设备中以执行编码和/或解码功能的模块(一个或多个)。如已知的,设备可以包括编码和解码模块中的一者或两者。另外,编码器/解码器模块1130可以实现为系统1100的单独元件,或者可以作为本领域技术人员已知的硬件和软件的组合而并入处理器1110内。
要加载到处理器1110或编码器/解码器1130上以执行本申请中描述的各个方面的程序代码可以存储在存储设备1140中,并且随后加载到存储器1120上以便由处理器1110执行。根据各种实施例,处理器1110、存储器1120、存储设备1140和编码器/解码器模块1130中的一者或多者可以在执行本申请中描述的过程期间存储各种项中的一者或多者。这些存储的项可以包括但不限于输入视频、解码视频或解码视频的部分、比特流、矩阵、变量以及来自等式、公式、运算和运算逻辑的处理的中间或最终结果。
在若干实施例中,处理器1110和/或编码器/解码器模块1130内部的存储器用于存储指令,并且提供用于在编码或解码期间需要的处理的工作存储器。然而,在其它实施例中,处理设备外部的存储器(例如,处理设备可以是处理器1110或编码器/解码器模块1130)被用于这些功能中的一者或多者。外部存储器可以是存储器1120和/或存储设备1140,例如,动态易失性存储器和/或非易失性闪存。在若干实施例中,外部非易失性闪存用于存储电视的操作系统。在至少一个实施例中,诸如RAM的快速外部动态易失性存储器被用作用于诸如MPEG-2、HEVC或VVC的视频译码和解码操作的工作存储器。
如框1105中所示,可以通过各种输入设备来提供对系统1100的元件的输入。这样的输入设备包括但不限于(i)接收例如由广播公司通过空中传输的RF信号的RF部分,(ii)复合输入端子,(iii)USB输入端子,和/或(iv)HDMI输入端子。
在各种实施例中,框1105的输入设备具有本领域已知的相关联的相应输入处理元件。例如,RF部分可以与适于以下的元件相关联:(i)选择期望频率(也称为选择信号,或者将信号频带限制到频带),(ii)将选择的信号下变频,(iii)再次频带限制到较窄频带,以选择(例如)在某些实施例中可以称为信道的信号频带,(iv)解调下变频和频带限制的信号,(v)执行纠错,以及(vi)解复用以选择期望的数据分组流。各种实施例的RF部分包括一个或多个元件以执行这些功能,例如,频率选择器、信号选择器、限带器、信道选择器、滤波器、下变频器、解调器、纠错器和解复用器。RF部分可以包括执行各种这些功能的调谐器,这些功能包括例如将接收的信号下变频到较低频率(例如,中频或近基带频率)或基带。在一个机顶盒实施例中,RF部分及其相关的输入处理元件接收通过有线(例如,电缆)介质传输的RF信号,并通过滤波、下变频和再次滤波到期望的频带来执行频率选择。各种实施例重新安排上述(和其它)元件的顺序,移除这些元件中的一些,和/或添加执行类似或不同功能的其它元件。添加元件可以包括在现有元件之间插入元件,例如,插入放大器和模数转换器。在各种实施例中,RF部分包括天线。
另外,USB和/或HDMI端子可以包括用于通过USB和/或HDMI连接将系统1100连接到其它电子设备的相应接口处理器。应当理解,输入处理的各个方面,例如Reed-Solomon纠错,可以根据需要在例如单独的输入处理IC或处理器1110内实现。类似地,USB或HDMI接口处理的各方面可以根据需要在单独的接口IC内或在处理器1110内实现。解调、纠错和解复用的流被提供给各种处理元件,包括例如处理器1110和与存储器和存储元件结合操作的编码器/解码器1130,以便根据需要处理数据流以呈现在输出设备上。
系统1100的各种元件可设置在集成壳体内。各种元件可使用合适的连接布置1115互连并在其间传输数据,所述连接布置例如本领域已知的内部总线,包括I2C总线、布线和印刷电路板。
系统1100包括使得能够经由通信信道1190与其它设备通信的通信接口1150。通信接口1150可以包括但不限于被配置为通过通信信道1190发送和接收数据的收发器。通信接口1150可以包括但不限于调制解调器或网卡,并且通信信道1190可以例如在有线和/或无线介质内实现。
在各种实施例中,使用诸如IEEE 802.11的Wi-Fi网络将数据流式传输到系统1100。这些实施例的Wi-Fi信号通过适用于Wi-Fi通信的通信信道1190和通信接口1150被接收。这些实施例的通信信道1190通常连接到接入点或路由器,所述接入点或路由器提供对包括因特网的外部网络的接入以允许流式应用和其它过顶通信。其它实施例使用通过输入框1105的HDMI连接递送数据的机顶盒向系统1100提供流式数据。还有一些实施例使用输入框1105的RF连接向系统1100提供流式数据。
系统1100可以向各种输出设备提供输出信号,所述输出设备包括显示器1165、扬声器1175和其他外围设备1185。在实施例的各种示例中,其他外围设备1185包括独立DVR、盘播放器、立体声系统、照明系统、和基于系统1100的输出提供功能的其他设备中的一者或多者。在各种实施例中,使用信令在系统1100和显示器1165、扬声器1175或其它外围设备1185之间传送控制信号,所述信令诸如AV.链路、CEC或其他通信协议,其使得能够在有或没有用户干预的情况下进行设备到设备控制。输出设备可以经由通过相应接口1160、1170和1180的专用连接而通信地耦合到系统1100。或者,输出设备可以使用通信信道1190经由通信接口1150连接到系统1100。显示器1165和扬声器1175可以与系统1100的其它组件一起集成在电子设备(例如电视)中的单个单元中。在各种实施例中,显示接口1160包含显示驱动器,例如,定时控制器(T Con)芯片。
例如,如果输入1105的RF部分是单独机顶盒的一部分,则显示器1165和扬声器1175可以备选地与其它组件中的一个或多个分离。在显示器1165和扬声器1175是外部组件的各种实施例中,可以经由专用输出连接提供输出信号,所述专用输出连接例如包括HDMI端口、USB端口或COMP输出。
根据一个实施例,提供了一种视频编码或解码的方法,包括:基于前向映射函数,对与图片的块的样本对应的预测样本执行前向映射;以及基于逆映射函数,对所述块的所述样本的重构版本执行逆映射,其中所述逆映射函数是所述前向映射函数的逆函数的近似,其中所述逆映射函数被建模为分段线性函数,并且其中所述分段线性模型中的每个分段被定义为具有相同的区间长度。
根据另一实施例,提供一种用于视频编码或解码的装置,其包括一或多个处理器,其中所述一或多个处理器被配置成:基于前向映射函数,对与图片的块的样本对应的预测样本执行前向映射;以及基于逆映射函数,对所述块的所述样本的重构版本执行逆映射,其中所述逆映射函数是所述前向映射函数的逆函数的近似,其中所述逆映射函数被建模为分段线性函数,并且其中所述分段线性模型中的每个分段被定义为具有相同的区间长度。所述装置进一步可以包括耦合到所述一个或多个处理器的一个或多个存储器。
根据另一实施例,提供了一种视频编码或解码的装置,包括:用于基于前向映射函数,对与图片的块的样本对应的预测样本执行前向映射的装置;以及用于基于逆映射函数,对所述块的所述样本的重构版本执行逆映射的装置,其中所述逆映射函数是所述前向映射函数的逆函数的近似,其中所述逆映射函数被建模为分段线性函数,并且其中所述分段线性模型中的每个分段被定义为具有相同的区间长度。
根据另一实施例,通过执行以下步骤来形成包括编码视频的信号:基于前向映射函数,对与图片的块的样本对应的预测样本执行前向映射;以及基于逆映射函数,对所述块的所述样本的重构版本执行逆映射,其中所述逆映射函数是所述前向映射函数的逆函数的近似,其中所述逆映射函数被建模为分段线性函数,并且其中所述分段线性模型中的每个分段被定义为具有相同的区间长度。
在一个实施例中,所述块的所述样本的所述重构版本被生成为以下的和:(1)所述前向映射预测样本和(2)与所述样本对应的逆量化和逆变换的预测残差。
在一个实施例中,所述分段线性模型中的所述区间长度等于2的幂。在另一个实施例中,所述区间可以具有不同的长度。
在一个实施例中,所述分段线性模型由所述分段线性模型中的段数、初始偏移值以及所述分段线性模型中的各个分段的斜率来指定。
在一个实施例中,所述逆映射进一步被应用于解码器处的输出样本。
在一个实施例中,所述前向映射进一步被应用于编码器处的输入样本。
在一个实施例中,应用环内滤波以对所述块的所述样本的所述逆映射重构版本进行滤波。
根据一个实施例,当满足以下条件中的一个或多个时,编码器或解码器可跳过前向映射和逆映射:
(1)与所述样本对应的预测残差为零;
(2)所述块的所有样本的预测残差为零;
(3)所述块以跳跃模式被编码;以及
(4)标志指示对于所述块所有变换系数都是零。
在一个实施例中,所述逆映射函数的所述分段线性模型中的分段的数量大于或等于用于所述前向映射函数的分段线性函数的分段的数量。
在一个实施例中,在比特流中指示所述分段线性模型中的分段的数量。
在一个实施例中,在比特流中指示所述初始偏移值和所述斜率。
在一个实施例中,在所述比特流中指示以下之间的斜率差:(1)要在解码器处导出的斜率值的初始集合和(2)要用于执行所述逆映射的斜率值的集合。
在一个实施例中,基于所述前向映射函数,导出用于执行所述逆映射的一个或多个参数。
在一个实施例中,逆映射函数首先被导出为所述前向映射的逆函数,然后被调整为所述分段线性函数。
在一个实施例中,在变换之前调整与所述块的所述样本相对应的预测残差。在另一实施例中,在量化之前调整变换系数。在一个示例中,调整预测残差或变换系数以减少原始样本与(1)所述前向映射预测样本和(2)对应于所述样本的预测残差之和的逆映射之间的误差。
实施例提供了一种包括指令的计算机程序,当由一个或多个处理器执行所述指令时,所述指令使所述一个或多个处理器执行根据上述实施例中的任何一个实施例的编码方法或解码方法。本发明实施例中的一者或一者以上还提供一种计算机可读存储介质,其上存储有用于根据上文所描述的方法编码或解码视频数据的指令。一个或多个实施例还提供了一种计算机可读存储介质,其上存储有根据上述方法生成的比特流。一个或多个实施例还提供了一种用于发送或接收根据上述方法生成的比特流的方法和装置。
各种实现方式涉及解码。如本申请中所使用的“解码”可以包括例如对接收到的编码序列执行的全部或部分过程,以便产生适合于显示的最终输出。在各种实施例中,此类过程包括通常由解码器执行的过程中的一个或多个过程,例如熵解码、逆量化、逆变换和差分解码。短语“解码过程”是否旨在具体地指代操作的子集或一般地指代更广泛的解码过程基于具体描述的上下文将是清楚的,并且相信是本领域技术人员所充分理解的。
各种实现涉及编码。以与以上关于“解码”的讨论类似的方式,如在本申请中使用的“编码”可以包括例如对输入视频序列执行的以便产生编码比特流的过程的全部或部分。
注意,这里使用的语法元素,例如用于表征逆映射函数的语法,是描述性术语。因此,它们不排除使用其它语法元素名称。
本文描述的实现方式和方面可以在例如方法或过程、装置、软件程序、数据流或信号中实现。即使仅在单一形式的实现的上下文中讨论(例如,仅作为方法讨论),所讨论的特征的实现也可以以其他形式(例如,装置或程序)来实现。例如,可以以适当的硬件、软件和固件来实现装置。所述方法可以在例如装置中实现,所述装置例如处理器,其通常指处理设备,包括例如计算机、微处理器、集成电路或可编程逻辑设备。处理器还包括通信设备,例如计算机、蜂窝电话、便携式/个人数字助理(“PDA”)和便于终端用户之间的信息通信的其他设备。
对“一个实施例”或“实施例”或“一个实现”或“实现”以及其它变化形式的提及意味着结合实施例描述的特定特征、结构、特性等包含于至少一个实施例中。因此,在本申请中的各个地方出现的短语“在一个实施例中”或“在实施例中”或“在一个实现中”或“在实现中”以及任何其他变型的出现不一定都指同一实施例。
另外,本申请可以涉及“确定”各种信息。确定信息可以包括例如估计信息、计算信息、预测信息或从存储器检索信息中的一者或多者。
此外,本申请可以涉及“访问”各种信息。访问信息可以包括例如接收信息、检索信息(例如,从存储器)、存储信息、移动信息、复制信息、计算信息、确定信息、预测信息或估计信息中的一一者或多者。
另外,本申请可以指“接收”各种信息。如同“访问”一样,接收旨在是广义的术语。接收信息可以包括例如访问信息或(例如从存储器)检索信息中的一者或多者。此外,在例如存储信息、处理信息、发送信息、移动信息、复制信息、擦除信息、计算信息、确定信息、预测信息或估计信息的操作期间,通常以一种方式或另一种方式涉及“接收”。
应当理解,使用以下“/”、“和/或”以及“中的至少一者”中的任何一者(例如在“A/B”、“A和/或B”以及“A和B中的至少一者”的情况下)旨在涵盖仅对第一列出的选项(A)的选择、或仅对第二列出的选项(B)的选择、或对两个选项(A和B)的选择。作为进一步的例子,在“A、B和/或C”和“A、B和C中的至少一者”的情况下,这样的措词旨在包括仅选择第一个列出的选项(A),或者仅选择第二个列出的选项(B),或者仅选择第三个列出的选项(C),或者仅选择第一个和第二个列出的选项(A和B),或者仅选择第一个和第三个列出的选项(A和C),或者仅选择第二个和第三个列出的选项(B和C),或者选择所有三个选项(A和B和C)。如本领域和相关领域的普通技术人员所清楚的,这可以扩展到所列的多个项目。
此外,如本文所使用的,词语“信号/用信号通知”尤其是指向对应的解码器指示某物。例如,在某些实施例中,编码器将分段线性模型中的分段的数量用信号通知给解码器。这样,在一个实施例中,在编码器侧和解码器侧使用相同的参数。因此,例如,编码器可以向解码器发送(显式信令)特定参数,使得解码器可以使用相同的特定参数。相反,如果解码器已经具有特定参数以及其它参数,则可以使用信令而不进行发送(隐式信令),以简单地允许解码器知道并选择特定参数。通过避免任何实际功能的传输,在各种实施例中实现了比特节省。应当理解,可以以各种方式来实现信令。例如,在各种实施例中,一个或多个语法元素、标志等被用于将信息用信号通知给对应的解码器。虽然前述内容涉及词语“信号/用信号通知”的动词形式,但是词语“信号/用信号通知”在本文中也可以用作名词。
如对于本领域普通技术人员将显而易见的,实现可以产生被格式化以携带例如可以被存储或发送的信息的各种信号。该信息可以包括例如用于执行方法的指令,或者由所描述的实现之一产生的数据。例如,信号可以被格式化以携带所描述的实施例的比特流。这种信号可以被格式化为例如电磁波(例如,使用频谱的射频部分)或基带信号。格式化可以包括例如编码数据流和用编码数据流调制载波。信号携带的信息可以是例如模拟或数字信息。如已知的,信号可以通过各种不同的有线或无线链路来传输。该信号可以存储在处理器可读介质上。

Claims (19)

1.一种用于视频编码或解码的方法,包括:
基于前向映射函数,对与图片的块的样本对应的预测样本执行前向映射;以及
基于逆映射函数,对所述块的所述样本的重构版本执行逆映射,
其中所述逆映射函数是所述前向映射函数的逆函数的近似,
其中所述逆映射函数被建模为分段线性函数,以及
其中所述分段线性模型中的每个分段被定义为具有相同的区间长度。
2.一种用于视频编码或解码的装置,包括一个或多个处理器,其中所述一个或多个处理器被配置成:
基于前向映射函数,对与图片的块的样本对应的预测样本执行前向映射;以及
基于逆映射函数,对所述块的所述样本的重构版本执行逆映射,
其中所述逆映射函数是所述前向映射函数的逆函数的近似,
其中所述逆映射函数被建模为分段线性函数,以及
其中所述分段线性模型中的每个分段被定义为具有相同的区间长度。
3.根据权利要求1所述的方法,或根据权利要求2所述的装置,其中,所述分段线性模型中的所述区间长度等于2的幂。
4.根据权利要求1或3所述的方法,或根据权利要求2或3所述的装置,其中,所述分段线性模型由以下来指定:所述分段线性模型中的分段的数量、初始偏移值、以及所述分段线性模型中的各个分段的斜率。
5.根据权利要求1、3和4中任一项所述的方法,或根据利要求2-4中任一项所述的装置,其中,所述逆映射进一步被应用于解码器处的输出样本。
6.根据权利要求1、3和4中任一项所述的方法,或根据权利要求2-4中任一项所述的装置,其中,所述前向映射进一步被应用于编码器处的输入样本。
7.根据权利要求1和3-6中任一项所述的方法,或根据权利要求2-6中任一项所述的装置,其中,所述前向映射和所述逆映射被否被执行是响应于以下条件中的一者或多者是否被满足:
(1)与所述样本对应的预测残差为零;
(2)所述块的所有样本的预测残差为零;
(3)所述块以跳跃模式编码;以及
(4)标志指示对于所述块所有变换系数都是零。
8.根据权利要求4-7中任一项所述的方法,或根据权利要求4-7中任一项所述的装置,其中,用于所述逆映射函数的所述分段线性模型中的分段的数量大于或等于用于所述前向映射函数的分段线性函数的分段的数量。
9.根据权利要求4-8中任一项所述的方法,或根据权利要求4-8中任一项所述的装置,其中,所述分段线性模型中的所述分段的数量在比特流中被指示。
10.根据权利要求4-9中任一项所述的方法,或根据权利要求4-9中任一项所述的装置,其中,所述初始偏移值和所述斜率在比特流中被指示。
11.根据权利要求10所述的方法,或根据权利要求10所述的装置,其中,(1)要在解码器处被导出的斜率值的初始集合与(2)要用于执行所述逆映射的斜率值的集合之间的斜率差在所述比特流中被指示。
12.根据权利要求1和3-11中任一项所述的方法,或根据权利要求2-11中任一项所述的装置,其中,用于执行所述逆映射的一个或多个参数是基于所述前向映射函数而被导出的。
13.根据权利要求12所述的方法,或根据权利要求12所述的装置,其中,逆映射函数首先被导出为所述前向映射的逆函数,然后被调整为所述分段线性函数。
14.根据权利要求1和3-13中任一项所述的方法,或根据权利要求2-13中任一项所述的装置,其中,与所述块的所述样本对应的预测残差在被变换之前被调整。
15.一种包括编码视频的信号,通过执行以下形成:
基于前向映射函数,对与图片的块的样本对应的预测样本执行前向映射;以及
基于逆映射函数,对所述块的所述样本的重构版本执行逆映射,
其中所述逆映射函数是所述前向映射函数的逆函数的近似,
其中所述逆映射函数被建模为分段线性函数,以及
其中所述分段线性模型中的每个分段被定义为具有相同的区间长度。
16.一种用于视频编码或解码的方法,包括:
访问图片的块的预测样本;
获得指示所述块的所有样本的预测残差是否为零的信号;
响应于所述信号,确定是否调整所述块的所述预测残差;以及
执行以下之一:
(1)响应于所述预测残差被确定为将被调整,调整所述预测残差,并且基于所述预测样本和所述调整的预测残差来重构所述块,以及
(2)响应于所述预测残差被确定为将不被调整,仅基于所述预测样本来重构所述块。
17.一种用于视频编码或解码的装置,包括一或多个处理器,其中所述一或多个处理器被配置成:
访问图片的块的预测样本;
获得指示所述块的所有样本的预测残差是否为零的信号;
响应于所述信号,确定是否调整所述块的所述预测残差;以及
执行以下之一:
(1)响应于所述预测残差被确定为将被调整,调整所述预测残差,并且基于所述预测样本和所述调整的预测残差来重构所述块,以及
(2)响应于所述预测残差被确定为将不被调整,仅基于所述预测样本来重构所述块。
18.根据权利要求16所述的方法,或根据权利要求17所述的装置,其中,编码块标志与指示所述块的所有样本的预测残差是否为零的所述信号对应。
19.根据权利要求16所述的方法,进一步包括,或根据权利要求17所述的装置,其中,指示跳过模式的信号与指示所述块的所有样本的预测残差是否为零的所述信号对应。
CN201980087750.8A 2019-01-04 2019-12-16 逆映射简化 Pending CN113273215A (zh)

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
EP19305013 2019-01-04
EP19305013.5 2019-01-04
EP19305018 2019-01-08
EP19305018.4 2019-01-08
EP19305213.1 2019-02-22
EP19305213.1A EP3700217A1 (en) 2019-02-22 2019-02-22 Inverse mapping simplification
PCT/US2019/066494 WO2020142186A1 (en) 2019-01-04 2019-12-16 Inverse mapping simplification

Publications (1)

Publication Number Publication Date
CN113273215A true CN113273215A (zh) 2021-08-17

Family

ID=69174592

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980087750.8A Pending CN113273215A (zh) 2019-01-04 2019-12-16 逆映射简化

Country Status (4)

Country Link
US (1) US11647188B2 (zh)
EP (1) EP3906691A1 (zh)
CN (1) CN113273215A (zh)
WO (1) WO2020142186A1 (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
MX2021008911A (es) 2019-02-01 2021-08-24 Beijing Bytedance Network Tech Co Ltd Se?alizacion de informacion de reformacion en bucle utilizando conjuntos de parametros.
WO2020156528A1 (en) 2019-02-01 2020-08-06 Beijing Bytedance Network Technology Co., Ltd. Filtering processes based on in-loop reshaping
CN113574889B (zh) 2019-03-14 2024-01-12 北京字节跳动网络技术有限公司 环路整形信息的信令和语法
CN113632469B (zh) 2019-03-23 2022-12-13 北京字节跳动网络技术有限公司 默认的环内整形参数
CN116800956A (zh) * 2022-01-07 2023-09-22 杭州海康威视数字技术股份有限公司 图像编解码方法、装置及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013068132A1 (en) * 2011-11-09 2013-05-16 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Inter-layer prediction between layers of different dynamic sample value range
WO2016153896A1 (en) * 2015-03-20 2016-09-29 Dolby Laboratories Licensing Corporation Signal reshaping approximation
CN107258082A (zh) * 2015-02-20 2017-10-17 汤姆逊许可公司 用于编码颜色映射信息和基于颜色映射信息处理图像的方法及装置
US20180124399A1 (en) * 2015-04-06 2018-05-03 Dolby Laboratories Licensing Corporation In-loop block-based image reshaping in high dynamic range video coding
WO2019006300A1 (en) * 2017-06-29 2019-01-03 Dolby Laboratories Licensing Corporation INTEGRATED IMAGE REMODELING AND VIDEO CODING

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10652588B2 (en) * 2015-09-21 2020-05-12 Vid Scale, Inc. Inverse reshaping for high dynamic range video coding
US20190079554A1 (en) * 2015-10-05 2019-03-14 Thomson Licensing Method and apparatus for determining an output value representing a picture data by applying a piece-wise linear function on an input data representing a picture data
KR102477070B1 (ko) * 2016-06-06 2022-12-12 아길렙큐 인코포레이티드 데이터 변환 시스템 및 방법
US10778979B2 (en) * 2018-01-11 2020-09-15 Qualcomm Incorporated Signaling mechanisms for equal ranges and other DRA parameters for video coding
KR102487032B1 (ko) * 2018-02-14 2023-01-11 돌비 레버러토리즈 라이쎈싱 코오포레이션 레이트 왜곡 최적화를 이용한 비디오 코딩에서의 이미지 재성형
US11388406B2 (en) * 2019-05-20 2022-07-12 Dolby Laboratories Licensing Corporation Piece-wise-linear mapping for in-loop reshaping in image coding

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013068132A1 (en) * 2011-11-09 2013-05-16 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Inter-layer prediction between layers of different dynamic sample value range
CN107258082A (zh) * 2015-02-20 2017-10-17 汤姆逊许可公司 用于编码颜色映射信息和基于颜色映射信息处理图像的方法及装置
WO2016153896A1 (en) * 2015-03-20 2016-09-29 Dolby Laboratories Licensing Corporation Signal reshaping approximation
US20180124399A1 (en) * 2015-04-06 2018-05-03 Dolby Laboratories Licensing Corporation In-loop block-based image reshaping in high dynamic range video coding
WO2019006300A1 (en) * 2017-06-29 2019-01-03 Dolby Laboratories Licensing Corporation INTEGRATED IMAGE REMODELING AND VIDEO CODING

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
EDOUARD FRANÇOIS等: "CE12-related: in-loop luma reshaping with approximate inverse mapping function", JOINT VIDEO EXPERTS TEAM (JVET) OF ITU-T SG 16 WP 3 AND ISO/IEC JTC 1/SC 29/WG 11, 13TH MEETING: MARRAKECH, MA, 9–18 JAN. 2019,JVET-M0640-V2.ZIP JVET-M0640.DOCX, 11 January 2019 (2019-01-11), pages 1 - 6 *

Also Published As

Publication number Publication date
EP3906691A1 (en) 2021-11-10
WO2020142186A1 (en) 2020-07-09
US11647188B2 (en) 2023-05-09
US20220007018A1 (en) 2022-01-06

Similar Documents

Publication Publication Date Title
US11647188B2 (en) Inverse mapping simplification
CN112970264A (zh) 基于相邻样本相关参数模型的译码模式的简化
US20220191481A1 (en) In-loop reshaping adaptive reshaper direction
CN112740682A (zh) 用于依赖性标量量化的标量量化器决策方案
WO2020086421A1 (en) Video encoding and decoding using block-based in-loop reshaping
US20230188734A1 (en) Refinement mode processing in video encoding and decoding
CN114073077A (zh) 用于小块的高级语法简化工具集
WO2020117781A1 (en) Method and apparatus for video encoding and decoding with adjusting the quantization parameter to block size
US20220141466A1 (en) Unification of context-coded bins (ccb) count method
CN114731423A (zh) 预见要添加到亮度映射斜率值的校正值的色度残差缩放
WO2020185387A1 (en) Method and device for picture encoding and decoding with forward and inverse mapping models
CN112335246B (zh) 用于基于适应性系数组的视频编码和解码的方法及设备
CN113170137A (zh) 降低本地邻域的使用的残差译码
CN115039409A (zh) 用于视频编码和解码的残差处理
EP3700217A1 (en) Inverse mapping simplification
US20220256202A1 (en) Luma mapping with chroma scaling (lmcs) lut extension and clipping
EP3627837A1 (en) Refinement mode processing in video encoding and decoding
WO2024002879A1 (en) Reconstruction by blending prediction and residual
EP3709655A1 (en) In-loop reshaping adaptive reshaper direction
EP3618443A1 (en) Illumination compensation in video coding
CN117501692A (zh) 用于视频编码和解码的模板匹配预测
KR20220024716A (ko) 비디오 인코딩 및 디코딩을 위한 단일 인덱스 양자화 행렬 설계
CN112385226A (zh) 视频编码中的照度补偿
CN114128275A (zh) 亮度到色度量化参数表信令
CN112740683A (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