CN112313960A - 视频解码器/编码器、解码/编码视频内容的方法、计算机程序及视频比特流 - Google Patents

视频解码器/编码器、解码/编码视频内容的方法、计算机程序及视频比特流 Download PDF

Info

Publication number
CN112313960A
CN112313960A CN201980036029.6A CN201980036029A CN112313960A CN 112313960 A CN112313960 A CN 112313960A CN 201980036029 A CN201980036029 A CN 201980036029A CN 112313960 A CN112313960 A CN 112313960A
Authority
CN
China
Prior art keywords
video
source statistics
source
bits
statistics
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.)
Granted
Application number
CN201980036029.6A
Other languages
English (en)
Other versions
CN112313960B (zh
Inventor
简·斯特格曼
海纳·基尔霍夫
德特勒夫·马尔佩
海科·施瓦尔茨
托马斯·威甘德
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fraunhofer Gesellschaft zur Forderung der Angewandten Forschung eV
Original Assignee
Fraunhofer Gesellschaft zur Forderung der Angewandten Forschung eV
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 Fraunhofer Gesellschaft zur Forderung der Angewandten Forschung eV filed Critical Fraunhofer Gesellschaft zur Forderung der Angewandten Forschung eV
Publication of CN112313960A publication Critical patent/CN112313960A/zh
Application granted granted Critical
Publication of CN112313960B publication Critical patent/CN112313960B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • 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/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • 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/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/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/174Methods 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 slice, e.g. a line of blocks or a group of blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/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/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/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

一种视频解码器被配置为解码被细分成一个或多个片的集合的多个视频帧。解码器评估指示是使用独立编码模式还是使用单预测性模式还是使用双预测性模式对片进行编码的片类型信息,以选择用于片的解码的操作模式,在独立编码模式中,不存在基于先前帧的视频内容对当前帧的视频内容的预测,在单预测性模式中,存在基于先前帧的一个像素区块对像素区块的预测,在双预测性模式中,存在基于一个或多个先前帧的两个或更多个像素区块对像素区块的预测。视频解码器包括用于基于二进制序列的编码表示提供经解码的二进制序列的算术解码器。算术解码器被配置为使用第一估计参数确定第一源统计值及使用第二估计参数确定第二源统计值。算术解码器被配置为基于第一源统计值(a)及基于第二源统计值确定组合源统计值,且算术解码器被配置为基于组合源统计值确定用于间隔细分的一个或多个范围值,一个或多个范围值用于二进制序列的编码表示至经解码的二进制序列的映射。

Description

视频解码器/编码器、解码/编码视频内容的方法、计算机程序 及视频比特流
技术领域
根据本发明的实施例关于视频解码器、视频编码器、用于解码视频内容的方法、用于编码视频内容的方法、计算机程序及视频比特流。
根据本发明的实施例关于一种用于二进制算术编码的概率估计方法,其可用于例如视频编码器、视频解码器中,而且还可用于图像编码器、图像解码器、音频编码器、音频解码器及类似中。
背景技术
算术编码及解码已证实为是在音频及视频内容的编码及解码中的有价值工具。举例而言,可以采用二进制值在表示视频或音频内容的二进制序列中的已知出现概率来增大编码效率。具体的,算术编码可以高效方式处理“0”及“1”的变化概率,并可以微调方式适应概率的改变。
然而,为了算术编码及解码带来最佳编码效率,重要的是,具有关于“0”及“1”的概率的良好信息,该信息良好地反映实际出现频率。关于“0”及“1”的概率(或通常,关于待编码的符号的概率)的知识通常用以在值的全部范围内调节间隔的边界,以获得间隔细分(例如,使得完全值范围被细分成与不同二进制值或二进制值的群组相关联的间隔)。
因此,需要用于确定用于间隔细分的源统计值或范围值的概念,该概念提供计算效率与可靠性之间的良好折衷。
发明内容
根据本发明的实施例创造一种视频解码器,其中该视频解码器被配置为解码多个视频帧 (例如,视频帧的序列)。
该视频解码器被配置为解码被细分成一个或多个片(较佳地,多个片)的集合的视频帧,其中该视频解码器被配置为评估指示是使用独立编码模式(例如,“Intra”)还是使用单预测性模式(例如,“P”)还是使用双预测性模式(例如,“B”)对进行片编码的片类型信息(例如,“SliceType”),以选择用于片的解码的操作模式,在独立编码模式中,不存在基于先前帧的视频内容对当前帧的视频内容的预测,在单预测性模式中,存在基于先前帧 (例如,先前解码的帧)的一个像素区块(例如,仅一个像素区块)对像素区块的预测,在双预测性模式中,存在基于一个或多个先前帧(例如,先前解码的帧)的两个或更多个像素区块对像素区块的预测。该视频解码器包括算术解码器,算术解码器用于基于二进制序列的编码表示来提供经解码的二进制序列(例如,描述图像内容的变换系数)。该算术解码器被配置为使用第一窗大小(例如,wa)(其可例如由窗大小变量表示),例如,基于先前解码的二进制序列,确定第一源统计值(例如,at)(其例如基于先前解码的二进制值xt-1、xt-2……的频率)(以及其例如还标示为“计数器变量”或“计数器”)及使用第二窗大小(例如, wb),例如,基于先前解码的二进制序列,确定第二源统计值(例如,bt)(其基于先前解码的二进制值xt-1、xt-2……的频率)。举例而言,该算术解码器被配置为基于第一源统计值 (例如,at)及基于第二源统计值(例如,bt)确定组合源统计值(例如,
Figure BDA0002803122250000021
Figure BDA0002803122250000022
或pt)。该算术解码器被配置为基于组合源统计值确定用于间隔细分的一个或多个范围值,该一个或多个范围值用于二进制序列的编码表示至经解码的二进制序列的映射。
在该视频解码器的较佳实施例中,该算术解码器被配置为依据片类型信息确定第一窗大小及第二窗大小(例如,以选取不同值,其中第一窗大小及第二窗大小可例如处于1与11 之间的范围内,包括1及11)。
在该视频解码器的较佳实施例中,该视频解码器被配置为还依据包括于比特流中(例如,每片一个初始化标志)的初始化参数或标志(例如,“cabac init flag”)确定第一窗大小及第二窗大小,其中初始化标志可以可选择地还限定用于第一源统计值及/或第二源统计值的初始化值。
在该视频解码器的较佳实施例中,该视频解码器被配置为还依据上下文模型(例如,依据哪一类型的信息将被解码,例如,变换系数的一个或多个最高有效位还是变换系数的一个或多个较低有效位将被解码)确定第一窗大小及第二窗大小。举例而言,可针对片类型、初始化标志与上下文模型的每个组合预定义限定第一窗大小及第二窗大小的成对窗大小值。
在较佳实施例中,该视频解码器被配置为依据先前解码的二进制值(例如,xt)将预定值(例如,((1<<BITSa)-ka)>>na或(ONEa>>na))选择性地添加至第一源统计值的先前计算的实例(例如,at),并减去第一源统计值的先前计算的实例的按比例调整的版本(例如,(at>>na)),以便获得第一源统计值的经更新版本(at+1)。替代地或另外,该视频解码器被配置为依据先前解码的二进制值(例如,xt)将预定值(例如,((1<<BITSb)-kb)>>nb或(ONEb>>nb))选择性地添加至第二源统计值的先前计算的实例(例如,bt),并减去第二源统计值的先前计算的实例的按比例调整的版本(例如,(bt>>nb)),以便获得第二源统计值的经更新版本(bt+1)。
在较佳实施例中,该视频解码器被配置为根据以下获得第一源统计值的经更新版本at+1
at+1=at+xt·(ONEa>>na)-(at>>na)
其中at为第一源统计值的先前计算版本,其中xt为先前解码的二进制值(例如,选取0 或1的值的二进制符号),其中na为窗大小信息(例如,具有整数值),
其中
ONEa=(1<<BITSa)-ka
其中BITSa为用于表示第一源统计值的比特数,
其中ka为预定数(例如,整数,例如,0或1)。
替代地或另外,该视频解码器被配置为根据以下获得第二源统计值的经更新版本bt+1
bt+1=bt+xt·(ONEb>>nb)-(bt>>nb)
其中bt为第二源统计值的先前计算版本,其中xt为先前解码的符号(例如,选取0或1 的值的二进制符号),其中nb为窗大小信息(例如,具有整数值),其中
ONEb=(1<<BITSb)-kb
其中BITSb为用于表示第二源统计值的比特数,
其中kb为预定数(例如,整数,例如,0或1)。
在较佳实施例中,ka=1及/或kb=1。
在该视频解码器的较佳实施例中,该视频解码器被配置为根据以下确定第一源统计值at+1
at+1=at+(xt<<(BITSa-na))-(at>>na)
at+1=at+1-(at+1>>BITSa)
其中at为先前计算的源统计值,xt为先前解码的二进制值,BITSa为针对第一源统计值分配的比特数,na表示该第一窗大小wa,其中
Figure BDA0002803122250000031
且“>>”为向右移位运算符,且/或其中该视频解码器被配置为根据以下确定第二源统计值bt+1
bt+1=bt+(xt<<(BITSb-nb))-(bt>>nb)
bt+1=bt+1-(bt+1>>BITSb)
其中bt为先前计算的源统计值,xt为先前解码的二进制值,BITSb为针对第一源统计值分配的比特数,nb表示第二窗大小wb,其中
Figure BDA0002803122250000032
注意,第一与第二源统计值的更新不同仅在于参数BITSa/b及na/b。直至此较佳实施例的末尾,a及at应用于论述at及bt两者的更新过程。为了产生bt的更新过程,在以下方程式中, a的所有出现仅仅需要由b替换。可将该更新过程重写为
at+1=at+xt·(1<<(BITSa-na))-(at>>na)
at+1=at+1-(at+1>>BITSa)
其产生与以上原始更新方程式精确相同的结果。可将以上两个更新方程式中的第一个重写为
at+1=at+xt·(ONEa>>na)-(at>>na)
其中
ONEa=1<<BITSa
注意,ONEa表示等于1的概率值。对于高效实施,量化或稍微更改ONEa(例如,借由添加或减去少量)可为合理的。此实际上对源统计值的行为无影响。举例而言,当使用
ONEa=(1<<BITSa)-1时,
ONEa的二进制表示需要比原始版本少一个比特。然而,源统计值的更新的行为实际上未改变。
在较佳实施例中,该视频解码器被配置为根据以下确定第一源统计值at+1
at+1=at+(xt<<(BITSa-na))-(at>>na)
其中at为先前计算的源统计值,xt为先前解码的二进制值,BITSa为针对第一源统计值分配的比特数,na表示第一窗大小wa,其中
Figure BDA0002803122250000034
且“>>”为向右移位运算符。
替代地或另外,该视频解码器被配置为根据以下确定第二源统计值bt+1
bt+1=bt+(xt<<(BITSb-nb))-(bt>>nb)
其中bt为先前计算的源统计值,xt为先前解码的二进制值,BITSb为针对第一源统计值分配的比特数,nb表示第二窗大小wb,其中
Figure BDA0002803122250000033
在该视频解码器的较佳实施例中,该视频解码器被配置为根据以下确定第一源统计值 at+1
Figure BDA0002803122250000041
其中at为先前计算的源统计值,xt为先前解码的二进制值,BITSa为针对第一源统计值分配的比特数,na表示第一窗大小wa,其中
Figure BDA0002803122250000046
且“>>”为向右移位运算符,且/ 或该视频解码器被配置为根据以下确定第二源统计值bt+1
Figure BDA0002803122250000042
其中bt为先前计算的源统计值,xt为先前解码的二进制值,BITSb为针对第一源统计值分配的比特数,nb表示第二窗大小wb,其中
Figure BDA0002803122250000043
且“>>”为向右移位运算符。
在该视频解码器的较佳实施例中,该视频解码器被配置为组合第一源统计值与第二源统计值以便获得组合源统计值。
在该视频解码器的较佳实施例中,该视频解码器被配置为根据以下获得组合源统计值
Figure BDA0002803122250000044
Figure BDA0002803122250000045
其中at为第一源统计值,且其中bt为第二源统计值。
在该视频解码器的较佳实施例中,该视频解码器被配置为组合第一源统计值与第二源统计值以便获得组合源统计值,其中不同权重与第一源统计值及第二源统计值相关联(其中,可选择地,该视频解码器被配置为在解码过程期间改变权重)。
在该视频解码器的较佳实施例中,该视频解码器被配置为使用不同比特数(例如,BITSa、BITSb)用于第一源统计值(例如,at)及第二源统计值(例如,bt)的表示。
在该视频解码器的较佳实施例中,该视频解码器被配置为将不同窗大小用于第一源统计值(例如,at)与用于第二源统计值(例如,bt),且其中该视频解码器被配置为将相对较大的比特数用于具有相对较大的窗大小的源统计值的表示,及将相对较小的比特数用于具有相对较小的窗大小的源统计值的表示。
在该视频解码器的较佳实施例中,该视频解码器被配置为根据以下修改第一源统计值 at及/或第二源统计值bt的数目表示:
a′t=at>>(BITSa-BITSmin)
及/或:
b′t=bt>>(BITSb-BITSmin),
随后确定组合源统计值,其中
BITSmin=min(BITSa,BITSb),
其中BITSa为针对第一源统计值的表示分配的比特数,且其中BITSb为针对第二源统计值的表示分配的比特数。
在该视频解码器的较佳实施例中,该视频解码器被配置为根据以下确定组合源统计值
Figure BDA0002803122250000051
Figure BDA0002803122250000052
且该视频解码器被配置为根据以下得出索引值pStateIdx,该索引值pStateIdx标示包括用于间隔细分的预计算范围值的表的表条目:
Figure BDA0002803122250000053
其中根据以下确定最可能(例如,二进制)值的值:
Figure BDA0002803122250000054
其中BITStabRes描述表的条目数(或在表的条目之间的间距,就二进制值的频率而言)。举例而言,表描述在从0至0.5的范围内的概率值至预计算范围值的映射。
在该视频解码器的较佳实施例中,该视频解码器被配置为根据以下确定组合源统计值
Figure BDA0002803122250000055
Figure BDA0002803122250000056
且该视频解码器被配置为根据以下得出索引值pStateIdx,该索引值pStateIdx标示包括用于间隔细分的预计算范围值的表的表条目:
Figure BDA0002803122250000057
其中BITStabRes描述表的条目数(或在表的条目之间的间距,就二进制值的频率而言)。举例而言,表描述在从0至1的范围内的概率值至预计算范围值的映射。
在该视频解码器的较佳实施例中,该视频解码器被配置为依据第一窗大小且依据第二窗大小选择用于第一源统计值(例如,at)及第二源统计值的表示的比特数(例如,BITSa、 BITSb)(例如,根据BITSa=ThrHd+na,其中
Figure BDA0002803122250000058
或na=round(log2wa),其中round() 为上舍入或下舍入运算符,及/或根据BITSb=ThrHd+nb,其中
Figure BDA0002803122250000059
或 nb=round(log2wb),且其中ThrHd为预定且较佳地固定值)。
在该视频解码器的较佳实施例中,用于第一源统计值(at)与第二源统计值(bt)的表示的比特总数的和在不同上下文模型上是恒定的(或在用于第一源统计值的表示的比特数有变化的情况下是独立的)。
在该视频解码器的较佳实施例中,该视频解码器被配置为还依据比特流中包括的(例如,专用)初始化标志(例如,“ws_flag”)确定第一窗大小及第二窗大小,且该视频解码器被配置为依据比特流中包括的另一初始化标志(例如,“cabac init flag”)设定用于第一源统计值及/或第二源统计值的初始化值。
在该视频解码器的较佳实施例中,该视频解码器或该算术解码器被配置为还依据当前片的时间级确定第一窗大小及第二窗大小。替代地或另外,该视频解码器或该算术解码器被配置为还依据当前片的量化参数确定第一窗大小及第二窗大小。
在该视频解码器的较佳实施例中,该视频解码器被配置为依据位置(例如,依据在当前片内已解码多少二进制值,或由于上下文初始化,而使用第一窗大小及/或第二窗大小相关联的上下文模型,或依据像素或像素区块在与待解码的二进制值相关联的帧内的位置)调节第一窗大小及/或第二窗大小。
在该视频解码器的较佳实施例中,该视频解码器被配置为当解码与开始位置(例如,像素区块的第一列,或像素区块的第一行)相关联的二进制值时将第一窗大小及/或第二窗大小设定成开始值(其较佳地小于正常值),及当解码与和开始位置相距至少预定位置(或距离)的位置相关联的二进制值时将第一窗大小及/或第二窗大小设定成正常值(其较佳地大于开始值)。
在该视频解码器的较佳实施例中,该视频解码器被配置为响应于用信号通知应改变窗大小的信令标志(例如,“ctu_ws_flag”标志)改变在片内的第一窗大小及/或第二窗大小(例如,当对片解码时)。
在该视频解码器的较佳实施例中,该视频解码器被配置为针对多个编码树单元(或甚至针对所有编码树单元)评估指示是否应改变窗大小的信令标志,及依据该信令标志增大或减小窗大小中的至少一个(例如,依据信令标志,将所有窗大小,甚至不同上下文模型的所有窗大小,共同地增大或减小一,注意不超过窗大小的最大范围)。作为替代实例,可以仅增大或减小上下文模型中的一些的窗大小。
在该视频解码器的较佳实施例中,该视频解码器被配置为从组合源统计值(例如,
Figure BDA0002803122250000061
Figure BDA0002803122250000062
或pt)得出状态索引(例如,pStateIdx),例如,根据方程式(8)或根据方程式(12) 或根据方程式(14)。替代地或另外,该视频解码器被配置为得出表示最可能二进制值或最不可能二进制值的值(例如,valMPS),例如,根据方程式(9)或根据方程式(13)。此外,该视频解码器被配置为评估将状态索引映射至用于间隔细分的一个或多个范围值的表。
在该视频解码器的较佳实施例中,该视频解码器被配置为临时(例如,为了二进制序列的多个二进制值的解码,不仅紧接在初始化后)用恒定替换值替换第二源统计值,及组合第一源统计值(例如,at)与固定非零替换值以便获得组合源统计值。
在该视频解码器的较佳实施例中,该视频解码器被配置为选择第一窗大小wa及第二窗大小wb,使得
na=nb
|na-nb|≥3,
其中
Figure BDA0002803122250000063
或na=round(log2wa),其中round()为上舍入或下舍入运算符,且其中
Figure BDA0002803122250000064
或nb=round(log2wb)。
在较佳实施例中,该视频解码器被配置为选择第窗大小wa及第二窗大小wb,使得
|na-nb|≥3,
其中
Figure BDA0002803122250000065
或na=round(log2wa),其中round()为上舍入或下舍入运算符,且其中
Figure BDA0002803122250000066
或nb=round(log2wb)。
根据本发明的另一实施例创造一种视频解码器,其中该视频解码器被配置为解码多个视频帧(例如,视频帧的序列),且其中该视频解码器被配置为解码被细分成一个或多个片 (较佳地,多个片)的集合的视频帧。该视频解码器被配置为评估指示是使用独立编码模式 (例如,“Intra”)还是使用单预测性模式(例如,“P”)还是使用双预测性模式(例如,“B”)来编码片的片类型信息(例如,“SliceType”),以选择用于片的解码的操作模式,在独立编码模式中,不存在基于先前帧的视频内容对当前帧的视频内容的预测,在单预测性模式中,存在基于先前帧(例如,先前解码的帧)的一个像素区块(例如,仅一个像素区块) 对像素区块的预测,在双预测性模式中,存在基于一个或多个先前帧(例如,先前解码的帧)的两个或更多个像素区块对像素区块的预测。该视频解码器包括算术解码器,算术解码器用于基于二进制序列的编码表示来提供经解码的二进制序列(例如,描述图像内容的变换系数)。该算术解码器被配置为使用可例如由窗大小变量表示的第一窗大小(例如,wa)确定第一源统计值(例如,at)(其可基于先前解码的二进制值xt-1、xt-2……的频率,且还可标示为“计数器变量”或“计数器”)。该算术解码器可例如基于先前解码的二进制序列确定第一源统计值。该算术解码器被配置为确定组合源统计值(例如,
Figure BDA0002803122250000071
Figure BDA0002803122250000072
或pt),其中该算术解码器被配置为组合第一源统计值(例如,at)与固定非零值,以便获得组合源统计值,且该算术解码器被配置为基于组合源统计值确定用于间隔细分的一个或多个范围值,该一个或多个范围值用于二进制序列的编码表示至经解码的二进制序列的映射。
此实施例可由关于前面论述的实施例提到的特征、功能性及细节中的任一个分别地及以组合方式进行补充。
根据本发明的实施例创造一种视频编码器,其中该视频编码器被配置为编码多个视频帧(例如,视频帧的序列),
其中该视频编码器被配置为编码被细分成一个或多个片(较佳地,多个片)的集合的视频帧。该视频编码器被配置为提供指示是使用独立编码模式(例如,“Intra”)还是使用单预测性模式(例如,“P”)还是使用双预测性模式(例如,“B”)来对片进行编码的片类型信息(例如,“SliceType”),在独立编码模式中,不存在基于先前帧的视频内容对当前帧的视频内容的预测,在单预测性模式中,存在基于先前帧(例如,先前编码的帧)的一个像素区块(例如,仅一个像素区块)对像素区块的预测,在双预测性模式中,存在基于一个或多个先前帧(例如,先前编码的帧)的两个或更多个像素区块对像素区块的预测。该视频编码器包括算术编码器,算术编码器用于基于二进制序列(其中二进制序列可表示变换系数或频谱系数,或参数,或任何其他信息,例如,表示待编码的视频内容的帧的内容)提供二进制序列的编码表示(例如,描述图像内容的变换系数)。该算术编码器被配置为使用可例如由窗大小变量表示的第一窗大小(例如,wa)确定第一源统计值(at),第一源统计值可例如基于先前编码的二进制值xt-1、xt-2……的频率且可例如还标示为“计数器变量”或“计数器”。该视频编码器可例如基于先前编码的二进制序列确定第一源统计值。该算术编码器或该视频编码器可被配置成使用第二窗大小(例如,wb)确定第二源统计值(例如,bt),第二源统计值可例如基于先前编码的二进制值xt-1、xt-2、……的频率。该算术编码器或该视频编码器可被配置为例如基于先前编码的二进制序列确定第二源统计值。该算术编码器被配置为基于第一源统计值(例如,at)及基于第二源统计值(例如,b)确定组合源统计值(例如,
Figure BDA0002803122250000073
Figure BDA0002803122250000074
或pt),且该算术编码器被配置为基于组合源统计值确定用于间隔细分的一个或多个范围值,该一个或多个范围值用于二进制序列至二进制序列的编码表示的映射。
在较佳实施例中,该视频编码器(或等效地,该算术编码器)被配置为依据片类型信息确定第一窗大小及第二窗大小(例如,两个不同值,其中第一窗大小及第二窗大小可例如处于1与11之间的范围内,包括1及11)。
在该视频编码器的较佳实施例中,该视频编码器被配置为提供初始化参数或标志(例如,“cabac init flag”标志),且该视频编码器被配置为还依据被该视频编码器包括于比特流(例如,表示视频帧的比特流)中的初始化参数或标志(例如,“cabac init flag”)确定第一窗大小及第二窗大小。举例而言,该视频编码器为每片提供一个初始化标志,其中该初始化标志可以可选择地还限定用于第一源统计值及/或第二源统计值的初始化值。
在该视频编码器的较佳实施例中,该视频编码器被配置为还依据上下文模型(例如,依据哪一类型的信息将被编码,例如,是变换系数的一个或多个最高有效位还是变换系数的一个或多个较低有效位将被编码)确定第一窗大小及第二窗大小。举例而言,可针对片类型、初始化标志与上下文模型的每个组合预定义限定第一窗大小及第二窗大小的成对窗大小值。
在较佳实施例中,该视频编码器被配置为依据先前编码的二进制值(例如,xt)将预定值(例如,((1<<BITSa)-ka)>>na或(ONEa>>na))选择性地添加至第一源统计值的先前计算实例(例如,at),及减去第一源统计值的先前计算实例的按比例调整的版本(例如, (at>>na)),以便获得第一源统计值的更新版本(at+1)。替代地或另外,该视频编码器被配置为依据先前编码的二进制值(例如,xt)将预定值(例如,((1<<BITSb)-kb)>>nb或(ONEb>>nb))选择性地添加至第二源统计值的先前计算实例(例如,bt),及减去第二源统计值的先前计算实例的按比例调整的版本(例如,(bt>>nb)),以便获得第二源统计值的更新版本(bt+1)。
在较佳实施例中,该视频编码器被配置为根据以下获得第一源统计值的更新版本at+1
at+1=at+xt·(ONEa>>na)-(at>>na)
其中at为第一源统计值的先前计算版本,其中xt为先前编码的二进制值(例如,选取 0或1的值的二进制符号),其中na为窗大小信息(例如,具有整数值),其中
ONEa=(1<<BITSa)-ka
其中BITSa为用于表示第一源统计值的比特数,其中ka为预定数(例如,整数,例如, 0或1)。
替代地或另外,该视频编码器被配置为根据以下获得第二源统计值的更新版本bt+1
bt+1=bt+xt·(ONEb>>nb)-(bt>>nb)
其中bt为第二源统计值的先前计算版本,其中xt为先前编码的符号(例如,选取0或1的值的二进制符号),其中nb为窗大小信息(例如,具有整数值),其中
ONEb=(1<<BITSb)-kb
其中BITSb为用于表示第二源统计值的比特数,其中kb为预定数(例如,整数,例如,0或1)。
在较佳实施例中,ka=1及/或kb=1;
在该视频编码器的较佳实施例中,该视频编码器被配置为根据以下确定第一源统计值 at+1(例如,用于值xt+1的编码):
at+1=at+(xt<<(BITSa-na))-(at>>na)
at+1=at+1-(at+1>>BITSa)
其中at为先前计算的源统计值,xt为先前编码的二进制值,BITSa为针对第一源统计值分配的比特数,na表示第一窗大小wa,其中
Figure BDA0002803122250000081
且“>>”为向右移位运算符。
替代地或另外,该视频编码器可被配置为根据以下确定第二源统计值bt+1
bt+1=bt+(xt<<(BITSb-nb))-(bt>>nb)
bt+1=bt+1-(bt+1>>BITSb)
其中bt为先前计算的源统计值,xt为先前编码的二进制值,BITSb为针对第一源统计值分配的比特数,nb表示第二窗大小wb,其中
Figure BDA0002803122250000091
在较佳实施例中,该视频编码器被配置为根据以下确定第一源统计值at+1
at+1=at+(xt<<(BITSa-na))-(at>>na)
其中at为先前计算的源统计值,xt为先前编码的二进制值,BITSa为针对第一源统计值分配的比特数,na表示第一窗大小wa,其中
Figure BDA0002803122250000092
且“>>”为向右移位运算符。
替代地或另外,该视频编码器被配置为根据以下确定第二源统计值bt+1
bt+1=bt+(xt<<(BITSb-nb))-(bt>>nb)
其中bt为先前计算的源统计值,xt为先前编码的二进制值,BITSb为针对第一源统计值分配的比特数,nb表示第二窗大小wb,其中
Figure BDA0002803122250000093
在该视频编码器的较佳实施例中,该视频编码器被配置为根据以下确定第一源统计值 at+1
Figure BDA0002803122250000094
其中at为先前计算的源统计值,xt为先前编码的二进制值,BITSa为针对第一源统计值分配的比特数,na表示第一窗大小wa,其中
Figure BDA0002803122250000095
且“>>”为向右移位运算符。
替代地或另外,该视频编码器可被配置为根据以下确定第二源统计值bt+1
Figure BDA0002803122250000096
其中bt为先前计算的源统计值,xt为先前编码的二进制值,BITSb为针对第一源统计值分配的比特数,nb表示第二窗大小wb,其中
Figure BDA0002803122250000097
且“>>”为向右移位运算符。
在该视频编码器的较佳实施例中,该视频编码器被配置为组合第一源统计值与第二源统计值以便获得组合源统计值。
在该视频编码器的较佳实施例中,该视频编码器被配置为根据以下获得组合源统计值
Figure BDA0002803122250000098
Figure BDA0002803122250000099
其中at为第一源统计值,且其中bt为第二源统计值。
在该视频编码器的较佳实施例中,该视频编码器被配置为组合第一源统计值与第二源统计值以便获得组合源统计值,其中不同权重与第一源统计值及第二源统计值相关联。可选择地,该视频编码器被配置为在编码过程期间改变权重。
在该视频编码器的较佳实施例中,该视频编码器被配置为将不同比特数(例如,BITSa、 BITSb)用于第一源统计值(例如,at)及第二源统计值(例如,bt)的表示。
在该视频编码器的较佳实施例中,该视频编码器被配置为将不同窗大小用于第一源统计值(例如,at)与用于第二源统计值(例如,bt),且该视频编码器被配置为将相对较大的比特数用于具有相对较大的窗大小的源统计值的表示,及将相对较小的比特数用于具有相对较小的窗大小的源统计值的表示。
在该视频编码器的较佳实施例中,该视频编码器被配置为根据以下修改第一源统计值 at及/或第二源统计值bt的数目表示:
a′t=at>>(BITSa-BITSmin)
及/或根据
b′t=bt>>(BITSb-BITSmin),
随后确定组合源统计值,
其中
BITSmin=min(BITSa,BITSb),且
其中BITSa为针对第一源统计值的表示分配的比特数,且其中BITSb为针对第二源统计值的表示分配的比特数。
在该视频编码器的较佳实施例中,该视频编码器被配置为根据以下获得组合源统计值
Figure BDA0002803122250000101
Figure BDA0002803122250000102
且该视频编码器被配置为根据以下得出索引值pStateIdx,该索引值pStateIdx标示包括用于间隔细分的预计算范围值的表的表条目:
Figure BDA0002803122250000103
其中根据以下确定最可能(例如,二进制)值的值:
Figure BDA0002803122250000104
其中BITStabRes描述表的条目数(或在表的条目之间的间距,就二进制值的频率而言)。举例而言,表描述在从0至0.5的范围内的概率值至预计算范围值的映射。
在该视频编码器的较佳实施例中,该视频编码器被配置为根据以下确定组合源统计值
Figure BDA0002803122250000105
Figure BDA0002803122250000106
且该视频编码器被配置为根据以下得出索引值pStateIdx,该索引值pStateIdx标示包括用于间隔细分的预计算范围值的表的表条目:
Figure BDA0002803122250000107
其中BITStabRes描述表的条目数(或在表的条目之间的间距,就二进制值的频率而言)。举例而言,表描述在从0至1的范围内的概率值至预计算范围值的映射。
在该视频编码器的较佳实施例中,该视频编码器被配置为依据第一窗大小及依据第二窗大小选择用于第一源统计值(例如,at)及第二源统计值的表示的比特数(例如,BITSa、 BITSb)(例如,根据BITSa=ThrHd+na,其中
Figure BDA0002803122250000111
或na=round(log2wa),其中round() 为上舍入或下舍入运算符,或根据BITSb=ThrHd+nb,其中
Figure BDA0002803122250000112
或nb=round(log2wb),且其中ThrHd为预定且较佳地固定值)。
在该视频编码器的较佳实施例中,用于第一源统计值(例如,at)与第二源统计值(例如,bt)的表示的总比特数的和在不同上下文模型上恒定的(或独立于用于第一源统计值的表示的比特数有变化的情况中)。
在该视频编码器的较佳实施例中,该视频编码器被配置为将初始化标志(例如,“ws_flag”或窗大小标志)包括至比特流中,该初始化标志确定(可能除了如片类型的其他配置信息之外)第一窗大小及第二窗大小,且该视频编码器被配置为将另一初始化参数或标志(例如,“cabac init flag”)包括至比特流中,该另一初始化参数或标志确定用于第一源统计值及/或第二源统计值的初始化值。
在该视频编码器的较佳实施例中,该视频编码器被配置为还依据当前片的时间级确定第一窗大小及第二窗大小。替代地或另外,该视频编码器被配置为还依据当前片的量化参数确定第一窗大小及第二窗大小。
在该视频编码器的较佳实施例中,该视频编码器被配置为依据位置(例如,依据在该当前片内已编码多少二进制值,或由于上下文初始化,而使用与第一窗大小及/或第二窗大小相关联的上下文模型,或依据像素或像素区块在与待编码的二进制值相关联的帧内的位置)调节第一窗大小及/或第二窗大小。
在该视频编码器的较佳实施例中,该视频编码器被配置为当编码与开始位置(例如,像素区块的第一列,或像素区块的第一行)相关联的二进制值时将第一窗大小及/或第二窗大小设定成开始值(其较佳地小于正常值),及当编码与距开始位置至少预定位置的位置相关联的二进制值时将第一窗大小及/或第二窗大小设定成正常值(其较佳地大于开始值)。
在该视频编码器的较佳实施例中,该视频编码器被配置为将用信号通知应在片内改变窗大小的信令标志(例如,“ctu_ws_flag”或窗大小改变信令标志)包括至比特流中。
在该视频编码器的较佳实施例中,该视频编码器被配置为针对多个编码树单元(或甚至针对所有编码树单元)将指示是否应改变窗大小的信令标志包括至比特流中,其中信令标志指示增大还是减小窗大小中的至少一个(例如,依据信令标志,将所有窗大小,甚至不同上下文模型的所有窗大小,共同地增大或减小一,注意不超过窗小的一最大范围)。作为替代示例,该视频编码器可仅增大或减小上下文模型中的一些的窗大小。
在该视频编码器的较佳实施例中,该视频编码器被配置为从组合源统计值(例如,
Figure BDA0002803122250000113
Figure BDA0002803122250000114
或pt)得出状态索引(例如,pStateIdx),例如,根据方程式(8)或根据方程式(12) 或根据方程式(14)。替代地或另外,该视频编码器被配置为得出表示最可能二进制值或最不可能二进制值的值(例如,valMPS),例如,根据方程式(9)或根据方程式(13)。该视频编码器被配置为评估将状态索引映射至用于间隔细分的一个或多个范围值的表。
在该视频编码器的较佳实施例中,该视频编码器可被配置为临时(例如,为了二进制序列的多个二进制值的编码,不仅紧接在初始化后)用恒定替换值替换第二源统计值,及组合第一源统计值(例如,at)与固定非零替换值以便获得组合源统计值。
在该视频编码器的较佳实施例中,该视频编码器被配置为选择第一窗大小wa及第二窗大小wb,使得
na=nb
|na-nb|≥3,
其中
Figure BDA0002803122250000121
或na=round(log2wa),其中round()为上舍入或下舍入运算符,且其中
Figure BDA0002803122250000122
或nb=round(log2wb)。
在较佳实施例中,该视频编码器被配置为选择第一窗大小wa及第二窗大小wb,使得
|na-nb|≥3,
其中
Figure BDA0002803122250000123
或na=round(log2wa),其中round()为上舍入或下舍入运算符,且其中
Figure BDA0002803122250000124
或nb=round(log2wb)。
根据本发明的实施例创造一种视频编码器,其中该视频编码器被配置为编码多个视频帧(例如,视频帧的序列),
其中该视频编码器被配置为编码被细分成一个或多个片(较佳地,多个片)的集合的视频帧。该视频编码器被配置为提供指示是使用独立编码模式(例如,“Intra”)还是使用单预测性模式(例如,“P”)还是使用双预测性模式(例如,“B”)来编码片的片类型信息(例如,“SliceType”),在独立编码模式中,不存在基于先前帧的视频内容对当前帧的视频内容的预测,在单预测性模式中,存在基于先前帧(例如,先前编码的帧)的一个像素区块(例如,仅一个像素区块)对像素区块的预测,在双预测性模式中,存在基于一个或多个先前帧(例如,先前编码的帧)的两个或更多个像素区块对像素区块的预测。该视频编码器包括算术编码器,算术编码器用于基于二进制序列(例如,描述图像内容的变换系数) 提供二进制序列的编码表示(其中二进制序列可表示变换系数或频谱系数、参数或任何其他信息)。该算术编码器被配置为使用可例如由窗大小变量表示的第一窗大小(例如,wa)确定第一源统计值(例如,at),第一源统计值例如基于先前编码的二进制值xt-1、xt-2……的频率且还可标示为“计数器变量”或“计数器”。该算术编码器可被配置为确定第一源统计值,例如,基于先前编码的二进制序列。该算术编码器被配置为确定组合源统计值(例如,
Figure BDA0002803122250000125
Figure BDA0002803122250000126
或pt),其中该算术编码器被配置为组合第一源统计值(例如,at)与固定非零值以便获得组合源统计值,且该算术编码器被配置为基于组合源统计值确定用于间隔细分的一个或多个范围值,该一个或多个范围值用于二进制序列至二进制序列的编码表示的映射。
实施例可以可选择地由前面描述的实施例的特征、功能性及细节中的任一个分别地及以组合方式进行补充。
根据本发明的实施例创造一种用于解码视频内容的方法,其中该方法包括解码多个视频帧(例如,视频帧的序列),且其中该方法包括解码被细分成一个或多个片(较佳地,多个片)的集合的视频帧。该方法包括评估指示是使用独立编码模式(例如,“Intra”)还是使用单预测性模式(例如,“P”)还是使用双预测性模式(例如,“B”)来编码片的片类型信息(例如,“SliceType”),以选择用于片的解码的操作模式,在独立编码模式中,不存在基于先前帧的视频内容对当前帧的视频内容的预测,在单预测性模式中,存在基于先前帧(例如,先前解码的帧)的一个像素区块(或仅一个像素区块)对像素区块的预测,在双预测性模式中,存在基于一个或多个先前帧(例如,先前解码的帧)的两个像素区块对像素区块的预测。该方法包括基于二进制序列的编码表示提供经解码的二进制序列(例如,描述图像内容的变换系数),且该方法包括使用可例如由窗大小变量表示的第一窗大小(例如,wa)确定第一源统计值(例如,at),第一源统计值可例如基于先前解码的二进制值xt-1、xt-2……的频率且可例如还标示为“计数器变量”或“计数器”。第一源统计值可例如基于先前解码的二进制序列而被确定。该方法还包括使用第二窗大小(例如,wb)确定第二源统计值(例如,bt),第二源统计值可例如基于先前解码的二进制值xt-1、xt-2……的频率。第二源统计值可例如基于先前解码的二进制序列而被确定。该方法还包括基于第一源统计值(例如,at) 及基于第二源统计值(例如,bt)确定组合源统计值(例如,
Figure BDA0002803122250000131
Figure BDA0002803122250000132
或pt)。该方法还包括基于组合源统计值确定用于间隔细分的一个或多个范围值,该一个或多个范围值用于二进制序列的编码表示至经解码的二进制序列的映射。
根据本发明的实施例创造一种用于解码视频内容的方法,其中该方法包括解码多个视频帧(例如,视频帧的序列),且其中该方法包括解码被细分成一个或多个片(较佳地,多个片)的集合的视频帧。该方法包括评估指示是使用独立编码模式(例如,“Intra”)还是使用单预测性模式(例如,“P”)还是使用双预测性模式(例如,“B”)来编码片的片类型信息(例如,“SliceType”),以选择用于片的解码的操作模式,在独立编码模式中,不存在基于先前帧的视频内容对当前帧的视频内容的预测,在单预测性模式中,存在基于先前帧(例如,先前解码的帧)的一个像素区块(例如,仅一个像素区块)对像素区块的预测,在双预测性模式中,存在基于一个或多个先前帧(例如,先前解码的帧)的两个或更多个像素区块对像素区块的预测。该方法包括基于二进制序列的编码表示提供经解码的二进制序列 (例如,描述图像内容的变换系数)。该方法包括使用可例如由窗大小变量表示的第一窗大小(例如,wa)确定第一源统计值(例如,at),第一源统计值可例如基于先前解码的二进制值xt-1、xt-2……的频率且还可标示为“计数器变量”、“计数器”。举例而言,第一源统计值可基于先前解码的二进制序列而被确定。该方法包括确定组合源统计值(例如,
Figure BDA0002803122250000133
Figure BDA0002803122250000134
或 pt),其中第一源统计值(例如,at)与固定非零值组合以便获得组合源统计值。该方法进一步包括基于组合源统计值确定用于间隔细分的一个或多个范围值,该一个或多个范围值用于二进制序列的编码表示至经解码的二进制序列的映射。
实施例创造一种用于编码视频内容的方法,其中该方法包括编码多个视频帧(例如,视频帧的序列),且其中该方法包括编码被细分成一个或多个片(较佳地,多个片)的集合的视频帧。该方法包括提供指示是使用独立编码模式(例如,“Intra”)还是使用单预测性模式(例如,“P”)还是使用双预测性模式(例如,“B”)来编码片的片类型信息(例如,“SliceType”),在独立编码模式中,不存在基于先前帧的视频内容对当前帧的视频内容的预测,在单预测性模式中,存在基于先前帧(例如,先前编码的帧)的一个像素区块(例如,仅一个像素区块)对像素区块的预测,在双预测性模式中,存在基于一个或多个先前帧 (例如,先前编码的帧)的两个像素区块对像素区块的预测。该方法包括基于二进制序列(例如,描述图像内容的变换系数)提供二进制序列的编码表示(其中二进制序列可表示变换系数或频谱系数、参数或任何其他信息)。
该方法包括使用可例如由窗大小变量表示的第一窗大小(例如,wa)确定第一源统计值(例如,at),第一源统计值可例如基于先前编码的二进制值xt-1、xt-2……的频率,且可例如标示为“计数器变量”或“计数器”)。第一源统计值可例如基于先前编码的二进制序列而被确定。该方法还包括使用第二窗大小(例如,wb)确定第二源统计值(例如,bt),第二源统计值可例如基于先前编码的二进制值xt-1、xt-2……的频率。第二源统计值可例如基于先前编码的二进制序列而被确定。该方法还包括基于第一源统计值(例如,at)及基于第二源统计值(例如,bt)确定组合源统计值(例如,
Figure BDA0002803122250000141
Figure BDA0002803122250000142
或pt)。该方法包括基于组合源统计值确定用于间隔细分的一个或多个范围值,该一个或多个范围值用于二进制序列至二进制序列的编码表示的映射。
实施例创造一种用于编码视频内容的方法,其中该方法包括编码多个视频帧(例如,视频帧的序列),其中该方法包括编码被细分成一个或多个片(较佳地,多个片)的集合的视频帧。该方法包括提供指示是使用独立编码模式(例如,“Intra”)还是使用单预测性模式(例如,“P”)还是使用双预测性模式(例如,“B”)来编码片的片类型信息(例如,“SliceType”),在独立编码模式中,不存在基于先前帧的视频内容对当前帧的视频内容的预测,在单预测性模式中,存在基于先前帧(例如,先前编码的帧)的一个像素区块(例如,仅一个像素区块)对像素区块的预测,在双预测性模式中,存在基于一个或多个先前帧(例如,先前编码的帧)的两个或更多个像素区块对像素区块的预测。该方法包括基于二进制序列(例如,描述图像内容的变换系数)提供二进制序列的编码表示(其中二进制序列可表示变换系数或频谱系数、参数或任何其他信息)。该方法包括使用可由窗大小变量表示的第一窗大小(例如,wa)确定第一源统计值(例如,at),第一源统计值可例如基于先前编码的二进制值xt-1、xt-2……的频率,且可例如标示为“计数器变量”或“计数器”)。第一源统计值可例如基于先前编码的二进制序列而被确定。该方法包括确定组合源统计值(例如,
Figure BDA0002803122250000143
Figure BDA0002803122250000144
或pt),其中第一源统计值(例如,at)与固定非零值组合以便获得组合源统计值。该方法包括基于组合源统计值确定用于间隔细分的一个或多个范围值,该一个或多个范围值用于二进制序列至二进制序列的编码表示的映射。
应注意,本文中所描述的所有方法可以可选择地由关于对应设备(例如,视频编码器及视频解码器)描述的特征、功能性及细节中的任一个分别地及以组合方式进行补充。此外,设备可与方法并行地调适。换言之,设备或功能区块的描述也对应于方法或方法步骤的描述。
根据本发明的另一实施例创造一种计算机程序,当计算机程序在计算机上执行时用于执行本文中所描述的方法中的至少一个。
根据本发明的实施例创造一种视频比特流,视频比特流包括表示视频内容的二进制序列的编码表示,及配置信息,配置信息描述待用于基于二进制序列的编码表示重构视频内容的视频解码器的配置。配置信息包括描述待被视频解码器用于确定第一源统计值(例如,at) 的窗大小的窗大小信息(例如,“ws_flag”),第一源统计值基于先前解码的二进制值的频率且用以确定用于间隔细分的一个或多个范围值,其中一个或多个范围值用于二进制序列的编码表示至经解码的二进制序列的映射。替代地或另外,配置信息包括描述待被视频解码器用于确定第二源统计值(例如,bt)的窗大小的窗大小信息(例如,“ws_flag”),第二源统计值基于先前解码的二进制值的频率且用以确定用于间隔细分的一个或多个范围值。
在视频流的较佳实施例中,该视频比特流还包括初始化值信息,初始化值信息描述第一源统计值及/或该第二源统计值的初始化值。
在该视频流的较佳实施例中,该视频比特流进一步包括窗大小改变标志(例如,ctu_ws_flag),其指示应增大还是减小窗大小(例如,在片内)。
该视频流可由本文中描述的特征及细节中的任一个分别地及以组合方式进行补充。
应注意,术语“窗大小”、“第一窗大小”及“第二窗大小”贯穿本描述使用。然而,应注意,替代窗大小,在实施例中的任一个中,可以可选择地使用估计参数。替代第一窗大小,在实施例中的任一个中,可以可选择地使用第一估计参数。替代第二窗大小,在实施例中的任一个中,可以可选择地使用第二估计参数。
换言之,第一估计参数可为第一窗大小,且第二估计参数可为第二窗大小。
第一估计参数可替代地为第一惯性参数,其确定第一源统计值跟随经解码的二进制序列中的经解码的二进制符号(或在编码器的情况下,为先前编码的二进制值)的频率的改变的速度,且第二估计参数可替代地为第二惯性参数,其确定第二源统计值跟随经解码的二进制序列中的经解码的二进制符号(或在编码器的情况下,为先前编码的二进制值)的频率的改变的速度。
此外,在实施例中的任一个中,可以可选择地使用用于源统计值的确定的不同概念。
举例而言,视频解码器可被配置为使用查找表确定第一源统计值,其中依据先前确定的源统计值、先前解码的二进制值及第一估计参数选择表条目。替代地或另外,视频解码器被配置为使用查找表确定第二源统计值,其中依据先前确定的源统计值、先前解码的二进制值及第二估计参数选择表条目。
类似概念可以可选择地用于视频编码器中,其中先前编码的二进制值可充当先前解码的二进制值的角色。
附图的简要说明
随后将参考附图描述根据本发明的实施例,在图中:
图1展示根据本发明的实施例的视频解码器的示意性框图;
图2展示根据本发明的另一实施例的视频解码器的示意性框图;
图3展示根据本发明的实施例的视频编码器的示意性框图;
表1展示8比特变量wspair的位掩码的表示;
表2展示wspair值的指派的图形表示;
表3展示取决于ws_flag的wspair值的指派的图形表示;
图4展示根据本发明的实施例的用于视频解码的方法的流程图;
图5展示根据本发明的实施例的视频编码的方法的流程图;且
图6展示根据本发明的实施例的比特流的图形表示。
具体实施方式
1)根据图1的实施例
图1展示根据本发明的实施例的视频解码器100的示意性框图。
视频解码器100被配置为接收经编码的视频信息,及基于经编码的视频信息提供经解码的视频信息(或经解码的视频内容)。
经编码的视频信息110(其可被视为视频比特流)可例如包括片类型信息,且还可包括二进制序列的编码表示。可选择地,经编码的视频信息110可包括额外信息,然而,额外信息对于本发明并非必要的。
一般而言,视频解码器被配置为解码多个视频帧(例如,视频帧的序列),且特别的,视频解码器被配置为解码被细分成一个或多个片(较佳地,细分成多个片)的集合的视频帧。视频解码器还被配置为评估片类型信息,以选择用于片的解码的操作模式(其可例如由“视频重构”区块180执行),片类型信息包括于经编码的视频信息110中且指示是使用独立编码模式还是使用单预测性模式还是使用双预测性模式来编码片,在独立编码模式中,不存在基于先前帧的视频内容对当前帧的视频内容的预测,在单预测性模式中,存在基于先前帧的一个像素区块对像素区块的预测,在双预测性模式中,存在基于一个或多个先前帧的两个或更多个像素区块对像素区块的预测。
视频解码器100包括算术解码器120,算术解码器120例如被配置为基于包括于经编码的视频信息110中的二进制序列的编码表示来提供经解码的二进制序列122(以由“视频重构”区块使用)。算术解码器较佳地包括第一源静态值确定130及第二源统计值确定140。因此,算术解码器120被配置为使用第一窗大小确定第一源统计值132,及使用第二窗大小确定第二源统计值142。算术解码器较佳地还包括组合器150。因此,算术解码器被配置为基于第一源静态值及基于第二源统计值确定组合源统计值152。此外,算术解码器120较佳地包括范围值确定160。因此,算术解码器可被配置为基于组合源统计值152确定用于间隔细分的一个或多个范围值,该一个或多个范围值用于二进制序列的编码表示(其包括于经编码的视频信息110中)至经解码的二进制序列122(其由视频重构区块180使用)的映射。
较佳地,算术解码器120还包括算术解码芯170(其可例如为区块或单元),算术解码芯170从范围值确定160接收一个或多个范围值162,且使用范围值从包括于经编码的视频信息110中的经编码的二进制序列得出经解码的二进制序列122。
此外,视频解码器可例如包括视频重构区块(或单元)180,视频重构区块接收经解码的二进制序列122且基于经解码的二进制序列122提供经解码的视频内容112(可能考虑如片类型信息的额外控制信息)。
总之,算术解码器100接收经编码的视频信息110且执行二进制序列的编码表示的算术解码以得出经解码的二进制序列122。算术解码采用关于二进制值在经解码的二进制序列 122中的概率的知识。算术解码芯170通过依赖于限定间隔细分的范围值162来考虑关于二进制值在经解码的二进制序列122中的概率(或估计概率)的知识。简言之,算术解码芯可使用范围值162限定不同间隔(例如,在零与一之间,或在一系列整数值上)。举例而言,算术解码芯可将二进制序列的编码表示解释为处于使用范围值限定的间隔中的一个中的数的表示。通过识别由二进制序列的编码表示所表示的数处于间隔中的哪一个中,算术解码芯 170可推断已使用二进制序列的编码表示对哪个比特或哪个比特序列进行编码。
然而,应注意,算术解码芯170的此解释仅应被视为非常简短且一般的解释。举例而言,关于算术解码芯的细节可见于标准H.264及H.265中。然而,不同概念(针对算术解码芯的操作)还可见于文献中,且算术解码芯的细节对于本发明而言并不具有特定相关性。
然而,为了获得合适的范围值(其允许高比特率效率),算术解码器120(或一般而言,视频解码器)使用不同窗大小确定两个源统计值132、142(其中“窗大小”限定在经解码的二进制序列122的多个经解码的二进制值上的平滑化程度)。此外,为了增大提供至算术解码芯170的范围值的可靠性,将第一源统计值132与第二源统计值142组合成组合源统计值152。
因此,可以说视频解码器100提供高效率,因为由算术解码芯170使用的范围值良好地适于比特值(例如,在经解码的二进制序列122内的比特值“0”及“1”)的实际概率。
作为额外备注,应注意,还可对视频解码器100修改。在替代性实施中,第二源统计值确定140可由固定值(其可独立于经解码的二进制序列,但可取决于一个或多个参数)的提供替换。在此情况下,算术解码器被配置为组合第一源统计值132与固定非零值以便获得组合源统计值152。已发现,此简化在一些情况下带来良好结果,且可例如避免组合源统计值的不当强变化。换言之,通过将固定贡献引入至组合源统计值的确定,可达成组合源统计值可不再过强地偏离此固定值。因此,若偶然地在经解码的二进制序列122内存在相同比特值的较长序列,则经解码的二进制序列的统计的一些“后见之明(hindsight)”可用以避免编码效率的强降级。
作为额外备注,应注意,算术解码器(及算术解码器的各个区块)的功能性可通常还被视为整体视频解码器的功能性。换言之,本文中描述为算术解码器的功能性的功能性也可由视频解码器的其他区块执行。
此外,应注意,根据图1的视频解码器100可由本文中所描述的特征、功能性及细节中的任一个分别地及以组合方式进行补充。
2)根据图2的视频解码器
图2展示根据本发明的实施例的视频解码器200的示意性框图。
视频解码器200被配置为接收经编码的视频信息210(例如,视频比特流),及基于经编码的视频信息提供经解码的视频内容212(例如,视频帧的序列)。经编码的视频信息210 可例如包括片类型信息,如本文中所描述。经编码的视频信息210可进一步包括配置信息,配置信息也可被视为控制信息。此外,经编码的视频信息210可包括二进制序列的编码表示。
在图2中,展示视频解码器200的两个主要区块,即,算术解码器220及视频重构280。然而,应注意,视频解码器的功能性的分布并不绑定至固定区块结构,而是也可在广泛范围上修改。此外,应注意,视频解码器的实际实施可具有本领域技术人员所熟知的额外区块及 /或功能性。
算术解码器220接收二进制序列的编码表示211。然而,算术解码器(或可在算术解码器外的控制区块)还接收片类型信息及配置信息(或控制信息)。详言之,算术解码器220基于二进制序列的编码表示211且考虑片类型信息及配置信息或控制信息中的一些或所有将经解码的二进制序列222提供至视频重构280。
在下文中,将更详细地描述算术解码器220的功能性。算术解码器包括算术解码芯270,算术解码芯接收二进制序列的编码表示211且提供经解码的二进制序列222。算术解码芯确定经解码的二进制序列222的哪些比特值由二进制序列的编码表示211表示。为此目的,算术解码芯270检查由二进制序列的编码表示211表示的数处于一系列数的哪一间隔中。取决于由二进制序列的编码表示211表示的数处于来自多个(至少两个)间隔中的哪一间隔的决定,识别经解码的二进制序列222的某一比特值或比特值的群组。
为了得出经解码的二进制序列222的目的,算术解码芯接收关于间隔的信息,其通常对应于比特值的某一程度的概率。在本情况下,算术解码芯270接收用于间隔细分的“范围值”262(即,用以限定待被算术解码芯270使用的数范围的间隔的范围值162)。详言之,应注意,算术解码芯270可例如类似于或等同于在根据标准H.264的视频编码器/解码器中或在根据标准H.265的视频编码器/解码器中使用的算术解码芯。然而,应注意,也可使用不同方法实现算术解码芯270。
鉴于以上论述,变得显而易见的是,提供限定用于算术解码芯270的间隔细分的范围值262是算术解码器220的重要功能性。一般而言,算术解码器220考虑限定诸如(例如)初始化值、“窗大小”、“窗大小自适应”及类似的参数的一些控制信息从经解码的二进制序列222的先前解码的二进制值得出这些范围值262。
在算术解码器200中,使用两个源统计值确定区块(或单元)230、240。举例而言,第一源统计值确定区块230接收经解码的二进制序列222的一个或多个先前解码的二进制值(也用xt标示),且基于一个或多个先前解码的二进制值提供第一源统计值232。第一源统计值确定区块可例如接收一些配置信息,如限定用以表示源统计值232的比特数的常数或变量BITSa,及限定待被源统计值确定区块230使用的“窗大小”的常数或变量na。举例而言,第一源统计值确定区块230可递归确定第一源统计值232,其中在第一源统计值232的确定中,窗大小na确定经解码的二进制序列222的最近解码的二进制值的加权。
举例而言,除了使用引入某一“无限脉冲响应”特性的递归算法的事实以外,第一源统计值确定区块230的功能性类似于具有某一窗大小的滑动平均值的形成。因此,第一源统计值132并未精确表示滑动窗求和运算或滑动窗平均化运算的结果,而相反,应被视为“虚拟滑动窗”运算,因为结果非常类似。
此外,当与第一源统计值确定区块230相比时,第二源静态值确定区块240执行类似操作。然而,第二源统计值确定区块240通常使用不同参数(例如,不同窗口长度nb及/或不同比特数参数BITSb),且因此提供与第一源统计值232通常不同的第二源统计值242。举例而言,源统计值232、242中的一个可为短期(或较短期)平均源统计值,而源统计值 232、242中的一个可为可为长期(或较长期)平均源统计值。
应注意,源统计值确定区块230、240可例如执行如由以下详细论述的方程式(3)及(4)限定的功能性。替代地,源统计值确定区块230、240还可执行如由以下论述的方程式(5)限定的功能性。此外,应注意,在一些实施例中,不同计算规则也可用于源统计值确定区块230、240中。
算术解码器220进一步包括组合源统计值确定区块(或单元)250,组合源统计值确定区块配置为接收第一源统计值232及第二源统计值242。源统计值组合区块250基于第一源统计值232及第二源统计值242提供组合源统计值252。举例而言,源统计值组合区块250可形成第一源统计值232与第二源统计值242的总和或平均值,以借此获得组合源统计值252。
然而,在得出组合源统计值252时,源统计值组合区块250还可将不同加权应用于第一源统计值232及第二源统计值242,其中不同加权可甚至在片内或在不同片之间变化。
举例而言,源统计值组合区块250可执行如由以下提到的方程式(6)限定或如由以下提到的方程式(10)及(11)限定或如由以下提到的方程式(16)限定的功能性。然而,此功能性的变化也是可能的。
举例而言,在一个(替代性)实施例中,源统计值组合区块250组合第一统计值中的仅一个与固定值,以借此获得组合源统计值252。此概念可有利地避免组合源统计值252与二进制值在经解码的二进制序列222内的预期概率偏离过多。
算术解码器220被配置为基于组合源统计值252得出用于间隔细分的范围值262(其将被提供至算术解码芯270)。此处理步骤可例如被视为“范围值确定”。举例而言,范围值确定可包括可选值处理266,可选值处理接收组合源统计值252且基于组合源统计值提供概率值或状态索引值。举例而言,值处理266可将组合源统计值252的值范围映射至0与1之间的范围上,或至0与0.5之间的范围上,或至整数索引值上。举例而言,可根据以下描述的方程式(7),或根据以下描述的方程式(8)、(9),或根据以下描述的方程式(12)、 (13),或根据以下描述的方程式(14)来执行值处理266。
可选择地,值处理266可提供信息267,信息可为指示下一个经解码值(例如,经解码的二进制序列222的经解码值)更可能选取值“1”还是更可能选取值“0”的二进制信息。可选择地,算术解码器(或范围值确定)可包括映射表269。映射表269可例如接收标示表条目的索引值(例如,pStateIdx)。因此,映射表269可提供对应于由索引值(例如,pStateIdx)标示的所述表条目的一个或多个范围值262。因此,通过得出“状态索引值”(例如,pStateIdx) 及通过基于状态索引值评估映射表,可基于组合源静态值252提供用于间隔细分的一个或多个范围值。
映射表269可例如具有如在标准H.264或在标准H.265中描述的映射表的相同结构。然而,可选择地,映射表的内容可适于视频解码器的具体细节。详言之,映射表的条目可适于在具体视频解码器中预期的统计性质。
算术解码器(或一般而言,视频解码器)还包括控制区块290,控制区块可接收控制信息或配置信息并可基于控制信息或配置信息调节用于范围值的提供的参数(及也可能有其他参数,例如,由算术解码芯270使用的额外参数)。举例而言,控制区块290可接收可包括于经编码的视频信息210中的片类型信息、“cabac init flag”、“ws_flag”及“ctu_ws_flag”中的一个或多个。
此外,控制290可例如依据控制信息调节窗大小参数na、nb,及比特大小参数BITSa、BITSb。详言之,控制区块290还可考虑当前上下文模型。关于此问题,应注意,对于待解码的经解码的二进制序列222中的各比特(或比特的群组),可决定将使用哪一上下文模型。举例而言,将使用哪一上下文模型的决策可基于哪一类型的信息(解码参数、变换系数等) 由各比特(或比特的群组)表示的事实。举例而言,控制区块290可被配置为识别经解码的二进制序列222的语法,以借此识别接下来将解码哪一语法元素(或语法元素的哪一部分,例如,最高有效位还是最低有效位,或类似)。因此,可进行不同上下文模型之间的选择。此外,应注意,可依据上下文模型选择窗大小参数及/或比特大小参数及/或任何其他参数。此外,还应注意,源统计值232、242或组合源统计值252可与特定上下文模型相关联,使得不同源统计值或组合源统计值可用于不同上下文模型。举例而言,可基于已使用各个上下文模型解码的经解码的二进制序列222的经解码的二进制值选择性地提供与某一上下文模型相关联的源统计值。换言之,可针对不同上下文模型进行单独的独立处理及关于参数na、 nb、BITSa、BITSb等的单独(可能独立)决定。
关于控制单元290的功能性,应注意,控制单元可确定参数na、nb、BITSa、BITSb,例如,根据以下描述的机制。举例而言,可依据片类型信息及/或依据cabac init flag及/或依据ws_flag及/或依据ctu_ws_flag选择窗大小参数na、nb。此外,在一些实施例中,可依据一些配置信息选择比特大小参数BITSa、BITSb。然而,在其他实施例中,比特大小参数可为固定的。关于用于参数的调节的机制,例如,参考以下的论述。
现在对视频重构区块280进行参考,应注意,视频重构区块280通常接收经解码的二进制序列222及还有配置信息的至少一些元素。举例而言,视频重构280可基于经解码的二进制序列222重构整数参数及/或浮点参数及/或图像数据。举例而言,可存在限定应如何将经解码的二进制序列的某一比特或部分映射至整数参数或至浮点参数或至图像数据(例如,变换系数或类似)的映射规则。因此,视频重构区块280重构用于从经解码的二进制序列222重构视频帧的信息。接着,视频重构区块可基于重构信息(从经解码的二进制序列222得出)生成图像信息。
举例而言,视频重构280可包括与在标准H.264中或在标准H.265中所描述的相同功能性。然而,其他方法也可用于视频重构,这些方法适合于基于经解码的二进制序列(及可能,额外配置信息或控制信息)提供经解码的视频内容。因此,视频重构280提供经解码的视频内容212,经解码的视频内容可采取视频帧的序列的形式。
总之,已提供根据本发明的实施例的视频解码器的综述。然而,应注意,存在针对功能区块(例如,针对源统计值确定区块230、240,针对源统计值组合区块250,针对值处理区块266,针对映射表269,及针对算术解码芯270)的不同实施。此外,针对视频重构区块280及针对控制区块290的不同实施是可能的。
然而,还应注意,本文中描述的功能区块可由在本申请整体中揭露的特征、功能性及细节中的任一个进行补充。此外,应注意,本申请内揭露的特征、功能性及细节可分别地或以组合方式引入,以借此扩展视频解码器200的功能性。
3)根据图3的视频编码器
图3展示根据本发明的实施例的视频编码器300的示意性框图。视频编码器300被配置为接收视频内容310,及基于视频内容提供经编码的视频信息(例如,视频比特流)312。
视频编码器300包括视频二进制序列提供区块380,视频二进制序列提供区块被配置为接收视频内容310以基于视频内容提供表示视频内容310的二进制序列322。举例而言,可如在根据标准H.264的视频编码器中或如在根据标准H.265的视频编码器中那样执行视频二进制序列提供380。然而,也可使用用于视频二进制序列的提供的不同方法。此外,应注意,视频二进制序列提供380可例如包括整数值或浮点参数或图像数据(如,例如,变换系数) 至二进制值的序列的映射。
此外,算术编码器320可接收二进制序列322,且基于二进制序列提供二进制序列322 的编码表示311。一般而言,算术编码器320被配置为采用关于二进制值在二进制序列322 内的概率的知识(或信息)以提供二进制序列322的经高效压缩的表示(即,二进制序列的编码表示311)。
举例而言,算术编码器320可包括算术编码芯370,算术编码芯接收二进制序列322且基于二进制序列提供二进制序列的编码表示311。举例而言,算术编码芯370可需要关于比特(或比特的群组)在二进制序列322中的概率的一些知识,以便能够发现表示比特或比特的群组的恰当码字(其包括于编码表示311内)。较佳地,算术编码芯370接收描述间隔的细分的范围值362。虽然范围值362可描述待被视频解码器200(或被其算术解码芯270) 使用的间隔的细分,但此信息可自然地也适用于算术编码芯370,因为算术编码芯370应提供可由对应视频解码器解码的二进制序列的编码表示311。
因此,算术编码器320可被配置为基于表示视频内容的二进制序列322及还基于一些参数(如窗大小信息na、nb或比特大小信息BITSa、BITSb)得出用于间隔细分的范围值362。应注意,范围值362的得出与范围值162、262的得出实质上相同,除了评估二进制序列322而非经解码的二进制序列222以外。换言之,在基于二进制序列322得出范围值362时,使用先前编码的二进制值,代替先前解码的二进制值。
如可看出,视频编码器的算术编码器320包括源统计值确定区块330、340,除了源统计值确定区块330、340基于先前编码的二进制值(而非基于先前解码的二进制值)提供第一源统计值332及第二源统计值342的事实以外,源统计值确定区块330、340实质上与源统计值确定区块130、140、230、240相同。举例而言,源统计值确定器330、340可使用参数na、nb、BITSa及BITSb。此外,源统计确定器330、340的功能性可例如由如下所述的方程式(3)及(4)或由如下所述的方程式(5)限定。
此外,算术编码器320还包括源统计值组合区块350,其可对应于源统计值组合区块 150或源统计值组合区块250。因此,提供组合源统计值352,其中源统计值组合区块350的功能性可例如遵循方程式(6)或方程式(10)及(11)或方程式(16)。
算术编码器320还包括可选值处理366,其可对应于图2中展示的值处理266。值处理366可接收组合源统计值352,且可例如提供关于最可能二进制值的信息367及/或概率信息或状态索引信息368。算术编码器320还包括映射表369,其可对应于参考图2描述的映射表269。因此,可通过使用概率值或状态索引368对映射表369的评估来提供用于间隔细分的一个或多个范围值362。
总之,算术编码器320可以与算术解码器220基于经解码的二进制序列222选择范围值262相同的方式基于二进制序列322选择范围值362。因此,可达成视频编码器300的算术编码器320与视频解码器200的算术解码器220之间的同步性,只要不存在解码误差且只要在视频编码器之侧与在视频解码器之侧使用相同参数。
此外,应注意,算术编码器320,或一般而言,视频编码器300,包括控制区块390,控制区块可确定参数na、nb、BITSa、BITSb及可为必要的任何其他参数。举例而言,控制区块390可使用一些经验机制作出关于参数的决定。替代地(或此外),控制区块390还可分析参数的哪一组合导致最低可能比特率(或满足任何其他优化准则)。
此外,应注意,视频编码器300可例如在经编码的视频信息312内提供控制视频解码器200的操作的一些控制信息。举例而言,此控制信息(或配置信息)可包括以下中的一个或多个:片类型信息、cabac init flag、ws_flag及ctu_ws_flag。以下将描述这些配置信息项目的功能性及其可能编码及解码。片类型信息可如在根据标准H.264或H.265的视频编码器中提供(例如,通过视频二进制序列提供380),且可由视频重构180、280使用,如在根据标准H.264或H.265的视频解码器中。此外,可在关于窗大小的决定中使用片类型信息,如在本文中概述。
此外,应注意,可修改功能区块的分布。在图3的实施例中,算术编码芯370、源统计值确定器区块330、340、源统计值组合区块350、值处理区块366及映射表369及控制390 已描述为算术编码器的部分。然而,所述区块也可通常为视频编码器的区块(或功能性)。
此外,应注意,参考图3描述的功能区块中的任一个可由在本申请整体内描述的特征、功能性及细节中的任一个进行补充。
4)另外实施例及细节
在下文中,将分别地及组合地描述另外实施例及细节,其可分别地或组合地引入至本文中揭露的实施例中的任一个内。举例而言,本文中描述的细节可分别地及以组合方式引入至参考图1、图2及图3描述的实施例内。
详言之,应注意,在此章节中揭露的特征、功能性或细节中的一个的使用通常已带来改良,即使多于一个特征、功能性或细节的使用可创造更好的实施例。
一般而言,本发明的方面或实施例创造用于二进制算术编码的概率估计方法(或概率估计概念)。
引言
在下文中,将提供引言。
上下文模型更新是通过提供使编码器的内部状态适于基础源统计的可能性的高效二进制算术熵编码器的关键特征。举例而言,每个上下文模型配备有独立概率估计级,其提供用于解码或编码指派给此上下文模型的下一个二进制符号(bin)的概率。
虽然常规视频编解码器H.265/HEVC的概率级实施基于有限状态机(具有在(0,0.5] 的范围中的64个概率状态),但本文件中描述的估计器基于追踪二进制符号的经指派序列的源统计的两个计数器变量。
每个计数器(其可例如实施源统计值确定器130、140、230、240、330、340的功能性)配备有窗大小w,其确定过去大量二进制符号(例如,使用确定源统计值的上下文模型编码或解码的先前编码或先前解码的二进制值)影响计数(或一般而言,源统计值的值)的程度。举例而言,通过所谓的虚拟滑动窗方法得出更新。在解码或编码具有值xt的二进制符号(或二进制值)后,可如在下文所描述地实施计数at及bt(其可被视为源统计值)的更新。其中 Q=A,B:
Figure BDA0002803122250000221
若方程式(1)中的更新使用浮点算术,则对于所有二进制符号序列,计数将始终处于间隔(0,w)中。将概率估计器的输出pt定义为:
Figure BDA0002803122250000222
取决于算术编码引擎,概率估计器的输出可直接使用(例如,确定算术编码/解码芯的范围值),或可需要进一步处理,如将值映射至一组经量化的概率值的最接近概率(或至用于算术编码/解码芯的一个或多个范围值)。
实施细节
在下文中,将描述一些实施细节。
(例如,源统计值确定区块的)实施可能需要(或优选)具有限定精确度 BITSq(其中索引q为用于索引a及b的占位器)的整数算术的使用。因此,可使用整数值的实施(例如,根据方程式(3)及(5),或根据方程式(5)),代替方程式(1)的实施。
此外,可能窗大小的集合可需要限于可通过
Figure BDA0002803122250000223
得出的值以允许算术运算的简化。
在此情况下(而且当wq不等于其中nq为整数值的
Figure BDA0002803122250000224
时),可通过以下计算计数q=a,b 的更新(等效于方程式(1)):
qt+1=qt+(xt<<(BITSq-nq))-(qt>>nq) (3)
此更新规则需要执行削剪操作,其保证计数排他性地保持处于有效范围
Figure BDA0002803122250000225
中:
qt+1=qt+1-(qt+1>>BITSq) (4)
若wq不等于其中nq为整数值的
Figure BDA0002803122250000231
则可适当地选择值nq(例如,通过舍入)。此外,应注意,xt可表示先前编码的二进制值(例如,具有值0或1)或先前解码的二进制值。
作为替代方案,方程式(3)及(4)可由区分二进制符号的值的更新计算取代:
Figure BDA0002803122250000232
使用用于不同符号值(如在方程式(5)的两行中所展示)的不同更新规则使方程式4 的削剪操作作废。
注意,归因于右移位运算,在方程式(3)及(4)或方程式(5)中实施虚拟滑动窗方法的两个方式不传递相同比特流。
此外,应注意,根据方程式(3)及(4)或根据方程式(5)的运算可由本文中描述的源统计值确定器执行。然而,在一些实施例中,源统计值确定器还可执行不同功能性(例如,根据方程式(1))。
通过加权从来自方程式(4)或来自方程式(5)的更新方法(或从另一方法)产生的计数(例如,源统计值)来计算概率估计器的输出(例如,组合源统计值):
Figure BDA0002803122250000233
来自方程式(6)的加权结果
Figure BDA0002803122250000234
(其可被视为组合源统计值)可(可选择地)用以得出概率pt(例如,通过值处理):
Figure BDA0002803122250000235
或取决于算术编码引擎的设计的地址索引(例如,pStateIdx)。
基于计数器的概率估计器可例如提供在范围(0,1)中的二进制序列的具有值xt+1=1的下一个符号的概率。若需要对于具有xt+1=0的值的下一个符号的概率估计,则需要将输出转换:p(0)=1-p(1)。
然而,应注意,概率值pt(或p(0)或p(1))的计算并非在所有实施例中都需要。
不同于基于计数器的概率估计器,使用两个变量的组合执行H.265/HEVC的有限状态机的概率估计。第一变量pStateIdx储存状态索引,其表示在范围(0,0.5]中的最不可能符号 (LPS)的概率。第二变量valMPS含有最可能符号(MPS)的值。同样地,具有用于二进制算术编码器的间隔细分的预计算范围值的表仅涵盖范围(0,0.5]。
因此,举例而言,若将使用常规映射表或具有常规结构(如在H.264或H.265视频编码器或解码器中)的映射表,则在(常规)有限状态机由基于计数器的概率估计器取代的情况[3]下使用映射是值得推荐的。换言之,若如本文中所描述确定组合源统计值(例如,使用方程式(3)至(6),或使用如下提到的类似方程式),则值得推荐(但非必要)的是将组合源统计值映射至映射表的索引值(例如,pStateIdx)(例如,在可选值处理中)。此允许使用常规映射表。另一方面,映射表(提供用于间隔细分的范围值)经适当调适,此映射可并非必要的。
来自方程式(6)的(例如,组合源统计值的)结果
Figure BDA0002803122250000236
至状态索引pStateIdx值的映射可例如通过以下(其可例如包括映射表的量化直至分辨率)来计算:
Figure BDA0002803122250000237
其中BITStabRes限定用于表示含有预计算值的表的LPS概率状态的比特数,且valMP由以下得出
Figure BDA0002803122250000241
替代将来自方程式(8)及(9)(或使用方程式(8)及(9))的基于计数器的概率估计器结果映射至LPS状态索引的表示(例如,至不太可能状态的状态索引或最不可能状态的状态索引的表示,例如,pStateIdx)及MPS的值(例如,更可能二进制值的值,例如, valMPS),可以可选地通过两个选项修改算术编码引擎。
含有用于间隔细分的预计算范围值的表可经扩展以涵盖整个概率间隔(0,1)(使得例如,可直接使用组合源统计值或使用概率值pt(或p(0)或p(1))选择映射表的表条目)或省略该表,且使用算术即时地计算范围值(例如,基于组合源统计值或基于概率值pt或p(0) 或p(1))。
换言之,存在众多不同方式来基于组合源统计值得出用于算术解码芯中的间隔细分的范围值。若将使用常规映射表,则根据方程式(8)及(9)的计算值得推荐。替代地,若使用经修改的映射表或若范围值是使用某一计算规则从组合源统计值得出的,则可省略根据方程式(8)及(9)的计算。
发明方面——计数器变量的可变分辨率
在下文中,将描述本发明的方面,其可可选择地用于根据本发明的任何实施例中。
基于计数器的概率估计器的常规整数实施使用相同比特数表示计数器的精确度BITSq=BITSa=BITSb
已发现,为了使内存消耗与编码效率之间的折衷优化,可依据窗大小对BITSq变量定尺寸(或可根据当前使用的窗大小动态调适BITSq变量)。
因此,举例而言,可在应用来自方程式(6)的加权运算(例如,源统计值组合)之前修改计数器变量(例如,源统计值):
q′t=qt>>(BITSq-BITSmin) (10)
其中BITSmin=min(BITSa,BITSb)。
在q′=a′,b′的情况下,加权运算(例如,源统计值组合)被修改为
Figure BDA0002803122250000242
结果
Figure BDA0002803122250000243
至来自方程式(8)及(9)的状态索引pStateIdx值的映射(其可通过可选值处理来执行)可被修改为
Figure BDA0002803122250000244
其中valMPS通过以下得出
Figure BDA0002803122250000245
若含有用于间隔细分的预计算范围值的表经扩展以涵盖整个概率间隔(0,1),则可如下地得出(例如,通过可选值处理)状态索引(例如,替代方程式(12)及(13)的计算):
Figure BDA0002803122250000251
发明方面:片类型、cabac init flag及上下文模型相依窗大小
在下文中,将描述用于窗大小的调节的可能性,其可视情况在本发明的实施例中的任一个中使用。
在方程式(1)、(3)及(5)中的计数器变量Q,q=a,b的更新均含有窗大小w(例如,wa或wb)或被限定为n=log2 w的指数n(例如,na或nb),以控制影响概率估计器(例如,源统计值确定器)的输出的过去二进制符号的数目。
在先前公开案[1]中,独立于视频编解码器的任何其他参数,针对所有上下文模型将窗大小设定成相同的两个值,例如,na=4及nb=8。
根据本发明的方面,依据上下文模型、cabac init flag及片类型,针对每个上下文模型的窗大小对被设定成在范围[1,11](包括端值)中的n的定制值(例如,对于na及/或nb)。
cabac init flag为H.265/HEVC的部分且被称作“cabac_init_flag”[2]。
存在三个定义的片类型且它们通常被称作B预测片、P预测片或Intra预测片。举例而言,以类似于[2]的“initValue”的方式(其用以得出初始概率状态),对于每个上下文模型 (例如,在预定义表中),针对片类型与“cabac_init_flag”的所有组合限定成对的窗大小wspair (例如,限定wa及wb或na及nb)。
在使用整数算术的实施中,一个上下文模型的窗大小值(例如,na及nb)可例如储存于只读存储器中作为8比特变量,其中na储存于最高有效半字节中,且nb储存于最低有效半字节中:
wspair=(na<<4)+nb。 (15)
wspair的所得结构描绘于表1中。
注意,如在表1中描绘的wspair变量的结构为用于软件实施的大量布局的示例,其中内存要求并非关键。用于储存na及nb的比特数能够储存比所需更多的组合。
一个上下文模型的正确wspair的得出过程的示例(其可由控制区块执行)描绘于表2 中。
举例而言,可看出,存在wspair的三个预定义值,由wspair0、wspair1及wspair2标示。
基于“片类型”信息及基于所谓的“cabac init flag”(其可视情况还确定用于源统计值及/或用于视频编码器或视频解码器的其他变量的初始化值)选择(例如,由控制区块)wspair的这些预定义值中的一个。举例而言,若片类型为双预测性(“B”),则“cabac initflag”可决定实际上使用两个预定义值wspair0及wspair1中的哪一个确定na及nb(或wa及wb)。类似地,若片类型为单预测性(“P”),则“cabac init flag”可决定实际上使用两个预定义值wspair0及wspair1中的哪一个确定na及nb(或wa及wb),其中当与双预测性片类型的情况相比时,可使用cabac init flag的值与预定义值wspair0及wspair1之间的相对分配(oppositeallocation)。若使用独立编码模式(“Intra”)编码片,则cabac init flag可不起作用,且可始终使用预定义值wspair2
还应注意,表2仅表示一个上下文模型,且不同表可用于不同上下文模型(举例而言,其中整个过程odf范围值确定可针对不同上下文模型独立地工作)。
在解码或编码第一二进制符号之前,应用意欲的窗大小对上下文模型进行初始化。应在每个上下文模型的初始概率状态/计数被设定的同时执行初始化过程。
实施例
在下文中,将描述实施例及另外方面。此章节中提到的实施例可分别地使用,且可以可选择地由本文中描述的特征、功能性及细节中的任一个进行补充。
此外,应注意,本文中揭露的所有视频解码器及视频编码器可以可选择地由在下文中描述的特征、功能性及细节中的任一个分别地或以组合方式进行补充。此外,本文中描述的视频解码器及视频编码器的特征可以可选择地由下文中描述的特征、功能性及细节中的任一个替换。
(a)在本发明的较佳实施例中,每个上下文模型配备有两个计数器变量qt=at,bt。在 (例如,视频帧的部分的)片的初始化期间,窗大小变量nq被例如设定成取决于当前片类型及cabac init flag的值的特定值,例如,如在表2中概述,且计数器的分辨率变量(或源统计值的分辨率变量)被例如设定成相同值BITSq=BITSa=BITSb(可选)。为了编码或解码指派给此上下文模型的二进制符号(例如,二进制值),该计数被加权(例如,如在方程式(11)中),并用于得出状态索引,例如,如由方程式(12)及(13)限定。在二进制符号(例如,二进制值)被编码或解码后,更新计数器变量(或源统计值),例如,如使用针对每个计数器(或针对每个源统计值)的指定定制窗大小(例如,如由na及nb限定)由方程式(5)指定。
(b)在本发明的另一较佳实施例中,概率估计方法(或概念)被配置为等同于实施例 (a),但使用方程式(3)及(4)执行计数器变量(或源统计值)的更新。
(c)在本发明的另一较佳实施例中,概率估计方法(或概念)被配置为等同于实施例 (a),但使用方程式(14)来得出状态索引。状态索引寻址具有涵盖整个概率间隔(0,1)的预计算范围值的表(例如,用于提供范围值的映射表)。
(d)在本发明的另一较佳实施例中,概率估计器(例如,源统计值确定区块)如在实施例(a)中指定地那样配置,但上下文模型的各个计数器(或相应上下文模型的两个源统计值)并未如在方程式(11)中那样同等地加权。取而代之,加权运算包括各个计数器的权重βq=βa,βb
Figure BDA0002803122250000261
例如,对于βab=1。在此实施例中,方程式(11)的运算由方程式(16)或替代性整数加权实施替换。
(e)在本发明的另一较佳实施例中,概率估计方法(例如,源统计值确定区块)如在实施例(d)中那样配置,但(例如,两个源统计值的)各个计数器的权重在编码或解码过程期间更改。
(f)在另一较佳实施例中,概率估计器(或源统计值确定区块)被配置为等同于实施例(a),但可用窗大小的集合限于较小子集以减少用以储存wspair变量的内存要求(例如,通过调适控制区块)。此处,nb必须不小于na,对于允许的范围[1,11],此导致66个有效组合。因此,由wspair变量使用的比特数可减少至更紧凑布局,如在表1—8比特变量wspair的位掩码中概述。
(g)在另一较佳实施例中,概率估计器(或源统计值确定区块)如由实施例(f)指定地那样配置,但通过省略手动选择的wspair变量(例如,通过调适控制区块)减少了有效组合的数目。
(h)在另一较佳实施例中,概率估计器(或源统计值确定区块)如由实施例(f)指定地那样配置,但有效组合的数目减少至wspair变量,其中nb与na之间的差为至少3 (nb-na≤3)(例如,通过调适控制区块)。
(i)在另一较佳实施例中,概率估计器(或源统计值确定区块)如由实施例(h)指定地那样配置,但利用wspair变量扩展有效窗大小组合的集合,其中nb与na相等(nb=na)(例如,通过调适控制区块)。
(j)在本发明的另一较佳实施例中,概率估计方法或概念(或源统计值确定区块)如在实施例(a)中那样配置,但计数器的分辨率(或源统计值的分辨率)并不相等,例如,BITSa≠BITSa(例如,通过调适控制区块,或通过调适源统计值确定区块)。尤其对于使用较小窗大小的计数器(或对于源统计值),例如,n=log2 w≤5,可降低个别计数器 (或源统计值)的分辨率以减少内存消耗。
(k)在本发明的另一较佳实施例中,概率估计方法或概念如在实施例(j)中那样配置,但计数器的分辨率(或源统计值的分辨率)BITSq通过其窗大小(例如,通过用于计算或更新源统计值的窗大小)得出:例如,BITSq=ThrHd+nq,其中ThrHd为阈值(例如,固定值),且可例如等于8。
(l)在本发明的另一较佳实施例中,概率估计方法或概念如在实施例(j)中那样配置,但一个上下文模型的BITSq变量的和对于所有上下文模型是相等的(其可例如通过控制区块的调适来达成)。因此,每个上下文模型需要相同比特数,且寻址特定上下文模型可通过简单偏移计算来执行(例如,若与不同上下文模型相关联的源统计值储存于数组中或邻接内存区中)。
(m)在另一较佳实施例中,概率估计器(例如,源统计值确定区块)如在实施例(l)中所描述地那样配置,但有效窗大小组合的数目减少(例如,通过控制区块的调适),这是由于BITSq变量的和对于所有上下文模型是相等的约束。在此实施例中,nb与na相等 (nb=na)的情况被排除在减少之外(使得例如可仍然选择na与nb相等的情况)。
(n)在另一较佳实施例中,概率估计器(例如,源统计值确定区块)如在实施例(a)中所描述地那样配置,但一个计数器的窗大小被设定成无穷大。因此,计数从不更新,且就算术运算及内存消耗而言,可降低复杂性。举例而言,源统计值中的一个可由固定值替换。因此,可通过源统计值中的一个与所述固定值的组合来获得组合源统计值。
(o)在另一较佳实施例中,概率估计器(例如,源统计值确定区块)如在实施例(a)中所描述地那样配置,但依据针对每片传输的单独标志(例如,由视频编码器提供且由视频解码器评估),将上下文模型初始化。替代依据片类型及cabac init flag将窗大小初始化,引入单独标志“ws_flag”,其指定使用的集合(例如,使用的na与nb的值)。结果,扩展表 2的指派,如在表3中所展示。
举例而言,对于每个片类型,可以依据“ws_flag”标志或包括于视频比特流中(例如,作为控制信息或配置信息)的参数在窗大小的两个集合之间选择。
因此,举例而言,控制区块(或通常,视频编码器或视频解码器)可评估ws flag,且依据ws flag(及通常也依据片类型参数,片类型参数通常也包括于视频比特流中,作为控制信息或配置信息,例如,针对每片或针对选定片)调节窗大小。
(p)在另一较佳实施例中,概率估计器(例如,源统计值确定区块)如在实施例(a)中所描述地那样配置,但窗大小的初始化另外取决于当前片的时间级。结果,wspair变量的总数增加。因此,举例而言,控制区块(或视频编码器或解码器)可被配置为在确定窗大小时考虑当前片的时间级。
(q)在另一较佳实施例中,概率估计器(例如,源统计值确定区块)如在实施例(a)中所描述地那样配置,但窗大小的初始化另外取决于当前片的量化参数。因此,举例而言,控制区块(或视频编码器或解码器)可被配置为在确定窗大小时考虑当前片的量化参数。
(r)在另一较佳实施例中,概率估计器(例如,源统计值确定区块)如在实施例(p)中所描述地配置,但初始化另外取决于量化参数。结果,针对时间级的积空间、量化参数、片类型及cabac init flag的每项,指定wspair变量。因此,举例而言,控制区块(或视频编码器或解码器)可被配置为在确定窗大小时考虑当前片的时间级及量化参数。
(s)在本发明的另一较佳实施例中,概率估计方法或概念(例如,源统计值确定区块) 被配置为等同于实施例(a),但依据位置,在解码或编码过程期间更改窗大小变量(例如,在片内及/或在不同片之间及/或在不同帧之间)。
例如,若当前二进制符号源自为片的第一行或第一列的部分的CTU(编码树单元),则两个计数器(或源统计值确定器)的窗大小(例如,na及nb)被设定成:
Figure BDA0002803122250000281
举例而言,此可意味着若当前二进制符号源自为片的第一列或第一行的部分的CTUI 时的窗大小的选择性减小。
若第一列CTU或第一行CTU的编码过程结束,则将窗大小设定成其默认值(例如,如基于片类型及可例如根据表2及3中的一个考虑的任何其他参数或标志来限定)。
通过更改窗大小,概率估计器可更快或更慢地适于在片的开头或一列CTU中的源二进制符号序列的基础统计。
(t)在本发明的另一较佳实施例中,概率估计方法或概念(例如,源统计值确定区块) 被配置为等同于实施例(a),但使用额外标志(例如,由视频编码器提供及由视频解码器评估)在片的解码或编码期间更改窗大小。在此实施例中,例如,针对用以针对所有上下文模型或(例如,上下文模型的)子集增大或减小na及nb变量的每一CTU,存在标志“ctu_ws_flag”。在编码期间例如,在每一CTU之前,发信号通知“ctu_ws_flag”,且在解码期间,例如,在每一CTU之前,读取“ctu_ws_flag”。依据“ctu_ws_flag”的值,若结果仍然在有效范围[1,11]中,则将所有上下文模型的na及nb变量增大或减小一。
(u)在本发明的另一较佳实施例中,概率估计方法或概念(例如,源统计值确定区块) 被配置为等同于实施例(t),但依据ctu_ws_flag,仅更改所有上下文模型的子集的窗大小。
5)根据图4的方法
图4展示根据本发明的实施例的方法400的流程图。
应注意,方法400可以可选择地由本文中关于对应设备所描述的特征、功能性及细节中的任一个分别地或以组合方式进行补充。
还应注意,若通过组合第一源统计值与固定非零值获得组合源统计值,则无需计算第二源统计值。
6)根据图5的方法
图5展示根据本发明的实施例的方法500的流程图。
应注意,方法500可以可选择地由本文中关于对应设备所描述的特征、功能性及细节中的任一个分别地或以组合方式进行补充。
还应注意,若通过组合第一源统计值与固定非零值获得组合源统计值,则无需计算第二源统计值。
7)根据图6的视频流
图6展示根据本发明的实施例的视频流(比特流)的示意性(简化)表示。
应注意,视频流600可以可选择地由本文中所描述的特征及细节中的任一个分别地及以组合方式进行补充。
8)结论
总之,已描述用于二进制算术编码的概率估计方法及设备的实施例,该概率估计方法及设备可用于例如视频编码器、视频解码器中,而且还可用于图像编码器、图像解码器、音频编码器、音频解码器及类似中。
这些方法及设备胜过常规解决方案。
举例而言,在[4]中的文件描述针对每个上下文模型限定的定制窗大小。然而,窗大小并非依据片类型或cabac init flag得出。针对每个上下文模型限定两对窗大小,且使用量化参数选择一对。此外,提供窗大小的不同范围。
在[5]中的文件描述可作为替代方案与在申请权利要求中描述的快速攻击模式相比的一种方法。该文件描述针对指派至上下文模型的前64个二进制符号限定额外一对窗大小。在解码或编码前64个二进制符号后,将窗大小设定成其默认值。此方法需要追踪针对每个上下文模型编码的二进制符号的数目的单独计数器变量。
9)实施替代方案
尽管已在设备的上下文中描述一些方面,但显然,这些方面也表示对应方法的描述,其中区块或装置对应于方法步骤或方法步骤的特征。类似地,在方法步骤的上下文中所描述的方面也表示对应区块或项目或对应设备的特征的描述。可由(或使用)硬件设备(例如微处理器、可编程计算机或电子电路)执行方法步骤中的一些或全部。在一些实施例中,可由此设备执行最重要的方法步骤中的一个或多个。
本发明的经编码的视频信号(或视频流或视频比特流)可储存于数字储存介质上,或可在传输介质(诸如,无线传输介质或有线传输介质,诸如,因特网)上传输。
取决于某些实施要求,本发明的实施例可在硬件中或在软件中实施。可使用数字储存介质来执行实施,介质例如软性磁盘、DVD、Blu-ray、CD、ROM、PROM、EPROM、EEPROM 或闪存,介质具有储存于其上的电子可读控制信号,电子可读控制信号与可编程计算机系统合作(或能够合作)以使得执行各个方法。因此,数字储存介质可为计算机可读的。
根据本发明的一些实施例包括具有电子可读控制信号的数据载体,电子可读控制信号能够与可编程计算机系统合作,使得执行本文中所描述的方法中的一个。
通常,本发明的实施例可实施为具有程序代码的计算机程序产品,当计算机程序产品在计算机上运行时,程序代码操作性地用于执行方法中的一个。程序代码可例如储存于机器可读载体上。
其他实施例包括储存于机器可读载体上的用于执行本文中所描述的方法中的一个的计算机程序。
换言之,因此,本发明的方法的实施例为计算机程序,计算机程序具有程序代码,当计算机程序在计算机上运行时,程序代码用于执行本文中所描述的方法中的一个。
因此,本发明的方法的再一实施例为数据载体(或数字储存介质,或计算机可读介质),该数据载体包括记录于其上的用于执行本文中所描述的方法中的一个的计算机程序。数据载体、数字储存介质或记录介质通常是有形的及/或非暂时性的。
因此,本发明的方法的再一实施例为表示用于执行本文中所描述的方法中的一个的计算机程序的数据流或信号序列。数据流或信号序列可例如被配置为经由数据通信连接(例如,经由因特网)而传送。
再一实施例包括经配置或经调适以执行本文中所描述的方法中的一个的处理构件,例如,计算机或可编程逻辑设备。
再一实施例包括其上安装有用于执行本文中所描述的方法中的一个的计算机程序的计算机。
根据本发明的再一实施例包括被配置为(例如,电子地或光学地)传送用于执行本文中所描述的方法中的一个的计算机程序至接收器的设备或系统。举例而言,接收器可为计算机、移动装置、内存装置或类似。设备或系统可(例如)包括用于传送计算机程序至接收器的文件服务器。
在一些实施例中,可编程逻辑设备(例如,现场可编程门阵列)可用以执行本文中所描述的方法的功能性中的一些或全部。在一些实施例中,现场可编程门阵列可与微处理器合作,以便执行本文中所描述的方法中的一个。通常,方法较佳地由任一硬件设备执行。
本文中所描述的设备可使用硬件设备或使用计算机或使用硬件设备与计算机的组合来实施。
本文中所描述的设备或本文中所描述的设备的任何组件可至少部分地以硬件及/或以软件来实施。
本文中所描述的方法可使用硬件设备或使用计算机或使用硬件设备与计算机的组合来执行。
本文中所描述的方法或本文中所描述的设备的任何组件可至少部分地由硬件及/或由软件执行。
上述实施例仅说明本发明的原理。应理解,对本文中所描述的配置及细节的修改及变化将对本领域技术人员显而易见。因此,意图为仅受到接下来的待决权利要求的范畴限制,而不受到通过本文中的实施例的描述及解释所提出的具体细节限制。
参考文献
[1]A.Alshin,E.Alshina,“Multi-parameter probability update for CABAC”,JCTVC-F254, Torino,July,2011, http://phenix.it-sudparis.eu/jct/doc_end_user/ documents/6_Torino/wg11/JCTVC-F254-v5.zip.
[2]ITU-T,Recommondation H.265(12/16), https://www.itu.int/rec/ dologin_pub.asp?lang=e&id=T-REC-H.265-201612-I!!PDF-E&type=items .
[3]J.Stegemann,H.Kirchhoffer,D.Marpe,T.Wiegand,“Non-CE1:Counter-basedprobability model update with adapted arithmetic coding engine“, http:// phenix.it-sudparis.eu/jct/doc_end_user/documents/7_Geneva/wg11/JCTVC-G547- v4.zip.
[4]A.Said,M.Karczewicz,V.Seregin,H.Egilmez,L.Zhang,X.Zhao,“EE2:Arithmetic coding with context-dependent double-window adaptation response”,JVET-H0061, http://phenix.it-sudparis.eu/jvet/doc_end_user/documents/8_Macau/ wg11/JVET-H0061-v1.zip
[5]A.Said,M.Karczewicz,V.Seregin,H.Egilmez,L.Zhang,X.Zhao,“EE2related: Arithmetic coding with progressive context-dependent double-windowadaptation response”, http://phenix.it-sudparis.eu/jvet/doc_end_user/documents/8_Macau/wg11/JVET-H0067-v2.zip。

