当前位置:文档之家› 基于Matlab的音乐生成研究

基于Matlab的音乐生成研究

基于Matlab的音乐生成研究
基于Matlab的音乐生成研究

实验研究

0 前言

近年来在网络上出现了许多虚拟歌姬,例如索尼的虚拟歌姬索尼子,以卡通、CG形象角色展现,结合声音由语音合成引擎(例如VOCALOID 2)为基础开发的虚拟歌手软件角色。最近腾讯视频也推出了《明日之子》节目,节目中惊现二次元虚拟选手“荷兹HeZ”,荷兹HeZ以一首原创歌曲《罐头》参赛,一出现就引起了广大网民的纷纷讨论。由此可见,音乐合成具有很大的娱乐意义。

音乐合成作为语音信号处理的一部分,属于Matlab软件的重要应用领域之一,Matlab具有强大的绘图和计算能力,掌握Matlab软件的使用,为今后电子信息方向的研究奠定了基础,于是便希望能自己动手操作在计算机上基于Matlab实现对自己喜欢的音乐的合成。

1 音乐生成技术的发展概述

计算机音乐[1],顾名思义,就是指利用计算机软件并配合MIDI键盘制作出开的音乐,他既能合成并表现音乐,同样也是一种新的音乐表现形式,近几年在国内外尤其火热。在我国近几年,计算机音乐也同样成为了一股潮流。

■1.1 音乐生成技术的萌芽

早期的游戏音乐不像现在可以使用CD级别音质的高品质录音,因为当时的游戏机没有足够的技术支持。所以游戏音乐就需要合成,设计师们必须将基本的声音合成引擎植入到游戏机的硬件当中。芯片音乐由此产生,这也就是音乐生成技术的萌芽。

■1.2 Matlab在音乐生成

Matlab(矩阵实验室)是MATrix LABoratory的缩写,其可用于算法开发,数据可视化,数据分析以及数值计算等等许多方面,是一款非常优秀的科技应用软件。

针对不同乐器演奏的音乐,用音频软件进行分析,可以得到不同乐器的音频信号的差别,然后便可通过Matlab对于音频信号进行模拟,来得到不同乐器的声音,实现虚拟演奏。

2 音乐生成研究的背景及意义

■2.1 音乐生成的研究背景

电脑音乐技术的应用领域非常广泛,例如音乐创作,音乐教育和乐谱制作等,并大大提高了音乐的创作和制作的效率。同时人们对作曲,演奏的流程得以简化,并且可以参与创作和制作,能聆听欣赏自己创作的音乐。现代科技使得每个人成为音乐家的这个梦想得以成真。这有利于对音乐以及计算机技术的普及和推广,对未来的发展有着不可估量的作用。

■2.2 音乐生成的娱乐意义

目前随着技术的进步和发展,已经出现了许多虚拟歌手,在这其中最有名的是初音未来。它是由CRYPTON FUTUREMEDIA利用YAMAHA的VOCALOID系列语音合成程序进行卡法的音频源。这款软件为人工合成技术带来了巨大变革,但有些部分仍需要进一步完善。“虚拟歌姬”和“赫兹HeZ”虚拟歌手的出现,也给娱乐圈带了了很大活力,由此可见,音乐合成的研究具有巨大的娱乐意义。

■2.3 音乐生成对音乐创作的意义

传统的音乐创作是一个长期的,复杂的,需要多方合作的一项工作。然而通过计算机生成音乐,作曲家自己一个人便可完成这项工作,同时也可在创作过程中更好地体现自己的音乐思想。制作人在创作过程中也可不断的对自己的音乐进行修改,创作音乐的效率便得到了提高。

3 音乐生成的研究方法

■3.1 实现音乐生成

Matlab中实现音乐的播放可由sound 函数实现,其中有三个变量(Y,fs,bits)分别代表着输入信号、采样率、比特率。此处采样率的设置为fs=44100.输入信号Y一般是一个正弦波,如A·sin(2·pi·w·t)。其中A控制着声音的大小,w控制着声音的高低,t的范围控制着声音的长短。比特率采用默认值。此处不涉及对声音音色与音质的编辑。

声音的频率如表1所示,音高和频率是指数的关系,他们满足下面的关系,p是音高,f是频率。f=440x2(p-69)/12,音高每上升一个半音,p+1。

通过对以上知识的了解,我们便可以利用matlab来创作音乐了。

基于Matlab的音乐生成研究

张子豪

(徐州市撷秀中学,江苏徐州,221000)

摘要:本论文介绍了音乐生成技术的历史以及广阔的应用领域,通过查阅音乐十二平均律知识,并借助matlab软件进行了研究和设计,完成了对于歌曲despacito基于matlab的初步合成。同时,还对歌曲的音色方面因素,进行了分析与探讨,对进一步的深入研究提供了发展方向。关键词:Matlab;音乐合成

www?ele169?com | 27

28 | 电子制作 2018年8月

实验研究

表1 声音的频率

■3.2 傅里叶级数实现音乐生成要想实现音乐的合成,首先应了解声音的三个特性:音

调,响度和音色[2]。

音调就是音的高低,影响音调的主要因素即声波的频

率。响度是音的强弱,影响响度的主要因素即声波的振动幅度。音色的变化是由音乐波形中谐波的作用产生的,不同的乐器会有不同的音色,所以谐波也各不相同。

3.2.1 音调

每一首乐曲都有一个音调,每个唱名(do re mi)并

未固定基波频率,音调则确定了乐曲中等唱名的基波频率值。例如乐谱为1=C,代表着音调为C 调则“1( do)”的基波频率是261.6Hz,若乐谱为1=E 则“1( do)”频率是239.6Hz,乐谱为1=G 则“1( do)”的频率是392.1Hz,“3

(mi)”的频率是493.9Hz。

3.2.2 音色

音色的不同是由于谐波的作用产生的,在音乐领域中我

们往往把谐波称作泛音。当我们确定了乐谱的音调之后,我们仅仅指定了唱名的基波频率,而听不出来声音是由什么乐器发出的,仅仅只有单调的do re mi。而且不同乐器,他的包络波形也各不相同。由于音乐的包络波形十分复杂,我们会将复杂的包络函数近似直线化,所以音乐波形的包络通

常都是折线型。

3.2.3 十二平均律

十二平均律[3],又称十二等程律,是一种音乐的定律方

法,将一个八度平均分成十二等份,每等分称为半音,是最主要的调音法。由于“五度相生律”和“十二平均律”发音非常相似而且十二平均律能够解决转调问题,所以,它被广泛应用在键盘乐器与交响乐队中。为了便于分析以上三个特征,我们就需要对信号的频谱

