基于matlab的简单音乐合成仿真设计大学论文Word文档下载推荐.docx

上传人:b****3 文档编号:7145228 上传时间:2023-05-08 格式:DOCX 页数:32 大小:637.73KB
下载 相关 举报
基于matlab的简单音乐合成仿真设计大学论文Word文档下载推荐.docx_第1页
第1页 / 共32页
基于matlab的简单音乐合成仿真设计大学论文Word文档下载推荐.docx_第2页
第2页 / 共32页
基于matlab的简单音乐合成仿真设计大学论文Word文档下载推荐.docx_第3页
第3页 / 共32页
基于matlab的简单音乐合成仿真设计大学论文Word文档下载推荐.docx_第4页
第4页 / 共32页
基于matlab的简单音乐合成仿真设计大学论文Word文档下载推荐.docx_第5页
第5页 / 共32页
基于matlab的简单音乐合成仿真设计大学论文Word文档下载推荐.docx_第6页
第6页 / 共32页
基于matlab的简单音乐合成仿真设计大学论文Word文档下载推荐.docx_第7页
第7页 / 共32页
基于matlab的简单音乐合成仿真设计大学论文Word文档下载推荐.docx_第8页
第8页 / 共32页
基于matlab的简单音乐合成仿真设计大学论文Word文档下载推荐.docx_第9页
第9页 / 共32页
基于matlab的简单音乐合成仿真设计大学论文Word文档下载推荐.docx_第10页
第10页 / 共32页
基于matlab的简单音乐合成仿真设计大学论文Word文档下载推荐.docx_第11页
第11页 / 共32页
基于matlab的简单音乐合成仿真设计大学论文Word文档下载推荐.docx_第12页
第12页 / 共32页
基于matlab的简单音乐合成仿真设计大学论文Word文档下载推荐.docx_第13页
第13页 / 共32页
基于matlab的简单音乐合成仿真设计大学论文Word文档下载推荐.docx_第14页
第14页 / 共32页
基于matlab的简单音乐合成仿真设计大学论文Word文档下载推荐.docx_第15页
第15页 / 共32页
基于matlab的简单音乐合成仿真设计大学论文Word文档下载推荐.docx_第16页
第16页 / 共32页
基于matlab的简单音乐合成仿真设计大学论文Word文档下载推荐.docx_第17页
第17页 / 共32页
基于matlab的简单音乐合成仿真设计大学论文Word文档下载推荐.docx_第18页
第18页 / 共32页
基于matlab的简单音乐合成仿真设计大学论文Word文档下载推荐.docx_第19页
第19页 / 共32页
基于matlab的简单音乐合成仿真设计大学论文Word文档下载推荐.docx_第20页
第20页 / 共32页
亲,该文档总共32页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

基于matlab的简单音乐合成仿真设计大学论文Word文档下载推荐.docx

《基于matlab的简单音乐合成仿真设计大学论文Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《基于matlab的简单音乐合成仿真设计大学论文Word文档下载推荐.docx(32页珍藏版)》请在冰点文库上搜索。

基于matlab的简单音乐合成仿真设计大学论文Word文档下载推荐.docx

不保密□。

(请在以上相应方框内打“√”)

指导老师签名(手写):

签字日期:

年月日签字日期:

摘要

科学技术的发展使得社会生活越来越趋于信息化和数字化,在此基础上语音信号也可以基于数字信号处理技术和语音学相关知识进行信息化处理,此类技术因应用性广便捷性高受到社会的广泛关注,已成为信息科学工程与研究领域的核心技术,被越来越多的高科技产业广泛使用。

计算机合成音乐也在其基础上得以迅速普及,而且理论上可以创造出任何一种声音。

MATLAB是一种用于数据分析和处理的计算机应用软件,它可以将语音文件进行信息化处理转化为离散的数据文件,再通过内置强大的矩阵运算能力如数字滤波、时域和频域分析、傅里叶变换、时域和频域分析、声音合成以及各种图形的呈现等处理数据。

利用MATLAB自带的功能函数可以快捷而又方便地完成语音信号的处理和分析以及信号的可视化,使人机交互更加便捷。

