首页 / 专利库 / 物理 / 弦理论 / 运用于图像编码和视频编码的离散余弦变换的方法

运用于图像编码和视频编码的离散余弦变换的方法

阅读:212发布:2020-05-12

专利汇可以提供运用于图像编码和视频编码的离散余弦变换的方法专利检索,专利查询,专利分析的服务。并且本 发明 公开了一种运用于图像编码和 视频编码 的离散余弦变换的方法和装置。它用较低的实现复杂度得到较高的 精度 ,并且可以较方便的控制实现的复杂度。所采用的变换矩阵的系数和理论的离散余弦变换矩阵的系数更加接近,因此和理论的离散余弦变换的结果更加接近,精度比 现有技术 在相当的实现复杂度下高。同时,现有技术在调整实现的复杂度和精度时需要调整多个系数,本发明允 许可 以调整一个、两个或多个系数,调整方法更加方便和全面。本发明可以用于图像编码和视频编码相关的领域中。本发明中离散余弦变换装置完全实现本发明中的离散余弦变换方法。,下面是运用于图像编码和视频编码的离散余弦变换的方法专利的具体信息内容。

1、一种运用于图像编码和视频编码的离散余弦变换的方法,其特征在于: 对于正变换,采用如下的8×8正变换矩阵:
FDCT fp 8 = G f G f G f G f G f G f G f G f A f B f C f D f - D f - C f - B f - A f E f F f - F f - E f - E f - F f F f E f B f - D f - A f - C f C f A f D f - B f G f - G f - G f G f G f - G f G f G f C f - A f D f B f - B f - D f A f - C f F f - E f E f - F f - F f E f - E f F f D f - C f B f - A f A f - B f C f - D f / 2 SCALE j
其中SCALEf为预先指定的非负整数;Af,Bf,Cf,Df,Ef,Ff,Gf表示8×8正变换 矩阵中的系数,且均为整数;对于正变换采用或调整SCALEf达到不同的精度和 不同的实现复杂度;特别地,还包括以下四组正变换矩阵系数:
(1)Af=2841,Bf=2408,Cf=1609,Df=565,Ef=2676,Ff=1108,Gf=2408, SCALEf=11;
(2)Af=5681,Bf=4816,Cf=3218,Df=1130,Ef=5352,Ff=2217,Gf=4096, SCALEf=12;
(3)Af=11363,Bf=9633,Cf=6436,Df=2260,Ef=10703,Ff=4433, Gf=8192,SCALEf=13;
(4)Af=22725,Bf=19266,Cf=12873,Df=4520,Ef=21407,Ff=8867, Gf=16384,SCALEf=14;
根据所述8×8正变换矩阵,进行相应的正变换:在正变换前先左移FS0位, 在一维正变换后右移FS1位,在二维正变换后右移FS2位;其中FS0,FS1,FS2 为整数,值为零时表示不进行移位操作,值为正整数时表示进行上所述方向的 移位操作,值为负整数表示进行和上述方向相反的移位操作;对于正变换,采 用或调整FS0,FS1,FS2中的一个、两个或三个达到不同的精度和不同的实现 复杂度。
2、根据权利要求1中所述的运用于图像编码和视频编码的离散余弦变换的 方法,其特征在于,采用或调整N×N正变换矩阵FDCTfpN中的系数达到不同的 精度和不同的实现复杂度,即用FDCTfpNr代替FDCTfpN,满足:
|(FDCTfpNr(i,j)-FDCTfpN(i,j))/FDCTfpN(i,j)|≤1%0≤i≤N-1,0≤j≤N-1; 其中FDCTfpNr(i,j)和FDCTfpN(i,j)分别表示FDCTfpNr和FDCTfpN中位置为(i,j)的系 数。
3、一种运用于图像编码和视频编码的离散余弦变换的方法,其特征在于: 对于反变换,采用如下的8×8反变换矩阵IDCTfp8:
IDCT fp 8 = G i A i E i B i G i C i F i D i G i B i F i - D i - G i - A i - E i - C i G i C i - F i - A i - G i D i E i B i G i D i - E i - C i G i B i - F i - A i G i - D i - E i C i G i - B i - F i A i G i - C i - F i A i - G i - D i E i - B i G i - B i F i D i - G i A i - E i C i G i - A i E i - B i G i - C i F i - D i / 2 SCALE i
其中SCALEi为预先指定的非负整数;Ai,Bi,Ci,Di,Ei,Fi,Gi表示8×8反变换矩 阵中的系数,且均为整数;对于反变换采用或调整SCALEi达到不同的精度和不 同的实现复杂度;特别地,还包括以下四组反变换矩阵系数:
(1)Ai=2841,Bi=2408,Ci=1609,Di=565,Ei=2676,Fi=1108,Gi=2408, SCALEi=11;
(2)Ai=5681,Bi=4816,Ci=3218,Di=1130,Ei=5352,Fi=2217,Gi=4096, SCALEi=12;
(3)Ai=11363,Bi=9633,Ci=6436,Di=2260,Ei=10703,Fi=4433,Gi=8192, SCALEi=13;
(4)Ai=22725,Bi=19266,Gi=12873,Di=4520,Ei=21407,Fi=8867, Gi=16384,SCALEi=14;
根据所8×8反变换矩阵,进行相应的反变换过程:在反变换前先左移IS0位, 在一维变换后右移IS1位,在二维变换后右移IS2位;其中IS0,IS1,IS2为整数, 值为零时表示不进行移位操作,值为正整数时表示进行上所述方向的移位操作, 值为负整数表示进行和上述方向相反的移位操作;对于反变换,采用或调整IS0, IS1,IS2中的一个、两个或三个达到不同的精度和不同的实现复杂度。
4、根据权利要求3中所述的运用于图像编码和视频编码的离散余弦变换的 方法,其特征在于,采用或调整N×N反变换矩阵IDCTfpN中的系数达到不同的 精度和不同的实现复杂度,即用IDCTfpNr代替IDCTfpN,满足:
|(IDCTfpNr(i,j)-IDCTfpN(i,j))/IDCTfpN(i,j)|≤1%0≤i≤N-1,0≤j≤N-1; 其中IDCTfpNr(i,j)和IDCTfpN(i,j)分别表示IDCTfpNr和IDCTfpN中位置为(i,j)的系数。

