CN104067621A - 使用偶数-奇数整数变换后台的视频和数据处理 - Google Patents

使用偶数-奇数整数变换后台的视频和数据处理 Download PDF

Info

Publication number
CN104067621A
CN104067621A CN201280054519.7A CN201280054519A CN104067621A CN 104067621 A CN104067621 A CN 104067621A CN 201280054519 A CN201280054519 A CN 201280054519A CN 104067621 A CN104067621 A CN 104067621A
Authority
CN
China
Prior art keywords
rank
integer
group
matrices
matrix
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
Application number
CN201280054519.7A
Other languages
English (en)
Other versions
CN104067621B (zh
Inventor
董洁
叶琰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Vid Scale Inc
Original Assignee
Vid Scale Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Vid Scale Inc filed Critical Vid Scale Inc
Publication of CN104067621A publication Critical patent/CN104067621A/zh
Application granted granted Critical
Publication of CN104067621B publication Critical patent/CN104067621B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/14Fourier, Walsh or analogous domain transformations, e.g. Laplace, Hilbert, Karhunen-Loeve, transforms
    • G06F17/147Discrete 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/12Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
    • H04N19/122Selection of transform size, e.g. 8x8 or 2x4x8 DCT; Selection of sub-band transforms of varying structure or type
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Mathematical Analysis (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Discrete Mathematics (AREA)
  • Signal Processing (AREA)
  • Data Mining & Analysis (AREA)
  • Multimedia (AREA)
  • Mathematical Optimization (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Databases & Information Systems (AREA)
  • Algebra (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Complex Calculations (AREA)

Abstract

公开了用于对数据(例如残留视频数据)进行变换的整数变换、和/或整数变换操作的方法、设备以及系统。在这些方法、设备以及系统中,设备中可以包括处理器和存储器。该存储器包括一组变换矩阵、以及能够由所述处理器执行以使用所述一组变换矩阵中的任意变换矩阵来对数据(例如残留视频数据)进行变换的指令。所述一组变换矩阵中的每个变换矩阵可以是正交的,或可替换地可以是近似正交的并可以被完全因式分解。所述一组变换矩阵中的每个变换矩阵可以具有不同数量的元素。各个数量的元素中的每个元素是整数。每个变换矩阵的基本向量的范数之间的差值满足给定的阈值;并且所述基本向量接近离散余弦变换(DCT)矩阵的对应基本向量。

Description

使用偶数-奇数整数变换后台的视频和数据处理
背景技术
数字视频能力可以合并到多种设备中,包括数字电视、数字直播系统、无线广播系统、个人数字助理(PDA)、便携式电脑或台式机、数码相机、数字录像设备、视频游戏设备、视频游戏控制台、移动电话、卫星或其他无线电电话等等。许多数字视频设备实施视频压缩技术来更高效地传送和接收数字视频信息,该视频压缩技术包括例如由移动图像专家组(MPGA)(诸如MPEG-2、MPEG-4)、以及国际电信联盟(ITU)(诸如ITU-T H.263,或者ITU-T H.264/MPEG-4第十部分高级视频编码(AVC))、以及这些标准的扩展定义的标准中所描述的视频压缩技术。
视频压缩技术可以执行空间预测和/或时间预测(temporal prediction)来减少或去除视频序列内在的冗余。对于基于块的视频编码,可以将视频帧或片分成块(“视频块”)。根据不同的编码技术,帧内编码(intra-coded)(I)的帧或片中的视频块通过使用相对于相邻块的空间预测而被编码。帧间编码(inter-coded)(P或B)中的帧或片中的视频块可以使用相对于同一帧或片中的相邻视频块的空间预测、或者相对于其他参考帧中的视频块的时间预测。
发明内容
公开了用于对数据(例如残留(residual)视频数据)进行变换的整数变换、和/或整数变换操作的方法、设备以及系统。在这些方法、设备以及系统中,设备中可以包括处理器和存储器。该存储器可以包括一组变换矩阵、以及能够由所述处理器执行以使用所述一组变换矩阵中的任意矩阵来对数据(例如残留视频数据)进行变换的指令。所述一组变换矩阵中的每个变换矩阵是正交的,并且具有不同数量的元素。各个数量的元素中的每个元素是整数。每个变换矩阵的基本向量的范数(norm)之间的差值满足给定的阈值;并且所述基本向量大致对应于离散余弦变换(DCT)矩阵的基本向量。
可替换地,所述一组变换矩阵中的每个变换矩阵可以近似正交,具有不同数量的元素并且可被完全因式分解(factorization)。
在所述方法、设备以及系统中,还可以包括一种使用N阶整数变换来处理残留视频数据的方法。该方法可以包括:在第一预处理(preconditioning)单元处接收视频数据(例如残留视频数据)的向量,并且在第一预处理单元处对视频数据(例如残留视频数据)的向量进行处理以形成用于变换的第一和第二中间输出向量。该方法还可以包括:在第一变换单元处接收第一中间输出向量,并且在第一变换单元处对第一中间输出向量进行变换,以使用N/2阶整数偶数部分变换矩阵和N/2阶整数奇数部分矩阵的基本向量来形成偶数索引的变换系数。该方法还可以包括:在第二变换单元处接收第二中间输出向量,并且在第二变换单元处对第二中间输出向量进行变换,以通过对通过连续的N/2阶整数矩阵的第二中间输出向量进行处理来形成奇数索引的变换系数。N/2阶整数矩阵可以一起对N阶变换矩阵的奇数部分进行因式分解。
附图说明
可从以下描述中获取更详细的理解,这些描述是结合附图通过举例给出的。类似于详细的描述,这些附图中的图都是示例。因此,附图和详细描述中不能被看作是限制,而其它同样有效的实施例也是可能的和可行的。此外,在图中相同的参考数字表示相同的元件,其中:
图1A是示出一个示例性视频编码和解码系统的框图,在该系统中可以执行和/或实施一个或多个实施方式;
图1B是示出用于与视频编码和/或解码系统(例如如1A的系统)一起使用的一个示例性视频编码器单元的框图;
图1C是示出用于与视频编码器单元(例如如1A-1B的视频编码器单元)一起使用的一个示例性视频编码器的框图;
图1D是示出用于与视频编码器单元(例如如1A-1B的视频编码器单元)一起使用的一个示例性视频解码器的框图;
图2示出了根据一个非限制性实施方式的示例性32阶变换矩阵;
图3A-3B是示出用于执行K阶变换的部分因式分解的示例性结构的框图;
图4A-4B是示出用于执行32阶变换的部分因式分解的示例性结构的框图;
图5A-5B是示出用于执行8阶变换的完全因式分解的示例性结构的框图;
图6A-6B是示出用于执行16阶变换的完全因式分解的示例性结构的框图;
图7A-7B是示出用于执行32阶变换的完全因式分解的示例性结构的框图;
图8示出了根据一个非限制性实施方式的通信系统;
图9A是一个示例性通信系统的系统图,在该通信系统中可以实施所公开的一个或多个实施方式;
图9B是可以在图9A所示的通信系统中使用的一个示例性无线发射/接收单元(WTRU)的系统图;以及
图9C-9E是可以在图9A所示的通信系统中使用的一个示例性无线电接入网和示例性核心网的系统图。
具体实施方式
在下面的详细描述中,列出了许多具体细节来提供对所公开的实施方式和/或示例的透彻理解。但是,可以理解的是可以在不使用这里列出的一些或所有特定细节的情况下实施这些实施方式和示例。在其他实例中,没有详细描述公知的方法、过程、组件以及电路,从而不会使得下面的描述不清楚。另外,这里没有具体描述的实施方式和示例可以代替或结合这里所公开的实施方式和其他示例。
示例性系统架构
图1A是示出一个示例性视频编码和解码系统10的框图,在该系统10中可以执行和/或实施一个或多个实施方式。系统10可以包括源设备12,该源设备12经由通信信道16来传送编码后的视频信息给目的设备14。
源设备12和目的设备14可以是多种设备中的任意一种。在一些实施方式中,源设备12和目的设备14可以包括无线发射和/或接收单元(WTRU),例如可以通过通信信道16来传送视频信息(在这种情况下,通信信道16包括无线链路)的无线手持设备或任意无线设备。但是,在这里描述的、公开的或以其他方式显性、隐性地、固有地提供的(统称为“提供的”)方法、设备以及系统不必限为无线应用或设置。例如,这些技术可以应用于空中电视广播、有线电视传输、卫星电视传输、因特网视频传输、在存储介质上编码的编码后的数字视频、或者其他情况。因此,通信信道16可以包括和/或可以是适于传输编码后的视频数据的无线或有线媒介的任意组合。
源设备12可以包括视频编码器单元18、发射和/或接收(Tx/Rx)单元20以及Tx/Rx元件22。如图所示,可选地,源设备12可以包括视频源24。目的设备14可以包括Tx/Rx元件26、Tx/Rx单元28以及视频解码器单元30。Tx/Rx单元20、28中的每一个可以是或者包括发射机、接收机、或者发射机和接收机的组合(例如收发信机或发射机-接收机)。Tx/Rx元件22、26中的每一个可以是例如天线。根据所公开的内容,源设备12的视频编码器单元18和/或目的设备的视频解码器单元30可以被配置为和/或适于(统称为适合)应用这里提供的编码技术。
源和目的设备12、14可以包括其他元件/组件或装置。例如,源设备12可以适于接收来自外部视频源的视频数据。并且,目的设备14可以与外部显示设备(未示出)连接,而不是包括和/或使用(例如集成的)显示设备32。在一些实施方式中,可以将由视频编码器单元18产生的数据流传递给其他设备而无需将数据调制到载波信号上,例如通过直接数据传递,其中所述其他设备可以调制或不调制数据以进行传输。
图1示出的系统10仅仅是一个示例。这里提供的技术可以由数字视频编码和/或解码设备执行。虽然这里提供的技术一般可以由单独的视频编码和/或视频解码设备执行,但是所述技术还可以由组合的视频编码器/解码器(通常称为编解码器(CODEC))来执行。此外,这里提供的技术还可以由视频预处理器等等执行。源设备12和目的设备14仅仅是这种编码设备的示例:在该编码设备中,源设备12产生(和/或接收视频数据和产生)编码后的视频信息以用于传输给目的设备14。在一些实施方式中,设备12、14可以按照基本对称的方式操作,从而设备12、14中的每一个包括视频编码和解码组件和/或元件(统称为“元件”)。因此,系统10可以支持设备12、14之间的单向和双向视频传输中的任意一种,例如视频流、视频回放、视频广播、视频电话以及视频会议中的任意一种。在一些实施方式中,源设备12可以是例如适于产生(和/或接收视频数据和产生)编码后的视频信息以用于一个或多个目的设备14的流服务器,其中目的设备可以通过有线和/或无线通信系统与源设备12通信。
外部视频源和/或所述视频源24可以是和/或包括视频采集设备,例如视频摄像机、包含先前采集的视频和或从视频内容提供商供应的视频的视频存档。可替换地,外部视频源和/或所述视频源24可以产生基于计算机图形的数据作为源视频、或者直播视频、存档视频以及计算机产生的视频的组合。在一些实施方式中,如果视频源24是视频摄像机,源设备12和目的设备14可以是可拍照手机或视频手机,或者由可拍照手机或视频手机实现。但是,如上所述,这里提供的技术可应用于通常的视频编码,并且可应用于无线和/或有线应用。在任意情况下,视频编码器单元18可以对所采集的、预先采集的、计算机产生的视频、供应的视频、或其他类型的视频数据(统称为“未编码的视频”)进行编码,以形成编码后的视频信息。
Tx/Rx单元20可以调制编码后的视频信息,例如根据通信标准来进行调制,从而形成运载编码后的视频信息的一个或多个调制信号。Tx/Rx单元20还可以将调制信号传递给其发射机以进行传输。该发射机可以经由Tx/Rx元件22来将调制信号传送给目的设备14。
在目的设备14处,Tx/Rx单元28可以经由Tx/Rx元件26接收来自通过信道16的调制信号。Tx/Rx单元28可以对调制信号进行解调以获得编码后的视频信息。Tx/Rx单元28可以将编码后的视频信息传送给视频解码器单元30。
视频解码器单元30可以对编码后的视频信息进行解码以获得解码后的视频数据。编码后的视频信息可以包括由视频编码器单元18定义的语法信息。语法信息可以包括一个或多个元素(“语法元素”);一些或所有元素可用于对编码后的视频信息进行解码。语法元素可以包括例如编码后的视频信息的特征。语法元素还可以包括用于形成编码后的视频信息的未编码的视频的特征和/或描述对其进行的处理。
视频解码器单元30可以输出解码后的视频数据以用于稍后的存储和/或显示在外部显示器(未示出)上。可替换地,视频解码器单元30可以将解码后的视频数据输出给显示设备32。显示设备32可以是和/或包括适于向用户显示解码后的视频数据的多种显示设备中的单个、多个、其组合、多个的组合。这些显示设备的示例包括液晶显示器(LCD)、等离子显示器、有机发光二极管(OLED)显示器、阴极射线管(CRT)等等。
通信信道16可以是任意无线或有线通信媒介,例如射频(RF)频谱、或者一个或多个物理传输线,或者是无线和有线媒介的任意组合。通信信道16可以形成基于分组的网络(例如局域网)、广域网、或者全球网络(例如因特网)的一部分。通信信道16通常代表任意合适的通信媒介、或者不同通信媒介的集合,以用于将来自源设备12的视频数据传送给目的设备14,包括有线或无线媒介的任意合适的组合。通信信道16可以包括路由器、交换机、基站、或者可用于促进从源设备12到目的设备14的通信的任意其他设备。下面参考图8、9A-9E提供了可以促进设备12、14之间的这种通信的一个示例性通信系统的细节。下面也提供了可代表12、14的设备的细节。
视频编码器单元18和视频解码器单元30可以根据一种或多种标准和/或规范(例如MPEG-2、H.261、H.263、H.264、H.264/AVC、H.264根据SVC扩展而扩展的(“H.264/SVC”)等来运行。但是,可以理解,这里提供的方法、设备以及系统可应用于根据(和/或兼容)不同标准实施的其他视频编码器、解码器和/或编解码器(CODEC),或者应用于专用视频编码器、解码器和/或编解码器,包括将来还要开发的视频编码器、解码器和/或编解码器。但是,这里公开的技术还不限于任意特定的编码标准。
上面提及的H.264/AVC的相关部分可以从国际电信联盟得到,称为ITU-T建议H.264,或者更特别地,“ITU-T Rec.H.264以及ISO/IEC14496-10(MPEG4-AVC),2010年3月的‘Advanced Video Coding for GenericAudiovisual Services(用于通用视听服务的高级视频编码)’版本5”,其在这里被合并引用,并且在这里可以称为H.264标准或H.264规范、或者H.264/AVC标准或规范。H.264/AVC标准是由ITU-T视频编码专家组(VCEG)与ISO/IEC MPEG一起制定的合作关系(称为联合视频组(JVT))的产物。根据一些方面,这里提供的技术可应用于一般符合H.264标准的设备。JVT继续为扩展H.264/AVC标准而努力。
在ITU-T的各种论坛中,如关键技术领域(KTA)论坛,已开展了推进H.264/AVC标准的工作。至少一些论坛已经部分地推进了显示了比H.264/AVC标准显示的编码效率更高的编码效率的编码技术。例如,ISO/IECMPEG与ITU-T的VCEG已经建立了关于视频编码(JCT-VC)的联合协作小组,其已经开始开发下一代视频编码和/或压缩标准,称为高效视频编码(HEVC)标准。根据一些方面,这里提供的技术可以提供相对于和/或根据H.264/AVC和/或HEVC(当前起草的)标准的编码改进。
虽然在图1A-1D中没有示出,但是根据一些方面,视频编码器和视频解码器单元18、30中的每一个可以包括音频编码器和/或解码器或者与其集成(如果合适)。视频编码器和视频解码器单元18、30可以包括合适的复用-解复用(MUX-DEMUX)单元、或者其他硬件和/或软件,以处理以普通的数据流或可替换地单独的数据流的形式的音频和视频的编码。如果可应用,则复用-解复用单元可以符合例如ITU-T建议H.223复用器协议、或者例如用户数据报协议(UDP)之类的其他协议。
视频编码器和视频解码器单元18、30中的每一个或多个可以包括在一个或多个编码器或解码器中;任意一个可以集成为编解码器的一部分,并且可以与各自的相机、计算机、移动设备、用户设备、广播设备、机顶盒、服务器等等集成或以其他方式合并在一起。此外,视频编码器单元18和视频解码器单元30可以分别实施为多种合适编码器和解码器电路中的任意一者,例如一个或多个微处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(ASIC)、离散逻辑、软件、硬件、固件或其任意组合。可替换地,视频编码器和视频解码器单元18、30中的任一者或两者可以基本以软件实施,并且从而,视频编码器单元18和/或视频解码器单元30的元件的运行可以由合适软件指令执行,该软件指令由一个或多个处理器(未示出)执行。另外,除了处理器之外,该实施方式还可以包含片外(off-chip)组件,例如外部存储器(例如以非易失性存储器的形式)、输入/输出接口等等。
在其他实施方式中,视频编码器单元18和视频解码器单元30中的每一个的一些元件可以实施为硬件,而其他元件可以使用合适的软件指令来实施,该软件指令由一个或多个处理器(未示出)执行。在视频编码器和/或视频解码器单元18、30的元件的运行可以由一个或多个处理器执行的软件指令来执行的任意实施方式中,这种软件指令可以维持在计算机可读媒介上,该计算机可读媒介包括磁盘、光盘、以及CPU可读的任意其他易失性(例如随机接入存储器(RAM))或非易失性(例如只读存储器(ROM))大容量存储系统。计算机存储介质可以包括合作或互连的计算机可读媒介,其排他性地在处理系统上存在,或者分布可处于处理系统本地或远程的多个互连的处理系统之间。
图1B是示出用于与视频编码和/或解码系统(例如如1A的系统10)一起使用的一个示例性视频编码器单元18的框图。视频编码器单元18可以包括视频编码器33、输出缓冲器34以及系统控制器36。类似于视频编码器单元18,作为一个整体,视频编码器33(或者其一个或多个元件)可以根据一个或多个标准和/或规范来实施,例如H.261、H.263、H.264、H.264/AVC、H.264/SVC、HEVC等等。但是,应当理解这里提供的方法、设备以及系统可应用于根据不同标准实施的其他视频编码器、或者专用编解码器,包括将来还要开发的编解码器。
视频编码器33可以接收从视频源(诸如视频源24和/或外部的视频源)提供的视频信号。该视频信号可以包括未编码的信号。视频编码器33可以对未编码的视频进行编码,并在其输出提供编码后的(即压缩的)视频比特流(BS)。
可以将编码后的视频比特流BS提供给输出缓冲器34。输出缓冲器34可以缓冲编码后的视频比特流BS,并提供该编码后的视频比特流BS作为缓冲的比特流(BBS)以经由通信信道16进行传输。
可以将从输出缓冲器34输出的缓冲的比特流BBS提供给存储设备(未示出)以进行稍后的观看或传输。可替换地,视频编码器单元18可以被配置用于可视通信,在该可视通信种,缓冲的比特流BBS可以经由通信信道16在规定的时刻和/或可变的比特率(例如具有很低或最小的延迟)而被传送。
编码后的视频比特流BS以及相应的缓冲的比特流BBS可以运载编码后的视频信息的比特。缓冲的比特流BBS的比特可以被整理为编码后的视频帧流。编码后的视频帧可以是如本领域技术人员可以理解的帧内编码帧(例如I帧)、间编码帧(例如B帧或P帧)等等。编码后的视频帧流可以被整理为例如一系列GOP,其中每个GOP的编码后的视频帧以特定顺序排列。一般地,每个GOP以帧内编码帧(例如I帧)开始,随后是一个或多个帧间编码帧(例如P帧和/或B帧)。每个GOP通常仅包括单个的帧内编码帧;但是任意GOP可以包括多个帧内编码帧。注意传统的B帧不能用于实时的、低延迟的应用(这是因为,举例来说,与例如单向预测(P帧)相比,双向预测通常引起额外的编码延迟)。如本领域技术人员可以理解的,可以支持另外和/或其他帧类型,并且可以修改特定排序的编码后的视频帧。
每个GOP可以包括语法数据(“GOP语法数据”)。GOP语法数据可以部署在GOP的报头中、GOP的一个或多个帧的报头中、或者其他位置。GOP语法数据可以指示各个GOP的编码后的视频帧的排序、数量和/或类型,和/或以其他方式描述。每个编码后的视频帧可以包括语法数据(“编码后的帧语法数据”)。编码后的帧语法数据可以指示或以其他方式描述用于各个编码后的视频帧的编码模式。
系统控制器36可以监视不同的参数和/或与信道16相关联的限制、视频编码器单元18的可计算能力、用户的需求等等,并且可以建立目标参数以提供适用于规定的限制和/或信道16的条件的参与体验质量(QoE)。可以根据规定的限制和/或信道条件来不时地调整一个或多个目标参数。举例来说,可以使用用于评估视频质量的一个或多个度量(包括例如统称为编码后的视频序列的相对感知质量的度量)来从数量上估计。测量的编码后的视频序列的相对感知(perceptive)质量(例如通过使用峰值信噪比(“PSNR”)度量)由编码后的比特流BS的比特率(BR)来控制。可以调整一个或多个目标参数(包括例如量化参数(QP))来在与编码后的比特流BS的比特率BR相关联的限制下最大化视频的相对感知质量。
图1C是示出用于与视频编码器单元(例如如1A-1B的视频编码器单元18)一起使用的一个示例性视频编码器33的框图。视频编码器33可以包括输入38、模式决定和编码器控制器单元40、空间预测单元42、运动/时间预测单元44、第一加法器46、变换单元48、量化单元50、熵(entropy)编码单元52、反量化单元54、反变换单元56、第二加法器58、滤波器60、参考图片存储器62以及输出64。视频编码器33可以包括另外的元件和/或不同元件。为了简洁和清楚,没有示出这些元件。
此外,图1C中示出的以及在这里提供的视频编码器33的细节仅仅用于说明,而真正的实施可以不同。真正的实施可以包括例如更多的、更少的和/或不同的元件,和/或与图1C所示的布置不同地布置。例如,虽然变换单元48与量化单元50被分开示出,但是在一些真正的实施中,例如在使用H.264标准的核心变换的实施中,可以高度集成所述变换单元48与量化单元50的一些或所有功能。类似地,反量化单元54和反变换单元56在一些真正实施(例如,H.264标准兼容实施)中可以高度集成,但是为了概念目的同样可以分开示出。
如上所示,视频编码器33可以在其输入38处接收视频信号。视频编码器33可以从所接收到的未编码的视频产生编码后的视频信息,并从该视频编码器33的输出64将编码后的视频信息(例如任意帧内或帧间)以编码后的视频比特流BS的形式输出。视频编码器33可以例如作为混合视频编码器来运行,并使用基于块的编码过程来对未编码的视频进行编码。当执行该编码过程时,视频编码器33通常针对未编码视频的单独帧、图片、图像(统称为“未编码的图片”)进行操作。
为了促进基于块的编码过程,视频编码器33可以在其输入38处将每个未编码的图片分片、分割、分开或者以其他方式分段(统称为“分段”)为多个未编码的视频块。在一些实例中,视频编码器33可以首先将未编码的图片分段为多个未编码的视频分段(例如片),并且然后将每个未编码的视频分段分段为未编码的视频块。视频编码器33可以将未编码的视频块传递、供应、发送或以其他方式提供给空间预测单元42、运动/时间预测单元44和/或第一加法器46。如下面详细描述的,可以逐块地提供未编码的视频块。
空间预测单元42可以接收未编码的视频块,并将该视频块以帧内模式(intra-mode)编码。帧内模式指的是基于空间的压缩的若干个模式中的任意一种,并且在帧内模式中编码是尝试提供对未编码的图片的基于空间的压缩。基于空间的压缩(如果存在)可以是减少或移除未编码的图片内的视频信息的空间冗余的结果。在形成预测块的过程中,空间预测单元42可以相对于已经被编码(“编码的视频块”)和/或重新构建(“重新构建的视频块”)的未编码的图片的一个或多个视频块来执行每个未编码视频块的空间预测(或“帧内预测”)。编码后的视频块和/或重新构建的视频块可以邻近、接近、或非常靠近未编码的视频块。
运行/时间预测单元44可以接收来自输入38的未编码的视频块,并将该未编码的视频块以帧间模式(inter-mode)编码。帧间模式指的是基于时间的压缩的几种模式中的任意一种,包括例如P模式(单向预测)或B模式(双向预测)。在帧间模式中编码是尝试提供对未编码的图片的基于时间的压缩。基于时间的压缩(如果存在)可以是减少或移除未编码的图片与一个或多个参考(例如相邻)图片之间的视频信息的时间冗余的结果。运行/时间预测单元44可以相对于参考图片的一个或多个视频块(“参考视频块”)来执行每个未编码视频块的时间预测(或“帧间预测”)。执行的时间预测可以是单向预测(例如对于P模式)或者可替换地双向预测(例如对于B模式)。
在单向预测的情况下,参考视频块可以来自先前编码和/或重新构建的图片,并且在一些情况下,来自仅一个先前编码和/或重新构建的图片。编码后的图片和/或重新构建的图片可以邻近、接近、或非常靠近未编码的图片。
在双向预测的情况下,参考视频块可以来自一个或多个先前编码和/或重新构建的图片、以及视频流的一个或多个其他未编码的图片。编码后的图片和/或重新构建的图片和其他未编码的图片可以邻近、接近、或非常靠近未编码的图片。
如果支持多个参考图片(这符合最近的视频编码标准例如H.264/AVC或HEVC的情况),则对于每个视频块,可以将其参考图片索引发送给熵编码单元52,以用于随后的输出和/或传输。参考索引可以用于标识时间预测来自参考图片存储器62中的哪个或哪些参考图片。
虽然用于运动估计和运动补偿的运动/时间预测单元44的功能通常是高度集中的,但是其还可以由分开的实体或单元(未示出)来实现。可以执行运动估计相对于参考图片视频块来估计每个未编码视频块的运动,并且可以包括产生未编码的视频块的运动向量。运动向量可以指示预测块相对于正被编码的未编码视频块的移位。该预测块是根据像素差值发现非常匹配正被编码的未编码的视频块的参考图片视频块。所述匹配可以由绝对差值的和(SAD)、平方差的和(SSD)、或者其他差值度量来确定。运动补偿可以包括基于由运动估计确定的运动向量来取得或产生预测块。
运动/时间预测单元44可以通过比较未编码的视频块与来自存储在参考图片存储器64中的参考图片的参考视频块,来计算未编码的视频块的运动向量。运动/时间预测单元44可以计算包括在参考图片存储器62中的参考图片的部分像素位置的值。在一些情况下,加法器58或视频编码器33的另一单元可以计算重新构建的视频块的部分像素位置值,并且然后将重新构建的视频块和部分像素位置的计算的值存储在参考图片存储器62中。运动/时间预测单元44还可以插入参考图片(例如I帧或P帧的参考图片)的亚整数像素(sub-intergal pixel)。
运动/时间预测单元44可以被配置为相对于选择的运动预测算子(predictor)来对运动向量进行编码。由运动/时间预测单元44选择的运动预测算子可以是例如等于已被编码的相邻块的运动向量的平均值的向量。为了对未编码视频块的运动向量进行编码,运动/时间预测单元44可以计算运动向量与运动预测算子之间的差值以形成运动向量差值。
H.264将一组可能的参考帧称为“列表”。存储在参考图片存储器62中的一组参考图片可以对应于这种参考帧列表。运动/时间预测单元44可以比较来自参考图片存储器62的参考图片的参考视频块与未编码的视频块(例如P帧或B帧的视频块)。当参考图片存储器62中的参考图片包括亚整数像素的值,由运动/时间预测单元44计算的运动向量可以指参考图片的亚整数像素位置。运动/时间预测单元44可以发送所计算的运动向量给熵编码单元52以及运动/时间预测单元44的运动补偿功能。运动/时间预测单元44(或其运动补偿功能)可以相对于正被编码的未编码视频块来计算预测块的差错值。运动/时间预测单元44可以基于预测块来计算预测数据。
模式决定和编码器控制器单元40可以选择一种编码模式:帧内模式或帧间模式。模式决定和编码器控制器单元40可以基于例如速率失真优化方法和/或每种模式中产生的错误结果来选择编码模式。
视频编码器33可以通过从正被编码的未编码视频块中减去从运动/时间预测单元42提供的预测数据来形成残留块(“残留视频块”)。加法器46代表执行该减去操作的一个或多个元件。
变换单元48可以对残留视频块应用变换以将该残留视频块从像素值域变换到变换域,例如频域。该变换可以是例如这里提及的任意一种变换:离散余弦变换(DCT)、或类似概念的变换。其他变换的例子包括H.264中定义的那些:小波变换、整数变换、子带变换等等。在任意情况下,由变换单元48对残留视频块应用变换会产生残留视频块的变换系数的相应块(“残留变换系数”)。这些残留变换系数可以表示残留视频块的频率分量的量级。变换单元48可以将残留变换系数和运动向量转发给量化单元50。
量化单元50可以量化残留变换系数以进一步减小编码后的比特率。量化过程可以例如减小与一些或所有残留变换系数相关联的比特深度(bitdepth)。在一些情况下,量化单元50可以将残留变换系数的值除以与QP对应的量化水平,以形成量化后的变换系数块。量化的程度可以通过调整QP值来修改。一般地,量化单元50应用量化以使用期望个数的量化步长来表示残留变换系数;使用的步长的个数(或相应地,量化水平的值)可以确定用于表示残留视频块的编码后的视频比特数。量化单元50可以从比特控制器(未示出)获得QP值。在量化之后,量化单元50可以提供量化后的变换系数和运动向量给熵编码单元50和反量化单元54。
熵编码单元52可以对量化后的变换系数应用熵编码以形成熵编码系数(即比特流)。熵编码单元52可以使用自适应可变长度编码(CAVLC)、上下文自适应二进制算术编码(CABAC)或另一种熵编码技术来形成熵编码系数。如本领域技术人员的理解,CABAC需要上下文信息(“上下文”)的输入。该上下文可以基于例如相邻视频块。
熵编码单元52可以按照粗(raw)编码视频比特流的形式提供熵编码系数和运动向量给内比特流格式器(未示出)。该比特流格式器可以通过将另外的信息添加到粗编码视频比特流来形成提供给输出缓冲器34(图1B)的编码后的视频比特流BS,所述另外的信息包括报头、和/或使得视频解码器30能够从粗编码视频比特流解码编码后的视频块的其他信息。在熵编码之后,从熵编码单元52提供给输出缓冲器34的编码后的视频比特流BS可以经由信道16而被传送给目的设备14或者存档以用于稍后的传输或获取。
在一些实施方式中,除了熵编码之外,熵编码单元52或视频编码器33的另一单元还可以被配置为执行其他编码功能。例如,熵编码单元52可以被配置为确定视频块的CBP值。另外,在一些实施方式中,熵编码单元52可以执行视频块中的量化变换系数的运行(run)长度编码。例如,熵编码单元52可以应用锯齿扫描(zigzag scan)或其他扫描模式以安排视频块中的量化变换系数并对零的运行进行编码以用于进一步压缩。熵编码单元52还可以用合适的语法元素来构建报头信息以用于编码后的视频比特流BS中的传输。
反量化单元54和反变换单元56可以分别应用反量化和反变换以在像素域中重新构建残留视频块,例如从而稍后用作参考视频块的一个(例如参考图片列表中的参考图片的一个内)。
模式决定和编码器控制器单元40可以通过将重新构建的残留视频块添加到参考图片存储器62中存储的参考图片的一个的预测块来计算参考视频块。模式决定和编码器控制器单元40还可以将一个或多个插入滤波器应用到重新构建的残留视频块以计算亚整数像素值(例如对于半像素位置)以用于运动估计。
加法器58可以将重新构建的残留视频块添加到运动补偿预测视频块以产生重新构建的视频块,从而存储在参考图片存储器62中。运动/时间预测单元44(或其运动估计功能和/或其运动补偿功能)可以将重新构建(像素值域)的视频块用作参考块的一个,以用于对随后的未编码视频中的未编码视频块进行间编码。
滤波器60可以包括解块(deblock)滤波器。解块滤波器可以操作来去除可能出现在重新构建的宏块(macro-block)中的视觉伪像(visual artifact)。这些伪像可能是在编码过程中由于例如使用不同的编码模式(例如I型、P型或B型)而引入的。伪像可能出现在例如接收到的视频块的边界处和/或边缘处,并且解块滤波器可以操作来使得视频块的边界处和/或边缘处平滑以改进视觉质量。如果需要,解块滤波器通常会对加法器58的输出进行滤波。
图1D是示出用于与视频解码器单元(例如如1A-1B的视频解码器单元30)一起使用的一个示例性视频解码器35的框图。视频解码器35可以包括输入66、熵解码单元68、运动补偿预测单元70、空间预测单元72、反量化单元74、反变换单元76、参考图片存储器80、滤波器82、加法器78以及输出84。视频解码器35可以执行解码处理,即一般与关于视频编码器33(图1C)提供的编码过程是相对的。所述解码过程可以如下执行。
运动补偿预测单元70可以基于从熵解码单元68接收到的运动向量来产生预测数据。运动向量可以相对于对应于该被编码的运动向量的视频块的运动预测算子被编码。运动补偿预测单元70可以确定运动预测算子,例如确定为邻近将要被解码的视频块的块的运动向量的中值。在确定运动预测算子之后,运动补偿预测单元70可以通过从编码后的视频比特流BS提取运动向量差值、以及将运动预测算子加上运动向量差值来对编码后的运动向量进行解码。运动补偿预测单元70可以将运动预测算子量化到与编码后的运动向量相同的分辨率(resolution)。可替换地,运动补偿预测单元70可以为所有编码后的运动预测算子使用相同的精度。可替换地,运动补偿预测单元70可以被配置为使用上述方法中的任意一种,并通过分析包括在从编码后的视频比特流BS获得的序列参数集合、分片参数集合、或图片参数集合中的数据来确定要使用哪种方法。
在对运动向量进行解码之后,运动补偿预测单元70可以从参考图片存储器80的参考图片中提取由运动向量标识的预测视频块。如果运动向量指向部分像素位置,例如半像素,则运动补偿预测单元70可以为部分像素位置插入值。运动补偿预测单元70可以使用自适应插入滤波器或固定的插入滤波器来插入这些值。此外,运动补偿预测单元70可以从接收到的编码后的视频比特流BS获得要使用滤波器82中的哪个滤波器的指示以及(在一些实施方式中)针对滤波器82的系数。
空间预测单元72可以使用在编码后的视频比特流BS中接收到的帧内预测模式来从空间上邻近的块形成预测视频块。反量化单元74可以对在编码后的视频比特流BS中提供且由熵解码单元68解码的量化块系数进行反量化,即去量化。反量化过程可以包括常规的过程,例如由H.264定义的过程。反量化过程还可以包括为每个视频块使用由视频编码器33计算的量化参数QP来确定量化的程度,并且同样地确定可以应用的反量化的程度。
反变换单元76可以将反变换(例如这里提供的变换中的任意一种的反变换:反DCT、反整数变换、或者概念上类似的反变换过程)应用到变换系数来在像素域中产生残留视频块。运动补偿预测单元70可以产生运动补偿块,可能基于插入滤波器执行插入。要用于具有亚像素精度的运动估计的插入滤波器的标识符可以包括在视频块的语法元素中。运动补偿预测单元70可以使用视频编码器33在对视频块进行编码期间使用的插入滤波器来计算用于参考块的亚整数像素的插入值。运动补偿预测单元70可以根据接收到的语法信息来确定由视频编码器33使用的插入滤波器,并使用该插入滤波器来产生预测块。
运动补偿预测单元70可以使用一些语法信息来确定用于编码编码后的视频序列的一个或多个图片的视频块的大小、描述如何分割编码后的视频序列的帧的每个视频块的分割信息、指示如何对每个分割进行编码的模式、用于每个帧间编码视频块的一个或多个参考图片、以及用于对编码后的视频序列进行解码的其他信息。
加法器78可以对由运动补偿预测单元70或空间预测单元72产生的残留块和相应的预测块进行求和以形成解码后的视频块。在需要的情况下,还可以应用解块滤波器(例如滤波器82)对解码后的视频块进行滤波以去除块效应(blockiness)伪像。然后解码后的视频块被存储在参考图片存储器80中,其提供参考视频块来用于随后的运动补偿,并且还产生解码后的视频来在显示设备上呈现(例如图1的显示设备34)。
在每个视频块经历编码和/或解码过程时,该视频块的视频信息可以不同地表示。例如,视频块可以包括:(ⅰ)像素域中的像素数据;(ⅱ)表示未编码视频块与预测块之间的像素差的残留数据(“残留”);(ⅲ)变换域中的变换系数(例如,在应用变换之后);以及(iv)量化变换域中的量化变换系数。
每个视频块可以具有给定的尺寸或者统称为“大小”。视频块大小可以取决于编码标准。例如,H.264标准支持不同视频块大小的帧内预测,例如用于亮度(luma)分量的16x16、8x8或4x4、和用于色度分量的8x8,并且支持不同块大小的帧间预测,例如用于亮度分量的16x16、16x8、8x16、8x8、8x4、4x8以及4x4、和用于色度分量的相应缩放的大小。在H.264标准中,尺寸为16像素乘16像素的视频块一般称为宏块(MB),而尺寸小于16像素乘16像素的视频块一般称为部分MB(“MB部分”)。在HEVC中,称为“编码单元”或“CU”的视频块可以用于更有效地压缩高分辨率(例如1080p及以上)的视频信号。在HEVC中,CU大小在参数序列集合中设定,并且可以设定为最大为64x64像素或最小为4x4像素。还可以将CU分割为预测单元(PU),对于该分割可以应用单独的预测方法。每个视频块(MB、CU、PU等)可以通过使用空间预测单元42和/或运动/时间预测单元44来处理。
如这里使用的,“NxN”和“N乘N”可互换使用以指代在竖直和水平尺寸中的分量(例如像素、残留、变换系数、量化变换系数等)方面的块大小,例如16x16元素或16乘16元素。一般地,16x16视频块将在竖直方向具有16个元素(y=16)且在水平方向具有16个元素(x=16)。类似地,NxN块一般在竖直方向具有N个元素且在水平方向具有N个元素,其中N代表非负整数值。视频块中的元素可以按照行和列来布置。此外,视频块可以在水平方向和竖直方向具有相同或不同数量的像素。例如,视频块可以包括NxM个像素,其中M不必等于N。
H.264/AVC标准规定了4阶和8阶整数变换,称为T4和T8,如下给出:
T 4 = 1 1 1 1 2 1 - 1 - 2 1 - 1 - 1 1 1 - 2 2 - 1 - - - ( 1 )
T 8 = 8 8 8 8 8 8 8 8 12 10 6 3 - 3 - 6 - 10 - 12 8 4 - 4 - 8 - 8 - 4 4 8 10 - 3 - 12 - 6 6 12 3 - 10 8 - 8 - 8 8 8 - 8 - 8 8 6 - 12 3 10 10 - 3 12 - 6 4 - 8 8 - 4 - 4 8 - 8 4 3 - 6 10 - 12 12 - 10 6 3 - - - ( 2 )
这两个整数变换T4和T8是正交的,并具有很低的复杂度。但是这些变换的基本向量与DCT基本不同,并且因此性能一般比DCT差得多。另外,基本向量的范数彼此不同。为了实现相反特性(reversibility)和能量保存,缩放过程必须在变换之后执行,以弥补该缺点,这增加了计算复杂度和存储需求。另外,这种缩放矩阵通常随着变换的不同而不同。例如,4阶变换和8阶变换T4和T8需要使用不同的缩放矩阵。不同缩放矩阵的使用进一步增加了编解码器设计和实施的复杂性,并且使得在需要另外的变换时难以支持该另外的变换。
如上所述,在HEVC中,CU大小和PU大小最大可以为64x64元素,并且需要大于4阶和8阶的变换。当前,在HEVC中使用四种变换大小:4阶、8阶、16阶以及32阶。
这里公开具有一组变换矩阵的设备和有形的计算机可读存储媒介。所述一组变换矩阵中的每个变换矩阵是正交的,并且具有不同数量的元素。各个数量的元素中的每个元素是整数。每个变换矩阵的基本向量的范数之差满足给定的阈值。并且基本向量接近DCT矩阵的相应的基本向量。给定的阈值可以为:例如当满足该阈值时,其指示基本向量的范数之差不大(例如在特定程度的精度内)。可替换地,给定的阈值可以为:当满足该阈值时,其指示基本向量的范数基本相等。在一个实施方式中,根据失真的测量,基本向量接近对应的DCT基本向量。在一个实施方式中,根据满足预定义的阈值的失真的测量,基本向量接近对应的DCT基本向量。
在这里还公开了用于产生和/或使用N阶整数变换(称为TN)的方法、设备以及系统,其中N可以是4、8、16、32等。在这里公开的各个实施方式中,变换的“阶”可以使用其他标记来表达,例如术语“K阶”等等。
N阶整数变换TN中的每个可以是正交的。当为正交的时,这些N阶整数变换TN可以使得重新构建的误差的平均能量等于量化误差的平均能量(与非正交变换不同),并且从而比非正交变换具有更好的变换性能。
每个N阶整数变换TN可以具有带有几乎相等的范数(“TN基本向量范数”)的基本向量(“TN基本向量”)。例如,TN基本向量范数之差可以小于给定的阈值。例如,TN基本向量可以接近DCT的基本向量(“DCT基本向量”)。TN基本向量与DCT基本向量之差可以根据DCT失真来测量。并且当DCT失真小于预定义的阈值时,TN基本向量可以接近DCT基本向量。DCT失真的计算可以包括变换的所有或部分基本向量。在一个实施方式中,TN的DCT失真可以计算如下。首先,TN基本向量中的每个向量被规范化。TN基本向量可以通过将TN基本向量中的每个向量除以其自身的范数而被规范化。然后,DCT失真可以使用等式(3)和(4)计算如下:
失真矩阵 ( DistortionMaxtrix ) = ICT N × DCT N T - - - ( 3 )
其中ICTN是规范化的TN,并且DCTN是NxN DCT矩阵,以及
Distortion DCT = 1 N Σ s ∈ S Σ j = 0 j ≠ s N - 1 | DistortionMaxtrix ( s , j ) DistortionMaxtirx ( s , s ) | - - - ( 4 )
其中S是变换的基本向量集。S可以包括所有基本向量(例如s可以是{0,1,2,…,N-1})或者部分基本向量(例如s可以是{0,1,2,7,10,…})。
在一个实施方式中,N阶整数变换TN可以具有显示特定的对称性和结构的各自的变换矩阵。这些对称性和结构可以有利于使用快速算法,例如这里公开的算法。在一个实施方式中,可以使用16位算术来实现对N阶整数变换TN的正变换、量化、去量化和/或反变换中的任意一种。
这里还公开了N阶变换族(family),其中N是8、16以及32。同一族的每个变换TN可以具有相同的结构(“变换族结构”)。例如,8阶变换族中的变换T8可以都具有8阶变换族结构。16阶变换族中的变换T16可以都具有16阶变换族结构,并且32阶变换族中的变换T32可以都具有32阶变换族结构。变换族结构可以允许相应族的每个变换TN被完全因式分解并且使用快速算法来实施。除了使用完全因式分解实施之外,每个族的变换内的许多实施方式(像N阶整数变换,称为TN)可以:(i)是正交的或近似正交的,并且(ii)具有几乎相等的范数的基本向量。这些基本向量也可以接近DCT的基本向量。此外,这些实施方式的正变换、量化、去量化和/或反变换中的任意一种可以使用被配置为使用16比特算术的结构执行和/或实现。可替换地,所述实施方式的正变换、量化、去量化和/或反变换中的任意一种也可以使用被配置为使用其他算术格式执行和/或实现。
N阶整数变换的示例性变换矩阵
在一个实施方式中,K阶变换TK可以使用中间矩阵(称为T′K)来形成。根据一个实施方式,中间矩阵T′K可以根据中间变换系数矩阵与偶数奇数分解矩阵的矩阵乘法来表示。中间变换系数矩阵可以包括偶数部分和奇数部分。将偶数奇数分解矩阵应用到K阶变换TK可以将K阶变换TK分解为偶数部分和奇数部分。偶数部分可以是例如N/2阶(即较低阶)变换而奇数部分可以是较低阶变换矩阵在一个实施方式中,中间矩阵T′K可以表示如下:
T K ′ = T K / 2 0 0 P K / 2 I K / 2 J K / 2 I K / 2 - J K / 2 - - - ( 5 )
其中K=2Z,Z是正整数, T K / 2 0 0 P K / 2 可以是中间变换系数矩阵,并且 I K / 2 J K / 2 I K / 2 - J K / 2 可以是偶数奇数分解矩阵。在该偶数奇数分解矩阵中,IN和JN可以定义如下:
I N ( i , j ) = 1 ifi = j 0 otherwise 0 ≤ i , j ≤ N - 1 - - - ( 6 )
I N ( i , j ) = 1 if ( i + j ) = N - 1 0 otherwise 0 ≤ i , j ≤ N - 1 - - - ( 7 )
从中间矩阵TN′到N阶变换矩阵TN的转换可以如下执行:
T N ( i , j ) = T N ′ ( n , j ) ifi = 2 n T N ′ ( n + N 2 , j ) ifi = 2 n + 1 0 ≤ i , j ≤ K - 1 - - - ( 8 )
例如,根据一个实施方式,用于形成8阶变换T8的中间矩阵(称为T 8)可以根据中间变换系数矩阵 T 4 0 0 P 4 与偶数奇数分解矩阵 I 4 J 4 I 4 - J 4 的矩阵乘法来表示。例如中间矩阵T′8可以表示如下:
T 8 ′ = T 4 0 0 P 4 I 4 J 4 I 4 - J 4 - - - ( 9 )
中间变换系数矩阵 T 4 0 0 P 4 可以包括偶数部分和奇数部分。偶数部分可以是4阶变换T4的变换矩阵(即较低阶N/2,其中N=8),而奇数部分可以是较低阶矩阵P4。根据一个实施方式,4阶变换T4(或关于等式(9),“较低阶偶数部分矩阵”)可以如下表示:
4阶变换T4的变换系数可以基于多个因素根据经验确定。这些因素可以包括:例如,所有变换系数为整数、4阶变换T4为正交的、T4基本向量范数相等或几乎相等(例如满足一个阈值)、以及T4基本向量接近DCT基本向量(例如满足DCT失真小于预定义的阈值的条件)。
根据一个实施方式,较低阶矩阵P4(或关于等式(9),“较低阶偶数部分矩阵”)可以表示如下:
较低阶矩阵P4的元素可以基于多个因素根据经验确定。这些因素可以包括:例如,所有元素为整数、较低阶矩阵P4为正交的、较低阶矩阵P4基本向量范数相等或几乎相等(例如满足一个阈值)、以及较低阶矩阵P4基本向量接近DCT基本向量(例如满足DCT失真小于预定义的阈值的条件)。
偶数奇数分解矩阵的I4和J4可以分别按照上面的等式(6)和(7)来表示。
根据等式(8)-(11),8阶整数变换T8可以表示如下:
在一个实施方式中,N阶整数变形TN中的每个可以根据较低阶整数变换来表示。例如,根据一个实施方式,用于形成16阶变换T16的中间矩阵T′16可以根据中间变换系数矩阵 T 8 0 0 P 0 与偶数奇数分解矩阵 I 8 J 8 I 8 - J 8 的矩阵乘法来表示。中间变换系数矩阵 T 8 0 0 P 0 可以包括偶数部分和奇数部分。偶数部分可以是8阶(即较低阶)变换T8,并且奇数部分可以是较低阶变换矩阵P4。中间矩阵T′16可以表示如下:
T 16 ′ = T 8 0 0 P 8 I 8 J 8 I 8 - J 8 - - - ( 13 )
其中P8可以定义如下:
基于等式(6)-(8)以及(13)-(14),16阶变换矩阵T16可以表示如下:
在一个实施方式中,N阶整数变换TN中的每个可以根据较低阶整数变换来表示。根据一个实施方式,用于形成32阶变换T32的中间矩阵T′32可以根据中间变换系数矩阵 T 16 0 0 P 16 与偶数奇数分解矩阵 I 16 J 16 I 16 - J 16 的矩阵乘法来表示。中间变换系数矩阵 T 16 0 0 P 16 可以包括偶数部分和奇数部分。偶数部分可以是16阶(即较低阶)变换T16,并且奇数部分可以是较低阶矩阵矩阵P16。中间矩阵T′32可以表示如下:
T 32 ′ = T 16 0 0 P 16 I 16 J 16 I 16 - J 16 - - - ( 16 )
在一个实施方式中,等式(16)的较低阶矩阵P16可以定义如下:
P 16 = P 8 0 0 P 8 W - - - ( 17 )
其中是用于小波分解的较低阶中间矩阵,W可以是16x16小波变换,一个示例可以示出如下:
小波变换可以是例如哈尔(Haar)变换。所述小波变换也可以是其他小波变换。用于小波分解的较低阶中间矩阵中的P8可以是较低阶8变换T8(即N/4即变换)。基于等式(6)-(8)和(16)-(18),可以产生图2中示出的32阶变换矩阵T32
示例操作
参考图1C-1D,对于视频编码器33和视频解码器35,到视频编码器33的变换单元48的输入的动态范围与视频解码器35的反变换74的输出的动态范围可以相同。对于视频编码器33和/或视频解码器35中的变换操作,该动态范围可以首先被检测到,并且然后由比特深度(“BD”)表示。举例来说,如果动态范围是[-255,255],则BD等于8。如果动态范围是[-1023,1023],则BD等于10。在确定动态范围后,可以计算变量ΔBD。例如,变量ΔBD可以计算为BD-8。
随后,在视频编码器33中,预测残留块XMXN(其大小是M×N(M,N∈{4,8,16,32}))在变换单元48、量化单元50、反量化单元54以及反变换单元56中被处理。下面更详细地提供这四个视频处理的操作。如这里所使用的,在反量化单元54和反变换单元56执行的操作可以分别称为去量化和反变换。在视频解码器35中,在反量化单元74和反变换单元76中执行的操作通常与在反量化单元54和反变换单元56中执行的操作相同。
正变换
到正变换的输出可以是预测残留块,记作XMxN。为了对XMxN执行2-D正变换,XMxN中的M行和N列在每个方向连续地变换,分别称为水平和竖直正变换。可以首先形成水平和竖直正变换。
如果先执行了水平正变换,则XMxN可以首先右乘(上标T表示转置),并且右移适当数量的比特以适应16比特算术。结果可以为UMxN,表示如下:
U MxN = ( X MxN × T N T + f fwd , h ) > > ( log 2 ( n ) + ΔBD - - - - ( 19 )
其中上述TN(N∈{4,8,16,32}),并且“>>”意思是右移。因数ffwd,h用于取整(rounding),并且范围可以为。在这里为了描述简单,ffwd,h可以等于
在水平正变换之后可以对中间块UMxN执行竖直正变换。竖直正变换的过程可以如下:
YMxN=(TM×UMxN+ffwd,v)>>(log2(M)+7) (20)
并且因数ffwd,v的范围可以为,并且为了描述简单,ffwd,h可以等于
但是,如果先执行竖直正变换,则XMxN可以首先左乘TM,并且右移适当数量的比特以适应16比特算术。结果可以为UMxN,表示如下:
UMxN=(TM×XMxN+ffwd,v)>>(log2(M)+ΔBD) (21)
其中因数ffwd,v用于取整,并且范围可以为。在这里为了描述简单,ffwd,v可以等于
在竖直正变换之后可以对中间块UMxN执行水平正变换。水平正变换的过程可以如下:
Y MxN = ( U MxN × T N T + f fwd , h ) > > ( log 2 ( N ) + 7 ) - - - ( 22 )
其中因数ffwd,h的范围应当为,并且为了描述简单,可以等于
量化
量化的输出可以是2-D正变换的输出,即YMxN。用于YMxN中的所有元素的量化过程可以是相同的或不同的。给定元素YMxN(i,j)(0≤i≤M-1,0≤j≤N-1)并且相关联的量化步长WMxN(i,j),则量化过程可以如下:
其中fMxN,q(i,j)是用于取整的因数,并且范围可以为[0,在这里为了描述简单,fMxN,q(i,j)可以等于在等式(23)中,SMxN(i,j)和QMxN(i,j)可以满足如下关系:
S M × N ( i , j ) 2 QM × N ( i , j ) ≈ 1 w M × N ( ( i , j ) - - - ( 24 )
其中≈意思是乘以SMxN(i,j),并且然后使用右移QMxN(i,j)比特来接近除以量化步长WMxN(i,j)。可以通过增加右移比特QMxN(i,j)的数量来更加精确接近。
去量化
去量化可以用于使用输入ZMxN来重新构建YMxN。重新构建的块记作Y’MxN。从直观上看,Y’MxN(i,j)可以等于ZMxN(i,j)乘以量化步长WMxN(i,j)。但是WMxN(i,j)不必是整数,并且因此也可以执行类似于(24)的接近以进行去量化,如等式(25)中所示:
D M × N ( i , j ) 2 IQM × N ( i , j ) ≈ w M × N ( ( i , j ) - - - ( 25 )
类似地,大的IQMxN(t,f)意思是高精度。去量化过程可以如下:
Y ′ MxN ( i , j ) = ( Z MxN ( i , j ) × D MxN ( i , j ) + f MxN , dq ( i , j ) ) > > ( IQ MxN ( i , j ) + 1 2 log 2 ( M × N ) - 7 + ΔBD ) - - - ( 26 )
fMxN,dq(i,j)是用于取整的因数,并且范围应当为[0,在这里为了描述简单,fMxN,dq(i,j)可以等于和/或取决于 2 ( IQ M × N ( i , j ) + 1 2 log 2 ( M × N ) - 8 + ΔBD ) . 注意 ( IQ MxN ( i , j ) + 1 2 log 2 ( M × N ) - 7 + ΔBD)的值小于0意味着左移,在这种情况下,fMxN,dq(i,j)可以设定为0。
反变换
到反变换的输入可以是去量化块Y’MxN。为了对Y’MxN执行2-D反变换,分别使用水平和竖直反变换对Y’MxN中的M行和N列顺序地变换。可以首先执行水平或竖直反变换。
如果先执行了水平反变换,则Y’MxN可以首先右乘TN,并且右移适当数量的比特以适应16比特算术。结果可以为中间块VMxN,表示如下:
VMxN=(Y’MxN×TN+finv,h)>>8 (27)
因数finv,h用于取整,并且范围可以为[0,256]。在这里为了描述简单,finv,h可以等于128。
在水平反变换之后可以对中间块VMxN执行竖直反变换。竖直反变换的过程可以如下:
X ′ MxN = ( T M T × V MxN + f inv , v ) > > ( 13 - ΔBD ) - - - ( 28 )
其中因数finv,v的范围可以为[0,2(13-ΔBD)]并且为了描述简单,可以等于2(12-ΔBD)
如果先执行竖直反变换,则Y’MxN可以首先左乘并且右移适当数量的比特以适应16比特算术。得到的中间块VMxN表示如下:
V MxN = ( T M T × Y ′ MxN + f in , v , ) > > 8 - - - ( 29 )
因数finv,v用于取整,并且范围可以为[0,256]。在这里为了描述简单,finv,v可以等于128。
在竖直反变换之后可以对中间块VMxN执行水平反变换。水平反变换的过程可以如下:
X’MxN=(VMxN×TN+finv,h)>>(13-ΔBD) (30)
其中因数finv,v范围可以为[0,2(13-ΔBD)],并且为了描述简单,可以等于2(12-ΔBD)
下表1总结了在以上公开的操作的每个步骤之后的动态范围,假设在竖直变换之前执行执行水平变换。从表中可以证明,所有过程可以使用16比特算术来实施。
表1各种操作之后的动态范围(先执行水平变换)
正变换/反变换的因式分解
正变换和反变换的定义包括矩阵乘法,例如等式(19)-(22)和(27)-(30)。对于某些实施平台,矩阵乘法的复杂度高。这里提供了矩阵乘法的简化。至少一些简化是基于变换TN的对称性、奇数部分、用于小波分解的较低阶中间矩阵、以及小波分解矩阵等等进行的。
用于变换的一般部分因式分解
图3A-3B是示出用于执行K阶变换的部分因式分解的示例性结构的框图。图3A中示出了用于执行K阶变换(K∈{4,8,16,32})的部分因式分解的示例性正变换结构、模块或单元(统称为“单元”)300。正变换单元300可以分解为两级。第一级可以包括1级单元302,而第2级可以包括2级单元304、306。假设输入向量为1级单元302可以适于执行 I K / 2 J K / 2 I K / 2 - J K / 2 和x的矩阵乘法,如下:
a = I K / 2 J K / 2 I K / 2 - J K / 2 x - - - ( 31 )
其中a=[a0,a1,...,ak-1]T是1级单元302的中间变换结果输出和2级单元304、306的输入。2级单元304、306可以将中间变换结果a分为两部分,称为7a=[a0,a1,...,ak-1]T的第一半和第二半。中间变换结果a的第一半称为[a0,a1, ...,ak/2-1]T其可以输入到2.1级单元304中。2.1级单元304可以与执行矩阵乘法,例如,表示如下:
[f0,f2,...,fk-2]T=Tk/2×[a0,a1,...,ak/2-1]T (32)
其中[f0,f2,...,fk-2]T代表变换矩阵TN的输出处的偶数索引的元素。[f0,f2,...,fk2]T的每个元素对应于变换矩阵TK的偶数部分的基本向量。另外,注意其是1-D正变换的输出。中间变换结果a的第二半称为[ak/2,ak/2+1,...,ak-1]T其可以输入到2.2级单元306中。2.2级单元306可以与执行矩阵乘法,例如,如下:
[f1,f3,...,fk-1]T=Pk/2×[ak/2,ak/2+1,...,ak-1]T (33)
其中[f1,f3,...,fk-1]T代表变换矩阵TN的输出处的奇数索引的元素。[f1,f3,...,fk-1]T的每个元素对应于变换矩阵TK的奇数部分的基本向量。
图3B中示出了用于执行K阶变换(K∈{4,8,16,32})的部分因式分解的示例性反向变换单元350。反向变换单元350可以分解为两级。第一级可以包括1级单元352和354,而第2级可以包括2级单元356。f=[f0,f1,...,fk-1]T的偶数索引的元素和奇数索引的元素可以首先被单独地分组,并且如图所示,分别输入到1.1级单元352和1.2级单元354。1.1级单元352可以执行与[f0,f2,...,fk-2]T的矩阵乘法;并且1.2级单元354可以执行与[f1,f3,...,fk-1]T的矩阵乘法,例如,如下所示:
[ b 0 , b 1 , . . . , b k / 2 - 1 ] T = T k / 2 T × [ f 0 , f 2 , . . . , f k - 2 ] T - - - ( 34 )
[ b k / 2 , b k / 2 + 1 , . . . , b k - 1 ] T = P k / 2 T × [ f 1 , f 2 , . . . , f k - 1 ] T - - - ( 35 )
1.1级单元352和1.2级单元354的输出可以分别是中间反变换结果b=[b0,b1,...,bk-1]T的第一半和第二半。中间反变换结果b可以输入到2级单元356。2级单元356可以执行 I K / 2 J K / 2 I K / 2 - J K / 2 T 与b的矩阵乘法,例如,如下所示:
x = I K / 2 J K / 2 I K / 2 - J K / 2 T b - - - ( 36 )
2级单元356还可以将偶数部分和奇数部分合并成最终输出变换系数。
用于32阶变换的示例性因式分解
例如,当K等于32时,用于32阶变换的正变换2.2级单元306和反变换1.2级单元354中的每个可以分别被因式分解为两个级400和450,如图4A和图4B所示。如图4A所示,2.2级单元306可以使用2.2.1级单元402、2.2.2级单元404以及2.2.3级单元406来实施。在单元402、404以及406中完成的矩阵乘法可以如下所示:
c=w×[a16,a17,...,a31]T (37)
[f1,f2,...,f15]T=P8×[c0,c1,...,c7]T (38)
[f17,f19,...,f31]T=P8×[c8,c9,...,c15]T (39)
其中c=[c0,c1,...,c15]T可以是16×1中间向量。
如图4B所示,1.2级单元354可以使用1.2.1级单元452、1.2.2级单元454以及1.2.3级单元456来实施。由单元452、454以及456实施的矩阵乘法可以如下所示:
[ d 0 , d 1 , . . . , d 7 ] T = P 8 T × [ f 1 , f 2 , . . . , f 15 ] T - - - ( 40 )
[ d 8 , d 9 , . . . , d 15 ] T = P 8 T × [ f 17 , f 19 , . . . , f 31 ] T - - - ( 41 )
[b16,b17,...,b31]T=wT×d (42)
其中d=[d0,d1,...,d15]T是16×1中间向量。
8阶变换的示例性结构
如上所述,变换矩阵T8可以包括偶数部分较低阶变换矩阵和较低阶奇数部分矩阵。较低阶偶数部分矩阵可以是例如任意的4阶变换的变换矩阵T4(例如包括等式(10)的变换矩阵T4)。较低阶偶数部分矩阵可以是P4,该P4可以由10个参数定义,称为{a,b,c,d,e,f,i,j,h,k},如下所示:
较低阶偶数部分矩阵P4可以等于三个N/2阶矩阵即以及的乘法。也就是说,较低阶偶数部分矩阵在一个实施方式中,三个N/2阶偶数矩阵以及可以表示如下:
在一个实施方式中,如等式(33)所示,由2.2级单元306执行的操作可以执行如下:
[ f 1 1 f 3 , f 5 , f 7 ] T = M 4 4 × M 3 4 × M 2 4 × [ a 4 , a 5 , a 6 , a 7 ] T - - - ( 45 )
该等式的意思是与Pk/2进行的矩阵乘法可以完全因式分解为与以及顺序地进行的矩阵乘法。类似地,对于反变换,等式(35)所示的1.2级单元354的操作可以执行如下:
[ b 4 , b 5 , b 6 , b 7 ] T = ( M 2 4 ) T × ( M 3 4 ) T × ( M 4 4 ) T × [ f 1 , f 3 , f 5 , f 7 ] T - - - ( 46 )
该等式的意思是与进行的矩阵乘法可以完全因式分解为与 以及顺序地进行的矩阵乘法。
图5A-5B是示出用于执行8阶变换的完全因式分解的示例性结构的框图。用于参数集{a,b,c,d,e,f,i,j,h,k}的示例性值包括{3,2,5,1,37,24,37,48,1,1}和{3,2,5,1,144,99,72,99,0.5,1}。等式(10)的较低阶矩阵P4可以使用例如示例性值{3,2,5,1,37,24,37,48,1,1}被产生。
16阶变换的示例性结构
如上所述,变换矩阵T16可以包括偶数部分较低阶变换矩阵和较低阶奇数部分矩阵。较低阶偶数部分矩阵可以是例如任意8阶变换的变换矩阵T8,包括例如上述标题为“8阶变换的示例性结构”的部分讨论的变换矩阵T8。较低阶奇数部分矩阵可以是P8,该P8可以由10个参数定义,这10个参数称为{a,b,c,d,e,f,g,h,k,l,i,j},如下所示:
较低阶奇数部分P8可以等于四个N/2阶矩阵的乘法,这四个N/2阶矩阵即以及也就是在一个实施方式中,四个N/2阶矩阵以及可以表示如下:
在一个实施方式中,如等式(33)所示的可以由2.2级单元306执行的运算可以执行如下:
[ f 1 , f 3 , . . . , f 15 ] T = M 5 8 × M 4 8 × M 3 8 × M 2 8 × [ a 8 , a 9 , . . . , a 15 ] T - - - ( 52 )
该等式的意思是与P8进行的矩阵乘法可以完全因式分解为与 以及顺序地进行的矩阵乘法。类似地,对于反变换,如等式(35)所示的1.2级单元354的运算可以执行如下:
[ b 8 , b 9 , . . . , b 15 ] T = ( M 2 8 ) T × ( M 3 8 ) T × ( M 4 8 ) T × ( M 5 8 ) T × [ f 1 , f 3 , . . . , f 15 ] T - - - ( 53 )
该等式的意思是与进行的矩阵乘法可以完全因式分解为与 以及顺序地进行的矩阵乘法。
图6A-6B是示出用于执行16阶变换的完全因式分解的示例性结构的框图。下面的表II中示出了用于参数集{a,b,c,d,e,f,g,h,k,l,i,j}的示例性值:
表II用于P8的实施方式
a b c d e f gh k l I j
16 14 10 19 20 6 2 21 17 12 6 -16
16 14 10 19 21 6 2 21 17 12 6 -16
17 13 10 19 20 6 2 21 17 12 6 -16
17 13 10 19 21 6 2 21 17 12 6 -16
17 14 10 19 20 6 2 21 17 12 6 -16
32 28 19 38 41 12 4 42 17 12 6 -16
32 28 19 38 41 12 4 43 17 12 6 -16
32 28 20 38 41 11 4 42 17 12 6 -16
32 28 20 38 41 12 4 42 17 12 6 -16
32 28 20 38 41 12 4 43 17 12 6 -16
32 28 21 37 41 12 4 42 17 12 6 -16
32 28 21 37 41 12 4 43 17 12 6 -16
32 28 21 37 41 12 5 42 17 12 6 -16
33 27 19 38 41 12 4 43 17 12 6 -16
33 27 19 38 41 13 4 43 17 12 6 -16
33 27 19 38 41 13 5 42 17 12 6 -16
33 27 20 38 41 11 4 42 17 12 6 -16
33 27 20 38 41 12 4 43 17 12 6 -16
33 27 21 37 41 12 4 42 17 12 6 -16
33 27 21 37 41 12 4 43 17 12 6 -16
33 27 21 37 41 12 5 42 17 12 6 -16
33 27 21 37 41 13 4 43 17 12 6 -16
33 27 21 37 41 13 5 42 17 12 6 -16
34 26 19 38 41 11 4 42 17 12 6 -16
34 26 19 38 41 12 4 42 17 12 6 -16
34 26 19 38 41 12 5 42 17 12 6 -16
34 26 19 38 41 13 4 43 17 12 6 -16
34 26 20 38 41 12 4 42 17 12 6 -16
34 26 21 37 41 12 4 42 17 12 6 -16
33 27 19 38 41 11 4 42 17 12 6 -16
33 27 19 38 41 12 4 42 17 12 6 -16
33 27 21 37 40 13 5 42 17 12 6 -16
33 27 21 37 41 12 4 42 17 12 6 -16
32 27 20 37 40 12 4 42 17 12 6 -16
32 27 20 37 40 13 4 42 17 12 6 -16
33 26 20 37 40 12 4 42 17 12 6 -16
33 26 20 37 40 13 4 42 17 12 6 -16
33 27 19 38 41 11 4 42 17 12 6 -16
33 27 19 38 41 12 4 42 17 12 6 -16
33 27 21 37 41 12 4 42 17 12 6 -16
33 27 20 38 41 12 4 42 17 12 6 -16
33 27 21 37 41 12 4 42 17 12 6 -16
33 27 19 38 41 10 2 43 17 12 6 -16
33 27 21 37 41 13 4 42 17 12 6 -16
23 19 13 27 29 8 3 30 24 1 7 10 -22
23 19 14 26 29 9 3 30 24 1 7 10 -22
23 19 14 27 29 8 3 3 0 24 17 10 -22
23 19 15 26 29 9 3 30 24 17 10 -22
23 19 14 26 29 8 3 30 24 17 10 -22
23 19 14 27 29 8 3 30 24 17 10 -22
23 19 15 26 29 93 30 24 17 10 -22
32阶变换的示例性结构
如上所述,变换矩阵T32可以包括偶数部分较低阶变换矩阵和较低阶奇数部分矩阵。较低阶偶数部分矩阵可以是例如任意16阶变换的变换矩阵T16,包括例如上述标题为“16阶变换的示例性结构”的部分讨论的变换矩阵T16。较低阶奇数部分矩阵可以是P16,该P16可以由两个矩阵X和Y的矩阵乘法来定义,即P16=Y×X。然后由等式(33)提供的处理可以分解为两级,分别如等式(54)和(55)所示:
cT=X×[a16,a17,...,a31]T (54)
[f1,f3,...,f31]T=Y×cT (55)
其中c=[c0,c1,...,c15]是中间结果。类似地,对于反变换,由等式(35)提供的处理还可以分解为两级,分别如等式(56)和(57)所示:
dT=YT×[f1,f3,...,f31]T (56)
[b16,b17,...,b31]T=XT×dT (57)
其中d=[d0,d1,...,d15]也是中间结果。
X可以由五(5)个参数{A,a2,B,b1,b2}定义,如下所示:
矩阵X可以等于四个N/2阶矩阵即以及的乘法。也就是在一个实施方式中,这四个N/2阶矩阵 以及可以表示如下:
等式(54)中的运算可以进一步分解和执行如下:
c T = M 5 16 × M 4 16 × M 3 16 × M 2 16 × [ a 16 , a 17 , . . . , a 31 ] T - - - ( 63 )
该等式的意思是与X进行的矩阵乘法可以完全因式分解为与 以及顺序地进行的矩阵乘法。类似地,等式(57)中的运算也可以进一步分解和执行如下:
[ b 16 , b 17 , . . . , b 31 ] T = ( M 2 16 ) T × ( M 3 16 ) T × ( M 4 16 ) T × ( M 5 16 ) T × d T - - - ( 64 )
该等式的意思是与XT进行的矩阵乘法可以完全因式分解为与 以及顺序地进行的矩阵乘法。
图7A-7B是示出用于执行32阶变换的完全因式分解的示例性结构的框图。用于参数集X{A,a2,B,b1,b2}的示例性值为{3,2,5,2,5}、{3,2,13,5,12}、{7,5,5,2,5}以及{7,5,13,5,12}。
下面描述对Y进行因式分解的过程,以促进(55)和(56)中的算法。
首先,c中元素可以分组为四个向量,即c0=[c0,c1,c14,c15]、c1=[c2,c3,c12,c13]、c2=[c4,c5,c10,c11]以及c3=[c6,c7,c8,c9]。然后可以分别对c0、c1、c2以及c3应用矩阵乘法,如下所示:
[e0,e8,e7,e15]T=y0×(c0)T (65)
[e4,e12,e3,e11]T=Y1×(c1)T (66)
[e2,e10,e5,e12]T=Y2×(c2)T (67)
[e6,e14,e1,e2]T=Y3×(c3)T (68)
等式(65)-(68)中的四个输出向量可以形成向量e,e-[e0,e1,e2,...,e15]其中e与等式(55)中的输出向量[f1,f3,...f31]相同。换句话说,通过使用一些重新排序的运算,等式(55)中的16x16矩阵乘法可以因式分解为从等式(65)到(68)的四个4x4矩阵乘法。在等式(65)到(68)中,Y0、Y1、Y2以及Y3可以分别在等式(69)-(72)中定义如下:
下面的表III-VI中示出了用于参数集的示例性值:
表III用于{e1,f1,g1,h1,j1,k1,m1,n1}的实施方式
e1 f1 g1 h1 j1 k1 m1 n1
1 5 31 32 23 19 25 21
2 5 31 31 23 19 25 21
2 5 31 32 23 19 25 21
1 5 31 32 23 19 26 21
2 5 31 31 23 19 26 21
2 5 31 32 23 19 26 21
1 5 31 32 24 19 25 21
2 5 31 31 24 19 25 21
2 5 31 32 24 19 25 21
表IV用于{e2,f2,g2,h2,j2,k2,m2,n2}的实施方式
e2 f2 g2 h2 j2 k2 m2 n2
31 13 29 8 16 30 10 27
31 14 28 8 16 30 10 27
30 14 29 8 16 30 11 27
31 13 28 8 16 30 11 27
31 13 29 7 16 30 11 27
31 13 29 8 16 30 11 27
31 14 28 7 16 30 11 27
31 14 28 8 16 30 11 27
31 13 29 8 17 30 11 27
表V用于{e3,f3,g3,h3,j3,k3,m3,n3}的实施方式
e3 f3 g3 h3 j3 k3 m3 n3
8 21 23 31 27 1 31 16
8 21 24 31 27 1 31 16
8 21 23 30 27 1 32 16
8 21 23 31 27 1 32 16
8 21 24 31 27 1 32 16
8 22 23 31 27 1 32 16
8 21 23 31 27 2 31 16
8 21 24 31 27 2 31 16
7 21 23 31 27 2 32 16
8 21 23 30 27 2 32 16
8 21 23 31 27 2 32 16
8 21 24 31 27 2 32 16
8 22 23 31 27 2 32 16
表VI用于{e4,f4,g4,h4,j4,k4,m4,n4}的实施方式
e4 f4 g4 h4 j4 k4 m4 n4
30 19 25 11 28 31 5 13
30 19 25 11 28 31 5 14
30 19 25 11 29 31 4 13
30 19 25 11 29 31 4 14
30 19 25 10 29 31 5 13
30 19 25 11 29 31 5 13
30 19 25 10 29 31 5 14
30 19 25 11 29 31 5 14
作为反变换的一部分,等式(56)中的运算可以按照类似的方式分解。
举例来说,首先,将等式(56)中的看作向量g,g=[g0,g1,...g15]。g中的元素可以分组为四个向量:g0=[g0,g8,g7,g15]、g1=[g4,g12,g3,g11]、g2=[g2,g10,g5,g13]以及g3=[g6,g14,g1,g9]。然后分别对g0、g1、g2以及g3应用矩阵乘法,如等式(73)-(76)所示:
[d0,d1,d14,d15]T=(Y0)T×(g0)T (73)
[d2,d3,d12,d13]T=(Y0)T×(g1)T (74)
[d4,d5,d10,d11]T=(Y2)T×(g2)T (75)
[d6,d7,d8,d9]T=(Y3)T×(g3)T (76)
等式(73)-(76)中的四个输出向量可以形成等式(56)中的输出向量d,d=[d0,d1,d2,...,d15]。换句话说,通过使用一些重新排序的运算,等式(56)中的16x16矩阵乘法可以因式分解为从等式(73)到(76)的四个4x4矩阵乘法。
示例性正向和反向变换运算
到正变换的输入可以是预测残留块,记作XMxN。为了对XMxN执行2-D正变换,XMxN中的M行和N列在每个维度中顺序地变换,分别称为水平和竖直正变换。可以首先形成水平或竖直正变换。
如果首先执行水平正变换,则XMxN可以首先右乘(上标T是转置)并且右移适当数量的比特以适应16比特算术。结果UMxN可以表示如下:
U MxN = ( X MxN × T N T + f fwd , h ) > > ( log 2 ( N ) + log 2 ( T N ( 0,0 ) ) + ΔBD - 7 ) - - - ( 77 )
注意“>>”意思是右移。因数ffwd,h用于取整,并且范围可以为[0,2(log2(N)+log2(TN(0,0))+ΔBD-7)]。为了描述简单,ffwd,h可以等于2(log2(N)+log2(TN(0,0)+ΔBD-8)。
在水平正变换之后可以对中间块UMxN执行竖直正变换。竖直正变换的过程可以如下:
YMxN=(TM×UMxN+ffwd,v)>>(log2(M)+log2(TN(0,0))) (78)
其中因数ffwd,v的范围可以为[0,2(log2(M)+log2(TN(0,0)))],并且为了描述简单,可以等于2(log2(M)+log2(0,0))-1)。
如果先执行竖直正变换,则XMxN可以首先左乘TM,并且右移适当数量的比特以适应16比特算术。结果UMxN可以表示如下:
UMxN=(TM×XMxN+ffwd,v)>>(log2(M)+log2(TN(0,0))+ΔBD-7) (79)
其中因数ffwd,v用于取整,并且范围可以为在这里为了描述简单,ffwd,v可以等于
在竖直正变换之后可以对中间块UMxN执行水平正变换。水平正变换的过程可以如下:
Y MxN = ( U MxN × T N T + f fwd , h ) > > ( log 2 ( N ) + log 2 ( T N ( 0,0 ) ) ) - - - ( 80 )
其中因数ffwd,h的范围可以为,并且为了描述简单,可以等于 2 ( log 2 ( M ) + log 2 ( T N ( 0,0 ) ) - 1 ) .
到反变换的输入是去量化的块Y’MxN。为了对Y’MxN执行2D反变换,分别使用水平和竖直反变换对Y’MxN中的M行和N列以顺序的方式进行变换。可以首先执行水平和竖直反变换。
如果先执行了水平反变换,则Y’MxN可以首先右乘TN,并且右移适当数量的比特以适应16比特算术。结果VMxN可以表示如下:
VMxN=(Y’MxN×TN+finv,h)>>(log2(TN(0,0))+1) (81)
其中因数finv,h范围可以为。在这里为了描述简单,finv,h可以等于
在水平反变换之后可以对中间块VMxN执行竖直反变换。竖直反变换的过程可以如下:
X ′ MxN = ( T M T × V MxN + f inv , v ) > > ( log 2 ( T N ( 0,0 ) ) + 6 - ΔBD ) - - - ( 82 )
其中因数finv,v的范围可以为,并且为了描述简单,可以等于 2 ( log 2 ( T N ( 0,0 ) ) + 5 - ΔBD )
如果先执行竖直反变换,则Y’MxN可以首先左乘并且右移适当数量的比特以适应16比特算术。得到的中间块VMxN表示如下:
V MxN = ( T M T × Y ′ MxN + f inv , v ) > > ( log 2 ( T N ( 0,0 ) ) + 1 ) - - - ( 83 )
其中因数finv,v用于取整,并且范围可以为。在这里为了描述简单,finv,v可以等于
在竖直反变换之后可以对中间块VMxN执行水平反变换。水平反变换的过程可以如下:
X’MxN=(VMxN×TN+finv,h)>>(log2(TN(0,0))+6-ΔBD) (83)
其中因数finv,v范围可以为,并且为了描述简单,可以等于 2 ( log 2 ( T N ( 0,0 ) ) + 5 - ΔBD )
示例性通信系统
图8示出了根据一个非限制性实施方式的通信系统。如图所示,编码器802可以经由连接808与通信网络804进行通信。编码器802可以使用这里提供的元件和处理。此外,连接808可以是有线连接或无线连接。解码器806也可以经由连接810与通信网络806进行通信。解码器806也可以使用这里提供的元件和处理。此外,连接810可以是有线连接或无线连接。通信网络806可以是任意合适类型的通信系统,如下文参考图9A、9B、9C、9D以及9E更详细提供的。编码器806可以合并到多种终端中的任意一种终端中,例如(不是用于限制)数字电视、无线通信设备、无线广播系统、个人数字助理(PDA)、笔记本电脑或台式机、平板电脑、数码相机、数字记录设备、视频游戏设备、视频游戏控制台、蜂窝或卫星无线电电话、数字媒体播放机等等。
图9A是可以在其中可实现一个或多个公开的实施方式的示例通信系统900的示图。通信系统900可以是用于提供诸如语音、数据、视频、消息、广播等内容给多个无线用户的多址系统。通信系统900能够使得多个无线用户通过共享系统资源(包括无线带宽)来接入这些内容。例如,通信系统900可以使用一种或多种信道接入方法,例如码分多址(CDMA)、时分多址(TDMA)、频分多址(FDMA)、正交FDMA(OFDMA)、单载波FDMA(SC-FDMA)等。
如图9A所示,通信系统900可以包括无线发射/接收单元(WTRU)902a、902b、902c、902d和无线电接入网(RAN)904、核心网906、公共交换电话网(PSTN)908、因特网910和其他网络912,但是应当理解,所公开的实施方式预期了任意数量的WTRU、基站、网络和/或网络元件。WTRU902a、902b、902c、902d中的每一个可以是被配置为在无线环境中工作和/或通信的任何类型的设备。举例来说,WTRU902a、902b、902c、902d可被配置为发送和/或接收无线信号,并且可包括用户设备(UE)、移动站、固定或移动用户单元、寻呼机、蜂窝电话、个人数字助理(PDA)、智能电话、膝上型电脑、上网本、个人电脑、无线传感器、消费类电子产品、或者能够接收和处理压缩的视频通信的任意其他终端。
通信系统900还可以包括基站914a和基站914b。基站914a、914b中的每一个可以是任何类型的被配置为与WTRU902a、902b、902c、902d中的至少一个进行无线连接以便于接入例如核心网906、因特网910和/或网络912那样的一个或多个通信网络的装置。作为例子,基站914a、914b可以是基站收发台(BTS)、节点B、e节点B、家用节点B、家用e节点B、站点控制器、接入点(AP)、无线路由器等等。虽然基站914a、914b分别被画为单个元件,但是可以理解基站914a、914b可以包括任意数量的互连的基站和/或网络元件。
基站914a可以是RAN904的一部分,该RAN904还可以包括其它基站和/或网络元件(未示出),例如基站控制器(BSC)、无线电网络控制器(RNC)、中继节点等。基站914a和/或基站914b可以被配置为在特定地理区域内发送和/或接收无线信号,该特定地理区域被称作小区(未示出)。所述小区还可以被分成小区扇区。例如,与基站914a相关联的小区被分成三个扇区。如此,在一个实施方式中,基站914a可以包括三个收发信机,即,针对小区的每个扇区使用一个收发信机。在另一实施方式中,基站914a可以使用多输入多输出(MIMO)技术,因此,可以针对小区的每个扇区使用多个收发信机。
基站914a、914b可以通过空中接口916与WTRU902a、902b、902c、902d中的一个或多个通信,所述空中接口916可以是任何适当的无线通信链路(例如射频(RF)、微波、红外线(IR)、紫外线(UV)、可见光等等)。可以使用任何适当的无线电接入技术(RAT)来建立空中接口916。
更具体而言,如上所述,通信系统900可以是多址系统且可以采用一种或多种信道接入方案,诸如CDMA、TDMA、FDMA、OFDMA、SC-FDMA等等。例如,RAN904中的基站914a和WTRU902a、902b、902c可以实现诸如通用移动电信系统(UMTS)陆地无线电接入(UTRA)之类的无线电技术,其中该无线电技术可以使用宽带CDMA(WCDMA)来建立空中接口916。WCDMA可以包括诸如高速分组接入(HSPA)和/或演进型HSPA(HSPA+)之类的通信协议。HSPA可以包括高速下行链路分组接入(HSDPA)和/或高速上行链路分组接入(HSUPA)。
在另一实施方式中,基站914a和WTRU902a、902b、902c可以实现诸如演进型UMTS陆地无线电接入(E-UTRA)之类的无线电技术,其中该无线电技术可以使用LTE和/或高级LTE(LTE-A)来建立空中接口916。
在其它实施方式中,基站914a和WTRU902a、902b、902c可以实现诸如IEEE802.16(即全球微波互通接入(WiMAX))、CDMA2000、CDMA20001X、CDMA2000EV-DO、临时标准2000(IS-2000)、临时标准95(IS-95)、临时标准856(IS-856)、全球移动通信系统(GSM)、增强型数据速率GSM演进(EDGE)、GSM EDGE(GERAN)等无线电技术。
图9A中的基站914b可以是诸如无线路由器、家用节点B、家用e节点B、或接入点,并且可以利用任何适当的RAT来促进诸如营业场所、家庭、车辆、校园等局部区域中的无线连接。在一个实施方式中,基站914b和WTRU902c、902d可以实施诸如IEEE802.11之类的无线电技术以建立无线局域网(WLAN)。在另一实施方式中,基站914b和WTRU902c、902d可以实施诸如IEEE802.15之类的无线电技术以建立无线个域网(WPAN)。在另一实施方式中,基站914b和WTRU902c、902d可以利用基于蜂窝的RAT(例如WCDMA、CDMA2000、GSM、LTE、LTE-A等)以建立微微小区或毫微微小区。如图9A所示,基站914b可以具有到因特网910的直接连接。因此,基站914b可以不需要经由核心网906接入因特网910。
RAN904可以与核心网906通信,该核心网906可以是被配置为向WTRU902a、902b、902c、902d中的一个或多个提供语音、数据、应用程序、和/或网际协议语音(VoIP)服务的任何类型的网络。例如,核心网906可以提供呼叫控制、计费服务、基于移动位置的服务、预付费呼叫、因特网连接、视频分发等,和/或执行诸如用户认证等高级安全功能。虽然图9A未示出,但应认识到RAN904和/或核心网906可以与跟RAN904采用相同的RAT或不同的RAT的其它RAN进行直接或间接通信。例如,除连接到可以利用E-UTRA无线电技术的RAN904之外,核心网906还可以与采用GSM无线电技术的另一RAN(未示出)通信。
核心网906还可以充当用于WTRU902a、902b、902c、902d接入PSTN908、因特网910、和/或其它网络912的网关。PSTN908可以包括提供普通老式电话服务(POTS)的电路交换电话网。因特网910可以包括使用公共通信协议的互连计算机网络和设备的全局系统,所述公共通信协议例如为传输控制协议(TCP)/网际协议(IP)因特网协议族中的TCP、用户数据报协议(UDP)和IP。网络912可以包括由其它服务提供商所拥有和/或操作的有线或无线通信网络。例如,网络912可以包括连接到可以与RAN904采用相同的RAT或不同的RAT的一个或多个RAN的另一核心网。
通信系统900中的某些或全部WTRU902a、902b、902c、902d可以包括多模式能力,即WTRU902a、902b、902c、902d可以包括用于通过不同的无线链路与不同的无线网络通信的多个收发信机。例如,图9A所示的WTRU902c可以被配置为与可以采用蜂窝式无线电技术的基站914a通信,且与可以采用IEEE802无线电技术的基站914b通信。
图9B是示例WTRU902的系统图。如图9B所示,WTRU902可以包括处理器918、收发信机920、发射/接收元件922、扬声器/麦克风924、键盘926、显示器/触控板928、不可移除存储器930、可移除存储器932、电源934、全球定位系统(GPS)芯片组936、以及其它外围设备938。应认识到WTRU902可以在保持与实施方式一致的同时,包括前述元件的任何子组合。
处理器918可以是通用处理器、专用处理器、常规处理器、数字信号处理器(DSP)、图形处理单元(GPU)、多个微处理器、与DSP核相关联的一个或多个微处理器、控制器、微控制器、专用集成电路(ASIC)、现场可编程门阵列(FPGA)电路、任何其它类型的集成电路(IC)、状态机等等。处理器918可以执行信号编码、数据处理、功率控制、输入/输出处理、和/或使得WTRU902能够在无线环境中操作的任何其它功能。处理器918可以耦合到收发信机920,收发信机920可以耦合到发射/接收元件922。虽然图9B将处理器918和收发信机920画为单独的元件,但应认识到处理器918和收发信机920可以被一起集成在电子组件或芯片中。
发射/接收元件922可以被配置为通过空中接口916向基站(例如基站914a)发射信号或从基站(例如基站914a)接收信号。例如,在一个实施方式中,发射/接收元件922可以是被配置为发射和/或接收RF信号的天线。在另一实施方式中,发射/接收元件922可以是被配置为发射和/或接收例如IR、UV、或可见光信号的发射器/检测器。在另一实施方式中,发射/接收元件922可以被配置为发射和接收RF和光信号两者。应认识到发射/接收元件922可以被配置为发射和/或接收无线信号的任何组合。
另外,虽然发射/接收元件922在图9B中被画为单个元件,但个WTRU902可以包括任何数目的发射/接收元件922。更具体而言,WTRU902可以采用MIMO技术。因此,在一个实施方式中,WTRU902可以包括用于通过空中接口916来发射和接收无线信号的两个或更多个发射/接收元件922(例如多个天线)。
收发信机920可以被配置为调制将由发射/接收元件922发射的信号并对由发射/接收元件922接收到的信号进行解调。如上所述,WTRU902可以具有多模式能力。因此,例如,收发信机920可以包括用于使得WTRU902能够经由诸如UTRA和IEEE802.11之类的多种RAT通信的多个收发信机。
WTRU902的处理器918可以耦合到扬声器/麦克风924、键盘926、和/或显示器/触控板928(例如液晶显示器(LCD)显示单元或有机发光二极管(OLED)显示单元),并且可以从这些组件接收用户输入数据。处理器918还可以向扬声器/扩音器924、键盘926、和/或显示器/触控板928输出用户数据。另外,处理器918可以访问来自任意类型的合适的存储器(例如不可移除存储器930和可移除存储器932)的信息,或者将数据存储在该存储器中。不可移除存储器930可以包括随机存取存储器(RAM)、只读存储器(ROM)、硬盘、或任何其它类型的存储器存储设备。可移除存储器932可以包括用户标识单元(SIM)卡、记忆棒、安全数字(SD)存储卡等。在其它实施方式中,处理器918可以访问来自在物理上不位于WTRU902上(诸如在服务器或家用计算机(未示出))的存储器的信息并将数据存储在该存储器中。
处理器918可以从电源934接收电力,并且可以被配置为分配和/或控制到WTRU902中的其它元件的电力。电源934可以是用于为WTRU902供电的任何适当设备。例如,电源934可以包括一个或多个干电池(例如镍镉(NiCd)、镍锌(NiZn)、镍氢(NiMH)、锂离子(Li)等等)、太阳能电池、燃料电池等等。
处理器918还可以耦合到GPS芯片组936,GPS芯片组936可以被配置为提供关于WTRU902的当前位置的位置信息(例如,经度和纬度)。除来自GPS芯片组936的信息之外或作为其替代,WTRU902可以通过空中接口916从基站(例如基站914a、914b)接收位置信息和/或基于从两个或更多个附近的基站接收到信号的时序来确定其位置。应认识到WTRU902可以在保持与实施方式一致的同时,通过任何适当的位置确定方法来获取位置信息。
处理器918还可以耦合到其它外围设备938,外围设备938可以包括提供附加特征、功能和/或有线或无线连接的一个或多个软件和/或硬件模块。例如,外围设备938可以包括加速计、电子指南针、卫星收发信机、数码相机(用于拍照或视频)、通用串行总线(USB)端口、振动设备、电视收发信机、免提耳机、蓝牙模块、调频(FM)无线电单元、数字音乐播放器、媒体播放器、视频游戏机模块、因特网浏览器等等。
图9C是根据一个实施方式的RAN904和核心网906的系统图。如上所述,RAN904可使用UTRA无线电技术通过空中接口916来与WTRU902a、902b、902c进行通信。该RAN904还可与核心网906进行通信。如图9C所示,RAN904可包括节点B940a、940b、940c,其中每个都可包含一个或多个收发信机,以用于通过空中接口916与WTRU902a、902b、902c进行通信。该节点B940a、940b、940c中的每一个可与RAN904内的特定小区(未示出)相连接。RAN904还可以包括RNC942a、942b。应当理解,在与实施方式保持一致的情况下,RAN904可以包括任何数量的节点B和RNC。
如图9C所示,节点B940a、940b可以与RNC942a进行通信。此外,节点B940c可以与RNC942b进行通信。节点B940a、940b、940c可以经由Iub接口分别与RNC942a、942b进行通信。RNC942a、942b可以通过Iub接口相互通信。RNC942a、942b的每一个可以被配置为分别控制其所连接的节点B940a、940b、940c。此外,可将RNC942a、942b中的每一个可以被配置为执行或支持其他功能,例如外环功率控制、负载控制、许可控制、分组调度、切换控制、宏分集、安全功能、数据加密等。
图9C中所示的核心网906可以包括媒体网关(MGW)944、移动交换中心(MSC)946、服务GPRS支持节点(SGSN)948和/或网关GPRS支持节点(GGSN)950。虽然将前述组件表示为核心网906的一部分,但是应该理解,这些组件中任何一部分都可由核心网运营商以外的实体所有和/或操作。
RAN904中的RNC942a可经由IuCS接口连接至核心网906中的MSC946。可将MSC946连接至MGW944。MSC946和MGW944可向WTRU902a、902b、902c提供对例如PSTN908的电路交换网络的接入,从而促进WTRU902a、902b、902c与传统陆线通信设备之间的通信。
还可将RAN904中的RNC942a经由IuPS接口连接至核心网906中的SGSN948。SGSN948可连接至GGSN950。SGSN948和GGSN950可向WTRU902a、902b、902c提供针对例如因特网910的分组交换网络的接入,从而促进WTRU902a、902b、902c与IP使能设备之间的通信。
如上所述,还可将核心网906连接至网络912,网络912可包括由其他服务提供商所有和/或操作的有线或无线网络。
图9D是根据另一个实施方式的RAN904和核心网906的系统图。如上所述,RAN904可使用E-UTRA无线技术通过空中接口916与WTRU902a、902b和902c通信。RAN904还可以与核心网906通信。
RAN904可包括e节点B960a、960b、960c,但是应当理解的是在保持与实施方式的一致性的同时RAN904可以包括任意数量的e节点B。e节点B960a、960b、960c中的每一个可包括一个或多个收发信机,以用于通过空中接口916与WTRU902a、902b、902c通信。在一个实施方式中,e节点B960a、960b、960c可以利用MIMO技术。e节点B960a例如可以使用多天线来向WTRU902发送无线信号和从其接收无线信号。
e节点B960a、960b、960c中的每一个可以与特定小区相关联(未显示),并可以被配置为处理无线电资源管理决策、切换决策、上行链路和/或下行链路中的用户调度等等。如图9D所示,e节点B960a、960b、960c可以通过X2接口与彼此通信。
图9D中所示的核心网906可以包括移动性管理网关网关(MME)962、服务网关964、和分组数据网络(PDN)网关966等。虽然前述单元的每一个显示为核心网906的一部分,但是应当理解这些单元中的任意一个都可以由除了核心网运营商之外的其他实体拥有和/或运营。
MME962可以经由S1接口连接到RAN904中的e节点B960a、960b、960c中的每一个,并作为控制节点。例如,MME962可以负责认证WTRU902a、902b、902c的用户、承载激活/去激活、在WTRU902a、902b、902c的初始附着期间选择特定服务网关等等。MME962还可以提供控制平面功能以用于在RAN904和使用其他无线电技术例如GSM或者WCDMA的其他RAN(未显示)之间切换。
服务网关964可以经由S1接口连接到RAN904中的e节点B960a、960b、960c中的每一个。服务网关964通常可以向/从WTRU902a、902b、902c路由和转发用户数据分组。服务网关964还可以执行其他功能,例如在e节点B间切换期间锚定用户平面、当下行链路数据对于WTRU902a、902b、902c可用时触发寻呼、管理和存储WTRU902a、902b、902c的上下文等等。
服务网关964还可以被连接到PDN网关966,PDN网关966可以向WTRU902a、902b、902c提供到分组交换网络(例如因特网910)的接入,以便于WTRU902a、902b、902c与IP使能设备之间的通信。
核心网906可以便于与其他网络的通信。例如,核心网906可以向WTRU902a、902b、902c提供到电路交换网络(例如PSTN908)的接入,以便于WTRU902a、902b、902c与传统陆地线路通信设备之间的通信。例如,核心网906可以包括IP网关(例如IP多媒体子系统(IMS)服务器),或者与之通信,该IP网关作为核心网906与PSTN908之间的接口。另外,核心网906可以向WTRU902a、902b、902c提供到网络912的接入,该网络912可以包括其他服务提供商拥有和/或操作的有线或无线网络。
图9E是根据另一个实施方式的RAN904和核心网906的系统图。RAN904可以是采用IEEE802.16无线电技术以通过空中接口916与WTRU902a、902b、902c通信的接入服务网络(ASN)。如下所述,WTRU902a、902b、902c、RAN904、以及核心网906的不同功能实体之间的通信链路可以定义为参考点。
如图9E所示,RAN904可以包括基站970a、970b、970c以及ASN网关972,但是应当理解的是在与实施方式保持一致的同时,RAN904可以包括任意数量的基站和ASN网关。基站970a、970b、970c每个可以与RAN904中的特定小区(未示出)相关联,并且每个可以包括一个或多个收发信机,以通过空中接口916与WTRU902a、902b、902c通信。在一个实施方式中,基站970a、970b、970c可以实施MIMO技术。从而,举例来说,基站970a可以使用多个天线来传送无线信号给WTRU902a,并且接收来自该WTRU902a的信号。基站970a、970b、970c还可以提供移动性管理功能,例如切换触发、隧道建立、无线电资源管理、业务分类、服务质量(QoS)策略实施等等。ASN网关972可以用作业务汇聚点,并且可以负责寻呼、缓存用户简档、路由到核心网906等等。
WTRU902a、902b、902c与RAN904之间的空中接口916可以被定义为实施IEEE802.16规范的R1参考点。另外,WTRU902a、902b、902c中的每个WTRU可以建立与核心网906的逻辑接口(未示出)。WTRU902a、902b、902c与核心网906之间的逻辑接口可以定义为R2参考点,该R2参考点可以用于认证、授权、IP主机管理、和/或移动性管理。
基站970a、970b、970c中的每个基站之间的通信链路可以定义为R8参考点,该R8参考点可以包括用于促进WTRU切换和基站之间的数据传递的协议。基站970a、970b、970c与ASN网关972之间的通信链路可以定义为R6参考点。R6参考点可以包括用于促进基于与WTRU902a、902b、902c中的每个WTRU相关联的移动性事件的移动性管理的协议。
如图9E所示,RAN904可以连接到核心网906。RAN904与核心网906之间的通信链路可以定义为R3参考点,该R3参考点包括用于促进例如数据传递和移动性管理能力的协议。核心网906可以包括移动IP家用代理(MIP-HA)974、认证、授权、记账(AAA)服务器976、以及网关978。虽然前述元件中的每个元件被描述为核心网906的一部分,但是可以理解这些元件中的任意元件都可以由除核心网运营商之外的实体拥有和/或运营。
MIP-HA974可以负责IP地址管理,并使得WTRU902a、902b、902c能够在不同ASN和/或不同核心网之间进行漫游。MIP-HA974可以为WTRU902a、902b、902c提供针对分组切换网(例如因特网910)的接入,以促进WTRU902a、902b、902c与IP使能设备之间的通信。AAA服务器976可以负责用户认证和支持用户服务。网关978可以促进与其他网络的互通。例如,网关978可以为WTRU902a、902b、902c提供针对电路交换网络(例如PSTN908)的接入,以促进WTRU902a、902b、902c与传统陆线通信设备之间的通信。例如,网关978可以为WTRU902a、902b、902c提供针对网络912(可以包括由其他服务提供商拥有和/或操作的其他有线或无线网络)的接入。
虽然在图9E中没有示出,但是可以理解的是RAN904可以连接到其他ASN,并且核心网906可以连接到其他核心网。RAN904与其他ASN之间的通信链路可以被定义为R4参考点,该R4参考点可以包括用于协调WTRU902a、902b、902c在RAN904与其他RAN之间的移动性。核心网906与其他核心网之间的通信链路可以被定义为R5参考,该R5参考可以包括用于促进本地核心网与受访核心网之间的互通的协议。
实施例
下面提供用于整数变换和/或整数变换运算、用于对数据(例如残留视频数据)进行变换的方法、设备和系统的不同实施例。在一个实施例(“第一实施例”)中,一种设备可以包括处理器和存储器。存储器可以包括一组变换矩阵、以及能够由所述处理器执行以使用所述一组变换矩阵中的任意矩阵来对数据(例如残留视频数据)进行变换的指令。所述一组变换矩阵中的每个变换矩阵是正交的,并且具有不同数量的元素。各个数量的元素中的每个元素是整数。每个变换矩阵的基本向量的范数之间的差值满足给定的阈值,并且所述基本向量大致接近离散余弦变换(DCT)矩阵的对应基本向量。
在一个实施例(“第二实施例”)中,所述一组变换矩阵中的每个变换矩阵可以近似正交,具有不同数量的元素,并且能够完全因式分解。各个数量的元素中的每个元素是整数。每个变换矩阵的基本向量的范数之间的差值可以满足给定的阈值;并且所述基本向量可以接近DCT矩阵的对应基本向量。
在一个实施例中,例如在第一实施例和/或第二实施例中,给定的阈值可以是以下阈值:当满足该阈值时,该阈值指示所述基本向量的范数之间的差值不大(例如在某一精度程度内)。
在一个实施例中,例如在第一实施例和/或第二实施例中,给定的阈值可以是以下阈值:当满足该阈值时,该阈值指示所述基本向量的范数大致相等。
在一个实施例中,例如在第一实施例、第二实施例和/或任意随后提供的在前的实施例(“相关实施例”)中,根据失真的测量,所述基本向量接近离散余弦变换(DCT)矩阵的对应基本向量(例如根据满足预定义的阈值的失真的测量)。
在一个实施例中,例如在第一实施例、第二实施例和/或任意相关实施例中,所述失真的测量可以基于DCT矩阵。
在一个实施例中,例如在第一实施例、第二实施例和/或任意相关实施例中,所述失真的测量可以至少基于基本向量和DCT矩阵的对应基本向量的一部分。
在一个实施例中,例如在第一实施例、第二实施例和/或任意相关实施例中,所述失真的测量可以至少部分根据等式(3)和(4)来定义,其中DCTN是具有N×N个元素的DCT矩阵,S是从一组变换矩阵中选择的变换矩阵的一组基本向量,ICTN是具有N×N个元素的选择的变换矩阵并且其具有的每个基本向量是标准化的,并且是DCTN的转置矩阵。
在一个实施例中,例如在第一实施例、第二实施例和/或任意相关实施例中,一组基本向量可以包括选择的变换矩阵的一些或所有基本向量。
在一个实施例中,例如在第一实施例、第二实施例和/或任意相关实施例中,一组变换矩阵中的每个变换矩阵可以分解为偶数部分和奇数部分。
在一个实施例中,例如在第一实施例、第二实施例和/或任意相关实施例中,一组变换矩阵中的每个变换矩阵可以包括2Nx2N个元素,并且N可以是正数。
在一个实施例中,例如在第一实施例、第二实施例和/或任意相关实施例中,偶数部分和奇数部分的每个可以包括2N-1x2N-1个元素。
在一个实施例中,例如在第一实施例、第二实施例和/或任意相关实施例中,偶数部分可以由因数M缩放,并且M可以是正数。
在一个实施例中,例如在第一实施例、第二实施例和/或任意相关实施例中,由奇数部分进行的变换可以包括将2N-2阶变换应用到从一层小波分解得到的每个子带的结果。
在一个实施例中,例如在第一实施例、第二实施例和/或任意相关实施例中,所述结果可以由因数M缩放,并且M可以是正数。
在一个实施例中,例如在第一实施例、第二实施例和/或任意相关实施例中,所述小波变换可以是哈尔(Haar)变换。
在一个实施例中,例如在第一实施例、第二实施例和/或任意相关实施例中,所述存储器还可以包括:能够由所述处理器执行以产生所述一组变换矩阵并将该组变换矩阵存储在所述存储器中的指令。
在一个实施例中,例如在第一实施例、第二实施例和/或任意相关实施例中,所述设备可以是视频编码器、视频解码器以及WTRU中的任意一者。
在一个实施例(“第三实施例”)中,一种有形的计算机可读存储媒介可以在其上存储一组变换矩阵和能够由所述处理器执行以使用所述一组变换矩阵中的任意矩阵来对数据(例如残留视频编码)进行变换的指令。所述一组变换矩阵中的每个变换矩阵可以是正交的,并且可以具有不同数量的元素。各个数量的元素中的每个元素是整数。每个变换矩阵的基本向量的范数之间的差值可以满足给定的阈值;并且所述基本向量接近DCT矩阵的对应基本向量。
在一个可替换的第三实施例中,所述一组变换矩阵中的每个变换矩阵可以是近似正交的,具有不同数量的元素,并且可完全因式分解。各个数量的元素中的每个元素是整数。每个变换矩阵的基本向量的范数之间的差值可以满足给定的阈值;并且所述基本向量可以接近离散余弦变换(DCT)矩阵的对应基本向量。
在一个实施例中,例如在第三实施例、可替换的第三实施例和/或任意相关实施例中,所述给定的阈值可以是以下阈值:当满足该阈值时,该阈值指示所述基本向量的范数差别不大(例如在某一精度程度内)。
在一个实施例中,例如在第三实施例、可替换的第三实施例和/或任意相关实施例中,所述给定的阈值可以是以下阈值:当满足该阈值时,该阈值指示所述基本向量的范数大致相等。
在一个实施例中,例如在第三实施例、可替换的第三实施例和/或任意相关实施例中,根据失真的测量,所述基本向量可以接近DCT矩阵的对应基本向量。
在一个实施例中,例如在第三实施例、可替换的第三实施例和/或任意相关实施例中,根据满足预定义的阈值的失真的测量,所述基本向量可以接近DCT矩阵的对应基本向量。
在一个实施例中,例如在第三实施例、可替换的第三实施例和/或任意相关实施例中,所述失真的测量可以是基于DCT矩阵的。
在一个实施例中,例如在第三实施例、可替换的第三实施例和/或任意相关实施例中,所述失真的测量可以是至少基于基本向量和DCT矩阵的对应基本向量的一部分。
在一个实施例中,例如在第三实施例、可替换的第三实施例和/或任意相关实施例中,所述失真的测量可以至少部分根据等式(3)和(4)来定义,其中DCTN是具有N×N个元素的DCT矩阵,S是从一组变换矩阵中选择的变换矩阵的一组基本向量,ICTN是具有N×N个元素的选择的变换矩阵并且其具有的每个基本向量是标准化的,并且是DCTN的转置矩阵。
在一个实施例中,例如在第三实施例、可替换的第三实施例和/或任意相关实施例中,一组基本向量包括选择的变换矩阵的一些或所有基本向量。
在一个实施例中,例如在第三实施例、可替换的第三实施例和/或任意相关实施例中,一组变换矩阵中的每个变换矩阵可以分解为偶数部分和奇数部分。
在一个实施例中,例如在第三实施例、可替换的第三实施例和/或任意相关实施例中,一组变换矩阵中的每个变换矩阵可以包括2Nx2N个元素,并且N可以是正数。
在一个实施例中,例如在第三实施例、可替换的第三实施例和/或任意相关实施例中,一组变换矩阵中的每个变换矩阵可以分解为偶数部分和奇数部分,并且偶数部分和奇数部分的每个包括2N-1x2N-1个元素。
在一个实施例中,例如在第三实施例、可替换的第三实施例和/或任意相关实施例中,偶数部分可以由因数M缩放,并且M可以是正数。
在一个实施例中,例如在第三实施例、可替换的第三实施例和/或任意相关实施例中,由奇数部分进行的变换可以包括将2N-2阶变换应用到从一层小波分解得到的每个子带的结果。
在一个实施例中,例如在第三实施例、可替换的第三实施例和/或任意相关实施例中,所述结果可以由因数M缩放,并且M可以是正数。
在一个实施例中,例如在第三实施例、可替换的第三实施例和/或任意相关实施例中,所述小波变换可以是哈尔变换。
在一个实施例中,例如在第三实施例、可替换的第三实施例和/或任意相关实施例中,所述有形的计算机可读存储媒介可以在其上存储可由处理器执行以产生一组变换矩阵的指令。
在一个实施例(“第四实施例”)中,一种用于形成N阶整数变换的变换矩阵(“N阶变换矩阵”)以对残留视频数据进行变换的方法,该方法可以包括:使用较低阶变换矩阵来形成中间变换矩阵的偶数部分。该方法可以包括:获得较低阶变换矩阵的较低阶奇数部分。该方法可以包括通过使用较低阶变换矩阵的较低阶奇数部分处理小波变换的低频子带和高频子带的每个来形成中间变换矩阵的奇数部分。该方法可以包括也将中间变换矩阵应用到偶数-奇数组合矩阵。
在一个实施例中,例如在第四实施例中,获得较低阶奇数部分可以包括使用偶数-奇数分解矩阵来将较低阶变换矩阵分解为较低阶奇数部分和较低阶偶数部分。
在一个实施例中,例如在第四实施例和/或任意相干实施例中,N阶变换矩阵的每个基本向量可以具有各个数量的零交叉,并且该方法还包括:基于零交叉的数量对基本向量进行重新排序。
在一个实施例中,例如在第四实施例和/或任意相关实施例中,对基本向量进行重新排序可以包括通过增加零交叉的数量来对基本向量进行重新排序。
在一个实施例中,例如在第四实施例和/或任意相关实施例中,较低阶变换矩阵可以包括根据经验确定的变换系数。
在一个实施例中,例如在第四实施例和/或任意相关实施例中,小波变换可以是哈尔变换。
在一个实施例(“第五实施例”)中,一种被配置成形成N阶整数变换的变换矩阵(“N阶变换矩阵”)以对残留视频数据进行变换的设备,该设备可以包括:处理器和存储器。该存储器可以包括可由处理器执行的指令。该指令可以包括可由处理器执行以下操作的指令:(i)使用较低阶变换矩阵来形成中间变换矩阵的偶数部分,(ii)获得较低阶变换矩阵的较低阶奇数部分,(iii)通过使用较低阶变换矩阵的较低阶奇数部分处理小波变换的低频子带和高频子带中的每个来形成中间变换矩阵的奇数部分,和/或(iv)将中间变换矩阵应用到偶数-奇数组合矩阵。
在一个实施例中,例如在第五实施例中,可由处理器执行以获得较低阶奇数部分的指令可以包括可由处理器执行以使用偶数-奇数分解矩阵来将较低阶变换矩阵分解为较低阶奇数部分和较低阶偶数部分的指令。
在一个实施例中,例如在第五实施例和/或任意相关实施例中,N阶变换矩阵的每个基本向量可以具有各个数量的零交叉,并且所述指令可以包括可由处理器执行以基于零交叉的数量对基本向量进行重新排序的指令。
在一个实施例中,例如在第五实施例和/或任意相关实施例中,可由处理器执行以对基本向量进行重新排序的指令可以包括可由处理器执行以通过增加零交叉的数量来对基本向量进行重新排序的指令。
在一个实施例中,例如在第五实施例和/或任意相关实施例中,较低阶变换矩阵可以包括根据经验确定的变换系数。
在一个实施例中,例如在第五实施例和/或任意相关实施例中,小波变换可以包括哈尔变换。
在一个实施例(“第六实施例”)中,一种用于形成N阶整数变换矩阵以对残留视频数据进行变换的方法,该方法可以包括:将N阶变换矩阵分解为偶数部分和奇数部分。该方法可以包括:使用小波变换将奇数部分分解为第一和第二子带。该方法可以包括:使用较低N/4阶变换矩阵来处理第一子带和第二子带中的每个。
在一个实施例中,例如在第六实施例中,第一子带和第二子带可以分别是低频子带和高频子带。
在一个实施例中,例如在第六实施例和/或任意相关实施例中,小波变换可以是哈尔变换。
在一个实施例(“第七实施例”)中,一种被配置用于形成N阶整数变换矩阵以对残留视频数据进行变换的设备,该设备可以包括:处理器和存储器。该存储器可以包括可由处理器执行的指令。该指令可以包括可由处理器执行以下操作的指令:(i)将N阶变换矩阵分解为偶数部分和奇数部分,(ii)使用小波变换将奇数部分分解为第一子带和第二子带,和/或(iii)使用较低的N/4阶变换矩阵来处理第一子带和第二子带的每个。
在一个实施例中,例如在第七实施例中,第一子带和第二子带可以分别是低频子带和高频子带。
在一个实施例(“第八实施例”)中,一种使用N阶整数变换来处理残留视频数据的方法,该方法可以包括:在预处理(precondition)单元处接收残留视频数据的向量。该方法可以包括:在预处理单元处处理残留视频数据的向量以形成用于变换的第一和第二中间输出向量。该方法可以包括:分别在第一和第二较低阶变换单元处接收第一和第二中间输出向量。该方法可以包括:在第一较低阶变换单元处对第一中间输出向量进行变换,以使用N/2阶整数变换的基本向量来形成偶数索引的变换系数。该方法可以包括:在第二较低阶变换单元处对第二中间输出向量进行变换,以使用N/2阶整数矩阵基于N/4阶奇数部分矩阵来形成奇数索引的变换系数。
在一个实施例中,例如在第八实施例中,在预处理单元处处理残留视频数据的向量可以包括将残留视频数据的向量应用到用于变换的偶数-奇数分解矩阵。
在一个实施例中,例如在第八实施例和/或任意相关实施例中,在第一较低阶变换单元处对第一中间输出向量进行变换可以包括将中间变换矩阵的偶数部分应用到第一中间输出向量,并且中间变换矩阵的偶数部分可以包括N/2阶整数变换矩阵。
在一个实施例中,例如在第八实施例和/或任意相关实施例中,在第二较低阶变换单元处对第二中间输出向量进行变换可以包括产生第二中间输出向量的第一子带和第二子带,和/或将N/4阶奇数部分矩阵应用到第一子带和第二子带中的每个子带。
在一个实施例中,例如在第八实施例和/或任意相关实施例中,第一子带和第二子带可以分别是低频子带和高频子带。
在一个实施例(“第九实施例”)中,一种被配置成使用N阶整数变换来处理残留视频数据的设备,该设备可以包括:预处理单元、第一较低阶变换单元以及第二较低阶变换单元。所述预处理单元可以适于接收残留视频数据的向量。所述预处理单元可以适于处理残留视频数据的向量以形成用于变换的第一和第二中间输出向量。第一较低阶变换单元以及第二较低阶变换单元可以分别适于接收第一中间输出向量和第二中间输出向量。第一较低阶变换单元可以适于对第一中间输出向量进行变换,以使用N/2阶整数变换的基本向量来形成偶数索引的变换系数。第二较低阶变换单元可以适于对第二中间输出向量进行变换,以使用N/2阶整数变换基于N/4阶奇数部分矩阵来形成奇数索引的变换系数。
在一个实施例中,例如在第九实施例中,所述预处理单元可以适于在形成用于变换的第一中间输出向量和第二中间输出向量时,将残留视频数据的向量应用到用于变换的偶数-奇数分解矩阵。
在一个实施例中,例如在第九实施例和/或任意相关实施例中,第一较低阶变换单元可以适于在对第一中间输出向量进行变换时,将中间变换矩阵的偶数部分应用到第一中间输出向量,并且中间变换矩阵的偶数部分可以包括N/2阶整数变换矩阵。
在一个实施例中,例如在第九实施例和/或任意相关实施例中,第二较低阶变换单元可以适于产生第二中间输出向量的第一子带和第二子带,并且在对第二中间输出向量进行变换时,将N/4阶奇数部分矩阵应用到第一子带和第二子带中的每个子带。
在一个实施例中,例如在第九实施例和/或任意相关实施例中,第一子带和第二子带可以分别是低频子带和高频子带。
在一个实施例(“第十实施例”)中,一种使用N阶整数变换来处理残留视频数据的方法,该方法可以包括:在预处理单元处接收残留视频数据的多个向量。该方法可以包括:在预处理单元处处理所述向量以形成各自的用于变换的第一和第二中间输出向量。该方法可以包括:分别在第一和第二较低阶单元处接收第一和第二中间输出向量。该方法可以包括:在第一较低阶变换单元处对第一中间输出向量进行变换,以使用N/2阶整数变换的基本向量来形成偶数索引的变换系数的第一集合。该方法可以包括:在第二较低阶变换单元处对第二中间输出向量进行变换,以使用N/2阶整数矩阵基于N/4阶奇数部分矩阵来形成奇数索引的变换系数的第一集合。该方法可以包括:在预处理单元处接收从偶数索引的变换系数的第一集合和奇数索引的变换系数的第一集合形成的变换矩阵的多个向量。该方法可以包括:在预处理单元处处理所述向量以形成各自的用于变换的第三和第四中间输出向量。该方法可以包括:分别在第一和第二较低阶变换单元处接收第三和第四中间输出向量。该方法可以包括:在第一较低阶变换单元处对第三中间输出向量进行变换,以使用N/2阶整数变换的基本向量来形成偶数索引的变换系数的第二集合。该方法可以包括:在第二较低阶变换单元处对第四中间输出向量进行变换,以使用N/2阶整数矩阵基于N/4阶奇数部分矩阵来形成奇数索引的变换系数的第二集合。
在一个实施例中,例如在第十实施例中,在预处理单元处划分残留视频数据的向量可以包括将残留视频数据的向量应用到用于变换的偶数-奇数分解矩阵。
在一个实施例中,例如在第十实施例和/或任意相关实施例中,在第一较低阶变换单元处对第一中间输出向量进行变换可以包括将中间变换矩阵的偶数部分应用到第一中间输出向量,并且中间变换矩阵的偶数部分可以包括或可以是N/2阶整数变换。
在一个实施例中,例如在第十实施例和/或任意相关实施例中,在第二较低阶变换单元处对第二较低阶中间输出向量进行变换可以包括产生第二中间输出向量的第一子带和第二子带,和/或将N/4阶奇数部分矩阵应用到第一子带和第二子带中的每个子带。
在一个实施例中,例如在第十实施例和/或任意相关实施例中,在预处理单元处划分所述向量可以包括将基本向量应用到用于变换的偶数-奇数分解矩阵。
在一个实施例中,例如在第十实施例和/或任意相关实施例中,在第一较低阶变换单元处对第三中间输出向量进行变换可以包括将中间变换矩阵的偶数部分应用到第三中间输出向量,并且中间变换矩阵的偶数部分可以包括或可以是N/2阶整数变换。
在一个实施例中,例如在第十实施例和/或任意相关实施例中,在第二较低阶变换单元处对第四中间输出向量进行变换可以包括产生第二中间输出向量的第一子带和第二子带,和/或将N/4阶奇数部分矩阵应用到第一子带和第二子带中的每个子带。
在一个实施例中,例如在第十实施例和/或任意相关实施例中,第一子带和第二子带可以分别是低频子带和高频子带。
在一个实施例中,例如在第十实施例和/或任意相关实施例中,预处理单元、第一较低阶变换单元以及第二较低阶变换单元中的任意一者适于使用16比特算术来用于处理。
在一个实施例(“第十一实施例”)中,一种使用N阶整数变换来处理残留视频数据的设备,该设备可以包括:预处理单元、第一较低阶变换单元以及第二较低阶变换单元。所述预处理单元可以适于接收残留视频数据的多个向量。所述预处理单元可以适于处理所述向量以形成用于变换的各自的第一和第二中间输出向量。第一较低阶变换单元以及第二较低阶变换单元可以分别适于接收第一和第二中间输出向量。第一较低阶变换单元可以适于对第一中间输出向量进行变换,以使用N/2阶整数变换的基本向量来形成偶数索引的变换系数的第一集合。第二较低阶变换单元可以适于对第二中间输出向量进行变换,以使用N/2阶整数矩阵基于N/4阶奇数部分矩阵来形成奇数索引的变换系数的第一集合。预处理单元可以适于接收从偶数索引的变换系数的第一集合和奇数索引的变换系数的第一集合形成的变换矩阵的多个向量。预处理单元可以适于处理所述向量以形成各自的用于变换的第三和第四中间输出向量。第一较低阶变换单元和第二较低阶变换单元可以适于分别接收第三和第四中间输出向量。第一较低阶变换单元可以适于对第三中间输出向量进行变换,以使用N/2阶整数变换的基本向量来形成偶数索引的变换系数的第二集合。第二较低阶变换单元可以适于对第四中间输出向量进行变换,以使用N/2阶整数矩阵基于N/4阶奇数部分矩阵来形成奇数索引的变换系数的第二集合。
在一个实施例中,例如在第十一实施例中,所述预处理单元可以适于在形成用于变换的第一中间输出向量和第二中间输出向量时,将残留视频数据的向量应用到用于变换的偶数-奇数分解矩阵。
在一个实施例中,例如在第十一实施例和/或任意相关实施例中,第一较低阶变换单元处可以适于在对第一中间输出向量进行变换时,将中间变换矩阵的偶数部分应用到第一中间输出向量,并且中间变换矩阵的偶数部分可以包括或可以是N/2阶整数变换。
在一个实施例中,例如在第十一实施例和/或任意相关实施例中,第二较低阶变换单元可以适于产生第二中间输出向量的第一子带和第二子带,并且在对第二中间输出向量进行变换时,将N/4阶奇数部分矩阵应用到第一子带和第二子带中的每个子带。
在一个实施例中,例如在第十一实施例和/或任意相关实施例中,所述预处理单元可以适于在形成用于变换的第三中间输出向量和第四中间输出向量时,将基础向量应用到用于变换的偶数-奇数分解矩阵。
在一个实施例中,例如在第十一实施例和/或任意相关实施例中,第一较低阶变换单元可以适于在对第三中间输出向量进行变换时,将中间变换矩阵的偶数部分应用到第三中间输出向量,并且中间变换矩阵的偶数部分可以包括或可以是N/2阶整数变换。
在一个实施例中,例如在第十一实施例和/或任意相关实施例中,第二较低阶变换单元可以适于产生第二中间输出向量的第一子带和第二子带,并且在对第四中间输出向量进行变换时,将N/4阶奇数部分矩阵应用到第一子带和第二子带中的每个子带。
在一个实施例中,例如在第十一实施例和/或任意相关实施例中,第一子带和第二子带可以分别是低频子带和高频子带。
在一个实施例中,例如在第十一实施例和/或任意相关实施例中,预处理单元、第一较低阶变换单元以及第二较低阶变换单元中的任意一者适于使用16比特算术来用于处理。
在一个实施例(“第十二实施例”)中,一种使用N阶整数变换来处理残留视频数据的方法,该方法可以包括:在第一预处理单元处接收残留视频数据的向量,以及在第一预处理单元处处理残留视频数据的向量以形成用于变换的第一和第二中间输出向量。该方法可以包括:在第一变换单元处接收第一中间输出向量以及在第一变换单元处对第一中间输出向量进行变换,以使用N/2阶整数偶数部分变换矩阵和N/2阶整数奇数部分矩阵的基本向量来形成偶数索引的变换系数。该方法可以包括:在第二变换单元处接收第二中间输出向量以及在第二变换单元处对第二中间输出向量进行变换,以通过对通过连续的N/2阶整数矩阵的第二中间输出向量进行处理来形成奇数索引的变换系数。N/2阶整数矩阵可以一起对N阶变换矩阵的奇数部分进行因式分解。
在一个实施例中,例如在第十二实施例中,连续的N/2阶整数矩阵可以基于N/4阶奇数部分矩阵,并且对通过连续的N/2阶整数矩阵的第二中间输出向量进行处理可以包括产生第二中间输出向量的第一子带和第二子带,和/或将N/4阶奇数部分矩阵应用到第一子带和第二子带中的每个子带。
在一个实施例中,例如在第十二实施例和/或任意相关实施例中,在第一变换单元处对第一中间输出向量进行变换可以包括将中间变换矩阵的偶数部分应用到第一中间输出向量,中间变换矩阵的偶数部分可以包括或者可以是较低阶变换矩阵。
在一个实施例中,例如在第十二实施例和/或任意相关实施例中,在预处理单元处处理残留视频数据的向量可以包括将残留视频数据的向量应用到用于变换的偶数-奇数分解矩阵。
在一个实施例中,例如在第十二实施例和/或任意相关实施例中,N阶整数变换可以是8阶整数变换,并且连续的N/2阶整数矩阵可以包括或可以是三个连续的4阶整数矩阵。
在一个实施例中,例如在之前的实施例中,第一个连续的4阶整数矩阵可以包括沿着一条对角线的偶对称和沿着另一条对角线的奇对称,第二个连续的4阶整数矩阵可以包括沿着一条对角线的偶对称和沿着另一条对角线的零对称,并且第三个连续的4阶整数矩阵可以包括沿着一条对角线的偶对称和沿着另一条对角线的奇对称。
在一个实施例中,例如在第十二实施例和/或任意相关实施例中,N阶整数变换可以是16阶整数变换,并且连续的N/2阶整数矩阵可以包括或可以是四个连续的8阶整数矩阵。
在一个实施例中,例如在之前的实施例中,第一个连续的8阶整数矩阵可以包括沿着一条对角线的偶对称和沿着另一条对角线的奇对称,第二个连续的8阶整数矩阵可以包括沿着一条对角线的偶对称和沿着另一条对角线的零对称,第三个连续的8阶整数矩阵可以包括沿着一条对角线的偶对称和沿着另一条对角线的零对称,并且第四个连续的8阶整数矩阵可以包括沿着一条对角线的偶对称和沿着另一条对角线的奇对称。
在一个实施例中,例如在第十二实施例和/或任意相关实施例中,N阶整数变换可以是8阶整数变换,并且对通过连续的N/2阶整数矩阵的第二中间输出向量进行处理可以包括:(i)对通过第一个4阶整数矩阵的第二中间输出向量进行处理,以形成中间变换元素的第一集合,(ii)对通过第二个4阶整数矩阵的中间变换元素的第一集合进行处理,以形成中间变换元素的第二集合,和/或对通过第三个4阶整数矩阵的中间变换元素的第二集合进行处理,以形成奇数索引的变换系数。
在一个实施例中,例如在第十二实施例和/或任意相关实施例中,N阶整数变换可以是16阶整数变换,并且对通过连续的N/2阶整数矩阵的第二中间输出向量进行处理可以包括:(i)对通过第一个8阶整数矩阵的第二中间输出向量进行处理,以形成中间变换元素的第一集合,(ii)对通过第二个8阶整数矩阵的中间变换元素的第一集合进行处理,以形成中间变换元素的第二集合,(iii)对通过第三个8阶整数矩阵的中间变换元素的第二集合进行处理,以形成中间变换元素的第三集合,和/或(iv)对通过第四个8阶整数矩阵的中间变换元素的第三集合进行处理,以形成奇数索引的变换系数。
在一个实施例中,例如在第十二实施例和/或任意相关实施例中,N阶整数变换可以是32阶整数变换,并且对通过连续的N/2阶整数矩阵的第二中间输出向量进行处理可以包括:(i)对通过第一个16阶整数矩阵的第二中间输出向量进行处理,以形成中间变换元素的第一集合,(ii)对通过第二个16阶整数矩阵的中间变换元素的第一集合进行处理,以形成中间变换元素的第二集合,(iii)对通过第三个16阶整数矩阵的中间变换元素的第二集合进行处理,以形成中间变换元素的第三集合,对通过第四个16阶整数矩阵的中间变换元素的第三集合进行处理,以通过各个4阶整数矩阵将中间变换元素的第三集合分解为用于变换的四个向量,和/或(iv)将四个向量中的每个向量应用到各个4阶整数矩阵以形成奇数索引的变换系数。
在一个实施例(“第十三实施例”)中,一种用于使用N阶整数变换来处理残留视频数据的设备,该设备可以包括:预处理单元、第一变换单元以及第二变换单元。预处理单元处可以适于接收残留视频数据的向量。预处理单元处可以适于处理残留视频数据的向量以形成用于变换的第一和第二中间输出向量。第一变换单元可以适于接收第一中间输出。第一变换单元可以适于对第一中间输出向量进行变换,以使用N/2阶整数偶数部分变换矩阵和N/2阶整数奇数部分矩阵的基本向量来形成偶数索引的变换系数。第二变换单元可以适于接收第二中间输出向量。第二变换单元可以适于对第二中间输出向量进行变换,以通过对通过连续的N/2阶整数矩阵的第二中间输出向量进行处理来形成奇数索引的变换系数。N/2阶整数矩阵可以一起对N阶整数变换矩阵的奇数部分进行因式分解。
在一个实施例中,例如在第十三实施例中,连续的N/2阶整数矩阵可以基于N/4阶奇数部分矩阵,并且第二变换单元可以适于产生第二中间输出向量的第一子带和第二子带,并且在对通过连续的N/2阶整数矩阵的第二中间输出向量进行处理时将N/4阶奇数部分矩阵应用到第一子带和第二子带中的每个子带。
在一个实施例中,例如在第十三实施例和/或任意相关实施例中,第一变换单元可以适于在对第一中间输出向量进行变换时将中间变换矩阵的偶数部分应用到第一中间输出向量,并且中间变换矩阵的偶数部分可以包括或者可以是较低阶变换矩阵。
在一个实施例中,例如在第十三实施例和/或任意相关实施例中,预处理单元可以适于在形成用于变换的第一和第二中间输出向量时,将残留视频数据的向量应用到用于变换的偶数-奇数分解矩阵。
在一个实施例中,例如在第十三实施例和/或任意相关实施例中,第一变换单元可以适于在对第一中间输出向量进行变换时,将中间变换矩阵的偶数部分应用到第一中间输出向量,并且中间变换矩阵的偶数部分可以包括或可以是较低阶变换矩阵。
在一个实施例中,例如在第十三实施例和/或任意相关实施例中,N阶整数变换可以是8阶整数变换,并且连续的N/2阶整数矩阵可以包括或可以是三个连续的4阶整数矩阵。
在一个实施例中,例如在之前的实施例中,第一个连续的4阶整数矩阵可以包括沿着一条对角线的偶对称和沿着另一条对角线的奇对称,第二个连续的4阶整数矩阵可以包括沿着一条对角线的偶对称和沿着另一条对角线的零对称,并且第三个连续的4阶整数矩阵可以包括沿着一条对角线的偶对称和沿着另一条对角线的奇对称。
在一个实施例中,例如在第十三实施例和/或任意相关实施例中,N阶整数变换可以是16阶整数变换,并且连续的N/2阶整数矩阵可以包括或可以是四个连续的4阶整数矩阵。
在一个实施例中,例如在第十三实施例和/或任意相关实施例中,第一个连续的8阶整数矩阵可以包括沿着一条对角线的偶对称和沿着另一条对角线的奇对称,第二个连续的8阶整数矩阵可以包括沿着一条对角线的偶对称和沿着另一条对角线的零对称,第三个连续的8阶整数矩阵可以包括沿着一条对角线的偶对称和沿着另一条对角线的零对称,并且第四个连续的8阶整数矩阵可以包括沿着一条对角线的偶对称和沿着另一条对角线的奇对称。
在一个实施例中,例如在第十三实施例和/或任意相关实施例中,其中N阶整数变换可以是16阶整数变换,并且连续的N/2阶整数矩阵可以包括或可以是四个连续的4阶整数矩阵。
在一个实施例中,例如在之前的实施例中,第一个连续的4阶整数矩阵可以包括沿着一条对角线的偶对称和沿着另一条对角线的奇对称,第二个连续的4阶整数矩阵可以包括沿着一条对角线的偶对称和沿着另一条对角线的零对称,第三个连续的4阶整数矩阵可以包括沿着一条对角线的偶对称和沿着另一条对角线的零对称,并且第四个连续的4阶整数矩阵可以包括沿着一条对角线的偶对称和沿着另一条对角线的奇对称。
在一个实施例中,例如在第十三实施例和/或任意相关实施例中,N阶整数变换可以是8阶整数变换,并且当对通过连续的N/2阶整数矩阵的第二中间输出向量进行处理时,第二变换单元可以适于:(i)对通过第一个4阶整数矩阵的第二中间输出向量进行处理,以形成中间变换元素的第一集合,(ii)对通过第二个4阶整数矩阵的中间变换元素的第一集合进行处理,以形成中间变换元素的第二集合,和/或(iii)对通过第三个4阶整数矩阵的中间变换元素的第二集合进行处理,以形成奇数索引的变换系数。
在一个实施例中,例如在第十三实施例和/或任意相关实施例中,N阶整数变换可以是16阶整数变换,并且当对通过连续的N/2阶整数矩阵的第二中间输出向量进行处理时,第二变换单元可以适于:(i)对通过第一个8阶整数矩阵的第二中间输出向量进行处理,以形成中间变换元素的第一集合,(ii)对通过第二个8阶整数矩阵的中间变换元素的第一集合进行处理,以形成中间变换元素的第二集合,(iii)对通过第三个8阶整数矩阵的中间变换矩阵的第二集合进行处理,以形成中间变换元素的第三集合,和/或(iv)对通过第四个8阶整数矩阵的中间变换元素的第三集合进行处理,以形成奇数索引的变换系数。
在一个实施例中,例如在第十三实施例和/或任意相关实施例中,N阶整数变换可以是32阶整数变换,并且当对通过连续的N/2阶整数矩阵的第二中间输出向量进行处理时,第二变换单元可以适于:(i)对通过第一个16阶整数矩阵的第二中间输出向量进行处理,以形成中间变换元素的第一集合,(ii)对通过第二个16阶整数矩阵的中间变换元素的第一集合进行处理,以形成中间变换元素的第二集合,(iii)对通过第三个16阶整数矩阵的中间变换元素的第二集合进行处理,以形成中间变换元素的第三集合,(iv)对通过第四个16阶整数矩阵的中间变换元素的第三集合进行处理,以通过各个4阶整数矩阵将中间变换元素的第三集合分解为用于变换的四个向量,和/或将四个向量中的每个向量应用到各个4阶整数矩阵以形成奇数索引的变换系数。
结语
虽然上文以特定的组合描述了本发明的特征和元素,但本领域的技术人员应认识到每个特征或元素都可以被单独地使用或与其它特征和元素以任何方式组合使用。另外,可以在结合在计算机可读介质中的计算机程序、软件、或固件中实施本发明所述的方法,以便由计算机或处理器执行。计算机可读介质的例子包括电信号(通过有线或无线连接发送的)和计算机可读存储介质。计算机可读存储介质的示例包括但不限于只读存储器(ROM)、随机存取存储器(RAM)、寄存器、高速缓冲存储器、半导体存储器装置、磁介质(诸如内部硬盘和可移动磁盘)、磁光介质、以及光学介质,诸如CD-ROM磁盘和数字多功能磁盘(DVD)。与软件相关联的处理器可以用于实现射频收发信机,以在WTRU、UE、终端、基站、RNC或任意主机中使用。
在不偏离本发明的范围的情况下,以上的方法、设备以及系统的变化是可行的。根据可以应用的多种实施方式,可以理解所示出的实施方式仅是示例,并且不应被看作是对权利要求的范围的限制。例如,这里提供的实施方式包括手持设备,该手持设备可以包括用于提供任意合适的电压的任意合适的电源,或者可以与该电源一起使用,例如电池等。
此外,在上面提供的实施方式中,注意处理平台、计算系统、控制器、以及包含处理器的其他设备。这些设备可以包含至少一个中央处理单元(“CPU”)和存储器。根据计算机编程领域的技术人员的实践,引用的动作和符号表示的操作或指令可以由不同CPU和存储器执行。这种动作和操作或指令可以称为被“执行”、“计算机执行”或“CPU执行”。
本领域技术人员可以理解所述动作和符号表示的操作或指令包括由CPU操作的电信号。电子系统表示以下数据比特:该数据比特可以引起得到变换或减少电子信号以及维护存储系统中的存储位置处的数据比特,从而重配置或以其他方式改变CPU的操作以及对信号进行其他处理。维护数据比特所在的存储位置是具有特定电、磁、光、或者对应或代表数据比特的有机特性的物理位置。应当理解示例性实施方式不限于上述平台或CPU以及可以支持提供的方法的其他平台和CPU。
数据比特也可以维护在计算机可读媒介上,该计算机可读媒介包括磁盘、光盘、以及任意其他CPU可读的易失性(例如随机存取存储器(“RAM”))或非易失性(例如随机存取存储器(“RAM”))大容量存储系统。计算机可读媒介可以包括协作或互连的计算机可读媒介,该计算机可读媒介排他性地存在于处理系统上或分布在处理系统本地或远程的多个互连的处理系统之间。应当理解的是示例性实施方式不限于上述存储器并且其他平台和存储器可以支持所提供的方法。
本发明的描述中使用的元素、动作或指令都不是要理解为本发明决定性的或必不可少的,除非明确提出。另外,如这里使用的,冠词“一(个)”是要包括一项或多项。例如,短语“在一个实施方式中”中的冠词“一个”是要包括:例如“在单个实施方式中”、“在多个实施方式中”、“在一个实施方式中”和/或“在所有实施方式中”。在要指代仅一项时,使用术语“单个”或类似语言。此外,这里使用的多个项和/或多个类别的项的之前的术语“任意一个”是要包括“任意一个”、“任意组合”、“任意多个”和/或“任意多个的组合”的项和/或类别的项(单独或与其他项和/或类别的项的组合)。此外,这里使用的术语“集合”是要包括任意数量的项,报括零。另外,这里使用的术语“数量”是要包括任意数量,包括零。
此外,权利要求不应当被理解为限于所提供的顺序或元素,除非说明了该效果。另外,在任意权利要求中使用的术语“装置”是要援引35U.S.C.§112,6或装置加功能权利要求格式,并且不带有术语“装置”的任意权利要求不是这样限定的。

Claims (34)

1.一种设备,该设备包括处理器和存储器,其中该存储器包括一组变换矩阵、以及能够由所述处理器执行以使用所述一组变换矩阵中的任意变换矩阵来对数据进行变换的指令,其中:
所述一组变换矩阵中的每个变换矩阵是正交的,并且具有不同数量的元素;
各个数量的元素中的每个元素是整数;
每个变换矩阵的基本向量的范数之间的差值满足给定的阈值;以及
所述基本向量接近离散余弦变换(DCT)矩阵的对应基本向量。
2.一种设备,该设备包括处理器和存储器,其中该存储器包括一组变换矩阵、以及能够由所述处理器执行以使用所述一组变换矩阵中的任意变换矩阵来对数据进行变换的指令,其中:
所述一组变换矩阵中的每个变换矩阵近似正交,具有不同数量的元素并能够被完全因式分解;
各个数量的元素中的每个元素是整数;
每个变换矩阵的基本向量的范数之间的差值满足给定的阈值;以及
所述基本向量接近离散余弦变换(DCT)矩阵的对应基本向量。
3.根据权利要求1和2中任一项权利要求所述的设备,其中所述存储器还包括:能够由所述处理器执行以产生所述一组变换矩阵并将该组变换矩阵存储在所述存储器中的指令。
4.根据权利要求1和2中任一项权利要求所述的设备,其中所述给定的阈值包括以下阈值:当满足该阈值时,指示所述基本向量的范数大致相等。
5.根据权利要求1和2中任一项权利要求所述的设备,其中根据失真的测量,所述基本向量接近离散余弦变换(DCT)矩阵的对应基本向量。
6.根据权利要求1和2中任一项权利要求所述的设备,其中根据失真的测量所述基本向量接近离散余弦变换(DCT)矩阵的对应基本向量包括根据该失真的测量满足预定义的阈值。
7.根据权利要求5和6中任一项权利要求所述的设备,其中所述失真的测量是基于所述DCT矩阵的。
8.根据权利要求5-7中任一项权利要求所述的设备,其中所述失真的测量是基于至少所述基本向量以及所述DCT矩阵的对应基本向量的一部分的。
9.根据前述权利要求中任一项权利要求所述的设备,其中所述一组变换矩阵中的每个变换矩阵能够分解成偶数部分和奇数部分。
10.根据前述权利要求中任一项权利要求所述的设备,其中所述一组变换矩阵中的每个变换矩阵包括2N×2N个元素,并且其中N是正整数。
11.根据权利要求10所述的设备,其中所述一组变换矩阵中的每个变换矩阵能够分解成偶数部分和奇数部分,并且其中所述偶数部分和奇数部分中的每一者包括2N-1×2N-1个元素。
12.根据权利要求11所述的设备,其中所述偶数部分由因数M缩放,并且其中M是正整数。
13.根据权利要求11所述的设备,其中根据所述奇数部分进行变换包括将2N-2阶变换应用到从一层小波分解得到的每个子带所得到的结果。
14.根据权利要求13所述的设备,其中所述结果由因数M缩放,并且其中M是正整数。
15.根据权利要求14所述的设备,其中所述小波变换是哈尔变换。
16.根据前述权利要求中任一项权利要求所述的设备,其中所述设备是以下任意一者:视频编码器、视频解码器、以及无线发射和/或接收单元(WTRU)。
17.一种用于使用N阶整数变换处理残留视频数据的方法,该方法包括:
在预处理单元处,接收残留视频数据的向量;
在所述预处理单元处,处理所述残留视频数据的向量,以形成用于变换的第一中间输出向量和第二中间输出向量;
在第一变换单元处,接收所述第一中间输出向量;
在所述第一变换单元处,对所述第一中间输出向量进行变换,以使用N/2阶整数偶数部分变换矩阵和N/2阶整数奇数部分矩阵的基础向量来形成偶数索引的变换系数;
在第二变换单元处,接收所述第二中间输出向量;以及
在所述第二变换单元处,对所述第二中间输出向量进行变换,以通过连续的N/2阶整数矩阵处理所述第二中间输出向量来形成奇数索引的变换系数,其中所述N/2阶整数矩阵一起对所述N阶整数变换矩阵的奇数部分进行因式分解。
18.根据权利要求17所述的方法,其中所述连续的N/2阶整数矩阵基于N/4阶奇数部分矩阵,且其中通过连续N/2阶整数矩阵处理所述第二中间输出向量包括:
生成所述第二中间输出向量的第一子带和第二子带;以及
将所述N/4阶奇数部分矩阵应用到所述第一子带和第二子带的每一者。
19.根据权利要求17所述的方法,其中所述N阶整数变换是8阶整数变换,且其中所述连续N/2阶整数矩阵包括三个连续的4阶整数矩阵。
20.根据权利要求19所述的方法,其中第一个连续4阶整数矩阵包括沿一条对角线的偶数对称和沿另一条对角线的奇数对称,其中第二个连续4阶整数矩阵包括沿一条对角线的偶数对称和沿另一条对角线的零对称,且其中第三个连续4阶整数矩阵包括沿一条对角线的偶数对称和沿另一条对角线的奇数对称。
21.根据权利要求17所述的方法,其中所述N阶整数变换是16阶整数变换,且其中所述连续N/2阶整数矩阵包括四个连续8阶整数矩阵。
22.根据权利要求21所述的方法,其中第一个连续8阶整数矩阵包括沿一条对角线的偶数对称和沿另一条对角线的奇数对称,其中第二个连续8阶整数矩阵包括沿一条对角线的偶数对称和沿另一条对角线的零对称,其中第三个连续8阶整数矩阵包括沿一条对角线的偶数对称和沿另一条对角线的零对称,以及第四个连续8阶整数矩阵包括沿一条对角线的偶数对称和沿另一条对角线的奇数对称。
23.根据权利要求17所述的方法,其中所述N阶整数变换是8阶整数变换,其中通过连续N/2阶整数矩阵处理所述第二中间输出向量包括:
通过第一个4阶整数矩阵处理所述第二中间输出向量以形成第一组中间变换元素;
通过第二个4阶整数矩阵处理所述第一组中间变换元素以形成第二组中间变换元素;以及
通过第三个4阶整数矩阵处理所述第二组中间变换元素以形成所述奇数索引的变换系数。
24.根据权利要求17所述的方法,其中所述N阶整数变换是16阶整数变换,其中通过连续N/2阶整数矩阵处理所述第二中间输出向量包括:
通过第一个8阶整数矩阵处理所述第二中间输出向量以形成第一组中间变换元素;
通过第二个8阶整数矩阵处理所述第一组中间变换元素以形成第二组中间变换元素;
通过第三个8阶整数矩阵处理所述第二组中间变换元素以形成第三组中间变换元素;以及
通过第四个8阶整数矩阵处理所述第三组中间变换元素以形成所述奇数索引的变换系数。
25.根据权利要求17所述的方法,其中所述N阶整数变换是32阶整数变换,其中通过连续N/2阶整数矩阵处理所述第二中间输出向量包括:
通过第一个16阶整数矩阵处理所述第二中间输出向量以形成第一组中间变换元素;
通过第二个16阶整数矩阵处理所述第一组中间变换元素以形成第二组中间变换元素;
通过第三个16阶整数矩阵处理所述第二组中间变换元素以形成第三组中间变换元素;
通过第四个16阶整数矩阵处理所述第三组中间变换元素以将所述第三组中间变换元素分解成用于根据各自4阶整数矩阵进行变换的四个向量;以及
将所述四个向量的每一个向量应用到所述各自的4阶整数矩阵以形成奇数索引的变换系数。
26.一种用于使用N阶整数变换处理残留视频数据的设备,该设备包括预处理单元、第一变换单元以及第二变换单元,其中:
所述预处理单元适用于接收残留视频数据的向量;
所述预处理单元适用于处理所述残留视频数据的向量以形成用于变换的第一中间输出向量和第二中间输出向量;
所述第一变换单元适用于接收所述第一中间输出;
所述第一变换单元适用于对所述第一中间输出向量进行变换以使用N/2阶整数偶数部分变换矩阵和N/2阶整数奇数部分矩阵的基本向量来形成偶数索引的变换系数;
所述第二变换单元适用于接收所述第二中间输出向量;以及
所述第二变换单元适用于对所述第二中间输出向量进行变换以通过连续N/2阶整数矩阵处理所述第二中间输出向量来形成奇数索引的变换系数,其中所述N/2阶整数矩阵一起对所述N阶整数变换矩阵的奇数部分进行因式分解。
27.根据权利要求26所述的设备,其中所述连续N/2阶整数矩阵基于N/4阶奇数部分矩阵,且其中所述第二变换单元适用于在通过连续N/2阶整数矩阵处理所述第二中间输出向量时,生成所述第二中间输出向量的第一子带和第二子带并将所述N/4阶奇数部分矩阵应用于所述第一子带和第二子带的每一者。
28.根据权利要求26所述的设备,其中所述N阶整数变换是8阶整数变换,且其中所述连续N/2阶整数矩阵包括三个连续的4阶整数矩阵。
29.根据权利要求28所述的设备,其中其中第一个连续4阶整数矩阵包括沿一条对角线的偶数对称和沿另一条对角线的奇数对称,其中第二个连续4阶整数矩阵包括沿一条对角线的偶数对称和沿另一条对角线的零对称,且其中第三个连续4阶整数矩阵包括沿一条对角线的偶数对称和沿另一条对角线的奇数对称。
30.根据权利要求26所述的设备,其中所述N阶整数变换是16阶整数变换,且其中所述连续N/2阶整数矩阵包括四个连续4阶整数矩阵。
31.根据权利要求30所述的设备,其中第一个连续8阶整数矩阵包括沿一条对角线的偶数对称和沿另一条对角线的奇数对称,其中第二个连续8阶整数矩阵包括沿一条对角线的偶数对称和沿另一条对角线的零对称,其中第三个连续8阶整数矩阵包括沿一条对角线的偶数对称和沿另一条对角线的零对称,以及第四个连续8阶整数矩阵包括沿一条对角线的偶数对称和沿另一条对角线的奇数对称。
32.根据权利要求26所述的设备,其中所述N阶整数变换是8阶整数变换,其中当通过连续N/2阶整数矩阵处理所述第二中间输出向量时,所述第二变换单元适用于:
通过第一个4阶整数矩阵处理所述第二中间输出向量以形成第一组中间变换元素;
通过第二个4阶整数矩阵处理所述第一组中间变换元素以形成第二组中间变换元素;以及
通过第三个4阶整数矩阵处理所述第二组中间变换元素以形成所述奇数索引的变换系数。
34.根据权利要求26所述的设备,其中所述N阶整数变换是16阶整数变换,其中当通过连续N/2阶整数矩阵处理所述第二中间输出向量时,所述第二变换单元适用于:
通过第一个8阶整数矩阵处理所述第二中间输出向量以形成第一组中间变换元素;
通过第二个8阶整数矩阵处理所述第一组中间变换元素以形成第二组中间变换元素;
通过第三个8阶整数矩阵处理所述第二组中间变换元素以形成第三组中间变换元素;以及
通过第四个8阶整数矩阵处理所述第三组中间变换元素以形成所述奇数索引的变换系数。
35.根据权利要求26所述的设备,其中所述N阶整数变换是32阶整数变换,其中当通过连续N/2阶整数矩阵处理所述第二中间输出向量时,所述第二变换单元适用于:
通过第一个16阶整数矩阵处理所述第二中间输出向量以形成第一组中间变换元素;
通过第二个16阶整数矩阵处理所述第一组中间变换元素以形成第二组中间变换元素;
通过第三个16阶整数矩阵处理所述第二组中间变换元素以形成第三组中间变换元素;
通过第四个16阶整数矩阵处理所述第三组中间变换元素以将所述第三组中间变换元素分解成用于根据各自4阶整数矩阵进行变换的四个向量;以及
将所述四个向量的每一个向量应用到所述各自的4阶整数矩阵以形成奇数索引的变换系数。
CN201280054519.7A 2011-11-07 2012-11-06 使用偶数‑奇数整数变换后台的视频和数据处理的设备和方法 Active CN104067621B (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201161556681P 2011-11-07 2011-11-07
US201161556823P 2011-11-07 2011-11-07
US61/556,823 2011-11-07
US61/556,681 2011-11-07
PCT/US2012/063709 WO2013070605A2 (en) 2011-11-07 2012-11-06 Video and data processing using even-odd integer transforms background

Publications (2)

Publication Number Publication Date
CN104067621A true CN104067621A (zh) 2014-09-24
CN104067621B CN104067621B (zh) 2018-03-27

Family

ID=47297431

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201280054519.7A Active CN104067621B (zh) 2011-11-07 2012-11-06 使用偶数‑奇数整数变换后台的视频和数据处理的设备和方法

Country Status (7)

Country Link
US (1) US10452743B2 (zh)
EP (1) EP2777287A2 (zh)
JP (1) JP6193869B2 (zh)
KR (1) KR20140098114A (zh)
CN (1) CN104067621B (zh)
TW (3) TW201729125A (zh)
WO (1) WO2013070605A2 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114531600A (zh) * 2022-02-18 2022-05-24 阿里巴巴(中国)有限公司 变换单元、现场可编程门阵列、芯片、电子设备、片上系统

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8902988B2 (en) 2010-10-01 2014-12-02 Qualcomm Incorporated Zero-out of high frequency coefficients and entropy coding retained coefficients using a joint context model
EP2805492B1 (en) 2012-01-19 2018-11-14 VID SCALE, Inc. System and method of video coding quantization and dynamic range control
US8983218B2 (en) 2012-04-11 2015-03-17 Texas Instruments Incorporated Virtual boundary processing simplification for adaptive loop filtering (ALF) in video coding
US9819965B2 (en) * 2012-11-13 2017-11-14 Intel Corporation Content adaptive transform coding for next generation video
EP2951999A4 (en) 2013-01-30 2016-07-20 Intel Corp CONTENT PARAMETRIC TRANSFORMATIONS FOR CODING VIDEOS OF THE NEXT GENERATION
US9491460B2 (en) * 2013-03-29 2016-11-08 Qualcomm Incorporated Bandwidth reduction for video coding prediction
CN108200439B (zh) * 2013-06-14 2020-08-21 浙江大学 提高数字信号变换性能的方法及数字信号变换方法和装置
GB2517416A (en) * 2013-08-15 2015-02-25 Sony Corp Data encoding and decoding
US9432696B2 (en) 2014-03-17 2016-08-30 Qualcomm Incorporated Systems and methods for low complexity forward transforms using zeroed-out coefficients
US9516345B2 (en) 2014-03-17 2016-12-06 Qualcomm Incorporated Systems and methods for low complexity forward transforms using mesh-based calculations
JP2015185897A (ja) * 2014-03-20 2015-10-22 パナソニックIpマネジメント株式会社 画像符号化方法及び画像符号化装置
WO2016167538A1 (ko) * 2015-04-12 2016-10-20 엘지전자(주) 비디오 신호의 인코딩, 디코딩 방법 및 그 장치
US11134259B2 (en) * 2016-01-15 2021-09-28 Interdigital Madison Patent Holdings, Sas System and method for enhanced motion compensation using adaptive filtering
WO2017195917A1 (ko) * 2016-05-12 2017-11-16 엘지전자 주식회사 비디오 코딩 시스템에서 인트라 예측 방법 및 장치
CN106231318B (zh) * 2016-09-30 2020-04-28 浙江宇视科技有限公司 一种基于量化变换系数的视频加扰方法及装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1090696A (zh) * 1992-06-29 1994-08-10 索尼公司 用于图象信号的高效编码和解码的设备和记录媒体
CN1697328A (zh) * 2004-05-14 2005-11-16 微软公司 快速视频编解码变换实现
WO2006034603A1 (en) * 2004-09-28 2006-04-06 Huawei Technologies Co., Ltd Video image encoding method
US20060291735A1 (en) * 2005-06-27 2006-12-28 Hou Hsieh S Extended haar transform
CN101855909A (zh) * 2007-11-12 2010-10-06 坦德伯格电信公司 视频编码和解码的方法

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08186815A (ja) 1994-12-28 1996-07-16 Pioneer Electron Corp サブバンド符号化方法
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
JP4209061B2 (ja) 2000-02-09 2009-01-14 富士フイルム株式会社 画像処理符号復号化方法および画像処理符号復号化システム、画像処理符号化装置および画像処理復号化装置、並びに記録媒体
WO2002015584A2 (de) 2000-08-12 2002-02-21 Robert Bosch Gmbh Verfahren zur ganzzahligen approximation von transformationskoeffizienten sowie coder und decoder
US6990506B2 (en) 2000-12-13 2006-01-24 Sharp Laboratories Of America, Inc. Integer cosine transform matrix for picture coding
US7242713B2 (en) * 2002-05-02 2007-07-10 Microsoft Corporation 2-D transforms for image and video coding
US7302105B2 (en) 2002-07-22 2007-11-27 Canon Kabushiki Kaisha Moving image coding apparatus, moving image decoding apparatus, and methods therefor
US7110338B2 (en) 2002-08-06 2006-09-19 Matsushita Electric Industrial Co., Ltd. Apparatus and method for fingerprinting digital media
US7372999B2 (en) 2002-09-09 2008-05-13 Ricoh Company, Ltd. Image coder and image decoder capable of power-saving control in image compression and decompression
EP1578134A1 (en) 2004-03-18 2005-09-21 STMicroelectronics S.r.l. Methods and systems for encoding/decoding signals, and computer program product therefor
US7925097B2 (en) 2005-02-18 2011-04-12 Sanyo Electric Co., Ltd. Image display method, image coding apparatus, and image decoding apparatus
US7689052B2 (en) * 2005-10-07 2010-03-30 Microsoft Corporation Multimedia signal processing using fixed-point approximations of linear transforms
EP2370934A4 (en) 2008-08-29 2012-10-24 Angel Decegama SYSTEMS AND METHODS FOR COMPRESSION, TRANSMISSION AND DECOMPRESSION OF VIDEO CODECS
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
US20120230422A1 (en) * 2011-03-11 2012-09-13 Korodi Gergely Ferenc Method and System Using Prediction and Error Correction for the Compact Representation of Quantization Matrices In Video Compression

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1090696A (zh) * 1992-06-29 1994-08-10 索尼公司 用于图象信号的高效编码和解码的设备和记录媒体
CN1697328A (zh) * 2004-05-14 2005-11-16 微软公司 快速视频编解码变换实现
WO2006034603A1 (en) * 2004-09-28 2006-04-06 Huawei Technologies Co., Ltd Video image encoding method
US20060291735A1 (en) * 2005-06-27 2006-12-28 Hou Hsieh S Extended haar transform
CN101855909A (zh) * 2007-11-12 2010-10-06 坦德伯格电信公司 视频编码和解码的方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
JIE FANG DONG: ""2-D Order-16 Integer Transforms for HD Video Coding"", 《IEEE TRANSACTIONS ON CIRCUITS AND SYSTEMS FOR VIDEO TECHNOLOGY》 *
R. JOSHI: ""Recursive factorization for 16 and 32-point transforms using 4 and 8-point HM 3.0 core transforms"", 《JCT-VC OF ITU-T SG16 WP3 AND ISO/IEC JTC1/SC29/WG1》 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114531600A (zh) * 2022-02-18 2022-05-24 阿里巴巴(中国)有限公司 变换单元、现场可编程门阵列、芯片、电子设备、片上系统
CN114531600B (zh) * 2022-02-18 2023-10-03 阿里巴巴(中国)有限公司 变换单元、现场可编程门阵列、芯片、电子设备、片上系统

Also Published As

Publication number Publication date
TW201335769A (zh) 2013-09-01
KR20140098114A (ko) 2014-08-07
TW201842453A (zh) 2018-12-01
EP2777287A2 (en) 2014-09-17
JP2014535246A (ja) 2014-12-25
US10452743B2 (en) 2019-10-22
CN104067621B (zh) 2018-03-27
JP6193869B2 (ja) 2017-09-06
WO2013070605A2 (en) 2013-05-16
TW201729125A (zh) 2017-08-16
US20130114732A1 (en) 2013-05-09
WO2013070605A3 (en) 2013-08-08

Similar Documents

Publication Publication Date Title
CN104067621B (zh) 使用偶数‑奇数整数变换后台的视频和数据处理的设备和方法
JP6694031B2 (ja) 3次元ベースのカラーマッピングでのモデルパラメータ最適化のためのシステムおよび方法
TWI722996B (zh) 視訊編碼裝置及方法
CN107211134B (zh) 用于调色编码模式的逃逸色彩编码
CN109644270B (zh) 视频编码方法和编码器、视频解码方法和解码器、存储介质
CN104396240B (zh) 用于可缩放的高效视频编码(hevc)的参考图片集(rps)信令
JP6480186B2 (ja) ビデオコーディング量子化およびダイナミックレンジ制御のシステムおよび方法
KR101774675B1 (ko) 다층 비디오 코딩을 위한 적응적 업샘플링
US10708605B2 (en) Inter-layer reference picture enhancement for multiple layer video coding
US20140241435A1 (en) Method for managing memory, and device for decoding video using same
CN104054338A (zh) 位深和颜色可伸缩视频编码
CN105874792A (zh) 用于混合的交错和递进内容的可伸缩视频编码的方法和系统
TW201419867A (zh) 可調視訊編碼層相依及優先傳訊設計
CN103283227A (zh) 用于自适应视频编码的系统和方法
CN104429071A (zh) 用于多层视频编码的编解码器架构
US9247251B1 (en) Right-edge extension for quad-tree intra-prediction
KR20220121231A (ko) 인트라 예측 모드 스케일러블 코딩 방법 및 장치
CN105765979A (zh) 用于可缩放视频编码的层间预测
CN104322066B (zh) 用于视频数据译码的交错块处理排序
EP3664449A1 (en) Method and device for picture encoding and decoding
CN112135141A (zh) 视频编码器、视频解码器及相应方法
US11936871B2 (en) Method and device for picture encoding and decoding using illumination compensation
Waingankar et al. Efficient low bit rate video compression technique for mobile applications

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
GR01 Patent grant