CN106531193B - 一种背景噪声自适应的异常声音检测方法及系统 - Google Patents

一种背景噪声自适应的异常声音检测方法及系统 Download PDF

Info

Publication number
CN106531193B
CN106531193B CN201610965380.1A CN201610965380A CN106531193B CN 106531193 B CN106531193 B CN 106531193B CN 201610965380 A CN201610965380 A CN 201610965380A CN 106531193 B CN106531193 B CN 106531193B
Authority
CN
China
Prior art keywords
energy
frame
ambient noise
signal
noise
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.)
Active
Application number
CN201610965380.1A
Other languages
English (en)
Other versions
CN106531193A (zh
Inventor
贾永涛
周苗
刘琛
张明
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhongwei Shandong Software Co ltd
Original Assignee
JOVISION TECHNOLOGY Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by JOVISION TECHNOLOGY Co Ltd filed Critical JOVISION TECHNOLOGY Co Ltd
Priority to CN201610965380.1A priority Critical patent/CN106531193B/zh
Publication of CN106531193A publication Critical patent/CN106531193A/zh
Application granted granted Critical
Publication of CN106531193B publication Critical patent/CN106531193B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/78Detection of presence or absence of voice signals
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/03Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters
    • G10L25/21Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters the extracted parameters being power information
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/48Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use
    • G10L25/51Speech 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

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)
  • Burglar Alarm Systems (AREA)
  • Soundproofing, Sound Blocking, And Sound Damping (AREA)

Abstract

本发明涉及一种背景噪声自适应的异常声音检测方法及系统。该系统,包括通用模块,还包括能量陡升检测模块,能量陡升检测模块包括背景噪声超时未更新检测模块;背景噪声判定模块;更新背景噪声能量模块;异常声音信号能量模块;能量陡升判决模块;陡升连续帧判决模块;输出能量陡升报警信号模块,还包括背景噪声陡降检测模块。本发明全部处理过程在时域,相比频域处理,运算量小,复杂度低;独创性的提出了能量陡升检测方法,将背景噪声和声音信号能量简单分离,运用了声音信号能量和背景噪声能量差值检测,异常声音报警门限可以根据背景噪声能量的变化而自动调整,有效避免硬门限的局限性,从而实现了背景噪声能量自适应的异常声音检测功能。

Description

