CN109256147A - 音频节拍检测方法、装置及存储介质 - Google Patents

音频节拍检测方法、装置及存储介质 Download PDF

Info

Publication number
CN109256147A
CN109256147A CN201811278954.3A CN201811278954A CN109256147A CN 109256147 A CN109256147 A CN 109256147A CN 201811278954 A CN201811278954 A CN 201811278954A CN 109256147 A CN109256147 A CN 109256147A
Authority
CN
China
Prior art keywords
audio
model
confidence level
bpm value
signal
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.)
Granted
Application number
CN201811278954.3A
Other languages
English (en)
Other versions
CN109256147B (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.)
Tencent Music Entertainment Technology Shenzhen Co Ltd
Original Assignee
Tencent Music Entertainment Technology Shenzhen 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 Tencent Music Entertainment Technology Shenzhen Co Ltd filed Critical Tencent Music Entertainment Technology Shenzhen Co Ltd
Priority to CN201811278954.3A priority Critical patent/CN109256147B/zh
Publication of CN109256147A publication Critical patent/CN109256147A/zh
Application granted granted Critical
Publication of CN109256147B publication Critical patent/CN109256147B/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/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
    • 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/27Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the analysis technique
    • G10L25/30Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the analysis technique using neural networks
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H2210/00Aspects or methods of musical processing having intrinsic musical character, i.e. involving musical theory or musical parameters or relying on musical knowledge, as applied in electrophonic musical tools or instruments
    • G10H2210/031Musical analysis, i.e. isolation, extraction or identification of musical elements or musical parameters from a raw acoustic signal or from an encoded audio signal
    • G10H2210/036Musical analysis, i.e. isolation, extraction or identification of musical elements or musical parameters from a raw acoustic signal or from an encoded audio signal of musical genre, i.e. analysing the style of musical pieces, usually for selection, filtering or classification
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H2210/00Aspects or methods of musical processing having intrinsic musical character, i.e. involving musical theory or musical parameters or relying on musical knowledge, as applied in electrophonic musical tools or instruments
    • G10H2210/031Musical analysis, i.e. isolation, extraction or identification of musical elements or musical parameters from a raw acoustic signal or from an encoded audio signal
    • G10H2210/076Musical analysis, i.e. isolation, extraction or identification of musical elements or musical parameters from a raw acoustic signal or from an encoded audio signal for extraction of timing, tempo; Beat detection
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H2250/00Aspects of algorithms or signal processing methods without intrinsic musical character, yet specifically adapted for or used in electrophonic musical processing
    • G10H2250/311Neural networks for electrophonic musical instruments or musical processing, e.g. for musical recognition or control, automatic composition or improvisation

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)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Auxiliary Devices For Music (AREA)

Abstract

本发明公开了一种音频节拍检测方法、装置及存储介质,所述方法包括:获取训练样本,并对所述训练样本进行特征提取,以提取出所述训练样本的音频特征,再将所述训练样本的音频特征输入参考模型中进行学习训练,以得到训练后的所述参考模型的优化参数,且根据所述优化参数生成检测模型,然后基于所述检测模型对待测音频进行音频节拍检测,以获取所述待测音频的BPM值以及所述BPM值对应的置信度,提升了音频节拍检测的准确率,且能缩短检测过程中的运行时间。

Description