说明书全文

技术领域

发明涉及电数字数据处理技术领域,特别是一种运用于图像编码和视频编 码的离散余弦变换的方法与装置。

背景技术

传统的视频编码标准如ITU制定的H.261,H.263标准以及ISO的MPEG 组织制定的MEPG-1,MPEG-2,MPEG-4等都是基于混合编码。所谓混合编码 框架是综合考虑预测,变换以及熵编码的方法的编码框架,有以下主要特点:
1)利用预测去除时间域的冗余度
2)利用变换去除空间域的冗余度;
3)而用熵编码去除统计上的冗余度;
上述视频编码标准都具有内编码帧,即I帧,和帧间编码帧,即P帧,I 帧和P帧采用不同的编码方法。I帧的编码过程如下:对原始图像数据或帧内预 测得到的残差进行二维变换;然后在变换域中对变换系数进行量化;最后进 行熵编码,即Huffman编码或者算术编码等。P帧的编码过程如下:采用运动估 计得到运动矢量,然后采用基于运动补偿的帧间预测,接着对帧间预测得到的 残差块进行二维变换,再对变换域系数进行量化,最后进行熵编码。
传统的图像编码标准,如JPEG标准,与视频编码标准有着相近之处,对原 始图像数据或图像内预测得到的残差块进行二维变换;然后在变换域中对变换 系数进行量化;最后进行熵编码。
由于视频数据和图像数据在空间域上较强的相关性,二维变换是提高编码 增益的关键因素,因此二维变换是视频编码和图像编码的很重要的部分。
离散余弦变换(DCT)变换通常用于图像数据和视频数据的块变换编码, 这是因为对于各种信号,离散余弦变换非常近似于统计最佳的K-L变换。离散 余弦变换被广泛应用于各种视频/图像编码标准中。离散余弦变换的一个缺点是 矩阵中的部分系数是无理数,所以在数字计算机上用迭代的方法进行变换和反 变换后,不能得到一模一样的初始值。在解码端,由于没有定义具体的反离散 余弦变换(IDCT)的具体过程,所以不同的解码器解码的结果可能不同,导致 了解码器失配(decoder mismatch)的问题。因此,符合标准的解码器必须达到 一定的精度要求。但是高的精度通常要求高的实现复杂度。在设计和实现时要 根据不同需要对精度和实现复杂度两者进行权衡。

发明内容

本发明的目的是提供一种运用于图像编码和视频编码的离散余弦变换的方 法和装置。
本发明解决其技术问题所采用的技术方案是:
一种运用于图像编码和视频编码的离散余弦变换的方法,对于正变换,采 用如下的8×8正变换矩阵:
FDCT fp 8 = G f G f G f G f G f G f G f G f A f B f C f D f - D f - C f - B f - A f E f F f - F f - E f - E f - F f F f E f B f - D f - A f - C f C f A f D f - B f G f - G f - G f G f G f - G f G f G f C f - A f D f B f - B f - D f A f - C f F f - E f E f - F f - F f E f - E f F f D f - C f B f - A f A f - B f C f - D f / 2 SCAL E f
其中SCALEf为预先指定的非负整数;Af,Bf,Cf,Df,Ef,Ff,Gf表示8×8正变换 矩阵中的系数,且均为整数;对于正变换采用或调整SCALEf达到不同的精度和 不同的实现复杂度;特别地,还包括以下四组正变换矩阵系数:
(1)Af=2841,Bf=2408,Cf=1609,Df=565,Ef=2676,Ff=1108,Gf=2408, SCALEf=11;
(2)Af=5681,Bf=4816,Cf=3218,Df=1130,Ef=5352,Ff=2217,Gf=4096, SCALEf=12;
(3)Af=11363,Bf=9633,Cf=6436,Df=2260,Ef=10703,Ff=4433, Gf=8192,SCALEf=13;
(4)Af=22725,Bf=19266,Cf=12873,Df=4520,Ef=21407,Ff=8867, Gf=16384,SCALEf=14;
根据所述8×8正变换矩阵,进行相应的正变换:在正变换前先左移FS0位, 在一维正变换后右移FS1位,在二维正变换后右移FS2位;其中FS0,FS1,FS2 为整数,值为零时表示不进行移位操作,值为正整数时表示进行上所述方向的 移位操作,值为负整数表示进行和上述方向相反的移位操作;对于正变换,采 用或调整FS0,FS1,FS2中的一个、两个或三个达到不同的精度和不同的实现 复杂度。
一种运用于图像编码和视频编码的离散余弦变换的方法,对于反变换,采 用如下的8×8反变换矩阵IDCTfp8:
IDCT fp 8 = G i A i E i B i G i C i F i D i G i B i F i - D i - G i - A i - E i - C i G i C i - F i - A i - G i D i E i B i G i D i - E i - C i G i B i - F i - A i G i - D i - E i C i G i - B i - F i A i G i - C i - F i A i - G i - D i E i - B i G i - B i F i D i - G i A i - E i C i G i - A i E i - B i G i - C i F i - D i / 2 SCAL E i
其中SCALEi为预先指定的非负整数;Ai,Bi,Ci,Di,Ei,Fi,Gi表示8×8反变换矩 阵中的系数,且均为整数;对于反变换采用或调整SCALEi达到不同的精度和不 同的实现复杂度;特别地,还包括以下四组反变换矩阵系数:
(1)Ai=2841,Bi=2408,Ci=1609,Di=565,Ei=2676,Fi=1108,Ci=2408, SCALEi=11;
(2)Ai=5681,Bi=4816,Ci=3218,Di=1130,Ei=5352,Fi=2217,Gi=4096, SCALEi=12;
(3)Ai=11363,Bi=9633,Ci=6436,Di=2260,Ei=10703,Fi=4433,Gi=8192, SCALEi=13;
(4)Ai=22725,Bi=19266,Ci=12873,Di=4520,Ei=21407,Fi=8867, Gi=16384,SCALEi=14。
根据所8×8反变换矩阵,进行相应的反变换过程:在反变换前先左移IS0位, 在一维变换后右移IS1位,在二维变换后右移IS2位;其中IS0,IS1,IS2为整数, 值为零时表示不进行移位操作,值为正整数时表示进行上所述方向的移位操作, 值为负整数表示进行和上述方向相反的移位操作;对于反变换,采用或调整IS0, IS1,IS2中的一个、两个或三个达到不同的精度和不同的实现复杂度。
本发明与背景技术相比,具有有益的效果:可以用较低的实现复杂度得到较 高的精度,并且可以较方便的控制实现的复杂度。它所采用的变换矩阵的系数 和理论的离散余弦变换矩阵的系数更加接近,因此和理论的离散余弦变换的结 果更加接近,精度比现有技术在相当的实现复杂度下高。同时,现有技术在调 整实现的复杂度和精度时需要调整多个系数,本发明允许可以调整一个、两个 或多个系数,调整方法更加方便和全面。本发明可以用于图像编码和视频编码 相关的领域中。
附图说明
图1是本发明实施例1、2、3、4、5、6的正变换蝶形图;
图2是本发明实施例1、2、3、4、5、6的反变换蝶形图;
图3是本发明实施例7的正变换装置;
图4是本发明实施例7的反变换装置;
图5是本发明实施例8的正变换装置;
图6是本发明实施例8的反变换装置。

