语音信号变声处理系

数字信号处理

课程设计报告

课设题目:语音信号变声处理系统学 院:信息与电气工程学院专 业:电子信息工程班 级:1102502姓 名:王珂学 号:110250217指导教师:周志权、赵占锋哈尔滨工业大学(威海)2015年1月5日

不要删除行尾的分节符,此行不会被打印1.设计任务

电视台经常针对某些事件的知情者进行采访,为了保护知情者,经常改

变说话人的声音,请利用所学的知识,将其实现。

(1) 自己录制一段正常的声音文件,或者通过菜单选择的方式选择一段正常声音文件;

(2)能够播放该文件;

(3)对语音信号进行处理,要求处理后的语音信号基本不影响正常收听与理解;

(4)对处理参数能够通过 matlab 界面进行调节,以对比不同处理效果;(5)能够对处理后的声音文件与原始声音文件的频谱进行观察、分析。

(6)编制 GUI 用户界面。

2.课程设计原理及设计方案

语音科学家将人类发声过程视作一个由声门源输送的气流经以声道、口、鼻腔组成的滤波器调制而成的。人类语音可分为有声语音和无声语音,前者是由声带振动激励的脉冲信号经声腔调制变成不同的音,它是人类语言中元音的基础,声带振动的频率称为基频。无声语音则是声带保持开启状态,禁止振动引发的。一般来说,由声门振动决定的基频跟说话人的性别特征有关,如下表,而无声语音则没有体现这个特征。说话人的个性化音色和语音的另外一个声学参数——共振峰频率的分布有关。儿童由于声道短,其共振峰频率高于成年人,成年女性的声道一般短于成年男性,所以女性的共振峰频率一般高于男性。在进行性别变声时,主要考虑基频和共振峰频率的变化。当基频伸展,共振峰频率也同时伸展时,可由男声变成女声,女声变成童声;反之,基频收缩,共振峰频率也同时收缩时,则由童声变女声,女声变男声。为了获得自然度、真实感较好的变声效果,基频和共振峰频率通常必须各自独立地伸缩变化

图 1 基频和共振峰频率分布的变化

共振峰频率的改变是基于重采样实现的,从重采样原理知道,这也同时引发了基频的变化,为保证基频变化和共振峰频率变化的独立、互不相关,在基频移动时必须考虑抵消重采样带来的偏移,理论上只要基频检测足够精确,确实可以保证基频改变和共振峰频率改变间的互不相。

3.课程设计的步骤和结果

设计方案:1录入一段声音???2用MATLAB做fft得到其频谱??3做fft频谱分析??4搬移和改变基频、语速,实现变声?

以下为各任务实现过程:

图 2 为用Matlab实现的GUI用户界面,通过“speech signal ”按钮选择语音信号类型,本课程设计共录制了三段语音信号,分别为两种不同频率的“语音信号处理”及“one two three”。“drawplay sound”按钮用于播放录音,“slow play”“fast play”“low voice” “high voice” “echo”是语音处理过程。

图 2 GUI界面

图 3— 图 8 为“语音信号处理”录音的频谱。

图 3 变声前语音信号的频谱

图 4 慢声调语音信号频谱

图 5 快语调语音信号频谱

图 4 为分别以6000Hz 和4096Hz进行采样得到的语音信号的频谱, 图 5 以16384Hz进行采样得到的语音信号的频谱,通过两幅图对比可知改变采样频谱可以实现声音的改变。

图 6 降调语音信号的频谱

图 7 升调语音信号的频谱

图 6 图 7 对原语音信号分别进行降调升调处理,由频谱图可知降调升调改变了声音。

图 8 带有回声的语音信号频谱

图 8 为带有回声的语音信号的频谱。通过频谱图可以观察到低频处有较多干扰,即产生了回音。

图 9—图 14是语音信号频率参数改变后的频谱。

图 9 变声前语音信号的频谱

图 10 慢声调语音信号频谱

图 11 快声调语音信号频谱

图 12 降调后语音信号的频谱

图 13 升调后的语音信号频谱

图 14 有回声效果的语音信号的频谱

通过对比两种不同频率的语音信号,可知改变基频可以变声。

图 15—

图 20为“one two three”录音的频谱。

图 15 原语音信号

图 16 慢声调语音信号频谱

图 17 快声调语音信号频谱

图 18 降调后语音信号频谱

图 19 升调语音信号频谱

图 20 有回声效果语音信号频谱

4.课程设计总结

1、改变频谱可以实现变声;

2、改变基频可以变声;

3、共振峰与基频是变声的重点;

5.设计体会

1、巩固和加深了对数字信号处理的基本概念、基本原理、基本分析方法的理解;

2、提高了综合利用数字信号处理