Claims (75)

1.一种视频解码器(100;200),
其中视频解码器被配置为解码多个视频帧,
其中视频解码器被配置为解码被细分成一个或多个片的集合的视频帧,
其中视频解码器被配置为评估指示是使用独立编码模式还是使用单预测性模式还是使用双预测性模式来编码片的片类型信息,以选择用于片的解码的操作模式,在独立编码模式中,不存在基于先前帧的视频内容对当前帧的视频内容的预测,在单预测性模式中,存在基于先前帧的一个像素区块对像素区块的预测,在双预测性模式中,存在基于一个或多个先前帧的两个或更多个像素区块对像素区块的预测;
其中视频解码器包括算术解码器(120;220),算术解码器(120;220)用于基于二进制序列的编码表示(211)提供经解码的二进制序列(122;222),
其中算术解码器被配置为使用第一估计参数(wa)确定第一源统计值(at,132,232),及使用第二估计参数(wb)确定第二源统计值(bt,142,242),以及
其中算术解码器被配置为基于第一源统计值(at)及基于第二源统计值(bt)确定组合源统计值
Figure FDA0002803122240000011
以及
其中算术解码器被配置为基于组合源统计值确定用于间隔细分的一个或多个范围值(162,262),一个或多个范围值用于二进制序列的编码表示至经解码的二进制序列的映射。
2.如权利要求1所述的视频解码器,其中第一估计参数为第一窗大小,且其中第二估计参数为第二窗大小;或
其中第一估计参数为第一惯性参数,第一惯性参数确定第一源统计值跟随经解码的二进制序列中的经解码的二进制符号的频率的改变的速度,以及
其中第二估计参数为第二惯性参数,第二惯性参数确定第二源统计值跟随经解码的二进制序列中的经解码的二进制符号的频率的改变的速度。
3.如权利要求1或2所述的视频解码器,
其中算术解码器被配置为依据片类型信息确定第一估计参数及第二估计参数。
4.如权利要求1-3中任一项所述的视频解码器,
其中视频解码器被配置为还依据包括于比特流中的初始化参数或标志确定第一估计参数及第二估计参数。
5.如权利要求1-4中任一项所述的视频解码器,
其中视频解码器被配置为还依据上下文模型确定第一估计参数及第二估计参数。
6.如权利要求1-5中任一项所述的视频解码器,
其中视频解码器被配置为依据先前编码的二进制值将预定值选择性地添加至第一源统计值的先前计算实例,并减去第一源统计值的先前计算实例的按比例调整的版本,以获得第一源统计值的更新版本;和/或
其中视频解码器被配置为依据先前解码的二进制值将预定值选择性地添加至第二源统计值的先前计算实例,并减去第二源统计值的先前计算实例的按比例调整的版本,以获得第二源统计值的更新版本。
7.如权利要求1-6中任一项所述的视频解码器,
其中视频解码器被配置为根据以下获得第一源统计值的更新版本at+1
at+1=at+xt·(ONEa>>na)-(at>>na)
其中at为第一源统计值的先前计算版本,
其中xt为先前解码的二进制值,
其中na为窗大小信息,
其中
ONEa=(1<<BITSa)-ka
其中BITSa为用于表示第一源统计值的比特数,
其中ka为预定数;和/或
其中,视频解码器被配置为根据以下获得第二源统计值的更新版本bt+1
bt+1=bt+xt·(ONEb>>nb)-(bt>>nb)
其中bt为第二源统计值的先前计算版本,
其中xt为先前解码的符号,
其中nb为窗大小信息,
其中
ONEb=(1<<BITSb)-kb
其中BITSb为用于表示第二源统计值的比特数,
其中kb为预定数。
8.如权利要求7所述的视频解码器,
其中ka=1和/或kb=1。
9.如权利要求1-8中任一项所述的视频解码器,
其中视频解码器被配置为根据以下确定第一源统计值at+1
at+1=at+(xt<<(BITSa-na))-(at>>na)
at+1=at+1-(at+1>>BITSa)
其中
at为先前计算的源统计值,
xt为先前解码的二进制值,
BITSa为针对第一源统计值分配的比特数,
na表示第一窗大小wa,其中
Figure FDA0002803122240000021
>>为向右移位运算符,和/或
其中视频解码器被配置为根据以下确定第二源统计值bt+1
bt+1=bt+(xt<<(BITSb-nb))-(bt>>nb)
bt+1=bt+1-(bt+1>>BITSb)
其中
bt为先前计算的源统计值,
xt为先前解码的二进制值,
BITSb为针对第一源统计值分配的比特数,
nb表示第二窗大小wb,其中
Figure FDA0002803122240000031
10.如权利要求1-8中任一项所述的视频解码器,
其中视频解码器被配置为根据以下确定第一源统计值at+1
at+1=at+(xt<<(BITSa-na))-(at>>na)
其中
at为先前计算的源统计值,
xt为先前解码的二进制值,
BITSa为针对第一源统计值分配的比特数,
na表示第一窗大小wa,其中
Figure FDA0002803122240000032
>>为向右移位运算符,和/或
其中视频解码器被配置为根据以下确定第二源统计值bt+1
bt+1=bt+(xt<<(BITSb-nb))-(bt>>nb)
其中
bt为先前计算的源统计值,
xt为先前解码的二进制值,
BITSb为针对第一源统计值分配的比特数,
nb表示第二窗大小wb,其中
Figure FDA0002803122240000033
11.如权利要求1-10中任一项所述的视频解码器,
其中视频解码器被配置为根据以下确定第一源统计值at+1
Figure FDA0002803122240000034
其中
at为先前计算的源统计值,
xt为先前解码的二进制值,
BITSa为针对第一源统计值分配的比特数,
na表示第一窗大小wa,其中
Figure FDA0002803122240000035
>>为向右移位运算符,和/或
其中视频解码器被配置为根据以下确定第二源统计值bt+1
Figure FDA0002803122240000036
其中
bt为先前计算的源统计值,
xt为先前解码的二进制值,
BITSb为针对第一源统计值分配的比特数,
nb表示第二窗大小wb,其中
Figure FDA0002803122240000037
>>为向右移位运算符。
12.如权利要求1-5中任一项所述的视频解码器,
其中视频解码器被配置为使用查找表确定第一源统计值,
其中依据先前确定的源统计值、先前解码的二进制值及第一估计参数,选择表条目;和/或
其中视频解码器被配置为使用查找表确定第二源统计值,
其中依据先前确定的源统计值、先前解码的二进制值及第二估计参数,选择表条目。
13.如权利要求1-12中任一项所述的视频解码器,
其中视频解码器被配置为组合第一源统计值与第二源统计值,以获得组合源统计值。
14.如权利要求1-13中任一项所述的视频解码器,
其中视频解码器被配置为根据以下获得组合源统计值
Figure FDA0002803122240000041
Figure FDA0002803122240000042
其中at为第一源统计值,及
其中bt为第二源统计值。
15.如权利要求1-14中任一项所述的视频解码器,
其中视频解码器被配置为组合第一源统计值与第二源统计值,以获得组合源统计值,其中不同权重与第一源统计值及第二源统计值相关联。
16.如权利要求1-15中任一项所述的视频解码器,
其中视频解码器被配置为将不同比特数(BITSa,BITSb)用于第一源统计值(at)及第二源统计值(bt)的表示。
17.如权利要求16所述的视频解码器,
其中视频解码器被配置为将不同估计参数用于第一源统计值(at)与用于第二源统计值(bt),且其中视频解码器被配置为将相对较大的比特数用于具有相对较大的估计参数的源统计值的表示,及将相对较小的比特数用于具有相对较小的估计参数的源统计值的表示。
18.如权利要求16或17所述的视频解码器,
其中视频解码器被配置为,在确定组合源统计值前,根据以下修改第一源统计值at的数表示和/或第二源统计值bt的数表示:
a′t=at>>(BITSa-BITSmin)
和/或根据
b′t=bt>>(BITSb-BITSmin),
其中
BITSmin=min(BITSa,BITSb),
其中BITSa为针对第一源统计值的表示分配的比特数目,且其中BITSb为针对第二源统计值的表示分配的比特数。
19.如权利要求18所述的视频解码器,
其中视频解码器被配置为根据以下确定组合源统计值
Figure FDA0002803122240000043
Figure FDA0002803122240000044
且其中视频解码器被配置为根据以下得出索引值pStateIdx,索引值pStateIdx标示包括用于间隔细分的预计算范围值的表的表条目:
Figure FDA0002803122240000051
其中根据以下确定最可能值的值:
Figure FDA0002803122240000052
其中BITStabRes描述表的条目数。
20.如权利要求18所述的视频解码器,
其中视频解码器被配置为根据以下确定组合源统计值
Figure FDA0002803122240000053
Figure FDA0002803122240000054
且其中视频解码器被配置为根据以下得出索引值pStateIdx,索引值pStateIdx标示包括用于间隔细分的预计算范围值的表的表条目:
Figure FDA0002803122240000055
其中BITStabRes描述表的条目数。
21.如权利要求16-20中任一项所述的视频解码器,
其中视频解码器被配置为依据第一估计参数及依据第二估计参数选择用于第一源统计值(at)的表示及第二源统计值的表示的比特数(BITSa,BITSb)。
22.如权利要求16-21中任一项所述的视频解码器,
其中用于第一源统计值(at)的表示及第二源统计值(bt)的表示的比特总数的和在不同上下文模型上是恒定的。
23.如权利要求1-22中任一项所述的视频解码器,
其中视频解码器被配置为还依据包括于比特流中的初始化标志(ws_flag)确定第一估计参数及第二估计参数,且
其中视频解码器被配置为依据包括于比特流中的另一初始化参数或标志设定用于第一源统计值和/或第二源统计值的初始化值。
24.如权利要求1-23中任一项所述的视频解码器,
其中算术解码器被配置为还依据当前片的时间级确定第一估计参数及第二估计参数;和/或
其中算术解码器被配置为还依据当前片的量化参数确定第一估计参数及第二估计参数。
25.如权利要求1-24中任一项所述的视频解码器,
其中视频解码器被配置为依据位置调节第一估计参数和/或第二估计参数。
26.如权利要求25所述的视频解码器,
其中视频解码器被配置为:当解码与开始位置相关联的二进制值时,将第一估计参数和/或第二估计参数设定成开始值;及当解码与距开始位置为至少预定位置的位置相关联的二进制值时,将第一估计参数和/或第二估计参数设定成正常值。
27.如权利要求1-26中任一项所述的视频解码器,
其中视频解码器被配置为响应于用信号通知应改变估计参数的信令标志(ctu_ws_flag)在片内改变第一估计参数和/或第二估计参数。
28.如权利要求27所述的视频解码器,
其中视频解码器被配置为针对多个编码树单元评估指示是否应改变估计参数的信令标志,及依据信令标志增大或减小估计参数中的至少一个。
29.如权利要求1-28中任一项所述的视频解码器,
其中视频解码器被配置为从组合源统计值
Figure FDA0002803122240000061
得出状态索引(pStateIdx),和/或
其中视频解码器被配置为得出表示最可能二进制值或最不可能二进制值的值(valMPS);以及
其中视频解码器被配置为评估将状态索引映射至用于间隔细分的一个或多个范围值的表。
30.如权利要求1-29中任一项所述的视频解码器,
其中视频解码器被配置为用恒定替换值临时替换第二源统计值,并组合第一源统计值(at)与固定非零替换值,以获得组合源统计值。
31.如权利要求1-30中任一项所述的视频解码器,
其中视频解码器被配置为选择第一窗大小wa及第二窗大小wb,使得
na=nb
|na-nb|≥3,
其中
Figure FDA0002803122240000062
或na=round(log2wa),
其中round()为上舍入或下舍入运算符,及
其中
Figure FDA0002803122240000063
或nb=round(log2wb)。
32.如权利要求1-31中任一项所述的视频解码器,
其中视频解码器被配置为选择第一窗大小wa及第二窗大小wb,使得
|na-nb|≥3,
其中
Figure FDA0002803122240000064
或na=round(log2wa),
其中round()为上舍入或下舍入运算符,及
其中
Figure FDA0002803122240000065
或nb=round(log2wb)。
33.一种视频解码器(100;200),
其中视频解码器被配置为解码多个视频帧,
其中视频解码器被配置为解码被细分成一个或多个片的集合的视频帧,
其中视频解码器被配置为评估指示是使用独立编码模式还是使用单预测性模式还是使用一预测性模式来编码片的片类型信息,以选择用于片的解码的操作模式,在独立编码模式中,不存在基于先前帧的视频内容对当前帧的视频内容的预测,在单预测性模式中,存在基于先前帧的一个像素区块对像素区块的预测,在双预测性模式中,存在基于一个或多个先前帧的两个或更多个像素区块对像素区块的预测;
其中视频解码器包括算术解码器(120;220),算术解码器(120;220)用于基于二进制序列的编码表示(211)提供经解码的二进制序列(122;222),
其中算术解码器被配置为使用第一估计参数(wa)确定第一源统计值(at,132,232),以及
其中算术解码器被配置为确定组合源统计值
Figure FDA0002803122240000066
其中算术解码器被配置为组合第一源统计值(at)与固定非零值,以获得组合源统计值,以及
其中算术解码器被配置为基于组合源统计值确定用于间隔细分的一个或多个范围值(162,262),一个或多个范围值用于二进制序列的编码表示至经解码的二进制序列的映射。
34.一种视频编码器(300),
其中视频编码器被配置为编码多个视频帧,
其中视频编码器被配置为编码被细分成一个或多个片的集合的视频帧,
其中视频编码器被配置为提供指示是使用独立编码模式还是使用单预测性模式还是使用双预测性模式来编码片的片类型信息,在独立编码模式中,不存在基于先前帧的视频内容对当前帧的视频内容的预测,在单预测性模式中,存在基于先前帧的一个像素区块对像素区块的预测,在双预测性模式中,存在基于一个或多个先前帧的两个或更多个像素区块对像素区块的预测;
其中视频编码器包括算术编码器(320),算术编码器(320)用于基于二进制序列(322)提供二进制序列的编码表示(311),
其中算术编码器被配置为使用第一估计参数(wa)确定第一源统计值(at,332),及使用第二估计参数(wb)确定第二源统计值(bt,342),以及
其中算术编码器被配置为基于第一源统计值(at)及基于第二源统计值(bt)确定组合源统计值
Figure FDA0002803122240000071
以及
其中算术编码器被配置为基于组合源统计值确定用于间隔细分的一个或多个范围值(362),一个或多个范围值用于二进制序列至二进制序列的编码表示的映射。
35.如权利要求34所述的视频编码器,
其中第一估计参数为第一窗大小,且其中第二估计参数为第二窗大小;或
其中第一估计参数为第一惯性参数,第一惯性参数确定第一源统计值跟随二进制序列中的二进制符号的频率的改变的速度,以及
其中第二估计参数为第二惯性参数,第二惯性参数确定第二源统计值跟随二进制序列中的二进制符号的频率的改变的速度。
36.如权利要求34或35所述的视频编码器,
其中视频编码器被配置为依据片类型信息确定第一估计参数及第二估计参数。
37.如权利要求34或35或36所述的视频编码器,
其中视频编码器被配置为提供初始化标志,且其中视频编码器被配置为还依据被视频编码器包括在比特流中的初始化参数或标志确定第一估计参数及第二估计参数。
38.如权利要求34-37中任一项所述的视频编码器,
其中视频编码器被配置为还依据上下文模型确定第一估计参数及第二估计参数。
39.如权利要求34-38中任一项所述的视频编码器,
其中视频编码器被配置为依据先前编码的二进制值将预定值选择性地添加至第一源统计值的先前计算实例,并减去第一源统计值的先前计算实例的按比例调整的版本,以获得第一源统计值的更新版本;和/或
其中视频编码器被配置为依据先前编码的二进制值将预定值选择性地添加至第二源统计值的先前计算实例,并减去第二源统计值的先前计算实例的按比例调整的版本,以获得第二源统计值的更新版本。
40.如权利要求34-39中任一项所述的视频编码器,
其中视频编码器被配置为根据以下获得第一源统计值的更新版本at+1
at+1=at+xt·(ONEa>>na)-(at>>na)
其中at为第一源统计值的先前计算版本,
其中xt为先前编码的二进制值,
其中na为窗大小信息,
其中
ONEa=(1<<BITSa)-ka
其中BITSa为用于表示第一源统计值的比特数,
其中ka为预定数;和/或
其中视频编码器被配置为根据以下获得第二源统计值的的更新版本bt+1
bt+1=bt+xt·(ONEb>>nb)-(bt>>nb)
其中bt为第二源统计值的先前计算版本,
其中xt为先前编码的符号,
其中nb为窗大小信息,
其中
ONEb=(1<<BITSb)-kb
其中BITSb为用于表示第二源统计值的比特数,
其中kb为预定数。
41.如权利要求40所述的视频编码器,
其中ka=1和/或kb=1。
42.如权利要求34-41中任一项所述的视频编码器,
其中视频编码器被配置为根据以下确定第一源统计值at+1
at+1=at+(xt<<(BITSa-na))-(at>>na)
at+1=at+1-(at+1>>BITSa)
其中
at为先前计算的源统计值,
xt为先前编码的二进制值,
BITSa为针对第一源统计值分配的比特数,
na表示第一窗大小wa,其中
Figure FDA0002803122240000081
>>为向右移位运算符,和/或
其中视频编码器被配置为根据以下确定第二源统计值bt+1
bt+1=bt+(xt<<(BITSb-nb))-(bt>>nb)
bt+1=bt+1-(bt+1>>BITSb)
其中
bt为先前计算的源统计值,
xt为先前编码的二进制值,
BITSb为针对第一源统计值分配的比特数,
nb表示第二窗大小wb,其中
Figure FDA0002803122240000091
43.如权利要求34-41中任一项所述的视频编码器,
其中视频编码器被配置为根据以下确定第一源统计值at+1
at+1=at+(xt<<(BITSa-na))-(at>>na)
其中
at为先前计算的源统计值,
xt为先前编码的二进制值,
BITSa为针对第一源统计值分配的比特数,
na表示第一窗大小wa,其中
Figure FDA0002803122240000092
>>为向右移位运算符,和/或
其中视频编码器被配置为根据以下确定第二源统计值bt+1
bt+1=bt+(xt<<(BITSb-nb))-(bt>>nb)
其中
bt为先前计算的源统计值,
xt为先前编码的二进制值,
BITSb为针对第一源统计值分配的比特数,
nb表示第二窗大小wb,其中
Figure FDA0002803122240000093
44.如权利要求34-42中任一项所述的视频编码器,其中视频编码器被配置为根据以下确定第一源统计值at+1
Figure FDA0002803122240000094
其中
at为先前计算的源统计值,
xt为先前编码的二进制值,
BITSa为针对第一源统计值分配的比特数,
na表示第一窗大小wa,其中
Figure FDA0002803122240000095
>>为向右移位运算符,和/或
其中视频编码器被配置为根据以下确定第二源统计值bt+1
Figure FDA0002803122240000096
其中
bt为先前计算的源统计值,
xt为先前编码的二进制值,
BITSb为针对第一源统计值分配的比特数,
nb表示第二窗大小wb,其中
Figure FDA0002803122240000097
>>为向右移位运算符。
45.如权利要求34-42中任一项所述的视频编码器,
其中视频编码器被配置为使用查找表确定第一源统计值,
其中依据先前确定的源统计值、先前编码的二进制值及第一估计参数,选择表条目;和/或
其中视频解码器被配置为使用查找表确定第二源统计值,
其中依据先前确定的源统计值、先前解码的二进制值及第二估计参数,选择表条目。
46.如权利要求34-45中任一项所述的视频编码器,
其中视频编码器被配置为组合第一源统计值与第二源统计值,以获得组合源统计值。
47.如权利要求34-46中任一项所述的视频编码器,
其中视频编码器被配置为根据以下获得组合源统计值
Figure FDA0002803122240000101
Figure FDA0002803122240000102
其中at为第一源统计值,及
其中bt为第二源统计值。
48.如权利要求34-47中任一项所述的视频编码器,
其中视频编码器被配置为组合第一源统计值与第二源统计值,以获得组合源统计值,其中不同权重与第一源统计值及第二源统计值相关联。
49.如权利要求34-48中任一项所述的视频编码器,
其中视频编码器被配置为将不同比特数(BITSa,BITSb)用于第一源统计值(at)及第二源统计值(bt)的表示。
50.如权利要求49所述的视频编码器,
其中视频编码器被配置为将不同估计参数用于第一源统计值(at)与用于第二源统计值(bt),且
其中视频编码器被配置为将相对较大的比特数用于具有相对较大的估计参数的源统计值的表示,及将相对较小的比特数用于具有相对较小的估计参数的源统计值的表示。
51.如权利要求49或50所述的视频编码器,
其中视频编码器被配置为,在确定组合源统计值前,根据以下修改第一源统计值at的数表示和/或第二源统计值bt的数表示:
a′t=at>>(BITSa-BITSmin)
和/或根据
b′t=bt>>(BITSb-BITSmin),
其中
BITSmin=min(BITSa,BITSb),
其中BITSa为针对第一源统计值的表示分配的比特数,且其中BITSb为针对第二源统计值的表示分配的比特数。
52.如权利要求51所述的视频编码器,
其中视频编码器被配置为根据以下确定组合源统计值
Figure FDA0002803122240000103
Figure FDA0002803122240000111
且其中视频编码器被配置为根据以下得出索引值pStateIdx,索引值pStateIdx标示包括用于间隔细分的预计算范围值的表的表条目:
Figure FDA0002803122240000112
其中根据以下确定最可能值的值:
Figure FDA0002803122240000113
其中BITStabRes描述表的条目数。
53.如权利要求51所述的视频编码器,
其中视频编码器被配置为根据以下确定组合源统计值
Figure FDA0002803122240000114
Figure FDA0002803122240000115
且其中视频编码器被配置为根据以下得出索引值pStateIdx,索引值pStateIdx标示包括用于间隔细分的预计算范围值的表的表条目:
Figure FDA0002803122240000116
其中BITStabRes描述表的条目数。
54.如权利要求49-53中任一项所述的视频编码器,
其中视频编码器被配置为依据第一估计参数及依据第二估计参数选择用于第一源统计值(at)的表示及第二源统计值的表示的比特数(BITSa,BITSb)。
55.如权利要求49-54中任一项所述的视频编码器,
其中用于第一源统计值(at)的表示及第二源统计值(bt)的表示的比特总数的和在不同上下文模型上是恒定的。
56.如权利要求34-55中任一项所述的视频编码器,
其中视频编码器被配置为将初始化标志(ws_flag)包括至比特流中,初始化标志确定第一估计参数及第二估计参数,且
其中视频编码器被配置为将另一初始化标志包括至比特流中,另一初始化标志确定用于第一源统计值和/或第二源统计的初始化值。
57.如权利要求34-56中任一项所述的视频编码器,
其中视频编码器被配置为还依据当前片的时间级确定第一估计参数及第二估计参数;和/或
其中视频编码器被配置为还依据当前片的量化参数确定第一估计参数及第二估计参数。
58.如权利要求34-57中任一项所述的视频编码器,
其中视频编码器被配置为依据位置调节第一估计参数和/或第二估计参数。
59.如权利要求58所述的视频编码器,
其中视频编码器被配置为:当编码与开始位置相关联的二进制值时,将第一估计参数和/或第二估计参数设定成开始值;及当编码与距开始位置为至少预定位置的位置相关联的二进制值时,将第一估计参数和/或第二估计参数设定成正常值。
60.如权利要求34-59中任一项所述的视频编码器,
其中视频编码器被配置为将用信号通知应在片内改变估计参数的信令标志(ctu_ws_flag)包括至比特流中。
61.如权利要求60所述的视频编码器,
其中视频编码器被配置为针对多个编码树单元,将指示是否应改变估计参数的信令标志包括至比特流中,其中信令标志指示增大还是减小估计参数中的至少一个。
62.如权利要求34-61中任一项所述的视频编码器,
其中视频编码器被配置为从组合源统计值
Figure FDA0002803122240000121
得出状态索引(pStateIdx),和/或
其中视频编码器被配置为得出表示最可能二进制值或最不可能二进制值的值(valMPS);以及
其中视频编码器被配置为评估将状态索引映射至用于间隔细分的一个或多个范围值的表。
63.如权利要求34-62中任一项所述的视频编码器,
其中视频编码器被配置为用恒定替换值临时替换第二源统计值,并组合第一源统计值与固定非零替换值,以获得组合源统计值。
64.如权利要求34-63中任一项所述的视频编码器,
其中视频编码器被配置为选择第一窗大小wa及第二窗大小wb,使得
na=nb
|na-nb|≥3,
其中
Figure FDA0002803122240000122
或na=round(log2wa),
其中round()为上舍入或下舍入运算符,及
其中
Figure FDA0002803122240000123
或nb=round(log2wb)。
65.如权利要求34-64中任一项所述的视频编码器,
其中视频编码器被配置为选择第一窗大小wa及第二窗大小wb,使得
|na-nb|≥3,
其中
Figure FDA0002803122240000124
或na=round(log2wa),
其中round()为上舍入或下舍入运算符,及
其中
Figure FDA0002803122240000125
或nb=round(log2wb)。
66.一种视频编码器(300),
其中视频编码器被配置为编码多个视频帧,
其中视频编码器被配置为编码被细分成一个或多个片的集合的视频帧,
其中视频编码器被配置为提供指示是使用独立编码模式还是使用单预测性模式还是使用双预测性模式来编码片的片类型信息,在独立编码模式中,不存在基于先前帧的视频内容对当前帧的视频内容的预测,在单预测性模式中,存在基于先前帧的一个像素区块对像素区块的预测,在双预测性模式中,存在基于一个或多个先前帧的两个或更多个像素区块对像素区块的预测;
其中视频编码器包括算术编码器(320),算术编码器(320)用于基于二进制序列提供二进制序列的编码表示,
其中算术编码器被配置为使用第一估计参数(wa)确定第一源统计值(at,332),以及
其中算术编码器被配置为确定组合源统计值
Figure FDA0002803122240000131
其中算术编码器被配置为组合第一源统计值(at)与固定非零值,以获得组合源统计值,以及
其中算术编码器被配置为基于组合源统计值确定用于间隔细分的一个或多个范围值(362),一个或多个范围值用于二进制序列至二进制序列的编码表示的映射。
67.一种用于解码视频内容的方法,
其中方法包括解码多个视频帧,
其中方法包括解码被细分成一个或多个片的集合的视频帧,
其中方法包括评估指示是使用独立编码模式还是使用单预测性模式还是使用双预测性模式来编码片的片类型信息,以选择用于片的解码的操作模式,在独立编码模式中,不存在基于先前帧的视频内容对当前帧的视频内容的预测,在单预测性模式中,存在基于先前帧的一个像素区块对像素区块的预测,在双预测性模式中,存在基于一个或多个先前帧的两个像素区块对像素区块的预测;
其中方法包括基于二进制序列的编码表示提供经解码的二进制序列,
其中方法包括使用第一估计参数(wa)确定第一源统计值(at)及使用第二估计参数(wb)确定第二源统计值(bt),以及
其中方法包括基于第一源统计值(at)及基于第二源统计值(bt)确定组合源统计值
Figure FDA0002803122240000133
Figure FDA0002803122240000134
以及
其中方法包括基于组合源统计值确定用于间隔细分的一个或多个范围值,一个或多个范围值用于二进制序列的编码表示至经解码的二进制序列的映射。
68.一种用于解码视频内容的方法,
其中方法包括解码多个视频帧,
其中方法包括解码被细分成一个或多个片的集合的视频帧,
其中方法包括评估指示是使用独立编码模式还是使用单预测性模式还是使用双预测性模式来编码片的片类型信息,以选择用于片的解码的操作模式,在独立编码模式中,不存在基于先前帧的视频内容对当前帧的视频内容的预测,在单预测性模式中,存在基于先前帧的一个像素区块对像素区块的预测,在双预测性模式中,存在基于一个或多个先前帧的两个像素区块对像素区块的预测;
其中方法包括基于二进制序列的编码表示提供经解码的二进制序列,
其中方法包括使用第一估计参数(wa)确定第一源统计值(at),以及
其中方法包括确定组合源统计值
Figure FDA0002803122240000132
其中第一源统计值(at)与固定非零值组合,以获得组合源统计值,以及
其中方法包括基于组合源统计值确定用于间隔细分的一个或多个范围值,一个或多个范围值用于二进制序列的编码表示至经解码的二进制序列的映射。
69.一种用于编码视频内容的方法,
其中方法包括编码多个视频帧,
其中方法包括编码被细分成一个或多个片的集合的视频帧,
其中视频方法包括提供指示是使用独立编码模式还是使用单预测性模式还是使用双预测性模式来编码片的片类型信息,在独立编码模式中,不存在基于先前帧的视频内容对当前帧的视频内容的预测,在单预测性模式中,存在基于先前帧的一个像素区块对像素区块的预测,在双预测性模式中,存在基于一个或多个先前帧的两个像素区块对像素区块的预测;
其中方法包括基于二进制序列提供二进制序列的编码表示,
其中方法包括使用第一估计参数(wa)确定第一源统计值(at)及使用第二估计参数(wb)确定第二源统计值(bt),以及
其中方法包括基于第一源统计值(at)及基于第二源统计值(bt)确定组合源统计值
Figure FDA0002803122240000141
Figure FDA0002803122240000142
以及
其中方法包括基于组合源统计值确定用于间隔细分的一个或多个范围值,一个或多个范围值用于二进制序列至二进制序列的编码表示的映射。
70.一种用于编码视频内容的方法,
其中方法包括编码多个视频帧,
其中方法包括编码被细分成一个或多个片的集合的视频帧,
其中方法包括提供指示是使用独立编码模式还是使用单预测性模式还是使用双预测性模式来编码片的片类型信息,在独立编码模式中,不存在基于先前帧的视频内容对当前帧的视频内容的预测,在单预测性模式中,存在基于先前帧的一个像素区块对像素区块的预测,在双预测性模式中,存在基于一个或多个先前帧的两个像素区块对像素区块的预测;
其中方法包括基于二进制序列提供二进制序列的编码表示,
其中方法包括使用第一估计参数(wa)确定第一源统计值(at),以及
其中方法包括确定组合源统计值
Figure FDA0002803122240000143
其中第一源统计值(at)与固定非零值组合,以获得组合源统计值,以及
其中方法包括基于组合源统计值确定用于间隔细分的一个或多个范围值,一个或多个范围值用于二进制序列至二进制序列的编码表示的映射。
71.一种计算机程序,当计算机程序在计算机上运行时用于执行如权利要求67-70中任一项所述的方法。
72.一种视频比特流,包括:
表示视频内容的二进制序列的编码表示;以及
配置信息,描述待被用于基于二进制序列的编码表示重构视频内容的视频解码器的配置;
其中配置信息包括描述待被视频解码器用来确定第一源统计值(at)的估计参数的估计参数信息(ws_flag),第一源统计值(at)基于先前解码的二进制值的频率且用于确定用于间隔细分的一个或多个范围值,其中一个或多个范围值用于二进制序列的编码表示至经解码的二进制序列的映射,和/或
其中估计参数信息(ws_flag)描述待被视频解码器用来确定第二源统计值(bt)的估计参数,第二源统计值(bt)基于先前解码的二进制值的频率且用于确定用于间隔细分的一个或多个范围值。
73.如权利要求72所述的视频比特流,其中视频比特流还包括初始化值信息,初始化值信息描述第一源统计值和/或第二源统计值的初始化值。
74.如权利要求72或73所述的视频比特流,其中视频比特流进一步包括指示应增大或减小估计参数的估计参数改变标志(ctu_ws_flag)。
75.如权利要求72-74中任一项所述的视频比特流,
其中估计参数信息描述待被视频解码器用来确定第一源统计值的第一窗大小,且其中估计参数信息描述待被视频解码器用来确定第二源统计值的第二窗大小;或
其中估计参数信息描述第一惯性参数,第一惯性参数确定第一源统计值跟随二进制序列中的经解码的二进制符号的频率的改变的速度,以及
其中估计参数信息描述第二惯性参数,第二惯性参数确定第二源统计值跟随二进制序列中的经解码的二进制符号的频率的改变的速度。
CN201980036029.6A 2018-03-29 2019-03-29 视频解码器和编码器、视频解码和编码方法、及数字存储介质 Active CN112313960B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP18165250 2018-03-29
EP18165250.4 2018-03-29
PCT/EP2019/058057 WO2019185893A1 (en) 2018-03-29 2019-03-29 Video decoder, video encoder, method for decoding a video content, method for encoding a video content, computer program and video bitstream

