CN101605259B - 对多媒体数据进行变换编、解码的装置及方法 - Google Patents

对多媒体数据进行变换编、解码的装置及方法 Download PDF

Info

Publication number
CN101605259B
CN101605259B CN 200910052271 CN200910052271A CN101605259B CN 101605259 B CN101605259 B CN 101605259B CN 200910052271 CN200910052271 CN 200910052271 CN 200910052271 A CN200910052271 A CN 200910052271A CN 101605259 B CN101605259 B CN 101605259B
Authority
CN
China
Prior art keywords
data
butterfly computation
carried out
bit
bit data
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.)
Active
Application number
CN 200910052271
Other languages
English (en)
Other versions
CN101605259A (zh
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.)
Zhangjiagang Kangdexin Optronics Material Co Ltd
Original Assignee
Huaya Microelectronics Shanghai Inc
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 Huaya Microelectronics Shanghai Inc filed Critical Huaya Microelectronics Shanghai Inc
Priority to CN 200910052271 priority Critical patent/CN101605259B/zh
Publication of CN101605259A publication Critical patent/CN101605259A/zh
Application granted granted Critical
Publication of CN101605259B publication Critical patent/CN101605259B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Complex Calculations (AREA)

Abstract

一种对多媒体数据进行变换解码的方法及装置,对多媒体数据进行变换编码的方法及装置,对多媒体数据进行变换编解码的装置。所述对多媒体数据进行变换解码的方法包括:将频域数据矩阵进行一维反变换,对一维反变换后的数据矩阵进行转置,对于转置后的数据矩阵再次进行一维反变换后获得空间域数据矩阵,一维反变换包括:对数据矩阵的每一行中数据进行排序;对经排序后的每一行数据进行多级复合蝶形运算。上述方法及装置支持多种视频标准中的各种变换,可实现在一套装置内支持多种标准的各种变换。上述对多媒体数据进行变换编解码的装置可在一套装置内实现正变换和反变换。

Description

