CN103380425A - 用于媒体数据译码的32点变换 - Google Patents
用于媒体数据译码的32点变换 Download PDFInfo
- Publication number
- CN103380425A CN103380425A CN2012800050014A CN201280005001A CN103380425A CN 103380425 A CN103380425 A CN 103380425A CN 2012800050014 A CN2012800050014 A CN 2012800050014A CN 201280005001 A CN201280005001 A CN 201280005001A CN 103380425 A CN103380425 A CN 103380425A
- Authority
- CN
- China
- Prior art keywords
- directional scaling
- transformation unit
- point transformation
- conversion
- scaling conversion
- 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.)
- Granted
Links
Images
Classifications
-
- 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
-
- 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
-
- 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]
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- Theoretical Computer Science (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Discrete Mathematics (AREA)
- Signal Processing (AREA)
- Algebra (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Complex Calculations (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
一般来说,描述用于实施能够应用不同大小的多个DCT的32点离散余弦变换DCT的技术。举例来说,一种包括类型II32点离散余弦变换DCT-II单元的设备可实施本发明的技术。所述32点DCT-II单元执行这些不同大小的DCT-II,以将数据从空间域变换为频域。所述32点DCT-II单元包含一执行所述DCT-II中大小为16的一个DCT-II的16点DCT-II单元,以及至少一个执行所述DCT-II中大小为8的一个DCT-II的8点DCT-II单元。所述16点DCT-II单元包含另一8点DCT-II单元。所述16点DCT-II单元还包括至少一个4点DCT-II单元。这些DCT-II单元中的两者或两者以上可同时对内容数据的各个部分执行不同大小的DCT-II。
Description
本申请案主张2011年1月10申请的第61/431,343日美国临时申请案、2011年1月14日申请的第61/433,015号美国临时申请案、2011年1月17日申请的第61/433,351号美国临时申请案、2011年2月25日申请的第61/446,834号美国临时申请案以及2011年7月1日申请的第61/504,146号美国临时申请案的权益,其中这些美国临时申请案中的每一者的整个内容以引用方式并入本文中。
技术领域
本发明涉及数据压缩,且更明确地说,涉及包含变换的数据压缩。
背景技术
数据压缩广泛用于多种应用中来减少数据存储空间、发射带宽或两者的消耗。数据压缩的实例应用包含可见或可听媒体数据译码,例如数字视频、图像、语音和音频译码。举例来说,数字视频译码用于各种各样的装置中,包含数字电视机、数字直播系统、无线通信装置、个人数字助理(PDA)、膝上型或桌上型计算机、平板计算机、数码相机、数字记录装置、视频游戏装置、蜂窝式或卫星无线电电话等。数字视频装置根据若干标准实施视频压缩技术,例如MPEG-2标准、MPEG-4标准、H.264/MPEG-4高级视频译码(AVC)标准,或新兴的高效视频译码(HEVC)标准(其有时称为新兴H.265标准)来更高效地发射和接收数字视频。
视频压缩技术可执行空间预测、运动估计和运动补偿来减少或去除视频序列中固有的冗余。明确地说,帧内译码依靠空间预测来减少或去除给定视频帧内的视频中的空间冗余。帧间译码依靠时间预测来减少或去除邻近帧内的视频中的时间冗余。对于帧间译码,视频编码器执行运动估计来跟踪两个或两个以上邻近帧之间的匹配单元(其在例如H.264/MPEG-4AVC标准等各种视频译码标准中可称为块)的移动。运动估计产生运动向量,其指示当前帧的单元向一个或一个以上参考帧内的对应单元的位移。运动补偿使用运动向量来从参考帧产生预测数据。在运动补偿之后,通过将预测数据从原始单元减去来形成残余数据。
视频编码器接着应用变换,后接量化和无损统计译码过程,以进一步降低由视频译码过程产生的残余数据的位速率。在一些例子中,所应用的变换包括离散余弦变换(DCT)。通常,将DCT应用于大小为二的幂的译码单元,例如16个像素高乘以16个像素宽的译码单元(其通常被称为“16x16单元”)。因此,这些DCT可称为16点DCT,因为这些DCT应用于16x16个单元以产生DCT系数的16点阵列。从将16点DCT应用于残余数据而产生的DCT系数的16点阵列接着经历量化和无损统计译码过程(通常称为“熵译码”过程)以产生位流。统计译码过程的实例包含上下文自适应可变长度译码(CAVLC)或上下文自适应二进制算术译码(CABAC)。视频解码器接收经编码位流,且执行无损解码以解压缩DCT系数,视频解码器接着通过应用一个或一个以上16点逆DCT(IDCT)将DCT系数变换回空间域中以形成所述单元中的每一者的残余数据。通过使用残余数据和运动信息,视频解码器重构经编码视频。
发明内容
一般来说,本发明是针对用于使用32点离散余弦变换(DCT)的实施方案来译码例如媒体数据等数据的技术,所述32点离散余弦变换不仅能够执行32点DCT而且能够执行不同大小的多个不同DCT。作为一个实例,根据本发明的技术而构造的32点DCT实施方案执行大小为32的DCT,且包含执行大小为16的DCT的经按比例缩放16点DCT实施方案以及执行大小为8的DCT的至少一个DCT实施方案。在另一实例中,根据本发明的技术而构造的32点DCT实施方案执行大小为32的线性DCT,且包含执行大小为16的DCT的16点DCT,其中此16点DCT进一步执行本身执行大小为8的线性DCT的至少一个8点DCT实施方案以及各自执行大小为4的线性DCT的至少两个4点DCT实施方案,其可彼此同时操作。此外,8点DCT实施方案可包含执行大小为4的另一线性DCT的又一4点DCT实施方案,其可与由所述至少两个4点DCT实施方案执行的4点DCT同时操作。此32点DCT还可包含两个8点DCT,其能够同时执行大小为8的两个DCT。因此,根据本发明的技术而构造的32点DCT实施方案可并入有若干不同大小的不同DCT实施方案,其与这些DCT中的每一者在单独实施时按照惯例所消耗的芯片面积相比,可消耗相当少的芯片面积。
可通过首先在沿单元的一个方向上(例如沿水平轴)应用这些DCT中的一者,且接着在沿单元的另一方向(例如沿垂直轴)应用这些DCT中的一者,来将这些DCT应用于任何给定大小的视频单元。通过以此方式应用这些DCT,可应用不同大小的DCT。举例来说,可在一个方向上应用32点DCT,且可在另一方向上应用16点DCT,以依据下伏单元的大小有效地应用32x16或16x32DCT。以此方式,可应用DCT来执行大小为32×32、32×16、16×32、16×16、16×8、8×16、8×8、8×4、4×8、4×4的DCT,或前述线性大小DCT的任何其它组合。
在一个方面中,一种用于将内容数据从空间域变换为频域的方法,所述方法包括以经按比例缩放32点变换单元执行不同大小的多个经按比例缩放变换中的一者或一者以上,以将所述内容数据从所述空间域变换为所述频域,其中所述经按比例缩放32点变换单元执行所述多个经按比例缩放变换中大小为32的第一者。所述经按比例缩放32点变换单元包含:位于所述32点变换单元的偶数半部中的经按比例缩放16点变换单元,其执行所述多个经按比例缩放变换中的第二者,所述多个经按比例缩放变换中的所述第二者界定变换大小16;以及位于所述32点变换单元的奇数半部中的至少一个经按比例缩放8点变换单元,其执行所述多个经按比例缩放变换中的第三者,所述多个经按比例缩放变换中的所述第三者界定变换大小8。
在另一方面中,一种设备包括:用于执行不同大小的多个经按比例缩放变换以将内容数据从空间域变换为频域的装置,其中所述用于执行不同大小的所述多个经按比例缩放变换的装置执行所述多个经按比例缩放变换中的第一者,所述多个经按比例缩放变换中的所述第一者界定变换大小32。所述用于执行不同大小的所述多个经按比例缩放变换的装置包含:位于所述用于执行所述多个经按比例缩放变换的装置的偶数半部中的装置,其用于执行所述多个经按比例缩放变换中的第二者,所述多个经按比例缩放变换中的所述第二者界定变换大小16;以及位于所述用于执行所述多个经按比例缩放变换的装置的奇数半部中的装置,其用于执行所述多个经按比例缩放变换中的第三者,所述多个经按比例缩放变换中的所述第三者界定变换大小8。
在另一方面中,一种设备包括:经按比例缩放32点变换单元,其执行不同大小的多个经按比例缩放变换,以将内容数据从空间域变换为频域,其中所述经按比例缩放32点变换单元执行所述多个经按比例缩放变换中的第一者,所述多个经按比例缩放变换中的所述第一者界定变换大小32。所述32点变换单元包含:位于所述32点变换单元的偶数半部中的经按比例缩放16点变换单元,其执行所述多个经按比例缩放变换中的第二者,所述多个经按比例缩放变换中的所述第二者界定变换大小16;以及位于所述32点变换单元的奇数半部中的至少一个经按比例缩放8点变换单元,其执行所述多个经按比例缩放变换中的第三者,所述多个经按比例缩放变换中的所述第三者界定变换大小8。
在另一方面中,一种非暂时计算机可读媒体包括在执行时致使一个或一个以上处理器进行以下动作的指令:实施32点变换单元,其执行不同大小的多个经按比例缩放变换中的一者或一者以上,以将内容数据从空间域变换为频域,其中经按比例缩放32点变换单元执行所述多个经按比例缩放变换中大小为32的第一者。所述经按比例缩放32点变换单元包含:位于所述32点变换单元的偶数半部中的经按比例缩放16点变换单元,其执行所述多个经按比例缩放变换中的第二者,所述多个经按比例缩放变换中的所述第二者界定变换大小16;以及位于所述32点变换单元的奇数半部中的至少一个经按比例缩放8点变换单元,其执行所述多个经按比例缩放变换中的第三者,所述多个经按比例缩放变换中的所述第三者界定变换大小8。
在另一方面中,一种用于将经变换内容数据从空间域变换为频域的方法,所述方法包括:以经按比例缩放32点变换单元执行不同大小的多个经按比例缩放变换中的一者或一者以上,以将所述经变换内容数据从所述频域变换为所述空间域,其中所述经按比例缩放32点变换单元执行所述多个经按比例缩放变换中大小为32的第一者。所述经按比例缩放32点变换单元包含:位于所述32点变换单元的偶数半部中的经按比例缩放16点变换单元,其执行所述多个经按比例缩放变换中的第二者,所述多个经按比例缩放变换中的所述第二者界定变换大小16;以及位于所述32点变换单元的奇数半部中的至少一个经按比例缩放8点变换单元,其执行所述多个经按比例缩放变换中的第三者,所述多个经按比例缩放变换中的所述第三者界定变换大小8。
在另一方面中,一种设备包括:用于执行不同大小的多个经按比例缩放变换以将内容数据从频域变换为空间域的装置,其中所述用于执行不同大小的所述多个经按比例缩放变换的装置执行所述多个经按比例缩放变换中的第一者,所述多个经按比例缩放变换中的所述第一者界定变换大小32。所述用于执行不同大小的所述多个经按比例缩放变换的装置包含:位于所述用于执行所述多个经按比例缩放变换的装置的偶数半部中的装置,其用于执行所述多个经按比例缩放变换中的第二者,所述多个经按比例缩放变换中的所述第二者界定变换大小16;以及位于所述用于执行所述多个经按比例缩放变换的装置的奇数半部中的装置,其用于执行所述多个经按比例缩放变换中的第三者,所述多个经按比例缩放变换中的所述第三者界定变换大小8。
在另一方面中,一种设备包括:经按比例缩放32点变换单元,其执行不同大小的多个经按比例缩放变换,以将内容数据从频域变换为空间域,其中所述经按比例缩放32点变换单元执行所述多个经按比例缩放变换中的第一者,所述多个经按比例缩放变换中的所述第一者界定变换大小32。所述经按比例缩放32点变换单元包含:位于所述32点变换单元的偶数半部中的经按比例缩放16点变换单元,其执行所述多个经按比例缩放变换中的第二者,所述多个经按比例缩放变换中的所述第二者界定变换大小16;以及位于所述32点变换单元的奇数半部中的至少一个经按比例缩放8点变换单元,其执行所述多个经按比例缩放变换中的第三者,所述多个经按比例缩放变换中的所述第三者界定变换大小8。
在另一方面中,一种非暂时计算机可读媒体包括在执行时致使一个或一个以上处理器进行以下动作的指令:实施32点变换单元,其执行不同大小的多个经按比例缩放变换中的一者或一者以上,以将内容数据从频域变换为空间域,其中经按比例缩放32点变换单元执行所述多个经按比例缩放变换中大小为32的第一者。所述经按比例缩放32点变换单元包含:位于所述32点变换单元的偶数半部中的经按比例缩放16点变换单元,其执行所述多个经按比例缩放变换中的第二者,所述多个经按比例缩放变换中的所述第二者界定变换大小16;以及位于所述32点变换单元的奇数半部中的至少一个经按比例缩放8点变换单元,其执行所述多个经按比例缩放变换中的第三者,所述多个经按比例缩放变换中的所述第三者界定变换大小8。
所述技术的一个或一个以上方面的细节在附图和下文的描述中陈述。本发明所述的技术的其它特征、目标和优点将从所述描述和图式且从所附权利要求书中显而易见。
附图说明
图1是说明可实施本发明的技术的视频编码和解码系统的框图。
图2是更详细地说明图1的视频编码器的框图。
图3是更详细地说明图1的视频解码器的框图。
图4A到4E是更详细地说明图2的32点DCT-II单元的各个方面的图。
图5是说明译码装置在应用根据本发明的技术构造的32点DCT实施方案时的示范性操作的流程图。
图6是说明译码装置在应用根据本发明的技术配置的32点DCT-III时的实例操作的流程图。
图7A到7E是说明图2中所示的32点DCT-II单元的另一示范性实施方案的各个方面的图。
具体实施方式
一般来说,本发明是针对用于使用包含能够执行不同大小的若干不同DCT的若干不同DCT实施方案的32点离散余弦变换(DCT)实施方案来译码数据的技术。可应用所述技术来压缩多种数据,包含可见媒体数据或可听媒体数据,例如数字视频数据、图像数据、语音数据和/或音频数据,从而将表示此数据的此些电信号变换为经压缩信息以用于较高效地处理、发射或存档所述电信号。根据本发明的技术构造的32点DCT实施方案因此能够执行多种大小的DCT。通过执行多种大小的DCT,32点DCT实施方案潜在地消除单独DCT实施方案以执行类似大小的DCT。因此,所描述的技术可促进所谓的“板空间”的减少的消耗,因为根据本发明的技术而构造的32点DCT实施方案并入有、嵌套有或以其它方式嵌入有不同大小(例如16、8和4)的DCT实施方案,而与单独的32点、16点、8点和4点DCT实施方案的总大小相比,不显著增加32点实施方案的大小。消耗较少板空间通常转变为电力消耗的减少,且因此,本发明的技术可促进更节能的DCT实施方案。
上文所述的大小(即32、16、8和4)是依据离散数据单元来表示。为了说明,通常依据单元(例如HEVC标准中所阐述的译码单元(CU)),特别是相对于视频压缩来描述视频数据。单元通常指代视频帧的任何大小的部分,其中视频帧指代一系列图片或图像中的一图片或图像。每一单元通常包括多个离散像素数据,其指示色彩分量(例如,红色、蓝色和绿色(所谓的“色品”或“色度”分量))或亮度分量(所谓的“亮度”分量)。每一组像素数据包括单元中的单个像素,且可被视为相对于译码单元的离散数据单元。因此,8x8译码单元例如包括八行像素数据,每行中具有八个离散组的像素数据。可将n位值指派给每一像素以指定色彩或亮度值。
通常依据DCT能够进行处理的数据块(不管是音频、语音图像还是视频数据)的大小来描述DCT。举例来说,如果DCT可处理32元素数据阵列,那么DCT可称为线性32点DCT。可应用相同或不同大小的线性DCT来有效地对不同大小的译码单元执行32×32、32×16、16×32、16×8、8×16、8×8、8×4、4×8、4×4或任何其它大小组合。此外,可将DCT表示为特定类型。八种不同类型的DCT中最常使用的DCT类型为类型II DCT,其可表示为“DCT-II”。通常,当一般地涉及DCT时,此参考指代类型II DCT或DCT-II。DCT-II的逆称为type-III DCT,其类似地可表示为“DCT-III”,或在一般理解DCT指代DCT-II的情况下,表示为“IDCT”,其中“IDCT”中的“I”表示逆。下文对DCT的参考符合此命名法,其中除非另有指定,否则对DCT的一般参考指代DCT-II。然而,为了避免混淆,下文以所指示的对应类型(II、III等)来指代DCT(包含DCT-II)。
本发明中所述的技术可在使用32点DCT-II和/或32点DCT-III的一个或一个以上实施方案来促进数据的压缩和/或解压缩的编码器和/或解码器中实施。并且,通过应用这些32点DCT-II实施方案实现的压缩和解压缩准许表示所述数据的电信号的物理变换,使得可使用物理计算硬件、物理发射媒体(例如,铜、光纤、无线或其它媒体)和/或存储硬件(例如,磁盘或光盘或磁带,或多种固态媒体中的任一者)来较高效地处理、发射和/或存储所述信号。所述实施方案可单独在硬件中配置,或可在硬件与软件的组合中配置。
可按比例缩放32点DCT-II的实施方案,其中术语“按比例缩放”指代产生经按比例缩放DCT系数的DCT实施方案。经按比例缩放的DCT系数在乘以对应的比例因子时,产生所谓的“全”DCT系数。经按比例缩放的DCT实施方案表示将某些因子从实施方案去除的DCT实施方案。一般来说,将这些因子并入给定译码装置或系统的另一元件、模块或单元中。举例来说,视频编码器可包含根据本发明的技术而构造的经按比例缩放16点DCT实施方案。视频编码器通常将所去除的因子并入到量化单元中,量化单元量化由经按比例缩放32点DCT实施方案输出的经按比例缩放DCT系数。量化单元可通常应用这些因子,而不显著增加量化单元的复杂性,而应用这些因子的全DCT实施方案通常比与应用所述因子的另一模块或单元(例如量化单元)组合的经按比例缩放DCT实施方案复杂。因此经按比例缩放DCT实施方案在某些上下文中可提供降低的实施复杂性,同时提供相同的译码增益。虽然本发明中相对于经按比例缩放DCT实施方案来描述,但所述技术可应用于未按比例缩放或所谓的“全”DCT实施方案。
为了说明,一种设备可包含根据本发明的技术构造的呈32点DCT变换单元的形式的32点DCT实施方案。32点DCT变换单元可执行不同大小的若干经按比例缩放DCT变换,以将内容数据从空间域变换为频域。经按比例缩放32点DCT单元可包含至少一个经按比例缩放16点DCT单元,其执行所述若干经按比例缩放DCT变换中大小为16的第一者。16点DCT单元还可包含:至少一个经按比例缩放8点变换单元,其执行所述若干经按比例缩放DCT变换中大小为8的至少一第二者;以及至少一个经按比例缩放4点变换单元,其执行所述若干经按比例缩放DCT变换中大小为4的至少一第三者。经按比例缩放32点DCT单元还可包含至少一个8点变换单元,其执行所述若干经按比例缩放DCT变换中大小为8的至少一第四者。
在这方面,根据本发明的技术而构造的32点DCT实施方案可至少在一些方面中能够执行多个大小的DCT,从而潜在地消除单独DCT实施方案以执行多个大小的DCT。因此,本发明的技术促进所谓的“板空间”的减少的消耗,因为根据所述技术而构造的32点DCT实施方案并入有、嵌套有或以其它方式嵌入有不同大小(例如16、8和4)的DCT实施方案,而不显著增加32点实施方案的大小。与单独的32点、16点、8点和4点DCT实施方案的总大小相比,本发明的32点DCT-II实施方案在所消耗的物理板空间方面可显著较小,其中术语“板空间”指代提供不同组件之间的互连的硅或其它物理板上所消耗的空间量。消耗较少板空间通常转变为电力消耗的减少,且因此,本发明的技术可促进更节能的DCT实施方案。
图1是说明可实施本发明的技术的视频编码和解码系统10的框图。如图1的实例中所示,系统10包含源装置12,其产生经编码视频供目的地装置14解码。源装置12可经由通信信道16将经编码视频发射到目的地装置14,或可将经编码视频存储在存储媒体34或文件服务器36上,使得经编码视频可由目的地装置14在需要时存取。源装置12和目的地装置14可包括各种各样的装置中的任一者,包含桌上型计算机、笔记本型(即,膝上型)计算机、平板计算机、机顶盒、电话手持机(包含蜂窝式电话或手持机,以及所谓的智能电话)、电视机、相机、显示装置、数字媒体播放器、视频游戏控制台等。
在许多情况下,此些装置可为无线通信而配备。因此,通信信道16可包括无线信道。或者,通信信道16可包括有线信道、无线与有线信道或任何其它类型的通信信道的组合,或适合发射经编码视频数据的通信信道的组合,例如射频(RF)频谱或一个或一个以上物理传输线。在一些实例中,通信信道16可形成例如局域网(LAN)、广域网(WAN)或例如因特网等全局网络等基于包的网络的部分。因此,通信信道16一般表示用于将视频数据从源装置12发射到目的地装置14的任何合适的通信媒体或不同通信媒体的集合,包括有线或无线媒体的任何合适组合。通信信道16可包含可用于促进从源装置12到目的地装置14的通信的路由器、交换器、基站或任何其它设备。
如图1的实例中进一步展示,源装置12包含视频源18、视频编码器20、调制器/解调器22(“调制解调器22”)以及发射器24。在源装置12中,视频源18可包含例如视频捕获装置等来源。举例来说,视频捕获装置可包含视频相机、含有先前捕获的视频的视频档案、用以从视频内容提供者接收视频的视频馈送接口,和/或用于产生计算机图形数据作为源视频的计算机图形系统中的一者或一者以上。作为一个实例,如果视频源18为视频相机,那么源装置12及目的地装置14可形成所谓的相机电话或视频电话。然而,本发明中所描述的技术不限于无线应用或设置,且可应用于包含视频编码和/或解码能力的非无线装置。因此,源装置12和目的地装置16仅为可支持本文所述的技术的译码装置的实例。
视频编码器20可编码所捕获、预捕获或计算机产生的视频。一旦经编码,视频编码器20可将此经编码视频输出到调制解调器22。调制解调器22可接着根据例如无线通信协议等通信标准来调制经编码视频,此后发射器24可即刻将经调制的经编码视频数据发射到目的地装置14。调制解调器22可包含为信号调制设计的各种混频器、滤波器、放大器或其它组件。发射器24可包含经设计以用于发射数据的电路,包含放大器、滤波器及一个或一个以上天线。
由视频编码器20编码的所捕获、预捕获或计算机产生的视频还可存储到存储媒体34或文件服务器36上以供以后检索、解码和消耗。存储媒体34可包含蓝光光盘、DVD、CD-ROM、快闪存储器,或任何其它用于存储经编码视频的合适数字存储媒体。目的地装置14可存取存储在存储媒体34或文件服务器36上的经编码视频,解码此经编码视频以产生经解码视频并重放此经解码视频。
文件服务器36可为能够存储经编码视频且将所述经编码视频发射到目的地装置14的任何类型的服务器。实例文件服务器包含网络服务器(例如,用于网站)、FTP服务器、网络附接存储(NAS)装置、本地磁盘驱动器,或能够存储经编码视频数据并将其发射到目的地装置的任何其它类型的装置。经编码视频数据从文件服务器36的发射可为流式发射、下载发射或两者的组合。目的地装置14可根据任何标准数据连接(包含因特网连接)来存取文件服务器36。此连接可包含无线信道(例如,Wi-Fi连接或无线蜂窝式数据连接)、有线连接(例如,DSL、缆线调制解调器等)、有线和无线信道两者的组合,或适合存取存储在文件服务器上的经编码视频数据的任何其它类型的通信信道。
在图1的实例中,目的地装置14包含接收器26、调制解调器28、视频解码器30以及显示装置29。目的地装置14的接收器26经由信道16接收信息,且调制解调器28解调所述信息以为视频解码器30产生经解调位流。经由信道16传送的信息可包含由视频编码器20产生的多种语法信息,以供视频解码器30在解码相关联的经编码视频数据时使用。此语法还可与存储在存储媒体34或文件服务器36上的经编码视频数据包含在一起。视频编码器20和视频解码器30中的每一者可形成能够编码或解码视频数据的相应编码器-解码器(CODEC)的部分。
目的地装置14的显示装置29表示能够呈现视频数据以供观看者消耗的任何类型的显示器。尽管展示为与目的地装置14集成,但显示装置29可与目的地装置14集成或在目的地装置14外部。在一些实例中,目的地装置14可包含集成显示装置,且还经配置以与外部显示装置介接。在其它实例中,目的地装置14可为显示装置。一般来说,显示装置29向用户显示经解码的视频数据,且可包括多种显示装置中的任一者,例如液晶显示器(LCD)、等离子体显示器、有机发光二极管(OLED)显示器或另一类型的显示装置。
本发明还通常涉及视频编码器20将语法信息“用信号通知”给另一装置,例如视频解码器30。然而,应理解,视频编码器20可通过使语法元素与视频数据的各个经编码部分相关联来用信号通知信息。就是说,视频编码器20可通过将某些语法元素存储到视频数据的各个经编码部分的标头来“用信号通知”数据。在一些情况下,在视频解码器30接收并解码此些语法元素之前,可编码和存储此些语法元素(例如,存储到存储媒体34或文件服务器36)。因此,术语“用信号通知”可一般指代用以解码经压缩视频数据的语法或其它数据的通信,不管此通信实时或近实时发生还是在一时间跨度上发生,例如可在编码时将语法元素存储到媒体中时发生,语法元素接着可在被存储到此媒体之后的任何时间由解码装置检索。
视频编码器20和视频解码器30可根据视频压缩标准来操作,例如目前在开发的高效视频译码(HEVC)标准,且可符合HEVC测试模型(HM)。或者,视频编码器20和视频解码器30可根据其它专有或行业标准来操作,例如ITU-T H.264标准,或者称为MPEG-4,部分10,高级视频译码(AVC),或此些标准的扩展。然而,本发明的技术不限于任何特定译码标准。其它实例包含MPEG-2和ITU-T H.263。
HM涉及视频数据的块作为译码单元(CU)。一般来说,CU具有与根据H.264译码的宏块类似的目的,只是CU不具有与H.264的宏块相关联的大小差别。因此,CU可分割为若干子CU。一般来说,本发明中对CU的参考可指代图片的最大译码单元(LCU)或LCU的子CU。举例来说,位流内的语法数据可界定LCU,依据像素数目,其为最大译码单元。可将LCU分割为若干子CU,且每一子CU可分割为若干子CU。用于位流的语法数据可界定LCU可分割的最大次数,称为最大CU深度。因此,位流还可界定最小译码单元(SCU)。
LCU可与分层四分树数据结构相关联。一般来说,四分树数据结构每CU包含一个节点,其中根节点对应于LCU。如果CU分割为四个子CU,那么对应于CU的节点包含对对应于子CU的四个节点中的每一者的参考。四分树数据结构的每一节点可提供用于对应CU的语法数据。举例来说,四分数中的节点可包含分割旗标,指示对应于所述节点的CU是否被分割为子CU。CU的语法元素可递归地界定,且可取决于CU是否分割为子CU。
未分割的CU可包含一个或一个以上预测单元(PU)。一般来说,PU表示对应CU的全部或一部分,且包含用于检索PU的参考样本的数据。举例来说,当PU经帧内模式编码时,PU可包含描述PU的帧内预测模式的数据。作为另一实例,当PU经帧间模式编码时,PU可包含界定PU的一个或一个以上运动向量的数据。运动向量通常识别位于一个或一个以上参考帧中的同一位置的CU,其中术语“参考帧”指代临时出现在PU所位于的帧之前或之后的帧。界定运动向量的数据可描述(例如)运动向量的水平分量、运动向量的垂直分量、运动向量的分辨率(例如,四分之一像素精度或八分之一像素精度)、运动向量指向的参考帧、识别所识别参考帧在当前帧之前还是之后的预测方向,和/或运动向量的参考列表(例如,列表0或列表1)。界定PU的CU的数据还可描述(例如)将CU分为一个或一个以上PU。划分模式可在CU未经译码、经帧内模式编码或经帧间预测模式编码之间不同。
除具有界定一个或一个以上运动向量的一个或一个以上PU之外,CU可包含一个或一个以上变换单元(TU)。遵循使用PU的预测,视频编码器可计算CU的对应于PU的部分的残余值。可变换、量化和扫描残余值。TU不一定限于PU的大小。因此,TU可大于或小于用于同一CU的对应PU。在一些实例中,TU的最大大小可为对应CU的大小。本发明还使用术语“块”来指代CU、PU和/或TU中的任一者或组合。
一般来说,经编码视频数据可包含预测数据和残余数据。视频编码器20可在帧内预测模式或帧间预测模式期间产生预测数据。帧内预测通常涉及相对于同一图片的相邻先前译码块中的参考样本来预测图片的块中的像素值。帧间预测通常涉及相对于先前译码图片的数据来预测图片的块中的像素值。
在帧内或帧间预测之后,视频编码器20可计算所述块的残余像素值。残余值通常对应于块的所预测像素值数据与所述块的真实像素值数据之间的差异。举例来说,残余值可包含指示经译码像素与预测性像素之间的差异的像素差异值。在一些实例中,经译码像素可与待译码像素块相关联,且预测性像素可与用以预测经译码块的一个或一个以上像素块相关联。
为了进一步压缩块的残余值,可将残余值变换为一组变换系数,其将尽可能多的数据(也称为“能量”)压到尽可能少的系数中。变换技术可包括离散余弦变换(DCT)过程或概念上类似的过程、整数变换、小波变换或其它类型的变换。所述变换将像素的残余值从空间域转换为变换域。变换系数对应于通常与原始块相同大小的二维系数矩阵。换句话说,仅存在与原始块中的像素一样多的变换系数。然而,归因于变换,变换系数中的许多可具有等于零的值。
视频编码器20可接着量化变换系数以进一步压缩视频数据。量化通常涉及将相对较大范围内的值映射到相对较小范围内的值,从而减少表示经量化变换系数所需的数据量。更具体地说,可根据可在LCU等级下界定的量化参数(QP)来应用量化。因此,可将相同等级的量化应用于与LCU内的CU的不同PU相关联的TU中的所有变换系数。然而,不同于用信号通知QP本身,可结合LCU来用信号通知QP中的变化(即,增量)。增量QP界定LCU的量化参数相对于某一参考QP(例如先前传送的LCU的QP)的变化。
在量化之后,视频编码器20可扫描变换系数,从而从包含经量化变换系数的二维矩阵产生一维向量。视频编码器20可接着执行统计无损编码(其通常由误称“熵编码”指代)来编码所得阵列以更进一步压缩所述数据。一般来说,熵译码包括一个或一个以上过程,其共同压缩经量化变换系数和/或其它语法信息的序列。举例来说,例如增量QP、预测向量、译码模式、滤波器、偏移或其它信息等语法元素也可包含于经熵译码的位流中。接着将经扫描系数连同任何语法信息一起进行熵译码,例如经由内容自适应可变长度译码(CAVLC)、上下文自适应二进制算术译码(CABAC)或任何其它统计无损译码过程。
如上文所述,图1的实例中所示的系统10的视频编码器20和/或视频解码器30可经配置以分别包含32点DCT-II及其逆(例如32点DCT-III)的实施方案,其中根据本发明中所描述的技术来构造32点DCT-II实施方案。虽然ITU-T H.264标准支持各种块大小的帧内预测,例如针对亮度分量的16×16、8x8、4x4,以及针对色度分量的8x8,但用以改进译码效率的对此标准的修订当前在进行中。由作为MPEG与ITU-T之间的合作的视频译码联合协作小组(JCT-VC)提出的一种经修订标准可称为高效视频译码(HEVC)。在一些例子中,根据本发明的技术构造的类型II32点DCT(“DCT-II”)实施方案可保存译码效率,同时还减小实施方案大小,从而消耗较少的物理板空间且促进电力效率。因此,HEVC和其它演进标准或规范可考虑符合本发明中所述技术的DCT-II和DCT-III实施方案。
根据本发明中所描述的技术,32点DCT-II的实施方案提供不同大小的多个DCT-II。视频编码器20可包含表示此32点DCT-II实施方案的32点DCT-II单元(为了便于说明目的,图1中未图示)。32点DCT-II单元通常执行不同大小的多个或若干经按比例缩放DCT变换,以将内容数据从空间域变换为频域。作为一个实例,32点DCT-II单元可包含执行经按比例缩放变换中的一者的位于32点变换单元的偶数半部中的经按比例缩放16点变换单元,其中所述多个经按比例缩放变换中的第二者界定变换大小16。32点DCT-II单元还可包含执行所述多个经按比例缩放变换中的第三者的位于32点变换单元的奇数半部中的至少一个经按比例缩放8点变换单元,其中经按比例缩放变换中的此一者界定变换大小8。
在这方面,根据本发明的技术而构造的单个32点DCT-II实施方案至少在一些方面中能够执行多个大小的DCT,从而潜在地消除了用以执行类似大小的DCT的单独DCT实施方案。因此,本发明的技术可促进减少所谓的“板空间”的消耗,“板空间”指代硅板上所消耗的物理空间的区域,因为根据所述技术而构造的32点DCT实施方案并入有、嵌套有或以其它方式嵌入有不同大小(例如16和8)的DCT实施方案,而不显著增加32点实施方案的大小。与单独的32、16和8点DCT实施方案的总大小相比,32点DCT-II实施方案在所消耗的物理板空间方面可能显著较小。消耗较少板空间通常转变为电力消耗的减少,且因此,本发明的技术可促成更具能效的DCT实施方案。
根据本发明的技术构造的32点DCT-II的实施方案可经按比例缩放,其中术语“经按比例缩放”指代产生经按比例缩放DCT系数而不是所谓的“全”DCT系数的DCT实施方案。经按比例缩放的DCT实施方案表示将某些因子从实施方案去除的DCT实施方案。一般来说,将这些所去除的因子并入给定译码装置或系统的另一元件、模块或单元中。举例来说,视频编码器可包含根据本发明的技术而构造的经按比例缩放32点DCT实施方案。视频编码器通常将所去除的因子并入到量化单元中,量化单元量化由经按比例缩放32点DCT实施方案输出的经按比例缩放DCT系数。量化单元可通常应用这些因子,而不显著增加量化单元的复杂性,而应用这些因子的全DCT实施方案通常比与应用所述因子的另一模块或单元(例如量化单元)组合的经按比例缩放DCT实施方案复杂。因此经按比例缩放DCT实施方案在某些上下文中可提供降低的实施复杂性,同时提供相同的译码增益。虽然本发明中相对于经按比例缩放DCT实施方案来描述,但所述技术可应用于未按比例缩放或所谓的“全”DCT实施方案。
图2是更详细地说明图1的视频编码器20的框图。视频编码器20可至少部分地形成为一个或一个以上集成电路装置,其可统称为集成电路装置。在一些方面中,视频编码器20可形成无线通信装置手持机或广播服务器的部分。视频编码器20可执行视频帧内的块的帧内和帧间译码。帧内译码依靠空间预测来减少或去除给定视频帧内的视频中的空间冗余。帧间译码依靠时间预测来减少或去除视频序列的邻近帧内的视频中的时间冗余。对于帧间译码,视频编码器20执行运动估计以跟踪匹配的译码单元在邻近帧之间的移动。
如图2中所示,视频编码器20接收待编码视频帧内的当前译码单元31。在图2的实例中,视频编码器20包含运动估计单元32、存储器34、运动补偿单元36、变换单元38、量化单元40、逆量化单元42、逆变换单元44和熵译码单元46。可应用环路中或环路后去块滤波器(未图示)来滤波块以去除成块假影。视频编码器20还包含加法器48和加法器50。图2说明视频编码器20的用于对译码单元进行帧间译码的时间预测组件。尽管为了便于说明而在图2中未展示,但视频编码器20还可包含用于帧内译码一些译码单元的空间预测组件。
运动估计单元32将译码单元31与一个或一个以上邻近视频帧中的CU进行比较,以产生一个或一个以上运动向量,其存储到PU,如上文所述。邻近帧可从存储器34检索,存储器34可包括用以存储从先前经编码块重构的译码单元的任何类型的存储器或数据存储装置。可对各种大小(例如,32×32、32×16、16×32、16×16、16×8、8×16、8×8或较小CU大小)的CU执行运动估计。运动估计单元32例如基于速率失真模型来识别邻近帧中与当前译码单元31最密切地匹配的一个或一个以上CU,且确定邻近帧中的CU与当前译码单元31之间的位移。在此基础上,运动估计单元32产生一个或一个以上运动向量(MV),其指示当前译码单元31与来自用以译码当前译码单元31的参考帧的一个或一个以上匹配CU之间的位移的量值和轨迹。匹配CU将充当用于确定存储到与译码单元31相关联的PU的运动向量的参考。运动估计单元32可将这些PU输出到熵译码单元46,如图2的实例中所示。
运动向量可具有半像素或四分之一像素精度,或更加精细的精度,从而允许视频编码器20以比整数像素位置高的精度来跟踪运动,并获得较佳的预测块。当使用具有分数像素值的运动向量时,在运动补偿单元36中进行内插操作。运动估计单元32确定最佳译码单元分区,且产生运动向量来使用某一准则(例如速率失真模型)来识别CU。举例来说,在双向预测中可存在一个以上运动向量。使用所得CU和运动向量,运动补偿单元36形成所预测视频数据。
视频编码器20通过在加法器48处将由运动补偿单元36产生的所预测视频数据从存储到当前译码单元31的原始视频数据减去来确定残余数据。变换单元38应用产生残余变换块系数的变换。如图2中所示,变换单元38包含32点DCT-II单元52,其实施根据本发明中所述技术构造的32点DCT-II。32点DCT-II单元52表示硬件单元,其在一些例子中执行软件(例如,执行软件代码或指令的数字信号处理器或DSP),其实施能够执行32点DCT-II、16点DCT-II、8点DCT-II和4点DCT-II中的两者或两者以上的32点DCT-II,如本发明中所述。32点DCT-II单元52可包括执行所述技术的集成电路和/或执行指令(或呈计算机程序产品的形式的软件)的一个或一个以上处理器,以实施本发明中所描述的技术。32点DCT-II单元52将这些大小为32、16、8和4的DCT-II中的一者或一者以上应用于残余数据以产生对应大小16、8和/或4的残余变换系数块。32点DCT-II单元52通常将残余数据从表示为残余像素数据的空间域变换为表示为DCT系数的频域。变换系数可包括包含至少一个DC系数以及一个或一个以上AC系数的DCT系数。
在新兴HEVC标准(其可指代HEVC的各种工作草案中的一者)中,可将变换应用于大于16×16的块大小,16×16为先前视频译码标准H.264中的最大块大小。此外,在视频译码过程的此阶段,可将大小与CU的大小不同的变换应用于存储到CU的残余数据。在给定可应用大小与残余视频数据或块的大小不同的变换的情况下,变换单元38可产生上述变换单元(TU),其存储关于应用于残余视频数据的各种变换的信息。变换单元38可将TU输出到熵译码单元46,如图2的实例中所示。
量化单元40量化(舍入)残余变换块系数以进一步减小位速率。如上文所提到,量化单元40通过并入有在因子分解期间去除的内部因子而考虑经按比例缩放32点DCT-II单元52的经按比例缩放性质。因为量化通常涉及乘法,因此将这些因子并入到量化单元40中可不增加量化单元40的实施复杂性。在此方面,将因子从经按比例缩放32点DCT-II单元52去除降低了DCT-II单元52的实施复杂性,而不增加量化单元40的实施复杂性,从而相对于视频编码器20得出实施复杂性的净降低。
熵译码单元46熵译码经量化系数以更进一步减小位速率。熵译码单元46可执行统计无损译码,在一些例子中称为熵译码。熵译码单元46对经量化DCT系数的概率分布建模,且基于所建模的概率分布来选择码簿(例如,CAVLC或CABAC)。使用此码簿,熵译码单元46以压缩经量化DCT系数的方式为每一经量化DCT系数选择代码。为了说明,熵译码单元46可为频繁出现的经量化DCT系数选择短码字(以位计),且为较不频繁出现的经量化DCT系数选择较长码字(以位计)。只要短码字平均使用比经量化DCT系数少的位,熵译码单元46就压缩经量化DCT系数。熵译码单元46输出经熵译码系数,作为发送到视频解码器26的位流。熵译码单元46还可相对于分别从运动估计单元32和变换单元38接收的PU和TU执行无损统计译码。考虑CU包含与经量化残余视频数据块相关联的PU和CU两者,熵译码单元46可有效地执行相对于CU的统计无损编码,从而将经无损统计译码的CU插入到位流中。一般来说,视频解码器26执行逆操作以从位流解码和重构经编码视频,如将参考图3的实例描述。
重构单元42和逆变换单元44重构经量化系数,且分别应用逆变换来重构残余数据。逆变换单元44包含逆DCT(IDCT),其通常称为执行32点DCT-II单元52的逆操作的类型III DCT,类似于下文相对于图3所述的32点DCT-III单元68。此逆32点DCT-II展示为32点DCT-III单元53,其再次可大体上类似于图3的实例中所示的32点DCT-II单元68。32点DCT-III单元68可包括执行所述技术的集成电路和/或执行指令(或呈计算机程序产品的形式的软件)的一个或一个以上处理器,以实施本发明中所述的技术。加法单元50将经重构残余数据与由运动补偿单元36产生的经运动补偿的预测块相加,以产生经重构译码单元以供存储在存储器34中。所述经重构译码单元由运动估计单元32和运动补偿单元36用来编码后续视频帧中的块。
图3是更详细地说明图1的视频解码器26的实例的框图。视频解码器26可至少部分地形成为一个或一个以上集成电路装置,其可统称为集成电路装置。在一些方面中,视频解码器26可形成无线通信装置手持机的部分。视频解码器26可执行视频帧内的块的帧内和帧间解码。如图3中所示,视频解码器26接收已由视频编码器(例如图1和2的实例中所示的视频编码器20)编码的经编码视频位流。
在图3的实例中,视频解码器26包含熵解码单元54、运动补偿单元56、重构单元58、逆变换单元60以及存储器62。熵解码单元64可存取存储在存储器64中的一个或一个以上数据结构以获得在译码中有用的数据。视频解码器26还可包含环路中或环路后去块滤波器(未图示),其对加法器66的输出进行滤波。视频解码器26还包含加法器66。图3说明视频解码器26的用于对译码单元进行帧间解码的时间预测组件。尽管图3中未图示,但视频解码器26还可包含用于对一些译码单元进行帧内解码的空间预测组件。
熵解码单元54接收经编码视频位流,且执行无损统计解码(其通常由误称“熵解码”指代)以从位流解码经量化残余系数和经量化参数,以及其它信息,例如译码模式和运动信息,其可包含运动向量和块分区。在新兴HEVC标准中,熵解码单元54可执行无损统计解码来解码CU的各个部分,例如表示残余视频数据、经译码PU和经译码TU的经熵编码的经量化DCT系数。熵解码单元54将经解码的经量化残余数据和经解码PU输出到运动补偿单元56。运动补偿单元56接收存储运动向量的经解码PU,且执行相对于存储到存储器62的一个或一个以上经重构参考帧的运动补偿以输出所预测视频数据。
重构单元58逆量化(即去量化)经量化块系数。逆变换单元60将逆变换(例如,逆DCT)应用于系数以产生残余数据。更具体地说,逆变换单元60包含32点DCT-III单元68,逆变换单元60将其应用于系数以产生残余数据。32点DCT-III单元68(其为图2的实例中所示的32点DCT-II单元52的逆)可将系数从频域变换为空间域以产生残余数据。类似于上文的量化单元40,重构单元58通过以实施复杂性的很少(如果存在的话)增加将在因子分解期间去除的外部因子并入到重构过程中来考虑32点DCT-III单元68的经按比例缩放性质。将因子从经按比例缩放32点DCT-III单元68去除可降低实施复杂性,从而得出视频解码器26的复杂性的净降低。
接着通过加法器66将预测单元与残余数据相加以形成经解码块。可应用去块滤波器(为了便于说明目的,图3的实例中未展示)来对经解码块进行滤波以去除去块假影。接着将经滤波块放入存储器62中,其提供参考帧以用于解码后续视频帧,且还产生经解码视频以驱动显示装置28(图1)。在一些例子中,可在将帧存储到存储器62以去除假影之后,应用环路后去块滤波器来滤波所述帧。
图4A到4E是更详细地说明32点DCT-II单元52的各个方面的图。在图4A的实例中,32点DCT-II单元52包含吉文斯(Givens)旋转矩阵70、16点DCT-II单元73、第一8点DCT-II单元74A、第二8点DCT-II单元74B以及线性组合(LC)单元71,其各自在下文相对于等式(4)来以数学方式描述。16点DCT-II单元73包含8点DCT-II单元72以及两个4点DCT-II单元76B、76C。在32点DCT-II单元52的顶部半部(其通常称为DCT的“偶数半部”或“偶数部分”)中的8点DCT-II单元72还包含4点DCT-II单元76A。32点DCT-II单元52的下半部或底部半部(其通常称为“奇数半部”或“奇数部分”)包含两个8点DCT-II单元74A、74B,其前面为所谓的吉文斯旋转矩阵70,吉文斯旋转矩阵70将输入x16到x31(在蝶形的应用之后)与整数值A到P相乘。32点DCT-II单元52还包含交叉加性单元72,其将8点DCT-II单元74A、74B的输出交叉相加。虽然图4A的实例中未展示,但8点DCT-II单元74A、74B可形成能够实施16点DCT-IV的16点DCT-IV单元(其可在形式上类似8点DCT-IV单元74(但为其两倍大))或包含于其内。
32点DCT-II单元52接收输入x0到x31,并产生输出X0到X31。蝶形单元70将输入x0到x31重新布置为偶数输入x0、x2、x4、x6、x8、x10、x12、x14、x16、x18、x20、x22、x24、x26、x28和x30以及奇数输入x1、x3、x5、x7、x9、x11、x13、x15、x17、x19、x21、x23、x25、x27、x29和x31,同时还执行相对于偶数输入的交叉相加和相对于奇数输入的交叉相减。蝶形单元70将经交叉相加的偶数输入输出到16点DCT-II单元73,且将经交叉相减的奇数输入输出到8点DCT-II单元74A、74B。在此实例中,32点DCT-II单元56可执行以下大小的DCT中的任一者:32点DCT、16点DCT、8点DCT和4点DCT,并且同时执行两个或三个8点DCT;一个、两个或三个4点DCT与一个或两个8点DCT;或一16点DCT以及一个或两个8点DCT。
相对于吉文斯旋转矩阵70展示的字母A32到P32指代内部因子。虽然在图4A的实例中未以下标数字32来表示,但字母后接数字的命名法指示各个DCT中每一字母所对应于的DCT。因此,A32表示32点DCT的A比例因子。输出X1到X31归因于因子分解过程而由比例参数和另一参数按比例缩放,其中为了便于说明目的,图1的实例中未展示这些因子。可将比例因子和/或其它参数表示为变量“ζ”和“η”中的一者或一者以上。这些因子可并入到后续量化过程中,而不大大增加整个视频译码过程的复杂性。以此方式,本发明中所述的技术可增加效用,同时减少芯片占用面积(或换句话说,减少所谓的板空间),并促进较高效的电力消耗。
图4B是说明16点DCT-II单元73的实例的图。在图4B的实例中,16点DCT-II单元73包含蝶形单元77、8点DCT-II单元72以及8点DCT-IV单元74。8点DCT-II单元72包含4点DCT-II单元76A,而8点DCT-IV单元74包含4点DCT-II单元76B和4点DCT-II单元76C。8点DCT-IV单元74还包含因子乘法单元78和交叉加性单元80,其在下文中相对于图4E的实例更详细地描述。16点DCT-II单元73接收输入x0到x15,并产生输出X0到X15。蝶形单元70将输入x0到x15重新布置为偶数输入x0、x2、x4、x6、x8、x10、x12和x14以及奇数输入x1、x3、x5、x7、x9、x11、x13和x15,同时还执行相对于偶数输入的交叉相加和相对于奇数输入的交叉相减。蝶形单元70将经交叉相加的偶数输入输出到8点DCT-II单元72,且将经交叉相减的奇数输入输出到8点DCT-IV单元74。
图4C是更详细地说明4点DCT-II单元76A到76C中的任一者的实例的图。为了反映图4B的实例中所示的4点DCT-II单元可表示4点DCT-II单元76A到76C中的任一者,通常将图4B的实例中所示的4点DCT-II单元称为4点DCT-II单元76。4点DCT-II单元76包含蝶形单元82,其在功能性上大体上类似于蝶形单元69或77,但在比例方面不同,因为蝶形单元82仅接收四个输入,而不是32或16个。蝶形单元82将输入重新布置为偶数和奇数输入,如由两个上部输出上的“0”和“2”命名法以及两个下部输出上的“1”和“3”命名法所表示。4点DCT-II单元76的对奇数输入操作的部分可称为奇数部分,而对偶数输入操作的部分可称为偶数部分。
在奇数部分中,展示将表示为A和B的两个因子应用于奇数输入(其中当在图4C的上下文外部指代时,这些因子也可表示为A4和B4)。在确定这些因子的值时,设计者可平衡若干关注点。通常,考虑到乘以作为二的幂的因子通常仅涉及二进制系统中的右移,可容易地执行作为二的幂的因子。因此,作为二的幂的因子是有利的,但此些因子可能不足以反映具有足够精度来提供显著译码增益或压缩效率的DCT系数。或者,不为二的幂的因子可提供较大精度,但可能不容易实施,从而增加实施复杂性。此外,较大因子通常提供较多的译码增益,但要求显著较多的存储空间,而较小因子可消耗较少存储空间,但提供较小译码增益。在任一情况下,为任何给定DCT实施方案(例如由4点DCT-II单元76表示的DCT实施方案)选择因子时涉及若干折衷。下文描述更详细地说明这些各种折衷的各种因子组合。
图4D为更详细地说明8点DCT-II单元72的框图。在图4C的实例中,8点DCT-II单元72包含蝶形单元84,其在功能上大体类似于蝶形单元69、77和82,但在比例上不同,考虑蝶形单元84仅接收8个输入,而与之相比,蝶形单元69、77和82分别接收32、16和4个输入。在任何情况下,蝶形单元84将其输入重新布置为偶数和奇数输入,同时还执行交叉相加以产生偶数输入以及交叉相减以产生奇数输入。8点DCT-II单元72的对偶数输入操作的部分可称偶数部分,而对奇数输入操作的部分可称为奇数部分。在此例子中,偶数部分包括所嵌套的4点DCT-II单元76A,其大体上类似于上文相对于图4C的实例而描述的4点DCT-II单元76。
8点DCT-II单元72的奇数部分包含若干个单元86到90,其各自执行各种数学运算。因子乘法单元86在使这些输入乘以因子A、B、C和D(其中当在图4D的上下文的外部指代时,这些因子还可表示为A8、B8、C8和D8)之后执行奇数输入的交叉相加。因子A、B、C和D表示可以上文所述方法修改以促进各种益处的变量。交叉相加单元88以相对于图4C的实例所示之方式执行交叉相加,而交叉相加单元90执行外部相加输入的交叉相加以产生表示为7和1的奇数输出。并且,下文描述更详细说明这些各种折衷的因子的各种组合。
图4E是更详细地说明8点DCT-IV单元74的框图。在图4E的实例中,8点DCT-IV单元74包含(如上文所述)两个4点DCT-II单元76B、76C,其各自可大体上类似于上文相对于图4C的实例所述的4点DCT-II单元76。8点DCT-IV单元74(再次如上文所述)还包含因子乘法单元78和交叉加性单元80。因子乘法单元78使向8点DCT-IV单元74的输入乘以因子H、I、J、K、L、M和N,且一旦乘以所述因子,就将上部四个输入与下部四个输入交叉相加,且将上部四个输入与下部四个输入交叉相减。上部四个输入接着由4点DCT-II单元76B处理,而下部四个输入由4点DCT-II单元76C处理。交叉加性单元80接着交叉相加/相减(其中减法被视为另一种形式的加法)下部七个输入。因子M、N、K、L、I、J、G和H对应于此说明书中其它位置中的A16、B16、C16、D16、E16、F16、G16和H16。
一般来说,上文所述的DCT-II或DCT-IV单元72、74以及76A到76C中的每一者可表示为相对于上文所述的因子A4、B4、A8到D8、A16到H16以及A32到P32的乘法器较少的实施方案。并且,如上文所述,A4和B4指代4点DCT类型II变换的奇数(下部)部分中的蝶形因子。A8到D8指代8点DCT类型II变换的奇数(下部)部分中的蝶形因子。A16到H16指代16点DCT类型II变换的奇数(下部)部分中的蝶形因子。最后,A32到P32(其还可表示为A32到P32)指代16点DCT类型II变换的奇数(下部)部分中的蝶形因子。
32点DCT-II单元52可包括经按比例缩放变换,其中每一输出系数可需要由比例因子标准化。另外,可存在另一比例因子其中N为一维(1D)DCT的大小。为了使32点DCT-II单元52标准正交,额外比例因子可为必要的。对于二维变换,额外比例因子为2/N。对于JCT-VC测试模型,使用变换大小4、8、16和32。在所述情况下,可将此特定比例因子作为位移位(bit-shift)吸收到量化器步长中。后面将详细描述此情况。现在,将更详细地描述32点DCT-II单元52的设计。首先考虑DCT系数矩阵可由以下等式(1)表示。在此论述中,为了阐释的目的,可忽略使DCT标准正交来说有必要的比例因子:
其可根据以下等式(2)因子分解为半大小DCT-II和DCT-IV块:
又可根据以下等式(4)来分割DCT-IV:
其中:
PN是根据以下等式(5)产生重新排序的置换矩阵:
x′i=x2i,x′N/2+i=x2i+1,i=0,1,...,N/2-1, (5)
EN/2是根据以下等式(6)界定的对角正负号更改矩阵:
EN/2=diag{(-1)k},k=0,1,…N/2-1, (6)
RN是如以数学方式由下文的等式(7)界定的吉文斯旋转矩阵:
因此,为了计算N=32点变换,此因子分解将有效地将其分割为:1)驻存在变换的偶数部分中的16点DCT-II,2)变换的奇数部分中的两个8点DCT-II,以及3)由吉文斯旋转矩阵R16暗示的一个16点蝶形。
为了近似表示固定点实施方案中的32点DCT-II变换,吉文斯旋转矩阵R16中的正弦和余弦项可由整数或二进有理数近似表示。可通过选择常数A32到P32来实现此近似表示,使得每一对常数(例如A32、B32或C32、D32)近似表示一对正弦和余弦项。以此方式,可将二进有理数界定为有理数,其中分母为2的幂。举例来说,可选择A32和B32,使得
类似地,可选择C32和D32,使得
可根据下文的等式(8)选择比例因子Z32:
或者,可根据下文的等式(9)选择Z32的值:
通过选择这些因子,所得实施方案可产生经平衡的最差情况近似误差。Z32(如等式8中所指定)的第一条件产生正交32点DCT-II变换设计,而第二条件(如等式9中所指定)产生非正交设计。在实施此设计中,可一路将比例因子Z32移动到图4A中的右手侧。因此,通过近似表示吉文斯旋转矩阵R16中的正弦和余弦项,可获得32点DCT-II的经按比例缩放近似表示。可通过以上文所述的方式确定内部因子A32到P32以及经按比例缩放16点DCT-II73来指定此32点经按比例缩放DCT-II变换52。如图4B中所示,可通过指定参数A4、B4、A8到D8以及A16到H16来指定经按比例缩放16点DCT-II73。
在一个实例中,A16到H16近似表示吉文斯旋转矩阵R8中用于表示16点DCT-II的正弦和余弦项。在此实例中,对应的比例因子为Z16。类似地,A8到D8近似表示吉文斯旋转矩阵R4中用于表示8点DCT-II的正弦和余弦项。对应的比例因子为Z8。另外,A4和B4近似表示吉文斯旋转矩阵R2中用于表示4点DCT-II的正弦和余弦项。对应的比例因子为Z4。参数A4、B4、A8到D8以及A16到H16可满足由以下等式(10)指定的关系:
下文展示的表1提供32点DCT-II变换的这些比例因子的示范性值。这些比例因子可不包含于32点DCT-II单元73内,而是可替代地被去除且并入到量化单元40中。这些比例因子(也称为标准化因子)可通过减少乘法或算术运算的数目来改进实施复杂性。如果这些比例因子被去除,那么32点DCT-II单元72被称为经按比例缩放32点DCT-II单元72,考虑32点DCT-II单元72输出经按比例缩放输出,其需要乘以比例因子以合适地产生准确地表示DCT系数的全、未按比例缩放的输出。如果32点DCT-II单元72保持这些外部因子,那么32点DCT-II单元72被称为全32点DCT-II单元72。取决于上下文,全或经按比例缩放单元可用于32点DCT-II单元72,且本发明的技术不应限于任何类型的全或经按比例缩放实施方案。此外,如先前所述,为2/N的额外比例因子对于N点DCT II变换使其标准正交来说是必要的。
表1
在任何情况下,以上是可为以上内部和标准化因子选择以产生提供各种益处的32点DCT-II单元52的一些示范性实施方案特定值。一般来说,选择内部因子和比例因子的以上值,使得所得DCT矩阵保持正交性质,其由以下等式(11)界定:
CTC=aI (11)
其中C表示全未按比例缩放变换矩阵,且CT表示矩阵C的转置,I为单位矩阵,且a为标量常数。如果常数a取值1,那么矩阵标准正交。一般来说,正交性相对于DCT-II实施方案为所要的,但选择非正交设计可减小内部因子针对类似的近似误差的量值。
对内部因子A4到B4、A8到D8、A16到H16以及A32到P32的各个值的调查提供关于选择这些值中所涉及的折衷的某一指示。开始于4点DCT-II单元76和内部因子A4和B4,在以下表2中陈述这些因子的值的分析。
表2
参看表2,相对于近似误差以及存储内部因子A4和B4所需的位数而展示内部因子A4和B4的值。一般来说,随着内部因子A4和B4的值的大小增加,近似误差减小,且存储其所需的位数增加。
继续相对于8点DCT-II单元72和内部因子A8和D8的调查,在以下表3中陈述这些因子的值的分析。
表3
类似于上文在表2中陈述的分析,随着内部因子A8到D8的值的大小增加,近似误差减小,且存储这些较大值所需的位数增加。
在下文的表4中陈述16点DCT-II单元73的内部因子A16到H16的分析。
表4
类似于上文在表2和3中陈述的分析,随着内部因子A16到H16的值的大小增加,最大近似误差减小,且存储这些较大值所需的位数增加。相对于表4中所陈述的分析,最大近似误差相对于内部因子的前5个组合如此大以致内部因子A16到H16的值的选择在6位、7位和8位近似之间。
对于正交设计的情况,在下文的表5中陈述对32点DCT-II单元52的吉文斯旋转矩阵R1670的内部因子A32到P32的分析。
表5
参数 | B32 | 1 | 1 | 2 | 1 | 1 | 9 | 34 |
D32 | 1 | 1 | 2 | 1 | 1 | 33 | 146 | |
F32 | 1 | 1 | 2 | 1 | 6 | 71 | 251 | |
H32 | 1 | 1 | 2 | 4 | 6 | 89 | 331 | |
J32 | 1 | 1 | 2 | 4 | 6 | 99 | 421 | |
L32 | 1 | 1 | 2 | 4 | 10 | 127 | 538 | |
N32 | 1 | 1 | 2 | 4 | 10 | 159 | 586 | |
P32 | 1 | 1 | 2 | 4 | 10 | 177 | 674 | |
O32 | 1 | 3 | 5 | 7 | 15 | 181 | 757 | |
M32 | 1 | 3 | 5 | 7 | 15 | 197 | 827 | |
K32 | 1 | 3 | 5 | 7 | 15 | 219 | 859 | |
I32 | 1 | 3 | 5 | 7 | 17 | 233 | 922 | |
G32 | 1 | 3 | 5 | 7 | 17 | 237 | 958 | |
E32 | 1 | 3 | 5 | 8 | 17 | 243 | 982 | |
C32 | 1 | 3 | 5 | 8 | 18 | 251 | 1003 | |
A32 | 1 | 3 | 5 | 8 | 18 | 253 | 1013 | |
Z32 | 1.41421 | 3.16228 | 5.38516 | 8.06226 | 18.0278 | 253.16003 | 1013.50742 | |
最大误差 | 0.658039 | 0.355331 | 0.322323 | 0.17542 | 0.116859 | 0.037 | 0.017545 | |
所使用的位 | 1 | 2 | 3 | 4 | 5 | 8 | 10 |
下文的表6呈现当可不需要正交设计时吉文斯旋转矩阵R1670的内部因子A32到P32的分析:
表6
应注意,表2到6中所示的因子分解列表仅为示范性的,且不应被视为详尽的。对内部因子A4、B4、A8到D8、A16到H16以及A32到P32的其它选择是可能的,只要满足如等式(8)(或9)和(10)中所指定的内部因子与比例因子Z4、Z8、Z16和Z32之间的关系即可。在以上调查分析完成的情况下,可通过对来自以上的表2到6的内部因子A4、B4、A8到D8、A16到H16以及A32到P32的值的各种选择来产生若干不同实施方案或设计。
以上的表4到5中所示的若干矩阵系数为可在执行乘以这些较大值所需的运算方面增加实施复杂性的较大值。并且,在图4A中,随着计算从左侧向右进行,位深度可增加。这可在存储缓冲器以及执行算术运算(加法、乘法)的成本方面较昂贵。为了去除这些较大值且平衡变换上的动态范围,可在乘以内部因子之后或等效地在蝶形阶段之后,将右移引入到实施方案中。这可等效于选择内部因子A4、B4、A8到D8、A16到H16以及A32到P32的二进有理数,而不是整数。上文在表7中展示内部因子的一个此选择。应注意,所述右移可为任意正整数。在一些例子中,指定右移的程度时的唯一限制是对于参数A4和B4,右移是相同的。类似地,在一些例子中,分别用于A8到D8的右移应相同。此外,用于A16到H16的右移(再次,在一些例子中)可相同。另外,在一些例子中,用于A32到P32的右移可相同。可独立选择32点、16点、8点和4点变换的奇数部分中的右移。右移将这些整数参数转换为二进有理数。并且,二进有理数指代其中分母为二的幂的有理数。
表7
A4 | B4 | A8 | B8 | C8 | D8 |
17/64 | 41/64 | 111/128 | 22/128 | 94/128 | 63/128 |
A16 | B16 | C16 | D16 | E16 | F16 | G16 | H16 |
232/256 | 29/256 | 224/256 | 67/256 | 203/256 | 116/256 | 181/256 | 148/256 |
A32 | C32 | E32 | G32 | I32 | K32 | M32 | 032 |
1013/1024 | 1003/1024 | 982/1024 | 958/1024 | 922/1024 | 859/1024 | 827/1024 | 757/1024 |
B32 | D32 | F32 | H32 | J32 | L32 | N32 | P32 |
34/1024 | 146/1024 | 251/1024 | 331/1024 | 421/1024 | 538/1024 | 586/1024 | 674/1024 |
在二进有理数内部因子(由于蝶形中的两个因子均共享相同的右移)的情况下,可在蝶形的端部执行右移。在这些例子中,可以同一方式处理整数和二进有理数因子。可接着将蝶形中的乘法转换为移位和加法。表8针对表7中所列的内部因子的示范性值展示此情况。
表8
如果以乘法和加法来实施32点DCT-II,那么可能需要116个乘法和194个加法。此数目通常保持相同,甚至是在选择不同的一组内部因子而不是来自表7的那些因子时也是如此。然而,当实施方案无乘法器时,内部因子的较高量值(例如,如依据位深度来测量)暗示较多的加法和移位。如表7中所示的内部因子的示范性值可能需要348个加法和156个移位来实施32点DCT-II52。内部因子的选择可取决于其中使用这些因子的上下文。用以实施变换的硬件或软件架构、在与32点DCT-II的接近度方面所要的变换准确性以及电力消耗要求是在选择内部因子时可考虑的一些因子。
在H.264和HEVC测试模型(HM)中,量化单元40将量化操作实施为乘以量化矩阵中的元,接着右移。选择量化矩阵中的元以及右移,使得这两个操作一起近似表示除以实际量化器步长。类似地,在解码器侧上存在对应的去量化矩阵和右移。令编码器和解码器上的右移分别由Q_BITS和DQ_BITS表示。在经按比例缩放变换的情况下,以上文所述的方式将比例因子吸收到量化和去量化矩阵中。
对于H.264和HEVC测试模型,量化器步长对于QP的每6个值加倍。因此,对于经按比例缩放的32x32变换,量化和去量化矩阵通常各自需要32x32x6=6144个元。相反,标准正交变换将仅需要存储六个元。然而,通常,为了实施标准正交变换,需要较多乘法,其在计算上可能较昂贵。本发明中所描述的技术可减少所需的存储量,同时维持上文所述的因子分解的计算复杂性优点。
因此,对于32点DCT-II单元52,比例因子可包括上文在表1中陈述的因子。分析表1,对于32点变换,仅存在12个不同比例因子。令QP表示量化器步长参数,考虑以下等式(12):
QPrem=QP%6。 (12)
在以上等式(12)中,模数算子由百分号(%)表示。通常,对于每一QPrem=0,1,...,5,通常将必须存储32x32矩阵。然而,由于仅存在12个不同元,因此对于QPrem=0,1,...,5中的每一者,可仅需要存储12x12矩阵。另外,可需要大小为12的查找表来将位置索引转换为标准化表中的索引。水平和垂直方向使用同一查找表。可选择Q_BITS和DQ_BITS,使得量化矩阵元需要16个位,而去量化矩阵元仅需要8个位。因此,用于量化矩阵、去量化矩阵和查找表的总存储潜在地仅为12x12x6x3+12=2604个字节。
尽管16点、8点和4点变换可能已经存在于32点DCT-II变换的偶数索引的元中,但比例因子可归因于额外比例因子而不同。为了潜在地消除对32点、16点、8点和4点变换的不同量化矩阵的需要,可改变表示量化矩阵的精度的Q_BITS和DQ_BITS。举例来说,如果Q_BITS和DQ_BITS对于4x4变换为10和8,那么对于8x8变换,可分别将其选择为11和9。以此方式,可实现对额外比例因子2/N(用于二维变换)的补偿。对于例如16x16和32x32等每个较高块大小,Q_BITS和DQ_BITS可递增1。这具有如下效果:用于32x32DCT-II变换的量化器和去量化器矩阵可含有较低块大小(4x4、8x8和16x16)的所有矩阵。因此,可需要大小为16、8和4的额外查找表(LUT)。
在一些例子中,上文所述的实施方案可需要大量的存储用于量化。为了减少所需的存储量,所述技术可提供不严格遵守正交性质的实施方案。为了说明,代替于使用等式(8)和(10)来为因子分解选择内部参数,可通过具有分母256的最近二进有理数来近似表示正弦和余弦项。对于由32点DCT类型II的奇数部分中的吉文斯旋转矩阵R16(类似于表20中的那些)暗示的16点蝶形,因子为13、38、62、86、109、132、152、172、190、206、220、231、241、248、253、255。对于由16点DCT类型II的奇数部分中的吉文斯旋转矩阵R8所暗示的8点蝶形,因子为25、74、121、162、198、226、245和255。对于由8点DCT类型II的奇数部分中的吉文斯旋转矩阵R4所暗示的4点蝶形,因子为50、142、213和251。对于类型II的4点DCT的奇数部分,因子为98和236。虽然相对于分母256来描述,但可选择为二的幂的其它分母。在所述情况下,可如上文所述再次类似地得出分子常数以近似表示正弦和余弦。如果将2的较高幂用作分母,那么对正弦和余弦项的近似可较准确,这又意味着所述设计可较接近不限精度32点DCT-II实施方案。如先前所论述,可选择2的不同幂作为R16、R8、R4和R2的分母。当使用内部因子的此设计时,比例因子可由下文表9中的那些因子近似表示。这是可能的,因为(sinθ)2+(cosθ)2=l,且所选的二进有理数为正弦和余弦项的接近近似。
表9
索引 | 标准因子 | 索引 | 标准因子 | 索引 | 标准因子 | 索引 | 标准因子 |
0 | l/sqrt(2) | 8 | 1.0 | 16 | l/sqrt(2) | 24 | 1.0 |
1 | 1.0 | 9 | 1.0 | 17 | l/sqrt(2) | 25 | 1.0 |
2 | 1.0 | 10 | 1.0 | 18 | l/sqrt(2) | 26 | 1.0 |
3 | l/sqrt(2) | 11 | 1.0 | 19 | 1.0 | 27 | l/sqrt(2) |
4 | l/sqrt(2) | 12 | 1.0 | 20 | 1.0 | 28 | l/sqrt(2) |
5 | l/sqrt(2) | 13 | 1.0 | 21 | 1.0 | 29 | l/sqrt(2) |
6 | 1.0 | 14 | l/sqrt(2) | 22 | 1.0 | 30 | 1.0 |
7 | 1.0 | 15 | l/sqrt(2) | 23 | 1.0 | 31 | 1.0 |
从表9可见,对于一维变换现在仅存在两个不同比例因子,1.0和因此,当将这些比例因子吸收到量化和去量化矩阵中时,对于二维情况,量化和去量化矩阵中可能仅存在四个不同数字。因此,通常存储大小为32的一位查找表(LUT)即足以指定两个不同标准化因子中的哪一者将用于所述方向(水平/垂直)上的特定变换系数的标准化。同一LUT可用以指定另一方向上的标准化因子。因此,对于QP中的每一增量,可能必须为量化矩阵以及去量化矩阵存储四个不同值。因此,量化矩阵大小可包含2×2×6=24个元,且去量化矩阵也同样。
对于正交设计,可存在12个不同比例因子,而已描述了对于一维变换仅具有两个不同比例因子的设计。使不同比例因子的数目在二与12之间是可能的。举例来说,如果正交设计对4点和8点DCT-II变换保持,但根据上述方法来选择对应于R8和R16的内部因子,那么存在5个不同比例因子。这些因子为1、和这表示存储内部因子所需的存储量、正交性和位深度之间的折衷。下文在表10中展示内部因子的此选择。在此情况下,量化以及去量化矩阵可包含5×5×6=150个元。类似地,如果正交设计对4点、8点和16点DCT-II变换保持,但根据上述方法选择对应于R16的内部因子,那么仅存在7个不同比例因子。在此情况下,量化以及去量化矩阵可包含7×7×6=294个元。因此,通过选择正交设计对其维持的块大小的数目,可改变用于量化和去量化矩阵的存储量。
表10
A4 | B4 | A8 | B8 | C8 | D8 |
17/64 | 41/64 | 111/128 | 22/128 | 94/128 | 63/128 |
A16 | B16 | C16 | D16 | E16 | F16 | G16 | H16 |
1019/1024 | 100/1024 | 980/1024 | 297/1024 | 903/1024 | 483/1024 | 792/1024 | 650/1024 |
A32 | C32 | E32 | G32 | I32 | K32 | M32 | O32 |
1023/1024 | 1013/1024 | 993/1024 | 964/1024 | 926/1024 | 878/1024 | 822/1024 | 759/1024 |
B32 | D32 | F32 | H132 | J32 | L32 | N32 | P32 |
50/1024 | 150/1024 | 249/1024 | 345/1024 | 438/1024 | 526/1024 | 610/1024 | 688/1024 |
为了说明可如何使用此LUT,考虑以下步骤。在第一步骤中,量化单元40对水平索引使用一位LUT以得出Hor_Bit(0或1)。零对应于标准化因子1.0,且一对应于标准化因子在第二步骤中,量化单元40对垂直索引使用一位LUT以得出Ver_Bit(0或1)。量化单元40接着使用Hor_Bit和Ver_Bit以及QP值来在量化和去量化矩阵中查找适当的元。以此方式,所述技术可与提供类似误差等级的其它设计或实施方案相比维持相对计算复杂性,而不较大增加存储要求(和相关联成本)。
虽然图4的实例中相对于DCT-II单元来描述,但此DCT-II单元还可表示根据本发明的技术而构造的IDCT。从图4的实例中所示的实施方案形成逆DCT涉及使输入和输出反向,使得输入由图4右侧的实施方案接收,且输出在所述实施方案的左侧输出。换句话说,使关于垂直存取的实施方案反转使得输入接着成为输出且输出成为输入将通常产生IDCT实施方案。为了便于说明目的且考虑从DCT形成IDCT是此项技术中众所周知的,不在单独的图中展示这些额外IDCT实施方案。
图5是说明译码装置(例如图2的视频编码器20)在应用根据本发明的技术构造的32点DCT实施方案时的示范性操作的流程图。最初,视频编码器20接收待编码的视频帧内的当前译码单元31(90)。运动估计单元32执行运动估计以将译码单元31与一个或一个以上邻近视频帧中的块进行比较,以产生一个或一个以上运动向量(92)。可从存储器34检索邻近帧。可对可变大小(例如64×64、32×32、16×16、16×8、8×16、8×8、4×4或较小块大小)的块执行运动估计。运动估计单元32例如基于速率失真模型来识别邻近帧中与当前译码单元31最密切地匹配的一个或一个以上块,且确定邻近帧中的块与当前译码单元之间的位移。在此基础上,运动估计单元32产生一个或一个以上运动向量(MV),其指示当前译码单元31与来自用以译码当前译码单元31的参考帧的一个或一个以上匹配块之间的位移的量值和轨迹。匹配块将充当用于待译码块的帧间译码的预测性(或预测)块。
运动向量可具有半像素或四分之一像素精度,或更加精细的精度,从而允许视频编码器20以比整数像素位置高的精度来跟踪运动,并获得较佳的预测块。当使用具有分数像素值的运动向量时,在运动补偿单元36中进行内插操作。运动估计单元32使用某一准则(例如速率失真模型)来识别译码单元的最佳块分区以及运动向量。举例来说,在双向预测中可存在一个以上运动向量。使用所得块分区和运动向量,运动补偿单元36形成预测单元(94)。
视频编码器20通过在加法器48处将运动补偿单元36所产生的预测单元从原始的当前译码单元31减去来形成残余译码单元(96)。变换单元38应用产生残余变换块系数的变换。变换单元38包含根据本发明所述的技术来配置的32点DCT-II单元52。变换单元38调用经按比例缩放32点DCT-II单元52以将给定大小的一个或一个以上DCT-II应用于残余数据以便以上文所述的方式产生对应大小的残余变换系数块。参看图4A到4E的实例,32点DCT-II单元52可调用16点DCT-II单元73和8点DCT-II单元74A、74B中的一者或一者以上来同时应用一个或一个以上16点DCT-II和8点DCT-II。或者,32点DCT-II单元52可调用8点DCT-II单元73、4点DCT-II单元76B、76C以及8点DCT-II单元74A、74B中的一者或一者以上来同时应用一个或一个以上8点DCT和4点DCT-II。在又一替代方案中,32点DCT-II单元52可调用单元73、74A和74B以应用32点DCT-II。在另一替代方案中,32点DCT-II单元52可调用4点DCT-II单元76A到76C以及8点DCT-II单元74A、74B中的一者或一者以上来应用一个或一个以上4点DCT-II和8点DCT-II。32点DCT-II单元52通常将残余数据从空间域(其表示为残余像素数据)变换为频域(其表示为DCT系数)。以此方式,32点DCT-II单元52将一个或一个以上对应大小的DCT-II应用于残余数据以确定DCT系数(98)。变换系数可包括包含至少一个DC系数以及一个或一个以上AC系数的DCT系数。
量化单元40量化(舍入)残余变换块系数以进一步减小位速率(100)。如上文所提到,量化单元40通过并入有在因子分解期间去除的因子而考虑经按比例缩放32点DCT-II单元52的经按比例缩放性质。因为量化通常涉及乘法,因此将这些因子并入到量化单元40中可不增加量化单元40的实施复杂性。在此方面,将因子从经按比例缩放32点DCT-II单元52去除可以上文所述的方式降低DCT-II单元52的实施复杂性,而不增加量化单元40的实施复杂性,从而相对于视频编码器20得出实施复杂性的净降低。
熵译码单元46对经量化系数进行熵译码以更进一步减小位速率。熵译码单元46执行统计无损译码,在一些例子中称为熵译码,以产生经译码位流(102)。熵译码单元46对经量化DCT系数的概率分布建模,且基于所建模的概率分布来选择码簿。使用此码簿,熵译码单元46以压缩经量化DCT系数的方式为每一经量化DCT系数选择代码。熵译码单元46输出经熵译码的系数,作为存储到存储器或存储装置且/或发送到视频解码器26的经译码位流(104)。
重构单元42和逆变换单元44分别重构经量化系数,且应用逆变换来重构残余数据。并且,逆变换单元44可包含逆DCT(IDCT),其通常称为执行32点DCT-II单元73的逆操作的类型III DCT,类似于下文相对于图3所述的32点DCT-III单元68。加法单元50将经重构残余数据与由运动补偿单元36产生的经运动补偿预测块相加,以产生经重构译码单元供存储在存储器34中。经重构译码单元由运动估计单元32和运动补偿单元36用来编码后续视频帧中的块。
图6是说明译码装置(例如图3的视频解码器26)在应用根据本发明的技术配置的32点DCT-III时的实例操作的流程图。视频解码器26接收已由视频编码器20编码的经编码视频位流。明确地说,熵解码单元54接收经编码视频位流,并从所述位流解码经量化残余系数和经量化参数以及其它信息,例如宏块译码模式和运动信息,其可包含运动向量和块分区(106、108)。运动补偿单元56从存储器62接收运动向量和块分区以及一个或一个以上经重构参考帧以产生预测单元(110)。
重构单元58逆量化(即去量化)经量化块系数(112)。逆变换单元60将逆变换(例如,逆DCT)应用于系数以产生残余数据。更具体地说,逆变换单元60包含经按比例缩放的32点DCT-III单元68,逆变换单元60调用经按比例缩放的32点DCT-III单元68来处理系数,从而产生残余数据(114)。经按比例缩放的32点DCT-III单元68(其为图2中所示的经按比例缩放的32点DCT-II单元52的逆)可以上文所述的方式将系数从频域变换为空间域以产生残余数据。类似于上文的量化单元40,重构单元58通过以实施复杂性的很少(如果存在的话)增加将在因子分解期间去除的外部因子并入到重构过程中来考虑32点DCT-III单元68的经按比例缩放性质。将因子从经按比例缩放32点DCT-III单元68去除可降低实施复杂性,从而得出视频解码器26的复杂性的净降低。
接着通过加法器66将预测单元与残余数据相加以形成经解码块(116)。可应用去块滤波器(未图示)来对经解码块进行滤波以去除成块假影。接着将经滤波块放入存储器62中,其提供参考帧以用于解码后续视频帧,且还产生经解码视频以驱动显示装置(例如图1的显示装置28)(118)。
图7A到7E是说明图2的32点DCT-II单元52的另一示范性实施方案的各个方面的图。在图4A到4E中,使用蝶形来展示32点DCT-II单元52的实例实施方案,其中出于上文所述的原因,此示范性实施方案不涉及很多(如果存在的话)矩阵乘法。换句话说,32点DCT-II单元52可实施上文所述的各种大小的变换,而不执行矩阵乘法。然而,DCT-II单元的所谓的“局部蝶形”实施方案已采用到新兴HEVC标准的工作草案和测试模型(HM5.0)中,且可相对于这些局部蝶形实施方案来实施本发明中所述的技术。局部蝶形DCT-II实施方案可涉及分解为蝶形阶段(其还可称为“和与差”阶段)接着为对偶数部分的大小为N/2的变换的组合,其中N表示DCT-II的大小。对于奇数部分,使用N/2点矩阵乘法,而不是上文相对于图4D、4E的实例所示的蝶形实施方案。
举例来说,所提出的局部蝶形8点DCT需要4x4矩阵乘法,其在计算复杂性方面可能不是非常昂贵,即使在使用通用乘法器时也是如此。然而,当使用局部蝶形实施方案时,16点和32点变换分别需要8x8和16×16矩阵乘法。这在硬件面积方面可能较昂贵,且还可影响电力节省,对于移动或电池供电装置来说尤其如此。可相对于这些局部蝶形DCT-II实施方案来实施所述技术以通过以上文所述且在一个例子中相对于图4A到4E的实例所示的方式嵌套这些局部蝶形DCT-II实施方案来潜在地减少板空间的消耗。
图7A是展示图2的实例中所示的32点DCT-II单元52的实例局部蝶形(PB)实施方案119的图。在图7A的实例中,32点DCT-II单元119包含大体上类似的蝶形单元69、吉文斯旋转矩阵70以及线性组合(LC)单元71,如上文相对于图4A的实例中所示的DCT-II单元52的蝶形实施方案所示的那些单元。然而,32点PB DCT-II单元119包含偶数部分中的16点PB DCT-II单元120,以及奇数部分中的两个8点PB DCT-II单元122A、122B。16点PB DCT-II单元120进一步包含偶数部分中的8点PB DCT-II单元122C,以及奇数部分中的两个4点PB DCT-II单元124A、124B。8点PB DCT-II单元122C还包含其偶数部分中的4点PB DCT-II单元124C。
在一些例子中,图2右侧的标量和标准化因子可改变。此改变归因于具有大致相同标准的PB单元中所使用的基础函数。因此16点变换的上半部中的所有变换系数均将具有单个标准化因子。类似地,对于16点变换的下半部中的变换系数,将存在单个比例因子。此比例因子将考虑PB变换的比例因子以及因吉文斯旋转矩阵R8中的蝶形因子而产生的比例因子Z16。因此,可仅存在2个不同比例因子或标准化因子来使变换标准正交。通过在上半部中再用上文所述的16点变换且在下半部中使用8点PB变换和吉文斯旋转矩阵R16,同一概念可扩展为32点变换。在此情况下,可需要3个不同的比例因子或标准化因子来使变换标准正交。
图7B是更详细地展示图7A的实例中所示的16点PB DCT-II单元120的图。16点PB DCT-II单元120包含蝶形单元77、78以及吉文斯旋转矩阵80,其大体上类似于图4B的实例中所示的16点DCT-II73。然而,不是包含4点DCT-II单元76和8点DCT-II单元72的蝶形实施方案,16点PB DCT-II单元120包含上文所述的4点局部蝶形(PB)DCT-II单元124A到124C以及8点PB DCT-II单元122C。下部或奇数4点PB DCT-II单元124A、124B还可形成8点DCT-IV单元125,其类似于上文相对于图4B的实例中所示的16点DCT-II单元73所述的单元。
图7C是更详细地展示4点PB DCT-II单元124的图。在图7C的实例中,4点PBDCT-II单元124与图4C的实例中所示的4点DCT-II单元76的类似之处在于4点PBDCT-II单元124包含蝶形单元82。蝶形单元82将输入重新布置为偶数和奇数输入,如由两个上部输出上的“0”和“2”命名法以及两个下部输出上的“1”和“3”命名法所表示。4点PB DCT-II单元124的对奇数输入操作的部分可称为奇数部分,而对偶数输入操作的部分可称为偶数部分。
4点PB DCT-II单元124的偶数部分大体上类似于上文相对于4点DCT-II单元76所述的部分。在奇数部分中,不是包含蝶形,而是4点PB DCT-II单元124包含矩阵乘法单元(MMU)130(“MMU130”)。矩阵乘法单元130可对奇数输入执行矩阵乘法。MMU130中的矩阵的用以执行乘法的系数可如下文的表11中所示。此矩阵用于最新的HEVC测试模型(HM5.0)中。在矩阵乘法阶段之后引入右移来标准化输出值可为必要的。
表11
83 | 36 |
36 | -83 |
图7D是更详细地说明8点PB DCT-II单元122的框图。在图7D的实例中,8点PBDCT-II单元122包含蝶形单元84,其大体上类似于上文相对于图4D的实例中所示的8点DCT-II单元72所述的蝶形单元84。在任何情况下,蝶形单元84将其输入重新布置为偶数和奇数输入,同时还执行交叉相加以产生偶数输入以及交叉相减以产生奇数输入。8点PB DCT-II单元122的对偶数输入操作的部分可称偶数部分,而对奇数输入操作的部分可称为奇数部分。在此例子中,偶数部分包括所嵌套的4点PB DCT-II单元124C,其大体上类似于上文相对于图7C的实例而描述的4点DCT-II单元124。
8点PB DCT-II单元122的偶数部分大体上类似于上文相对于8点DCT-II单元72所述的部分。然而,在奇数部分中,不是包含蝶形,而是8点PB DCT-II单元122包含矩阵乘法单元(MMU)132(“MMU132”)。矩阵乘法单元132可对奇数输入执行矩阵乘法。MMU132中的矩阵的用以执行乘法的系数可如下文的表12中所示。此矩阵用于最新的HEVC测试模型(HM5.0)中。在矩阵乘法阶段之后引入右移来标准化输出值可为必要的。
表12
89 | 75 | 50 | 18 |
75 | -18 | -89 | -50 |
50 | -89 | 18 | 75 |
18 | -50 | 75 | -89 |
图7E是更详细地说明8点PB DCT-IV单元125的框图。在图7E的实例中,8点PB DCT-IV单元125包含(如上文所述)两个4点DCT-II单元124A、124B,其各自可大体上类似于上文相对于图7C的实例所述的4点DCT-II单元124。8点DCT-IV单元125(再次如上文所述)还包含因子乘法单元78和交叉加性单元80。因子乘法单元78使向8点DCT-IV单元125的输入乘以因子H、I、J、K、L、M和N,且一旦乘以所述因子,就将上部四个输入与下部四个输入交叉相加,且将上部四个输入与下部四个输入交叉相减。上部四个输入接着由4点DCT-II单元124A处理,而下部四个输入由4点DCT-II单元124B处理。交叉加性单元80接着交叉相加/相减(其中减法被视为另一种形式的加法)下部七个输入。
虽然上文相对于包含一个或一个以上经嵌套16点DCT-II和DCT-III和8点DCT-II和DCT-III以及一个或一个以上经嵌套4点DCT-II和DCT-III的大小为32的DCT-II和DCT-III来描述,但所述技术不应限于这些特定大小。代替的是,所述技术可应用于任何大小的任何DCT-II或DCT-III,其包含较小大小的经嵌套DCT-II和DCT-III。因此,所述技术在这方面不应限于本发明中所陈述的实例。
本发明的技术可在各种各样的装置或设备中实施,包含无线通信装置手持机(例如移动电话)、集成电路(IC)或一组IC(即,芯片组)。提供已描述的任何组件、模块或单元是为了强调功能方面,且不一定要求通过不同硬件单元来实现。本文所述的技术还可以硬件或硬件、软件、固件的任何组合来实施。描述为模块、单元或组件的任何特征可在集成逻辑装置中一起实施,或作为离散但可互操作的逻辑装置单独实施。在一些情况下,可将各种特征实施为集成电路装置,例如集成电路芯片或芯片组。
如果以软件实施,那么所述技术可至少部分地由包括指令的计算机可读媒体实现,所述指令在处理器中执行时,实施上文所述方法中的一者或一者以上。计算机可读媒体可包括计算机可读存储媒体(其为物理非暂时结构),且可形成可包含封装材料的计算机程序产品的一部分。计算机可读存储媒体可包括例如同步动态随机存取存储器(SDRAM)等随机存取存储器(RAM)、只读存储器(ROM)、非易失性随机存取存储器(NVRAM)、电可擦除可编程只读存储器(EEPROM)、快闪存储器、磁性或光学数据存储媒体等。
代码或指令可由一个或一个以上处理器执行,例如一个或一个以上数字信号处理器(DSP)、通用微处理器、专用集成电路(ASIC)、现场可编程逻辑阵列(FPGA),或其它等效集成或离散逻辑电路。因此,术语“处理器”在用于本文中时可指代适合实施本文所述技术的前述结构或任何其它结构中的任一者。另外,在一些方面中,本文所述的功能性可提供于经配置以用于编码和解码或并入到组合式视频编解码器中的专用软件模块或硬件模块内。并且,可将所述技术完全实施于一个或一个以上电路或逻辑元件中。
本发明还预期包含用以实施本发明中所述的技术中的一者或一者以上的电路的多种集成电路装置中的任一者。此电路可提供于单个集成电路芯片中或所谓的芯片组中的多个可互操作集成电路芯片中。此些集成电路装置可用于多种应用中,其中的一些可包含在无线通信装置(例如移动电话手持机)中的使用。
已描述了所述技术的各个方面。这些和其它方面在所附权利要求书的范围内。
Claims (74)
1.一种用于将内容数据从空间域变换为频域的方法,所述方法包括:
用经按比例缩放32点变换单元执行不同大小的多个经按比例缩放变换中的一者或一者以上,以将所述内容数据从所述空间域变换为所述频域,其中所述经按比例缩放32点变换单元执行所述多个经按比例缩放变换中大小为32的第一者,且
其中所述经按比例缩放32点变换单元包含:
位于所述32点变换单元的偶数半部中的经按比例缩放16点变换单元,其执行所述多个经按比例缩放变换中的第二者,所述多个经按比例缩放变换中的所述第二者界定变换大小16;以及
位于所述32点变换单元的奇数半部中的至少一个经按比例缩放8点变换单元,其执行所述多个经按比例缩放变换中的第三者,所述多个经按比例缩放变换中的所述第三者界定变换大小8。
2.根据权利要求1所述的方法,其中所述多个经按比例缩放变换近似表示多个经按比例缩放离散余弦变换DCT。
3.根据权利要求1所述的方法,其中所述经按比例缩放16点变换单元以及所述至少一个经按比例缩放8点变换单元各自同时执行所述多个经按比例缩放变换中大小为16和8的一者,以将所述内容数据的不同部分从所述空间域变换为所述频域。
4.根据权利要求1所述的方法,
其中所述经按比例缩放16点变换单元包含第一8点变换单元、第一4点变换单元和第二4点变换单元,
其中所述至少一个经按比例缩放8点变换单元包含第二8点变换单元和第三8点变换单元,且
其中执行不同大小的多个经按比例缩放变换中的一者或一者以上包括分别用所述第一、第二和第三8点变换单元以及所述第一和第二4点变换单元中的一者或一者以上同时执行所述多个经按比例缩放变换中大小为8和4的两者或两者以上。
5.根据权利要求4所述的方法,
其中所述第一、第二和第三8点变换单元各自执行所述多个经按比例缩放变换中的一者,而不执行矩阵乘法,也不使用蝶形与矩阵乘法的组合,且
其中所述第一和第二4点变换单元各自执行所述多个经按比例缩放变换中的一者,而不执行矩阵乘法,也不使用蝶形与矩阵乘法的组合。
6.根据权利要求4所述的方法,
其中所述第一8点变换单元还包含第三4点变换单元,
其中执行不同大小的多个经按比例缩放变换中的一者或一者以上包括用所述第一、第二和第三4点变换单元同时执行所述多个经按比例缩放变换中大小为4的三者,以及用所述第二和第三8点变换单元同时执行所述多个经按比例缩放变换中大小为8的两者。
7.根据权利要求6所述的方法,其中所述第三4点变换单元执行所述多个经按比例缩放变换中的一者,而不执行矩阵乘法,也不使用蝶形与矩阵乘法的组合。
8.根据权利要求1所述的方法,
其中执行不同大小的多个经按比例缩放变换中的所述一者或一者以上包括用经按比例缩放32点变换单元执行不同大小的多个经按比例缩放变换中的一者或一者以上,以将所述内容数据从所述空间域变换为所述频域,从而输出经按比例缩放变换系数,且
其中所述方法进一步包括用量化单元将比例因子应用于所述经按比例缩放变换系数,以便产生经量化全变换系数。
9.根据权利要求8所述的方法,其中应用所述比例因子包括使用包含于所述量化单元内的查找表LUT来应用所述比例因子,所述查找表存储所述经按比例缩放变换系数与量化矩阵的条目之间的映射。
10.根据权利要求9所述的方法,
其中所述量化矩阵的大小小于为所述经按比例缩放变换系数中的每一者指定比例因子的全量化矩阵,且
其中所述量化矩阵的所述大小取决于内部因子。
11.根据权利要求1所述的方法,
其中所述经按比例缩放16点变换单元执行所述多个经按比例缩放变换中的所述第二者,而不执行矩阵乘法,也不使用蝶形与矩阵乘法的组合,且
其中所述至少一个经按比例缩放8点变换单元执行所述多个经按比例缩放变换中的所述第三者,而不执行矩阵乘法,也不使用蝶形与矩阵乘法的组合。
12.根据权利要求1所述的方法,
其中所述内容数据包括视频数据块,
其中所述方法进一步包括:
相对于所述视频数据块执行运动估计,以识别所述视频数据的参考块且基于视频数据的所述所识别参考块来产生运动向量;
执行运动补偿以基于所述运动向量确定预测块;
将所述预测块与所述视频数据块进行比较以产生残余视频数据块,
其中执行不同大小的多个经按比例缩放变换中的一者或一者以上包括执行所述不同大小的多个经按比例缩放变换中的所述一者或一者以上,以将所述残余视频数据块从所述空间域变换为所述频域;
量化所述经变换残余视频数据块以产生经量化视频数据块;以及
执行统计译码以译码所述经量化视频数据块且产生经译码视频数据块。
13.一种设备,其包括:
用于执行不同大小的多个经按比例缩放变换以将内容数据从空间域变换为频域的装置,其中所述用于执行所述不同大小的多个经按比例缩放变换的装置执行所述多个经按比例缩放变换中的第一者,所述多个经按比例缩放变换中的所述第一者界定变换大小32,
其中所述用于执行所述不同大小的多个经按比例缩放变换的装置包含:
位于所述用于执行所述多个经按比例缩放变换的装置的偶数半部中的装置,其用于执行所述多个经按比例缩放变换中的第二者,所述多个经按比例缩放变换中的所述第二者界定变换大小16;以及
位于所述用于执行所述多个经按比例缩放变换的装置的奇数半部中的装置,其用于执行所述多个经按比例缩放变换中的第三者,所述多个经按比例缩放变换中的所述第三者界定变换大小8。
14.根据权利要求13所述的设备,其中所述多个经按比例缩放变换近似表示多个经按比例缩放离散余弦变换DCT。
15.根据权利要求13所述的设备,其中所述用于执行所述多个经按比例缩放变换中的所述第二者的装置以及用于执行所述多个经按比例缩放变换中的所述第三者的装置各自同时执行所述多个经按比例缩放变换中大小为16和8的一者,以将所述内容数据的不同部分从所述空间域变换为所述频域。
16.根据权利要求13所述的设备,
其中所述用于执行所述多个经按比例缩放变换中的所述第二者的装置包含第一8点变换单元、第一4点变换单元和第二4点变换单元,
其中所述用于执行所述多个经按比例缩放变换中的所述第三者的装置包含第二8点变换单元和第三8点变换单元,且
其中所述第一、第二和第三8点变换单元以及所述第一和第二4点变换单元中的一者或一者以上分别同时执行所述多个经按比例缩放变换中大小为8和4的两者或两者以上。
17.根据权利要求16所述的设备,
其中所述第一、第二和第三8点变换单元各自执行所述多个经按比例缩放变换中的一者,而不执行矩阵乘法,也不使用蝶形与矩阵乘法的组合,且
其中所述第一和第二4点变换单元各自执行所述多个经按比例缩放变换中的一者,而不执行矩阵乘法,也不使用蝶形与矩阵乘法的组合。
18.根据权利要求16所述的设备,
其中所述第一8点变换单元还包含第三4点变换单元,
其中所述第一、第二和第三4点变换单元以及所述第二和第三8点变换单元同时执行所述多个经按比例缩放变换中大小为4的三者以及所述多个经按比例缩放变换中大小为8的两者。
19.根据权利要求18所述的设备,其中所述第三4点变换单元执行所述多个经按比例缩放变换中的一者,而不执行矩阵乘法,也不使用蝶形与矩阵乘法的组合。
20.根据权利要求13所述的设备,
其中所述用于执行所述多个经按比例缩放变换的装置包括用于执行不同大小的多个经按比例缩放变换中的一者或一者以上以将所述内容数据从所述空间域变换为所述频域从而输出经按比例缩放变换系数的经按比例缩放装置,且
其中所述方法进一步包括用于将比例因子应用于所述经按比例缩放变换系数以便产生经量化全变换系数的量化装置。
21.根据权利要求20所述的设备,其中所述用于应用所述比例因子的量化装置包括用于使用包含于量化单元内的查找表LUT来应用所述比例因子的量化装置,所述查找表存储所述经按比例缩放变换系数与量化矩阵的条目之间的映射。
22.根据权利要求21所述的设备,
其中所述量化矩阵的大小小于为所述经按比例缩放变换系数中的每一者指定比例因子的全量化矩阵,且
其中所述量化矩阵的所述大小取决于内部因子。
23.根据权利要求13所述的设备,
其中所述用于执行所述多个经按比例缩放变换中的所述第二者的装置执行所述多个经按比例缩放变换中的所述第二者,而不执行矩阵乘法,也不使用蝶形与矩阵乘法的组合,且
其中所述用于执行所述多个经按比例缩放变换中的所述第三者的装置执行所述多个经按比例缩放变换中的所述第三者,而不执行矩阵乘法,也不使用蝶形与矩阵乘法的组合。
24.根据权利要求13所述的设备,
其中所述内容数据包括视频数据块,
其中所述设备进一步包括:
用于相对于所述视频数据块执行运动估计以识别所述视频数据的参考块且基于视频数据的所述所识别参考块来产生运动向量的装置;
用于执行运动补偿以基于所述运动向量确定预测块的装置;
用于将所述预测块与所述视频数据块进行比较以产生残余视频数据块的装置,
其中所述用于执行不同大小的多个经按比例缩放变换中的一者或一者以上的装置包括用于执行所述不同大小的多个经按比例缩放变换中的所述一者或一者以上以将所述残余视频数据块从所述空间域变换为所述频域的装置;
用于量化所述经变换残余视频数据块以产生经量化视频数据块的装置;以及
用于执行统计译码以译码所述经量化视频数据块且产生经译码视频数据块的装置。
25.一种设备,其包括:
经按比例缩放32点变换单元,其执行不同大小的多个经按比例缩放变换,以将内容数据从空间域变换为频域,其中所述经按比例缩放32点变换单元执行所述多个经按比例缩放变换中的第一者,所述多个经按比例缩放变换中的所述第一者界定变换大小32,
其中所述32点变换单元包含:
位于所述32点变换单元的偶数半部中的经按比例缩放16点变换单元,其执行所述多个经按比例缩放变换中的第二者,所述多个经按比例缩放变换中的所述第二者界定变换大小16;以及
位于所述32点变换单元的奇数半部中的至少一个经按比例缩放8点变换单元,其执行所述多个经按比例缩放变换中的第三者,所述多个经按比例缩放变换中的所述第三者界定变换大小8。
26.根据权利要求25所述的设备,其中所述多个经按比例缩放变换近似表示多个经按比例缩放离散余弦变换DCT。
27.根据权利要求25所述的设备,其中所述经按比例缩放16点变换单元以及所述至少一个经按比例缩放8点变换单元各自同时执行所述多个经按比例缩放变换中大小为16和8的一者,以将所述内容数据的不同部分从所述空间域变换为所述频域。
28.根据权利要求25所述的设备,
其中所述经按比例缩放16点变换单元包含第一8点变换单元、第一4点变换单元和第二4点变换单元,
其中所述至少一个8点变换单元包含第二8点变换单元和第三8点变换单元,且
其中所述第一、第二和第三8点变换单元以及所述第一和第二4点变换单元中的一者或一者以上分别同时执行所述多个经按比例缩放变换中大小为8和4的两者或两者以上。
29.根据权利要求28所述的设备,
其中所述第一、第二和第三8点变换单元各自执行所述多个经按比例缩放变换中的一者,而不执行矩阵乘法,也不使用蝶形与矩阵乘法的组合,且
其中所述第一和第二4点变换单元各自执行所述多个经按比例缩放变换中的一者,而不执行矩阵乘法,也不使用蝶形与矩阵乘法的组合。
30.根据权利要求28所述的设备,
其中所述第一8点变换单元还包含第三4点变换单元,
其中所述第一、第二和第三4点变换单元以及所述第二和第三8点变换单元同时执行所述多个经按比例缩放变换中大小为4的三者以及所述多个经按比例缩放变换中大小为8的两者。
31.根据权利要求30所述的设备,其中所述第三4点变换单元执行所述多个经按比例缩放变换中的一者,而不执行矩阵乘法,也不使用蝶形与矩阵乘法的组合。
32.根据权利要求25所述的设备,
其中所述经按比例缩放32点变换单元输出经按比例缩放变换系数,且
其中所述设备进一步包括量化单元,其将比例因子应用于所述经按比例缩放变换系数以便产生经量化全变换系数。
33.根据权利要求32所述的设备,其中所述量化单元使用包含于所述量化单元内的查找表LUT来应用所述比例因子,所述查找表存储所述经按比例缩放变换系数与量化矩阵的条目之间的映射。
34.根据权利要求33所述的设备,
其中所述量化矩阵的大小小于为所述经按比例缩放变换系数中的每一者指定比例因子的全量化矩阵,且
其中所述量化矩阵的所述大小取决于内部因子。
35.根据权利要求25所述的设备,
其中所述经按比例缩放16点变换单元执行所述多个经按比例缩放变换中的所述第二者,而不执行矩阵乘法,也不使用蝶形与矩阵乘法的组合,且
其中所述至少一个经按比例缩放8点变换单元执行所述多个经按比例缩放变换中的所述第三者,而不执行矩阵乘法,也不使用蝶形与矩阵乘法的组合。
36.根据权利要求25所述的设备,
其中所述内容数据包括视频数据块,
其中所述设备进一步包括:
运动估计单元,其相对于所述视频数据块执行运动估计,以识别所述视频数据的参考块且基于视频数据的所述所识别参考块来产生运动向量;
运动补偿单元,其执行运动补偿以基于所述运动向量确定预测块,且将所述预测块与所述视频数据块进行比较以产生残余视频数据块,
其中所述经按比例缩放32点变换单元执行所述不同大小的多个经按比例缩放变换中的所述一者或一者以上,以将所述残余视频数据块从所述空间域变换为所述频域;
量化单元,其量化所述经变换残余视频数据块以产生经量化视频数据块;以及
熵译码单元,其执行统计译码以译码所述经量化视频数据块且产生经译码视频数据块。
37.一种非暂时计算机可读媒体,其包括在执行时致使一个或一个以上处理器进行以下动作的指令:
实施32点变换单元,其执行不同大小的多个经按比例缩放变换中的一者或一者以上,以将内容数据从空间域变换为频域,其中经按比例缩放32点变换单元执行所述多个经按比例缩放变换中大小为32的第一者,且
其中所述经按比例缩放32点变换单元包含:
位于所述32点变换单元的偶数半部中的经按比例缩放16点变换单元,其执行所述多个经按比例缩放变换中的第二者,所述多个经按比例缩放变换中的所述第二者界定变换大小16;以及
位于所述32点变换单元的奇数半部中的至少一个经按比例缩放8点变换单元,其执行所述多个经按比例缩放变换中的第三者,所述多个经按比例缩放变换中的所述第三者界定变换大小8。
38.一种用于将经变换内容数据从空间域变换为频域的方法,所述方法包括:
用经按比例缩放32点变换单元执行不同大小的多个经按比例缩放变换中的一者或一者以上,以将所述经变换内容数据从所述频域变换为所述空间域,其中所述经按比例缩放32点变换单元执行所述多个经按比例缩放变换中大小为32的第一者,且
其中所述经按比例缩放32点变换单元包含:
位于所述32点变换单元的偶数半部中的经按比例缩放16点变换单元,其执行所述多个经按比例缩放变换中的第二者,所述多个经按比例缩放变换中的所述第二者界定变换大小16;以及
位于所述32点变换单元的奇数半部中的至少一个经按比例缩放8点变换单元,其执行所述多个经按比例缩放变换中的第三者,所述多个经按比例缩放变换中的所述第三者界定变换大小8。
39.根据权利要求38所述的方法,其中所述多个经按比例缩放变换近似表示多个经按比例缩放逆离散余弦变换IDCT。
40.根据权利要求38所述的方法,其中所述经按比例缩放16点变换单元以及所述至少一个经按比例缩放8点变换单元各自同时执行所述多个经按比例缩放变换中大小为16和8的一者,以将所述内容数据的不同部分从所述频域变换为所述空间域。
41.根据权利要求38所述的方法,
其中所述经按比例缩放16点变换单元包含第一8点变换单元、第一4点变换单元和第二4点变换单元,
其中所述至少一个经按比例缩放8点变换单元包含第二8点变换单元和第三8点变换单元,且
其中执行不同大小的多个经按比例缩放变换中的一者或一者以上包括分别用所述第一、第二和第三8点变换单元以及所述第一和第二4点变换单元中的一者或一者以上同时执行所述多个经按比例缩放变换中大小为8和4的两者或两者以上。
42.根据权利要求41所述的方法,
其中所述第一、第二和第三8点变换单元各自执行所述多个经按比例缩放变换中的一者,而不执行矩阵乘法,也不使用蝶形与矩阵乘法的组合,且
其中所述第一和第二4点变换单元各自执行所述多个经按比例缩放变换中的一者,而不执行矩阵乘法,也不使用蝶形与矩阵乘法的组合。
43.根据权利要求41所述的方法,
其中所述第一8点变换单元还包含第三4点变换单元,
其中执行不同大小的多个经按比例缩放变换中的一者或一者以上包括用所述第一、第二和第三4点变换单元同时执行所述多个经按比例缩放变换中大小为4的三者,以及用所述第二和第三8点变换单元同时执行所述多个经按比例缩放变换中大小为8的两者。
44.根据权利要求43所述的方法,其中所述第三4点变换单元执行所述多个经按比例缩放变换中的一者,而不执行矩阵乘法,也不使用蝶形与矩阵乘法的组合。
45.根据权利要求38所述的方法,其进一步包括:
用重构单元将比例因子应用于所述内容数据以便产生经按比例缩放变换系数,
其中执行不同大小的多个经按比例缩放变换中的所述一者或一者以上包括用经按比例缩放32点变换单元执行不同大小的多个经按比例缩放变换中的一者或一者以上,以将所述经按比例缩放变换系数从所述频域变换为所述空间域。
46.根据权利要求45所述的方法,其中应用所述比例因子包括使用包含于所述重构单元内的查找表LUT来应用所述比例因子,所述查找表存储所述经按比例缩放变换系数与量化矩阵的条目之间的映射。
47.根据权利要求46所述的方法,
其中所述量化矩阵的大小小于为所述经按比例缩放变换系数中的每一者指定比例因子的全量化矩阵,且
其中所述量化矩阵的所述大小取决于内部因子。
48.根据权利要求38所述的方法,
其中所述经按比例缩放16点变换单元执行所述多个经按比例缩放变换中的所述第二者,而不执行矩阵乘法,也不使用蝶形与矩阵乘法的组合,且
其中所述至少一个经按比例缩放8点变换单元执行所述多个经按比例缩放变换中的所述第三者,而不执行矩阵乘法,也不使用蝶形与矩阵乘法的组合。
49.根据权利要求38所述的方法,
其中所述内容数据包括经译码视频数据块,
其中所述方法进一步包括:
以统计方式解码所述经译码视频数据块以产生经量化视频数据块;
对所述经量化视频数据块执行逆量化以产生经变换视频数据块,
其中执行不同大小的多个经按比例缩放变换中的一者或一者以上包括执行所述不同大小的多个经按比例缩放变换中的所述一者或一者以上,以将所述经变换视频数据块从所述频域变换为所述空间域,以便产生残余视频数据块;
对所述残余视频数据块执行运动补偿以确定所述视频数据的经解码块。
50.一种设备,其包括:
用于执行不同大小的多个经按比例缩放变换以将内容数据从频域变换为空间域的装置,其中所述用于执行所述不同大小的多个经按比例缩放变换的装置执行所述多个经按比例缩放变换中的第一者,所述多个经按比例缩放变换中的所述第一者界定变换大小32,
其中所述用于执行所述不同大小的多个经按比例缩放变换的装置包含:
位于所述用于执行所述多个经按比例缩放变换的装置的偶数半部中的装置,其用于执行所述多个经按比例缩放变换中的第二者,所述多个经按比例缩放变换中的所述第二者界定变换大小16;以及
位于所述用于执行所述多个经按比例缩放变换的装置的奇数半部中的装置,其用于执行所述多个经按比例缩放变换中的第三者,所述多个经按比例缩放变换中的所述第三者界定变换大小8。
51.根据权利要求50所述的设备,其中所述多个经按比例缩放变换近似表示多个经按比例缩放离散余弦变换DCT。
52.根据权利要求50所述的设备,其中所述用于执行所述多个经按比例缩放变换中的所述第二者的装置以及用于执行所述多个经按比例缩放变换中的所述第三者的装置各自同时执行所述多个经按比例缩放变换中大小为16和8的一者,以将所述内容数据的不同部分从所述频域变换为所述空间域。
53.根据权利要求50所述的设备,
其中所述用于执行所述多个经按比例缩放变换中的所述第二者的装置包含第一8点变换单元、第一4点变换单元和第二4点变换单元,
其中所述用于执行所述多个经按比例缩放变换中的所述第三者的装置包含第二8点变换单元和第三8点变换单元,且
其中所述第一、第二和第三8点变换单元以及所述第一和第二4点变换单元中的一者或一者以上分别同时执行所述多个经按比例缩放变换中大小为8和4的两者或两者以上。
54.根据权利要求53所述的设备,
其中所述第一、第二和第三8点变换单元各自执行所述多个经按比例缩放变换中的一者,而不执行矩阵乘法,也不使用蝶形与矩阵乘法的组合,且
其中所述第一和第二4点变换单元各自执行所述多个经按比例缩放变换中的一者,而不执行矩阵乘法,也不使用蝶形与矩阵乘法的组合。
55.根据权利要求53所述的设备,
其中所述第一8点变换单元还包含第三4点变换单元,
其中所述第一、第二和第三4点变换单元以及所述第二和第三8点变换单元同时执行所述多个经按比例缩放变换中大小为4的三者以及所述多个经按比例缩放变换中大小为8的两者。
56.根据权利要求55所述的设备,其中所述第三4点变换单元执行所述多个经按比例缩放变换中的一者,而不执行矩阵乘法,也不使用蝶形与矩阵乘法的组合。
57.根据权利要求50所述的设备,其进一步包括用于将比例因子应用于所述内容数据以便产生经按比例缩放变换系数的装置,
其中所述用于执行所述多个经按比例缩放变换的装置包括用于执行不同大小的多个经按比例缩放变换中的一者或一者以上以将所述内容数据从所述频域变换为所述空间域的经按比例缩放装置。
58.根据权利要求57所述的设备,其中所述用于应用所述比例因子的装置包括用于使用查找表LUT来应用所述比例因子的装置,所述查找表存储所述经按比例缩放变换系数与量化矩阵的条目之间的映射。
59.根据权利要求58所述的方法,
其中所述量化矩阵的大小小于为所述经按比例缩放变换系数中的每一者指定比例因子的全量化矩阵,且
其中所述量化矩阵的所述大小取决于内部因子。
60.根据权利要求50所述的设备,
其中所述用于执行所述多个经按比例缩放变换中的所述第二者的装置执行所述多个经按比例缩放变换中的所述第二者,而不执行矩阵乘法,也不使用蝶形与矩阵乘法的组合,且
其中所述用于执行所述多个经按比例缩放变换中的所述第三者的装置执行所述多个经按比例缩放变换中的所述第三者,而不执行矩阵乘法,也不使用蝶形与矩阵乘法的组合。
61.根据权利要求50所述的设备,
其中所述内容数据包括经译码视频数据块,
其中所述设备进一步包括:
用于以统计方式解码所述经译码视频数据块以产生经量化视频数据块的装置;
用于对所述经量化视频数据块执行逆量化以产生经变换视频数据块的装置,
其中所述用于执行不同大小的多个经按比例缩放变换中的一者或一者以上的装置包括用于执行的所述不同大小多个经按比例缩放变换中的所述一者或一者以上以将所述经变换视频数据块从所述频域变换为所述空间域以便产生残余视频数据块的装置;
用于对所述残余视频数据块执行运动补偿以确定所述视频数据的经解码块的装置。
62.一种设备,其包括:
经按比例缩放32点变换单元,其执行不同大小的多个经按比例缩放变换,以将内容数据从频域变换为空间域,其中所述经按比例缩放32点变换单元执行所述多个经按比例缩放变换中的第一者,所述多个经按比例缩放变换中的所述第一者界定变换大小32,
其中所述经按比例缩放32点变换单元包含:
位于所述32点变换单元的偶数半部中的经按比例缩放16点变换单元,其执行所述多个经按比例缩放变换中的第二者,所述多个经按比例缩放变换中的所述第二者界定变换大小16;以及
位于所述32点变换单元的奇数半部中的至少一个经按比例缩放8点变换单元,其执行所述多个经按比例缩放变换中的第三者,所述多个经按比例缩放变换中的所述第三者界定变换大小8。
63.根据权利要求62所述的设备,其中所述多个经按比例缩放变换近似表示多个经按比例缩放离散余弦变换DCT。
64.根据权利要求62所述的设备,其中所述经按比例缩放16点变换单元以及所述至少一个经按比例缩放8点变换单元各自同时执行所述多个经按比例缩放变换中大小为16和8的一者,以将所述内容数据的不同部分从所述频域变换为所述空间域。
65.根据权利要求62所述的设备,
其中所述经按比例缩放16点变换单元包含第一8点变换单元、第一4点变换单元和第二4点变换单元,
其中所述至少一个8点变换单元包含第二8点变换单元和第三8点变换单元,且
其中所述第一、第二和第三8点变换单元以及所述第一和第二4点变换单元中的一者或一者以上分别同时执行所述多个经按比例缩放变换中大小为8和4的两者或两者以上。
66.根据权利要求65所述的设备,
其中所述第一、第二和第三8点变换单元各自执行所述多个经按比例缩放变换中的一者,而不执行矩阵乘法,也不使用蝶形与矩阵乘法的组合,且
其中所述第一和第二4点变换单元各自执行所述多个经按比例缩放变换中的一者,而不执行矩阵乘法,也不使用蝶形与矩阵乘法的组合。
67.根据权利要求65所述的设备,
其中所述第一8点变换单元还包含第三4点变换单元,
其中所述第一、第二和第三4点变换单元以及所述第二和第三8点变换单元同时执行所述多个经按比例缩放变换中大小为4的三者以及所述多个经按比例缩放变换中大小为8的两者。
68.根据权利要求67所述的设备,其中所述第三4点变换单元执行所述多个经按比例缩放变换中的一者,而不执行矩阵乘法,也不使用蝶形与矩阵乘法的组合。
69.根据权利要求62所述的设备,其进一步包括重构单元,其将比例因子应用于所述内容数据以便产生经按比例缩放变换系数,
其中所述经按比例缩放16点变换单元执行不同大小的多个经按比例缩放变换中的一者或一者以上,以将所述经按比例缩放变换系数从所述频域变换为所述空间域。
70.根据权利要求69所述的设备,其中所述重构单元使用查找表LUT来应用所述比例因子,所述查找表存储所述经按比例缩放变换系数与量化矩阵的条目之间的映射。
71.根据权利要求70所述的方法,
其中所述量化矩阵的大小小于为所述经按比例缩放变换系数中的每一者指定比例因子的全量化矩阵,且
其中所述量化矩阵的所述大小取决于内部因子。
72.根据权利要求62所述的设备,
其中所述经按比例缩放16点变换单元执行所述多个经按比例缩放变换中的所述第二者,而不执行矩阵乘法,也不使用蝶形与矩阵乘法的组合,且
其中所述至少一个经按比例缩放8点变换单元执行所述多个经按比例缩放变换中的所述第三者,而不执行矩阵乘法,也不使用蝶形与矩阵乘法的组合。
73.根据权利要求62所述的设备,
其中所述内容数据包括经译码视频数据块,
其中所述设备进一步包括:
熵解码单元,其以统计方式解码所述经译码视频数据块以产生经量化视频数据块;
重构单元,其对所述经量化视频数据块执行逆量化以产生经变换视频数据块,
其中执行不同大小的多个经按比例缩放变换中的一者或一者以上包括执行所述不同大小的多个经按比例缩放变换中的所述一者或一者以上,以将所述经变换视频数据块从所述频域变换为所述空间域,以便产生残余视频数据块;
运动补偿单元,其对所述残余视频数据块执行运动补偿以确定所述视频数据的经解码块。
74.一种非暂时计算机可读媒体,其包括在执行时致使一个或一个以上处理器进行以下动作的指令:
实施32点变换单元,其执行不同大小的多个经按比例缩放变换中的一者或一者以上,以将内容数据从频域变换为空间域,其中经按比例缩放32点变换单元执行所述多个经按比例缩放变换中大小为32的第一者,且
其中所述经按比例缩放32点变换单元包含:
位于所述32点变换单元的偶数半部中的经按比例缩放16点变换单元,其执行所述多个经按比例缩放变换中的第二者,所述多个经按比例缩放变换中的所述第二者界定变换大小16;以及
位于所述32点变换单元的奇数半部中的至少一个经按比例缩放8点变换单元,其执行所述多个经按比例缩放变换中的第三者,所述多个经按比例缩放变换中的所述第三者界定变换大小8。
Applications Claiming Priority (13)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201161431343P | 2011-01-10 | 2011-01-10 | |
US61/431,343 | 2011-01-10 | ||
US201161433015P | 2011-01-14 | 2011-01-14 | |
US61/433,015 | 2011-01-14 | ||
US201161433351P | 2011-01-17 | 2011-01-17 | |
US61/433,351 | 2011-01-17 | ||
US201161446834P | 2011-02-25 | 2011-02-25 | |
US61/446,834 | 2011-02-25 | ||
US201161504146P | 2011-07-01 | 2011-07-01 | |
US61/504,146 | 2011-07-01 | ||
US13/346,632 | 2012-01-09 | ||
US13/346,632 US9824066B2 (en) | 2011-01-10 | 2012-01-09 | 32-point transform for media data coding |
PCT/US2012/020755 WO2012096943A2 (en) | 2011-01-10 | 2012-01-10 | 32-point transform for media data coding |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103380425A true CN103380425A (zh) | 2013-10-30 |
CN103380425B CN103380425B (zh) | 2017-12-26 |
Family
ID=46455218
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201280005001.4A Expired - Fee Related CN103380425B (zh) | 2011-01-10 | 2012-01-10 | 用于媒体数据译码的32点变换 |
Country Status (6)
Country | Link |
---|---|
US (1) | US9824066B2 (zh) |
EP (1) | EP2663933A2 (zh) |
JP (3) | JP5797774B2 (zh) |
KR (2) | KR20130116924A (zh) |
CN (1) | CN103380425B (zh) |
WO (1) | WO2012096943A2 (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103747266A (zh) * | 2013-12-24 | 2014-04-23 | 华为技术有限公司 | 一种数据变换方法和设备 |
CN107027039A (zh) * | 2017-04-14 | 2017-08-08 | 西安电子科技大学 | 基于高效视频编码标准的离散余弦变换实现方法 |
CN108432254A (zh) * | 2015-11-30 | 2018-08-21 | 奥兰治 | 用于对图像进行编码和解码的方法、用于对图像进行编码和解码的设备以及相应的计算机程序 |
CN108605141A (zh) * | 2016-02-15 | 2018-09-28 | 高通股份有限公司 | 用于紧凑多遍变换的高效参数存储 |
CN108605142A (zh) * | 2016-02-15 | 2018-09-28 | 高通股份有限公司 | 用于视频译码的多遍不可分开的变换 |
CN108702517A (zh) * | 2016-02-15 | 2018-10-23 | 高通股份有限公司 | 使用优化的紧凑多遍变换的高效变换编码 |
Families Citing this family (32)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9110849B2 (en) * | 2009-04-15 | 2015-08-18 | Qualcomm Incorporated | Computing even-sized discrete cosine transforms |
US9069713B2 (en) * | 2009-06-05 | 2015-06-30 | Qualcomm Incorporated | 4X4 transform for media coding |
US8762441B2 (en) * | 2009-06-05 | 2014-06-24 | Qualcomm Incorporated | 4X4 transform for media coding |
US8451904B2 (en) | 2009-06-24 | 2013-05-28 | Qualcomm Incorporated | 8-point transform for media data coding |
US9118898B2 (en) * | 2009-06-24 | 2015-08-25 | Qualcomm Incorporated | 8-point transform for media data coding |
US9081733B2 (en) * | 2009-06-24 | 2015-07-14 | Qualcomm Incorporated | 16-point transform for media data coding |
US9075757B2 (en) * | 2009-06-24 | 2015-07-07 | Qualcomm Incorporated | 16-point transform for media data coding |
WO2013046504A1 (ja) * | 2011-09-29 | 2013-04-04 | パナソニック株式会社 | 算術復号装置、画像復号装置、および算術復号方法 |
US10642921B2 (en) * | 2011-11-03 | 2020-05-05 | Texas Instruments Incorporated | Unified forward and inverse transform architecture |
TWI443527B (zh) * | 2012-01-02 | 2014-07-01 | Univ Nat Cheng Kung | 遞迴式第四型離散餘弦之系統 |
US9749633B2 (en) * | 2012-01-19 | 2017-08-29 | Vid Scale, Inc. | System and method of video coding quantization and dynamic range control |
US9781447B1 (en) | 2012-06-21 | 2017-10-03 | Google Inc. | Correlation based inter-plane prediction encoding and decoding |
US9167268B1 (en) | 2012-08-09 | 2015-10-20 | Google Inc. | Second-order orthogonal spatial intra prediction |
US9344742B2 (en) * | 2012-08-10 | 2016-05-17 | Google Inc. | Transform-domain intra prediction |
CN103067718B (zh) * | 2013-01-30 | 2015-10-14 | 上海交通大学 | 适用于数字视频编解码的一维离散余弦逆变换模块电路 |
US9848188B1 (en) * | 2013-06-12 | 2017-12-19 | Apple Inc. | Video coding transform systems and methods |
KR101601864B1 (ko) * | 2014-02-25 | 2016-03-10 | 숭실대학교산학협력단 | 동영상 코덱의 역변환 방법 및 그 장치 |
US10863200B2 (en) * | 2014-07-25 | 2020-12-08 | Intel Corporation | Techniques for performing a forward transformation by a video encoder using a forward transform matrix |
BR112017004886A2 (pt) * | 2014-09-12 | 2017-12-05 | Vid Scale Inc | dispositivo de codificação de vídeo e método de codificação de vídeo |
EP4300968A1 (en) * | 2016-05-13 | 2024-01-03 | Sony Group Corporation | Image processing device and method |
WO2018044125A1 (ko) * | 2016-09-01 | 2018-03-08 | 엘지전자(주) | 레이어드 기븐스 변환을 이용하여 변환을 수행하는 방법 및 장치 |
WO2019045544A1 (ko) * | 2017-09-03 | 2019-03-07 | 엘지전자 주식회사 | 레이어드 기븐스 변환을 이용하여 변환을 수행하는 방법 및 장치 |
US10904573B2 (en) * | 2017-11-30 | 2021-01-26 | Embry-Riddle Aeronautical University, Inc. | Reduced multiplicative complexity discrete cosine transform (DCT) circuitry |
US10863199B2 (en) * | 2018-03-26 | 2020-12-08 | Qualcomm Incorporated | Minimization of transform memory and latency via parallel factorizations |
WO2019190282A1 (ko) * | 2018-03-29 | 2019-10-03 | 엘지전자 주식회사 | 곱셈 없는 회전 기반 변환에 기초하여 비디오 신호를 처리하는 방법 및 장치 |
WO2019203569A1 (ko) * | 2018-04-17 | 2019-10-24 | 엘지전자 주식회사 | 전처리/후처리 행렬에 기초하는 근사 변환을 이용하여 비디오 신호를 처리하는 방법 및 장치 |
US10536720B2 (en) | 2018-05-07 | 2020-01-14 | Tencent America LLC | Method, apparatus and medium for decoding or encoding |
US11470316B2 (en) | 2018-05-31 | 2022-10-11 | Lg Electronics Inc. | Method and device for performing transformation by using layered-givens transform |
WO2019235491A1 (ja) * | 2018-06-08 | 2019-12-12 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ | 符号化装置、復号装置、符号化方法及び復号方法 |
US11593619B2 (en) * | 2018-10-30 | 2023-02-28 | Raytheon Company | Computer architecture for multiplier-less machine learning |
US11284112B2 (en) * | 2018-12-06 | 2022-03-22 | Tencent America LLC | Method and apparatus for a primary transform using an 8-bit transform core |
CN109788286B (zh) * | 2019-02-01 | 2021-06-18 | 北京大学深圳研究生院 | 一种编码、解码变换方法、系统、设备及计算机可读介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6252994B1 (en) * | 1998-01-26 | 2001-06-26 | Xerox Corporation | Adaptive quantization compatible with the JPEG baseline sequential mode |
US20030105788A1 (en) * | 2001-11-30 | 2003-06-05 | General Instrument Corporation | Systems and methods for efficient quantization |
Family Cites Families (78)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2581463B1 (fr) * | 1985-05-03 | 1989-09-08 | Thomson Csf | Dispositifs de calcul de transformees cosinus, dispositif de codage et dispositif de decodage d'images comportant de tels dispositifs de calcul |
FR2582424B1 (fr) * | 1985-05-22 | 1989-06-30 | Guichard Jacques | Circuit de calcul rapide de la transformee en cosinus, directe ou inverse, d'un signal discret |
EP0376683A2 (en) * | 1988-12-27 | 1990-07-04 | Kabushiki Kaisha Toshiba | Discrete cosine transforming apparatus |
US5163103A (en) * | 1988-12-27 | 1992-11-10 | Kabushiki Kaisha Toshiba | Discrete cosine transforming apparatus |
US5257213A (en) * | 1991-02-20 | 1993-10-26 | Samsung Electronics Co., Ltd. | Method and circuit for two-dimensional discrete cosine transform |
US5253055A (en) | 1992-07-02 | 1993-10-12 | At&T Bell Laboratories | Efficient frequency scalable video encoding with coefficient selection |
US5408425A (en) * | 1993-05-25 | 1995-04-18 | The Aerospace Corporation | Split-radix discrete cosine transform |
US5508949A (en) | 1993-12-29 | 1996-04-16 | Hewlett-Packard Company | Fast subband filtering in digital signal coding |
US5649077A (en) | 1994-03-30 | 1997-07-15 | Institute Of Microelectronics, National University Of Singapore | Modularized architecture for rendering scaled discrete cosine transform coefficients and inverse thereof for rapid implementation |
TW284869B (zh) | 1994-05-27 | 1996-09-01 | Hitachi Ltd | |
US5712809A (en) * | 1994-10-31 | 1998-01-27 | Vivo Software, Inc. | Method and apparatus for performing fast reduced coefficient discrete cosine transforms |
JP3115199B2 (ja) | 1994-12-16 | 2000-12-04 | 松下電器産業株式会社 | 画像圧縮符号化装置 |
US5737450A (en) | 1995-05-15 | 1998-04-07 | Polaroid Corporation | Method and apparatus for fast two-dimensional cosine transform filtering |
JP2778622B2 (ja) | 1995-06-06 | 1998-07-23 | 日本電気株式会社 | 2次元dct回路 |
JPH09212484A (ja) | 1996-01-30 | 1997-08-15 | Texas Instr Inc <Ti> | 離散コサイン変換方法 |
AU9030298A (en) | 1997-08-25 | 1999-03-16 | Qualcomm Incorporated | Variable block size 2-dimensional inverse discrete cosine transform engine |
JP4688988B2 (ja) | 1997-11-17 | 2011-05-25 | ソニー エレクトロニクス インク | ビデオデータの圧縮方法並びに装置、及び伸張方法並びに装置 |
US6222944B1 (en) | 1998-05-07 | 2001-04-24 | Sarnoff Corporation | Down-sampling MPEG image decoder |
JP2001346213A (ja) | 2000-06-02 | 2001-12-14 | Nec Corp | 離散コサイン変換装置及びその離散コサイン変換方法 |
AU2001234971A1 (en) | 2000-02-09 | 2001-08-20 | T. C. Cheng | Fast method for the forward and inverse mdct in audio coding |
CN100429644C (zh) | 2000-10-23 | 2008-10-29 | 国际商业机器公司 | 使用比例项、早期中止和精度细算的更快速变换 |
US7929610B2 (en) | 2001-03-26 | 2011-04-19 | Sharp Kabushiki Kaisha | Methods and systems for reducing blocking artifacts with reduced complexity for spatially-scalable video coding |
US7366236B1 (en) | 2001-06-04 | 2008-04-29 | Cisco Sytems Canada Co. | Source adaptive system and method for 2D iDCT |
US7185037B2 (en) | 2001-08-23 | 2007-02-27 | Texas Instruments Incorporated | Video block transform |
WO2003019949A2 (en) | 2001-08-24 | 2003-03-06 | Koninklijke Philips Electronics N.V. | Adding fields of a video frame |
US7082450B2 (en) | 2001-08-30 | 2006-07-25 | Nokia Corporation | Implementation of a transform and of a subsequent quantization |
US6882685B2 (en) | 2001-09-18 | 2005-04-19 | Microsoft Corporation | Block transform and quantization for image and video coding |
KR100481067B1 (ko) | 2001-09-28 | 2005-04-07 | 브이케이 주식회사 | 분산 산술 처리장치 및 그를 이용한 이차원 이산여현변환 처리장치 |
US7088791B2 (en) * | 2001-10-19 | 2006-08-08 | Texas Instruments Incorporated | Systems and methods for improving FFT signal-to-noise ratio by identifying stage without bit growth |
CN101448162B (zh) * | 2001-12-17 | 2013-01-02 | 微软公司 | 处理视频图像的方法 |
FR2834362A1 (fr) | 2001-12-28 | 2003-07-04 | Koninkl Philips Electronics Nv | Dispositif de transformation inverse adaptatif |
JP2003223433A (ja) | 2002-01-31 | 2003-08-08 | Matsushita Electric Ind Co Ltd | 直交変換方法、直交変換装置、符号化方法、符号化装置、逆直交変換方法、逆直交変換装置、復号化方法、及び、復号化装置 |
US7007055B2 (en) | 2002-03-12 | 2006-02-28 | Intel Corporation | Method of performing NxM Discrete Cosine Transform |
US7242713B2 (en) | 2002-05-02 | 2007-07-10 | Microsoft Corporation | 2-D transforms for image and video coding |
US7437394B2 (en) | 2002-06-19 | 2008-10-14 | The Aerospace Corporation | Merge and split discrete cosine block transform method |
US7760950B2 (en) | 2002-09-26 | 2010-07-20 | Ntt Docomo, Inc. | Low complexity and unified transforms for video coding |
US20040136602A1 (en) | 2003-01-10 | 2004-07-15 | Nithin Nagaraj | Method and apparatus for performing non-dyadic wavelet transforms |
US20040141654A1 (en) * | 2003-01-17 | 2004-07-22 | Yi-Yung Jeng | Texture encoding procedure |
US7412100B2 (en) | 2003-09-04 | 2008-08-12 | Qualcomm Incorporated | Apparatus and method for sub-sampling images in a transform domain |
US7379500B2 (en) | 2003-09-30 | 2008-05-27 | Microsoft Corporation | Low-complexity 2-power transform for image/video compression |
TWI241074B (en) | 2003-11-05 | 2005-10-01 | Bing-Fei Wu | Image compression system using two-dimensional discrete wavelet transformation |
TWI289992B (en) | 2003-12-03 | 2007-11-11 | Via Tech Inc | Method and device for sharing MPEG frame buffers |
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 |
US8861600B2 (en) | 2004-06-18 | 2014-10-14 | Broadcom Corporation | Method and system for dynamically configurable DCT/IDCT module in a wireless handset |
US7587093B2 (en) | 2004-07-07 | 2009-09-08 | Mediatek Inc. | Method and apparatus for implementing DCT/IDCT based video/image processing |
US7471850B2 (en) | 2004-12-17 | 2008-12-30 | Microsoft Corporation | Reversible transform for lossy and lossless 2-D data compression |
US7792385B2 (en) | 2005-01-25 | 2010-09-07 | Globalfoundries Inc. | Scratch pad for storing intermediate loop filter data |
TW200643848A (en) | 2005-06-01 | 2006-12-16 | Wintek Corp | Method and apparatus for four-color data conversion |
US20070025441A1 (en) | 2005-07-28 | 2007-02-01 | Nokia Corporation | Method, module, device and system for rate control provision for video encoders capable of variable bit rate encoding |
TWI280804B (en) | 2005-09-26 | 2007-05-01 | Yuh-Jue Chuang | Method for splitting 8x8 DCT into four 4x4 modified DCTS used in AVC/H. 264 |
US7725516B2 (en) | 2005-10-05 | 2010-05-25 | Qualcomm Incorporated | Fast DCT algorithm for DSP with VLIW architecture |
US20070200738A1 (en) | 2005-10-12 | 2007-08-30 | Yuriy Reznik | Efficient multiplication-free computation for signal and data processing |
TWI311856B (en) | 2006-01-04 | 2009-07-01 | Quanta Comp Inc | Synthesis subband filtering method and apparatus |
US8595281B2 (en) | 2006-01-11 | 2013-11-26 | Qualcomm Incorporated | Transforms with common factors |
CN100562111C (zh) | 2006-03-28 | 2009-11-18 | 华为技术有限公司 | 离散余弦逆变换方法及其装置 |
US8849884B2 (en) | 2006-03-29 | 2014-09-30 | Qualcom Incorporate | Transform design with scaled and non-scaled interfaces |
EP1850597A1 (en) | 2006-04-24 | 2007-10-31 | Universität Dortmund | Method and circuit for performing a cordic based Loeffler discrete cosine transformation (DCT), particularly for signal processing |
US8385424B2 (en) * | 2006-06-26 | 2013-02-26 | Qualcomm Incorporated | Reduction of errors during computation of inverse discrete cosine transform |
US8699810B2 (en) | 2006-06-26 | 2014-04-15 | Qualcomm Incorporated | Efficient fixed-point approximations of forward and inverse discrete cosine transforms |
US8582663B2 (en) | 2006-08-08 | 2013-11-12 | Core Wireless Licensing S.A.R.L. | Method, device, and system for multiplexing of video streams |
US8548815B2 (en) | 2007-09-19 | 2013-10-01 | Qualcomm Incorporated | Efficient design of MDCT / IMDCT filterbanks for speech and audio coding applications |
US8654833B2 (en) | 2007-09-26 | 2014-02-18 | Qualcomm Incorporated | Efficient transformation techniques for video coding |
WO2009045683A1 (en) | 2007-09-28 | 2009-04-09 | Athanasios Leontaris | Video compression and tranmission techniques |
US20090141808A1 (en) | 2007-11-30 | 2009-06-04 | Yiufai Wong | System and methods for improved video decoding |
US8631060B2 (en) * | 2007-12-13 | 2014-01-14 | Qualcomm Incorporated | Fast algorithms for computation of 5-point DCT-II, DCT-IV, and DST-IV, and architectures |
KR20090078494A (ko) | 2008-01-15 | 2009-07-20 | 삼성전자주식회사 | 영상 데이터의 디블록킹 필터링 방법 및 디블록킹 필터 |
CN101330616B (zh) | 2008-07-31 | 2011-04-13 | 上海交通大学 | 视频解码过程中反离散余弦变换的硬件实现装置及方法 |
RU2497303C2 (ru) | 2008-10-03 | 2013-10-27 | Квэлкомм Инкорпорейтед | Видео кодирование с использованием преобразования больше чем 4×4 и 8×8 |
US20100172409A1 (en) | 2009-01-06 | 2010-07-08 | Qualcom Incorporated | Low-complexity transforms for data compression and decompression |
US9110849B2 (en) | 2009-04-15 | 2015-08-18 | Qualcomm Incorporated | Computing even-sized discrete cosine transforms |
US9069713B2 (en) | 2009-06-05 | 2015-06-30 | Qualcomm Incorporated | 4X4 transform for media coding |
US8762441B2 (en) | 2009-06-05 | 2014-06-24 | Qualcomm Incorporated | 4X4 transform for media coding |
US8451904B2 (en) | 2009-06-24 | 2013-05-28 | Qualcomm Incorporated | 8-point transform for media data coding |
US9081733B2 (en) | 2009-06-24 | 2015-07-14 | Qualcomm Incorporated | 16-point transform for media data coding |
US9075757B2 (en) | 2009-06-24 | 2015-07-07 | Qualcomm Incorporated | 16-point transform for media data coding |
US9118898B2 (en) | 2009-06-24 | 2015-08-25 | Qualcomm Incorporated | 8-point transform for media data coding |
CN101989253B (zh) * | 2009-07-31 | 2012-08-29 | 鸿富锦精密工业(深圳)有限公司 | 离散余弦转换电路及使用其的影像处理装置 |
BR122020016581B1 (pt) | 2010-09-28 | 2022-03-03 | Samsung Electronics Co., Ltd. | Método de decodificação de vídeo, e método de codificação de vídeo |
-
2012
- 2012-01-09 US US13/346,632 patent/US9824066B2/en not_active Expired - Fee Related
- 2012-01-10 JP JP2013549490A patent/JP5797774B2/ja not_active Expired - Fee Related
- 2012-01-10 KR KR1020137021148A patent/KR20130116924A/ko active Application Filing
- 2012-01-10 EP EP12703370.2A patent/EP2663933A2/en not_active Withdrawn
- 2012-01-10 WO PCT/US2012/020755 patent/WO2012096943A2/en active Search and Examination
- 2012-01-10 KR KR1020177012024A patent/KR20170051540A/ko not_active Application Discontinuation
- 2012-01-10 CN CN201280005001.4A patent/CN103380425B/zh not_active Expired - Fee Related
-
2015
- 2015-06-16 JP JP2015121241A patent/JP2015216650A/ja active Pending
-
2017
- 2017-10-02 JP JP2017192697A patent/JP2018038046A/ja active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6252994B1 (en) * | 1998-01-26 | 2001-06-26 | Xerox Corporation | Adaptive quantization compatible with the JPEG baseline sequential mode |
US20030105788A1 (en) * | 2001-11-30 | 2003-06-05 | General Instrument Corporation | Systems and methods for efficient quantization |
Non-Patent Citations (3)
Title |
---|
R.JOSHI ET AL: "《quaJoint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11 4th Meeting: January, 2011, Daegu, KR》", 16 January 2011, article "Efficient 16 and 32-point transforms", pages: 3.2 * |
RAJAN JOSHI ET AL: "《Applications of digital image processing XXXIII》", 7 September 2010, article "Efficient Large Size Transforms for High-Performance Video Coding", pages: 1,2 - 1 * |
陈铖: "基于H.264/AVC的块匹配运动估计算法研究与优化", 《中国优秀硕士学位论文全文数据库 信息科技辑》, vol. 2009, no. 05, 15 May 2009 (2009-05-15) * |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103747266A (zh) * | 2013-12-24 | 2014-04-23 | 华为技术有限公司 | 一种数据变换方法和设备 |
CN108432254A (zh) * | 2015-11-30 | 2018-08-21 | 奥兰治 | 用于对图像进行编码和解码的方法、用于对图像进行编码和解码的设备以及相应的计算机程序 |
CN108605141A (zh) * | 2016-02-15 | 2018-09-28 | 高通股份有限公司 | 用于紧凑多遍变换的高效参数存储 |
CN108605142A (zh) * | 2016-02-15 | 2018-09-28 | 高通股份有限公司 | 用于视频译码的多遍不可分开的变换 |
CN108702517A (zh) * | 2016-02-15 | 2018-10-23 | 高通股份有限公司 | 使用优化的紧凑多遍变换的高效变换编码 |
CN108605141B (zh) * | 2016-02-15 | 2020-12-15 | 高通股份有限公司 | 用于紧凑多遍变换的高效参数存储 |
CN108605142B (zh) * | 2016-02-15 | 2021-02-02 | 高通股份有限公司 | 用于视频译码的方法和装置 |
CN107027039A (zh) * | 2017-04-14 | 2017-08-08 | 西安电子科技大学 | 基于高效视频编码标准的离散余弦变换实现方法 |
CN107027039B (zh) * | 2017-04-14 | 2019-08-27 | 西安电子科技大学 | 基于高效视频编码标准的离散余弦变换实现方法 |
Also Published As
Publication number | Publication date |
---|---|
JP2015216650A (ja) | 2015-12-03 |
JP5797774B2 (ja) | 2015-10-21 |
WO2012096943A2 (en) | 2012-07-19 |
JP2018038046A (ja) | 2018-03-08 |
US9824066B2 (en) | 2017-11-21 |
KR20130116924A (ko) | 2013-10-24 |
CN103380425B (zh) | 2017-12-26 |
KR20170051540A (ko) | 2017-05-11 |
WO2012096943A3 (en) | 2013-08-08 |
JP2014509108A (ja) | 2014-04-10 |
US20120177108A1 (en) | 2012-07-12 |
EP2663933A2 (en) | 2013-11-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103380425A (zh) | 用于媒体数据译码的32点变换 | |
CN102460425B (zh) | 计算偶数尺寸的离散余弦变换 | |
CN104205834B (zh) | 用于对每个空间子区域进行视频解码的方法 | |
US9123089B2 (en) | Signaling and uses of windowing information for images | |
CN102667757B (zh) | 用于媒体编码的4x4变换 | |
CN102804171B (zh) | 用于媒体数据译码的16点变换 | |
CN102804172A (zh) | 用于媒体数据译码的16点变换 | |
US10356418B2 (en) | Video encoding method and apparatus therefor, and video decoding method and apparatus therefor, in which edge type offset is applied | |
CN102804173A (zh) | 用于媒体数据译码的8点变换 | |
CN108605141A (zh) | 用于紧凑多遍变换的高效参数存储 | |
US20120307893A1 (en) | Fast computing of discrete cosine and sine transforms of types vi and vii | |
CN102713895A (zh) | 用于媒体编码的4x4变换 | |
CN102714714A (zh) | 用于媒体数据译码的8点变换 | |
CN103238323A (zh) | 在视频译码中基于视频块的扫描次序对块内的最后有效系数的位置进行译码 | |
KR20090115726A (ko) | 변환-기반 디지털 미디어 코덱에서의 계산 복잡도 및 정밀도 제어 | |
CN108965874A (zh) | 视频解码方法 | |
KR101362696B1 (ko) | 하이브리드 아키텍쳐가 적용된 신호 변환 장치, 신호 변환 방법 및 기록매체 | |
CN103959785A (zh) | 在视频译码中用于色度分量的变换单位分割 | |
CN103190147A (zh) | 用于视频译码的语法元素的联合译码 | |
US10511860B2 (en) | Signal transforming method and device | |
CN103222263A (zh) | 基于改进的拉普拉斯求和滤波器标引与四叉树分割的组合的多输入自适应滤波器 | |
CA2735973C (en) | Reduced dc gain mismatch and dc leakage in overlap transform processing | |
CN103650514A (zh) | 使用vlc码字来译码语法元素 | |
CN104854871A (zh) | 具有减少的线缓冲器的解块滤波器 | |
Zhang et al. | Ultrasonic televiewer image encoding based on block prediction |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20171226 Termination date: 20190110 |