CN115714865A - 视频编解码处理方法、装置、设备及存储介质 - Google Patents

视频编解码处理方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN115714865A
CN115714865A CN202211275687.0A CN202211275687A CN115714865A CN 115714865 A CN115714865 A CN 115714865A CN 202211275687 A CN202211275687 A CN 202211275687A CN 115714865 A CN115714865 A CN 115714865A
Authority
CN
China
Prior art keywords
matrix
range
target
zero
decoding
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
CN202211275687.0A
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.)
Bigo Technology Pte Ltd
Original Assignee
Bigo Technology Pte 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 Bigo Technology Pte Ltd filed Critical Bigo Technology Pte Ltd
Priority to CN202211275687.0A priority Critical patent/CN115714865A/zh
Publication of CN115714865A publication Critical patent/CN115714865A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本申请实施例公开了一种视频编解码处理方法、装置、设备及存储介质,该方法包括:在视频编解码过程中,确定反量化矩阵的有效矩形范围;基于所述有效矩形范围对应的矩阵值与设置的变换矩阵进行运算得到第一目标矩阵,所述有效矩形范围小于所述反量化矩阵的矩阵范围;基于所述第一目标矩阵与所述变换矩阵进行运算得到解码残差矩阵,以用于进行视频编解码。本方案在视频编解码过程中,在减少计算量的同时,便于相关算法的实施。

Description