音乐可视为不同频率与振幅的正弦波叠加并加以不同包络所形成的信号,它的这个特点使得MATLAB的处理有了可能,通过处理不同的音频MATLAB可以进行简单的音乐合成。

本文主要是基于MATLAB环境下的音乐合成研究,首先基于相关的处理函数合成简单的音乐,并且对音乐进行降噪、升降度和加谐波等处理;

然后基于傅里叶变换分析处理后的音乐频谱;

最后根据傅里叶级数的原理来再次合成音乐。

关键词:

音乐合成;

MATLAB;

傅里叶分析

Abstract

Inthecurrentsociety,informationtechnologyanddigitizationbecomemoreandmorehigh.Asanewtechnologytoprocessspeechsignalsbasedondigitalsignalprocessingtechnologyandphoneticknowledge,voicesignalprocessingtechnologyiswidelyusedinmoreandmorehigh-techindustries.Technologyhasbecomeoneofthecoretechnologiesinthefieldofinformationscienceengineeringandresearch.Computersynthesisofmusictotherapidspread,intheory,youcancreateanykindofsound.

MATLABisacomputerapplicationfordataanalysisandprocessingthattransformssoundfilesintodiscretedatafilesandthenprocessestheirdatawithpowerfulmatrixoperationssuchasdigitalfiltering,Fouriertransform,timedomainandFrequencydomainanalysis,soundsynthesisandavarietyofgraphicsrendering.UsingMATLAB'

sownfunctionfunctioncanquicklyandeasilycompletethevoicesignalprocessingandanalysisandsignalvisualization,human-computerinteractionmoreconvenient.Asthemusicsignalcanbeseenasaseriesofdifferentfrequencyandamplitudeofthesinewavesuperpositionandtheformationofdifferentenvelopes,soyoucanusethisfeaturebasedonMATLABsoftwareanalysisandprocessingofdifferentaudiosignalsforsimplemusicsynthesis.

ThispaperismainlybasedonthestudyofmusiccompositionunderMATLABenvironment,usingtherelevantaudioprocessingfunctionsforsimplemusicsynthesis,themusicnoisereduction,plusharmonicandliftingprocessing;

FouriertransformwiththecorrespondingtreatmentoftheMusicspectrum;

Finally,re-synthesisthemusicaccordingtotheprincipleofFourierseries.

KeyWord:

Musicsynthesis;

MATLAB;

Fourieranalysis

第1章绪论

1.1选题意义及背景

半个多世纪以来,音乐家们一直致力于利用当今的科技和新材料来探索新的音乐,在原来的基础上进行不断的创新,音乐合成此项技术由于其强大的数据处理能力和创造能力便随之进入音乐家们的视野。

音乐合成技术,不仅可以巧妙模仿现有乐器的音色,还能够创造新的声音,极大地丰富了人类的音乐,给我们带来了无穷无尽的新音乐体验。

随着科技的发展,计算机合成音乐迅速在音乐界流传并普及。

作曲家和音乐家们为了创新和追求个性,往往选择在音乐中加入新的声音,而计算机合成音乐技术即为其提供了可能,因为在理论上它可以创造出任何一种声音。

现在,合成音乐已经逐渐脱离模仿现有乐器音色的道路,转而向创造音色方面发展。

虽然合成音乐在现代音乐领域已有相对广泛的应用,但是发展仍有所受限,国内在该方面的权威理论著作也很少。

这是因为它其涉及音色、声学、计算机等相关学科,是一门综合性强且专业性高的学科。

通过分析近年来使用合成音乐的现代音乐,可以发现合成音乐相较声学乐器在层次和音色上都具有显现的独特性,这些分析也能为计算机合成音乐在现代音乐制作的应用提供相对有实践价值的参考。

MATLAB是英文MATrixLABoratory(矩阵实验室)的缩写。

自1984年由美国MathWorks公司推向市场以来,得到了广泛的关注和发展。

在发达国家,MATLAB已经是大学以上学历者所必须具备的一项技能,是数字信号处理、时间序列分析、线性代数、自动化控制理论、动态系统仿真等诸多课程的基本教学工具。