对多媒体数据进行变换编、解码的装置及方法
技术领域
本发明涉及多媒体数据编解码技术领域,特别涉及对多媒体数据进行变换编、解码的装置及方法。 
背景技术
在多媒体技术领域中,存在着多种对静止图像或运动图像进行压缩和解压缩的国际标准,包括例如JPEG、MPEG-1、MPEG-2、MPEG-4、AVS、H.264等。 
JPEG为静止图像压缩标准,于1992年发布,并在1994年获得ISO 109918-1的认定。MPEG是Moving Picture Experts Group的简称。现在我们所说的MPEG泛指该小组制定的一系列视频编码标准。该小组于1988年组成,至今已经制定了MPEG-1、MPEG-2、MPEG-4等多个标准。 
而H.264是由国际电信联盟(ITU)和国际标准化组织(ISO)于2003年5月共同发布的新一代视频压缩编解码标准。和上一代视频编码标准相比,其性能有着大幅度的提升,压缩率基本上是MPEG-2的两倍以上。其还包含一系列新的特征,相比以前的编解码器,不但能够更有效的进行编码,而且更适合在各种网络环境下进行应用。当然这些都是由运算复杂度的大幅攀升来达到的。 
数据音视频编解码标准(AVS,Audio Video coding Standard)是由AVS工作组制定的一种多媒体信源编码标准。它是数字电视、宽带网络流媒体、移动多媒体通信、激光视盘等数字音视频产业群的共性基础标准。它的视频部分与2006年2月22日被颁布为中华人民共和国国家标准,标准号GB/T 20090.2-2006,于2006年3月1日起实施。AVS采用8x8整数变换,帧内预测、环路滤波等一系列新技术,既达到了与H.264相当的性能,又大大降低实现复杂度。 
为了提高压缩率,上述图像或视频压缩标准均用到变换编码。即在编码端通过某种变换将图像信息从空间域转换到频域,一般图像信号的能量主要集中在低频部分,而人眼恰恰具备对低频分量敏感而对高频分量不敏感的特性。因此可以利用此特性对低频分量采用细量化,对高频分量进行粗量化,量化后进行熵编码,以此达到压缩的目的。在解码端采用相对应的反变换将图像信息从频域转换到空间域。 
JPEG标准和MPEG组织的相应标准所采用的变换编码的块大小为8x8的,严格正交的标准二维(2D,two-dimensional)离散余弦变换(DCT,Discrete Cosine Transform)变换及反离散余弦变换(IDCT,Inverse DiscreteCosine Transform)。AVS标准和H.264标准采用整数离散余弦变换(简称整数变换)及其反变换,该变换是标准离散余弦变换的改进与简化。AVS标准中变换块的大小为8x8,H.264标准中块大小可以在4x4和8x8之间进行自适应选择,并且在4x4变换之后对于DC系数再进行一次Hadamard变换(4x4或2x2大小),使平滑区域得到更好的压缩。 
整数变换的优点是有效地降低了编解码的运算量,同时避免了浮点运算所导致的失配现象。但整数变换并不是严格意义上的标准正交变换,因此很多基于正交性分解算法(譬如Loeffler算法)将不再适用。 
另外,对于H.264标准,存在着8x8、4x4、2x2不同大小的变换块,即使同样大小的变换块,变换矩阵也不尽相同,例如对于4x4大小的块,既有整数变换,也有Hadamard变换。如果采用多套变换装置实现,既繁琐又浪费资源。 
此外,对于不同的图像或视频压缩标准,变换矩阵不尽相同,譬如MPEG-2、AVS、H.264等。若分别采用多套变换装置支持不同标准,则也将使得融合编码器或融合解码器繁琐且浪费资源。 
同理,在同时支持编解码的设备中,如果正反变换装置单独设计,也会浪费大量的资源。 
发明内容
本发明要解决的第一个问题是提供一种有效的方法与装置,支持各个标准的多媒体数据进行变换解码。 
本发明要解决的第二个问题是提供一种有效的方法与装置,支持各个标准的多媒体数据进行变换编码。 
本发明要解决的第三个问题是在同一套装置中,既支持编码功能,也支持解码功能。 
为解决第一个问题,本发明提供一种对多媒体数据进行变换解码的方法,包括:将频域数据矩阵进行一维反变换,对一维反变换后的数据矩阵进行转置,对于转置后的数据矩阵再次进行一维反变换后获得空间域数据矩阵,其中,所述一维反变换包括: 
对数据矩阵的每一行中数据进行排序; 
对经排序后的每一行数据进行多级复合蝶形运算。 
相应地,本发明还提供一种对多媒体数据进行变换解码的装置,包括: 
一维反变换运算单元,将频域数据矩阵进行一维反变换运算,以及将转置后的数据矩阵再次进行一维反变换后获得空间域数据矩阵; 
转置运算单元,对一维反变换后的数据矩阵进行转置, 
其中,所述一维反变换运算单元包括: 
数据排列单元,对数据矩阵的每一行中数据进行排序; 
复合蝶形运算单元,对经排序后的每一行数据进行多级复合蝶形运算。 
为解决第二个问题,本发明提供一种对多媒体数据进行变换编码的方法,包括:将空间域数据矩阵进行一维正变换,对一维正变换后的数据矩阵进行转置,对于转置后的数据矩阵再次进行一维正变换后获得频域数据矩阵,其中,所述一维正变换至少包括: 
对每一行数据进行多级复合蝶形运算。 
相应地,本发明还提供一种对多媒体数据进行变换编码的装置,包括: 
一维正变换运算单元,将空间域数据矩阵进行一维正变换运算,以及将转置后的数据矩阵再次进行一维正变换后获得频域数据矩阵; 
转置运算单元,对一维正变换后的数据矩阵进行转置, 
其中,所述一维正变换运算单元至少包括: 
复合蝶形运算单元,对每一行数据进行多级复合蝶形运算。 
为解决第三个问题,本发明提供一种多媒体数据进行变换编解码的装置,包括: 
第一运算单元,在变换解码时,对所获得的两位数据进行移位运算,并对移位运算后的两位数据进行最简蝶形运算;在变换编码时,对所获得的两位数据进行最简蝶形运算,并对最简蝶形运算的结果进行移位运算; 
第二运算单元,对所获得的两位数据进行对称蝶形运算; 
第三运算单元,对所获得的四位数据中的第一与第四位数据、第二与第三位数据分别进行最简蝶形运算; 
缩放运算单元,对所获得的四位数据中的第一与第四位数据进行缩放运算; 
移位运算单元,对所获得的四位数据中的第一至第四位数据分别进行移位运算; 
第四运算单元,对所获得的四位数据中的第一与第四位数据进行最简蝶形运算; 
第五运算单元,对所获得的四位数据中的第一与第三位数据、第二与第四位数据分别进行普通蝶形运算; 
第六运算单元,对所获得的四位数据中的第一与第四位数据、第二与第三位数据分别进行对称蝶形运算; 
第七运算单元,对所获得的八位数据中的第一与第八位数据、第二与第七位数据、第三与第六位数据、第四与第五位数据分别进行最简蝶形运算; 
变换编解码控制单元,对应当前变换类型,输出相应多路选择信号,以及启动第一至第七运算单元、缩放运算单元以及移位运算单元中的相应运算单元; 
若干多路选择器,分别配置于第一至第七运算单元、缩放运算单元以及移位运算单元的输入及输出,根据多路选择信号开启相应数据通道,以确定各运算单元间的数据传输顺序。 
与现有技术相比,本发明具有以下优点: 
1)本发明支持标准离散余弦变换及反变换,也支持例如AVS、H.264标准下的整数变换及反变换,以及Hadamard变换及反变换。并且,其数据排序方法更有规律。 
2)本发明支持各标准下不同阶数的变换,既支持8x8变换,也支持4x4或2x2变换,同时对低阶变换可以作到多引擎。 
3)本发明支持编解码融合方案,通过标准化单元进行不同方式的拼接即可实现正变换和反变换,无需做两套装置。 
附图说明
图1a是二维正变换处理过程图; 
图1b是二维反变换处理过程图; 
图2是本发明实施例8×8反变换处理架构图; 
图3a是本发明实施例中对称蝶形运算的示意图; 
图3b是本发明实施例中最简蝶形运算的示意图; 
图3c是本发明实施例中普通蝶形运算的示意图; 
图4是本发明实施例4×4反变换第一引擎处理架构图; 
图5a是本发明实施例4×4反变换第二引擎处理架构图; 
图5b是图5a所示架构中可配置连线示意图; 
图6是本发明实施例2×2Hadamard反变换处理架构图; 
图7是本发明实施例8×8正变换处理架构图; 
图8是本发明实施例4×4正变换第一引擎处理架构图; 
图9是本发明实施例4×4正变换第二引擎处理架构图; 
图10是本发明实施例2×2Hadamard反变换处理架构图; 
图11a是对单元A、B组合正反变换应用可配置连线的融合架构图; 
图11b是对单元A、B、C组合正反变换应用可配置连线的融合架构图; 
图12a是本发明实施例8×8正变换处理架构的单元划分示意图; 
图12b是本发明实施例8×8反变换处理架构的单元划分示意图; 
图12c是本发明实施例正反变换中SP_8单元、ASP_8单元应用可配置连线的融合架构图; 
图13是本发明实施例正反变换中4×4第一引擎应用可配置连线的融合架构图; 
图14a是本发明实施例正反变换中Even_4单元的架构图; 
图14b是本发明实施例反变换中ODD_4单元的架构图; 
图14c是本发明实施例正变换中ODD_4单元的架构图; 
图15a是本发明实施例反变换中ODD_8单元的架构图; 
图15b是本发明实施例反变换中ODD_8单元的单元划分示意图; 
图16a是本发明实施例正变换中ODD_8单元的架构图; 
图16b是本发明实施例正变换中ODD_8单元的单元划分示意图; 
图17是本发明实施例正反变换中ODD_8单元应用第一种可配置连线的融合架构图; 
图18是本发明实施例正变换中ODD_8单元应用第二种可配置连线的架构图; 
图19是本发明实施例正反变换中4×4第二引擎应用第二种可配置连线的架构图。 
具体实施方式
二维离散余弦变换(2D-DCT)的数学表达式为: 
Y p , q = α p α q Σ m = 1 N - 1 Σ m = 1 N - 1 X m , n cos π ( 2 m + 1 ) p 2 N cos π ( 2 n + 1 ) q 2 N , 0 ≤ p ≤ N - 1 0 ≤ q ≤ N - 1
α p = 1 / N , p = 0 2 / N , 1 ≤ p ≤ N - 1 α q = 1 / N , q = 0 2 / N , 1 ≤ q ≤ N - 1
其中,X矩阵对应的是空间域的图像数据,Y矩阵对应的是频域图像数据,所需变换的块大小为NxN,即X、Y矩阵的行数和列数都为N。 
二维离散余弦反变换(2D-IDCT)的数学表达式为: 
X m , n = Σ p = 1 N - 1 Σ q = 1 N - 1 α p α q Y p , q cos π ( 2 m + 1 ) p 2 N cos π ( 2 n + 1 ) q 2 N , 0 ≤ m ≤ N - 1 0 ≤ n ≤ N - 1
α p = 1 / N , p = 0 2 / N , 1 ≤ p ≤ N - 1 α q = 1 / N , q = 0 2 / N , 1 ≤ q ≤ N - 1
其中X、Y、N的定义与正变换相同。 
如果需进行变换的图像块的大小为NxN,定义空间域图像数据为矩阵X,频域图像数据为矩阵Y,变换矩阵为A。变换矩阵A的定义如下: 
A = 2 N × 2 2 2 2 · · · · · · 2 2 cos ( 1 × 1 ) π 2 × N cos ( 1 × 3 ) π 2 × N · · · · · · cos ( 1 × ( 2 N - 1 ) ) π 2 × N · · · · · · · · · · · · · · · · · · · · · · · · cos ( ( N - 1 ) × 1 ) π 2 × N cos ( N - 1 ) × 3 ) π 2 × N · · · · · · cos ( ( N - 1 ) × ( 2 N - 1 ) ) π 2 N
则二维离散余弦变换(2D-DCT)的矩阵形式表达式为: 
Y=AXAT
其反变换(2D-IDCT)的矩阵形式表达式为: 
X=ATYA 
1维离散余弦变换(1D-DCT)对应的数学表达式为: 
y ( k ) = w ( k ) Σ n = 0 N - 1 x ( n ) cos π ( 2 n + 1 ) k 2 N , k=0,…,N-1 
其中, w ( k ) = 1 N k = 0 2 N 1 ≤ k ≤ N ,
x为空间域的一维数据,y为频域的一维数据,N为需变换向量的长度。 
1维反离散余弦变换(1D-IDCT)对应的数学表达式为: 
x ( n ) = Σ k = 0 N - 1 w ( k ) y ( k ) cos π ( 2 n + 1 ) k 2 N , n=0,…,N-1 
其中,w、x、y,N的定义与正变换(1D-DCT)相同。 
如果定义的转换矩阵A与2D变换相同,则一维正变换的矩阵形式表达式为: 
y → = A x →
一维逆变换的矩阵形式表达式为: 
Figure G2009100522710D00093
其中 
Figure G2009100522710D00094
均为长度为N的列向量。 
由上述表达式可以看出二维变换无论是正变换还是其反变换都可以看成两次相对应一维变换的结果。参照图1a所示,二维正变换可以分解为两次一维正变换,经过第一次一维正变换后,将获得的矩阵转置,再对转置后矩阵进行第二次一维正变换,最终实现空间域数据到频域数据的变换。参照图1b所示,二维反变换可以分解为两次一维反变换,经过第一次一维反变换后,将获得的矩阵装置,再对转置后矩阵进行第二次一维反变换,最终实现频域数据到空间域数据的变换。 
为说明简洁,以下变换均以一维变换为例进行描述。 
所谓的标准正交变换,也就是说变换矩阵为正交矩阵,即AAT=ATA=E 
AVS标准中变换的变换矩阵为: 
A = 8 8 8 8 8 8 8 8 10 9 6 2 - 2 - 6 - 9 - 10 10 4 - 4 - 10 - 10 - 4 4 10 9 - 2 - 10 - 6 6 10 2 - 9 8 - 8 - 8 8 8 - 8 - 8 8 6 - 10 2 9 - 9 - 2 10 - 6 4 - 10 10 - 4 - 4 10 - 10 4 2 - 6 9 - 10 10 - 9 6 - 2
H.2648x8变换的变换矩阵为: 
A = 1 1 1 1 1 1 1 1 3 / 2 5 / 4 3 / 4 3 / 8 - 3 / 8 - 3 / 4 - 5 / 4 - 3 / 2 1 1 / 2 - 1 / 2 - 1 - 1 - 1 / 2 1 / 2 1 5 / 4 - 3 / 8 - 3 / 2 - 3 / 4 3 / 4 3 / 2 3 / 8 - 5 / 4 1 - 1 - 1 1 1 - 1 - 1 1 3 / 4 - 3 / 2 3 / 8 5 / 4 - 5 / 4 - 3 / 8 3 / 2 - / 34 1 / 2 - 1 1 - 1 / 2 - 1 / 2 1 - 1 1 / 2 3 / 8 - 3 / 4 5 / 4 - 3 / 2 3 / 2 - 5 / 4 3 / 4 - 3 / 8
H.2644x4正变换对应的变换矩阵为: 
A = 1 1 1 1 2 1 - 1 - 2 1 - 1 - 1 1 1 - 2 2 - 1
H.2644x4反变换对应的变换矩阵为: 
A = 1 1 1 1 1 1 / 2 - 1 / 2 - 1 1 - 1 - 1 1 1 / 2 - 1 1 - 1 / 2
以上这些整数变换所对应的变换矩阵并不满足标准正交变换,即AAT=ATA=E,因此并不是严格意义上的标准正交变换。 
4x4hadamard变换的变换矩阵, 
A = 1 1 1 1 1 1 - 1 - 1 1 - 1 - 1 1 1 - 1 1 - 1
2x2hadamard变换的变换矩阵, 
A = 1 1 1 - 1
通过上述各变换矩阵可以看出,尽管AVS和H.264中的变换矩阵并非是正交矩阵,但它们有着和标准浮点DCT/IDCT变换矩阵相同的对称性。而且低阶变换矩阵(譬如4x4或2x2)按行索引号对行进行位倒序重新排列,与高阶矩阵按同样方法进行排列后左上角子矩阵的对称性相同。这为各个标准、不同块大小变换在同一装置中的实现提供了可能。 
而在同一标准中,相同性质的正变换与反变换所对应的矩阵为转置关系,或者是转置矩阵的变形,即只进行小量修改,而不破坏其原有的对称性。从该性质出发,本发明通过保证最基本单元的通用性,并通过可配置连线实现正变换与反变换的兼容。 
以下分别对于本发明应用于各种变换的具体实现进行举例说明。 
(一)8x8反变换: 
单一标准或多标准融合(支持多标准解码)架构的8x8反变换可以通过图2所示结构实现,该结构中包括多级复合蝶形运算,所述复合蝶形运算可以有以下几种形式:1)缩放运算和蝶形运算的结合2)多个蝶形运算的结合。 
其中,蝶形运算还可分为:最简蝶形运算、对称蝶形运算和普通蝶形运算。其中,普通蝶形运算包括对称蝶形运算,对称蝶形运算包括最简蝶形运算。也就是说,最简蝶形运算是对称蝶形运算的一种特例,对称蝶形运算是普通蝶形运算的一种特例。 
其中,缩放运算还包括移位运算。 
关于以上各种运算会在以下详细说明。 
在单一标准中,蝶形运算、缩放运算的系数固定。 
而在融合标准下,各种运算的系数可配置。可配置可以通过两种方法实现: 
1)可配置乘法器,即要乘取的系数分成若干组提前放置在存储器中,对应不同的标准调用不同的系数。 
2)可以通过移位加的办法取代乘法,即将所有的可能都罗列出来,由易到难地实现,难的复用容易的。 
假定一维反变换: ( x → ) T = ( y → ) T A 中, ( x ) → T = x 0 x 1 , ( y ) → T = y 0 y 1 , 则该一维反变换可通过图3a所示的对称蝶形运算实现。令 A = c b - b c , 则该一维反变换对应的运算为: 
x0=c×y0-b×y1
                                          (1) 