用MATLAB对语音进行基频搬移,语音信号变声处理系.doc相关推荐

  1. matlab语音加入正弦噪声,基于Matlab的语音信号去噪声处理 毕业论文.doc

    基于Matlab的语音信号去噪声处理 毕业论文 本科毕业论文(设计) 题目:基于Matlab的语音信号去噪声处理 姓 名: 学 号: 1142051102 专 业: 电子信息工程 院 系: 电子通信工 ...

  2. 利用MATLAB编写单位冲激函数,熟悉MATLAB软件的相关函数的使用方法各种信号的时域波形.doc...

    熟悉MATLAB软件的相关函数的使用方法各种信号的时域波形 实验目的: 熟悉MATLAB软件的相关函数的使用方法.各种信号的时域波形. 实验内容: 1.用MATLAB软件绘制各类典型信号的时域波形并且 ...

  3. 《信号与系统》解读 第5章 通信系统中的调制解调:频谱搬移、幅度调制、脉冲调制、频率调制、相位调制、频分复用、时分复用

    本文将从时域与频域的角度解读"系统"通过正弦载波信号,对输入的时域基带信号,进行"调制"的过程,并输出调制后的时域混频信号. 解调是调制的反过程,"系 ...

  4. 学习 ARM 系列 -- FS2410 开发板上 Nand Flash 到内存的代码搬移

    一.目的    通过将 Nand Flash 前 4K 代码搬移到 SDRAM 中,了解如何初始化并使用 ARM 的内存,    为编写 ARM bootloader 和搬移内核到内存作准备. 二.代 ...

  5. Windows Azure真实案例:微软IT-将拍卖工具搬移至云端,方便雇员捐赠

    公告    :本博客为微软云计算中文博客  的镜像博客.   部分文章因为博客兼容性问题  ,会影响阅读体验  .如遇此情况,请访问  原博客    . 微软IT 微软IT 运营一个在线拍卖工具,用来 ...

  6. 【嵌入式开发】ARM 代码搬移 ( ARM 启动流程 | 代码搬移 起点 终点 | 链接地址 | 汇编代码 )

    文章目录 一. ARM 启动流程 1. 各种类型开发板启动流程 ( 1 ) 2440 开发板启动流程简介 ( ① Nand Flash 拷贝 4 KB -> SRAM 垫脚石 | ② PC 指向 ...

  7. 重构改善既有代码设计--重构手法11:Move Field (搬移字段)

    你的程序中,某个字段被其所驻类之外的另一个类更多的用到.在目标类建立一个新字段,修改源字段的所有用户,令它们改用新字段.        动机:在类之间移动状态和行为,是重构过程中必不可少的措施.随着系 ...

  8. poj3580 伸展树(区间翻转 区间搬移 删除结点 加入结点 成段更新)

    好题.我做了很久,学了大牛们的区间搬移.主要的代码都有注释. #include<cstdio> #include<cstring> #include<iostream&g ...

  9. PHP 杂谈《重构-改善既有代码的设计》之二 对象之间搬移特性

    思维导图 索引: Ø Move Method(搬移函数) Ø Move Field (搬移值域) Ø Extract Class (提炼类) Ø Inline Class (将类内联化,就是把当前的类 ...

  10. 重构手法——提炼函数、搬移函数、以多态取代条件表达式

    目录 我的心路历程 我的学习概括 Extract Method(提炼函数) 动机*--做法 动机--做法* Move Method(搬移函数) 动机*--做法 动机--做法* Replace Cond ...

最新文章

  1. jQuery Form Plugin (jquery表单插件)
  2. 已解决:Job for docker.service failed because the control process exited with error code. See “systemctl
  3. 2021-03-16 汽车二自由度操纵稳定性 Matlab simulink
  4. 计算机网络安全反思,网络安全教育教学反思范文
  5. 人工智能 | 深度学习最新技术综述(MIT公开课2019)
  6. 服务器系统2012怎么多人连接,windows2012服务器TCP连接数
  7. 关于 SAP Spartacus Loader Meta Reducer 的用途 - loading 在 true 和 false之前切换的逻辑
  8. windows下关于Objective-C开发环境的配置
  9. new TypeToken<List>>(){}.getType() 是什么意思
  10. Anaconda如何重新在开始菜单显示
  11. jquery获取radio值
  12. 启动rrt什么意思_面试官:你来说一下springboot启动时的一个自动装配过程吧!...
  13. Spring框架入门程序:获取Bean的三种方式
  14. 巧妙设置excel透明字体
  15. STM32——理解时钟系统
  16. 【MIUI刷机】旧机降级记录
  17. 设计原则与模式009 中介者模式
  18. ORACLE提供了 三种例外,oracle(7)例外处理
  19. 删除微软office正版验证补丁
  20. Learning Generalisable Omni-Scale Representations for Person Re-Identification

热门文章

  1. scikit-learn 线性回归算法
  2. linux 浮点测试,浮点运算性能测试
  3. 不会英语能学java_不会英语可以学java吗 不会英语怎么学java?
  4. 并列关系表合集PPT模板
  5. 欧美html真人游戏,推荐几个好玩场面大的,欧美3d史诗级rpg魔幻手游
  6. 计算机显示器画画的清晰度,如何设置显示器分辨率让画面更清晰
  7. 用C语言解“厘米换算英尺英寸”问题
  8. 机器视觉中的常用打光方式(明场照明,暗场照明)
  9. c fflush函数
  10. 【财富空间】像先知一样思考,如拳手般战斗