CN115706797A - 多媒体数据编码方法、装置、设备以及介质 - Google Patents

多媒体数据编码方法、装置、设备以及介质 Download PDF

Info

Publication number
CN115706797A
CN115706797A CN202110898283.6A CN202110898283A CN115706797A CN 115706797 A CN115706797 A CN 115706797A CN 202110898283 A CN202110898283 A CN 202110898283A CN 115706797 A CN115706797 A CN 115706797A
Authority
CN
China
Prior art keywords
coefficient
syntax elements
quantization
transform
quantization state
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
CN202110898283.6A
Other languages
English (en)
Inventor
何召亮
张红
谷沉沉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202110898283.6A priority Critical patent/CN115706797A/zh
Priority to PCT/CN2022/101165 priority patent/WO2023011044A1/zh
Publication of CN115706797A publication Critical patent/CN115706797A/zh
Priority to US18/135,910 priority patent/US20230262230A1/en
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/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/146Data rate or code amount at the encoder output
    • H04N19/147Data rate or code amount at the encoder output according to rate distortion criteria
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/124Quantisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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/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/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/146Data rate or code amount at the encoder output
    • H04N19/149Data rate or code amount at the encoder output by estimating the code amount by means of a model, e.g. mathematical model or statistical model
    • 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/172Methods 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 picture, frame or field
    • 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/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/18Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a set of transform coefficients
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • 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)
  • Physics & Mathematics (AREA)
  • Algebra (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本申请实施例提供了一种多媒体数据编码方法、装置、设备以及介质,包括:获取多媒体数据中变换块的M个候选量化状态链;获取变换块中的变换系数i对应的N个语法元素,基于K个语法元素对应的预配置模型标识,获取K个语法元素分别对应的固定概率模型,K小于N;根据变换系数i对应的相邻编码系数,为(N‑K)个语法元素进行上下文建模,得到(N‑K)个语法元素的目标概率模型;根据固定概率模型、目标概率模型及变换系数i的量化重构数值,确定变换系数i的系数率失真损失;根据每个变换系数分别对应的系数率失真损失,确定M个候选量化状态链分别对应的路径率失真损失。采用本申请,可以减少上下文建模,并提高率失真损失的优化速度。

Description

多媒体数据编码方法、装置、设备以及介质
技术领域
本申请涉及多媒体编解码技术领域,尤其涉及一种多媒体数据编码方法、装置、设备以及介质。
背景技术
量化是多媒体数据(例如,视频、音频、图像等)编码技术的核心过程,依赖性标量量化(Dependent Quantization,DQ)作为多媒体数据编码技术中的一种量化方式,可以实现对多媒体数据的压缩处理,以提升编码效率。然而,依赖性标量量化在计算率失真损失时,需要耗费大量的计算开销执行上下文建模,造成率失真损失的计算速度过低。
发明内容
本申请实施例提供一种多媒体数据编码方法、装置、设备以及介质,可以减少上下文建模,并提高率失真损失的优化速度。
本申请实施例一方面提供了一种多媒体数据编码方法,包括:
获取多媒体数据中的变换块对应的M个候选量化状态链;M个候选量化状态链由变换块中的每个变换系数对应的量化状态所确定的,M为正整数;
获取变换块中的变换系数i对应的N个语法元素,基于N个语法元素中的K个语法元素分别对应的预配置模型标识,获取K个语法元素分别对应的固定概率模型;i为小于或等于变换块所包含的系数数量的正整数,N和K均为正整数,且K小于N;
根据变换系数i对应的相邻编码系数,为(N-K)个语法元素进行上下文建模,得到(N-K)个语法元素分别对应的目标概率模型;
根据固定概率模型对K个语法元素的预编码结果、目标概率模型对(N-K)个语法元素的预编码结果,以及变换系数i对应的量化重构数值,确定变换系数i对应的系数率失真损失;
根据变换块中的每个变换系数分别对应的系数率失真损失,确定M个候选量化状态链分别对应的路径率失真损失。
本申请实施例一方面提供了一种多媒体数据编码方法,包括:
获取多媒体数据中的变换块对应的M个候选量化状态链;M个候选量化状态链由变换块中的每个变换系数对应的量化状态所确定的,M为正整数;
获取变换块中的变换系数i对应的N个语法元素,基于N个语法元素分别对应的预配置模型标识,获取N个语法元素分别对应的固定概率模型;i为小于或等于变换块所包含的系数数量的正整数,N为正整数;
根据固定概率模型对N个语法元素的预编码结果,以及变换系数i对应的量化重构数值,确定变换系数i对应的系数率失真损失;
根据变换块中的每个变换系数分别对应的系数率失真损失,确定M个候选量化状态链分别对应的路径率失真损失。
本申请实施例一方面提供了一种多媒体数据编码装置,包括:
第一获取模块,用于获取多媒体数据中的变换块对应的M个候选量化状态链;M个候选量化状态链由变换块中的每个变换系数对应的量化状态所确定的,M为正整数;
第二获取模块,用于获取变换块中的变换系数i对应的N个语法元素,基于N个语法元素中的K个语法元素分别对应的预配置模型标识,获取K个语法元素分别对应的固定概率模型;i为小于或等于变换块所包含的系数数量的正整数,N和K均为正整数,且K小于N;
上下文建模模块,用于根据变换系数i对应的相邻编码系数,为(N-K)个语法元素进行上下文建模,得到(N-K)个语法元素分别对应的目标概率模型;
第一确定模块,用于根据固定概率模型对K个语法元素的预编码结果、目标概率模型对(N-K)个语法元素的预编码结果,以及变换系数i对应的量化重构数值,确定变换系数i对应的系数率失真损失;
第二确定模块,用于根据变换块中的每个变换系数分别对应的系数率失真损失,确定M个候选量化状态链分别对应的路径率失真损失。
其中,多媒体数据包括视频帧图像;
该装置还包括:
区域划分模块,用于获取视频帧图像,根据视频帧图像对应的单元分配信息,对视频帧图像进行划分,得到至少两个像素区域;
变换块选取模块,用于按照至少两个像素区域之间的编码顺序,从至少两个像素区域中确定变换块。
其中,第一获取模块包括:
系数量化单元,用于获取多媒体数据的变换块中所包含的变换系数i和变换系数(i+1),根据第一量化器和第二量化器,获取变换系数i在T个量化状态下的量化值;第一量化器和第二量化器分别包括T/2个量化状态,T为大于1的正整数;
量化状态确定单元,用于根据变换系数i的量化状态下的量化值的奇偶性,确定变换系数i的量化状态对应的后继量化状态,将后继量化状态确定为变换系数(i+1)的量化状态;后继量化状态属于T个量化状态;
状态链生成单元,用于根据变换系数i的量化状态,以及变换系数(i+1)的量化状态,生成变换块对应的M个候选量化状态链。
其中,第二获取模块包括:
语法元素获取单元,用于获取变换块中的变换系数i对应的N个语法元素,从N个语法元素中获取携带预配置模型标识的K个语法元素;
固定概率模型确定单元,用于在变换系数i对应的T个量化状态下,获取K个语法元素分别对应的第一概率模型集合,在第一概率模型集合中,将与预配置模型标识相匹配的概率模型,确定为K个语法元素分别对应的固定概率模型;T为大于1的正整数。
其中,上下文建模模块包括:
相邻系数获取单元,用于在多媒体数据中获取变换系数i在目标量化状态下的相邻编码系数,获取相邻编码系数中的(N-K)个已编码的语法元素;目标量化状态属于T个量化状态,T为大于1的正整数;
概率模型集合获取单元,用于在目标量化状态下,获取变换系数i的(N-K)个语法元素分别对应的第二概率模型集合;
概率模型分配单元,用于根据相邻编码系数对应的(N-K)个已编码的语法元素,从第二概率模型集合中为变换系数i的(N-K)个语法元素分配目标概率模型。
其中,概率模型分配单元包括:
重构数值统计子单元,用于根据相邻编码系数对应的(N-K)个已编码的语法元素,获取相邻编码系数中的编码重构绝对值,根据编码重构绝对值,获取相邻编码系数对应的全局重构累计数值和局部重构累计数值;
对角线位置确定子单元,用于获取变换块中的非零值数量,获取变换系数i在变换块中的水平坐标和垂直坐标,将水平坐标和垂直坐标之和确定为变换系数i对应的对角线位置;
目标概率模型确定子单元,用于根据全局重构累计数值、局部重构累计数值、非零值数量以及对角线位置,从第二概率模型集合中为变换系数i的(N-K)个语法元素分配目标概率模型。
其中,第一确定模块包括:
码率损失获取单元,用于根据固定概率模型对K个语法元素的预编码结果,以及目标概率模型对(N-K)个语法元素的预编码结果,获取变换系数i在T个量化状态下的码率损失;T为大于1的正整数;
失真损失获取单元,用于通过第一量化器和第二量化器,获取变换系数i对应的量化重构数值,根据变换系数i和量化重构数值,确定变换系数i在T个量化状态下的失真损失;
率失真损失确定单元,用于根据失真损失和码率损失,确定变换系数i在T个量化状态下的系数率失真损失。
其中,码率损失获取单元包括:
第一预编码子单元,用于根据固定概率模型,对变换系数i在T个量化状态下的K个语法元素进行预编码,得到K个语法元素分别对应的预编码结果;
第二预编码子单元,用于根据目标概率模型,对变换系数i在T个量化状态下的(N-K)个语法元素进行预编码,得到(N-K)个语法元素分别对应的预编码结果;
码率损失计算子单元,用于根据K个语法元素分别对应的预编码结果,以及(N-K)个语法元素分别对应的预编码结果,获取变换系数i在T个量化状态下的码率损失。
其中,第二确定模块具体用于:
获取变换块中的每个变换系数分别对应的系数率失真损失,对M个候选量化状态链中,每个候选量化状态链分别关联的系数率失真损失进行累计,得到M个候选量化状态链分别对应的路径率失真损失。
其中,该装置还包括:
量化状态链优化模块,用于将最小的路径率失真损失所对应的候选量化状态链,确定为变换块的目标量化状态链;
系数量化值获取模块,用于根据目标量化状态链遍历变换块所包含的变换系数,获取变换块中的每个变换系数分别对应的系数量化值;
编码处理模块,用于对系数量化值进行熵编码处理,得到变换块对应的编码比特流,将编码比特流输出至解码端。
本申请实施例一方面提供了一种多媒体数据编码装置,包括:
第三获取模块,用于获取多媒体数据中的变换块对应的M个候选量化状态链;M个候选量化状态链由变换块中的每个变换系数对应的量化状态所确定的,M为正整数;
第四获取模块,用于获取变换块中的变换系数i对应的N个语法元素,基于N个语法元素分别对应的预配置模型标识,获取N个语法元素分别对应的固定概率模型;i为小于或等于变换块所包含的系数数量的正整数,N为正整数;
第三确定模块,用于根据固定概率模型对N个语法元素的预编码结果,以及变换系数i对应的量化重构数值,确定变换系数i对应的系数率失真损失;
第四确定模块,用于根据变换块中的每个变换系数分别对应的系数率失真损失,确定M个候选量化状态链分别对应的路径率失真损失。
本申请实施例一方面提供了一种计算机设备,包括存储器和处理器,存储器与处理器相连,存储器用于存储计算机程序,处理器用于调用计算机程序,以使得该计算机设备执行本申请实施例中上述一方面提供的方法。
本申请实施例一方面提供了一种计算机可读存储介质,计算机可读存储介质中存储有计算机程序,计算机程序适于由处理器加载并执行,以使得具有处理器的计算机设备执行本申请实施例中上述一方面提供的方法。
根据本申请的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述一方面提供的方法。
本申请实施例可以获取多媒体数据中的变换块对应的M个候选量化状态链,其中M个候选量化状态链由变换块中的每个变换系数对应的量化状态所确定的,M为正整数;即在多媒体数据的编码处理过程中,多媒体数据中的一个变换块可以对应多个候选量化状态链,对于多媒体数据的变换块中的变换系数i,可以获取用于表述该变换系数i的N个语法元素,该N个语法元素可以包括携带预配置模型标识的K个语法元素,可以固定K个语法元素的概率模型,直接基于预配置模型标识获取K个语法元素分别对应的固定概率模型;对于剩余的(N-K)个语法元素,可以通过变换系数i的相邻编码系数,对(N-K)个语法元素进行上下文建模,得到(N-K)个语法元素分别对应的目标概率模型,可以减少上下文建模;进而可以通过固定概率模型、目标概率模型以及变换系数i对应的量化重构数值,确定变换系数i对应的系数率失真损失,基于变换块中的每个变换系数所对应的系数率失真损失,可以统计M个候选量化状态连分别对应的路径率失真损失,通过减少上下文建模,可以减少系数率失真损失的计算开销,进而可以提高率失真损失的优化速度。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种编码系统的结构示意图;
图2是本申请实施例提供的一种多媒体数据编码方法的流程示意图;
图3是本申请实施例提供的一种两个标量量化器的量化规则的示意图;
图4是本申请实施例提供的一种两个标量量化器之间的量化状态转换过程的示意图;
图5是本申请实施例提供的一种M个候选量化状态链的示意图;
图6是本申请实施例提供的一种上下文建模示意图;
图7是本申请实施例提供的一种多媒体数据编码方法的流程示意图;
图8是本申请实施例提供的一种多媒体数据编码装置的结构示意图;
图9是本申请实施例提供的一种多媒体数据编码装置的结构示意图;
图10是本申请实施例提供的一种计算机设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请涉及以下相关技术术语:
通用视频编码(Versatile Video Coding,VVC):VVC为新一代视频编码标准,VVC采用基于块结构的混合编码框架,融合了帧内和帧间预测、变换、量化和熵编码等模块;其中,帧内预测是一种空间域压缩算法,利用当前块周围已重建的像素对当前块进行预测,以去除相邻块之间的空间冗余度,实现更为有效的压缩;帧间预测是一种时间域压缩算法,利用视频图像帧间的相关性,即时间相关性,来达到图像压缩的目的。为了对包含一个或多个图像的视频序列进行编码,一个图像可以被分割为一个或多个切片,每个切片可以包括一个或多个片段。可选的,一个片段可以为编码单元(Coding Unit,CU)、预测单元(Prediction Unit,PU)以及变换单元(Transform Unit,TU),其中编码单元是进行预测、变换、量化和熵编码等处理的基本单元,预测单元是进行帧内预测和帧间预测的基本单元,变换块是进行变换和量化的基本单元,上述三种单元的分离使得预测、变换和编码等各个处理环节更加灵活,也使得各环节的划分更加符合视频图像的纹理特征,保证编码性能的最优化。可选的,本申请实施例中所涉及的“块”可以用于指代图像中的像素区域,例如颜色分量Y(亮度),或者可以用于指代例如编码单元、预测单元、变换单元、系数分组、编码块、预测块以及变换块中的任何一个;另外,“块”还可以用于指代VVC或其余视频编码中指定的宏块和分割,更一般地还可以用于指代各种尺寸的数据阵列。
量化:多媒体数据(例如,可以是视频、音频以及图像等)中通常会存在大量的冗余信息,因此在对多媒体数据进行传输之前,需要对多媒体数据进行编码,去除多媒体数据在空间、时间等维度上的冗余信息,以提升多媒体数据的传输效率。量化是多媒体数据编码处理中的核心过程,提高量化效率可以为多媒体数据的编码任务带来较大的性能增益。在数字信号处理领域,量化可以是指将信号的连续取值(或者大量可能的离散取值)近似为有限多个(或较少的)离散值的过程,如将信号中的单一样本映射到某一固定值,形成多到少的映射,从而达到压缩的目的。量化可以分为编码侧的量化和解码侧的量化,其中,解码侧的量化可以称为反量化,解码侧的反量化过程可以理解为编码侧的量化对应的重构过程。
依赖性标量量化:VVC的量化模块采用了一个新技术:依赖性标量量化。依赖性标量量化是指多媒体数据中的变换系数的一组可容许的重构值依赖于在重构顺序中位于当前变换系数级(transform coefficient level)之前的变换系数级的值。与独立标量量化相比,依赖性标量量化可以允许重建向量在X(此处的X表示变换块中所包含的变换系数的数量,X可以正整数)维向量空间中更密集,这样可以减少当前输入向量和相近的重建向量之间的平均失真。其中,为实现依赖性标量量化,可以定义多个不同重建水平的标量量化器,定义多个标量量化器之间的转换方式,标量量化器的数量可以根据实际需求来确定;为方便描述,下述均以2个标量量化器为例进行描述。
熵编码:经过量化后的变换系数可以进行熵编码以输出比特流。在一个或多个实施例中,可以使用基于上下文的自适应二进制算术编码(Context-based Adaptive BinaryArithmetic Coding,CABAC)将量化后的变换系数的语法元素编码到比特流中。当然,在熵编码过程中,还可以采用除上述CABAC之外的其余编码算法,如香农(Shannon)编码、哈夫曼(Huffman)编码、游程编码等。
请参见图1,图1是本申请实施例提供的一种编码系统的结构示意图。如图1所示,该编码系统可以包括编码设备10a和解码设备,编码设备10a可以是指用于编码多媒体数据的用户终端或服务器,解码设备可以是指用于接收多媒体的用户终端(如图1所示的用户终端10f)或服务器;当编码设备10a和解码设备(如用户终端10f)位于不同的网络时,编码设备10a和解码设备之间可以通过通信总线和交换机进行连接,如图1所示,编码设备10a可以通过通信总线10b和交换机10c与外部的解码设备进行连接。当然,解码设备所在的网络中也可以包括交换机10d和通信总线10e,解码设备可以通过网络中的交换机10d和通信总线10e接收编码设备10a所编码的多媒体数据。可以理解的是,编码设备可以通过传输协议将编码后的多媒体数据传输至解码设备,以使解码设备对接收到的编码数据进行解码,并对解码后的多媒体数据进行展示,此处的传输协议可以包括但不限于:DASH(DynamicAdaptive Streaming over HTTP,动态自适应流媒体传输)协议、HLS(HTTP LiveStreaming,动态码率自适应传输)协议、SMTP(Smart Media Transport Protocaol,智能媒体传输协议)、TCP(Transmission Control Protocol,传输控制协议)。
其中,本申请所涉及的用户终端可以是智能手机、平板电脑、笔记本电脑、车载设备、台式计算机、智能音箱、智能手表等具有多媒体数据编码功能的智能终端;本申请所涉及的服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(Content Delivery Network,CDN)、以及大数据和人工智能平台等基础云计算服务的云服务器,本申请在此不做限制。
可选的,若图1所示的编码系统应用在视频点播场景中,则编码设备10a是向视频点播应用程序提供视频点播服务的服务器,解码设备可以是运行有视频点播应用程序的用户终端,此时的多媒体数据可以是点播视频。当用户终端向服务器发起视频点播请求时,服务器可以获取用户终端所请求的点播视频,并将点播视频中所包含的一个或多个图像分割为一个或多个切片,进而可以通过预测、变换、量化、熵编码等操作,将点播视频压缩为比特流发送至用户终端。用户终端接收到点播视频的比特流后,可以对点播视频的比特流进行解码,得到重构图像,用户终端可以根据重构图像还原并播放点播视频。
可选的,若图1所示的编码系统应用在视频会话场景中,则编码设备10a和解码设备可以为参与视频会话的两个用户终端,如编码设备10a可以为发起视频会话的第一用户终端,解码设备可以为参与视频会话的第二用户终端,此时的多媒体数据可以为会话视频。第一用户终端可以采集会话视频,并将会话视频中所包含的一个或多个图像分割为一个或多个切片,进而可以通过预测、变换、量化、熵编码等操作,将会话视频压缩为比特流发送至第二用户终端。第二用户终端接收到会话视频的比特流后,可以对会话视频的比特流进行解码,得到重构图像,用户终端可以根据重构图像还原并播放会话视频,这样就实现了第一用户终端和第二用户终端之间的视频会话。
请参见图2,图2是本申请实施例提供的一种多媒体数据编码方法的流程示意图。可以理解地,该多媒体数据编码方法由编码系统中的编码设备执行,该编码设备可以为用户终端,或者为独立的服务器,或者为用户终端和服务器组成的系统,或者为计算机程序(包括程序代码);如图2所示,该多媒体数据编码方法可以包括以下步骤:
步骤S101,获取多媒体数据中的变换块对应的M个候选量化状态链;M个候选量化状态链由变换块中的每个变换系数对应的量化状态所确定的,M为正整数。
一个或多个实施例中,编码设备可以从网络资源中直接获取多媒体数据,或者可以通过捕获设备采集真实世界的声音-视觉场景以获取多媒体数据。其中,多媒体数据可以包括视频数据、音频数据、图像数据等;捕获设备可以是指编码设备中的硬件组件,如编码设备为用户终端时,捕获设备可以是指用户终端中的麦克风、摄像头以及传感器等;捕获设备还可以是指与编码设备具有通信连接的硬件装置,此时的捕获设备可以包括音频设备、摄像设备以及传感设备等。其中音频设备可以包括音频传感器、麦克风等;摄像设备可以包括普通摄像头、立体摄像头、光场摄像头等;传感设备可以包括激光设备、雷达设备等。可选的,捕获设备的数量可以为一个或多个,当捕获设备的数量为一个时,该捕获设备可以用于捕获现实空间内固定角度的多媒体数据内容;当捕获设备的数量为多个时,多个捕获设备可以部署在现实空间中的一些特定位置以同时捕获该空间内不同角度的多媒体数据内容。当多媒体数据包括视频数据和音频数据时,捕获设备所捕获的视频数据内容和音频数据内容在时间和空间均保持同步,捕获设备所获取到的多媒体数据内容为多媒体数据的原始数据。为方便描述,下述均以多媒体数据为包含一个或多个视频帧图像的视频数据为例,对多媒体数据的编码过程进行描述。
可选的,对于多媒体数据中的任意一个视频帧图像,在通用视频编码VVC中,一个视频帧图像可以被划分为多个编码树单元(Coding Tree Units,CTU)。当视频帧图像是一个三通道的图像帧时,一个编码树单元可以包含不同颜色分量的编码树块(例如,在颜色空间YUV中可以包括一个亮度编码数块和两个色度编码树块),每个编码树单元的尺寸可以是相同的。在通用视频编码VVC中,一个编码树单元可以通过四叉树结构划分为多个编码单元(CU),也可以称为编码树(coding tree),即编码树单元可以为分割为编码单元的四叉树的根;一个编码单元可以进一步划分为一个或多个预测单元,一个预测单元中的内部样点可以采用相同的预测方式进行预测,相关的预测结果可以采用预测单元为单位传输到解码端;通过对预测单元进行预测并得到残差信息后,一个编码单元同样可以进一步通过四叉树结构划分为若干个变换单元(TU)。需要说明的是,除了采用上述四叉树结构对视频帧图像进行划分之外,还可以采用其余树结构对视频帧图像进行划分,如二叉树结构、三叉树结构等。
通过上述划分方式对视频帧图像进行划分后,可以得到与视频帧图像相关联的编码树单元、编码单元、预测单元以及变换单元,一个“单元”可以包括不同颜色分量的“块”和语法元素,如编码单元可以包括不同颜色分量的编码块,变换单元可以包括不同颜色分量的变换块等。其中,上述描述的划分方式也可以称为视频帧图像的单元分配信息,编码设备在获取到多媒体数据中的视频帧图像后,可以根据该视频帧图像所对应的单元分配信息,对该视频帧图像进行划分,得到至少两个像素区域,此处的像素区域可以理解为上述所提及的“块”,按照至少两个像素区域之间的编码顺序,可以从至少两个像素区域中确定即将进行量化的变换块。
可选的,编码设备在确定上述变换块后,可以通过依赖性标量量化对变换块中所包含的变换系数进行量化处理。为实现依赖性标量量化所定义的多个标量量化器可以包括第一量化器Q0和第二量化器Q1,编码设备可以获取多媒体数据的变换块中所包含的变换系数i和变换系数(i+1),根据第一量化器Q0和第二量化器Q1,获取变换系数i在T个量化状态下的量化值,其中第一量化器Q0和第二量化器Q1分别包括T/2个量化状态,T为大于1的正整数,如本申请实施例中的T可以取值为4;进而可以根据变换系数i的量化状态下的量化值的奇偶性,确定变换系数i的量化状态对应的后继量化状态(也可以称为下一个量化状态),将后继量化状态确定为变换系数(i+1)的量化状态,其中后继量化状态属于T个量化状态;根据变换系数i的量化状态,以及变换系数(i+1)的量化状态,生成变换块对应的M个候选量化状态链;其中,一个变换块可以包括多个变换系数,如a*a个变换系数,变换系数i和变换系数(i+1)为变换块中具有相邻编码顺序的变换系数,变换系数i的编码顺序早于变换系数(i+1)的编码顺序,i为小于或等于变换系数的数量的正整数;变换块中的每个变换系数都可以对应T个量化状态,通过变换块中的每个变换系数所对应的T个量化状态,以及第一量化器Q0和第二量化器Q1之间的状态转换,可以生成变换块对应的M个候选量化状态量,M可以为正整数,如M可以取值为8,9,10,……。
下面将通过图3至图5对M个候选量化状态链的生成过程进行具体描述;其中,M个候选量化状态链的生成过程与依赖性标量量化所定义的两个标量量化器之间的量化规则和状态转移关系相关联。
请参见图3,图3是本申请实施例提供的一种两个标量量化器的量化规则的示意图。如图3所示,第一量化器Q0和第二量化器Q1的特征可以表示如下:第一量化器Q0的重构数值(也可以称为重构水平)可以为量化步长的偶数整数倍,第二量化器Q1的重构数值可以为量化步长(表示为“Δ”)的奇数整数倍。如图3所示的黑色圆点或黑色圆圈所对应的“A”、“B”、“C”以及“D”等可以表示为量化状态,黑色圆点或黑色圆圈所对应的数值可以表示为量化后的变换系数(也可以称为量化值),横坐标中的数值(例如,-9、-8、0、8、9等)可以表示为量化位置,任一个量化位置与量化步长的乘积可以表示为该量化位置对应的重构数值,例如,量化状态A下的量化值“-2”的量化位置为“-4”,那么该量化位置“-4”对应的重构数值为“-4Δ”。其中,量化状态A和量化状态B可以为第一量化器Q0所具有的量化状态,量化状态C和量化状态D可以为第二量化器Q1所具有的量化状态,重构数值可以理解为重构的变换系数,也可以称为重构的变换系数,此时的量化状态的数量T可以取值为4;为方便描述,下面均以T=4为例进行描述。当前变换系数所对应的量化器可以由按照编码/重构顺序在当前变换系数之前的量化值的奇偶校验来确定。
请参见图4,图4是本申请实施例提供的一种两个标量量化器之间的量化状态转换过程的示意图。如图4所示的各个箭头可以用于指示量化状态转移的方向,箭头的起点可以用于指示前一个量化状态(可以称为第一量化状态),箭头的终点可以用于指示后一个量化状态(可以称为第二量化状态),也就是说量化状态的转移过程可以是由第一量化状态转换至第二量化状态,第一量化状态的出现时刻早于第二量化状态的出现时刻。需要说明的是,第一量化状态和第二量化状态可以为同一个量化状态,第一量化状态和第二量化状态也可以是不同的量化状态,例如第一量化状态为量化状态A,经过量化状态转移后,第二量化状态可以依然是量化状态A;或者,第一量化状态为量化状态A,经过量化状态转移后,第二量化状态可以为量化状态C。如图4所示的量化状态转移过程可以按照下述表1所示的量化状态转移表来实现,第二量化状态可以是根据第一量化状态和第一量化状态下的量化值(即量化后的变换系数,该量化值可以表示为y)的奇偶性所确定的,如“(y&1)==1”成立时可以表示第一量化状态下的量化值y为奇数,“(y&1)==0”成立时可以第一量化状态下的量化值y为偶数。表1可以表示如下:
表1
Figure BDA0003198728870000131
上述表1定义了4个量化状态之间的状态转移条件,例如,量化状态A转移至量化状态A的状态转移条件为:第一量化状态为量化状态A,且量化状态A下的量化值y满足(y&1)==0;量化状态A转移至量化状态C的状态转移条件为:第一量化状态为量化状态A,且量化状态A下的量化值y满足(y&1)==1;以此类推。在采用第一量化器Q0和第二量化器Q1对变换块进行量化处理的过程中,四个量化状态(包括量化状态A、量化状态B、量化状态C以及量化状态D)可以按照表1定义的状态转移条件进行量化状态转移。
需要说明的是,上述量化状态A、量化状态B、量化状态C以及量化状态D仅是第一量化器Q0和第二量化器Q1所提供的四个量化状态的一种表示形式;第一量化器Q0和第二量化器Q1所提供的四个量化状态还可以表示为量化状态0、量化状态1、量化状态2以及量化状态3。其中,量化状态A、B、C、D与量化状态0、1、2、3之间可以有不同的对应方式,例如一种对应方式可以是:量化状态A对应量化状态0,量化状态B对应量化状态1,量化状态C对应量化状态2,量化状态D对应量化状态3;再例如另一种对应方式可以是:量化状态A对应量化状态2,量化状态B对应量化状态0,量化状态C对应量化状态1,量化状态D对应量化状态3;等等。
可选的,依赖性标量量化还可以通过两个以上的标量量化器,以及两个以上的标量量化器之间的量化状态转换方式来实现;当然,两个或两个标量量化器所对应的量化状态的数量可以多于4个,还可以采用除上述表1所示的状态转移条件之外的其预计至来处理标量量化器之间的切换。
请参见图5,图5是本申请实施例提供的一种M个候选量化状态链的示意图。如图5所示的每一列黑色圆点可以表示一个变换系数的量化状态选择,如区域20a所包含的黑色圆点可以表示为变换块中的变换系数1对应的四个量化状态选择,区域20b所包含的黑色圆点可以表示为变换块中的变换系数2对应的四个量化状态选择,区域20c所包含的黑色圆点可以表示为变换块中的变换系数3对应的四个量化状态选择,区域20d所包含的黑色圆点可以表示为变换块中的变换系数4对应的四个量化状态选择;上述变换系数1、变换系数2、变换系数3以及变换系数4之间的编码先后顺序可以表示为:变换系数1—>变换系数2—>变换系数3—>变换系数4,即变换系数2为变换系数1的下一个变换系数,变换系数3为变换系数2的下一个变换系数等。如图5所示的E0可以对应上述表1中的量化状态A路径,E1可以对应上述表1中的量化状态B路径,E2可以对应上述表1中的量化状态C路径,E3可以分别对应上述表1中的量化状态D路径。
变换块中的每个变换系数都可以对应4个量化状态,即每一列中位于同一个位置的黑色圆点可以表示为同一个量化状态,如区域20a中的第一个黑色圆点可以表示为量化状态A,区域20a中的第二个黑色圆点可以表示为量化状态B,区域20a中的第三个黑色圆点可以表示为量化状态C,区域20a中的第四个黑色圆点可以表示为量化状态D。每个量化状态都可以存在两条量化路径到下一个变换系数的量化状态,如量化状态A可以转换至下一个变换系数的量化状态A,或者量化状态A还可以转换至下一个变换系数的量化状态C,那么前一个变换系数到下一个变换系数可以存在8条不同的量化路径,如变换系数1到变换系数2可以存在8条不同的量化路径。由于变换块包含多个变换系数,那么按照变换块中所包含的变换系数之间的编码顺序,从第一个变换系数到最后一个变换系数之间存在多条量化路径,此时第一个变换系数到最后一个变换系数之间的多条量化路径,可以称为与变换块相关联的M个候选量化状态链。
步骤S102,获取变换块中的变换系数i对应的N个语法元素,基于N个语法元素中的K个语法元素分别对应的预配置模型标识,获取K个语法元素分别对应的固定概率模型;i为小于或等于变换块所包含的系数数量的正整数,N和K均为正整数,且K小于N。
一个或多个实施例中,在编码阶段中,编码设备可以通过与依赖性标量量化耦合的系数编码方式,对M个候选量化状态链中每个候选量化状态链分别关联的量化后的变换系数(量化值)进行编码,以计算每个候选量化状态链分别对应的路径率失真损失,进而选择最优的路径率失真损失。在计算每个候选量化状态链所对应的路径率失真损失时,需要计算该候选量化状态链所关联的每个变换系数的系数率失真损失,系数率失真损失的计算过程与变换系数的编码过程相关联。
对于变换块中的任一个变换系数i,编码设备可以对量化后的变换系数i进行熵编码以输出比特流,编码变换系数i时需要对该变换系数所对应的语法元素进行编码。例如,编码设备可以扫描变换块中的变换系数i,并对变换系数i对应的N个语法元素进行编码(N可以为正整数,如N可以取值为5),其中N个语法元素可以包括:
重要系数标志(sig_flag,significant_coeff_flag):系数的重要性(零/非零)。
系数绝对水平大于1标志(gt1_flag,coeff_abs_level_greater1_flag):指示系数水平的绝对值是否大于1。
系数绝对水平大于2标志(gt2_flag,coeff_abs_level_greater2_flag):指示系数水平的绝对值是否大于2。
奇偶校验标志(par_flag,parity flag):指示系数水平的奇偶性。
系数剩余绝对水平(abs_remainder,coeff_abs_level_remaining):系数水平的绝对值的剩余值。
其中,上述系数水平可以理解为量化后的变换系数,每个语法元素的编码都可以采用基于上下文的自适应二进制算术编码(CABAC)来将其编码到比特流中。为了使用CABAC进行编码,可以通过二进制化过程将非二进制语法元素值映射到被称为位元(bin)串的二进制序列。对于二进制序列中的位元,可以选择一个上下文模型(也可以称为概率模型),该上下文模型可以是指用于表示一个或多个位元的概率模型,该上下文模型可以是从可用模型中选择得到的,变换系数的上下文模型选择与该变换系数量化时所使用的量化器相关联。可选的,每个位元的上下文模型可以由上下文模型索引(也可以称为上下文索引)识别,并且不同的上下文索引对应于不同的上下文模型。上下文模型所存储的每个位元的概率可以为“1”或者“0”,且可以是自适应的或者静态的。另外,在自适应编码引擎中,可以基于位元的实际编码值来更新上下文模型。
需要说明的是,在计算变换系数i的系数率失真损失时,包含了上述N个语法元素(sig_flag,gt1_flag,gt2_flag,par_flag,abs_remainder)的损失计算,其中,上述三个语法元素(gt1_flag,gt2_flag,par_flag)可以共用一类上下文模型,语法元素(sig_flag)和语法元素(abs_remainder)可以单独使用一类上下文模型。
在一个或多个实施例中,为了提高率失真损失的计算效率,快速选择最优的候选量化状态链,编码设备可以通过固定K个语法元素的上下文模型选择,取消K个语法元素的上下文模型更新。编码设备在获取到变换系数i对应的N个语法元素后,可以从N个语法元素中获取携带预配置模型标识的K个语法元素;在变换系数i对应的T个量化状态下,获取K个语法元素分别对应的第一概率模型集合,在第一概率模型集合中,将与预配置模型标识相匹配的概率模型,确定为K个语法元素分别对应的固定概率模型,其中T为大于1的正整数。
其中,上述预配置模型标识可以为上下文模型索引,或者上下文模型编号等信息,预配置模型标识是可以进行预先设置的。在通用视频编码VVC中,不同的语法元素可以对应不同数量的可用模型(此处的可用模型可以是指VVC中已存在的不同语法元素所对应的上下文模型),如语法元素(sig_flag)可以对应4个可用的上下文模型,当变换块为亮度块(亮度颜色分量下的变换块)时,语法元素(gt1_flag,gt2_flag,par_flag)可以对应21个可用的上下文模型,当变换块为色度块(色度颜色分量下的变换块)时,语法元素(gt1_flag,gt2_flag,par_flag)可以对应11个可用的上下文模型,语法元素(abs_remainder)可以对应4个可用的上下文模型。若变换系数i所对应的N个语法元素中,存在K个语法元素携带预配置模型标识,那么可以固定K个语法元素所对应的上下文模型选择,取消K个语法元素的上下文模型更新。
举例来说,K个语法元素包括语法元素(gt1_flag,gt2_flag,par_flag)和语法元素(abs_remainder)时,此时的K=4,可以将语法元素(abs_remainder)对应的4个可用的上下文模型,确定为语法元素(abs_remainder)对应的第一概率模型集合,在语法元素(abs_remainder)对应的第一概率模型集合中,可以固定使用与预配置模型标识相匹配的上下文模型,此时固定使用的上下文模型可以称为语法元素(abs_remainder)对应的固定概率模型,如预配置模型标识为编号1时,可以固定选择4个可用的上下文模型中的第1个上下文模型作为固定概率模型;若变换块为亮度块,则可以将语法元素(gt1_flag,gt2_flag,par_flag)对应的21个可用的上下文模型,确定为语法元素(gt1_flag,gt2_flag,par_flag)对应的第一概率模型集合,在语法元素(gt1_flag,gt2_flag,par_flag)对应的第一概率模型集合中,可以固定使用与预配置模型标识相匹配的上下文模型,此时固定使用的上下文模型可以称为语法元素(gt1_flag,gt2_flag,par_flag)对应的固定概率模型,如预配置模型标识为编号1时,可以固定选择21个可用的上下文模型中的第1个上下文模型作为固定概率模型;若变换块为色度块,则可以将语法元素(gt1_flag,gt2_flag,par_flag)对应的11个可用的上下文模型,确定为语法元素(gt1_flag,gt2_flag,par_flag)对应的第一概率模型集合,在语法元素(gt1_flag,gt2_flag,par_flag)对应的第一概率模型集合中,可以固定使用与预配置模型标识相匹配的上下文模型,此时固定使用的上下文模型可以称为语法元素(gt1_flag,gt2_flag,par_flag)对应的固定概率模型,如预配置模型标识为编号1时,可以固定选择11个可用的上下文模型中的第1个上下文模型作为固定概率模型;假设变换块所包含的变换系数的数量为X,则通过上述方式可以将上下文模型的更新次数从12*X(一个变换系数可以对应4个量化状态,一个变换系数所对应的N个语法元素对应的3类上下文模型,因此一个变换系数需要更新3*4次上下文模型)降低到4*X(固定使用语法元素gt1_flag,语法元素gt2_flag,语法元素par_flag,语法元素abs_remainder对应的上下文模型,即无需对上述4个语法元素的上下文模型进行更新,只需对语法元素sig_flag的上下文模型进行更新),可以大大降低计算开销,减少复杂度,进而加速多媒体数据的编码速度。可选的,上述K个语法元素可以包括语法元素(sig_flag,gt1_flag,gt2_flag,par_flag,abs_remainder)中的任意一个或多个,如K个语法元素包括语法元素(sig_flag),或者K个语法元素包括语法元素(gt1_flag,gt2_flag,par_flag),或者K个语法元素包括语法元素(abs_remainder),或者K个语法元素包括语法元素(sig_flag,gt1_flag,gt2_flag,par_flag)等。
步骤S103,根据变换系数i对应的相邻编码系数,为(N-K)个语法元素进行上下文建模,得到(N-K)个语法元素分别对应的目标概率模型。
一个或多个实施例中,对于N个语法元素中剩余的(N-K)个语法元素,编码设备可以获取变换系数i对应的相邻编码系数,为(N-K)个语法元素进行上下文建模,得到(N-K)语法元素分别对应的目标概率模型,即根据相邻编码系数,选择用于编码(N-K)个语法元素的目标概率模型。换言之,对于未编码的变换系数i,可以利用已编码系数的信息(例如,已编码的语法元素信息,也可以称为相邻编码系数)作为条件进行编码,该过程可以称为上下文建模,如变换系数i所对应的(N-K)个语法元素的上下文建模需要利用相邻编码系数(相邻区域)的信息,当前的变换系数i所在的量化状态不同时,其相邻编码系数所在的量化状态也不同,即相邻区域的信息是不同的。
可选的,编码设备在编码变换系数i的过程中,可以获取变换系数i在目标量化状态下的相邻编码系数,获取相邻编码系数中的(N-K)个已编码的语法元素,其中目标量化状态属于T个量化状态,T为大于1的正整数,如编码设备可以获取不同量化状态下的相邻编码系数;在目标量化状态下,获取变换系数i的(N-K)个语法元素分别对应的第二概率模型集合;根据相邻编码系数对应的(N-K)个已编码的语法元素,从第二概率模型集合中为变换系数i的(N-K)个语法元素分配目标概率模型。其中,第二概率模型集合可以是指上述剩余的(N-K)个语法元素在在通用视频编码VVC中可用的上下文模型;例如,上述K个语法元素包括语法元素(gt1_flag,gt2_flag,par_flag)和语法元素(abs_remainder)时,剩余的(N-K)个语法元素包括语法元素(sig_flag),此时的第二概率模型集合可以包括语法元素(sig_flag)对应的4个可用的上下文模型。需要说明的是,变换系数i在目标量化状态下对(N-K)个语法元素进行一次上下文建模,可以理解为针对变换系数i的一次上下文模型更新,当变换系数i对应4个量化状态时,(N-K)个语法元素都需要进行4次上下文模型更新。
其中,根据相邻编码系数对N-K)个语法元素进行上下文建模的过程可以包括:编码设备可以根据相邻编码系数对应的(N-K)个已编码的语法元素,获取相邻编码系数中的编码重构绝对值,根据编码重构绝对值,获取相邻编码系数对应的全局重构累计数值和局部重构累计数值;获取变换块中的非零值数量,获取变换系数i在变换块中的水平坐标和垂直坐标,将水平坐标和垂直坐标之和确定为变换系数i对应的对角线位置;根据全局重构累计数值、局部重构累计数值、非零值数量以及对角线位置,从第二概率模型集合中为变换系数i的(N-K)个语法元素分配目标概率模型。其中,编码重构绝对值可以是指相邻编码系数(相邻区域)中的编码重构数值的绝对值;全局重构累计数值可以标记为sumAbs,用于表示相邻编码系数中的编码重构数值的绝对值之和;局部重构累计数值可以标记为sumAbs1,用于表示相邻编码系数中的部分编码重构数值的绝对值之和;非零值数量可以标记为numSig,用于表示当前变换块中的非零值数量;对角线位置可以标记为dis,用于表示当前变换块内的变换系数i的水平坐标和垂直坐标之和。通过非零值数量numSig,局部重构累计数值sumAbs1和对角线位置dis的值,选择用于编码语法元素sig_flag,par_flag,gt1_flag和gt2_flag的概率模型,基于全局重构累计数值sumAbs和非零值数量numSig的值,选择编码语法元素abs_remainder的概率模型。例如,上述(N-K)个语法元素包括语法元素sig_flag时,可以根据相邻编码系数中的局部重构累计数值sumAbs1、当前变换块中的非零值数量numSig以及对角线位置dis,从语法元素sig_flag所对应的第二概率模型集合中,选择用于编码语法元素sig_flag的目标概率模型。
请参见图6,图6是本申请实施例提供的一种上下文建模示意图。如图6所示的图像块的尺寸可以为16*16,该图像块可以为视频帧图像中的编码块,该图像块可以包括16个尺寸为4*4的变换块,如图6所示的黑色区域可以表示为当前变换块中的变换系数i,灰色区域可以表示为编码变换系数i时所使用的相邻编码系数,变换系数i所对应的相邻编码系数的数量可以为5;当然,编码变换系数i所使用的相邻编码系数的数量还可以为其余数值,如6,7,……。编码设备在编码变换系数i的语法元素sig_flag时,5个相邻编码系数的已编码的语法元素sig_flag的任何组合及其映射的取值都可以作为上下文,为语法元素sig_flag进行上下文建模。可选的,5个相邻编码系数的全部或部分已编码的语法元素的信息都可以作为编码变换系数i的上下文。
需要说明的是,对于变换系数i的K个语法元素,直接固定使用第一概率模型集合中的固定概率模型,是无需使用相邻编码系数进行上下文建模的。
步骤S104,根据固定概率模型对K个语法元素的预编码结果、目标概率模型对(N-K)个语法元素的预编码结果,以及变换系数i对应的量化重构数值,确定变换系数i对应的系数率失真损失。
一个或多个实施例中,编码设备可以根据固定概率模型对K个语法元素的预编码结果,以及目标概率模型对(N-K)个语法元素的预编码结果,获取变换系数i在T个量化状态下的码率损失。换言之,编码设备可以根据固定概率模型,对变换系数i在T个量化状态下的K个语法元素进行预编码,得到K个语法元素分别对应的预编码结果;根据目标概率模型,对变换系数i在T个量化状态下的(N-K)个语法元素进行预编码,得到(N-K)个语法元素分别对应的预编码结果;根据K个语法元素分别对应的预编码结果,以及(N-K)个语法元素分别对应的预编码结果,获取变换系数i在T个量化状态下的码率损失。
其中,通用视频编码VVC中的上下文模型可以用于存储与位元是1或0的概率有关的参数,即固定概率模型可以为针对K个语法元素的概率模型,目标概率模型可以为针对(N-K)个语法元素的概率模型,N个语法元素分别对应的预编码结果可以为CABAC算法输出的编码比特,此处的预编码可以是指为了选择最优的量化状态链的编码,此时的编码比特不会传输至解码端。变换系数i的每个语法元素都可以作为CABAC算法的输入,CABAC算法的输出为编码比特。对于输入至CABAC算法的语法元素,确定了该语法元素的概率模型(包括K个语法元素对应的固定概率模型,以及(N-K)个语法元素对应的目标概率模型),可以根据输入的语法元素的数值和该语法元素的概率模型,调整CABAC编码器中的区间起点(low)和区间宽度(range),还可以更新该概率模型。其中,CABAC算法的流程可以包括:接收区间起始点(Low_input)和区间宽度(range_input);接收语法元素和该语法元素的概率模型,计算出数值0所占的区间长度(R0=range_input p(0))以及1所占的区间长度(R1=range_input-R0),p(0)可以表示为概率模型中0所对应的概率;根据接收到的语法元素的取值更新区间起始点(Low_input)和区间宽度(range_input)。若语法元素为1,更新后的区间起始点(Low_input)仍为Low_input,更新后的区间宽度range_output缩小为R1;若接收到的语法元素为0,区间起始点(Low_input)更新为Low_input+R1,区间宽度(range_input)缩小为R0。通过CABAC算法输出的预编码结果,可以计算得到变换系数i在T个量化状态下的码率损失。
编码设备可以通过第一量化器和第二量化器,获取变换系数i对应的量化重构数值,根据变换系数i和量化重构数值(如图3所示的横坐标数值与量化步长之间的乘积),确定变换系数i在T个量化状态下的失真损失;根据失真损失和码率损失,确定变换系数i在T个量化状态下的系数率失真损失。其中,系数率失真损失可以表示为
Figure BDA0003198728870000201
RDC可以表示为系数率失真损失(Rate Distortion cost),W为量化前的变换系数,y为量化后的变换系数(量化值),
Figure BDA0003198728870000202
为量化重构数值,λ为参数,可以进行人为设置;R(y)表示编码量化后的变换系数所需的码率损失(rate loss),
Figure BDA0003198728870000211
表示失真损失,可以使用平方误差进行计算:
Figure BDA0003198728870000212
步骤S105,根据变换块中的每个变换系数分别对应的系数率失真损失,确定M个候选量化状态链分别对应的路径率失真损失。
一个或多个实施例中,对于变换块中的每个变换系数,均可以计算得到系数率失真损失,通过对每个候选量化状态链上的每个变换系数的系数率失真损失进行累加,可以得到每个候选量化状态链分别对应的路径率失真损失。换言之,编码设备可以获取变换块中的每个变换系数分别对应的系数率失真损失,对M个候选量化状态链中,每个候选量化状态链分别关联的系数率失真损失进行累计,得到M个候选量化状态链分别对应的路径率失真损失。
进一步地,编码设备可以将最小的路径率失真损失所对应的候选量化状态链,确定为变换块的目标量化状态链;根据目标量化状态链遍历变换块所包含的变换系数,并保存变换块中的每个变换系数分别对应的系数量化值(量化后的变换系数);通过对系数量化值进行熵编码处理,得到变换块对应的编码比特流,将编码比特流输出至解码端,以使解码端对编码比特流进行解码,并在解码端展示解码后的多媒体数据;此处的熵编码仍然使用上述CABAC算法来实现,目标量化状态链可以为M个候选量化状态链中所选择的最优量化状态链。
本申请实施例中,可以获取多媒体数据中的变换块对应的M个候选量化状态链,其中M个候选量化状态链由变换块中的每个变换系数对应的量化状态所确定的,M为正整数;即在多媒体数据的编码处理过程中,多媒体数据中的一个变换块可以对应多个候选量化状态链,对于多媒体数据的变换块中的变换系数i,可以获取用于表述该变换系数i的N个语法元素,该N个语法元素可以包括携带预配置模型标识的K个语法元素,可以固定K个语法元素的概率模型,直接基于预配置模型标识获取K个语法元素分别对应的固定概率模型;对于剩余的(N-K)个语法元素,可以通过变换系数i的相邻编码系数,对(N-K)个语法元素进行上下文建模,得到(N-K)个语法元素分别对应的目标概率模型,可以减少上下文建模;进而可以通过固定概率模型、目标概率模型以及变换系数i对应的量化重构数值,确定变换系数i对应的系数率失真损失,基于变换块中的每个变换系数所对应的系数率失真损失,可以统计M个候选量化状态连分别对应的路径率失真损失,通过减少上下文建模,可以减少系数率失真损失的计算开销,进而可以提高率失真损失的优化速度,从而可以提高多媒体数据的编码速度。
请参见图7,图7是本申请实施例提供的一种多媒体数据编码方法的流程示意图。可以理解地,该多媒体数据编码方法由编码设备执行,该编码设备可以为用户终端,或者为独立的服务器,或者为用户终端和服务器组成的系统,或者为计算机程序(包括程序代码);如图7所示,该多媒体数据编码方法可以包括以下步骤:
步骤S201,获取多媒体数据中的变换块对应的M个候选量化状态链;M个候选量化状态链由变换块中的每个变换系数对应的量化状态所确定的,M为正整数。
步骤S202,获取变换块中的变换系数i对应的N个语法元素,基于N个语法元素分别对应的预配置模型标识,获取N个语法元素分别对应的固定概率模型;i为小于或等于变换块所包含的系数数量的正整数,N为正整数。
步骤S203,根据固定概率模型对N个语法元素的预编码结果,以及变换系数i对应的量化重构数值,确定变换系数i对应的系数率失真损失。
步骤S204,根据变换块中的每个变换系数分别对应的系数率失真损失,确定M个候选量化状态链分别对应的路径率失真损失。
在一个或多个实施例中,为了进一步提升路径率失真损失的计算速度,可以取消变换系数i的N个语法元素(sig_flag,gt1_flag,gt2_flag,par_flag,abs_remainder)的上下文模型更新。换言之,在本申请一个或多个实施例中,无需根据变换块中的变换系数i的相邻编码系数进行上下文建模,所有的N个语法元素均固定使用与预配置模型标识相匹配的固定概率模型,除此之外,其余实现过程可以参见上述图2所对应实施例中对步骤S101-步骤S105的描述,这里不再进行赘述。
本申请实施例中,可以获取多媒体数据中的变换块对应的M个候选量化状态链,其中M个候选量化状态链由变换块中的每个变换系数对应的量化状态所确定的,M为正整数;即在多媒体数据的编码处理过程中,多媒体数据中的一个变换块可以对应多个候选量化状态链,对于多媒体数据的变换块中的变换系数i,可以获取用于表述该变换系数i的N个语法元素,该N个语法元素均可以携带预配置模型标识,可以固定使用N个语法元素的概率模型(上下文模型),直接基于预配置模型标识获取N个语法元素分别对应的固定概率模型,无需进行上下文建模;进而可以通过固定概率模型和变换系数i对应的量化重构数值,确定变换系数i对应的系数率失真损失,基于变换块中的每个变换系数所对应的系数率失真损失,可以统计M个候选量化状态连分别对应的路径率失真损失,通过减少系数率失真损失的计算开销,进而可以提高率失真损失的优化速度,从而可以提高多媒体数据的编码速度。
请参见图8,图8是本申请实施例提供的一种多媒体数据编码装置的结构示意图,该多媒体数据数据编码可以是运行于计算机设备中的一个计算机程序(包括程序代码),例如该多媒体数据编码装置可以是计算机设备中用于执行编码处理的一个应用软件。如图8所示,该多媒体编码装置1可以包括:第一获取模块10,第二获取模块11,上下文建模模块12,第一确定模块13,第二确定模块14;
第一获取模块10,用于获取多媒体数据中的变换块对应的M个候选量化状态链;M个候选量化状态链由变换块中的每个变换系数对应的量化状态所确定的,M为正整数;
第二获取模块11,用于获取变换块中的变换系数i对应的N个语法元素,基于N个语法元素中的K个语法元素分别对应的预配置模型标识,获取K个语法元素分别对应的固定概率模型;i为小于或等于变换块所包含的系数数量的正整数,N和K均为正整数,且K小于N;
上下文建模模块12,用于根据变换系数i对应的相邻编码系数,为(N-K)个语法元素进行上下文建模,得到(N-K)个语法元素分别对应的目标概率模型;
第一确定模块13,用于根据固定概率模型对K个语法元素的预编码结果、目标概率模型对(N-K)个语法元素的预编码结果,以及变换系数i对应的量化重构数值,确定变换系数i对应的系数率失真损失;
第二确定模块14,用于根据变换块中的每个变换系数分别对应的系数率失真损失,确定M个候选量化状态链分别对应的路径率失真损失。
在一个或多个实施例中,第二确定模块14可以具体用于:
获取变换块中的每个变换系数分别对应的系数率失真损失,对M个候选量化状态链中,每个候选量化状态链分别关联的系数率失真损失进行累计,得到M个候选量化状态链分别对应的路径率失真损失。
其中,第一获取模块10,第二获取模块11,上下文建模模块12,第一确定模块13,第二确定模块14的具体功能实现方式可以参加上述图3所对应实施例中的步骤S101-步骤S105,这里不再进行赘述。
在一个或多个实施例中,多媒体数据包括视频帧图像;
多媒体编码装置1还可以包括:区域划分模块15,变换块选取模块16;
区域划分模块15,用于获取视频帧图像,根据视频帧图像对应的单元分配信息,对视频帧图像进行划分,得到至少两个像素区域;
变换块选取模块16,用于按照至少两个像素区域之间的编码顺序,从至少两个像素区域中确定变换块。
其中,区域划分模块15,变换块选取模块16的具体功能实现方式可以参加上述图3所对应实施例中的步骤S101,这里不再进行赘述。
在一个或多个实施例中,第一获取模块10可以包括:系数量化单元101,量化状态确定单元102,状态链生成单元103;
系数量化单元101,用于获取多媒体数据的变换块中所包含的变换系数i和变换系数(i+1),根据第一量化器和第二量化器,获取变换系数i在T个量化状态下的量化值;第一量化器和第二量化器分别包括T/2个量化状态,T为大于1的正整数;
量化状态确定单元102,用于根据变换系数i的量化状态下的量化值的奇偶性,确定变换系数i的量化状态对应的后继量化状态,将后继量化状态确定为变换系数(i+1)的量化状态;后继量化状态属于T个量化状态;
状态链生成单元103,用于根据变换系数i的量化状态,以及变换系数(i+1)的量化状态,生成变换块对应的M个候选量化状态链。
其中,系数量化单元101,量化状态确定单元102,状态链生成单元103的具体功能实现方式可以参加上述图3所对应实施例中的步骤S101,这里不再进行赘述。
在一个或多个实施例中,第二获取模块11可以包括:语法元素获取单元111,固定概率模型确定单元112;
语法元素获取单元111,用于获取变换块中的变换系数i对应的N个语法元素,从N个语法元素中获取携带预配置模型标识的K个语法元素;
固定概率模型确定单元112,用于在变换系数i对应的T个量化状态下,获取K个语法元素分别对应的第一概率模型集合,在第一概率模型集合中,将与预配置模型标识相匹配的概率模型,确定为K个语法元素分别对应的固定概率模型;T为大于1的正整数。
其中,语法元素获取单元111,固定概率模型确定单元112的具体功能实现方式可以参加上述图3所对应实施例中的步骤S102,这里不再进行赘述。
在一个或多个实施例中,上下文建模模块12可以包括:相邻系数获取单元121,概率模型集合获取单元122,概率模型分配单元123;
相邻系数获取单元121,用于在多媒体数据中获取变换系数i在目标量化状态下的相邻编码系数,获取相邻编码系数中的(N-K)个已编码的语法元素;目标量化状态属于T个量化状态,T为大于1的正整数;
概率模型集合获取单元122,用于在目标量化状态下,获取变换系数i的(N-K)个语法元素分别对应的第二概率模型集合;
概率模型分配单元123,用于根据相邻编码系数对应的(N-K)个已编码的语法元素,从第二概率模型集合中为变换系数i的(N-K)个语法元素分配目标概率模型。
其中,相邻系数获取单元121,概率模型集合获取单元122,概率模型分配单元123的具体功能实现方式可以参加上述图3所对应实施例中的步骤S103,这里不再进行赘述。
在一个或多个实施例中,概率模型分配单元123可以包括:重构数值统计子单元1231,对角线位置确定子单元1232,目标概率模型确定子单元1233;
重构数值统计子单元1231,用于根据相邻编码系数对应的(N-K)个已编码的语法元素,获取相邻编码系数中的编码重构绝对值,根据编码重构绝对值,获取相邻编码系数对应的全局重构累计数值和局部重构累计数值;
对角线位置确定子单元1232,用于获取变换块中的非零值数量,获取变换系数i在变换块中的水平坐标和垂直坐标,将水平坐标和垂直坐标之和确定为变换系数i对应的对角线位置;
目标概率模型确定子单元1233,用于根据全局重构累计数值、局部重构累计数值、非零值数量以及对角线位置,从第二概率模型集合中为变换系数i的(N-K)个语法元素分配目标概率模型。
其中,重构数值统计子单元1231,对角线位置确定子单元1232,目标概率模型确定子单元1233的具体功能实现方式可以参加上述图3所对应实施例中的步骤S103,这里不再进行赘述。
在一个或多个实施例中,第一确定模块13可以包括:码率损失获取单元131,失真损失获取单元132,率失真损失确定单元133;
码率损失获取单元131,用于根据固定概率模型对K个语法元素的预编码结果,以及目标概率模型对(N-K)个语法元素的预编码结果,获取变换系数i在T个量化状态下的码率损失;T为大于1的正整数;
失真损失获取单元132,用于通过第一量化器和第二量化器,获取变换系数i对应的量化重构数值,根据变换系数i和量化重构数值,确定变换系数i在T个量化状态下的失真损失;
率失真损失确定单元133,用于根据失真损失和码率损失,确定变换系数i在T个量化状态下的系数率失真损失。
其中,码率损失获取单元131,失真损失获取单元132,率失真损失确定单元133的具体功能实现方式可以参加上述图3所对应实施例中的步骤S104,这里不再进行赘述。
在一个或多个实施例中,码率损失获取单元131可以包括:第一预编码子单元1311,第二预编码子单元1312,码率损失计算子单元1313;
第一预编码子单元1311,用于根据固定概率模型,对变换系数i在T个量化状态下的K个语法元素进行预编码,得到K个语法元素分别对应的预编码结果;
第二预编码子单元1312,用于根据目标概率模型,对变换系数i在T个量化状态下的(N-K)个语法元素进行预编码,得到(N-K)个语法元素分别对应的预编码结果;
码率损失计算子单元1313,用于根据K个语法元素分别对应的预编码结果,以及(N-K)个语法元素分别对应的预编码结果,获取变换系数i在T个量化状态下的码率损失。
其中,第一预编码子单元1311,第二预编码子单元1312,码率损失计算子单元1313的具体功能实现方式可以参加上述图3所对应实施例中的步骤S104,这里不再进行赘述。
在一个或多个实施例中,该多媒体数据编码装置1可以包括:量化状态链优化模块17,系数量化值获取模块18,编码处理模块19;
量化状态链优化模块17,用于将最小的路径率失真损失所对应的候选量化状态链,确定为变换块的目标量化状态链;
系数量化值获取模块18,用于根据目标量化状态链遍历变换块所包含的变换系数,获取变换块中的每个变换系数分别对应的系数量化值;
编码处理模块19,用于对系数量化值进行熵编码处理,得到变换块对应的编码比特流,将编码比特流输出至解码端。
其中,量化状态链优化模块17,系数量化值获取模块18,编码处理模块19的具体功能实现方式可以参加上述图3所对应实施例中的步骤S105,这里不再进行赘述。
本申请实施例中,可以获取多媒体数据中的变换块对应的M个候选量化状态链,其中M个候选量化状态链由变换块中的每个变换系数对应的量化状态所确定的,M为正整数;即在多媒体数据的编码处理过程中,多媒体数据中的一个变换块可以对应多个候选量化状态链,对于多媒体数据的变换块中的变换系数i,可以获取用于表述该变换系数i的N个语法元素,该N个语法元素可以包括携带预配置模型标识的K个语法元素,可以固定K个语法元素的概率模型,直接基于预配置模型标识获取K个语法元素分别对应的固定概率模型;对于剩余的(N-K)个语法元素,可以通过变换系数i的相邻编码系数,对(N-K)个语法元素进行上下文建模,得到(N-K)个语法元素分别对应的目标概率模型,可以减少上下文建模;进而可以通过固定概率模型、目标概率模型以及变换系数i对应的量化重构数值,确定变换系数i对应的系数率失真损失,基于变换块中的每个变换系数所对应的系数率失真损失,可以统计M个候选量化状态连分别对应的路径率失真损失,通过减少上下文建模,可以减少系数率失真损失的计算开销,进而可以提高率失真损失的优化速度,从而可以提高多媒体数据的编码速度。
请参见图9,图9是本申请实施例提供的一种多媒体数据编码装置的结构示意图,该多媒体数据数据编码可以是运行于计算机设备中的一个计算机程序(包括程序代码),例如该多媒体数据编码装置可以是计算机设备中用于执行编码处理的一个应用软件。如图9所示,该多媒体编码装置2可以包括:第三获取模块21,第四获取模块22,第三确定模块23,第四确定模块24;
第三获取模块21,用于获取多媒体数据中的变换块对应的M个候选量化状态链;M个候选量化状态链由变换块中的每个变换系数对应的量化状态所确定的,M为正整数;
第四获取模块22,用于获取变换块中的变换系数i对应的N个语法元素,基于N个语法元素分别对应的预配置模型标识,获取N个语法元素分别对应的固定概率模型;i为小于或等于变换块所包含的系数数量的正整数,N为正整数;
第三确定模块23,用于根据固定概率模型对N个语法元素的预编码结果,以及变换系数i对应的量化重构数值,确定变换系数i对应的系数率失真损失;
第四确定模块24,用于根据变换块中的每个变换系数分别对应的系数率失真损失,确定M个候选量化状态链分别对应的路径率失真损失。
其中,第三获取模块21,第四获取模块22,第三确定模块23,第四确定模块24的具体功能实现方式可以参加上述图7所对应实施例中的步骤S201-步骤S204,这里不再进行赘述。
本申请实施例中,可以获取多媒体数据中的变换块对应的M个候选量化状态链,其中M个候选量化状态链由变换块中的每个变换系数对应的量化状态所确定的,M为正整数;即在多媒体数据的编码处理过程中,多媒体数据中的一个变换块可以对应多个候选量化状态链,对于多媒体数据的变换块中的变换系数i,可以获取用于表述该变换系数i的N个语法元素,该N个语法元素均可以携带预配置模型标识,可以固定使用N个语法元素的概率模型(上下文模型),直接基于预配置模型标识获取N个语法元素分别对应的固定概率模型,无需进行上下文建模;进而可以通过固定概率模型和变换系数i对应的量化重构数值,确定变换系数i对应的系数率失真损失,基于变换块中的每个变换系数所对应的系数率失真损失,可以统计M个候选量化状态连分别对应的路径率失真损失,通过减少系数率失真损失的计算开销,进而可以提高率失真损失的优化速度,从而可以提高多媒体数据的编码速度。
请参见图10,图10是本申请实施例提供的一种计算机设备的结构示意图。如图10所示,该计算机设备1000可以为用户终端,还可以为服务器,这里将不对其进行限制。为便于理解,本申请以计算机设备为用户终端为例,该计算机设备1000可以包括:处理器1001,网络接口1004和存储器1005,此外,该计算机设备1000还可以包括:用户接口1003,和至少一个通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。其中,用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1004可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。存储器1005可选的还可以是至少一个位于远离前述处理器1001的存储装置。如图10所示,作为一种计算机可读存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及设备控制应用程序。
其中,该计算机设备1000中的网络接口1004还可以提供网络通讯功能,且可选用户接口1003还可以包括显示屏(Display)、键盘(Keyboard)。在图10所示的计算机设备1000中,网络接口1004可提供网络通讯功能;而用户接口1003主要用于为用户提供输入的接口;而处理器1001可以用于调用存储器1005中存储的设备控制应用程序,以实现:
获取多媒体数据中的变换块对应的M个候选量化状态链;M个候选量化状态链由变换块中的每个变换系数对应的量化状态所确定的,M为正整数;
获取变换块中的变换系数i对应的N个语法元素,基于N个语法元素中的K个语法元素分别对应的预配置模型标识,获取K个语法元素分别对应的固定概率模型;i为小于或等于变换块所包含的系数数量的正整数,N和K均为正整数,且K小于N;
根据变换系数i对应的相邻编码系数,为(N-K)个语法元素进行上下文建模,得到(N-K)个语法元素分别对应的目标概率模型;
根据固定概率模型对K个语法元素的预编码结果、目标概率模型对(N-K)个语法元素的预编码结果,以及变换系数i对应的量化重构数值,确定变换系数i对应的系数率失真损失;
根据变换块中的每个变换系数分别对应的系数率失真损失,确定M个候选量化状态链分别对应的路径率失真损失。
或者,处理器1001还可以实现:
获取多媒体数据中的变换块对应的M个候选量化状态链;M个候选量化状态链由变换块中的每个变换系数对应的量化状态所确定的,M为正整数;
获取变换块中的变换系数i对应的N个语法元素,基于N个语法元素分别对应的预配置模型标识,获取N个语法元素分别对应的固定概率模型;i为小于或等于变换块所包含的系数数量的正整数,N为正整数;
根据固定概率模型对N个语法元素的预编码结果,以及变换系数i对应的量化重构数值,确定变换系数i对应的系数率失真损失;
根据变换块中的每个变换系数分别对应的系数率失真损失,确定M个候选量化状态链分别对应的路径率失真损失。
应当理解,本申请实施例中所描述的计算机设备1000可执行前文图2和图7任一个所对应实施例中对多媒体数据编码方法的描述,也可执行前文图8所对应实施例中对多媒体数据编码装置1的描述,或者执行前文图9所对应实施例中对多媒体数据编码装置2的描述,在此不再赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。
此外,这里需要指出的是:本申请实施例还提供了一种计算机可读存储介质,且计算机可读存储介质中存储有前文提及的多媒体数据编码装置1所执行的计算机程序,且计算机程序包括程序指令,当处理器执行程序指令时,能够执行前文图2和图7任一个所对应实施例中对多媒体数据编码方法的描述,因此,这里将不再进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。对于本申请所涉及的计算机可读存储介质实施例中未披露的技术细节,请参照本申请方法实施例的描述。作为示例,程序指令可被部署在一个计算设备上执行,或者在位于一个地点的多个计算设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个计算设备上执行,分布在多个地点且通过通信网络互连的多个计算设备可以组成区块链系统。
此外,需要说明的是:本申请实施例还提供了一种计算机程序产品或计算机程序,该计算机程序产品或者计算机程序可以包括计算机指令,该计算机指令可以存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器可以执行该计算机指令,使得该计算机设备执行前文图2和图7任一个所对应实施例中对多媒体数据编码方法的描述,因此,这里将不再进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。对于本申请所涉及的计算机程序产品或者计算机程序实施例中未披露的技术细节,请参照本申请方法实施例的描述。
需要说明的是,对于前述的各个方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某一些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。
本申请实施例方法中的步骤可以根据实际需要进行顺序调整、合并和删减。
本申请实施例装置中的模块可以根据实际需要进行合并、划分和删减。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,计算机程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,存储介质可为磁碟、光盘、只读存储器(Read-Only Memory,ROM)或随机存储器(Random Access Memory,RAM)等。
以上所揭露的仅为本申请较佳实施例而已,当然不能以此来限定本申请之权利范围,因此依本申请权利要求所作的等同变化,仍属本申请所涵盖的范围。

Claims (15)

1.一种多媒体数据编码方法,其特征在于,包括:
获取多媒体数据中的变换块对应的M个候选量化状态链;所述M个候选量化状态链由所述变换块中的每个变换系数对应的量化状态所确定的,M为正整数;
获取所述变换块中的变换系数i对应的N个语法元素,基于所述N个语法元素中的K个语法元素分别对应的预配置模型标识,获取所述K个语法元素分别对应的固定概率模型;i为小于或等于所述变换块所包含的系数数量的正整数,N和K均为正整数,且K小于N;
根据所述变换系数i对应的相邻编码系数,为(N-K)个语法元素进行上下文建模,得到所述(N-K)个语法元素分别对应的目标概率模型;
根据所述固定概率模型对所述K个语法元素的预编码结果、所述目标概率模型对所述(N-K)个语法元素的预编码结果,以及所述变换系数i对应的量化重构数值,确定所述变换系数i对应的系数率失真损失;
根据所述变换块中的每个变换系数分别对应的系数率失真损失,确定所述M个候选量化状态链分别对应的路径率失真损失。
2.根据权利要求1所述的方法,其特征在于,所述多媒体数据包括视频帧图像;
所述方法还包括:
获取所述视频帧图像,根据所述视频帧图像对应的单元分配信息,对所述视频帧图像进行划分,得到至少两个像素区域;
按照所述至少两个像素区域之间的编码顺序,从所述至少两个像素区域中确定所述变换块。
3.根据权利要求1所述的方法,其特征在于,所述获取多媒体数据中的变换块对应的M个候选量化状态链,包括:
获取所述多媒体数据的变换块中所包含的变换系数i和变换系数(i+1),根据第一量化器和第二量化器,获取所述变换系数i在T个量化状态下的量化值;所述第一量化器和所述第二量化器分别包括T/2个量化状态,T为大于1的正整数;
根据所述变换系数i的量化状态下的量化值的奇偶性,确定所述变换系数i的量化状态对应的后继量化状态,将所述后继量化状态确定为所述变换系数(i+1)的量化状态;所述后继量化状态属于所述T个量化状态;
根据所述变换系数i的量化状态,以及所述变换系数(i+1)的量化状态,生成所述变换块对应的M个候选量化状态链。
4.根据权利要求1所述的方法,其特征在于,所述获取所述变换块中的变换系数i对应的N个语法元素,基于所述N个语法元素中的K个语法元素分别对应的预配置模型标识,获取所述K个语法元素分别对应的固定概率模型,包括:
获取所述变换块中的变换系数i对应的N个语法元素,从所述N个语法元素中获取携带所述预配置模型标识的K个语法元素;
在所述变换系数i对应的T个量化状态下,获取所述K个语法元素分别对应的第一概率模型集合,在所述第一概率模型集合中,将与所述预配置模型标识相匹配的概率模型,确定为所述K个语法元素分别对应的固定概率模型;T为大于1的正整数。
5.根据权利要求1所述的方法,其特征在于,所述根据所述变换系数i对应的相邻编码系数,为(N-K)个语法元素进行上下文建模,得到用于编码所述(N-K)个语法元素的目标概率模型,包括:
在所述多媒体数据中获取所述变换系数i在目标量化状态下的相邻编码系数,获取所述相邻编码系数中的(N-K)个已编码的语法元素;所述目标量化状态属于T个量化状态,T为大于1的正整数;
在所述目标量化状态下,获取所述变换系数i的(N-K)个语法元素分别对应的第二概率模型集合;
根据所述相邻编码系数对应的(N-K)个已编码的语法元素,从所述第二概率模型集合中为所述变换系数i的(N-K)个语法元素分配目标概率模型。
6.根据权利要求5所述的方法,其特征在于,所述根据所述相邻编码系数对应的(N-K)个已编码的语法元素,从所述第二概率模型集合中为所述变换系数i的(N-K)个语法元素分配目标概率模型,包括:
根据所述相邻编码系数对应的(N-K)个已编码的语法元素,获取所述相邻编码系数中的编码重构绝对值,根据所述编码重构绝对值,获取所述相邻编码系数对应的全局重构累计数值和局部重构累计数值;
获取所述变换块中的非零值数量,获取所述变换系数i在所述变换块中的水平坐标和垂直坐标,将所述水平坐标和垂直坐标之和确定为所述变换系数i对应的对角线位置;
根据所述全局重构累计数值、所述局部重构累计数值、所述非零值数量以及所述对角线位置,从所述第二概率模型集合中为所述变换系数i的(N-K)个语法元素分配目标概率模型。
7.根据权利要求1所述的方法,其特征在于,所述根据所述固定概率模型对所述K个语法元素的预编码结果、所述目标概率模型对所述(N-K)个语法元素的预编码结果,以及所述变换系数i对应的量化重构数值,确定所述变换系数i对应的系数率失真损失,包括:
根据所述固定概率模型对所述K个语法元素的预编码结果,以及所述目标概率模型对所述(N-K)个语法元素的预编码结果,获取所述变换系数i在T个量化状态下的码率损失;T为大于1的正整数;
通过第一量化器和第二量化器,获取所述变换系数i对应的量化重构数值,根据所述变换系数i和所述量化重构数值,确定所述变换系数i在所述T个量化状态下的失真损失;
根据所述失真损失和所述码率损失,确定所述变换系数i在所述T个量化状态下的系数率失真损失。
8.根据权利要求7所述的方法,其特征在于,所述根据所述固定概率模型对所述K个语法元素的预编码结果,以及所述目标概率模型对所述(N-K)个语法元素的预编码结果,获取所述变换系数i在T个量化状态下的码率损失,包括:
根据所述固定概率模型,对所述变换系数i在所述T个量化状态下的K个语法元素进行预编码,得到所述K个语法元素分别对应的预编码结果;
根据所述目标概率模型,对所述变换系数i在所述T个量化状态下的(N-K)个语法元素进行预编码,得到所述(N-K)个语法元素分别对应的预编码结果;
根据所述K个语法元素分别对应的预编码结果,以及所述(N-K)个语法元素分别对应的预编码结果,获取所述变换系数i在所述T个量化状态下的码率损失。
9.根据权利要求1所述的方法,其特征在于,所述根据所述变换块中的每个变换系数分别对应的系数率失真损失,确定所述M个候选量化状态链分别对应的路径率失真损失,包括:
获取所述变换块中的每个变换系数分别对应的系数率失真损失,对所述M个候选量化状态链中,每个候选量化状态链分别关联的系数率失真损失进行累计,得到所述M个候选量化状态链分别对应的路径率失真损失。
10.根据权利要求1所述的方法,其特征在于,还包括:
将最小的路径率失真损失所对应的候选量化状态链,确定为所述变换块的目标量化状态链;
根据所述目标量化状态链遍历所述变换块所包含的变换系数,获取所述变换块中的每个变换系数分别对应的系数量化值;
对所述系数量化值进行熵编码处理,得到所述变换块对应的编码比特流,将所述编码比特流输出至解码端。
11.一种多媒体数据编码方法,其特征在于,包括:
获取多媒体数据中的变换块对应的M个候选量化状态链;所述M个候选量化状态链由所述变换块中的每个变换系数对应的量化状态所确定的,M为正整数;
获取所述变换块中的变换系数i对应的N个语法元素,基于所述N个语法元素分别对应的预配置模型标识,获取所述N个语法元素分别对应的固定概率模型;i为小于或等于所述变换块所包含的系数数量的正整数,N为正整数;
根据所述固定概率模型对所述N个语法元素的预编码结果,以及所述变换系数i对应的量化重构数值,确定所述变换系数i对应的系数率失真损失;
根据所述变换块中的每个变换系数分别对应的系数率失真损失,确定所述M个候选量化状态链分别对应的路径率失真损失。
12.一种多媒体数据编码装置,其特征在于,包括:
第一获取模块,用于获取多媒体数据中的变换块对应的M个候选量化状态链;所述M个候选量化状态链由所述变换块中的每个变换系数对应的量化状态所确定的,M为正整数;
第二获取模块,用于获取所述变换块中的变换系数i对应的N个语法元素,基于所述N个语法元素中的K个语法元素分别对应的预配置模型标识,获取所述K个语法元素分别对应的固定概率模型;i为小于或等于所述变换块所包含的系数数量的正整数,N和K均为正整数,且K小于N;
上下文建模模块,用于根据所述变换系数i对应的相邻编码系数,为(N-K)个语法元素进行上下文建模,得到所述(N-K)个语法元素分别对应的目标概率模型;
第一确定模块,用于根据所述固定概率模型对所述K个语法元素的预编码结果、所述目标概率模型对所述(N-K)个语法元素的预编码结果,以及所述变换系数i对应的量化重构数值,确定所述变换系数i对应的系数率失真损失;
第二确定模块,用于根据所述变换块中的每个变换系数分别对应的系数率失真损失,确定所述M个候选量化状态链分别对应的路径率失真损失。
13.一种多媒体数据编码装置,其特征在于,包括:
第三获取模块,用于获取多媒体数据中的变换块对应的M个候选量化状态链;所述M个候选量化状态链由所述变换块中的每个变换系数对应的量化状态所确定的,M为正整数;
第四获取模块,用于获取所述变换块中的变换系数i对应的N个语法元素,基于所述N个语法元素分别对应的预配置模型标识,获取所述N个语法元素分别对应的固定概率模型;i为小于或等于所述变换块所包含的系数数量的正整数,N为正整数;
第三确定模块,用于根据所述固定概率模型对所述N个语法元素的预编码结果,以及所述变换系数i对应的量化重构数值,确定所述变换系数i对应的系数率失真损失;
第四确定模块,用于根据所述变换块中的每个变换系数分别对应的系数率失真损失,确定所述M个候选量化状态链分别对应的路径率失真损失。
14.一种计算机设备,其特征在于,包括存储器和处理器;
所述存储器与所述处理器相连,所述存储器用于存储计算机程序,所述处理器用于调用所述计算机程序,以使得所述计算机设备执行权利要求1-11任一项所述的方法。
15.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,所述计算机程序适于由处理器加载并执行,以使得具有所述处理器的计算机设备执行权利要求1-11任一项所述的方法。
CN202110898283.6A 2021-08-05 2021-08-05 多媒体数据编码方法、装置、设备以及介质 Pending CN115706797A (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN202110898283.6A CN115706797A (zh) 2021-08-05 2021-08-05 多媒体数据编码方法、装置、设备以及介质
PCT/CN2022/101165 WO2023011044A1 (zh) 2021-08-05 2022-06-24 数据处理方法、装置、计算机设备、存储介质及程序产品
US18/135,910 US20230262230A1 (en) 2021-08-05 2023-04-18 Data processing method and apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110898283.6A CN115706797A (zh) 2021-08-05 2021-08-05 多媒体数据编码方法、装置、设备以及介质

Publications (1)

Publication Number Publication Date
CN115706797A true CN115706797A (zh) 2023-02-17

Family

ID=85155164

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110898283.6A Pending CN115706797A (zh) 2021-08-05 2021-08-05 多媒体数据编码方法、装置、设备以及介质

Country Status (3)

Country Link
US (1) US20230262230A1 (zh)
CN (1) CN115706797A (zh)
WO (1) WO2023011044A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN118317091B (zh) * 2024-06-07 2024-09-06 浙江大华技术股份有限公司 率失真优化方法、图像编码方法、装置及计算机存储介质

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6128346A (en) * 1998-04-14 2000-10-03 Motorola, Inc. Method and apparatus for quantizing a signal in a digital system
US11019346B2 (en) * 2018-07-02 2021-05-25 Qualcomm Incorporated Coefficient coding with grouped bypass remaining levels for dependent quantization
US11483575B2 (en) * 2018-08-24 2022-10-25 Hfi Innovation Inc. Coding transform coefficients with throughput constraints
KR20230170824A (ko) * 2018-09-24 2023-12-19 프라운호퍼-게젤샤프트 추르 푀르데룽 데어 안제반텐 포르슝 에 파우 종속 스칼라 양자화를 사용하거나 이와 조합하는 데에 적합한 변환 계수의 효율적인 코딩
CN112956205B (zh) * 2018-10-05 2024-06-11 罗斯德尔动力有限责任公司 变换系数编码方法及其装置
US11523136B2 (en) * 2019-01-28 2022-12-06 Hfi Innovation Inc. Methods and apparatuses for coding transform blocks
SG11202108108TA (en) * 2019-03-12 2021-09-29 Interdigital Vc Holdings Inc Flexible allocation of regular bins in residual coding for video coding

Also Published As

Publication number Publication date
WO2023011044A1 (zh) 2023-02-09
US20230262230A1 (en) 2023-08-17

Similar Documents

Publication Publication Date Title
KR102015374B1 (ko) 색차 성분 양자화 매개 변수 결정 방법 및 이러한 방법을 사용하는 장치
KR102638710B1 (ko) 인터 예측을 위한 인코더, 디코더 및 대응 방법
JP7401556B2 (ja) イントラ予測のためのエンコーダ、デコーダおよび対応する方法
JP7170669B2 (ja) 最後の有意係数フラグのコーディング
WO2015096822A1 (zh) 图像编码、解码方法及装置
WO2013109026A1 (ko) 엔트로피 부호화/복호화 방법 및 그 장치
CN104081777A (zh) 用于视频译码的残余四叉树(rqt)译码
WO2016172994A1 (zh) 图像编码、解码方法及装置
KR102165070B1 (ko) 콘텍스트 트리를 사용한 비디오 신택스 엘리먼트들의 코딩
JP2021503247A (ja) 変換係数レベルコーディング方法およびその装置
WO2019223480A1 (zh) 视频数据解码方法及装置
JP2023517428A (ja) 複数のレイヤのための共有デコーダピクチャバッファ
US20230353785A1 (en) Low complexity history usage for rice parameter derivation for high bit-depth video coding
US20230262230A1 (en) Data processing method and apparatus
US20220046253A1 (en) Video encoding and decoding methods and apparatuses, device, and storage medium
KR102226893B1 (ko) 영상 복호화 방법 및 이를 이용하는 장치
US20140269896A1 (en) Multi-Frame Compression
US11711515B2 (en) Coding method and system with improved transform domain coefficient computation
CN116527909A (zh) 编码参数的传输方法、装置、设备、存储介质及程序产品
CN115866297A (zh) 视频处理方法、装置、设备及存储介质
CN115086664A (zh) 未匹配像素的解码方法、编码方法、解码器以及编码器
WO2012118359A2 (ko) 색차 성분 양자화 매개 변수 결정 방법 및 이러한 방법을 사용하는 장치
WO2024082632A1 (zh) 视频编解码方法、装置、计算机可读介质及电子设备
CN118235413A (zh) 不可分离初级变换设计方法和装置
CN118435604A (zh) 不可分离初级变换设计方法和设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40081609

Country of ref document: HK