发明内容
鉴于此,本申请提供一种基于神经网络的噪声等级监测装置、监测方法及电子设备。
本申请提出的噪声等级监测装置包括:基于模拟电路的模拟信号处理模块、噪声获取模块、噪声等级识别模块、及噪声等级确定模块。其中,模拟信号处理模块用于基于模拟电路来提取环境中的模拟的音频信号的音频特征。噪声获取模块,用于基于第一级神经网络模型过滤所述音频特征中的人声的音频特征,以得到噪声的音频特征。噪声等级识别模块,用于基于第二级神经网络模型对所述噪声的音频特征分级,以得到所述环境中的音频信号的N个初始噪声等级。噪声等级确定模块,用于判断所述N个初始噪声等级中为同一个噪声等级的数量是否达到M个,若是,则将该同一个噪声等级对应的初始噪声等级确定为噪声等级
在一优选实施例中, 所述模拟信号处理模块包括:
低噪声放大器,用于将输入的音频信号按照固定增益进行放大;
声音强度稳定电路,用于补偿不同声音大小导致的声音强度变化,以稳定放大后的音频信号的强度;
整流量化电路,用于将稳定后的音频信号进行整流并将整流后的信号量化为数字信号脉冲,以形成所述模拟的音频信号的音频特征。
在一优选实施例中, 所述声音强度稳定电路包括:与所述低噪声放大器的输出端连接的增益可变放大器、及用于控制所述增益可变放大器的增益的控制器。
在一优选实施例中, 所述噪声获取模块通过基于隐马尔可夫模型的深度神经网络模型来得到噪声的音频特征。
在一优选实施例中, 所述噪声获取模块还用于构建所述第一级神经网络模型,且还用于通过块加载的方式训练得到所述第一级神经网络模型。
在一优选实施例中, 所述噪声等级识别模块还用于构建所述第二级神经网络模型,且还用于在构建所述第二级神经网络模型所需的数据集时在噪声中加入人声,以得到具有预定的信噪比的混合噪声。
在一优选实施例中, 所述第一级神经网络模型为二值神经网络。
在一优选实施例中, 所述第二级神经网络模型为基于深度可分离卷积算子的神经网络模型。
在一优选实施例中, 所述第二级神经网络模型包括依次连接的普通卷积层、深度可分离卷积层、及全连接层。
本申请还提出一种噪声等级监测方法,所述方法包括:
通过模拟电路提取环境中的模拟的音频信号的音频特征;
基于第一级神经网络模型过滤所述音频特征中的人声的音频特征,以得到噪声的音频特征;
基于第二级神经网络模型对所述噪声的音频特征分级,以得到所述环境中的音频信号的N个初始噪声等级;
判断所述N个初始噪声等级中为同一个噪声等级的数量是否达到M个,若是,则将该同一个噪声等级对应的初始噪声等级确定为噪声等级,其中,N≥1,M≤N。
在一优选实施例中,所述基于第一级神经网络模型过滤所述音频特征中的人声的音频特征之前包括:通过块加载的方式训练得到所述第一级神经网络,所述第一级神经网络模型为基于隐马尔可夫模型的二值神经网络模型。
在一优选实施例中,所述基于第二级神经网络模型对所述噪声的音频特征分级之前还包括:构建所述第二级神经网络模型,且在构建所述第二级神经网络模型所需的数据集时在噪声中加入人声,以得到具有预定的信噪比的混合噪声。
本申请还提出一种电子设备,其设置有上述的噪声等级监测装置。
本申请提供的噪声等级监测装置、方法及电子设备,其通过基于模拟的模拟信号处理模块来提取出环境里音频信号的音频特征、结合噪声获取模块和噪声等级识别模块,以实现基于二级神经网络来依次得到噪声的音频特征并识别出上述噪声的音频特征的初始噪声等级,然后通过噪声等级确定模块再次去掉上述初始噪声等级中的干扰数据,进而大大的提高了噪声等级监测的准确度、其结构简单、整个噪声等级识别过程简单、且噪声等级监测所需的功耗极低,其可以广泛的应用于各种需要低功耗的电子产品中,例如应用于离线的电子设备中。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,下文将要描述的各种示例性实施例将要参考相应的附图,这些附图构成了示例性实施例的一部分,其中描述了实现本发明可能采用的各种示例性实施例。除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。应明白,它们仅是与如所附权利要求书中所详述的、本发明公开的一些方面相一致的流程、方法和装置等的例子,还可使用其他的实施例,或者对本文列举的实施例进行结构和功能上的修改,而不会脱离本发明的范围和实质。
在本发明的描述中,需要理解的是,术语“中心”、“纵向”、“横向”等指示的是基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的元件必须具有的特定的方位、以特定的方位构造和操作。术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。术语“多个”的含义是两个或两个以上。术语“相连”、“连接”应做广义理解,例如,可以是固定连接、可拆卸连接、一体连接、机械连接、电连接、通信连接、直接相连、通过中间媒介间接相连,可以是两个元件内部的连通或两个元件的相互作用关系。术语“和/或”包括一个或多个相关的所列项目的任意的和所有的组合。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。
为了说明本发明所述的技术方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
随着耳机、助听器等等可穿戴的低功耗电子产品的不断地普及,人们对功耗低且音频质量好的电子产品的需求越来越大。要想实现音频质量好,前提是需要能准确的监测到环境噪声,进而电子产品才能结合环境的噪声适应性的降噪,例如耳机根据用户身处的环境进行主动降噪。当用户进入会议室等环境噪声较小的室内环境时,耳机对应的降噪模式和功耗是一种情况,而当而用户进入商场等环境噪声较大的室外环境时,耳机对应的降噪模式和功耗则是另外一种情况,且依然需要耳机的功耗较低以保障耳机的续航能力。所以,本申请提供一种既能准确监测环境噪声又能实现监测时的功耗较低的监测装置和方法,进而使得对应的电子产品的音频质量较好、功耗较低、且可以应用的产品类型更多。
为了彻底理解本发明,将在下列的描述中提出详细的技术方案,以便阐释本发明提出的技术方案。本发明的较佳实施例详细描述如下,然而除了这些详细描述外,本发明还可以具有其他实施方式。
如图1所示,本发明提供的基于神经网络的噪声等级监测装置包括:基于模拟电路的模拟信号处理模块10、噪声获取模块20、噪声等级识别模块30、及噪声等级确定模块40。其中,模拟信号处理模块10用于基于模拟电路来提取环境中的模拟的音频信号的音频特征。噪声获取模块20,用于基于第一级神经网络模型过滤所述音频特征中的人声的音频特征,以得到噪声的音频特征。噪声等级识别模块30,用于基于第二级神经网络模型对所述噪声的音频特征分级,以得到所述环境中的音频信号的N个初始噪声等级。噪声等级确定模块40,用于判断所述N个初始噪声等级中为同一个噪声等级的数量是否达到M个,若是,则将该同一个噪声等级对应的初始噪声等级确定为噪声等级,其中,N≥1,M≤N。本发明主要将环境声音进行了四大处理:首先,基于模拟信号处理模块10对环境中的音频信号进行前端预处理,以提取环境中的音频信号的音频特征,进而使得环境声音变为能够被神经网络处理的音频特征。然后,通过噪声获取模块20基于第一级神经网络模型过滤掉环境音频中的人声,进而得到噪声的音频特征,也即得到初步的噪声信号,仅将噪声音频输入到下一个神经网络模型中。进一步的,通过噪声等级识别模块30基于第二级神经网络模型对上述噪声的音频特征进行分级,由于第二级神经网络模型具有对噪声等级进行实时分类的功能,所以可以将环境中的音频信号的初始噪声等级识别出来。通常,一段时间的音频为多段,所以通过噪声等级识别模块30可以得到N个初始噪声等级。由于神经网络的识别结果的稳定性和准确度有限,其较难达到百分之百的正确率。所以再进一步的,通过噪声等级确定模块40将上述初始噪声等级进行进一步的确定,具体的,噪声等级确定模块40可以判断所述N个初始噪声等级中为同一个噪声等级的数量是否达到M个,若是,则将该同一个噪声等级对应的初始噪声等级确定为噪声等级,可见其可以避免一些干扰的无关信号,可以提高噪声等级监测结果的稳定性和噪声等级监测结果的准确性。其中,M可以为预定的数量。另外,在实际应用的过程当中,难以保证神经网络模型识别率达到百分之百的准确率,而且帧移会比较短,所以会频繁的输出多个值,进而会导致噪声等级监测输出的结果不稳定的情况,本发明中噪声等级监测模块先得到初始噪声等级,再通过噪声等级确定模块40来确定最终的噪声等级,进而可以大大提高噪声等级监测的准确性。
本发明相比现有技术中采用声压级的方式能大大减少干扰信号对监测结果的准确度的影响,而且,本发明提供的整个监测装置的结构简单、其所需的功耗也极低。由上可见,本发明提供的实施例通过上述各模块的配合以一层层的处理环境音频,进而可以将环境声音里的噪声音频识别出来且能准确的监测出识别出来的噪声音频的噪声等级。而且,本发明通过采用基于模拟电路的模拟信号处理模块10、结合两级神经网络模型及噪声等级确定模块40即可监测出噪声,其需要消耗的功耗很低。
参见图2至图5所示的优选实施例。在一优选实施例中,基于模拟电路的模拟信号处理模块10包括:低噪声放大器,用于将输入的音频信号(即获取到的环境中的声音)按照固定增益进行放大;声音强度稳定电路,用于补偿不同声音大小导致的声音强度变化,以稳定上述放大后的音频信号的强度;整流量化电路,用于将稳定后的音频信号进行整流并将整流后的信号量化为数字信号脉冲,以形成所述模拟的音频信号的音频特征(即第一级神经网络待处理的feature,此实施例中环境中的音频经过ASP处理之后的数值即形成上述feature)。低噪声放大器主要是用来对信号进行放大,例如我们的声音信号最开始进来的时候信号很微弱,所以需要对这个信号进行放大,如果直接对该声音信号进行放大,那么这个声音信号自带的噪声也会同步放大,通过低噪声放大器可以实现在将上述环境中的声音信号放大的同时压制噪声,进而提高噪声监测装置的监测结果的准确性及改善对应的电子产品的音质和用户体验。通过该模拟信号处理模块10可以将环境中的音频特征提取出来,而且,由于模拟信号处理模块10是基于模拟电路实现,所以其处理速度快、功耗很低、且音频特征稳定可靠。
具体参见图2所示,其为一优选实施例中模拟信号处理模块10的电路图。在该优选实施例中,基于模拟电路的硬件来实现对环境中的音频信号的特征提取,以实现更快的速度以及更低的功耗。模拟信号处理模块10(ASP,analog signal processing)主要包括:低噪声放大器( LNA,Low Noise Amplifier),其将输入的信号按照固定增益进行放大,LNA的正向输入端通过电阻接偏置电压bias voltage,LNA的反向输入端通过电阻接偏置电压bias voltage,而且,LNA的正向输入端与反向输出端之间跨接电容,LNA的反向输入端与正向输出端之间也跨接电容;声音强度稳定电路,由增益可调放大器(VGA,Variable GainAmplifier)和自动增益控制器(AGC,Automatic Gain Control)形成,即由自动增益控制器来根据不同声音情况来控制VGA由不同的增益来将LNA输出的信号进行放大,以补偿不同声音大小导致的声音信号强度的变化,以实现输出信号强度相对恒定;及整流量化电路,所述整流量化电路包括依次连接的半波整流器(HWR,Half Wave Rectifier)和量化电路。所述半波整流器用于将所述VGA输出的信号进行半波整流,所述量化电路用于将整流后的信号量化为数字信号脉冲并输出,进而得到环境中的音频信号的音频特征。该图中量化电路是通过IAF(Integrate and Fire,也叫做积分发射)来实现。
通过上述模拟信号处理模块10可以实现快速的提取环境中的音频信号的音频特征、其功耗很低、且其能适应快速处理不同场景的环境噪声,使得提取的音频特征的信号稳定可靠,进而进一步的提高噪声等级监测 的准确性。
例如,环境中的音频信号里,每20ms长的音频为一帧,帧移为10ms,则环境中的音频信号经过上述模拟信号处理模块的处理之后,模拟信号处理模块每秒会输出一个100×20的音频特征。参见图3是本申请一实施例的环境中的原始音频的时域波形信号图,图4是图3中原始音频经过模拟信号处理模块处理之后得到的音频特征的特征图。
进一步优选的,所述VGA和所述半波整流器之间依次电连接带通滤波器组(BPF,Bandpass Filter)及缓冲器(buffer),其中,带通滤波器组可以包括多组滤波通道,以更准确的提取环境噪声中的音频特征。进一步优选的,所述低噪声放大器的输出端及所述VGA之间跨接有衰减器(ATT,Attenuator),以实现对LNA放大后的信号进行衰减,使得信号幅度范围能够满足BPF的输入范围要求,进而可以更好的去除无关信号及提高最终监测结果的准确性。
在本申请的优选实施例中,噪声获取模块采用二值神经网络作为第一级神经网络来实现对人声和噪声的分类,并得到噪声的音频特征。这样既可以准确的去除人声以得到噪声,还可以大大降低整个过程的功耗。二值神经网络的模型结构如图6所示,其中,输入第一级神经网络的音频特征长度为7×20=140,其中20表示每一帧有20个特征值,每次推理输入7帧数据,这7帧数据分别为以当前帧为中心,往前第5、3、1帧,往后第1、3、5帧以及当前帧,共7帧数据。此外,该网络共有3个隐藏层,每个隐藏层有128个神经元,最后的输出层长度为7,分别对应输入的7帧对应的为噪声的概率,概率越大,表示对应帧的为噪声的概率越大,最终,过滤掉其它帧也即舍弃人声相关的帧,得到环境中的音频特征里的噪声特征并输出至下一级,也即后续只根据该噪声获取模块中输出的噪声特征来识别噪声的等级。在优选实施例中,神经网络模型中的weight采用二值化技术,bias采用int32类型数据,统计可知该神经网络的大小仅为7.82kB。由此仅使用了7帧数据作为网络模型的输入,相比于其他的模型,本优选实施例具有更小的算法延迟且需要处理的数据更小,进而需要的功耗更低。BNN的隐藏层的神经元数目也可以设置为64以获得更小的模型,更小的功耗,但随之而来的是模型准确率有一定下降。
经过该BNN的处理,得到的结果类似于图5,图5中的黑线表示经过该BNN模型识别的结果,其中值为1的时候,表示将该帧识别成噪声,值为0时,表示该帧被识别成人声。图中的灰色波形是原始音频的波形。将其放在一起对比可以看出:对于有语音段的信号,BNN的计算结果,也就是黑色实线基本对应的是0,对于噪声段的信号,黑色实线对应的是1。通过该BNN模型,可以将人声部分过滤掉,仅保留噪声部分,然后将识别的噪声音频送入到下一个神经网络模型当中。
噪声获取模块中的第一级神经网络模型也可以采用其它模型。噪声获取模块还用于构建第一级神经网络模型,在构建第一级神经网络模型所需要的数据集时,由于该网络模型的标签是需要精确到帧的,所以需要对每一帧音频数据进行打标签,但是人工对每一帧音频数据打标签的话,工作量太大,且不一定精确。所以优选的,本申请中的第一级神经网络模型基于隐马尔可夫模型的深度神经网络模型(即HMM-DNN)的语音识别模型进行打标签,例如噪声段标注为1,人声段标注为0,进而使得噪声获取模块通过基于隐马尔可夫模型的深度神经网络模型来得到噪声的音频特征,其可以实现快速准确的得到噪声特征且消耗的功耗很少。
本发明噪声获取模块采用二值神经网络模型作为第一级神经网络模型,在训练第一级神经网络模型时,其数据小而多。例如,在训练该模型的时候,样本数据超过1.5亿,但是每个样本又只有140个字节的大小。这就会导致在用一些很普通的方法训练时,训练会变得非常慢(因为加载数据花费了大部分的时间),所以优选的,本发明采用“块加载”地方式,也就是先将所有 的数据分成一块一块的,然后基于每一块二次加载数据,从而加快数据加载和模型地训练。所以,本发明通过块加载的方式训练得到第一级神经网络模型,其可以大大的减少数据加载的时间,进而提高噪声监测的效率且能提高噪声检测的准确性。
参见图7所示的优选实施例,图7是本申请一实施例中第二级神经网络的结构示意图。经过噪声获取模块得到的噪声的音频特征被输入至图7所示的第二级神经网络模型。图7中的第二级神经网络模型为基于深度可分离卷积算子的神经网络模型。噪声的音频特征(即图7中噪声特征)输入至一个普通卷积层,普通卷积层接着连接N个深度可分离卷积(DSCNN)层,其中,DSCNN层的内部结构为图7左边所示,经过DSCNN之后连接2个全连接层,输出噪声等级的预测结果。在该优选实施例噪声等级识别模块中将噪声等级分为5个级别,即其包括5个预测结果,分别是Level_0<45dB、45dB≤Level_1<55dB、55dB≤Level_2<65dB、65dB≤Level_3<75dB、75dB≤Level_4。一方面DSCNN能用更少的参数量达到普通卷积神经网络(CNN)相同的效果,另外一方面上述第二级神经网络模型整体结构简单、需要的功耗较低,所以本优选实施例可以进一步降低了整体的噪声等级监测的功耗和内存。
上述二级神经网络先得出初始的噪声等级,接着通过噪声等级确定模块来进一步的确定最终的噪声等级,进而可以减少干扰信号对噪声等级识别结果的准确性的影响。例如,对连续P个初始噪声等级(即上述预测结果)进行统计,如果检测到大于等于Q个神经网络输出的结果都为同一个结果,那么最终的就输出该结果,反之,则不输出。例如,设置P=10,Q=7,如果在连续的10帧中,有7帧的初始噪声等级都为Level_2,则确定其最终的噪声等级为Level_2。
本发明还提供了一种噪声等级监测方法,参见图8所示,其包括:
S100、通过模拟电路提取环境中的模拟的音频信号的音频特征;
S200、基于第一级神经网络模型过滤所述音频特征中的人声的音频特征,以得到噪声的音频特征;
S300、基于第二级神经网络模型对所述噪声的音频特征分级,以得到所述环境中的音频信号的N个初始噪声等级;
S400、判断所述N个初始噪声等级中为同一个噪声等级的数量是否达到M个,若是,则将该同一个噪声等级对应的初始噪声等级确定为噪声等级,其中,N≥1,M≤N。
其通过模拟电路结合二级神经网络模型及双重噪声等级识别的方式,将环境中的音频信号里的人声去除掉,进而将得到的环境中的噪声的音频特征进行初步的等级识别,然后进一步的确认最终的噪声等级,其可以准确的低功耗的监测出环境中的噪声等级。
为了更快速的识别环境噪声,优选的,基于第一级神经网络模型过滤所述音频特征中的人声的音频特征之前包括步骤S101:通过块加载的方式训练得到所述第一级神经网络,所述第一级神经网络模型为基于隐马尔可夫模型的二值神经网络模型。也即,本发明中的第一级神经网络模型可以不断的训练优化,其先将步骤S100输出的所有的数据分成一块一块的,然后基于每一块二次加载数据,从而加快数据加载和模型地训练,以得到基于隐马尔可夫模型的二值神经网络模型。所以,本发明通过块加载的方式训练得到第一级神经网络模型,其可以大大的减少数据加载的时间,进而提高噪声监测的效率且能提高噪声检测的准确性。
本发明中第一级神经网络模型和第二级神经网络模型都可以是已经构建好了的,也可以是分别在噪声获取模块和噪声等级识别模块中重新训练得到的。优选的,所述基于第二级神经网络模型对所述噪声的音频特征分级之前还包括步骤S201:构建所述第二级神经网络模型,且在构建所述第二级神经网络模型所需的数据集时在噪声中加入人声,以得到具有预定的信噪比的混合噪声。由于实际中现实环境的复杂性,例如会存在将人声误识别成噪声的可能性,其会影响到第二级神经网络模型识别初步噪声等级的准确性。噪声获取模块得到的噪声的音频特征较难百分之百的纯粹是噪声,难免会混有人声,所以为了使得第二级神经网络模型更加接近实际的噪声的音频特征,本发明在构建所述第二级神经网络模型所需的数据集时在噪声中加入人声,即使上一级网络模型的误识别,也几乎不会对最终结果造成影响,进而使得噪声等级识别模块能更准确的识别出上一级输出的噪声的音频特征对应的实际的噪声等级,进而提高噪声等级监测的准确性。
在训练第二级神经网络模型时,可以默认预测结果分成5档,事实上,可以根据需要来分,例如可以将预测结果分每间隔1dB一个档,那这个时候就相当于得到了一个可以自动去除人声的,仅测噪声的声压计,且该声压计的精度为±1dB。当然,也可以将噪声等级分类的分类任务改成回归任务,也就是说,通过重新构造数据集,然后将模型的最后一层换成1个神经元,从而最终改成一个回归神经网络模型,通过这个模型可以输出声压计具体数值(而不是像分类网络这种预测结果为一个区间内的数值)。
综上所述,本发明提供的基于神经网络的噪声等级监测装置、方法可以快速准确的监测出环境中噪声的等级,其监测的准确性高且消耗的功耗极低,其对硬件设备的要求也不高,其可以广泛的使用在离线设备以及消费类电子产品当中,使得电子产品的功耗极低且使得电子产品在不同的环境噪声中依然能保持较好的音质及较好的用户体验。
本申请提供的噪声等级监测装置可以单独设置为芯片,或者作为芯片里的一部分模块。
此外,本申请还提供一种电子设备,设置有上述噪声等级监测装置。电子设备可以是智能手机、平板电脑、可穿戴电子装备、智能家居电子产品等一系列对低功耗与高音质有需求的应用领域。
尤其是电子消费类的产品,其产品竞争激烈且技术更新换代较快,本发明所提供的监测装置和方法的优势更能助力于相关电子产品的竞争和相关电子产品在人们的日常生活中的使用。
以上所述仅为本申请的实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,例如各实施例之间技术特征的相互结合,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。
另外,对于特性相同或相似的结构元件,本申请可采用相同或者不相同的标号进行标识。此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个特征。在本申请的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
在本申请中,“例如”一词是用来表示“用作例子、例证或说明”。本申请中被描述为“例如”的任何一个实施例不一定被解释为比其它实施例更加优选或更加具优势。为了使本领域任何技术人员能够实现和使用本申请,本申请给出了以上描述。在以上描述中,为了解释的目的而列出了各个细节。
应当明白的是,本领域普通技术人员可以认识到,在不使用这些特定细节的情况下也可以实现本申请。在其它实施例中,不会对公知的结构和过程进行详细阐述,以避免不必要的细节使本申请的描述变得晦涩。因此,本申请并非旨在限于所示的实施例,而是与符合本申请所公开的原理和特征的最广范围相一致。