而在设计和工业部门,MATLAB也有广泛的应用,主要用于解决各种具体的工程和交互问题。

根据国外的发展历史和近几年MATLAB在中国的发展趋势,可以预见其在不久的将来,将会在科学研究和工程应用领域发挥越来越大的作用。

1.2国内外研究现状

音乐合成技术是语音合成技术的一个分支。

国外对于语音合成的研究已长达200多年,虽然研究时间长但是显著的研究成果是在计算机技术和数字信号处理技术发展之后才出现的,主要表现为让计算机能够输出高清晰度和自然度的连续音乐。

近几十年,该技术在国内外的研究重点为规则文语转化,也就是将书面语转化为口语。

在语音合成技术的历史发展过程中,早期研究主要应用参数合成法。

其中最具意义的就是Holmes的并联共振峰合成器(1973)和Klatt的串/并联共振峰合成器(1980),这两个合成器只需要细致的参数调节即可合成自然的语音。

美国DEC公司的DECtalk,是当时最具代表性的文语转换系统,它就是搭载串/并联共振峰合成器,从而使得人机交互有了更大的便捷和可能,该系统可以通过计算机联网或者接入电话网来提供各项语音服务,不仅发音标准清楚,而且还具备7种不同的音色,受到了当时的广泛追捧。

但是后来人们发现,共振峰合成器尽管可以提供逼真的合成语音,但是其音质却因为提取共振峰参数的困难存在较大的缺陷,并不能满足当下需求。

因此在不断的研究下,语音合成技术又有了新的发展——基音同步叠加(PSOLA)方法(1990)。

这项技术基于时域波形的拼接,大大提高了合成音乐的音色和自然度,因此在九十年代初受到了广泛的关注,包括法语、英语、日语、德语等在内的文语转换系统都被成功开发研制出来,而且此项技术结构简单易于实时实现,有着非常美好的商用前景。

近年来的研究,也开发出一种基于数据库的新的语音合成方法。

该数据库为预先录下的庞大语音数据库,每个合成语句的语音单元都能从数据库中进行调取和拼接,因此只要数据库足够庞大,那么理论上任何语音都可以被合成出来且具有不同语境下的语气和音调差别,清晰度和自然度将会有质的提升!

1.3本文主要研究内容

在本设计中,MATLAB软件通过对音乐信号频率与时长的分析与组合来简单合成音乐。

频率表现音调,时长体现时长,基于该基础MATLAB在编程中能够存储音乐的频率和时长,并且通过将正弦波形的不同叠加与包络设置来仿真实现音乐的音调与节奏的变化。

主要特色:

1、直观而集中的显示各运行参数,能分析音乐合成的运行。

2、参数便于修改,从而方便改变音色和音调。

论文的主要结构分为五个部分:

第一章为绪论,简单介绍了选题背景和意义,同时介绍了国内外关于语音合成的研究状况,也描述了本文的主要研究内容和方向;

第二章是介绍了一些合成算法,本文的研究算法是从这些算法中综合而来;

第三章是简单音乐合成的设计思路,同时对基本原理进行了分析;

第四章是仿真实验部分,介绍了本文的实验成果;

第五章是总结;

最后部分是致谢。

1.4MATLAB的发展史

MATLAB由美国NewMexico大学CleveMoler教授编写并命名,起初他是为了方便学生调用EISPACK和LINPACK从而编写了其接口软件。

MATLAB的便捷性使其之后成为了国内外许多大学的教学辅助软件。

1984年,CleveMoler和JohnLittle创建了MathWorks并推出了第一版MATLABDOS,核心使用C语言编写。

随着MATLAB的不断发展,20世纪90年代末推出了MATLAB5.x版本,功能更加强大,能处理更多的数据结构。

2000年,MATLAB6.0出现,操作界面有了三个窗口:

程序、历史信息及变量管理,而FFTW系统的应用使得其计算速度上了一个台阶。

一年后(2001),MATLAB6.1及Simulink4.0相继问世,功能更强大的MATLAB6.5也在2002年推出。