具体实施方式

实施例1
采用的正变换蝶形图和反变换蝶形图如图1、图2所示。(实际实现时可以 根据需要采用不同的蝶形结构和实现方法。)图1中x0,x1,x2,x3,x4,x5,x6,x7 为一维正变换输入数据,y0,y1,y2,y3,y4,y5,y6,y7为一维正变换输出数据, SCALEf为选取正变换矩阵时确定的参数,e0,e1,e2,d0,d1,d2,d3,d4,d5,d6,d7,d8为 5 根据所选取的正变换矩阵确定的参数,r为正变换后四舍五入参数;图2中y0,y1, y2,y3,y4,y5,y6,y7为一维反变换输入数据,x0,x1,x2,x3,x4,x5,x6,x7为一维 反变换输出数据,SCALEi为选取反变换矩阵时确定的参数,e0,e1,e2,d0,d1,d2,d3, d4,d5,d6,d7,d8为根据所选取的反变换矩阵确定的参数,r为反变换后四舍五入参 数。
采用的正变换矩阵为:
FDCT fp = 8192 8192 8192 8192 8192 8192 8192 8192 11363 9633 6436 2260 - 2260 - 6436 - 9633 - 11363 10703 4433 - 4433 - 10703 - 10703 - 4433 4433 10703 9633 - 2260 - 11363 - 6436 6436 11363 2260 - 9633 8192 - 8192 - 8192 8192 8192 - 8192 - 8192 8192 6436 - 11363 2260 9633 - 9633 - 2260 11363 - 6436 4433 - 10703 10703 - 4433 - 4433 10703 - 10703 4433 2260 - 6436 9633 - 11363 11363 - 9633 6436 - 2260 / 8192
正变换过程如下:在进行正变换过程前,对输入数据先左移6位,一维变 换后不移位,二维变换后右移9位:
FS0=6,FS1=0,FS2=9
采用的反变换矩阵为正变换矩阵的转置:
IDCTfp=(FDCTfp)T
反变换过程如下:在进行反变换过程前,对输入数据先左移10位,一维变 换后不移位,二维变换后右移13位:
IS0=10,IS1=0,IS2=13
图1、图2中的参数由下式计算得到:
e0=(-E-F)/2SCALE
e1=F/2SCALE
e2=(E-F)/2SCALE
d0=(-A+B+C-D)/2SCALE
d1=(A+B-C+D)/2SCALE
d2=(A+B+C-D)/2SCALE
d3=(A+B-C-D)/2SCALE
d4=(-B+D)/2SCALE
d5=(-A-B)/2SCALE
d6=(-B-C)/2SCALE
d7=(-B+C)/2SCALE
d8=B/2SCALE
具体参数如下:
SCALEf=SCALEi=13
e0=-15136/8192 e1=4433/8192 e2=6270/8192
d0=2446/8192 d1=16820/8192 d2=25172/8192
d3=12300/8192 d4=-7373/8192 d5=-20996/8192
d6=-16069/8192 d7=-3197/8192 d8=9633/8192
实施例2
采用的正变换蝶形图和反变换蝶形图如图1、图2所示。(实际实现时可以 根据需要采用不同的蝶形结构和实现方法。)图1中x0,x1,x2,x3,x4,x5,x6,x7 为一维正变换输入数据,y0,y1,y2,y3,y4,y5,y6,y7为一维正变换输出数据, SCALEf为选取正变换矩阵时确定的参数,e0,e1,e2,d0,d1,d2,d3,d4,d5,d6,d7,d8为 根据所选取的正变换矩阵确定的参数,r为正变换后四舍五入参数;图2中y0,y1, y2,y3,y4,y5,y6,y7为一维反变换输入数据,x0,x1,x2,x3,x4,x5,x6,x7为一维 反变换输出数据,SCALEi为选取反变换矩阵时确定的参数,e0,e1,e2,d0,d1,d2,d3, d4,d5,d6,d7,d8为根据所选取的反变换矩阵确定的参数,r为反变换后四舍五入参 数。
采用的正变换矩阵为:
FDCT fp = 8192 8192 8192 8192 8192 8192 8192 8192 11363 9633 6436 2260 - 2260 - 6436 - 9633 - 11363 10703 4433 - 4433 - 10703 - 10703 - 4433 4433 10703 9633 - 2260 - 11363 - 6436 6436 11363 2260 - 9633 8192 - 8192 - 8192 8192 8192 - 8192 - 8192 8192 6436 - 11363 2260 9633 - 9633 - 2260 11363 - 6436 4433 - 10703 10703 - 4433 - 4433 10703 - 10703 4433 2260 - 6436 9633 - 11363 11363 - 9633 6436 - 2260 / 8192
正变换过程如下:在进行正变换过程前,对输入数据先左移6位,一维变 换后不移位,二维变换后右移9位:
FS0=6,FS1=0,FS2=9
采用的反变换矩阵为正变换矩阵的转置:
IDCTfp=(FDCTfp)T
反变换过程如下:在进行反变换过程前,对输入数据先左移8位,一维变 换后不移位,二维变换后右移11位:
IS0=8,IS1=0,IS2=11
图1、图2中的参数由下式计算得到:
e0=(-E-F)/2SCALE
e1=F/2SCALE
e2=(E-F)/2SCALE
d0=(-A+B+C-D)/2SCALE
d1=(A+B-C+D)/2SCALE
d2=(A+B+C-D)/2SCALE
d3=(A+B-C-D)/2SCALE
d4=(-B+D)/2SCALE
d5=(-A-B)/2SCALE
d6=(-B-C)/2SCALE
d7=(-B+C)/2SCALE
d8=B/2SCALE
具体参数如下:
SCALEf=SCALEi=13
e0=-15136/8192 e1=4433/8192 e2=6270/8192
d0=2446/8192 d1=16820/8192 d2=25172/8192
d3=12300/8192 d4=-7373/8192 d5=-20996/8192
d6=-16069/8192 d7=-3197/8192 d8=9633/8192
实施例3
采用的正变换蝶形图和反变换蝶形图如图1、图2所示。(实际实现时可以 根据需要采用不同的蝶形结构和实现方法。)图1中x0,x1,x2,x3,x4,x5,x6,x7 为一维正变换输入数据,y0,y1,y2,y3,y4,y5,y6,y7为一维正变换输出数据, SCALEf为选取正变换矩阵时确定的参数,e0,e1,e2,d0,d1,d2,d3,d4,d5,d6,d7,d8为 根据所选取的正变换矩阵确定的参数,r为正变换后四舍五入参数;图2中y0,y1, y2,y3,y4,y5,y6,y7为一维反变换输入数据,x0,x1,x2,x3,x4,x5,x6,x7为一维 反变换输出数据,SCALEi为选取反变换矩阵时确定的参数,e0,e1,e2,d0,d1,d2,d3, d4,d5,d6,d7,d8为根据所选取的反变换矩阵确定的参数,r为反变换后四舍五入参 数。
采用的正变换矩阵为:
FDCT fp = 2048 2048 2048 2048 2048 2048 2048 2048 2841 2408 1609 565 - 565 - 1609 - 2408 - 2841 2676 1108 - 1108 - 2676 - 2676 - 1108 1108 2676 2408 - 565 - 2841 - 1609 1609 2841 565 - 2408 2048 - 2048 - 2048 2048 2048 - 2048 - 2048 2048 1609 - 2841 565 2408 - 2408 - 565 2841 - 1609 1108 - 2676 2676 - 1108 - 1108 2676 - 2676 1108 565 - 1609 2408 - 2841 2841 - 2408 1609 - 565 / 2048
正变换过程如下:在进行正变换过程前,对输入数据先左移5位,一维变 换后不移位,二维变换后右移8位:
FS0=5,FS1=0,FS2=8
采用的反变换矩阵为正变换矩阵的转置:
IDCTfp=(FDCTfp)T
反变换过程如下:在进行反变换过程前,对输入数据先左移8位,一维变 换后不移位,二维变换后右移11位:
IS0=8,IS1=0,IS2=11
图1、图2中的参数由下式计算得到:
e0=(-E-F)/2SCALE
e1=F/2SCALE
e2=(E-F)/2SCALE
d0=(-A+B+C-D)/2SCALE
d1=(A+B-C+D)/2SCALE
d2=(A+B+C-D)/2SCALE
d3=(A+B-C-D)/2SCALE
d4=(-B+D)/2SCALE
d5=(-A-B)/2SCALE
d6=(-B-C)/2SCALE
d7=(-B+C)/2SCALE
d8=B/2SCALE
具体参数如下:
SCALEf=SCALEi=11
e0=-3784/2048 e1=1108/2048 e2=1568/2048
d0=611/2048 d1=4205/2048 d2=6293/2048
d3=3075/2048 d4=-1843/2048 d5=-5249/2048
d6=-4017/2048 d7=-799/2048 d8=2408/2048
实施例4
采用的正变换蝶形图和反变换蝶形图如图1、图2所示。(实际实现时可以 根据需要采用不同的蝶形结构和实现方法。)图1中x0,x1,x2,x3,x4,x5,x6,x7 为一维正变换输入数据,y0,y1,y2,y3,y4,y5,y6,y7为一维正变换输出数据, SCALEf为选取正变换矩阵时确定的参数,e0,e1,e2,d0,d1,d2,d3,d4,d5,d6,d7,d8为 根据所选取的正变换矩阵确定的参数,r为正变换后四舍五入参数;图2中y0,y1, y2,y3,y4,y5,y6,y7为一维反变换输入数据,x0,x1,x2,x3,x4,x5,x6,x7为一维 反变换输出数据,SCALEi为选取反变换矩阵时确定的参数,e0,e1,e2,d0,d1,d2,d3, d4,d5,d6,d7,d8为根据所选取的反变换矩阵确定的参数,r为反变换后四舍五入参 数。
采用的正变换矩阵为:
FDCT fp = 16384 16384 16384 16384 16384 16384 16384 16384 22725 19266 12873 4520 - 4520 - 12873 - 19266 - 22725 21407 8867 - 8867 - 21407 - 21407 - 8867 8867 21407 19266 - 4520 - 22725 - 12873 12873 22725 4520 - 19266 16384 - 16384 - 16384 16384 16384 - 16384 - 16384 16384 12873 - 22725 4520 19266 - 19266 - 4520 22725 - 12873 8867 - 21407 21407 - 8867 - 8867 21407 - 21407 8867 4520 - 12873 19266 - 22725 22725 - 19266 12873 - 4520 / 16384
正变换过程如下:在进行正变换过程前,对输入数据先左移6位,一维变 换后不移位,二维变换后右移9位:
FS0=6,FS1=0,FS2=9
采用的反变换矩阵为正变换矩阵的转置:
IDCTfp=(FDCTfp)T
反变换过程如下:在进行反变换过程前,对输入数据先左移12位,一维变 换后不移位,二维变换后右移15位:
IS0=12,IS1=0,IS2=15
图1、图2中的参数由下式计算得到:
e0=(-E-F)/2SCALE
e1=F/2SCALE
e2=(E-F)/2SCALE
d0=(-A+B+C-D)/2SCALE
d1=(A+B-C+D)/2SCALE
d2=(A+B+C-D)/2SCALE
d3=(A+B-C-D)/2SCALE
d4=(-B+D)/2SCALE
d5=(-A-B)/2SCALE
d6=(-B-C)/2SCALE
d7=(-B+C)/2SCALE
d8=B/2SCALE
具体参数如下:
SCALEf=SCALEi=14
e0=-30274/16384 e1=8867/16384 e2=12540/16384
d0=4894/16384 d1=33638/16384 d2=50344/16384
d3=24598/16384 d4=-14746/16384 d5=-41991/16384
d6=-32139/16384 d7=-6393/16384 d8=19266/16384
实施例5
采用的正变换蝶形图和反变换蝶形图如图1、图2所示。(实际实现时可以 根据需要采用不同的蝶形结构和实现方法。)图1中x0,x1,x2,x3,x4,x5,x6,x7 为一维正变换输入数据,y0,y1,y2,y3,y4,y5,y6,y7为一维正变换输出数据, SCALEf为选取正变换矩阵时确定的参数,e0,e1,e2,d0,d1,d2,d3,d4,d5,d6,d7,d8为 根据所选取的正变换矩阵确定的参数,r为正变换后四舍五入参数;图2中y0,y1, y2,y3,y4,y5,y6,y7为一维反变换输入数据,x0,x1,x2,x3,x4,x5,x6,x7为一维 反变换输出数据,SCALEi为选取反变换矩阵时确定的参数,e0,e1,e2,d0,d1,d2,d3, d4,d5,d6,d7,d8为根据所选取的反变换矩阵确定的参数,r为反变换后四舍五入参 数。
采用的正变换矩阵为:
FDCT fp = 8192 8192 8192 8192 8192 8192 8192 8192 11363 9633 6437 2261 - 2261 - 6437 - 9633 - 11363 10704 4433 - 4433 - 10704 - 10704 - 4433 4433 10704 9633 - 2261 - 11363 - 6437 6437 11363 2261 - 9633 8192 - 8192 - 8192 8192 8192 - 8192 - 8192 8192 6437 - 11363 2261 9633 - 9633 - 2261 11363 - 6437 4433 - 10704 10704 - 4433 - 4433 10704 - 10704 4433 2261 - 6437 9633 - 11363 11363 - 9633 6437 - 2261 / 8192
正变换过程如下:在进行正变换过程前,对输入数据先左移6位,一维变 换后不移位,二维变换后右移9位:
FS0=6,FS1=0,FS2=9
采用的反变换矩阵为正变换矩阵的转置:
IDCTfp=(FDCTfp)T
反变换过程如下:在进行反变换过程前,对输入数据先左移10位,一维变 换后不移位,二维变换后右移13位:
IS0=10,IS1=0,IS2=13
图1、图2中的参数由下式计算得到:
e0=(-E-F)/2SCALE
e1=F/2SCALE
e2=(E-F)/2SCALE
d0=(-A+B+C-D)/2SCALE
d1=(A+B-C+D)/2SCALE
d2=(A+B+C-D)/2SCALE
d3=(A+B-C-D)/2SCALE
d4=(-B+D)/2SCALE
d5=(-A-B)/2SCALE
d6=(-B-C)/2SCALE
d7=(-B+C)/2SCALE
d8=B/2SCALE
具体参数如下:
SCALEf=SCALEi=13
e0=-15137/8192 e1=4433/8192 e2=6271/8192
d0=2446/8192 d1=16820/8192 d2=25172/8192
d3=12298/8192 d4=-7372/8192 d5=-20996/8192
d6=-16070/8192 d7=-3196/8192 d8=9633/8192
实施例6
采用的正变换蝶形图和反变换蝶形图如图1、图2所示。(实际实现时可以 根据需要采用不同的蝶形结构和实现方法。)图1中x0,x1,x2,x3,x4,x5,x6,x7 为一维正变换输入数据,y0,y1,y2,y3,y4,y5,y6,y7为一维正变换输出数据, SCALEf为选取正变换矩阵时确定的参数,e0,e1,e2,d0,d1,d2,d3,d4,d5,d6,d7,d8为 根据所选取的正变换矩阵确定的参数,r为正变换后四舍五入参数;图2中y0,y1, y2,y3,y4,y5,y6,y7为一维反变换输入数据,x0,x1,x2,x3,x4,x5,x6,x7为一维 反变换输出数据,5CALEi为选取反变换矩阵时确定的参数,e0,e1,e2,d0,d1,d2,d3, d4,d5,d6,d7,d8为根据所选取的反变换矩阵确定的参数,r为反变换后四舍五入参 数。
采用的正变换矩阵为:
FDCT fp = 8192 8192 8192 8192 8192 8192 8192 8192 11363 9633 6436 2260 - 2260 - 6436 - 9633 - 11363 10703 4433 - 4433 - 10703 - 10703 - 4433 4433 10703 9633 - 2260 - 11363 - 6436 6436 11363 2260 - 9633 8192 - 8192 - 8192 8192 8192 - 8192 - 8192 8192 6436 - 11363 2260 9633 - 9633 - 2260 11363 - 6436 4433 - 10703 10703 - 4433 - 4433 10703 - 10703 4433 2260 - 6436 9633 - 11363 11363 - 9633 6436 - 2260 / 8192
正变换过程如下:在进行正变换过程前,对输入数据先左移6位,一维变 换后不移位,二维变换后右移9位:
FS0=6,FS1=0,FS2=9
图1中的参数由下式计算得到:
e 0 = ( - E f - F f ) / 2 SCALE f
e 1 = F f / 2 SCALE f
e 2 = ( E f - F f ) / 2 SCALE f
d 0 = ( - A f + B f + C f - D f ) / 2 SCALE f
d 1 = ( A f + B f - C f + D f ) / 2 SCALE f
d 2 = ( A f + B f + C f - D f ) / 2 SCALE f
d 3 = ( A f + B f - C f - D f ) / 2 SCALE f
d 4 = ( - B f + D f ) / 2 SCALE f
d 5 = ( - A f - B f ) / 2 SCALE f
d 6 = ( - B f - C f ) / 2 SCALE f
d 7 = ( - B f + C f ) / 2 SCALE f
d 8 = B f / 2 SCALE f
具体参数如下:
SCALEf=13
e0=-15136/8192 e1=4433/8192 e2=6270/8192
d0=2446/8192 d1=16820/8192 d2=25172/8192
d3=12300/8192 d4=-7373/8192 d5=-20996/8192
d6=-16069/8192 d7=-3197/8192 d8=9633/8192
采用的反变换矩阵为:
FDCT fp = 16384 16384 16384 16384 16384 16384 16384 16384 22725 19266 12873 4520 - 4520 - 12873 - 19266 - 22725 21407 8867 - 8867 - 21407 - 21407 - 8867 8867 21407 19266 - 4520 - 22725 - 12873 12873 22725 4520 - 19266 16384 - 16384 - 16384 16384 16384 - 16384 - 16384 16384 12873 - 22725 4520 19266 - 19266 - 4520 22725 - 12873 8867 - 21407 21407 - 8867 - 8867 21407 - 21407 8867 4520 - 12873 19266 - 22725 22725 - 19266 12873 - 4520 / 16384
反变换过程如下:在进行反变换过程前,对输入数据先左移12位,一维变 换后不移位,二维变换后右移15位:
IS0=12,IS1=0,IS2=15
图2中的参数由下式计算得到:
e 0 = ( - E i - F i ) / 2 SCALE i
e 1 = F i / 2 SCALE i
e 2 = ( E i - F i ) / 2 SCALE i
d 0 = ( - A i + B i + C i - D i ) / 2 SCALE i
d 1 = ( A i + B i - C i + D i ) / 2 SCALE i
d 2 = ( A i + B i + C i - D i ) / 2 SCALE i
d 3 = ( A i + B i - C i - D i ) / 2 SCALE i
d 4 = ( - B i + D i ) / 2 SCALE i
d 5 = ( - A i - B i ) / 2 SCALE i
d 6 = ( - B i - C i ) / 2 SCALE i
d 7 = ( - B i + C i ) / 2 SCALE i
d 8 = B i / 2 SCALE i
具体参数如下:
SCALEi=14
e0=-30274/16384 e1=8867/16384 e2=12540/16384
d0=4894/16384 d1=33638/16384 d2=50344/16384
d3=24598/16384 d4=-14746/16384 d5=-41991/16384
d6=-32139/16384 d7=-6393/16384 d8=19266/16384
实施例7
一种运用于图像编码和视频编码的离散余弦变换的装置,它包括正变换装置 (图3)和反变换装置(图4)两大部分:
正变换装置包括预移位装置,第一维正变换装置,第一维正变换后移位装 置,第二维正变换装置,第二维正变换后移位装置;预移位装置的输入端与变 换前的输入数据相连,预移位装置的输出端和第一维正变换装置的输入端相连, 第一维正变换装置的输出端和第一维正变换后移位装置的输入端相连,第一维 正变换后移位装置的输出端和第二维正变换装置输入端相连,第二维正变换装 置输出端和第二维正变换后移位装置输入端相连,第二维正变换后移位装置输 出端和变换输出数据相连;
反变换装置包括预移位装置,第一维反变换装置,第一维反变换后移位装 置,第二维反变换装置,第二维反变换后移位装置;预移位装置的输入端与变 换前的输入数据相连,预移位装置的输出端和第一维反变换装置的输入端相连, 第一维反变换装置的输出端和第一维反变换后移位装置的输入端相连,第一维 反变换后移位装置的输出端和第二维反变换装置输入端相连,第二维反变换装 置输出端和第二维反变换后移位装置输入端相连,第二维反变换后移位装置输 出端和变换输出数据相连。
变换前输入数据首先经过预移位装置进行移位,其输出送到第一维正(反) 变换装置进行变换,其输出送到第一维正(反)变换后移位装置进行移位,其 输出送到第二维正(反)变换装置进行变换,其输出送到第二维正(反)变换 后移位装置进行移位,其输出为变换后输出数据。
第一维正(反)变换装置和第二维正(反)变换装置为图1、图2所示的正 (反)变换蝶形结构。
采用的正变换矩阵为:
FDCT fp = 8192 8192 8192 8192 8192 8192 8192 8192 11363 9633 6436 2260 - 2260 - 6436 - 9633 - 11363 10703 4433 - 4433 - 10703 - 10703 - 4433 4433 10703 9633 - 2260 - 11363 - 6436 6436 11363 2260 - 9633 8192 - 8192 - 8192 8192 8192 - 8192 - 8192 8192 6436 - 11363 2260 9633 - 9633 - 2260 11363 - 6436 4433 - 10703 10703 - 4433 - 4433 10703 - 10703 4433 2260 - 6436 9633 - 11363 11363 - 9633 6436 - 2260 / 8192
正变换过程如下:在进行正变换过程前,预移位装置对输入数据先左移6 位,第一维正变换后移位装置对一维变换后的数据不移位,第二维正变换后移 位装置对二维变换后的数据右移9位:
FS0=6,FS1=0,FS2=9
采用的反变换矩阵为正变换矩阵的转置:
IDCTfp=(FDCTfp)T
反变换过程如下:在进行反变换过程前,预移位装置对输入数据先左移10 位,第一维反变换后移位装置对一维变换后的数据不移位,第二维反变换后移 位装置对二维变换后的数据右移13位:
IS0=10,IS1=0,IS2=13
图1、图2中的参数由下式计算得到:
e0=(-E-F)/2SCALE
e1=F/2SCALE
e2=(E-F)/2SCALE
d0=(-A+B+C-D)/2SCALE
d1=(A+B-C+D)/2SCALE
d2=(A+B+C-D)/2SCALE
d3=(A+B-C-D)/2SCALE
d4=(-B+D)/2SCALE
d5=(-A-B)/2SCALE
d6=(-B-C)/2SCALE
d7=(-B+C)/2SCALE
d8=B/2SCALE
具体参数如下:
SCALEf=SCALEi=13
e0=-15136/8192 e1=4433/8192 e2=6270/8192
d0=2446/8192 d1=16820/8192 d2=25172/8192
d3=12300/8192 d4=-7373/8192 d5=-20996/8192
d6=-16069/8192 d7=-3197/8192 d8=9633/8192
实施例8
一种运用于图像编码和视频编码的离散余弦变换的装置,它包括正变换装置 (图5)和反变换(图6)装置两大部分:
正变换装置包括预移位装置,第一维正变换装置,第一维正变换后移位装 置,第二维正变换装置,第二维正变换后移位装置,正变换精度和复杂度控制 器;预移位装置的输入端与变换前的输入数据相连,预移位装置的输出端和第 一维正变换装置的输入端相连,第一维正变换装置的输出端和第一维正变换后 移位装置的输入端相连,第一维正变换后移位装置的输出端和第二维正变换装 置输入端相连,第二维正变换装置输出端和第二维正变换后移位装置输入端相 连,第二维正变换后移位装置输出端和变换输出数据相连,正变换精度和复杂 度控制器通过开关和预移位装置,第一维正变换装置,第一维正变换后移位装 置,第二维正变换装置,第二维正变换后移位装置相连;
反变换装置包括预移位装置,第一维反变换装置,第一维反变换后移位装 置,第二维反变换装置,第二维反变换后移位装置;预移位装置的输入端与变 换前的输入数据相连,预移位装置的输出端和第一维反变换装置的输入端相连, 第一维反变换装置的输出端和第一维反变换后移位装置的输入端相连,第一维 反变换后移位装置的输出端和第二维反变换装置输入端相连,第二维反变换装 置输出端和第二维反变换后移位装置输入端相连,第二维反变换后移位装置输 出端和变换输出数据相连,反变换精度和复杂度控制器通过开关和预移位装置, 第一维反变换装置,第一维反变换后移位装置,第二维反变换装置,第二维反 变换后移位装置相连。
变换前输入数据首先经过预移位装置进行移位,其输出送到第一维正(反) 变换装置进行变换,其输出送到第一维正(反)变换后移位装置进行移位,其 输出送到第二维正(反)变换装置进行变换,其输出送到第二维正(反)变换 后移位装置进行移位,其输出为变换后输出数据。正(反)变换精度和复杂度 控制器通过开关控制和调整预移位装置,第一维正(反)变换装置,第一维正 (反)变换后移位装置,第二维正(反)变换装置,第二维正(反)变换后移 位装置中的相关参数,从而达到不同的精度和不同的实现复杂度。
第一维正(反)变换装置和第二维正(反)变换装置为图1、图2所示的正 (反)变换蝶形结构。
采用的正变换矩阵为:
FDCT fp = 8192 8192 8192 8192 8192 8192 8192 8192 11363 9633 6436 2260 - 2260 - 6436 - 9633 - 11363 10703 4433 - 4433 - 10703 - 10703 - 4433 4433 10703 9633 - 2260 - 11363 - 6436 6436 11363 2260 - 9633 8192 - 8192 - 8192 8192 8192 - 8192 - 8192 8192 6436 - 11363 2260 9633 - 9633 - 2260 11363 - 6436 4433 - 10703 10703 - 4433 - 4433 10703 - 10703 4433 2260 - 6436 9633 - 11363 11363 - 9633 6436 - 2260 / 8192
正变换过程如下:在进行正变换过程前,预移位装置对输入数据先左移6 位,第一维正变换后移位装置对一维变换后的数据不移位,第二维正变换后移 位装置对二维变换后的数据右移9位:
FS0=6,FS1=0,FS2=9
采用的反变换矩阵为正变换矩阵的转置:
IDCTfp=(FDCTfp)T
反变换过程如下:在进行反变换过程前,预移位装置对输入数据先左移10 位,第一维反变换后移位装置对一维变换后的数据不移位,第二维反变换后移 位装置对二维变换后的数据右移13位:
IS0=10,IS1=0,IS2=13
图1、图2中的参数由下式计算得到:
e0=(-E-F)/2SCALE
e1=F/2SCALE
e2=(E-F)/2SCALE
d0=(-A+B+C-D)/2SCALE
d1=(A+B-C+D)/2SCALE
d2=(A+B+C-D)/2SCALE
d3=(A+B-C-D)/2SCALE
d4=(-B+D)/2SCALE
d5=(-A-B)/2SCALE
d6=(-B-C)/2SCALE
d7=(-B+C)/2SCALE
d8=B/2SCALE
具体参数如下:
SCALEf=SCALEi=13
e0=-15136/8192 e1=4433/8192 e2=6270/8192
d0=2446/8192 d1=16820/8192 d2=25172/8192
d3=12300/8192 d4=-7373/8192 d5=-20996/8192
d6=-16069/8192 d7=-3197/8192 d8=9633/8192
正变换精度和复杂度控制器通过控制第一维正变换装置、第二维正变换装 置达到不同的精度和实现复杂度,采用的正变换矩阵调整为:
FDCT fp = 16384 16384 16384 16384 16384 16384 16384 16384 22725 19266 12873 4520 - 4520 - 12873 - 19266 - 22725 21407 8867 - 8867 - 21407 - 21407 - 8867 8867 21407 19266 - 4520 - 22725 - 12873 12873 22725 4520 - 19266 16384 - 16384 - 16384 16384 16384 - 16384 - 16384 16384 12873 - 22725 4520 19266 - 19266 - 4520 22725 - 12873 8867 - 21407 21407 - 8867 - 8867 21407 - 21407 8867 4520 - 12873 19266 - 22725 22725 - 19266 12873 - 4520 / 16384
图1、图2中的调整后的参数由下式计算得到:
e0=(-E-F)/2SCALE
e1=F/2SCALE
e2=(E-F)/2SCALE
d0=(-A+B+C-D)/2SCALE
d1=(A+B-C+D)/2SCALE
d2=(A+B+C-D)/2SCALE
d3=(A+B-C-D)/2SCALE
d4=(-B+D)/2SCALE
d5=(-A-B)/2SCALE
d6=(-B-C)/2SCALE
d7=(-B+C)/2SCALE
d8=B/2SCALE
具体的调整后的参数如下:
SCALEf=14
e0=-30274/16384 e1=8867/16384 e2=12540/16384
d0=4894/16384 d1=33638/16384 d2=50344/16384
d3=24598/16384 d4=-14746/16384 d5=-41991/16384
d6=-32139/16384 d7=-6393/16384 d8=19266/16384
反变换精度和复杂度控制器通过控制预移位装置,第一维反变换装置,第 一维反变换后移位装置、第二维反变换装置和第二维反变换后移位装置达到不 同的精度和实现复杂度,采用的反变换矩阵调整为:
IDCTfpr=(FDCTfpr)T
图1、图2中的调整后的参数由下式计算得到:
e0=(-E-F)/2SCALE
e1=F/2SCALE
e2=(E-F)/2SCALE
d0=(-A+B+C-D)/2SCALE
d1=(A+B-C+D)/2SCALE
d2=(A+B+C-D)/2SCALE
d3=(A+B-C-D)/2SCALE
d4=(-B+D)/2SCALE
d5=(-A-B)/2SCALE
d6=(-B-C)/2SCALE
d7=(-B+C)/2SCALE
d8=B/2SCALE
具体的调整后的参数如下:
SCALEf=14
e0=-30274/16384 e1=8867/16384 e2=12540/16384
d0=4894/16384 d1=33638/16384 d2=50344/16384
d3=24598/16384 d4=-14746/16384 d5=-41991/16384
d6=-32139/16384 d7=-6393/16384 d8=19266/16384
预移位装置对输入数据调整为先左移12位,第一维正(反)变换后移位装 置对一维变换后的数据不移位,第二维正(反)变换后移位装置对二维变换后 的数据调整为右移15位:
IS0=12,IS1=0,IS2=15
上述实施例用来解释说明本发明,而不是对本发明进行限制,在本发明的精 神和权利要求的保护范围内,对本发明作出的任何修改和改变,都落入本发明 的保护范围。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