x1=b×y0+c×y1
因而对于一维反变换,最直接的方法就是如上述可配置方法1)说明的,将要乘取的系数,例如b、c,分成若干组提前放置在存储器中,对应不同的标准时调用不同的系数,进行变换所涉及的乘法运算。 
表1中系数是指在各标准的变换中所对应的系数,例如图2中y0、y4到e0、e4变换中相应的b、c值) 
表1 
Figure DEST_PATH_GA20175265200910052271001D00015
Figure DEST_PATH_GA20175265200910052271001D00021
而上述乘法运算,还可采用上述可配置方法2)说明的移位加的方法。采用CSD编码后(注:按绝对值进行CSD编码,正数保持不变,负数按位取反,即1变为-1,-1变为1,0保持不变),各标准的变换对应情况见表2 
表2 
注:浮点系数定点化到12Bit.红圈内表示可以复用部分,第3组完全复用第2组结果。 
从上表中可以看出,实现融合后的该碟形引擎,只需加法器12个。 
以下各变换举例中也将结合表1和表2进行进一步说明。 
因此实现8x8反变换,继续参照图2所示,无论是单一标准或是多标准融合,都可包含如下步骤: 
第一步,将输入的图像数据的每一行8个数据按索引号位倒序方式排列。此处需要说明的是,在第一次一维反变换中所述行为8x8矩阵的一行,而在第二次一维反变换中,由于经过转置,因而第二次一维反变换中的一行实质是第一次一维反变换后获得的矩阵的一列。表3所示为所述倒序排列的说明。 
表3 
第二步,对输入图像数据进行缩放运算(移位运算也是缩放运算的一种)。 
例如在AVS标准中,在倒序排列后,y0、y4需左移3bit,实现乘8的运算,因此移位运算的系数k可以取3。而对应其他标准,由于y0、y4无需缩放缩放运算,则k=0。又例如在MPEG-2标准中,y1、y7需要进行缩放,缩放因子w为 
Figure G2009100522710D00142
而对应其他标准,y1、y7无需缩放运算,则w=0。 
第三步,经过缩放后的y0、y4进行最简蝶形运算,得e0、e4。y2、y6进行对称蝶形运算,得e2、e6。经过缩放后的y1、y7进行最简蝶形运算,得d1、d7。 
其中,所述最简蝶形运算,参照图3b是指在公式(1)中的b=c=1时,相应乘法运算就可简化为加法运算。例如对于y0、y4进行最简蝶形运算,得e0、e4即可按下述公式进行: 
e0=y0-y4
e4=y0+y4    (2) 
相应地,y1、y7进行最简蝶形运算,得d1、d7。则参照公式(2)有: 
d1=y1-y7
d7=y1+y7
而y2、y6进行对称蝶形运算,得e2、e6。则参照公式(1)有: 
e2=c×y2-b×y6
e6=b×y2+c×y6
第四步,d1、d3进行普通的蝶形运算得e1、e3,d5、d7进行普通的蝶形运算得e5、e7。 
其中,对d1、d3进行普通的蝶形运算得e1、e3,参照图3c所示,有: 
e1=a00×d1+a20×d3
e3=a02×d1-a22×d3    (3) 
相应地,d5、d7进行普通的蝶形运算得e5、e7。则参照公式(3)有: 
e5=a11×d5-a31×d7
e7=a13×d5+a33×d7
例如,所述普通蝶形运算,对于AVS标准,其系数a00=2、a20=3、a02=3、a22=4;系数a11=4、a31=3、a13=3、a33=2;对于H.264标准,其系数a00=3、a20=4、a02=2、a22=3;系数a11=3、a31=2、a13=4、a33=3。 
第五步,e0、e6进行最简蝶形运算,得f0、f6。e4、e2进行最简蝶形运算,得f2、f4。e1、e7进行普通蝶形运算,得f1、f7。e3、e5进行普通蝶形运算,得f5、f3。 
其中,相应最简蝶形运算可参照公式(2),普通蝶形运算则可参照公式 (3)。 
第六步,f0、f7进行最简蝶形运算,得x0、x7;f2、f5进行最简蝶形运算,得x1、x6;f4、f3进行最简蝶形运算,得x2、x5;f6、f1进行最简蝶形运算,得x3、x4。 
其中,相应最简蝶形运算可参照公式(2),普通蝶形运算则可参照公式(3)。 
至此,一维8x8反变换已经完成。 
对上述一维8×8反变换中所涉及的乘法运算,例如形如公式(1)、公式(3)的乘法运算,既可以直接对应各标准采用表1中的系数,利用乘法器直接进行乘法运算,也可以应用移位加的方法,通过csd编码,并采用表2中的表达式,将乘法运算转换为加法运算。 
此处需要说明的是,上述第二步至第六步的操作步骤仅为举例的示意性步骤,其先后顺序在按图2所示结构进行变换的基础上,均可任意调整。 
(二)4x4反变换: 
4x4反变换矩阵的每一行4个数据按索引号位倒序排列后,与8x8反变换矩阵按索引号位倒序排列后所得变换矩阵的左上角子矩阵的对称性相同,因此要8x8反变换要兼容1个4x4反变换并非难事。然而8x8变换所需要的资源是4x4变换的两倍以上,如果在支持8x8反变换的同时只兼容1套4x4反变换,那么会遭成大量的资源浪费。因此,在本发明中,相对于第一套4x4变换引擎的闲置资源经过合理的改造而提供第二套引擎。以下分别对于该两套引擎作详细说明。 
4x4反变换第一引擎: 
4x4反变换第一引擎与8x8反变换偶数项分解部分完全兼容。实现该变 换,参照图4所示,需要如下步骤: 
第一步,将输入的图像数据的每一行4个数据按索引号位倒序方式排列。此处需要说明的是,在第一次一维反变换中所述行为4x4矩阵的一行,而在第二次一维反变换中,由于经过转置,因而第二次一维反变换中的一行实质是第一次一维反变换后获得的矩阵的一列。表4所示为所述倒序排列的说明。 
表4 
Figure G2009100522710D00171
第二步,y0、y2进行最简蝶形运算,得e0、e2。y1、y3进行对称蝶形运算,得e1、e3。 
其中,y0、y2进行最简蝶形运算,得e0、e2,可参照公式(2)。 
y1、y3进行对称蝶形运算,得e1、e3,可参照公式(1)。 
e1=c×y1-b×y3
e3=b×y1+c×y3
例如,所述对称蝶形运算,对于H.264标准,其系数b=1、c=1/2。 
而对于4x4hadamard,其相应系数b=1、c=1。 
第三步,e0、e3进行最简蝶形运算,得x0、x3。e2、e1进行最简蝶形运算,得x1、x2。 
其中,e0、e3进行最简蝶形运算,得x0、x3,可参照公式(2)。e2、y1进行最简蝶形运算,得x1、x3,可参照公式(2)。 
至此,一维4x4反变换已经完成。 
对上述一维4×4反变换中所涉及的乘法运算,例如形如公式(1)的乘法运算,既可以直接对应各标准采用表1中的系数,利用乘法器直接进行乘法运算,也可以应用移位加的方法,通过csd编码,并采用表2中的表达式,将乘法运算转换为加法运算。 
4x4反变换第二引擎: 
第二引擎与8x8反变换奇数项分解相复用,其架构图参照图5a所示,交叉连线部分可用图5b中由两个多路选择器构成的可配置连线实现与8x8反变换的兼容。 
结合图5a和图5b所示,实现该变换需要如下步骤: 
第一步,将输入的图像数据按y1、y2、y3、y0的顺序排列。 
第二步,y1、y3进行对称蝶形运算,得e3、e1;y2、y0进行最简蝶形运算得e2、e0。 
例如,所述对称蝶形运算,对于H.264标准,其系数a00=1、a02=1/2、a20=1/2、a22=1。 
此处,结合图2和图5a可以看到,y1、y3、y2、y0所进行的蝶形运算复用了上述8x8反变换说明中第四步所采用的运算方式,以实现与8x8反变换的兼容。只是此处,y1、y3所进行的蝶形运算中,其上述的各系数使得该蝶形运算实质为对称蝶形运算,其运算过程可对应参考公式(1)。而y2、y0所进行的蝶形运算中,例如对于H.264标准,其系数a11=a33=a13=a31=1,因而其实质为最简蝶形运算,其运算过程可对应参考公式(2)。 
第三步,通过多路选择器开关,实现e2、e1的交叉换位。 
继续参照图5b所示,将e2、e1交叉接入两个相同的多路选择器中,通过 控制多路选择器的选择端来实现e2、e1的交叉换位。具体地说,将e2接入多路选择器51的0端以及多路选择器52的1端,将e1接入多路选择器51的1端以及多路选择器52的0端。当对于多路选择器51和52,同时控制其让1端的信号通过时,多路选择器51就通过信号e1,而多路选择器52就通过信号e2,从而实现了e2、e1的交叉换位。 
第四步,e0、e3进行最简蝶形运算,得x0、x3。e2、e1进行最简蝶形运算,得x1、x2。 
此处,结合图2和图5a可以看到,e0、e3、e2、e1所进行的蝶形运算复用了上述8x8反变换说明中第五步所采用的运算方式,以实现与8x8反变换的兼容。只是此处,e0、e3所进行的蝶形运算中,系数u=v=1,因而其实质为最简蝶形运算,其运算过程可对应参考公式(2)。而e2、e1所进行的蝶形运算中,p=q=1,因而其实质为最简蝶形运算,其运算过程可对应参考公式(2)。 
至此,一维4x4反变换已经完成。 
(三)2x2阶Hadamard反变换: 
2x2阶Hadamard反变换的实现架构图参照图6所示。2x2阶Hadamard反变换,参照公式(2),可以通过最简对称蝶形运算实现。 
(四)8x8正变换: 
单一标准或多标准融合(支持多标准解码)架构的8x8正变换可以通过图7所示结构实现。在单标准中,蝶形运算和缩放运算的系数固定,在融合标准下,各运算系数可配置。可配置的方法可以参照上述反变换中相应说明,此处就不再赘述了。 
实现8x8正变换,无论是单一标准或是多标准,参照图7所示,都可包含如下步骤: 
第一步,x0、x7进行最简蝶形运算,得f0、f7;x1、x6进行最简蝶形运算, 得f2、f5;x2、x5进行最简蝶形运算,得f4、f3,x3、x4进行最简蝶形运算,得f6、f1。 
第二步,f0、f6进行最简蝶形运算得e0、e6。f2、f4进行最简蝶形运算,得e4、e2。f1、f7进行普通蝶形运算,得e1、e7。f3、f5进行普通蝶形运算,得e5、e3。 
结合图2和图7所示,此处,f1、f7、f3、f5进行的蝶形运算,其实是复用了8x8反变换中相应的运算方式。只是此处,f1、f7进行的蝶形运算中,各个系数都不同,其实质是普通蝶形运算,其运算过程可对应参考公式(3)。而f3、f5进行的蝶形运算中,各个系数都不同,其实质是普通蝶形运算,其运算过程可对应参考公式(3)。 
第三步,e1、e3进行普通的蝶形运算得d1、d3,e5、e7进行普通的蝶形运算得d5、d7。 
第四步,e0、e4进行最简蝶形运算。e2、e6进行对称蝶形运算,得y2、y6。d1、d7进行最简蝶形运算。 
第五步,对d5、d3进行缩放运算得y5、y3,对e0、e4的最简蝶形运算结果进行缩放运算,得y0、y4,对d1、d7的最简蝶形运算结果进行缩放运算得y1、y7。至此一维8x8正变换已经完成。 
(五)4x4正变换: 
与反变换相同的道理,4x4阶正变换也可以做到双引擎。 
4x4阶正变换第一引擎: 
4x4正变换第一引擎与8x8正变换偶数项分解部分完全兼容。参照图8所示,实现该变换需要如下步骤: 
第一步,x0、x3进行最简蝶形运算e0、e3。x1、x2进行最简蝶形运算,得e2、e1。 
第二步,e0、e2进行最简蝶形运算,得y0、y2。e1、e3进行对称蝶形运算,得y1、y3。至此,第一引擎中的一维4x4正变换已经完成。 
4x4正变换第二引擎: 
第二引擎与8x8正变换奇数项分解相复用,其架构图参照图9所示,交叉连线部分用可配置连线实现与8x8正变换的兼容,其具体说明请参照4x4反变换的第二引擎说明。 
(六)2x2阶Hadamard正变换: 
2x2阶Hadamard正变换的实现架构图参照图10所示。2x2阶Hadamard正变换,参照公式(2),可以通过最简对称蝶形运算实现。 
(七)正反变换融合方案的实现: 
譬如两个单元A、B组合成的变换,其正变换顺序为单元A运算后,输入单元B运算,而其反变换顺序为单元B运算后,输入单元A运算。对于正、反变换都存在的场合,若对该正、反变换分别设计对应的变换装置,则对于资源较紧张的情况显然就不太适用。 
而该正反变换其实可以通过可配置连线的方式进行融合。参照图11a所示,将单元B的输出接入多路选择器110的1端和多路选择器112的0端,将单元A的输出接入多路选择器111的0端和多路选择器112的1端,而变换控制信号则输入多路选择器110的0端和多路选择器111的1端。则当变换控制信号选中多路选择器110的0端时,其变换顺序为单元A运算后,输入单元B运算,即正变换。而当变换控制信号选中多路选择器110的1端时,其变换顺序为单元B运算后,输入单元A运算,即反变换。从而,通过可配置连线的方式在同一装置中就能实现正变换和反变换两种功能。 
而对于三个单元A、B、C组合成的变换,同样可以采用相同的可配置连线方式。其可配置连线的具体结构参照图11b所示,同样通过各个单元与多 路选择器的配合,以变换控制信号对多路选择器不同的选中,从而分别实现A->B->C的正变换,以及C->B->A的反变换。 
以此类推,对于更多的单元,同样可以基于相同的可配置连线的处理方式来实现正反变换在同一装置中的融合实现。 
而从上述举例说明的反变换、正变换的架构图可以看出,所有的变换都是由相同的基本子单元构成,通过不同的连线方式实现其正变换或反变换。因此,可以通过把所有的正变换和反变换分解为各种运算单元,然后各个单元按可配置连线的方式进行连接,就可以构成所需的各种正变换或反变换。 
本发明对多媒体数据进行变换编解码的装置的一种实施方式,包括: 
第一运算单元(Even_4),在变换解码时,对所获得的两位数据进行移位运算,并对移位运算后的两位数据进行最简蝶形运算;在变换编码时,对所获得的两位数据进行最简蝶形运算,并对最简蝶形运算的结果进行移位运算; 
第二运算单元(ODD_4),对所获得的两位数据进行对称蝶形运算; 
第三运算单元(SP_4),对所获得的四位数据中的第一与第四位数据、第二与第三位数据分别进行最简蝶形运算; 
缩放运算单元,对所获得的四位数据中的第一与第四位数据进行缩放运算; 
移位运算单元,对所获得的四位数据中的第一至第四位数据分别进行移位运算; 
第四运算单元(ODD_8_1),对所获得的四位数据中的第一与第四位数据进行最简蝶形运算; 
第五运算单元(ODD_8_2),对所获得的四位数据中的第一与第三位数据、第二与第四位数据分别进行普通蝶形运算; 
第六运算单元(ODD_8_3),对所获得的四位数据中的第一与第四位数据、第二与第三位数据分别进行对称蝶形运算; 
第七运算单元(SP_8),对所获得的八位数据中的第一与第八位数据、第二与第七位数据、第三与第六位数据、第四与第五位数据分别进行最简蝶形运算; 
变换编解码控制单元,对应当前变换类型,输出相应多路选择信号,以及启动第一至第七运算单元、缩放运算单元以及移位运算单元中的相应运算单元; 
若干多路选择器,分别配置于第一至第七运算单元、缩放运算单元以及移位运算单元的输入及输出,根据多路选择信号开启相应数据通道,以确定各运算单元间的数据传输顺序。 
其中,所述变换类型对应的信息包括:当前变换属于正变换、反变换中的哪一种,是何种视频标准下的变换,变换块的大小是什么。 
结合图2和图12a所示,例如对于8×8正变换,其架构可划分为SP_8(对称部分)和ASP_8(非对称部分)两个单元。而结合图7和图12b所示,例如对于8×8反变换,其架构也可划分为SP_8和ASP_8两个单元。则在SP_8单元和ASP_8单元的运算结果已知的情况下,就可通过可配置连线的方式对8阶层次上的正反变换进行融合。参照图12c所示,与图11a的连线接法相同,将SP_8单元的输出接入多路选择器122的0端以及多路选择器123的1端,将ASP_8单元的输出接入多路选择器121的1端以及多路选择器123的0端,变换控制信号输入多路选择器121的0端以及多路选择器122的1端。则当变换控制信号选中多路选择器121的0端时,就实现SP_8->ASP_8的正变换运算,而当变换控制信号选中多路选择器122的1端时,就实现ASP_8->SP_8的反变换运算。 
接下来,对正变换中的ASP_8单元,其架构可划分为Even_8(偶数项)和ODD_8(奇数项)两个单元。而对于反变换中的ASP_8单元,其架构也可 划分为Even_8和ODD_8两个单元。以下会对于Even_8和ODD_8单元中涉及的融合方法进行详细说明。 
对正变换中的Even_8单元,其架构(对应4×4变换的第一引擎)可划分为SP_4(对称部分)和ASP_4(非对称部分)两个单元。而对于反变换中的Even_8单元,其架构也可划分为SP_4和ASP_4两个单元。则在SP_4单元和ASP_4单元的运算结果已知的情况下,也可通过可配置连线的方式对正反变换中的Even_8单元进行融合。其可配置连线的方式参照图13所示,通过将SP_4和ASP_4与相应的多路选择器相连,以实现SP_4->ASP_4的正变换运算,以及ASP_4->SP_4的反变换运算,其连接方式可对照上述说明,就不再重复描述了。 
接下来,对正变换中的ASP_4单元,其架构可划分为Even_4(偶数项)和ODD_4(奇数项)两个单元。而对于反变换中的ASP_4单元,其架构也可划分为Even_4和ODD_4两个单元。 
并且,正反变换中的Even_4单元的结构完全相同,参照图14a所示,其均为2×2变换结构,包括缩放运算和最简蝶形运算。 
而正反变换中的ODD_4单元则略有不同,但可通过不同的连线方式实现。结合图14b所示的正变换中ODD_4单元以及图14c所示的反变换中ODD_4单元,经过改变连线方式,正反变换中ODD_4单元的区别仅在于输入信号和输出信号不同,其均为相同结构的对称蝶形运算。 
对于反变换中的ODD_8单元,结合图2、图15a和图15b所示,其结构可划分为5级单元,根据反变换的信号处理顺序依次为:缩放、ODD_8I、ODD_8II、ODD_8III以及移位。 
而相应地,正变换中的ODD_8单元,结合图7、图16a和图16b所示,其结构也可划分为5级单元,根据正变换的信号处理顺序依次为:ODD_8III、 ODD_8II、ODD_8I、缩放以及移位(移位也是一种缩放)。例如,对于AVS标准,其缩放运算的系数W=1,移位运算的系数m=1,n=0;对于AVS标准,其缩放运算的系数W=1,移位运算的系数m=4,n=3。 
从以上分析可以看到,正反变换中的ODD_8单元中的各个子单元的结构相同,且除了移位的位置顺序相同外,其他子单元的位置顺序正好彼此倒序。因此,也可以使用可配置连线的方法进行融合。其包括两种可选的方法,以下对于该两种方法分别进一步说明。 
方法一:内部可配置连线。也就是说,在ODD_8各个子单元间进行可配置连线。参照图17所示,同样参照上述的可配置连线的方法将ODD_8III、ODD_8II、ODD_8I以及缩放单元与相应多路选择器连接,并通过移位子单元输出。通过变换控制信号的控制,在变换控制信号选中0端时,实现缩放->ODD_8I->ODD_8I->ODD_8III->移位的反变换运算,在变换控制信号选中1端时,实现ODD_8III->ODD_8II->ODD_8I->缩放->移位的正变换运算。 
此外,在此方式下的4×4变换的第二引擎,结合图5a、图9、图15a、图15b所示,通过ODD_8_II和ODD_8_III间的可配置连线实现,从而实现与ODD_8单元运算的兼容,此处对于可配置连线的方式就不再重复描述了。 
方法一的可配置连线方式比较直观,但其连线的复杂度较高。因而有了方法二:保持内部连线不变,但整体与外面衔接的连线顺序有变化。也就是说保持ODD_8各个子单元的连线顺序对于正反变换均相同,而调整进入ODD_8单元的信号顺序。结合图15a、图16a和图18所示,反变换的内部和外部连线顺序未变化,而是对正变换进行了改动,使得正变换中各子单元的连线方式也可复用反变换中各子单元的连线方式。 
而在此方法下的4x4变换第二引擎,结合图5a、图9和图19所示,反变 换的内部和外部连线顺序未变化,而是对正变换进行了改动,使得正变换中各子单元的连线方式也可复用反变换中各子单元的连线方式。 
因此,采用方法有两点需注意,1)输入输出数据编号顺序不同;2)同种运算方式对于正反变换,其对应参数不同。 
综上所述,在应用可配置连线进行正反变换的融合时,任何一个N阶变换都可以分解为对称部分(SP_N)和,非对称部分(ASP_N部分进行级联),正变换对称部分在前非对称部分在后。反变换非对称部分在前,对称部分在后。而非对称部分可以划分为独立的奇变换(ODD_N)和偶变换(EVEN_N)两部分。EVEN_N与同性质的低阶变换(N/2阶)相同,因此可以按此规律继续分解直至完成变换所有层次的融合应用。 