2004年,MATLAB7.0版本发行,优化了编程环境、数据可视化、计算和文件I/O等方面的功能。

此后几年,MATLAB7.1~7.14也不断更新迭代,性能不断优化,功能不断完善。

近几年推出的MATLAB2012b(8.0版)及MATLAB2013a相较之前有了较大的改变,主窗口中工具条替代了菜单和工具栏显得更加齐整和简洁,帮助文档在搜索、浏览和筛选功能上也有了大幅度的提升。

MATLAB2014a和MATLAB2014b版本也在之后推出。

本设计使用的是MATLAB2013a,它功能强大而且方便快捷。

1.5MATLAB音乐合成的原理 

 

1.4.1所涉及的乐理知识简述 

音乐合成过程中不可避免需要考虑音乐的三大特性:

音调、响度、音色。

音调就是音的高低,其主要影响因素为声波的频率。

响度为音的强弱,其主要影响因素为声波的振动幅度。

音色是声音的感觉特性,其变化是由音乐波形中谐波的作用产生的。

1.4.2 

音调与唱名 

音乐曲谱中所对应的的1( 

do)、2( 

re)、3(mi)、4(fa)......即为唱名,每个唱名代表着各自独特的基波频率,但是要确定其基波频率必须先确定音调。

如,乐谱为1=C,代表音调为C调则“1( 

do)”的基波频率是261.6Hz,若乐谱为1=E则“1( 

do)”频率是239.6Hz,乐谱为1=G则“1( 

do)”的频率是392.1Hz。

1.4.3音色与谐波 

在专业术语中,“泛音”指谐波,音调确认后可以确定唱名的基波频率,但是谐波频率的却无法确定。

乐器不同,所发出声音的音乐也不同,这是因为不同乐器会产生不同的谐波成分和频谱结构。

不仅如此,不同乐器多产生的音乐包络波形也迥乎不同,在合成音乐时常将音乐的复杂包络函数直线化,这是便于用程序来表示波形包络,因而常呈折线型。

1.4.4十二平均律 

十二平均律,是指将音乐的八度按照频率等比例地分成十二份,是一种音乐定律的方法。

它被广泛应用在键盘乐器与交响乐队中,因为它不仅与“五度相生律”发音相似,而且能轻松解决转调问题。

国际标准音的规定显示,相邻的半音之间的频率之比定为2^(1/12)≈1.059,钢琴就是所有乐器中应用该规律的最常用乐器。

其琴键a1的频率规定为440Hz,所以根据国际标准音规定就可以算出钢琴其他所有琴键所对应的频率。

如,与a1左边相邻#g1频率是440/1.059=415.03Hz,与a1右边相邻的半音#a1的频率是466.16Hz,也可以算出不同音调下“1(do)”的对应的基波频率,即C:

261.63Hz 

,F:

349.23Hz和G:

392Hz 

等 

1.4.5傅里叶变换与频谱分析 

音调、响度、音色,因此必须了解音乐的基波、谐波频率成分以及包络的形状特征。

应用傅里叶变化理论对音乐信号的频谱结构进行分析处理,有利于提取其频谱特征。

现代信号频谱的主要分析方法为有限长序列的离散傅氏变换(DFT),它能够将频域也离散化。

N点DFT实质上是其频谱的离散频域采样,对频率具有选择性(ωk=2πk/N),在这些点上反映了信号的频谱。

N点DFT虽然能克服时间域与频率域之间相互转换的计算障碍,但是其计算量大计算复杂。

因此引用快速傅里叶变化(FFT)算法最简单、编程最容易的基2FFT,还有基4FFT、基8FFT等快速算法。

采样定律说明,FFT变换相当于对有限长序列进行频域采样,计算速度快而且也不会丢失信息,具有双重作用。

所以只要时域序列的长度足够长,采样的点数足够多,频域采样也可以很好地反映信号的频谱趋势,基于以上优点,在设计中可以用FFT进行语音信号的频谱分析。

第2章音乐合成的相关算法

音乐合成是语音合成的一种,因此语音合成的算法思路可以直接运用于音乐合成中。

