编码方法、解码方法、编码装置、解码装置以及程序的制作方法_3

文档序号:9616944阅读:来源:国知局
13] 此时,基音周期解码单元127d从码4提取以整数精度(第1精度)表现的第1~ 第4子帧的基音周期T/、T2'、T3'、T4',并将其输出。
[0114] [在编码装置11中使用步骤S113的具体例2的情况]
[0115] 此时,基音周期解码单元127d从码4提取每个由多个子帧构成的时间区间(第1 时间区间)的基音周期,并将其输出。即,通过在每个第1时间区间获得基音周期的解码方 式,对与基音周期对应的码进行解码。在将第1、第2子帧、第3、第4子帧分别设为第1时 间区间的图8B的例子中,对第1、第2子帧提取相同的基音周期?\ '、Τ2 ' =?\ ',对第3、第4 子帧提取相同的基音周期!'3'、1'4'=1'3',并输出基音周期1' 1'、1'2'、1'3'、1'4'(步骤5123的 具体例的说明结束)。
[0116] 另一方面,在步骤S122的判定中,用于表示与比特流BS对应的时序信号X(η)(η =〇、……、L-1)的稳态性的指标满足了用于表示时序信号X(η)(η= 0、……、L_l)的稳 态性高的条件时(稳态),基于判定单元127b(图6)的控制,开关单元127c将当前帧的码 CT发送给基音周期解码单元127e。基音周期解码单元127e通过与在基音周期编码单元 117e(图5)中进行的编码处理对应的解码处理对码4进行解码,输出当前帧的基音周期丁' =T/、T2'、T3'、T4'(步骤S124)。基音周期解码单元127e对将以第2精度表现的基音周 期在每个第2时间区间进行编码而获得的码进行解码。即,通过在每个第2时间区间获得 以第2精度表现的基音周期的解码方式,对于基音周期对应的码进行解码。例如,与以往一 样,基音周期解码单元127e对当前帧的码4进行解码,从而输出当前帧的基音周期Τ' = ΤΛΤΛ?ν、!;'。以下表示步骤S124的具体例。
[0117] [在编码装置11中使用了步骤S114的具体例1、2的情况]
[0118] 此时,基音周期解码单元127e从码CT提取第1子帧的基音周期Τ/、第3子帧的 基音周期T3',并将其输出。此外,基音周期解码单元127e从码CT提取第2子帧的基音周 期的整数部与第1子帧的基音周期的整数部之间的差分值、第4子帧的基音周期的整数部 与第3子帧的基音周期的整数部之间的差分值、第2子帧的基音周期的小数部、第4子帧的 基音周期的小数部。
[0119] 进而,基音周期解码单元127e将从第1子帧的基音周期T/获得的第1子帧的基 音周期的整数部、第2子帧的基音周期的整数部与第1子帧的基音周期的整数部的差分值、 第2子帧的基音周期的小数部相加,从而获得第2子帧的基音周期T2',并将其输出。
[0120] 进而,基音周期解码单元127e将从第3子帧的基音周期Τ3'获得的第3子帧的基 音周期的整数部、第4子帧的基音周期的整数部与第3子帧的基音周期的整数部的差分值、 以及第4子帧的基音周期的小数部相加,从而获得第4子帧的基音周期Τ4',并将其输出(步 骤S124的具体例的说明结束)。
[0121] 解码后的当前帧的基音周期Τ' = 基于判定单元127b的控制,通 过开关单元127c被输出。此外,参数解码单元127输出线性预测信息LPCinfo、码索引码 索引(;=(^1、(;2、(;3、(;4、量化后的基音增益%'=% 1'、%2'、%3'、%4'、量化后的固定码本 增益g。' =&1'、&2'、&3'、& 4'。此后,与以往以往,在解码装置12中生成并输出合成信号 X'(η)(η= 0、......、L_l) 〇
[0122] [第1实施方式的变形例1]
[0123] 作为上述的第1实施方式的变形,也可以根据在步骤S112中当前帧的时序信号 χ(η)(η= 0、......、L-1)被判定为稳态,还是被判定为非稳态,编码装置11的检索单元 913(图4)改变比当前帧还未来的帧中的基音周期T的检索范围。例如,在判定为非稳态时, 由于自适应信号的贡献少,因此可以将基音周期的检索范围设定为比判定为稳态时的检索 范围还小。
[0124] 此外,也可以在检索单元913检索当前帧的基音周期T之前,利用预测增益的估计 值E而判定当前帧的时序信号X(η)(η= 0、……、L_1)是稳态还是非稳态,并根据其结果, 变更当前帧中的基音周期T的检索范围,所述预测增益利用对当前帧生成的线性预测信息 LPCinfo而生成。例如将判断为非稳态时的检索范围设为比判断为稳态时的检索范围还 小。
[0125] 此外,也可以通过步骤S112判定时稳态还是非稳态,并根据其结果设定基音周期 T的检索范围之后,重新进行对于当前帧的检索对于913的处理。
[0126] 进而,如步骤S113的具体例2那样,在判定为非稳态时在每个由多个子帧构成的 时间区间对基音周期T进行编码(降低编码频度)的情况下,对于判定为非稳态的帧,也可 以降低检索单元913的基音周期T的计算频度。即,例如,如果针对多个子帧,仅对一个基 音周期进行编码,则针对该多个子帧,只要算出一个基音周期即可。
[0127] [第1实施方式的变形例2]
[0128] 作为上述的第1实施方式的变形,也可以根据在步骤S112中将当前帧的时序信号 χ(η)(η= 0、......、L-1)判定为稳态还是判定为非稳态,改变在比当前帧还未来的帧中编 码装置11的检索单元913(图4)算出的基音周期T的精度。例如,也可以在判断为非稳态 时算出以整数精度表现的基音周期T,在判断为稳态时算出以小数精度表现的基音周期T。
[0129] 此外,也可以在检索单元913算出当前帧的基音周期T之前,利用预测增益的估计 值E判定当前帧的时序信号χ(η)(η= 0、……、L_1)是稳态还是非稳态,并根据其结果,选 择将当前帧中的基音周期T以整数精度算出还是以小数精度算出,所述预测增益利用对当 前帧生成的线性预测信息LPCinfo而生成。例如,也可以在判断为非稳态时算出以整数精 度表现的基音周期T,在判断为稳态时算出以小数精度表现的基音周期τ。
[0130] 此外,也可以通过步骤S112判定是稳态还是非稳态,并根据其结果设定了在检索 单元913算出的基音周期Τ的精度之后,重新进行对于当前帧的检索单元913的处理。
[0131] [第1实施方式的变形例3]
[0132] 此外,作为上述的第1实施方式的变形,也可以根据在步骤S112中将当前帧的时 序信号x(n)(η= 0、......、L-1)判定为稳态还是判定为非稳态,改变对码索引Cf分配的比 特数目。例如,在判定为非稳态时,与判定为稳态时相比,与基音周期T对应的码CT的码量 小,因此通过降低比特率,从而在重视相同程度的比特率下的质量改善的情况下,与对应于 基音周期T的码4的码量的节约量对应地、对码索引Cf分配较多的比特数,从而提高编码 质量。
[0133] [第1实施方式的变形例4]
[0134] 此外,代替判定时序信号X(η)(η= 0、……、L_1)是否为稳态并根据其结果而切换 用于表现基音周期的精度、基音周期的编码方式,也可以判定时序信号x(n)(η= 0、……、 L-1)是否为周期性的,并根据其结果切换用于表现基音周期的精度、基音周期的编码方式。 在此时的处理成为将上述的"稳态"置换为"周期性",将"非稳态"置换为"非周期性"的处 理。另外,时序信号X(η)(η= 〇、……、L-1)是否为周期性的判定也能够通过预测增益、量 化后的基音增益是否比规定值还大而判定。即,也可以根据用于表示时序信号的周期性和/ 或稳态性的高低的指标是否满足用于表示周期性和/或稳态性高的条件,切换用于表示基 音周期的精度和/或基音周期的编码方式。
[0135] [第1实施方式的变形例5]
[0136] 此外,作为用于判断时序信号X(n)(n = 〇、……、L_l)是否为稳态(周期性)的 指标,也可以利用与规定时间区间中包含的某个时间区间的基音周期对应的值(例如,基 音周期、基音周期的整数部)以及与该规定时间区间中包含的比该时间区间还过去的时间 区间的基音周期对应的值之间的差分值。然后,可以在该差分值比规定值还小的情况下判 断为稳态(周期性),在并非如此时判定为非稳态(非周期性)。此外,也可以通过判定是 否满足指标〈规定值,判定指标是否比规定值还小,也可以通过判定是否满足指标<(规定 值-常数)而判定指标是否比规定值还小。此时,作为处理上的阈值,可以设定规定值,作 为处理上的阈值也可以设定(规定值-常数)。
[0137] [第1实施方式的变形例6]
[0138] 此外,也可以设为在比特流BS中包含用于确定编码装置11根据稳态性和周期性 的判断结果而选择的事项(基音周期的精度、编码方式等)的辅助信息。此时,解码装置12 利用比特流BS中包含的辅助信息,能够确定根据稳态性和周期性的判断结果而选择的事 项(基音周期的精度和解码方式等)。
[0139] [第2实施方式]
[0140] 第2实施方式是对第1实施方式或者其变形例1~6的变形。第2实施方式与第 1实施方式或者其变形例1~6的不同点在于,根据时序信号是否为稳态(周期性)而切换 的、基音周期的编码方式以及解码方式的内容。
[0141] 如果是语音信号等的时序信号,则在稳态(周期性)的帧中,基音周期的变化较 少,属于该帧的子帧的各基音周期之间的差分值成为〇或者较小的值的可能性较大。从而, 在稳态的帧中,对子帧的各基音周期之间的差分值进行可变长度编码较有效。相反,在不是 稳态(周期性)的帧中,这样的差分值的偏差较大,因此可变长度编码并不有效的情况较 多。
[0142] 因此,在第2实施方式的基音周期的编码处理中,当用于表示时序信号的周期性 和/或稳态性的高低的指标满足用于表示周期性和/或稳态性高的条件时,对规定时间区 间中包含的第1规定时间区间的基音周期进行编码,并对与该规定时间区间中包含的第1 规定时间区间以外的第2规定时间区间的基音周期对应的值、和与该第2规定时间区间以 外的时间区间的基音周期对应的值之间的差分值进行可变长度编码。以下,举例说明"规定 时间区间"是帧、"第1规定时间区间"是第1、第3子帧、"第2规定时间区间"是第2、第4 子帧、"与基音周期对应的值"是基音周期的整数部的情况。但是,这并不限定本发明。
[0143] 〈结构〉
[0144] 利用图4至图6,说明第2实施方式的编码装置21以及解码装置22的结构。
[0145] 如图4例示那样,第2实施方式的编码装置21与第1实施方式的编码装置11的 不同点在于,将参数编码单元117置换为参数编码单元217。此外,第2实施方式的解码装 置22与第1实施方式的解码装置12的不同点在于,将参数解码单元127置换为参数解码 单元227。
[0146] 如图5例示,第2实施方式的参数编码单元217与第1实施方式的参数编码单元 117的不同点在于,将基音周期编码单元117d置换为基音周期编码单元217d,将基音周期 编码单元117e置换为基音周期编码单元217d。此外,如图6例示,第2实施方式的参数解 码单元227与第1实施方式的参数解码单元127的不同点在于,将基音周期解码单元127d 置换为基音周期解码单元227d,将基音周期解码单元127e置换为基音周期解码单元227e。
[0147] 〈编码方法〉
[0148] 利用图7A,说明第2实施方式的编码方法。
[0149] 在第2实施方式的编码方法,代替第1实施方式的步骤S113而执行以下的步骤 S213,代替第1实施方式的步骤S114而执行以下的步骤S214。除此之外,均与第1实施方 式和其变形例相同。以下,仅说明本方式的步骤S213以及步骤S214的处理。
[0150] [步骤S213的处理]
[0151] 若在步骤S112中判定为非稳态(非周期性),则基于判定单元117b的控制,开关 单元117c将基音周期T=Ud、!;发送给基音周期编码单元217d(图5)。例如,基音 周期编码单元217d通过与以往(图2A以及图2B)相同的方法(步骤S213的具体例1)、或 者与第1实施方式的步骤S113(图8)相同的方法(步骤S213的具体例2),生成并输出与 当前帧的基音周期T对应的码CT(步骤S213)。
[0152] [步骤S214的处理]
[0153] 若再步骤S112中判定为稳态(周期性),则基于判定单元117b的控制,开关单元 117c将基音周期T= 1'1、1'2、1'3、1'4发送给基音周期编码单元217 6。基音周期编码单元2176 与以往一样(图2A、图2B以及图3),在每个子帧单独对第1、第3子帧(第1规定时间区 间)的基音周期?\、Τ3(从基音周期的最低值起的差分)进行编码。进而,基音周期编码单 元217e对第2子帧(第2规定时间区间)的基音周期1~2的整数部(与基音周期对应的值) 与第1子帧(第2规定时间区间以外的时间区间)的基音周期?\的整数部的差分值TD(1、 2)进行可变长度编码,并对第4子帧(第2规定时间区间)的基音周期T4的整数部与第3 子帧(第2规定时间区间以外的时间区间)基音周期!^的整数部的差分值TD(3、4)进行可 变长度编码。另外,差分值TD(α、β)可以是(基音周期Τα的整数部)-(基音周期Te的 整数部),也可以是(基音周期Te的整数部)-(基音周期Τα的整数部),但要在编码装置 和解码装置中统一到底要采用哪一个。此外,对第2、第4子帧的基音周期Τ2、1\的小数部 分别以固定比特(例如两个比特)进行编码。
[0154] 这样,基音周期编码单元217e在每个子帧单独对第1、第3子帧的基音周期?\、Τ3 进行编码,对差分值TD(1、2)以及TD(3、4)进行可变长度编码,并对基音周期!^、!;的小数 部以固定比特进行编码,从而生成并输出与当前帧的基音周期T= 1\、T2、T3、1\对应的码 CT(步骤S214)。以下,例示在本方式中对差分值TD(1、2)以及差分值TD(3、4)进行的可变 长度编码方法。
[0155] [可变长度编码方法的具体例1]
[0156] 在本例中,当差分值TD(1、2)以及差分值TD(3、4)的各大小均为0时,将特别的一 个比特(例如"0")设为与差分值TD(1、2)以及差分值TD(3、4)对应的码。除此之外的情 况下,将用于表示"在除此之外的情况"的一个比特(例如"1")和用于表示差分值TD(1、2) 的三个比特的总计4个比特、以及用于表示"在除此之外的情况"的一个比特(例如"1") 和用于表示差分值TD(3、4)的三个比特的总计4个比特设为对应于差分值TD(1、2)以及差 分值TD(3、4)的码。
[0157] [可变长度编码方法的具体例2]
[0158] 在本例中,当差分值TD(1、2)以及差分值TD(3、4)是_1、0、+1时,将对差分值 TD(1、2)以及差分值TD(3、4)分别进行可变长度编码后的结果设为码,在除此之外的情况 下,将表示该情况的一个比特(例如"1")和表示差分值的四个比特设为码。例如,如下那 样,差分值TD(1、2)和差分值TD(3、4)分别被进行可变长度编码。
[0159] 表 1
[0160]
[0161] 另外,在表1的例子时,如果差分值为-1、〇、+1以外,则信息量反而增加25%,因 此在差分值为_1、〇、+1以外的频度大时,比特数不被削减。在"1"+ "XXXX"时的"XXXX"的16个差分值中,0、+1、-1的三个不会被指定,因此能够指定XXXX中13个差分值,并将 剩余的三个码用于在特别的处理中使用的标识等其他的目的。或者,利用预先生成了通过 "Γ'+ "XXXX"指定的13个(16-3)的差分值的对应表,仅将频度高的两个差分值以三个比 特来表现,剩余的11个以四个比特来表现,从而能够进一步削减平均码量。
[0162] [可变长度编码方法的具体例3]
[0163] 在本例中,对与规定时间区间中包含的第1规定时间区间以外的多个第2规定时 间区间的各基音周期对应的值、和与该规定时间区间中包含的该第2规定时间区间以外的 时间区间的各基音周期对应的值的各差分值进行整合的信息,进行可变长度编码。如前所 述,这里,举例说明了"规定时间区间"是帧,"第1规定时间区间"是第1、第3子帧,"第2 规定时间区间"是第2、第4子帧,"与基音周期对应的值"是基音周期的整数部的情况。
[0164] 在本例中,当差分值TD(1、2)以及差分值TD(3、4)均为0时,将特别的一个比特 的指定码(例如"1")设为与差分值TD(1、2)以及差分值(3、4)对应的码。此外,差分值 TD(1、2)以及差分值TD(3、4)中的一个是0而且另一个是+1、-1中的其中一个的状态有四 个状态。在本例中,将由用于表示是该四个状态中的一个状态的两个比特的指定码(例如 "〇〇")以及用于识别各状态的两个比特("〇〇"、"〇Γ'、"1〇"、"11")构成的总计四个比特设 为与差分值TD(1、2)以及差分值TD(3、4)对应的码。在除此之外的情况下,将用于确定该情 况的两个比特(例如"01")的指定码、用于表示差分值TD(1、2)的四个比特、用于表示差分 值TD(3、4)的四个比特这样的总计10个比特设为与差分值TD(1、2)以及差分值(3、4)对 应的码。例如,如下所示,差分值TD(1、2)以及差分值TD(3、4)被集中进行可变长度编码。
[0165] [表 2]
[0166]
[0167] [可变长度编码方法的具体例4]
[0168] 在本例中,当所述的差分值TD(1、2)以及差分值TD(3、4)等均为0的情况下,将特 别的两个比特的指定码(例如"01")设为与差分值TD(1、2)以及差分值TD(3、4)对应的 码。此外,差分值TD(1、2)以及差分值(3、4)中的其中一个为0且另一个为+1、-1中的其 中一个的状态有四个状态,且差分值TD(1、2)以及差分值TD(3、4)中的一个是-1且另一个 是+1的状态有两个状态。在本例中,将由用于表示是该总计6个状态中的一个状态的两 个比特的指定码(例如"00")以及用于识别各状态的2个或3个比特(例如"00"、"01"、 " 100"、" 101"、" 110"、" 111 ")构成的总计4个或5个比特设为与差分值TD(1、2)以及差分 值TD(3、4)对应的码。在除此之外的情况下,将用于确定该情况的一个比特(例如"1")的 指定码、用于表示差分值TD(1、2)的四个比特、用于表示差分值TD(3、4)的四个比特这样的 总计9个比特设为与差分值TD(1、2)以及差分值TD(3、4)对应的码。例如,如图9A和图9B 以及以下例示,差分值TD(1、2)以及差分值TD(3、4)被集中进行可变长度编码。
[0169] [表 3]
[0170]
[0171] 另外,在表3,差分值TD(1、2)为+1且差分值TD(3、4)为-1时的码("00110")、 以及差分值TD(1、2)为-1且差分值TD(3、4)为+1时的码("00111")的码长度比差分值 TD(1、2)为0且差分值TD(3、4)为+1、-1中的任一个时的码("0000"、"0001")的码长度还 长,这一点基于差分值TD(1、2)为+1且差分值TD(3、4)成为-1的频度、以及差分值TD(1、 2)为-1且差分值TD(3、4)成为+1的频度小。
[0172] 以下,例示各状态的预想频度。
[0173] [表 4]
[0174]
[0176] 在表4的预想频度时,在以表3的分配方式进行编码时,与差分值TD(1、2)、TD(3、 4)对应的码的码长度期待值平均成为5. 35比特,从将差分值TD(1、2)以及TD(3、4)分别 以四个比特编码时的总计码长度8比特节约2. 64比特。其中,该预想频度是稳态性高的帧 (例如,整体的40 %的帧)的预想频度,在稳态性低的帧中,差分值TD(1、2)以及TD(3、4) 的偏差小且分布较广。从而,在所述的步骤S112的判定中,仅限于在判定为稳态性时进行 该编码,从而能够获得基于可变长度编码的高压缩效果。但是,如果将步骤S112中的条件 (稳态性时的条件)设为过严,则应用可变长度编码的频度下降,因此信息削减效果有限。 另一方面,如果将步骤S112中的条件(稳态性时的条件)设为过松,则无法获得基于可变 长度编码的高压缩效果,根据情况还存在平均比特数比以往还增加的可能性。从而,需要适 当地调整在步骤S112中的条件设定。
[0177] 〈解码方法〉
[0178] 利用图7B,说明第2实施方式的解码方法。
[0179] 在第2实施方式的解码方法中,代替第1实施方式的步骤S123而执行以下的步骤 S223,代替第1实施方式的步骤S124而执行以下的步骤S224.除此之外,与第1实施方式 和其变形例相同。以下,仅说明本方式的步骤S223以及步骤S224的处理
当前第3页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1