一种背景噪声自适应的异常声音检测方法及系统
(一)技术领域
本发明涉及声音信号处理领域,具体涉及一种背景噪声自适应的异常声音检测方法及系统。
(二)背景技术
在日常生活中,各种突发事件会产生异常声音,对其进行检测分析可以推送报警信息给用户,可有效预防异常事件。例如仓库被盗时异常波动的声音信号、ATM自助银行内用户被抢劫时的喊叫打斗声、工厂机器停转导致的声音异常降低等,均可通过异常声音检测获取报警信息,降低用户人身安全威胁和财产损失。
一种典型异常声音检测方法及装置CN201410850883.5,其采用声谱图构造识别特征矩阵的方法,相对时域运算具有较高复杂度,在有限资源的嵌入式设备中集成难度较大,且实时性不能保证;且该发明需要提前训练异常声音样本库,在安防监控领域各种异常声音不可预测,样本库也无法覆盖所有异常声音类型,例如在封闭金库等场景下,只要有声音信号的波动需立即报警,此时需要检测的是声音信号的异常波动,而不是异常声音的分类情况,因此基于分类的异常声音检测有可能失效。
异常声音检测方法及系统CN201410765322.5,其采用时域能量与过零率为运算基础,但是其没有考虑背景噪声情况,麦克风拾取到的声音信号主要包括目标声音与背景噪声,例如在ATM自助银行拾取的声音可能会有街道噪声、下雨声、风声等,如果不通过一定算法将此类声音去除,会造成异常声音检测的误报率很高。
(三)发明内容
本发明针对现有技术的不足之处,提供一种背景噪声自适应的异常声音检测方法及系统,该方法及系统,在能量陡升检测中,将声音信号和背景噪声区分开,避免由于噪声信号波动造成的误报警;同时提出了一种背景噪声陡降检测方法,可以有效监控工厂机器运转、麦克风被蒙蔽、麦克风损坏等情况。
本发明是通过如下技术方案实现的:
一种背景噪声自适应的异常声音检测系统,包括通用模块,该通用模块包括:
分帧模块:对声音信号s(n)进行分帧;
帧信号RMS能量模块:计算一帧信号RMS值,记为frame_energy,
其特殊之处在于:还包括能量陡升检测模块,
其中,
能量陡升检测模块包括:
背景噪声超时未更新检测模块:设置计时器,若超过一定时间timeout_th还未更新背景噪声,则强制把当前帧信号RMS能量更新为背景噪声能量;
背景噪声判定模块:通过计算背景噪声缓冲区均值估计背景噪声,通过当前帧信号RMS能量与估计的背景噪声做差,差值大于一定门限则认为当前帧为异常声音信号帧;否则为背景噪声帧;
更新背景噪声能量模块:当前帧为背景噪声帧,则将当前帧信号RMS能量更新到背景噪声缓冲区中;
异常声音信号能量模块:当前帧为异常声音信号帧时,则将当前帧信号RMS能量更新为异常声音信号能量,即signal_energy=frame_energy;
能量陡升判决模块:此模块主要有硬门限判决和差值门限判决共同作用,具体为:
signal_energy>energy_th
signal_energy - bg_energy_avg>energy_diff_th,
则t_count=t_count+1,否则t_count=0,
其中,
bg_energy_avg为背景噪声缓冲区均值,
bg_update_th为背景噪声更新门限,
energy_th为硬门限,
energy_diff_th为差值门限,反应了能量和背景噪声的差值,
t_count为陡升连续帧计数器,用于陡升连续帧判决;
陡升连续帧判决模块:若t_count > t_count_th,则有连续t_count帧的信号为能量陡升信号,判断有能量陡升情况;
输出能量陡升报警信号模块:输出能量陡升信号。
所述的背景噪声自适应的异常声音检测系统,还包括背景噪声陡降检测模块,
所述背景噪声陡降检测模块包括:
更新历史背景噪声能量模块:历史背景噪声定义为从当前帧开始,往前一段时间的背景噪声;
背景噪声陡降判别模块:若历史背景噪声与当前背景噪声缓冲区均值的差值超过一定门限,则判别为背景噪声陡降;
输出背景噪声陡降报警信号模块:输出背景噪声陡降报警信号。
其中,
通过计算帧信号frame(n)的RMS激励平均值,在量化位数上归一化,并且取对数,得到帧信号RMS能量。
背景噪声判定模块:判定当前帧是背景噪声还是异常声音信号时,若frame_energy-bg_energy_avg>bg_update_th,则bg_flag=0,表示当前帧信号不是背景噪声,否则bg_flag=1,表示当前帧信号为背景噪声。
背景噪声自适应的异常声音检测方法,包括以下步骤:
S101:获取音频流数据s(n);
S102:对声音信号s(n)进行分帧, 分帧后信号为frame(n);
S103:帧信号RMS能量,计算一帧信号RMS值,通过计算帧信号frame(n)的RMS激励平均值,在量化位数上归一化,并且取对数,即可得到帧信号RMS能量,记为frame_energy;
S104:设置计时器,若超过一定时间timeout_th还未更新背景噪声,则强制把当前帧信号RMS能量更新为背景噪声能量;
S105:背景噪声判定,通过计算背景噪声缓冲区均值估计背景噪声,通过当前帧信号RMS能量与估计的背景噪声做差,差值大于一定门限则认为当前帧为异常声音信号帧,否则为背景噪声帧,当前帧信号不是背景噪声,执行S106;当前帧信号为背景噪声,执行S110;
S110:更新背景噪声能量、更新历史背景噪声能量,
a.更新背景噪声能量:
如果当前帧信号为背景噪声,则将当前帧信号RMS能量更新到背景噪声缓冲区中;
b.更新历史背景噪声能量:
历史背景噪声为从当前帧开始,往前一段时间的背景噪声,并且随着时间推移,历史背景噪声不断更新,下一步跳转至S111;
S106:如果当前帧信号不是背景噪声,则将当前帧信号RMS能量更新为异常声音信号能量,即signal_energy=frame_energy;
S107:能量陡升判决,此模块通过有硬门限判决和差值门限判决共同作用,
具体为:
signal_energy>energy_th或
signal_energy - bg_energy_avg>energy_diff_th,
则t_count=t_count+1,下一步执行S108;否则t_count=0跳转至S113;
S108:陡升连续帧判决,若t_count > t_count_th,则认为已经有连续t_count帧的信号为能量陡升信号,可以判断有能量陡升情况,执行S109,否则执行S113;
S109:输出能量陡升报警信号,下一步执行S113;
S111: 背景噪声陡降判别,若历史背景噪声与当前背景噪声缓冲区均值的差值超过一定门限,
即bg_energy_bf – bg_energy_avg>bg_energy_drop_th,
则判别为背景噪声陡降,执行S112,否则跳转到S113;
S112:输出背景噪声陡降报警信号,下一步执行S113。
S113:结束,当前帧信号处理结束,转至处理下一帧。
其中,
步骤S102中,对声音信号s(n)进行分帧时,分帧采用10-30ms作为帧长,帧移为0,
步骤S103中,量化位数dig_bit=8-32,
步骤S104中,若超过timeout_th=1-1000还未更新背景噪声,则强制把当前帧信号RMS能量更新为背景噪声,
步骤S105中, bg_update_th=0.1-20(dbfs),背景噪声缓冲区长度bg_buf_len=1-50。
步骤S110 b.更新历史背景噪声能量中,历史背景噪声帧间隔为10-100帧。
步骤S107中,硬门限energy_th=1-99,差值门限energy_diff_th=1-99。
步骤S108中,t_count_th=1-50。
步骤S111中,bg_energy_drop_th=1-99。
优选方案为:
步骤S102中,对声音信号s(n)进行分帧时,分帧采用20ms作为帧长,帧移为0,
步骤S103中,量化位数dig_bit=16,
步骤S104中,若超过timeout_th=500还未更新背景噪声,则强制把当前帧信号RMS能量更新为背景噪声,
步骤S105中, bg_update_th=3(dbfs),背景噪声缓冲区长度bg_buf_len=5,步骤S110 b.更新历史背景噪声能量中,历史背景噪声帧间隔为75帧,75帧对应时间为1.5秒,
步骤S107中,硬门限energy_th=93,差值门限energy_diff_th=20,
步骤S108中,t_count_th=5,
步骤S111中,bg_energy_drop_th=19。
本发明的有益效果:
本发明全部处理过程在时域,相比现有技术的频域处理,运算量小,复杂度低,可以有效集成到大多数嵌入式设备;
本发明独创性的提出了能量陡升检测方法,将背景噪声和声音信号能量简单分离,运用了声音信号能量和背景噪声能量差值检测,异常声音报警门限可以根据背景噪声能量的变化而自动调整,有效避免硬门限的局限性,从而实现了背景噪声能量自适应的异常声音检测功能;
本发明提出背景噪声陡降检测方法,可有效检测工厂机器停转,麦克风被蒙蔽,麦克风损坏等情况。
(四)附图说明
附图1为本发明流程图;
附图2为本发明的系统框图,
图中,21通用模块,211分帧模块,212帧信号RMS能量模块,22能量陡升检测模块,221背景噪声超时未更新检测模块,222背景噪声判定模块,223更新背景噪声能量模块,224异常声音信号能量模块,225能量陡升判决模块,226陡升连续帧判决模块,227输出能量陡升报警信号模块,23背景噪声陡降检测模块,231更新历史背景噪声能量模块,232背景噪声陡降判别模块,233输出背景噪声陡降报警信号模块。
(五)具体实施方式
以下通过实施例对本发明进行更详细的描述,但本发明的保护范围并不限于这些实施例。
实施例1
本发明主要有三个部分组成,通用模块21,能量陡升检测模块22,背景噪声陡降检测模块23。所有模块全部在时域处理,不涉及频域变换,相对复杂度低,运算速度快。
通用模块21包括分帧模块211和帧信号RMS能量模块212
分帧模块211:声音信号s(n)包含语音信号,由于语音信号具有10ms-30ms的短时平稳性,按照语音信号短时平稳性进行分帧,分帧后信号为frame(n),因为处理完全是时域能量处理,所以使用矩形窗分帧即可。帧长为N,分帧后的信号为frame(n)。
帧信号RMS能量模块212:计算一帧信号RMS值,通过计算帧信号frame(n)的RMS激励平均值,在量化位数上归一化,并且取对数,即可得到帧信号RMS能量,记为frame_energy。
能量陡升检测模块22主要包括背景噪声超时未更新检测模块221,背景噪声判定模块222,更新背景噪声能量模块223,异常声音信号能量模块224,能量陡升判决模块225,陡升连续帧判决模块226,输出能量陡升报警信号模块227。
背景噪声超时未更新检测模块221:若长时间未更新背景噪声,可能由于背景噪声误判为异常声音信号导致无法更新背景噪声,所以需要设置一个计时器,若超过一定时间timeout_th还未更新背景噪声,则强制把当前帧信号RMS能量更新为背景噪声能量。
背景噪声判定模块222:此模块主要功能是判定当前帧是背景噪声还是异常声音信号,方法为通过计算背景噪声缓冲区均值估计背景噪声,通过当前帧信号RMS能量与估计的背景噪声做差,差值大于一定门限则认为当前帧为异常声音信号帧;否则为背景噪声帧。例如,frame_energy-bg_energy_avg>bg_update_th,则bg_flag=0,表示当前帧信号不是背景噪声,否则bg_flag=1,表示当前帧信号为背景噪声,其中bg_energy_avg为背景噪声缓冲区均值,bg_update_th背景噪声更新门限。
更新背景噪声能量模块223:如果bg_flag=1,则将当前帧信号RMS能量更新到背景噪声缓冲区中。
异常声音信号能量模块224:如果bg_flag=0,则将当前帧信号RMS能量更新为异常声音信号能量,即signal_energy=frame_energy。
能量陡升判决模块225:此模块主要有硬门限判决和差值门限判决共同作用,具体为signal_energy>energy_th或signal_energy - bg_energy_avg>energy_diff_th,则t_count=t_count+1,否则t_count=0;其中energy_th为硬门限,energy_diff_th为差值门限,反应了能量和背景噪声的差值,t_count为陡升连续帧计数器,用于陡升连续帧判决。
陡升连续帧判决模块226:若t_count > t_count_th,则认为已经有连续t_count帧的信号为能量陡升信号,可以判断有能量陡升情况。
输出能量陡升报警信号模块227:输出能量陡升信号。
背景噪声陡降检测模块23主要包括更新历史背景噪声能量模块231,背景噪声陡降判别模块232,输出背景噪声陡降报警信号模块233。
更新历史背景噪声能量模块231:历史背景噪声定义为从当前帧开始,往前一段时间的背景噪声。
背景噪声陡降判别模块232:若历史背景噪声与当前背景噪声缓冲区均值的差值超过一定门限,则判别为背景噪声陡降。
输出背景噪声陡降报警信号模块233:输出背景噪声陡降报警信号。
本实施例背景噪声自适应的异常声音检测系统异常声音检测方法具体步骤如下:
采样率8kHz,16bit量化,声音信号帧长20ms,即160个采样点。
S101:通常在此步骤获取音频流数据s(n);下一步执行S102。
S102:分帧,采用20ms作为帧长,帧移为0,使用矩形窗分帧即可,N=160为帧长, 分帧后信号为frame(n)。
下一步执行S103。
S103:帧信号RMS能量,计算一帧信号RMS值,通过计算帧信号frame(n)的RMS激励平均值,在量化位数上归一化,并且取对数,即可得到帧信号RMS能量,记为frame_energy。
在本实施例中量化位数dig_bit=16。
下一步执行S104。
S104:背景噪声超时未更新检测,若长时间未更新背景噪声,可能由于背景噪声误判为异常声音信号导致无法更新背景噪声,所以需要设置一个计时器,若超过帧数timeout_th=500(500帧为10秒)还未更新背景噪声,则跳转到S110,否则执行S105。
S105:背景噪声判定,此模块主要功能是判定当前帧是背景噪声还是异常声音信号,方法为通过计算背景噪声缓冲区均值估计背景噪声,通过当前帧信号RMS能量与估计的背景噪声做差,差值大于一定门限则认为当前帧为异常声音信号帧,否则为背景噪声帧。具体的:如果frame_energy-bg_energy_avg>bg_update_th,其中bg_update_th=3(dbfs),则bg_flag=0,表示当前帧信号不是背景噪声,执行S106;否则bg_flag=1,表示当前帧信号为背景噪声,执行S110;其中bg_energy_avg背景噪声缓冲区均值,背景噪声缓冲区在程序开始时初始化为全1数组,在本实施例中,背景噪声缓冲区长度bg_buf_len=5。
S110:更新背景噪声能量、更新历史背景噪声能量。
1.更新背景噪声能量:
如果bg_flag=1,则将当前帧信号RMS能量更新到背景噪声缓冲区中。
2.更新历史背景噪声能量:
历史背景噪声为从当前帧开始,往前一段时间的背景噪声,并且随着时间推移,历史背景噪声不断更新,本实施例取75帧(75帧对应时间为1.5秒)为历史背景噪声帧间隔。
下一步跳转至S111。
S106:异常声音信号能量,如果bg_flag=0,则将当前帧信号RMS能量更新为异常声音信号能量,即signal_energy=frame_energy。
下一步执行S107。
S107:能量陡升判决,此模块主要有硬门限判决和差值门限判决共同作用,具体为signal_energy>energy_th或signal_energy - bg_energy_avg>energy_diff_th,则t_count=t_count+1,下一步执行S108;否则t_count=0跳转至S113。
在本实施例中,energy_th=93为硬门限,energy_diff_th=20为差值门限,反应了能量和背景噪声的差值,t_count为陡升连续帧计数器,用于陡升连续帧判决。
S108:陡升连续帧判决,若t_count > t_count_th,则认为已经有连续t_count帧的信号为能量陡升信号,可以判断有能量陡升情况,执行S109,否则执行S113。本实施例中t_count_th=5。
S109:输出能量陡升报警信号,可以是高低电平信号,也可以是标志位。
下一步执行S113。
S111: 背景噪声陡降判别,若历史背景噪声与当前背景噪声缓冲区均值的差值超过一定门限,即bg_energy_bf – bg_energy_avg>bg_energy_drop_th,则判别为背景噪声陡降,执行S112,否则跳转到S113。本实施例中bg_energy_drop_th=19。
S112:输出背景噪声陡降报警信号,可以是高低电平信号,也可以是标志位。
下一步执行S113。
S113:结束,当前帧信号处理结束,可以转至下一帧处理。
实施例2
本实施例背景噪声自适应的异常声音检测系统异常声音检测方法具体步骤如下:
采样率11.025 kHz,8bit量化,声音信号帧长10ms,即110个采样点。
S101:通常在此步骤获取音频流数据s(n);下一步执行S102。
S102:分帧,采用10ms作为帧长,帧移为0,使用矩形窗分帧即可,N=110为帧长, 分帧后信号为frame(n)。
下一步执行S103。
S103:帧信号RMS能量,计算一帧信号RMS值,通过计算帧信号frame(n)的RMS激励平均值,在量化位数上归一化,并且取对数,即可得到帧信号RMS能量,记为frame_energy。
在本实施例中量化位数dig_bit=8。
下一步执行S104。
S104:背景噪声超时未更新检测,若长时间未更新背景噪声,可能由于背景噪声误判为异常声音信号导致无法更新背景噪声,所以需要设置一个计时器,若超过帧数timeout_th=1000(1000帧为10秒)还未更新背景噪声,则跳转到S110,否则执行S105。
S105:背景噪声判定,此模块主要功能是判定当前帧是背景噪声还是异常声音信号,方法为通过计算背景噪声缓冲区均值估计背景噪声,通过当前帧信号RMS能量与估计的背景噪声做差,差值大于一定门限则认为当前帧为异常声音信号帧,否则为背景噪声帧。具体的:如果frame_energy-bg_energy_avg>bg_update_th,其中bg_update_th=2(dbfs),则bg_flag=0,表示当前帧信号不是背景噪声,执行S106;否则bg_flag=1,表示当前帧信号为背景噪声,执行S110;其中bg_energy_avg背景噪声缓冲区均值,背景噪声缓冲区在程序开始时初始化为全1数组,在本实施例中,背景噪声缓冲区长度bg_buf_len=4。
S110:更新背景噪声能量、更新历史背景噪声能量。
1.更新背景噪声能量:
如果bg_flag=1,则将当前帧信号RMS能量更新到背景噪声缓冲区中。
2.更新历史背景噪声能量:
历史背景噪声为从当前帧开始,往前一段时间的背景噪声,并且随着时间推移,历史背景噪声不断更新,本实施例取150帧(150帧对应时间为1.5秒)为历史背景噪声帧间隔。
下一步跳转至S111。
S106:异常声音信号能量,如果bg_flag=0,则将当前帧信号RMS能量更新为异常声音信号能量,即signal_energy=frame_energy。
下一步执行S107。
S107:能量陡升判决,此模块主要有硬门限判决和差值门限判决共同作用,具体为signal_energy>energy_th或signal_energy - bg_energy_avg>energy_diff_th,则t_count=t_count+1,下一步执行S108;否则t_count=0跳转至S113。
在本实施例中,energy_th=87为硬门限,energy_diff_th=15为差值门限,反应了能量和背景噪声的差值,t_count为陡升连续帧计数器,用于陡升连续帧判决。
S108:陡升连续帧判决,若t_count > t_count_th,则认为已经有连续t_count帧的信号为能量陡升信号,可以判断有能量陡升情况,执行S109,否则执行S113。本实施例中t_count_th=3。
S109:输出能量陡升报警信号,可以是高低电平信号,也可以是标志位。
下一步执行S113。
S111: 背景噪声陡降判别,若历史背景噪声与当前背景噪声缓冲区均值的差值超过一定门限,即bg_energy_bf – bg_energy_avg>bg_energy_drop_th,则判别为背景噪声陡降,执行S112,否则跳转到S113。本实施例中bg_energy_drop_th=15。
S112:输出背景噪声陡降报警信号,可以是高低电平信号,也可以是标志位。
下一步执行S113。
S113:结束,当前帧信号处理结束,可以转至下一帧处理。
其他与实施例1相同。
实施例3
本实施例背景噪声自适应的异常声音检测系统异常声音检测方法具体步骤如下:
采样率8kHz,24bit量化,声音信号帧长30ms,即240个采样点。
S101:通常在此步骤获取音频流数据s(n);下一步执行S102。
S102:分帧,采用30ms作为帧长,帧移为0,使用矩形窗分帧即可,N=240为帧长, 分帧后信号为frame(n)。
下一步执行S103。
S103:帧信号RMS能量,计算一帧信号RMS值,通过计算帧信号frame(n)的RMS激励平均值,在量化位数上归一化,并且取对数,即可得到帧信号RMS能量,记为frame_energy。
在本实施例中量化位数dig_bit=24。
下一步执行S104。
S104:背景噪声超时未更新检测,若长时间未更新背景噪声,可能由于背景噪声误判为异常声音信号导致无法更新背景噪声,所以需要设置一个计时器,若超过帧数timeout_th=500(500帧为15秒)还未更新背景噪声,则跳转到S110,否则执行S105。
S105:背景噪声判定,此模块主要功能是判定当前帧是背景噪声还是异常声音信号,方法为通过计算背景噪声缓冲区均值估计背景噪声,通过当前帧信号RMS能量与估计的背景噪声做差,差值大于一定门限则认为当前帧为异常声音信号帧,否则为背景噪声帧。具体的:如果frame_energy-bg_energy_avg>bg_update_th,其中bg_update_th=5(dbfs),则bg_flag=0,表示当前帧信号不是背景噪声,执行S106;否则bg_flag=1,表示当前帧信号为背景噪声,执行S110;其中bg_energy_avg背景噪声缓冲区均值,背景噪声缓冲区在程序开始时初始化为全1数组,在本实施例中,背景噪声缓冲区长度bg_buf_len=7。
S110:更新背景噪声能量、更新历史背景噪声能量。
1.更新背景噪声能量:
如果bg_flag=1,则将当前帧信号RMS能量更新到背景噪声缓冲区中。
2.更新历史背景噪声能量:
历史背景噪声为从当前帧开始,往前一段时间的背景噪声,并且随着时间推移,历史背景噪声不断更新,本实施例取82帧(82帧对应时间为2.46秒)为历史背景噪声帧间隔。
下一步跳转至S111。
S106:异常声音信号能量,如果bg_flag=0,则将当前帧信号RMS能量更新为异常声音信号能量,即signal_energy=frame_energy。
下一步执行S107。
S107:能量陡升判决,此模块主要有硬门限判决和差值门限判决共同作用,具体为signal_energy>energy_th或signal_energy - bg_energy_avg>energy_diff_th,则t_count=t_count+1,下一步执行S108;否则t_count=0跳转至S113。
在本实施例中,energy_th=99为硬门限,energy_diff_th=25为差值门限,反应了能量和背景噪声的差值,t_count为陡升连续帧计数器,用于陡升连续帧判决。
S108:陡升连续帧判决,若t_count > t_count_th,则认为已经有连续t_count帧的信号为能量陡升信号,可以判断有能量陡升情况,执行S109,否则执行S113。本实施例中t_count_th=7。
S109:输出能量陡升报警信号,可以是高低电平信号,也可以是标志位。
下一步执行S113。
S111: 背景噪声陡降判别,若历史背景噪声与当前背景噪声缓冲区均值的差值超过一定门限,即bg_energy_bf – bg_energy_avg>bg_energy_drop_th,则判别为背景噪声陡降,执行S112,否则跳转到S113。本实施例中bg_energy_drop_th=23。
S112:输出背景噪声陡降报警信号,可以是高低电平信号,也可以是标志位。
下一步执行S113。
S113:结束,当前帧信号处理结束,可以转至下一帧处理。
其他与实施例1相同。
实施例4
本实施例背景噪声自适应的异常声音检测系统异常声音检测方法具体步骤如下:
采样率11.025 kHz,32bit量化,声音信号帧长20ms,即220个采样点。
S101:通常在此步骤获取音频流数据s(n);下一步执行S102。
S102:分帧,采用20ms作为帧长,帧移为0,使用矩形窗分帧即可,N=220为帧长, 分帧后信号为frame(n)。
下一步执行S103。
S103:帧信号RMS能量,计算一帧信号RMS值,通过计算帧信号frame(n)的RMS激励平均值,在量化位数上归一化,并且取对数,即可得到帧信号RMS能量,记为frame_energy。
在本实施例中量化位数dig_bit=32。
下一步执行S104。
S104:背景噪声超时未更新检测,若长时间未更新背景噪声,可能由于背景噪声误判为异常声音信号导致无法更新背景噪声,所以需要设置一个计时器,若超过帧数timeout_th=1(1帧为0.02秒)还未更新背景噪声,则跳转到S110,否则执行S105。
S105:背景噪声判定,此模块主要功能是判定当前帧是背景噪声还是异常声音信号,方法为通过计算背景噪声缓冲区均值估计背景噪声,通过当前帧信号RMS能量与估计的背景噪声做差,差值大于一定门限则认为当前帧为异常声音信号帧,否则为背景噪声帧。具体的:如果frame_energy-bg_energy_avg>bg_update_th,其中bg_update_th=0.1(dbfs),则bg_flag=0,表示当前帧信号不是背景噪声,执行S106;否则bg_flag=1,表示当前帧信号为背景噪声,执行S110;其中bg_energy_avg背景噪声缓冲区均值,背景噪声缓冲区在程序开始时初始化为全1数组,在本实施例中,背景噪声缓冲区长度bg_buf_len=1。
S110:更新背景噪声能量、更新历史背景噪声能量。
1.更新背景噪声能量:
如果bg_flag=1,则将当前帧信号RMS能量更新到背景噪声缓冲区中。
2.更新历史背景噪声能量:
历史背景噪声为从当前帧开始,往前一段时间的背景噪声,并且随着时间推移,历史背景噪声不断更新,本实施例取10帧(10帧对应时间为0.2秒)为历史背景噪声帧间隔。
下一步跳转至S111。
S106:异常声音信号能量,如果bg_flag=0,则将当前帧信号RMS能量更新为异常声音信号能量,即signal_energy=frame_energy。
下一步执行S107。
S107:能量陡升判决,此模块主要有硬门限判决和差值门限判决共同作用,具体为signal_energy>energy_th或signal_energy - bg_energy_avg>energy_diff_th,则t_count=t_count+1,下一步执行S108;否则t_count=0跳转至S113。
在本实施例中,energy_th=1为硬门限,energy_diff_th=1为差值门限,反应了能量和背景噪声的差值,t_count为陡升连续帧计数器,用于陡升连续帧判决。
S108:陡升连续帧判决,若t_count > t_count_th,则认为已经有连续t_count帧的信号为能量陡升信号,可以判断有能量陡升情况,执行S109,否则执行S113。本实施例中t_count_th=1。
S109:输出能量陡升报警信号,可以是高低电平信号,也可以是标志位。
下一步执行S113。
S111: 背景噪声陡降判别,若历史背景噪声与当前背景噪声缓冲区均值的差值超过一定门限,即bg_energy_bf – bg_energy_avg>bg_energy_drop_th,则判别为背景噪声陡降,执行S112,否则跳转到S113。本实施例中bg_energy_drop_th=1。
S112:输出背景噪声陡降报警信号,可以是高低电平信号,也可以是标志位。
下一步执行S113。
S113:结束,当前帧信号处理结束,可以转至下一帧处理。
其他与实施例1相同。
实施例5
本实施例背景噪声自适应的异常声音检测系统异常声音检测方法具体步骤如下:
采样率8kHz,24bit量化,声音信号帧长30ms,即240个采样点。
S101:通常在此步骤获取音频流数据s(n);下一步执行S102。
S102:分帧,采用30ms作为帧长,帧移为0,使用矩形窗分帧即可,N=240为帧长, 分帧后信号为frame(n)。
下一步执行S103。
S103:帧信号RMS能量,计算一帧信号RMS值,通过计算帧信号frame(n)的RMS激励平均值,在量化位数上归一化,并且取对数,即可得到帧信号RMS能量,记为frame_energy。
在本实施例中量化位数dig_bit=24。
下一步执行S104。
S104:背景噪声超时未更新检测,若长时间未更新背景噪声,可能由于背景噪声误判为异常声音信号导致无法更新背景噪声,所以需要设置一个计时器,若超过帧数timeout_th=500(500帧为15秒)还未更新背景噪声,则跳转到S110,否则执行S105。
S105:背景噪声判定,此模块主要功能是判定当前帧是背景噪声还是异常声音信号,方法为通过计算背景噪声缓冲区均值估计背景噪声,通过当前帧信号RMS能量与估计的背景噪声做差,差值大于一定门限则认为当前帧为异常声音信号帧,否则为背景噪声帧。具体的:如果frame_energy-bg_energy_avg>bg_update_th,其中bg_update_th=20(dbfs),则bg_flag=0,表示当前帧信号不是背景噪声,执行S106;否则bg_flag=1,表示当前帧信号为背景噪声,执行S110;其中bg_energy_avg背景噪声缓冲区均值,背景噪声缓冲区在程序开始时初始化为全1数组,在本实施例中,背景噪声缓冲区长度bg_buf_len=50。
S110:更新背景噪声能量、更新历史背景噪声能量。
1.更新背景噪声能量:
如果bg_flag=1,则将当前帧信号RMS能量更新到背景噪声缓冲区中。
2.更新历史背景噪声能量:
历史背景噪声为从当前帧开始,往前一段时间的背景噪声,并且随着时间推移,历史背景噪声不断更新,本实施例取82帧(82帧对应时间为2.46秒)为历史背景噪声帧间隔。
下一步跳转至S111。
S106:异常声音信号能量,如果bg_flag=0,则将当前帧信号RMS能量更新为异常声音信号能量,即signal_energy=frame_energy。
下一步执行S107。
S107:能量陡升判决,此模块主要有硬门限判决和差值门限判决共同作用,具体为signal_energy>energy_th或signal_energy - bg_energy_avg>energy_diff_th,则t_count=t_count+1,下一步执行S108;否则t_count=0跳转至S113。
在本实施例中,energy_th=99为硬门限,energy_diff_th=25为差值门限,反应了能量和背景噪声的差值,t_count为陡升连续帧计数器,用于陡升连续帧判决。
S108:陡升连续帧判决,若t_count > t_count_th,则认为已经有连续t_count帧的信号为能量陡升信号,可以判断有能量陡升情况,执行S109,否则执行S113。本实施例中t_count_th=50。
S109:输出能量陡升报警信号,可以是高低电平信号,也可以是标志位。
下一步执行S113。
S111: 背景噪声陡降判别,若历史背景噪声与当前背景噪声缓冲区均值的差值超过一定门限,即bg_energy_bf – bg_energy_avg>bg_energy_drop_th,则判别为背景噪声陡降,执行S112,否则跳转到S113。本实施例中bg_energy_drop_th=99。
S112:输出背景噪声陡降报警信号,可以是高低电平信号,也可以是标志位。
下一步执行S113。
S113:结束,当前帧信号处理结束,可以转至下一帧处理。
其他与实施例1相同。