音频节拍检测方法、装置及存储介质
技术领域
本发明实施例涉及音频处理领域,具体涉及一种音频节拍检测方法、装置及存储介质。
背景技术
BPM(Beat Per Minute,每分钟节拍数)是音乐的一项基本属性,是音乐速度的量化指标。BPM越大的音乐,给人的感觉越快,反之则越慢。BPM具有多种实际应用,例如推荐***、健身音乐等。
目前,BPM的估计是一项研究热点内容,从大类来说主要有两类,一类是基于onset的BPM估计,一类是从信号本身出发进行BPM估计。许多开源代码(例如librosa、Madmom等)都可以用于进行BPM估计,但准确率都不高,且计算速度十分缓慢。
发明内容
本发明实施例提供一种音频节拍检测方法、装置及存储介质,可以提升音频节拍检测的准确率,且能缩短检测过程中的运行时间。
本发明实施例提供一种音频节拍检测方法,所述方法包括:
获取训练样本;
对所述训练样本进行特征提取,以提取出所述训练样本的音频特征;
将所述训练样本的音频特征输入参考模型中进行学习训练,以得到训练后的所述参考模型的优化参数;
根据所述优化参数生成检测模型;
基于所述检测模型对待测音频进行音频节拍检测,以获取所述待测音频的BPM值以及所述BPM值对应的置信度。
本发明实施例还提供一种音频节拍检测装置,所述装置包括:
获取模块,用于获取训练样本;
提取模块,用于对所述训练样本进行特征提取,以提取出所述训练样本的音频特征;
训练模块,用于将所述训练样本的音频特征输入参考模型中进行学习训练,以得到训练后的所述参考模型的优化参数;
生成模块,用于根据所述优化参数生成检测模型;
检测模块,用于基于所述检测模型对待测音频进行音频节拍检测,以获取所述待测音频的BPM值以及所述BPM值对应的置信度。
本发明实施例还提供一种存储介质,所述存储介质存储有多条指令,所述指令适于处理器进行加载,执行本发明实施例所提供的任一种所述的音频节拍检测方法中的步骤。
本发明实施例通过获取训练样本,并对所述训练样本进行特征提取,以提取出所述训练样本的音频特征,再将所述训练样本的音频特征输入参考模型中进行学习训练,以得到训练后的所述参考模型的优化参数,且根据所述优化参数生成检测模型,然后基于所述检测模型对待测音频进行音频节拍检测,以获取所述待测音频的BPM值以及所述BPM值对应的置信度,提升了音频节拍检测的准确率,且能缩短检测过程中的运行时间。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种音频节拍检测装置的***示意图。
图2为本发明实施例提供的一种音频节拍检测方法的流程示意图。
图3为本发明实施例提供的一种音频节拍检测方法的另一流程示意图。
图4为本发明实施例提供的一种音频节拍检测方法的另一流程示意图。
图5为本发明实施例提供的参考模型的网络拓扑结构图。
图6为本发明实施例提供的基本处理单元的网络拓扑结构图。
图7为本发明实施例提供的一种音频节拍检测方法的另一流程示意图。
图8为本发明实施例提供的一种音频节拍检测装置的结构示意图。
图9为本发明实施例提供的一种音频节拍检测装置的另一结构示意图。
图10为本发明实施例提供的一种音频节拍检测装置的另一结构示意图。
图11为本发明实施例提供的一种音频节拍检测装置的另一结构示意图。
图12为本发明实施例提供的一种服务器的结构示意图。
图13为本发明实施例提供的一种终端的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明中的术语“第一”和“第二”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或模块的过程、方法、***、产品或设备没有限定于已列出的步骤或模块,而是可选地还包括没有列出的步骤或模块,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或模块。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本发明的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
BPM是音乐的一项基本属性,是音乐速度的量化指标。BPM越大的音乐,给人的感觉越快,反之则越慢。BPM具有多种实际应用,例如推荐***、健身音乐等。目前,BPM的估计是一项研究热点内容,从大类来说主要有两类,一类是基于onset的BPM估计,一类是从信号本身出发进行BPM估计。许多开源代码(例如librosa、Madmom等)都可以用于进行BPM估计,但准确率都不高,且计算速度十分缓慢。
因而,本发明实施例提供了一种音频节拍检测方法、装置及存储介质,基于深度学习网络进行模型训练,将从训练样本中提取的音频特征输入参考模型中进行学习训练,以得到训练后的所述参考模型的优化参数,且根据所述优化参数生成检测模型,然后基于所述检测模型对待测音频进行音频节拍检测,以获取所述待测音频的BPM值以及所述BPM值对应的置信度,提升了音频节拍检测的准确率,且能缩短检测过程中的运行时间。
本发明实施例提供的音频节拍检测方法,可实现在音频节拍检测装置中,该音频节拍检测装置具体可以集成在电子设备或其他具有音视频数据处理功能的设备中,电子设备包括但不限于智能电视,智能音箱等设备。
请参阅图1,图1为本发明实施例提供的一种音频节拍检测装置的***示意图。该音频节拍检测装置主要用于:预先获取训练样本,然后从训练样本中提取音频特征,再将提取的音频特征输入参考模型中进行学习训练,以得到训练后的所述参考模型的优化参数,且根据所述优化参数生成检测模型,若接收到待测音频,则通过所述检测模型对所述待测音频进行音频节拍检测,以生成检测结果,并根据检测结果获取所述待测音频的BPM值以及所述BPM值对应的置信度,提升了音频节拍检测的准确率,且能缩短检测过程中的运行时间。
需要说明的是,参考模型的训练过程可以在服务器端也可以在电子设备端完成。当参考模型的训练过程、实际检测过程都在服务器端完成时,需要使用由训练后的参考模型形成的检测模型时,可以将待测音频以及待测音频对应的音频特征输入到服务器,服务器实际检测完成后,将检测结果发送至电子设备端,电子设备再根据检测结果确定所述待测音频的BPM值以及所述BPM值对应的置信度。
当参考模型的训练过程、实际检测过程都在电子设备端完成时,需要使用由训练后的参考模型形成的检测模型时,可以将待测音频以及待测音频对应的音频特征输入到电子设备,电子设备实际检测完成后,电子设备根据检测结果确定所述待测音频的BPM值以及所述BPM值对应的置信度。
当参考模型的训练过程在服务器端完成,参考模型的实际检测过程在电子设备端完成时,需要使用由训练后的参考模型形成的检测模型时,可以将待测音频以及待测音频对应的音频特征输入到电子设备,电子设备实际检测完成后,电子设备根据检测结果确定所述待测音频的BPM值以及所述BPM值对应的置信度。可选的,可以将训练好的检测模型文件(model文件)移植到电子设备上,若需要对输入的待测音频进行音频检测,则将待测音频输入到训练好的检测模型文件(model文件),通过计算即可得到检测结果。
以下将分别进行详细说明,以下各个实施例的描述先后顺序并不构成对具体实施先后顺序的限定。
请参阅图2至图7,图2至图4以及图7均为本发明实施例提供的一种音频节拍检测方法的流程示意图,图5为本发明实施例提供的参考模型的网络拓扑结构图,图6为本发明实施例提供的基本处理单元的网络拓扑结构图。
所述方法包括:
步骤101,获取训练样本。
其中,所述训练样本已进行标注,每一训练样本音频中的每个节拍(beat)时间点都被标注出来。
为了更好的利用标注数据,我们采用随机样本生成的策略。例如,在每一次选取训练样本时,我们随机从一个音频上截取20s的数据作为训练样本,并截取对应的标签为标签。
其中,获取到的音频数据的训练样本,可以是未经压缩的数据,这样电子设备端或者服务器端就避免了解压缩的操作,以此保证较高的声音还原度,且提高了数据处理效率。
步骤102,对所述训练样本进行特征提取,以提取出所述训练样本的音频特征。
在一些实施例中,如图3所示,步骤102可以通过步骤1021至步骤1023来实现,具体为:
步骤1021,按照预设步长以及预设帧长对所述训练样本进行分帧处理,以得到多帧信号。
例如,将预设帧长设置为512,预设步长可以选取设置多个,例如预设步长分别设置为1024、2048、4096,将训练样本以512为步长、分别以1024、2048、4096为帧长进行分帧处理,以得到步长为512帧长为1024的第一帧信号,步长为512帧长为2048的第二帧信号,以及步长为512帧长为4096的第三帧信号。
步骤1022,对所述多帧信号进行信号变换,以得到与所述多帧信号对应的多个基本信号。
在一些实施例中,所述对所述多帧信号进行信号变换,以得到与所述多帧信号对应的多个基本信号,包括:
对所述多帧信号中的每一帧信号进行傅里叶变换,并对所述傅里叶变换的实部对应的信号频率进行梅尔尺度变换,以得到每一帧信号的梅尔频谱;
将所述每一帧信号的梅尔频谱输入对数函数中进行计算,以得到所述多帧信号中每一帧信号对应的基本信号。
例如,将所述多帧信号中的每一帧信号首先进行傅立叶变换,并取傅立叶变换的实部,比如取30-17000Hz对应的频率部分,进行Mel(梅尔)尺度变换。随后,将变换得到的一帧梅尔频谱的信号取对数log10,得到一帧数据作为每一帧信号对应的基本信号。对于3个不同帧长,得到3个不同的基本信号,其中,基本信号的长度由Mel尺度变换时所取的Mel滤波器数来决定。
步骤1023,从所述多个基本信号中导出与所述多个基本信号对应的多个导出信号。
在一些实施例中,所述从所述多个基本信号中导出与所述多个基本信号对应的多个导出信号,包括:
沿每一所述基本信号的频率方向分别进行中值滤波,以获取每一所述基本信号对应的中值滤波结果;
将每一所述基本信号减去与其对应的所述中值滤波结果,以得到每一所述基本信号对应的中间值;
根据所述中间值,求取每一所述基本信号对应的导出信号。
例如,在得到多个基本信号之后,比如得到三个基本信号A1、A2、A3,再对每一基本信号分别执行如下操作:
基本信号A1沿频率方向中值滤波得到中值滤波结果a1,然后再用原信号A1减去中值滤波结果a1,以得到中间值b1,然后再根据以下公式求取基本信号A1对应的导出信号c1,其中计算c1的公式为c1=(|b1|+b1)/2。
基本信号A2沿频率方向中值滤波得到中值滤波结果a2,然后再用原信号A2减去中值滤波结果a2,以得到中间值b2,然后再根据以下公式求取基本信号A2对应的导出信号c2,其中计算c2的公式为c2=(|b2|+b2)/2。
基本信号A3沿频率方向中值滤波得到中值滤波结果a3,然后再用原信号A3减去中值滤波结果a3,以得到中间值b3,然后再根据以下公式求取基本信号A3对应的导出信号c3,其中计算c3的公式为c3=(|b3|+b3)/2。
例如,通过以上操作,可以得到三个导出信号c1、c2、c3
步骤1024,按照时间序列将所述多个基本信号与所述多个导出信号进行向量堆叠,以得到所述训练样本的音频特征。
例如,得到上述的三个基本信号(A1、A2、A3)与三个导出信号(c1、c2、c3)后,按照时间序列将上述六个信号进行向量堆叠,以得到所述训练样本的整个音频特征。例如,此步骤可以复用Madmom算法,即可以直接调用了Madmom算法的源代码做信号的向量堆叠处理,以得到整个音频的特征。
步骤103,将所述训练样本的音频特征输入参考模型中进行学习训练,以得到训练后的所述参考模型的优化参数。
在一些实施例中,所述参考模型包括基本处理单元与分类器。如图4所示,步骤103可以通过步骤1031至步骤1034来实现,具体为:
步骤1031,将所述训练样本的音频特征经过多个重叠的基本处理单元处理后,得到输出特征,所述输出特征为与所述训练样本的音频特征等长的时间序列数据;
步骤1032,将所述输出特征输入所述分类器进行处理,以使得所述输出特征沿时间序列将每一帧的输出特征映射到每个时间点上,以得到所述每个时间点对应的预测结果以及所述预测结果对应的预测概率;
步骤1033,根据所述预测结果与所述预测概率,计算所述参数模型的损失函数;
步骤1034,对所述损失函数进行训练,以得到训练后的所述参考模型的优化参数。
其中,进行模型训练的目的在于通过一序列已标注的训练样本的学习,以建立一个检测结果与标注的真实结果最靠近的模型。训练过程中,需要对给定的每一帧信号做出判决,判断该帧信号是否为一个beat点。不同于Madmom的方案,在训练参考模型时可以使用卷积神经网络进行处理,因为对于过长的序列,循环神经网络RNN并不能很好的学习到序列的时序信息,且训练非常耗时,因此可以采用带有膨胀的1DResGCNN进行参考模型的训练。
如图5及图6所示,所述参考模型包括可以基本处理单元与分类器。其中,所述基本处理单元可以包括滤波子单元、门控子单元和混合子单元。其中,该基本处理单元也可以看作是多尺度滤波器组中的滤波器单元,为了加强滤波器的效果,可以将简单的滤波器单元改造为带有注意力机制的门控滤波器单元,每个基本处理单元可以包括滤波子单元、门控子单元和混合子单元。其中,所述滤波子单元用于对输入的音频特征进行滤波,所述门控子单元用于对输入的音频特征,所述混合子单元用于对所述滤波子单元以及门控子单元输出的数据进行混合处理,以得到输出特征。
其中,将所述训练样本的音频特征经过多个重叠的基本处理单元处理后,得到输出特征,所述输出特征为与所述训练样本的音频特征等长的时间序列数据。
对音频节拍的训练或检测问题,基本处理单元膨胀系数的非常关键,过少的膨胀系数使网络难以捕捉全局信息从而准确率降低,过高的膨胀系数会带来严重的过拟合,大大降低网络性能。因此,基本处理单元的数目可以根据经验值设定,例如,经过多次实验测试后,对于20s长的音频,最佳的膨胀系数依次为1,2,4,8,16,32,64,128。
经过8层重叠的ResNetGCNN后,模型输出的数据是与输入等长的时间序列数据,我们对每个时间步数据复用一个全连接的逐点分类器,分类器可以包括第一全连接层Dense(128)和第二全连接层Dense(1),其中两个Dense层的权重在每一个时间步上复用。
Dense(128)和Dense(1)构成的部分可以是TimeDistributed网络层,即该TimeDistributed网络层沿着时间轴将每一帧的输出特征进行计算,将其映射到一个时间点上。这个TimeDistributed网络的权重在每一个时间步上复用。
例如,输出特征是一个时间长度为n,特征维度为d的矩阵(n,d),则dense(128)的权重就是一个(d,128)的矩阵,对于n中的每一个时间点i,Dense(128)将其d维特征映射到128,随后Dense(1)将其映射为1,最后得到的向量为(n,1)的向量。
其中,对所述损失函数进行训练过程中,为了更好的利用标注数据,可以采用随机样本生成的策略。在每一轮训练中,随机从一个音频上截取20s的数据作为训练样本,并截取对应的标签为标签。
其中,每一条音频数据是稀疏的,一段20s的音频可提出长达1722帧的特征,但是,该20s的音频中为beat点的帧只有10-80帧,绝大多数帧都是非beat点,因此,导致了在对音频节拍进行逐点分类时,正样本(beat点)远少于负样本(非beat点),参考模型更容易显示出对负样本的强偏好。为了纠正所述对负样本的强偏好,可以按标签对每一条音频数据样本的各个时间进行步赋权。
例如,截取作为训练样本的音频数据所对应的标签中含有N个beat点,M个非beat点,则初始化所有帧的权重为1,然后将beat点的帧权重设为M/N/2,且将相邻两beat点的中点处帧权重设为M/N/2,其中M/N/2表示为M除以N再除以2。通过对训练样本的各个时间进行步赋权,可以使得参考模型能够取得更好的训练效果。
在一些实施例中,所述对所述损失函数进行训练,以得到训练后的所述参考模型的优化参数,还包括:
按照预设次数对所述损失函数进行训练,并获取所述预设次数内所述参考模型的准确率变化趋势;
若所述准确率变化趋势为非上升趋势,则按照预设比例降低所述参考模型的学习率,并继续对所述损失函数进行训练。
例如,损失函数可以取逐点二类交叉熵(binary crossentropy)层或随机损失(dice loss)层,其中,dice loss为更好的选择,Dice loss是应用于图像分割的一种损失函数,它对预测区域和真实区域的重叠面积进行惩罚,有助于减少边界错位带来的损失。可以在参考模型中加入优化器,以自适应矩估计(Adam)算法为基础优化器,并配合Reducelearning rate on plateau策略,当模型连续8轮在验证集上没有性能提升时,将学习率下降为原来的一半。其中,Adam算法根据损失函数对每个参数的梯度的一阶矩估计和二阶矩估计动态调整针对于每个参数的学习速率,Adam也是基于梯度下降的方法,但是每次迭代参数的学习步长都有一个确定的范围,不会因为很大的梯度导致很大的学习步长,参数的值比较稳定。Reduce learning rate on plateau是在模型的训练期间,如果模型在验证集上的某项指标(如准确率)在N论训练中都不再上升,则按照一定比例降低学习率继续训练。例如,按照预设次数对所述损失函数进行训练,并获取所述预设次数内所述参考模型的准确率变化趋势,若所述准确率变化趋势为非上升趋势,则按照预设比例降低所述参考模型的学习率,并继续对所述损失函数进行训练。
步骤104,根据所述优化参数生成检测模型。
其中,所述检测模型可以由训练后的参考模型与其对应的优化参数组成,训练样本的音频特征经过训练后的所述参考模型处理后得到的输出数据,作为该检测模型的检测结果。
步骤105,基于所述检测模型对待测音频进行音频节拍检测,以获取所述待测音频的BPM值以及所述BPM值对应的置信度。
例如,在检测阶段,可以复用Madmom的后处理方案,具体而言,待测音频经过检测模型中的网络进行处理后得到激活值,该激活值再经过平滑、梳状滤波、间距统计等后处理之后得到最佳BPM值和其对应的置信度。此部分后处理方案可以复用Madmom的代码。
例如,一段待测音频经过音频特征的提取,模型的预测,模型的输出后处理之后得到一个BPM值。后处理的过程对所有输出都是一样的,但参考模型采用不同优化参数时,会导致最后得到的BPM值存在不同的情况。该优化参数用于表示参考模型中的网络权重。
在一些实施例中,如图7所示,步骤105可以通过步骤1051至步骤1053来实现,具体为:
步骤1051,按照预设时间长度从所述待测音频中截取多个音频片段。
例如,对每一个待测音频,可以按照待测音频本身的时间长度截取多段音频片段,在截取过程中按照预设时间长度进行截取,例如,截取的每段音频片段为20s。例如,可以按照如下规则进行音频片段的截取:
(1)若待测音频的时间长度不足20s,则补0到20s,并返回该段音频片段。
(2)若待测音频的时间长度大于20s但不足40s,则截取中间20s,并返回该段音频片段。
(3)若待测音频的时间长度大于40s但不足60s,则截取音频中心点左侧20S的音频片段及截取音频中心点右侧20S的音频片段,并返回被截取的两段音频片段。
(4)若待测音频的时间长度大于60s但不足80s,则除截取如步骤(3)所述的音频片段之外,还截取音频中心点左右两侧的30s为起点的20s音频片段。
(5)若待测音频的时间长度大于80s,则除截取如(4)所述的音频片段外,还截取音频中心点左右两侧的40s为起点的20s音频片段。
步骤1052,将所述多个音频片段分别输入所述检测模型中进行音频节拍检测,以获得所述多个音频片段中每一音频片段的预测结果,其中,所述每一音频片段的预测结果包括多个BPM值以及每一所述BPM值对应的置信度。
其中,可以对每段音频片段做一次预测,一次预测的结果包括多个bpm值和其对应的置信度。
步骤1053,对所述预测结果进行多段投票,以获取所述待测音频的BPM值以及所述BPM值对应的置信度。
在一些实施例中,若所述检测模型包括单模型,则所述对所述预测结果进行多段投票,以获取所述待测音频的BPM值以及所述BPM值对应的置信度,包括:
从所述多个音频片段的每一音频片段的预测结果中选取置信度排名达到预设名次的BPM值以及所述置信度排名达到预设名次的BPM值对应的置信度;
根据所述置信度排名达到预设名次的BPM值以及所述置信度排名达到预设名次的BPM值对应的置信度,确定所述待测音频的BPM值以及所述BPM值对应的置信度。
例如,在进行单模型多段投票时,对于每一段音频片段,可以从每一音频片段的预测结果中的多个BPM值和其对应的置信度中选取置信度最高的两个BPM值,返回该置信度最高的两个BPM值和其对应的置信度。
例如,一段20s的音频就会有多个BPM值和它的置信度,比方说一首歌,有0.8的概率是120BPM的,也有0.2的概率是60BPM的,一段的预测结果就是(120:0.8,60:0.2)。其中,取置信度最高的两个BPM值的目的在于,BPM值的估算最常见的错误类型是半倍频错误,即正确的BPM值在预测值的一半或一倍处,所以排名第一的不一定正确,排名第二有一定概率是正确的,选取第二名是为了保持第二名参与后续投票的可能性。
在一些实施例中,若所述检测模型包括多模型,则所述对所述预测结果进行多段投票,以获取所述待测音频的BPM值以及所述BPM值对应的置信度,包括:
从所述多个音频片段的每一音频片段的预测结果中选取所述多模型中每一模型对应的数据集,其中,所述每一模型对应的数据集包括同一模型输出的多个BPM值以及每一所述BPM值对应的置信度;
分别对所述多模型中每一模型对应的数据集进行投票,以从所述多模型中每一模型对应的数据集中选取置信度最高的数据集;
根据所述置信度最高的数据集,确定所述待测音频的BPM值以及所述BPM值对应的置信度。
在实际检测过程中,可以选择多个不同的优化参数来建立多个不同的参考模型,以通过多个参考模型算出多个BPM值,然后通过某种投票策略确定最可靠的BPM值。
其中,在进行多模型多段投票时,对每一个参考模型输出的数据,首先按照上述单模型多段投票的方式获得一组包括BPM值和其对应的置信度的数据集,比如该数据集可以为[(b1,p1),(b2,p2)…(bn,pn)],然后进行下面的投票策略:
(1)初始化空字典D,D中的每一个值都是形如[[b1,b2,…bn],p]的列表;
(2)对每一个(b,p),执行下面的循环:
对于D中的每一个键值k;
a)取k对应的值[[bk1,bk2,…bkn],pk];
b)计算[bk1….bkn]的均值bkm;
c)如果abs(b–bkm)<3(其中,abs代表绝对值运算),则
更新列表[bk1…bkn]为[bk1…bkn,b];
更新pk为pk+p;
退出当前循环(break)。
其中,若对D的键值遍历循环正常退出,即break没有发生,则说明字典中没有任何一个k对应的数据与b的绝对距离小于3,则在D中创建新k=b,其值为[[b],p]。否则,说明(b,p)的数据已被字典记录,不做任何事。
(3)当(2)执行完毕,所有模型的所有多段投票结果均被记录,遍历字典D,找出D中p值最大的一项,返回其[bk1,bk2…bkn]的均值作为最终的BPM值。
其中,本发明实施例相对于Madmom提供的最算法,平均提高7%-8%的BPM准确率,且运行时间快于Madmom方法。
上述所有的技术方案,可以采用任意结合形成本发明的可选实施例,在此不再一一赘述。
本发明实施例提供的音频节拍检测方法,通过获取训练样本,并对所述训练样本进行特征提取,以提取出所述训练样本的音频特征,再将所述训练样本的音频特征输入参考模型中进行学习训练,以得到训练后的所述参考模型的优化参数,且根据所述优化参数生成检测模型,然后基于所述检测模型对待测音频进行音频节拍检测,以获取所述待测音频的BPM值以及所述BPM值对应的置信度,提升了音频节拍检测的准确率,且能缩短检测过程中的运行时间。
本发明实施例还提供一种音频节拍检测装置,如图8至图11所示,图8至图11均为本发明实施例提供的一种音频节拍检测装置的结构示意图。所述音频节拍检测装置40可以包括获取模块41,提取模块42,训练模块43,生成模块44,以及检测模块45。
其中,所述获取模块41,用于获取训练样本。
所述提取模块42,用于对所述训练样本进行特征提取,以提取出所述训练样本的音频特征。
所述训练模块43,用于将所述训练样本的音频特征输入参考模型中进行学习训练,以得到训练后的所述参考模型的优化参数。
所述生成模块44,用于根据所述优化参数生成检测模型。
所述检测模块45,用于基于所述检测模型对待测音频进行音频节拍检测,以获取所述待测音频的BPM值以及所述BPM值对应的置信度。
在一些实施例中,如图9所示,所述提取模块42,包括:
分帧子模块421,用于按照预设步长以及预设帧长对所述训练样本进行分帧处理,以得到多帧信号;
变换子模块422,用于对所述多帧信号进行信号变换,以得到与所述多帧信号对应的多个基本信号;
导出子模块423,用于从所述多个基本信号中导出与所述多个基本信号对应的多个导出信号;
堆叠子模块424,用于按照时间序列将所述多个基本信号与所述多个导出信号进行向量堆叠,以得到所述训练样本的音频特征。
在一些实施例中,所述变换子模块422,用于:
对所述多帧信号中的每一帧信号进行傅里叶变换,并对所述傅里叶变换的实部对应的信号频率进行梅尔尺度变换,以得到每一帧信号的梅尔频谱;
将所述每一帧信号的梅尔频谱输入对数函数中进行计算,以得到所述多帧信号中每一帧信号对应的基本信号;
所述导出子模块423,用于:
沿每一所述基本信号的频率方向分别进行中值滤波,以获取每一所述基本信号对应的中值滤波结果;
将每一所述基本信号减去与其对应的所述中值滤波结果,以得到每一所述基本信号对应的中间值;
根据所述中间值,求取每一所述基本信号对应的导出信号。
在一些实施例中,所述参考模型包括基本处理单元与分类器,如图10所示,所述训练模块43,包括:
第一处理子模块431,用于将所述训练样本的音频特征经过多个重叠的基本处理单元处理后,得到输出特征,所述输出特征为与所述训练样本的音频特征等长的时间序列数据;
第二处理子模块432,用于将所述输出特征输入所述分类器进行处理,以使得所述输出特征沿时间序列将每一帧的输出特征映射到每个时间点上,以得到所述每个时间点对应的预测结果以及所述预测结果对应的预测概率;
计算子模块433,用于根据所述预测结果与所述预测概率,计算所述参数模型的损失函数;
训练子模块434,用于对所述损失函数进行训练,以得到训练后的所述参考模型的优化参数。
在一些实施例中,所述训练模块43,还用于:
按照预设次数对所述损失函数进行训练,并获取所述预设次数内所述参考模型的准确率变化趋势;
若所述准确率变化趋势为非上升趋势,则按照预设比例降低所述参考模型的学习率,并继续对所述损失函数进行训练。
在一些实施例中,如图11所示,所述检测模块45,包括:
截取子模块451,用于按照预设时间长度从所述待测音频中截取多个音频片段;
检测子模块452,用于将所述多个音频片段分别输入所述检测模型中进行音频节拍检测,以获得所述多个音频片段中每一音频片段的预测结果,其中,所述每一音频片段的预测结果包括多个BPM值以及每一所述BPM值对应的置信度;
投票子模块453,用于对所述预测结果进行多段投票,以获取所述待测音频的BPM值以及所述BPM值对应的置信度。
在一些实施例中,若所述检测模型包括单模型,则所述投票子模块453,还用于:
从所述多个音频片段的每一音频片段的预测结果中选取置信度排名达到预设名次的BPM值以及所述置信度排名达到预设名次的BPM值对应的置信度;
根据所述置信度排名达到预设名次的BPM值以及所述置信度排名达到预设名次的BPM值对应的置信度,确定所述待测音频的BPM值以及所述BPM值对应的置信度。
在一些实施例中,若所述检测模型包括多模型,则所述投票子模块453,还用于:
从所述多个音频片段的每一音频片段的预测结果中选取所述多模型中每一模型对应的数据集,其中,所述每一模型对应的数据集包括同一模型输出的多个BPM值以及每一所述BPM值对应的置信度;
分别对所述多模型中每一模型对应的数据集进行投票,以从所述多模型中每一模型对应的数据集中选取置信度最高的数据集;
根据所述置信度最高的数据集,确定所述待测音频的BPM值以及所述BPM值对应的置信度。
上述所有的技术方案,可以采用任意结合形成本发明的可选实施例,在此不再一一赘述。
本发明实施例提供的音频节拍检测装置40,通过获取模块41获取训练样本,并通过提取模块42对所述训练样本进行特征提取,以提取出所述训练样本的音频特征,训练模块43再将所述训练样本的音频特征输入参考模型中进行学习训练,以得到训练后的所述参考模型的优化参数,且生成模块44根据所述优化参数生成检测模型,然后检测模块45基于所述检测模型对待测音频进行音频节拍检测,以获取所述待测音频的BPM值以及所述BPM值对应的置信度,提升了音频节拍检测的准确率,且能缩短检测过程中的运行时间。
本发明实施例还提供一种服务器,如图12所示,其示出了本发明实施例所涉及的服务器的结构示意图,具体来讲:
该服务器可以包括一个或者一个以上处理核心的处理器501、一个或一个以上计算机可读存储介质的存储器502、电源503和输入单元504等部件。本领域技术人员可以理解,图12中示出的服务器结构并不构成对服务器的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:
处理器501是该服务器的控制中心,利用各种接口和线路连接整个服务器的各个部分,通过运行或执行存储在存储器502内的软件程序和/或模块,以及调用存储在存储器502内的数据,执行服务器的各种功能和处理数据,从而对服务器进行整体监控。可选的,处理器501可包括一个或多个处理核心;优选的,处理器501可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作***、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器501中。
存储器502可用于存储软件程序以及模块,处理器501通过运行存储在存储器502的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器502可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作***、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据服务器的使用所创建的数据等。此外,存储器502可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器502还可以包括存储器控制器,以提供处理器501对存储器502的访问。
服务器还包括给各个部件供电的电源503,优选的,电源503可以通过电源管理***与处理器501逻辑相连,从而通过电源管理***实现管理充电、放电、以及功耗管理等功能。电源503还可以包括一个或一个以上的直流或交流电源、再充电***、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
该服务器还可包括输入单元504,该输入单元504可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。
尽管未示出,服务器还可以包括显示单元等,在此不再赘述。具体在本实施例中,服务器中的处理器501会按照如下的指令,将一个或一个以上的应用程序的进程对应的可执行文件加载到存储器502中,并由处理器501来运行存储在存储器502中的应用程序,从而实现各种功能,如下:
获取训练样本;对所述训练样本进行特征提取,以提取出所述训练样本的音频特征;将所述训练样本的音频特征输入参考模型中进行学习训练,以得到训练后的所述参考模型的优化参数;根据所述优化参数生成检测模型;基于所述检测模型对待测音频进行音频节拍检测,以获取所述待测音频的BPM值以及所述BPM值对应的置信度。
以上操作具体可参见前面的实施例,在此不作赘述。
由上可知,本实施例提供的服务器,通过获取训练样本,并对所述训练样本进行特征提取,以提取出所述训练样本的音频特征,再将所述训练样本的音频特征输入参考模型中进行学习训练,以得到训练后的所述参考模型的优化参数,且根据所述优化参数生成检测模型,然后基于所述检测模型对待测音频进行音频节拍检测,以获取所述待测音频的BPM值以及所述BPM值对应的置信度,提升了音频节拍检测的准确率,且能缩短检测过程中的运行时间。
相应的,本发明实施例还提供一种终端,如图13所示,该终端可以包括射频(RF,Radio Frequency)电路601、包括有一个或一个以上计算机可读存储介质的存储器602、输入单元603、显示单元604、传感器605、音频电路606、无线保真(WiFi,Wireless Fidelity)模块607、包括有一个或者一个以上处理核心的处理器608、以及电源609等部件。本领域技术人员可以理解,图13中示出的终端结构并不构成对终端的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:
RF电路601可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,交由一个或者一个以上处理器608处理;另外,将涉及上行的数据发送给基站。通常,RF电路601包括但不限于天线、至少一个放大器、调谐器、一个或多个振荡器、用户身份模块(SIM,Subscriber Identity Module)卡、收发信机、耦合器、低噪声放大器(LNA,Low Noise Amplifier)、双工器等。此外,RF电路601还可以通过无线通信与网络和其他设备通信。所述无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯***(GSM,Global System of Mobile communication)、通用分组无线服务(GPRS,GeneralPacket Radio Service)、码分多址(CDMA,Code Division Multiple Access)、宽带码分多址(WCDMA,Wideband Code Division Multiple Access)、长期演进(LTE,Long TermEvolution)、电子邮件、短消息服务(SMS,Short Messaging Service)等。
存储器602可用于存储软件程序以及模块,处理器608通过运行存储在存储器602的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器602可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作***、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据终端的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器602可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器602还可以包括存储器控制器,以提供处理器608和输入单元603对存储器602的访问。
输入单元603可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。具体地,在一个具体的实施例中,输入单元603可包括触敏表面以及其他输入设备。触敏表面,也称为触摸显示屏或者触控板,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触敏表面上或在触敏表面附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触敏表面可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器608,并能接收处理器608发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触敏表面。除了触敏表面,输入单元603还可以包括其他输入设备。具体地,其他输入设备可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
显示单元604可用于显示由用户输入的信息或提供给用户的信息以及终端的各种图形用户接口,这些图形用户接口可以由图形、文本、图标、视频和其任意组合来构成。显示单元604可包括显示面板,可选的,可以采用液晶显示器(LCD,Liquid Crystal Display)、有机发光二极管(OLED,Organic Light-Emitting Diode)等形式来配置显示面板。进一步的,触敏表面可覆盖显示面板,当触敏表面检测到在其上或附近的触摸操作后,传送给处理器608以确定触摸事件的类型,随后处理器608根据触摸事件的类型在显示面板上提供相应的视觉输出。虽然在图13中,触敏表面与显示面板是作为两个独立的部件来实现输入和输入功能,但是在某些实施例中,可以将触敏表面与显示面板集成而实现输入和输出功能。
终端还可包括至少一种传感器605,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板的亮度,接近传感器可在终端移动到耳边时,关闭显示面板和/或背光。作为运动传感器的一种,重力加速度传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于终端还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
音频电路606、扬声器,传声器可提供用户与终端之间的音频接口。音频电路606可将接收到的音频数据转换后的电信号,传输到扬声器,由扬声器转换为声音信号输出;另一方面,传声器将收集的声音信号转换为电信号,由音频电路606接收后转换为音频数据,再将音频数据输出处理器608处理后,经RF电路601以发送给比如另一终端,或者将音频数据输出至存储器602以便进一步处理。音频电路606还可能包括耳塞插孔,以提供外设耳机与终端的通信。
WiFi属于短距离无线传输技术,终端通过WiFi模块607可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图13示出了WiFi模块607,但是可以理解的是,其并不属于终端的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。
处理器608是终端的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器602内的软件程序和/或模块,以及调用存储在存储器602内的数据,执行终端的各种功能和处理数据,从而对手机进行整体监控。可选的,处理器608可包括一个或多个处理核心;优选的,处理器608可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作***、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器608中。
终端还包括给各个部件供电的电源609(比如电池),优选的,电源可以通过电源管理***与处理器608逻辑相连,从而通过电源管理***实现管理充电、放电、以及功耗管理等功能。电源609还可以包括一个或一个以上的直流或交流电源、再充电***、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
尽管未示出,终端还可以包括摄像头、蓝牙模块等,在此不再赘述。具体在本实施例中,终端中的处理器608会按照如下的指令,将一个或一个以上的应用程序的进程对应的可执行文件加载到存储器602中,并由处理器608来运行存储在存储器602中的应用程序,从而实现各种功能:
获取训练样本;对所述训练样本进行特征提取,以提取出所述训练样本的音频特征;将所述训练样本的音频特征输入参考模型中进行学习训练,以得到训练后的所述参考模型的优化参数;根据所述优化参数生成检测模型;基于所述检测模型对待测音频进行音频节拍检测,以获取所述待测音频的BPM值以及所述BPM值对应的置信度。
以上操作具体可参见前面的实施例,在此不作赘述。
由上可知,本实施例提供的终端,通过获取训练样本,并对所述训练样本进行特征提取,以提取出所述训练样本的音频特征,再将所述训练样本的音频特征输入参考模型中进行学习训练,以得到训练后的所述参考模型的优化参数,且根据所述优化参数生成检测模型,然后基于所述检测模型对待测音频进行音频节拍检测,以获取所述待测音频的BPM值以及所述BPM值对应的置信度,提升了音频节拍检测的准确率,且能缩短检测过程中的运行时间。
本领域普通技术人员可以理解,上述实施例的各种方法中的全部或部分步骤可以通过指令来完成,或通过指令控制相关的硬件来完成,该指令可以存储于一计算机可读存储介质中,并由处理器进行加载和执行。
为此,本发明实施例提供一种存储介质,其中存储有多条指令,该指令能够被处理器进行加载,以执行本发明实施例所提供的任一种音频节拍检测方法中的步骤。例如,该指令可以执行如下步骤:
获取训练样本;对所述训练样本进行特征提取,以提取出所述训练样本的音频特征;将所述训练样本的音频特征输入参考模型中进行学习训练,以得到训练后的所述参考模型的优化参数;根据所述优化参数生成检测模型;基于所述检测模型对待测音频进行音频节拍检测,以获取所述待测音频的BPM值以及所述BPM值对应的置信度。
以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
其中,该存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取记忆体(RAM,Random Access Memory)、磁盘或光盘等。
由于该存储介质中所存储的指令,可以执行本发明实施例所提供的任音频节拍检测方法中的步骤,因此,可以实现本发明实施例所提供的任一种音频节拍检测方法所能实现的有益效果,详见前面的实施例,在此不再赘述。
以上对本发明实施例所提供的一种音频节拍检测方法、装置及存储介质进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (17)