Claims (15)

1.一种对多媒体数据进行变换解码的方法,所述方法支持将各个标准的多媒体数据进行变换解码,所述方法包括:将频域数据矩阵进行一维反变换,对一维反变换后的数据矩阵进行转置,对于转置后的数据矩阵再次进行一维反变换后获得空间域数据矩阵,其特征在于,所述一维反变换包括:
对数据矩阵的每一行中数据进行排序;
对经排序后的每一行数据进行多级复合蝶形运算;
其中,当所述频域数据矩阵为8阶数据矩阵时,所述排序为按索引号位倒序排列,对按索引号倒序排列后的每一行数据进行多级复合蝶形运算包括:
对按索引号位倒序排列后的每一行中第一与第二位数据进行移位运算和最简蝶形运算,第五与第八位数据进行缩放运算和最简蝶形运算,第三与第四位数据进行对称蝶形运算,获得第一级中间数据;
对第一级中间数据的第一与第四位数据、第二与第三位数据分别进行最简蝶形运算,第一级中间数据的第五位与按索引号位倒序排列后的每一行中第七位数据、第一级中间数据的第六位与按索引号位倒序排列后每一行中第六位数据分别进行普通蝶形运算,获得第二级中间数据;
对第二级中间数据的第五与第八位数据进行对称蝶形运算和移位运算,第六与第七位数据进行对称蝶形运算和移位运算,获得第三级中间数据;
对第二级中间数据的第一位数据与移位运算后的第三级中间数据的第四位数据、第二级中间数据的第二位数据与移位运算后的第三级中间数据的第三位数据、第二级中间数据的第三位数据与移位运算后的第三级中间数据的第二位数据、第二级中间数据的第四位数据与移位运算后的第三级中间数据的第一位数据分别进行最简蝶形运算。
2.如权利要求1所述的对多媒体数据进行变换解码的方法,其特征在于,当所述频域数据矩阵为4阶矩阵时,所述排序为按索引号位倒序排列,对按索引号倒序排列后的每一行数据进行多级复合蝶形运算包括:
对按索引号位倒序排列后的每一行中第一与第二位数据进行最简蝶形运算,第三与第四位数据进行对称蝶形运算,获得第一级中间数据;
对第一级中间数据的第一与第四位数据、第二与第三位数据分别进行最简蝶形运算。
3.如权利要求1所述的对多媒体数据进行变换解码的方法,其特征在于,当所述频域数据矩阵为4阶矩阵时,所述排序为对每一行数据按第二、第三、第四、第一的顺序重新排序,对排序后的每一行数据进行多级复合蝶形运算包括:
对排序后的每一行中第一与第三位数据进行普通蝶形运算,第二与第四位数据进行普通蝶形运算,获得第一级中间数据;
对第一级中间数据的第一与第四位数据进行对称蝶形运算,将第一级中间数据的第二与第三位数据交叉换位后进行对称蝶形运算。
4.如权利要求1所述的对多媒体数据进行变换解码的方法,其特征在于,当所述频域数据矩阵为2阶矩阵时,所述排序为按索引号位倒序排列,对按索引号倒序排列后的每一行数据进行多级复合蝶形运算包括:
对按索引号位倒序排列后的每一行中第一与第二位数据进行最简蝶形运算。
5.如权利要求1或3所述的对多媒体数据进行变换解码的方法,其特征在于,所述普通蝶形运算、对称蝶形运算中包括的乘法运算采用乘法方式或移位加方式进行。
6.如权利要求2所述的对多媒体数据进行变换解码的方法,其特征在于,所述对称蝶形运算中包括的乘法运算采用乘法方式或移位加方式进行。
7.一种对多媒体数据进行变换编码的方法,所述方法支持将各个标准的多媒体数据进行变换编码,所述方法包括:将空间域数据矩阵进行一维正变换,对一维正变换后的数据矩阵进行转置,对于转置后的数据矩阵再次进行一维正变换后获得频域数据矩阵,其特征在于,所述一维正变换至少包括:
对每一行数据进行多级复合蝶形运算;
其中,当所述空间域数据矩阵为8阶数据矩阵时,对每一行数据进行多级复合蝶形运算包括:
对每一行中第一与第八位数据、第二与第七位数据、第三与第六位数据、第四与第五位数据分别进行最简蝶形运算,获得第一级中间数据;
对第一级中间数据的第一与第四位数据、第二与第三位数据分别进行最简蝶形运算,第五与第八位数据、第六与第七位数据分别进行对称蝶形运算,获得第二级中间数据;
对第二级中间数据的第一与第二位数据进行最简蝶形运算和移位运算,第三与第四位数据进行对称蝶形运算,第五与第七位数据、第六与第八位数据分别进行普通蝶形运算,获得第三级中间数据;
对第三级中间数据的第五与第八位数据进行最简蝶形运算、缩放运算和移位运算,第六与第七位数据进行移位运算。
8.如权利要求7所述的对多媒体数据进行变换编码的方法,其特征在于,当所述空间域数据矩阵为4阶矩阵时,对每一行数据进行多级复合蝶形运算包括:
对每一行中第一与第四位数据、第二与第三位数据分别进行最简蝶形运算,获得第一级中间数据;
对第一级中间数据的第一与第二位数据进行最简蝶形运算,第三与第四位数据进行对称蝶形运算。
9.如权利要求7所述的对多媒体数据进行变换编码的方法,其特征在于,当所述空间域数据矩阵为4阶矩阵时,对每一行数据进行多级复合蝶形运算包括:
对每一行中第一与第四位数据、第二与第三位数据分别进行对称蝶形运算,获得第一级中间数据;
将第一级中间数据的第二与第三位数据交叉换位,对第一级中间数据的第一位数据与交叉换位后的第三位数据、交叉换位后的第二位数据与第一级中间数据的第四位数据分别进行普通蝶形运算。
10.如权利要求7所述的对多媒体数据进行变换编码的方法,其特征在于,当所述空间域数据矩阵为2阶矩阵时,对每一行数据进行多级复合蝶形运算包括:
对每一行中第一与第二位数据进行最简蝶形运算。
11.如权利要求7或9所述的对多媒体数据进行变换编码的方法,其特征在于,所述普通蝶形运算、对称蝶形运算中包括的乘法运算采用乘法方式或移位加方式进行。
12.如权利要求8所述的对多媒体数据进行变换编码的方法,其特征在于,所述对称蝶形运算中包括的乘法运算采用乘法方式或移位加方式进行。
13.一种对多媒体数据进行变换编解码的装置,所述装置支持将各个标准的多媒体数据进行变换编码,其特征在于,所述装置包括:
第一运算单元,在变换解码时,对所获得的两位数据进行移位运算,并对移位运算后的两位数据进行最简蝶形运算;在变换编码时,对所获得的两位数据进行最简蝶形运算,并对最简蝶形运算的结果进行移位运算;
第二运算单元,对所获得的两位数据进行对称蝶形运算;
第三运算单元,对所获得的四位数据中的第一与第四位数据、第二与第三位数据分别进行最简蝶形运算;
缩放运算单元,对所获得的四位数据中的第一与第四位数据进行缩放运算;
移位运算单元,对所获得的四位数据中的第一至第四位数据分别进行移位运算;
第四运算单元,对所获得的四位数据中的第一与第四位数据进行最简蝶形运算;
第五运算单元,对所获得的四位数据中的第一与第三位数据、第二与第四位数据分别进行普通蝶形运算;
第六运算单元,对所获得的四位数据中的第一与第四位数据、第二与第三位数据分别进行对称蝶形运算;
第七运算单元,对所获得的八位数据中的第一与第八位数据、第二与第七位数据、第三与第六位数据、第四与第五位数据分别进行最简蝶形运算;
变换编解码控制单元,对应当前变换类型,输出相应多路选择信号,以及启动第一至第七运算单元、缩放运算单元以及移位运算单元中的相应运算单元;
若干多路选择器,分别配置于第一至第七运算单元、缩放运算单元以及移位运算单元的输入及输出,根据多路选择信号开启相应数据通道,以确定各运算单元间的数据传输顺序。
14.如权利要求13所述的对多媒体数据进行变换编解码的装置,其特征在于,
第一、第二运算单元的输入、输出与第三运算单元的输入、输出分别经由第一、第二多路选择器的一路数据通道交叉相连后输入第三多路选择器;
缩放运算单元、第一至第六运算单元的输入、输出分别经由第四至第七多路选择器的一路数据通道交叉相连后输入第八多路选择器,第八多路选择器的输出与移位运算单元相连;
第一与第二多路选择器的另一路数据通道、第三多路选择器的输出、第四至第七多路选择器的另一路数据通道、移位运算单元的输出与第七运算单元的输入、输出分别经由第九、第十多路选择器的一路数据通道交叉相连后输入第十一多路选择器,所述第九、第十多路选择器的另一路数据通道接收变换控制信号。
15.如权利要求13或14所述的对多媒体数据进行变换编解码的装置,其特征在于,所述普通蝶形运算、对称蝶形运算中包括的乘法运算采用乘法方式或移位加方式进行。
CN 200910052271 2009-05-31 2009-05-31 对多媒体数据进行变换编、解码的装置及方法 Active CN101605259B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 200910052271 CN101605259B (zh) 2009-05-31 2009-05-31 对多媒体数据进行变换编、解码的装置及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 200910052271 CN101605259B (zh) 2009-05-31 2009-05-31 对多媒体数据进行变换编、解码的装置及方法