Claims (9)

1.一种背景噪声自适应的异常声音检测系统,包括通用模块,该通用模块包括:
分帧模块:对声音信号s(n)进行分帧;
帧信号RMS能量模块:计算一帧信号RMS值,记为frame_energy,
其特征在于:所述异常声音检测系统还包括能量陡升检测模块,
其中,
能量陡升检测模块包括:
背景噪声超时未更新检测模块:设置计时器,若超过一定时间timeout_th还未更新背景噪声,则强制把当前帧信号RMS能量更新为背景噪声能量;
背景噪声判定模块:通过计算背景噪声缓冲区均值估计背景噪声,通过当前帧信号RMS能量与估计的背景噪声做差,差值大于一定门限则认为当前帧为异常声音信号帧;否则为背景噪声帧;
更新背景噪声能量模块:当前帧为背景噪声帧,则将当前帧信号RMS能量更新到背景噪声缓冲区中;
异常声音信号能量模块:当前帧为异常声音信号帧时,则将当前帧信号RMS能量更新为异常声音信号能量,即signal_energy=frame_energy;
能量陡升判决模块:此模块通过硬门限判决和差值门限判决共同作用,具体为:
signal_energy>energy_th
signal_energy - bg_energy_avg>energy_diff_th,
则t_count=t_count+1,否则t_count=0,
其中,
bg_energy_avg为背景噪声缓冲区均值,
energy_th为硬门限,
energy_diff_th为差值门限,反应了能量和背景噪声的差值,
t_count为陡升连续帧计数器,用于陡升连续帧判决;
陡升连续帧判决模块:若t_count > t_count_th,则有连续t_count帧的信号为能量陡升信号,判断有能量陡升情况,其中t_count_th为设定值,范围为1-50;
输出能量陡升报警信号模块:输出能量陡升信号。
2.根据权利要求1所述的背景噪声自适应的异常声音检测系统,其特征在于:所述异常声音检测系统还包括背景噪声陡降检测模块,
所述背景噪声陡降检测模块包括:
更新历史背景噪声能量模块:历史背景噪声定义为从当前帧开始,往前一段时间的背景噪声;
背景噪声陡降判别模块:若历史背景噪声与当前背景噪声缓冲区均值的差值超过一定门限,则判别为背景噪声陡降;
输出背景噪声陡降报警信号模块:输出背景噪声陡降报警信号。
3.根据权利要求1或2所述的背景噪声自适应的异常声音检测系统,其特征在于:通过计算帧信号frame(n)的RMS激励平均值,在量化位数上归一化,并且取对数,得到帧信号RMS能量。
4.根据权利要求3所述的背景噪声自适应的异常声音检测系统,其特征在于:背景噪声判定模块:判定当前帧是背景噪声还是异常声音信号时,若frame_energy-bg_energy_avg>bg_update_th,则bg_flag=0,表示当前帧信号不是背景噪声,否则bg_flag=1,表示当前帧信号为背景噪声;所述bg_update_th为背景噪声更新门限。
5.一种背景噪声自适应的异常声音检测方法,其特征在于:包括以下步骤:
S101:获取音频流数据s(n);
S102:对声音信号s(n)进行分帧, 分帧后信号为frame(n);
S103:帧信号RMS能量,计算一帧信号RMS值,通过计算帧信号frame(n)的RMS激励平均值,在量化位数上归一化,并且取对数,即可得到帧信号RMS能量,记为frame_energy;
S104:设置计时器,若超过一定时间timeout_th还未更新背景噪声,则强制把当前帧信号RMS能量更新为背景噪声能量;
S105:背景噪声判定,通过计算背景噪声缓冲区均值估计背景噪声,通过当前帧信号RMS能量与估计的背景噪声做差,差值大于背景噪声更新门限,即frame_energy-bg_energy_avg>bg_update_th,则认为当前帧为异常声音信号帧,否则为背景噪声帧,当前帧信号不是背景噪声,执行S106;当前帧信号为背景噪声,执行S110;bg_energy_avg为背景噪声缓冲区均值,bg_update_th为背景噪声更新门限,
S110:更新背景噪声能量、更新历史背景噪声能量,
a.更新背景噪声能量:
如果当前帧信号为背景噪声,则将当前帧信号RMS能量更新到背景噪声缓冲区中;
b.更新历史背景噪声能量:
历史背景噪声为从当前帧开始,往前一段时间的背景噪声,并且随着时间推移,历史背景噪声不断更新,下一步跳转至S111;
S106:如果当前帧信号不是背景噪声,则将当前帧信号RMS能量更新为异常声音信号能量,即signal_energy=frame_energy;
S107:能量陡升判决,此模块通过硬门限判决和差值门限判决共同作用,
具体为:
signal_energy>energy_th或
signal_energy - bg_energy_avg>energy_diff_th,
则t_count=t_count+1,下一步执行S108;否则t_count=0跳转至S113;
energy_th为硬门限值,范围1-99,energy_diff_th为差值门限,范围1-99;t_count为陡升连续帧计数器,用于陡升连续帧判决;
S108:陡升连续帧判决,若t_count > t_count_th,则认为已经有连续t_count帧的信号为能量陡升信号,可以判断有能量陡升情况,执行S109,否则执行S113, 其中t_count_th为设定值,范围为1-50;
S109:输出能量陡升报警信号,下一步执行S113;
S111: 背景噪声陡降判别,若历史背景噪声与当前背景噪声缓冲区均值的差值超过一定门限,
即bg_energy_bf – bg_energy_avg>bg_energy_drop_th,
则判别为背景噪声陡降,执行S112,否则跳转到S113;
S112:输出背景噪声陡降报警信号,下一步执行S113;
S113:结束,当前帧信号处理结束,转至处理下一帧。
6.根据权利要求5所述的背景噪声自适应的异常声音检测方法,其特征在于:
步骤S102中,对声音信号s(n)进行分帧时,分帧采用10-30ms作为帧长,帧移为0,
步骤S103中,量化位数dig_bit=8-32,
步骤S104中,若超过timeout_th=1-1000帧,还未更新背景噪声,则强制把当前帧信号RMS能量更新为背景噪声,
步骤S105中, bg_update_th=0.1-20 dbfs,背景噪声缓冲区长度bg_buf_len=1-50dbfs。
7.根据权利要求5所述的背景噪声自适应的异常声音检测方法,其特征在于:步骤S110b.更新历史背景噪声能量中,历史背景噪声帧间隔为10-100帧。
8.根据权利要求5所述的背景噪声自适应的异常声音检测方法,其特征在于:步骤S111中,bg_energy_drop_th=1-99。
9.根据权利要求6-7任一所述的背景噪声自适应的异常声音检测方法,其特征在于:
步骤S102中,对声音信号s(n)进行分帧时,分帧采用20ms作为帧长,帧移为0,
步骤S103中,量化位数dig_bit=16,
步骤S104中,若超过timeout_th=500帧还未更新背景噪声,则强制把当前帧信号RMS能量更新为背景噪声,
步骤S105中, bg_update_th=3dbfs,背景噪声缓冲区长度bg_buf_len=5 dbfs,步骤S110 b.更新历史背景噪声能量中,历史背景噪声帧间隔为75帧,75帧对应时间为1.5秒,
步骤S107中,硬门限energy_th=93,差值门限energy_diff_th=20,
步骤S108中,t_count_th=5,
步骤S111中,bg_energy_drop_th=19。
CN201610965380.1A 2016-10-31 2016-10-31 一种背景噪声自适应的异常声音检测方法及系统 Active CN106531193B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610965380.1A CN106531193B (zh) 2016-10-31 2016-10-31 一种背景噪声自适应的异常声音检测方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610965380.1A CN106531193B (zh) 2016-10-31 2016-10-31 一种背景噪声自适应的异常声音检测方法及系统