进行分析,也就是利用傅里叶变换,得出该音乐信号的频谱结构,提取它的频谱特征。

要想合成一段音乐,需要了解该段音乐的基波频率、谐

波构成等。因此必须进行傅里叶分析[4]。对于连续的时间信号f(t),其傅里叶变换为

()()F w j t

f t e

dt ∞

ω∞??

=

∫。由于计算机擅长处理离散化的数据,

因此需要进行离散傅里叶分析。

如果f(t)的主要取值区间为[t1,t2],定义T=t2-t1位=为

区间长度。在该区间取N 个抽样点,抽样间隔为T t N

?=,则有:

()()()

()()

1

1

1100

11N N j t n t j t n t n n F w f t n t e

t t f t n t e

ωω???+??+?===+??=??+?∑∑利用该公式,可以计算任意频点的傅里叶变换值。4 乐谱解析原理

本实验选取歌曲despacito 进行解析并合成创作。首

先来介绍一下乐谱的一些基本知识,如图1所示:歌曲本身的节拍为四分之一拍,音符下有一条横线的为八分之一

拍,两条横线即为十六分之一拍,节拍可理解为速率。在每个音符的下方的小黑点表示音调降一个八度,两个则表示降两个八度。

每个音符后方的小点表示这个音符再重复一遍但提高

了一个节拍(如四分之一拍变为八分之一拍)。而如果音符

后是一个横线,则表示这个音符再重复一遍,节拍相同。

图1 Despacito 乐谱图[5]

因为本首歌曲曲调为D 调,所以根据方法,首先A =440Hz。12个半音阶相邻关系是≈1.0594631)然后B =440Hz x 1.0594631

B =466.16Hz x 1.0594631 = 493.88Hz

C =493.88Hz x

1.0594631 = 523.25Hz 所以D=554.36Hz。

实验研究

5 音乐生成实验

本实验以matlab为基础进行设计。

采样率fs = 44100;

dt = 1/fs;

因为歌曲为D调,所以定f0 =554.36Hz。

为了使音乐的音质听起来更加好听,我们将表示纯声音的sin函数与mod函数相结合。函数为:

mod4=(t4.^4).*exp(-30*(t4.^0.5));

mod4=mod4*(1/max(mod4));

mod8=(t8.^4).*exp(-50*(t8.^0.5));

mod8=mod8*(1/max(mod8));

mod16=(t16.^4).*exp(-90*(t16.^0.5));

mod16=mod16*(1/max(mod16));

f0 = 554.36;

然后我们将歌曲中的音符进行分类:四分之一拍的,八分之一拍的,和十六分之一拍的。每种节拍中包含八种音调,分别为0(休止符)、1、2、3、4、5、6、7、。在计算机语音中用blkf do re mi fa so la ti来进行表示。如果简谱音符的下方有一个小点,则为do0 没有则为do1 如果音符上面有一个小点则为do2。同时如果音符为四分之一拍,以四分之一拍的1音为例,其为do1f。八分之一拍的最后一个字母则为e,十六分之一拍为s。

全分类如下:

% 1/4 notes

do0f = mod4.*cos(2*pi*ScaleTable(21)*f0*t4);

re0f = mod4.*cos(2*pi*ScaleTable(22)*f0*t4);

mi0f = mod4.*cos(2*pi*ScaleTable(23)*f0*t4); ……

% 1/8 notes

do0e = mod8.*cos(2*pi*ScaleTable(21)*f0*t8); re0e = mod8.*cos(2*pi*ScaleTable(22)*f0*t8); mi0e = mod8.*cos(2*pi*ScaleTable(23)*f0*t8); ……

% 1/16 notes

do0s = mod16.*cos(2*pi*ScaleTable(21)*f0*t16); re0s = mod16.*cos(2*pi*ScaleTable(22)*f0*t16); mi0s = mod16.*cos(2*pi*ScaleTable(23)*f0*t16); ……

接下来输入歌曲的每个音符,使用sound函数播放,歌曲就制作完毕了。

6 结语

本论文完成了对于歌曲despacito的合成,在实验过程当中,我查阅了大量资料,了解了12平均律,并根据其计算出了D调的频率为554.36Hz(与目前网上最普遍采用的440Hz不同),这样音调的频率更加符合原曲的声音,听起来更加好听。同时还学习了简单的乐理知识,对乐谱进行了解析。最后利用matlab软件完成了歌曲的合成。

参考文献

* [1] https://https://www.doczj.com/doc/a29541004.html,/item/%E7%94%B5%E8%84%91 %E9%9F%B3%E4%B9%90

* [2]罗湘娟, 陈丽, 谢超. 基于MATLAB的音乐分析与合成研究[J]. 科技经济导刊, 2017(15).

* [3]https://https://www.doczj.com/doc/a29541004.html,/zh-hans/%E5%8D%81%E4%BA% 8C%E5%B9%B3%E5%9D%87%E5%BE%8B

* [4]李敏, 张维维, 姜明新,等. 基于MATLAB的音乐分析与合成实验设计[J]. 大连民族大学学报, 2010, 12(3):269-271.

* [5] https://www.doczj.com/doc/a29541004.html,/jipu/p293051.html

的进展。

参考文献

* [1]张忠宝.关于人脸识别技术在商业银行方面的应用——基于计算机视觉[J].计算机光盘软件与应用,2012,15(20):61-62.

* [2]李东.计算机视觉技术在工业领域中的应用[J].电子技术与软件工程,2017,(16):147.

* [3]张瑞宇,刘顺淑.计算机视觉技术在果蔬采后处理中的应用[J].重庆工商大学学报(自然科学版),2004,(05):497-501+506.* [4]陈鸿翔.基于卷积神经网络的图像语义分割[D].浙江大学,2016.

* [5]吴正文.卷积神经网络在图像分类中的应用研究[D].电子科技大学,2015.

* [6]张珂.图像语义分割算法研究[D].复旦大学,2014.

* [7]汤德俊.人脸识别中图像特征提取与匹配技术研究[D].大连海事大学,2013.

* [8]汪济民.基于卷积神经网络的人脸检测和性别识别研究[D].南京理工大学,2015.

(上接第31页)

www?ele169?com | 29

MATLAB中产生高斯白噪声

