一种基于智能终端的实时变声方法

文档序号:9548991阅读:1136来源:国知局
一种基于智能终端的实时变声方法
【技术领域】
[0001] 本发明涉及变声方法,尤其涉及一种基于智能终端的实时变声方法。
【背景技术】
[0002] 目前在使用的智能终端有录放变声的App,这种不适用于实时语音交流。

【发明内容】

[0003] 为了解决现有技术中的问题,本发明提供了一种基于智能终端的实时变声方法。
[0004] 本发明提供了一种基于智能终端的实时变声方法,包括以下步骤:
[0005] S1、语音信号读入;
[0006] S2、汉明窗加权语音;
[0007] S3、计算线性预测系统A ;
[0008] S4、计算激励、滤波,重建语音作为测试对比用;
[0009] S5、根据激励计算基频和合成激励能量;
[0010] S6、根据变频系数α改变基频频率;
[0011] S7、根据预测系统求极点;
[0012] S8、移动极点改变极点角度ω改变共振峰频率;
[0013] S9、根据新极点求出新系数Al ;
[0014] S10、根据新基频、新系数A1,计算出合成激励、插值抽值,计算出合成语音;
[0015] S11、输出变声后的语音信号。
[0016] 作为本发明的进一步改进,步骤S6中:假设重采样因子为P/Q,其中,P为上采样因 子,Q为下采样因子,上采样过程就是往原始信号相邻两点间内插P-I个采样点,这样使得 基音周期变为原来的P倍,频谱压缩为原来的1/P倍,时长变为原来的P倍,即基频变为原 来的1/P倍,音调降为原来的1/P倍,语速变为原来的1/P倍,同样地,下采样过程就是每隔 Q-I个点进行抽取,这样会使得基音周期长度为原来的1/Q倍,频谱扩展为原来的Q倍,时长 变为原来的1/Q倍,即基频变为原来的Q倍,音调升为原来的Q倍,语速变为原来的Q倍,综 合上述两个过程,通过P/Q倍的重采样后,保持播放速率不变,重采样语音语速和音调都变 为原来的Q/P倍。
[0017] 作为本发明的进一步改进,步骤S8中:提高共振峰频率GlHz,语音采样频率为 LlHz则ω =-G1*2*ji/L1 ;降低共振峰频率G2Hz,语音采样频率为L2Hz则ω =G2*2*ji/ L2〇
[0018] 作为本发明的进一步改进,步骤S8中:提高共振峰频率100Hz,语音采样频率 为8kHz则ω = -100*2* Ji /8000 ;降低共振峰频率160Hz,语音采样频率为8kHz则ω = 160*2* Ji/8000。
[0019] 作为本发明的进一步改进,步骤SlO中:用基于时域抽取或内插的方法实现变调, 通过在相邻两个数据点之间线性插入新的数据点来达到增采样的目的,也可以通过每隔一 定时间抽取一些点来达到降采样的目的,增采样可以实现频谱的压缩,从而起到降调的作 用;降采样能够实现频谱的扩展,从而有升调的作用,将时域抽取和内插相结合可以实现任 意倍频率的变调,假设变调前频率为f。,变调后频率为f,变调系数为α,则a =f/f。;假设 a = f/f。= M/L,其中,M、L均为正整数,要实现任意有理数倍频率的变调,采用以下公式:
[0023] 其中,N是帧长,□表示取整运算,当M > L时,实现升调;M < L时,实现降调,X (η) 为输入信号。
[0024] 作为本发明的进一步改进,步骤SlO中:对信号在频域上进行插值或抽取,能够 实现信号频谱的变化,从而实现变调,频谱插值能够将信号在频域上进行扩展,从而实现 升调;频域抽取能够将信号在频域上进行压缩,从而实现降调,为了保持相位的连续性,采 用帧间重叠处理技术,令变调系数a =2d/12,处理中,对低频高频均线性内插,采用以下公 式:
[0027] 其中,FFTO表示对信号进行快速傅里叶变换,N是帧长,□表示取整,min ()表示 取较小值,*表示取共辄,仅仅对于降调时,才有花括号式中对Y (k)的补0。
[0028] 本发明的有益效果是:通过上述方案,可实现实时变声,适用于实时语音交流。
【附图说明】
[0029] 图1是本发明一种基于智能终端的实时变声方法的流程图。
【具体实施方式】
[0030] 下面结合【附图说明】及【具体实施方式】对本发明进一步说明。
[0031] 如图1所示,一种基于智能终端的实时变声方法,包括以下步骤:
[0032] Sl、语音信号读入;
[0033] S2、汉明窗加权语音;
[0034] S3、计算线性预测系统A ;
[0035] S4、计算激励、滤波,重建语音作为测试对比用;
[0036] S5、根据激励计算基频和合成激励能量;
[0037] S6、根据变频系数α改变基频频率;
[0038] S7、根据预测系统求极点;
[0039] S8、移动极点改变极点角度ω改变共振峰频率;
[0040] S9、根据新极点求出新系数Al ;
[0041] S10、根据新基频、新系数A1,计算出合成激励、插值抽值,计算出合成语音;
[0042] Sl 1、输出变声后的语音信号。
[0043] 重采样使得信号的样本数目增加或减少,若以不变的采样频率播放,速度会变慢 或变快,因此需要进行保持声调不变的变速处理(变速不变调),恢复到原来的样本数目。 同时为了改变信号的基频,还必须对信号进行变调处理即基频移动,在运用变调因子时,必 须抵消重采样引起的基频变化。变调采样因子在变调不变速的做法如下:
[0044] 假设重采样因子为P/Q,其中,P为上采样因子,Q为下采样因子。上采样过程就是 往原始信号相邻两点间内插P-I个采样点,这样使得基音周期变为原来的P倍,频谱压缩为 原来的1/P倍,时长变为原来的P倍,即基频变为原来的1/P倍,音调降为原来的1/P倍,语 速变为原来的1/P倍。同样地,下采样过程就是每隔Q-I个点进行抽取,这样会使得基音周 期长度为原来的1/Q倍,频谱扩展为原来的Q倍,时长变为原来的1/Q倍,即基频变为原来 的Q倍,音调升为原来的Q倍,语速变为原来的Q倍。综合上述两个过程,通过P/Q倍的重 采样后,保持播放速率不变,重采样语音语速和音调都变为原来的Q/P倍。
[0045] 步骤S8中:提高共振峰频率GlHz,语音采样频率为LlHz则ω = -Gl*2* Ji /LI ; 降低共振峰频率G2Hz,语音采样频率为L2Hz则ω = G2*2* Ji /L2。例如:提高共振峰频率 IOOHz,语音采样频率为8kHz则ω = -l〇〇*2* Ji /8000 ;降低共振峰频率160Hz,语音采样频 率为 8kHz 则 ω = 160*2* Ji /8000。
[0046] 智能终端App在界面上实现选择升调、降调(通过调节变声系数α实现),并传给 底层执行。同时提供时域和频域两种方案的抽值、插值方法。
[0047] 方案一:用基于时域抽取或内插的方法实现变调,通过在相邻两个数据点之间线 性插入新的数据点来达到增采样的目的,也可以通过每隔一定时间抽取一些点来达到降采 样的目的,增采样可以实现频谱的压缩,从而起到降调的作用;降采样能够实现频谱的扩 展,从而有升调的作用,将时域抽取和内插相结合可以实现任意倍频率的变调,假设变调前 频率为f。,变调后频率为f,变调系数为α,则a =f/f。;假设α =€/^。=1/1,其中肩丄 均为正整数,要实现任意有理数倍频率的变调,采用以下公式:
[0051] 其中,N是帧长,□表示取整运算,当M>L时,实现升调;M<L时,实现降调,x(n) 为输入信号。为了实时实现,帧长N不易取得过大。该方法可以实现时域线性内插,时域线 性内插比时域插0失真小,不会产生镜像失真,效果要好。
[0052] 方案二:对信号在频域上进行插值或抽取,能够实现信号频谱的变化,从而实现变 调,频谱插值能够将信号在频域上进行扩展,从而实现升调;频域抽取能够将信号在频域上 进行压缩,从而实现降调,为了保持相位的连续性,采用帧间重叠处理技术,令变调系数α =2d/12,处理中,对低频高频均线性内插,采用以下公式:
[0055] 其中,FFTO表示对信号进行快速傅里叶变换,N是帧长,□表示取整,min ()表示 取较小值,*表示取共辄,仅仅对于降调时,才有花括号式中对Y(k)的补0。在频域进行频 谱插或抽取处理后,经过傅里叶逆变换,得到对应的时域序列。实验表明:采用基于频域插 值的变调方法对语音信号进行处理后,所得到的变调后语音无明显噪音,变调效果相比时 域调制法要好,而且变调方法相对不是很复杂。这种方法的缺点在于内插的方法会引入不 需要的频率;特别是在某些能量大的频点,假设要升2倍频,将会引入一些能量为原频点能 量一半的频率分量,这些频率分量会大大影响音频的音质,变调后的语音会有部分失真。
[0056] 测试结果:
[0057] 方案一,时域调制法是一种简单的变调方法。其原理为对时域信号进行调制,能够 将原信号的频谱进行搬移,从而实现频率的升高或降低,达到变调的效果。
[0058] 该变调方法操作简单,而且可以保持语音信号的长度不变,计算量相对较小。但是 该调制方法
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1