CN116959491A - 一种针对wav音频的分贝、回声、底噪及啸叫检测方法 - Google Patents
一种针对wav音频的分贝、回声、底噪及啸叫检测方法 Download PDFInfo
- Publication number
- CN116959491A CN116959491A CN202310749826.7A CN202310749826A CN116959491A CN 116959491 A CN116959491 A CN 116959491A CN 202310749826 A CN202310749826 A CN 202310749826A CN 116959491 A CN116959491 A CN 116959491A
- Authority
- CN
- China
- Prior art keywords
- audio
- amplitude
- threshold
- wav
- frequency
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 45
- 238000000034 method Methods 0.000 claims abstract description 40
- 230000002159 abnormal effect Effects 0.000 claims abstract description 22
- 238000002592 echocardiography Methods 0.000 claims abstract description 15
- 229920006395 saturated elastomer Polymers 0.000 claims abstract description 11
- 238000012545 processing Methods 0.000 claims abstract description 8
- 238000005070 sampling Methods 0.000 claims description 58
- 238000004364 calculation method Methods 0.000 claims description 30
- 238000006243 chemical reaction Methods 0.000 claims description 16
- 238000009432 framing Methods 0.000 claims description 12
- 230000035945 sensitivity Effects 0.000 claims description 7
- 230000007613 environmental effect Effects 0.000 claims description 6
- 238000010606 normalization Methods 0.000 claims description 6
- 230000037433 frameshift Effects 0.000 claims description 5
- 230000008569 process Effects 0.000 claims description 4
- 230000005856 abnormality Effects 0.000 claims description 3
- 229910002056 binary alloy Inorganic materials 0.000 claims description 3
- 230000005236 sound signal Effects 0.000 abstract description 15
- 238000012423 maintenance Methods 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 7
- 230000000694 effects Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 125000004122 cyclic group Chemical group 0.000 description 3
- 230000036541 health Effects 0.000 description 3
- 230000010355 oscillation Effects 0.000 description 3
- 238000001228 spectrum Methods 0.000 description 3
- 230000006978 adaptation Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000005538 encapsulation Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000007704 transition Effects 0.000 description 2
- 230000003321 amplification Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 210000005069 ears Anatomy 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000003199 nucleic acid amplification method Methods 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000013441 quality evaluation Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L25/00—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
- G10L25/48—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use
- G10L25/51—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use for comparison or discrimination
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L21/00—Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
- G10L21/02—Speech enhancement, e.g. noise reduction or echo cancellation
- G10L21/0208—Noise filtering
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L21/00—Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
- G10L21/02—Speech enhancement, e.g. noise reduction or echo cancellation
- G10L21/0208—Noise filtering
- G10L2021/02082—Noise filtering the noise being echo, reverberation of the speech
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Landscapes
- Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Quality & Reliability (AREA)
- Circuit For Audible Band Transducer (AREA)
Abstract
本发明涉及一种针对wav音频的分贝、回声、底噪及啸叫检测方法,属于数字音频信号处理领域。包括:对当前环境无异常音频提取其环境标准值;采集wav音频信号并提取其关键信息;对获取的单声道音频数据进行分贝检测;对单声道音频数据进行自相关运算实现回声检测;对单声道音频数据进行快速傅里叶运算实现底噪检测;对单声道音频数据进行单频啸叫检测;通过判断获取的单声道音频数据是否有削顶现象来进行饱和啸叫检测;输出异常音频检测结果并循环检测。本发明针对wav音频的异常音频检测提出了一种新的方法,使其应用范围更广,实时性相对较高,能够实现音频异常信号的快速识别与检测,更好帮助有关工作人员进行音频设备的维护和管理。
Description
技术领域
本发明提供一种针对wav音频的分贝、回声、底噪及啸叫检测方法,属于数字音频信号处理技术领域。
背景技术
音频信号在现代生活中具有非常重要的作用,它们对我们的娱乐、工作和交流都产生了影响。近年来,随着数字技术、音频技术和智能硬件的持续发展,音频质量成为人们关注的问题,声音信号分析和检测的需求不断增加,音频质量检测的实时性和准确性的重要性不言而喻。无论是在教室、会议室、礼堂等各种场景下,为确保人们沟通的准确度及清晰度,及时检测不同场景下的音频质量并实时调整音频设备成为了关键。随着信息处理技术的不断发展,主观评估的音频质量评估方式逐渐被取代,由于扩声系统复杂、影响声音效果的环节多、人耳对音质比较敏感等原因,对音频信号质量检测和维护一直是困扰工程技术人员的难题。因此亟需一种检测异常音频的方法,以实现音频异常信号的快速识别与检测,更好帮助有关工作人员进行音频设备的维护和管理。
分贝是一种衡量音频强度的指标,世界卫生组织已规定音频的强度超过80分贝将对人体购成危害;各种场景下的啸叫、回声和底噪是声音信号易出现的三个主要问题,均会影响人们的听觉体验。因此,分贝、回声、底噪和啸叫检测成为了声音信号处理中衡量音频质量必不可少的重要检测指标。
发明内容
为克服现有技术中存在的不足,本发明提出了一种针对wav音频的分贝、回声、底噪及啸叫检测方法,以实现音频异常信号的快速识别与检测,更好帮助有关工作人员进行音频设备的维护和管理。
术语解释:
1、wav:wav是最常见的声音文件格式之一,是微软公司开发的一种标准数字音频文件,该文件能记录各种单声道或立体声的声音信息,并能保证声音不失真,能够支持多种音频位数、采样频率和声道。
2、回声:回声定义为产生于已知的信号的所接收的信号的分量。回声按其来源一共分为两类,第一类称为直接回声,近端扬声器将语音信号播放出来后,被近端麦克风直接采集后得到的回声;直接回声不受环境的影响,与扬声器到麦克风的距离及位置有很大的关系。第二类回声被称为间接回声,近端扬声器将语音信号播放出来后,语音信号经过复杂多变的墙面反射后由近端麦克风采集。
3、啸叫:啸叫信号的产生是指在一定环境下,麦克风实时捕获当前人说话的语音信号并进行声电转换处理,然后通过扬声器将其放大并在同一环境下回放,扬声器的声音不可避免反馈到麦克风,形成了一个闭环回路,信号在声反馈回路中不断叠加放大,形成正反馈产生振荡,这个振荡在声学系统中表现为啸叫。啸叫信号分为两类,第一类为单频啸叫信号,即不包含语音的单频振荡产生的啸叫,该信号是一稳定正弦波,频率单一。第二类为饱和啸叫信号,是在说话语音产生过程中,叠加了闭环回路的自激振荡信号,当信号的电平达到功放最大输出电平时,幅度值达到最大,波形将出现严重的削顶现象。
本发明的技术方案为:
一种针对wav音频的分贝、回声、底噪及啸叫检测方法,通过采用自相关、FFT及短时能量运算有效的提取了音频信号的时域及频域特征,通过不同环境下的标准值调整得到的当前环境阈值来比对待测音频,从而得到音频异常检测结果,在不同场景下,需要人为的采集几组无异常音频数据,从中提取出当前环境下的环境标准值,通常分贝标准值低于85db、自相关标准值范围为0至0.05、频域幅度标准值范围为0V至4000V、短时能量标准值范围为0J至250J,包括分贝标准值、自相关标准值、频域幅度标准值、短时能量标准值,将其保存到相应的变量中。
包括如下步骤:
步骤1:通过音频采集设备获取4至10秒的wav音频,分析wav音频文件获取文件头位置、采样频率、声道数目、位数信息,获取其采样点幅度,放入音频幅度数组中,用于后续计算;
步骤2:通过对获取的音频幅度数组进行计算,将采样点幅度的绝对值除以声音振幅最大值,并进行对数运算,获取每个采样点的分贝值,若连续多个采样点分贝值大于分贝阈值,则判定环境分贝过高;
步骤3:通过对获取的音频幅度数组进行自相关运算,设置自相关阈值和距离阈值,通过得到的归一化后的自相关运算结果与自相关阈值循环比对,获得第一次大于自相关阈值的位置,并计算该位置与自相关数组中点位置的距离,如果该距离高于距离阈值,则判定当前环境有回声;
步骤4:通过对获取的音频幅度数组进行FFT运算,并将FFT结果取前一半并做绝对值计算,设置低频段频域幅度阈值,若FFT绝对值结果在低频范围区间大于低频段频域幅度阈值,则判断当前环境有底噪;
步骤5:设置一个高频域幅度阈值,通过步骤4的FFT绝对值结果与该阈值进行比对,若存在频域幅度大于该阈值,则判断当前环境存在单频啸叫;
步骤6:对步骤1获取的单声道音频数据进行分帧,并计算每帧的短时能量,设置一个短时能量阈值,若连续多个帧的短时能量大于该短时能量阈值,则该段音频出现严重的削顶现象,判定当前环境存在饱和啸叫;
步骤7:将步骤2、3、4、5、6结果输出显示,并每5s循环一次检测。
优选的,步骤1具体实现步骤包括:
步骤1.1:通过音频采集设备获取5秒的wav音频文件作为异常检测输入,即音频采集设备采集音频数据,每5秒送入检测模块中,不断循环检测;
通过音频采集设备获取wav音频,通常音频采集周期为4到10秒,其中实时性与采集时间长度变化趋势相反,准确率与采集时间长度变化趋势相同,为了同时兼顾实时性和准确率本发明优选采用5秒wav音频作为输入。音频采集设备采集音频数据,每5秒送入检测模块中,不断循环检测。
步骤1.2:对获取的wav音频文件进行遍历,根据wav音频的封装结构,查找四个字节的ChunkID段落标识位,将每个字节根据ASCII码表进行转换,若转换结果等于RIFF(ASCII码表对应的十进制数为52 49 46 46),则此处为该wav文件的文件头;根据此文件头向后查找第19和第20个字节为NumChannels段落标识位,表示声道数目;第21至第24字节SampleRate段落标识位,表示采样频率fs,即每秒有多少个采样点;第31和第32字节为BitsPerSample段落标识位,表示采样位数,通常为16个bit;第40个字节以后为音频的采样点幅度值;
步骤1.3:将上一步获取的信息分别保存到变量和数组中;
通常wav音频的采样频率fs=44100Hz、采样位数为16bit(2个字节)、采样点幅度范围为-32768~32767、声道数为单声道或者多声道,若声道数为多声道即两列数组,取其第一列转为单声道音频数据,数据长度记为N。
优选的,步骤2的具体实现步骤包括:
步骤2.1:设定分贝阈值;
根据相应环境需求及人们普遍可以容忍的最大分贝值作为分贝阈值,基于美国职业安全卫生管理局(OSHA)规定“人耳最大可以承受连续8小时85分贝的声音强度,而无负面影响”,分贝阈值一般设定范围区间为70db至85db,考虑到可以尽量提高方法的适配性,本发明将分贝阈值设定为80db。
步骤2.2:对获取的wav音频文件的采样点幅度进行分贝计算,将采样点幅度即2个字节的二进制转为有符号十进制结果并取绝对值记为|Prms(n)|,分贝计算公式如下:
其中,LP(n)为分贝值,对于位深为16bit的wav音频,其声音振幅最大值Pref=32768;
步骤2.3:将步骤2.2计算得到的分贝值比对分贝阈值,遍历长度为N的分贝值数组,若连续50个采样点均大于该分贝阈值,则判断环境分贝过高。
优选的,步骤3的具体实现步骤包括:
步骤3.1:对同一场景下的无异常wav音频进行自相关运算,在当前环境下设定一个自相关阈值R0,通常无回声信号在非重叠位置的自相关值的范围为0至0.05,本发明的自相关阈值R0取值为0.05;
步骤3.2:设置距离阈值D0,该距离阈值与可以检测到的最小回声延时时间τ0成正比,表示此方法检测回声灵敏度,计算公式如下:
τ0=D0/fs
其中,fs表示采样频率,通常wav音频的采样频率fs=44100Hz,根据需求选择想要达到的回声检测灵敏度,τ0的取值范围为0.05s至0.2s,根据距离阈值与τ0的计算公式,求得D0的取值范围为2205点至8820点,本方法D0取值为4000点;
步骤3.3:对获取的音频幅度数组进行自相关运算,得到归一化后的自相关运算结果R(m),其计算过程为:
对长度为N的单声道音频数据进行自相关运算,离散序列自相关计算公式如下:
其中Rx,x(m)为自相关运算结果,x(n)为第n点的wav音频采样点幅度,m为自相关运算的自变量,x(n-m)为第n-m点的wav音频采样点幅度;
通过上述运算获得的自相关运算结果序列Rx,x(m)点数为2N-1,对Px,x(m)进行绝对值运算并进行归一化处理,归一化公式如下:
获得范围在0~1的归一化自相关运算结果R(m),其点数为2N-1;
将获取的自相关结果R(m)与步骤3.1设置的自相关阈值R0进行对比,遍历2N-1点的R(m),记录大于自相关阈值R0(R0取值为0.05)的位置d0,并计算该位置d0与自相关数组中点位置的距离D=|d0-N|,如果该距离D高于步骤3.2设置的距离阈值D0(D0取值为4000点),则判定当前环境有回声;
步骤3.4:通过获取d0位置的R(m)值即R(d0),该值的大小代表回声比例系数α的大小,反映了回声的大小程度,即回声与原始音频的比值;将步骤3.2获取的距离D除以采样频率fs,得到回声的延时时间τ:
τ=D/fs
回声比例系数α和回声延迟时间τ在一定程度上反映了回声的严重程度。
优选的,步骤4的具体实现步骤包括:
步骤4.1:对步骤1获取的长度为N的单声道音频数据进行FFT运算得到频域幅度数组;
FFT运算的计算公式如下:
其中X(k)为N点FFT序列的第k个点的值,x(n)为第n点的wav音频采样点幅度,k为FFT运算的自变量,j表示虚数单位;
通过进行FFT运算,将N点音频时域幅度转换为N点的FFT序列X(k),该值为虚数,通过取X(k)的实部即得到N点的频域幅度数组F(k),其中第k点的频域幅度数组F(k)与第k点的FFT序列X(k)转换关系如下:
X(k)=Re[F(k)] k=0,1,…,N-1
对得到的频域幅度数组F(k)截取前一半,并对其幅度进行绝对值处理,使得频率幅度全部为非负值,其中点数n0转化为对应频率f的换算公式如下:
步骤4.2:对同一场景下的无异常wav音频进行FFT运算,获得一个该场景下的频域幅度标准值,根据该标准值设置低频幅度阈值F1,通常无底噪音频信号在低频部分频域幅度低于300V,本发明对该低频幅度阈值取值为400V;
步骤4.3:设置低频范围区间(0至60Hz),FFT序列点数与对应频率转换公式如下:
其中k为FFT序列第k点,fk为FFT序列第k点的转换频率,对于音频长度为5秒、采样频率fs为44100Hz,低频范围区间为0至60Hz对应的低频FFT序列点数区间为0点至300点。
若在该低频FFT序列点数区间内存在频域幅度高于阈值F1,则判断当前环境有底噪。
优选的,步骤5的具体实现步骤包括:
步骤5.1:根据步骤4.2得到的频域幅度标准值设置一个高频域幅度阈值F2,通常无啸叫人声的频域幅度范围为0V至4000V,而含有单频啸叫的频域幅度在某一频率上会达到5000V至20000V,本发明对该较高的频域幅度阈值F取值为10000V;
步骤5.2:在全频段将步骤4.1的结果与步骤5.1的高频域幅度阈值F2进行比较,若在全频段内存在频域幅度高于该阈值,则判断当前环境存在单频啸叫。
优选的,步骤6的具体实现步骤包括:
步骤6.1:对同一场景下的无异常wav音频进行分帧处理并计算其短时能量,获得一个该场景下的短时能量标准值,根据该短时能量标准值设置一个短时能量阈值,通常对于帧长时长取值为30ms、帧移时长取值为10ms的分帧后的无饱和啸叫信号每帧短时能量标准值范围为0J至250J,本方法对短时能量阈值取值为350J;
步骤6.2:对步骤1获取的单声道音频数据进行分帧处理,并对得到每帧计算其短时能量,若连续20帧的短时能量大于步骤6.1设置的短时能量阈值,短时能量阈值取值为350J,则该段音频出现严重的削顶现象,判定当前环境存在饱和啸叫。
优选的,步骤6.2中,使用一个滑动窗来完成分帧,一般认为语音在10-30ms之内是稳态的,所以取帧长wlen时长取值在10-40ms之内,帧移inc时长取5-15ms之间,本发明wlen时长取值为30ms、inc时长取值为10ms,其中帧数fn计算公式为:
其中,N为单声道音频数据的长度,wlen为帧长,inc为帧移;
对得到fn帧的幅度数组进行短时能量运算,第n帧的语音信号短时能量用En表示,计算公式如下:
其中表示第n帧的语音信号xn的m点处wav音频采样点幅度的平方。
本发明未详尽之处,均可参见现有技术。
本发明的有益效果为:
本发明提供了一种针对wav音频的分贝、回声、底噪及啸叫检测方法,该方法将特定环境的无异常音频的时域及频域特征作为标准值,通过采用自相关、FFT及短时能量运算有效的实现了异常音频检测,由于根据不同环境会有相应的标准值,一定程度上避免了因场景变换导致的音频异常检测失效及误检,最后每5秒进行一次异常音频检测,在一定程度上保证了实时性和准确率。此发明针对wav音频的分贝、回声、底噪及啸叫检测提出了一种新的方法,使其应用范围更广,实时性相对较高,检测效果更好,实现音频异常信号的快速识别与检测,更好帮助有关工作人员进行音频设备的维护和管理。
附图说明
构成本申请的一部分的说明书附图用来提供对本申请的进一步理解,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。
图1为本发明的流程示意图一;
图2为wav音频的文件结构示意图;
图3(a)为无回声信号的自相关图;
图3(b)为有回声信号的自相关图;
图4(a)为无底噪的低频段频谱图;
图4(b)为有底噪的低频段频谱图;
图5为单频啸叫信号的频谱图;
图6为饱和啸叫的削顶现象示意图;
图7为本发明的流程示意图二。
具体实施方式:
为了使本技术领域的人员更好的理解本说明书中的技术方案,下面结合本说明书实施中的附图,对本发明书实施例中的技术方案进行清楚、完整的描述,但不仅限于此,本发明未详尽说明的,均按本领域常规技术。
实施例1
一种针对wav音频的分贝、回声、底噪及啸叫检测方法,如图1所示,包括如下步骤:
步骤1:通过音频采集设备获取5秒的wav音频,分析wav音频文件获取文件头位置、采样频率、声道数目、位数信息,获取其采样点幅度,放入音频幅度数组中,用于后续计算;
具体步骤为:
步骤1.1:通过音频采集设备获取5秒的wav音频文件作为异常检测输入,即音频采集设备采集音频数据,每5秒送入检测模块中,不断循环检测;
步骤1.2:对获取的wav音频文件进行遍历,根据wav音频的封装结构,查找四个字节的ChunkID段落标识位,将每个字节根据ASCII码表进行转换,若转换结果等于RIFF(ASCII码表对应的十进制数为52 49 46 46),则此处为该wav文件的文件头;根据此文件头向后查找第19和第20个字节为NumChannels段落标识位,表示声道数目;第21至第24字节为SampleRate段落标识位,表示采样频率fs,即每秒有多少个采样点;第31和第32字节为BitsPerSample段落标识位,表示采样位数,通常为16个bit;第40个字节以后为音频的采样点幅度值,其中wav文件结构如图2所示;
步骤1.3:将上一步获取的信息分别保存到变量和数组中;
通常wav音频的采样频率fs=44100Hz、采样位数为16bit(2个字节)、采样点幅度范围为-32768~32767、声道数为单声道或者多声道,若声道数为多声道即两列数组,取其第一列转为单声道音频数据,数据长度记为N。
步骤2:通过对获取的音频幅度数组进行计算,将采样点幅度的绝对值除以声音振幅最大值,并进行对数运算,获取每个采样点的分贝值,若连续多个采样点分贝值大于分贝阈值,则判定环境分贝过高;
具体步骤为:
步骤2.1:设定分贝阈值;
根据相应环境需求及人们普遍可以容忍的最大分贝值作为分贝阈值,基于美国职业安全卫生管理局(OSHA)规定“人耳最大可以承受连续8小时85分贝的声音强度,而无负面影响”,分贝阈值一般设定范围区间为70db至85db,考虑到可以尽量提高方法的适配性,本发明将分贝阈值设定为80db。
步骤2.2:对获取的wav音频文件的采样点幅度进行分贝计算,将采样点幅度即2个字节的二进制转为有符号十进制结果并取绝对值记为|Prms(n)|,分贝计算公式如下:
其中,LP(n)为分贝值,对于位深为16bit的wav音频,其声音振幅最大值Pref=32768;
步骤2.3:将步骤2.2计算得到的分贝值比对分贝阈值,遍历长度为N的分贝值数组,若连续50个采样点均大于该分贝阈值,则判断环境分贝过高。
步骤3:通过对获取的音频幅度数组进行自相关运算,设置自相关阈值和距离阈值,通过得到的归一化后的自相关运算结果与自相关阈值循环比对,获得第一次大于自相关阈值的位置,并计算该位置与自相关数组中点位置的距离,如果该距离高于距离阈值,则判定当前环境有回声;
具体实现步骤包括:
步骤3.1:对同一场景下的无异常wav音频进行自相关运算,在当前环境下设定一个自相关阈值R0,通常无回声信号在非重叠位置的自相关值的范围为0至0.05,本实施例的自相关阈值R0取值为0.05;
步骤3.2:设置距离阈值D0,该距离阈值与可以检测到的最小回声延时时间τ0成正比,表示此方法检测回声灵敏度,计算公式如下:
τ0=D0/fs
其中,fs表示采样频率,通常wav音频的采样频率fs=44100Hz,根据需求选择想要达到的回声检测灵敏度,τ0的取值范围为0.05s至0.2s,根据距离阈值与τ0的计算公式,求得D0的取值范围为2205点至8820点,本实施例中D0取值为4000点;
步骤3.3:对获取的音频幅度数组进行自相关运算,得到归一化后的自相关运算结果R(m),其计算过程为:
对长度为N的单声道音频数据进行自相关运算,离散序列自相关计算公式如下:
其中Rx,x(m)为自相关运算结果,x(n)为第n点的wav音频采样点幅度,m为自相关运算的自变量,x(n-m)为第n-m点的wav音频采样点幅度;
通过上述运算获得的自相关运算结果序列Rx,x(m)点数为2N-1,对Px,x(m)进行绝对值运算并进行归一化处理,归一化公式如下:
获得范围在0~1的归一化自相关运算结果R(m),其点数为2N-1;
将获取的自相关结果R(m)与步骤3.1设置的自相关阈值R0进行对比,遍历2N-1点的R(m),记录大于自相关阈值R0(R0取值为0.05)的位置d0,即图4(b)第一个峰值处,并计算该位置d0与自相关数组中点位置的距离D=|d0-N|,如果该距离D高于步骤3.2设置的距离阈值D0(D0取值为4000点),则判定当前环境有回声;
步骤3.4:通过获取d0位置的R(m)值即R(d0),该值的大小代表回声比例系数α的大小,反映了回声的大小程度,即回声与原始音频的比值;将步骤3.2获取的距离D除以采样频率fs,得到回声的延时时间τ:
τ=D/fs
回声比例系数α和回声延迟时间τ在一定程度上反映了回声的严重程度。
步骤4:通过对获取的音频幅度数组进行FFT运算,并将FFT结果取前一半并做绝对值计算,设置低频段频域幅度阈值,若FFT绝对值结果在低频范围区间大于低频段频域幅度阈值,则判断当前环境有底噪;
具体实现步骤包括:
步骤4.1:对步骤1获取的长度为N的单声道音频数据进行FFT运算得到频域幅度数组;
FFT运算的计算公式如下:
其中X(k)为N点FFT序列的第k个点的值,x(n)为第n点的wav音频采样点幅度,k为FFT运算的自变量,j表示虚数单位;
通过进行FFT运算,将N点音频时域幅度转换为N点的FFT序列X(k),该值为虚数,通过取X(k)的实部即得到N点的频域幅度数组F(k),其中第k点的频域幅度数组F(k)与第k点的FFT序列X(k)转换关系如下:
X(k)=Re[F(k)]k=0,1,…,N-1
对得到的频域幅度数组F(k)截取前一半,并对其幅度进行绝对值处理,使得频率幅度全部为非负值,其中点数n0转化为对应频率f的换算公式如下:
步骤4.2:对同一场景下的无异常wav音频进行FFT运算,获得一个该场景下的频域幅度标准值,根据该标准值设置低频幅度阈值F1,通常无底噪音频信号在低频部分频域幅度低于300V,本发明对该低频幅度阈值取值为400V;
步骤4.3:设置低频范围区间(0至60Hz),FFT序列点数与对应频率转换公式如下:
其中k为FFT序列第k点,fk为FFT序列第k点的转换频率,对于音频长度为5秒、采样频率fs为44100Hz,低频范围区间为0至60Hz对应的低频FFT序列点数区间为0点至300点。
若在该低频FFT序列点数区间内存在频域幅度高于阈值F1,如图4(a)和图4(b)所示,则判断当前环境有底噪。
步骤5:设置一个高频域幅度阈值,通过步骤4的FFT绝对值结果与该阈值进行比对,若存在频域幅度大于该阈值,则判断当前环境存在单频啸叫;
步骤5.1:根据步骤4.2得到的频域幅度标准值设置一个高频域幅度阈值F2,通常无啸叫人声的频域幅度范围为0V至4000V,而含有单频啸叫的频域幅度在某一频率上会达到5000V至20000V,本发明对该较高的频域幅度阈值F取值为10000V;
步骤5.2:在全频段将步骤4.1的结果与步骤5.1的高频域幅度阈值F2进行比较,若在全频段内存在频域幅度高于该阈值,如图5所示,则判断当前环境存在单频啸叫。
步骤6:对步骤1获取的单声道音频数据进行分帧,并计算每帧的短时能量,设置一个短时能量阈值,若连续多个帧的短时能量大于该短时能量阈值,则该段音频出现严重的削顶现象,判定当前环境存在饱和啸叫;
具体实现步骤包括:
步骤6.1:对同一场景下的无异常wav音频进行分帧处理并计算其短时能量,获得一个该场景下的短时能量标准值,根据该短时能量标准值设置一个短时能量阈值,通常对于帧长时长取值为30ms、帧移时长取值为10ms的分帧后的无饱和啸叫信号每帧短时能量标准值范围为0J至250J,本方法对短时能量阈值取值为350J;
步骤6.2:对步骤1获取的单声道音频数据进行分帧处理,使用一个滑动窗来完成分帧,一般认为语音在10-30ms之内是稳态的,所以取帧长wlen时长取值在10-40ms之内,帧移inc时长取5-15ms之间,本发明wlen时长取值为30ms、inc时长取值为10ms,其中帧数fn计算公式为:
其中,N为单声道音频数据的长度,wlen为帧长,inc为帧移;
并对得到每帧计算其短时能量,第n帧的语音信号短时能量用En表示,计算公式如下:
其中表示第n帧的语音信号xn的m点处wav音频采样点幅度的平方;
由于饱和啸叫音频在时域上会出现严重的削顶现象,如图6所示,本方法通过短时能量作为指标进行检测,若连续20帧的短时能量大于步骤6.1设置的短时能量阈值,短时能量阈值取值为350J,则该段音频出现严重的削顶现象,如图6所示,判定当前环境存在饱和啸叫。
步骤7:将步骤2、3、4、5、6结果输出显示,并每5s循环一次检测。
以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明所述原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (9)
1.一种针对wav音频的分贝、回声、底噪及啸叫检测方法,其特征在于,包括如下步骤:
步骤1:通过音频采集设备获取4至10秒的wav音频,分析wav音频文件获取文件头位置、采样频率、声道数目、位数信息,获取其采样点幅度,放入音频幅度数组中,用于后续计算;
步骤2:通过对获取的音频幅度数组进行计算,将采样点幅度的绝对值除以声音振幅最大值,并进行对数运算,获取每个采样点的分贝值,若连续多个采样点分贝值大于分贝阈值,则判定环境分贝过高;
步骤3:通过对获取的音频幅度数组进行自相关运算,设置自相关阈值和距离阈值,通过得到的归一化后的自相关运算结果与自相关阈值循环比对,获得第一次大于自相关阈值的位置,并计算该位置与自相关数组中点位置的距离,如果该距离高于距离阈值,则判定当前环境有回声;
步骤4:通过对获取的音频幅度数组进行FFT运算,并将FFT结果取前一半并做绝对值计算,设置低频段频域幅度阈值,若FFT绝对值结果在低频范围区间大于低频段频域幅度阈值,则判断当前环境有底噪;
步骤5:设置一个高频域幅度阈值,通过步骤4的FFT绝对值结果与该阈值进行比对,若存在频域幅度大于该阈值,则判断当前环境存在单频啸叫;
步骤6:对步骤1获取的单声道音频数据进行分帧,并计算每帧的短时能量,设置一个短时能量阈值,若连续多个帧的短时能量大于该短时能量阈值,则该段音频出现严重的削顶现象,判定当前环境存在饱和啸叫;
步骤7:将步骤2、3、4、5、6结果输出显示,并每4~10秒循环一次检测。
2.根据权利要求1所述的针对wav音频的分贝、回声、底噪及啸叫检测方法,其特征在于,步骤1具体实现步骤包括:
步骤1.1:通过音频采集设备获取5秒的wav音频文件作为异常检测输入;
步骤1.2:对获取的wav音频文件进行遍历,查找四个字节的ChunkID段落标识位,将每个字节根据ASCII码表进行转换,若转换结果等于RIFF,则此处为该wav文件的文件头;根据此文件头向后查找第19和第20个字节为NumChannels段落标识位,表示声道数目;第21至第24字节为SampleRate段落标识位,表示采样频率fs,即每秒有多少个采样点;第31和第32字节为BitsPerSample段落标识位,表示采样位数,为16个bit;第40个字节以后为音频的采样点幅度值;
步骤1.3:将上一步获取的信息分别保存到变量和数组中。
3.根据权利要求1所述的针对wav音频的分贝、回声、底噪及啸叫检测方法,其特征在于,步骤2的具体实现步骤包括:
步骤2.1:设定分贝阈值;
步骤2.2:对获取的wav音频文件的采样点幅度进行分贝计算,将采样点幅度即2个字节的二进制转为有符号十进制结果并取绝对值记为|Prms(n)|,分贝计算公式如下:
其中,LP(n)为分贝值,对于位深为16bit的wav音频,其声音振幅最大值Pref=32768;
步骤2.3:将步骤2.2计算得到的分贝值比对分贝阈值,若连续50个采样点均大于该分贝阈值,则判断环境分贝过高。
4.根据权利要求1所述的针对wav音频的分贝、回声、底噪及啸叫检测方法,其特征在于,步骤3的具体实现步骤包括:
步骤3.1:对同一场景下的无异常wav音频进行自相关运算,在当前环境下设定一个自相关阈值R0;
步骤3.2:设置距离阈值D0,该距离阈值与可以检测到的最小回声延时时间τ0成正比,表示此方法检测回声灵敏度,计算公式如下:
τ0=D0/fs
其中,fs表示采样频率,根据需求选择想要达到的回声检测灵敏度,根据距离阈值与τ0的计算公式,求得D0的取值范围,确定D0的取值;
步骤3.3:对获取的音频幅度数组进行自相关运算,得到归一化后的自相关运算结果R(m),其计算过程为:
对长度为N的单声道音频数据进行自相关运算,离散序列自相关计算公式如下:
其中Rx,x(m)为自相关运算结果,x(n)为第n点的wav音频采样点幅度,m为自相关运算的自变量,x(n-m)为第n-m点的wav音频采样点幅度;
对Rx,x(m)进行绝对值运算并进行归一化处理,归一化公式如下:
获得范围在0~1的归一化自相关运算结果R(m),其点数为2N-1;
将获取的自相关结果R(m)与步骤3.1设置的自相关阈值R0进行对比,遍历R(m),记录大于自相关阈值R0的位置d0,并计算该位置d0与自相关数组中点位置的距离D=|d0-N|,如果该距离D高于步骤3.2设置的距离阈值D0,则判定当前环境有回声;
步骤3.4:通过获取d0位置的R(m)值,该值的大小代表回声比例系数α的大小,反映了回声的大小程度;将步骤3.2获取的距离D除以采样频率fs,得到回声的延时时间τ:
τ=D/fs
回声比例系数α和回声延迟时间τ在一定程度上反映了回声的严重程度。
5.根据权利要求1所述的针对wav音频的分贝、回声、底噪及啸叫检测方法,其特征在于,步骤4的具体实现步骤包括:
步骤4.1:对步骤1获取的长度为N的单声道音频数据进行FFT运算得到频域幅度数组,FFT运算的计算公式如下:
其中X(k)为N点FFT序列的第k个点的值,x(n)为第n点的wav音频采样点幅度,k为FFT运算的自变量,j表示虚数单位;
通过进行FFT运算,将N点音频时域幅度转换为N点的FFT序列X(k),该值为虚数,通过取X(k)的实部即得到N点的频域幅度数组F(k),其中第k点的频域幅度数组F(k)与第k点的FFT序列X(k)转换关系如下:
X(k)=Re[F(k)]k=0,1,…,N-1
对得到的频域幅度数组F(k)截取前一半,并对其幅度进行绝对值处理,使得频率幅度全部为非负值;
步骤4.2:对同一场景下的无异常wav音频进行FFT运算,获得一个该场景下的频域幅度标准值,根据该标准值设置低频幅度阈值;
步骤4.3:设置低频范围区间,将步骤4.1的结果与低频幅度阈值进行比较,若在低频范围区间内存在步骤4.1的频域幅度高于步骤4.2设置的低频幅度阈值,则判断当前环境有底噪。
6.根据权利要求5所述的针对wav音频的分贝、回声、底噪及啸叫检测方法,其特征在于,步骤5的具体实现步骤包括:
步骤5.1:根据步骤4.2得到的频域幅度标准值设置一个高频域幅度阈值;
步骤5.2:在全频段将步骤4.1的结果与步骤5.1的高频域幅度阈值进行比较,若在全频段内存在频域幅度高于该阈值,则判断当前环境存在单频啸叫。
7.根据权利要求6所述的针对wav音频的分贝、回声、底噪及啸叫检测方法,其特征在于,步骤6的具体实现步骤包括:
步骤6.1:对同一场景下的无异常wav音频进行分帧处理并计算其短时能量,获得一个该场景下的短时能量标准值,根据该短时能量标准值设置一个短时能量阈值;
步骤6.2:对步骤1获取的单声道音频数据进行分帧处理,并对得到每帧计算其短时能量,若连续20帧的短时能量大于步骤6.1设置的短时能量阈值,则该段音频出现严重的削顶现象,判定当前环境存在饱和啸叫。
8.根据权利要求7所述的针对wav音频的分贝、回声、底噪及啸叫检测方法,其特征在于,步骤6.2中,使用一个滑动窗来完成分帧,帧数fn计算公式为:
其中,N为单声道音频数据的长度,wlen为帧长,inc为帧移;
对得到fn帧的幅度数组进行短时能量运算,第n帧的语音信号短时能量用En表示,计算公式如下:
其中表示第n帧的语音信号xn的m点处wav音频采样点幅度的平方。
9.根据权利要求1所述的针对wav音频的分贝、回声、底噪及啸叫检测方法,其特征在于,步骤1中wav音频长度优选为5s,步骤7中每5秒循环一次检测。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310749826.7A CN116959491A (zh) | 2023-06-25 | 2023-06-25 | 一种针对wav音频的分贝、回声、底噪及啸叫检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310749826.7A CN116959491A (zh) | 2023-06-25 | 2023-06-25 | 一种针对wav音频的分贝、回声、底噪及啸叫检测方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116959491A true CN116959491A (zh) | 2023-10-27 |
Family
ID=88452033
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310749826.7A Pending CN116959491A (zh) | 2023-06-25 | 2023-06-25 | 一种针对wav音频的分贝、回声、底噪及啸叫检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116959491A (zh) |
-
2023
- 2023-06-25 CN CN202310749826.7A patent/CN116959491A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4308278B2 (ja) | 電気通信装置の客観的音声品質測定の方法および装置 | |
EP3166239B1 (en) | Method and system for scoring human sound voice quality | |
CN101448180B (zh) | 一种移动电话扬声器测试系统 | |
CN111429939B (zh) | 一种双声源的声音信号分离方法和拾音器 | |
CN116437280A (zh) | 评估麦克风阵列一致性的方法、设备、装置和系统 | |
Prego et al. | A blind algorithm for reverberation-time estimation using subband decomposition of speech signals | |
CN113490115A (zh) | 一种基于声纹识别技术的声反馈抑制方法及系统 | |
CN112382313A (zh) | 一种音频通讯质量评价系统及方法 | |
CN110390954B (zh) | 语音产品质量的评价方法和装置 | |
CN111757235A (zh) | 一种具有教室语言清晰度测量功能的扩声系统 | |
CN111586527A (zh) | 智慧语音处理系统 | |
CN116959491A (zh) | 一种针对wav音频的分贝、回声、底噪及啸叫检测方法 | |
CN111276161A (zh) | 一种语音质量评分系统及方法 | |
JP3350713B2 (ja) | 騒音源の種類を特定する方法、その装置および媒体 | |
CN112995882B (zh) | 一种智能设备音频开环测试方法 | |
Pollack | The effect of white noise on the loudness of speech of assigned average level | |
WO2022271746A1 (en) | Multi-encoder end-to-end automatic speech recognition (asr) for joint modeling of multiple input devices | |
JP3584287B2 (ja) | 音響評価方法およびそのシステム | |
JPH06261391A (ja) | ハウリング抑制装置 | |
CN112037759A (zh) | 抗噪感知敏感度曲线建立及语音合成方法 | |
CN115691556B (zh) | 一种设备端多通道语音质量的检测方法 | |
CN112887856B (zh) | 一种用于降低噪音的声音处理方法及系统 | |
EP4303874A1 (en) | Providing a measure of intelligibility of an audio signal | |
CN116233715A (zh) | 扩声质量检测和指示方法及扩声系统 | |
Somarathne et al. | A Study of the Variation of Acoustic Properties of Signals Received by Used Mobile Phones |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |