2024年5月26日发(作者:)

基于FFT算法的数字变声器

201242216

河北北方学院宣化教学部 河北宣化 075100

【摘 要】 本数字变声器是实现男声变女声和女声变男声以及变成童声的系统。设计本

数字变声器的目的是锻炼自己的学习实践能力。通过matlab编写程序修改语音参数来实现

男声女声之间的变换。

【关键词】 变音算法 数字滤波器 语音信号 数字滤波器 频谱分析 MATLAB

1 引言

变声器在现实生活中应用广泛,变声器是通过改变输入音频的音色、音调,并将变声后

的音频输出的工具。根据变声器材质不同,变声器分为变声器硬件和变声器软件。变声器硬

件,即通过硬件实现变声的工具;变声器软件,即通过软件实现变声的工具,软件类变声器,

运行平台皆为电脑系统。无论是硬件变声器,还是软件变声器,其原理都是,通过改变输入

声音频率,进而改变声音的音色、音调,使输出声音在感官上与原声音不同。我们每个人的

声音不同,源于我们的每个人的音色和音调不同,我们所说的男中音、男高音,就是音调的

不同,而即便音调一致,我们依然能区分出两个不同人的声音,或不同乐器的声音,这就是

音色的不同。变声器,正是借助对声音音色和音调的双重复合改变,实现输出声音的改变。

我们这里的变声器就是matlab来实现变声。

2 数字变声器的原理和算法

发音方法,发音时,喉头、口腔、鼻腔节制气流的方式和状态,包括发音时构成阻碍和

克服阻碍的方式,气流强弱的情况及声带是否振动等几个方面。人类语音可分为有380声语

音和无声语音,前者是由声带振动激励的脉冲信号经声腔调制变成不同的音,它是人类语言

中元音的基础,声带振动的频率称为基频。无声语音则是声带保持开启状态,禁止振动引发

的。一般来说,由声门振动决定的基频跟说话人的性别特征有关,如下表,而无声语音则没

有体现这个特征。说话人的个性化音色和语音的另外一个声学参数——共振峰频率的分布有

关。儿童由于声道短,其共振峰频率高于成年人,成年女性的声道一般短于成年男性,所以

女性的共振峰频率一般高于男性。本实验是基于男生录制的声音进行相关参数提取,修改接

近于女声、童声、老人声,并实现了音调的高低与速度的快慢1.变声原理

在进行性别变声时,主要考虑基音周期、基频和共振峰频率的变化。基音周期改变时,

基频、共振峰同时变化,若伸展既有男变女、女变童,反之亦可。本实验是基于男生录制的

声音进行相关参数提取,修改接近于女声,实现男声到女声的变换。

● 音段特征:描述的是语音的音色特征。特征参数主要包括基音频率、

共振峰位置、共振峰带宽、基音频率、能量等。

● 超音段特征:描述的是语音的韵律特征。特征参数主要包括因素的时

长、基音频率的变化(音调)、能量等

● 语言特征:包括习惯用语、方言、口音等。基音是指发浊音时声带振

动所引起的周期性, 而基音周期是指声带振动频率的倒数。基音周期是语音信号最重要

的参数之一, 它描述了语音激励源的一个重要特征。不同的人以及同一个人在不同的年龄

时期有不同的基音周期。人唱歌时,其基音频率范围大约是:童声高音频率范围为

260-880Hz ,低音频率范围为 196-700Hz ,女声高音频率范围为 220-1.1KHz, 低音频率范

围为 200-700Hz ,男声高音频率范围为 160-523Hz 低音频率范围为 80-358Hz 。此外,基

音的变化模式称为声调,它携带着非常重要的具有辨意作用的信息。先就如何实时地通过基

音频率的变化来实现语声变声,进行讨论, Matlab实现算法。

男声 基频分布(hz):50~180 共振峰频率分布:偏低

人群

女声 基频分布(hz):160~380 共振峰频率分布:中

提取参数

(1 )语音时变傅里叶变换为:

X(e)

jw

n

x(n)e

jwn

在低通滤波时,采用巴特沃斯滤波器。

(2) 构建巴特沃斯低通滤波器

根据人的说话特征设定相应指标参数,对本段语音设计算出巴特沃斯模拟滤波器的阶数,

截止频率,归一化低通原型系统函数。

本段语音设计算出巴特沃斯模拟滤波器的阶数N为5,3dB截止频率,

,算出为0.175,归一化低通原型系统函数为:

其中

将带人中,得到低通滤波器,