Publications (2)

Publication Number Publication Date
CN101605259A CN101605259A (zh) 2009-12-16
CN101605259B true CN101605259B (zh) 2012-11-21

Family

ID=41470777

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 200910052271 Active CN101605259B (zh) 2009-05-31 2009-05-31 对多媒体数据进行变换编、解码的装置及方法

Country Status (1)

Country Link
CN (1) CN101605259B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102006478A (zh) * 2010-11-29 2011-04-06 青岛海信信芯科技有限公司 一种视频解码的反变换方法及装置
CN102387367B (zh) * 2011-11-08 2014-01-08 复旦大学 适用于多种视频标准、多尺寸二维整数余弦变换的通用方法
CN102404569B (zh) * 2011-11-08 2014-01-08 复旦大学 可用于多种视频标准、多尺寸二维整数余弦反变换的通用方法
CN106231304A (zh) * 2016-08-30 2016-12-14 成都金本华电子有限公司 一种基于一维快速碟形算法改进的视频解码整数变换方法
CN109451307B (zh) * 2018-11-26 2021-01-08 电子科技大学 一种基于近似系数的一维dct运算方法和dct变换装置
CN113840101A (zh) * 2020-06-24 2021-12-24 重庆山淞信息技术有限公司 基于fpga的视频图像处理方法和装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030081674A1 (en) * 2001-09-18 2003-05-01 Microsoft Coroporation Block transform and quantization for image and video coding
WO2004006219A1 (en) * 2002-07-06 2004-01-15 Koninklijke Philips Electronics N.V. Matrix display including inverse transform decoding and method of driving such a matrix display
CN1770864A (zh) * 2005-09-09 2006-05-10 海信集团有限公司 基于avs的4×4离散余弦变换的快速并行装置及其方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU9030298A (en) * 1997-08-25 1999-03-16 Qualcomm Incorporated Variable block size 2-dimensional inverse discrete cosine transform engine

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030081674A1 (en) * 2001-09-18 2003-05-01 Microsoft Coroporation Block transform and quantization for image and video coding
WO2004006219A1 (en) * 2002-07-06 2004-01-15 Koninklijke Philips Electronics N.V. Matrix display including inverse transform decoding and method of driving such a matrix display
CN1770864A (zh) * 2005-09-09 2006-05-10 海信集团有限公司 基于avs的4×4离散余弦变换的快速并行装置及其方法

Also Published As

Publication number Publication date
CN101605259A (zh) 2009-12-16

Similar Documents

Publication Publication Date Title
CN101605259B (zh) 对多媒体数据进行变换编、解码的装置及方法
Budagavi et al. Core transform design in the high efficiency video coding (HEVC) standard
AU2005237142B2 (en) Reversible transform for lossy and lossless 2-D data compression
US6587590B1 (en) Method and system for computing 8×8 DCT/IDCT and a VLSI implementation
Suzuki et al. Integer DCT based on direct-lifting of DCT-IDCT for lossless-to-lossy image coding
CN102804172A (zh) 用于媒体数据译码的16点变换
CN103380425A (zh) 用于媒体数据译码的32点变换
Tran et al. Linear phase paraunitary filter bank with filters of different lengths and its application in image compression
KR20090115726A (ko) 변환-기반 디지털 미디어 코덱에서의 계산 복잡도 및 정밀도 제어
KR20130042887A (ko) 하이브리드 아키텍쳐가 적용된 신호 변환 장치, 신호 변환 방법 및 기록매체
CN102804171A (zh) 用于媒体数据译码的16点变换
CA2446874C (en) Apparatus and method for encoding and computing a discrete cosine transform using a butterfly processor
CN1981534B (zh) 图像编码装置、图像解码装置以及用于其中的集成电路
CN100409693C (zh) 用于图像和视频压缩的正交变换方法
Yoshida et al. Two dimensional non-separable adaptive directional lifting structure of discrete wavelet transform
TWI412281B (zh) A Method of Calculating Reverse Conversion of Low Complexity
Zheng et al. Research in a fast DCT algorithm based on JPEG
CN100450184C (zh) 运用于图像编码和视频编码的离散余弦变换方法
CN101095137A (zh) 8×8变换和量化
CN100452880C (zh) 一种用于视频编码的整数离散余弦变换方法
Yao et al. Area and throughput efficient IDCT/IDST architecture for HEVC standard
CN105872536B (zh) 一种基于双编码模式的图像压缩方法
Jdidia et al. Hardware implementation of 1-D 8-point adaptive multiple transform in post-HEVC standard
CN104811738B (zh) 基于资源共享的低开销多标准8×8一维离散余弦变换电路
CN100384253C (zh) Avs/h.264色度插值的硬件实现方法及其装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
ASS Succession or assignment of patent right

Owner name: SHANGHAI WEIZHOU MICROELECTRONIC TECHNOLOGY CO., L

Free format text: FORMER OWNER: HUAYA MICRO-ELECTRONIC (SHANGHAI) CO., LTD.

Effective date: 20130121

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20130121

Address after: 201203, Shanghai 690 Zhangjiang Road, Pudong No. 5 Building No. 2 floor

Patentee after: SHANGHAI WEI ZHOU MICROELECTRONICS TECHNOLOGY CO., LTD.

Address before: 201203 Shanghai city Pudong New Area Songtao Road No. 696 building 4F Lenovo

Patentee before: Huaya Microelectronics (Shanghai) Co., Ltd.

TR01 Transfer of patent right

Effective date of registration: 20200330

Address after: 215634 north side of Chengang road and west side of Ganghua Road, Jiangsu environmental protection new material industrial park, Zhangjiagang City, Suzhou City, Jiangsu Province

Patentee after: ZHANGJIAGANG KANGDE XIN OPTRONICS MATERIAL Co.,Ltd.

Address before: 201203, Shanghai 690 Zhangjiang Road, Pudong No. 5 Building No. 2 floor

Patentee before: WZ TECHNOLOGY Inc.

TR01 Transfer of patent right