Publications (2)

Publication Number Publication Date
CN112313960A true CN112313960A (zh) 2021-02-02
CN112313960B CN112313960B (zh) 2023-05-09

Family

ID=61868360

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980036029.6A Active CN112313960B (zh) 2018-03-29 2019-03-29 视频解码器和编码器、视频解码和编码方法、及数字存储介质

Country Status (7)

Country Link
US (2) US11457230B2 (zh)
EP (1) EP3777197A1 (zh)
JP (3) JP7181941B2 (zh)
KR (3) KR102617187B1 (zh)
CN (1) CN112313960B (zh)
TW (2) TWI799785B (zh)
WO (1) WO2019185893A1 (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11113846B2 (en) 2018-08-31 2021-09-07 Hulu, LLC Coefficient context modeling in video coding
EP4140126A4 (en) 2020-05-22 2023-06-21 Beijing Bytedance Network Technology Co., Ltd. SCALING WINDOW IN A SUB-PICTURE SUB-BITSTREAM EXTRACTION PROCESS
WO2023194108A2 (en) * 2022-04-08 2023-10-12 Interdigital Ce Patent Holdings, Sas Systems and methods associated with entropy coding
CN114640695B (zh) * 2022-04-24 2023-04-07 上海交通大学 一种智能工厂基于长序列双预测和informer的高频时序数据有效传输方法
US11977779B2 (en) * 2022-05-11 2024-05-07 Bank Of America Corporation Smart queue for distributing user requests to automated response generating systems
WO2024050099A1 (en) * 2022-09-02 2024-03-07 Beijing Dajia Internet Information Technology Co., Ltd. Methods and devices for intra block copy

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103733622A (zh) * 2011-06-16 2014-04-16 弗劳恩霍夫应用研究促进协会 熵编码中的上下文初始化
CN107667530A (zh) * 2015-05-29 2018-02-06 高通股份有限公司 高级算术译码器

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10701390B2 (en) * 2017-03-14 2020-06-30 Qualcomm Incorporated Affine motion information derivation

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103733622A (zh) * 2011-06-16 2014-04-16 弗劳恩霍夫应用研究促进协会 熵编码中的上下文初始化
CN107667530A (zh) * 2015-05-29 2018-02-06 高通股份有限公司 高级算术译码器

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
ALEXANDER ALSHIN: "CE1 (subset B): multi-parameter probability up-date for CABAC", 《THE JOINT VIDEO EXPLORATION TEAM OF ISO/IEC JTC1/SC29/WG11 AND ITU-T SG.16》 *
AMIR SAID: "EE2 related: Arithmetic coding with progressive context-dependent double-window adaptation response", 《THE JOINT VIDEO EXPLORATION TEAM OF ISO/IEC JTC1/SC29/WG11 AND ITU-T SG.16》 *

Also Published As

Publication number Publication date
JP2023018041A (ja) 2023-02-07
KR20230057474A (ko) 2023-04-28
TW201943274A (zh) 2019-11-01
WO2019185893A1 (en) 2019-10-03
CN112313960B (zh) 2023-05-09
TWI721396B (zh) 2021-03-11
JP7451655B2 (ja) 2024-03-18
TW202143728A (zh) 2021-11-16
KR102523750B1 (ko) 2023-04-20
US20220417538A1 (en) 2022-12-29
US11457230B2 (en) 2022-09-27
US20210014512A1 (en) 2021-01-14
KR20200128754A (ko) 2020-11-16
JP2024063203A (ja) 2024-05-10
KR20240005114A (ko) 2024-01-11
KR102617187B1 (ko) 2023-12-27
JP7181941B2 (ja) 2022-12-01
JP2021518716A (ja) 2021-08-02
TWI799785B (zh) 2023-04-21
EP3777197A1 (en) 2021-02-17

Similar Documents

Publication Publication Date Title
CN112313960A (zh) 视频解码器/编码器、解码/编码视频内容的方法、计算机程序及视频比特流
JP6560393B2 (ja) エントロピー符号化におけるコンテキスト初期化
US8736467B2 (en) Adaptive binarization for arithmetic coding
TWI827010B (zh) 算術編碼器、算術解碼器、視訊編碼器、視訊解碼器、編碼方法、解碼方法及電腦程式
US11012695B2 (en) Context initialization in entropy coding
US11979584B2 (en) Arithmetic encoders and decoders, video encoders and decoders, methods for encoding or decoding symbols, and methods for encoding or decoding video content

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
GR01 Patent grant
GR01 Patent grant