Publications (2)

Publication Number Publication Date
CN106531193A CN106531193A (zh) 2017-03-22
CN106531193B true CN106531193B (zh) 2019-09-17

Family

ID=58326335

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610965380.1A Active CN106531193B (zh) 2016-10-31 2016-10-31 一种背景噪声自适应的异常声音检测方法及系统

Country Status (1)

Country Link
CN (1) CN106531193B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109116153A (zh) * 2018-08-16 2019-01-01 杭州容大智造科技有限公司 一种检测车辆外后视镜的设备及方法
CN108979415B (zh) * 2018-08-16 2020-10-16 杭州容大智造科技有限公司 一种检测车辆窗户的设备及方法
CN114420081B (zh) * 2022-03-30 2022-06-28 中国海洋大学 一种有源降噪设备的风噪抑制方法

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101625857B (zh) * 2008-07-10 2012-05-09 新奥特(北京)视频技术有限公司 一种自适应的语音端点检测方法
CN101625858B (zh) * 2008-07-10 2012-07-18 新奥特(北京)视频技术有限公司 语音端点检测中短时能频值的提取方法
GB2520628B (en) * 2012-07-25 2020-03-11 Hitachi Ltd Abnormal sound detection system
CN103077727A (zh) * 2013-01-04 2013-05-01 华为技术有限公司 一种用于语音质量监测和提示的方法和装置
CN104795076B (zh) * 2014-01-21 2018-08-14 宁波远志立方能源科技有限公司 一种音频侦测方法
JP6485958B2 (ja) * 2014-06-27 2019-03-20 株式会社エー・アンド・デイ 異音解析装置
KR20160079438A (ko) * 2014-12-26 2016-07-06 (주)세종이엠시 자동차 파워시트 앗세이의 이음 측정방법 및 그 이음 측정장치
CN105810213A (zh) * 2014-12-30 2016-07-27 浙江大华技术股份有限公司 一种典型异常声音检测方法及装置
CN105790854B (zh) * 2016-03-01 2018-11-20 济南中维世纪科技有限公司 一种基于声波的短距离数据传输方法及装置

