CN101288118B - 用于多速率应用的单码本矢量量化 - Google Patents

用于多速率应用的单码本矢量量化 Download PDF

Info

Publication number
CN101288118B
CN101288118B CN2006800354118A CN200680035411A CN101288118B CN 101288118 B CN101288118 B CN 101288118B CN 2006800354118 A CN2006800354118 A CN 2006800354118A CN 200680035411 A CN200680035411 A CN 200680035411A CN 101288118 B CN101288118 B CN 101288118B
Authority
CN
China
Prior art keywords
vector
regeneration
code book
regeneration vector
vectors
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN2006800354118A
Other languages
English (en)
Other versions
CN101288118A (zh
Inventor
A·瓦西拉舍
A·拉莫
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.)
Nokia Technologies Oy
Original Assignee
Nokia Oyj
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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=37697832&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=CN101288118(B) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Nokia Oyj filed Critical Nokia Oyj
Publication of CN101288118A publication Critical patent/CN101288118A/zh
Application granted granted Critical
Publication of CN101288118B publication Critical patent/CN101288118B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/02Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
    • G10L19/032Quantisation or dequantisation of spectral components
    • G10L19/038Vector quantisation, e.g. TwinVQ audio
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/3082Vector coding
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/16Vocoder architecture
    • G10L19/18Vocoders using multiple modes
    • G10L19/24Variable rate codecs, e.g. for generating different qualities using a scalable representation such as hierarchical encoding or layered encoding
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L2019/0001Codebooks
    • G10L2019/0004Design or structure of the codebook
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L2019/0001Codebooks
    • G10L2019/0007Codebook element generation

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Human Computer Interaction (AREA)
  • Theoretical Computer Science (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Quality & Reliability (AREA)
  • Spectroscopy & Molecular Physics (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

本发明涉及一种用户N级矢量量化的方法、设备和软件应用产品,其中可以在所述量化之前从至少两个小于或等于预定最大级数M的预定值的集合中选择N。从N个再生矢量的V级码本中选择针对每个矢量的再生矢量,其中对于该至少两个预定值的集合中的每个N而言,该N个再生矢量由M个再生矢量的同一联合码本的前N个再生矢量来表示。本发明还涉及一种用于针对已被V级量化的矢量而获取再生矢量的方法、设备和软件应用产品,涉及用于传送矢量表示的系统,涉及用于确定联合码本的方法、设备和软件应用产品,并涉及此联合码本本身。

Description

用于多速率应用的单码本矢量量化
技术领域
本发明涉及一种用于N级矢量量化的方法、设备和软件应用产品,其中可以在所述量化之前从至少两个小于或等于预定最大级数M的预定值的集合中选择N。本发明还涉及一种用于针对已经进行了N级量化的矢量来获取再生矢量的方法、设备和计算机程序产品;涉及用于传送矢量表示的系统;涉及用于确定将要在此量化中使用的码本的方法、设备和软件应用产品;并涉及这种码本本身。
背景技术
语音和音频编码算法在通信、多媒体以及存储系统中具有多种应用。此类编码算法开发的驱动在于需要节约传输和存储容量同时保持高质量的编码信号。编码器的复杂性受到应用平台处理功率的限制。在一些例如语音存储的应用中,编码器可以高度复杂,而解码器应当尽可能简单。
在典型的语音编码器中,输入语音信号在被称为帧的分段中处理。通常,帧长度为10-30ms,并且后继帧的5-15ms的超前(lookahead)分段也是可用的。可以将帧进一步划分为多个子帧。对于每个帧而言,编码器确定输入信号的参数表示,例如通过线性预测编码(LPC)。所获得的参数被量化并通过通信信道进行传输,或以数字形式存储在存储介质中。在接收端,解码器基于接收到的参数来构建合成信号。
这里,通过LPC获得的LPC系数(或对应的线谱频率(LSF))现在通常由通过将LPC/LSF参数堆叠(stack)到矢量中的矢量量化(VQ)来进行量化。类似地,也可以通过VQ来量化与若干后继帧或子帧的激励(excitation)信号相关的参数(例如增益、基音(pitch) 或发音参数)。
VQ是一种基于块编码原理的有损数据压缩方法。在N级VQ中,从包含N个再生矢量(所谓的码字)的码本中选择对矢量产生最小失真(所述失真是通过适当的失真测度(仅举几个例子,例如欧几里得(Euclidean)距离或欧几里得距离平方)来确定的)的再生矢量,以此对该矢量进行量化。这些选择的再生矢量可以由各自的标识符唯一地标识。如果被量化的矢量将要通过传输信道进行传输,并且如果码本在接收端是已知的,则仅在发射端的量化器与接收端的用以获取再生向量的单元之间交换标识符就已足够,其中所述再生向量是针对在发射端的矢量而选择的。该单元继而简单地从码本中获取标识符所标识的再生矢量。通常,N选择为2的幂,则可以将字长度n=log2(N)的二进制字用作针对再生矢量的标识符。那么字长n与量化器的输出比特速率成比例。通过增加字长度n,级数N=2n增加,因而量化器的分辨率增加,而且量化器的输出比特速率也增加。
参数的量化需要码本,其包含针对量化任务而优化的再生矢量。在早期,用于VQ的码本设计由于需要多维积分而被认为是一项具有挑战性的任务。在1980年,Linde、Buzo和Gray(LBG)提出了所谓的LBG算法,用于基于矢量的训练序列来生成码本(参见Linde,Y.,Buzo,A.and Gray,R.M.,“An algorithm for Vector Quantization”,IEEE Transaction on Communications,vol.28,No.1 January 1980)。矢量训练序列的使用绕过了对多维积分的需要。LBG算法可以被视为适用于标量量化的码本构建的经典Lloyd算法的多维一般化。
LBG算法针对所期望的级数N生成码本。如果在同一编码解码器中,必须支持若干级数N,则对于每个级数N,必须训练各自的码本,并将其同时存储在量化器和用于从再生矢量的标识符中获取再生矢量的单元中。仅举几个例子,这种对若干级数N的需求可能会出现在以下编码情形中,例如涉及向具有不同存储和处理能力的终端进行传输的编码情形中,或传输信道特征为时变的情形中,或 总可用比特速率在源和信道编码之间动态分配的情形中。存储针对若干不同级数N的各个码本不利地增加了量化器和用于获取已经被量化的矢量的再生矢量的单元的存储需求,由此增加了尺寸和成本。此外,量化器的结构和再生矢量获取单元的结构变得狭促,因为必须控制对若干码本的访问。
现有技术文档Haoui,A.和Messerschmitt,D.G.:“EmbeddedCoding of Speech:A Vector Quantization Approach”,Proceedings IEEEInternational Conference on Acoustics,Speech and Signal Processing(ICASSP),April 1985,vol.10,pp.1703-1706涉及嵌入式语音编码器。嵌入式语音编码器是具有下列特性的源编码器:其输入信号再生的保真度随着比特速率逐步从最大速率降低到最小速率而适度地降级。这里,编码器并不知晓传输的实际比特速率,而仅知晓丢弃比特的顺序(例如传输的比特流可以是面向字节的,其中比特按照从最低有效位到最高有效位的顺序被丢弃)。码本针对最大速率来设计,并且量化总是针对对应于该最大速率的固定级数来执行,而不管传输期间将要丢弃的比特数量(由此影响了实际比特速率)。为了考虑比特的丢弃,例如提出了将仅最低有效位不同的两个二进制字分配给在欧几里得距离上彼此接近的两个码字,从而利用零来替代最低有效位将导致误差的小幅增加。
现有技术文档Ragot,S.,Bessette,B.和Lefebvre,R.:″Low-Complexity Multi-Rate Lattice Vector Quantization with Applicationto Wideband TCX Speech Coding at 32 kbit/s″,Proceedings IEEEInternational Conference on Acoustics,Speech and Signal Processing(ICASSP),2004,vol.1,pp.501-504涉及多速率格型矢量量化。这里,将8维矢量编码到6个码本的一个中,其中码本分别形成了整数格型RE8的外壳(shell)。格型VQ是可自扩展的,即码本的选择取决于待量化的矢量,并且字长n因而也取决于待量化的矢量,因此不能在量化之前进行选择。编码矢量是代数上构建的,因此无须训练或存储码矢量。格型VQ的灵活性通常受到以下事实的限制:每个码本包含若干格型外壳,其 集的势(cardinality)取决于该格型。通过将若干外壳结合到一起,码本的尺寸可以例如成为2的幂或其他数字,但不是任意期望数字。
发明内容
着眼于上述问题,除其他之外,本发明的目的是提供一种改进的方法、设备以及软件应用产品,用于具有不同可选级数N的矢量N级量化。
本发明的另一目的是提供一种改进的方法、设备以及软件应用产品,用于针对已经通过不同可选级数N而进行了N级量化的矢量来获取再生矢量。
本发明的另一目的是提供一种改进的系统,用于传送矢量表示。
本发明的另一目的是提供一种改进的方法、设备和软件应用产品,用于确定在具有不同可选级数N的N级矢量量化中使用的码本。
本发明的另一目的是提供一种改进的码本,用于具有不同可选级数N的N级矢量量化。
本发明的第一方面
根据本发明的第一方面,提出一种用于N级矢量量化的方法,其中可以在所述量化之前,从至少两个小于或等于预定最大级数M的预定值的集合中选择N。所述方法包括:针对每个矢量从N个再生矢量的N级码本中选择再生矢量,其中对于所述至少两个预定值的集合中的每个N,所述N个再生矢量由M个再生矢量的同一联合码本的前N个再生矢量表示。
这里,所述矢量和所述再生矢量是k维矢量,其中k大于或等于1,从而可以将标量和矢量量化二者作为目标。所述矢量包含待量化的数据。包含在每个矢量中的所述数据例如可以是参数集合,例如语音或音频信号的帧或子帧的LPC/LSF系数集合,或一个或多个后继帧或子帧的增益、基音或发音参数集合。
通过从N级码本中选择再生矢量而对所述矢量进行N级量化。所述 选择例如可以由失真标准监管,该失真标准确定矢量和再生矢量之间的失真的数量(例如欧几里得距离或欧几里得距离平方,或其他标准),然后选择使所述失真标准最小化的再生矢量。继而将所选再生矢量的标识符作为量化的结果输出,并且该标识符允许再生矢量获取单元(假设该单元知晓所述码本)获取所选再生矢量。这里,所述矢量和所选再生矢量之间的失真通常随着级数N的增加而降低,因为随着N增加,N级码本包含更多再生矢量,并且因此能够以更好的方式覆盖包含所述矢量的矢量空间。然而,随着N数目增加,所述标识符的存储和/或传输通常也变得较为复杂。
这里,可以在所述量化之前从至少两个小于或等于预定最大级数M(不同于现有技术的嵌入式编码,其中总是通过对应于最大比特速率的固定级数来执行量化)的预定值的集合中选择级数N(不同于现有技术中的可自扩展格型矢量量化,其中量化是可自扩展的,并且在量化期间基于待量化的当前矢量来确定最适合的级数)。例如,M可以是256,可以从中选择级数N的所述预定值的集合可以定义为{2,4,8,16,32,64,128,256}。
然而,M和/或N并不必须是2的幂,因为在某些量化应用中,使用包括并非2的幂的多个再生矢量的码本可能更为有效,例如,在没有将长度为n=log2(N)的二进制字用作所选再生矢量的标识符的情况中。则M例如可以是任何期望的整数,N可以是满足1≤N≤M的任意期望值。
所述级数N的所述选择例如可以通过所述量化器外部的实例来执行。所述级数N的所述选择例如可以根据传输信道的传输特性来执行,其中必须通过该传输信道来传输所述量化矢量的有关信息;或者根据存储单元的存储容量来执行,其中必须将所述量化矢量存储在该存储单元中,这里仅举出了很少的几种可能性。
根据本发明第一方面,针对不同的级数N基于相同的联合码本执行矢量量化。该联合码本包含通过不同级数N≤M进行量化所需的所有N级码本。对于每个N,所述N级码本由联合码本的相应前N 个再生矢量来表示。例如,如果M=256,并且如果针对N的所述至少两个值的预定集合为{128,256},则在N=128的情况下,M=256的再生矢量的码本中的前128个再生矢量形成用于128级量化的码本,而在N=256的情况下,M=256的再生矢量的同一码本中的前256个再生矢量形成用于256级量化的码本。对于本领域技术人员而言很清楚的是,如果更合适的话,所述N级码本同样可以位于联合码本的末端。
在现有技术中,必须针对每个期望的级数N来构建和存储一个相应码本,与之不同,根据本发明,只需要存储和构建一个联合码本。例如,如果最大级数M被定义为256,则根据本发明,只需要构建和存储具有256个再生矢量的一个码本,因为其还包括用于较小级数N(例如对于N=128)的码本,而在现有技术中,将必须构建和存储两个码本(具有256个和128个再生矢量)。这极大地有利于降低量化器和获取已被N级量化的矢量的再生矢量的单元的存储需求,并且还简化了量化器和此单元的结构,因为仅需要控制对一个码本的访问。通过相应地构建联合码本,将联合码本用于不同的级数N成为可能。通常,根据本发明,联合码本中包含的每个N级码本中的再生矢量的数量N可以灵活地选择,特别地,不像现有技术的格型VQ那样受到格型外壳的集的势的限制。因此,根据本发明的联合码本允许对量化级数进行特别灵活地选择。由于可能选择所述矢量的维度提供了附加的灵活度,因此可以解决标量量化和矢量量化这两种情况。
在根据本发明第一方面的方法中,N=2n和M=2m可以成立,其中n和m是整数值。如果将要把字长为n的二进制字用作所选再生矢量的标识符,那么将M和N限制为2的幂是特别有利的,因为长度为i的二进制字允许标识2i个不同的再生矢量。
在根据本发明第一方面的方法中,可以通过n个比特的二进制字来标识所述N级码本中的每个所述再生矢量。在N=2n的情况下,所述二进制字进而可以有效地索引所述N级码本中所有的N=2n个再生矢量。
在根据本发明第一方面的方法中,所述矢量可以包括涉及数据序列的线性预测编码的参数。所述参数例如可以是表征语音或音频信号的一个或若干帧或子帧期间的声道(vocal tract)的LPC/LSF系数,和/或涉及所述语音或音频信号的一个或若干后继帧或子帧中的激励信号(例如增益、基音和/或发音)的参数。
在根据本发明第一方面的方法中,所述选择步骤可以通过便携式通信设备来执行。所述便携式通信设备例如可以是移动电话、个人数字助理(PDA)、便携式计算机等等。同样,所述步骤当然可以由非移动通信设备来执行,例如通信系统的基站或核心网元。
根据本发明第一方面,还提出一种用于矢量的N级量化的设备,其中可以在所述量化之前从至少两个小于或等于预定最大级数M的预定值的集合中选择N。所述设备包括:用于针对每个矢量从N个再生矢量的N级码本中选择再生矢量的装置,其中对于所述至少两个预定值的集合中的每个N,所述N个再生矢量由M个再生矢量的同一联合码本的前N个再生矢量表示。
对于根据本发明第一方面的该设备,应用了已经在根据本发明第一方面的方法的上下文中所讨论的相同的特性和优点。
根据本发明第一方面的所述设备可以是便携式通信设备。所述便携式通信设备例如可以是移动电话、个人数字助理(PDA)、便携式计算机等等。同样,所述设备当然可以是非移动通信设备,例如通信系统的基站或核心网元。
根据本发明第一方面,还提出一种包括存储介质的软件应用产品,该存储介质具有包含在其中的用于对矢量进行N级量化的软件应用,其中可以在所述量化之前从至少两个小于或等于预定最大级数M的预定值的集合中选择N。所述软件应用包括:用于针对每个矢量从N个再生矢量的N级码本中选择再生矢量的程序代码,其中对于所述至少两个预定值的集合中的每个N,所述N个再生矢量由M个再生矢量的同一联合码本的前N个再生矢量表示。
所述存储介质可以是任何易失性或非易失性存储器或存储元件,例如只读存储器(ROM)、随机存取存储器(RAM)、存储棒或存储卡以及光、电或磁性可读盘。在所述软件应用中包含的所述程序代码可以通过面向高层过程或面向对象的编程语言实现以便与计算机系统进行通信,或者通过汇编语言或机器语言来实现以便与数字处理器进行通信。在任何情况中,所述程序代码可以是经过编译或解释的代码。
对于根据本发明第一方面的软件应用产品,应用了已经在根据本发明第一方面的方法的上下文中所讨论的相同的特性和优点。
本发明的第二方面
根据本发明的第二方面,提出一种用于针对已被N级量化的矢量而获取再生矢量的方法,其中可以在所述矢量的量化之前从至少两个小于或等于预定最大级数M的预定值的集合中选择N。所述方法包括:接收已经针对所述量化中的矢量而选择的再生矢量的标识符;以及,基于所述标识符而从N个再生矢量的N级码本中获取所述再生矢量,其中对于所述至少两个预定值的集合中的每个N,所述N个再生矢量由M个再生矢量的同一联合码本的前N个再生矢量来表示。
这里,需要注意的是,在本发明第一方面的上下文中所描述的矢量和再生矢量、级数N的选择以及针对每个矢量的再生矢量的选择也应用于本发明的第二方面。
所述矢量已经通过根据失真标准从N级码本中选择再生矢量而得以量化,例如,如在本发明第一方面的上下文中所述的。该再生矢量由标识符所标识,该标识符例如是n个比特的二进制字,并且其例如可以通过传输信道被传输给执行根据本发明第二方面的方法的设备。当接收到该标识符后,基于所述标识符,从所述联合码本的前N个再生矢量所表示的所述N级码本中获取对应的再生矢量。对于所述量化可以选择的所有N,对应的N级码本包含在所述联合 码本中,事实上这极大地降低了在执行根据本发明第二方面方法的单元处所需的存储容量。而且,简化了该单元的操作,因为仅要求对一个单独的码本(联合码本)而不是对多个码本进行访问。
根据本发明第二方面,还提出一种用于针对已被N级量化的矢量而获取再生矢量的设备,其中可以在所述矢量的量化之前从至少两个小于或等于预定最大级数M的预定值的集合中选择N。所述设备包括:用于接收已经针对所述量化中的矢量而选择的再生矢量的标识符的装置;以及,用于基于所述标识符而从N个再生矢量的N级码本中获取所述再生矢量的装置,其中对于所述至少两个预定值的集合中的每个N,所述N个再生矢量由M个再生矢量的同一联合码本的前N个再生矢量来表示。
根据本发明第二方面,还提出一种包括存储介质的软件应用产品,该存储介质具有包含于其中的用于针对已被N级量化的矢量而获取再生矢量的软件应用,其中可以在所述矢量的量化之前从至少两个小于或等于预定最大级数M的预定值的集合中选择N。所述软件应用产品包括:用于接收已经针对所述量化中的矢量而选择的再生矢量的标识符的程序代码;以及,用于基于所述标识符而从N个再生矢量的N级码本中获取所述再生矢量的程序代码,其中对于所述至少两个预定值的集合中的每个N,所述N个再生矢量由M个再生矢量的同一联合码本的前N个再生矢量来表示。
所述存储介质可以是任何易失性或非易失性存储器或存储元件,例如只读存储器(ROM)、随机存取存储器(RAM)、存储棒或存储卡以及光、电或磁性可读盘。在所述软件应用中包含的所述程序代码可以通过面向高层过程或面向对象的编程语言来实现以便与计算机系统进行通信,或者以汇编语言或机器语言来实现以便与数字处理器进行通信。在任何情况中,所述程序代码可以是经过编译或解释的代码。
本发明的第三方面
根据本发明的第三方面,提出一种用于传送矢量表示的系统。该系统包括:用于针对每个矢量从N个再生矢量的N级码本中选择再生矢量的装置,其中可以在所述选择之前从至少两个小于或等于预定最大级数M的预定值的集合中选择N,并且其中,对于所述至少两个预定值中的每个N,所述N个再生矢量由M个再生矢量的第一联合码本的前N个再生矢量所表示;用于通过传输信道来传输所选再生矢量的标识符的装置;用于接收所述标识符的装置;以及,用于基于所述标识符,从等同于所述第一联合码本的M个再生矢量的第二联合码本的前N个再生矢量所表示的N个再生矢量的N级码本中获取所述再生矢量的装置。
这里,需要注意的是,在本发明第一方面的上下文中所描述的矢量和再生矢量、级数N的选择以及针对每个矢量的再生矢量的选择也应用于本发明的第三方面。
通过从包含于所述第一联合码本的N级码本中选择针对每个矢量的再生矢量,并通过仅传输所述再生矢量的标识符(例如具有n=log2(N)的n比特二进制字),获得了所述矢量的表示(即所述再生矢量,或其对应的标识符)的特别有效的传送,因为该标识符的有关信息使得接收所述标识符的单元能够从所述第二联合码本(其等同于第一码本)中包含的相应N级码本中获取所述再生矢量。这里,矢量失真随着N的增加而降低,而n比特二进制字的字长增加,其中,矢量失真是由以下事实所引起的:再生矢量源于具有有限数量的再生矢量的码本,并因此一般不同于所述矢量。因此,通过N,可以控制准确性与所需传输容量之间的权衡(trade-off)。
所述再生矢量(即所述矢量的量化)的所述选择例如可以发生在例如移动无线系统的通信网络中的发射器处,则所述再生矢量的所述获取可以在所述通信网络中的接收器处执行。所述发射器和所述接收器之间的传输信道可以是无线或有线传输信道。所述传输信道还可以被理解为表示存储介质,其中,所述再生矢量的所述标识符在发射器处存储在所述存储介质上,并在接收器处被读取。此外, 所述标识符在被传输之前可以经过信道编码或其它处理。
本发明的第四方面
根据本发明的第四方面,提出一种用于确定M个再生矢量的联合码本以用于N级矢量量化的方法,其中M是预定的最大级数,其中可以在所述量化之前从至少两个小于或等于M的预定值的集合中选择N,并且其中,在所述量化中,从N个再生矢量的N级码本中选择针对每个矢量的再生矢量,其中对于所述至少两个预定值的集合中的每个N而言,所述N个再生矢量由所述联合码本的前N个再生矢量来表示。所述方法包括:通过训练算法并至少部分基于多个训练矢量来产生所述再生矢量;以及根据安置算法将所产生的再生矢量安置到所述联合码本中,使得对于每个N而言,所述M个再生矢量的集合中的前N个再生矢量形成N级码本,该N级码本在用于所述矢量的所述量化时允许所述矢量的较小平均失真。
这里,需要注意的是,在本发明第一方面的上下文中所描述的矢量和再生矢量、级数N的选择以及针对每个矢量的再生矢量的选择也应用于本发明的第四方面。
然后,根据本发明第四方面的方法所确定的联合码本可以例如存储在设备的存储器中,该设备使用量化器和/或获取已被N级量化的矢量的再生矢量的单元。根据所述安置算法,M个再生矢量在所述联合码本中的特定安置允许将所述联合码本用作单个码本,以用于具有不同可选级数N≤M的矢量量化,并且因此有助于节约量化器和再生矢量获取单元二者中的存储器。
所述训练算法至少部分地基于所述多个训练矢量而生成L个再生矢量的集合,其中L可以任意选择。所述训练算法例如可以是LBG算法或任何其他类型的码本训练算法。一种形式的LBG算法是用于未知矢量分布的LBG算法,如在本发明说明书公开部分中所引用的Linde等人的现有技术参考文件中所提出的。除了所述多个训练矢量之外,所述算法可以拥有一个或多个再生矢量,其在所述L个再生 矢量的集合的所述产生过程中将被视为是固定的。
产生所述再生矢量的所述步骤并非必须只执行一次便获取所有M个再生矢量,其同样可以执行若干次(例如所产生的再生矢量的数量每次都有所增加)。
所述安置算法的目标在于,对于每个N,所述M个再生矢量的集合中的前N个再生矢量形成N级码本,其在用于所述矢量的N级量化时允许所述矢量的较小平均失真。这里,所述失真确定矢量相对于再生矢量的偏离的数量,其中所述再生矢量选自所述矢量的所述量化中的所述N级码本。根据所使用的安置算法,可以生成M个再生矢量的不同码本。而且,很清楚的是,随着级数N的增加(即N级码本中再生矢量的数量的增加),所述矢量的平均失真由于N级码本中数量增加的再生矢量的可用性而降低。因此,例如,通过64个再生矢量的码本可实现的平均失真可能显著地大于通过128个再生矢量的码本可实现的平均失真,但在64个再生矢量的码本的上下文中仍然可被视为是较小的。
在根据本发明第四方面的所述方法中,N=2n和M=2m可以成立,其中n和m是整数值。如果将要把字长度为n的二进制字用作所选再生矢量的标识符,那么这将是特别有利的,因为长度为i的二进制字允许标识2i个不同的再生矢量,并且因此代表了用于传送和存储所选再生矢量的有关信息的有效手段。
根据本发明第四方面的方法的第一实施方式包括:通过所述训练算法来产生M个再生矢量的初始码本;通过所述训练算法来产生2个再生矢量的2级码本;从所述初始码本中选择那些与所述2级码本中的所述2个再生矢量最相似的2个再生矢量;将所述2个所选再生矢量从所述初始码本复制到所述联合码本中的前2个位置,并从所述初始码本中删除所述2个所选再生矢量;以及,对于1<i≤m,重复下列步骤:通过所述训练算法产生I=2i个再生矢量的I级码本;从所述I级码本中标识那些与已经复制到所述联合码本的所述I/2个再生矢量最相似的I/2个再生矢量;对于所述I级码本中其余未被标 识的I/2个再生矢量,从所述初始码本中选择那些与所述其余未被标识的I/2个再生矢量最相似的I/2个再生矢量;以及将所述I/2个所选再生矢量从所述初始码本复制到所述联合码本中按升序排列的接下来的空闲位置,并从所述初始码本中删除所述I/2个所选再生矢量。
在N和M被假设为2的幂的第一实施方式中,首先通过训练算法并基于多个训练矢量而一次性产生所有的M个再生矢量(初始码本),然后将所产生的再生矢量顺次地安置在所述联合码本中,其中对于该算法的每个阶段i,所述安置包括通过所述训练算法来产生I个再生矢量的码本,从而允许在所述阶段i的相应优化码本处的定向(orientation)。这里,矢量的相似性通过相似性标准来评估,仅举一些例子,其例如可以是矢量之间的欧几里得距离,或者欧几里得距离平方。
根据本发明第四方面的方法的第二实施方式包括:通过所述训练算法来产生2个再生矢量的2级码本;将所述2个再生矢量从所述2级码本复制到所述联合码本中的前2个位置;以及,对于1<i≤m,重复下列步骤:通过所述训练算法产生I=2i个再生矢量的I级码本,其中在所述训练算法中,已经复制到所述联合码本的I/2个再生矢量形成I个再生矢量的码本的第一部分,其用作所述训练算法所产生的I级码本的初始化,并被假设为在整个训练算法中是固定的;以及将所产生的I级码本的I/2个最后再生矢量复制到所述联合码本中按升序排列接下来的I/2个空闲位置。
在N和M被假设为2的幂的该第二实施方式中,用于所述联合码本的再生矢量并非一次性的产生,而是以大小为I/2的块顺次产生。这里,这样来限制产生I个再生矢量的码本的训练算法的自由度:向该训练算法提供所述码本的前I/2个再生矢量,并要求这些再生矢量在其余I/2个再生矢量的产生期间保持固定。作为将所产生的码本的最后I/2个再生矢量复制到所述联合码本中接下来的I/2个空闲位置的替代,当然也可以将所产生的整个码本(包括I个再生矢量)复 制到该码本中的前I个位置。
根据本发明第四方面的方法的第三实施方式的第一替代实施方式包括:通过所述训练算法并基于多个训练矢量来产生M个再生矢量的初始码本;从所述初始码本中选择彼此最不同的两个再生矢量;将所述两个所选再生矢量从所述初始码本复制到所述联合码本中的前两个位置并从所述初始码本中删除所述两个所选再生矢量;以及只要所述初始码本非空,就重复下列步骤:从所述初始码本中选择与已经复制到所述联合码本的所有再生矢量最不同的再生矢量;将所述所选再生矢量从所述初始码本复制到所述联合码本中按升序排列的接下来的空闲位置,并从所述初始码本中删除所述所选再生矢量。
根据本发明第四方面的方法的第三实施方式的第二替代实施方式包括:通过所述训练算法并基于多个训练矢量来产生M个再生矢量的初始码本;从所述初始码本中选择与所有所述训练矢量最相似的再生矢量;将所选再生矢量从所述初始码本复制到所述联合码本中的第一位置,并从所述初始码本中删除所选再生序列;以及只要所述初始码本非空,就重复下列步骤:从所述初始码本中选择与已经复制到所述联合码本的所有再生矢量最不同的再生矢量;将所选再生矢量从所述初始码本复制到所述联合码本中按升序排列的接下来的空闲位置,并从所述初始码本中删除所述所选再生矢量。
在该第三实施方式中,首先通过训练算法并基于多个训练矢量而一次性产生所有的M个再生矢量(初始码本),然后将所产生的再生矢量顺次地安置在所述联合码本中,其中从所述联合码本的开始算起,尝试将来自所述初始码本的所述再生矢量按照差异程度降低的顺序安置在所述联合码本中,使得最不同的再生矢量被定位于所述联合码本的开始处。这里,基于差异标准来评估矢量之间的差异,仅举一些例子而言,所述差异标准例如是矢量之间的欧几里得距离或欧几里得距离平方。根据第一替代实施方式,所述初始码本中的两个再生矢量是彼此最不同的,并被复制到所述联合码本中的 前两个位置,而根据第二替代实施方式,来自所述初始码本的、与所述多个训练矢量中所有训练矢量最相似的再生矢量被复制到所述联合码本中的第一位置。
在该第三实施方式中,有益的是施加一些限制,使得很少使用的再生矢量不会成为联合码本中的第一条目。这例如可以通过要求所述再生矢量成分的幅度不超过特定限制来实现,其中该限制对于处于联合码本开始处的再生矢量而言可以很小,并且可以向着该联合码本的末端处增加。
根据本发明第四方面的方法的第四实施方式包括:通过所述训练算法产生M个再生矢量的初始码本;只要所述初始码本非空,就重复下列步骤:从所述初始码本中选择彼此最相似的2个再生矢量;将所述两个所选再生矢量中的第一再生矢量从所述初始码本复制到所述联合码本中从最后位置开始按降序排列的接下来的空闲位置,并且从所述初始码本中删除所述两个所选再生矢量的所述第一再生矢量。
在该第四实施方式中,首先通过训练算法并基于多个训练矢量而一次性产生所有的M个再生矢量(初始码本),然后将所产生的再生矢量顺次地安置在所述联合码本中,其中试图将来自所述初始码本的所述再生矢量按照相对于其他再生矢量的差异程度上升的顺序安置到所述联合码本中,但这次是从所述联合码本的末端开始算起。这里,基于相似标准来评估矢量之间的相似性,仅举一些例子而言,所述相似标准例如是矢量之间的欧几里得距离或欧几里得距离平方。
在根据本发明第四方面的方法的第五实施方式中,用于N的、小于或等于M的至少两个预定值的所述集合包含K个值Ni,其中i=1,...,K,并且Nj-1<Nj≤M,其中j=2,...,K。所述方法继而包括:通过所述训练算法并基于多个训练矢量来产生M个再生矢量的初始码本;从所述初始码本中选择N1个再生矢量,使得包含所述所选再生矢量的码本相对于所有所述训练矢量的失真最小化;将所述所选再生矢量从所述初始码本复制到所述联合码本,并从所述初始码本中删除所述所选再生矢量;以及对于1<i≤K的每个Ni,重复下列步骤:从所述初始码本中选择Ni-Ni-1个再生矢量,使得包含已经复制到所述联合码本的Ni-1个再生矢量以及所述所选再生矢量的码本相对于所有所述训练矢量的失真最小化;以及,将所选再生矢量从所述初始码本中复制到所述联合码本中按照升序排列的接下来的空闲位置,并从所述初始码本中删除所述所选再生矢量。
在该第五实施方式中,首先通过训练算法并基于多个训练矢量而一次性产生所有的M个再生矢量(初始码本),然后将所产生的再生矢量在逐个码本的基础上安置到所述联合码本中。对于将被包含在所述联合码本中的、大小为Ni(其中i=1,...,K,其中NK例如可以等于M)的K个码本中的每一个,从初始码本中选择再生矢量,使得包含已经在先前阶段中确定的再生矢量以及所述新近所选再生矢量的码本相对于该训练算法所用的训练矢量的失真最小化。这里,Nk可以等于或不等于M。码本的失真例如可以如下确定:计算该码本中所包含的每个再生矢量相对于来自再生矢量的维诺(Voronoi)单元的所有训练序列的总失真,并对所述码本中的所有再生矢量的总失真进行求和从而得到最终值。再生矢量的维诺单元可以被视为输入矢量的集合,所述输入矢量在给定距离下更接近所考虑的再生矢量,而不是更接近来自包含所述所考虑再生矢量的码本中的任意其他再生矢量。这里,输入矢量是将要通过给定码本进行量化的所有可能矢量,从而训练矢量集合通常仅是输入矢量集合的子集(在仅具有一个再生矢量的退化情形中,该单个再生矢量的维诺单元是整个输入空间)。失真通过失真标准来确定,其中举例而言,失真标准例如可以是矢量之间的欧几里得距离,或是得自l1范数的距离。
根据本发明第四方面,还提出了一种用于确定M个再生矢量的联合码本以用于N级矢量量化的设备,其中M是预定的最大级数M,其中可以在所述量化之前从至少两个小于或等于M的预定值的集合中选择N,并且其中在所述量化中,从N个再生矢量的N级码本中选择针对每个矢量的再生矢量,其中对于所述至少两个预定值的集合中的每个N而言,所述N个再生矢量由所述联合码本的前N个再生矢量来表示。所述设备包括:用于通过训练算法并至少部分基于多个训练矢量来产生所述再生矢量的装置;以及,用于根据安置算法而在所述联合码本中安置所述所产生的再生矢量的装置,使得对于每个N而言,所述M个再生矢量的集合中的前N个再生矢量形成N级码本,该N级码本在用于所述矢量的所述量化时允许所述矢量的较小的平均失真。这里,所述训练算法例如可以是LBG算法。
根据本发明第四方面,还提出一种包括存储介质的软件应用产品,该存储介质具有包含在其中的用于确定M个再生矢量的联合码本以用于N级矢量量化的软件应用,其中M是预定的最大级数M,其中可以在所述量化之前从至少两个小于或等于M的预定值的集合中选择N,并且其中在所述量化中,从N个再生矢量的N级码本中选择针对每个矢量的再生矢量,其中对于所述至少两个预定值的集合中的每个N而言,所述N个再生矢量由所述联合码本的前N个再生矢量来表示。所述软件应用包括:用于通过训练算法并至少部分基于多个训练矢量来产生所述再生矢量的程序代码;以及,用于根据安置算法在所述联合码本中安置所述所产生的再生矢量的程序代码,使得对于每个N而言,所述M个再生矢量的集合中的前N个再生矢量形成N级码本,该N级码本在用于所述矢量的所述量化时允许所述矢量的较小的平均失真。这里,所述训练算法例如可以是LBG算法。
所述存储介质可以是任何易失性或非易失性存储器或存储元件,例如只读存储器(ROM)、随机存取存储器(RAM)、存储棒或存储卡以及光、电或磁性可读盘。在所述软件应用中包含的所述程序代码可以通过面向高层过程或面向对象的编程语言来实现以便与计算机系统进行通信,或者通过汇编语言或机器语言来实现以便与数字处理器进行通信。在任何情况中,所述程序代码可以是经过编译或解释的代码。
本发明的第五方面
最后,根据本发明的第五方面,提出一种用于N级矢量量化的联合码本,其中M是预定的最大级数,其中可以在所述量化之前从至少两个小于或等于M的预定值的集合中选择N,并且其中在所述量化中,从N个再生矢量的N级码本中选择针对每个矢量的再生矢量,其中对于所述至少两个预定值的集合中的每个N而言,所述N个再生矢量由所述联合码本的前N个再生矢量来表示。所述联合码本包括M个再生矢量的集合,其中通过训练算法并至少部分基于多个训练矢量来产生所述M个再生矢量的集合中的所述再生矢量;以及,根据安置算法在所述M个再生矢量的集合中安置所述再生矢量,使得对于每个N而言,所述M个再生矢量的集合中的前N个再生矢量形成N级码本,该N级码本在用于所述矢量的所述量化时允许所述矢量的较小平均失真。
这里,需要注意的是,在本发明第一方面的上下文中所描述的矢量和再生矢量、级数N的选择以及针对每个矢量的再生矢量的选择也应用于本发明的第五方面。所述训练算法例如可以是LBG算法。
根据本发明第五方面的码本例如可以存储在设备的存储器中,该设备使用量化器和/或获取已被N级量化的矢量的再生矢量的单元。根据所述安置算法,所述M个再生矢量在包括所述M个再生矢量的集合的所述码本中的具体安置允许所述码本被用作单个码本,以用于具有不同可选级数N≤M的矢量量化,并且因此有助于节约量化器和再生矢量获取单元二者中的存储器。
从后文所描述的实施方式以及参考这些实施方式所进行的阐述中,本发明的这些和其他方面将变得清楚明了。
附图说明
在附图中,示出了:
图1是根据本发明第三方面的用于传送矢量表示的系统中所包 括的根据根据本发明第一方面的N级矢量量化设备的实施方式以及根据本发明第二方面的用于获取针对已经过N级量化的矢量的再生矢量的实施方式的示意图;
图2a是根据本发明第一方面的用于N级矢量量化的方法的实施方式的流程图;
图2b是根据本发明第二方面的用于获取针对已经过N级量化的矢量的再生矢量的方法的实施方式的流程图;
图3是根据本发明第四方面的用于确定联合码本以用于N级矢量量化的设备的实施方式的示意图;
图4a是根据本发明第四方面的用于确定联合码本以用于N级矢量量化的方法的第一实施方式的流程图;
图4b是根据本发明第四方面的用于确定联合码本以用于N级矢量量化的方法的第二实施方式的流程图;
图4c是根据本发明第四方面的用于确定联合码本以用于N级矢量量化的方法的第三实施方式的流程图;
图4d是根据本发明第四方面的用于确定联合码本以用于N级矢量量化的方法的第四实施方式的流程图;
图4e是根据本发明第四方面的用于确定联合码本以用于N级矢量量化的方法的第五实施方式的流程图;
图5表示根据本发明第五方面的联合码本的示意图。
具体实施方式
本发明一般地涉及N级矢量量化的情况,其中,针对所述矢量从N级码本中选择再生矢量。尽管可以针对取自预定集合的不同可选级数N来执行量化,但所有N级码本的N个再生矢量都是由包括M个再生矢量的单个联合码本中各自的前N个再生矢量表示的,其中M表示最大可选级数。
这里,本发明的第一方面涉及N级矢量量化,第二方面涉及获取针对已被N级量化的矢量的再生矢量,第三方面涉及矢量表示的传送,第四方面涉及为多个不同N级量化提供N级码本的联合码本的确定,以及第五方面涉及这种联合码本本身。
图1示出了根据本发明第三方面的用于传送矢量表示的系统4的实施方式的示意图。该系统4包括根据本发明第一方面的用于N级矢量量化的设备1;以及用于获取针对已被N级量化的矢量的再生矢量的设备2。该系统例如可以包含在能够在两个通信单元之间进行通信的通信系统中,其中第一通信单元包括设备1,而第二通信单元包括设备2。这种通信系统的一个例子例如是移动无线系统,其中根据涉及语音和音频数据量化的语音或音频编解码器来传送语音或音频数据。
设备1包括选择和映射单元10、联合码本存储器11和发射(Tx)单元12。选择和映射单元10能够接收k维矢量序列,其中k≥1;能够针对每个所述矢量来选择源于N级码本的k维再生矢量;以及能够将所选再生矢量映射到唯一地标识所述所选再生矢量的标识符。所述矢量例如可以包括涉及语音或音频编码的堆栈化数据,例如LPC/LSF系数,或者语音或音频信号的一个或若干帧或子帧的增益、基音或发音参数。这里,表示量化级数的所述参数N从外部单元被馈送到所述单元10中,例如从包括设备1的通信单元的中央控制器馈送。
基于失真标准来执行所述再生矢量的选择,其中该失真标准确定该矢量和每个再生矢量之间的差异的数量。例如在本发明说明书公开部分中引用的Linde等人的现有技术参考文件中公开了多种失真标准,仅举几个例子,例如平方误差失真或Holder范数。通常,选择单元10将从所述N级码本中选择这样的再生矢量,其使得相对于所述N级码本中所包含的其它再生矢量的所应用失真标准最小化。
所述选择和映射单元10从联合码本存储器11中获取所述N级码本,该存储器11存储有根据本发明第五方面的联合码本。该联合码本包括M个再生矢量,其中M是预定值。所述联合码本例如可以在设备1的制造期间已存储在所述存储器11中,例如当存储器11是ROM时。同样,所述设备1可以包括接口,可以通过该接口从例如码本服务器的外部单元来改变或更新联合码本。该存储器11例如可以是RAM。
根据本发明第五方面的联合码本的特征在于,其包括针对N的多个预定不同值的N级码本,其中N≤M。这里,M定义了设备1能够执行量化的最大级数。因此,根据本发明,仅需要存储一个单独的联合码本,而设备仍然能够针对多个值N而执行N级量化。N级量化所需的N级码本是联合码本中所包含的相应的前N个再生矢量。该特征是通过适当地确定联合码本而实现的。这将在下面进行更详细的描述。
图5示出了根据本发明第五方面的联合码本5的示意性实例,其中M=16并且N可以从集合{2,4,8,16}中选择。联合码本5包括M=16个k维再生矢量,其表示为水平条。而且,图5利用相应的范围标记符52-55示出了联合码本与单个N级码本的再生矢量的关联。例如,N=2的2级码本仅包含联合码本的前两个再生矢量,如范围标记符52所示;N=4的4级码本仅包含联合码本的前四个再生矢量,如范围标记符53所示,等等。最后,对于N=M=16,如范围标记符55所示,N=16的16级码本包括联合码本的所有M=16个再生矢量。
对于每个N级码本,可以将其中包含的N个再生矢量映射到n比特二进制字上,其中n=log2(N)。例如,对于N=4(即n=2 ),4级码本中的第一再生矢量可以由2比特二进制字′00′来标识,第二再生矢量可以由2比特二进制字‘01’来标识,第三再生矢量可以由2比特二进制字‘10’来标识,而第四再生矢量可以由2比特二进制字‘11’来标识。因此,在此情况下,每个再生矢量必须花费2个比特。对于N=8(即n=3),则必须花费3个比特,等等。
为了更清楚,下面提供了用于语音或音频信号的增益参数量化的示例性联合码本,其具有M=16个1维再生矢量。该例子符合图5的联合码本5。待量化的增益参数的范围是从0dB到96dB,并且联合码本将适用于2级、4级、8级和16级量化,从而针对N=2、4、8、16的码本必须包含在联合码本中。假设增益参数在0dB至96dB的间隔中均匀分布,适合的联合码本给出为(所有的再生矢量的单位为dB):
[24,72,0,48,12,36,60,84,6,18,30,42,54,66,78,90]使得其中包含的N级码本如下(其中所有的再生矢量的单位为dB):
N=2:[24,72]
N=4:[24,72,0,48]
N=8:[24,72,0,48,12,36,60,84]
N=16:
[24,72,0,48,12,36,60,84,6,18,30,42,54,66,78,90]
可以很清楚的看出,对于每个N而言,码本包含试图均匀地覆盖从0dB到96dB范围的再生矢量,并且可能的话,随着N的每次增长,再生矢量之间的欧几里得距离降低。例如,对于N=2,该距离为48dB。对于N=4,该距离为24dB,对于N=8,该距离为12dB,而对于N=16,该距离仅为6dB。因此,N每增加一倍,则该距离减半。
现在考虑将要对增益参数的实现进行量化的示例性情况,所述实现等于40dB。如果仅有n=1个比特(N=2)将用于量化,并且如果欧几里得距离被选择为失真标准,则将要选择2级码本中的第一个再生矢量,即24dB。因此,该再生矢量引起的失真为40-24dB=16dB。通过多花费一个比特,即n=2(N=4),4级码本中的最佳再生矢量为48dB,并且相应地,失真仅为8dB。对于每个再生矢量n=3比特(N=8),最佳再生矢量是36dB,从而将失真降低到4dB。最后,对于每个再生矢量n=4比特(N=16),16级再生矢量中的最佳再生矢量是42dB,从而进一步将失真降低到2dB。
因此非常清楚的是,通过选择N,可以权衡失真以及所需的传输/存储容量。
返回图1,通过设备1的选择和映射单元10来执行针对将要被N级量化的每个矢量的再生矢量的上述选择,以及所选再生矢量到字长度为n=log2(N)的二进制值的映射。继而将以此方式获取的标识符转发给Tx单元12,其执行进一步处理以允许经由传输信道来发射该标识符。该处理例如包括信道编码、交织、基带调制和/或RF处理。所述传输信道同样也可以理解为存储有所述标识符的存储介质。在此情况中,Tx单元12接下来执行处理以允许在此存储介质上存储该标识符。
图1的系统4中的设备2包括接收(Rx)单元23、用于获取针对已经在设备1中经过N级量化的矢量的再生矢量的单元20以及联合码本存储器21。这里,存储在存储器21中的联合码本与设备1的存储器11中存储的联合码本相同。Rx单元23通过例如执行RF处理、同步、均衡、解调、去交织和/或信道解码来接收由设备1的Tx单元12所发射的标识符。如果所述传输信道表示存储介质,则Rx单元23执行处理以从存储介质中读取该标识符。继而将所接收的标识符转发到单元20,单元20基于所接收的标识符、参数N以及存储器21中存储的联合码本来获取对应于所接收标识符的再生矢量。这要求再生矢量与标识符的映射对于设备1和设备2二者是相同的。此外,必须将参数N输入到单元20中,从而使得单元20能够从联合码本中提取正确的N级码本。例如可以通过外部单元来使N对于单元20可用,该外部单元例如是容纳设备2的通信单元的中央控制器。所接收的再生矢量继而可以由设备2输出到进一步的处理阶段。
根据本发明第三方面的系统4因此允许经由传输信道来传送矢量的表示。很容易理解的是,在设备2处接收的再生矢量通常不是在设备1处被量化矢量的无失真表示,因为可用于量化的N级码本仅包含有限数量的再生矢量以供选择。随着N的增加,可以降低失真,但必须花费的用来标识再生矢量的比特数目相应增加。因此,通过参数N,可以在失真与传输带宽需求(或如果所述传输信道由数据载体所表示则为存储需求)之间进行权衡。
图2a是根据本发明第一方面的N级矢量量化方法的实施方式的 流程图。该方法例如可以由图1的系统4中的设备1的选择和映射单元10来执行。为此,该方法的步骤可以通过所述设备1的数字处理器所执行的软件应用产品的软件应用来实现。
在第一步骤100,例如通过从外部单元接收N的值来对参数N进行初始化。在步骤101,继而检查用于量化的矢量是否可用。如果不是这种情况,则该方法终止。否则,在步骤102,接收一个矢量,并且在随后的步骤103中,从对应的由联合码本的前N个再生矢量表示的N级码本中选择再生矢量,使得该再生矢量使失真标准最小化。在步骤104,继而输出所选再生矢量的标识符,例如输出到图1的设备1的Tx单元12中。
然后,在步骤105检查参数N是否将要改变,例如由于外部信令引起改变。如果不是这种情况,则该方法跳回到步骤101以量化其它矢量。否则,在步骤106接收新选择的N,然后该方法跳回到步骤101。
图2b是根据本发明第二方面的用于获取针对已被N级量化的矢量的再生矢量的方法的实施方式的流程图。该方法例如可以由图1的系统4中的设备2的单元20来执行。为此,该方法的步骤可以通过所述设备2的数字处理器所执行的软件应用产品的软件应用来实现。
在第一步骤200,例如通过从外部实例接收N的值来对参数N进行初始化。需要N以从联合码本中选择适当的N级码本。继而在步骤201中检查标识符是否可用。如果不是这种情况,则该方法终止。否则,在步骤202,接收一个标识符。然后,在步骤203中,从所述联合码本中的前N个再生矢量所表示的N级码本中获取所述标识符所标识的再生矢量。然后在步骤204输出所获取的再生矢量。在步骤205,检查是否需要改变参数N。如果不是这种情况,则该方法跳回到步骤201以接收其它标识符。否则,在步骤206接收新选择的N,并且该方法接下来仅跳回到步骤201。
图3是根据本发明第四方面的用于确定用于N级矢量量化的联合码本的设备3的实施方式的示意图。该设备3例如可以被部署用于为图1中的系统4的设备1或设备2之类的设备构建联合码本。继而可以在设备1和设备2的制造期间或稍后将所确定的联合码本分别存储在设备1和设备2的存储器11和21中,这例如通过到所述存储器11和21的接口实现。
设备3包括控制单元30,LBG单元31以及安置单元32。
这里,LBG单元能够执行LBG算法,以便基于多个训练矢量生成L个再生矢量的集合,其中L是可选的整数。所述LBG算法例如可以基于用于未知矢量分布的算法,如本发明说明书公开部分中引用的Linde等人的现有技术参考文件中所提出的。除了所述多个训练矢量之外,所述LBG算法可以具有一个或多个在该组L个再生矢量的产生期间被视为固定的再生矢量,如参考下面图4b的根据本发明第四方面的方法的第二实施方式而更详细解释的那样。很容易理解,本发明实施方式中LBG算法的使用仅作为示例。同样,也可以使用其他码本训练算法作为替代。
安置单元32能够根据安置算法将LBG单元31生成的再生矢量安置到联合码本中,使得对于每个N,该联合码本中的前N个再生矢量形成N级码本,当该N级码本用于这些矢量的N级量化时,其允许矢量的较小平均失真。
控制单元30控制设备3的整体操作,特别是控制LBG单元31和安置单元32的交互操作。
为了确定联合码本,设备3被提供有设计联合码本所针对的最大级数M,并具有训练矢量,其表示稍后将要基于联合码本被量化的矢量。可选地,还可以将级数N的预定集合提供给设备3,其中联合码本将针对该集合包括N级码本。例如,如果M=256,则联合码本仅包含N=128和N=256的码本就已足够,则所述级数N的预定集合将是{128,256}。设备3继而利用该信息来确定仅针对这两个级数而优化的码本,而不是试图确定针对所有N=2,4,8,16,32,64,128,256的优化码本。这里,应当注意的是,将N选择为2的幂仅 是示例。所述设备3同样能够针对非2的幂的级数N而确定联合码本,从而提高码本的灵活性。
图4a是根据本发明第四方面的用于确定联合码本的方法的第一实施方式的流程图。该第一实施方式例如由图3的设备3来实现。
在第一步骤400,将待构建的联合码本初始化为空码本,其具有用于M个再生矢量的存储容量。在步骤401,将循环计数i初始化为1。在步骤402,根据LBG算法并基于多个训练矢量来产生所谓的“初始”M级码本。这例如可以由设备3的LBG单元31来实现(参见图3)。然后,图4a流程图的剩余步骤涉及将所述初始码本中包含的再生矢量安置在步骤400中初始化的所述联合码本中。该安置例如可以由设备3的安置单元32(参见图3)来执行。
为此,在步骤403,通过LBG算法并基于在步骤402中使用的同一训练序列来确定2级码本。这也可以由设备3的LBG单元31来执行(参见图3)。然后在步骤404,所述初始码本中与所述2级码本中的两个再生矢量最相似(在最小化失真标准方面)的两个再生矢量被标识,并且在步骤405中被复制到在步骤400中初始化的联合码本中的前两个位置。在步骤406,将位置计数Pos设置为2。
重复地执行下列步骤407-412,直到将来自所述初始码本的所有再生矢量安置到所述联合码本中为止。
在步骤407,基于LBG算法和在步骤402和403中使用的相同训练矢量来确定I级码本,该步骤例如可以由设备3的LBG单元31(参见图3)来实现。这里,I=2i成立,其中i是在步骤401中初始化的循环计数。该I级码本表示针对N=I的最优码本。然而,由于在联合码本中,已经在之前所执行的流程步骤中安置了前I/2个再生矢量,所以安置仅对于最后I/2个再生矢量是可行的。因此,在步骤408,标识(并忽略)所述I级码本中与联合码本中已经包含的I/2个再生矢量最相似(在最小化失真标准方面)的I/2个再生向量。然后,在步骤409,所述初始码本中与来自所述I级码本的其余(步骤408中未标识的)再生矢量最相似的I/2个再生矢量被选择,并且在步骤410中被复制到所述联合码本中的位置Pos+1至Pos+I/2。然后在步骤411,将位置计数Pos增加I/2,并且在步骤412中还将循环计数增加1。在步骤413中,检查循环计数是否大于m,其中m=log2(M)。如果是这种情况,则来自所述初始码本的所有再生矢量已经被安置到了联合码本中,方法终止。否则,该方法跳回步骤407,并对在联合码本中包含的接下来的码本执行安置。
图4b是根据本发明第四方面的用于确定联合码本的方法的第二实施方式的流程图。该第二实施方式例如可以由图3中的设备3来实现。
在第一步骤420,对具有M个再生矢量容量的(目标)联合码本进行初始化。在步骤421,将循环计数i初始化为1。在步骤422,根据LBG算法并基于多个训练矢量来产生2级码本。这例如可以由图3中设备3的LBG单元31来实现。在步骤423,将该2级码本的两个再生矢量复制到联合码本中的前两个位置。在步骤424,将位置计数Pos设置为2。该前序操作确定并安置了联合码本中第一码本(N=2)的再生矢量,在此之后,重复地执行步骤425至428,从而产生和确定后续的更高级码本。
为此,在步骤425,通过LBG算法并基于多个训练序列来确定I级码本,其中I=2i成立,其中i是在步骤421中初始化的循环计数。实际上,该I级码本将表示用于N=I的最优码本。然而,由于在联合码本中已经在之前执行的流程步骤中安置了前I/2个再生矢量,所以该安置仅对于最后的I/2个再生矢量是可行的。根据本发明第四方面的方法的第二实施方式,这样来解决该问题:通过包括已经被复制到联合码本中的前I/2个再生矢量的码本来对LBG算法进行初始化,并要求这前I/2个再生矢量在LBG算法的操作过程中保持固定。这确保了LBG算法输出的I级码本包括:已经包含在联合码本中的这前I/2个再生矢量(并且针对较低级码本进行了优化),以及针对当前的I级码本进行了优化的I/2个再生矢量,同时仍然考虑了(部分地补偿了)所述I级码本中的前I/2个再生矢量是固定的事实。然 后,可以将在步骤425中确定的I级码本的后I/2个再生矢量在步骤426中复制到联合码本的位置Pos+1至Pos+I/2。
这些步骤425和426的适当重复是通过在步骤427中更新位置计数Pos、在步骤428增加循环计数i、以及在步骤429针对值m=log2(M)对其进行检查而得以确保的。如果i大于m,则该方法终止,否则,该方法跳回到步骤425。
图4c是根据本发明第四方面的用于确定联合码本的方法的第三实施方式的流程图。该第三实施方式例如可以由图3中的设备3来实现。
在第一步骤440,对具有M个再生矢量容量的(目标)联合码本进行初始化。在第二步骤441,根据LBG算法并基于多个训练矢量来产生所谓的“初始”M级码本。这例如可以由设备3的LBG单元31来实现(参见图3)。然后,图4c的流程图的其余步骤涉及将包含在所述初始码本中的再生矢量安置到在步骤440中初始化的所述联合码本中。该安置例如可以由设备3的安置单元32(参见图3)来执行。
在步骤441之后,有两种备选方案可用以从所述初始码本中选择被复制到联合码本中第一个位置(或前几个位置)的第一个再生矢量(或前几个再生矢量)。
根据第一备选方案,在步骤422a,从初始码本中选择两个彼此最不同(在最大化失真标准方面)的再生矢量。然后,在步骤443a,将所选择的两个再生矢量从所述初始码本复制到联合码本中的前两个位置。此外,将这些再生矢量从初始码本中删除。在步骤444a,接下来将位置计数Pos初始化为3。
根据第二备选方案,在步骤442b,选择来自于所述初始码本的、与步骤441中通过LBG算法产生初始码本中所使用的所有训练矢量最相似的再生矢量。然后,在步骤443b,将所选再生矢量从所述初始码本复制到联合码本中的第一位置。此外,从初始码本中删除该再生矢量。在步骤444b,将位置计数Pos初始化为2。
只要初始码本非空(这在步骤445中进行控制),就重复下列步骤446至448(而不考虑之前所执行的备选方案),每次将一个再生矢量从所述初始码本安置到所述联合码本中接下来的空闲位置Pos中。
为此,在步骤446,选择所述初始码本中与已经包含在所述联合码本中的所有再生矢量最不同的再生矢量。这里,可以例如通过以下方式来确定与已经包含在所述联合码本中的所有再生矢量最不同的再生矢量:对于所述初始码本中的每个候选再生矢量,计算其相对于所述初始码本中所有其他再生矢量的各自失真,并对这些失真进行求和,从而为每个候选再生矢量得到一个值。然后,可以将具有最大总失真的候选再生矢量视为与已经包含在所述联合码本中的所有再生矢量最不同。在步骤447,该所选再生矢量被复制到联合码本中的(接下来的空闲)位置Pos,并从初始码本中被删除。然后在步骤448,将位置计数Pos增加1,并且该方法跳回到步骤445。
以此方式,用来自所述初始码本的、与已经包含在所述联合码本中的再生矢量最不同的再生矢量顺次地填充联合码本,由此,即使是针对低级码本,也能够确保对待量化矢量的矢量空间的良好覆盖。
为了避免很少使用的再生矢量变成联合码本中的前几个条目,可以对图4c的流程图所反映的安置算法施加其它限制。例如,在步骤446,可以选择与已经包含在所述联合码本中的所有再生矢量最不同的、同时其所有矢量分量都低于特定限制的再生矢量,并且继而在步骤447中将其复制到联合码本中。所述限制例如可以取决于在初始码本中选择再生矢量所针对的联合码本中的实际位置Pos。例如,对于对应于联合码本中的2级码本的位置(联合码本中的位置1和2),可以应用第一限制,对于对应于4级码本中的后半部分的位置(联合码本中的位置3和4),可以应用第二限制,等等。这里,有利地,所述限制的值可以增加(即,第一限制小于第二限制,第二限制小于第三限制,等等)。
图4d是根据本发明第四方面的用于确定联合码本的方法的第四实施方式的流程图。该第四实施方式例如可以由图3中的设备3来实现。
在第一步骤460,对具有M个再生矢量容量的(目标)联合码本进行初始化。在第二步骤461,根据LBG算法并基于多个训练矢量来产生所谓的“初始”M级码本。在步骤462,将位置计数Pos初始化为M。然后,图4d的流程图的其余步骤涉及将包含在所述初始码本中的再生矢量安置到在步骤460中初始化的所述联合码本中。该安置例如可以由设备3的安置单元32(参见图3)来执行。
只要初始码本非空(这在步骤463中进行控制),就重复下列步骤446至448,每次将一个再生矢量从所述初始码本安置到所述联合码本中接下来的空闲位置Pos中,但现在从联合码本的末段开始、向开始段进行。
为此,在步骤464,选择所述初始码本中彼此最相似(在最小化失真标准方面)的两个再生矢量。在步骤465,这两个所选再生矢量中的第一个被复制到联合码本中的(接下来的空闲)位置Pos,并且从初始码本中被删除。然后在步骤466,将位置计数Pos降低1,并且该方法跳回到步骤463。
以此方式,用来自所述初始码本的、与所述初始码本中其他再生矢量相似的再生矢量从末段开始顺序地填充联合码本。即使是对于低级码本,这也确保了对待量化矢量的矢量空间的良好覆盖,因为针对这些低级码本的再生矢量位于联合码本的开始处。
图4e是根据本发明第四方面的用于确定联合码本的方法的第五实施方式的流程图。该第五实施方式例如可以由图3中的设备3来实现。
在第一步骤480,对具有M个再生矢量容量的(目标)联合码本进行初始化。在第二步骤481,根据LBG算法并基于多个训练矢量来产生所谓的“初始”M级码本。这可以例如由设备3的LBG单元(参见图3)来完成。然后,图4e的流程图的其余步骤涉及将包含在所述初始码本中的再生矢量安置到在步骤480中初始化的所述联合码本中。该安置例如可以由设备3的安置单元32(参见图3)来执行。
在步骤482,将计数i初始化为0。而且,将变量N0定义为0。最后,将位置计数Pos初始化为0。
步骤483至487描述了重复K次的循环。这里,K表示将由联合码本提供的码本大小Ni(其中i=1,...,K,并且Nj-1<Nj≤M,其中j=2,...,K)的数量。在每次循环i中完成大小为Ni的码本,这将在下文描述。
在循环的步骤484中,从初始码本中选择Ni-Ni-1个再生矢量,并将其复制到联合码本中接下来的空闲位置,并将其从初始码本中删除。执行这些再生矢量的选择,使包含已经在先前循环中被复制到联合码本中的Ni个再生矢量以及所选再生矢量的Ni级码本相对于LBG算法(参见步骤481)中所使用的训练矢量的失真最小化。对于i=1(相应地,Ni=N0=0),迄今还没有再生矢量被复制到联合码本中,并且因此执行再生矢量的选择,使仅包含所选再生矢量的Ni级码本相对于LBG算法中所使用的训练矢量的失真最小。
这里,例如可以通过如下方式来确定码本的失真:计算在Ni级码本中包含的每个再生矢量相对于来自所述再生矢量的维诺单元的所有训练序列的总失真,以及对所述码本中的所有再生矢量的总失真进行求和,以得到最终值。这里,仅举一些例子,可以通过矢量之间的欧几里得距离,或通过从l1范数中导出的距离来确定该失真。
在循环的步骤485,将所选再生矢量复制到联合码本中的位置Pos+1至Pos+Ni-Ni-1(其是联合码本中接下来的空闲位置),并且从初始码本中删除所选再生矢量,从而在后一循环中选择再生矢量时无须对其进行考虑。可以看出,在每个循环i中,仅确定相应Ni级码本的最后Ni-Ni-1个位置,因为已经在先前循环中确定了前Ni-1个位置。这样,在循环i中认为Ni级码本“完成”(并未完全确定)。
在步骤486,相应地将位置计数Pos增加Ni-Ni-1。在步骤487,检查是否已经处理了将要包含在该联合码本中的所有K个码本(i=K)。如果是这种情况,则该方法终止。否则(i<K),该方法跳回到步骤483以完成后续码本。
例如,如果M=4,N1=2以及N2=4成立,则在第一循环i=1中选择N1=2个来自初始码本的再生矢量,使包含这两个再生矢量的2元素码本相对于所述训练矢量的失真最小。这两个再生矢量被复制到联合码本中的位置1和2(从而完成了在联合码本的开始处包含的2元素码本),并从初始码本中删除。在下一循环i=2中,选择N2-N1=2个再生矢量,使具有已经包含在所述联合码本中的2个再生矢量和2个所选再生矢量的码本相对于训练矢量具有最小失真。然后这2个再生矢量被复制到联合码本中的位置3和4(从而完成了在联合码本开始处包含的4元素码本),并且从所述初始码本中被删除。这里,很容易理解,M和Ni的选择并不局限于2的幂。
上面已经通过示例性实施方式对本发明进行了描述。应当注意到,对于本领域技术人员而言,具有各种可选方式和变形,并且可以在不偏离所附权利要求书的实质和范围的情况下加以实现。特别地,本发明不限于语音或音频处理情况中的应用。其同样可用于任何其他类型数据的量化。

Claims (19)

1.一种用于N级矢量量化的方法,其中可以在所述量化之前从至少两个小于或等于预定最大级数M的预定值的集合中选择N,所述方法包括:
从N个再生矢量的N级码本中选择针对每个矢量的再生矢量,其中对于所述至少两个预定值的集合中的每个N,所述N个再生矢量由M个再生矢量的同一联合码本的前N个再生矢量来表示。
2.根据权利要求1所述的方法,其中,N=2n和M=2m成立,其中n和m是整数值。
3.根据权利要求1所述的方法,其中,所述N级码本中的每个再生矢量由n比特二进制字来标识。
4.根据权利要求1所述的方法,其中,所述矢量包括与数据序列的线性预测编码相关的参数。
5.根据权利要求1所述的方法,其中,所述选择步骤由便携式通信设备来执行。
6.一种用于N级矢量量化的设备,其中可以在所述量化之前从至少两个小于或等于预定最大级数M的预定值的集合中选择N,所述设备包括:
用于从N个再生矢量的N级码本中选择针对每个矢量的再生矢量的装置,其中对于所述至少两个预定值的集合中的每个N,所述N个再生矢量由M个再生矢量的同一联合码本的前N个再生矢量来表示。
7.根据权利要求6所述的设备,其中,所述设备是便携式通信设备。
8.一种用于针对已被N级量化的矢量而获取再生矢量的方法,其中可以在所述矢量的量化之前从至少两个小于或等于预定最大级数M的预定值的集合中选择N,所述方法包括:
接收已经针对所述量化中的矢量而选择的再生矢量的标识符;以及,
基于所述标识符而从N个再生矢量的N级码本中获取所述再生矢量,其中对于所述至少两个预定值的集合中的每个N,所述N个再生矢量由M个再生矢量的同一联合码本的前N个再生矢量来表示。
9.一种用于针对已被N级量化的矢量而获取再生矢量的设备,其中可以在所述矢量的量化之前从至少两个小于或等于预定最大级数M的预定值的集合中选择N,所述设备包括:
用于接收已经针对所述量化中的矢量而选择的再生矢量的标识符的装置;以及,
用于基于所述标识符而从N个再生矢量的N级码本中获取所述再生矢量的装置,其中对于所述至少两个预定值的集合中的每个N,所述N个再生矢量由M个再生矢量的同一联合码本的前N个再生矢量来表示。
10.一种用于传送矢量表示的系统,包括:
用于从N个再生矢量的N级码本中选择针对每个矢量的再生矢量的装置,其中可以在所述选择之前从至少两个小于或等于预定最大级数M的预定值的集合中选择N,并且其中,对于所述至少两个预定值的集合中的每个N,所述N个再生矢量由M个再生矢量的第一联合码本的前N个再生矢量所表示;
用于经由传输信道来传输所选再生矢量的标识符的装置;
用于接收所述标识符的装置;以及,
用于基于所述标识符,从等同于所述第一码本的M个再生矢量的第二联合码本的前N个再生矢量所表示的N个再生矢量的N级码本中获取所述再生矢量的装置。
11.一种用于确定M个再生矢量的联合码本以用于N级矢量量化的方法,其中M是预定的最大级数,其中可以在所述量化之前从至少两个小于或等于M的预定值的集合中选择N,并且其中在所述量化中,从N个再生矢量的N级码本中选择针对每个矢量的再生矢量,其中对于所述至少两个预定值的集合中的每个N,所述N个再生矢量由所述联合码本的前N个再生矢量来表示,所述方法包括:
通过训练算法并至少部分地基于多个训练矢量来产生所述再生矢量;以及
根据安置算法在所述联合码本中安置所产生的再生矢量,从而对于每个N而言,所述联合码本中的前N个再生矢量形成N级码本,该N级码本在用于所述矢量的所述量化时允许所述矢量的较小平均失真。
12.根据权利要求11所述的方法,其中,N=2n和M=2m成立,其中n和m是整数值。
13.根据权利要求12所述的方法,包括:
通过所述训练算法来产生M个再生矢量的初始码本;
通过所述训练算法来产生2个再生矢量的2级码本;
从所述初始码本中选择与所述2级码本中的所述2个再生矢量最相似的那2个再生矢量;
将所选的2个再生矢量从所述初始码本复制到所述联合码本中的前2个位置,并从所述初始码本中删除所述2个所选再生矢量;以及
对于1<i≤m,重复下列步骤:
通过所述训练算法产生I=2i个再生矢量的I级码本;
从所述I级码本中标识那些与已经复制到所述联合码本的所述I/2个再生矢量最相似的I/2个再生矢量;
对于所述I级码本中其余未被标识的I/2个再生矢量,从所述初始码本中选择那些与所述其余未被标识的I/2个再生矢量最相似的I/2个再生矢量;以及
将所述I/2个所选再生矢量从所述初始码本中复制到所述联合码本中按升序排列接下来的空闲位置,并从所述初始码本中删除所述I/2个所选再生矢量。
14.根据权利要求12所述的方法,包括:
通过所述训练算法来产生2个再生矢量的2级码本;
将所述2个再生矢量从所述2级码本复制到所述联合码本中的前2个位置;以及,
对于1<i≤m,重复下列步骤:
通过所述训练算法产生I=2i个再生矢量的I级码本,其中在所述训练算法中,已经复制到所述联合码本的I/2个再生矢量形成I个再生矢量的码本的第一部分,其用作初始化所述训练算法所产生的I级码本,并被假设为在整个训练算法中是固定的;以及,将所产生的I级码本的最后I/2个再生矢量复制到所述联合码本中按升序排列接下来的I/2个空闲位置。
15.根据权利要求11所述的方法,包括:
通过所述训练算法并基于多个训练矢量来产生M个再生矢量的初始码本;
从所述初始码本中选择彼此最不同的两个再生矢量;
将所述两个所选再生矢量从所述初始码本复制到所述联合码本中的前两个位置并从所述初始码本中删除所述两个所选再生矢量;以及
只要所述初始码本非空,就重复下列步骤:
从所述初始码本中选择与已经复制到所述联合码本的所有再生矢量最不同的再生矢量;
将所选再生矢量从所述初始码本复制到所述联合码本中按升序排列的接下来的空闲位置,并从所述初始码本中删除所述所选再生矢量。
16.根据权利要求11所述的方法,包括:
通过所述训练算法并基于多个训练矢量来产生M个再生矢量的初始码本;
从所述初始码本中选择与所有所述训练矢量最相似的再生矢量;
将所述所选再生矢量从所述初始码本复制到所述联合码本中的第一位置,并从所述初始码本中删除所述所选再生矢量;以及
只要所述初始码本非空,就重复下列步骤:
从所述初始码本中选择与已经复制到所述联合码本的所有再生矢量最不同的再生矢量;
将所述所选再生矢量从所述初始码本复制到所述联合码本中按升序排列接下来的空闲位置,并从所述初始码本中删除所示所选再生矢量。
17.根据权利要求11所述的方法,包括:
通过所述训练算法产生M个再生矢量的初始码本;
只要所述初始码本非空,就重复下列步骤:
从所述初始码本中选择彼此最相似的2个再生矢量;
将所述两个所选再生矢量中的第一再生矢量从所述初始码本复制到所述联合码本中从最后位置开始按降序排列的接下来的空闲位置,并且从所述初始码本中删除所述两个所选再生矢量的所述第一再生矢量。
18.根据权利要求11所述的方法,其中,针对N的、小于或等于M的至少两个预定值的所述集合包含K个值Ni,其中i=1,...,K,并且Nj-1<Nj≤M,其中j=2,...,K,所述方法包括:
通过所述训练算法并基于多个训练矢量来产生M个再生矢量的初始码本;
从所述初始码本中选择N1个再生矢量,使包含所选再生矢量的码本相对于所有所述训练矢量的失真最小;
将所述所选再生矢量从所述初始码本复制到所述联合码本,并从所述初始码本中删除所述所选再生矢量;以及
对于1<i≤K的每个Ni,重复下列步骤:
从所述初始码本中选择Ni-Ni-1个再生矢量,使包含已经复制到所述联合码本的Ni-1个再生矢量以及所述所选再生矢量的码本相对于所有所述训练矢量的失真最小;以及,
将所选再生矢量从所述初始码本中复制到所述联合码本中按升序排列的接下来的空闲位置,并从所述初始码本中删除所选再生矢量。
19.一种用于确定M个再生矢量的联合码本以用于N级矢量量化的设备,其中M是预定的最大级数M,其中可以在所述量化之前从至少两个小于或等于M的预定值的集合中选择N,并且其中在所述量化中,从N个再生矢量的N级码本中选择针对每个矢量的再生矢量,其中对于所述至少两个预定值的集合中的每个N而言,所述N个再生矢量由所述联合码本的前N个再生矢量来表示,所述设备包括:
用于通过训练算法并至少部分基于多个训练矢量来产生所述再生矢量的装置;以及,
用于根据安置算法而在所述联合码本中安置所产生的再生矢量的装置,使得对于每个N,所述M个再生矢量的集合中的前N个再生矢量形成N级码本,该N级码本在用于所述矢量的所述量化时允许所述矢量的较小平均失真。
CN2006800354118A 2005-08-29 2006-08-25 用于多速率应用的单码本矢量量化 Active CN101288118B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/214,484 2005-08-29
US11/214,484 US7587314B2 (en) 2005-08-29 2005-08-29 Single-codebook vector quantization for multiple-rate applications
PCT/IB2006/052956 WO2007026295A2 (en) 2005-08-29 2006-08-25 Single-codebook vector quantization for multiple-rate applications

Publications (2)

Publication Number Publication Date
CN101288118A CN101288118A (zh) 2008-10-15
CN101288118B true CN101288118B (zh) 2011-07-20

Family

ID=37697832

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2006800354118A Active CN101288118B (zh) 2005-08-29 2006-08-25 用于多速率应用的单码本矢量量化

Country Status (17)

Country Link
US (1) US7587314B2 (zh)
EP (1) EP1920434B1 (zh)
JP (1) JP4777429B2 (zh)
KR (1) KR100982211B1 (zh)
CN (1) CN101288118B (zh)
AT (1) ATE446571T1 (zh)
AU (1) AU2006286177C1 (zh)
BR (1) BRPI0615709B1 (zh)
DE (1) DE602006009950D1 (zh)
ES (1) ES2332330T3 (zh)
HK (1) HK1122640A1 (zh)
MX (1) MX2008002434A (zh)
MY (1) MY144576A (zh)
PL (1) PL1920434T3 (zh)
RU (1) RU2391715C2 (zh)
WO (1) WO2007026295A2 (zh)
ZA (1) ZA200801844B (zh)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7966175B2 (en) * 2006-10-18 2011-06-21 Polycom, Inc. Fast lattice vector quantization
US7961640B2 (en) * 2006-10-26 2011-06-14 Qualcomm Incorporated Method and apparatus for codebook exchange in a multiple access wireless communication system
KR101083291B1 (ko) * 2006-12-05 2011-11-14 후아웨이 테크놀러지 컴퍼니 리미티드 벡터 양자화를 위한 방법 및 장치
US7813922B2 (en) * 2007-01-30 2010-10-12 Nokia Corporation Audio quantization
RU2461079C2 (ru) * 2008-02-15 2012-09-10 Нокиа Корпорейшн Упрощенная индексация и деиндексация векторов
US20100257174A1 (en) * 2009-04-02 2010-10-07 Matthew Dino Minuti Method for data compression utilizing pattern-analysis and matching means such as neural networks
CN101577551A (zh) * 2009-05-27 2009-11-11 华为技术有限公司 一种生成格型矢量量化码书的方法及装置
KR101826331B1 (ko) 2010-09-15 2018-03-22 삼성전자주식회사 고주파수 대역폭 확장을 위한 부호화/복호화 장치 및 방법
ES2564504T3 (es) 2010-12-29 2016-03-23 Samsung Electronics Co., Ltd Aparato de codificación y aparato de descodificación con una ampliación de ancho de banda
WO2013147667A1 (en) * 2012-03-29 2013-10-03 Telefonaktiebolaget Lm Ericsson (Publ) Vector quantizer
US9304703B1 (en) * 2015-04-15 2016-04-05 Symbolic Io Corporation Method and apparatus for dense hyper IO digital retention
KR101987565B1 (ko) * 2014-08-28 2019-06-10 노키아 테크놀로지스 오와이 오디오 파라미터 양자화
US10580416B2 (en) * 2015-07-06 2020-03-03 Nokia Technologies Oy Bit error detector for an audio signal decoder
US10531099B2 (en) * 2016-09-30 2020-01-07 The Mitre Corporation Systems and methods for distributed quantization of multimodal images
CN112036821B (zh) * 2020-08-24 2024-02-02 智能创谷(北京)科技有限公司 基于网格图规划专线的量化方法、装置、介质和电子设备

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6504877B1 (en) * 1999-12-14 2003-01-07 Agere Systems Inc. Successively refinable Trellis-Based Scalar Vector quantizers

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0365822A (ja) * 1989-08-04 1991-03-20 Fujitsu Ltd ベクトル量子化符号器及びベクトル量子化復号器
US5734791A (en) * 1992-12-31 1998-03-31 Apple Computer, Inc. Rapid tree-based method for vector quantization
US5481739A (en) * 1993-06-23 1996-01-02 Apple Computer, Inc. Vector quantization using thresholds
AU7960994A (en) * 1993-10-08 1995-05-04 Comsat Corporation Improved low bit rate vocoders and methods of operation therefor
GB2300548B (en) * 1995-05-02 2000-01-12 Motorola Ltd Method for a communications system
US6215910B1 (en) * 1996-03-28 2001-04-10 Microsoft Corporation Table-based compression with embedded coding
US6952671B1 (en) * 1999-10-04 2005-10-04 Xvd Corporation Vector quantization with a non-structured codebook for audio compression
CA2388358A1 (en) * 2002-05-31 2003-11-30 Voiceage Corporation A method and device for multi-rate lattice vector quantization
US8090577B2 (en) 2002-08-08 2012-01-03 Qualcomm Incorported Bandwidth-adaptive quantization
CA2415105A1 (en) * 2002-12-24 2004-06-24 Voiceage Corporation A method and device for robust predictive vector quantization of linear prediction parameters in variable bit rate speech coding
EP1709743A1 (fr) * 2004-01-30 2006-10-11 France Telecom S.A. Quantification vectorielle en dimension et resolution variables
US8214204B2 (en) * 2004-07-23 2012-07-03 Telecom Italia S.P.A. Method for generating a vector codebook, method and device for compressing data, and distributed speech recognition system
US20060080090A1 (en) * 2004-10-07 2006-04-13 Nokia Corporation Reusing codebooks in parameter quantization
US8510105B2 (en) * 2005-10-21 2013-08-13 Nokia Corporation Compression and decompression of data vectors
KR101083291B1 (ko) * 2006-12-05 2011-11-14 후아웨이 테크놀러지 컴퍼니 리미티드 벡터 양자화를 위한 방법 및 장치

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6504877B1 (en) * 1999-12-14 2003-01-07 Agere Systems Inc. Successively refinable Trellis-Based Scalar Vector quantizers

Also Published As

Publication number Publication date
BRPI0615709B1 (pt) 2019-08-20
ATE446571T1 (de) 2009-11-15
MX2008002434A (es) 2008-04-03
AU2006286177B2 (en) 2011-04-14
CN101288118A (zh) 2008-10-15
JP2009506368A (ja) 2009-02-12
PL1920434T3 (pl) 2010-03-31
WO2007026295A3 (en) 2007-07-05
ES2332330T3 (es) 2010-02-02
KR20080039523A (ko) 2008-05-07
EP1920434A2 (en) 2008-05-14
US20070055509A1 (en) 2007-03-08
RU2008106651A (ru) 2009-10-10
ZA200801844B (en) 2009-10-28
BRPI0615709A2 (pt) 2011-05-24
US7587314B2 (en) 2009-09-08
AU2006286177C1 (en) 2011-08-18
MY144576A (en) 2011-10-14
HK1122640A1 (en) 2009-05-22
RU2391715C2 (ru) 2010-06-10
WO2007026295A2 (en) 2007-03-08
JP4777429B2 (ja) 2011-09-21
EP1920434B1 (en) 2009-10-21
KR100982211B1 (ko) 2010-09-14
AU2006286177A1 (en) 2007-03-08
DE602006009950D1 (de) 2009-12-03

Similar Documents

Publication Publication Date Title
CN101288118B (zh) 用于多速率应用的单码本矢量量化
CN1223989C (zh) 可变速率语音编码器中的帧擦除补偿法及用该方法的装置
AU2009267477B2 (en) Method for encoding a symbol, method for decoding a symbol, method for transmitting a symbol from a transmitter to a receiver, encoder, decoder and system for transmitting a symbol from a transmitter to a receiver
US20070094019A1 (en) Compression and decompression of data vectors
CN101080767A (zh) 用于低比特率语音编码的方法和装置
US7310597B2 (en) System and method for enhancing bit error tolerance over a bandwidth limited channel
US6988067B2 (en) LSF quantizer for wideband speech coder
US20060015330A1 (en) Voice coding/decoding method and apparatus
CN101198041B (zh) 矢量量化方法及装置
US20040176951A1 (en) LSF coefficient vector quantizer for wideband speech coding
CN1325529A (zh) 用于语音编码的自适应规则
EP2080270A1 (en) Method for encoding, method for decoding, encoder, decoder and computer program products
US7366660B2 (en) Transmission apparatus, transmission method, reception apparatus, reception method, and transmission/reception apparatus
US8711012B2 (en) Encoding method, decoding method, encoding device, decoding device, program, and recording medium
WO2013108685A1 (ja) 符号化装置および符号化方法、復号装置および復号方法、プログラム
Steger et al. Universal refinable trellis coded quantization
JP3700310B2 (ja) ベクトル量子化装置及びベクトル量子化方法
JP3242353B2 (ja) オーディオ信号量子化装置、オーディオ信号逆量子化装置、オーディオ信号量子化方法、及びオーディオ信号逆量子化方法
Krishnan et al. Using dynamic codebook re-ordering to exploit inter-frame correlation in MELP coders.
Singhai et al. MSVQ: A data compression technique for multimedia applications
Oshima et al. Variable-length coding of ACELP gain using Entropy-Constrained VQ
Liu et al. Vector Predictive Coding for Very Low-Bit-Rate Speech Encoders
JPH0728500A (ja) 音声符号器及び音声復号器

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 1122640

Country of ref document: HK

C14 Grant of patent or utility model
GR01 Patent grant
REG Reference to a national code

Ref country code: HK

Ref legal event code: GR

Ref document number: 1122640

Country of ref document: HK

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

Effective date of registration: 20160121

Address after: Espoo, Finland

Patentee after: Technology Co., Ltd. of Nokia

Address before: Espoo, Finland

Patentee before: Nokia Oyj