测量声音分贝.doc

上传人:pu****.1 文档编号:549490566 上传时间:2023-12-29 格式:DOC 页数:4 大小:106.51KB
返回 下载 相关 举报
测量声音分贝.doc_第1页
第1页 / 共4页
测量声音分贝.doc_第2页
第2页 / 共4页
测量声音分贝.doc_第3页
第3页 / 共4页
测量声音分贝.doc_第4页
第4页 / 共4页
亲,该文档总共4页,全部预览完了,如果喜欢就下载吧!
资源描述

《测量声音分贝.doc》由会员分享,可在线阅读,更多相关《测量声音分贝.doc(4页珍藏版)》请在金锄头文库上搜索。

1、我们经常用手机来录音、拍摄,这些功能都用到了手机自带的microphone(MIC)。也有人想到了用手机的MIC来检测环境噪声的大小,这个小功能可以使手机更加智能化,比如调整振铃等,其拓展应用非常广。目前已经有许多软件已经实现了这个功能,比如PocketRTA。PocketRTA有两个版本,分别适用于Windows NT 和 Windows Mobile(WM)。大家可以Google一下,下载适用,放在手机上当做噪声检测仪也是很有趣的。目前还没看见PocketRTA的源码。经过一段时间的摸索研究,实现了测量环境噪声DB值功能的软件,一些经验在此和大家分享一下。网上这方面的信息很零碎,我综合原理

2、和实际开发,把整个流程完整叙述一下。在此就不贴代码,相信知识比代码更能让人受益。实现语言: C+开发平台: VS 2005手机OS: Windows Mobile 5.0流程图大致流程分为4步:step1: 获取声音数据。声音是以波的形式传播的,在传播路径上遇到障碍物时,会在这些障碍物表面上产生压力,这就是声压。MIC可以检测到声压,声压的大小反应为MIC输出电平的大小。MIC的输出电平进入到声卡后,声卡进行采样和量化,这是传统的模数转换(ADC)过程。声卡采样和量化后的值,就是波形数据。波形数据反映声音强度在时域上的变化。这些波形数据可以采用一定的格式在电脑上储存,如.wav文件,也可以输出

3、到扬声器播放。有关如何获取声音数据,可以参考本人先前的文章:WAVE文件录放音Windows API。通常声卡的采样率为11.025kHz,16bit量化。即每秒采样11,025次,每次采样值量化为65536阶,量化值用065535表示。波形数据为时域离散信号。step2:FFT / DFT 。 声音是由若干(或无限多个)频率分量组成的。为了检测和描述声音的特性,人们使用频谱。噪声检测也需要在频域处理数据,要把时域信号转换为频域信号。step1得到的WAVE时域离散信号经过DFT可以变成频域离散信号。FFT是离散傅里叶变换DFT在工程上的优化算法。有关FFT的代码在网上很多。step3:划分倍

4、频程,并把信号从绝对量值转换为相对量值(DB)。a。先说dB(decibel)的含义。dB是一个相对值,声学上来讲,声压的分贝值的基准是20微帕斯卡。假设一个声音的测得的声压是P帕斯卡,那么声音的分贝值计算公式为: SPL:Sound Press Level 声压级。通常物理上20微帕斯卡通过MIC和声卡量化后为1。所以公式简化为: 此处P也为量化后相对20微帕斯卡的值b。然后说dB相加,比如有两个声音,分别为70dB和60dB,它们叠加是多少dB? 70.4dB。因为两个声音的叠加是能量的叠加。c。再说倍频程。我们最终要计算的声音分贝值是由各个频率分量的声音分量组成的。我们用倍频程或1/3倍

5、频程把声音划分为许多频带。倍频程的中心频率为31.5、63、125、250、500、1K、2K、4K、8K、16KHz十个频率,后一个频率均为前一个频率的两倍,因此被称为倍频程,而且后一个频率的频率带宽也是前一个频率的两倍。在有些更为精细的要求下,将频率更细地划分,形成1/3倍频程,也就是把每个倍频程再划分成三个频带。d。计算每个倍频程的声压级。FFT后的信号在频域上是离散的,相邻点的频率间隔为 SampleRate / FFTPoint ,即采样率除以FFT的点数。计算倍频程的声压级的方法是先计算频带内频点的平均能量, 然后再取对数。计算公式为: Pi为倍频程中某个频点的值e。下图为1/3倍

6、频程的计算结果。 step4:A率加权后计算dBA。 a。A率曲线。由于人耳对不同频率的声音敏感程度不同,表现为相同dB值的声音,2kHz 比 100Hz听起来更响一些。为了使测量得到的值更符合人的主管感觉,在此引入A率加权。下图是A率曲线: a率曲线曲线函数为: 可见,a率加权减弱了声音低频分量对最终测量结果的贡献。b。加权方法。假设step3后,中心频率为125Hz的1/3倍频程的声压级为40dB, 125Hz的A率加权值为-16.18,加权后的声压级为 40-16.18 = 23.82dBA。A率加权后单位为dBA。c。全部频率范围内的dBA叠加。若采用的是1/3倍频程,经过b步骤后,得

7、到30个频带的dBA值,表示为qi,i = 1,2,.,30。 全部频率范围内的dBA叠加公式为: 这就是最终结果。两个声音的频率比(或者音调比)的以2为底的对数称为频程,数学表达式为n=log2(f2/f1),式中f1为基准频率, f2为求倍频程数的信号频率, n为倍频程数.可以是整数或分数.例如n=1,1/3,则分别称为”倍频程”和”三分之一倍频程”.如果频率F1是100HZ的话,它的倍频程就是200HZ.它的2分之1倍频程频率就是141HZ,就是100HZ乘个系数,这个系数是2的(1/2)幂,就是2的开平方根.它的3分之1倍频程频率就是100HZ乘一个新的系数,这个系数是2的(1/3)幂,就是2的开三次方的根.其值是多少呢?算一下,是1.2599.

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 社会民生

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号