Also Published As

Publication number Publication date
CN106531193A (zh) 2017-03-22

Similar Documents

Publication Publication Date Title
US9402568B2 (en) Method and system for detecting a fall based on comparing data to criteria derived from multiple fall data sets
Lomax et al. Automatic picker developments and optimization: FilterPicker—A robust, broadband picker for real-time seismic monitoring and earthquake early warning
US9684353B2 (en) Wearable equipment and mode switching method using the same
CN106531193B (zh) 一种背景噪声自适应的异常声音检测方法及系统
CN103929707B (zh) 一种检测麦克风音频通道状况的方法和移动终端
CN104637489B (zh) 声音信号处理的方法和装置
CN112327288B (zh) 雷达人体动作识别方法、装置、电子设备和存储介质
CN104538041A (zh) 异常声音检测方法及系统
WO2004030525A3 (en) Systems and methods for providing trend analysis in a sedation and analgesia system
US20190325899A1 (en) Computationally efficient speech classifier and related methods
CN110536213A (zh) 用于监视的系统和方法
CN110310669A (zh) 一种检测静音帧的方法及装置及可读存储介质
CN107554470B (zh) 用于处理车辆紧急状态的装置和方法
CN108333443B (zh) 电力设备间歇性缺陷的报警方法
US10236000B2 (en) Circuit and method for speech recognition
CN106448700B (zh) 一种尖锐声音检测方法和系统
CN107689127B (zh) 具有自适应调参功能的光纤安防信号双重识别方法与系统
EP3309777A1 (en) Device and method for audio frame processing
CN112669837B (zh) 智能终端的唤醒方法、装置及电子设备
Istrate et al. Generic implementation of a distress sound extraction system for elder care
GB2563892A (en) Sound monitoring system and method
CN113516997A (zh) 一种语音事件识别装置和方法
KR101302060B1 (ko) 진동센서 기반의 능동형 문턱값을 이용한 표적 탐지 시스템 및 이를 이용한 표적 탐지 방법
CN113470657B (zh) 一种语音唤醒阈值调整方法及系统
CN113780381B (zh) 一种人工智能漏水检测方法及装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20240513

Address after: Room 1209, Building 3, Aosheng Building, No. 1166 Xinluo Street, Jinan Area, China (Shandong) Pilot Free Trade Zone, Jinan City, Shandong Province, 250000

Patentee after: Zhongwei (Shandong) Software Co.,Ltd.

Country or region after: China

Address before: No.4-1101, Yinhe building, 2008 Xinluo street, high tech Zone, Jinan City, Shandong Province

Patentee before: JOVISION TECHNOLOGY Co.,Ltd.

Country or region before: China

TR01 Transfer of patent right