MATLAB中产生高斯白噪声,涉及到awgn和wgn函数 MATLAB中产生高斯白噪声非常方便,可以直接应用两个函数,一个是WGN,另一个是AWGN。WGN用于产生高斯白噪声,AWGN则用于在某一信号中加入高斯白噪声。 1. WGN:产生高斯白噪声 y = wgn(m,n,p) 产生一个m行n列的高斯白噪声的矩阵,p以dBW为单位指定输出噪声的强度。 y = wgn(m,n,p,imp) 以欧姆(Ohm)为单位指定负载阻抗。 y = wgn(m,n,p,imp,state) 重置RANDN的状态。 在数值变量后还可附加一些标志性参数: y = wgn(…,POWERTYPE) 指定p的单位。POWERTYPE可以是'dBW', 'dBm'或 'linear'。线性强度(linear power)以瓦特(Watt)为单位。 y = wgn(…,OUTPUTTYPE) 指定输出类型。OUTPUTTYPE可以是'real'或 'complex'。 2. AWGN:在某一信号中加入高斯白噪声 y = awgn(x,SNR) 在信号x中加入高斯白噪声。信噪比SNR以dB为单位。x的强度假定为0dBW。如果x是复数,就加入复噪声。 y = awgn(x,SNR,SIGPOWER) 如果SIGPOWER是数值,则其代表以dBW为单位的信号强度;如果SIGPOWER为'measured',则函数将在加入噪声之前测定信号强度。y = awgn(x,SNR,SIGPOWER,STATE) 重置RANDN的状态。 y = awgn(…,POWERTYPE)指定SNR和SIGPOWER的单位。POWERTYPE可以是'dB'或'linear'。如果POWERTYPE是'dB',那么SNR以dB为单位,而SIGPOWER以dBW为单位。如果POWERTYPE是'linear',那么SNR作为比值来度量,而SIGPOWER 以瓦特为单位。 注释 1. 分贝(decibel,dB):分贝(dB)是表示相对功率或幅度电平的标准单位,换句话说,就是我们用来表示两个能量之间的差别的一种表示单位,它不是一个绝对单位。例如,电子系统中将电压、电流、功率等物理量的强弱通称为电平,电平的单位通常就以分贝表示,即事先取一个电压或电流作为参考值(0dB),用待表示的量与参考值之比取对数,再乘以20作为电平的分贝数(功率的电平值改乘10)。 2. 分贝瓦(dBW, dB Watt):指以1W的输出功率为基准时,用分贝来测量的功率放大器的功率值。 3. dBm (dB-milliWatt):即与1milliWatt(毫瓦)作比较得出的数字。 0 dBm = 1 mW 10 dBm = 10 mW 20 dBm = 100 mW 也可直接用randn函数产生高斯分布序列,例如: 程序代码 y=randn(1,2500); y=y/std(y);

matlab声音处理

读取音乐信号并将信号转换为单声道的,并输出信号的波形图和频谱图,播放音乐信号,注意不同抽样率下的音调变化。 1. 源程序 [w,fs,bit]=wavread('天路.wav');//获取音乐信号 wav=(w(:,1))';//获取单声道信号 sound(w,fs)//播放音乐信号 figure;//画音乐信号波形 subplot(2,1,1);plot(wav); fwav=fft(wav);%对音乐信号做傅里叶变换 lwav=round(length(fwav)/2);%信号长度去一半 nwav=[0:lwav-1]; wwav=nwav/(lwav);f=wwav/2*fs; subplot(2,1,2);%画频谱图 plot(wwav,abs(fwav(1:lwav))); 3,输出波形 2 4 6 8 10 12x 10 4 -0.4 -0.200.2 0.40 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 050010001500 2000

音乐信号的滤波去噪 1,实验内容 读取音乐信号,输出原始信号的波形和频谱,将三余弦的混合噪声加在音乐信号上,用巴特沃斯IIR滤波器进行滤波,观察滤波后的音乐信号;再将白噪声加在原始的音乐信号上,用矩形窗进行滤波,观察滤波后的音乐信号。 2,源程序 [w,fs,bit]=wavread('天路.wav'); wav=(w(:,1))'; sound(w,fs) figure; subplot(2,1,1);plot(wav); fwav=fft(wav); lwav=round(length(fwav)/2); nwav=[0:lwav-1]; wwav=nwav/(lwav);f=wwav/2*fs; subplot(2,1,2); plot(wwav,abs(fwav(1:lwav))); sf1=3000;l=length(wav);T=1/fs; t=0:T:(l-1)*T; s1=0.05*cos(2*pi*sf1*t); wav_s1=wav+s1; sound(wav_s1,fs) fwav_s1=fft(wav_s1);f_s1=fft(s1); figure;title('余弦噪声') subplot(2,1,1);plot(s1); subplot(2,1,2);plot(wwav,abs(f_s1(1:lwav))); figure;title('加噪信号') subplot(2,1,1);plot(wav_s1); subplot(2,1,2);plot(wwav,abs(fwav_s1(1:lwav))); T=1; Wp=2/T*tan(0.2*pi/2);Ws=2/T*tan(0.3*pi/2); Rp=1;Rs=60; [N,Wc]=buttord(Wp,Ws,Rp,Rs,'s'); [B,A]=butter(N,Wc,'s'); [C,D]=bilinear(B,A,1/T); W=0:0.001*pi:0.5*pi; H=freqs(B,A,W); Hd=freqz(C,D,W); figure; subplot(3,1,1);plot(W/pi,abs(H)); title('模拟巴特沃斯滤波器'); xlabel('Frequency/Hz');

matlab音乐合成葫芦娃

目录 音乐合成实验................................................................................................. 错误!未定义书签。 摘要: (1) 第一部分简单的合成音乐 (1) 1.1合成《葫芦娃》 (1) 1.2 除噪音,加包络 (5) 1.3改变程序,实现1.2中的音乐升高和降低一个八度 (8) 1.4在1.2的音乐中加入谐波 (9) 摘要: 本文共有三大部分:第一部分,简单的音乐合成;第二部分,用傅里叶变换分析音乐;第三部分,基于傅里叶级数的音乐合成。由潜入深,一步一步分析了用MATLAB进行音乐合成的过程。通过本实验达到了加深对傅里叶级数和傅里叶分析的理解,熟悉对MATLAB 基本使用的目标。 第一部分简单的合成音乐 1.1 合成《葫芦娃》 根据《葫芦娃》第一小节的简谱和十二平均律计算出该小节每个乐音的频率,在MATLAB中生成幅度为1,抽样频率为8kHz的正弦信号表示这些乐音,用sound播放合成的音乐

