声音里的数学
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
声音里的数学
——傅立叶级数在声音中的应用
摘要:数学无处不在,声音自然也不例外。而数学在声音中的重要应用之一就是傅立
叶级数。那么,傅立叶级数是怎么回事呢?又该怎样计算?声音是如何与傅立叶级数联系在一起的呢?
关键字:傅立叶级数定积分的近似计算声音图像
无处不在的数学在声音中是如何应用的呢?
首先说说什么是傅立叶级数。定义在负无穷到正无穷上的周期为2l的绝对可积函数f(x),由欧拉-傅里叶公式可求出f(x)的傅里叶系数a0,a1,b1……,由这些系数作成的级数a0/2+∑[an*cos(n Pi x/l)+bn*sin(n Pi x/l)]称为f(x)的傅里叶级数。在这其中欧拉-傅里叶公式为a0=∫f(x)dx/l,an=∫f(x) cos(n Pi x/l)/l,bn=∫f(x) sin(n Pi x/l).
而声音是由音频、音色、音质组成。用数学的方式来说,声音就相当于一个函数,基音就是a0/2,而an cos(n 2Pi x/l)或者bn sin(n 2Pi x/l)就是泛音。在这里为方便计算,用2Pi代替Pi。通过MATLAB软件可以画出频谱图等,但有一个问题,我们不知道该函数的表达式,最多只能在某一范围内取有限个点,得到对应的函数值,也就是取样。取样越精细,图像也越接近函数的真实表示。那该如何计算这函数的近似值呢?
定积分的近似求值一般有三种。假设函数的值都为正。一是把函数的一小部分当做矩形来计算,假设0-T内,分成n等分,得到n+1个函数值,其定积分的值就是n个矩形的面积之和,每个矩形的宽为T/n,长取左端点对应的函数值。数学表达式是[f(0)+f(1)+…+f(n-1)]*T/n。
二是当做梯形来计算。上底为左端点对应的函数值,下底为右端点对应的函数值,高为T/n,数学表达式为[f(0)/2+f(1)+…+f(n-1)+f(n)/2]*T/n。
三是用抛物线来计算。首先要规定n需为偶数,取连续的三点为抛物线上的点,以中间那点对应的x值为原点,建立坐标系,求出表达式得{f(0)+f(n)+2[f(2)+f(4)+…+f(n-2)]+4[f(1)+f(3)+…+f(n-1)]}*T/n。
以上三种方法中精确度依次提高,抛物线方法中的数学表达式,也称为辛普生公式。
然后根据MATLAB和事先编好的程序,与处理过的声音文件,就可以算出T,并得出y与t的图像和频谱图,进而可对该图进行分析,知道最主要的频率是在哪一段。还可以找两段
声音进行比较,以下就是其对比图:
左侧两幅图是一个人的y与t的图像和频谱图,右侧是另一个人的。前两幅图的比较中,可以看出后者的发声持续较长。后两幅图中,前者的音频主要在1000多一点,后者主要分布在1200和1400间与1000左右。
当然声音与数学的关系远不止这么一点点,我相信只要认真学习,一定会学到更多有用的知识,并真正寓乐于学。