发明内容
本发明实施例的目的是:提供一种语音编码处理方法与装置、语音解码处理方法与装置、通信***,减少编码频谱系数的位置信息所需的比特数,从而编码更多的频谱系数,以提高接收端对频域信号的恢复质量。
本发明实施例提供的一种语音编码处理方法,包括:
在待编码频域子带内选择幅度较大的M对频谱系数,M为待编码的频谱系数对的数量,M为大于零的整数;
针对M对频谱系数,分别确定各对频谱系数的其中一个频谱系数在所述频域子带内的绝对位置信息,和各对频谱系数的另一个频谱系数相对所述绝对位置的相对位置信息,和所述M对频谱系数中各频谱系数的幅度与符号;
对M对频谱系数的位置、幅度与符号信息进行编码,所述位置包括所述绝对位置和所述相对位置。
本发明实施例提供的一种语音解码处理方法,包括:
接收数据码流;
对所述数据码流进行解码,得到M对频谱系数的位置、幅度与符号信息,每对频谱系数的位置信息包括其中一个频谱系数在频域子带内的绝对位置信息,和另一个频谱系数相对所述绝对位置的相对位置信息;
分别根据各对频谱系数在所述频域子带内的绝对位置与相对位置信息,确定所述相对位置在所述频域子带内的绝对位置;
利用各频谱系数的绝对位置、幅度与符号信息,恢复出所述频域子带。
本发明实施例提供的一种语音编码处理装置,包括:
第一接收模块,用于接收频域信号,该频域信号包括多个频域子带;
选择模块,用于在待编码频域子带内选择幅度较大的M对频谱系数,M为待编码的频谱系数对的数量,M为大于零的整数;
第一确定模块,用于针对各对频谱系数,分别确定各对频谱系数的其中一个频谱系数在所述频域子带内的绝对位置,各对频谱系数的另一个频谱系数相对所述绝对位置的相对位置,和所述M对频谱系数中各频谱系数的幅度与符号;
编码模块,用于对M对频谱系数的位置、幅度与符号信息进行编码,所述位置包括所述绝对位置和所述相对位置。
本发明实施例提供的一种语音解码处理装置,包括:
第二接收模块,用于接收数据码流;
解码模块,用于对所述数据码流进行解码,得到M对频谱系数的位置、幅度与符号信息,每对频谱系数的位置信息包括其中一个频谱系数在频域子带内的绝对位置信息,和另一个频谱系数相对所述绝对位置的相对位置信息;
第二确定模块,用于分别根据各对频谱系数在所述频域子带内的绝对 位置与相对位置信息,确定所述相对位置在所述频域子带内的绝对位置;
恢复模块,用于利用各频谱系数的绝对位置、幅度与符号信息,恢复出所述频域子带。
本发明实施例提供的一种通信***,语音编码处理装置与语音解码处理装置,所述语音编码处理装置用于接收频域信号,该频域信号包括多个频域子带;在待编码频域子带内选择幅度较大的M对频谱系数,M为待编码的频谱系数对的数量,M为大于零的整数;针对各对频谱系数,分别确定各对频谱系数的其中一个频谱系数在所述频域子带内的绝对位置,各对频谱系数的另一个频谱系数相对所述绝对位置的相对位置,和所述M对频谱系数中各频谱系数的幅度与符号;对M对频谱系数的位置、幅度与符号信息进行编码,生成数据码流,并发送给所述语音解码处理装置,所述位置包括所述绝对位置和所述相对位置;
所述语音解码处理装置用于接收所述数据码流;对所述数据码流进行解码,得到M对频谱系数的位置、幅度与符号信息,每对频谱系数的位置信息包括其中一个频谱系数在频域子带内的绝对位置信息,和另一个频谱系数相对所述绝对位置的相对位置信息;分别根据各对频谱系数在所述频域子带内的绝对位置与相对位置信息,确定所述相对位置在所述频域子带内的绝对位置;利用各频谱系数的绝对位置、幅度与符号信息,恢复出所述频域子带。
基于本发明上述实施例提供的编码处理方法与装置、解码处理方法与装置、通信***,可以成对编码频谱系数,这样,只需对编码每对频谱系数中一个频谱系数的绝对位置,而对另一个频谱系数的相对位置进行编码,由于相对位置信息占用的比特数少于绝对位置信息,就减少了编码该频谱系数的位置信息所需的比特数,从而减少了编码每个频谱系数平均占用的比特数,在发送端编码器可用比特数一定的情况下,便可以编码更多的频谱系数,提高发送端编码输出的数据码流,进而提高接收端对频域信号的恢复质量。
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没 有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
对于频谱信号中的频谱系数,特别是谐波性较强的频谱系数,能量较大处的频谱系数往往是成对出现的。如图3所示,为一个频域子带内频谱系数的分布示意图。现有技术对频谱系数进行正弦编码时,只是根据频谱系数幅度的大小,搜寻一些幅度较大的频谱系数并编码其参数,包括:其在频域子带内的绝对位置、幅度与符号信息。由于没有考虑频谱系数之间的关系,对每个频谱系数绝对位置的编码都需要占用相等的比特数,从而占用了较多的比特数。在发送端编码器可用比特数一定的情况下,由于编码绝对位置信息需要占用较多的比特数,可编码的频谱系数个数很少,使得接收端恢复出的信号质量较差。本发明实施例中,充分利用了频谱系数之间的成对出现的关系,对成对出现的频域系数进行成对编码,这样,针对每对频谱系数,仅需要编码其中一个频谱系数的绝对位置信息,和另一个频谱系数相对该频谱系数的相对位置信息,由于相对位置信息比绝对位置信息占用的比特数少,从而节省了编码位置信息所需占用的比特数,在编码器具有相同可用比特数的情况下,就可以比现有技术编码更多的频谱系数,从而提高发送端编码输出的数据码流,尤其是对于谐波性较强的信号,进而提高接收端对频域信号的恢复质量。
图4为本发明编码处理方法一个实施例的流程图。如图4所示,该实施例的编码处理方法包括以下步骤:
步骤201,在待编码频域子带内选择幅度较大的M对频谱系数。其中,M为待编码的频谱系数对的数量,M为大于零的整数。
步骤202,针对M对频谱系数,分别确定各对频谱系数的其中一个频谱系数在频域子带内的绝对位置信息,和各对频谱系数的另一个频谱系数相对该绝对位置的相对位置信息,以及M对频谱系数中各频谱系数的幅度与符号。其中,一对频谱系数也即一个频谱系数对。
步骤203,对M对频谱系数的位置、幅度与符号信息进行编码,其中的位置包括上述M对频谱系数的绝对位置和相对位置。
通过步骤203进行编码,得到数据码流后,可以发送给接收端。
以下以编码2M个正弦脉冲,也即:频谱系数,为例,对本发明的技术效果进行说明。假设从待编码频域子带内选择出2M个幅度较大的频谱系数,需要对该2M个频谱系数进行编码。编码一个正弦脉冲的绝对位置信息占用X比特(bits),编码其它正弦脉冲信息,例如:幅度与符号信息,占用Ybits。根据现有技术,需要(X+Y)bits来编码一个正弦脉冲。这样,编码2M个正弦脉冲需要2M*(X+Y)bits。采用本发明实施例提供的编码处理方法,对每一对正弦脉冲中的一个,仍对其绝对位置信息进行编码,而对另一个正弦脉冲,则对其相对位置信息进行编码。假设一对正弦脉冲的相对位置差为N,这样,相对位置信息的编码需要占用log2(2N),编码一对正弦脉冲需要(X+Y+log2(2N)+Y)bits。当log2(2N)<X时,采用本发明实施例的编码处理方法,便可以比现有技术占用较少的比特数,即能节省比特数,节省的比特数为(X-log2(2N))。这样,便可以利用节省出来的比特编码其它更多的正弦脉冲,从而提高发送端编码输出的数据码流,进而提高接收端对频域信号的恢复质量。由于正弦脉冲成对出现,通常情况下,N=1,这样,编码一个相对位置信息仅需占用需1bit,与现有技术编码一个绝对位置信息需要5bits相比,便可以节省4bits。
根据本发明的一个实施例,可以根据发送端编码器的可用比特数确定待编码的频谱系数对的数量M。具体地,可以根据单独编码每个频谱系数所需的比特数,确定编码器的可用比特数可编码的频谱系数的数量Q,若Q为偶数,M=0.5*Q;若Q为奇数,M=0.5*(Q-1)。对于由Q确定出的M对频谱系数,可以通过图4所示实施例的流程进行正弦编码。若可用比特数大于编码M对频谱系数的位置、幅度与符号信息所用的比特数,则 针对可用比特数中编码M对频谱系数后剩余的比特数,重新确定可以编码的频谱系数对的数量,在频域子带内继续选择相应数量的其它幅度较大的频谱系数对。并采用图4所示实施例的流程,进行编码。或者,针对可用比特数中编码M对频谱系数后剩余的比特数,重新确定可以编码的频谱系数的数量,在待编码频域子带内继续选择出相应数量的其它幅度较大的频谱系数,并对继续选择的频谱系数的参数,包括:在待编码子带中的绝对位置、幅度与符号信息,进行编码。
另外,也可以根据平均编码每对频谱系数所需的比特数,来确定发送端编码器的可用比特数可编码的频谱系数对的数量M,并通过图4所示实施例的流程进行编码。若编码器的可用比特数大于编码M对频谱系数所需的比特数,则针对可用比特数中编码M对频谱系数后剩余的比特数,再确定可以编码的频谱系数的数量,在待编码频域子带内继续选择出其它幅度较大的频谱系数,并对继续选择出的频谱系数的参数,包括:在待编码子带中的绝对位置、幅度与符号信息,进行编码。
图5为本发明编码处理方法另一个实施例的流程图。如图5所示,该实施例的编码处理方法包括以下步骤:
步骤301,在待编码频域子带内选择幅度较大的L对频谱系数。其中,L为大于M的整数,M为待编码频域子带内待编码的频谱系数对的数量,M为大于零的整数。
步骤 302,确定L个频谱系数对中,幅度都大于预设阈值的频谱系数对的数量P与M的数值大小。若P大于M,执行步骤303。若P等于M,执行步骤304。若P小于M,执行步骤305。
步骤303,在幅度都大于预设阈值的P对频谱系数中,选择M对较大幅度与较小幅度差值或比值较小的频谱系数对,然后执行步骤307。
步骤304,直接以P对频谱系数对作为待编码的M个频谱系数对,执行步骤307。
步骤305,在频域子带内再选择多个幅度较大的频谱系数对,直到幅度都大于预设阈值的频谱系数对的数量P大于M。
其中的预设阈值具体可以是一个经验值,在幅度都大于预设阈值的P对频谱系数中,选择M对较大幅度与较小幅度差值或比值较小的频谱系数对,是为了避免选择的频谱系数对中有一个频谱系数过小,从而影响接收端解码器的解码。若在步骤305中,整个频域子带中幅度都大于预设阈值的频谱系数对的数量P小于M,则可以逐渐降低该预设阈值,并执行步骤302,直到待编码频域子带内幅度都大于预设阈值的频谱系数对的数量P大于或等于M。
步骤306,在幅度都大于预设阈值的P对频谱系数中,选择M对较大幅度与较小幅度差值或比值较小的频谱系数对,然后执行步骤307。
步骤307,针对M个频谱系数对中的各频谱系数对,分别确定其中一个频谱系数在频域子带内的绝对位置信息,和另一个频谱系数相对该绝对位置的相对位置信息,以及各频谱系数的幅度与符号。
步骤308,对M对频谱系数的位置、幅度与符号信息进行编码。
以下通过一个具体实例对上述图5所示的实施例进行说明。假设待编码频域子带内共有64个频谱系数,将64个频谱系数分成奇数与偶数两个轨道,每个轨道内有32个频谱系数。可以首先在偶数轨道内搜寻到4个幅度最大的频谱系数,然后分别在4个幅度最大的频谱系数+/-N位置处再搜寻一个幅度较大的频谱系数,由于频谱系数成对出现的特性,该相对幅度较大的频谱系数在奇数轨道,且N=1。这样,就搜寻到了4对频谱系数。从4对频谱系数中,选择幅度都大于预设阈值的P对频谱系数,假设P=4。分别求取每对频谱系数中较大幅度与较小幅度的比值,对比值较小的2对频谱系数进行编码。对偶数轨道上的频谱系数,分别用5bits编码其绝对位置信息,用1bit编码其符号信息。而对于奇数轨道上的频谱系数,分别用1bit编码其相对偶数轨道上成对出现的另一个频谱系数的相对位置信 息,用2bit编码其符号信息。此时,4个频谱系数共用5*2+1*2+3=15bits。其中,5*2为编码偶数轨道上频谱系数的绝对位置信息所需的比特数,1*2为编码奇数轨道上谱系数的相对位置信息所需的比特数,由于偶数轨道上频谱系数采用绝对位置,只需用1bit编码一个频谱系数的符号信息,另一个频谱系数的符号信息可以根据其在频域子带内编码位置的先后顺序得到。奇数轨道上频谱系数采用相对位置,编码奇数轨道上频谱系数的符号信息所需的比特数为2bits,因此,编码偶数轨道与奇数轨道上频谱系数的符号信息总共需要的比特数为3bits。与现有技术相比,可以节省出7bits来再多编码一个其它幅度相对较大的频谱系数。
在图5所示的实施例中,L的值可以根据编码器在频域子带内搜索频谱系数的算法复杂度、预先设置的每一对频谱系数中幅度比值的阈值和频域子带中最小幅度与最大幅度比值要求中的任意一种或多种因素确定,也可以参考其它的因素确定。
图6为本发明编码处理方法又一个实施例的流程图。如图6所示,该实施例的编码处理方法包括以下步骤:
步骤401,在待编码频域子带内选择幅度较大的2M个频谱系数。其中,M为待编码的频谱系数对的数量,M为大于零的整数。
步骤402,按照在频域子带内的位置顺序,将2M个频谱系数两两作为一个频谱系数对,形成M对频谱系数,每对频谱系数之间的相对位置差在N范围内,N为预先设置的整数。
步骤403,针对各频谱系数对,分别确定其中一个频谱系数在频域子带内的绝对位置信息,和另一个频谱系数相对该绝对位置的相对位置信息,以及各频谱系数的幅度与符号。
步骤404,对M对频谱系数的位置、幅度与符号信息进行编码。
在图6所示的实施例的步骤401中,具体可以先在待编码频域子带内选择互不组成频谱系数对的、幅度较大的M个频谱系数,然后分别在距 离M个频谱系数相对位置差为N的范围内,再选择其它M个幅度较大的M个频谱系数。也可以按照在所述频域子带内的顺序,先在待编码频域子带内选择第一个幅度较大的频谱系数,并在距离该幅度较大的频谱系数相对位置差为N的范围内,选择第二个幅度较大的频谱系数,与第一个频谱系数组成频谱系数对;然后再选择第三个幅度较大的频谱系数,并在距离该幅度较大的频谱系数相对位置差为N的范围内,选择第四个幅度较大的频谱系数,与第三个频谱系数组成频谱系数对;依次类推,选择第2M-1个幅度较大的频谱系数,并在距离该幅度较大的频谱系数相对位置差为N的范围内,选择第2M个幅度较大的频谱系数,与第2M-1个频谱系数组成频谱系数对。或者,也可以采用其它方式选择组成M对频谱系数的2M个频谱系数。
图7为本发明编码处理方法再一个实施例的流程图。如图7所示,该实施例的编码处理方法包括以下步骤:
步骤501,在待编码频域子带中的奇数轨道内选择M个幅度较大的频谱系数。其中,M为待编码的频谱系数对的数量,M为大于零的整数。
步骤502,分别在偶数轨道内临近M个幅度较大的频谱系数的位置,选择另外M个幅度较大的频谱系数。所谓临近M个幅度较大的频谱系数的位置,是指分别与M个幅度较大的频谱系数的相对位置差在N范围内,N为预先设置的整数。
步骤503,将M个幅度较大的频谱系数,分别与另外M个幅度较大的频谱系数中临近的频谱系数两两作为一个频谱系数对,形成M对频谱系数。
步骤504,针对各频谱系数对,分别确定其中一个频谱系数在频域子带内的绝对位置信息,和另一个频谱系数相对该绝对位置的相对位置信息,以及各频谱系数的幅度与符号。
步骤505,对M对频谱系数的位置、幅度与符号信息进行编码。
另外,也可以在频域子带中的偶数轨道内选择M个幅度较大的频谱系数,分别在奇数轨道内临近M个幅度较大的频谱系数的位置,选择另外M个幅度较大的频谱系数,将M个幅度较大的频谱系数,分别与另外M个幅度较大的频谱系数中临近的频谱系数两两作为一个频谱系数对,形成M对频谱系数。之后,通过步骤504-505,实现对频谱系数对的正弦编码。
以下通过一个具体实例对图7所示的实施例进行说明。假设待编码频域子带内共有64个频谱系数,将64个频谱系数分成奇数与偶数两个轨道,每个轨道内有32个频谱系数。可以首先在偶数轨道内搜寻到M个幅度最大的频谱系数,假设:M=2。然后在距离搜寻到的每个幅度最大的频谱系数N位置分别搜寻一个相对幅度较大的频谱系数,由于频谱系数成对出现的特性,该相对幅度较大的频谱系数在奇数轨道,且N=1,具体可以参考图3。这样,共搜寻到4个频谱系数,此时,对偶数轨道上的频谱系数,分别用5bits编码其绝对位置信息。而对于奇数轨道上的频谱系数,分别用1bit编码其相对偶数轨道上成对出现的另一个频谱系数的相对位置信息。此时,编码选取的4个频谱系数的位置信息,共用5*2+1*2=12bits,相对现有技术的编码方法,编码位置信息可以节省8bits。进一步地,若将选取的每对频谱系数的幅度与符号信息一起作为一个波形,采用增益-波形矢量量化的方法进行量化,由于该方法将符号与幅度作为一个整体,不用单独编码符号信息,编码符号信息相对于现有技术,也可以节省出2bits。采用节省出的8+2=10bits,可以再多编码一个其它幅度相对较大的频谱系数,这样,就比现有技术多编码一个幅度相对较大的频谱系数。
在上述编码处理方法各实施例的流程中,对M对频谱系数的位置、幅度与符号信息进行编码时,具体可以对M对频谱系数的位置信息进行编码,并分别将各频谱系数对的幅度与符号信息作为一个正弦脉冲波形,对正弦脉冲波形进行矢量量化,进一步减少编码所需的比特数,提高编码效 率。具体地,可以采用增益-波形矢量量化方法对正弦脉冲波形进行矢量量化。
另外,对M对频谱系数的位置、幅度与符号信息进行编码时,也可以对M对频谱系数的位置信息进行编码,并对多个相邻频域子带中频谱系数的幅度与符号信息进行联合矢量量化,进一步减少编码所需的比特数,提高编码效率。
假设编码一个较宽的频域信号,频域信号内有224个频谱系数,编码器共有77个比特数可用。将224个频谱系数分成4个频域子带,前三个子带分别有64个频谱系数,第四个频域子带有32个频谱系数。根据现有技术的编码方法,在第一个频域子带和第二个频域子带内,分别搜寻4个幅度较大的频谱系数,在第三个频域子带和第四个频域子带内分别搜寻一个幅度较大的频谱系数,编码第一个频域子带和第二个频域子带的绝对位置和符号信息分别需要5*4+2=22bits,编码第三个频域子带和第四个频域子带的绝对位置和符号信息共需要5+6+1=12bits,10个幅度信息分别用3维/7比特、3维/7比特和4维/7比特的三个矢量进行联合矢量量化。则编码上述频谱系数共需22+22+12+7*3=77bits。
而根据本发明实施例提供的编码方法,可以在第一个频域子带和第二个频域子带内,分别搜寻出两对和一个单独的频谱系数,由于本发明实施例的成对编码方法,可以使得每个频域子带能节省出比特用来多编码一个单独的频谱系数。将搜寻出的成对的频谱系数用增益-波形矢量量化的方法进行编码,每个频域子带分别需要5*2+1*2+6=18bits,其中,6为波形矢量量化所需的比特数,第一个频域子带和第二个频域子带还需6bits对波形增益进行编码。为了进一步提高编码效率,将两个频域子带中分别搜寻出的单独的频谱系数的幅度用2维矢量进行联合矢量量化。这样,将两个频域子带进行联合编码,每个频域子带节省的比特数统一使用,编码两个单独的频谱系数,需要5*2+1*2+5=17bits。当然,也可以将两个频域子带联合 编码其它频谱系数参数。另外,频域子带编码的结合也并不仅限于两个频域子带,可以是三个或更多频域子带联合编码。在第三个频域子带和第四个频域子带中,分别搜寻一个幅度较大的频谱系数,利用现有技术的编码方法对其位置信息和符号信息进行编码,幅度信息用一个2维的矢量进行联合矢量量化,需要6+5+1*2+5=18bits,其中,6、5、1*2、5分别为编码第三个频域子带中频谱系数的位置信息所需的比特数、编码第四个频域子带中频谱系数的位置信息所需的比特数、编码第三个与第四个频域子带中频谱系数的符号信息所需的比特数、进行联合矢量量化第三个与第四个频域子带中频谱系数的幅度信息所需的比特数。则编码上述频谱系数共需18+18+6+17+18=77bits,与现有技术相同,但比现有技术多编码第一个频域子带和第二个频域子带中的2个单独的频域系数,同时也多编码了第四个频域子带中的频谱系数的符号信息。
采用本发明上述各实施例的编码处理方法对频域信号进行编号后,可以将编码得到的数据码流传送给接收端,由接收端进行相应的解码。如图8所示,为本发明解码处理方法一个实施例的流程图,其包括以下步骤:
步骤601,接收数据码流。
步骤602,对数据码流进行解码,得到M对频谱系数的位置、幅度与符号信息,每对频谱系数的位置信息包括其中一个频谱系数在频域子带内的绝对位置信息,和另一个频谱系数相对该绝对位置的相对位置信息。
步骤603,分别根据各对频谱系数在频域子带内的绝对位置与相对位置信息,确定相对位置在频域子带内的绝对位置。
步骤604,利用各频谱系数的绝对位置、幅度与符号信息,恢复出频域子带。
图9为本发明编码处理装置一个实施例的结构示意图,该实施例的编码处理装置可用于实现本发明上述各编码处理方法实施例的流程。如图9所示,该实施例的编码处理装置包括第一接收模块701、选择模块702、第一 确定模块703与编码模块704。其中,第一接收模块701用于接收频域信号,该频域信号包括多个频域子带。选择模块702用于在第一接收模块701接收到的频域信号中的每一个待编码频域子带内,选择幅度较大的M对频谱系数。其中,M为待编码的频谱系数对的数量,M为大于零的整数。第一确定模块703用于针对选择模块702选择出的各对频谱系数,分别确定各对频谱系数的其中一个频谱系数在频域子带内的绝对位置,和M对频谱系数中另一个频谱系数相对该绝对位置的相对位置,和各频谱系数的幅度与符号。编码模块704用于对第一确定模块703确定的M对频谱系数的位置、幅度与符号信息进行编码,形成发送给接收端的数据码流,其中的位置包括所述绝对位置和所述相对位置。
图10为本发明编码处理装置另一个实施例的结构示意图。该实施例的编码处理装置可用于实现本发明图5所示实施例的流程,与图9所示的实施例相比,该实施例中,选择模块702包括第一选择单元801、比较单元802和第二选择单元803。其中,第一选择单元801用于在第一接收模块701接收到的频域信号中的每一个待编码频域子带内,选择幅度较大的L对频谱系数,L为大于M的整数,以及根据第二选择单元803的指示,在待编码频域子带内再选择多个幅度较大的频谱系数对。比较单元802用于比较第一选择单元801选择的L个频谱系数对中,幅度都大于预设阈值的频谱系数对的数量P是否大于M。第二选择单元803用于根据比较单元802的比较结果,在幅度都大于预设阈值的频谱系数对的数量P大于M时,在幅度都大于预设阈值的P对频谱系数中,选择M对较大幅度与较小幅度差值或比值较小的频谱系数对;在幅度都大于预设阈值的频谱系数对的数量P等于M时,直接以P对频谱系数对作为待编码的M个频谱系数对;在幅度都大于预设阈值的频谱系数对的数量P小于M时,指示第一选择单元801在频域子带内再选择多个幅度较大的频谱系数对,直到幅度都大于预设阈值的频谱系数对的数量P大于M,并在幅度都大于预设阈值的P 对频谱系数中,选择M对较大幅度与较小幅度差值或比值较小的频谱系数对。
图11为本发明编码处理装置又一个实施例的结构示意图。该实施例的编码处理装置可用于实现本发明图6所示实施例的流程,与图9所示的实施例相比,该实施例中,选择模块702包括第三选择单元804与第一组合单元805。其中,第三选择单元804用于在第一接收模块701接收到的频域信号中的每一个待编码频域子带内,选择幅度较大的2M个频谱系数。第一组合单元805用于按照在频域子带内的位置顺序,将第三选择单元804选择出的2M个频谱系数两两作为一个频谱系数对,形成M对频谱系数,每对频谱系数之间的相对位置差在N范围内,N为预先设置的整数。
图12为本发明编码处理装置再一个实施例的结构示意图。该实施例的编码处理装置可用于实现本发明图7所示实施例的流程,与图9所示的实施例相比,该实施例中,选择模块702包括第四选择单元806与第二组合单元807。第四选择单元806用于在第一接收模块701接收到的频域信号中的待编码频域子带中的奇数轨道内选择M个幅度较大的频谱系数,分别在偶数轨道内临近M个幅度较大的频谱系数的位置,选择另外M个幅度较大的频谱系数;或者,在第一接收模块701接收到的频域信号中的待编码频域子带中的偶数轨道内选择M个幅度较大的频谱系数,分别在奇数轨道内临近M个幅度较大的频谱系数的位置,选择另外M个幅度较大的频谱系数。第二组合单元807用于将第四选择单元806选择出的M个幅度较大的频谱系数,分别与另外M个幅度较大的频谱系数中临近的频谱系数两两作为一个频谱系数对,形成M对频谱系数。
根据本发明的一个实施例,在本发明图9至图12所示的上述各编码处理装置实施例中,编码模块704可以对M对频谱系数的位置信息进行编码,并分别将各频谱系数对的幅度与符号信息作为一个正弦脉冲波形,对正弦脉冲波形进行矢量量化。具体地,可以采用增益-波形矢量量化方法对 正弦脉冲波形进行矢量量化。
根据本发明的另一个实施例,在本发明图9至图12所示的上述各编码处理装置实施例中,编码模块704可以对M对频谱系数的位置信息进行编码,并对频域信号中多个相邻频域子带中频谱系数的幅度与符号信息进行联合矢量量化。
图13为本发明解码处理装置一个实施例的结构示意图。该实施例的解码处理装置可用于对采用图9至图12所示的各编码处理装置编码得到的数据码流进行相应的解码处理,实现如本发明上述图8所示实施例的流程。如图13所示,该实施例的解码处理装置包括第二接收模块901、解码模块902、第二确定模块903和恢复模块904。其中,第二接收模块901用于接收数据码流。解码模块902用于对第二接收模块901接收到的数据码流进行解码,得到M对频谱系数的位置、幅度与符号信息,其中,每对频谱系数的位置信息包括其中一个频谱系数在频域子带内的绝对位置信息,和另一个频谱系数相对该绝对位置的相对位置信息。第二确定模块903用于分别根据解码模块902的解码结果中,各对频谱系数在频域子带内的绝对位置与相对位置信息,确定相对位置在频域子带内的绝对位置。恢复模块904用于利用第二确定模块903确定的各频谱系数的绝对位置、幅度与符号信息,恢复出频域子带。
本发明实施例提供的一种通信***,包括编码处理装置与解码处理装置。其中,编码处理装置用于接收频域信号,该频域信号包括多个频域子带;在待编码频域子带内选择幅度较大的M对频谱系数,M为待编码的频谱系数对的数量,M为大于零的整数;针对各对频谱系数,分别确定各对频谱系数的其中一个频谱系数在频域子带内的绝对位置,各对频谱系数的另一个频谱系数相对该绝对位置的相对位置,和M对频谱系数中各频谱系数的幅度与符号;对M对频谱系数的位置、幅度与符号信息进行编码,生成数据码流,并发送给解码处理装置,其中的位置包括上述M对频 谱系数的绝对位置和相对位置。具体地,该编码处理装置可以采用本发明图9至图12所示的任一编码处理装置实施例实现。
解码处理装置用于接收编码处理装置发送的数据码流;对数据码流进行解码,得到M对频谱系数的位置、幅度与符号信息,每对频谱系数的位置信息包括其中一个频谱系数在频域子带内的绝对位置信息,和另一个频谱系数相对该绝对位置的相对位置信息;分别根据各对频谱系数在频域子带内的绝对位置与相对位置信息,确定相对位置在频域子带内的绝对位置;利用各频谱系数的绝对位置、幅度与符号信息,恢复出频域子带。具体地,该解码处理装置可以采用本发明图13所示的解码处理装置实施例实现。
根据本发明通信***的一个实施例,编码处理装置具体在待编码频域子带内选择幅度较大的L对频谱系数,L为大于M的整数,以及在频域子带内再选择多个幅度较大的频谱系数对;比较L个频谱系数对中,幅度都大于预设阈值的频谱系数对的数量P是否大于M;根据比较单元的比较结果,在幅度都大于预设阈值的频谱系数对的数量P大于M时,在幅度都大于预设阈值的P对频谱系数中,选择M对较大幅度与较小幅度差值或比值较小的频谱系数对;在幅度都大于预设阈值的频谱系数对的数量P等于M时,直接以P对频谱系数对作为待编码的M个频谱系数对;在幅度都大于预设阈值的频谱系数对的数量P小于M时,在频域子带内再选择多个幅度较大的频谱系数对,直到幅度都大于预设阈值的频谱系数对的数量P大于M,并在幅度都大于预设阈值的P对频谱系数中,选择M对较大幅度与较小幅度差值或比值较小的频谱系数对。具体地,该编码处理装置可以采用本发明图10所示的编码处理装置实施例实现。
根据本发明通信***的另一个实施例,编码处理装置具体在频域子带内选择幅度较大的2M个频谱系数;按照在频域子带内的顺序,将2M个频谱系数两两作为一个频谱系数对,形成M对频谱系数,每对频谱系数 之间的相对位置差在N范围内,N为预先设置的整数。具体地,该编码处理装置可以采用本发明图11所示的编码处理装置实施例实现。
根据本发明通信***的又一个实施例,编码处理装置具体在待编码频域子带中的奇数轨道内选择M个幅度较大的频谱系数,分别在偶数轨道内临近M个幅度较大的频谱系数的位置,选择另外M个幅度较大的频谱系数,或者,在待编码频域子带中的偶数轨道内选择M个幅度较大的频谱系数,分别在奇数轨道内临近M个幅度较大的频谱系数的位置,选择另外M个幅度较大的频谱系数;将M个幅度较大的频谱系数,分别与另外M个幅度较大的频谱系数中临近的频谱系数两两作为一个频谱系数对,形成M对频谱系数。具体地,该编码处理装置可以采用本发明图12所示的编码处理装置实施例实现。
根据本发明通信***的再一个实施例,编码处理装置具体对M对频谱系数的位置信息进行编码,并分别将各频谱系数对的幅度与符号信息作为一个正弦脉冲波形,对正弦脉冲波形进行矢量量化。具体地,可以采用增益-波形矢量量化方法对正弦脉冲波形进行矢量量化。
根据本发明通信***的还一个实施例,编码处理装置具体对M对频谱系数的位置信息进行编码,并对频域信号中多个相邻频域子带中频谱系数的幅度与符号信息进行联合矢量量化。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
本发明实施例成对编码频谱系数,这样,只需对编码每对频谱系数中一个频谱系数的绝对位置,而对另一个频谱系数的相对位置进行编码,由于相对位置信息占用的比特数少于绝对位置信息,就减少了编码该频谱系数的位 置信息所需的比特数,从而减少了编码每个频谱系数平均占用的比特数,在发送端编码器可用比特数一定的情况下,便可以编码更多的频谱系数,提高发送端编码输出的数据码流,进而提高接收端对频域信号的恢复质量。
最后所应说明的是:以上实施例仅用以说明本发明的技术方案,而非对本发明作限制性理解。尽管参照上述较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解:其依然可以对本发明的技术方案进行修改或者等同替换,而这种修改或者等同替换并不脱离本发明技术方案的精神和范围。