CN103636129B - 多尺度码本搜索 - Google Patents
多尺度码本搜索 Download PDFInfo
- Publication number
- CN103636129B CN103636129B CN201180072049.2A CN201180072049A CN103636129B CN 103636129 B CN103636129 B CN 103636129B CN 201180072049 A CN201180072049 A CN 201180072049A CN 103636129 B CN103636129 B CN 103636129B
- Authority
- CN
- China
- Prior art keywords
- code vector
- vector
- basis
- code
- leading
- 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
Links
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech 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/02—Speech 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
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech 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/02—Speech 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/032—Quantisation or dequantisation of spectral components
- G10L19/038—Vector quantisation, e.g. TwinVQ audio
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion 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/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
- H03M7/3082—Vector coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/90—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
- H04N19/94—Vector quantisation
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech 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/0001—Codebooks
- G10L2019/0013—Codebook search algorithms
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion 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/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
- H03M7/60—General implementation details not specific to a particular type of compression
- H03M7/6041—Compression optimized for errors
Abstract
本发明尤其公开了用于多尺度码本搜索的方法和设备,为多个基础码矢集合中的各个基础码矢集合确定用于编码输入矢量的潜在基础码矢,其中,各个基础码矢集合与多个尺度表示中的至少其中一个尺度表示相关联,还公开了确定用于对来自码矢子集的所述输入矢量进行编码的码矢,对于各个确定出的潜在基础码矢以及与相应潜在基础码矢的基础码矢集合相关联的各个尺度表示,所述码矢子集包括基于由相应尺度表示缩放的相应潜在基础码矢的码矢。
Description
技术领域
本发明的实施例涉及编码,尤其涉及语音和音频编码。
背景技术
语音和音频编码的低复杂度算法构成了例如用于基于移动终端的通信等的相关资产。由于其低储存和低复杂性,所以结构化的码本在保持编码效率的同时可优选地用于现有技术语音和音频编解码器(比如,在“第三代合作伙伴计划(3GPP)”中被标准化的“增强型语音服务(EVS)”编解码器)的多个状态中。
在这些语音和音频编解码器中使用的码本可基于,例如,晶格结构,如参照发表在由Elsevier出版社出版的“信号处理”(2002,第82卷,第563-586页)中的由A.Vasilache、B.Dumitrescu和I.Tabus著作的“Multiple-scale leader-lattic VQ with applicationto LSF quantization(可应用于LSF量子化的多尺度前导字符-晶格VQ)”一文所述,其全部内容以引用的方式并入本文。
有可能将晶格码本定义为多个前导类别的并集,各个前导类别的特征在于前导矢量。前导矢量为n-维矢量(n表示整数),对n-维矢量的(例如,正)分量进行顺序排列(例如,降序)。与前导矢量相对应的前导类别又由前导矢量和通过前导矢量的所有带符号的置换(具有某些可能的限制)获取的所有矢量组成。同样,一个、某些或所有前导类别可分别与一个或多个尺度相关联,然后晶格码本就作为尺度前导类别和/未标尺度前导类别的并集而形成。
对输入矢量例如可通过,找出码本中最紧邻的码矢(即,相对于输入矢量具有最短距离的码矢)进行编码(例如,在量子化上的编码)。接着,该码矢的标识符(例如,给该码矢分配的索引)可用作输入矢量的编码表示。
对包括多个晶格截断部分的多尺度晶格码本进行搜索,从而对于每一个尺度,都对该截断部分中与所考虑的尺度相对应的所有前导类别进行失真评估。
发明内容
尽管结构化码本的使用已经减少了需用于编码输入矢量的存储器的数量和计算复杂度,但人们希望能进一步减少例如在针对多尺度晶格码本中最紧邻代码搜索需要的存储器和/或计算复杂度。
根据本发明的第一方面,公开了一种方法,所述方法包括:为多个基础码矢集合的各个基础码矢集合确定用于编码输入矢量的潜在基础码矢,其中,所述各个基础码矢集合与多个尺度表示中的至少其中一个尺度表示相关联,以及确定用于对来自码矢子集的所述输入矢量进行编码的码矢,所述码矢子集包括:用于各个确定出的潜在基础码矢以及与所述各个潜在基础码矢的基础码矢集合相关联的各个尺度表示的码失,所述码矢基于由相应尺度表示缩放(scaled)的所述相应潜在基础码矢。
根据本发明的第二方面,公开了一种设备,所述设备用于实现根据本发明的第一方面的方法,或者所述设备包括:用于实现根据本发明的第一方面的方法的装置,即,用于为多个基础码矢集合中的各个基础码矢集合确定用于编码输入矢量的潜在基础码矢的装置,其中,所述各个基础码矢集合与多个尺度表示中的至少其中一个尺度表示相关联,以及所述设备包括:用于确定用于对来自码矢子集的所述输入矢量进行编码的码矢的装置,对于各个确定出的潜在基础码矢以及与相应潜在基础码矢的基础码矢集合相关联的各个尺度表示,所述码矢子集包括基于由相应尺度表示缩放的相应潜在基础码矢的码矢。
根据本发明的第三方面,公开了一种设备,所述设备包括:至少一个处理器以及至少一个包括计算机程序代码的存储器,所述至少一个存储器和所述计算机程序代码用于利用所述至少一个处理器使所述设备至少执行根据本发明的第一实施例的方法。包括在所述存储器中的计算机程序代码可例如至少部分地代表用于所述处理器的软件和/或固件。所述存储器的非限制性示例为所述处理器可用的随机存取存储器(RAM)或只读存储器(ROM)。
根据本发明的第四方面,公开了一种计算机程序,所述计算机程序包括程序代码,当在处理器上执行所述计算机程序时,所述程序代码用于实现根据本发明的第一方面的方法。所述计算机程序可例如经由如因特网等网络进行分配。所述计算机程序可例如至少部分地代表所述处理器的软件和/或固件。
根据本发明的第五方面,公开了一种计算机可读介质,根据本发明的第四方面的计算机程序储存在所述计算机可读介质上。所述计算机可读介质可例如具体表现为电存储介质、磁性存储介质、电磁存储介质、光学存储介质或其它存储介质,所述计算机可读介质要么为可移除介质,要么为固定安装在设备或装置中的介质。这种计算机可读介质的非限制性示例有RAM或ROM。所述计算机可读介质,例如可为有形介质,如有形储存介质。应理解,计算机可读介质可由计算机(比如处理器)读取。
在下文中,将简要概述与本发明的上述所有方面相关的特征和实施例。
各个潜在基础码矢集合包括至少一个基础码矢。例如,由于各个基础码矢集合与多个尺度表示中的至少一个尺度表示相关联,所以码矢可基于潜在基础码矢集合中的基础码矢以及与所述潜在基础码矢集合相关联的所述至少一个尺度表示中的尺度表示来确定,即,所述码矢可基于由相应尺度表示缩放的基础码矢尺度表示来表示。例如,所述尺度表示可表示尺度值,其中,码矢可基于基础码矢和所述各个尺度表示的乘积来确定。
例如,至少一个基础码矢集合与至少两个尺度表示相关联。
作为示例,码本可包括码矢集合,所述码矢集合包括基于所述相应基础码矢集合以及基于与所述多个基础码矢中的相应基础码矢集合相关联的相应至少一个尺度表示的码矢。所述码矢集合可包括:用于各个基础码矢集合中的基础码矢以及与所述相应基础码矢集合相关联的各个至少一个尺度表示的码失,所述码矢基于由所述相应尺度表示缩放的相应基础码矢。
例如,所述基础码矢集合可表示前导类别,其中,各个前导类别包括不同的前导矢量和所述前导矢量的置换。因此,所述前导矢量和所述前导矢量的置换可表示相应基础码矢集合的基础码矢。
所述多个基础码矢集合可表示多个第二基础码矢集合的子集。例如,假设基础码矢集合表示前导类别,那么多个前导类别可表示所述多个第二前导类别的子集。因此,所述多个前导类别可被看作是关于所述多个第二前导类别的多个截断前导字符。
例如,可通过确定离待编码的输入矢量最近的所述相应基础码矢集合中的至少一个基础码矢的基础码矢来确定所述多个潜在基础码矢。
例如,不管与所述各个基础码矢集合相关联的尺度表示的数量是多少,为多个基础码矢集合中的各个基础码矢集合确定用于编码输入矢量的潜在码矢这一步骤仅为各个基础码矢集合执行一次。这就降低了搜索复杂度。
接着,作为示例,用于编码所述输入矢量的码矢可基于确定出的潜在码矢集合来确定,其中,所述确定出的潜在码矢集合限定出码矢子集,对于各个确定出的潜在基础码矢以及与相应潜在基础码矢的基础码矢集合相关联的各个尺度表示,所述码矢子集包括用于基于由相应尺度表示缩放的相应潜在基础码矢的码失。
相应地,对用于编码所述输入矢量的码矢进行搜索是在码矢子集中进行的,所述码矢子集是由确定出的潜在码矢以及与相应确定出的潜在码矢中的基础码矢集合相关联的相应至少一个尺度表示来确定。由于所述码矢子集可表示与所述码本相关联的码矢子集,所以所述码矢子集的码矢数量可比所述码矢集合的码矢数量少。
例如,作为示例,所述多个基础码矢集合可由b0...bx-1表示,其中,各个bx(其中x∈{0,1,...X-1})表示所述多个基础码矢集合中的基础码矢集合,其中,X表示所述多个基础码矢集合的集合数量。各个基础码矢集合可与至少一个基础码矢bx,y相关联或包括至少一个基础码矢bx,y,其中,Bx表示多个码矢集合bx的基础码矢数量,即,y∈{0,1,...Bx-1}可成立。例如,对于不同基础码矢集合,基础码矢集合中的基础码矢的数量Bx可以不同,以及/或者对于至少两个基础码矢,基础码矢集合中的基础码矢的数量Bx可以相同。
接着,作为示例,可确定基于基础码矢bx-y和基于尺度表示sz的码矢cx,y,z,其中,索引z表示所述多个尺度表示s0...ss-1中的各个尺度表示的索引,即,z∈{0,1,...S-1}成立。
例如,假设所述基础码矢bx,y=bx,y,0,bx,y,1,...,bx,y,n-1]的值bx,y,t表示绝对值,其中,t∈{0,1,...n-1}成立且n表示相应基础码矢bx,y的长度,并且如果所述绝对值输入矢量用于确定相应基础码矢集合中的潜在码矢,那么,在实现确定基于基础码矢bx,y和基于尺度表示sz的码矢cx,z,y之前,则将位于确定出的最近基础码矢bx,y的第(t+1)位置处的相应值bx,y,t的符号赋予位于输入矢量i的第(t+1)位置处的相应值it的符号。结果,如果i=[i0,i1,...,in-1]表示输入矢量,那么绝对值输入矢量可由[|i0|,|i1|,...,|in-1|]表示。
作为非限制性示例,码矢cx,z,y可由cx,z,y=[bx,y,0·sz,bx,y,1·sz,...,bx,y,n-1·sz]确定或基于cx,z,y=[bx,y,0·sz,bx,y,1·sz,...,bx,y,n-1·sz]确定。
所述各个尺度表示sz(其中z∈{0,1,...S-1}成立)与至少一个基础码矢集合相关联。例如,作为非限制性示例,所述各个至少一个基础码矢集合可由所述基础码矢集合bx(其中x∈{0,1,...nz-1})表示,其中,nz可表示与相应尺度表示sz相关联的基础码矢集合的数量,其中,0<nx<x成立。基于所述相应尺度表示sz与相关联的至少一个基础码矢集合bx之间的联系(其中,nzx∈{0,1,...nz-1}),可确定出相关联的至少一个码矢集合cx,z,y(其中,x∈{0,1,...nz-1}、y∈{0,1,...Bx-1}以及z∈{0,1,...S-1})。
因此,作为示例,上面提到的码本的码本结构可由所述多个尺度表示sz、所述多个基础码矢集合bx以及所述各个尺度表示与相关联的至少一个基础码矢集合之间的联系限定。
由于至少一个基础码矢集合(即,至少一个基础码矢集合b0)与至少两个尺度表示相关联,所以同一基础码矢集合可用于:构建与第一个尺度表示相关联的至少一个基础码矢集合的码矢以及构建与至少又一个尺度表示相关联的至少一个基础码矢集合的码矢。
例如,假设所述基础码矢集合表示前导类别,那么与相应尺度表示相关联的至少一个基础码矢集合可看作是所述前导类别的并集。因此,所述码本可包括至少一个前导类别,其中,所述前导类别的各个并集与所述至少一个尺度表示其中之一相关联以及与所述多个基础码矢集合中的至少一个基础码矢集合相关联。作为示例,所述至少一个尺度表示可代表可包括至少两个尺度表示的多个尺度表示。
根据本发明的所有方面中的示例性实施例,所述多个尺度表示的各个尺度表示与至少一个码矢集合相关联,与相应尺度表示相关联的所述至少一个码矢集合中的各个基础码矢集合与多个基础码矢集合中的基础码矢集合相关联,这样,与相应尺度表示相关联的所述至少一个码矢集合中的各个码矢包括:基于对与各个尺度表示相关联的各个基础码矢集合中的基础码矢进行缩放的码矢。
因此,与所述多个尺度表示中的相应尺度表示相关联的至少一个码矢集合中的码矢可基于如下方式确定:对与所述尺度表示相关联的各个基础码矢集合中的基础码矢进行缩放。
根据本发明的所有方面中的示例性实施例,至少一个基础码矢集合与至少两个尺度表示相关联。
由于至少一个基础码矢集合与至少两个尺度表示相关联,所述至少一个集合中的相同基础码矢集合可用于:构建与第一个尺度表示相关联的至少一个码矢集合的码矢以及构建与至少又一个尺度表示相关联的至少一个码矢集合的码矢。
根据本发明的所有方面中的示例性实施例,为多个基础码矢集合的各个基础码矢集合确定用于编码输入矢量的潜在基础码矢这一步骤包括:基于相应基础码矢集合来确定基础码矢,所述相应基础码矢集合代表离所述输入码矢最紧邻的码矢。
例如,各个潜在基础码矢可通过确定离待被编码的输入矢量最近的相应基础码矢集合的至少一个基础码矢集合中的基础码矢来确定。可使用任何一种合适的标准来找出相对于待被编码的输入矢量最近的基础码矢。
进一步地,作为示例,可确定出离绝对值输入矢量最近的基础码矢,其中,所述绝对值输入矢量包括对应于输入矢量的值的绝对值,其中,所述潜在基础码矢表示确定出的最近的基础码矢。作为示例,潜在基础码矢可基于相对于绝对值输入矢量最近的基础码矢以及输入矢量的值的符号信息来确定,其中,所述信息可包括输入矢量中的相应值的相应位置的符号,所述信息用于为确定出的潜在基础码矢的值指定符号。例如,所述潜在基础码矢的值的符号可分别与位于矢量中同一位置处的输入矢量的值的符号相对应,其中,如果所述基础码矢集合的基础码矢的奇偶校验为0,那么上述情况成立。作为另一个示例,如果所述基础码矢集合的基础码矢的奇偶校验为-1,那么所述潜在基础码矢的值的符号可指定为分别与位于矢量中同一位置处的输入矢量的值的符号相对应,如果具有带负值的奇数,那么具有最低非零绝对值的潜在基础码矢的值的符号可发生变化。或者,作为另一个示例,如果所述基础码矢集合的基础码矢的奇偶校验为+1,那么所述潜在基础码矢的值的符号可指定为分别与位于矢量中同一位置处的输入矢量的值的符号相对应,如果没有带负值的偶数,那么具有最低非零绝对值的潜在基础码矢的值的符号可发生变化。
相应地,例如,不管与相应基础码矢集合相关联的尺度表示的数量是多少,搜索潜在基础码矢这一步骤都只为各个基础码矢集合执行一次。这可使得搜索复杂度降低。
根据本发明的所有方面中的示例性实施例,所述基础码矢集合为前导类别,其中,各个前导类别包括不同的前导矢量和所述前导矢量的置换。
因此,所述前导矢量和所述前导矢量的置换可表示相应基础码矢集合的基础码矢。
例如,与相应尺度表示相关联的所述至少一个码矢集合可看作是前导类别的并集。因此,所述码本可包括至少一个前导类别并集,其中,所述前导类别的各个并集与至少一个尺度表示其中之一相关联以及与多个基础码矢的至少一个基础码矢集合相关联。所述至少一个尺度表示可包括至少两个尺度表示。
根据本发明的所有方面中的示例性实施例,所述基础码矢集合为前导类别,其中,各个前导类别包括不同的前导矢量和所述前导矢量的置换,其中,确定各个基础码矢集合的潜在代码基础矢量这一步骤包括以下步骤其中之一:
将位于所述各个基础码矢集合的前导矢量中的位置k处的值指派至所述潜在基础码矢中与所述输入矢量的最高k绝对值的位置相对应的位置,并在所述潜在代码基础矢量中根据与输入矢量的最高k绝对值相关联的输入矢量的值的符号为指定的值设置符号,其中,在所述各个前导矢量的值以降序排列的情况下,0≤k<n成立;以及
将位于所述相应基础码矢集合的前导矢量中的位置k处的值指派至所述潜在代码基础矢量中与输入矢量的最低k绝对值的位置相对应的位置处,并在所述潜在代码基础矢量中根据与所述输入矢量的最低k绝对值相关联的输入矢量的值的符号为指定的值设置符号,其中,在所述各个前导矢量的值以升序排列的情况下,0≤k<n成立。
作为示例,所述相应基础码矢集合bx的前导矢量1可由l=[l0,l1,...,ln-1],表示,其中,10、11......1n-1为绝对值。假设降序10表示1-最高值(即,第一最高值),那么11表示2-最高值(即,第二最高值)以及1n-1表示n-最高值。假设升序10表示1-最低值(即,第一最低值),那么11表示2-最低值(即,第二最低值)以及1n-1表示n-最低值。
例如,k可表示所述前导矢量中的位置,其中,相应前导矢量的值1k-1表示在相应前导矢量中第K位置处的值。
作为示例,所述值1k-1可指派至所述潜在基础码矢中与k-最高绝对值(假设为降序前导矢量)的位置相对应的位置处或者与所述输入矢量中的k-最低绝对值(假设为升序前导矢量)的位置相对应的位置处。例如,所述位置可表示为位置m。作为示例,所述潜在基础码矢可由p=[p0,p1,...,n-1]表示。
例如,假设所述前导矢量为降序,那么所述前导矢量中位置k处的值(即,至1k-1)被指定至所述潜在基础码矢中与所述输入矢量中k-最高绝对值的位置相对应的位置处。
进一步地,所述潜在基础码矢pm-1中指定值的符号(+或-)是利用与k-最高绝对值相关联的输入矢量的值的符号来指定的。相应地,
pm-1=lk-1·sign(im-1) (1)
可成立。
这样,所述前导矢量中的任何k位置都可使用方程式(1),以便将任何1k-1指定至所述潜在基础码矢中与所述绝对值输入矢量ia中的k-最高或k-最低绝对值的位置相对应的位置处。
例如,如果所述前导矢量1以升序方式排列,那么可在m表示绝对值输入矢量中的k-最低值的位置时执行上面描述的方法,其中,pm-1=lk-1·sign(im-1)可成立。
获取的潜在码矢p可与所述各个基础码矢集合bx相关联,其中,1表示所述相应基础码矢集合的前导矢量。例如,对于上面描述的、基于基础码矢bx,y,t和尺度表示sz确定码矢的这一示例性过程,所述潜在码矢p可表示所述基础码矢集合bx中离输入矢量最近的码矢bx,y,其中,所述绝对值输入码矢可用于确定相应基础码矢集合的潜在码矢,其中,位于确定出的最近基础码矢bx,y的第k位置处的各个值bx,y,k-1的符号指定为位于输入矢量i的第k位置处的相应值ik的符号,其中,0<k≤n成立。
因此,表示潜在码矢p的最近基础码矢bx,y可用于:确定基于最近基础码矢bx,y和基于相应尺度表示sz的码矢cx,z,y。
根据本发明的所有方面中的示例性实施例,确定用于编码输入矢量的码矢这一步骤包括:基于相应码矢和输入为各个确定出的潜在基础码矢以及与相应潜在基础码矢的基础码矢集合相关联的各个尺度表示确定失真度量,其中,所述相应码矢表示基于由相应尺度表示缩放的相应潜在基础码矢的码矢。
可选择与最佳度量相关联的码矢用于编码输入矢量。
作为示例,所述失真度量可基于确定出的码矢与输入矢量之间任何恰当的距离。作为示例,可使用汉明距离或欧几里的距离或任何其它距离。
根据本发明的所有方面中的示例性实施例,所述失真度量表示所述各个码矢与所述输入矢量之间的距离。
可选择与最短距离相关联的码矢用于编码输入矢量。
例如,如果cx,z,y=[cx,z,y,0,cx,z,1,...,cx,z,0-1]表示所述码矢,i=[i0,i1,...,in-1]表示输入矢量,那么可基于如下方程式计算距离:
根据本发明的所有方面中的示例性实施例,相应码矢表示包括码矢值c0...n-1的n-维矢量,所述输入矢量表示包括输入矢量值i0...in-1的n-维矢量,其中,确定相应的距离d这一步骤是基于计算d’来执行的:
所述失真度量(3)可看作是表示度量(2)的简化度量,但性质未改变。
根据本发明的所有方面中的示例性实施例,所述失真度量基于权重函数来确定。
根据本发明的所有方面中的示例性实施例,相应码矢表示包括码矢值c0...n-1的n-维矢量,所述输入矢量表示包括输入矢量值i0...in-1的n-维矢量,其中,确定相应距离dw’这一步骤是基于计算如上方程式来执行的:其中,wk表示所述权重函数的权重因子。
根据本发明的所有方面中的示例性实施例,所述输入矢量至少部分地表示视频、图像、音频和语言信号至少其中之一。
根据本发明的所有方面中的示例性实施例,对目标矢量的鉴定形成了“第三代合作伙伴计划(3GPP)”语音和/或音频编解码器,尤其是“增强型语音服务(EVS)”编解码器的一部分。
本发明的所有方面的其它特征将参照下文中对本发明的实施例的详细描述连同附图变得更加清楚和清晰。然而,应理解,附图仅仅设计用于图示,并没有对本发明有限制的意义,本发明的限制应参照所附权利要求书。应进一步理解,附图并没有按比例绘制,其仅用于概念性地图示本文描述的结构和过程。尤其,附图中呈现的特征不应认为是本发明必须有的特征。
附图说明
在附图中:
图1a:示意性地图示了根据本发明的实施例的设备;
图1b:根据本发明的实施例的有形存储介质;
图2a:根据本发明的第一实施例的方法的流程图;
图2b:多个基础码矢集合的示例;
图2c:确定码矢的示例性过程;
图3:根据本发明的第二实施例的方法的流程图;
图4:根据本发明的第三实施例的方法的流程图;
图5:根据本发明的第四实施例的流程图。
具体实施方式
图1a示意性地图示了根据本发明的实施例的设备1的组件。设备1可为,例如,能编码语言、音频、和视频信号至少其中之一的电子装置或者这种装置的组件。设备1尤其用于确定用于编码输入矢量的码矢。设备1可具体呈现为,例如,模块。设备1的非限制性示例为移动电话、个人数字助手、便携式多媒体(音频和/或视频)播放器以及电脑(例如,膝上型轻便电脑或台式电脑)。
设备1包括处理器10,处理器10可具体呈现为,例如,微处理器、数字信号处理器(DSP)或特定用途集成电路(ASIC),这里只提这几个非限制性示例。处理器10执行储存在程序存储器11中的程序代码,并将主存储器12用作工作存储器以便,例如,至少暂时储存中间结果以及储存预定义和/或预计算的数据库。一些或所有存储器11和12也可包含在处理器10中。存储器11和/或12可具体呈现为,例如,只读存储器(ROM)、随机存取存储器(RAM),这里只提这几个非限制性示例。存储器11和12其中之一或两者均可以如存储卡或存储棒的形式固定地连接至处理器10或可从处理器10上移除。
处理器10进一步控制输入/输出(I/O)接口13,处理器通过输入/输出(I/O)接口13从另一个功能单元接收信息或向另一功能单元提供信息。
如将在下面描述的,处理器10至少可执行用于确定用于编码输入矢量的码矢的程序代码。然而,处理器10当然也可具有其它能力。例如,处理器10可基于样本输入值对语言、音频和视频至少其中之一进行编码。此外或可替换地,处理器10还可控制便携式交流和/或多媒体装置的运行。
图1a中的设备1可进一步包括比如用户界面等组件,以便允许设备1的用户与处理器10进行交流;或者具有相关射频(RF)电路系统的天线,以便进行无线通信。
由设备1的组件形成的电路系统可单独在硬件中、部分在硬件中和部分在软件中、或仅在软件中实施,这将在本说明书的最后进行描述。
图2a图示了根据本发明的第一实施例的方法的流程图200。流程图200的步骤可由储存在有形存储介质30中的计算机程序31的各个程序代码32限定,如图1b所示。有形存储介质300可,例如,体现图1a中的程序存储器11,接着,计算机程序31可由图1a中的处理器10执行。
回到图2a,在步骤210中,对于多个基础码矢集合中的各个基础码矢集合,确定出用于编码输入矢量的潜在基础码矢,其中,各个基础码矢集合与多个尺度表示中的至少一个尺度表示相关联,在步骤220中,确定出码矢子集中用于编码输入矢量的码矢,对于各个确定出的潜在基础码矢以及与相应潜在基础码矢的基础码矢集合相关联的各个尺度表示,所述码矢子集包括由相应尺度表示缩放的各个潜在基础码矢的码矢。
因此,在步骤210中,确定出潜在基础码矢集合,其中,该潜在基础码矢集合中各个确定出的潜在基础码矢与不同基础码矢集合中的潜在基础码矢相关联。
各个潜在基础码矢集合包括至少一个基础码矢。由于各个基础码矢集合与多个尺度表示中的至少一个尺度表示相关联,所以码矢可基于潜在基础码矢集合以及与潜在基础码矢集合相关联的至少一个尺度表示中的尺度表示来确定,即,该码矢可基于由相应尺度表示缩放的基础码矢来表示。例如,尺度表示可表示尺度值,其中,码矢可基于基础码矢与相应尺度值的乘积来确定。
例如,至少一个基础码矢集合与至少两个尺度表示相关联。
相应地,作为示例,码本可包括码矢集合,码矢集合包括基于多个基础码矢集合以及基于与多个基础码矢的相应基础码矢集合相关联的相应至少一个尺度表示的码矢。对于各个基础码矢集合中的各个基础码矢以及与相应基础码矢集合相关联的至少一个尺度表示的各个尺度表示,该码矢集合可包括基于由相应尺度表示缩放的相应基础码矢的码矢。
例如,所述基础码矢集合可表示前导类别,其中,各个前导类别包括不同的前导矢量和所述前导矢量的置换。因此,所述前导矢量和所述前导矢量的置换可表示相应基础码矢集合的基础码矢。
多个基础码矢集合可表示多个第二基础码矢子集。例如,假设各个基础码矢集合代表前导类别,那么多个前导类别可表示多个第二前导类别子集。因此,多个前导类别可看作是关于多个第二前导类别的多个截断前导类别。
例如,相应潜在基础码矢可通过确定离待编码的输入矢量最近的相应基础码矢集合的至少一个基础码矢集合中的基础码矢而确定。可使用任何一种合适的标准来找出相对于待被编码的输入矢量最近的基础码矢。
作为示例,潜在基础码矢可基于相对于绝对值输入矢量最近的基础码矢以及输入矢量的值的符号信息来确定,其中,该信息可包括输入矢量中的对应值的对应位置的符号,并且被用于为确定出的潜在基础码矢的值指定符号。进一步地,作为示例,可确定出离绝对值输入矢量最近的基础码矢,其中,绝对值输入矢量包括与输入矢量的值相对应的绝对值,其中,潜在基础码矢代表确定出的最近的基础码矢,其中,潜在基础码矢的值符号与位置码矢中同一位置处的输入矢量的值的符号相对应,其中,如果基础码矢集合中的基础码矢的奇偶校验为0,那么上述情况成立。作为另一个示例,如果基础码矢集合中的基础码矢的奇偶校验为-1,那么潜在基础码矢的值的符号可指定为分别与位于矢量中同一位置处的输入矢量的值的符号相对应,如果具有带负值的奇数,那么具有最低非零绝对值的潜在基础码矢的值的符号可发生变化。或者,作为另一个示例,如果基础码矢集合的基础码矢的奇偶校验为+1,那么潜在基础码矢的值的符号可指定为分别与位于码矢中同一位置处的输入矢量的值的符号相对应,如果没有带负值的偶数,那么具有最低非零绝对值的潜在基础码矢的值的符号可发生变化。
相应地,例如,在步骤210中,不管与相应基础码矢集合相关联的尺度表示的数量是多少,搜索潜在基础码矢这一步骤都只为各个基础码矢集合执行一次。这可使得搜索复杂度降低。
在步骤220中,用于编码输入矢量的码矢基于确定出的潜在码矢集合来确定,其中,所述确定出的潜在码矢集合限定出码矢子集,对于各个确定出的潜在基础码矢以及与对应潜在基础码矢的基础码矢集合相关联的各个尺度表示,所述码矢子集包括基于由各个尺度表示缩放的各个潜在基础码矢的码矢。
相应地,搜索用于编码输入矢量的码矢这一步骤是在码矢子集中进行的,码矢子集由确定出的潜在码矢以及与相应确定出的潜在码矢的基础码矢集合相关联的相应至少一个尺度表示限定。由于该码矢子集可表示与码本相关联的码矢子集,所以该码矢子集中码矢的数量可比码矢集合中的码矢的数量少。
作为示例,多个尺度表示中的各个尺度表示可与至少一个码矢集合相关联,其中,与相应尺度表示相关联的所述至少一个码矢集合的各个码矢集合与多个基础码矢集合的基础码矢集合相关联,这样,与相应尺度表示相关联的所述至少一个码矢集合的各个码矢集合包括通过对与相应尺度表示相关联的各个基础矢量集合中的基础矢量进行比例放缩来获取的码矢。
相应地,与多个尺度表示的相应尺度表示相关联的至少一个基础码矢中的码矢可基于缩放与尺度表示相关联的各个基础码矢集合中的基础码矢来确定。
例如,假设所述基础码矢集合代表前导类别,那么与相应尺度表示相关联的至少一个基础码矢集合可看作是前导类别的并集。因此,码本可包括至少一个前导类别的并集,其中,前导类别的各个并集与至少一个尺度表示其中之一相关联以及与多个基础码矢的至少一个基础码矢集合相关联。作为示例,至少一个尺寸代表可表示包括至少两个尺度表示的多个尺度表示。
图2b图示了多个基础码矢集合的示例,其中,各个bx(其中x∈{0,1,...X-1})表示多个基础码矢集合的基础码矢集合,其中,X表示多个基础码矢集合的数量。各个基础码矢集合与至少一个基础码矢bx,y相关联或包括至少一个基础码矢bx,y,其中,Bx表示相应基础码矢集合bx中的基础码矢的数量,即y∈{0,1,...Bx-1}成立。例如,对于不同基础码矢集合,基础码矢集合中的基础码矢的数量Bx可相同。
图2c图示了确定基于基础码矢bx,y以及尺度表示sz的码矢cx,z,y的示例性过程,其中索引z表示多个尺度表示s0...ss-1中的相应尺度表示的索引,即z∈{0,1,...S-1}成立。
例如,假设基础码矢bx,y=[bx,y,0,bx,y,1,...,bx,y,n-1]的值bx,y,t表示绝对值,其中t∈{0,1,...n-1}成立,n表示各个基础码矢bx,y的长度,并且如果所述绝对值输入矢量用于确定相应基础码矢集合中的潜在码矢,那么,在实现确定基于基础码矢bx,y和基于尺度表示sz的码矢cx,z,y之前,位于确定出的最近基础码矢bx,y的第(t+1)位置处的的各个值bx,y,t的符号可基于位于输入矢量i的第(t+1)位置处的各个值it的符号来指定,如图2c示例性图示。作为示例,如果i=[i0,i1,...,in-1]表示输入矢量,那么绝对值输入矢量可由[|i0|,|i1|,...,|in-1|]表示。例如,位于确定出的最近的基础码矢bx,y的(t+1)位置处的各个值bx,y,t的符号可分别被指派到位于输入矢量的第(t+1)位置处的相应值it的符号,其中,如果基础码矢集合bx的基础码矢bx,y的奇偶校验为0,那么上述情况成立。作为另一个示例,如果基础码矢集合bx中的基础码矢bx,y的奇偶校验为-1,那么潜在基础码矢的值bx,y,t的符号可被指定分别与位于矢量中同一位置处的输入矢量的值的符号相对应,如果没有带负值的奇数,那么具有最低非零绝对值的潜在基础码矢的值bx,y,t的符号可发生变化。或者,作为另一个示例,如果基础码矢集合bx的基础码矢bx,y的奇偶校验为+1,那么潜在基础码矢的值bx,y,t的符号可被指定分别与位于矢量中同一位置处的输入矢量的值的符号相对应,如果没有带负值的偶数,那么具有最低非零绝对值的潜在基础码矢的值bx,y,t的符号可发生变化。
作为非限制性示例,码矢cx,z,y可由cx,z,y=[bx,y,0·sz,bx,y,1·sz,...,bx,y,n-1·sz]确定。
各个尺度表示sz(其中,z∈{0,1,...S-1}成立)与至少一个基础码矢集合相关联。例如,作为非限制性示例,相应至少一个基础码矢集合可由基础码矢集合bx(其中,x∈{0,1,...nz-1})表示,其中,nz可表示与相应尺度表示sz相关联的基础码矢集合的数量,其中,o<nz<X成立。基于相应尺度表示sz与相关联的至少一个基础码矢集合bx(其中,x∈{0,1,...nz-1})之间的联系,可确定出相关联的至少一个码矢集合cx,z,y(其中,x∈{0,1,...nz-1}、y∈{0,1,...Bx-1}以及z∈{0,1,...S-1})。
因此,作为示例,上面提到的码本的码本结构可由多个尺度表示sz、多个基础码矢集合bx以及各个尺度表示与相关联的至少一个基础码矢集合之间的联系限定。
由于至少一个基础码矢集合(即,至少一个基础码矢集合b0)与至少两个尺度表示相关联,所以同一基础码矢集合可用于:构建与第一个尺度表示相关联的至少一个码矢集合的码矢以及构建与至少又一个尺度表示相关联的至少一个码矢集合的码矢。
图3图示了根据本发明的第二实施例的方法的流程图,该方法可用于:为多个基础码矢集合的各个基础码矢集合确定用于编码输入矢量的潜在基础码矢,例如,用于代替图2a中描述的步骤210。因此,例如,为了代替步骤210,图3中描述的方法可插入附图标记205与215之间。
在步骤310中,选择了多个基础码矢的基础码矢集合。
接着,在步骤320中,确定了用于编码输入矢量的与选择出的基础码矢集合相关联的潜在基础码矢。确定用于编码输入矢量的与选择出的基础码矢集合相关联的潜在基础码矢这一步骤可如关于根据本发明的第一实施例的方法的描述来进行。例如,可进行搜索最近码矢这一步骤来找出基础码矢的最近码矢,潜在码矢可表示该最近基础码矢或者可基于该最近基础码矢来确定。
然后,在步骤330中,检查多个基础码矢集合中是否具有又一基础码矢集合。如果有,该方法接着在步骤310中选择该又一基础码矢集合。如果没有,该方法结束在图3的流程图中图示的循环。
因此,为各个基础码矢集合确定用于编码输入矢量的潜在基础码矢这一步骤可通过在图3中描述的根据本发明的第二实施例的方法来进行。
图4图示了根据本发明的第三实施例的方法的流程图,该方法可用于确定用于对来自码矢子集的输入矢量进行编码的码矢,例如,用于代替图2a中图示的步骤220。因此,例如,为了代替步骤220,图4中图示的方法可插入附图标记215与225之间。
在步骤410中,选择多个尺度表示中的尺度表示。
在步骤420中,选择与所选择出的尺度表示相关联的基础码矢集合中的确定出的潜在基础码矢。
然后,在可选步骤430中,可基于所选择出的潜在基础码矢和选择出的尺度表示来确定码矢,其中,确定码矢这一步骤可如关于根据第一实施例中方法的描述来进行,例如,关于图2c的描述。
在步骤440中,基于所确定出的码矢和输入矢量确定了失真度量。例如,所述失真度量可基于所确定出的码矢与输入矢量之间任何恰当的距离。作为示例,可使用汉明距离或欧几里得距离或任何其它距离。作为示例,在步骤430中确定码矢这一步骤可省略,失真度量可通过从本质上考虑与所选择出的尺度表示相关联的相应码矢以及与所选择出的尺度表示相关联的基础码矢集合来计算。
例如,如果cx,z,y=[cx,z,y,0,cx,z,1,...,cx,z,n-1]表示在步骤430中确定出的码矢,i=[i0,i1,...,in-1]表示输入矢量,那么距离d可基于如下方程式计算:
根据方程式(4)的距离d可由距离d’代替,距离d’可基于如下方程式计算:
或者,作为另一个示例,假设基于权重函数确定失真度量,则根据方程式4的距离d可被修改为以下:
其中,wk表示权重函数的权重因子。
相应地,根据方程式(5)的距离d’可通过如下的权重函数加权:
例如,如果失真度量d或d’或dw或dw’为第一个确定出的失真度量,那么其可被储存,或者其可与储存的失真度量作比较,其中,如果新确定出的失真度量优于所储存的失真度量,那么所储存的失真度量被替代。进一步地,与所储存的失真度量相关联的码矢可被储存,或者该码矢的标识符可被储存。
接着,在步骤450中,检查是否具有与所选择出的尺度表示相关联的又一基础码矢集合。如果有,该方法接着进行步骤420,选择与所选择出的尺度表示相关联的该又一基础码矢集合中的潜在基础码矢。如果没有,该方法接着进行步骤460,以检查是否具有多个尺度表示的又一尺度表示。
如果具有多个尺度表示的又一尺度表示,那么该方法接着进行步骤410,选择该又一尺度表示,否则,该方法将进行步骤470。
在步骤470中,可以选择与最佳距离相关联的所述码矢用于编码输入矢量。
例如,所述基础码矢集合可表示前导类别,其中,各个前导类别包括不同的前导矢量和所述前导矢量的置换。因此,所述前导矢量和所述前导矢量的置换可表示相应基础码矢集合中的基础码矢。作为示例,前导矢量为n-维矢量(n表示整数),该n-维矢量的(正)分量进行顺序排列(例如,降序)。与前导矢量相应的前导类别接着由前导矢量和通过前导矢量(具有某些可能的限制)的所有带符号的置换获取的所有矢量组成。
前导类别的并集可由与多个尺度表示中的同一尺度表示相关联的基础码矢集合以及相应尺度表示限定。例如,前导类别的并集可与码矢集合相关联,该码矢集合通过缩放与尺度表示相关联的基础码矢集合中的基础码矢而获取。
这种前导类别的并集可看作是截断部分。因此,如果多个尺度表示为n个尺度表示,那么可限定前导类别的n个并集,其中,前导类别的各个并集通过相应尺度表示和与相应尺度表示相关联的基础码矢集合来限定。
相应地,多个尺度表示和多个基础码矢集合可限定多个前导类别的并集,从而限定出码本,其中,作为示例,前导类别的各个并集可看作是缩放的前导类别的并集。
在语音代码和音频编解码器中使用的码本可例如基于晶格结构,如参照发表在由Elsevier出版社出版的“信号处理”(2002,第82卷,第563-586页)中由A.Vasilache、B.Dumitrescu和I.Tabus著作的“可应用于LSF量子化的多尺度前导字符-晶格”一文所述,其全部内容以引用的方式并入本文。例如,可考虑将D10+晶格用于量子化,但也可考虑任何其它适合的晶格量子化。
图5图示了根据本发明的第四实施例的方法的流程图,该方法可用于确定用于编码输入矢量的且与所选择出的基础码矢集合相关联的潜在基础码矢。例如,根据本发明的第四实施例的方法可用在根据本发明的第一实施例的方法中的步骤210中和/或用在根据本发明的第二实施例的方法中的步骤320中。
假设基础码矢集合为前导类别,其中,各个前导类别包括不同的前导矢量和所述前导矢量的置换,其中,各个前导矢量代表n-维矢量,该n-维矢量包括以降序或升序排列的n个绝对值。
接着,确定各个基础码矢的潜在代码基础矢量这一步骤可按照根据本发明的第四实施例的方法来进行。
相应基础码矢集合bx的前导矢量1可由l=[l0,l1,...,ln-1]表示,其中,10、11......1n-1为绝对值。假设降序10表示1-最高值,那么11表示2-最高值以及1n-1表示n-最高值。假设升序10表示1-最低值,那么11表示2-最低值以及1n-1表示n-最低值。
例如,在可选步骤510中,前导矢量的位置计数器k可设置为1。
接着在步骤520中,各个前导矢量的值1k-1(其表示相应前导矢量中第k位置处的值)被指派至潜在基础码矢中与k-最高绝对值(假设为降序前导矢量)的位置相对应的位置处或者与输入矢量中的k-最低绝对值(假设为升序前导矢量)的位置相对应的位置处。例如,该位置可表示为位置m。作为示例,潜在基础码矢可由p=[p0,p1,...,pn-1]表示。
例如,作为非限制性示例,示例性输入矢量可为i=[-2.4,5.0,-1.3,0.2],其中,相应的绝对值输入矢量可使得ia=[2.4,5.0,1.3,0.2]。
假设为前导矢量的降序,那么位于前导矢量的位置k处的值,即,值1k-1,被指定至潜在基础码矢中与输入矢量中的k-最高绝对值的位置相对应的位置处。例如,从由计数器k=1表示的第一位置开始,输入矢量中1-最高绝对值的位置为位置m=2,这是因为值5.0为绝对值输入矢量中的1-最高值且位于位置m=2处,即,ia1。相应地,值10被指定至潜在基础码矢中的位置m=2处,即,p1=10可成立。
进一步地,潜在基础码矢pm-1中指定值的符号(+或-)是根据与k-最高绝对值相关联的输入矢量的值的符号来指定的。相应地
pm-1=lk-1·sign(im-1) (1)
可成立。
因此,在示例性输入矢量i=[-2.4,5.0,-1.3,0.2]的非限制性实施例中,由于值i1=5.0为具有正号,所以p1=10可成立。
例如,在步骤530中,位置计数器k可增大,在步骤530中,可检查前导矢量中是否具有另一个值,即,是否k≤n成立。
如果是,方法接着进行步骤520。
因此,在非限制性示例中,对于位置k=2,位于m=1处的值2.4代表输入矢量中的2-最高(k-最高)绝对值。因此,P0=l1·sign(i0)=-l1可成立,以在步骤520中为11指定相应符号,这是因为输入矢量中的值i0=2.4具有负号。
这样,对于该非限制性示例,循环将以如下方式通过前导矢量的位置进行迭代:
k=3→m=3→P2=l2·sign(i2)=-l2;以及
k=4→m=4→P3=l3·sign(i3)=+l3
相应地,假设相应前导矢量1以降序排列,那么通过关于该非限制性示例根据本发明的第四实施例的方法获取的相应潜在码矢可使得p=[-l1,l0,-l2,l3]。
如果前导矢量1以升序排列,那么上面描述的方法在执行时m表示绝对值输入矢量中k-最低值的位置,其中,pm-1=lk-1·sign(im-1)可成立。
获取的潜在码矢p与相应基础码矢集合bx相关联,其中,1表示该各个基础码矢集合的前导矢量。例如,对于图2c图示和上面描述的、确定基于基础码矢bx,y,t和尺度表示sz的码矢这一示例性过程,潜在码矢p表示基础码矢集合bx中离输入矢量最近的码矢bx,y,其中,绝对值输入码矢可用于确定相应基础码矢集合的潜在码矢,其中,位于确定出的最近基础码矢bx,y的第k位置处的各个值bx,y,k-1的符号指定为位于输入矢量i的第k位置处的各个值ik的符号,其中,0<k≤n成立。
因此,表示潜在码矢p的最近基础码矢bx,y可用于:基于最近基础码矢bx,y以及相应尺度表示sz确定码矢cx,z,y,如上面所描述以及图2c所示。
接下来,将呈现根据本发明的第五实施例的方法。根据本发明的第五实施例的方法可基于根据本发明的第一、第二、第三和第四方法中的其中之一或其中多个方法,且第五实施例中的方法将通过实施方式中的C-源示例来解释。
例如,前导类别可由如下方式限定:
例如,这16个前导类别可限定上面提到的多个第二基础码矢集合,其中,码本结构可由表示所述多个第二基础码矢集合的子集的多个基础码矢集合限定。
作为示例,码本结构可限定为:int no_leaders[]={4,7,9},这表明第一截断部分(即,前导类别的第一个并集)由第一批4个前导类别组成,而第二个并集由第一批7个前导类别组成等。
对每一个截断部分指定了(例如,通过训练)不同的尺度表示,例如:
float scale[]={0.8,1.2,2.7};
相应地,例如,码本中的多个码矢的第一个码矢集合由通过第一个尺度表示0.8缩放的第一个截断部分限定,码本中的多个码矢的第二个码矢集合由通过第二个尺度表示1.2缩放的第二个截断部分限定,码本中的多个码矢的第三个码矢集合由通过第三个尺度表示2.7缩放的第三个截断部分限定,码本具有多个尺度晶格结构。
作为示例,在多个的尺度晶格结构中进行搜索这一步骤可看作具有两个阶段:第一个阶段可估算用于各个前导类别(即用于各个基础码矢集合)的潜在码矢,第二个阶段可仅计算潜在码矢的失真。
所提出的方法的复杂度的降低可源于如下事实:对于一个前导矢量,不管尺度如何,潜在码矢总是相同,并且潜在码矢仅仅取决于输入矢量分量的相对顺序。
例如,可将绝对值函数应用至输入矢量i,这样,绝对输入矢量ia包括矢量i的绝对值,接着,可对绝对输入矢量按降序(或者,可替换地,按升序)进行分类。
作为示例,索引表示法可包括表示在按降序(或升序)排列的绝对值矢量中的各个输入矢量i的索引的代表。例如,所述索引表示法可为整数阵列“indx”。
例如,如果输入矢量为[-2.4 5.0 -1.3 0.2],那么绝对值矢量为[2.4 5.0 1.30.2],“indx”阵列为[1 0 2 3]。由于前导类别可以降序排列,所以在最近邻居搜索算法期间,可在与输入矢量的最高绝对值分量相对应的位置上指定前导矢量的第一个值。
在下面的非限制性示例中,“idx_lead_max”是前导类别在所有截断部分中的最大数量,其可相应于X,在本示例中可为9。相应地,9个基础码矢集合通过9个前导类别限定,其中,nth前导类别由&pl[n-1]限定。
例如,阵列“符号”可储存输入矢量分量的符号。
/*搜索的第一部分:计算所有潜在码矢*/
Pl-crt=&pl[0];/*pl包括前导矢量*/
for(u=0;u<idx_lead_max;u++)
例如,搜索的第一部分可用于实施图3所示的根据本发明的第二实施例的方法。
由计数器u限定的外循环可被认为是用于实施图3所示循环的示例,其中,各个u与相应前导矢量相关联。因此,根据计数器u,通过外循环选择出相对应的基础码矢集合,这是因为各个前导矢量与多个基础码矢的不同的基础码矢集合相对应。
由整数值j限定的内循环可看作与步骤320相对应,以确定与图3所示的所选择出的基础码矢集合相关联的潜在基础码矢,其中,内循环可被认为是用于实施图3所示循环的示例,其中,j_crt表示输入矢量中(j+1)最高绝对值的位置,其中,cv_pot[u][j_crt](*pl_crt)*(float)sign[j_crt]可对应于方程式(8)。
因此,不同的潜在基础码矢cv_pot通过该示例性的搜索的第一部分限定。
搜索的第二部分可用于确定码矢,该码矢用于对来自根据图2a所示的第二实施例的方法的步骤220中的码矢子集的输入矢量进行编码,或者,例如,搜索的第二部分用于至少部分地实施根据图4所示的第三实施例的方法。
/*搜索的第二部分*/
for(I=0;I<no_scales;I++)
由计数器1限定的外循环可用于实施图4所示的外循环的示例,其中,例如,根据图4所示步骤410,发出1以选择多个尺度表示的一个尺度表示尺度[1]。
LATTICE_DIM限定可与待编码的输入矢量的长度相对应的长度。
然后,计算出(0,......,LATTICE_DIM)中的各个k的值ws1[k]和ws2[k],值ws1[k]和ws2[k]可看作是失真度量(X3)独立于潜在基础码矢的那部分。值w[k]表示用于各个k的权重函数的值。
接着,循环“for(j=0;j<no_leaders[1];j++)”可用于,例如,实施图4所示步骤420-450的示例,其中,no_leaders[1]限定与所选择出的尺度表示尺度[1]相关联的前导矢量集合,即,no_leaders[1]可对应于表示与相应尺度表示尺度[1]相关联的基础码矢集合的数量的nz,因此,该循环通过与所选择出的尺度表示尺度[1]相关联的各个前导矢量集合进行迭代,其中,为该前导矢量集合的前导矢量确定出一个潜在基础码矢cv_pot。因此,例如,该循环根据图4中的步骤420迭代地选择与所选择出的尺度表示相关联的基础码矢集合的各个潜在基础码矢cv_pot,其中,cv_pot[j]可表示该基础码矢结合的相应第j基础码矢。
对于各个基础码矢以及所选择出的尺度表示,(例如,基于根据图4中步骤440的失真度量(8))可以以如下方式确定出用于与相应基础码矢及所选择出的尺度表示相关联的码矢的相应失真度量:
具有最低值的失真度量被确定出用于表示最佳失真度量,其中,与该失真度量码矢相关联的码矢可用于编码输入矢量。例如,该码矢可由最佳尺度表示以及潜在基础码矢集合的最佳潜在基础码矢限定。
应理解,这些伪码示例中的循环不是限制性的,为了从单个码矢索引中提取出至少两个码矢索引,可将这些循环以不同的方式排列。
如本文中使用的术语“电路系统”指如下所有电路:
(a)只有硬件的电路设施(比如,只在模拟和/或数字电路中的设施)以及
(b)电路和软件(和/或硬件)与如下组件的组合,比如(如果可能):
(i)与处理器的组合,或
(ii)与部分处理器/软件(包括数字信号处理器)、软件以及与其一起运行以形成设备的存储器的组合,比如移动电话或定位装置等,以便执行多种功能,以及
(c)与电路的组合,比如微处理器或部分微处理器,该微处理器需要软件或固件来运行,即使软件或固件没有物理显示出来也如此。
“电路系统”的定义可适用于该术语在本说明书中的所有使用,包括在任何权利要求中的使用。作为又一示例,如在本说明书中使用的,术语“电路系统”也可涵盖仅仅是处理器(或者多处理器)或处理器的部分以及其伴随的软件和/或固件的实施。术语“电路系统”还可涵盖(例如,且适用于特定权利要求元素的话)移动电话或定位装置的基带集成电路或应用处理器集成电路。
对于在本说明书中描述的本发明的所有方面及其实施例,应理解,所公开的任何行动或步骤都应视为:对相应设备的相应(功能性)配置(例如,计算机程序代码和/或处理器和/或相应设备的一些其他装置的配置)的公开、对在执行行动或步骤时限定用于引起该行动或步骤的相应计算机程序代码的公开以及对系统(或其部件)的相应(功能性)配置的公开。
应理解,本说明书中呈现的本发明的所有方面及其实施例以及其单个特征可以一切可能的方式相互结合公开。还应理解,上面呈现的流程图中的方法步骤的顺序不是强制性的,也可具有其它顺序。
已通过非限制性示例对本发明进行了描述。尤其需要注意的是,对于本领域的技术人员而言,在不背离所附权利要求书的范围和精神的前提下,可实施多种替换方式和变化。
Claims (24)
1.一种由设备执行的方法,所述方法包括:
为多个基础码矢集合的各个基础码矢集合确定用于编码输入矢量的潜在基础码矢,其中,各个基础码矢集合与多个尺度表示中的至少其中一个尺度表示相关联,以及
确定用于对来自码矢子集的所述输入矢量进行编码的码矢,对于各个确定出的潜在基础码矢以及与相应潜在基础码矢的所述基础码矢集合相关联的各个尺度表示,所述码矢子集包括基于由相应尺度表示缩放的所述相应潜在基础码矢的码矢。
2.根据权利要求1所述的方法,其中,所述多个尺度表示中的各个尺度表示与至少一个码矢集合相关联,并且与相应尺度表示相关联的所述至少一个码矢集合的各个码矢集合与所述多个基础码矢集合中的一个基础码矢集合相关联,使得与相应尺度表示相关联的所述至少一个码矢集合中的各个码矢集合包括:通过缩放与所述相应尺度表示相关联的相应基础矢量集合中的基础码矢而获取的码矢。
3.根据上述权利要求中任一项所述的方法,其中,所述多个基础码矢集合的至少一个基础码矢集合与至少两个尺度表示相关联。
4.根据权利要求1-2中任一项所述的方法,其中,为多个基础码矢集合中的各个基础码矢集合确定用于编码所述输入矢量的潜在基础码矢这一步骤包括:基于相应基础码矢集合来确定所述基础码矢,所述相应基础码矢集合代表离所述输入矢量最近的码矢。
5.根据权利要求4所述的方法,其中,所述基础码矢集合为前导类别,其中,各个前导类别包括不同的前导矢量和所述前导矢量的置换,其中,各个前导矢量表示n-维矢量,所述n-维矢量包括以降序或升序排列的n个绝对值,其中,确定所述相应基础码矢集合的潜在基础码矢这一步骤包括以下步骤其中之一:
将位于所述相应基础码矢集合的前导矢量中的位置k处的值指定至所述潜在基础码矢中与所述输入矢量的第k最高绝对值的位置相对应的位置,并在所述潜在基础码矢中根据与所述输入矢量的第k最高绝对值相关联的所述输入矢量的值的符号设置该指定的值的符号,其中,在各个前导矢量的值以降序排列的情况下,0≤k<n成立;以及
将位于所述相应基础码矢集合的前导矢量中的位置k处的值指定至所述潜在基础码矢中与所述输入矢量的第k最低绝对值的位置相对应的位置处,并在所述潜在基础码矢中根据与所述输入矢量的第k最低绝对值相关联的输入矢量的值的符号设置该指定的值的符号,其中,在各个前导矢量的值以升序排列的情况下,0≤k<n成立。
6.根据权利要求1所述的方法,其中,确定用于编码所述输入矢量的码矢这一步骤包括:基于相应码矢和所述输入矢量为各个确定出的潜在基础码矢以及与所述相应潜在基础码矢的所述基础码矢集合相关联的相应尺度表示确定失真度量,其中,所述相应码矢代表基于由所述相应尺度表示缩放的相应潜在基础码矢的码矢。
7.根据权利要求6所述的方法,其中,所述失真度量代表所述相应码矢与所述输入矢量之间的距离。
8.根据权利要求7所述的方法,其中,所述相应码矢表示包括码矢值c0...cn-1的n-维矢量,所述输入矢量表示包括输入矢量值i0...in-1的n-维矢量,其中,确定所述距离是基于计算如下方程式来执行的:其中d是所述距离。
9.根据权利要求7所述的方法,其中,所述失真度量基于权重函数确定。
10.根据权利要求9所述的方法,其中,所述相应码矢代表包括码矢值c0...cn-1的n-维矢量,所述输入矢量表示包括输入矢量值i0...in-1的n-维矢量,其中,确定所述距离是基于计算如下方程式来执行的:其中wk表示所述权重函数的权重因子,而且d是所述距离。
11.根据权利要求1所述的方法,其中,所述输入矢量至少部分地表示视频、图像、音频和语音信号至少其中之一。
12.根据权利要求1所述的方法,其中,所述基础码矢集合为前导类别,并且其中,各个前导类别包括不同的前导矢量和所述前导矢量的置换。
13.一种设备,其包括:
用于为多个基础码矢集合中的各个基础码矢集合确定用于编码输入矢量的潜在基础码矢的装置,其中,所述各个基础码矢集合与多个尺度表示中的至少其中一个尺度表示相关联,以及
对于各个确定出的潜在基础码矢以及与相应潜在基础码矢的所述基础码矢集合相关联的各个尺度表示,码矢子集包括:基于由相应尺度表示缩放的所述相应潜在基础码矢的码矢。
14.根据权利要求13所述的设备,其中,所述多个尺度表示中的各个尺度表示与至少一个码矢集合相关联,与相应尺度表示相关联的所述至少一个码矢集合的各个码矢集合与所述多个基础码矢集合中的一个基础码矢集合相关联,使得与相应尺度表示相关联的所述至少一个码矢集合中的各个码矢集合包括:通过缩放与所述相应尺度表示相关联的相应基础矢量集合中的基础码矢而获取的码矢。
15.根据权利要求13和14其中之一所述的设备,其中,所述多个基础码矢集合的至少一个基础码矢集合与至少两个尺度表示相关联。
16.根据权利要求13和14中任一项所述的设备,其中,为多个基础码矢集合的各个基础码矢集合确定用于编码所述输入矢量的潜在基础码矢的装置包括:基于相应基础码矢集合来确定所述基础码矢的装置,所述相应基础码矢集合代表离所述输入矢量最近的邻居。
17.根据权利要求16所述的设备,其中,所述基础码矢集合为前导类别,其中,各个前导类别包括不同的前导矢量和所述前导矢量的置换,其中,各个前导矢量表示n-维矢量,所述n-维矢量包括以降序或升序排列的n个绝对值,其中,确定所述相应基础码矢集合的潜在基础码矢的装置包括以下之一:
将位于所述相应基础码矢集合的前导矢量中的位置k处的值指定至所述潜在基础码矢中与所述输入矢量的第k最高绝对值的位置相对应的位置,并在所述潜在基础码矢中根据与所述输入矢量的第k最高绝对值相关联的输入矢量的值的符号设置该指定的值的符号,其中,在各个前导矢量的值以降序排列的情况下,0≤k<n成立;以及
将位于所述相应基础码矢集合的前导矢量中的位置k处的值指定至所述潜在基础码矢中与所述输入矢量的第k最低绝对值的位置相对应的位置处,并在所述潜在基础码矢中根据与所述输入矢量的第k最低绝对值相关联的输入矢量的值的符号设置该指定的值的符号,其中,在相应前导矢量的值以升序排列的情况下,0≤k<n成立。
18.根据权利要求13所述的设备,其中,确定用于编码所述输入矢量的码矢的装置包括:用于基于相应码矢和所述输入矢量为各个确定出的潜在基础码矢以及与所述相应潜在基础码矢的所述基础码矢集合相关联的各个尺度表示确定失真度量的装置,其中,所述相应码矢代表基于由所述相应尺度表示缩放的所述相应潜在基础码矢的码矢。
19.根据权利要求18所述的设备,其中,所述失真度量表示所述相应码矢与所述输入矢量之间的距离。
20.根据权利要求19所述的设备,其中,所述相应码矢表示包括码矢值c0...cn-1的n-维矢量,所述输入矢量表示包括输入矢量值i0...in-1的n-维矢量,其中,确定所述距离是基于计算如下方程式进行的:其中d是所述距离。
21.根据权利要求19所述的设备,其中,所述失真度量基于权重函数确定。
22.根据权利要求21所述的设备,其中,所述相应码矢表示包括码矢值c0...cn-1的n-维矢量,所述输入矢量表示包括输入矢量值i0...in-1的n-维矢量,其中,确定所述距离是基于计算如下方程式执行的:其中,wk表示所述权重函数的权重因子,而且其中d是所述距离。
23.根据权利要求14所述的设备,其中,所述输入矢量至少部分地表示视频、图像、音频和语音信号至少其中之一。
24.根据权利要求14所述的设备,其中,所述基础码矢集合为前导类别,其中,各个前导类别包括不同的前导矢量和所述前导矢量的置换。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/IB2011/001541 WO2013005065A1 (en) | 2011-07-01 | 2011-07-01 | Multiple scale codebook search |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103636129A CN103636129A (zh) | 2014-03-12 |
CN103636129B true CN103636129B (zh) | 2017-02-15 |
Family
ID=47436585
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201180072049.2A Active CN103636129B (zh) | 2011-07-01 | 2011-07-01 | 多尺度码本搜索 |
Country Status (5)
Country | Link |
---|---|
US (1) | US9202473B2 (zh) |
EP (1) | EP2727106B1 (zh) |
CN (1) | CN103636129B (zh) |
PL (1) | PL2727106T3 (zh) |
WO (1) | WO2013005065A1 (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
PL3193332T3 (pl) | 2012-07-12 | 2020-12-14 | Nokia Technologies Oy | Kwantyzacja wektorowa |
KR101868252B1 (ko) * | 2013-12-17 | 2018-06-15 | 노키아 테크놀로지스 오와이 | 오디오 신호 인코더 |
EP3413308A1 (en) * | 2017-06-07 | 2018-12-12 | Nokia Technologies Oy | Efficient storage of multiple structured codebooks |
GB2617571A (en) | 2022-04-12 | 2023-10-18 | Nokia Technologies Oy | Method for quantizing line spectral frequencies |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4958225A (en) * | 1989-06-09 | 1990-09-18 | Utah State University Foundation | Full-search-equivalent method for matching data and a vector quantizer utilizing such method |
CN1128462A (zh) * | 1994-09-30 | 1996-08-07 | 株式会社东芝 | 矢量量化装置 |
CN1188957A (zh) * | 1996-09-24 | 1998-07-29 | 索尼公司 | 矢量量化方法和语音编码方法及其装置 |
CN1815894A (zh) * | 2005-02-06 | 2006-08-09 | 许牧 | 一种音频信号编码的方法和设备 |
CN101911501A (zh) * | 2008-01-24 | 2010-12-08 | 日本电信电话株式会社 | 编码方法、解码方法及其装置、以及其程序和记录介质 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2388358A1 (en) | 2002-05-31 | 2003-11-30 | Voiceage Corporation | A method and device for multi-rate lattice vector quantization |
US7792670B2 (en) * | 2003-12-19 | 2010-09-07 | Motorola, Inc. | Method and apparatus for speech coding |
TWI231656B (en) * | 2004-04-08 | 2005-04-21 | Univ Nat Chiao Tung | Fast bit allocation algorithm for audio coding |
US7995668B2 (en) * | 2007-06-22 | 2011-08-09 | Alcatel Lucent | Method and apparatus for quantizing complex vectors in communication system |
BRPI0818062A2 (pt) * | 2007-10-12 | 2015-03-31 | Panasonic Corp | Quantizador vetorial, quantizador vetorial inverso, e métodos |
CN101335004B (zh) * | 2007-11-02 | 2010-04-21 | 华为技术有限公司 | 一种多级量化的方法及装置 |
CN102144256B (zh) * | 2008-07-17 | 2013-08-28 | 诺基亚公司 | 用于针对矢量量化器的快速最近邻搜索的方法和设备 |
US9972325B2 (en) * | 2012-02-17 | 2018-05-15 | Huawei Technologies Co., Ltd. | System and method for mixed codebook excitation for speech coding |
US9082398B2 (en) * | 2012-02-28 | 2015-07-14 | Huawei Technologies Co., Ltd. | System and method for post excitation enhancement for low bit rate speech coding |
-
2011
- 2011-07-01 WO PCT/IB2011/001541 patent/WO2013005065A1/en active Application Filing
- 2011-07-01 PL PL11868944T patent/PL2727106T3/pl unknown
- 2011-07-01 EP EP11868944.7A patent/EP2727106B1/en active Active
- 2011-07-01 CN CN201180072049.2A patent/CN103636129B/zh active Active
- 2011-07-01 US US14/128,859 patent/US9202473B2/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4958225A (en) * | 1989-06-09 | 1990-09-18 | Utah State University Foundation | Full-search-equivalent method for matching data and a vector quantizer utilizing such method |
CN1128462A (zh) * | 1994-09-30 | 1996-08-07 | 株式会社东芝 | 矢量量化装置 |
CN1188957A (zh) * | 1996-09-24 | 1998-07-29 | 索尼公司 | 矢量量化方法和语音编码方法及其装置 |
CN1815894A (zh) * | 2005-02-06 | 2006-08-09 | 许牧 | 一种音频信号编码的方法和设备 |
CN101911501A (zh) * | 2008-01-24 | 2010-12-08 | 日本电信电话株式会社 | 编码方法、解码方法及其装置、以及其程序和记录介质 |
Non-Patent Citations (3)
Title |
---|
Multiple-scale leader-lattice VQ with application to LSF quantization;Adriana Vasilache等;《Institute of Signal Processing》;20020109;第82卷;第563-586页 * |
基于语音增强及小波变换基音检测的LPC-MBE低速语音编码算法;董婧;《中国优秀博硕士学位论文全文数据库 (硕士) 信息科技辑》;20041215(第04期);第1-81页 * |
矢量量化码书设计及基于矢量量化的数字水印技术研究;赵雪峰;《中国优秀博硕士学位论文全文数据库 (硕士) 信息科技辑》;20041215(第04期);第1-69页 * |
Also Published As
Publication number | Publication date |
---|---|
EP2727106A1 (en) | 2014-05-07 |
EP2727106A4 (en) | 2016-03-23 |
CN103636129A (zh) | 2014-03-12 |
US9202473B2 (en) | 2015-12-01 |
WO2013005065A1 (en) | 2013-01-10 |
PL2727106T3 (pl) | 2020-03-31 |
US20140129216A1 (en) | 2014-05-08 |
EP2727106B1 (en) | 2019-08-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106663425A (zh) | 用于自动语音识别的使用外推的跳帧和按需输出的神经网络 | |
KR101889451B1 (ko) | 트레이닝 데이터를 위한 가중치 이득 평가기 | |
CN103636129B (zh) | 多尺度码本搜索 | |
CN106575379A (zh) | 用于神经网络的改进的定点整型实现方式 | |
CN106415715B (zh) | 编码装置、编码方法、记录介质 | |
CN108766585A (zh) | 流感预测模型的生成方法、装置及计算机可读存储介质 | |
CN114021524B (zh) | 一种情感识别方法、装置、设备及可读存储介质 | |
CN104778283B (zh) | 一种基于微博的用户职业分类方法及系统 | |
CN113298096B (zh) | 训练零样本分类模型的方法、系统、电子设备及存储介质 | |
CN105718848A (zh) | 一种指纹图像的质量评估方法及装置 | |
CN113255328B (zh) | 语言模型的训练方法及应用方法 | |
CN110489545A (zh) | 文本分类方法及装置、存储介质、计算机设备 | |
CN104850905A (zh) | 一种基于机器学习的法律风险量化评估系统及其方法 | |
CN110276382A (zh) | 基于谱聚类的人群分类方法、装置及介质 | |
CN113032601A (zh) | 一种基于判别性提升的零样本草图检索方法 | |
CN110110035A (zh) | 数据处理方法和装置以及计算机可读存储介质 | |
WO2023042045A1 (en) | Convolution attention network for multi-label clinical document classification | |
CN109614987A (zh) | 多分类模型优化方法、装置、存储介质及电子设备 | |
CN108921190A (zh) | 一种图像分类方法、装置及电子设备 | |
CN111967483A (zh) | 确定分类器、确定生成器、识别命令的方法及设备 | |
CN113435499A (zh) | 标签分类方法、装置、电子设备和存储介质 | |
CN113220828A (zh) | 意图识别模型处理方法、装置、计算机设备及存储介质 | |
CN113221977A (zh) | 一种基于抗混叠语义重构的小样本语义分割方法 | |
CN107665202B (zh) | 一种构建兴趣模型的方法、装置及电子设备 | |
CN105740916B (zh) | 图像特征编码方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C41 | Transfer of patent application or patent right or utility model | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20160106 Address after: Espoo, Finland Applicant after: Technology Co., Ltd. of Nokia Address before: Espoo, Finland Applicant before: Nokia Oyj |
|
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |