参考博客:https://www.cnblogs.com/welen/p/3782896.html
人的发音器官包括:肺、器官、喉(声带)、咽、鼻和口等。喉以上的部分称为声道,随着发音的不同其形状是变化的,喉的部分称为声门。在发音器官中,肺和气管是整个系统的能源,喉是主要声音生成的机构,声道负责对生成的声音进行调制。语音是由空气流激励声道最后从嘴唇或鼻腔或同时从嘴唇和鼻腔辐射出来而产生的。
音质:一种声音区别于其他声音的基本特征。(共振峰)
音调:声音的高低,取决于声波的频率,频率快音调高,频率慢音调低。(基音周期)
响度:声音的强弱,由声波振动的幅度决定的。
音长:声音的长短,取决于发音持续时间的长短。
音节:说话的时候,很自然的一次发出来,有一个响亮的中心的,听得时候也很自然的感到是一个小的语音片段。
音素:语音的最小最基本的组成单元。
语音的产生就是声道中的激励,语音的传播就是声波在声道中的传播,语音赖以传播的介质为可压缩的低粘滞的流体--空气。
激励模型:分为两种情况:发浊音时,声带不断的张开紧闭,产生间歇的脉冲波,因此,一个以基音周期为周期的斜三角脉冲(低通滤波器)。
发清音时,声道被阻碍形成湍流,可模拟成随机白噪声。
声道模型:
辐射模型:高通滤波器:
激励源出来的声门波信号与声道模型进行卷积,最后通过嘴唇辐射模型产生语音。激励源决定说话人基频的大小,即音调的高低。声道模型反应“润色”的频谱信息,具体讲就是共振峰决定了语义信息,谐波分布决定了音色,单位时间的音节数决定了语速。
1、变速不变调:保持音调和语义保持不变,语速变慢或者变快。该过程表现为语谱图在时间轴上如手风琴般压缩或者扩展。基频值几乎不变,对应于音调不变。整个时间过程被压缩或者扩展了,声门周期声纹数目增加或者减少,即声道运动的速率发生了改变,语速也随之发生了改变。对应于语音产生模型,激励和系统经历与原始发音情况几乎相同的状态,但持续时间相比原来或长或短。
2、变调不变速,严格讲,基频和音调是两个不同的概念,基频指声带振动的频率,音调指人类对基频的主观感知,但是两者变化基本一致,音调越高,基频越高,基频越低,音调越低,音调是由基频决定的。因此变调不变速是指改变说话人基频的大小,同时保持语速和语义不变即保持短时频谱包络(共振峰的位置和带宽)和时间过程基本不变。对应于语音产生模型,变调改变了激励源,声道模型的共振峰参数几乎不变,保证了语义和语速不变。
综上所述,变速改变声道运动速率,力求保持激励源不变;变调改变激励源,力求保持声道的共振峰信息不变。但是声源和声道不是相互独立的,在改变声源时,必然也会非线性的影响声道,同样地,改变声道时也会或多或少的影响声源,两者之间相互影响,相互作用。
一、变速不变调:
语音变速不变调,即语音时长规整,是指不改变原说话人的音调及语义信息,只改变说话人的语速。
语音变速不变调算法有三大类:时域法,频域法,参量法。
时域法:剪贴法、同步波形叠加法(Synchronized Overlap-Add,SOLA)、固定同步波形叠加法(Synchronized Overlap-Add and Fixed Synthesis,SOLA-FS)、时域基音同步叠加法(Time-Domain Pitch Synchronized Overlap-Add,TD-PSOLA)、波形相似叠加法(waveform similarity overlap-and-add, WSOLA)等。
为了减小波形不连续现象,改善了剪贴法,在相邻两帧部分进行平滑处理,但是基音断裂现象仍然存在。
分解阶段完成原始语音信号的分帧任务,为了减小不连续现象,一般在分帧的同时进行加窗平滑处理,分解后的所有帧用于合成变速语音,这里假设帧长为N,分析帧移为Sa。合成阶段则可以分为两个步骤:
第一步,确定初步合成的重叠距离,按照变速因子a=Ss/Sa,改变分解阶段相邻两帧的帧移距离,Ss=Sa*a,即保持分解阶段的第一帧位置不变,移动之后的各帧,使得相邻两帧的距离由为Sa变为Ss,这样便可获得初步合成帧。
第二步,确定最终合成帧的初始位置。如果将初步合成帧直接进行叠加合成,则会造成基音断裂。为了减少该现象,通过在已合成第M帧第Ss个采样点的邻域[-kmax,kmax]内移动搜索和分解阶段第m帧信号的波形相关最大的位置k(m),确定最终合成帧的初始位置,保证叠加部分波形相似,减小基频断裂。(由于偏移量k(m)的存在,所以SOLA算法不能精确的改变语音的时间长度)
频域法:具有代表性的方法是LSEE-MSTFTM,该方法是基于短时傅里叶变换实现的,利用最小均方误差原则,寻找一个时域信号的短时傅里叶幅度谱逼近理想变速信号的频谱。
参数法:对语音信号建立模型,然后根据需要修改模型相关参数来达到改变音调和语速的目的。它包括相位声码器、正弦模型。相位声码器是将语音通过带通滤波器组分解成若干正弦信号,然后对正弦信号随时间变化的幅度和相位通过内插和抽取进行时域压扩,最后经过合成便完成变速不变调。正弦模型法与相位声码器方法相似,需要估算出模型的瞬时幅度、瞬时频率、瞬时相位等参量,合成效果较好,但是复杂度较高。
二、变调不变速:
语音变调不变速算法有三大类:时域法,频域法,参量法。
时域法:利用重采样的方法,该方法实现变速变调最简单最常用的方法之一。
假设,重采样因子是P/Q,P是上采样因子,Q是下采样因子。上采样的过程就是往原始信号相邻的两点间内插P-1个采样点,这样就是使得基音周期变为了原来的P倍,频谱压缩为原来的1/P倍,时长变为原来的P倍,即基频变为原来的1/P倍,音调下降为原来的1/P倍,语速变为原来的1/P倍。
下采样的过程,就是在每个Q-1个点之间进行抽取,这样就会使得基音周期变为原来的1/Q倍,频谱扩展为原来的Q倍,时长变为原来的1/Q倍,即基音频率变为原来的Q倍,音调升为原来的Q倍,语速变为原来的Q倍。
综上,经过P/Q倍重采样后,保持播放速度不变,重采样语音语速和音调均变为了原来的Q/P倍。
为了实现变调不变速,可通过各种变速不变调与重采样的方法相结合,变速不变调将语速变为原来的P/Q,得到输出信号,输出信号再进行P/Q重采样处理,这样就可以得到正常语速音调变为原来的Q/P倍。
频域法:对信号频谱进行插值和抽取,实现各频率分量的扩展和压缩。缺点内插会引入不需要的频率,从而影响音质,变调后会有部分失真。
或者利用短时傅里叶变换原理,估计出短时帧的瞬时频率,再乘以伸缩系数进行频率伸缩。
参量法:正弦模型原理。该模型将信号看作是一系列随时间变化的正弦信号叠加。 很显然,时间规整后瞬时频率不变,保证了音调不变,但是时间过程扩展为原来的倍。很显然,变调不变速处理后,各个频率成分随系数拉伸或者收缩。对应于浊音,为随时间变化的第一谐波,即基频;其他频率成分对应于其它谐波。