CN1697328B - 快速视频编解码变换实现 - Google Patents
快速视频编解码变换实现 Download PDFInfo
- Publication number
- CN1697328B CN1697328B CN2005100688953A CN200510068895A CN1697328B CN 1697328 B CN1697328 B CN 1697328B CN 2005100688953 A CN2005100688953 A CN 2005100688953A CN 200510068895 A CN200510068895 A CN 200510068895A CN 1697328 B CN1697328 B CN 1697328B
- Authority
- CN
- China
- Prior art keywords
- variable
- butterfly operation
- value
- butterfly
- transformation
- 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.)
- Expired - Fee Related
Links
- 239000011159 matrix material Substances 0.000 claims abstract description 104
- 230000009466 transformation Effects 0.000 claims description 117
- 238000006243 chemical reaction Methods 0.000 claims description 70
- 238000000034 method Methods 0.000 claims description 25
- 230000035772 mutation Effects 0.000 claims description 12
- 230000007704 transition Effects 0.000 claims description 11
- 238000013459 approach Methods 0.000 claims description 10
- 238000011002 quantification Methods 0.000 claims description 10
- 238000007906 compression Methods 0.000 abstract description 13
- 230000006835 compression Effects 0.000 abstract description 13
- 238000012545 processing Methods 0.000 abstract description 9
- 238000001914 filtration Methods 0.000 abstract description 3
- 230000033001 locomotion Effects 0.000 description 14
- 238000010586 diagram Methods 0.000 description 13
- 238000013139 quantization Methods 0.000 description 13
- 230000006870 function Effects 0.000 description 11
- 238000005516 engineering process Methods 0.000 description 10
- 238000000844 transformation Methods 0.000 description 10
- 230000008569 process Effects 0.000 description 8
- 238000013519 translation Methods 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 5
- 238000001228 spectrum Methods 0.000 description 5
- 230000000712 assembly Effects 0.000 description 4
- 238000000429 assembly Methods 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 4
- 238000010606 normalization Methods 0.000 description 4
- 238000004458 analytical method Methods 0.000 description 3
- 230000008859 change Effects 0.000 description 3
- 241001269238 Data Species 0.000 description 2
- 241000255777 Lepidoptera Species 0.000 description 2
- 102100029469 WD repeat and HMG-box DNA-binding protein 1 Human genes 0.000 description 2
- 101710097421 WD repeat and HMG-box DNA-binding protein 1 Proteins 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 2
- 230000003139 buffering effect Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000012937 correction Methods 0.000 description 2
- 238000000354 decomposition reaction Methods 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 208000037170 Delayed Emergence from Anesthesia Diseases 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 238000007792 addition Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 238000013144 data compression Methods 0.000 description 1
- 208000002173 dizziness Diseases 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 238000007667 floating Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000010008 shearing Methods 0.000 description 1
- 230000017105 transposition Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/42—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/14—Fourier, Walsh or analogous domain transformations, e.g. Laplace, Hilbert, Karhunen-Loeve, transforms
- G06F17/147—Discrete orthonormal transforms, e.g. discrete cosine transform, discrete sine transform, and variations therefrom, e.g. modified discrete cosine transform, integer transforms approximating the discrete cosine transform
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/625—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using discrete cosine transform [DCT]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/80—Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Pure & Applied Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Theoretical Computer Science (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Algebra (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Discrete Mathematics (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Complex Calculations (AREA)
Abstract
使用一连串蝶式运算和矩阵乘法,来实现8点WMV9/VC-9变换的快速实现。通过以逆向流应用蝶式运算的逆运算以及矩阵乘法可实现反变换的快速实现。这些快速实现许可或者在两个维度的过滤结束时的变换阶段、或者分开地在每个阶段并入比例缩放。该变换的快速实现可以被用于基于图像压缩与其它信号处理系统内的这个变换的编码器和解码器中。
Description
技术领域
本发明涉及用于数字地对信号进行编码和处理的技术。更具体地说,本发明涉及信号(例如,图像和视频)的编码和解码过程中的一类在计算上有效率的变换的快速实现。
背景技术
变换编码是一种被用于许多音频、图像和视频压缩系统中的压缩技术。未被压缩的数字图像和视频通常被表现或捕捉,作为被排列在二维格栅中的图像或视频帧内的各个位置处的图元或颜色的样值。例如,关于图像的典型格式包括被排列为格栅的24位彩色图元样值流。每个样值是表示色彩空间(例如,RGB或YIQ等)内的格栅中的像素位置处的彩色成分的数字。各种图像和视频系统可以使用采样的各种不同的颜色、空间和时间分辨率。
未被压缩的数字图像和视频信号会消耗相当大的存储和传输容量。通过将该信号的空间域表示转换成频域(或其它相似的变换域)表示,然后降低该变换域表示的某些一般不太能察觉的频率分量的分辨率,变换编码可以减小数字图像和视频的尺寸。与降低空间域中的图像或视频的颜色或空间分辨率相比,这一般会产生该数字信号的不太能察觉的。
更明确地说,典型的变换编码技术将该未被压缩的数字图像的像素划分成有固定尺寸的二维块,每个块可能与其它块重叠。执行空间频率分析的线性变换被应用于每个块,这将那个块内的这些彼此间隔的样值转换成一组频率(或变换)系数,该组频率(或变换)系数通常表示闭塞间隔上的对应的频带内的数字信号的强度。对于压缩,这些变换系数可以被选择性地量化(即,降低分辨率,例如,通过丢弃这些系数值的最低位或者将较高分辨率数集中的值映射到较低分辨率),并且,熵或可变长度也被编码成被压缩的数据流。在解码时,这些变换系数将进行逆变换,以便差不多重建该原始颜色/空间采样的图像/视频信号。
许多图像和视频压缩系统(例如,MPEG和Windows Media等)利用基于“离散余弦变换”(DCT)的变换。已知该DCT具有导致几乎最佳的数据压缩的有利的能量压缩属性。在这些压缩系统中,在用于重建单独的图像块的压缩系统的编码器和解码器中的这些重建回路内使用逆向DCT(IDCT)。在“关于8x8逆向离散余弦变换的实现的IEEE标准规范(IEEE Standard Specification for theImplementations of 8x8 Inverse Discrete Consine Transform)”(IEEE标准1180-1990,1990年12月6日)中,描述了该IDCT的示例性实现。
该IEEE标准1180-1990中所定义的IDCT变换的缺点是:该变换的计算涉及64位浮点数的矩阵乘法,这在计算上花费昂贵。这会限制该图像或视频压缩系统的性能,尤其在流媒体和相似的媒体重放应用程序中——其中,在实时的基础上或在其它相似的时间约束下,对大量压缩数据执行该IDCT。
Windows Media Video 9编解码(WMV9)标准(已被提议以通过“电影与电视工程师学会”(SMPTE)C24技术委员会标准化为视频编解码9(VC-9))定义四种类型的二维数据变换——它们是8x8、8x4、4x8和4x4变换。这些VC-9标准变换具有类似于DCT的能量压缩属性,但具有基于对整数的矩阵乘法运算的实现,用于获得计算上的效率。在2003年2月28日提交的序列号为10/376,147的美国专利申请(其揭示说明被包括于此,用作参考)中,更充分地描述了这些WMV9/VC-9变换的矩阵实现。该WMV9规范要求这些逆变换的位精确(bit-exact)实现。
线性变换的快速实现具有漫长的历史。快速变换的一个众所周知的例子是J.W.Cooley和J.W.Tukey的《关于综合傅立叶级数的机器计算的算法(An AlgorithmFor The Machine Calculation Of Complex Fourier Series)》(数学计算第19卷,第297-301页,1965年)中所描述的“快速傅立叶变换”(FFT)。该FFT使用O(NlogN)运算来实现N点傅立叶变换。傅立叶变换定义的固有对称性允许这个简化。通过W.Chen、C.H.Smith和S.C.Fralick的《关于离散余弦变换的快速计算算法(A FastComputational Algorithm For The Discrete Consines Transfrom)》(IEEE Trans.Commun.,第25卷,第1004-1009页,1977年9月)以及H.Malvar的《离散余弦变换和离散哈特利变换的快速计算(Fast Computation Of The Discrete ConsineTransform And The Discrete Hartly Transform)》(IEEE Trans.Acoust.,语音、信号处理,第ASSP-35卷,第1484-1485页,1987年10月),类似的快速实现已被示出存在,用于“离散余弦变换”(DCT)。
快速变换已将变换的矩阵乘法定义分解成涉及“蝶式”运算的一系列步骤。该蝶式运算是两个变量之间的加权数据交换,这两个变量要么是空间域、频域,要么是中间变量。例如,图3中示出对应于该矩阵乘法的蝶式运算。
这对应于原始二维矢量x在绕原点的旋转,具有可能的比例因数。如果c2+s2=1,那么,该比例因数是单位元素。具有实值输入的蝶式运算可以只利用三个实值乘法来加以实现。一般而言,矩阵不需要对应于纯旋转——可能存在比例缩放和剪切,而无额外的复杂性。
如刚刚所描述的,经由该蝶式运算的直接应用,四点WMV9/VC-9变换许可快速实现。
如上所述,已知8点DCT具有快速变换实现。但是,它无法容易地转化为8点WMV9/VC-9变换。WMV9/VC-9变换类似于DCT,但位精确性的整数实现和要求使从任何已知快速实现的直接映射成为不可能。
如2003年2月28日提交的序列号为10/376,147的美国专利申请中所描述的,8点WMV9/VC-9变换可以由使用一对偶数和奇数矩阵的运算来实现。已知:在其后跟随四点DCT的输入处,可以由一系列蝶式运算来平凡地实现DCT的这些偶基函数(即基函数0、2、4和8)。DCT的这个已知快速实现可很好地转化为8点WMV9/VC-9变换的偶数矩阵。
但是,这些已知的快速实现没有提供方法来导出8点WMV9/VC-9变换的奇数矩阵的快速实现。尽管WMV9/VC-9变换类似于DCT,但WMV9/VC-9中的位精确性的整数实现和要求使从任何已知快速变换实现的直接映射成为不可能。无法参照这些已知的快速变换实现来解决这些变换的各个奇基函数的分析与合成。
发明内容
这里描述了8点WMV9/VC-9变换的快速实现。所描述的实现包括8点WMV9/VC-9变换的快速前向与逆向变换实现,以及每一项的替换实现。这些快速实现许可将缩放比例并入过滤的两个维度结束时的阶段,或分开地并入每个阶段。这些快速实现也可以用于使用WMV9/VC-9变换、以及图像压缩和其它信号处理系统的编解码器的编码器和解码器侧上。
本发明的一个实施例提供了一种方法,使用基于变换矩阵的块维度中的至少一个内的8点块变换的快速变换实现来对二维块中的媒体数据进行变换编码,所述变换矩阵被表示为
执行一蝶式运算的多个阶段,所述蝶式运算在空间域系数的8点集合与至少一个8点维度中的8点变换域系数之间进行转换,所述多个阶段包括:
变量0和7的蝶式运算,其中,值c和s是1;
变量1和6的蝶式运算,其中,值c和s是1;
变量2和5的蝶式运算,其中,值c和s是1;
变量3和4的蝶式运算,其中,值c和s是1;
变量0和3的蝶式运算,其中,值c和s是1;
变量1和2的蝶式运算,其中,值c和s是1;
变量0和1的蝶式运算,其中,值c和s是1,按12来进行比例缩放;
变量3和2的蝶式运算,其中,值c和s是16和6;
变量4和7的蝶式运算,其中,值c和s是4和1;
变量5和6的蝶式运算,其中,值c和s是5和3,随后对变量6进行求反;
变量5和6的第二蝶式运算,其中,值c和s是1;以及
其中,变量0~3产生偶系数,并且,变量4~7产生该变换域内的奇系数。
本发明的另一个实施例提供了一种方法,使用基于变换矩阵的块维度中的至少一个内的8点块变换的快速变换实现来对二维块中的媒体数据进行变换编码,所述变换矩阵被表示为
执行一蝶式运算的多个阶段,所述蝶式运算在空间域系数的8点集合与至少一个8点维度中的8点变换域系数之间进行转换,所述多个阶段包括:
对变量0~7的集合执行类型的一连串蝶式运算,至少包括,
变量0和7的蝶式运算,其中,值c和s是1;
变量1和6的蝶式运算,其中,值c和s是1;
变量2和5的蝶式运算,其中,值c和s是1;
变量3和4的蝶式运算,其中,值c和s是1;
变量0和3的蝶式运算,其中,值c和s是1;
变量1和2的蝶式运算,其中,值c和s是1;
变量0和1的蝶式运算,其中,值c和s是1,按12来进行比例缩放;
变量3和2的蝶式运算,其中,值c和s是16和6;
变量5和6的第一蝶式运算,其中,值c和s是1;
变量4和7的蝶式运算,其中,值c和s是4和1;
变量6和5的第二蝶式运算,其中,值c和s是5和3,随后对变量5进行求反;以及
在变量5和6的第一蝶式运算之后和在变量4和7的蝶式运算之前,执行变量4和5以及变量7和6与矩阵的矩阵乘法;
其中,变量0~3产生偶系数,并且,变量4~7产生变换域内的奇系数。
本发明的另一个实施例提供了一种提供媒体数据的变换编码的媒体系统,它包括:
频率变换器,对于所述媒体数据的二维块,它用于执行所述块的前向变换,以将所述块转换到变换域;
量化器,它用于量化所述变换域块;
反量化器,它用于对所述变换域块解除量化;以及
反频率变换器,用于执行所述变换域块的反变换,以产生形式的重建块,其中,D表示被解除量化的变换矩阵,R表示行和列范围反变换之后的被重建的输出,所述反变换的至少一个维度Tn或Tm是8点矩阵
对变量0~7的集合执行类型的一连串蝶式运算,其中,变量0~3是偶变换系数,变量4~7是奇变换系数,至少包括,
变量5和6的蝶式运算,其中,值c和s是1;
变量6和5的第二蝶式运算,其中,值c和s是5和3,随后对变量5进行求反;
变量4和7的蝶式运算,其中,值c和s是4和1;
变量0和1的蝶式运算,其中,值c和s是1,按12来进行比例缩放;
变量3和2的蝶式运算,其中,值c和s是16和6;
变量1和2的蝶式运算,其中,值c和s是1;
变量0和3的蝶式运算,其中,值c和s是1;
变量3和4的蝶式运算,其中,值c和s是1;
变量2和5的蝶式运算,其中,值c和s是1;
变量1和6的蝶式运算,其中,值c和s是1;
变量0和7的蝶式运算,其中,值c和s是1;以及
在变量6和5的第二蝶式运算之前,执行变量4和5以及变量7和6与矩阵的矩阵乘法。
本发明的另一个实施例提供了一种提供媒体数据的变换编码的媒体系统,它包括:
频率变换器,对于所述媒体数据的二维块,它用于执行所述块的前向变换,以将所述块转换到变换域;
量化器,它用于量化所述变换域块;
反量化器,它用于对所述变换域块解除量化;以及
反频率变换器,用于执行所述变换域块的反变换,以产生形式的重建块,其中,D表示被解除量化的变换矩阵,R表示行和列范围反变换之后的被重建的输出,所述反变换的至少一个维度Tn或Tm是8点矩阵
对变量0~7的集合执行类型的一连串蝶式运算,其中,变量0~3是偶变换系数,变量4~7是奇变换系数,至少包括:
变量5和6的蝶式运算,其中,值c和s是5和3,随后对变量6进行求反;
变量4和7的蝶式运算,其中,值c和s是4和1;
变量5和6的第二蝶式运算,其中,值c和s是1;
变量0和1的蝶式运算,其中,值c和s是1,按12来进行比例缩放;
变量3和2的蝶式运算,其中,值c和s是16和6;
变量1和2的蝶式运算,其中,值c和s是1;
变量0和3的蝶式运算,其中,值c和s是1;
变量3和4的蝶式运算,其中,值c和s是1;
变量2和5的蝶式运算,其中,值c和s是1;
变量1和6的蝶式运算,其中,值c和s是1;
变量0和7的蝶式运算,其中,值c和s是1;以及
本发明的另一个实施例提供了一种快速变换方法,用于变换空间域表示与变换域表示之间的图像数据的二维块,其中,所述块的至少一个维度是8个点,对于前向变换,包括:
变量0和7的蝶式运算,其中,值c和s是1;
变量1和6的蝶式运算,其中,值c和s是1;
变量2和5的蝶式运算,其中,值c和s是1;
变量3和4的蝶式运算,其中,值c和s是1;
变量0和3的蝶式运算,其中,值c和s是1;
变量1和2的蝶式运算,其中,值c和s是1;
变量0和1的蝶式运算,其中,值c和s是1,按12来进行比例缩放;
变量3和2的蝶式运算,其中,值c和s是16和6;
变量4和7的蝶式运算,其中,值c和s是4和1;
变量5和6的蝶式运算,其中,值c和s是5和3,随后对变量6进行求反;
变量5和6的第二蝶式运算,其中,值c和s是1;以及
在变量5和6的第二蝶式运算之前,执行变量4和5以及变量7和6与矩阵的矩阵乘法;
其中,变量0~3产生偶系数,并且,变量4~7产生该变换域内的奇系数。
本发明的另一个实施例提供了一种快速变换方法,用于变换空间域表示与变换域表示之间的图像数据的二维块,其中,所述块的至少一个维度是8个点,对于反变换,包括:
变量5和6的蝶式运算,其中,值c和s是1;
变量6和5的第二蝶式运算,其中,值c和s是5和3,随后对变量5进行求反;
变量4和7的蝶式运算,其中,值c和s是4和1;
变量0和1的蝶式运算,其中,值c和s是1,按12来进行比例缩放;
变量3和2的蝶式运算,其中,值c和s是16和6;
变量1和2的蝶式运算,其中,值c和s是1;
变量0和3的蝶式运算,其中,值c和s是1;
变量3和4的蝶式运算,其中,值c和s是1;
变量2和5的蝶式运算,其中,值c和s是1;
变量1和6的蝶式运算,其中,值c和s是1;
变量0和7的蝶式运算,其中,值c和s是1;以及
在变量6和5的第二蝶式运算之前,执行变量4和5以及变量7和6与矩阵的矩阵乘法。
本发明的另一个实施例提供了一种快速变换方法,用于变换空间域表示与变换域表示之间的图像数据的二维块,其中,所述块的至少一个维度是8个点,对于反变换,包括:
变量5和6的蝶式运算,其中,值c和s是5和3,随后对变量6进行求反;
变量4和7的蝶式运算,其中,值c和s是4和1;
变量5和6的第二蝶式运算,其中,值c和s是1;
变量0和1的蝶式运算,其中,值c和s是1,按12来进行比例缩放;
变量3和2的蝶式运算,其中,值c和s是16和6;
变量1和2的蝶式运算,其中,值c和s是1;
变量0和3的蝶式运算,其中,值c和s是1;
变量3和4的蝶式运算,其中,值c和s是1;
变量2和5的蝶式运算,其中,值c和s是1;
变量1和6的蝶式运算,其中,值c和s是1;
变量0和7的蝶式运算,其中,值c和s是1;以及
在变量4和7的蝶式运算之后和在变量5和6的第二蝶式运算之前,执行变量4和5以及变量7和6与矩阵的矩阵乘法。
本发明的另一个实施例提供了一种快速变换方法,用于变换空间域表示与变换域表示之间的图像数据的二维块,其中,所述块的至少一个维度是8个点,对于前向变换,包括:
变量0和7的蝶式运算,其中,值c和s是1;
变量1和6的蝶式运算,其中,值c和s是1;
变量2和5的蝶式运算,其中,值c和s是1;
变量3和4的蝶式运算,其中,值c和s是1;
变量0和3的蝶式运算,其中,值c和s是1;
变量1和2的蝶式运算,其中,值c和s是1;
变量0和1的蝶式运算,其中,值c和s是1,按12来进行比例缩放;
变量3和2的蝶式运算,其中,值c和s是16和6;
变量5和6的第一蝶式运算,其中,值c和s是1;
变量4和7的蝶式运算,其中,值c和s是4和1;
变量6和5的第二蝶式运算,其中,值c和s是5和3,随后对变量5进行求反;以及
其中,变量0~3产生偶系数,并且,变量4~7产生变换域内的奇系数。
本发明的另一个实施例提供了一种快速变换装置,用于变换空间域表示与变换域表示之间的图像数据的二维块,其中,所述块的至少一个维度是8个点,对于前向变换,所述装置包括:
用于对变量0~7的集合执行类型的一连串蝶式运算的装置,至少包括,
变量0和7的蝶式运算,其中,值c和s是1;
变量1和6的蝶式运算,其中,值c和s是1;
变量2和5的蝶式运算,其中,值c和s是1;
变量3和4的蝶式运算,其中,值c和s是1;
变量0和3的蝶式运算,其中,值c和s是1;
变量1和2的蝶式运算,其中,值c和s是1;
变量0和1的蝶式运算,其中,值c和s是1,按12来进行比例缩放;
变量3和2的蝶式运算,其中,值c和s是16和6;
变量4和7的蝶式运算,其中,值c和s是4和1;
变量5和6的蝶式运算,其中,值c和s是5和3,随后对变量6进行求反;
变量5和6的第二蝶式运算,其中,值c和s是1;以及
其中,变量0~3产生偶系数,并且,变量4~7产生该变换域内的奇系数。
本发明的另一个实施例提供了一种快速变换装置,用于变换空间域表示与变换域表示之间的图像数据的二维块,其中,所述块的至少一个维度是8个点,对于反变换,所述装置包括:
变量5和6的蝶式运算,其中,值c和s是1;
变量6和5的第二蝶式运算,其中,值c和s是5和3,随后对变量5进行求反;
变量4和7的蝶式运算,其中,值c和s是4和1;
变量0和1的蝶式运算,其中,值c和s是1,按12来进行比例缩放;
变量3和2的蝶式运算,其中,值c和s是16和6;
变量1和2的蝶式运算,其中,值c和s是1;
变量0和3的蝶式运算,其中,值c和s是1;
变量3和4的蝶式运算,其中,值c和s是1;
变量2和5的蝶式运算,其中,值c和s是1;
变量1和6的蝶式运算,其中,值c和s是1;
变量0和7的蝶式运算,其中,值c和s是1;以及
用于在变量6和5的第二蝶式运算之前执行变量4和5以及变量7和6与矩阵的矩阵乘法的装置。
本发明的另一个实施例提供了一种快速变换装置,用于变换空间域表示与变换域表示之间的图像数据的二维块,其中,所述块的至少一个维度是8个点,对于反变换,所述装置包括:
变量5和6的蝶式运算,其中,值c和s是5和3,随后对变量6进行求反;
变量4和7的蝶式运算,其中,值c和s是4和1;
变量5和6的第二蝶式运算,其中,值c和s是1;
变量0和1的蝶式运算,其中,值c和s是1,按12来进行比例缩放;
变量3和2的蝶式运算,其中,值c和s是16和6;
变量1和2的蝶式运算,其中,值c和s是1;
变量0和3的蝶式运算,其中,值c和s是1;
变量3和4的蝶式运算,其中,值c和s是1;
变量2和5的蝶式运算,其中,值c和s是1;
变量1和6的蝶式运算,其中,值c和s是1;
变量0和7的蝶式运算,其中,值c和s是1;以及
用于在变量4和7的蝶式运算之后和在变量5和6的第二蝶式运算之前执行变量4和5以及变量7和6与矩阵的矩阵乘法的装置。
本发明的另一个实施例提供了一种快速变换装置,用于变换空间域表示与变换域表示之间的图像数据的二维块,其中,所述块的至少一个维度是8个点,对于前向变换,所述装置包括:
用于对变量0~7的集合执行类型的一连串蝶式运算的装置,至少包括,
变量0和7的蝶式运算,其中,值c和s是1;
变量1和6的蝶式运算,其中,值c和s是1;
变量2和5的蝶式运算,其中,值c和s是1;
变量3和4的蝶式运算,其中,值c和s是1;
变量0和3的蝶式运算,其中,值c和s是1;
变量1和2的蝶式运算,其中,值c和s是1;
变量0和1的蝶式运算,其中,值c和s是1,按12来进行比例缩放;
变量3和2的蝶式运算,其中,值c和s是16和6;
变量5和6的第一蝶式运算,其中,值c和s是1;
变量4和7的蝶式运算,其中,值c和s是4和1;
变量6和5的第二蝶式运算,其中,值c和s是5和3,随后对变量5进行求反;以及
其中,变量0~3产生偶系数,并且,变量4~7产生该变换域内的奇系数。
通过以下参照附图而进行的对实施例的详细说明,本发明的额外的特点和优点将变得一目了然。
附图说明
图1是使用这里所描述的WMV9/VC-9变换的快速实现的视频编码器的框图。
图2是使用这里所描述的WMV9/VC-9变换的快速实现的视频解码器的框图。
图3是对应于标准正交旋转的现有技术的蝶式运算的图表。
图4是无比例缩放的4点WMV9/VC-9前向变换的快速实现的框图。
图5是无比例缩放的4点WMV9/VC-9反变换的快速实现的框图。
图6是无比例缩放的8点WMV9/VC-9前向变换的快速实现的框图。
图7是无比例缩放的8点WMV9/VC-9反变换的快速实现的框图。
图8是无比例缩放的8点WMV9/VC-9反变换的替换快速实现的框图。
图9是无比例缩放的8点WMV9/VC-9前向变换的替换快速实现的框图。
图10是关于图1和图2中的视频编码器/解码器的合适的计算环境的框图。
具体实施方式
以下说明针对WMV9和VC-9编解码中所定义的一组变换的快速实现,并且,它可以被应用于服从WMV9/VC-9的编解码以及其它二维媒体(例如,视频和图像)编解码中。这些媒体编码变换的快速实现的示例性应用是在图像或视频编码器和解码器中。但是,如这里所描述的那样来构造的这些变换不局限于图像或视频编解码,并且可以被应用于其它媒体处理系统。因此,这些变换的快速实现可以在概括的图像或视频编码器和解码器的环境中加以描述,但作为选择,可以被并入使用这些变换的各种类型的媒体信号处理系统中。
1.概括的视频编码器和解码器
图1是概括的视频编码器(100)的框图;并且,图2是概括的视频解码器(200)的框图,其中,可以并入WMV9/VC-9变换。
编码器和解码器内的各个模块之间所示的各种关系指出编码器和解码器中的主要信息流;为简单起见,没有示出其它关系。特别是,图1和图2通常不示出指出用于视频序列、帧、宏块、块等的编码器设置、模式、表格等的辅助信息。通常在该辅助信息的熵编码之后,在该输出位流中发送这类辅助信息。该输出位流的格式可以是Windows Media Video格式或另一格式。
编码器(100)和解码器(200)是基于块的,并且使用4:2:0宏块格式——每个宏块包括4个8x8的亮度块(有时被视作一个16x16宏块)和两个8x8的色度块。作为选择,编码器(100)和解码器(200)是基于对象的,并且使用不同的宏块或块格式,或者对不同于8x8块和16x16宏块的尺寸或配置的像素集执行运算。
根据所需压缩的实现和类型,编码器或解码器的模块可以被添加、省略、分成多个模块、与其它模块结合、并且/或者用相似的模块来取代。在替换实现例中,具有不同的模块和/或其它模块配置的编码器或解码器执行所描述的技术中的一项或多项技术。
A.视频编码器
图1是一般的视频编码器系统(100)的框图。该编码器系统(100)接收包括当前帧(105)的视频帧序列,并且产生作为输出的被压缩的视频信息(195)。视频编码器的特定实施例通常使用该概括的编码器(100)的变更或补充版本。
编码器系统(100)压缩预测帧和关键帧。为呈现起见,图1示出了关键帧通过编码器系统(100)的路径、以及前向预测帧的路径。编码器系统(100)的许多组件被用于压缩关键帧和预测帧两者。由那些组件执行的精确运算可以根据正在被压缩的信息类型而变化。
预测帧[也被称作“p帧”、“对于双向预测的b帧”或“帧间编码帧”]在从一个或多个其它的帧的预测(或差异)方面被加以表现。预测残余是预测帧与原始帧之间的差异。相反,不参考其它帧来压缩关键帧[也被称作“i帧”、“帧内编码帧”]。
如果当前帧(105)是前向预测帧,那么,运动估计器(110)估计该当前帧(105)的宏块或其它像素集相对于参考帧的运动,该参考帧是在该帧存储(120)中被缓冲的被重建的前一帧(125)。在替换实施例中,参考帧是后一帧,或者,当前帧被进行双向预测。运动估计器(110)输出运动信息(115)(例如,运动矢量),作为辅助信息。运动补偿器(130)将运动信息(115)应用于重建的前一帧(125),以形成经运动补偿的当前帧(135)。但是,该预测很少是完美的,经运动补偿的当前帧(135)与原始当前帧(105)之间的差异是预测残余(145)。作为选择,运动估计器和运动补偿器应用另一种类型的运动估计/补偿。
频率变换器(160)将该空间域视频信息转换成频域(即频谱)数据。对于基于块的视频帧,频率变换器(160)应用以下各个章节中所描述的变换,这些变换具有类似于离散余弦变换[“DCT”]的属性。在某些实施例中,频率变换器(160)将频率变换应用于关键帧的空间预测残余的块。频率变换器(160)可以应用8x8、8x4、4x8或其它尺寸频率变换。
然后,量化器(170)对频谱数据系数块进行量化。量化器将统一的标量量化应用于具有步长的频谱数据,该步长在逐帧的基础或其它基础上变化。作为选择,量化器将另一种类型的量化应用于频谱数据系数(例如,非均匀矢量或非自适应量化),或者在不使用频率变换的编码器系统中直接量化空间域数据。除自适应量化以外,编码器(100)还可以使用帧丢弃、自适应过滤、或关于速率控制的其它技术。
当随后的运动估计/补偿需要被重建的当前帧时,反量化器(176)对这些被量化的频谱数据系数执行反量化。然后,反频率变换器(166)执行频率变换器(160)的运算的逆运算,从而产生被重建的预测残余(对于被预测的帧)或被重建的关键帧。如果当前帧(105)是关键帧,那么,被重建的关键帧被视作该被重建的当前帧(未示出)。如果当前帧(105)是被预测的帧,那么,将被重建的预测残余加入经运动补偿的当前帧(135),以形成被重建的当前帧。帧存储(120)缓冲被重建的当前帧,用于预测下一个帧。在某些实施例中,编码器将分块滤波器(deblockingfilter)应用于被重建的帧,以便自适应地平滑帧块中的不连续性。
熵编码器(180)压缩量化器(170)的输出、以及某些辅助信息(例如,运动信息(115)、量化步长)。典型的熵编码技术包括算术编码、差分编码、霍夫曼编码技术、运行长度编码、LZ编码、词典编码、以及以上编码的组合。熵编码器(180)通常对不同种类信息(例如,DC系数、AC系数、不同种类的辅助信息)使用不同的编码技术,并且可以从特定编码技术内的多个码表之中进行选择。
熵编码器(180)将被压缩的视频信息(195)放入缓冲器(190)中。缓冲水平指示器被反馈给比特率自适应模块。被压缩的视频信息(195)按恒定或相对恒定的比特率来从缓冲器(190)中被放空,并且被存储,用于按那个比特率的随后的流传送。作为选择,编码器系统(100)在压缩之后立即流传送被压缩的视频信息。
在缓冲器(190)前面或后面,被压缩的视频信息(195)可以进行信道编码,用于通过网络传输。信道编码可以将误差检测和纠正数据应用于被压缩的视频信息(195)。
B.视频解码器
图2是一般的视频解码器系统(200)的框图。解码器系统(200)接收被压缩的视频帧序列的信息(295),并产生包括被重建的帧(205)的输出。视频解码器的特定实施例通常使用该概括的解码器(200)的变更或补充版本。
解码器系统(200)解压被预测的帧和关键帧。为呈现起见,图2示出了关键帧通过解码器系统(200)的路径、以及前向预测帧的路径。解码器系统(200)的许多组件用于压缩关键帧和预测帧两者。由那些组件执行的精确运算可以根据正在被压缩的信息类型而变化。
缓冲器(290)接收被压缩的视频序列的信息(295),并且使接收的信息对熵解码器(280)可用。缓冲器(290)通常按随时间推移而相当恒定的速率来接收信息,并且包括抖动缓冲器,以平滑带宽或传输中的短期变更。缓冲器(290)也可以包括重放缓冲器和其它缓冲器。作为选择,缓冲器(290)按变化的速率来接收信息。在缓冲器(290)前面或后面,被压缩的视频信息可以进行信道解码和处理,用于误差检测和纠正。
熵解码器(280)对经熵编码的量化数据以及经熵编码的辅助信息(例如,运动信息、量化步长)进行熵解码,它通常应用编码器中所执行的熵编码的逆晕眩。熵解码技术包括算术解码、差分解码、霍夫曼解码、运行长度解码、LZ解码、词典解码、以及以上解码的组合。熵解码器(280)通常对不同种类的信息(例如,DC系数、AC系数、不同种类的辅助信息)使用不同的解码技术,并且可以从特定解码技术内的多个代表之中进行选择。
如果将要被重建的帧(205)是前向预测帧,那么,运动补偿器(230)将运动信息(215)应用于参考帧(225),以形成正在被重建的帧(205)的预测(235)。例如,运动补偿器(230)使用宏块运动矢量来发现参考帧(225)中的宏块。帧缓冲器(220)存储先前被重建的帧,用作参考帧。作为选择,运动补偿器应用另一种类型的运动补偿。运动补偿器所执行的预测很少是完美的,所以,解码器(200)也重建预测残余。
当解码器需要被重建的帧用于随后的运动补偿时,帧存储器(220)缓冲被重建的帧,用于预测下一个帧。在某些实施例中,编码器将分块滤波器应用于被重建的帧,以便自适应地平滑帧块中的不连续性。
反量化器(270)对经熵解码的数据进行反量化。一般而言,反量化器将均匀的标量反量化应用于具有步长的经熵解码的数据,该步长在逐帧的基础或其它基础上变化。作为选择,反量化器将另一种类型的反量化应用于数据(例如,非均匀矢量或非自适应量化),或者在不使用反频率变换的解码器系统中直接反量化空间域数据。
反频率变换器(260)将经量化的频域数据转换成空间域视频信息。对于基于块的视频帧,反频率变换器(260)应用以下各个章节中所描述的反变换。在某些实施例中,反频率变换器(260)将反频率变换应用于关键帧的空间预测残余块。反频率变换器(260)可以应用8x8、8x4、4x8或其它尺寸反频率变换。
2.WMV9/VC-9变换
WMV9/VC-9标准定义了可以被用作视频编码器100(图1)和视频解码器200(图2)中的频率变换160和反频率变换260的变换。WMV9/VC-9标准定义了四种类型的二维数据变换——它们是8x8、8x4、4x8和4x4变换。按照以下概括的定义,该规范要求这些反变换的位精确实现。
A.WMV9/VC-9变换定义
WMV9/VC-9中所使用的这些2D变换是可分离的,并且,使用被适当定义的经比例缩放的接近标准正交的乘数矩阵而在每个方向上执行变换。两个矩阵(一个矩阵用于4点一维变换,另一个矩阵用于8点一维变换)被定义如下。所有变量被假设为整数。
在格式说明中详细解释反变换,因为所有服从解码器被要求提供位精确输出。该变换被定义如下:首先,对解除量化的变换矩阵的各行进行反变换。此后是列的反变换。
设D表示被解除量化的变换矩阵,D1表示变换的第一阶段的输出,R表示行和列范围反变换之后的被重建的输出。D、D1和R是与所需的变换尺寸相同的同构8x8、8x4、4x8和4x4矩阵。在对符号的滥用中,涉及矩阵和标量的运算在这个文档中被定义为该矩阵的条目范围(entrywise)运算。同样,具有矩阵自变量的标量运算被定义为对矩阵的条目范围标量运算。矩阵和矢量的和是对矩阵和标量的条目范围和的简化符号,该标量的值从矢量的协同定位(co-located)的行或列中被导出(根据该矢量是否分别是列矢量或行矢量)。
m×n反变换的正则公式是:
分母被选择是最接近于1D变换(它是{4×288,4×289,4×292}之一)的基函数的平方范数的2的幂。由于实际范数与分母之间的比率(大约是1.12)接近于1,因此,在用于IDCT的量化参数与用于WMV9/VC-9变换的量化参数之间有紧密的对应性。这里没有引入额外的误差,因为在前向变换过程中执行所有剩余的归一化(本质上通过1024/基函数的平方范数)——这一点在该文档的后面有进一步的描述。
在实践中,除以1024的除法被实现为舍入运算,该舍入运算跨越两个1D变换过程而被分开。另外,通过将第二阶段矩阵分成偶分量和奇分量,可以利用最大精确度保持力来实现16位反变换,如以下定义:
这些奇分量T8 o和T4 o只被许可具有0、1和-1作为条目。由于T8的大多数条目是偶数,因此,T8 o是稀疏矩阵。同样,T4 o具有与T4 e高度相关的结构。该反变换过程的WMV9/VC-9正则表示现在被定义如下:
由于奇分量具有该Tn范围的一半,并且由于奇分量Tn o局限于具有0、1和-1条目,因此,变换的第二阶段中的所得的分子可以被示出在范围上局限于16个比特。有较小的计算性能损失,来偿还这个额外的比特。然而,该变换矩阵的分解以微不足道的代价而导致改善的算术精确度。
以下示出4和8点变换的这些奇、偶分量:
以T4 o的自右乘可以被简化为:
其中
它是平凡的蝶式运算。同样,以T8 o的自右乘相当于仅仅两个加法(和求反):
其中
B.8x8反变换
行范围的反变换首先被如下执行:
D1=(D·T8+4)>>3
通过查看T8的奇分量来计算8个元素的这两个共同的行,可以定义列范围的反变换。在该结果被下舍入6个比特之前,这些被右移一个比特,然后添加到偶分量乘积(或从偶分量乘积中减去)。该运算如下所示:
D′2a=D1a>>1
D′2b=D1b>>1
C.4x8反变换
根据WMV9/VC-9约定,“4x8”指的是具有4列和8行的数组。行范围的反变换是4点运算,它被定义如下:
D1=(D·T4+4)>>3
沿这些列的变换的第二部分等同于8x8变换的第二部分,并且在以上的方程式(1)中被加以定义。
D.8x4反变换
根据WMV9/VC-9约定,“8x4”指的是具有8列和4行的数组。8x4变换的第一阶段根据以下公式来在这4行的8个条目中的每个条目上运算:
D1=(D·T8+4)>>3
关于第二阶段的列范围的4点反变换被定义如下:
D′2a=D1a>>1
(2)
D′2b=D1b>>1
E.4x4反变换
4x4反变换的第一阶段是行范围的运算,它是4点反变换,被定义如下:
D1=(D·T4+4)>>3
沿这些列的变换的第二部分等同于8x4变换的第二部分,并且在以上的方程式(2)中被加以定义。
F.反变换的替换实现
使用变换矩阵的奇分量和偶分量的反变换的第二阶段的定义被要求用最大精确度保持力来达到16位实现。如果16位字长不是问题(例如,在专用集成电路或ASIC上),那么,可以使用17位中间结果来简化部分的基础算术。可以导出与前一章节中的这些定义相比较的产生位精确结果的变换的替换定义。由于这些实现的第一阶段等同于原始定义的第一阶段,因此,只有第二阶段被定义如下:
8x8和4x8反变换具有第二阶段:
8x4和4x4反变换具有第二阶段:
G.前向变换定义
前向变换通过类似的过程来获得,除了以下两点以外:(i)变换矩阵被转置;以及(ii)比例因数是不同的。由于前向变换不需要在编码器侧上按位精确方式来加以执行,因此,不再要求整数变量的假定——确实可以使用浮点或经缩放的定点算术来执行前向变换。以下所示的前向变换的矩阵乘法表示纯粹是分析表示,与反变换不同——在反变换中,矩阵乘法明确地指具有16位寄存器的整数乘法。可以在必要时执行各个阶段之间的舍入,并且,这个选择留给该编码器。以下给出前向变换的各个原型定义:
可以使用以下关于这四种情况的方程式组,来计算数据矩阵D的4x4、4x8、8x4和8x8变换:
其中,算子°是分量范围(componentwise)乘法。该归一化矩阵Nij由以下公式给出:
Nij=cjc′i
其中,列矢量c是:
再有,可以在所有乘法的结尾处一次执行归一化,或者可以在每个阶段分开地执行归一化。这是编码器的选择。可以通过2的幂来按比例增加输出,以提高前矢量化过程中的精确度。
3.WMV9/VC-9变换的快速实现
本章节描述上述WMV9/VC-9变换的快速实现。本质上,由于每个变换阶段是这个形式的矩阵乘法,因此,可以通过加速矩阵乘法T4D和T8D,来实现前向变换过程的加速。同样,通过加速矩阵乘法T4D和T′8D,可以加速反变换。
四点WMV9/VC-9变换(它是矩阵乘法T4D)许可经由如图4所示的蝶式运算的直接应用的快速实现。图5示出了4点反变换(即矩阵乘法T′4D)的快速实现。如所预期的,从前向变换的流向图翻转该信号流向图。在这些图中忽视比例缩放——如果在前向变换中使用浮点运算,则可以将比例缩放合为乘数。另外,如果需要整数实现,那么,较佳地在前向变换的两个阶段的结尾处(若不在量化阶段中)执行比例缩放。对于反变换,必须如在这个文档的较前面的各个章节中所定义的那样来执行比例缩放,以便成为服从WMV9/VC-9的。
虽然已知8点DCT具有快速变换实现,但是,它没有容易地转化为8点WMV9/VC-9变换。WMV9/VC-9变换类似于DCT,但位精确性的整数实现和要求使从任何已知快速实现的直接映射成为不可能。也已知:DCT的偶基函数(即基函数0、2、4和8)可以在其后跟随四点DCT的输入处通过一系列蝶式来平凡地实现——这个事实也转化为8点WMV9/VC-9变换。所以,在获得8点WMV9变换的快速实现的过程中,实际难题是奇基函数的分析与合成。以下解决这个难题。
图6示出了8点前向WMV9/VC-9变换的快速实现。(空间域)输入在左边,而(变换域)输出在右边。右上角的四个输出对应于偶底数,它们具有与图4中的4点变换的相似性。对应于奇底数的矩阵乘数如下所示:
可见,这些行关于中心奇对称,这被第一蝶式阶段利用。四个蝶式的这些“差异”项的所得的矩阵乘法采用以下公式:
该4x4矩阵可以被分解如下:
以上分解产生图6中所示的蝶式表示。由于这些分量矩阵也是整数值,因此,维持位精确性。
反变换通过两种方法中的一种来加以分解。第一种替换方案是:翻转前向变换的流向图。倒置蝶式运算。特别是,类型的蝶式是其自己的逆,而形式的蝶式是的逆——在这两种情况中都忽视比例缩放。所以,通过翻转前向变换的流向图,获得图7中所示的快速反变换实现。
第二种替换方案是:指出“Todd是对称矩阵”。所以,反变换也涉及与前向变换相同的矩阵乘法,即,可以为关于前向变换的奇基函数维持相同的蝶式和排序。图8中示出这项实现。
也可以生成基于以上内容的翻转的前向变换。这提供了图9中所示的前向变换的替换快速实现。
5.计算环境
WMV9/VC-9变换的上述快速实现可以在其中执行图像与视频信号处理的各种设备上执行,包括:计算机;图像与视频记录、传输和接收设备;便携式视频播放器;视频会议;Web视频流应用程序等等,以及其它例子。图像与视频编码技术可以在硬件电路中(例如,在ASIC、FPGA等的电路中)加以执行,也可以在图像与视频处理软件中加以执行,该图像与视频处理软件在如图10中所示的计算机或其它计算环境内执行(不管是在中央处理单元(CPU)上执行,还是在专用图形处理器、视频卡或类似物上执行)。
图10展示了可以在其中实现所描述的快速WMV9/VC-9变换的合适的计算环境(1000)的概括例子。计算环境(1000)并不意在对本发明的使用范围或功能提出任何限制,因为本发明可以在各种不同的通用或专用计算环境中加以执行。
参照图10,计算环境(1000)包括至少一个处理单元(1010)和存储器(1020)。在图10中,这个最基本的配置(1030)被包括在虚线内。处理单元(1010)执行计算机可执行指令,并且可能是真实或虚拟处理器。在多处理系统中,多个处理单元执行计算机可执行指令,以提高处理能力。存储器(1020)可以是易失存储器(例如,寄存器、高速缓存、RAM)、非易失存储器(例如,ROM、EEPROM、闪存等)、或两者的某个组合。存储器(1020)存储实现所描述的快速WMV9/VC-9变换的软件(1080)。
计算环境可以具有额外的特点。例如,计算环境(1000)包括存储(1040)、一个或多个输入设备(1050)、一个或多个输出设备(1060)、以及一个或多个通信连接(1070)。诸如总线、控制器或网络等互连机制(未示出)对计算环境(1000)的各个组件进行互连。通常,操作系统软件(未示出)为在计算环境(1000)中执行的其它软件提供操作环境,并协调计算环境(1000)的各个组件的活动。
存储(1040)可以是可移动的或不可移动的,它包括磁盘、磁带或盒式磁带、CD-ROM、CD-RW、DVD、或可以被用来存储信息并且可以在计算环境(1000)内被存取的任何其它的介质。存储(1040)储存用于实现生成并压缩量化矩阵的音频编码器的软件(1080)的指令。
(多个)输入设备(1050)可以是触摸式输入设备(例如,键盘、鼠标、笔或跟踪球)、语音输入设备、扫描设备、或为计算环境(1000)提供输入的另一设备。对于音频,(输入)输入设备(1050)可以是接受模拟或数字形式的音频输入的声卡或类似的设备、或为计算环境提供音频样值的CD-ROM阅读器。(多个)输出设备(1060)可以是显示器、打印机、扬声器、CD刻录机、或提供来自计算环境(1000)的输出的另一设备。
(多个)通信连接(1070)启用通过通信介质与另一计算实体的通信。通信介质传达信息(例如,计算机可执行指令、被压缩的音频或视频信息、或已调制数据信号中的其它数据)。已调制数据信号是一种信号,其一个或多个特征按为该信号中的信息编码的这样一种方式来加以设置或更改。举例来讲(不作限制),通信介质包括利用电、光学、RF、红外、声学或其它载波来实现的有线或无线技术。
可以在计算机可读介质的一般上下文中描述本发明的变换和编码/解码技术。计算机可读介质是可以在计算环境内被存取的任何可用介质。举例来讲(不作限制),对于计算环境(1000),计算机可读介质包括存储器(1020)、存储(1040)、通信介质、以及以上任何内容的组合。
可以在诸如正在目标真实或虚拟处理器上的计算环境中执行的计算机可执行指令(例如,程序模块中所包括的指令)的一般上下文中描述本发明的快速WMV9/VC-9变换。通常,程序模块包括执行特定任务或实现特定的抽象数据类型的例程、程序、库、对象、类、组件、数据结构等。这些程序模块的功能可以如各种实现例中所需的在各个程序模块之间加以结合或分割。可以在本地或分布式计算环境内执行关于程序模块的计算机可执行指令。
为呈现起见,本详细说明使用如同“确定”、“生成”、“调整”和“应用”等术语来描述计算环境中的计算机操作。这些术语是对于计算机所执行的操作的高级抽象概念,不应该与人类执行的动作混淆。对应于这些术语的实际计算机操作根据实现而变化。
鉴于可以对其应用本发明的原理的许多可能的实施例,将本发明要求保护为可以归入所附权利要求书及其等效技术方案的范围和精神以内的所有这类实施例。
Claims (12)
1.一种方法,使用基于变换矩阵的块维度中的至少一个内的8点块变换的快速变换实现来对二维块中的媒体数据进行变换编码,所述变换矩阵被表示为
执行一蝶式运算的多个阶段,所述蝶式运算在空间域系数的8点集合与至少一个8点维度中的8点变换域系数之间进行转换,所述多个阶段包括:
变量0和7的蝶式运算,其中,值c和s是1;
变量1和6的蝶式运算,其中,值c和s是1;
变量2和5的蝶式运算,其中,值c和s是1;
变量3和4的蝶式运算,其中,值c和s是1;
变量0和3的蝶式运算,其中,值c和s是1;
变量1和2的蝶式运算,其中,值c和s是1;
变量0和1的蝶式运算,其中,值c和s是1,按12来进行比例缩放;
变量3和2的蝶式运算,其中,值c和s是16和6;
变量4和7的蝶式运算,其中,值c和s是4和1;
变量5和6的蝶式运算,其中,值c和s是5和3,随后对变量6进行求反;
变量5和6的第二蝶式运算,其中,值c和s是1;以及
在变量5和6的第二蝶式运算之前,执行变量4和5以及变量7和6与矩阵的矩阵乘法;
其中,变量0~3产生偶系数,并且,变量4~7产生该变换域内的奇系数。
2.一种方法,使用基于变换矩阵的块维度中的至少一个内的8点块变换的快速变换实现来对二维块中的媒体数据进行变换编码,所述变换矩阵被表示为
执行一蝶式运算的多个阶段,所述蝶式运算在空间域系数的8点集合与至少一个8点维度中的8点变换域系数之间进行转换,所述多个阶段包括:
对变量0~7的集合执行类型的一连串蝶式运算,至少包括,
变量0和7的蝶式运算,其中,值c和s是1;
变量1和6的蝶式运算,其中,值c和s是1;
变量2和5的蝶式运算,其中,值c和s是1;
变量3和4的蝶式运算,其中,值c和s是1;
变量0和3的蝶式运算,其中,值c和s是1;
变量1和2的蝶式运算,其中,值c和s是1;
变量0和1的蝶式运算,其中,值c和s是1,按12来进行比例缩放;
变量3和2的蝶式运算,其中,值c和s是16和6;
变量5和6的第一蝶式运算,其中,值c和s是1;
变量4和7的蝶式运算,其中,值c和s是4和1;
变量6和5的第二蝶式运算,其中,值c和s是5和3,随后对变量5进行求反;以及
在变量5和6的第一蝶式运算之后和在变量4和7的蝶式运算之前,执行变量4和5以及变量7和6与矩阵的矩阵乘法;
其中,变量0~3产生偶系数,并且,变量4~7产生变换域内的奇系数。
3.一种提供媒体数据的变换编码的媒体系统,其特征在于,包括:
频率变换器,对于所述媒体数据的二维块,它用于执行所述块的前向变换,以将所述块转换到变换域;
量化器,它用于量化所述变换域块;
反量化器,它用于对所述变换域块解除量化;以及
反频率变换器,用于执行所述变换域块的反变换,以产生形式的重建块,其中,D表示被解除量化的变换矩阵,R表示行和列范围反变换之后的被重建的输出,所述反变换的至少一个维度Tn或Tm是8点矩阵
对变量0~7的集合执行类型的一连串蝶式运算,其中,变量0~3是偶变换系数,变量4~7是奇变换系数,至少包括,
变量5和6的蝶式运算,其中,值c和s是1;
变量6和5的第二蝶式运算,其中,值c和s是5和3,随后对变量5进行求反;
变量4和7的蝶式运算,其中,值c和s是4和1;
变量0和1的蝶式运算,其中,值c和s是1,按12来进行比例缩放;
变量3和2的蝶式运算,其中,值c和s是16和6;
变量1和2的蝶式运算,其中,值c和s是1;
变量0和3的蝶式运算,其中,值c和s是1;
变量3和4的蝶式运算,其中,值c和s是1;
变量2和5的蝶式运算,其中,值c和s是1;
变量1和6的蝶式运算,其中,值c和s是1;
变量0和7的蝶式运算,其中,值c和s是1;以及
在变量6和5的第二蝶式运算之前,执行变量4和5以及变量7和6与矩阵的矩阵乘法。
4.一种提供媒体数据的变换编码的媒体系统,其特征在于,包括:
频率变换器,对于所述媒体数据的二维块,它用于执行所述块的前向变换,以将所述块转换到变换域;
量化器,它用于量化所述变换域块;
反量化器,它用于对所述变换域块解除量化;以及
反频率变换器,用于执行所述变换域块的反变换,以产生形式的重建块,其中,D表示被解除量化的变换矩阵,R表示行和列范围反变换之后的被重建的输出,所述反变换的至少一个维度Tn或Tm是8点矩阵
变量5和6的蝶式运算,其中,值c和s是5和3,随后对变量6进行求反;
变量4和7的蝶式运算,其中,值c和s是4和1;
变量5和6的第二蝶式运算,其中,值c和s是1;
变量0和1的蝶式运算,其中,值c和s是1,按12来进行比例缩放;
变量3和2的蝶式运算,其中,值c和s是16和6;
变量1和2的蝶式运算,其中,值c和s是1;
变量0和3的蝶式运算,其中,值c和s是1;
变量3和4的蝶式运算,其中,值c和s是1;
变量2和5的蝶式运算,其中,值c和s是1;
变量1和6的蝶式运算,其中,值c和s是1;
变量0和7的蝶式运算,其中,值c和s是1;以及
在变量4和7的蝶式运算之后和在变量5和6的第二蝶式运算之前,执行变量4和5以及变量7和6与矩阵的矩阵乘法。
5.一种快速变换方法,用于变换空间域表示与变换域表示之间的图像数据的二维块,其中,所述块的至少一个维度是8个点,对于前向变换,包括:
变量0和7的蝶式运算,其中,值c和s是1;
变量1和6的蝶式运算,其中,值c和s是1;
变量2和5的蝶式运算,其中,值c和s是1;
变量3和4的蝶式运算,其中,值c和s是1;
变量0和3的蝶式运算,其中,值c和s是1;
变量1和2的蝶式运算,其中,值c和s是1;
变量0和1的蝶式运算,其中,值c和s是1,按12来进行比例缩放;
变量3和2的蝶式运算,其中,值c和s是16和6;
变量4和7的蝶式运算,其中,值c和s是4和1;
变量5和6的蝶式运算,其中,值c和s是5和3,随后对变量6进行求反;
变量5和6的第二蝶式运算,其中,值c和s是1;以及
在变量5和6的第二蝶式运算之前,执行变量4和5以及变量7和6与矩阵的矩阵乘法;
其中,变量0~3产生偶系数,并且,变量4~7产生该变换域内的奇系数。
6.一种快速变换方法,用于变换空间域表示与变换域表示之间的图像数据的二维块,其中,所述块的至少一个维度是8个点,对于反变换,包括:
变量5和6的蝶式运算,其中,值c和s是1;
变量6和5的第二蝶式运算,其中,值c和s是5和3,随后对变量5进行求反;
变量4和7的蝶式运算,其中,值c和s是4和1;
变量0和1的蝶式运算,其中,值c和s是1,按12来进行比例缩放;
变量3和2的蝶式运算,其中,值c和s是16和6;
变量1和2的蝶式运算,其中,值c和s是1;
变量0和3的蝶式运算,其中,值c和s是1;
变量3和4的蝶式运算,其中,值c和s是1;
变量2和5的蝶式运算,其中,值c和s是1;
变量1和6的蝶式运算,其中,值c和s是1;
变量0和7的蝶式运算,其中,值c和s是1;以及
在变量6和5的第二蝶式运算之前,执行变量4和5以及变量7和6与矩阵的矩阵乘法。
7.一种快速变换方法,用于变换空间域表示与变换域表示之间的图像数据的二维块,其中,所述块的至少一个维度是8个点,对于反变换,包括:
变量5和6的蝶式运算,其中,值c和s是5和3,随后对变量6进行求反;
变量4和7的蝶式运算,其中,值c和s是4和1;
变量5和6的第二蝶式运算,其中,值c和s是1;
变量0和1的蝶式运算,其中,值c和s是1,按12来进行比例缩放;
变量3和2的蝶式运算,其中,值c和s是16和6;
变量1和2的蝶式运算,其中,值c和s是1;
变量0和3的蝶式运算,其中,值c和s是1;
变量3和4的蝶式运算,其中,值c和s是1;
变量2和5的蝶式运算,其中,值c和s是1;
变量1和6的蝶式运算,其中,值c和s是1;
变量0和7的蝶式运算,其中,值c和s是1;以及
在变量4和7的蝶式运算之后和在变量5和6的第二蝶式运算之前,执行变量4和5以及变量7和6与矩阵的矩阵乘法。
8.一种快速变换方法,用于变换空间域表示与变换域表示之间的图像数据的二维块,其中,所述块的至少一个维度是8个点,对于前向变换,包括:
变量0和7的蝶式运算,其中,值c和s是1;
变量1和6的蝶式运算,其中,值c和s是1;
变量2和5的蝶式运算,其中,值c和s是1;
变量3和4的蝶式运算,其中,值c和s是1;
变量0和3的蝶式运算,其中,值c和s是1;
变量1和2的蝶式运算,其中,值c和s是1;
变量0和1的蝶式运算,其中,值c和s是1,按12来进行比例缩放;
变量3和2的蝶式运算,其中,值c和s是16和6;
变量5和6的第一蝶式运算,其中,值c和s是1;
变量4和7的蝶式运算,其中,值c和s是4和1;
变量6和5的第二蝶式运算,其中,值c和s是5和3,随后对变量5进行求反;以及
在变量5和6的第一蝶式运算之后和在变量4和7的蝶式运算之前,执行变量4和5以及变量7和6与矩阵的矩阵乘法;
其中,变量0~3产生偶系数,并且,变量4~7产生变换域内的奇系数。
9.一种快速变换装置,用于变换空间域表示与变换域表示之间的图像数据的二维块,其中,所述块的至少一个维度是8个点,对于前向变换,所述装置包括:
用于对变量0~7的集合执行类型的一连串蝶式运算的装置,至少包括,
变量0和7的蝶式运算,其中,值c和s是1;
变量1和6的蝶式运算,其中,值c和s是1;
变量2和5的蝶式运算,其中,值c和s是1;
变量3和4的蝶式运算,其中,值c和s是1;
变量0和3的蝶式运算,其中,值c和s是1;
变量1和2的蝶式运算,其中,值c和s是1;
变量0和1的蝶式运算,其中,值c和s是1,按12来进行比例缩放;
变量3和2的蝶式运算,其中,值c和s是16和6;
变量4和7的蝶式运算,其中,值c和s是4和1;
变量5和6的蝶式运算,其中,值c和s是5和3,随后对变量6进行求反;
变量5和6的第二蝶式运算,其中,值c和s是1;以及
其中,变量0~3产生偶系数,并且,变量4~7产生该变换域内的奇系数。
10.一种快速变换装置,用于变换空间域表示与变换域表示之间的图像数据的二维块,其中,所述块的至少一个维度是8个点,对于反变换,所述装置包括:
用于对变量0~7的集合执行类型的一连串蝶式运算的装置,其中,变量0~3是偶变换系数,变量4~7是奇变换系数,至少包括,
变量5和6的蝶式运算,其中,值c和s是1;
变量6和5的第二蝶式运算,其中,值c和s是5和3,随后对变量5进行求反;
变量4和7的蝶式运算,其中,值c和s是4和1;
变量0和1的蝶式运算,其中,值c和s是1,按12来进行比例缩放;
变量3和2的蝶式运算,其中,值c和s是16和6;
变量1和2的蝶式运算,其中,值c和s是1;
变量0和3的蝶式运算,其中,值c和s是1;
变量3和4的蝶式运算,其中,值c和s是1;
变量2和5的蝶式运算,其中,值c和s是1;
变量1和6的蝶式运算,其中,值c和s是1;
变量0和7的蝶式运算,其中,值c和s是1;以及
11.一种快速变换装置,用于变换空间域表示与变换域表示之间的图像数据的二维块,其中,所述块的至少一个维度是8个点,对于反变换,所述装置包括:
变量5和6的蝶式运算,其中,值c和s是5和3,随后对变量6进行求反;
变量4和7的蝶式运算,其中,值c和s是4和1;
变量5和6的第二蝶式运算,其中,值c和s是1;
变量0和1的蝶式运算,其中,值c和s是1,按12来进行比例缩放;
变量3和2的蝶式运算,其中,值c和s是16和6;
变量1和2的蝶式运算,其中,值c和s是1;
变量0和3的蝶式运算,其中,值c和s是1;
变量3和4的蝶式运算,其中,值c和s是1;
变量2和5的蝶式运算,其中,值c和s是1;
变量1和6的蝶式运算,其中,值c和s是1;
变量0和7的蝶式运算,其中,值c和s是1;以及
12.一种快速变换装置,用于变换空间域表示与变换域表示之间的图像数据的二维块,其中,所述块的至少一个维度是8个点,对于前向变换,所述装置包括:
变量0和7的蝶式运算,其中,值c和s是1;
变量1和6的蝶式运算,其中,值c和s是1;
变量2和5的蝶式运算,其中,值c和s是1;
变量3和4的蝶式运算,其中,值c和s是1;
变量0和3的蝶式运算,其中,值c和s是1;
变量1和2的蝶式运算,其中,值c和s是1;
变量0和1的蝶式运算,其中,值c和s是1,按12来进行比例缩放;
变量3和2的蝶式运算,其中,值c和s是16和6;
变量5和6的第一蝶式运算,其中,值c和s是1;
变量4和7的蝶式运算,其中,值c和s是4和1;
变量6和5的第二蝶式运算,其中,值c和s是5和3,随后对变量5进行求反;以及
用于在变量5和6的第一蝶式运算之后和在变量4和7的蝶式运算之前执行变量4和5以及变量7和6与矩阵的矩阵乘法的装置;
其中,变量0~3产生偶系数,并且,变量4~7产生该变换域内的奇系数。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/845,808 US7487193B2 (en) | 2004-05-14 | 2004-05-14 | Fast video codec transform implementations |
US10/845,808 | 2004-05-14 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1697328A CN1697328A (zh) | 2005-11-16 |
CN1697328B true CN1697328B (zh) | 2010-04-28 |
Family
ID=34939513
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2005100688953A Expired - Fee Related CN1697328B (zh) | 2004-05-14 | 2005-05-13 | 快速视频编解码变换实现 |
Country Status (5)
Country | Link |
---|---|
US (1) | US7487193B2 (zh) |
EP (1) | EP1596309A3 (zh) |
JP (1) | JP4425824B2 (zh) |
KR (1) | KR101153105B1 (zh) |
CN (1) | CN1697328B (zh) |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070200738A1 (en) * | 2005-10-12 | 2007-08-30 | Yuriy Reznik | Efficient multiplication-free computation for signal and data processing |
US20070147496A1 (en) * | 2005-12-23 | 2007-06-28 | Bhaskar Sherigar | Hardware implementation of programmable controls for inverse quantizing with a plurality of standards |
US8595281B2 (en) * | 2006-01-11 | 2013-11-26 | Qualcomm Incorporated | Transforms with common factors |
US8849884B2 (en) * | 2006-03-29 | 2014-09-30 | Qualcom Incorporate | Transform design with scaled and non-scaled interfaces |
US8228983B2 (en) * | 2007-12-04 | 2012-07-24 | Hong Kong Applied Science And Technology Research | Method and device for order-16 integer transform from order-8 integer cosine transform |
US8438036B2 (en) * | 2009-09-03 | 2013-05-07 | Texas Instruments Incorporated | Asynchronous sampling rate converter for audio applications |
BR112013007023A2 (pt) | 2010-09-28 | 2017-07-25 | Samsung Electronics Co Ltd | método de codificação de vídeo e método de decodificação de vídeo |
US9378185B2 (en) * | 2010-09-30 | 2016-06-28 | Texas Instruments Incorporated | Transform and quantization architecture for video coding and decoding |
JP5678593B2 (ja) * | 2010-11-12 | 2015-03-04 | 沖電気工業株式会社 | 符号化支援装置、符号化装置、復号支援装置、復号装置、符号化支援プログラム、及び復号支援プログラム |
US8767824B2 (en) | 2011-07-11 | 2014-07-01 | Sharp Kabushiki Kaisha | Video decoder parallelization for tiles |
US10452743B2 (en) | 2011-11-07 | 2019-10-22 | Vid Scale, Inc. | Video and data processing using even-odd integer transforms |
US8719321B2 (en) * | 2011-12-11 | 2014-05-06 | Hong Kong Applied Science and Technology Research Institute Company Limited | Adaptive block-size transform using LLMICT |
US9069726B2 (en) | 2012-12-12 | 2015-06-30 | Microsoft Technology Licensing, Llc | Iteratively calculating standard deviation for streamed data |
CN103905825B (zh) * | 2012-12-27 | 2018-02-13 | 中国电信股份有限公司 | 视频图像的运动补偿方法和装置 |
US10275488B1 (en) * | 2014-12-09 | 2019-04-30 | Cloud & Stream Gears Llc | Incremental covariance calculation for big data or streamed data using components |
FR3044507A1 (fr) * | 2015-11-30 | 2017-06-02 | Orange | Procede de codage et de decodage d'images, dispositif de codage et de decodage d'images et programmes d'ordinateur correspondants |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1169083A (zh) * | 1997-03-06 | 1997-12-31 | 华邦电子股份有限公司 | 可巡回执行的离散余弦转换及其逆转换集成电路处理器 |
US5790441A (en) * | 1995-09-27 | 1998-08-04 | Nec Corporation | Lossless transform coding system for digital signals |
CN1224306A (zh) * | 1997-11-17 | 1999-07-28 | 索尼电子有限公司 | 用于改进的以离散余弦变换进行数据视频数据处理的方法和系统 |
US6137916A (en) * | 1997-11-17 | 2000-10-24 | Sony Electronics, Inc. | Method and system for improved digital video data processing using 8-point discrete cosine transforms |
CN1290455A (zh) * | 1998-12-14 | 2001-04-04 | 松下电器产业株式会社 | Dct运算装置 |
Family Cites Families (56)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS63219066A (ja) | 1987-03-06 | 1988-09-12 | Matsushita Electric Ind Co Ltd | 直交変換装置 |
US5357594A (en) | 1989-01-27 | 1994-10-18 | Dolby Laboratories Licensing Corporation | Encoding and decoding using specially designed pairs of analysis and synthesis windows |
US5379351A (en) | 1992-02-19 | 1995-01-03 | Integrated Information Technology, Inc. | Video compression/decompression processing and processors |
US5319724A (en) | 1990-04-19 | 1994-06-07 | Ricoh Corporation | Apparatus and method for compressing still images |
JP2945487B2 (ja) | 1990-12-26 | 1999-09-06 | 株式会社日立製作所 | 行列乗算器 |
JPH04282988A (ja) | 1991-03-12 | 1992-10-08 | Sony Corp | データ変換装置及び方法 |
US5168375A (en) | 1991-09-18 | 1992-12-01 | Polaroid Corporation | Image reconstruction by use of discrete cosine and related transforms |
JPH0645949A (ja) | 1992-07-27 | 1994-02-18 | Victor Co Of Japan Ltd | 直交変換装置及び逆直交変換装置 |
JPH0645948A (ja) | 1992-07-27 | 1994-02-18 | Victor Co Of Japan Ltd | 直交変換装置及び逆直交変換装置 |
JPH0654307A (ja) | 1992-07-29 | 1994-02-25 | Casio Comput Co Ltd | データ圧縮装置 |
JP3069455B2 (ja) | 1992-12-22 | 2000-07-24 | 富士写真フイルム株式会社 | 画像データ圧縮伸張装置における量子化・逆量子化回路 |
US5995539A (en) | 1993-03-17 | 1999-11-30 | Miller; William J. | Method and apparatus for signal transmission and reception |
JP3697717B2 (ja) | 1993-09-24 | 2005-09-21 | ソニー株式会社 | 2次元離散コサイン変換装置および2次元逆離散コサイン変換装置 |
US5864637A (en) | 1995-04-18 | 1999-01-26 | Advanced Micro Devices, Inc. | Method and apparatus for improved video decompression by selective reduction of spatial resolution |
US6002801A (en) | 1995-04-18 | 1999-12-14 | Advanced Micro Devices, Inc. | Method and apparatus for improved video decompression by selection of IDCT method based on image characteristics |
JP2778622B2 (ja) | 1995-06-06 | 1998-07-23 | 日本電気株式会社 | 2次元dct回路 |
JP2914226B2 (ja) | 1995-06-16 | 1999-06-28 | 日本電気株式会社 | 可逆変換を可能にするディジタル信号の変換符号化方式 |
US6026182A (en) | 1995-10-05 | 2000-02-15 | Microsoft Corporation | Feature segmentation |
US6957350B1 (en) | 1996-01-30 | 2005-10-18 | Dolby Laboratories Licensing Corporation | Encrypted and watermarked temporal and resolution layering in advanced television |
JPH1091614A (ja) | 1996-09-13 | 1998-04-10 | Hitachi Ltd | Idctの整数化法 |
SG54383A1 (en) | 1996-10-31 | 1998-11-16 | Sgs Thomson Microelectronics A | Method and apparatus for decoding multi-channel audio data |
US5883823A (en) | 1997-01-15 | 1999-03-16 | Sun Microsystems, Inc. | System and method of a fast inverse discrete cosine transform and video compression/decompression systems employing the same |
US6058215A (en) | 1997-04-30 | 2000-05-02 | Ricoh Company, Ltd. | Reversible DCT for lossless-lossy compression |
US6134270A (en) | 1997-06-13 | 2000-10-17 | Sun Microsystems, Inc. | Scaled forward and inverse discrete cosine transform and video compression/decompression systems employing the same |
US6057855A (en) | 1997-07-02 | 2000-05-02 | Hewlett-Packard Company | Method and apparatus for providing polygon pixel sub-sample information using incremental means |
JPH11122624A (ja) | 1997-10-16 | 1999-04-30 | Matsushita Electric Ind Co Ltd | ビデオデコーダ処理量を低減する方法および装置 |
US6006179A (en) | 1997-10-28 | 1999-12-21 | America Online, Inc. | Audio codec using adaptive sparse vector quantization with subband vector classification |
US6600785B1 (en) | 1997-12-01 | 2003-07-29 | Matsushita Electric Industrial | Image processor, image data processor and variable length encoder/decoder |
DE59813105D1 (de) | 1997-12-19 | 2006-02-23 | Infineon Technologies Ag | Vorrichtung zur multiplikation mit konstanten faktoren und deren verwendung zur videokompression (mpeg) |
US6029126A (en) | 1998-06-30 | 2000-02-22 | Microsoft Corporation | Scalable audio coder and decoder |
US6115689A (en) | 1998-05-27 | 2000-09-05 | Microsoft Corporation | Scalable audio coder and decoder |
US6073153A (en) | 1998-06-03 | 2000-06-06 | Microsoft Corporation | Fast system and method for computing modulated lapped transforms |
US6154762A (en) | 1998-06-03 | 2000-11-28 | Microsoft Corporation | Fast system and method for computing modulated lapped transforms |
US6301304B1 (en) | 1998-06-17 | 2001-10-09 | Lsi Logic Corporation | Architecture and method for inverse quantization of discrete cosine transform coefficients in MPEG decoders |
GB9819648D0 (en) | 1998-09-10 | 1998-11-04 | Nds Ltd | Determining visually noticeable differences between two images |
US6363117B1 (en) | 1998-12-31 | 2002-03-26 | Sony Corporation | Video compression using fast block motion estimation |
US6473534B1 (en) | 1999-01-06 | 2002-10-29 | Hewlett-Packard Company | Multiplier-free implementation of DCT used in image and video processing and compression |
US6496795B1 (en) | 1999-05-05 | 2002-12-17 | Microsoft Corporation | Modulated complex lapped transform for integrated signal enhancement and coding |
US6487574B1 (en) | 1999-02-26 | 2002-11-26 | Microsoft Corp. | System and method for producing modulated complex lapped transforms |
JP4027011B2 (ja) * | 1999-04-28 | 2007-12-26 | キヤノン株式会社 | 画像形成装置 |
US6370502B1 (en) | 1999-05-27 | 2002-04-09 | America Online, Inc. | Method and system for reduction of quantization-induced block-discontinuities and general purpose audio codec |
US6507614B1 (en) | 1999-10-19 | 2003-01-14 | Sony Corporation | Efficient de-quantization in a digital video decoding process using a dynamic quantization matrix for parallel computations |
WO2001040985A2 (en) | 1999-12-06 | 2001-06-07 | Hrl Laboratories, Llc | Method and apparatus for calculating wavelet transform using variable precision |
JP3593944B2 (ja) | 2000-03-08 | 2004-11-24 | 日本電気株式会社 | 画像データ処理装置及びそれに用いる動き補償処理方法 |
US6606725B1 (en) | 2000-04-25 | 2003-08-12 | Mitsubishi Electric Research Laboratories, Inc. | MAP decoding for turbo codes by parallel matrix processing |
US8374237B2 (en) | 2001-03-02 | 2013-02-12 | Dolby Laboratories Licensing Corporation | High precision encoding and decoding of video images |
JP4063508B2 (ja) | 2001-07-04 | 2008-03-19 | 日本電気株式会社 | ビットレート変換装置およびビットレート変換方法 |
US20030112873A1 (en) | 2001-07-11 | 2003-06-19 | Demos Gary A. | Motion estimation for video compression systems |
US7123655B2 (en) | 2001-08-09 | 2006-10-17 | Sharp Laboratories Of America, Inc. | Method for reduced bit-depth quantization |
US6882685B2 (en) | 2001-09-18 | 2005-04-19 | Microsoft Corporation | Block transform and quantization for image and video coding |
JP2003348598A (ja) | 2002-04-12 | 2003-12-05 | Seiko Epson Corp | メモリ効率のいい圧縮領域ビデオ処理のための且つ因数分解及び整数近似法を用いる高速逆動き補償のための方法並びに装置 |
US7242713B2 (en) * | 2002-05-02 | 2007-07-10 | Microsoft Corporation | 2-D transforms for image and video coding |
US6944224B2 (en) | 2002-08-14 | 2005-09-13 | Intervideo, Inc. | Systems and methods for selecting a macroblock mode in a video encoder |
US20050213835A1 (en) | 2004-03-18 | 2005-09-29 | Huazhong University Of Science & Technology And Samsung Electronics Co., Ltd. | Integer transform matrix selection method in video coding and related integer transform method |
JP4074868B2 (ja) | 2004-12-22 | 2008-04-16 | 株式会社東芝 | 画像符号化制御方法及びその装置 |
CN100539437C (zh) | 2005-07-29 | 2009-09-09 | 上海杰得微电子有限公司 | 一种音频编解码器的实现方法 |
-
2004
- 2004-05-14 US US10/845,808 patent/US7487193B2/en not_active Expired - Fee Related
-
2005
- 2005-04-26 EP EP05103379.3A patent/EP1596309A3/en not_active Withdrawn
- 2005-05-13 CN CN2005100688953A patent/CN1697328B/zh not_active Expired - Fee Related
- 2005-05-13 KR KR1020050040211A patent/KR101153105B1/ko not_active IP Right Cessation
- 2005-05-16 JP JP2005142843A patent/JP4425824B2/ja not_active Expired - Fee Related
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5790441A (en) * | 1995-09-27 | 1998-08-04 | Nec Corporation | Lossless transform coding system for digital signals |
CN1169083A (zh) * | 1997-03-06 | 1997-12-31 | 华邦电子股份有限公司 | 可巡回执行的离散余弦转换及其逆转换集成电路处理器 |
CN1224306A (zh) * | 1997-11-17 | 1999-07-28 | 索尼电子有限公司 | 用于改进的以离散余弦变换进行数据视频数据处理的方法和系统 |
US6137916A (en) * | 1997-11-17 | 2000-10-24 | Sony Electronics, Inc. | Method and system for improved digital video data processing using 8-point discrete cosine transforms |
CN1290455A (zh) * | 1998-12-14 | 2001-04-04 | 松下电器产业株式会社 | Dct运算装置 |
Also Published As
Publication number | Publication date |
---|---|
US7487193B2 (en) | 2009-02-03 |
CN1697328A (zh) | 2005-11-16 |
EP1596309A3 (en) | 2013-12-04 |
EP1596309A2 (en) | 2005-11-16 |
US20050256916A1 (en) | 2005-11-17 |
JP2005327298A (ja) | 2005-11-24 |
KR101153105B1 (ko) | 2012-06-04 |
JP4425824B2 (ja) | 2010-03-03 |
KR20060047898A (ko) | 2006-05-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1697328B (zh) | 快速视频编解码变换实现 | |
JP4425561B2 (ja) | イメージおよびビデオ符号化のための2−d変換 | |
EP1672517B1 (en) | Reversible transform for lossy and lossless 2-D data compression | |
CN1805547B (zh) | 用于高效无损数据压缩的可逆重叠算子 | |
CN101617539B (zh) | 基于变换的数字媒体编解码器中的计算复杂度和精度控制 | |
JP4515263B2 (ja) | 映像符号化のための低複雑性単一化変換 | |
CN102158711B (zh) | 重叠双正交变换的可逆二维前置/后置滤波方法 | |
US20140010284A1 (en) | Image transform and inverse transform method, and image encoding and decoding device using same | |
MX2008008987A (es) | Transformadas con factores comunes. | |
CN101729886B (zh) | 一种视频解码方法、系统和设备 | |
US6993550B2 (en) | Fixed point multiplying apparatus and method using encoded multiplicand | |
Vogler et al. | Wavelet-based compression of volumetric cfd data sets | |
Vogler et al. | Handling Large Numerical Data-Sets: Viability of a Lossy Compressor for CFD-simulations | |
Mietens et al. | New scalable DCT computation for resource-constrained systems | |
CN115880379A (zh) | 语义可伸缩图像编码方法、系统、设备及存储介质 | |
Amer et al. | On the refinement of the DCT/IDCT scaling factor sensitivity |
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 | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20100428 Termination date: 20130513 |