对于语音合成的研究已经到了一个比较深入的阶段,也出现了多种不同的算法,但是归结起来,主要是两个大的方向,其中一种是通过统计学建立声学模型来进行语音合成,另一种是挑选语音的特征参数来识别并合成新的语音。

2.1基于统计声学模型的合成算法

这种算法的思路是在模型训练阶段,首先提取语料库中语音数据的频谱、基频等声学相关指数,与统计声学模型可以用于匹配之前和之后的内容,并通过语料库中音位以及韵律予以注释。

使用的模型结构为隐马尔柯夫模型。

当进入到合成阶段时,以使目标合成句对应的声学模型具有最大的似然值输出为准则,来进行最佳合成单元的挑选,最后通过平滑连接各备选单元波形来生成合成语音。

其核心在于对录入过程中中,对待合成字符产生的研究数据,需要将匹配的单元从前期进行录制的语料库中进行筛选,得到的结果为由波形进行编辑而成的语音成品。

这种效果制作的语音成品相比普通算法在自然度上有所超越,原因在于波形自身便具备自然的特性。

前期筹划的语料库的内容越广泛,自然度的优势就越明显,甚至会影响到语音合成未来的前进发展问题。

随着对语音合成技术的不断探究,目前以隐马尔柯夫模型作为主流算法,并且得到快速的推广。

类似统计建模的统计模型,范围在语音识别方面以获得广泛推广。

在这种参数的操作原理中,即是在参数合成的方式以统计模型为主,声学模型为辅的方式进行模拟,其中参数生成的方式为最大似然,通过对生成语音成品需求的频谱和韵律进行评估,再通过参数合成的方式转化语音。

以这种方式为原则,将提升系统的应用性,在运算期间,可以无视语种的区别以及进行自动化训练,最终使综合的自然度质量提高。

通常在自动化训练环节,在前期筹备的语料库里,可针对音素声学参数匹配音段、韵律进行内容注释,对HMM模型中之前和之后的内容进行信号频率、基频和时间长度进行训练。

在最后的合成环节,需要进行录入文本的解析,才可获取目标合成句中所有语音最小单位进行上下内容的注释,测试已优化好的模型与声学模型的匹配程度。

可以参照Kullback-Leibler算法原则进行单元的选择和MLE算法原则下进行单元值的选择,生成的最终单元序列可达到合成语音的平滑输出。

详细训练算法以及合成算法如图2.1所示。

图2.1基于统计声学模型的合成算法

2.2基于离散变换的合成算法

这种算法是在离散变换域中合成语音信号,建立语音线性预测模型,信号经过加窗后随着信号帧推进逐一展开处理,随之对语音取样值的线性组合进行预测以及运行基音检测算法择取语音帧,对语音信号进行模拟重建。

其主要特质为,通过对样本进行频率滤除,进而通过预测器进行预测,以语音线性预测模型进行优化,以达到控制信号的带宽,加窗后随着信号帧推进逐一展开处理,音频的重构合成将在声道模型中进行。

采用此种算法的亮点在于传输能力方面要好过模拟信号。

通常情况下,信号在转换过程中需要将模拟变为数字,而语音信号也不例外,作为对语音信号进行重构合成的变换域(即Z域),就是由离散系统转变而成。

2.3本文算法

通过结合实际情况,本文的算法思路是:

首先利用相关的语音处理函数进行简单的音乐合成,对音乐进行降噪、加谐波以及升降度处理;

然后用傅里叶变换分析经相应处理后的各音乐频谱;

最后运用傅里叶级数的原理来再次合成音乐针对语音音频进行对应的优化合成,对音乐频率中产生的噪音、非正弦电量、音调等参数进行分析优化。

采用此种的亮点在于,方便快捷,可以使普通音频合成的效果显著。

只不过,如果面对非常复杂的音频,就会出现诟病。

在噪音、音调等方面受到阻碍。

下文将着重通过博里叶技术变化进行剖析,证明此种方法的合理性。

第3章基于MATLAB的简单音乐合成设计