1.一种音频节拍检测方法,其特征在于,所述方法包括:
获取训练样本;
对所述训练样本进行特征提取,以提取出所述训练样本的音频特征;
将所述训练样本的音频特征输入参考模型中进行学习训练,以得到训练后的所述参考模型的优化参数;
根据所述优化参数生成检测模型;
基于所述检测模型对待测音频进行音频节拍检测,以获取所述待测音频的BPM值以及所述BPM值对应的置信度。
2.如权利要求1所述的音频节拍检测方法,其特征在于,所述基于所述检测模型对待测音频进行音频节拍检测,以获取所述待测音频的BPM值以及所述BPM值对应的置信度,包括:
按照预设时间长度从所述待测音频中截取多个音频片段;
将所述多个音频片段分别输入所述检测模型中进行音频节拍检测,以获得所述多个音频片段中每一音频片段的预测结果,其中,所述每一音频片段的预测结果包括多个BPM值以及每一所述BPM值对应的置信度;
对所述预测结果进行多段投票,以获取所述待测音频的BPM值以及所述BPM值对应的置信度。
3.如权利要求2所述的音频节拍检测方法,其特征在于,若所述检测模型包括单模型,则所述对所述预测结果进行多段投票,以获取所述待测音频的BPM值以及所述BPM值对应的置信度,包括:
从所述多个音频片段的每一音频片段的预测结果中选取置信度排名达到预设名次的BPM值以及所述置信度排名达到预设名次的BPM值对应的置信度;
根据所述置信度排名达到预设名次的BPM值以及所述置信度排名达到预设名次的BPM值对应的置信度,确定所述待测音频的BPM值以及所述BPM值对应的置信度。
4.如权利要求2所述的音频节拍检测方法,其特征在于,若所述检测模型包括多模型,则所述对所述预测结果进行多段投票,以获取所述待测音频的BPM值以及所述BPM值对应的置信度,包括:
从所述多个音频片段的每一音频片段的预测结果中选取所述多模型中每一模型对应的数据集,其中,所述每一模型对应的数据集包括同一模型输出的多个BPM值以及每一所述BPM值对应的置信度;
分别对所述多模型中每一模型对应的数据集进行投票,以从所述多模型中每一模型对应的数据集中选取置信度最高的数据集;
根据所述置信度最高的数据集,确定所述待测音频的BPM值以及所述BPM值对应的置信度。
5.如权利要求1所述的音频节拍检测方法,其特征在于,所述对所述训练样本进行特征提取,以提取出所述训练样本的音频特征,包括:
按照预设步长以及预设帧长对所述训练样本进行分帧处理,以得到多帧信号;
对所述多帧信号进行信号变换,以得到与所述多帧信号对应的多个基本信号;
从所述多个基本信号中导出与所述多个基本信号对应的多个导出信号;
按照时间序列将所述多个基本信号与所述多个导出信号进行向量堆叠,以得到所述训练样本的音频特征。
6.如权利要求5所述的音频节拍检测方法,其特征在于,所述对所述多帧信号进行信号变换,以得到与所述多帧信号对应的多个基本信号,包括:
对所述多帧信号中的每一帧信号进行傅里叶变换,并对所述傅里叶变换的实部对应的信号频率进行梅尔尺度变换,以得到每一帧信号的梅尔频谱;
将所述每一帧信号的梅尔频谱输入对数函数中进行计算,以得到所述多帧信号中每一帧信号对应的基本信号;
所述从所述多个基本信号中导出与所述多个基本信号对应的多个导出信号,包括:
沿每一所述基本信号的频率方向分别进行中值滤波,以获取每一所述基本信号对应的中值滤波结果;
将每一所述基本信号减去与其对应的所述中值滤波结果,以得到每一所述基本信号对应的中间值;
根据所述中间值,求取每一所述基本信号对应的导出信号。
7.如权利要求1所述的音频节拍检测方法,其特征在于,所述参考模型包括基本处理单元与分类器,所述将所述训练样本的音频特征输入参考模型中进行学习训练,以得到训练后的所述参考模型的优化参数,包括:
将所述训练样本的音频特征经过多个重叠的基本处理单元处理后,得到输出特征,所述输出特征为与所述训练样本的音频特征等长的时间序列数据;
将所述输出特征输入所述分类器进行处理,以使得所述输出特征沿时间序列将每一帧的输出特征映射到每个时间点上,以得到所述每个时间点对应的预测结果以及所述预测结果对应的预测概率;
根据所述预测结果与所述预测概率,计算所述参数模型的损失函数;
对所述损失函数进行训练,以得到训练后的所述参考模型的优化参数。
8.如权利要求7所述的音频节拍检测方法,其特征在于,所述对所述损失函数进行训练,以得到训练后的所述参考模型的优化参数,还包括:
按照预设次数对所述损失函数进行训练,并获取所述预设次数内所述参考模型的准确率变化趋势;
若所述准确率变化趋势为非上升趋势,则按照预设比例降低所述参考模型的学习率,并继续对所述损失函数进行训练。
9.一种音频节拍检测装置,其特征在于,所述装置包括:
获取模块,用于获取训练样本;
提取模块,用于对所述训练样本进行特征提取,以提取出所述训练样本的音频特征;
训练模块,用于将所述训练样本的音频特征输入参考模型中进行学习训练,以得到训练后的所述参考模型的优化参数;
生成模块,用于根据所述优化参数生成检测模型;
检测模块,用于基于所述检测模型对待测音频进行音频节拍检测,以获取所述待测音频的BPM值以及所述BPM值对应的置信度。
10.如权利要求9所述的音频节拍检测装置,其特征在于,所述检测模块,包括:
截取子模块,用于按照预设时间长度从所述待测音频中截取多个音频片段;
检测子模块,用于将所述多个音频片段分别输入所述检测模型中进行音频节拍检测,以获得所述多个音频片段中每一音频片段的预测结果,其中,所述每一音频片段的预测结果包括多个BPM值以及每一所述BPM值对应的置信度;
投票子模块,用于对所述预测结果进行多段投票,以获取所述待测音频的BPM值以及所述BPM值对应的置信度。
11.如权利要求10所述的音频节拍检测装置,其特征在于,若所述检测模型包括单模型,则所述投票子模块,还用于:
从所述多个音频片段的每一音频片段的预测结果中选取置信度排名达到预设名次的BPM值以及所述置信度排名达到预设名次的BPM值对应的置信度;
根据所述置信度排名达到预设名次的BPM值以及所述置信度排名达到预设名次的BPM值对应的置信度,确定所述待测音频的BPM值以及所述BPM值对应的置信度。
12.如权利要求10所述的音频节拍检测装置,其特征在于,若所述检测模型包括多模型,则所述投票子模块,还用于:
从所述多个音频片段的每一音频片段的预测结果中选取所述多模型中每一模型对应的数据集,其中,所述每一模型对应的数据集包括同一模型输出的多个BPM值以及每一所述BPM值对应的置信度;
分别对所述多模型中每一模型对应的数据集进行投票,以从所述多模型中每一模型对应的数据集中选取置信度最高的数据集;
根据所述置信度最高的数据集,确定所述待测音频的BPM值以及所述BPM值对应的置信度。
13.如权利要求9所述的音频节拍检测装置,其特征在于,所述提取模块,包括:
分帧子模块,用于按照预设步长以及预设帧长对所述训练样本进行分帧处理,以得到多帧信号;
变换子模块,用于对所述多帧信号进行信号变换,以得到与所述多帧信号对应的多个基本信号;
导出子模块,用于从所述多个基本信号中导出与所述多个基本信号对应的多个导出信号;
堆叠子模块,用于按照时间序列将所述多个基本信号与所述多个导出信号进行向量堆叠,以得到所述训练样本的音频特征。
14.如权利要求13所述的音频节拍检测装置,其特征在于,所述变换子模块,用于:
对所述多帧信号中的每一帧信号进行傅里叶变换,并对所述傅里叶变换的实部对应的信号频率进行梅尔尺度变换,以得到每一帧信号的梅尔频谱;
将所述每一帧信号的梅尔频谱输入对数函数中进行计算,以得到所述多帧信号中每一帧信号对应的基本信号;
所述导出子模块,用于:
沿每一所述基本信号的频率方向分别进行中值滤波,以获取每一所述基本信号对应的中值滤波结果;
将每一所述基本信号减去与其对应的所述中值滤波结果,以得到每一所述基本信号对应的中间值;
根据所述中间值,求取每一所述基本信号对应的导出信号。
15.如权利要求9所述的音频节拍检测装置,其特征在于,所述参考模型包括基本处理单元与分类器,所述训练模块,包括:
第一处理子模块,用于将所述训练样本的音频特征经过多个重叠的基本处理单元处理后,得到输出特征,所述输出特征为与所述训练样本的音频特征等长的时间序列数据;
第二处理子模块,用于将所述输出特征输入所述分类器进行处理,以使得所述输出特征沿时间序列将每一帧的输出特征映射到每个时间点上,以得到所述每个时间点对应的预测结果以及所述预测结果对应的预测概率;
计算子模块,用于根据所述预测结果与所述预测概率,计算所述参数模型的损失函数;
训练子模块,用于对所述损失函数进行训练,以得到训练后的所述参考模型的优化参数。
16.如权利要求15所述的音频节拍检测装置,其特征在于,所述训练模块,还用于:
按照预设次数对所述损失函数进行训练,并获取所述预设次数内所述参考模型的准确率变化趋势;
若所述准确率变化趋势为非上升趋势,则按照预设比例降低所述参考模型的学习率,并继续对所述损失函数进行训练。
17.一种存储介质,其特征在于,所述存储介质存储有多条指令,所述指令适于处理器进行加载,以执行权利要求1至8任一项所述的音频节拍检测方法中的步骤。
CN201811278954.3A 2018-10-30 2018-10-30 音频节拍检测方法、装置及存储介质 Active CN109256147B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811278954.3A CN109256147B (zh) 2018-10-30 2018-10-30 音频节拍检测方法、装置及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811278954.3A CN109256147B (zh) 2018-10-30 2018-10-30 音频节拍检测方法、装置及存储介质

