- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
1 引言 随着信息时代、数字世界的到来,数字信号处理已成为一门极其重要的学科和技术领域。数字信号处理是将信号以数字方式表示并处理的理论和技术,处理的内容包括对数字信号的滤波、变换、频谱分析、检测、估计、压缩、识别等一系列的加工处理。由于大规模集成电路以及数字计算机的飞速发展,加之从60年代末以来数字信号处理理论和技术的成熟和完善,用数字方法来处理信号,即数字信号处理,已逐渐取代模拟信号处理。 MATLAB,它是美国Math Works公司推出的一种面向工程和科学计算的交互式计算软件。它以矩阵运算为基础,把计算、可视化、程序设计融合在一个简单易用的交互式工作环境中,是一款数据分析和处理功能都非常强大的工程适用软件。通过本次实习我们学会了分析和处理音频信号,首先要对声音信号进行采集,MATLAB的数据采集工具箱提供了一整套命令和函数,通过调用这些函数和命令,可直接控制声卡进行数据采集。Window自带的录音机程序也可驱动声卡来采集语音信号,并能保存为WAV格式文件,供MATLAB相关函数直接读取、写入或播放。 MATLAB语言是一种数据分析和处理功能十分强大的计算机应用软件,它可以将声音文件变换位离散的数据文件,然后利用其强大的矩阵运算能力处理数据,如数据滤波、傅立叶变换、时域和频域分析、声音回放以及各种图的呈现等,它的信号处理与分析工具箱位语音信号分析提供了十分丰富的功能函数,利用这些功能函数可以快捷而又方便的完成语音信号的处理和分析以及信号的可视化,是人机交互更加便捷。信号处理是MATLAB重要应用的领域之一。 语音信号处理是研究用数字信号处理技术和语音学知识对语音信号进行处理的新兴的学科,是目前发展最为迅速的信息科学研究领域的核心技术之一。通过语音传递信息是人类最重要、最有效、最常用和最方便的交换信息形式。 语音信号的处理与滤波的设计主要是用MATLAB作为工具平台,设计中涉及到声音的录制、播放、存储和读取,语音信号的抽样、频谱分析,滤波器的设计及语音信号的滤波,通过数字信号处理课程的理论知识的综合运用。从实践上初步实现对数字信号的处理。 本次课程设计选择的课题是对理论学习的一次实践,通过录制一段自己的语音信号并对录制信号进行采样,画出采样后的时域与频域响应波形;在Matlab环境下编写基2 DIT-FFT算法;利用自己编写的算法对已采集的语音信号进行频谱分析,并画出语音信号的时域与频谱图,并与Matlab数字信号处理工具箱中的fft函数进行对比研究,验证自编算法的正确性。 2 基于MATLAB的FFT算法设计原理 2.1设计原理 2.1.1语音信号的采集 我们可以利用windows自带的录音机录制语音文件,图1是基于PC机的语音信号采集过程,声卡可以完成语音波转换,获得WAVE文件,为后续的处理储备原材料。采集到语音信号之后,需要对语音信号进行时域分析和频谱分析。 图1 采集语音信号 录制的话音信号频谱单一,滤波后听觉效果不明显,故选了一段频谱较为丰富的音乐文件,名为Beyond.wav。 函数 ywavread语音文件名用于读取语音,采样值放在向量y中,采样频率Fs为系统默认值。函数soundy,fs 用于对声音的回放。向量y则就代表了一个信号(也即一个复杂的“函数表达式”),也就是说可以像处理一个信号表达式一样处理这个声音信号。 2.1.2快速傅里叶变换 快速傅里叶变换(FFT)是为提高DFT运算速度而采用的一种算法。 对一个有限长度序列xn的N点的DFT为:X(k)∑x(n)W^knN k0,1,……,N-1;n0,1,……,N-1;We^-j2π/N 当N4时,X(k)可展开为: X(0) x(0)W^0*4+ x(1)W^0*4 +x(2)W^0*4+ x(3)W^0*4 X(1) x(0)W^0*4+ x(1)W^1*4 +x(2)W^2*4+ x(3)W^3*4 X(2) x(0)W^0*4+ x(1)W^2*4 +x(2)W^4*4+ x(3)W^6*4 X(3) x(0)W^0*4+ x(1)W^3*4 +x(2)W^6*4+ x(3)W^9*4 从上式可以看出,要求4点的DFT,需要16次的复数乘法运算,12次复数乘法运算算。由此类推,要求出N点的DFT,需要N^2次复数乘法运算,N*N-1次复数加法运算。当N值较大时,要完成的复数乘法运算和复数加法运算得次数都非常多,无论是用通用计算机还是用DSP芯片,都需要消耗大量的时间,不适合于对实时处理要求高的场合。为了能实时处理DFT,要想减少DFT的运算量可以有两个途径:第一是降N,N的值减小了,运算量就减少了;第二是利用旋转因子的周期性和对称性,
文档评论(0)