而在MATLAB中表示乐音所用的抽样频率为fs=8000Hz,也就是所1s钟内有8000个点,抽样点数的多少就可表示出每个乐音的持续时间的长短。用一个行向量来存储这段音乐对应的抽样点,在用sound函数播放即可。 clear all;clc; freq=8000; %抽样频率 T=1/freq; pattime=0.5; %节拍的时间 note2=0:T:2*pattime; note4=0:T:1*pattime; note8=0:T:0.5*pattime; note_1=261.63; %各个音乐对应的频率 note_2=293.67; note_3=329.63; note_5=391.99; note_6=440; note_7=493.88; note_1b=523.25; wave1=sin(2*pi*note_1*note4); %各个音符所对应的节拍 wave2=sin(2*pi*note_1*note4); wave3=sin(2*pi*note_3*note2); wave4=sin(2*pi*note_1*note4); wave5=sin(2*pi*note_1*note4); wave6=sin(2*pi*note_3*note2); wave7=sin(2*pi*note_6*note4); wave8=sin(2*pi*note_6*note4); wave9=sin(2*pi*note_6*note8); wave10=sin(2*pi*note_5*note8); wave11=sin(2*pi*note_6*note4); wave12=sin(2*pi*note_5*note4);

Matlab处理声音文件

Matlab处理声音文件 摘要:《信号与系统》这门课是大多数工程类课表中的一个重要组成部分,在学 习《信号与系统》这门课时,我们需要熟练地应用Matlab来采集和处理音频信号,图像信号等并绘出它们的波形和频谱。利用Matlab我们可以灵活方便地分析和处理声音文件。本文介绍了用Matlab处理声音文件的基本流程,并绘制了音频信号的相关波形和频谱。 关键词:Matlab 音量标准化声道分离数字滤波数据转换 引言:MA TLAB是美国Math Works公司推出的一种面向工程和科学计算的交互 式计算软件。它以矩阵运算为基础,把计算、可视化、程序设计融合在一个简单易用的交互式工作环境中,是一款数据分析和处理功能都非常强大的工程实用软件。本文主要介绍Matlab在处理简单声音文件方面的使用。 正文: 1.设计要求:(1)了解语音信号的特点; (2)掌握数字滤波器的参数选择及设计方法; (3)掌握数字滤波器的应用方法及应用效果; (4)提高Matlab下的程序设计能力及综合应用能力。 2.系统的组成及工作原理 分析和处理声音文件,首先要对声音信号进行采集,MATLAB 的数据采集工具箱提供了一整套命令和函数,通过调用这些函数和命令,可直接控制声卡进行数据采集。Windows自带的录音机程序也可驱动声卡来采集语音信号,并能保存为W A V格式文件,供MATLAB相关函数直接读取、写入或播放。本文以W A V格式语音信号作为分析处理的输入数据,用MA TLAB处理声音文件的基本流程是:先将W A V格式语音信号经wavread 函数转换成MA TLAB列数组变量;再用MA TLAB强大的运算能力进行数据分析和处理,如时域分析、频域分析、数字滤波、信号合成、信号变换、识别和增强等等;处理后的数据如是音频数据,则可用wavwrite转换成W A V格式文件或用sound、wavplay等函数直接回放。 3.实验内容,调试及测试结果 (1)音量标准化 在实际录制语音信号的过程中常有音轻问题,因此在录制声音过程中需要对声音电平进行量化处理,使音量实现标准化。利用Matlab很容易实现音量标准化,即最大电平对应最高量化比特。基本步骤是:1.利用wavread函数将W A V文件转换成列数组变量:2.求出数组变量的极值并对所有元素作归一化处理;3.用wavwrite函数还原成音量标准化的WA V文件。 以微软自带的“Windows 拨出电话声.wav”语音信号为例,先将其复制另存到文件名为XPexit.wav的Matlab当前目录中,再通过音量标准化后保存为XPquit.wav文件。以下为其实现程序: clear; close all; clc; [Y,FS,NBITS]=wavread('XPexit.W A V');% 将WA V文件转换成变量 FS,NBITS,% 显示采样频率和量化比特

白噪声的测试MATLAB程序

白噪声的测试MATLAB程序 学术篇 2009-11-13 22:18:03 阅读232 评论0 字号:大中小订阅 clear; clc; %生成各种分布的随机数 x1=unifrnd(-1,1,1,1024);%生成长度为1024的均匀分布 x2=normrnd(0,1,1,1024);%生成长度为1024的正态分布 x3=exprnd(1,1,1024);%生成长度为1024的指数分布均值为零 x4=raylrnd(1,1,1024);%生成长度为1024的瑞利分布 x5=chi2rnd(1,1,1024);%生成长度为1024的kaifang分布%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %求各种分布的均值 m1=mean(x1),m2=mean(x2),m3=mean(x3),m4=mean(x4),m5=mean(x5) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %求各种分布的方差 v1=var(x1),v2=var(x2),v3=var(x3),v4=var(x4),v5=var(x5) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %求各种分布的自相关函数 figure(1);title('自相关函数图'); cor1=xcorr(x1);cor2=xcorr(x2);cor3=xcorr(x3);cor4=xcorr(x4);cor5=xcorr(x5); subplot(3,2,1),plot(1:2047,cor1);title('均匀分布自相关函数图'); subplot(3,2,2),plot(1:2047,cor2);title('正态分布'); subplot(3,2,3),plot(1:2047,cor3);title('指数分布'); subplot(3,2,4),plot(1:2047,cor4);title('瑞利分布'); subplot(3,2,5),plot(1:2047,cor5);title('K方分布'); %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %求各种分布的概率密度函数 y1=unifpdf(x1,-1,1); y2=normpdf(x2,0,1); y3=exppdf(x3,1); y4=raylpdf(x4,1); y5=chi2pdf(x5,1); %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %各种分布的频数直方图 figure(2); subplot(3,2,1),hist(x1);title('均匀分布频数直方图'); subplot(3,2,2),hist(x2,[-4:0.1:4]);title('正态分布'); subplot(3,2,3),hist(x3,[0:.1:20]);title('指数分布'); subplot(3,2,4),hist(x4,[0:0.1:4]);title('瑞利分布'); subplot(3,2,5),hist(x5,[0:0.1:10]);title('K方分布'); %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %各种分布的概率密度估计 figure(3);

matlab音乐处理合成实验报告

MATLAB高级编程与工程应用语音合成综合实验 姓名: 班级: 学号: 日期:

