CN112397090B - 一种基于fpga的实时声音分类方法及系统 - Google Patents
一种基于fpga的实时声音分类方法及系统 Download PDFInfo
- Publication number
- CN112397090B CN112397090B CN202011239248.5A CN202011239248A CN112397090B CN 112397090 B CN112397090 B CN 112397090B CN 202011239248 A CN202011239248 A CN 202011239248A CN 112397090 B CN112397090 B CN 112397090B
- Authority
- CN
- China
- Prior art keywords
- sound
- feature map
- data
- filling
- calculation
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 31
- 238000010586 diagram Methods 0.000 claims abstract description 35
- 238000004364 calculation method Methods 0.000 claims description 60
- 238000001914 filtration Methods 0.000 claims description 23
- 230000004913 activation Effects 0.000 claims description 18
- 238000000605 extraction Methods 0.000 claims description 18
- 238000011176 pooling Methods 0.000 claims description 16
- 238000009432 framing Methods 0.000 claims description 11
- 230000008569 process Effects 0.000 claims description 11
- 230000004044 response Effects 0.000 claims description 4
- 230000003213 activating effect Effects 0.000 claims description 2
- 239000011159 matrix material Substances 0.000 claims description 2
- 230000008901 benefit Effects 0.000 abstract description 6
- 238000012544 monitoring process Methods 0.000 abstract description 2
- 239000000284 extract Substances 0.000 abstract 1
- 230000006870 function Effects 0.000 description 21
- 238000013527 convolutional neural network Methods 0.000 description 12
- 238000012545 processing Methods 0.000 description 11
- 238000004590 computer program Methods 0.000 description 7
- 238000001228 spectrum Methods 0.000 description 7
- 238000004458 analytical method Methods 0.000 description 6
- 230000005236 sound signal Effects 0.000 description 6
- 238000004422 calculation algorithm Methods 0.000 description 4
- 238000005070 sampling Methods 0.000 description 4
- 238000003860 storage Methods 0.000 description 4
- 230000007423 decrease Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 238000011160 research Methods 0.000 description 3
- 238000013528 artificial neural network Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 2
- 239000000470 constituent Substances 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 230000007613 environmental effect Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- UGFAIRIUMAVXCW-UHFFFAOYSA-N Carbon monoxide Chemical compound [O+]#[C-] UGFAIRIUMAVXCW-UHFFFAOYSA-N 0.000 description 1
- 230000002411 adverse Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000007635 classification algorithm Methods 0.000 description 1
- 238000013145 classification model Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000012938 design process Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 210000005069 ears Anatomy 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 239000003546 flue gas Substances 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 239000002245 particle Substances 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 230000035945 sensitivity Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012549 training Methods 0.000 description 1
Images
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
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/048—Activation functions
-
- 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/03—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters
-
- 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/03—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters
- G10L25/18—Speech 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 spectral information of each sub-band
-
- 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/27—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the analysis technique
- G10L25/30—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the analysis technique using neural networks
-
- 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/45—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of analysis window
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Multimedia (AREA)
- Acoustics & Sound (AREA)
- Human Computer Interaction (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Biophysics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- Molecular Biology (AREA)
- General Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- Biomedical Technology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Spectroscopy & Molecular Physics (AREA)
- Complex Calculations (AREA)
Abstract
本发明公开了一种基于FPGA的实时声音分类方法,本发明通过FPGA对声音数据进行特征提取,获得声音数据的MFSC特征图,然后利用CNN分类网络对得到的MFSC特征图进行计算,实现对所采集到的声音进行分类的功能,可以随时随地、方便快捷地对外部声音进行监测和分类。具有低功耗、低成本、便携带、实时性和多实用性等优点。
Description
技术领域
本发明涉及声音识别和处理领域,具体涉及一种基于FPGA的实时声音分类方法及系统。
背景技术
声音信号包含了丰富的信息,是人类感知环境的重要信息来源之一,也是反应人类行为的重要特征。同时声音信号可以在视野外进行接收,而且不受光线的影响,其所需的存储空间和后续的处理计算难度都要低于视频信号,这使得声音分类被广泛应用在许多领域当中,包括导航、智能机器人、安全监控、声音事件跟踪定位、自然保护、公共安全等领域。
对于声音分类,研究方向主要集中在声音信号的特征提取和模式分类两个方面,根据特征和分类模型的不同,形成不同的解决方案。现在有关声音分类算法主要研究方向集中在理论算法实现方面,由于理论算法的复杂度较高而且计算量较大,所以一般在计算机上通过软件方式进行实现。
目前声音分类方法主要利用机器学习算法,即声音特征提取+深度神经网络的组合处理方式,其中声音特征提取到的特征比较常用的为MFCC,深度神经网络比较常用的为CNN。由于MFCC和CNN的计算复杂度较高,参数量较大,所以一般在CPU(或GPU)平台进行实现,在CPU平台进行实现时,网络规模很大,对于实时性的要求不容易满足,而且CPU平台的功耗较高,成本较高,不利于便携部署。
FPGA的优点是在设计过程中能够提供极大的灵活性。根据不同的需求,设计人员可以通过编程的方式进行不同的系统设计,并且能够动态配置更改。所以基于FPGA实现性能优良的小型化声音分类系统对声音分类的应用具有十分重要的意义。
发明内容
本发明所要解决的技术问题是:通过不同社区能源互联网间的电能交易减少社区能源互联网集群从配电网购电或售电的电量,促进风电就近消纳,降低社区能源互联网运行成本。本发明提供了解决上述问题的一种基于FPGA的实时声音分类方法及系统,提出了新型能量交易机制及实施方案,使得现代电力系统能够更好地支持各种分布式间歇性电源设备的接入,实现清洁能源、社区能源互联网和配电网的友好互动。
本发明通过下述技术方案实现:
一种基于FPGA的实时声音分类方法,包括如下步骤:
S1、获取声音数字数据;
S2、提取所获取的声音数字数据中的声音特征,获得声音特征图;
S3、获取声音特征图进行分类计算,获取声音判断概率;
S4、根据声音判决最大的概率得到声音的分类结果。
进一步的,声音源的获取通过麦克风,声音数据通过麦克风进入FPGA模块,获取的声音数字数据采样率为22050Hz,以1.61s声音数据为一块进行处理。
进一步的,FPGA中声音特征提取模块对输入的声音数据进行特征提取,形成声音特征图,将声音特征图输入分类网络进行声音种类的判断分类,其中:
声音的特征提取的方法为:
S21、对声音数字数据进行分帧形成数据帧;
S22、对数据帧进行加窗,得到加窗之后的数据帧;
S23、对加窗之后的数据帧进行快速傅立叶变换,输出两路数据;
S24、将输出的两路数据中包含频域信息的数据分别进行幅度计算,获得声音频域幅度数据;
其中,由于后续分析过程建立在频谱信息的基础上,所以可以将频谱数据求模值,即幅度,这样可以减少后续计算的复杂度,降低计算量。
S25、将声音频域幅度数据进行Mel滤波,输出多个Mel滤波输出;
S26、将多个Mel滤波输出进行对数计算,获得声音特征图。
其中,Mel滤波器是一组Mel尺度的三角形滤波器组,定义一个有M个滤波器的滤波器组,采用的滤波器为三角滤波器,中心频率为f(m),m=1,2,3,···,M。各f(m)之间的间隔随着m值的减小而缩小,随着m值的增大而增宽。三角滤波器的频率响应表示为:
采用三角带通滤波器可以对频谱进行平滑化,并消除谐波的作用,突显原先语音的共振峰。此外,还可以降低运算量。
上述采用的Mel滤波器共有64个三角滤波器,幅度数据分别与每个三角滤波器系数相乘后相加,每帧数据可以得到64个Mel滤波输出。
进一步的,再得到声音数据的MFSC特征图之后,由CNN分类网络进行声音种类的分类,其方法为:
S31、对声音特征图进行填充,获得声音特征的填充特征图;
S32、将填充特征图经过卷积层计算后,通过激活函数再进行最大池化得到进一步的声音特征图;
S33、重复多次上述步骤得到三维的声音特征图;
S34、将三维的声音特征图各通道首尾相连,降维形成声音特征数据;
S35、将声音特征数据通过全连接层,获取不同声音判决的概率。
进一步的,在上述的计算过程中,
卷积计算的过程为,将卷积核在特征图上移动,并与特征图做乘积加运算,并得到的结果放在特征图的原位置;
激活函数的计算过程为,将经过卷积计算的特征图中小于0的数全部置0,大于6的数全部置6,其余保持不变;
最大池化的方法为,使用2*2的窗口在特征图上移动,只保留每个窗口的最大数,使得特征图的长和宽变为原特征图的一半。
还提供一种声音分类系统,包括
采集模块,用于获取声音数字数据;
声音MFSC特征提取模块,用于提取所获取的声音数字数据中的声音特征,获得声音特征图;
CNN分类网络模块,用于获取声音特征图进行分类计算,获取声音判断概率。
输出模块,用于根据声音判决最大的概率得到声音的分类结果。
进一步的,所述声音MFSC特征提取模块包括:
分帧模块,用于对声音数字数据进行分帧形成数据帧;
其中,采用异步FIFO对输入的声音数据进行分帧操作。
加窗模块,用于对数据帧进行加hann窗,得到加窗之后的数据帧;
其中,使用一个乘法器承担流水输入与窗函数系数相乘的计算,在节省硬件资源的同时保证输入的速度。
FFT模块,用于对对加窗之后的数据帧进行快速傅立叶变换,并输出两路数据;
幅度计算模块,用于将输出的两路数据中包含频域信息的数据分别进行幅度计算,获得声音频域幅度数据;
Mel滤波器模块,用于将声音频域幅度数据进行Mel滤波,输出多个Mel滤波输出;
根据上述分析,梅尔滤波计算在计算过程中需要输入的数据一直缓存,所以输入采用pingpongbuffer,使得梅尔滤波模块能够流水处理数据,同时只提取有效梅尔滤波器组系数存储在FPGA的ROM中,去除无效的0数据。在节省硬件资源的同时保证输入的速度。
对数计算模块,用于将多个Mel滤波输出进行对数计算,获得声音特征图。
本发明具有如下的优点和有益效果:
(1)低功耗:由于使用FPGA进行实时声音特征提取,以及声音分类,功耗很低,只有2.55W左右
(2)低成本:使用FPGA进行实时声音特征提取,以及声音分类,而FPGA成本较低,体积较小,使的声音分类系统能够更加便携的部署。
(3)便携性:脱离传统CNN网络依赖电脑等设备的要求,将本系统在FPGA上实现之后,可以携带小型的FPGA开发板随时随地对当前环境声音进行分类。
(4)实时性:由于使用FPGA进行声音特征提取,以及声音分类,相比于传统的CPU平台,的声音分类系统的处理速度很快,处理时间低至2s,基本能够实时得到声音分类的结果。
(5)多适用性:将需要的参数都定义为可配置的,只需要将训练声音的数据集种类数量加以改变,就可以对此分类系统的功能进行改变,以适应不同环境声音的分类。
附图说明
此处所说明的附图用来提供对本发明实施例的进一步理解,构成本申请的一部分,并不构成对本发明实施例的限定。在附图中:
图1为本发明分类方法流程示意图。
图2为本发明实施例特征提取方法示意图。
图3为本发明实施例Mel滤波器组各滤波器频率中心频率响应关系图。
图4为本发明实施例CNN分类网络特征提取方法示意图。
具体实施方式
在下文中,可在本发明的各种实施例中使用的术语“包括”或“可包括”指示所发明的功能、操作或元件的存在,并且不限制一个或更多个功能、操作或元件的增加。此外,如在本发明的各种实施例中所使用,术语“包括”、“具有”及其同源词仅意在表示特定特征、数字、步骤、操作、元件、组件或前述项的组合,并且不应被理解为首先排除一个或更多个其它特征、数字、步骤、操作、元件、组件或前述项的组合的存在或增加一个或更多个特征、数字、步骤、操作、元件、组件或前述项的组合的可能性。
在本发明的各种实施例中使用的表述(诸如“第一”、“第二”等)可修饰在各种实施例中的各种组成元件,不过可不限制相应组成元件。例如,以上表述并不限制所述元件的顺序和/或重要性。以上表述仅用于将一个元件与其它元件区别开的目的。例如,第一用户装置和第二用户装置指示不同用户装置,尽管二者都是用户装置。例如,在不脱离本发明的各种实施例的范围的情况下,第一元件可被称为第二元件,同样地,第二元件也可被称为第一元件。
在本发明的各种实施例中使用的术语仅用于描述特定实施例的目的并且并非意在限制本发明的各种实施例。如在此所使用,单数形式意在也包括复数形式,除非上下文清楚地另有指示。除非另有限定,否则在这里使用的所有术语(包括技术术语和科学术语)具有与本发明的各种实施例所属领域普通技术人员通常理解的含义相同的含义。所述术语(诸如在一般使用的词典中限定的术语)将被解释为具有与在相关技术领域中的语境含义相同的含义并且将不被解释为具有理想化的含义或过于正式的含义,除非在本发明的各种实施例中被清楚地限定。
为使本发明的目的、技术方案和优点更加清楚明白,下面结合实施例和附图,对本发明作进一步的详细说明,本发明的示意性实施方式及其说明仅用于解释本发明,并不作为对本发明的限定。
在实施例里的缩略语和关键术语定义如下:
MFSC:梅尔谱系数(Log Mel-Frequency Spectral Coefficients)
CNN:卷积神经网络(Convolutional Neural Network)
FPGA:现场可编程门阵列(Field Programmable Gate Array)
实施例1
一种基于FPGA的实时声音分类方法,如图1所示,包括如下步骤:
S1、获取声音数字数据;
将麦克风连接FPGA,获取声音数字数据,声音数据采样率为22050Hz,以1.61s声音数据为一块进行处理;
S2、提取所获取的声音数字数据中的声音特征,获得声音特征图;
声音数字数据首先输入FGPA中的声音特征提取模块,进行声音特征提取,得到MFSC声音特征图;
在本实施例里,声音数据首先输入分帧模块,将声音数据分成长度为512的数据帧,帧间移动数据点个数为220,输入为流水线操作,输出是长度为512的数据帧。其中,为了方便FFT进行处理,通常取N个点作为一帧进行处理,常用的值有128和512。不同种类声音频率不相同,需要更高的表示精度,所以取512个采样点为一帧,时间长度为23ms,通过让两帧之间有一段重叠区域,使得两帧之间相邻部分变的平滑,令帧间移动为220点,时间长度为10ms。
然后将数据帧输入加窗模块,hann窗长为512,hann窗系数分别与数据帧数据进行乘法操作,输出为加窗之后的数据帧。
其中,加汉宁窗的目的是为了降低帧两端的坡度,使声音帧的两端变得平缓,减小声音帧的阶段效应,减小频谱泄露造成的不良影响,换句话说是使帧左端和右端变得相对的连续。设信号为x(n),窗函数为w(n),则加窗后的信号y(n)如下:
y(n)=x(n)w(n),0≤n≤N-1
其中w(n)形式如下:
再将加窗后的数据帧输入FFT模块,求出数据帧的频域数据,输出为I、Q两路数据,每路各有512个数据。其中,设声音信号为x(n),N表示傅里叶变换点数,则声音信号的傅里叶变换公式为
由于MFSC特征是根据人耳听觉的机理研究得出的,人耳对不同频率的声波有着不同的敏感度,因此可以将声音的频域数据计算出来经过滤波处理后作为声音的特征。将输出的I、Q两路数据的各前257个数据输入幅度计算模块,这些数据包含了所有的频域信息,计算出对应点的幅度数据作为最终的声音频域数据,输出为257个声音频域幅度数据。
将幅度数据输入Mel滤波器模块,Mel滤波器是一组Mel尺度的三角形滤波器组,定义一个有M个滤波器的滤波器组,采用的滤波器为三角滤波器,中心频率为f(m),m=1,2,3,···,M。各f(m)之间的间隔随着m值的减小而缩小,随着m值的增大而增宽,如图3所示。
其中三角滤波器的频率响应定义为:
在本实施例里,采用三角带通滤波器可以对频谱进行平滑化并消除谐波的作用,突显原先语音的共振峰。此外,还可以降低运特征提取过程中的算量。
本实施例里采用的Mel滤波器共有64个三角滤波器,幅度数据分别与每个三角滤波器系数相乘后相加,每帧数据可以得到64个Mel滤波输出。
滤波输出自然对数运算后,能够得到大小为160*64*1的声音对数能量,即MFSC特征图。设输出为s(m),则计算公式为:
其中,MFCC输出的声音梅尔倒谱特征数据比MFSC要少,但是在通常的分析过程中,MFCC还要求取一阶差分系数和二阶差分系数,和原本的数据拼接进行操作,相对于MFSC不仅多出了离散余弦计算,还增加了求差分系数计算。同时,其数据的相关性没有MFSC强,相对于MFSC较不适合作为卷积神经网络的输入。
在本实施例里,由于该声音分类系统是对不同种类的声音进行分析,所以取消了预加重计算,这是由于预加重计算主要应用在语音分析中,意在增强语音的高频信息,对于多种类声音分析,可以将预加重步骤删除。同时由于MFSC相对于MFCC数据虽然维度更高,但是相关性也更强,更加适合作为卷积神经网络的输入,因此,相对于MFCC,去掉离散余弦变换计算,减小了计算量。而不同种类的声音频率不相同,所以增加了声音的采样率,能够保留更多的频率信息,可以增加分类结果的准确性。
S3、获取声音特征图进行分类计算,获取声音判断概率;以具体实施例为例,如图4所示:
将输入的MFSC声音特征图作为第一特征图,其特征图矩阵的边缘进行零填充,其目一是经过3*3卷积核之后可以保持特征图片大小不变,二是可以保留边缘信息,经过填充得到大小为162*66*1的第一填充特征图;
将第一填充特征图经过大小3*3卷积核计算,3*3的卷积核在特征图上滑动,并与其做乘加运算,得到的结果放在特征图的原位置,然后通过Relu6激活函数,对于特征图中小于0的数全部置0,大于6的数全部置6,其余保持不变;再进行最大池化,使用2*2的窗口在特征图上滑动,只保留每个窗口中的最大数,使得特征图的长和宽变为原来的一半,最后得到大小为80*32*64第二特征图,将第二特征图进行零填充,得到大小为82*34*64的第二填充特征图;
将第二特填充征图经过卷积计算,然后通过Relu6激活函数并进行最大池化,得到大小为40*16*128的第三特征图,将第三特征图进行零填充,得到大小为42*18*128的第三填充特征图;
将第三填充特征图经过卷积计算,然后通过Relu6激活函数并进行最大池化,得到大小为40*16*256的第四特征图,将第四特征图进行零填充,得到大小为42*18*256的第四填充特征图;
将第四填充特征图经过卷积计算,然后通过Relu6激活函数并进行最大池化,得到大小为20*8*256的第五特征图,将第五特征图进行零填充,得到大小为22*10*256的第五填充特征图;
将第五填充特征图经过卷积计算,然后通过Relu6激活函数并进行最大池化,得到大小为20*8*256的第六特征图,将第六特征图进行零填充,得到大小为22*10*256的第六填充特征图;
将第六填充特征图经过大小为1*1*128的卷积核计算,然后通过Relu6激活函数并进行最大池化,得到大小为1*8*512的第七特征图,将第七特征图经过卷积计算然后通过Relu6激活函数,得到大小为1*8*128的第八特征图;
将第八特征图经过1*1*128的卷积核计算,并通过激活函数得到大小为1*8*64的第九特征图;
将第九特征图各通道首尾相接,使其由三维降至二维,形成大小为1*512*1的第十特征图;
将第十特征图通过全连接层得到6个数值,然后经过sigmoid函数输出6个在0、1之间的事件发生的概率,即三种不同声音判决的概率,其中最大的概率即为声音分类的结果。
S4、根据声音判决最大的概率得到声音的分类结果。
实施例2
一种基于fpga的实时声音分类系统,包括如下模块:
采集模块,用于获取声音数字数据;
声音MFSC特征提取模块,用于提取所获取的声音数字数据中的声音特征,获得声音特征图;
CNN分类网络模块,用于获取声音特征图进行分类计算,获取声音判断概率。
输出模块,用于根据声音判决最大的概率得到声音的分类结果。
进一步的,所述声音MFSC特征提取模块包括:
分帧模块,用于对声音数字数据进行分帧形成数据帧;
其中,采用异步FIFO对输入的声音数据进行分帧操作。
加窗模块,用于对数据帧进行加hann窗,得到加窗之后的数据帧;
其中,使用一个乘法器承担流水输入与窗函数系数相乘的计算,在节省硬件资源的同时保证输入的速度。
FFT模块,用于对对加窗之后的数据帧进行快速傅立叶变换,并输出两路数据;
幅度计算模块,用于将输出的两路数据中包含频域信息的数据分别进行幅度计算,获得声音频域幅度数据;
Mel滤波器模块,用于将声音频域幅度数据进行Mel滤波,输出多个Mel滤波输出;
其中,由于上述分析,梅尔滤波计算在计算过程中需要输入的数据一直缓存,所以输入采用pingpongbuffer,使得梅尔滤波模块能够流水处理数据,同时只提取有效梅尔滤波器组系数存储在FPGA的ROM中,去除无效的0数据。在节省硬件资源的同时保证输入的速度。
对数计算模块,用于将多个Mel滤波输出进行对数计算,获得声音特征图。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (7)
1.一种基于FPGA的实时声音分类方法,其特征在于,包括如下步骤:
S1、获取声音数字数据;
S2、提取所获取的声音数字数据中的声音特征,获得声音特征图;
S3、获取声音特征图进行分类计算,获取声音判断概率,具体方式为:
S31、对声音特征图进行填充,获得声音特征的填充特征图;
S32、将填充特征图经过卷积层计算后,通过激活函数再进行最大池化得到进一步的声音特征图;
S33、重复多次上述步骤得到三维的声音特征图,具体重复方式为:
将输入的MFSC声音特征图作为第一特征图,其特征图矩阵的边缘进行零填充,其目一是经过3*3卷积核之后可以保持特征图片大小不变,二是可以保留边缘信息,经过填充得到大小为162*66*1的第一填充特征图;
将第一填充特征图经过大小3*3卷积核计算,3*3的卷积核在特征图上滑动,并与其做乘加运算,得到的结果放在特征图的原位置,然后通过Relu6激活函数,对于特征图中小于0的数全部置0,大于6的数全部置6,其余保持不变;再进行最大池化,使用2*2的窗口在特征图上滑动,只保留每个窗口中的最大数,使得特征图的长和宽变为原来的一半,最后得到大小为80*32*64第二特征图,将第二特征图进行零填充,得到大小为82*34*64的第二填充特征图;
将第二特填充征图经过卷积计算,然后通过Relu6激活函数并进行最大池化,得到大小为40*16*128的第三特征图,将第三特征图进行零填充,得到大小为42*18*128的第三填充特征图;
将第三填充特征图经过卷积计算,然后通过Relu6激活函数并进行最大池化,得到大小为40*16*256的第四特征图,将第四特征图进行零填充,得到大小为42*18*256的第四填充特征图;
将第四填充特征图经过卷积计算,然后通过Relu6激活函数并进行最大池化,得到大小为20*8*256的第五特征图,将第五特征图进行零填充,得到大小为22*10*256的第五填充特征图;
将第五填充特征图经过卷积计算,然后通过Relu6激活函数并进行最大池化,得到大小为20*8*256的第六特征图,将第六特征图进行零填充,得到大小为22*10*256的第六填充特征图;
将第六填充特征图经过大小为1*1*128的卷积核计算,然后通过Relu6激活函数并进行最大池化,得到大小为1*8*512的第七特征图,将第七特征图经过卷积计算然后通过Relu6激活函数,得到大小为1*8*128的第八特征图;
将第八特征图经过1*1*128的卷积核计算,并通过激活函数得到大小为1*8*64的第九特征图;
S34、将三维的声音特征图各通道首尾相连,降维形成声音特征数据,具体方式为:
将第九特征图各通道首尾相接,使其由三维降至二维,形成大小为1*512*1的第十特征图;
S35、将声音特征数据通过全连接层,获取不同声音判决的概率,具体方式为:将第十特征图通过全连接层得到6个数值,然后经过sigmoid函数输出6个在0、1之间的事件发生的概率;
S4、根据声音判决最大的概率得到声音的分类结果,具体判决方式为:
根据步骤S35得到三种不同声音判决的概率,其中最大的概率即为声音分类的结果。
2.根据权利要求1所述的一种基于FPGA的实时声音分类方法,其特征在于,所述声音特征的提取过程包括:
S21、采用异步FIFO对输入对声音数字数据进行分帧形成数据帧;
S22、对数据帧进行加窗,得到加窗之后的数据帧;
S23、对加窗之后的数据帧进行快速傅立叶变换,输出两路数据;
S24、将输出的两路数据中包含频域信息的数据分别进行幅度计算,获得声音频域幅度数据;
S25、将声音频域幅度数据进行Mel滤波,输出多个Mel滤波输出;
S26、将多个Mel滤波输出进行对数计算,获得声音特征图。
3.根据权利要求2所述的一种基于FPGA的实时声音分类方法,其特征在于,Mel滤波器包括多个具有Mel尺度的三角带通滤波器,每个三角滤波器的中心频率f(m)之间的间距随m增大而增宽。
5.根据权利要求1所述的一种基于FPGA的实时声音分类方法,其特征在于,
所述卷积层计算的过程为,将填充特征图经过卷积核计算后,通过激活函数再进行最大池化。
6.一种应用权利要求1-5任意一项所述方法的声音分类系统,其特征在于,包括
采集模块,用于获取声音数字数据;
声音MFSC特征提取模块,用于提取所获取的声音数字数据中的声音特征,获得声音特征图;
CNN分类网络模块,用于获取声音特征图进行分类计算,获取声音判断概率;
输出模块,用于根据声音判决最大的概率得到声音的分类结果。
7.根据权利要求6所述的声音分类系统,其特征在于,所述声音MFSC特征提取模块包括:
分帧模块,用于对声音数字数据进行分帧形成数据帧;
加窗模块,用于对数据帧进行加hann窗,得到加窗之后的数据帧;
FFT模块,用于对对加窗之后的数据帧进行快速傅立叶变换,并输出两路数据;
幅度计算模块,用于将输出的两路数据中包含频域信息的数据分别进行幅度计算,获得声音频域幅度数据;
Mel滤波器模块,用于将声音频域幅度数据进行Mel滤波,输出多个Mel滤波输出;
对数计算模块,用于将多个Mel滤波输出进行对数计算,获得声音特征图。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011239248.5A CN112397090B (zh) | 2020-11-09 | 2020-11-09 | 一种基于fpga的实时声音分类方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011239248.5A CN112397090B (zh) | 2020-11-09 | 2020-11-09 | 一种基于fpga的实时声音分类方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112397090A CN112397090A (zh) | 2021-02-23 |
CN112397090B true CN112397090B (zh) | 2022-11-15 |
Family
ID=74599095
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011239248.5A Active CN112397090B (zh) | 2020-11-09 | 2020-11-09 | 一种基于fpga的实时声音分类方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112397090B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114333779A (zh) * | 2021-12-30 | 2022-04-12 | 电子科技大学 | 一种基于fpga平台的声音识别系统及方法 |
CN114495971A (zh) * | 2022-02-25 | 2022-05-13 | 四川天中星航空科技有限公司 | 一种采用嵌入式硬件运行神经网络的语音增强方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2004006222A2 (fr) * | 2002-07-08 | 2004-01-15 | Ecole Centrale De Lyon | Procede et appareil pour la classification de signaux sonores |
WO2019015505A1 (zh) * | 2017-07-19 | 2019-01-24 | 阿里巴巴集团控股有限公司 | 信息处理方法、系统、电子设备、和计算机存储介质 |
CN109493881A (zh) * | 2018-11-22 | 2019-03-19 | 北京奇虎科技有限公司 | 一种音频的标签化处理方法、装置和计算设备 |
CN109767785A (zh) * | 2019-03-06 | 2019-05-17 | 河北工业大学 | 基于卷积神经网络的环境噪声识别分类方法 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11074927B2 (en) * | 2017-10-31 | 2021-07-27 | International Business Machines Corporation | Acoustic event detection in polyphonic acoustic data |
CN207751640U (zh) * | 2018-01-30 | 2018-08-21 | 广州坚诺机械设备有限公司 | 一种具有频谱分析功能的声音信号采集处理模块 |
CN108680245A (zh) * | 2018-04-27 | 2018-10-19 | 天津大学 | 鲸豚类Click类叫声与传统声呐信号分类方法及装置 |
CN110189757A (zh) * | 2019-06-27 | 2019-08-30 | 电子科技大学 | 一种大熊猫个体识别方法、设备及计算机可读存储介质 |
CN111477250B (zh) * | 2020-04-07 | 2023-11-28 | 北京达佳互联信息技术有限公司 | 音频场景识别方法、音频场景识别模型的训练方法和装置 |
US11875783B2 (en) * | 2020-06-03 | 2024-01-16 | Intel Corporation | Method and system of audio input bit-size conversion for audio processing |
-
2020
- 2020-11-09 CN CN202011239248.5A patent/CN112397090B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2004006222A2 (fr) * | 2002-07-08 | 2004-01-15 | Ecole Centrale De Lyon | Procede et appareil pour la classification de signaux sonores |
WO2019015505A1 (zh) * | 2017-07-19 | 2019-01-24 | 阿里巴巴集团控股有限公司 | 信息处理方法、系统、电子设备、和计算机存储介质 |
CN109493881A (zh) * | 2018-11-22 | 2019-03-19 | 北京奇虎科技有限公司 | 一种音频的标签化处理方法、装置和计算设备 |
CN109767785A (zh) * | 2019-03-06 | 2019-05-17 | 河北工业大学 | 基于卷积神经网络的环境噪声识别分类方法 |
Non-Patent Citations (2)
Title |
---|
Acoustic scene classification using deep CNN with fine-resolution feature;Tao Zhang et al;《Expert Systems With Applications》;20191031;全文 * |
美尔谱系数与卷积神经网络相组合的环境声音识别方法;刘亚荣等;《信号处理》;20200612;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN112397090A (zh) | 2021-02-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10679612B2 (en) | Speech recognizing method and apparatus | |
Trigeorgis et al. | Adieu features? end-to-end speech emotion recognition using a deep convolutional recurrent network | |
Bhat et al. | A real-time convolutional neural network based speech enhancement for hearing impaired listeners using smartphone | |
CN111833896B (zh) | 融合反馈信号的语音增强方法、系统、装置和存储介质 | |
CN105845127A (zh) | 语音识别方法及其系统 | |
CN111899757B (zh) | 针对目标说话人提取的单通道语音分离方法及系统 | |
CN112397090B (zh) | 一种基于fpga的实时声音分类方法及系统 | |
CN110942766A (zh) | 音频事件检测方法、系统、移动终端及存储介质 | |
Jia et al. | Speaker recognition based on characteristic spectrograms and an improved self-organizing feature map neural network | |
Rammo et al. | Detecting the speaker language using CNN deep learning algorithm | |
CN109147798B (zh) | 语音识别方法、装置、电子设备及可读存储介质 | |
Meyer et al. | Efficient convolutional neural network for audio event detection | |
CN111986660A (zh) | 一种神经网络子带建模的单通道语音增强方法、系统及存储介质 | |
Do et al. | Speech source separation using variational autoencoder and bandpass filter | |
CN112530410A (zh) | 一种命令词识别方法及设备 | |
Kim et al. | Efficient implementation of the room simulator for training deep neural network acoustic models | |
Bavu et al. | TimeScaleNet: A multiresolution approach for raw audio recognition using learnable biquadratic IIR filters and residual networks of depthwise-separable one-dimensional atrous convolutions | |
Köpüklü et al. | ResectNet: An Efficient Architecture for Voice Activity Detection on Mobile Devices. | |
CN113327589B (zh) | 一种基于姿态传感器的语音活动检测方法 | |
CN115273883A (zh) | 卷积循环神经网络、语音增强方法及装置 | |
CN115565550A (zh) | 基于特征图轻量卷积变换的婴儿哭声情感识别方法 | |
CN115267672A (zh) | 声源检测和定位的方法 | |
Bicer et al. | Explainable acoustic scene classification: Making decisions audible | |
CN116982111A (zh) | 音频特征补偿方法、音频识别方法及相关产品 | |
Alex et al. | Performance analysis of SOFM based reduced complexity feature extraction methods with back propagation neural network for multilingual digit recognition |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |