CN115996295A - 多媒体数据处理方法、装置、设备及存储介质 - Google Patents

多媒体数据处理方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN115996295A
CN115996295A CN202111221892.4A CN202111221892A CN115996295A CN 115996295 A CN115996295 A CN 115996295A CN 202111221892 A CN202111221892 A CN 202111221892A CN 115996295 A CN115996295 A CN 115996295A
Authority
CN
China
Prior art keywords
data block
reference data
encoded
block
blocks
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
CN202111221892.4A
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 CN202111221892.4A priority Critical patent/CN115996295A/zh
Priority to EP22882501.4A priority patent/EP4422172A1/en
Priority to PCT/CN2022/118492 priority patent/WO2023065890A1/zh
Priority to JP2023560063A priority patent/JP2024535963A/ja
Priority to KR1020237037577A priority patent/KR20230162988A/ko
Publication of CN115996295A publication Critical patent/CN115996295A/zh
Priority to US18/502,733 priority patent/US20240155137A1/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/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/74Image or video pattern matching; Proximity measures in feature spaces
    • G06V10/75Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries
    • G06V10/751Comparing pixel values or logical combinations thereof, or feature values having positional relevance, e.g. template matching
    • 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/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Databases & Information Systems (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本申请实施例公开了一种多媒体数据处理方法、装置、设备及存储介质,其中,该方法包括:获取与多媒体数据帧中的待编码数据块相关联的全局参考数据块集合和局部参考数据块集合;该全局参考数据块包括所述多媒体数据帧中与所述待编码数据块之间不具有相邻关系的已编码的数据块,所述局部参考数据块集合包括所述多媒体数据帧中与所述待编码数据块之间具有相邻关系的已编码的数据块;从所述全局参考数据块集合和所述局部参考数据块集合中,选择用于对所述待编码数据块进行预测编码的参考数据块。通过本申请能够有效提高对媒体数据的编码性能。

Description

多媒体数据处理方法、装置、设备及存储介质
技术领域
本申请涉及互联网技术领域,尤其涉及一种多媒体数据处理方法、装置、设备及存储介质。
背景技术
在多媒体数据处理过程中,通常采用帧内预测编码方式对多媒体数据帧进行预测编码,这样能够提升多媒体数据帧的编码性能,因此,帧内预测编码方式已经广泛应用到多媒体数据处理过程中。但实践中发现,现有的帧内预测编码方式中,由于用于进行预测编码的参考数据块有限,导致多媒体数据帧的编码性能较差。
发明内容
本申请实施例所要解决的技术问题在于,提供一种多媒体数据处理方法、装置、设备及存储介质,能够提高多媒体数据帧的编码性能。
本申请实施例一方面提供一种多媒体数据处理方法,包括:
获取与多媒体数据帧中的待编码数据块相关联的全局参考数据块集合和局部参考数据块集合;所述全局参考数据块集合包括所述多媒体数据帧中与所述待编码数据块之间不具有相邻关系的已编码的数据块,所述局部参考数据块集合包括所述多媒体数据帧中与所述待编码数据块之间具有相邻关系的已编码的数据块;
从所述全局参考数据块集合和所述局部参考数据块集合中,选择用于对所述待编码数据块进行预测编码的参考数据块。
本申请实施例一方面提供一种多媒体数据处理方法,包括:
获取与多媒体数据帧中的待解码数据块相关联的全局参考数据块集合和局部参考数据块集合;所述全局参考数据块集合包括所述多媒体数据帧中与所述待解码数据块之间不具有相邻关系的已解码的数据块,所述局部参考数据块集合包括所述多媒体数据帧中与所述待解码数据块之间具有相邻关系的已解码的数据块;
从所述全局参考数据块集合和所述局部参考数据块集合中,选择用于对所述待解码数据块进行解码的参考数据块。
本申请实施例一方面提供一种多媒体数据处理装置,包括:
获取模块,用于获取与多媒体数据帧中的待编码数据块相关联的全局参考数据块集合和局部参考数据块集合;所述全局参考数据块集合包括所述多媒体数据帧中与所述待编码数据块之间不具有相邻关系的已编码的数据块,所述局部参考数据块集合包括所述多媒体数据帧中与所述待编码数据块之间具有相邻关系的已编码的数据块;
选择模块,用于从所述全局参考数据块集合和所述局部参考数据块集合中,选择用于对所述待编码数据块进行预测编码的参考数据块。
本申请实施例一方面提供一种多媒体数据处理装置,包括:
获取模块,用于获取与多媒体数据帧中的待解码数据块相关联的全局参考数据块集合和局部参考数据块集合;所述全局参考数据块集合包括所述多媒体数据帧中与所述待解码数据块之间不具有相邻关系的已解码的数据块,所述局部参考数据块集合包括所述多媒体数据帧中与所述待解码数据块之间具有相邻关系的已解码的数据块;
选择模块,用于从所述全局参考数据块集合和所述局部参考数据块集合中,选择用于对所述待解码数据块进行解码的参考数据块。
本申请一方面提供了一种计算机设备,包括:处理器及存储器;
其中,上述存储器用于存储计算机程序,上述处理器用于调用上述计算机程序,以执行上述方法中的步骤。
本申请实施例一方面提供了一种计算机可读存储介质,上述计算机可读存储介质存储有计算机程序,上述计算机程序包括程序指令,上述程序指令当被处理器执行时,以执行上述方法中的步骤。
本申请实施例一方面提供了一种计算机程序产品,包括计算机程序/指令,所述计算机程序/指令被处理器执行时实现上述方法的步骤。
本申请中,计算机设备可以获取该全局参考数据块集合和局部参考数据块集合,有利于编码终端可以根据应用场景或用户需求等自适应地,从该全局参考数据块集合和局部参考数据块集合中选择参考数据块,根据参考数据块对该多媒体数据帧中待编码数据块进行预测编码;扩展了参考数据块的选择范围,可提高对多媒体数据帧的编码性能。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请提供的一种视频处理的流程图;
图2是本申请提供的针对多媒体数据的处理方法的流程示意图;
图3是本申请提供的一种编码数据块的示意图;
图4是本申请提供一种多媒体数据帧的帧间编码的场景示意图;
图5是本申请提供一种多媒体数据帧的帧内块复制的场景示意图;
图6是本申请提供一种多媒体数据帧的参考数据块的内存重用的场景示意图;
图7是本申请提供的一种多媒体数据处理方法的流程意图;
图8是本申请提供一种全局参考数据集合、局部参考数据块集合、待编码数据块之间的位置关系示意图;
图9是本申请提供一种全局参考数据集合、局部参考数据块集合、待编码数据块之间的位置关系示意图;
图10是本申请提供的一种多媒体数据处理方法的流程意图;
图11是本申请提供的一种多媒体数据处理装置的结构示意图;
图12是本申请提供的一种多媒体数据处理装置的结构示意图;
图13是本申请实施例提供的一种计算机设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请实施例涉及多媒体数据的处理技术。其中,多媒体数据(或称之为媒体数据)是指由内容上相互关联的文本、图形、图像、声音、动画、活动图像等媒体数据所形成的复合数据,而在本申请实施例所提及的多媒体数据,主要包括由图像构成的图像数据、或者由图像和声音等构成的视频数据,且本申请实施例中,主要以多媒体数据为视频数据为例,对多媒体数据的数据处理过程进行详细说明,而在多媒体数据为图像数据时,可参见本发明实施例。本申请实施例涉及的对多媒体数据的处理过程,主要包括媒体数据采集,媒体数据编码,媒体数据文件封装,媒体数据文件传输,媒体数据解码和最终的数据呈现,而在该多媒体数据为视频数据时,那么,针对视频数据的完整处理过程可如图1所示,具体可包括:视频采集,视频编码,视频文件封装,视频传输,视频文件解封装,视频解码和最终的视频呈现。
视频采集用于将模拟视频转换为数字视频,并按数字视频文件的格式进行保存,也就是说,视频采集可将视频信号转换为二进制数字信息,其中,由视频信号转换为的二进制信息是一种二进制数据流,该二进制信息也可称为该视频信号的码流或者位流(Bitstream),视频编码则是值通过压缩技术,将原始视频格式的文件转换为另一种视频格式文件。在本申请实施例中提及视频媒体内容的生成,包括摄像机采集生成的真实场景,以及计算机生成的屏幕内容场景,而从视频信号的获取方式看,视频信号可以分为摄像机拍摄到的以及计算机生成的两种方式,由于统计特性的不同,其对应的压缩编码方式也可能有所区别,现代主流视频编码技术,以国际视频编码标准HEVC(High Efficiency VideoCoding,国际视频编码标准HEVC/H.265),VVC(versatile video coding,国际视频编码标准VVC/H.266),以及中国国家视频编码标准AVS(Audio Video Coding Standard,中国国家视频编码标准AVS),或AVS3(由AVS标准组推出的第三代视频编码标准)为例,采用了混合编码框架,对输入的原始视频信号,进行了如下一系列的操作和处理,具体可如图2所示:
①块划分结构(block partition structure):输入多媒体数据帧(如视频数据中的一个视频帧)根据一个的大小,划分成若干个不重叠的处理单元,每个处理单元将进行类似的压缩操作。在一个实施例中,这个处理单元被称作CTU(Coding Tree Unit,编码树单元),或者LCU(Largest Coding Unit,最大编码单元)。其中,CTU再往下,可以继续进行更加精细的划分,得到一个或多个基本编码的单元,称之为CU(Coding Unit,编码单元)。每个CU是一个编码环节中最基本的元素。在另一个实施例中,这个处理单元也被称作编码片(Tile,可以独立解码和编码的多媒体数据帧的矩形区域)。其中,编码片再往下,可以继续进行更加精细的划分,得到一个或多个最大编码块(SB:Superblock,块划分的起点,可以继续划分为多个子块),然后,最大编码块再往下划分,得到一个或多个数据块(block,B)。每个数据块是一个编码环节中最基本的元素。以下描述的是对每一个数据块可能采用的各种编码方式,其中,SB和B之间的关系可如图3所示。
②预测编码(Predictive Coding):包括了帧内预测和帧间预测等方式,原始视频信号经过选定的已重建视频信号的预测后,得到残差视频信号。编码端需要为当前编码数据块(即待编码数据块)决定在众多可能的预测编码模式中,选择最适合的一种,并告知解码端。
a.帧内预测(Intra(picture)Prediction):预测的信号来自于同一图像内已经编码重建过的区域。
b.帧间预测(Inter(picture)Prediction:帧间预测):预测的信号来自已经编码过的,不同于当前图像的其他图像(称之为参考图像)。
③变换编码及量化(Transform&Quantization):残差视频信号经过DFT(DiscreteFourier Transform,离散傅里叶变换),DCT(离散余弦变换,是DFT的一个子集)等变换操作,将信号转换到变换域中,称之为变换系数。在变换域中的信号,进一步的进行有损的量化操作,丢失掉一定的信息,使得量化后的信号有利于压缩表达。
在一些视频编码标准中,可能有多于一种变换方式可以选择,因此,编码端也需要为当前编码数据块选择其中的一种变换,并告知解码端。量化的精细程度通常由量化参数(Quantization Parameter,QP)来决定,QP取值较大大,表示更大取值范围的系数将被量化为同一个输出,因此通常会带来更大的失真,及较低的码率;相反,QP取值较小,表示较小取值范围的系数将被量化为同一个输出,因此通常会带来较小的失真,同时对应较高的码率。
④熵编码(Entropy Coding)或统计编码:量化后的变换域信号,将根据各个值出现的频率,进行统计压缩编码,最后输出二值化(0或者1)的压缩码流。同时,编码产生其他信息,例如选择的模式,运动矢量等,也需要进行熵编码以降低码率。
统计编码是一种无损编码方式,可以有效的降低表达同样的信号所需要的码率。常见的统计编码方式有变长编码(VLC,Variable Length Coding)或者基于上下文的二值化算术编码(CABAC,Content Adaptive Binary Arithmetic Coding)。
⑤环路滤波(Loop Filtering):已经编码过的图像(即多媒体数据帧),经过反量化,反变换及预测补偿的操作(上述②~④的反向操作),可获得重建的解码图像。重建图像与原始图像相比,由于存在量化的影响,部分信息与原始图像有所不同,产生失真(Distortion)。对重建图像进行滤波操作,例如去块效应滤波(deblocking),SAO(SampleAdaptive Offset,样点自适应补偿)或者ALF(Adaptive Loop Filter,自适应环路滤波)等滤波器,可以有效的降低量化所产生的失真程度。由于这些经过滤波后的重建图像,将做为后续编码图像的参考,用于对将来的信号进行预测,所以上述的滤波操作也被称为环路滤波,及在编码环路内的滤波操作。
图2中展示了视频编码器的基本流程,图2中以第k个CU(标记为Sk[x,y])为例进行举例说明,其中,k为大于等于1且小于等于输入的当前图像中的CU的数量的正整数,Sk[x,y]表示第k个CU中坐标为[x,y]的像素点,x表示像素点的横坐标,y表示像素点的中坐标,Sk[x,y]经过运动补偿或者帧内预测等中的一种较优处理后获得预测信号
Figure BDA0003312919590000061
Sk[x,y]与
Figure BDA0003312919590000062
相减得到残差信号Uk[x,y],然后对该残差信号Uk[x,y]进行变换和量化,量化输出的数据由两个不同的去处:一是送个熵编码器进行熵编码,编码后的码流输出到一个缓冲器(buffer)中保存,等待传出去;另一个应用是进行反量化和反变换后,得到信号U’k[x,y]。将信号U’k[x,y]与
Figure BDA0003312919590000063
相加得到新的预测信号S*k[x,y],并将S*k[x,y]送到当前图像的缓冲器中保存。S*k[x,y]经过帧内—图像预测获得f(S*k[x,y]),S*k[x,y]经过环路滤波后获得S’k[x,y],并将S’k[x,y]送至解码图像缓冲器中保存,以用于生成重建视频。S’k[x,y]经过运动—补偿预测后获得S’r[x+mx,y+my],S’r[x+mx,y+my]表示参考块,mx和my分别表示运动矢量的水平和竖直分量。
根据上述编码过程可以看出,在解码端,对于每一个数据块,解码器获得压缩码流后,先进行熵解码,获得各种模式信息及量化后的变换系数。各个系数经过反量化及反变换,得到残差信号。另一方面,根据已知的编码模式信息,可获得该数据块对应的预测信号,两者相加之后,即可得到已编码的数据块。最后,已编码的数据块,需要经过环路滤波的操作,产生最终的已编码的数据块。
目前主流的视频编码标准,如HEVC,VVC,AVS3,AV1,AV2均采用基于块的混合编码框架。它们将原始的多媒体数据帧分成一系列的编码数据块,结合预测,变换和熵编码等视频编码方法,实现视频数据的压缩。其中,运动补偿是视频编码常用的一类预测编码方法,运动补偿是基于视频内容在时域或空域的冗余特性,从已编码的区域(即参考数据块)导出当前编码数据块的预测值。这类预测编码方法包括:帧间预测、帧内块复制预测、帧内串复制预测等,在具体的预测编码实现中,可能单独或组合使用这些预测编码方法。对于使用了这些预测编码方法的编码数据块,通常需要在码流显式或隐式的编码一个或多个二维的位移矢量,指示当前编码数据块(或当前块的同位块)相对它的一个或多个参考数据块的位移。
需要说明的是,在不同的预测编码模式下,位移矢量可能有不同的名称,本申请统一按照以下方式进行描述:1)帧间预测中的位移矢量称为运动矢量(Motion Vector,简称MV);2)帧内块复制中(即帧内预测编码)的位移矢量称为块矢量(Block Vector,简称BV);3)帧内串复制中的位移矢量称为串矢量(String Vector,简称SV)。以下对帧间预测、和帧内块复制预测中相关的技术进行介绍。
1.1、帧间预测。如图4所示,帧间预测利用多媒体数据帧的时间域的相关性,使用邻近已编码图像的像素预测当前图像的像素,以达到有效去除多媒体数据帧的时域冗余的目的,能够有效节省编码残差数据的比特。其中,P为当前帧,Pr为参考帧,B为当前待编码数据块,Br是B的参考数据块。B’与B在图像中的坐标位置相同,Br坐标为(xr,yr),B’坐标为(x,y)。当前编码数据块与其参考数据块之间的位移,称为运动向量(MV),即可采用如下公式(1)表示:
MV=(xr-x,yr-y)   (1)
考虑到时域或空域邻近块具有较强的相关性,可以采用MV预测技术进一步减少编码MV所需要的比特。在H.265/HEVC中,帧间预测包含Merge和AMVP两种MV预测技术。
2.1、帧内块复制预测。帧内块复制(Intra Block Copy,简称IBC)是HEVC屏幕内容编码(Screen Cotent Coding,简称SCC)扩展中采纳的一种帧内编码工具,它显著的提升了屏幕内容的编码效率。在AVS3,VVC和AV1中,也采纳了IBC技术以提升屏幕内容编码的性能。IBC利用屏幕内容视频在空间的相关性,使用多媒体数据帧中已编码的数据块的像素预测待编码数据块的像素,能够有效节省编码像素所需的比特。图5为IBC技术的示意图,如图5中,待编码数据块(即当前块)与参考数据块(即参考块)均位于同一多媒体数据帧中,参考数据块位于已编码区域,待编码数据块位于未编码区域。其中,待编码数据块与其参考数据块之间的位移,称为块矢量(BlockVector,简称BV)。
在HEVC SCC扩展中,IBC模式采用了类似于帧间预测的实现方式。如果多媒体数据帧允许使用IBC模式,则将当前已解码但未滤波的图像将作为一个特殊的参考帧,编码数据块采用与帧间预测运动补偿的方式在从这个参考帧上导出待编码数据块的预测值。这种实现方式具有以下特点:
1)BV只采用整数精度;
2)采用了全局参考数据块集合(即全局参考范围),即当前多媒体数据帧所有已重建的部分中除了某些区域基于并行处理和色度插值的考虑被禁止用作参考数据块以外,其他均可用作待编码数据块的参考数据块;
3)在解码图像缓存中,当前已解码未滤波的图像会占用一个图像大小的缓存;
4)当前已解码未滤波的图像将位于参考图像列表的最后。
在硬件实现中,计算核心可以从片上存储器或片外存储器中读写数据。片上存储器通常是静态内存,读写速度非常快,但由于它的价格相对较高,通常仅使用较小的片上存储器。而片外存储器通常要大得多,但如果要高效的访问,需要遵循一些规则,在将最近已编码的数据块写回片外的图片存储器时通常存在回写时延(writing-back delay)。在运动补偿的典型硬件实现中,当前已解码的图像将在完成环路滤波操作后写入到片外存储器中,以供将来参考。当后续编码数据块的运动补偿需要参考位于片外存储器的已编码的数据块时,需要从片外存储器读取该参考数据块的相关数据。这个过程涉及写入和读取的内存带宽消耗。虽然在软件实现上HEVC-SCC中IBC方案对于现有的软件设计具有较小的影响,然而在硬件实现中具有以下两个问题:
a、IBC的参考图像是未经过环路滤波处理的版本,与最终输出的解码图像不同。将该图像输出到片外将导致内存带宽的增加。
b、当前已解码或一个刚刚重建完成的相邻数据块可能用做下一个编码数据块的参考。这要求在有限的时钟周期完成重建数据块的解码,输出到片外存储器,再读入片内存储器等流程。这对硬件实现提出了较大的挑战。
针对IBC硬件实现的问题,后续的标准如VVC,AVS3和AV1中采纳了一些IBC相关的优化方案。VVC、AVS3标准中的IBC方案使用了局部参考数据块集合,即使用与当前编码数据块相邻的已编码的数据块作为当前编码数据块的参考数据块。在具体的硬件实现中,可以使用片上存储器中存储的局部参考数据块集合中的参考数据块以解决上述问题。基于硬件实现成本和编码性能的考虑,IBC仅使用了1个CTU大小的内存存储的局部参考数据块集合中的参考数据块,并采用了如图6所示的参考内存重用策略。除了存储当前待重构的64x64的CU外,还有3个64x64大小的CU可用于存储已重构的数据块。因此,IBC仅能在这三个64x64大小的CU以及当前64x64CU的已重构部分中搜索参考数据块。
综上,AV1标准中的IBC方案使用了全局参考数据块集合,即当前编码数据块允许参考当前多媒体数据帧中已编码的数据块,但是,该方案存在如下两个缺陷:a、为了满足回写限制条件的要求,与当前编码数据块相邻近的已编码的数据块不允许用作参考数据块;b、如果当前多媒体数据帧允许使用IBC,则环路滤波器将被禁用。然而,屏幕内容序列往往具有较强的空间相关性,相邻数据块具有较高的参考价值,允许相邻已编码的数据块被参考将有利于提升编码性能。在一些序列内容上,禁用环路滤波器也将带来严重的多媒体数据质量下降并影响编码性能。虽然,基于局部参考数据块集合的IBC方案不存在上述缺陷,但由于局部参考数据块集合中可用的参考数据块的数量有限,仅使用局部参考数据块集合可能会使多媒体数据帧的编码性能下降。根据序列内容的特性,全局参考数据块集合,局部参考数据块集合以及环路滤波处理等编码参数对编码性能影响具有不同的占比。因此,基于全局参考数据块集合的IBC方案和局部参考数据块集合的IBC方案中存在的缺陷,本申请中,根据多媒体数据帧的属性信息选择合适预测编码方式,将有利于编码性能的提升;也就是说,本申请中提供了全局参考数据块集合和局部参考数据块集合,有利于编码终端根据当前编码数据块的属性信息自适应地,从全局参考数据块集合和局部参考数据块集合中选择参考数据块,扩展了参考数据块可选择的范围,可解决参考数据块的数量有限的问题,进一步,根据选择的参考数据块对当前编码数据块进行预测编码,可提高对多媒体数据帧的编码性能。
需要说明的是,本申请可以由终端来执行,也可以由服务器来执行,还可以由终端和服务器共同执行,本申请中用于执行该方法的设备可以统称为计算机设备。其中,服务器可以是独立的一个物理服务器,也可以是至少两个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(Content Delivery Network,CDN)、以及大数据和人工智能平台等基础云计算服务的云服务器。终端可以是智能车载终端、智能摄像机、智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、有屏音箱、智能手表、智能电视等,但并不局限于此。终端以及服务器可以通过有线或无线通信方式进行直接或间接地连接,同时,终端以及服务器的数量可以为一个或至少两个,本申请在此不做限制。
需要说明的是,本申请实施例可应用于各种场景,包括但不限于云技术、人工智能、智慧交通、辅助驾驶等。例如,在智慧交通场景中,多媒体数据帧为摄像装置对道路进行拍摄得到的视频帧或图像帧,该摄像装置可以是指车载终端,或者道路侧的摄像装置;通过本申请对多媒体数据帧进行预测编码,有利于提高对多媒体数据帧的编码性能,通过编码后的多媒体数据帧能够实时观测道路的路况状态等等,提高车辆的行驶安全。
进一步地,请参见图7,是本申请实施例提供的一种多媒体数据处理方法的流程示意图。如图7所示,该方法至少可以包括以下S101-S102:
S101、获取与多媒体数据帧中的待编码数据块相关联的全局参考数据块集合和局部参考数据块集合;该全局参考数据块集合包括所述多媒体数据帧中与所述待编码数据块之间不具有相邻关系的已编码的数据块,所述局部参考数据块集合包括所述多媒体数据帧中与所述待编码数据块之间具有相邻关系的已编码的数据块。
本申请中,计算机设备可以获取多媒体数据帧;该多媒体数据帧可以是指由计算机设备所拍摄得到的,或者,该多媒体数据帧可以是由计算机设备从网络中下载得到的。该多媒体数据帧是指视频数据中待编码的视频帧或图像数据中待编码的一帧图像,视频数据可以是指直播视频数据、影视视频数据、日常生活视频数据、道路监控视频数据等等;图像数据可以是指人物图像数据、建筑图像数据、物品图像数据等等。进一步,计算机设备可以根据编码方式、回写延时、已编码的数据块与待编码数据块之间的相关性等信息中的至少一种获取与该多媒体数据帧相关联的全局参考数据块集合,并根据用于存储局部参考数据块集合的存储空间大小、已编码的数据块与待编码数据块之间的相关性等信息中的至少一种获取与多媒体数据帧相关联的全局参考数据块集合和局部参考数据块集合。
需要说明的是,全局参考数据块集合和局部参考数据块集合分别存储在第一存储空间和第二存储空间,第一存储空间和第二存储空间可以位于同一个计算机设备中,也可以位于不同计算机设备中。第一存储空间和第二存储空间具体可以是指磁盘,或者,存储介质阵列等等,本申请对此不做限定。特别地,当该第一存储空间和第二存储空间位于同一个计算机设备中时,第一存储空间可以是指计算机设备的片外存储器,第二存储空间可以是指计算机设备的片上存储器;或者,第一存储空间可以是指计算机设备的片上存储器,第二存储空间可以是指计算机设备的片外存储器;本申请对此不做限定。
S102、从该局部参考数据块集合和全局参考数据块集合中,选择用于对待编码数据块进行预测编码的参考数据块。
本申请中,计算机设备可以获取该全局参考数据块集合和局部参考数据块集合,有利于根据应用场景或用户需求等自适应地,从该全局参考数据块集合和局部参考数据块集合中选择参考数据块,根据参考数据块对该多媒体数据帧中待编码数据块进行预测编码;扩展了参考数据块的选择范围,可提高对多媒体数据帧的编码性能。
例如,计算机设备可以获取待编码数据块的属性信息,根据该待编码数据块的属性信息,从该局部参考数据块集合和全局参考数据块集合中,选择用于对待编码数据块进行预测编码的参考数据块。其中,待编码数据块的属性信息包括待编码数据块所属的多媒体数据帧的媒体类型、多媒体数据帧的参考标志、待编码数据块所属的多媒体数据帧的清晰度等等中的一种或多种;媒体类型包括帧内和帧间,帧内类型可以是指具有代表意义的多媒体数据帧,帧内类型是全帧内编码帧,Intra帧,I帧,关键帧。这种类型的帧只允许使用帧内编码技术,帧内编码技术包括帧内块复制模式或帧内串复制模式,不需要依赖其他帧进行编码。例如,帧内类型可以是指能够体现视频数据或图像数据中主要含义的多媒体数据帧;帧间类型可以是指视频数据或图像数据中除帧内类型以外的多媒体数据帧,帧间类型可以称为帧间编码帧,P帧,B帧,非关键帧。这种类型的帧允许使用帧间编码技术和帧内编码技术,通常当采用帧间编码技术时,需要在参考帧编码完成后才可以进行编码。多媒体数据帧的参考标志用于反映待编码数据块的参考数据块的选择范围(即选择哪个参考数据块集合)。
本申请中,计算机设备可以获取该全局参考数据块集合和局部参考数据块集合,有利于编码终端可以根据应用场景或用户需求等自适应地,从该全局参考数据块集合和局部参考数据块集合中选择参考数据块,根据参考数据块对该多媒体数据帧中待编码数据块进行预测编码;扩展了参考数据块的选择范围,可提高对多媒体数据帧的编码性能。
可选的,计算机设备可以根据多媒体数据帧的编码方式从如下两种方式中选择一种方式,获取全局参考数据块集合:
方式一:该全局参考数据块集合包括一个或多个第一参考数据块;当该多媒体数据帧的编码方式为串行编码方式时,该全局参考数据块集合中的第一参考数据块为所述多媒体数据帧中参数关联关系满足回写限制条件,且与所述待编码数据块属于同一个编码片的已编码的数据块;所述参数关联关系用于反映第一位置信息,与最大编码块的尺寸信息和第二位置信息之间的关联关系,所述第一位置信息、第二位置信息分别是指已编码的数据块、所述待编码数据块在所述多媒体数据帧中的位置信息;所述回写限制条件用于反映将所述已编码的数据块写入至所述全局参考数据块集合的限制时延。也就是说,串行编码方式是指同一时间仅对多媒体数据帧中的一个数据块进行预测编码,如果多媒体数据帧的编码方式为串行编码方式时,该编码方式不会对参考数据块的确定过程造成影响。但是,已编码的数据块写入至全局参考数据块集合中会带来较大回写延时,即已编码的数据块写入至全局参考数据块集合中需要消耗较长时间,因此,已编码的数据块至少等待预设时长后,才能够被用于作为参考数据块,预设时长是根据将所述已编码的数据块写入至所述全局参考数据块集合的限制时延确定的,该限制时延可以是指将已编码的数据块写入至全局参考数据块集合中的平均时延、最大时延以及最小时延等中的一种。由此可知,当该多媒体数据帧的编码方式为串行编码方式时,该全局参考数据块集合中的第一参考数据块需要满足以下两个条件:a、与待编码数据块属于同一个编码片;b、参数关联关系满足回写限制条件。
具体的,计算机设备可以执行如下步骤s11~s14,以获取全局参考数据块集合:
s11、当该多媒体数据帧的编码方式为串行编码方式时,分别获取第一位置信息,以及该最大编码块的尺寸信息和第二位置信息;该第一位置信息、第二位置信息分别是指已编码的数据块、该待编码数据块在该多媒体数据帧中的位置信息。
s12、获取回写限制条件;该回写限制条件用于反映将该已编码的数据块写入至该全局参考数据块集合的限制时延。
s13、从该多媒体数据帧中筛选出参数关联关系满足回写限制条件,且与该待编码数据块属于同一个编码片的已编码的数据块,作为第一参考数据块;该参数关联关系用于反映该第一位置信息,与该最大编码块的尺寸信息和该第二位置信息之间的关联关系。
s14、将该第一参考数据块添加至该全局参考数据块集合。
在步骤s11~s14中,当该多媒体数据帧的编码方式为串行编码方式,计算机设备可以分别获取第一位置信息,以及最大编码块的尺寸信息以及第二位置信息。该第一位置信息、第二位置信息分别是指已编码的数据块、待编码数据块在多媒体数据帧的位置信息,更具体的,第一位置信息、第二位置信息可以是指已编码的数据块的像素、待编码数据块的像素在多媒体数据帧的坐标,该最大编码块的尺寸信息可以是指最大编码块的宽度和高度。进一步,计算机设备可以获取回写限制条件;从该多媒体数据帧中筛选出参数关联关系满足回写限制条件,且与该待编码数据块属于同一个编码片的已编码的数据块,作为第一参考数据块,将该第一参考数据块添加至该全局参考数据块集合。通过根据回写限制条件、第一位置信息、第二位置信息和最大编码块的尺寸信息筛选得到第一参考数据块,可确保第一参考数据块与待编码数据块具有较强的空间相关性,并可确保第一参考数据块的可用性。
可选的,上述步骤s13可包括如下步骤s21~s24:
s21、根据所述第一位置信息和所述第二位置信息,从所述多媒体数据帧中筛选出属于同一编码片的已编码的数据块,作为第一候选参考数据块。
s22、确定在所述回写限制条件下所述多媒体数据帧中已编码的数据块,与所述待编码数据块之间的间隔数据块限制数量。
s23、根据所述第一位置信息、所述最大编码块的尺寸信息和所述第二位置信息,统计所述第一候选参考数据块与所述待编码数据块之间的间隔数据块数量。
s24、将间隔数据块数量大于所述间隔数据块限制数量的第一候选参考数据块,确定为第一参考数据块。
在步骤s21~s24中,假设第一位置信息、第二位置信息可以是指已编码的数据块的像素、待编码数据块的像素在多媒体数据帧的坐标,已编码的数据块的位置信待息为(ref_x,ref_y),待编码数据块的位置信息为(cur_x,cur_y),计算机设备可以从多媒体数据帧中筛选出与待编码数据块属于同一编码片的已编码的数据块,作为第一候选参考数据块。进一步,确定在该回写限制条件下该多媒体数据帧中已编码的数据块,与该待编码数据块之间的间隔数据块限制数量,该间隔数据块限制数量可以是指在满足回写限制条件下多媒体数据帧中已编码的数据块,与待编码数据块之间应间隔的最少数据块数量。然后,根据所述第一位置信息、该最大编码块的尺寸信息和该第二位置信息,统计该第一候选参考数据块与该待编码数据块之间的间隔数据块数量,该间隔数据块数量是指该第一候选参考数据块与该待编码数据块之间实际间隔的数据块数量,将间隔数据块数量大于该间隔数据块限制数量的第一候选参考数据块,确定为第一参考数据块。通过已编码的数据块的位置信息、待编码数据块的位置信息以及回写延时限制条件等,获取全局参考数据块集合,可确保第一参考数据块与待编码数据块具有较强的空间相关性,并可确保第一参考数据块的可用性。同时,不需要额外的硬件成本,可节省成本。
例如,计算机设备可以将满足如下公式(2)的第一候选参考数据块,作为第一参考数据块:
D<cur_num-src_num   (2)
其中,公式(2)中cur_num-src_num表示该第一候选参考数据块与该待编码数据块之间的间隔数据块数量,cur_num、src_num分别是指第一候选参考数据块的编号以及待编码数据块的编号,D是指满足回写限制条件下的该间隔数据块限制数量,cur_num、src_num可以通过下文公式(3)和公式(4)计算得到。
可选的,上述步骤s23可包括如下步骤s31~s34:
s31、根据所述第一位置信息以及所述最大编码块的尺寸信息确定所述第一候选参考数据块的行标识和列标识。
s32、根据所述第二位置信息以及所述最大编码块的尺寸信息确定所述待编码数据块的行标识和列标识。
s33、基于所述待编码数据块的尺寸信息确定所述多媒体数据帧中每行的数据块数量。
s34、根据所述每行的数据块数量、所述第一候选参考数据块的行标识和列标识,以及所述待编码数据块的行标识和列标识,统计所述第一候选参考数据块与所述待编码数据块之间的间隔数据块数量。
在步骤s31~s34中,第一候选参考数据块的行标识和列标识分别为ref_y_num、ref_x_num,待编码数据块的行标识和列标识分别为cur_x_num、cur_y_num,计算机设备可以分别采用如下公式(3)获取第一候选参考数据块的行标识和列标识、待编码数据块的行标识和列标识:
Figure BDA0003312919590000151
其中,公式(3)中Floor()表示向下取整,W、H可以是采用如下4种方式中的任一种方式确定的:1、W、H是根据最大编码块的尺寸信息确定的;2、W、H是根据VPDU(VPDU,VirtualPipeline Data Units,片上内存的基本单元)的尺寸信息确定的;3、H可以是指最大编码块的尺寸信息确定的,如最大编码块为128x128,H为128,最大编码块为64x64,H为64,W可以为默认值,如64。4、W、H均为预设值,可以为4、64、128等等。其中,一个最大编码块可以包括一个或多个数据块,最大编码块的尺寸以及数据块的尺寸具体是根据多媒体数据帧的分块方式确定的。
然后,计算机设备可以基于该待编码数据块的尺寸信息确定该多媒体数据帧中每行的数据块数量;根据所述每行的数据块数量、所述第一候选参考数据块的行标识和列标识,确定第一候选参考数据块的编号,并根据所述每行的数据块数量以及所述待编码数据块的行标识和列标识确定待编码数据块的编号,将第一候选参考数据块的编号与待编码数据块的编号之间的差值,确定为第一候选参考数据块与所述待编码数据块之间的间隔数据块数量。例如,计算机设备可以采用如下公式(4)确定该多媒体数据帧中每行数据块数量、第一候选参考数据块的编号以及待编码数据块的编号:
Figure BDA0003312919590000161
其中,公式(4)中stride是指该多媒体数据帧中每行数据块数量,cur_num、src_num分别是指第一候选参考数据块的编号以及待编码数据块的编号,Ceil()表示向上取整,tile_w表示编码片的宽度,编码片包括一个或多个最大编码块,因此,编码片的宽度可以是根据最大编码块的尺寸信息确定。例如,最大编码块的尺寸为128x128时,编码片可以为1024x720。
例如,该第一位置信息和该第二位置信息分别为该已编码的数据块、该待编码数据块在该多媒体数据帧中的坐标;当该多媒体数据帧的编码方式为串行编码方式,该最大编码块的尺寸为128x128,编码片的宽高分别为1024和720,W和H的值都等于64,且在该回写限制条件下该已编码的数据块与待编码数据块之间的间隔数据块限制数量为4时,该全局参考数据块集合中的第一参考数据块为与所述待编码数据块属于同一编码片,且坐标满足如下公式(5)的已编码的数据块,该间隔数据块限制数量可以是指在满足回写限制条件下多媒体数据帧中已编码的数据块,与待编码数据块之间应间隔的最少数据块数量。
(Floor(ref_y/128)*16+Floor(ref_x/64))<(Floor(cur_y/128)*16+Floor(cur_x/64)-4   (5)
其中,公式(5)中(ref_x,ref_y)、(cur_x,cur_y)分别表示所述已编码的数据块、所述待编码数据块在所述多媒体数据帧中的坐标,Floor()表示向下取整。
再例如,所述第一位置信息和所述第二位置信息分别为所述已编码的数据块、所述待编码数据块在所述多媒体数据帧中的坐标;当所述多媒体数据帧的编码方式为串行编码方式,所述最大编码块的尺寸为64x64,编码片的宽高分别为1024和720,W和H的值都等于64,且在所述回写限制条件下所述已编码的数据块与待编码数据块之间的间隔数据块限制数量为4时,所述全局参考数据块集合中的第一参考数据块为与所述待编码数据块属于同一编码片,且坐标满足如下公式(6)的已编码的数据块。
(Floor(ref_y/64)*16+Floor(ref_x/64))<(Floor(cur_y/64)*16+Floor(cur_x/64)-4   (6)
其中,(ref_x,ref_y)、(cur_x,cur_y)分别表示所述已编码的数据块、所述待编码数据块在所述多媒体数据帧中的坐标,Floor()表示向下取整。
需要说明的是,当该多媒体数据帧的编码方式为串行编码方式时,计算机设备还可以通过如下方式获取全局参考数据块集合:根据第一位置信息、第二位置信息以及最大编码块的尺寸信息,确定已编码的数据块与待编码数据块之间的间隔距离,并确定在回写延时条件下已编码的数据块与待编码数据块之间的间隔限制距离,该间隔限制距离是指满足回写延时条件下已编码的数据块与待编码数据块之间的最小间隔距离,将多媒体数据帧中与待编码数据块属于同一编码片,且间隔距离大于该间隔限制距离的已编码的数据块,作为第一参考数据块,将第一参考数据块添加至全局参考数据块集合。
可选的,待编码数据块与已编码数据块之间具有相邻关系可以是指待编码数据块的编码顺序与已编码数据块的编码顺序相邻;待编码数据块与已编码数据块之间不具有相邻关系可以是指待编码数据块的编码顺序与已编码数据块的编码顺序不相邻。
方式二:所述全局参考数据块集合包括一个或多个第二参考数据块;当该多媒体数据帧的编码方式为并行编码方式或者为串行编码方式时,该全局参考数据块集合的第二参考数据块为与该待编码数据块属于同一个编码片,且该多媒体数据帧中参数关联关系满足回写限制条件,以及该参数关联关系满足编码处理条件的已编码的数据块;该参数关联关系用于反映已编码的数据块、该待编码数据块分别在该多媒体数据帧中的位置信息,以及最大编码块的尺寸信息之间的关联关系;该回写限制条件用于反映将该已编码的数据块写入至该全局参考数据块集合的限制时延。也就是说,并行编码方式是指同一时间对多媒体数据帧中的多个数据块进行预测编码,如果多媒体数据帧的编码方式为并行编码方式时,该编码方式会对参考数据块的确定过程造成影响。同时,已编码的数据块写入至全局参考数据块集合中会带来较大回写延时,由此可知,当该多媒体数据帧的编码方式为并行编码方式时,该全局参考数据块集合中的第二参考数据块需要满足以下三个条件:a、与待编码数据块属于同一个编码片;b、参数关联关系满足回写限制条件;c、参数关联关系满足编码处理条件。特别的,当该多媒体数据帧的编码方式为串行编码方式时,也可以采用方式二获取全局参考数据块集合。此处编码处理条件可以是指并行编码处理条件。
具体的,计算机设备可以执行如下步骤s41~s44,以获取全局参考数据块集合:
s41、分别获取第一位置信息,以及所述最大编码块的尺寸信息和第二位置信息;所述第一位置信息、第二位置信息分别是指已编码的数据块、所述待编码数据块在所述多媒体数据帧中的位置信息。
s42、获取回写限制条件以及编码处理条件;所述回写限制条件用于反映将所述已编码的数据块写入至所述全局参考数据块集合的限制时延。
s43、从所述多媒体数据帧中筛选出参数关联关系满足回写限制条件和所述编码处理条件,且与所述待编码数据块属于同一个编码片的已编码的数据块,作为第二参考数据块;所述参数关联关系用于反映所述第一位置信息,与所述待编码数据块的尺寸信息和所述第二位置信息之间的关联关系。
s44、将所述第二参考数据块添加至所述全局参考数据块集合。
在步骤s41~s44中,第一位置信息、第二位置信息可以是指已编码的数据块的像素、待编码数据块的像素在多媒体数据帧的坐标,该最大编码块的尺寸信息可以是指最大编码块的宽度和高度。该回写限制条件用于反映将该已编码的数据块写入至该全局参考数据块集合的限制时延,编码处理条件用于反映并行对多媒体数据帧进行编码时参考数据块与待编码数据块之间的限制距离;或者,编码处理条件用于反映并行对多媒体数据帧进行编码时参考数据块与待编码数据块之间的间隔数据块限制数量。通过从该多媒体数据帧中筛选出参数关联关系满足回写限制条件和该编码处理条件,且与该待编码数据块属于同一个编码片的已编码的数据块,作为第二参考数据块,将该第二参考数据块添加至该全局参考数据块集合,可确保第二参考数据块与待编码数据块具有较强的空间相关性,并可确保第二参考数据块的可用性。
可选的,上述步骤s43可包括如下步骤s51~s55:
s51、根据所述第一位置信息和所述第二位置信息,从所述多媒体数据帧中筛选出与待编码数据块属于同一编码片的已编码的数据块,作为第二候选参考数据块。
s52、从所述第一候选参考数据块中筛选出参数关联关系满足回写限制条件的第一候选参考数据块,作为第二候选参考数据块。
s53、确定在所述回写限制条件下所述多媒体数据帧中已编码的数据块,与所述待编码数据块之间的第一数据块限制距离。
s54、确定在所述编码处理条件下所述多媒体数据帧中已编码的数据块,与所述待编码数据块之间的第二数据块限制距离。
s55、根据所述第一位置信息、所述最大编码块的尺寸信息和所述第二位置信息、所述第一数据块限制距离和所述第二数据块限制距离,从所述第二候选参考数据块中确定出满足所述编码处理条件的第二候选参考数据块,作为第二参考数据块。
在步骤s51~s55中,假设第一位置信息、第二位置信息可以是指已编码的数据块的像素、待编码数据块的像素在多媒体数据帧的坐标,已编码的数据块的位置信待息为(ref_x,ref_y),待编码数据块的位置信息为(cur_x,cur_y),计算机设备可以从多媒体数据帧中筛选出与待编码数据块属于同一编码片的已编码的数据块,作为第一候选参考数据块。进一步,计算机设备可以从该第一候选参考数据块中筛选出坐标满足上述公式(4)的第一候选参考数据块,作为第二候选参考数据块。进一步,可以确定在所述回写限制条件下所述多媒体数据帧中已编码的数据块,与所述待编码数据块之间的第一数据块限制距离,第一数据块限制距离可以是指满足回写延时限制条件下该多媒体数据帧中已编码的数据块,与所述待编码数据块之间应保持的最小距离;确定在所述编码处理条件下所述多媒体数据帧中已编码的数据块,与所述待编码数据块之间的第二数据块限制距离,该第二数据块限制距离是指满足编码处理条件下该多媒体数据帧中已编码的数据块,与所述待编码数据块之间应保持的最小距离。然后,可以根据该第一位置信息、该最大编码块的尺寸信息和该第二位置信息、该第一数据块限制距离和所述第二数据块限制距离,从该第二候选参考数据块中确定出满足该编码处理条件的第二候选参考数据块,作为第二参考数据块。
可选的,上述步骤s55可包括如下步骤s61~s66:
s61、根据所述第一位置信息以及所述最大编码块的尺寸信息确定所述第二候选参考数据块的行标识和列标识。
s62、根据所述第二位置信息以及所述最大编码块的尺寸信息确定所述待编码数据块的行标识和列标识。
s63、从所述第二候选参考数据块中筛选出行标识小于或等于所述待编码数据块的行标识的第二候选参考数据块,作为第三候选参考数据块。
s64、根据所述第三候选参考数据块的行标识和所述待编码数据块的行标识确定所述第三候选参考数据块与所述待编码数据块之间的行距离。
s65、根据所述第三候选参考数据块的列标识和所述待编码数据块的列标识确定所述第三候选参考数据块与所述待编码数据块之间的列距离。
s66、将所述第三候选参考数据块中列距离小于第一距离阈值的第三候选参考数据块,确定为第二参考数据块;所述第一距离阈值是根据所述第一数据块限制距离、所述第二数据块限制距离、所述第三候选参考数据块与所述待编码数据块之间的行距离确定的。
在步骤s61~s66中,计算机设备可以分别采用上文公式(5)获取第二候选参考数据块的行标识和列标识、待编码数据块的行标识和列标识,然后,可以从该第二候选参考数据块中筛选出行标识小于或等于该待编码数据块的行标识的第二候选参考数据块,作为第三候选参考数据块。进一步,可以将第三候选参考数据块的行标识和所述待编码数据块的行标识之间的差值,确定为该第三候选参考数据块与所述待编码数据块之间的行距离,将该第三候选参考数据块的列标识和该待编码数据块的列标识之间的差值,确定为第三候选参考数据块与该待编码数据块之间的列距离;并将该第三候选参考数据块中列距离小于第一距离阈值的第三候选参考数据块,确定为第二参考数据块。例如,计算机设备可以将坐标满足如下公式(7)的第二候选参考数据块,确定为第二参考数据块:
Figure BDA0003312919590000201
其中,公式(7)中,ref_y_num、ref_x_num分别是指第二候选参考数据块的行标识和列标识,cur_y_num、cur_x_num分别是指待编码数据块的行标识和列标识,P是指在该回写限制条件下该多媒体数据帧中已编码的数据块,与所述待编码数据块之间的第一数据块限制距离,E是指在所述编码处理条件下所述多媒体数据帧中已编码的数据块,与所述待编码数据块之间的第二数据块限制距离。特别的,第一数据块限制距离可以是根据该回写限制条件下该多媒体数据帧中已编码的数据块,与所述待编码数据块之间的间隔限制数据块数量确定的,如,P与上述D在数值上可以相同;第二数据块限制距离是根据该编码处理条件下该多媒体数据帧中已编码的数据块,与所述待编码数据块之间的间隔限制数据块数量确定的。ref_x_num-cur_x_num表示第三候选参考数据块与该待编码数据块之间的列距离,cur_y_num-ref_y_num表示第三候选参考数据块与所述待编码数据块之间的行距离。
例如,所述第一位置信息和所述第二位置信息分别为所述已编码的数据块、所述待编码数据块在所述多媒体数据帧中的坐标;当所述多媒体数据帧的编码方式为并行编码或串行编码方式,所述最大编码块的尺寸为128x128,编码片的宽高分别为1024和720,W和H的值都等于64,且在所述回写限制条件下所述已编码的数据块与所述待编码数据块之间的间隔数据块限制距离为4,在所述编码处理条件下所述已编码的数据块与所述待编码数据块之间的间隔数据块限制距离为2时,所述全局参考数据块集合中的第二参考数据块为与所述待编码数据块属于同一编码片,且坐标满足如下公式(8)的已编码的数据块:
Figure BDA0003312919590000211
其中,(ref_x,ref_y)、(cur_x,cur_y)分别表示所述已编码的数据块、所述待编码数据块在所述多媒体数据帧中的坐标,Floor()表示向下取整。
再例如,所述第一位置信息和所述第二位置信息分别为所述已编码的数据块、所述待编码数据块在所述多媒体数据帧中的坐标;当所述多媒体数据帧的编码方式为并行编码方式或者串行编码方式,所述最大编码块的尺寸为64x64,编码片的宽高分别为1024和720,W和H的值都等于64,且在所述回写限制条件下所述已编码的数据块与所述待编码数据块之间的间隔数据块限制距离为4,在所述编码处理条件下所述已编码的数据块与所述待编码数据块之间的间隔数据块限制距离为1时,所述全局参考数据块集合中的第二参考数据块为与所述待编码数据块属于同一编码片,且坐标满足如下公式(9)的已编码的数据块:
Figure BDA0003312919590000221
其中,(ref_x,ref_y)、(cur_x,cur_y)分别表示所述已编码的数据块、所述待编码数据块在所述多媒体数据帧中的坐标,Floor()表示向下取整。
需要说明的是,当该多媒体数据帧的编码方式为并行编码方式或串行编码方式时,计算机设备还可以通过如下方式获取全局参考数据块集合:根据第一位置信息、第二位置信息以及最大编码块的尺寸信息,确定已编码的数据块与待编码数据块之间的间隔数据块数量,并确定在回写延时条件下以及编码处理条件下已编码的数据块与待编码数据块之间的目标间隔限制数据块数量,目标间隔限制数据块数量是指满足回写延时条件以及编码处理条件下已编码的数据块与待编码数据块之间的最少间隔数据块数量,将多媒体数据帧中与待编码数据块属于同一编码片,且间隔数据块数量大于该目标间隔限制数据块数量的已编码的数据块,作为第二参考数据块,将第二参考数据块添加至全局参考数据块集合。
可选的,计算机设备可以从如下两种方式中选择一种方式或至少两种组合方式,获取局部参考数据块集合:
方式一:该局部参考数据块集合包括一个或多个第三参考数据块;该局部参考数据块集合的第三参考数据块为该多媒体数据帧中与该待编码数据块位于同一编码处理单元的已编码的数据块。该编码处理单元也可以称为片上内存的基本单元(VPDU,VirtualPipeline Data Units),VPDU的尺寸信息可以根据编码器的编码处理能力确定的,例如,VPDU的尺寸为VPDU_WxVPDU_H,VPDU_W和VPDU_H的值均可以为4、8、16、32、64、128等等。也就是说,将多媒体数据帧中坐标满足ref_x/VPDU_W=cur_x/VPDU_W且ref_y/VPDU_H=cur_y/VPDU_H的已编码的数据块,作为第二参考数据块。再例如,如果VPDU的大小为64x64,则待编码数据块所属的VPDU 64x64中已编码的数据块均可以作为待编码数据块的参考数据块。或者,如果VPDU的大小为64x64,将多媒体数据帧中坐标满足Floor(ref_x/64)=Floor(cur_x/64)且Floor(ref_y/64)=Floor(cur_y/64)的已编码的数据块,作为第二参考数据块。
方式二:该局部参考数据块集合包括一个或多个第四参考数据块;该局部参考数据块集合的第四参考数据块为所述多媒体数据帧中与所述待编码数据块具有相邻关系,且与所述待编码数据块属于同一个编码片的已编码的数据块。其中,第四参考数据块与待编码数据块之间具有相邻关系可以包括如下三种情况中的一种或多种组合情况:
a、所述第四参考数据块与所述待编码数据块具有相邻关系是指:所述第四参考数据块与所述待编码数据块属于同一个最大编码块。
b、所述第四参考数据块与所述待编码数据块具有相邻关系是指:所述第四参考数据块位于与所述待编码数据块相邻的N个最大编码块内,且所述最大编码块的尺寸小于尺寸阈值;N是根据所述最大编码块的尺寸信息确定的。例如,多媒体数据帧的编码方向为从左到右,尺寸阈值可以是根据应用场景动态或用户需求设置的,如尺寸阈值可以为128x128,则第四参考数据块与所述待编码数据块具有相邻关系是指:该第四参考数据块位于该待编码数据块的左侧的N个最大编码块内,且该最大编码块的尺寸小于128x128。N可以是根据如下公式(10)确定的:
Figure BDA0003312919590000231
其中,log2_sb_size是指中间变量,sb_size是指最大编码块的尺寸。
c、所述第四参考数据块与所述待编码数据块具有相邻关系是指:所述第四参考数据块位于与所述待编码数据块相邻的N个最大编码块内,且所述最大编码块的尺寸大于或等于尺寸阈值;所述多媒体数据帧中与所述第四参考数据块向右移动一个最大编码块后所在区域中位于左上角的数据块为未重建的数据块;所述第四参考数据块移动(移动方向与编码方向相同)一个最大编码块的距离时的位置信息,与所述待编码数据块的位置信息不相同;N是根据所述最大编码块的尺寸信息确定的。也就是说,当述最大编码块的尺寸大于或等于尺寸阈值,如最大编码块的尺寸为128x128时,第四参考数据块需要满足如下三个条件:1、与所述待编码数据块属于同一个编码片的已编码的数据块;2、第四参考数据块向右移动128个像素后坐标为(ref_x+128,ref_y),则多媒体数据帧中坐标为(ref_x+128,ref_y)的数据块为未重建的数据块;3、该第四参考数据块向右侧移动一个最大编码块的距离时的位置信息,与该待编码数据块的位置信息不相同,该条件可以采用公式(11)表示:
Figure BDA0003312919590000241
其中,公式(11)中!=表示不等于。
可选的,该第一参考数据块、所述第二参考数据块、该第三参考数据块以及第四参考数据块与所述待编码数据块之间的距离均小于第二距离阈值;该第二距离阈值可以是根据应用场景或用户需求动态设置的,如该第二距离阈值可以为214,同时,该第一参考数据块、第二参考数据块、该第三参考数据块以及第四参考数据块位于所述多媒体数据帧的整像素位置。
例如,当多媒体数据帧的编码方式为并行编码方式,最大编码块的尺寸为128*128,在回写延时限制条件下已编码的数据块与待编码数据块之间的间隔限制数据块数量为4,在编码处理条件下已编码的数据块与待编码数据块之间的间隔限制数据块数量为2,局部参考数据块集合的获取方式为上述方式一,VPDU的尺寸为64x64时,全局参考数据块集合、局部参考数据块集合与待编码数据块之间的关系如图8所示。图8中一个最小方格(即虚线画出的小方格)的尺寸为64x64,实线画出的小方格的尺寸为128x128,数据块的尺寸为32x32。因此,图8中多媒体数据帧中位于第一行的第19个格子中的已编码的数据块属于局部参考数据块集合,该局部参考数据块集合用于对第一行的第19个格子中的待编码数据块进行编码。多媒体数据帧中第一行和第二行中与待编码数据块相隔8个数据块的已编码的数据块属于全局参考数据块集合,该全局参考数据块集合用于对第一行的第19个格子中的待编码数据块进行编码。从图8可知,全局参考数据块集合中的参考数据块数量比局部参考数据块集合中的参考数据块数量,全局参考数据块集合中的参考数据块与待编码数据块不具有相邻关系,局部参考数据块集合中数据块与待编码数据块之间具有相邻关系。
例如,当多媒体数据帧的编码方式为并行编码方式,最大编码块的尺寸为128*128,在回写延时限制条件下已编码的数据块与待编码数据块之间的间隔限制数据块数量为4,在编码处理条件下已编码的数据块与待编码数据块之间的间隔限制数据块数量为2,局部参考数据块集合的获取方式为上述方式二,VPDU的尺寸为64x64时,全局参考数据块集合、局部参考数据块集合与待编码数据块之间的关系如图9所示。图9中一个最小方格(即虚线画出的小方格)的尺寸为64x64,实线画出的小方格的尺寸为128x128,数据块的尺寸为32x32。因此,图9中多媒体数据帧中位于第一行的第19个格子中的已编码的数据块,以及位于待编码数据块的左边的最大编码块中的已编码的数据块属于局部参考数据块集合,该局部参考数据块集合用于对第一行的第19个格子中的待编码数据块进行编码。多媒体数据帧中第一行和第二行中与待编码数据块相隔8个数据块的已编码的数据块属于全局参考数据块集合,该全局参考数据块集合用于对第一行的第19个格子中的待编码数据块进行编码。从图9可知,全局参考数据块集合中的参考数据块数量比局部参考数据块集合中的参考数据块数量,全局参考数据块集合中的参考数据块与待编码数据块不具有相邻关系,局部参考数据块集合中的数据块与待编码数据块之间具有相邻关系。
可选的,针对任一多媒体数据帧,计算机设备可以从全局参考数据块集合和局部参考数据块集合中,选择用于对待编码数据块进行编码的参考数据块。或者,计算机设备可以对根据待编码数据块的编码模式,来自适应地选择参考数据块集合,从所选择的参考数据块集合中确定用于对待编码数据块进行编码的参考数据块。具体的,计算机设备可以获取该待编码数据块的编码模式;若所述待编码数据块的编码模式为帧内块复制模式或帧内串复制模式,则从所述全局参考数据块集合和所述局部参考数据块集合中,选择用于对所述待编码数据块进行预测编码的参考数据块。待编码数据块的编码模式可以是指根据多媒体数据帧的媒体类型确定的,或者,待编码数据块的编码模式可以是指根据多媒体数据帧的编码标志(或参考标志)确定的。特别地,待编码数据块的编码模式可以是指待编码数据块的预测模式。
可选的,所述若所述待编码数据块的编码模式为帧内块复制模式或帧内串复制模式,则上述从所述全局参考数据块集合和所述局部参考数据块集合中,选择用于对所述待编码数据块进行预测编码的参考数据块,包括:若所述待编码数据块的编码模式为帧内块复制模式或帧内串复制模式,则由于局部参考数据块与待编码数据块之间具有相邻关系,局部参考数据块中的第二参考数据块与待编码数据块之间的相关性比较强,因此,计算机设备可以优先搜索局部参考数据块集合,如果在局部参考数据块集合中搜索到满足条件的参考数据块,不需要对全局参考数据块集合进行搜索,如果在局部参考数据块集合中未搜索到满足条件的参考数据块,再对全局参考数据块集合进行搜索,有利于提高搜索参考数据块的效率,避免不必要的资源浪费。例如,首先,计算机设备可以获取所述局部参考数据块集合中的第二参考数据块与所述待编码数据块之间的像素差异,此处像素差异可以是指第二参考数据块的像素与待编码数据块的像素之间的均方误差或者绝对差值的和;若所述局部参考数据块集合中存在像素差异小于像素差异阈值的目标数据块,表明目标数据块与待编码数据块之间具有较强的相关性,则将所述目标数据块作为用于对所述待编码数据块进行预测编码的参考数据块;若所述局部参考数据块集合中不存在像素差异小于所述像素差异阈值的目标数据块,表明局部参考数据块集合中的第二参考数据块与待编码数据块之间的相关性均比较弱,则从所述全局参考数据块集合中,选择用于对所述待编码数据块进行预测编码的参考数据块。
可选的,所述若所述待编码数据块的编码模式为帧内块复制模式或帧内串复制模式,则从所述全局参考数据块集合和所述局部参考数据块集合中,选择用于对所述待编码数据块进行预测编码的参考数据块,包括:若所述待编码数据块的编码模式为帧内块复制模式或帧内串复制模式,则计算机设备可以根据与待编码数据块之间具有空间相邻关系的目标已编码数据块确定参考数据块。此处具有空间相邻关系的目标已编码数据块可以是指与待编码数据块之间具有位置相邻关系的所有已编码的数据块,或者,具有空间相邻关系的目标已编码数据块可以是指与待编码数据块之间具有位置相邻关系,且与待编码数据块的像素具有强相关的已编码的数据块。具体的,计算机设备可以获取与所述待编码数据块之间具有空间相邻关系的目标已编码数据块;若所述目标已编码数据块的参考数据块属于所述全局参考数据块集合和所述局部参考数据块集合,则按照移动参数在所述全局参考数据块集合和所述局部参考数据块集合所对应的区域中精细化搜索,得到用于对所述待编码数据块进行预测编码的参考数据块;这时该待编码数据块的参考数据块属于全局参考数据块集合或者属于局部参考数据块集合,或者,该待编码数据块的参考数据块的第一区域属于全局参考数据块集合,且该待编码数据块的参考数据块的第二区域属于局部参考数据块集合,第一区域所在的数据块与该第二区域所属的数据块具有位置相邻关系。通过按照一移动参数搜索参考数据块,有利于搜索得到最优的参考数据块,提高编码性能。若所述目标已编码数据块的参考数据块均属于所述全局参考数据块集合,则跳过局部参考数据块集合,并按照移动参数在所述全局参考数据块集合所对应的区域中精细化搜索,得到用于对所述待编码数据块进行预测编码的参考数据块;若所述目标已编码数据块的参考数据块均属于所述局部参考数据块集合,则跳过全局参考数据块集合,并按照移动参数在所述局部参考数据块集合所对应的区域中精细化搜索,得到用于对所述待编码数据块进行预测编码的参考数据块。
其中,所述移动参数包括移动窗口以及移动步长,所述移动窗口的尺寸与所述待编码数据块的尺寸相同,所述移动步长小于所述移动窗口的宽度。
进一步地,请参见图10,是本申请实施例提供的一种多媒体数据处理方法的流程示意图。如图10所示,该方法至少可以包括以下S201-S202:
S201、获取与多媒体数据帧中的待解码数据块相关联的全局参考数据块集合和局部参考数据块集合;全局参考数据块集合包括所述多媒体数据帧中与所述待解码数据块之间不具有相邻关系的已解码的数据块,所述局部参考数据块集合包括所述多媒体数据帧中与所述待解码数据块之间具有相邻关系的已解码的数据块。
本申请中,计算机设备可以获取多媒体数据帧;该多媒体数据帧可以是指由计算机设备所拍摄得到的,或者,该多媒体数据帧可以是由计算机设备从网络中下载得到的。该多媒体数据帧是指视频数据中待解码的视频帧或图像数据中待解码的一帧图像,视频数据可以是指直播视频数据、影视视频数据、日常生活视频数据、道路监控视频数据等等;图像数据可以是指人物图像数据、建筑图像数据、物品图像数据等等。进一步,计算机设备可以根据解码方式、回写延时、已解码的数据块与待解码数据块之间的相关性等信息中的至少一种获取与该多媒体数据帧相关联的全局参考数据块集合,并根据用于存储局部参考数据块集合的存储空间大小、已解码的数据块与待解码数据块之间的相关性等信息中的至少一种获取与多媒体数据帧相关联的全局参考数据块集合和局部参考数据块集合。
需要说明的是,全局参考数据块集合和局部参考数据块集合分别存储在第一存储空间和第二存储空间,第一存储空间和第二存储空间可以位于同一个计算机设备中,也可以位于不同计算机设备中。第一存储空间和第二存储空间具体可以是指磁盘,或者,存储介质阵列等等,本申请对此不做限定。特别地,当该第一存储空间和第二存储空间位于同一个计算机设备中时,第一存储空间可以是指计算机设备的片外存储器,第二存储空间可以是指计算机设备的片上存储器;或者,第一存储空间可以是指计算机设备的片上存储器,第二存储空间可以是指计算机设备的片外存储器;本申请对此不做限定。
S202、从该局部参考数据块集合和全局参考数据块集合中,选择用于对待解码数据块进行解码的参考数据块。
本申请中,计算机设备可以根据应用场景或用户需求等自适应地,从该全局参考数据块集合和局部参考数据块集合中选择参考数据块,根据参考数据块对该多媒体数据帧中待解码数据块进行解码;扩展了参考数据块的选择范围,可提高对多媒体数据帧的解码性能。
例如,计算机设备可以获取待解码数据块的属性信息,根据该待解码数据块的属性信息,从该局部参考数据块集合和全局参考数据块集合中,选择用于对待解码数据块进行解码的参考数据块。其中,待解码数据块的属性信息包括待解码数据块所属的多媒体数据帧的媒体类型、多媒体数据帧的参考标志、待解码数据块所属的多媒体数据帧的清晰度等等中的一种或多种;媒体类型包括帧内和帧间,帧内类型可以是指具有代表意义的多媒体数据帧,帧内类型是全帧内解码帧,Intra帧,I帧,关键帧。这种类型的帧只允许使用帧内解码技术,不需要依赖其他帧进行解码。例如,帧内类型可以是指能够体现视频数据或图像数据中主要含义的多媒体数据帧;帧间类型可以是指视频数据或图像数据中除帧内类型以外的多媒体数据帧,帧间类型可以称为帧间解码帧,P帧,B帧,非关键帧。这种类型的帧允许使用帧间解码技术和帧内解码技术,通常当采用帧间解码技术时,需要在参考帧解码完成后才可以进行解码。多媒体数据帧的参考标志用于反映待解码数据块的参考数据块的选择范围(即选择哪个参考数据块集合)。
本申请中,计算机设备可以获取该全局参考数据块集合和局部参考数据块集合,有利于根据应用场景或用户需求等自适应地,从该全局参考数据块集合和局部参考数据块集合中选择参考数据块,根据参考数据块对该多媒体数据帧中待解码数据块进行解码;扩展了参考数据块的选择范围,可提高对多媒体数据帧的解码性能。
可选的,计算机设备可以根据多媒体数据帧的解码方式从如下两种方式中选择一种方式,获取全局参考数据块集合:
方式一:该全局数据块集合包括一个或多个第一参考数据块;当该多媒体数据帧的解码方式为串行解码方式时,该全局参考数据块集合中的第一参考数据块为所述多媒体数据帧中参数关联关系满足回写限制条件,且与所述待解码数据块属于同一个解码片的已解码的数据块;所述参数关联关系用于反映第一位置信息,与最大解码块的尺寸信息和第二位置信息之间的关联关系,所述第一位置信息、第二位置信息分别是指已解码的数据块、所述待解码数据块在所述多媒体数据帧中的位置信息;所述回写限制条件用于反映将所述已解码的数据块写入至所述全局参考数据块集合的限制时延。也就是说,串行解码方式是指同一时间仅对多媒体数据帧中的一个数据块进行解码,如果多媒体数据帧的解码方式为串行解码方式时,该解码方式不会对参考数据块的确定过程造成影响。但是,已解码的数据块写入至全局参考数据块集合中会带来较大回写延时,即已解码的数据块写入至全局参考数据块集合中需要消耗较长时间,因此,已解码的数据块至少等待预设时长后,才能够被用于作为参考数据块,预设时长是根据将所述已解码的数据块写入至所述全局参考数据块集合的限制时延确定的,该限制时延可以是指将已解码的数据块写入至全局参考数据块集合中的平均时延、最大时延以及最小时延等中的一种。由此可知,当该多媒体数据帧的解码方式为串行解码方式时,该全局参考数据块集合中的第一参考数据块需要满足以下两个条件:a、与待解码数据块属于同一个解码片;b、参数关联关系满足回写限制条件。
方式二:所述全局数据块集合包括一个或多个第二参考数据块;当该多媒体数据帧的解码方式为并行解码方式或者为串行解码方式时,该全局参考数据块集合的第二参考数据块为与该待解码数据块属于同一个解码片,且该多媒体数据帧中参数关联关系满足回写限制条件,以及该参数关联关系满足解码处理条件的已解码的数据块;该参数关联关系用于反映已解码的数据块、该待解码数据块分别在该多媒体数据帧中的位置信息,以及最大解码块的尺寸信息之间的关联关系;该回写限制条件用于反映将该已解码的数据块写入至该全局参考数据块集合的限制时延。也就是说,并行解码方式是指同一时间对多媒体数据帧中的多个数据块进行预测解码,如果多媒体数据帧的解码方式为并行解码方式时,该解码方式会对参考数据块的确定过程造成影响。同时,已解码的数据块写入至全局参考数据块集合中会带来较大回写延时,由此可知,当该多媒体数据帧的解码方式为并行解码方式时,该全局参考数据块集合中的第二参考数据块需要满足以下三个条件:a、与待解码数据块属于同一个解码片;b、参数关联关系满足回写限制条件;c、参数关联关系满足解码处理条件。特别的,当该多媒体数据帧的解码方式为串行解码方式时,也可以采用方式二获取全局参考数据块集合。此处解码处理条件可以是指并行解码处理条件。
需要说明的是,全局参考数据块集合的具体获取方式可以参考编码端获取全局参考数据块集合的获取方式,重复之处,不再赘述。
可选的,待编码数据块与已编码数据块之间具有相邻关系可以是指待编码数据块的编码顺序与已编码的数据块的编码顺序相邻;待编码数据块与已编码的数据块之间不具有相邻关系可以是指待编码数据块的编码顺序与已编码的数据块的编码顺序不相邻。
可选的,计算机设备可以从如下两种方式中选择一种方式或至少两种组合方式,获取局部参考数据块集合:
方式一:局部数据块集合包括一个或多个第三参考数据块;该局部参考数据块集合的第三参考数据块为该多媒体数据帧中与该待解码数据块位于同一解码处理单元的已解码的数据块。该解码处理单元也可以称为片上内存的基本单元(VPDU,Virtual PipelineData Units),VPDU的尺寸信息可以根据解码器的解码处理能力确定的,例如,VPDU的尺寸为VPDU_WxVPDU_H,VPDU_W和VPDU_H的值均可以为4、8、16、32、64、128等等。也就是说,将多媒体数据帧中坐标满足ref_x/VPDU_W=cur_x/VPDU_W且ref_y/VPDU_H=cur_y/VPDU_H的已解码的数据块,作为第三参考数据块。再例如,如果VPDU的大小为64x64,则待解码数据块所属的VPDU 64x64中已解码的数据块均可以作为待解码数据块的参考数据块。或者,如果VPDU的大小为64x64,将多媒体数据帧中坐标满足Floor(ref_x/64)=Floor(cur_x/64)且Floor(ref_y/64)=Floor(cur_y/64)的已解码的数据块,作为第三参考数据块。
方式二:局部数据块集合包括一个或多个第四参考数据块;该局部参考数据块集合的第四参考数据块为所述多媒体数据帧中与所述待解码数据块具有相邻关系,且与所述待解码数据块属于同一个解码片的已解码的数据块。其中,第四参考数据块与待解码数据块之间具有相邻关系可以包括如下三种情况中的一种或多种组合情况:
a、所述第四参考数据块与所述待解码数据块具有相邻关系是指:所述第四参考数据块与所述待解码数据块属于同一个最大解码块。
b、所述第四参考数据块与所述待解码数据块具有相邻关系是指:所述第四参考数据块位于与所述待解码数据块相邻的N个最大解码块内,且所述最大解码块的尺寸小于尺寸阈值;N是根据所述最大解码块的尺寸信息确定的。
需要说明的是,最大编码块的尺寸与最大解码块的尺寸相同,待编码数据块的尺寸与待解码数据块的尺寸相同,编码片的尺寸与解码片的尺寸相同。
可选的,该第一参考数据块、所述第二参考数据块、该第三参考数据块、该第四参考数据块与所述待解码数据块之间的距离均小于第二距离阈值;该第二距离阈值可以是根据应用场景或用户需求动态设置的,如该第二距离阈值可以为214,同时,该第一参考数据块、第二参考数据块、该第三参考数据块、该第四参考数据块位于所述多媒体数据帧的整像素位置。
可选的,针对任一多媒体数据帧,计算机设备可以从全局参考数据块集合和局部参考数据块集合中,选择用于对待解码数据块进行解码的参考数据块。或者,计算机设备可以对根据待解码数据块的解码模式,来自适应地选择参考数据块集合,从所选择的参考数据块集合中确定用于对待解码数据块进行解码的参考数据块。具体的,计算机设备可以获取该待解码数据块的解码模式;若所述待解码数据块的解码模式为帧内块复制模式或帧内串复制模式,则从所述全局参考数据块集合和所述局部参考数据块集合中,选择用于对所述待解码数据块进行解码的参考数据块。待解码数据块的解码模式可以是指根据多媒体数据帧的媒体类型确定的,或者,待解码数据块的解码模式可以是指根据多媒体数据帧的解码标志(或参考标志)确定的。特别地,待解码数据块的解码模式可以是指待解码数据块的预测模式。
请参见图11,是本申请实施例提供的一种多媒体数据处理装置的结构示意图。上述多媒体数据处理装置可以是运行于计算机设备中的一个计算机程序(包括程序代码),例如该多媒体数据处理装置为一个应用软件;该装置可以用于执行本申请实施例提供的方法中的相应步骤。如图11所示,该多媒体数据处理装置可以包括:获取模块111、选择模块112。
获取模块,用于获取与多媒体数据帧中的待编码数据块相关联的全局参考数据块集合和局部参考数据块集合;所述全局参考数据块集合包括为所述多媒体数据帧中与所述待编码数据块之间不具有相邻关系的已编码的数据块,所述局部参考数据块集合包括所述多媒体数据帧中与所述待编码数据块之间具有相邻关系的已编码的数据块;
选择模块,用于从所述全局参考数据块集合和所述局部参考数据块集合中,选择用于对所述待编码数据块进行预测编码的参考数据块。
可选的,所述选择模块从所述全局参考数据块集合和所述局部参考数据块集合中,选择用于对所述待编码数据块进行预测编码的参考数据块,包括:
获取所述待编码数据块的编码模式;
若所述待编码数据块的编码模式为帧内块复制模式或帧内串复制模式,则从所述全局参考数据块集合和所述局部参考数据块集合中,选择用于对所述待编码数据块进行预测编码的参考数据块。
可选的,所述选择模块若所述待编码数据块的编码模式为帧内块复制模式或帧内串复制模式,则从所述全局参考数据块集合和所述局部参考数据块集合中,选择用于对所述待编码数据块进行预测编码的参考数据块,包括:
若所述待编码数据块的编码模式为帧内块复制模式或帧内串复制模式,则获取所述局部参考数据块集合中的第二参考数据块与所述待编码数据块之间的像素差异;
若所述局部参考数据块集合中存在像素差异小于像素差异阈值的目标数据块,则将所述目标数据块作为用于对所述待编码数据块进行预测编码的参考数据块;
若所述局部参考数据块集合中不存在像素差异小于所述像素差异阈值的目标数据块,则从所述全局参考数据块集合中,选择用于对所述待编码数据块进行预测编码的参考数据块。
可选的,所述选择模块若所述待编码数据块的编码模式为帧内块复制模式或帧内串复制模式,则从所述全局参考数据块集合和所述局部参考数据块集合中,选择用于对所述待编码数据块进行预测编码的参考数据块,包括:
若所述待编码数据块的编码模式为帧内块复制模式或帧内串复制模式,则获取与所述待编码数据块之间具有空间相邻关系的目标已编码数据块;
若所述目标已编码数据块的参考数据块属于所述全局参考数据块集合和所述局部参考数据块集合,则按照移动参数在所述全局参考数据块集合和所述局部参考数据块集合所对应的区域中搜索,得到用于对所述待编码数据块进行预测编码的参考数据块;所述移动参数包括移动窗口以及移动步长,所述移动窗口的尺寸与所述待编码数据块的尺寸相同,所述移动步长小于所述移动窗口的宽度。
可选的,该全局参考数据块集合包括一个或多个第一参考数据块;当所述多媒体数据帧的编码方式为串行编码方式时,所述全局参考数据块集合中的第一参考数据块为所述多媒体数据帧中参数关联关系满足回写限制条件,且与所述待编码数据块属于同一个编码片的已编码的数据块;
所述参数关联关系用于反映第一位置信息,与最大编码块的尺寸信息和第二位置信息之间的关联关系,所述第一位置信息、第二位置信息分别是指已编码的数据块、所述待编码数据块在所述多媒体数据帧中的位置信息;
所述回写限制条件用于反映将所述已编码的数据块写入至所述全局参考数据块集合的限制时延。
可选的,获取模块,用于当所述多媒体数据帧的编码方式为串行编码方式时,分别获取第一位置信息,以及所述最大编码块的尺寸信息和第二位置信息;所述第一位置信息、第二位置信息分别是指已编码的数据块、所述待编码数据块在所述多媒体数据帧中的位置信息;获取回写限制条件;所述回写限制条件用于反映将所述已编码的数据块写入至所述全局参考数据块集合的限制时延;从所述多媒体数据帧中筛选出参数关联关系满足回写限制条件,且与所述待编码数据块属于同一个编码片的已编码的数据块,作为第一参考数据块;所述参数关联关系用于反映所述第一位置信息,与所述最大编码块的尺寸信息和所述第二位置信息之间的关联关系;将所述第一参考数据块添加至所述全局参考数据块集合。
可选的,所述获取模块从所述多媒体数据帧中筛选出参数关联关系满足回写限制条件,且与所述待编码数据块属于同一个编码片的已编码的数据块,作为第一参考数据块,包括:
根据所述第一位置信息和所述第二位置信息,从所述多媒体数据帧中筛选出与所述待编码数据块属于同一编码片的已编码的数据块,作为第一候选参考数据块;
确定在所述回写限制条件下所述多媒体数据帧中已编码的数据块,与所述待编码数据块之间的间隔数据块限制数量;
根据所述第一位置信息、所述最大编码块的尺寸信息和所述第二位置信息,统计所述第一候选参考数据块与所述待编码数据块之间的间隔数据块数量;
将间隔数据块数量大于所述间隔数据块限制数量的第一候选参考数据块,确定为第一参考数据块。
可选的,所述获取模块根据所述第一位置信息、所述最大编码块的尺寸信息和第二位置信息,统计所述第一候选参考数据块与所述待编码数据块之间的间隔数据块数量,包括:
根据所述第一位置信息以及所述最大编码块的尺寸信息确定所述第一候选参考数据块的行标识和列标识;
根据所述第二位置信息以及所述最大编码块的尺寸信息确定所述待编码数据块的行标识和列标识;
基于所述待编码数据块的尺寸信息确定所述多媒体数据帧中每行的数据块数量;
根据所述每行的数据块数量、所述第一候选参考数据块的行标识和列标识,以及所述待编码数据块的行标识和列标识,统计所述第一候选参考数据块与所述待编码数据块之间的间隔数据块数量。
可选的,该全局参考数据块集合包括一个或多个第二参考数据块;所述全局参考数据块集合的第二参考数据块为与所述待编码数据块属于同一个编码片,且所述多媒体数据帧中参数关联关系满足回写限制条件,以及所述参数关联关系满足编码处理条件的已编码的数据块;所述参数关联关系用于反映已编码的数据块、所述待编码数据块分别在所述多媒体数据帧中的位置信息,以及最大编码块的尺寸信息之间的关联关系;所述回写限制条件用于反映将所述已编码的数据块写入至所述全局参考数据块集合的限制时延。
可选的,获取模块,用于分别获取第一位置信息,以及所述最大编码块的尺寸信息和第二位置信息;所述第一位置信息、第二位置信息分别是指已编码的数据块、所述待编码数据块在所述多媒体数据帧中的位置信息;获取回写限制条件以及编码处理条件;所述回写限制条件用于反映将所述已编码的数据块写入至所述全局参考数据块集合的限制时延;从所述多媒体数据帧中筛选出参数关联关系满足回写限制条件和所述编码处理条件,且与所述待编码数据块属于同一个编码片的已编码的数据块,作为第二参考数据块;所述参数关联关系用于反映所述第一位置信息,与所述待编码数据块的尺寸信息和所述第二位置信息之间的关联关系;将所述第二参考数据块添加至所述全局参考数据块集合。
可选的,所述获取模块从所述多媒体数据帧中筛选出参数关联关系满足回写限制条件和所述编码处理条件,且与所述待编码数据块属于同一个编码片的已编码的数据块,作为第二参考数据块,包括:
根据所述第一位置信息和所述第二位置信息,从所述多媒体数据帧中筛选出与所述待编码数据块属于同一编码片的已编码的数据块,作为第一候选参考数据块;
从所述第一候选参考数据块中筛选出参数关联关系满足回写限制条件的第一候选参考数据块,作为第二候选参考数据块;
确定在所述回写限制条件下所述多媒体数据帧中已编码的数据块,与所述待编码数据块之间的第一数据块限制距离;
确定在所述编码处理条件下所述多媒体数据帧中已编码的数据块,与所述待编码数据块之间的第二数据块限制距离;
根据所述第一位置信息、所述最大编码块的尺寸信息和所述第二位置信息、所述第一数据块限制距离和所述第二数据块限制距离,从所述第二候选参考数据块中确定出满足所述编码处理条件的第二候选参考数据块,作为第二参考数据块。
可选的,所述获取模块根据所述第一位置信息、所述最大编码块的尺寸信息和第二位置信息、所述第一数据块限制距离和所述第二数据块限制距离,从所述第二候选参考数据块中确定出满足所述编码处理条件的第二候选参考数据块,作为第二参考数据块,包括:
根据所述第一位置信息以及所述最大编码块的尺寸信息确定所述第二候选参考数据块的行标识和列标识;
根据所述第二位置信息以及所述最大编码块的尺寸信息确定所述待编码数据块的行标识和列标识;
从所述第二候选参考数据块中筛选出行标识小于或等于所述待编码数据块的行标识的第二候选参考数据块,作为第三候选参考数据块;
根据所述第三候选参考数据块的行标识和所述待编码数据块的行标识确定所述第三候选参考数据块与所述待编码数据块之间的行距离;
根据所述第三候选参考数据块的列标识和所述待编码数据块的列标识确定所述第三候选参考数据块与所述待编码数据块之间的列距离;
将所述第三候选参考数据块中列距离小于第一距离阈值的第三候选参考数据块,确定为第二参考数据块;所述第一距离阈值是根据所述第一数据块限制距离、所述第二数据块限制距离、所述第三候选参考数据块与所述待编码数据块之间的行距离确定的。
可选的,所述局部参考数据块集合包括一个或多个第三参考数据块,所述第三参考数据块为所述多媒体数据帧中与所述待编码数据块位于同一编码处理单元的已编码的数据块。
可选的,所述局部参考数据块集合包括一个或多个第四参考数据块,所述第四参考数据块为所述多媒体数据帧中与所述待编码数据块具有相邻关系,且与所述待编码数据块属于同一个编码片的已编码的数据块。
可选的,所述第四参考数据块与所述待编码数据块具有相邻关系是指:所述第四参考数据块与所述待编码数据块属于同一个最大编码块。
可选的,所述第四参考数据块与所述待编码数据块具有相邻关系是指:所述第四参考数据块位于与所述待编码数据块相邻的N个最大编码块内,且所述最大编码块的尺寸小于或等于尺寸阈值;N是根据所述最大编码块的尺寸信息确定的。
可选的,所述第四参考数据块与所述待编码数据块具有相邻关系是指:所述第四参考数据块位于与所述待编码数据块相邻的N个最大编码块内,且所述最大编码块的尺寸大于或等于尺寸阈值;所述多媒体数据帧中与所述第二参考数据块向右移动一个最大编码块后所在区域中位于左上角的数据块为未重建的数据块;所述第四参考数据块移动一个最大编码块的距离时的位置信息,与所述待编码数据块的位置信息不相同;N是根据所述最大编码块的尺寸信息确定的。
可选的,所述第一参考数据块、所述第二参考数据块、所述第三参考数据块、所述第四参考数据块与所述待编码数据块之间的距离均小于第二距离阈值;所述第一参考数据块、所述第二参考数据块、所述第三参考数据块、所述第四参考数据块位于所述多媒体数据帧的整像素位置。
根据本申请的一个实施例,图7所示的数据处理方法所涉及的步骤可由图11所示的数据处理装置中的各个模块来执行。例如,图7中所示的步骤S101可由图11中的获取模块111来执行,图7中所示的步骤S102可由图11中的选择模块112来执行。
根据本申请的一个实施例,图11所示的多媒体数据处理装置中的各个模块可以分别或全部合并为一个或若干个单元来构成,或者其中的某个(些)单元还可以再拆分为功能上更小的至少两个子单元,可以实现同样的操作,而不影响本申请的实施例的技术效果的实现。上述模块是基于逻辑功能划分的,在实际应用中,一个模块的功能也可以由至少两个单元来实现,或者至少两个模块的功能由一个单元实现。在本申请的其它实施例中,数据处理装置也可以包括其它单元,在实际应用中,这些功能也可以由其它单元协助实现,并且可以由至少两个单元协作实现。
根据本申请的一个实施例,可以通过在包括中央处理单元(CPU)、随机存取存储介质(RAM)、只读存储介质(ROM)等处理元件和存储元件的例如计算机的通用计算机设备上运行能够执行如图10和图11中所示的相应方法所涉及的各步骤的计算机程序(包括程序代码),来构造如图11中所示的多媒体数据处理装置,以及来实现本申请实施例的数据处理方法。上述计算机程序可以记载于例如计算机可读记录介质上,并通过计算机可读记录介质装载于上述计算设备中,并在其中运行。
本申请中,计算机设备可以获取该全局参考数据块集合和局部参考数据块集合,有利于编码终端可以根据应用场景或用户需求等自适应地,从该全局参考数据块集合和局部参考数据块集合中选择参考数据块,根据参考数据块对该多媒体数据帧中待编码数据块进行预测编码;扩展了参考数据块的选择范围,可提高对多媒体数据帧的编码性能。
请参见图12,是本申请实施例提供的一种多媒体数据处理装置的结构示意图。上述多媒体数据处理装置可以是运行于计算机设备中的一个计算机程序(包括程序代码),例如该多媒体数据处理装置为一个应用软件;该装置可以用于执行本申请实施例提供的方法中的相应步骤。如图12所示,该多媒体数据处理装置可以包括:获取模块121、选择模块122。
获取模块,用于获取与多媒体数据帧中的待解码数据块相关联的全局参考数据块集合和局部参考数据块集合;所述全局参考数据块集合包括所述多媒体数据帧中与所述待解码数据块之间不具有相邻关系的已解码的数据块,所述局部参考数据块集合包括所述多媒体数据帧中与所述待解码数据块之间具有相邻关系的已解码的数据块;
选择模块,用于从所述全局参考数据块集合和所述局部参考数据块集合中,选择用于对所述待解码数据块进行解码的参考数据块。
可选的,所述选择模块从所述全局参考数据块集合和所述局部参考数据块集合中,选择用于对所述待解码数据块进行解码的参考数据块,包括:
获取所述待解码数据块的解码模式;
若所述待解码数据块的解码模式为帧内块复制模式或帧内串复制模式,则从所述全局参考数据块集合和所述局部参考数据块集合中,选择用于对所述待解码数据块进行解码的参考数据块。
可选的,所述全局参考数据块集合包括一个或多个第一参考数据块;当所述多媒体数据帧的解码方式为串行解码方式时,所述全局参考数据块集合中的第一参考数据块为所述多媒体数据帧中参数关联关系满足回写限制条件,且与所述待解码数据块属于同一个解码片的已解码的数据块;
所述参数关联关系用于反映第一位置信息,与最大解码块的尺寸信息和第二位置信息之间的关联关系,所述第一位置信息、第二位置信息分别是指已解码的数据块、所述待解码数据块在所述多媒体数据帧中的位置信息;
所述回写限制条件用于反映将所述已解码的数据块写入至所述全局参考数据块集合的限制时延。
可选的,所述全局参考数据块集合包括一个或多个第二参考数据块;所述全局参考数据块集合中的第二参考数据块为与所述待解码数据块属于同一个解码片,且所述多媒体数据帧中参数关联关系满足回写限制条件,以及所述参数关联关系满足解码处理条件的已解码的数据块;所述参数关联关系用于反映已解码的数据块、所述待解码数据块分别在所述多媒体数据帧中的位置信息,以及最大解码块的尺寸信息之间的关联关系;所述回写限制条件用于反映将所述已解码的数据块写入至所述全局参考数据块集合的限制时延。
可选的,所述局部参考数据块集合包括一个或多个第三参考数据块;所述局部参考数据块集合中的第三参考数据块为所述多媒体数据帧中与所述待解码数据块位于同一解码处理单元的已解码的数据块。
可选的,所述局部参考数据块集合包括一个或多个第四考数据块;所述局部参考数据块集合的第四参考数据块为所述多媒体数据帧中与所述待解码数据块具有相邻关系,且与所述待解码数据块属于同一个解码片的已解码的数据块。
根据本申请的一个实施例,图10所示的数据处理方法所涉及的步骤可由图12所示的数据处理装置中的各个模块来执行。例如,图10中所示的步骤S201可由图12中的获取模块121来执行,图10中所示的步骤S202可由图12中的选择模块122来执行。
根据本申请的一个实施例,图12所示的多媒体数据处理装置中的各个模块可以分别或全部合并为一个或若干个单元来构成,或者其中的某个(些)单元还可以再拆分为功能上更小的至少两个子单元,可以实现同样的操作,而不影响本申请的实施例的技术效果的实现。上述模块是基于逻辑功能划分的,在实际应用中,一个模块的功能也可以由至少两个单元来实现,或者至少两个模块的功能由一个单元实现。在本申请的其它实施例中,数据处理装置也可以包括其它单元,在实际应用中,这些功能也可以由其它单元协助实现,并且可以由至少两个单元协作实现。
根据本申请的一个实施例,可以通过在包括中央处理单元(CPU)、随机存取存储介质(RAM)、只读存储介质(ROM)等处理元件和存储元件的例如计算机的通用计算机设备上运行能够执行如图10和图11中所示的相应方法所涉及的各步骤的计算机程序(包括程序代码),来构造如图12中所示的多媒体数据处理装置,以及来实现本申请实施例的数据处理方法。上述计算机程序可以记载于例如计算机可读记录介质上,并通过计算机可读记录介质装载于上述计算设备中,并在其中运行。
本申请中,计算机设备可以获取该全局参考数据块集合和局部参考数据块集合,有利于根据应用场景或用户需求等自适应地,从该全局参考数据块集合和局部参考数据块集合中选择参考数据块,根据参考数据块对该多媒体数据帧中待解码数据块进行预测解码;扩展了参考数据块的选择范围,可提高对多媒体数据帧的解码性能。
请参见图13,是本申请实施例提供的一种计算机设备的结构示意图。如图13所示,上述计算机设备1000可以包括:处理器1001,网络接口1004和存储器1005,此外,上述计算机设备1000还可以包括:媒体内容接口1003,和至少一个通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。其中,媒体内容接口1003可以包括显示屏(Display)、键盘(Keyboard),可选媒体内容接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是非易失性的存储器(non-volatile memory),例如至少一个磁盘存储器。存储器1005可选的还可以是至少一个位于远离前述处理器1001的存储装置。如图13所示,作为一种计算机可读存储介质的存储器1005中可以包括操作系统、网络通信模块、媒体内容接口模块以及设备控制应用程序。
在图13所示的计算机设备1000中,网络接口1004可提供网络通讯功能;而媒体内容接口1003主要用于为媒体内容提供输入的接口。
应当理解,本申请实施例中所描述的计算机设备1000可执行前文图7以及前文图10所对应实施例中对上述多媒体数据处理方法的描述,也可执行前文图11和图12所对应实施例中对上述多媒体数据处理装置的描述,在此不再赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。
此外,这里需要指出的是:本申请实施例还提供了一种计算机可读存储介质,且上述计算机可读存储介质中存储有前文提及的多媒体数据处理装置所执行的计算机程序,且上述计算机程序包括程序指令,当上述处理器执行上述程序指令时,能够执行前文图7和图10对应实施例中对上述多媒体数据处理方法的描述,因此,这里将不再进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。对于本申请所涉及的计算机可读存储介质实施例中未披露的技术细节,请参照本申请方法实施例的描述。
作为示例,上述程序指令可被部署在一个计算机设备上执行,或者被部署位于一个地点的至少两个计算机设备上执行,又或者,在分布在至少两个地点且通过通信网络互连的至少两个计算机设备上执行,分布在至少两个地点且通过通信网络互连的至少两个计算机设备可以组成区块链网络。
上述计算机可读存储介质可以是前述任一实施例提供的数据处理装置或者上述计算机设备的内部存储单元,例如计算机设备的硬盘或内存。该计算机可读存储介质也可以是该计算机设备的外部存储设备,例如该计算机设备上配备的插接式硬盘,智能存储卡(smart media card,SMC),安全数字(secure digital,SD)卡,闪存卡(flash card)等。进一步地,该计算机可读存储介质还可以既包括该计算机设备的内部存储单元也包括外部存储设备。该计算机可读存储介质用于存储该计算机程序以及该计算机设备所需的其他程序和数据。该计算机可读存储介质还可以用于暂时地存储已经输出或者将要输出的数据。
本申请实施例还提供了一种计算机程序产品,包括计算机程序/指令,所述计算机程序/指令被处理器执行时实现前文图7和图10对应实施例中对上述数据处理方法的描述,因此,这里将不再进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。对于本申请所涉及的计算机程序产品的实施例中未披露的技术细节,请参照本申请方法实施例的描述。
本申请实施例的说明书和权利要求书及附图中的术语“第一”、“第二”等是用于区别不同媒体内容,而非用于描述特定顺序。此外,术语“包括”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、装置、产品或设备没有限定于已列出的步骤或模块,而是可选地还包括没有列出的步骤或模块,或可选地还包括对于这些过程、方法、装置、产品或设备固有的其他步骤单元。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
本申请实施例提供的方法及相关装置是参照本申请实施例提供的方法流程图和/或结构示意图来描述的,具体可由计算机程序指令实现方法流程图和/或结构示意图的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。这些计算机程序指令可提供到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或结构示意图一个方框或多个方框中指定的功能的装置。这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或结构示意图一个方框或多个方框中指定的功能。这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或结构示意一个方框或多个方框中指定的功能的步骤。
以上所揭露的仅为本申请较佳实施例而已,当然不能以此来限定本申请之权利范围,因此依本申请权利要求所作的等同变化,仍属本申请所涵盖的范围。

Claims (26)

1.一种多媒体数据处理方法,其特征在于,包括:
获取与多媒体数据帧中的待编码数据块相关联的全局参考数据块集合和局部参考数据块集合;所述全局参考数据块集合包括所述多媒体数据帧中与所述待编码数据块之间不具有相邻关系的已编码的数据块,所述局部参考数据块集合包括所述多媒体数据帧中与所述待编码数据块之间具有相邻关系的已编码的数据块;
从所述全局参考数据块集合和所述局部参考数据块集合中,选择用于对所述待编码数据块进行预测编码的参考数据块。
2.如权利要求1所述的方法,其特征在于,所述从所述全局参考数据块集合和所述局部参考数据块集合中,选择用于对所述待编码数据块进行预测编码的参考数据块,包括:
获取所述待编码数据块的编码模式;
若所述待编码数据块的编码模式为帧内块复制模式或帧内串复制模式,则从所述全局参考数据块集合和所述局部参考数据块集合中,选择用于对所述待编码数据块进行预测编码的参考数据块。
3.如权利要求2所述的方法,其特征在于,所述若所述待编码数据块的编码模式为帧内块复制模式或帧内串复制模式,则从所述全局参考数据块集合和所述局部参考数据块集合中,选择用于对所述待编码数据块进行预测编码的参考数据块,包括:
若所述待编码数据块的编码模式为帧内块复制模式或帧内串复制模式,则获取所述局部参考数据块集合中的数据块与所述待编码数据块之间的像素差异;
若所述局部参考数据块集合中存在像素差异小于像素差异阈值的目标数据块,则将所述目标数据块作为用于对所述待编码数据块进行预测编码的参考数据块;
若所述局部参考数据块集合中不存在像素差异小于所述像素差异阈值的目标数据块,则从所述全局参考数据块集合中,选择用于对所述待编码数据块进行预测编码的参考数据块。
4.如权利要求2所述的方法,其特征在于,所述若所述待编码数据块的编码模式为帧内块复制模式或帧内串复制模式,则从所述全局参考数据块集合和所述局部参考数据块集合中,选择用于对所述待编码数据块进行预测编码的参考数据块,包括:
若所述待编码数据块的编码模式为帧内块复制模式或帧内串复制模式,则获取与所述待编码数据块之间具有空间相邻关系的目标已编码数据块;
若所述目标已编码数据块的参考数据块属于所述全局参考数据块集合和所述局部参考数据块集合,则按照移动参数在所述全局参考数据块集合和所述局部参考数据块集合所对应的区域中搜索,得到用于对所述待编码数据块进行预测编码的参考数据块;所述移动参数包括移动窗口以及移动步长,所述移动窗口的尺寸与所述待编码数据块的尺寸相同,所述移动步长小于所述移动窗口的宽度。
5.如权利要求1-4任一项所述的方法,其特征在于,所述全局参考数据块集合包括一个或多个第一参考数据块;当所述多媒体数据帧的编码方式为串行编码方式时,所述第一参考数据块为所述多媒体数据帧中参数关联关系满足回写限制条件,且与所述待编码数据块属于同一个编码片的已编码的数据块;
所述参数关联关系用于反映第一位置信息,与最大编码块的尺寸信息和第二位置信息之间的关联关系,所述第一位置信息、第二位置信息分别是指已编码的数据块、所述待编码数据块在所述多媒体数据帧中的位置信息;
所述回写限制条件用于反映将所述已编码的数据块写入至所述全局参考数据块集合的限制时延。
6.如权利要求1-4任一项所述的方法,其特征在于,所述全局参考数据块集合包括一个或多个第二参考数据块;所述第二参考数据块为与所述待编码数据块属于同一个编码片,且所述多媒体数据帧中参数关联关系满足回写限制条件,以及所述参数关联关系满足编码处理条件的已编码的数据块;
所述参数关联关系用于反映已编码的数据块、所述待编码数据块分别在所述多媒体数据帧中的位置信息,以及最大编码块的尺寸信息之间的关联关系;
所述回写限制条件用于反映将所述已编码的数据块写入至所述全局参考数据块集合的限制时延。
7.如权利要求1-4任一项所述的方法,其特征在于,所述获取与多媒体数据帧中的待编码数据块相关联的全局参考数据块集合,包括:
当所述多媒体数据帧的编码方式为串行编码方式时,分别获取第一位置信息,以及所述最大编码块的尺寸信息和第二位置信息;所述第一位置信息、第二位置信息分别是指已编码的数据块、所述待编码数据块在所述多媒体数据帧中的位置信息;
获取回写限制条件;所述回写限制条件用于反映将所述已编码的数据块写入至所述全局参考数据块集合的限制时延;
从所述多媒体数据帧中筛选出参数关联关系满足回写限制条件,且与所述待编码数据块属于同一个编码片的已编码的数据块,作为第一参考数据块;所述参数关联关系用于反映所述第一位置信息,与所述最大编码块的尺寸信息和所述第二位置信息之间的关联关系;
将所述第一参考数据块添加至所述全局参考数据块集合。
8.如权利要求7所述的方法,其特征在于,所述从所述多媒体数据帧中筛选出参数关联关系满足回写限制条件,且与所述待编码数据块属于同一个编码片的已编码的数据块,作为第一参考数据块,包括:
根据所述第一位置信息和所述第二位置信息,从所述多媒体数据帧中筛选出与所述待编码数据块属于同一编码片的已编码的数据块,作为第一候选参考数据块;
确定在所述回写限制条件下所述多媒体数据帧中已编码的数据块,与所述待编码数据块之间的间隔数据块限制数量;
根据所述第一位置信息、所述最大编码块的尺寸信息和所述第二位置信息,统计所述第一候选参考数据块与所述待编码数据块之间的间隔数据块数量;
将间隔数据块数量大于所述间隔数据块限制数量的第一候选参考数据块,确定为第一参考数据块。
9.如权利要求8所述的方法,其特征在于,所述根据所述第一位置信息、所述最大编码块的尺寸信息和第二位置信息,统计所述第一候选参考数据块与所述待编码数据块之间的间隔数据块数量,包括:
根据所述第一位置信息以及所述最大编码块的尺寸信息确定所述第一候选参考数据块的行标识和列标识;
根据所述第二位置信息以及所述最大编码块的尺寸信息确定所述待编码数据块的行标识和列标识;
基于所述待编码数据块的尺寸信息确定所述多媒体数据帧中每行的数据块数量;
根据所述每行的数据块数量、所述第一候选参考数据块的行标识和列标识,以及所述待编码数据块的行标识和列标识,统计所述第一候选参考数据块与所述待编码数据块之间的间隔数据块数量。
10.如权利要求1-4任一项所述的方法,其特征在于,所述获取与多媒体数据帧中的待编码数据块相关联的全局参考数据块集合,包括:
分别获取第一位置信息,以及所述最大编码块的尺寸信息和第二位置信息;所述第一位置信息、第二位置信息分别是指已编码的数据块、所述待编码数据块在所述多媒体数据帧中的位置信息;
获取回写限制条件以及编码处理条件;所述回写限制条件用于反映将所述已编码的数据块写入至所述全局参考数据块集合的限制时延;
从所述多媒体数据帧中筛选出参数关联关系满足回写限制条件和所述编码处理条件,且与所述待编码数据块属于同一个编码片的已编码的数据块,作为第二参考数据块;所述参数关联关系用于反映所述第一位置信息,与所述待编码数据块的尺寸信息和所述第二位置信息之间的关联关系;
将所述第二参考数据块添加至所述全局参考数据块集合。
11.如权利要求10所述的方法,其特征在于,所述从所述多媒体数据帧中筛选出参数关联关系满足回写限制条件和所述编码处理条件,且与所述待编码数据块属于同一个编码片的已编码的数据块,作为第二参考数据块,包括:
根据所述第一位置信息和所述第二位置信息,从所述多媒体数据帧中筛选出属于同一编码片的已编码的数据块,作为第一候选参考数据块;
从所述第一候选参考数据块中筛选出参数关联关系满足回写限制条件的第一候选参考数据块,作为第二候选参考数据块;
确定在所述回写限制条件下所述多媒体数据帧中已编码的数据块,与所述待编码数据块之间的第一数据块限制距离;
确定在所述编码处理条件下所述多媒体数据帧中已编码的数据块,与所述待编码数据块之间的第二数据块限制距离;
根据所述第一位置信息、所述最大编码块的尺寸信息和所述第二位置信息、所述第一数据块限制距离和所述第二数据块限制距离,从所述第二候选参考数据块中确定出满足所述编码处理条件的第二候选参考数据块,作为第二参考数据块。
12.如权利要求11所述的方法,其特征在于,所述根据所述第一位置信息、所述最大编码块的尺寸信息和第二位置信息、所述第一数据块限制距离和所述第二数据块限制距离,从所述第二候选参考数据块中确定出满足所述编码处理条件的第二候选参考数据块,作为第二参考数据块,包括:
根据所述第一位置信息以及所述最大编码块的尺寸信息确定所述第二候选参考数据块的行标识和列标识;
根据所述第二位置信息以及所述最大编码块的尺寸信息确定所述待编码数据块的行标识和列标识;
从所述第二候选参考数据块中筛选出行标识小于或等于所述待编码数据块的行标识的第二候选参考数据块,作为第三候选参考数据块;
根据所述第三候选参考数据块的行标识和所述待编码数据块的行标识确定所述第三候选参考数据块与所述待编码数据块之间的行距离;
根据所述第三候选参考数据块的列标识和所述待编码数据块的列标识确定所述第三候选参考数据块与所述待编码数据块之间的列距离;
将所述第三候选参考数据块中列距离小于第一距离阈值的第三候选参考数据块,确定为第二参考数据块;所述第一距离阈值是根据所述第一数据块限制距离、所述第二数据块限制距离、所述第三候选参考数据块与所述待编码数据块之间的行距离确定的。
13.如权利要求1-4任一项所述的方法,其特征在于,所述局部参考数据块集合包括一个或多个第三参考数据块;所述第三参考数据块为所述多媒体数据帧中与所述待编码数据块位于同一编码处理单元的已编码的数据块。
14.如权利要求1-4任一项所述的方法,其特征在于,所述局部参考数据块集合包括一个或多个第四参考数据块;所述第四参考数据块为所述多媒体数据帧中与所述待编码数据块具有相邻关系,且与所述待编码数据块属于同一个编码片的已编码的数据块。
15.如权利要求14所述的方法,其特征在于,所述第四参考数据块与所述待编码数据块具有相邻关系是指:所述第四参考数据块与所述待编码数据块属于同一个最大编码块。
16.如权利要求14所述的方法,其特征在于,所述第四参考数据块与所述待编码数据块具有相邻关系是指:所述第四参考数据块位于与所述待编码数据块相邻的N个最大编码块内,且所述最大编码块的尺寸小于或等于尺寸阈值;N是根据所述最大编码块的尺寸信息确定的。
17.如权利要求14所述的方法,其特征在于,所述第四参考数据块与所述待编码数据块具有相邻关系是指:所述第四参考数据块位于与所述待编码数据块相邻的N个最大编码块内,且所述最大编码块的尺寸大于或等于尺寸阈值;所述多媒体数据帧中的所述第四参考数据块向右移动一个最大编码块后所在区域中,位于左上角的数据块为未重建的数据块;所述第四参考数据块移动一个最大编码块的距离时的位置信息,与所述待编码数据块的位置信息不相同;
N是根据所述最大编码块的尺寸信息确定的。
18.一种多媒体数据处理方法,其特征在于,包括:
获取与多媒体数据帧中的待解码数据块相关联的全局参考数据块集合和局部参考数据块集合;所述全局参考数据块集合包括所述多媒体数据帧中与所述待解码数据块之间不具有相邻关系的已解码的数据块,所述局部参考数据块集合包括所述多媒体数据帧中与所述待解码数据块之间具有相邻关系的已解码的数据块;
从所述全局参考数据块集合和所述局部参考数据块集合中,选择用于对所述待解码数据块进行解码的参考数据块。
19.如权利要求18所述的方法,其特征在于,所述从所述全局参考数据块集合和所述局部参考数据块集合中,选择用于对所述待解码数据块进行解码的参考数据块,包括:
获取所述待解码数据块的解码模式;
若所述待解码数据块的解码模式为帧内块复制模式或帧内串复制模式,则从所述全局参考数据块集合和所述局部参考数据块集合中,选择用于对所述待解码数据块进行解码的参考数据块。
20.如权利要求18或19所述的方法,其特征在于,所述全局数据块集合包括一个或多个第一参考数据块;
当所述多媒体数据帧的解码方式为串行解码方式时,所述第一参考数据块为所述多媒体数据帧中参数关联关系满足回写限制条件,且与所述待解码数据块属于同一个解码片的已解码的数据块;
所述参数关联关系用于反映第一位置信息,与最大解码块的尺寸信息和第二位置信息之间的关联关系,所述第一位置信息、第二位置信息分别是指已解码的数据块、所述待解码数据块在所述多媒体数据帧中的位置信息;
所述回写限制条件用于反映将所述已解码的数据块写入至所述全局参考数据块集合的限制时延。
21.如权利要求18或19所述的方法,其特征在于,所述全局数据块集合包括一个或多个第二参考数据块;
所述第二参考数据块为与所述待解码数据块属于同一个解码片,且所述多媒体数据帧中参数关联关系满足回写限制条件,以及所述参数关联关系满足解码处理条件的已解码的数据块;
所述参数关联关系用于反映已解码的数据块、所述待解码数据块分别在所述多媒体数据帧中的位置信息,以及最大解码块的尺寸信息之间的关联关系;
所述回写限制条件用于反映将所述已解码的数据块写入至所述全局参考数据块集合的限制时延。
22.如权利要求18或19所述的方法,其特征在于,所述局部数据块集合包括一个或多个第三参考数据块;
所述第三参考数据块为所述多媒体数据帧中与所述待解码数据块位于同一解码处理单元的已解码的数据块。
23.如权利要求18或19所述的方法,其特征在于,所述局部数据块集合包括一个或多个第四参考数据块;
所述第四参考数据块为所述多媒体数据帧中与所述待解码数据块具有相邻关系,且与所述待解码数据块属于同一个解码片的已解码的数据块。
24.一种多媒体数据处理装置,其特征在于,包括:
获取模块,用于获取与多媒体数据帧中的待编码数据块相关联的全局参考数据块集合和局部参考数据块集合;所述全局参考数据块集合包括所述多媒体数据帧中与所述待编码数据块之间不具有相邻关系的已编码的数据块,所述局部参考数据块集合包括所述多媒体数据帧中与所述待编码数据块之间具有相邻关系的已编码的数据块;
选择模块,用于从所述全局参考数据块集合和所述局部参考数据块集合中,选择用于对所述待编码数据块进行预测编码的参考数据块。
25.一种多媒体数据处理装置,其特征在于,包括:
获取模块,用于获取与多媒体数据帧中的待解码数据块相关联的全局参考数据块集合和局部参考数据块集合;所述全局参考数据块集合包括所述多媒体数据帧中与所述待解码数据块之间不具有相邻关系的已解码的数据块,所述局部参考数据块集合包括所述多媒体数据帧中与所述待解码数据块之间具有相邻关系的已解码的数据块;
选择模块,用于从所述全局参考数据块集合和所述局部参考数据块集合中,选择用于对所述待解码数据块进行解码的参考数据块。
26.一种计算机设备,其特征在于,包括:处理器以及存储器;
上述处理器与存储器相连;所述存储器用于存储程序代码,所述处理器用于调用所述程序代码,以执行如权利要求1至23任一项所述的方法。
CN202111221892.4A 2021-10-20 2021-10-20 多媒体数据处理方法、装置、设备及存储介质 Pending CN115996295A (zh)

Priority Applications (6)

Application Number Priority Date Filing Date Title
CN202111221892.4A CN115996295A (zh) 2021-10-20 2021-10-20 多媒体数据处理方法、装置、设备及存储介质
EP22882501.4A EP4422172A1 (en) 2021-10-20 2022-09-13 Multimedia data processing method and apparatus, computer device, computer readable storage medium, and computer program product
PCT/CN2022/118492 WO2023065890A1 (zh) 2021-10-20 2022-09-13 多媒体数据处理方法、装置、计算机设备、计算机可读存储介质及计算机程序产品
JP2023560063A JP2024535963A (ja) 2021-10-20 2022-09-13 マルチメディアデータ処理方法および装置、コンピュータデバイス、コンピュータ可読記憶媒体、並びに、コンピュータプログラム製品
KR1020237037577A KR20230162988A (ko) 2021-10-20 2022-09-13 멀티미디어 데이터 프로세싱 방법 및 장치, 컴퓨터 디바이스, 및 컴퓨터-판독가능 저장 매체
US18/502,733 US20240155137A1 (en) 2021-10-20 2023-11-06 Multimedia data processing method and apparatus, computer device, computer-readable storage medium, and computer program product

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111221892.4A CN115996295A (zh) 2021-10-20 2021-10-20 多媒体数据处理方法、装置、设备及存储介质

Publications (1)

Publication Number Publication Date
CN115996295A true CN115996295A (zh) 2023-04-21

Family

ID=85992982

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111221892.4A Pending CN115996295A (zh) 2021-10-20 2021-10-20 多媒体数据处理方法、装置、设备及存储介质

Country Status (6)

Country Link
US (1) US20240155137A1 (zh)
EP (1) EP4422172A1 (zh)
JP (1) JP2024535963A (zh)
KR (1) KR20230162988A (zh)
CN (1) CN115996295A (zh)
WO (1) WO2023065890A1 (zh)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11070847B2 (en) * 2017-12-05 2021-07-20 Qualcomm Incorporated Intra-prediction with far neighboring pixels
US10798376B2 (en) * 2018-07-17 2020-10-06 Tencent America LLC Method and apparatus for video coding
JP7451161B2 (ja) * 2019-12-10 2024-03-18 日本放送協会 符号化装置、復号装置、及びプログラム
CN113365080B (zh) * 2021-03-19 2023-02-28 浙江大华技术股份有限公司 串编码技术的编解码方法、设备及存储介质

Also Published As

Publication number Publication date
KR20230162988A (ko) 2023-11-29
JP2024535963A (ja) 2024-10-04
US20240155137A1 (en) 2024-05-09
WO2023065890A1 (zh) 2023-04-27
EP4422172A1 (en) 2024-08-28

Similar Documents

Publication Publication Date Title
TWI812694B (zh) 以角度模式延伸之位置相關框內預測組合
TWI705694B (zh) 片級內部區塊複製及其他視訊寫碼改善
JP5727114B1 (ja) ピクチャ境界の符号化単位を符号化/復号化する方法及びその装置
TW202101989A (zh) 用於視訊寫碼之參考圖像重採樣及框間寫碼工具
TW202005399A (zh) 基於區塊之自適應迴路濾波器(alf)之設計及發信令
KR20190029732A (ko) 인트라 예측 모드 기반 영상 처리 방법 및 이를 위한 장치
JP2019508971A (ja) ビデオコーディングのための固定フィルタからのフィルタ係数を予測すること
US20060159354A1 (en) Method and apparatus for predicting frequency transform coefficients in video codec, video encoder and decoder having the apparatus, and encoding and decoding method using the method
CN104685874A (zh) 用于在高效率视频编解码中处理分区模式的设备和方法
TW201444350A (zh) 方形區塊預測
EP4099696A1 (en) Video decoding method, video coding method, electronic device, and storage medium
CN113315967B (zh) 视频编码方法、装置、介质及电子设备
WO2023065891A1 (zh) 多媒体数据处理方法、装置、设备、计算机可读存储介质及计算机程序产品
US20220224888A1 (en) Video encoding method, video decoding method, and related device
WO2022078339A1 (zh) 参考像素候选列表构建方法、装置、设备及存储介质
WO2022022299A1 (zh) 视频编解码中的运动信息列表构建方法、装置及设备
CN115996295A (zh) 多媒体数据处理方法、装置、设备及存储介质
WO2022037458A1 (zh) 视频编解码中的运动信息列表构建方法、装置及设备
WO2024104503A1 (zh) 图像编解码
JP2024504672A (ja) 復号プロセスのエネルギー消費を表す情報をシグナリングするためのメタデータ
CN116980609A (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: 40084297

Country of ref document: HK