1.2.1 简单的合成音乐 (1) 请根据《东方红》片断的简谱和“十二平均律”计算出该片断中各个乐音的频率,在MATLAB 中生成幅度为1 、抽样频率为8kHz 的正弦信号表示这些乐音。请用sound 函数播放每个乐音,听一听音调是否正确。最后用这一系列乐音信号拼出《东方红》片断,注意控制每个乐音持续的时间要符合节拍,用sound 播放你合成的音乐,听起来感觉如何 由“十二平均律”计算得到各个乐音的频率: “5”——“C”: “6”——“D”: “1”——“F”: “2”——“G”:392Hz “6.”频率是“6”的一半: 代码:() f=8000; T=1/f; t8=0:T:1*; t4=0:T:2*; t2=0:T:4*; t1=0:T:8*; part1=sin(2*pi**t4); part2=sin(2*pi**t8); part3=sin(2*pi**t8); part4=sin(2*pi**t2); part5=sin(2*pi**t4); part6=sin(2*pi**t8); part7=sin(2*pi**t8); part8=sin(2*pi**t2); total=[part1,part2,part3,part4,part5,part6,part7,part8]; sound(total); 试听发现,合成后的音乐基本保持了《东方红》的音调,但声音比较沉闷,相邻乐音之间有比较明显的“啪”的杂音。 (2) 你一定注意到(1) 的乐曲中相邻乐音之间有“啪”的杂声,这是由于相位不连续产生了高频分量。这种噪声严重影响合成音乐的质量,丧失真实感。为了消除它,我们可以用图所示包络修正每个乐音,以保证在乐音的邻接处信号幅度为零。此外建议用指数衰减的包络来表示。 首先尝试用折线包络,编写函数生成所需折线: function envelope = envelope_line(t) envelope(1:floor(t/8)) = linspace(0,1,floor(t/8)); envelope(floor(t/8)+1:floor(t/4)) = linspace(1,,floor(t/4)-floor(t/8))); envelope(floor(t/4)+1:floor(3*t/4)) = linspace,,floor(t*3/4)-floor(t/4)); envelope(floor(3*t/4)+1:t) = linspace,0,floor(t)-floor(3*t/4)); 对中的部分代码进行修改,调用envelope_line实现折线包络:() part1=sin(2*pi**t4).*envelope_line(t4);

MATLAB数字音频处理

音频信号的处理 一、问题的提出:数字语音是信号的一种,我们处理数字语音信号,也就是对一种信号的处理,那信号是什么呢?信号是传递信息的函数。 一、问题的提出: 数字语音是信号的一种,我们处理数字语音信号,也就是对一种信号的处理,那信号是什么呢? 信号是传递信息的函数。离散时间信号%26mdash;%26mdash;序 列%26mdash;%26mdash;可以用图形来表示。 按信号特点的不同,信号可表示成一个或几个独立变量的函数。例如,图像信号就是空间位置(二元变量)的亮度函数。一维变量可以是时间,也可以是其他参量,习惯上将其看成时间。信号有以下几种: (1)连续时间信号:在连续时间范围内定义的信号,但信号的幅值可以是连续数值,也可以是离散数值。当幅值为连续这一特点情况下又常称为模拟信号。实际上连续时间信号与模拟信号常常通用,用以说明同一信号。 (2)离时间信号:时间为离散变量的信号,即独立变量时间被量化了。而幅度仍是连续变化的。 (3)数字信号:时间离散而幅度量化的信号。 语音信号是基于时间轴上的一维数字信号,在这里主要是对语音信号进行频域上的分析。在信号分析中,频域往往包含了更多的信息。对于频域来说,大概有8种波形可以让我们分析:矩形方波,锯齿波,梯形波,临界阻尼指数脉冲波形,三角波,余旋波,余旋平方波,高斯波。对于各种波形,我们都可以用一种方法来分析,就是傅立叶变换:将时域的波形转化到频域来分析。 于是,本课题就从频域的角度对信号进行分析,并通过分析频谱来设计出合适的滤波

器。当然,这些过程的实现都是在MATLAB软件上进行的,MATLAB软件在数字信号处理上发挥了相当大的优势。 二、设计方案: 利用MATLAB中的wavread命令来读入(采集)语音信号,将它赋值给某一向量。再将该向量看作一个普通的信号,对其进行FFT变换实现频谱分析,再依据实际情况对它进行滤波。对于波形图与频谱图(包括滤波前后的对比图)都可以用MATLAB画出。我们还可以通过sound命令来对语音信号进行回放,以便在听觉上来感受声音的变化。 选择设计此方案,是对数字信号处理的一次实践。在数字信号处理的课程学习过程中,我们过多的是理论学习,几乎没有进行实践方面的运用。这个课题正好是对数字语音处理的一次有利实践,而且语音处理也可以说是信号处理在实际应用中很大众化的一方面。 这个方案用到的软件也是在数字信号处理中非常通用的一个软 件%26mdash;%26mdash;MATLAB软件。所以这个课题的设计过程也是一次数字信号处理在MATLAB中应用的学习过程。课题用到了较多的MATLAB语句,而由于课题研究范围所限,真正与数字信号有关的命令函数却并不多。 三、主体部分: (一)、语音的录入与打开: [y,fs,bits]=wavread('Blip',[N1 N2]);用于读取语音,采样值放在向量y中,fs表示采样频率(Hz),bits表示采样位数。[N1 N2]表示读取从N1点到N2点的值(若只有一个N的点则表示读取前N点的采样值)。 sound(x,fs,bits); 用于对声音的回放。向量y则就代表了一个信号(也即一个复杂的%26ldquo;函数表达式%26rdquo;)也就是说可以像处理一个信号表达式一样处理这个声音信号。 FFT的MATLAB实现 在MATLAB的信号处理工具箱中函数FFT和IFFT用于快速傅立叶变换和逆变换。下

白噪声产生程序

第二章的白噪声产生程序 例2.2 用乘同余法产生(见光盘FLch2bzsheg2.m) ①编程如下: A=6; x0=1; M=255; f=2; N=100;%初始化; x0=1; M=255; for k=1: N %乘同余法递推100次; x2=A*x0; %分别用x2和x0表示x i+1和x i-1; x1=mod (x2,M); %取x2存储器的数除以M的余数放x1(x i)中; v1=x1/256; %将x1存储器中的数除以256得到小于1的随机数放v1中; )减去0.5再乘以存储器f中的系数,存放在v(:,k)=(v1-0.5 )*f; %将v1中的数( i 矩阵存储器v的第k列中,v(:,k)表示行不变、列随递推循环 次数变化; x0=x1; % x i-1= x i; v0=v1; end %递推100次结束; v2=v %该语句后无‘;’,实现矩阵存储器v中随机数放在v2中,且 可直接显示在MATLAB的window中; k1=k; %grapher %以下是绘图程序; k=1:k1; plot(k,v,k,v,'r'); xlabel('k'), ylabel('v');tktle(' (-1,+1)均匀分布的白噪声') ②程序运行结果如图2.6所示。 图2.6 采用MA TLAB产生的(-1,+1)均匀分布的白噪声序列 ③产生的(-1,1)均匀分布的白噪声序列 在程序运行结束后,产生的(-1,1)均匀分布的白噪声序列,直接从MATLAB的window 界面中copy出来如下(v2中每行存6个随机数):

v2 = -0.9531 -0.7188 0.6875 -0.8359 -0.0156 0.9219 0.5703 0.4531 -0.2500 -0.4844 0.1016 -0.3672 0.8047 -0.1328 0.2188 0.3359 -0.9531 -0.7188 0.6875 -0.8359 -0.0156 0.9219 0.5703 0.4531 -0.2500 -0.4844 0.1016 -0.3672 0.8047 -0.1328 0.2188 0.3359 -0.9531 -0.7188 0.6875 -0.8359 -0.0156 0.9219 0.5703 0.4531 -0.2500 -0.4844 0.1016 -0.3672 0.8047 -0.1328 0.2188 0.3359 -0.9531 -0.7188 0.6875 -0.8359 -0.0156 0.9219 0.5703 0.4531 -0.2500 -0.4844 0.1016 -0.3672 0.8047 -0.1328 0.2188 0.3359 -0.9531 -0.7188 0.6875 -0.8359 -0.0156 0.9219 0.5703 0.4531 -0.2500 -0.4844 0.1016 -0.3672 0.8047 -0.1328 0.2188 0.3359 -0.9531 -0.7188 0.6875 -0.8359 -0.0156 0.9219 0.5703 0.4531 -0.2500 -0.4844 0.1016 -0.3672 0.8047 -0.1328 0.2188 0.3359 -0.9531 -0.7188 0.6875 -0.8359 *另外,书中图2.3白噪声的产生如下: 显然,只要在例2.2程序的初始化部分中给N=300,f=6,运行程序就可以得到如图2.3所示的(-3,3)的白噪声过程. ①编程如下: A=6; x0=1; M=255; f=6; N=300;%初始化; x0=1; M=255; for k=1: N %乘同余法递推100次; x2=A*x0; %分别用x2和x0表示x i+1和x i-1; x1=mod (x2,M); %取x2存储器的数除以M的余数放x1(x i)中; v1=x1/256; %将x1存储器中的数除以256得到小于1的随机数放v1中; )减去0.5再乘以存储器f中的系数,存放在v(:,k)=(v1-0.5 )*f; %将v1中的数( i 矩阵存储器v的第k列中,v(:,k)表示行不变、列随递推循环 次数变化; x0=x1; % x i-1= x i; v0=v1; end %递推100次结束; v2=v %该语句后无‘;’,实现矩阵存储器v中随机数放在v2中,且 可直接显示在MATLAB的window中; k1=k; %grapher %以下是绘图程序; k=1:k1; plot(k,v,k,v,'r'); xlabel('k'), ylabel('v');tktle(' (-1,+1)均匀分布的白噪声')

Matlab音乐合成实验报告

音乐合成实验 目录 音乐合成实验 (1) 摘要: (1) 第一部分简单的合成音乐 (2) 1.1合成《东方红》 (2) 1.2 除噪音,加包络 (3) 1.3改变程序,实现1.2中的音乐升高和降低一个八度 (8) 1.4在1.2的音乐中加入谐波 (9) 1.5自选音乐合成——《两只老虎》 (10) 第二部分用傅里叶变换分析音乐 (11) 2.1载入fmt.wav并播放 (11) 2.2载入文件Guitar.mat,处理原始数据realwave (11) 2.3分析wave2proc的基波和谐波 (13) 2.4自动分析fmt.wav的音调和节拍 (16) 第三部分基于傅里叶级数的音乐合成 (19) 3.1 用2.3分析出来的结果重新加谐波 (19) 3.2 通过2.4提取的吉他音调信息弹奏《东方红》 (19) 实验收获 (21) 摘要:

本文共有三大部分:第一部分,简单的音乐合成;第二部分,用傅里叶变换分析音乐;第三部分,基于傅里叶级数的音乐合成。由潜入深,一步一步分析了用MATLAB 进行音乐合成的过程。通过本实验达到了加深对傅里叶级数和傅里叶分析的理解,熟悉对MATLAB 基本使用的目标。 第一部分 简单的合成音乐 1.1 合成《东方红》 根据《东方红》第一小节的简谱和十二平均律计算出该小节每个乐音的频率,在MATLAB 中生成幅度为1,抽样频率为8kHz 的正弦信号表示这些乐音,用sound 播放合成的音乐 由图可知《东方红》的曲调定为F ,即1=F ,对应的频率为349.23Hz ,据此可以计算出其他乐音的频率,例如5对应的频率为 7/125349.232523.25f =?=,一次类推计算出第一小节各乐音对应的频率为: 乐音 5 5 6 2 1 1 6 2 在确定了各乐音的频率之后需要确定每个乐音的持续时间。每小节有两拍, 一拍的时间是0.5s ,因此各乐音的持续时间为: 乐音 5 5 6 2 1 1 6 2 而在MATLAB 中表示乐音所用的抽样频率为fs=8000Hz ,也就是所1s 钟内有8000个点,抽样点数的多少就可表示出每个乐音的持续时间的长短。用一个行向量来存储这段音乐对应的抽样点,在用sound 函数播放即可。 根据以上分析在MATLAB 中编写如下程序: sound_1_1.m

基于Matlab的语音信号处理与分析

系(院)物理与电子工程学院专业电子信息工程题目语音信号的处理与分析 学生姓名 指导教师 班级 学号 完成日期:2013 年5 月 目录 1 绪论 (3) 1.1课题背景及意义 (3) 1.2国内外研究现状 (3) 1.3本课题的研究内容和方法 (4) 1.3.1 研究内容 (4) 1.3.2 开发环境 (4) 2 语音信号处理的总体方案 (4) 2.1 系统基本概述 (4) 2.2 系统基本要求与目的 (4) 2.3 系统框架及实现 (5) 2.3.1 语音信号的采样 (5) 2.3.2 语音信号的频谱分析 (5) 2.3.3 音乐信号的抽取 (5) 2.3.4 音乐信号的AM调制 (5) 2.3.5 AM调制音乐信号的同步解调 (5) 2.4系统设计流程图 (6) 3 语音信号处理基本知识 (6) 3.1语音的录入与打开 (6)

3.2采样位数和采样频率 (6) 3.3时域信号的FFT分析 (7) 3.4切比雪夫滤波器 (7) 3.5数字滤波器设计原理 (8) 4 语音信号实例处理设计 (8) 4.1语音信号的采集 (8) 4.3.1高频调制与低频调制 (10) 4.3.2切比雪夫滤波 (11) 4.3.3 FIR滤波 (11) 5 总结 (12) 参考文献 (13) 语音信号的处理与分析 【摘要】语音信号处理是研究用数字信号处理技术和语音学知识对语音信号进行处理的新兴的学科,是目前发展最为迅速的信息科学研究领域的核心技术之一。通过语音传递信息是人类最重要、最有效、最常用和最方便的交换信息形式。 Matlab语言是一种数据分析和处理功能十分强大的计算机应用软件,它可以将声音文件变换为离散的数据文件,然后利用其强大的矩阵运算能力处理数据,如数字滤波、傅里叶变换、时域和频域分析、声音回放以及各种图的呈现等,它的信号处理与分析工具箱为语音信号分析提供了十分丰富的功能函数,利用这些功能函数可以快捷而又方便地完成语音信号的处理和分析以及信号的可视化,使人机交互更加便捷。信号处理是Matlab重要应用的领域之一。 本设计针对现在大部分语音处理软件内容繁多、操作不便等问题,采用MATLAB7.0综合运用GUI界面设计、各种函数调用等来实现语音信号的变频、变幅、傅里叶变换及滤波,程序界面简练,操作简便,具有一定的实际应用意义。 最后,本文对语音信号处理的进一步发展方向提出了自己的看法。 【关键词】Matlab 语音信号傅里叶变换低通滤波器

matlab 正弦波 高斯白噪声 均匀白噪声 功率谱密度 自相关函数

现代通信原理作业一 姓名:张英伟学号:8036 班级:13级理工部3班 利用matlab完成: ●产生正弦波信号、均匀白噪声以及高斯白噪声并分别将两种噪声叠加到正弦 波信号上,绘出波形。 ●分别求取均匀白噪声序列和高斯白噪声序列的自相关及功率谱密度,绘出波 形。 一、白噪声区别及产生方法 1、定义: 均匀白噪声:噪声的幅度分布服从均匀分布,功率谱密度在整个频域内均匀分布的噪声。 高斯白噪声:噪声的幅度分布服从正态分布,功率谱密度在整个频域内均匀分布的噪声。 2、matlab仿真函数: rand函数默认产生是区间在[0,1]的随机数,这里需要利用公式: z2=a+(b-(a))*rand(m,n)............(公式1) randn函数默认产生均值是0、方差是1的随机序列,所以可以用其来产生均值为0、方差为1的正态分布白噪声,即N(0,12)。利用公式: z1=a+b*randn(1,n).................(公式2) 可以产生均值为a,方差为b2 高斯白噪声,即N(a,b2)。 二、自相关函数与功率谱密度之间的关系 1、功率谱密度:每单位频率波携带的功率,这被称为信号的功率谱密度。 2、自相关函数:描述随机信号X(t)在任意两个不同时刻t1,t2的取值之间的相关程度。 3、维纳-辛钦定理: 由于平均值不为零的信号不是平方可积的,所以在这种情况下就没有傅里叶变换。幸运的是维纳-辛钦定理提供了一个简单的替换方法,如果信号可以看作是平稳随机过程,那么功率谱密度就是信号自相关函数的傅里叶变换。 4、平稳随机过程:是在固定时间和位置的概率分布与所有时间和位置的概率分布相同的随机过程。(就是指得仅一个随机过程,中途没有变成另外一个统计特性的随机过程)

MATLAB 与 音频处理 相关内容摘记

MATLAB 与音频处理相关内容摘记MATLAB音频相关函数 声音数据输入输出函数: 可以方便地读写au和way文件,并可控制其中的位及频率。 wavread()和wavwriteO。 声音播放: wavplay():播放wav声音文件。当然,也可以把处理后的 wav文件保存后再用其它工具播放。 wavrecordO:可以对处理后的wav文件进行录音。 PS:在日常生活中,我们听到的声音一般都属于复音,其声音信号由不同的振幅与频率的波合成而得到 MATLAB处理音频信号的流程 分析和处理音频信号首先要对声音信号进行采集MATLAB 的数据采集工具箱提供了一整套命令和函数,通过调用这些函数和命令,可直接控制声卡进行数据采集[1] Windows 自带的录音机程序也可驱动声卡来采集语音信号并能保存 为WAV 格式文件供MATLAB 相关函数直接读取写入或播放本文 以WAV格式音频信号作为分析处理的输入数据用MATLAB 处理音频信号的基本流程是先将WAV 格式音频信号经wavread 函数转换 成MATLAB 列数组变量再用MATLAB 强大的运算能力进行数据分析和处理如时域分析频域分析数字滤波信号合成信号变换识别和增强等等处理后的数据如是音频数据则可用wavwrite 转换成WAV 格式文件或用sound wavplay 等函数直接回放下面分别介绍MATLAB 在音量标准化声道分离合并与组合数字滤波数 据转换等音频信号处理方面的技术实现 音量标准化

录制声音过程中需对声音电平进行量化处理最理想的量化是最大电平对应最高量化比特但实际却很难做到常有音轻问题利用MATLAB 很容易实现音量标准化即最大电平对应最高量化比特基本步骤是先用wavread 函数 将WAV 文件转换成列数组变量再求出数组变量的极值并对所有元素作归一化处理最后用wavwrite 函数还原成音量标准化的WAV 文件 例 1 现以微软自带的Windows XP 关机.wav 音频信号为例先将其复制另存到文件名为XPexit.wav 的MATLAB 当前目录中 再通过音量标准化处理后保存为XPquit.wav 文件实现程序如下 clear; close all; clc; [Y,FS,NBITS]=wavread('XPexit.WAV'); % 将WAV 文件转换成变量 FS,NBITS, % 显示采样频率和量化比特 Ym=max(max(max(Y)),max(abs(min(Y)))), % 找出双声道极值 X=Y/Ym; % 归一化处理 wavwrite(X,FS,NBITS,'XPquit.wav') % 将变量转换成WAV 文件 试听可知标准化处理后音量稍大 声道分离合并与组合 立体声或双声道音频信号有左右两个声道利用MATLAB 实现双声道分离两路声道合并和两个单声道组合成一个双声道等效果实际上是利用 了MATLAB 的矩阵抽取矩阵相加和矩阵重组运算 例 2 现以例 1 生成的XPquit.wav 为例实现分离合并和组合处理的程序如下 clear; close all; clc; [x,FS,NBITS]=wavread('XPquit.WAV'); % 将WAV 文件转换成变量 x1=x(:,1); % 抽取第 1 声道 x2=x(:,2); % 抽取第 2 声道 wavwrite(x1,FS,NBITS,'XPquit1.WAV'); % 实现 1 声道分离 wavwrite(x2,FS,NBITS,'XPquit2.WAV'); % 实现 2 声道分离 %如果合并位置不对前面补0 %声道长度不对后面补0 x12=x1+x2; % 两路单声道列向量矩阵变量合并 x12m=max(max(x12),abs(min(x12))), % 找出极值 y12=x12./x12m; % 归一化处理 wavwrite(y12,FS,NBITS,'XPquit12.WAV'); % 实现两路声道合并 %如果组合位置不对前面补0--声道长度不对后面补0 x3=[x1,x2]; % 两路单声道变量组合 wavwrite(x3,FS,NBITS,'XPquit3.WAV'); % 实现两路声道组合 可以试听声道分离合并与组合的效果也可对各文件大小进行比较 数字滤波 数字滤波是常用的音频处理技术可根据技术指标先利用FDATool 工具设计一个数字滤波器[2] 再用Filter 或Filter2 函数即可实现滤波处理调用 的Filter 函数格式是Y = filte (B,A,X) 其中 B 和 A 是滤波器传输函数的分子和分母系数X 是输入变量Y是实现滤波后的输出变量如果处理立体声音频信号可分开处理但用FIR 滤波器时调用Filter2 函数更方便

Matlab音乐合成实验报告

课程设计《音乐合成》实验报告 专业:测控技术与仪器 班级:测控11-2 班 姓名:谷晓峰 学号: 11034010219 指导教师:贺婷 广东石油化工学院计算机与电子信息学院

信号与系统课程设计 -------利用matlab合成音乐 一、实验目的 1. 熟悉MATLAB的软件和语言指令的使用; 2. 学习利用MATLAB进行连续信号的时域、频域分析; 3. 熟悉抽样信号与连续信号的区别。 二、实验内容 1.请根据《画心》片断的简谱和“十二平均律”计算出该片断中各个乐音的频率,在MATLAB 中生成幅度为1抽样频率为8kHz 的正弦信号表示这些乐音。请用sound 函数播放每个乐音,听一听音调是否正确。最后用这一系列乐音信号拼出《画心》片断,注意控制每个乐音持续的时间要符合节拍,用sound 播放你合成的音乐,听起来感觉如何?并用图显示生成的音乐信号。 相关知识: ①《画心》完整曲谱,实验时从中随机截取几节用于编程。

②利用十二平均律计算频率以及相关音乐知识。 如图1,其中错误!未找到引用源。,错误!未找到引用源。,错误!未找到引用源。相当于错误!未找到引用源。的二次谐波,二者是倍频的关系。从A 到A1共有12个键,7个白色键,5个黑色键。中间这些频率值得计算规律为相邻音倍乘系数错误!未找到引用源。。即错误!未找到引用源。,别的依次类推。 图1 钢琴键盘 图1中各键对应的频率如下表: bG表示的F升高半音,在乐谱中用#表示。或者G降低半音,用b表示。乐谱这中的4/4表示每小节有四拍,一个1/4音符的持续时间为一拍,一拍大概0.5s左右。 eg: y=0*t; %初始化 y(t<0.25)=sin(440*2*pi*t(t<0.25)); %第一个音 5,持续时间0.25s y(0.25

基于MATLAB的语音信号采集与处理

工程设计论文 题目:基于MATLAB的语音信号采集与处理 姓名: 班级: 学号: 指导老师:

一.选题背景 1、实践意义: 语音信号是一种非平稳的时变信号,它携带着各种信息。在语音编码、语音合成、语音识别和语音增强等语音处理中无一例外需要提取语音中包含的各种信息。语音信号分析的目的就在于方便有效地提取并表示语音信号所携带的信息。所以理解并掌握语音信号的时域和频域特性是非常重要的。 通过语音相互传递信息是人类最重要的基本功能之一.语言是人类特有的功能.声音是人类常用工具,是相互传递信息的最重要的手段.虽然,人可以通过多种手段获得外界信息,但最重要,最精细的信息源只有语言,图像和文字三种.与用声音传递信息相比,显然用视觉和文字相互传递信息,其效果要差得多.这是因为语音中除包含实际发音容的话言信息外,还包括发音者是谁及喜怒哀乐等各种信息.所以,语音是人类最重要,最有效,最常用和最方便的交换信息的形式.另一方面,语言和语音与人的智力活动密切相关,与文化和社会的进步紧密相连,它具有最大的信息容量和最高的智能水平。 语音信号处理是研究用数字信号处理技术对语音信号进行处理的一门学科,处理的目的是用于得到某些参数以便高效传输或存储;或者是用于某种应用,如人工合成出语音,辨识出讲话者,识别出讲话容,进行语音增强等. 语音信号处理是一门新兴的学科,同时又是综合性的多学科领域,

是一门涉及面很广的交叉学科.虽然从事达一领域研究的人员主要来自信息处理及计算机等学科.但是它与语音学,语言学,声学,认知科学,生理学,心理学及数理统计等许多学科也有非常密切的联系. 语音信号处理是许多信息领域应用的核心技术之一,是目前发展最为迅速的信息科学研究领域中的一个.语音处理是目前极为活跃和热门的研究领域,其研究涉及一系列前沿科研课题,巳处于迅速发展之中;其研究成果具有重要的学术及应用价值. 数字信号处理是利用计算机或专用处理设备,以数值计算的方法对信号进行采集、抽样、变换、综合、估值与识别等加工处理,借以达到提取信息和便于应用的目的。它在语音、雷达、图像、系统控制、通信、航空航天、生物医学等众多领域都获得了极其广泛的应用。具有灵活、精确、抗干扰强、度快等优点。 数字滤波器, 是数字信号处理中及其重要的一部分。随着信息时代和数字技术的发展,受到人们越来越多的重视。数字滤波器可以通过数值运算实现滤波,所以数字滤波器处理精度高、稳定、体积小、重量轻、灵活不存在阻抗匹配问题,可以实现模拟滤波器无法实现的特殊功能。数字滤波器种类很多,根据其实现的网络结构或者其冲激响应函数的时域特性,可分为两种,即有限冲激响应( FIR,Finite Impulse Response)滤波器和无限冲激响应( IIR,Infinite Impulse Response)滤波器。 FIR滤波器结构上主要是非递归结构,没有输出到输入的反馈,系统函数H (z)在处收敛,极点全部在z = 0处(因果系统),因而只能

相关主题
文本预览
相关文档 最新文档