视频编解码处理方法、装置、设备及存储介质
技术领域
本申请实施例涉及视频处理技术领域,尤其涉及一种视频编解码处理方法、装置、设备及存储介质。
背景技术
离散余弦变换是视频混合编码框架中的重要一环,其对残差矩阵进行变换,将能量集中到变换块的左上角,而变换块的右下角方向的变换系数相对较小。经过离散余弦变换后,再经过量化操作使得仅有左上角少数非零系数,而右下角方向多为零系数,该过程即实现了一部分信息压缩的目的。离散余弦变换可以理解为Y=D*X*D^,其中X是残差矩阵,D是离散余弦变换矩阵,D^是离散余弦变换矩阵的转置,Y是变换后的系数矩阵。
离散余弦逆变换是与离散余弦变换相反的过程,离散余弦逆变换在视频解码、编码中的重构中均需要使用。以解码为例,对反量化后的系数矩阵进行离散余弦逆变换得到解码残差,解码残差与预测值相加即可获取重构像素,重构像素再进行后处理操作即可获取最终的解码像素。离散余弦逆变换可以表示为X′=D^*Y′*D,其中Y′是反量化之后的系数矩阵,X′是反变换后的残差矩阵。相关技术中,在计算反变换后的残差矩阵时,采用完整的矩阵乘法运算,因此出现了大量的计算冗余,由此导致了计算量大的问题。同时,在计算过程中未考虑适配和离散余弦逆变换当前相关的算法,导致了计算量和算法实施不平衡的问题。
发明内容
本申请实施例提供了一种视频编解码处理方法、装置、设备及存储介质,解决了相关技术中,在进行视频编解码时,采用完整的矩阵乘法运算,因此出现了大量的计算冗余,由此导致计算量大的问题,在减少计算量的同时,便于相关算法的实施。
第一方面,本申请实施例提供了一种视频编解码处理方法,该方法包括:
在视频编解码过程中,确定反量化矩阵的有效矩形范围;
基于所述有效矩形范围对应的矩阵值与设置的变换矩阵进行运算得到第一目标矩阵,所述有效矩形范围小于所述反量化矩阵的矩阵范围;
基于所述第一目标矩阵与所述变换矩阵进行运算得到解码残差矩阵,以用于进行视频编解码。
第二方面,本申请实施例还提供了一种视频编解码处理装置,包括:
范围确定模块,配置为在视频编解码过程中,确定反量化矩阵的有效矩形范围;
目标矩阵计算模块,配置为基于所述有效矩形范围对应的矩阵值与设置的变换矩阵进行运算得到第一目标矩阵,所述有效矩形范围小于所述反量化矩阵的矩阵范围;
残差矩阵计算模块,配置为基于所述第一目标矩阵与所述变换矩阵进行运算得到解码残差矩阵,以用于进行视频编解码。
第三方面,本申请实施例还提供了一种视频编解码处理设备,该设备包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本申请实施例所述的视频编解码处理方法。
第四方面,本申请实施例还提供了一种存储计算机可执行指令的非易失性存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行本申请实施例所述的视频编解码处理方法。
第五方面,本申请实施例还提供了一种计算机程序产品,该计算机程序产品包括计算机程序,该计算机程序存储在计算机可读存储介质中,设备的至少一个处理器从计算机可读存储介质读取并执行计算机程序,使得设备执行本申请实施例所述的视频编解码处理方法。
本申请实施例中,在视频编解码过程中,确定反量化矩阵的有效矩形范围,基于该有效矩形范围对应的矩阵值与设置的变换矩阵进行运算得到第一目标矩阵,其中,该有效矩形范围小于反量化矩阵的矩阵范围,再基于得到的第一目标矩阵与前述的设置的变换矩阵进行运算得到解码残差矩阵,以用于进行视频编解码,该种处理方式,在计算反变换后的残差矩阵时,通过确定有效矩形范围的方式,进行该有效矩形范围对应的矩阵值的运算,而有效矩形范围外的数值不进行计算,由此以减少运算量,避免了大量冗余计算。同时,采用确定有效矩形范围的方式,能够适配和离散余弦逆变换当前相关的算法,使得计算量和算法实施达到平衡。
附图说明
图1为本申请实施例提供的一种视频编解码处理方法的流程图;
图2为本申请实施例提供的一种确定反量化矩阵的有效矩形范围的方法的流程图;
图3为本申请实施例提供的一种包含有效矩形范围的矩形范围示意图;
图4为本申请实施例提供的一种计算第一目标矩阵的方法的流程图;
图5为本申请实施例提供的第一目标矩阵转置后的范围划分示意图;
图6为本申请实施例提供的一种进行目标矩阵数据存储的方法的流程图;
图7为本申请实施例提供的一种视频编解码处理装置的结构框图;
图8为本申请实施例提供的一种视频编解码处理设备的结构示意图。
具体实施方式
下面结合附图和实施例对本申请实施例作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本申请实施例,而非对本申请实施例的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本申请实施例相关的部分而非全部结构。
本申请的说明书和权利要求书中的术语“第一”、“第二”等是用于区别类似的对象,而不用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施,且“第一”、“第二”等所区分的对象通常为一类,并不限定对象的个数,例如第一对象可以是一个,也可以是多个。此外,说明书以及权利要求中“和/或”表示所连接对象的至少其中之一,字符“/”,一般表示前后关联对象是一种“或”的关系。
本申请实施例中提供的视频编解码处理方法,可应用于视频编解码场景。针对编解码过程中,离散余弦逆变换的运算,并非进行反量化后的系数矩阵中全部矩阵值的运算,对解码残差的计算过程进行了简化,进而提高了整体的视频编解码效率。
图1为本申请实施例提供的一种视频编解码处理方法的流程图,具体包括如下步骤:
步骤S101、在视频编解码过程中,确定反量化矩阵的有效矩形范围。
在视频编码过程中,DCT(Discrete Cosine Transform,离散余弦变换)为当前视频混合编码框架中的重要一环,其对残差矩阵进行变换,将能量集中到变换块的左上角。其中,离散余弦变换可以理解为Y=D*X*D^,其中X是残差矩阵,D是离散余弦变换矩阵,D^是离散余弦变换矩阵的转置,Y是变换后的系数矩阵。其中,残差矩阵表征编码块和预测块的差异。IDCT(Inverse Discrete Cosine Transform,离散余弦逆变换)是DCT变换相反的处理过程,IDCT变换可表示为X′=D^*Y′*D,其中Y′是反量化之后的系数矩阵,通过本申请中的反量化矩阵进行表示,X′是反变换后的残差矩阵。此处用Y′进行表示而不是Y的原因在于,经过反量化后产生信息丢失,相应的反变换后的残差矩阵X′与之前的残差矩阵X也不同。
在一个实施例中,在视频编解码过程中,进行IDCT变换处理时,考虑反量化矩阵中存在大量0系数且非零系数比较有规律地存在于矩阵的左上角区域的情况,进行该反量化矩阵的有效矩形范围的确定,同时在进行有效矩形范围的确定过程中,适配性的考虑IDCT关联的常用算法,如SIMD方法和快速算法。
可选的,一种确定反量化矩阵的有效矩形范围的方式为:根据反量化矩阵中的非零矩阵值以及向量寄存器的位数确定有效矩形范围。具体的,如图2所示,图2为本申请实施例提供的一种确定反量化矩阵的有效矩形范围的方法的流程图,包括:
步骤S1011、确定反量化矩阵中非零矩阵值对应的最大横坐标和最大纵坐标。
在一个实施例中,确定反量化矩阵中非零矩阵值对应的最大横坐标和最大纵坐标的方式还可以是,从矩阵右下角向左上角方向扫描,以找到第一个有非零系数的行作为最大横坐标,相应地找出第一个有非零系数的列作为最大纵坐标。示例性的,针对N×N维的反量化矩阵Y′,确定出竖向上最靠下的非零系数的纵坐标yMax,其中,yMax∈[1,N],以及横向上最靠右的非零系数的横坐标xMax,其中,xMax∈[1,N]。根据该纵坐标yMax,以及横坐标xMax以确定有效矩形范围,假定该有效矩形范围的横坐标记作矩形横坐标,记为xNorm,纵坐标记作矩形纵坐标,记为yNorm。
步骤S1012、将向量寄存器的位数以及所述最大横坐标代入预设公式计算得到矩形横坐标。
其中,以计算xNorm为例,该预设公式为:
xNorm=K*floor((xMax+K-1)/K)
其中,K是与平台支持的向量寄存器的位数M有关的常数,K=M/16/2,示例性的M取值可以是128。floor()表示获取向下取整函数。
步骤S1013、将所述最大纵坐标和所述矩形横坐标组成的范围确定为有效矩形范围。
在一个实施例中,进行有效矩形范围的确定时,xNorm采用上述步骤S1012提及的公式计算得到,yNorm=yMax,即直接将最大纵坐标确定为有效矩形范围的纵坐标。
示例性的,以一个8x8块的IDCT变换为例,在Y′矩阵中axy表示非零系数,其他的为零系数,8x8矩阵示例如下:
Figure BDA0003896465090000051
竖向上最靠下的非零系数的纵坐标为yMax=6,横向上最靠右的非零系数的横坐标xMax=4,故
yNorm=yMax=6
xNorm=4*floor((4+4-1)/4)=4
示例性的,如图3所示,图3为本申请实施例提供的一种包含有效矩形范围的矩形范围示意图,其中,E代表确定出的有效矩形范围,R1、R2以及B代表的区域为矩阵值为零的区域。
在另一个实施例中,在确定反量化矩阵中非零矩阵值对应的最大横坐标和最大纵坐标之后,还包括:基于设置的调整系数对最大纵坐标的坐标值进行调整得到矩形纵坐标,即不直接将最大纵坐标作为矩形纵坐标,而是基于设置的调整系数对其进行调整得到矩形纵坐标。可选的,调整过程可以是:
yNorm=P*floor((yMax+P-1)/P)
其中,floor()表示获取向下取整函数,P即为竖直方向上的定制常数,用户可以调节这个常数实现实施繁琐性和计算量节省之间的平衡。由此解决了对一个N×N维的反量化矩阵Y′,不考虑水平方向而只考虑竖直方向上就需要有N个对应的IDCT变换函数,其在实时运算中相对繁琐的问题。
步骤S102、基于所述有效矩形范围对应的矩阵值与设置的变换矩阵进行运算得到第一目标矩阵,所述有效矩形范围小于所述反量化矩阵的矩阵范围。
在一个实施例中,确定有效矩形范围后,将有效矩形范围对应的矩阵值与设置的变换矩阵进行运算得到第一目标矩阵。针对有效矩形范围外的矩阵值不进行运算。其中,在进行IDCT变换计算时,在IDCT变换X′=D^*Y′*D中,首先计算D^*Y′的部分,示例性的记为Z=D^*Y′,该矩阵Z记为本申请实施例记载的第一目标矩阵。具体的,计算过程中,将Y′的有效矩阵范围内的元素读取到向量寄存器中,有效矩阵范围外的元素不需要读取。
可选的,图4为本申请实施例提供的一种计算第一目标矩阵的方法的流程图,如图4所示,具体包括:
步骤S1021、基于所述有效矩形范围确定用于计算的第一目标矩阵的置零区域和非置零区域,所述非置零区域包括运算子区域和跳过子区域。
步骤S1022、对所述第一目标矩阵的置零区域的矩阵值设置为零,根据所述有效矩形范围对应的矩阵值与设置的变换矩阵进行运算得到所述运算子区域的矩阵值,跳过所述跳过子区域的运算。
具体的,在执行Z=D^*Y′矩阵乘法运算时,以图3所示有效矩形范围的划分为例,确定出第一目标矩阵的置零区域R1和R2,以及非置零区域中的运算子区域E和跳过子区域B,运算过程中对第一目标矩阵Z的R1区域和R2区域直接置零,无需进行运算。针对非置零区域在进行D^*Y′的计算时由于Y′的B区为0,因此涉及跳过子区域B区域中的元素的乘、加操作进行跳过。仅进行运算子区域E的乘、加操作,并相应的对操作结果进行移位运算。其中,针对矩阵值与设置的变换矩阵进行运算的过程包括矩阵值与设置的变换矩阵进行矩阵乘运算。
示例性的,该设置的变换矩阵可以是:
Figure BDA0003896465090000071
步骤S103、基于所述第一目标矩阵与所述变换矩阵进行运算得到解码残差矩阵,以用于进行视频编解码。
在一个实施例中,计算得到第一目标矩阵后,再基于第一目标矩阵与变换矩阵进行运算得到解码残差矩阵。具体的,计算方式包括第一目标矩阵与变换矩阵进行矩阵乘运算。示例性的,针对IDCT变换X′=D^*Y′*D中计算Z=D^*Y′部分后,此时IDCT变换X′=Z*D,再将该第一目标矩阵Z与变换矩阵进行矩阵D进行矩阵乘法运算以最终得到IDCT变换X′,也即解码残差矩阵,在得到该解码残差矩阵后,将解码残差与视频编码过程中的预测值相加即可获取重构像素,重构像素再进行后处理操作即可获取最终的解码像素。
在另一个实施例中,第一目标矩阵与变换矩阵的运算时,还可以是:对第一目标矩阵和变换矩阵进行转置运算,将转置后的第一目标矩阵和变换矩阵进行矩阵乘运算,其中,在运算过程中跳过转置后的第一目标矩阵的零值区域的运算;对运算结果进行移位和转置处理。具体的,针对IDCT变换X′=Z*D部分,为了便于适配SIMD操作,将公式进行变形为X′=Z*D=(D^*Z^)^=Q^,在计算Q=D^*Z^时,Z转置后的Z^仅上侧xNorm行的E′和B′区有非零值,具体的区域划分示例性的如图5所示,图5为本申请实施例提供的第一目标矩阵转置后的范围划分示意图,其中,Z转置后的Z^仅上侧xNorm行的E′区域和B′区域有非零值,在执行D^矩阵与Z^执行矩阵的乘法运算时,跳过转置后的第一目标矩阵的零值区域(R1′区域和R2′区域)的运算,在对运算结果Q进行移位和转置处理以最终得到解码残差矩阵X′。该种运算方式适配了与IDCT关联的SIMD操作算法,在减少计算量的同时,便于相关算法的实施。
由上述方案可知,在视频编解码过程中,确定反量化矩阵的有效矩形范围,基于该有效矩形范围对应的矩阵值与设置的变换矩阵进行运算得到第一目标矩阵,其中,该有效矩形范围小于反量化矩阵的矩阵范围,再基于得到的第一目标矩阵与前述的设置的变换矩阵进行运算得到解码残差矩阵,以用于进行视频编解码,该种处理方式,在计算反变换后的残差矩阵时,通过确定有效矩形范围的方式,进行该有效矩形范围对应的矩阵值的运算,而有效矩形范围外的数值不进行计算,由此以减少运算量,避免了大量冗余计算。同时,采用确定有效矩形范围的方式,能够适配和离散余弦逆变换当前相关的算法,使得计算量和算法实施达到平衡。
图6为本申请实施例提供的一种进行目标矩阵数据存储的方法的流程图,如图6所示,具体包括:
步骤S201、在视频编解码过程中,确定反量化矩阵中非零矩阵值对应的最大横坐标和最大纵坐标,将向量寄存器的位数以及所述最大横坐标代入预设公式计算得到矩形横坐标,将所述最大纵坐标和所述矩形横坐标组成的范围确定为有效矩形范围。
步骤S202、根据所述向量寄存器的位数以及所述矩形横坐标确定所述第一目标矩阵中非零矩阵值的存储方式,在所述矩形横坐标小于所述向量寄存器的位数的一半时,使用向量寄存器中的高位和低位分别存储不同的矩阵值。
在一个实施例中,进一步对第一目标矩阵的数据存储进行优化。具体的,根据向量寄存器的位数以及矩形横坐标确定第一目标矩阵中非零矩阵值的存储方式,如果矩形横坐标小于向量寄存器的位数的一半时,使用向量寄存器中的高位和低位分别存储不同的矩阵值。
具体的,以矩形横坐标记为xNorm,向量寄存器的位数记为M为例,如果xNorm>M/2,则图3所示示例的范围区域中,E区和B区各行元素可以分别放在不同的N个向量寄存器中,等待执行后续Z的转置操作。如果xNorm小于或等于M/2,则可以用N/2个寄存器管理E区和B区的非零系数,即将上面N/2行元素放在N/2个向量寄存器的低M/2位中,将下面N/2行元素放在N/2个向量寄存器的高M/2位中。该种存储方式,使用更少的向量寄存器进行数据的存储,在后续的转置运算过程中,减少了操作次数,即一次向量寄存器的读取可以同时完成2个数据的运算。
示例性的,针对ARM64中一个向量寄存器最大占128位为例,在目的寄存器128位限制的以前提下,SIMD乘法操作的两个源寄存器最大各占64位,可以理解为“mul dst,src1,src2”中的src1和src2只能最大各占64位,由此不会使得dst有超过128位的风险。此处的src1可认为是盛放变换矩阵相关系数的向量寄存器,src2可以认为是盛放Y′中相关系数的向量寄存器。因为src2中只能最大占64位,所以Z=D^*Y′进一步变形为如下形式:
Figure BDA0003896465090000091
即每个向量寄存器vx被分为Vx-low和vx-high两部分,他们分别占低64位和高64位,此时在计算得到第一目标矩阵Z中的一行元素需要2*8=16次向量寄存器的乘操作和2*7=14次向量寄存器的加操作。
示例性的,以Y′矩阵中后四列系数值都为0为例,运算过程中,不将其读取到v0-high~v7-high中,即跳过涉及v0-high~v7-high的乘、加操作,而直接将第一目标矩阵Z的对应列置零即可。另外Y′中后两行取值均为0,因此无需将其读取到v6-low和v7-low中,也即跳过涉及v6-low和v7-low的乘、加操作。
此时,在对第一目标矩阵Z中的元素进行应有的移位操作后,Z的样式如下:
Figure BDA0003896465090000101
即zxy处可能非0,其它右侧4列中均为0。此时,由于xNorm≤M/2,对Z中的元素可以用4个向量寄存器管理,示例性的,例如整理后vx中含有[z11,z12,z13,z14,z51,z52,z53,z54]元素。基于整理后的元素再结合ARM64中的trn1和trn2指令进行转置操作,由此以节省计算量,示例如下:
Figure BDA0003896465090000102
此时,转置后的Z^的中后4行的元素都为0,因此不对v4~v7进行设置操作,因此在执行X′=Z*D=(D^*Z^)^=Q^的Q=D^*Z^步骤时跳过涉及这4个向量寄存器的乘、加操作,进而节省计算量,示例性的,矩阵表示如下:
Figure BDA0003896465090000103
最后,对Q进行相应的移位和转置处理即得到解码残差矩阵X′。
步骤S203、基于所述有效矩形范围对应的矩阵值与设置的变换矩阵进行运算得到第一目标矩阵,所述有效矩形范围小于所述反量化矩阵的矩阵范围。
步骤S204、基于所述第一目标矩阵与所述变换矩阵进行运算得到解码残差矩阵,以用于进行视频编解码。
由上述可知,进行数据的存储过程中,针对第一目标矩阵在向量寄存器中的管理方式,具体采用在矩形横坐标小于向量寄存器的位数的一半时,使用向量寄存器中的高位和低位分别存储不同的矩阵值,由此以使用更少的向量寄存器进行数据的存储,在后续的转置运算过程中,减少了操作次数,即一次向量寄存器的读取可以同时完成2个数据的运算。
图7为本申请实施例提供的一种视频编解码处理装置的结构框图,该装置用于执行上述实施例提供的视频编解码处理方法,具备执行方法相应的功能模块和有益效果。如图7所示,该装置具体包括:范围确定模块101、目标矩阵计算模块102和残差矩阵计算模块103,其中,
范围确定模块101,配置为在视频编解码过程中,确定反量化矩阵的有效矩形范围;
目标矩阵计算模块102,配置为基于所述有效矩形范围对应的矩阵值与设置的变换矩阵进行运算得到第一目标矩阵,所述有效矩形范围小于所述反量化矩阵的矩阵范围;
残差矩阵计算模块103,配置为基于所述第一目标矩阵与所述变换矩阵进行运算得到解码残差矩阵,以用于进行视频编解码。
由上述方案可知,在视频编解码过程中,确定反量化矩阵的有效矩形范围,基于该有效矩形范围对应的矩阵值与设置的变换矩阵进行运算得到第一目标矩阵,其中,该有效矩形范围小于反量化矩阵的矩阵范围,再基于得到的第一目标矩阵与前述的设置的变换矩阵进行运算得到解码残差矩阵,以用于进行视频编解码,该种处理方式,在计算反变换后的残差矩阵时,通过确定有效矩形范围的方式,进行该有效矩形范围对应的矩阵值的运算,而有效矩形范围外的数值不进行计算,由此以减少运算量,避免了大量冗余计算。同时,采用确定有效矩形范围的方式,能够适配和离散余弦逆变换当前相关的算法,使得计算量和算法实施达到平衡。
在一个可能的实施例中,所述范围确定模块101,配置为:
根据反量化矩阵中的非零矩阵值以及向量寄存器的位数确定有效矩形范围。
在一个可能的实施例中,所述范围确定模块101,配置为:
确定反量化矩阵中非零矩阵值对应的最大横坐标和最大纵坐标;
将向量寄存器的位数以及所述最大横坐标代入预设公式计算得到矩形横坐标;
将所述最大纵坐标和所述矩形横坐标组成的范围确定为有效矩形范围。
在一个可能的实施例中,所述范围确定模块101,配置为:
在所述确定反量化矩阵中非零矩阵值对应的最大横坐标和最大纵坐标之后,基于设置的调整系数对所述最大纵坐标的坐标值进行调整得到矩形纵坐标;
将所述矩形纵坐标和所述矩形横坐标组成的范围确定为有效矩形范围。
在一个可能的实施例中,所述目标矩阵计算模块102,配置为:
基于所述有效矩形范围确定用于计算的第一目标矩阵的置零区域和非置零区域,所述非置零区域包括运算子区域和跳过子区域;
对所述第一目标矩阵的置零区域的矩阵值设置为零,根据所述有效矩形范围对应的矩阵值与设置的变换矩阵进行运算得到所述运算子区域的矩阵值,跳过所述跳过子区域的运算。
在一个可能的实施例中,目标矩阵计算模块102,配置为:
在所述基于所述有效矩形范围对应的矩阵值与设置的变换矩阵进行运算得到第一目标矩阵之后,根据所述向量寄存器的位数以及所述矩形横坐标确定所述第一目标矩阵中非零矩阵值的存储方式;
在所述矩形横坐标小于所述向量寄存器的位数的一半时,使用向量寄存器中的高位和低位分别存储不同的矩阵值。
在一个可能的实施例中,所述残差矩阵计算模块103,配置为:
所述矩阵值与设置的变换矩阵进行矩阵乘运算;
所述基于所述第一目标矩阵与所述变换矩阵进行运算,包括:
所述第一目标矩阵与所述变换矩阵进行矩阵乘运算。
在一个可能的实施例中,所述残差矩阵计算模块103,配置为:
对所述第一目标矩阵和所述变换矩阵进行转置运算,将转置后的第一目标矩阵和变换矩阵进行矩阵乘运算,其中,在运算过程中跳过转置后的所述第一目标矩阵的零值区域的运算;
对运算结果进行移位和转置处理。
图8为本申请实施例提供的一种视频编解码处理设备的结构示意图,如图8所示,该设备包括处理器201、存储器202、输入装置203和输出装置204;设备中处理器201的数量可以是一个或多个,图8中以一个处理器201为例;设备中的处理器201、存储器202、输入装置203和输出装置204可以通过总线或其他方式连接,图8中以通过总线连接为例。存储器202作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本申请实施例中的视频编解码处理方法对应的程序指令/模块。处理器201通过运行存储在存储器302中的软件程序、指令以及模块,从而执行设备的各种功能应用以及数据处理,即实现上述的视频编解码处理方法。输入装置203可用于接收输入的数字或字符信息,以及产生与设备的用户设置以及功能控制有关的键信号输入。输出装置204可包括显示屏等显示设备。
本申请实施例还提供一种包含计算机可执行指令的非易失性存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行一种上述实施例描述的视频编解码处理方法,其中,包括:
在视频编解码过程中,确定反量化矩阵的有效矩形范围;
基于所述有效矩形范围对应的矩阵值与设置的变换矩阵进行运算得到第一目标矩阵,所述有效矩形范围小于所述反量化矩阵的矩阵范围;
基于所述第一目标矩阵与所述变换矩阵进行运算得到解码残差矩阵,以用于进行视频编解码。
值得注意的是,上述视频编解码处理装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本申请实施例的保护范围。
在一些可能的实施方式中,本申请提供的方法的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在计算机设备上运行时,所述程序代码用于使所述计算机设备执行本说明书上述描述的根据本申请各种示例性实施方式的方法中的步骤,例如,所述计算机设备可以执行本申请实施例所记载的视频编解码处理方法。所述程序产品可以采用一个或多个可读介质的任意组合实现。