Publications (2)

Publication Number Publication Date
CN109256147A true CN109256147A (zh) 2019-01-22
CN109256147B CN109256147B (zh) 2022-06-10

Family

ID=65044050

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811278954.3A Active CN109256147B (zh) 2018-10-30 2018-10-30 音频节拍检测方法、装置及存储介质

Country Status (1)

Country Link
CN (1) CN109256147B (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110111813A (zh) * 2019-04-29 2019-08-09 北京小唱科技有限公司 节奏检测的方法及装置
CN110534078A (zh) * 2019-07-30 2019-12-03 黑盒子科技(北京)有限公司 一种基于音频特征的细粒度音乐节奏提取***及方法
CN111159463A (zh) * 2019-11-26 2020-05-15 黑盒子科技(北京)有限公司 一种音乐情感识别方法及***
CN111508526A (zh) * 2020-04-10 2020-08-07 腾讯音乐娱乐科技(深圳)有限公司 一种音频节拍信息的检测方法、装置及存储介质
CN111785237A (zh) * 2020-06-09 2020-10-16 Oppo广东移动通信有限公司 音频节奏确定方法、装置、存储介质和电子设备
CN112489676A (zh) * 2020-12-15 2021-03-12 腾讯音乐娱乐科技(深圳)有限公司 模型训练方法、装置、设备及存储介质
CN112908288A (zh) * 2021-01-25 2021-06-04 北京达佳互联信息技术有限公司 节拍检测方法、装置、电子设备和存储介质
CN113223487A (zh) * 2020-02-05 2021-08-06 字节跳动有限公司 一种信息识别方法及装置、电子设备和存储介质

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100282045A1 (en) * 2009-05-06 2010-11-11 Ching-Wei Chen Apparatus and method for determining a prominent tempo of an audio work
US20160247328A1 (en) * 2015-02-24 2016-08-25 Zepp Labs, Inc. Detect sports video highlights based on voice recognition
CN107395352A (zh) * 2016-05-16 2017-11-24 腾讯科技(深圳)有限公司 基于声纹的身份识别方法及装置
CN107610707A (zh) * 2016-12-15 2018-01-19 平安科技(深圳)有限公司 一种声纹识别方法及装置
CN108281146A (zh) * 2017-12-29 2018-07-13 青岛真时科技有限公司 一种短语音说话人识别方法和装置
CN108305615A (zh) * 2017-10-23 2018-07-20 腾讯科技(深圳)有限公司 一种对象识别方法及其设备、存储介质、终端
CN108470571A (zh) * 2018-03-08 2018-08-31 腾讯音乐娱乐科技(深圳)有限公司 一种音频检测方法、装置及存储介质
CN108549675A (zh) * 2018-03-31 2018-09-18 陈振奎 一种基于大数据及神经网络的钢琴教学方法

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100282045A1 (en) * 2009-05-06 2010-11-11 Ching-Wei Chen Apparatus and method for determining a prominent tempo of an audio work
US20160247328A1 (en) * 2015-02-24 2016-08-25 Zepp Labs, Inc. Detect sports video highlights based on voice recognition
CN107395352A (zh) * 2016-05-16 2017-11-24 腾讯科技(深圳)有限公司 基于声纹的身份识别方法及装置
CN107610707A (zh) * 2016-12-15 2018-01-19 平安科技(深圳)有限公司 一种声纹识别方法及装置
CN108305615A (zh) * 2017-10-23 2018-07-20 腾讯科技(深圳)有限公司 一种对象识别方法及其设备、存储介质、终端
CN108281146A (zh) * 2017-12-29 2018-07-13 青岛真时科技有限公司 一种短语音说话人识别方法和装置
CN108470571A (zh) * 2018-03-08 2018-08-31 腾讯音乐娱乐科技(深圳)有限公司 一种音频检测方法、装置及存储介质
CN108549675A (zh) * 2018-03-31 2018-09-18 陈振奎 一种基于大数据及神经网络的钢琴教学方法

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110111813A (zh) * 2019-04-29 2019-08-09 北京小唱科技有限公司 节奏检测的方法及装置
CN110534078A (zh) * 2019-07-30 2019-12-03 黑盒子科技(北京)有限公司 一种基于音频特征的细粒度音乐节奏提取***及方法
CN111159463A (zh) * 2019-11-26 2020-05-15 黑盒子科技(北京)有限公司 一种音乐情感识别方法及***
CN113223487A (zh) * 2020-02-05 2021-08-06 字节跳动有限公司 一种信息识别方法及装置、电子设备和存储介质
CN113223487B (zh) * 2020-02-05 2023-10-17 字节跳动有限公司 一种信息识别方法及装置、电子设备和存储介质
CN111508526A (zh) * 2020-04-10 2020-08-07 腾讯音乐娱乐科技(深圳)有限公司 一种音频节拍信息的检测方法、装置及存储介质
CN111508526B (zh) * 2020-04-10 2022-07-01 腾讯音乐娱乐科技(深圳)有限公司 一种音频节拍信息的检测方法、装置及存储介质
CN111785237A (zh) * 2020-06-09 2020-10-16 Oppo广东移动通信有限公司 音频节奏确定方法、装置、存储介质和电子设备
CN111785237B (zh) * 2020-06-09 2024-04-19 Oppo广东移动通信有限公司 音频节奏确定方法、装置、存储介质和电子设备
CN112489676A (zh) * 2020-12-15 2021-03-12 腾讯音乐娱乐科技(深圳)有限公司 模型训练方法、装置、设备及存储介质
CN112908288A (zh) * 2021-01-25 2021-06-04 北京达佳互联信息技术有限公司 节拍检测方法、装置、电子设备和存储介质
CN112908288B (zh) * 2021-01-25 2023-11-21 北京达佳互联信息技术有限公司 节拍检测方法、装置、电子设备和存储介质

Also Published As

Publication number Publication date
CN109256147B (zh) 2022-06-10

Similar Documents

Publication Publication Date Title
CN109256147A (zh) 音频节拍检测方法、装置及存储介质
CN109166593A (zh) 音频数据处理方法、装置及存储介质
CN104239535B (zh) 一种为文字配图的方法、服务器、终端及***
CN104217717B (zh) 构建语言模型的方法及装置
CN110009052A (zh) 一种图像识别的方法、图像识别模型训练的方法及装置
CN108984731A (zh) 歌单推荐方法、装置及存储介质
CN103578474B (zh) 一种语音控制方法、装置和设备
CN106710596A (zh) 回答语句确定方法及装置
CN110321965A (zh) 物体重识别模型的训练方法、物体重识别的方法及装置
CN107863095A (zh) 音频信号处理方法、装置和存储介质
CN107943860A (zh) 模型的训练方法、文本意图的识别方法及装置
CN110288978A (zh) 一种语音识别模型训练方法及装置
CN110704661B (zh) 一种图像分类方法和装置
CN109961296A (zh) 商户类型识别方法及装置
CN110490213A (zh) 图像识别方法、装置及存储介质
CN107301213A (zh) 智能问答方法及装置
CN103916436B (zh) 信息推送方法、装置、终端及服务器
CN108875781A (zh) 一种标签分类方法、装置、电子设备及存储介质
CN106055961B (zh) 一种指纹解锁方法及移动终端
CN108280458A (zh) 群体关系类型识别方法及装置
CN110334241A (zh) 客服录音的质检方法、装置、设备及计算机可读存储介质
CN107376353A (zh) 关卡配置方法及装置
CN108021572A (zh) 回复信息推荐方法和装置
CN109346061A (zh) 音频检测方法、装置及存储介质
CN106356052A (zh) 语音合成方法及装置

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