视频或图像压缩中准能量守恒变换的方法和装置的制作方法

文档序号:7594000阅读:220来源:国知局
专利名称:视频或图像压缩中准能量守恒变换的方法和装置的制作方法
技术领域
本发明涉及一种电数字数据处理技术,特别地,涉及一种运用于视频或图像压缩的准能量守恒变换的方法和装置。
背景技术
传统的视频编码标准如国际电信联盟ITU制定的H.261,H.263,H.26L,H.264标准以及国际标准化组织ISO的运动图像专家组织MPEG制定的MEPG-1,MPEG-2,MPEG-4等都是基于混合编码Hybrid Coding框架之上的。所谓混合编码框架是综合考虑预测,变换以及熵编码的方法的编码框架,有以下主要特点1、利用预测去除时间域的冗余度;2、利用变换去除空间域的冗余度;3、利用熵编码去除统计上的冗余度。
上述视频编码标准都具有帧内编码帧,即I帧,和帧间编码帧,即P帧,I帧和P帧采用不同的编码方法。I帧的编码过程如下对原始图像数据或帧内预测得到的残差块进行二维变换;然后在变换域中对变换系数进行量化;对量化所得的二维变换系数块作扫描,使之成为一维的变换系数序列;最后进行熵编码,即Huffman编码或者算术编码等。P帧的编码过程如下采用运动估计得到运动矢量,然后采用基于运动补偿的帧间预测,接着对帧间预测得到的残差块进行二维变换,再对变换域系数进行量化,对量化所得的二维残差块系数作扫描,使之成为一维的残差系数序列,最后进行熵编码。
二维n×m变换的作用是改变n×m数据块的能量分布。正变换将输入的时域数据变换到频域,使能量集中,便于熵编码;逆变换是正变换的逆过程,将频域数据还原到时域,使数据能量分散。在现有的视频压缩标准中,普遍采用的二维变换是离散余弦变换(DCT),其正变换能有效集中能量,同时正、逆变换都能保持能量守恒。但是由于DCT的核矢量中包含无理数,所以采用有理数或整数实现时会导致编解码失配,降低解码图像质量。为了实现能量集中,同时又避免编解码适配,H.264标准采用了整数变换(ICT),其核矢量中只包含整数。但是由于ICT的核矢量不是归一化的,所以ICT必须与归一化处理相结合才能保证能量守恒。当ICT各个核矢量的模,即核矢量中各个系数的平方和,不完全相同时,参与ICT的数据块的不同位置的数据的归一化处理不完全相同,从而导致计算复杂度以及编解码设备的存储复杂度相对增加。

发明内容
本发明的目的是提供一种运用于视频或图像压缩的准能量守恒变换的方法和装置。本发明通过采用核矢量的模十分接近的变换矩阵,允许二维变换前后能量不精确守恒,从而达到不同位置的数据采用相同归一化处理的目的。
为了达到上述目的,本发明采用的技术方案如下一种运用于视频或图像压缩的准能量守恒变换的方法,该方法为输入尺寸为n×m的数据块,对其做二维n×m变换,输出尺寸为n×m数据块,该二维变换是正变换或逆变换;如果做正变换,变换过程为输入数据块Xn×m经如下矩阵相乘处理,得到Yn×m′,Yn×m′=Tn×n×Xn×m×Sm×m其中Tn×n=[α0,α1,…αn-1]T,Sm×m=[β0,β1,…βm-1];αi=[p0,p1,…pn-1]T,i=0,1,…n-1,βj=[q0,q1,…qm-1]T,j=0,1,…m-1,列向量αi,βj均为正变换矩阵的核矢量;上标T表示矩阵转置;Yn×m′经归一化处理得到正变换的输出数据块Yn×m;如果做逆变换,变换过程为输入数据块Yn×m先经过归一化处理,得到Yn×m″,Yn×m″经如下矩阵相乘处理得到逆变换的输出数据块Xn×m′,Xn×m′=Un×n×Yn×m″×Vm×m其中Un×n=[γ0,γ1,…γn-1],Vm×m=[ν0,ν1,…νm-1]T;γi=kαi,i=0,1,…n-1,νj=lβj,j=0,1,…m-1,列向量γi,νj均为逆变换矩阵的核矢量,k,l为有理数;上标T表示矩阵转置;其特征在于Un×n的各个核矢量的模不完全相同或者Vm×m的各个核矢量的模不完全相同,其中Un×n和Vm×m核矢量的模分别表示为|γi|=|k|Σk=0n-1pk2,]]>|νj|=|l|Σk=0m-1qk2;]]>在正变换或逆变换中,所述对尺寸为n×m的数据块的归一化处理,包括不同位置的系数采用同样的处理方法,正变换的处理方法为每个系数都乘以同一个整数C,并且都右移A位,逆变换的处理方法为每个系数都乘以同一个整数D,并且都右移B位,其中,A、B均为整数,C、D均不为2的整数次幂;在正变换中,所述对尺寸为n×m的数据块的归一化处理,存在整数N,满足(C×|αi|×|βj|/2N)大于0.81并小于1.21,i=0,1,…n-1,j=0,1,…m-1;在逆变换中,所述对尺寸为n×m的数据块的归一化处理,存在整数M,满足(D×|γx|×|νy|/2M)大于0.81并小于1.21,x=0,1,…n-1,y=0,1,…m-1。
一种应用权利要求1所述的准能量守恒变换的方法的正变换装置,其特征在于,它包括一用于将Xn×m转化到Yn×m′的变换装置1;一用于完成归一化处理的归一化处理装置3;变换装置1读入输入信号Xn×m,变换装置1与归一化处理装置3相连,归一化处理装置3输出信号Yn×m。
一种应用权利要求1所述的准能量守恒变换的方法的逆变换装置,其特征在于,它包括一用于将Yn×m″转化到Xn×m′的变换装置2;一用于完成归一化处理的归一化处理装置4;变换装置2读入输入信号Yn×m,变换装置2与归一化处理装置4相连,归一化处理装置4输出信号Xn×m′。
本发明与背景技术相比,具有的有益效果二维变换前后的能量基本守恒,保证编码效率与采用背景技术时的效率相当。不同位置的数据采用相同的归一化处理,降低了计算复杂度,以及编解码装置的存储复杂度。本发明并不限于视频编码或图像编码领域,还可以推广至其他信号处理的应用中。