Claims (12)

1.视频编解码处理方法,其特征在于,包括:
在视频编解码过程中,确定反量化矩阵的有效矩形范围;
基于所述有效矩形范围对应的矩阵值与设置的变换矩阵进行运算得到第一目标矩阵,所述有效矩形范围小于所述反量化矩阵的矩阵范围;
基于所述第一目标矩阵与所述变换矩阵进行运算得到解码残差矩阵,以用于进行视频编解码。
2.根据权利要求1所述的视频编解码处理方法,其特征在于,所述确定反量化矩阵的有效矩形范围,包括:
根据反量化矩阵中的非零矩阵值以及向量寄存器的位数确定有效矩形范围。
3.根据权利要求2所述的视频编解码处理方法,其特征在于,所述根据反量化矩阵中的非零矩阵值以及向量寄存器的位数确定有效矩形范围,包括:
确定反量化矩阵中非零矩阵值对应的最大横坐标和最大纵坐标;
将向量寄存器的位数以及所述最大横坐标代入预设公式计算得到矩形横坐标;
将所述最大纵坐标和所述矩形横坐标组成的范围确定为有效矩形范围。
4.根据权利要求3所述的视频编解码处理方法,其特征在于,在所述确定反量化矩阵中非零矩阵值对应的最大横坐标和最大纵坐标之后,还包括:
基于设置的调整系数对所述最大纵坐标的坐标值进行调整得到矩形纵坐标;
相应的,所述将所述最大纵坐标和所述矩形横坐标组成的范围确定为有效矩形范围,包括:
将所述矩形纵坐标和所述矩形横坐标组成的范围确定为有效矩形范围。
5.根据权利要求1所述的视频编解码处理方法,其特征在于,所述基于所述有效矩形范围对应的矩阵值与设置的变换矩阵进行运算得到第一目标矩阵,包括:
基于所述有效矩形范围确定用于计算的第一目标矩阵的置零区域和非置零区域,所述非置零区域包括运算子区域和跳过子区域;
对所述第一目标矩阵的置零区域的矩阵值设置为零,根据所述有效矩形范围对应的矩阵值与设置的变换矩阵进行运算得到所述运算子区域的矩阵值,跳过所述跳过子区域的运算。
6.根据权利要求3所述的视频编解码处理方法,其特征在于,在所述基于所述有效矩形范围对应的矩阵值与设置的变换矩阵进行运算得到第一目标矩阵之后,还包括:
根据所述向量寄存器的位数以及所述矩形横坐标确定所述第一目标矩阵中非零矩阵值的存储方式;
在所述矩形横坐标小于所述向量寄存器的位数的一半时,使用向量寄存器中的高位和低位分别存储不同的矩阵值。
7.根据权利要求1-6中任一项所述的视频编解码处理方法,其特征在于,所述矩阵值与设置的变换矩阵进行运算,包括:
所述矩阵值与设置的变换矩阵进行矩阵乘运算;
所述基于所述第一目标矩阵与所述变换矩阵进行运算,包括:
所述第一目标矩阵与所述变换矩阵进行矩阵乘运算。
8.根据权利要求1-6中任一项所述的视频编解码处理方法,其特征在于,所述基于所述第一目标矩阵与所述变换矩阵进行运算,包括:
对所述第一目标矩阵和所述变换矩阵进行转置运算,将转置后的第一目标矩阵和变换矩阵进行矩阵乘运算,其中,在运算过程中跳过转置后的所述第一目标矩阵的零值区域的运算;
对运算结果进行移位和转置处理。
9.视频编解码处理装置,其特征在于,包括:
范围确定模块,配置为在视频编解码过程中,确定反量化矩阵的有效矩形范围;
目标矩阵计算模块,配置为基于所述有效矩形范围对应的矩阵值与设置的变换矩阵进行运算得到第一目标矩阵,所述有效矩形范围小于所述反量化矩阵的矩阵范围;
残差矩阵计算模块,配置为基于所述第一目标矩阵与所述变换矩阵进行运算得到解码残差矩阵,以用于进行视频编解码。
10.一种视频编解码处理设备,所述设备包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现权利要求1-8中任一项所述的视频编解码处理方法。
11.一种存储计算机可执行指令的非易失性存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行权利要求1-8中任一项所述的视频编解码处理方法。
12.一种计算机程序产品,包括计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1-8中任一项所述的视频编解码处理方法。
CN202211275687.0A 2022-10-18 2022-10-18 视频编解码处理方法、装置、设备及存储介质 Pending CN115714865A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211275687.0A CN115714865A (zh) 2022-10-18 2022-10-18 视频编解码处理方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211275687.0A CN115714865A (zh) 2022-10-18 2022-10-18 视频编解码处理方法、装置、设备及存储介质

