1.本公开一般涉及数据处理技术领域,具体涉及音频数据处理领域,尤其涉及一种音频节奏检测方法、装置、设备和介质。
背景技术:2.随着音频剪辑和视频剪辑需求的增加,人们对纯音频剪辑以及视频中的音频剪辑的要求日益增高。相关技术中,通常需要专业人员反复听取待剪辑的音频,然后再根据自己的判断进行节奏划分,需要耗费大量的人力并且准确度也因人而异很难统一。
技术实现要素:3.鉴于现有技术中的上述缺陷或不足,期望提供一种音频节奏检测方法、装置、设备和介质,实现自动化的、高效的、准确的音乐节奏检测。
4.第一方面,本技术实施例提供了一种音频节奏检测方法,方法包括:
5.获取待检测的音频信号;
6.基于所述音频信号的音频特性,对所述音频信号进行特征处理,得到至少一个音频段,其中,相邻两个所述音频段的节奏不同;
7.获取每个所述音频段的节奏信息,基于所述节奏信息确定每个所述音频段的节奏类型。
8.第二方面,本技术实施例提供了一种音频节奏检测装置,装置包括:
9.获取模块,用于获取待检测的音频信号;
10.分段模块,用于基于所述音频信号的音频特性,对所述音频信号进行特征处理,得到至少一个音频段,相邻两个所述音频段的节奏不同;
11.确定模块,用于获取每个所述音频段的节奏信息,基于所述节奏信息确定所述音频段的节奏类型。
12.第三方面,本技术实施例提供了一种电子设备,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,该处理器执行该程序时实现如本技术实施例描述的方法。
13.第四方面,本技术实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本技术实施例描述的方法。
14.本技术在获取到待检测的音频信号后,基于音频信号的音频特性对音频信号进行特征处理,得到至少一个音频段,然后根据每个音频段的节奏信息确定每个音频段的节奏类型。从而实现自动化的、高效的、准确的音乐节奏检测,无需依靠人力进行节奏的标注,大幅提高音乐节奏检测的成本,提高音乐剪辑的效率,提高音乐剪辑的准确性。
15.本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
16.通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本技术的其它特征、目的和优点将会变得更明显:
17.图1是根据本技术实施例示出的一种音频节奏检测方法的实施环境架构图;
18.图2为本技术实施例提出的一种音频节奏检测方法的流程图;
19.图3为本技术实施例提出的另一种音频节奏检测方法的流程图;
20.图4为本技术实施例提出的一种对音频信号进行stft特征提取的原理图;
21.图5为本技术实施例的音频stft能量谱的示意图;
22.图6为本技术实施例提出的又一种音频节奏检测方法的流程图;
23.图7为本技术实施例提出的一种音频节奏检测的原理示意图;
24.图8为本技术实施例提出的段间检测的音频节奏确定的原理图;
25.图9为本技术实施例提出的段内检测的音频节奏确定的原理图;
26.图10为本技术实施例提出的再一种音频节奏检测方法的流程图;
27.图11为本技术实施例提出的一种段间音频节奏检测方法的原理示意图;
28.图12为本技术实施例提出的一种段内音频节奏检测方法的原理示意图;
29.图13为本技术实施例提出的一种音频节奏检测装置的结构示意图;
30.图14示出了适于用来实现本技术实施例的电子设备或服务器的计算机系统的结构示意图。
具体实施方式
31.下面结合附图和实施例对本技术作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与发明相关的部分。
32.需要说明的是,在不冲突的情况下,本技术中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本技术。
33.人工智能(artificial intelligence,ai)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
34.人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
35.计算机视觉技术(computer vision,cv)计算机视觉是一门研究如何使机器“看”的科学,更进一步的说,就是指用摄影机和电脑代替人眼对目标进行识别、跟踪和测量等机器视觉,并进一步做图形处理,使电脑处理成为更适合人眼观察或传送给仪器检测的图像。作为一个科学学科,计算机视觉研究相关的理论和技术,试图建立能够从图像或者多维数据中获取信息的人工智能系统。计算机视觉技术通常包括图像处理、图像识别、图像语义理
解、图像检索、ocr、视频处理、视频语义理解、视频内容/行为识别、三维物体重建、3d技术、虚拟现实、增强现实、同步定位与地图构建等技术,还包括常见的人脸识别、指纹识别等生物特征识别技术。
36.语音技术(speech technology)的关键技术有自动语音识别技术(asr)和语音合成技术(tts)以及声纹识别技术。让计算机能听、能看、能说、能感觉,是未来人机交互的发展方向,其中语音成为未来最被看好的人机交互方式之一。
37.自然语言处理(nature language processing,nlp)是计算机科学领域与人工智能领域中的一个重要方向。它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法。自然语言处理是一门融语言学、计算机科学、数学于一体的科学。因此,这一领域的研究将涉及自然语言,即人们日常使用的语言,所以它与语言学的研究有着密切的联系。自然语言处理技术通常包括文本处理、语义理解、机器翻译、机器人问答、知识图谱等技术。
38.机器学习(machine learning,ml)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、式教学习等技术。
39.自动驾驶技术通常包括高精地图、环境感知、行为决策、路径规划、运动控制等技术,自定驾驶技术有着广泛的应用前景,
40.随着人工智能技术研究和进步,人工智能技术在多个领域展开研究和应用,例如常见的智能家居、智能穿戴设备、虚拟助理、智能音箱、智能营销、无人驾驶、自动驾驶、无人机、机器人、智能医疗、智能客服等,相信随着技术的发展,人工智能技术将在更多的领域得到应用,并发挥越来越重要的价值。
41.本技术实施例提供的方案涉及人工智能的机器学习等技术,具体通过如下实施例进行说明。
42.为了更清楚的描述本技术,以下为对相关技术术语的解释:
43.短时傅里叶变换(short
‑
time fourier transform,stft),和傅里叶变换相关的一种数学变换,用以确定时变信号其局部区域正弦波的频率与相位,常作为音频基础特征来使用。
44.过零率(zero crossing rate,zcr),指在音频信号的每帧中,音频信号通过零点(其采样幅度从正变为负或者从负变为正)的次数。
45.色度特征(chroma),音色特征,也称之为色度向量。色度向量是一个含有12个元素的向量,这些元素分别代表一帧之内12个音级中的能量,不同八度的同一音级能量进行累加。
46.mel频谱图(mel
‑
spectrogram),基于stft频谱图和mel频率进行变换得来的一种音频特征,其频谱图更能够代表人耳听觉特性的表现。
47.k
‑
means聚类(k
‑
means clustering algorithm,k均值聚类算法)是一种迭代求解的聚类分析算法,其步骤是,预将数据分为k组,则随机选取k个对象作为初始的聚类中心,
然后计算每个对象与各个初始聚类中心之间的距离,把每个对象分配给距离它最近的聚类中心。
48.随着互联网的高速发展,音视频的剪辑需求越来越大,且剪辑要求也越来越高。相关技术中,通常根据专业人员的人耳听觉感应来进行手动标注。具体地,通过雇佣大量的专业标注人员,让标注人员以段级别粒度去听取音乐的节奏变化,然后根据其人耳听觉反映,来手动标注节奏变化分段的分界线并通过人耳听觉来判断每段的节奏快慢。
49.但是,该方式需要根据人耳听觉特性来进行手动标注,使得标注效率极低,一首歌通常时长为3
‑
5分钟,而标注人员需要至少完整的听一遍,才能够做出标注,在要求较高标注精度时,标注人员往往需要听更多遍歌曲才能确定节奏分界线。
50.而且,不同的标注人员对同一首歌的听觉反应是不同的,所以在标注过程中就会出现不同人员对于同一首歌的音频节奏检测结果不同的请求,严重影响标注的准确性。
51.基于此,本技术提出一种音频节奏检测方法、装置、设备和介质。
52.图1是根据本技术实施例示出的一种音频节奏检测方法的实施环境架构图。如图1所示,该实施环境架构包括:终端100和服务器200。
53.其中,音频节奏检测装置即可以是终端100,也可以是服务器200。终端100或服务器200获取待标注的音频数据或包含有待标注的音频数据的视频数据。
54.其中,音频节奏检测的过程既可以在终端100执行,也可以在服务器200执行。终端100获取待检测的视频或音频,进一步的,当音频节奏检测的过程在终端100执行时,终端100在获取到待检测的视频或音频后直接对待检测的视频或音频进行节奏检测,然后得到节奏检测结果,当音频节奏检测的过程在服务器200执行时,终端100将待检测的视频或音频发送给服务器200,服务器200接收待检测的视频或音频并对待检测的视频或音频进行节奏检测,然后得到节奏检测结果。
55.可选地,上述中的待检测的视频或音频可以为纯音频,也可为含有音频的视频。
56.另外,终端100可显示有应用界面,通过该界面可获取用户上传的待检测的视频或音频,或将上传的待检测的视频或音频发送给服务器200。
57.终端100的类型包括但不限于智能手机、平板电脑、电视机、笔记本电脑、台式电脑等,本技术实施例对此不进行具体限定。
58.其中,当音频节奏检测的过程在服务器200执行时,服务器200将节奏检测结果发送终端100,由终端100在应用界面上显示该节奏检测结果。进一步地,服务器200可以是一台服务器,也可以是由多台服务器组成的服务器集群,或者是一个云计算服务中心。
59.终端100与服务器200通过有线或无线网络建立通信连接。
60.图2为本技术实施例提出的一种音频节奏检测方法的流程图。其中,需要说明的是,本实施例的音频节奏检测方法的执行主体为音频节奏检测装置,音频节奏检测装置可以由软件和/或硬件的方式实现,该实施例中的音频节奏检测装置可以配置在电子设备中,也可以配置在用于对电子设备进行控制的服务器中,该服务器与电子设备进行通信进而对其进行控制。
61.其中,本实施例中的电子设备可以包括但不限于个人计算机、平台电脑、智能手机、智能音箱等设备,该实施例对电子设备不作具体限定。
62.如图2所示,本技术实施例提出的音频节奏检测方法,包括以下步骤:
63.步骤101,获取待检测的音频信号。
64.其中,音频信号时带有语音、音乐和音效的有规律的声波的频率、幅度变化信息的载体。根据声波的特征,可把音频信息分类为规则音频和不规则声音。其中,规则音频是一种连续变化的模拟信号,可用一条连续的曲线来表示,称为声波。声音的三个要素是音调、音强和音色。声波或正弦波有三个重要参数:频率、幅度和相位。其中,音频信号为音频的时域信号。
65.在本技术实施例中,音频信号可为单独的音乐作品,也可为视频中配置的背景音乐。进一步的,音频信号可根据不同的检测需求选取不同的长度,例如,在进行段间节奏检测时,音频信号可为整首歌曲对应的长度,或者整个视频对应的长度;在进行段内节奏检测时,音频信号可以是前述整首歌曲的某段片段对应的长度,又或者是前述整个视频截取段对应的长度,再或者是独立短视频的长度等,具体音频信号的长度,本技术在此不作限定。
66.步骤102,基于音频信号的音频特性,对音频信号进行特征处理,得到至少一个音频段,其中,相邻两个音频段的节奏不同。
67.其中,音频特性为音频自身的特点规则,例如音频具有响度、频率、幅度等。
68.需要说明的是,本技术根据音频特性对音频信号进行特征处理,然后根据音频信号中音频节奏的快慢变化,将音频信号划分成多个音频段,发生节奏变化的位置可作为音频段的分解线,经过音频段划分后,音频信号可在每一次发生节奏变化时被截断,因此,相邻的两个音频段的节奏不同。
69.步骤103,获取每个音频段的节奏信息,基于节奏信息确定音频段的节奏类型。
70.也就是说,本技术在对音频信号进行分段后,还进一步获取音频段内的节奏信息,并根据音频段内的节奏信息来确定该音频段的节奏类型。其中,节奏类型包括舒缓型和紧凑型。
71.由此,本技术在获取到待检测的音频信号后,基于音频信号的音频特性对音频信号进行特征处理,得到至少一个音频段,然后根据每个音频段的节奏信息确定每个音频段的节奏类型。从而实现自动化的、高效的、准确的音乐节奏检测,无需依靠人力进行节奏的标注,大幅提高音乐节奏检测的成本,提高音乐剪辑的效率,提高音乐剪辑的准确性。
72.在一个或多个实施例中,如图3所示,步骤102,基于音频信号的音频特性,对音频信号进行特征处理,得到至少一个音频段,包括:
73.步骤1021,基于音频特性对音频信号进行特征提取,得到音频特征数据。
74.其中,音频特性包括stft特性、mel特性和过零率。
75.在一个或多个实施例中,基于音频特性对音频信号进行特征提取,得到音频特征数据,包括:分别基于stft特性、mel特性和过零率对音频信号进行特征提取,得到音频信号对应的stft频谱、mel频谱和过零信息;对stft频谱进行特征拆分,得到stft能量谱、stft相位谱和音色谱,分别对stft能量谱、stft相位谱和mel频谱进行频率筛选,得到stft高频能量谱、stft高频相位谱和mel高频谱。
76.其中,如图4所示,在根据音频特征的stft特性进行特征提取和拆分时,可先将音频信号进行分帧处理,得到与时序信息对应的音频帧信息,然后对音频帧信息进行加窗拆分和傅里叶变换,从而得到stft幅度谱和stft相位谱。进一步地,基于stft幅度谱的能量特性还可以进一步拆分出stft能量谱和音色谱。
77.进一步地,通过观察stft能量谱和mel频谱还发现,不同节奏段的特征在低频表现的差异要远小于在高频表现出的差异,如图5所示。因此,本技术还进一步对得到的能量特征(stft能量谱、stft能量谱和mel频谱)进行高频滤波,即,将低频带中不具有分辨性的特征频带给滤掉,只保留高频带的特征,由此,更能凸显不同节奏段之间的特征差异。
78.可选的,本技术针对每种需要高频滤波的特征,选取其特征阶数的三分之一的高阶通道作为滤波后的高频特征。其中,stft能量谱高频滤波后得到stft高频能量谱,stft幅度谱高频滤波后得到stft高频幅度谱,mel频谱高频滤波后得到mel高频谱。其中,作为一种可行实施例,还可使用加窗滤波器来进行高频滤波,或者其他能够实现本技术的高频滤波功能的方式,本技术在此不作限定。
79.由此,本技术特征提取的都是帧级别的音频特征,而音频的帧级别特征粒度都是毫秒级别,所以能够在后续的音频分段时实现毫秒级的音频分段,大大提高了音频分段的精度。
80.步骤1022,对音频特征数据进行特征拼接处理,得到目标特征。
81.在本技术实施例中,音频节奏检测包括段间检测和段内检测,其中,段间检测为将整首歌曲或者整个视频按照节奏划分为多个音频段的节奏检测过程,段内检测为针对已经划分出的每个音频段进行段内的节奏检测过程。
82.在进行段间检测时,对音频特征数据进行特征拼接处理,得到目标特征,包括:从过零信息、音色谱、stft相位谱、stft高频能量谱、stft高频幅度谱和高频谱中,选取三组特征数据分别进行组内拼接,将三组拼接后的特征均作为目标特征,其中,至少两组特征数据各包含至少两种特征数据。
83.也就是说,在进行段间节奏检测时,可从已经提出的多个音频特征数据中,抽取三组特征数据分别进行组内拼接,得到拼接后的特征数据,以为在后的聚类操作提供更丰富的频域差异信息。可选的,可通过随机抽取的方式来获取三组特征数据。
84.举例来说,可随机选取stft高频能量谱和过零信息作为第一个特征数据组进行组内拼接,并随机选取stft高频幅度谱和音色谱作为第二个特征数据组进行组内拼接,然后随机选取mel高频谱作为第三个特征数据组进行组内拼接,其中,第三个特征数据组内只有一个特征数据可与零向量进行拼接或者不进行拼接操作。或者,可随机抽取mel高频谱和过零信息作为第一个特征数据组进行组内拼接,并随机选取stft高频幅度谱和音色谱作为第二个特征数据进行组内拼接,然后选取stft高频能量谱和stft相位谱作为第三个特征数据组进行组内拼接。
85.应当理解的是,在本技术实施例中,在随机选取特征数据进行拼接时的目的是为了增加频域差异信息,因此,三组特征数据被选取的特征不能重复,且在同一组内进行拼接的两个特征不能相同。
86.在进行段内检测时,音频特征数据进行特征拼接处理,得到目标特征,包括:从过零信息、音色谱、stft相位谱、stft高频能量谱、stft高频幅度谱和mel高频谱中,选取两组特征数据分别进行组内拼接,将两组拼接后的特征均作为目标特征,其中,每组特征数据包含至少两种特征数据。
87.举例来说,可随机选取stft高频能量谱和过零信息作为第一个特征数据组进行组内拼接,并随机选取stft高频幅度谱和音色谱作为第二个特征数据组进行组内拼接。或者,
可随机抽取mel高频谱和过零信息作为第一个特征数据组进行组内拼接,并随机选取stft高频幅度谱和音色谱作为第二个特征数据进行组内拼接。
88.应当理解的是,在本技术实施例中,在随机选取特征数据进行拼接时的目的是为了增加频域差异信息,因此,两组特征数据被选取的特征不能重复,且在同一组内进行拼接的两个特征不能相同。
89.步骤1023,基于聚类算法对目标特征进行分类,得到音频信号对应的聚类标签序列。
90.可选的,聚类算法可为二聚类算法,例如,k
‑
means算法。其中,还可选择其他能够实现二聚类的机器学习聚类算法,来提升聚类的精度,减少生成聚类标签序列的时间,本技术在此不作具体限定。
91.在一个或多个实施例中,针对每个目标特征,分别利用二聚类算法进行分类,得到每个目标特征对应的特征标签序列,将得到的特征标签序列进行组合,得到过渡标签序列,对过渡标签序列进行二值化处理,得到聚类标签序列。
92.其中,通过二聚类算法得到的特征标签序列为0
‑
1序列,0表示该帧音频信号的节奏小于预设阈值,即,慢节奏,1表示该帧音频信号的节奏大于或等于预设阈值,即,快节奏。
93.具体而言,在段间检测时,通过三组特征数据得到了三个目标特征,则分别对三个目标特征分别进行二聚类算法进行分类,得到三个0
‑
1序列,然后将三个0
‑
1序列进行组合,得到过渡标签序列,过渡标签序列为三个0
‑
1序列对应帧位置的标签值相加得到的0
‑
3序列,然后对过渡标签序列进行二值化处理,即,将标签值为0的帧位置对应的标签值置为0,并将标签值为1
‑
3的帧位置对应的标签值置为1,由此,得到最终的由二值表达的聚类标签序列。
94.由此,本技术通过使用k
‑
means算法对多个帧级别的音频特征进行二聚类来实现节奏检测,能够有效将音频段划分的精确度提升至真级别粒度,比人工标注的节奏分界线更为精确。
95.步骤1024,基于聚类标签序列的连续情况,得到至少一个音频段。
96.其中,连续的同类别的标签代表一个音频段,例如,当连续标签为000000011100时,“0000000”则为第一个音频段,“111”则为第二个音频段,“00”为第三个音频段。
97.但是,由于音乐作品本身节奏的特殊性,以及聚类时的聚类偏差,容易产生标签错误,例如000000100000,此时,序列中的“1”显然存在异常,需要剔除以使整个音频段连续。
98.在一个或多个实施例中,对聚类标签序列进行平滑处理,得到用于描述音频信号的二值类别曲线;将二值类别曲线中任一类别标签连续对应的音频信号作为一个音频段。
99.其中,对聚类标签序列进行平滑处理,得到用于描述音频信号的二值类别曲线,包括:统计聚类标签中每个连续标签序列的长度,根据连续标签序列的长度,确定用于剔除异常值的滑窗长度和异常阈值,利用滑窗在聚类标签序列上滑动,并根据异常阈值对聚类标签序列上的异常标签值进行修正,得到二值类别曲线。其中,异常阈值包括长度比值的第一异常阈值和滑窗内标签值与长度比的第二异常阈值。
100.举例来说,000000011110000111111中,标签类别为“0”的两段标签的长度分别为7和4,而标签类别为“1”的两段标签的长度分别为4和6,然后计算倍数分别为1.75和1.5。通过对整段音频信号进行倍数计算,优选第一异常阈值为3,即,任意两段标签序列的长度倍
数大于或等于3时,则确定这两段标签序列中存在异常,将滑窗在聚类标签序列上滑动,并计算滑窗中标签值的和与长度关系,如果标签值的和小于1/10,即,该滑窗中标签值为1的帧数小于长度的1/10,此时,将该滑窗对应的标签值置为0,如果标签值的和大于9/10,即,该滑窗中标签值为1的帧数大于长度的9/10,此时,将该滑窗对应的标签值置为1,其他情况则保持滑窗对应的标签值不变,进而得到二值类别曲线。其中,第二异常阈值包括下限值1/10和上限值9/10。
101.由此,本技术通过多重二聚类标签的合并和平滑处理,提供了一定的容错率,提高了音频分段检测的泛化能力。
102.进一步地,如图6和图7所示,步骤103,获取每个音频的节奏信息,基于节奏信息确定音频段的节奏类型,包括:
103.步骤1031,获取每个音频段内的重节奏点的数量。
104.其中,重节奏点为音频信号的波峰,也是一定区域内能量最高的点位。
105.步骤1032,根据每个音频段的时间长度和重节奏点的数量,确定音频段对应的节奏密度。
106.其中,节奏密度可为重节奏点的数量与音频段的时间长度的比值。
107.步骤1033,根据音频段对应的节奏密度,确定音频段的节奏类型。
108.可选的,可预先设定节奏密度阈值,如果音频段对应的节奏密度小于节奏密度阈值,则确定该音频段为舒缓型,如果音频段对应的节奏密度大于或等于节奏密度阈值,则确定该音频段为紧凑型。
109.由于重节奏点为音频特性的节奏信息,因此,本技术采用重节奏点来确定音频的节奏密度,能够更好的表达音频实际的节奏信息类型,提高节奏类型判断的准确度。
110.在进行段间检测时,还包括:针对每个音频段,将音频段对应的节奏密度与前一音频段对应的节奏密度进行比较,根据比较结果,确定音频段的节奏变化类型。
111.也就是说,如图8所示,本技术在划分出音频段之后,还进一步对前后两个音频段的节奏密度进行比较,来确定后一个音频段的节奏相对于前一个音频段的节奏的变化趋势,例如变慢或者变快,并用slower和faster来表示。
112.在进行段内检测时,还包括:分别获取相邻两个音频段的节奏密度,并计算两个节奏密度的差的绝对值,根据差的绝对值与预设趋势阈值,确定两个音频段的节奏变化趋势。
113.也就是说,如图9所示,在进行段内检测时,对段内的音频信号再次划分音频段,形成音频子段,然后计算两个相邻的音频子段的节奏密度的差的绝对值,即,计算两个相邻的音频子段的节奏密度的变化大小,如果差的绝对值小于预设阈值,则确定两个音频子段的节奏无变化,标记为norm,如果差的绝对值大于或等于预设阈值,则进一步对前后两个音频子段的节奏密度进行比较,来确定后一个音频子段的节奏相对于前一个音频子段的节奏的变化趋势,例如变慢或者变快。
114.由此,本技术通过设立两级节奏检测机制,不仅能够检测出音频重大段落之间的节奏变换情况,还能够更细粒度的检测出每一段重段内的节奏变换情况,两级节奏检测结果能够为音频剪辑,尤其是视频剪辑中的音频剪辑提供更多且更细粒度的音频节奏变换信息,为视频剪辑中的智能配乐提供更多的参考信息。
115.下面结合图10至图12来描述如下实施例。
116.步骤201,获取完整的待检测的音频信号。
117.步骤202,基于音频特性对音频信号进行第一次的特征提取,得到音频特征数据。
118.其中,音频特性包括stft特性、mel特性和过零率,如图11所示,可先基于音频特性提取到音频特征数据:过零信息、stft频谱图和mel频谱图,然后进一步对stft频谱图进行拆分得到stft相位谱、stft幅度谱、stft能量谱和音色谱,利用高频滤波器对stft幅度谱、stft能量谱和mel频谱图进行滤波,最终得到stft高频能量谱、stft高频幅度谱和mel高频谱。
119.步骤203,从音频特征数据中随机抽取三组特征并作组内拼接,其中,两组特征包含两种音频特征数据,一组特征包含一种音频特征数据。
120.举例来说,如图11所示,抽取stft高频能量谱和过零信息作为第一组音频特征数据并进行组内拼接,抽取stft高频幅度谱和音色谱作为第二组音频特征数据并进行组内拼接,并抽取mel高频谱作为第三组音频特征信息。
121.步骤204,将拼接后的三组特征数据分别进行聚类,得到每组特征数据对应的特征标签序列。
122.步骤205,三组特征标签序列按照对应位置进行标签值相加,得到过渡标签序列。
123.步骤206,对过渡标签序列进行二值化处理,得到聚类标签序列。
124.步骤207,统计聚类标签中每个连续标签序列的长度。
125.步骤208,根据连续标签序列的长度,确定用于剔除异常值的滑窗长度和异常阈值。
126.其中,异常阈值包括用于判断异常长度比值的第一异常阈值和确定滑窗内异常标签值得第二异常阈值,其中,第二异常阈值包括异常下限值和异常上限值。
127.步骤209,利用滑窗在聚类标签序列上滑动,根据滑窗内标签的累加值进行标签修正。
128.如果聚类标签的累加值小于第二异常阈值的下限值——滑窗长度的1/10,则将当前窗口内的全部标签置为0,如果聚类标签的累加值大于第二异常阈值的上限值——滑窗长度的9/10,则将当前窗口的全部标签置为1。
129.步骤210,将连续相同的标签值对应的音频信号,作为一个音频段。
130.步骤211,获取每个音频段内的重节奏点的数量。
131.步骤212,根据每个音频段的时间长度和重节奏点的数量,确定音频段对应的节奏密度。
132.步骤213,根据音频段对应的节奏密度,确定音频段的节奏类型。
133.如果节奏密度小于预设阈值,则确定音频段为舒缓型,如果节奏密度大于或等于预设阈值,则确定音频段为紧凑型。
134.步骤214,针对任一音频段,基于音频特性对音频信号进行第二次的特征提取,得到音频特征数据。
135.步骤215,从音频特征数据中随机抽取两组特征并作组内拼接,其中,每组特征包含两种音频特征数据。
136.举例来说,如图12所示,抽取mel高频谱和过零信息作为第一组音频特征数据并进行组内拼接,抽取stft相位谱和音色谱作为第二组音频特征数据并进行组内拼接。
137.步骤216,将拼接后的两组特征数据分别进行聚类,得到每组特征数据对应的特征标签序列。
138.步骤217,两组特征标签序列按照对应位置进行标签值相加,得到音频段对应的过渡标签序列。
139.步骤218,对音频段对应的过渡标签序列进行二值化处理,得到音频段对应的聚类标签序列。
140.步骤219,统计音频段对应的聚类标签中每个连续标签序列的长度。
141.步骤220,根据连续标签序列的长度,确定用于剔除异常值的滑窗长度和异常阈值。
142.其中,异常阈值包括用于判断异常长度比值的第一异常阈值和确定滑窗内异常标签值得第二异常阈值,其中,第二异常阈值包括异常下限值和异常上限值。
143.步骤221,利用滑窗在聚类标签序列上滑动,根据滑窗内标签的累加值进行标签修正。
144.如果聚类标签的累加值小于第二异常阈值的下限值——滑窗长度的1/10,则将当前窗口内的全部标签置为0,如果聚类标签的累加值大于第二异常阈值的上限值——滑窗长度的9/10,则将当前窗口的全部标签置为1。
145.步骤222,将连续相同的标签值对应的音频信号,作为一个音频子段。
146.步骤223,获取每个音频子段内的重节奏点的数量。
147.步骤224,根据每个音频子段的时间长度和重节奏点的数量,确定音频子段对应的节奏密度。
148.步骤225,分别获取相邻两个音频子段的节奏密度,并计算两个节奏密度的差的绝对值。
149.步骤226,根据差的绝对值与预设趋势阈值,确定两个音频子段的节奏变化趋势。
150.如果差的绝对值小于预设趋势阈值,则确定两个音频子段没有节奏变化,如果差的绝对值大于预设趋势阈值,则确定两个音频子段之间有节奏变化,进一步判断后一个音频子段与前一个音频子段的节奏密度的大小,如果后一个音频子段的节奏密度小于前一个音频子段的节奏密度,则节奏变慢,如果后一个音频子段的节奏密度大于前一个音频子段的节奏密度,则节奏变快。
151.经过上述方案对某一段音频进行检测得到如下标签序列:
152.段间节奏变换:[
‘
slower’,
‘
faster’,
‘
slower’,
‘
faster’,
‘
slower’,
‘
faster’,
‘
slower’,]
[0153]
片段时间区间:[[0.0,29.174648526077096],[29.174648526077096,76.87804988662131],[7687804988662131,89.8109977324263],[89.8109977324263,98.46009070294785],[98.46009070294785,104.17197278911564],[104.17197278911564,151.87537414965988],[151.87537414965988,163.12496598639456]]
[0154]
分段的节奏密度:[1.645264036586295,5.9953796132565165,1.0825064917076215,3.0060955626925314,1.5756627787879056,5.827676687011578,0.266676341998803]
[0155]
段内节奏变换:[[
‘
fast’,
‘
slow’,
‘
fast’],[
‘
slow’,
‘
fast’,
‘
slow’],[
‘
norm’],[
‘
norm’],[
‘
norm’],[
‘
slow’,
‘
fast’,
‘
slow’],[
‘
fast’,
‘
slow’]]
[0156]
音频子段时间区间:[[[0.0,2.6585714285714284],[2.6585714285714284,14.448004535147392],[14.448004535147392,29.168843537414965]],[[29.174648526077096,69.36668934240363],[69.36668934240363,76.48331065759638],[76.48331065759638,76.87224489795918]],[76.87804988662131,89.80519274376417],[89.8109977324263,98.45428571428572],[98.46009070294785,104.16616780045351],[[104.17197278911564,144.3872335600907],[144.3872335600907,151.41097505668935],[151.41097505668935,151.86956916099774]],[151.87537414965988,153.45426303854876],[153.45426303854876,163.1191836734694]]]
[0157]
音频子段的节奏密度:[[0.7522837184309512,1.526790969275688,1.9020655001856164],[5.722526035716279,7.728386486236747,2.5711287313433573],[1.0829925958669468],[3.0081145108862453],[1.5772657547747198],[5.495426257673417,7.830584315586568,4.361155063291147],[0.6333567909922612,0.20693392895268442]]
[0158]
综上所述,本技术在获取到待检测的音频信号后,基于音频信号的音频特性对音频信号进行特征处理,得到至少一个音频段,然后根据每个音频段的节奏信息确定每个音频段的节奏类型。从而实现自动化的、高效的、准确的音乐节奏检测,无需依靠人力进行节奏的标注,大幅提高音乐节奏检测的成本,提高音乐剪辑的效率,提高音乐剪辑的准确性。
[0159]
应当注意,尽管在附图中以特定顺序描述了本发明方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。
[0160]
进一步参考图13,其示出了根据本技术一个实施例的音频节奏检测装置的示例性结构框图。
[0161]
如图所示,音频节奏检测装置10包括:
[0162]
获取模块11,用于获取待检测的音频信号;
[0163]
分段模块12,用于基于所述音频信号的音频特性,对所述音频信号进行特征处理,得到至少一个音频段,相邻两个所述音频段的节奏不同;
[0164]
比较模块13,用于获取每个所述音频段的节奏信息,基于所述节奏信息确定所述音频段的节奏类型。
[0165]
在一些实施例中,分段模块12,还用于:基于所述音频特性对所述音频信号进行特征提取,得到音频特征数据;
[0166]
对所述音频特征数据进行特征拼接处理,得到目标特征;
[0167]
基于聚类算法对所述目标特征进行分类,得到所述音频信号对应的聚类标签序列;
[0168]
基于所述聚类标签序列的连续情况,得到至少一个所述音频段。
[0169]
在一些实施例中,所述音频特性包括stft特性、mel特性和过零率,分段模块12,还用于:
[0170]
分别基于所述stft特性、所述mel特性和所述过零率对所述音频信号进行特征提取,得到所述音频信号对应的stft频谱、mel频谱和过零信息;
[0171]
对所述stft频谱进行特征拆分,得到stft能量谱、stft相位谱和音色谱;
[0172]
分别对所述stft能量谱、stft幅度谱和mel频谱进行频率筛选,得到stft高频能量谱、stft高频幅度谱和mel高频谱。
[0173]
在一些实施例中,所述音频节奏检测包括段间检测和段内检测,在进行段间检测时,分段模块12,还用于:从所述过零信息、所述音色谱、所述stft相位谱、所述stft高频能量谱、所述stft高频幅度谱和所述mel高频谱中,选取三组特征数据分别进行组内拼接,将三组拼接后的特征均作为所述目标特征,其中,至少两组特征数据各包含至少两种特征数据。
[0174]
在一些实施例中,所述音频节奏检测包括段间检测和段内检测,在进行段内检测时,分段模块12,还用于:从所述过零信息、所述音色谱、所述stft相位谱、所述stft高频能量谱、所述stft高频幅度谱和所述mel高频谱中,选取两组特征数据分别进行组内拼接,将两组拼接后的特征均作为所述目标特征,其中,每组特征数据包含至少两种特征数据。
[0175]
在一些实施例中,分段模块12,还用于:针对每个所述目标特征,分别利用二聚类算法进行分类,得到每个所述目标特征对应的特征标签序列;
[0176]
将得到的所述特征标签序列进行组合,得到过渡标签序列;
[0177]
对所述过渡标签序列进行二值化处理,得到所述聚类标签序列。
[0178]
在一些实施例中,分段模块12,还用于:对所述聚类标签序列进行平滑处理,得到用于描述所述音频信号的二值类别曲线;
[0179]
将所述二值类别曲线中任一类别标签连续对应的所述音频信号作为一个所述音频段。
[0180]
在一些实施例中,分段模块12,还用于:统计所述聚类标签中每个连续标签序列的长度;
[0181]
根据所述连续标签序列的长度,确定用于剔除异常值的滑窗长度和异常阈值;
[0182]
利用滑窗在所述聚类标签序列上滑动,并根据所述异常阈值对所述聚类标签序列上的异常标签值进行修正,得到所述二值类别曲线。
[0183]
在一些实施例中,比较模块13,还用于:获取每个所述音频段内的重节奏点的数量;
[0184]
根据每个所述音频段的时间长度和所述重节奏点的数量,确定所述音频段对应的节奏密度;
[0185]
根据所述音频段对应的节奏密度,确定所述音频段的节奏类型。
[0186]
在一些实施例中,所述音频节奏检测包括段间检测和段内检测,在进行段间检测时,比较模块13,还用于:针对每个所述音频段,将所述音频段对应的所述节奏密度与前一所述音频段对应的所述节奏密度进行比较;
[0187]
根据比较结果,确定所述音频段的节奏变化类型。
[0188]
在一些实施例中,所述音频节奏检测包括段间检测和段内检测,在进行段内检测时,比较模块13,还用于:分别获取相邻两个所述音频段的节奏密度,并计算所述两个节奏密度的差的绝对值;
[0189]
根据所述差的绝对值与预设趋势阈值,确定两个所述音频段的节奏变化趋势。
[0190]
应当理解,音频节奏检测装置10中记载的诸单元或模块与参考图2描述的方法中的各个步骤相对应。由此,上文针对方法描述的操作和特征同样适用于音频节奏检测装置10及其中包含的单元,在此不再赘述。音频节奏检测装置10可以预先实现在电子设备的浏览器或其他安全应用中,也可以通过下载等方式而加载到电子设备的浏览器或其安全应用中。音频节奏检测装置10中的相应单元可以与电子设备中的单元相互配合以实现本技术实施例的方案。
[0191]
在上文详细描述中提及的若干模块或者单元,这种划分并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
[0192]
综上所述,本技术在获取到待检测的音频信号后,基于音频信号的音频特性对音频信号进行特征处理,得到至少一个音频段,然后根据每个音频段的节奏信息确定每个音频段的节奏类型。从而实现自动化的、高效的、准确的音乐节奏检测,无需依靠人力进行节奏的标注,大幅提高音乐节奏检测的成本,提高音乐剪辑的效率,提高音乐剪辑的准确性。
[0193]
下面参考图14,图14示出了适于用来实现本技术实施例的电子设备或服务器的计算机系统的结构示意图,
[0194]
如图14所示,计算机系统1400包括中央处理单元(cpu)1401,其可以根据存储在只读存储器(rom)1402中的程序或者从存储部分1408加载到随机访问存储器(ram)1403中的程序而执行各种适当的动作和处理。在ram1403中,还存储有系统的操作指令所需的各种程序和数据。cpu1401、rom1402以及ram1403通过总线1404彼此相连。输入/输出(i/o)接口1405也连接至总线1404。
[0195]
以下部件连接至i/o接口1405;包括键盘、鼠标等的输入部分1406;包括诸如阴极射线管(crt)、液晶显示器(lcd)等以及扬声器等的输出部分1407;包括硬盘等的存储部分1408;以及包括诸如lan卡、调制解调器等的网络接口卡的通信部分1409。通信部分1409经由诸如因特网的网络执行通信处理。驱动器1410也根据需要连接至i/o接口1405。可拆卸介质1411,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器1410上,以便于从其上读出的计算机程序根据需要被安装入存储部分1408。
[0196]
特别地,根据本技术的实施例,上文参考流程图图2描述的过程可以被实现为计算机软件程序。例如,本技术的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分1409从网络上被下载和安装,和/或从可拆卸介质1411被安装。在该计算机程序被中央处理单元(cpu)1401执行时,执行本技术的系统中限定的上述功能。
[0197]
需要说明的是,本技术所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便
携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd
‑
rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本技术中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本技术中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以为的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、rf等等,或者上述的任意合适的组合。
[0198]
附图中的流程图和框图,图示了按照本技术各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作指令。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,前述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以不同于附图中所标注的顺序发生。例如,两个连接表示的方框实际上可以基本并行地执行,他们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作指令的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
[0199]
描述于本技术实施例中所涉及到的单元或模块可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元或模块也可以设置在处理器中,例如,可以描述为:一种处理器包括获取模块、分段模块和确定模块。其中,这些单元或模块的名称在某种情况下并不构成对该单元或模块本身的限定,例如,获取模块,还可以被描述为“获取待检测的音频信号”。
[0200]
作为另一方面,本技术还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例中描述的电子设备中所包含的,也可以是单独存在,而未装配入该电子设备中的。上述计算机可读存储介质存储有一个或多个程序,当上述程序被一个或者一个以上的处理器用来执行描述于本技术的音频节奏检测方法。
[0201]
以上描述仅为本技术的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本技术中所涉及的公开范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离前述公开构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其他技术方案。例如上述特征与本技术中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。