本章主要简单音乐合成设计,并对设计的基本原理进行分析,在介绍之前先对MATLAB进行一个简介。

3.1MATLAB简介

Matlab为缩写的英文名,而它中文命名为矩阵实验室(MATrixLABoratory),(矩阵实验室)的缩写。

在1979年的时候,克里夫•莫勒尔正在为美国新墨西哥大学任教,当他在授课的时候,希望自己的学生可以运用EISPACK和LINPACK进行运算,当时他发现自己的学生在对接口进行编程经常要花费大量精力,给运算带来极大的不便。

为了解决这一问题,方便学生的运算,他便自己编写出程序库的接口程序,并且根据程序库的运算方式命名为矩阵实验室。

雏形时期的Matlab是用FORTRAN语言进行简编,用途比较单一,因为无偿使用又在学生中有良好的口碑,经常被各个大学所应用。

工程师JohnLittle敏锐地觉察到Matlab在工程领域的广阔前景。

同年,他和CleveMoler、SieveBangert一起合作成立了公司。

以C语言开发使之成为专业进行数据运算以及图表显示功能的专业软件。

在九十年代初期,公司不断对Matlab进行更新、升级、换代,使之成为多功能化计算软件,在软件超凡的数据运算能力为前提,增加了符号运算以及模拟建模等功能。

使编程更方便。

1999年初推出了的5.3版本在很多方面又进行了进一步改进。

2001年7月,MathWorks公司退了Matlab最新版本6.1版,6.1版对计算机配置要求比较高。

之后又推出了7.0版本。

现在用户用的最多的是7.0版本。

截止到目前,Matlab已经逐步成为专业功能更强大的软件,它所具备的灵活运算能力以及通俗易懂的语言使之更为实用,其中在各个国家知名大学中被普及应用,并受到广泛的好评。

主要运用于数学、机械自动化、自然科学、工程科技、测量测绘等多种学科,是众多学科专家教授以及学生都需要必备的应用软件,并在一些更为专业的学术部门被普及运用,进行专业性的科研开发。

在国内的科研项目之中,Matlab也被普遍应用,而本文中主要需要Matlab的通讯处理和仿真模式。

Matlab的计算功能分两个方面,一方面是数值计算,一方面则以针对数据中的符号计算进而提供分析数据,对于精度以及解析进行求解。

另外它包含的函数内容以及函数算法等兼容性较强,算法公式为经过专业计算专家进行审核认可,并经过精心设计。

另外,对于符号计算的分析功能也十分强大,在通过与MAPLE软件进行强强联手,并以其明显的功能优势成为计算软件中的主流软件。

Matlab在制图方面的功能也非常完整,可进行两种层次的制图进行操作:

首先可以对图形变量进行低层制图,再次也可以在此基础上进行高层制图。

尤其是在高层制图方面,不仅在制图的功能上比较丰富,在操作上设计中也合理便捷。

图片的变量在绘制过程中可随意的进行控制。

此外,Matlab的额外亮点还在于它会用户提供的工具箱,在进行基础的计算制图等功能时,可使用基础款工具,就完全能满足需求。

而在扩展工具箱中,包括功能、学科等多种针对性操作工具,例如:

模拟建模、符号处理、系统操作、通讯信号、金融数据等多种专业性工具。

Matlab能够在数据计算软件中占据主流的位置,在科研单位以及高校各学科中得到如此的普及运用得益于它的可视化图表、数值运算、算法测试等。

其中包含Matlab和Simulink,两者可以将诸多专业性工具可视化图表、数值运算、模拟建模等在软件视图内进行优化,以达到更高的客户体验。

主要运用于数学、机械自动化、自然科学、工程科技、测量测绘等多种学科。

Matlab的主要特点分析如下:

1.编程语言简单,应变能力强大;

依靠其种类繁多、数量大、涉及范围较广的数据库,可以通过便利的函数应用进行制作测试,对初学者基本无太多要求,而且非常容易上手。

2.用户体验良好,在Matlab能将基础功能进行掌握之后,基本对程序调试也非常熟练

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 解决方案 > 学习计划

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2