Publications (1)

Publication Number Publication Date
CN115714865A true CN115714865A (zh) 2023-02-24

Family

ID=85229955

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211275687.0A Pending CN115714865A (zh) 2022-10-18 2022-10-18 视频编解码处理方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN115714865A (zh)

Similar Documents

Publication Publication Date Title
RU2413983C2 (ru) Обратимое преобразование для сжатия двумерных данных с потерями и без потерь
CN100571394C (zh) 减少位深的量子化方法
JP3964925B2 (ja) イメージおよびビデオコード化方法
US20070094320A1 (en) Parallel Adder-Based DCT / IDCT Design Using Cyclic Convolution
JPH07236143A (ja) 高速デジタル信号復号化方法
KR20020026243A (ko) 동작 보정 블록에 기반한 압축 디지털 비디오의 다변 복합디코딩에 관한 방법 및 장치
USRE42186E1 (en) Data transform processing apparatus and method
EP2112602A2 (en) Device, system, and method for solving systems of linear equations using parallel processing
US20070271321A1 (en) Transforms with reduce complexity and/or improve precision by means of common factors
CN106254883B (zh) 一种视频解码中的反变换方法和装置
CN104144346B (zh) 用于执行空域和频域之间的变换的数据处理装置和方法
JP3857308B2 (ja) 逆離散余弦変換を実行する装置および方法
CN1315023A (zh) 在图像处理期间执行二维变换的电路和方法
CN115714865A (zh) 视频编解码处理方法、装置、设备及存储介质
JPH07121507A (ja) 離散コサイン変換装置
JP3155383B2 (ja) 2モード処理装置、2次元変換装置及び静止画像データの圧縮システム
JP2802158B2 (ja) 逆直交変換方法および逆直交変換回路
JP3385866B2 (ja) 逆量子化・逆dct回路
US20110157190A1 (en) Fast integer dct method on multi-core processor
US20050063460A1 (en) Video predictive decoding method and apparatus
JPH10116267A (ja) 演算装置及び情報処理装置
Mietens et al. New scalable DCT computation for resource-constrained systems
CN116684640A (zh) 无熵编码的图像压缩方法、装置、电子设备及存储介质
JPH06217287A (ja) 多値画像圧縮符号の復号方法および装置
JP2005229182A (ja) 画像処理方法およびベクトルプロセッサ

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