图1是目前现有整数变换的正变换装置框图;图2是目前现有整数变换的逆变换装置框图;图3是本发明实施例的正变换装置框图;图4是本发明实施例的逆变换装置框图;图5是现有的一种归一化装置的框图;图6是本发明实施例的一种归一化装置的框图。
具体实施例方式
附图1示出了现有整数变换的正变换装置,包括存储装置1、变换装置1、归一化处理装置1。
Xn×m输入变换装置1,做如下矩阵相乘处理,得到Yn×m′,Yn×m′=Tn×n×Xn×m×Sm×m,其中Tn×n=[α0,α1,…αn-1]T,Sm×m=[β0,β1,…βm-1];αi=[p0,p1,…pn-1]T,i=0,1,…n-1,βj=[q0,q1,…qm-1]T,j=0,1,…m-1,列向量αi,βj均为正变换矩阵的核矢量;上标T表示矩阵转置;变换装置1与归一化处理装置1相连,将Yn×m′输入归一化处理装置1,归一化处理装置1逐一对Yn×m′中的各个系数ki,j′(i,j表示ki,j′在Yn×m′中的位置,i=0,1,…n-1,j=0,1,…m-1)做归一化处理,即将系数的位置信息(i,j)输入存储装置1,存储装置1根据这一信息查找ki,j′的归一化系数γi,j,并输入归一化处理装置1,归一化处理装置1对ki,j′做如下操作,得到Yn×m,ki,j=(ki,j′×γi,j)>>A,其中A为整数,>>A表示右移A位,ki,j是Yn×m中位置为(i,j)的系数。归一化处理装置1输出Yn×m。
附图2示出了现有整数变换的逆变换装置,包括存储装置2、变换装置2、归一化处理装置2。
Yn×m输入归一化处理装置2,归一化处理装置2逐一对Yn×m中的各个系数ki,j(i,j表示ki,j在Yn×m中的位置,i=0,1,…n-1,j=0,1,…m-1)做归一化处理,即将系数的位置信息(i,j)输入存储装置2,存储装置2根据这一信息查找ki,j的归一化系数ti,j,并输入归一化处理装置2,归一化处理装置2对ki,j做如下操作,得到Yn×m″,ki,j″=(ki,j×ti,j)>>B,其中B为整数,>>B表示右移B位,ki,j″是Yn×m″中位置为(i,j)的系数。归一化处理装置2与变换装置2相连,将Yn×m″输入变换装置2。Yn×m″经如下矩阵相乘处理得到Xn×m′,Xn×m′=Un×n×Yn×m″×Vm×m,其中Un×n=[γ0,γ1,…γn-1],Vm×m=[ν0,ν1,…νm-1]T;γi=kαi,i=0,1,…n-1,νj=lβj,j=0,1,…m-1,列向量γi,νj均为逆变换矩阵的核矢量,k,l为有理数,上标T表示矩阵转置。变换装置2输出Xn×m′。
图5示出了现有的一种归一化装置的框图。该框图同时体现了图1中归一化装置1以及图2中归一化装置2的特征。将n×m数据块输入归一化处理装置,并存储于暂存装置,逐一对暂存装置中的各个系数做归一化处理,即将系数的位置信息(i,j)输出到存储装置,该存储装置在正变换装置中为存储装置1,在逆变换装置中为存储装置2。根据这一位置信息在存储装置中查找相应的归一化系数,并输入归一化处理装置,通过乘法器使之与(i,j)位置的系数相乘。乘法器与移位装置相连,将计算结果输出到移位装置。移位装置对输入数据做移位操作,正变换时右移A位,逆变换时右移B位,输出归一化处理的结果。
现有方法的不足之处是作归一化处理时,不同位置的系数,其归一化系数也不同,从而引入了存储装置,以及在存储装置中查找的过程,增加了运算复杂度以及编解码设备的存储复杂度。针对现有方法的不足,本发明在作归一化处理时,不同位置的系数采用相同的归一化系数,因而只需将这一归一化系数存储于归一化处理装置中即可,省去了存储装置,也省去了从存储装置中查找的过程。下面参照附图详细说明本发明。
实施例1本实施实例给出了本发明的变换方法和目前视频或图像编码中的量化方法相结合的方案。
附图3示出了一种运用于视频或图像压缩的准能量守恒变换的方法的正变换装置,包括变换装置1,归一化处理装置3。
X4×4输入变换装置1,做如下矩阵相乘处理,得到Y4×4′,Y4×4′=666683-3-86-6-663-88-3×X4×4×686363-6-86-3-686-86-3,]]>变换装置1与归一化处理装置3相连,将Y4×4′输入归一化处理装置3,归一化处理装置3中存储了归一化系数C,C为10356,它对Y4×4′中的各个系数ki,j′(i,j表示ki,j′在Y4×4′中的位置,i=0,1…3,j=0,1,…3)做统一的归一化处理,A为25,得到Y4×4,ki,j=(ki,j′×10356)>>25,其中ki,j是Y4×4中位置为(i,j)的系数。归一化处理装置3输出Y4×4。
附图4示出了一种运用于视频或图像压缩的准能量守恒变换的方法的逆变换装置,包括变换装置2,归一化处理装置4。
Y4×4输入归一化处理装置4,归一化处理装置4中存储了归一化系数D,D为20,它对Y4×4中的各个系数ki,j(i,j表示ki,j在Y4×4中的位置,i=0,1…3,j=0,1,…3)做统一的归一化处理,B为7,得到Y4×4″,ki,j″=(ki,j×20)>>7,其中ki,j″是Y4×4″中位置为(i,j)的系数。归一化处理装置4与变换装置2相连,将Y4×4″输入变换装置2。Y4×4″经如下矩阵相乘处理得到X4×4′,X4×4′=686363-6-86-3-686-86-3×Y4×4′′×666683-3-86-6-663-88-3,]]>变换装置2输出X4×4′。
实施例2附图3示出了一种运用于视频或图像压缩的准能量守恒变换的方法的正变换装置,包括变换装置1,归一化处理装置3。
X4×4输入变换装置1,做如下矩阵相乘处理,得到Y4×4′,Y4×4′=777794-4-97-7-774-99-4×X4×4×797474-7-97-4-797-97-4,]]>变换装置1与归一化处理装置3相连,将Y4×4′输入归一化处理装置3,归一化处理装置3中存储了归一化系数C,C为10164,它对Y4×4′中的各个系数ki,j′(i,j表示ki,j′在Y4×4′中的位置,i=0,1…3,j=0,1,…3)做统一的归一化处理,A为21,得到Y4×4,ki,j=(ki,j′×10164)>>21,其中ki,j是Y4×4中位置为(i,j)的系数。归一化处理装置3输出Y4×4。
附图4示出了一种运用于视频或图像压缩的准能量守恒变换的方法的逆变换装置,包括变换装置2,归一化处理装置4。
Y4×4输入归一化处理装置4,归一化处理装置4中存储了归一化系数D,D为11,它对Y4×4中的各个系数ki,j(i,j表示ki,j在Y4×4中的位置,i=0,1,…3,j=0,1,…3)做统一的归一化处理,B为11,得到Y4×4″,
ki,j″=(ki,j×11)>>11,其中ki,j″是Y4×4″中位置为(i,j)的系数。归一化处理装置4与变换装置2相连,将Y4×4″输入变换装置2。Y4×4″经如下矩阵相乘处理得到X4×4′,X4×4′=797474-7-97-4-797-97-4×Y4×4′′×777794-4-97-7-774-99-4,]]>变换装置2输出X4×4′。
实施例3附图3示出了一种运用于视频或图像压缩的准能量守恒变换的方法的正变换装置,包括变换装置1,归一化处理装置3。
X4×4输入变换装置1,做如下矩阵相乘处理,得到Z4×4,Z4×4=777794-4-97-7-774-99-4×X4×4×797474-7-97-4-797-97-4,]]>为了便于变换装置1的数据存储,以及变换装置1到归一化处理装置3的数据传输,需将Z4×4的动态范围转换到16位以内,即对Z4×4作如下操作,得到Y4×4′ki,j′=ki,j″>>3,其中,ki,j′,ki,j″分别表示Y4×4′,Z4×4中位置为(i,j)的系数。变换装置1与归一化处理装置3相连,将Y4×4′输入归一化处理装置3,归一化处理装置3中存储了归一化系数C,C为10164,它对Y4×4′中的ki,j′做统一的归一化处理,如下,得到Y4×4,ki,j=(ki,j′×10164)>>18,其中ki,j是Y4×4中位置为(i,j)的系数。归一化处理装置3输出Y4×4。本正变换实施例中先后右移3位和18位,一共右移21位,与实施例2正变换中的A一致。
附图4示出了一种运用于视频或图像压缩的准能量守恒变换的方法的逆变换装置,包括变换装置2,归一化处理装置4。
Y4×4输入归一化处理装置4,归一化处理装置4中存储了归一化系数D,D为11,它对Y4×4中的各个系数ki,j(i,j表示ki,j在Y4×4中的位置,i=0,1…3,j=0,1,…3)Y4×4做统一的归一化处理,如下,得到Y4×4′,ki,j′=ki,j×11,其中ki,j′是Y4×4′中位置为(i,j)的系数。归一化处理装置4与变换装置2相连,将Y4×4′输入变换装置4。Y4×4′经如下矩阵相乘处理得到Z4×4′,Z4×4′=797474-7-97-4-797-97-4×Y4×4′,]]>对Z4×4′作如下操作,得到X4×4″,li,j=ki,j″>>2,其中,ki,j″,li,j分别为Z4×4′,X4×4中位置为(i,j)的系数,X4×4经如下矩阵相乘处理得到X4×4″,X4×4′′=X4×4′′′×777794-4-97-7-774-99-4,]]>对X4×4″作如下操作,得到X4×4′,li,j′=li,j″>>9,其中,li,j″,li,j′分别为X4×4′,X4×4中位置为(i,j)的系数,变换装置2输出X4×4。本逆变换实施例中先后右移2位和9位,一共右移11位,与实施例2逆变换中的B一致。
实施例4附图3示出了一种运用于视频或图像压缩的准能量守恒变换的方法的正变换装置,包括变换装置1,归一化处理装置3。附图4示出了一种运用于视频或图像压缩的准能量守恒变换的方法的逆变换装置,包括变换装置2,归一化处理装置4。图6示出了本发明的一种归一化装置的框图。该框图同时体现了附图3中归一化装置3以及附图4中归一化装置4的特征,做正变换时该装置可以作为归一化装置3;做逆变换时该装置可以作为归一化装置4。
做正变换时,Xn×m输入变换装置1,做如下矩阵相乘处理,得到Yn×m′,Yn×m′=Tn×n×Xn×m×Sm×m,
其中Tn×n=[α0,α1,…αn-1]T,Sm×m=[β0,β1,…βm-1];αi=[p0,p1,…pn-1]T,i=0,1,…n-1,βj=[q0,q1,…qm-1]T,j=0,1,…m-1,列向量αi,βj均为正变换矩阵的核矢量,上标T表示矩阵转置。变换装置1与归一化处理装置3相连,将Yn×m′输入归一化处理装置3,并存储于其暂存装置。采用归一化系数C对暂存装置中的各个系数做归一化处理,该归一化系数存储于寄存器,通过乘法器使寄存器中的C与各系数相乘。乘法器与移位装置相连,将计算结果输出到移位装置。移位装置对输入数据做右移A位操作。归一化处理装置3输出Yn×m。
做逆变换时,Yn×m输入归一化处理装置4,并存储于暂存装置。采用归一化系数D对暂存装置中的各个系数做归一化处理,该归一化系数存储于寄存器,通过乘法器使寄存器中的D与各系数相乘。乘法器与移位装置相连,将计算结果输出到移位装置。移位装置对输入数据做右移B位操作。归一化处理装置4与变换装置2相连,将Yn×m″输入变换装置2。Yn×m″经如下矩阵相乘处理得到Xn×m′,Xn×m′=Un×n×Yn×m″×Vm×m,其中Un×n=[γ0,γ1,…γn-1],Vm×m=[ν0,ν1,…νm-1]T;γi=kαi,i=0,1,…n-1,νj=lβj,j=0,1,…m-1,列向量γi,νj均为逆变换矩阵的核矢量,k,l为有理数,上标T表示矩阵转置。变换装置2输出Xn×m′。
上述实施例用来解释说明本发明,而不是对本发明进行限制,在本发明的精神和权利要求的保护范围内,对本发明作出的任何修改和改变,都落入本发明的保护范围。
权利要求
1.一种运用于视频或图像压缩的准能量守恒变换的方法,该方法为输入尺寸为n×m的数据块,对其做二维n×m变换,输出尺寸为n×m数据块,该二维变换是正变换或逆变换;如果做正变换,变换过程为输入数据块Xn×m经如下矩阵相乘处理,得到Y′n×m,Y′n×m=Tn×n×Xn×m×Sm×m其中Tn×n=[α0,α1,...αn-1]T,Sm×m=[β0,β1,...βm-1];αi=[p0,p1,...pn-1]T,i=0,1,...n-1,βj=[q0,q1,...qm-1]T,j=0,1,...m-1,列向量αi,βj均为正变换矩阵的核矢量;上标T表示矩阵转置;Y′n×m经归一化处理得到正变换的输出数据块Yn×m;如果做逆变换,变换过程为输入数据块Yn×m先经过归一化处理,得到Y″n×m,Y″n×m经如下矩阵相乘处理得到逆变换的输出数据块X′n×m,X′n×m=Un×n×Y″n×m×Vm×m其中Un×n=[γ0,γ1,...γn-1],Vm×m=[v0,v1,...vm-1]T;γ1=kαi,i=0,1,...n-1,vj=lβj,j=0,1,...m-1,列向量γi,vj均为逆变换矩阵的核矢量,k,l为有理数;上标T表示矩阵转置;其特征在于Un×n的各个核矢量的模不完全相同或者Vm×m的各个核矢量的模不完全相同,其中Un×n和Vm×m核矢量的模分别表示为|γi|=|k|Σk=0n-1pk2,]]>|vj|=|l|Σk=0m-1qk2;]]>在正变换或逆变换中,所述对尺寸为n×m的数据块的归一化处理,包括不同位置的系数采用同样的处理方法,正变换的处理方法为每个系数都乘以同一个整数C,并且都右移A位,逆变换的处理方法为每个系数都乘以同一个整数D,并且都右移B位,其中,A、B均为整数,C、D均不为2的整数次幂;在正变换中,所述对尺寸为n×m的数据块的归一化处理,存在整数N,满足(C×|αi|×|βj|/2N)大于0.81并小于1.21,i=0,1,...n-1,j=0,1,...m-1;在逆变换中,所述对尺寸为n×m的数据块的归一化处理,存在整数M,满足(D×|γx|×|vy|/2M)大于0.81并小于1.21,x=0,1,...n-1,y=0,1,...m-1。
2.根据权利要求1所述的准能量守恒变换的方法,其特征在于所述Un×n的各个核矢量的模不完全相同或者Vm×m的各个核矢量的模不完全相同,还包括1)(|γi|-|γ0|)/|γ0|(i=1,2,…n-1)的绝对值均小于0.1;2)(|vi|-|v0|)/|v0|(i=1,2,...m-1)的绝对值均小于0.1。
3.根据权利要求1所述的准能量守恒变换的方法,其特征在于,所述归一化处理中的右移A位操作可以在正变换过程的不同阶段分步完成。
4.根据权利要求1所述的准能量守恒变换的方法,其特征在于,所述归一化处理中的右移B位操作可以在逆变换过程的不同阶段分步完成。
5.一种应用权利要求1所述的准能量守恒变换的方法的正变换装置,其特征在于,它包括一用于将Xn×m转化到Y′n×m的变换装置1;一用于完成归一化处理的归一化处理装置3;变换装置1读入输入信号Xn×m,变换装置1与归一化处理装置3相连,归一化处理装置3输出信号Yn×m。
6.一种应用权利要求1所述的准能量守恒变换的方法的逆变换装置,其特征在于,它包括一用于将Y″n×m转化到X′n×m的变换装置2;一用于完成归一化处理的归一化处理装置4;变换装置2读入输入信号Yn×m,变换装置2与归一化处理装置4相连,归一化处理装置4输出信号X′n×m。
全文摘要
本发明公开了一种运用于视频或图像压缩的准能量守恒变换的方法和装置。本发明通过采用能量不精确守恒的二维变换,使不同位置的数据采用相同归一化处理,降低了计算复杂度,以及编解码装置的存储复杂度。本发明并不限于视频或图像编解码领域,还可以推广至其他信号处理的应用中。
文档编号H04N7/26GK1589015SQ20041005358
公开日2005年3月2日 申请日期2004年8月6日 优先权日2004年8月6日
发明者虞露, 董洁, 楼剑, 张赐勋 申请人:浙江大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1