一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

和弦识别方法、装置、设备及存储介质与流程

2021-06-08 15:40:00 来源:中国专利 TAG:人工智能 和弦 识别 装置 方法


1.本发明涉及人工智能技术领域,尤其涉及一种和弦识别方法、装置、设备及存储介质。


背景技术:

2.和弦是一种非常抽象且重要的音乐表达载体,是所有音乐作品中必不可少的组成部分。但是人工识别需要十分专业的人士反复听取并进行识别,通常费时费力;采用音频识别技术进行识别时又因为和弦具有虽然由多个音组成但是却只有一条正弦波的特点,使得传统的音频识别技术无法拆解和识别和弦的声波。
3.现有技术中,有些机器学习模型尝试用神经卷积网络和循环神经网络来识别音乐和弦,但是都存在和弦识别不准确、效果不理想的问题。


技术实现要素:

4.本发明的主要目的在于解决现有技术中对和弦进行识别时识别准确度低的技术问题。
5.本发明第一方面提供了一种和弦识别方法,包括:
6.获取待识别的音频文件;
7.利用预先建立好的和弦音高数据提取模型,对所述音频文件的特征数据进行提取,得到至少一段和弦音高特征数据;
8.利用双通道transformer模型,对所述和弦音高特征数据分别进行初步识别和修正识别,得到所述和弦音高特征数据的初始识别结果和修正识别结果;
9.根据所述修正识别结果对所述初始识别结果进行修正,得到和弦乐谱。
10.可选的,在本发明第一方面的第一种实现方式中,所述利用预先建立好的和弦音高数据提取模型,对所述音频文件的特征数据进行提取,得到至少一段和弦音高特征数据包括:
11.利用短时傅里叶变换函数对所述音频文件进行短时傅里叶变换,得到所述音频文件的特征数据;
12.根据所述特征数据,利用所述和弦音高数据提取模型对所述特征数据中的和弦音高特征数据进行识别并提取,得到至少一段和弦音高特征数据。
13.可选的,在本发明第一方面的第二种实现方式中,所述根据所述特征数据,利用所述和弦音高数据提取模型对所述特征数据中的和弦音高特征数据进行识别并提取,得到至少一段和弦音高特征数据包括:
14.利用所述和弦音高提取模型对所述特征数据进行识别,将仅包含单音的特征数据进行丢弃,得到至少一段包含和弦片段的特征数据;
15.对所述包含和弦片段的特征数据进行识别,并将识别到的节奏数据和音色数据进行丢弃,得到至少一段和弦音高特征数据。
16.可选的,在本发明第一方面的第三种实现方式中,所述利用双通道transformer模型,对所述和弦音高特征数据分别进行初步识别和修正识别,得到所述和弦音高特征数据的初始识别结果和修正识别结果包括:
17.利用所述双通道transformer模型中对所述和弦音高特征数据分别进行至少两次的前向识别以及后向识别,得到前向识别结果和后向识别结果;
18.利用全连接层将第一次识别的前向识别结果和后向识别结果进行合成,得到初始识别结果;
19.利用全连接层将第二次和第二次之后识别的,前向识别结果和后向识别结果进行合成得到修正识别结果。
20.可选的,在本发明第一方面的第四种实现方式中,所述利用所述双通道transformer模型中对所述和弦音高特征数据分别进行前向识别以及后向识别,得到前向识别结果和后向识别结果包括:
21.利用前向多部注意力模型对所述和弦音高特征数据进行前向识别,得到所述前向识别结果;
22.利用后向多部注意力模型对所述和弦音高特征数据进行后向识别,得到所述后向识别结果。
23.可选的,在本发明第一方面的第五种实现方式中,所述根据所述修正识别结果对所述初始识别结果进行修正,得到和弦乐谱包括:
24.将所述修正识别结果输入至softmax逻辑回归模型中,所述softmax逻辑回归模型对所述修正识别结果进行加权平均化,得到和弦修正量;
25.根据所述和弦修正量对所述初步识别结果进行修正,得到和弦乐谱。
26.可选的,在本发明第一方面的第六种实现方式中,在所述获取待识别的音频文件之前,还包括:
27.预先收集具有人工标记的各种音频特征数据,将所述各种音频特征数据组成音频特征数据库,其中,所述音频特征数据包括节奏数据、音色数据、单音数据以及和弦数据;
28.利用所述音频特征数据库对机器学习算法进行训练,得到和弦音高数据提取模型。
29.本发明第二方面提供了一种和弦识别装置,包括:
30.获取模块,用于获取待识别的音频文件;
31.和弦提取模块,用于利用预先建立好的和弦音高数据提取模型,对所述音频文件的特征数据进行提取,得到至少一段和弦音高特征数据;
32.和弦识别模块,用于利用双通道transformer模型,对所述和弦音高特征数据分别进行初步识别和修正识别,得到所述和弦音高特征数据的初始识别结果和修正识别结果;
33.修正模块,用于根据所述修正识别结果对所述初始识别结果进行修正,得到和弦乐谱。
34.可选的,在本发明第二方面的第一种实现方式中,所述和弦提取模块包括:
35.音频特征转换单元,用于利用短时傅里叶变换函数对所述音频文件进行短时傅里叶变换,得到所述音频文件的特征数据;
36.特征提取单元,用于根据所述特征数据,利用所述和弦音高数据提取模型对所述
特征数据中的和弦音高特征数据进行识别并提取,得到至少一段和弦音高特征数据。
37.可选的,在本发明第二方面的第二种实现方式中,所述特征提取单元包括:
38.第一丢弃子单元,用于利用所述和弦音高提取模型对所述特征数据进行识别,将仅包含单音的特征数据进行丢弃,得到至少一段包含和弦片段的特征数据;
39.第二丢弃子单元,用于对所述包含和弦片段的特征数据进行识别,并将识别到的节奏数据和音色数据进行丢弃,得到至少一段和弦音高特征数据。
40.可选的,在本发明第二方面的第三种实现方式中,所述和弦识别模块包括:
41.transformer识别单元,用于利用所述双通道transformer模型中对所述和弦音高特征数据分别进行至少两次的前向识别以及后向识别,得到前向识别结果和后向识别结果;
42.初始结果获取单元,用于利用全连接层将第一次识别的前向识别结果和后向识别结果进行合成,得到初始识别结果;
43.修正结果获取单元,用于利用全连接层将第二次和第二次之后识别的,前向识别结果和后向识别结果进行合成得到修正识别结果。
44.可选的,在本发明第二方面的第四种实现方式中,所述transformer识别单元包括:
45.前向识别子单元,用于利用前向多部注意力模型对所述和弦音高特征数据进行前向识别,得到所述前向识别结果;
46.后向识别子单元,用于利用后向多部注意力模型对所述和弦音高特征数据进行后向识别,得到所述后向识别结果。
47.可选的,在本发明第二方面的第五种实现方式中,所述修正模块包括:
48.修正量计算单元,用于将所述修正识别结果输入至softmax逻辑回归模型中,所述softmax逻辑回归模型对所述修正识别结果进行加权平均化,得到和弦修正量;
49.修正输出单元,用于根据所述和弦修正量对所述初步识别结果进行修正,得到和弦乐谱。
50.可选的,在本发明第二方面的第六种实现方式中,所述和弦识别装置还包括:
51.提取模型构建模块,用于预先收集具有人工标记的各种音频特征数据,将所述各种音频特征数据组成音频特征数据库,其中,所述音频特征数据包括节奏数据、音色数据、单音数据以及和弦数据;利用所述音频特征数据库对机器学习算法进行训练,得到和弦音高数据提取模型。
52.本发明第三方面提供了一种和弦识别设备,包括:存储器和至少一个处理器,所述存储器中存储有指令;所述至少一个处理器调用所述存储器中的所述指令,以使得所述和弦识别设备执行上述的和弦识别方法的步骤。
53.本发明的第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述的和弦识别方法的步骤。
54.本发明提供的技术方案中,通过获取待识别的音频文件;利用预先建立好的和弦音高数据提取模型,对所述音频文件的特征数据进行提取,得到至少一段和弦音高特征数据;利用双通道transformer模型,对所述和弦音高特征数据分别进行初步识别和修正识别,得到所述和弦音高特征数据的初始识别结果和修正识别结果;根据所述修正识别结果
对所述初始识别结果进行修正,得到和弦乐谱。本发明实施例中,该和弦识别方法可以对音频文件中的和弦进行提取并识别,得到和弦识别结果,提高了对和弦识别的速度和准确度。
附图说明
55.图1为本发明实施例中和弦识别方法的一个实施例示意图;
56.图2为本发明实施例中和弦识别方法的另一个实施例示意图;
57.图3为本发明实施例中和弦识别方法的另一个实施例示意图;
58.图4为本发明实施例中和弦识别方法的另一个实施例示意图;
59.图5为本发明实施例中和弦识别装置的一个实施例示意图;
60.图6为本发明实施例中和弦识别装置的另一个实施例示意图;
61.图7为本发明实施例中和弦识别设备的一个实施例示意图。
具体实施方式
62.本发明实施例提供了一种和弦识别方法、装置、设备及存储介质,可以对音频文件中的和弦进行提取并识别,得到和弦识别结果,提高了对和弦识别的速度和准确度。
63.本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”或“具有”及其任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
64.为便于理解,下面对本发明实施例的具体流程进行描述,请参阅图1,本发明实施例中和弦识别方法的一个实施例包括:
65.101、获取待识别的音频文件;
66.可以理解的是,本发明的执行主体可以为和弦识别装置,还可以是终端或者服务器,具体此处不做限定。本发明实施例以服务器为执行主体为例进行说明。
67.由于和弦是音乐中不可或缺的部分,故对和弦进行识别的应用场景也十分广泛;例如,为失去乐谱的音乐文件进行识别从而获得乐谱信息,以便对此乐曲的保存以及乐器演奏者进行学习及复现的用途;还有对于普通用户来说,听到一首喜欢的歌曲并且想要进行演奏时苦于没有和弦乐谱使得演奏效果不尽如人意等其他方面的用途。在更进一步的情况下,对和弦进行识别的技术还可以结合其他音乐识别技术,以便完成一首音乐所有部分的识别。
68.在本步骤中,首先通过用户上传或其他方式获取包括有待识别和弦的多媒体文件。该多媒体文件可以是一段视频文件,也可以是一段音频文件。若获得到的多媒体文件是视频文件时,首先对该多媒体文件进行处理,去除画面信息,仅保留音频信息,得到待识别的音频文件。
69.102、利用预先建立好的和弦音高数据提取模型,对音频文件的特征数据进行提取,得到至少一段和弦音高特征数据;
70.在进行和弦音高特征数据进行提取前,要对音频文件进行处理,得到音频文件的特征数据,随后利用和弦音高数据提取模型,识别该音频文件的特征数据,并将特征数据中的和弦音高特征数据提取出来。一般地,在一首乐曲中的音频特征信息中不仅包括和弦信息,还包括有节奏信息以及音色信息等其他信息,故在本实施例的识别过程中,首先要做的是将和弦信息与其他信息如节奏信息和音色信息等进行分离。一般情况下,一首乐曲的和弦可能零散的分布在一首乐曲的各处,也即是说,在乐曲的某些片段中并不包含有和弦的部分。故在进行提取时,可以先将这部分不含有和弦部分的特征信息丢弃掉,仅保留具有和弦的部分,从而减少数据量以便下一步的处理。
71.将获得到的音频中不含有和弦的部分的特征信息丢弃掉后,得到了数个具有和弦的音频特征片段。这些音频特征片段中同样具有节奏数据和音色数据,会对和弦的识别造成影响,故需要利用和弦音高数据提取模型,将具有和弦的音频特征片段中的节奏特征和音色特征也进行丢弃操作,从而只剩下和弦的音高特征数据,已完成对音频文件的特征数据进行提取。
72.本步骤中,将识别时多余的部分进行丢弃,可以减少识别的数据量,从而提高识别的准确度以及速度。
73.103、利用双通道transformer模型,对和弦音高特征数据分别进行初步识别和修正识别,得到和弦音高特征数据的初始识别结果和修正识别结果;
74.本步骤中采用双通道transformer模型进行识别操作。利用该双通道transformer识别模型对上步骤中获得的至少一段和弦音高特征数据进行识别,其中,双通道transformer模型中的双通道指前向和后向通道,在对每一段和弦音高特征数据进行识别时,对和弦音高特征数据从前向和后向两个方向进行识别,得到前向的识别结果和后向的识别结果,再将前向的识别结果和后向的初始识别结果进行合成,得到初始识别结果,从而提高识别的准确度。
75.其次,为提高识别效果的准确性,在获得初始识别结果后,利用双通道transformer模型对每一段和弦音高特征数据进行重复识别,得到修正识别结果。
76.104、根据修正识别结果对初始识别结果进行修正,得到和弦乐谱。
77.为提高识别效果的准确性,根据获得到的修正识别结果对和弦音高特征数据的初始识别结果进行修正,其中,对和弦音高特征数据的初始识别结果进行修正为将根据修正识别结果中得到的修正量,初始识别结果进行修正,从而得到和弦识别结果。
78.此外,在获得到和弦识别结果后将得到的和弦识别结果按照电子形式进行保存,可以根据用户选择的形式以及文件格式,输出和弦乐谱。
79.本发明实施例中提供的和弦识别方法可以对音频文件中的和弦进行提取并识别,得到和弦识别结果,提高了对和弦识别的速度和准确度。
80.请参阅图2,本发明实施例中和弦识别方法的另一个实施例包括:
81.201、获取待识别的音频文件;
82.在本步骤中,首先通过用户上传或其他方式获取包括有待识别和弦的多媒体文件。该多媒体文件可以是一段视频文件,也可以是一段音频文件。若获得到的多媒体文件是视频文件时,首先对该多媒体文件进行处理,去除画面信息,仅保留音频信息,得到待识别的音频文件。
83.202、利用短时傅里叶变换函数对音频文件进行短时傅里叶变换,得到音频文件的特征数据;
84.短时傅里叶变换(stft,short

time fourier transform)是和傅里叶变换相关的一种数学变换,用以确定时变信号其局部区域正弦波的频率与相位。本步骤中音频文件的特征数据采用是通过获取音频文件的时频谱数据进行获取的。利用短时傅里叶变换函数对获取到的音频文件进行变换,得到音频文件的时频谱数据,通过获得音频的时频谱数据可以较简单地了解该音频文件的特征,以便根据音频文件中的特征数据的不同来剔除不包含和弦特征的部分,针对需要的部分进行识别,降低识别难度。
85.203、利用和弦音高提取模型对特征数据进行识别,将仅包含单音的特征数据进行丢弃,得到至少一段包含和弦片段的特征数据;
86.为了减少后续步骤时进行转换或处理时的无关数据以节省算力,在本步骤中,首先采用预先建立好的和弦音高数据提取模型对上步骤中取得的特征数据进行识别。一般情况下,一首乐曲的和弦可能零散的分布在一首乐曲的各处,也即是说,在乐曲的某些片段中并不包含有和弦的部分。故在进行提取时,可以先将这部分不含有和弦部分的特征信息丢弃掉,仅保留具有和弦的部分,从而减少数据量以便下一步的处理。
87.具体地,本步骤中提到的和弦音高数据提取模型是通过机器学习方法建立的。由于每个独立音符都有属于自己的一个频率范围,但和弦由于是几个音混合在一起,其频率不会落入任何一个独立音符的频率范围内。故和弦音高数据提取模型通过将音频特征数据中不属于独立音符的频率范围内的片段进行丢弃,可以将具有和弦的部分和单音部分区分开来,从而减少数据量,得到包含和弦片段的特征数据。
88.204、对包含和弦片段的特征数据进行识别,并将识别到的节奏数据和音色数据进行丢弃,得到至少一段和弦音高特征数据;
89.将获得到的音频中不含有和弦的部分的特征信息丢弃掉后,得到了数个具有和弦的音频特征片段。获得到包含和弦片段的特征数据之后,还要对无关数据进行进一步的剔除。具体地,这些音频特征片段中同样具有节奏数据和音色数据,会对和弦的识别造成影响,和弦音高数据提取模型回将具有和弦的音频特征片段中的节奏特征和音色特征也进行丢弃操作,从而只剩下和弦的音高特征数据,已完成对音频文件的特征数据进行提取。故在建立和弦音高数据提取模型时,需要预先将节奏数据、音色数据、音高数据等不同类型的数据进行标注后组成训练集对机器学习算法进行训练,通过训练好的算法识别包含和弦片段的特征数据中的数据类型,从而进一步将包含和弦片段的特征数据中节奏数据和音色数据进行丢弃,仅保留和弦的音高数据,减少所要处理的数据数量。
90.205、利用双通道transformer模型,对和弦音高特征数据分别进行初步识别和修正识别,得到和弦音高特征数据的初始识别结果和修正识别结果;
91.本步骤中采用双通道transformer模型进行识别操作。利用该双通道transformer识别模型对上步骤中获得的至少一段和弦音高特征数据进行识别,其中,双通道transformer模型中的双通道指前向和后向通道,在对每一段和弦音高特征数据进行识别时,对和弦音高特征数据从前向和后向两个方向进行识别,得到前向的识别结果和后向的识别结果,再将前向的识别结果和后向的初始识别结果进行合成,得到初始识别结果,从而提高识别的准确度。
92.其次,为提高识别效果的准确性,在获得初始识别结果后,利用双通道transformer模型对每一段和弦音高特征数据进行重复识别,得到修正识别结果。
93.206、根据修正识别结果对初始识别结果进行修正,得到和弦乐谱。
94.为提高识别效果的准确性,根据获得到的修正识别结果对和弦音高特征数据的初始识别结果进行修正,其中,所述修正为将所述初始识别结果替换为修正识别结果,从而得到和弦识别结果。
95.此外,在获得到和弦识别结果后将得到的和弦识别结果按照电子形式进行保存,可以根据用户选择的形式以及文件格式,输出和弦乐谱。
96.本发明实施例中提供的和弦识别方法,可以将音频文件中除和弦音高的数据信息进行剔除后,对音频文件中的和弦音高数据信息进行识别得到和弦识别结果,进一步提高了对和弦识别的速度和准确度。
97.请参阅图3,本发明实施例中和弦识别方法的另一个实施例包括:
98.301、获取待识别的音频文件;
99.在本步骤中,首先通过用户上传或其他方式获取包括有待识别和弦的多媒体文件。该多媒体文件可以是一段视频文件,也可以是一段音频文件。若获得到的多媒体文件是视频文件时,首先对该多媒体文件进行处理,去除画面信息,仅保留音频信息,得到待识别的音频文件。
100.302、利用预先建立好的和弦音高数据提取模型,对音频文件的特征数据进行提取,得到至少一段和弦音高特征数据;
101.在进行和弦音高特征数据进行提取前,要对音频文件进行处理,得到音频文件的特征数据,随后利用和弦音高数据提取模型,识别该音频文件的特征数据,并将特征数据中的和弦音高特征数据提取出来。一般地,在一首乐曲中的音频特征信息中不仅包括和弦信息,还包括有节奏信息以及音色信息等其他信息,故在本实施例的识别过程中,首要做的是将和弦信息与其他信息如节奏信息和音色信息等进行分离。一般情况下,一首乐曲的和弦可能零散的分布在一首乐曲的各处,也即是说,在乐曲的某些片段中并不包含有和弦的部分。故在进行提取时,可以先将这部分不含有和弦部分的特征信息丢弃掉,仅保留具有和弦的部分,从而减少数据量以便下一步的处理。
102.将获得到的音频中不含有和弦的部分的特征信息丢弃掉后,得到了数个具有和弦的音频特征片段。这些音频特征片段中同样具有节奏数据和音色数据,会对和弦的识别造成影响,故需要利用和弦音高数据提取模型,将具有和弦的音频特征片段中的节奏特征和音色特征也进行丢弃操作,从而只剩下和弦的音高特征数据,已完成对音频文件的特征数据进行提取。
103.本步骤中,将识别时多余的部分进行丢弃,可以减少识别的数据量,从而提高识别的准确度以及速度。
104.303、利用前向多部注意力模型对和弦音高特征数据进行至少两次前向识别,得到前向识别结果,利用后向多部注意力模型对和弦音高特征数据进行至少两次后向识别,得到后向识别结果;
105.在获得到和弦音高特征数据后就可以使用双通道transformer模型进行识别,其中,双通道transformer模型是由双向多部注意力模型构成的。在本步骤中,在进行识别之
前,需要将获得到的和弦音高特征数据进行预处理,即是对该数据执行标准化(standardization)处理,以提高识别速度和识别效果。进行标准化之后,使用前向多部注意力模型(attention model)对标准化之后的和弦音高特征数据进行识别。
106.注意力模型(attention model)为深度学习中的一种类型,具体模拟的是人脑的注意力模型,其思想为更多地关注目前需要识别的部分而将其他不需要识别的部分甚至会造成对在识别过程中产生负面影响的部分进行忽略,从而把更多的算力用于目前需要识别的部分,从而提高识别的准确程度以及提高识别的速度,其计算公式为:
[0107][0108]
其中,q,k,v分别为请求值,关键值和数值向量构成的矩阵;dk为关键值向量的纬度;在本实施例中,请求向量q为和弦音高特征数据,且本实施例中具体采用的是多部自注意力模型(self attention model),也即是说请求向量,关键向量和值向量来自同一个输入来源。
[0109]
使用上述的多部自注意力模型从前向将和弦音高特征数据进行拆解,获得拆解后的和弦音高特征数据后利用层级正态化和局部卷积将拆解后的和弦音高特征进行拆分得到前向识别结果。将所述前向识别过程进行至少两次,得到至少两个前向识别结果。
[0110]
随后,采用多部自注意力模型从后向对和弦音高特征数据进行识别,除识别的方向与前向识别方向相反之外,其具体内容基本相同,具体从后向将和弦音高特征数据进行拆解,获得拆解后的和弦音高特征数据后利用层级正态化和局部卷积将拆解后的和弦音高特征进行拆分得到后向识别结果;并将这个后向识别过程进行至少两次,得到至少两个后向识别结果。
[0111]
304、利用全连接层将第一次识别的前向识别结果和后向识别结果进行合成,得到初始识别结果,将第二次和第二次之后识别的,前向识别结果和后向识别结果进行合成得到修正识别结果;
[0112]
在得到步骤303中的前向识别结果以及后向识别结果后,将前向和弦音高识别结果和后向和弦音高识别结果进行合成,具体地,利用全连接层(fully connected layers,fc)对第一次识别的前向识别结果和第一次识别得到的后向识别结果进行合成,得到初始识别结果;将第二次和第二次之后识别获得到的前向识别结果和第二次和第二次之后识别获得到的后向识别结果进行合成得到修正识别结果。
[0113]
305、根据修正识别结果对初始识别结果进行修正,得到和弦乐谱。
[0114]
根据获得到的至少一个修正识别结果,计算出修正识别结果最有可能的结构,并按照最有可能的修正识别结果将初始识别结果进行修正;其中,所述修正为将所述初始识别结果替换为修正识别结果,从而得到和弦识别结果。
[0115]
此外,在获得到和弦识别结果后将得到的和弦识别结果按照电子形式进行保存,可以根据用户选择的形式以及文件格式,输出和弦乐谱。
[0116]
本发明实施例中提供的和弦识别方法,采用基于多部注意力模型构建的双通道transformer模型对音频文件中的和弦音高数据信息进行识别,得到和弦的识别结果,进一步提高了对和弦识别的速度和准确度。
[0117]
请参阅图4,本发明实施例中和弦识别方法的另一个实施例包括:
[0118]
401、获取待识别的音频文件;
[0119]
由于和弦是音乐中不可或缺的部分,故对和弦进行识别的应用场景也十分广泛;例如有为失去乐谱的音乐文件进行识别从而获得乐谱信息,以便对此乐曲的保存以及乐器演奏者进行学习及复现的用途;还有对于普通用户来说,听到一首喜欢的歌曲并且想要进行演奏时苦于没有和弦乐谱使得演奏效果不尽如人意等其他方面的用途。在更进一步的情况下,对和弦进行识别的技术还可以结合其他音乐识别技术,以便完成一首音乐所有部分的识别。
[0120]
在本步骤中,首先通过用户上传或其他方式获取包括有待识别和弦的多媒体文件。该多媒体文件可以是一段视频文件,也可以是一段音频文件。若获得到的多媒体文件是视频文件时,首先对该多媒体文件进行处理,去除画面信息,仅保留音频信息,得到待识别的音频文件。
[0121]
402、利用短时傅里叶变换函数对音频文件进行短时傅里叶变换,得到音频文件的特征数据;
[0122]
短时傅里叶变换(stft,short

time fourier transform)是和傅里叶变换相关的一种数学变换,用以确定时变信号其局部区域正弦波的频率与相位。本步骤中音频文件的特征数据采用是通过获取音频文件的时频谱数据进行获取的。利用短时傅里叶变换函数对获取到的音频文件进行变换,得到音频文件的时频谱数据,通过获得音频的时频谱数据可以较简单地了解该音频文件的特征,以便根据音频文件中的特征数据的不同来剔除不包含和弦特征的部分,针对需要的部分进行识别,降低识别难度。
[0123]
403、预先收集具有人工标记的各种音频特征数据,将各种音频特征数据组成音频特征数据库,利用音频特征数据库对机器学习算法进行训练,得到和弦音高数据提取模型;
[0124]
在获得到音频特征数据之后,我们想要对不包含和弦特征的部分进行剔除,减少无关数据量,只针对需要的部分进行识别。在识别之前,要预先建立和弦音高数据提取模型对和弦进行提取。具体的建立和弦音高数据提取模型的方法为如下:首先收集具有人工标记的各种音频特征数据,其中,音频特征数据包括节奏数据、音色数据、单音数据以及和弦数据。将这些数据通过人工标记出不同的数据类型,并将数据以及人工标记组成音频特征数据库。通过音频特征数据库对机器学习算法进行训练,得到和弦音高数据提取模型。其中,机器学习算法可以采用马尔科夫模型或深度神经网络等算法,在此不再赘述。
[0125]
404、利用和弦音高提取模型对特征数据进行识别,将仅包含单音的特征数据进行丢弃,得到至少一段包含和弦片段的特征数据;
[0126]
为了减少后续步骤时进行转换或处理时的无关数据以节省算力,在本步骤中,首先采用预先建立好的和弦音高数据提取模型对上步骤中取得的特征数据进行识别。一般情况下,一首乐曲的和弦可能零散的分布在一首乐曲的各处,也即是说,在乐曲的某些片段中并不包含有和弦的部分。故在进行提取时,可以先将这部分不含有和弦部分的特征信息丢弃掉,仅保留具有和弦的部分,从而减少数据量以便下一步的处理。
[0127]
具体地,本步骤中提到的和弦音高数据提取模型是通过机器学习方法建立的。由于每个独立音符都有属于自己的一个频率范围,但和弦由于是几个音混合在一起,其频率不会落入任何一个独立音符的频率范围内。故和弦音高数据提取模型通过将音频特征数据中不属于独立音符的频率范围内的片段进行丢弃,可以将具有和弦的部分和单音部分区分
开来,从而减少数据量,得到包含和弦片段的特征数据。
[0128]
405、对包含和弦片段的特征数据进行识别,并将识别到的节奏数据和音色数据进行丢弃,得到至少一段和弦音高特征数据;
[0129]
将获得到的音频中不含有和弦的部分的特征信息丢弃掉后,得到了数个具有和弦的音频特征片段。获得到包含和弦片段的特征数据之后,还要对无关数据进行进一步的剔除。具体地,这些音频特征片段中同样具有节奏数据和音色数据,会对和弦的识别造成影响,和弦音高数据提取模型回将具有和弦的音频特征片段中的节奏特征和音色特征也进行丢弃操作,从而只剩下和弦的音高特征数据,已完成对音频文件的特征数据进行提取。故在建立和弦音高数据提取模型时,需要预先将节奏数据、音色数据、音高数据等不同类型的数据进行标注后组成训练集对机器学习算法进行训练,通过训练好的算法识别包含和弦片段的特征数据中的数据类型,从而进一步将包含和弦片段的特征数据中节奏数据和音色数据进行丢弃,仅保留和弦的音高数据,减少所要处理的数据数量。
[0130]
406、利用前向多部注意力模型对和弦音高特征数据进行至少两次前向识别,得到前向识别结果,利用后向多部注意力模型对和弦音高特征数据进行至少两次后向识别,得到后向识别结果;
[0131]
在获得到和弦音高特征数据后就可以使用双通道transformer模型进行识别,其中,双通道transformer模型是由双向多部注意力模型构成的。在本步骤中,在进行识别之前,需要将获得到的和弦音高特征数据进行预处理,即是对该数据执行标准化(standardization)处理,以提高识别速度和识别效果。进行标准化之后,使用前向多部注意力模型(attention model)对标准化之后的和弦音高特征数据进行识别。
[0132]
注意力模型(attention model)为深度学习中的一种类型,具体模拟的是人脑的注意力模型,其思想为更多地关注目前需要识别的部分而将其他不需要识别的部分甚至会造成对在识别过程中产生负面影响的部分进行忽略,从而把更多的算力用于目前需要识别的部分,从而提高识别的准确程度以及提高识别的速度,其计算公式为:
[0133][0134]
其中,q,k,v分别为请求值,关键值和数值向量构成的矩阵;dk为关键值向量的纬度;在本实施例中,请求向量q为和弦音高特征数据,且本实施例中具体采用的是多部自注意力模型(self attention model),也即是说请求向量,关键向量和值向量来自同一个输入来源。
[0135]
使用上述的多部自注意力模型从前向将和弦音高特征数据进行拆解,获得拆解后的和弦音高特征数据后利用层级正态化和局部卷积将拆解后的和弦音高特征进行拆分得到前向识别结果。将所述前向识别过程进行至少两次,得到至少两个前向识别结果。
[0136]
随后,采用多部自注意力模型从后向对和弦音高特征数据进行识别,除识别的方向与前向识别方向相反之外,其具体内容基本相同,具体从后向将和弦音高特征数据进行拆解,获得拆解后的和弦音高特征数据后利用层级正态化和局部卷积将拆解后的和弦音高特征进行拆分得到后向识别结果;并将这个后向识别过程进行至少两次,得到至少两个后向识别结果。
[0137]
407、利用全连接层将第一次识别的前向识别结果和后向识别结果进行合成,得到
初始识别结果,将第二次和第二次之后识别的,前向识别结果和后向识别结果进行合成得到修正识别结果;
[0138]
在得到步骤406中的前向识别结果以及后向识别结果后,将前向和弦音高识别结果和后向和弦音高识别结果进行合成,具体地,利用全连接层(fully connected layers,fc)对第一次识别的前向识别结果和第一次识别得到的后向识别结果进行合成,得到初始识别结果;将第二次和第二次之后识别获得到的前向识别结果和第二次和第二次之后识别获得到的后向识别结果进行合成得到修正识别结果。
[0139]
408、将修正识别结果输入至softmax逻辑回归模型中,softmax逻辑回归模型对修正识别结果进行加权平均化,得到和弦修正量;
[0140]
由于每次识别时进行拆分拆解会产生不同的方案,在得到至少一个修正识别结果后,利用softmax逻辑回归模型对获得到的修正识别结果进行加权平均化。softmax逻辑回归模型是logistic回归模型(一种线性回归模型)在多分类问题上的推广,在多分类问题中,类标签y可以取两个以上的值。通过softmax逻辑回归模型将至少一个修正识别结果进行加权平均化后得到和弦修正量。
[0141]
409、根据和弦修正量对初步识别结果进行修正,得到和弦乐谱。
[0142]
根据计算出的和弦修正量对初步识别结果进行修正,并使用修正后的初步识别结果对初步识别结果进行替换,得到和弦识别结果。
[0143]
此外,在获得到和弦识别结果后还可将得到的修正识别结果按照电子形式进行保存,可以根据用户选择的形式以及文件格式,输出和弦识别结果的乐谱。
[0144]
本发明实施例中提供的和弦识别方法,对音频文件中的和弦进行识别并输出和弦的乐谱,能够捕捉到和弦之间的相关性,提高了识别速度的同时,且进一步提高了对和弦识别的准确度。
[0145]
上面对本发明实施例中和弦识别方法进行了描述,下面对本发明实施例中和弦识别装置进行描述,请参阅图5,本发明实施例中和弦识别装置一个实施例包括:
[0146]
获取模块501,用于获取待识别的音频文件;
[0147]
和弦提取模块502,用于利用预先建立好的和弦音高数据提取模型,对所述音频文件的特征数据进行提取,得到至少一段和弦音高特征数据;
[0148]
和弦识别模块503,用于利用双通道transformer模型,对所述和弦音高特征数据分别进行初步识别和修正识别,得到所述和弦音高特征数据的初始识别结果和修正识别结果;
[0149]
修正模块504,用于根据所述修正识别结果对所述初始识别结果进行修正,得到和弦乐谱。
[0150]
本发明实施例中提供的和弦识别方法,可以对音频文件中的和弦进行识别并输出和弦的乐谱,进一步提高了对和弦识别的准确度。
[0151]
请参阅图6,本发明实施例中和弦识别装置的另一个实施例包括:
[0152]
获取模块501,用于获取待识别的音频文件;
[0153]
和弦提取模块502,用于利用预先建立好的和弦音高数据提取模型,对所述音频文件的特征数据进行提取,得到至少一段和弦音高特征数据;
[0154]
和弦识别模块503,用于利用双通道transformer模型,对所述和弦音高特征数据
分别进行初步识别和修正识别,得到所述和弦音高特征数据的初始识别结果和修正识别结果;
[0155]
修正模块504,用于根据所述修正识别结果对所述初始识别结果进行修正,得到和弦乐谱。
[0156]
可选的,和弦提取模块502包括:
[0157]
音频特征转换单元5021,用于利用短时傅里叶变换函数对所述音频文件进行短时傅里叶变换,得到所述音频文件的特征数据;
[0158]
特征提取单元5022,用于根据所述特征数据,利用所述和弦音高数据提取模型对所述特征数据中的和弦音高特征数据进行识别并提取,得到至少一段和弦音高特征数据。
[0159]
可选的,特征提取单元5022包括:
[0160]
第一丢弃子单元,用于利用所述和弦音高提取模型对所述特征数据进行识别,将仅包含单音的特征数据进行丢弃,得到至少一段包含和弦片段的特征数据;
[0161]
第二丢弃子单元,用于对所述包含和弦片段的特征数据进行识别,并将识别到的节奏数据和音色数据进行丢弃,得到至少一段和弦音高特征数据。
[0162]
可选的,和弦识别模块503包括:
[0163]
transformer识别单元5031,用于利用所述双通道transformer模型中对所述和弦音高特征数据分别进行至少两次的前向识别以及后向识别,得到前向识别结果和后向识别结果;
[0164]
初始结果获取单元5032,用于利用全连接层将第一次识别的前向识别结果和后向识别结果进行合成,得到初始识别结果;
[0165]
修正结果获取单元5033,用于利用全连接层将第二次和第二次之后识别的,前向识别结果和后向识别结果进行合成得到修正识别结果。
[0166]
可选的,transformer识别单元5031包括:
[0167]
前向识别子单元,用于利用前向多部注意力模型对所述和弦音高特征数据进行前向识别,得到所述前向识别结果;
[0168]
后向识别子单元,用于利用后向多部注意力模型对所述和弦音高特征数据进行后向识别,得到所述后向识别结果。
[0169]
可选的,修正模块504包括:
[0170]
修正量计算单元5041,用于将所述修正识别结果输入至softmax逻辑回归模型中,所述softmax逻辑回归模型对所述修正识别结果进行加权平均化,得到和弦修正量;
[0171]
修正输出单元5042,用于根据所述和弦修正量对所述初步识别结果进行修正,得到和弦乐谱。
[0172]
可选的,本实施例中提出的和弦识别装置还包括:
[0173]
提取模型构建模块,用于预先收集具有人工标记的各种音频特征数据,将所述各种音频特征数据组成音频特征数据库,并利用所述音频特征数据库对机器学习算法进行训练,得到和弦音高数据提取模型,其中,所述音频特征数据包括节奏数据、音色数据、单音数据以及和弦数据。
[0174]
本发明实施例中提供的和弦识别方法,对音频文件中的和弦进行识别并输出和弦的乐谱,能够捕捉到和弦之间的相关性,提高了识别速度的同时,且进一步提高了对和弦识
别的准确度。
[0175]
上面图5和图6从模块化功能实体的角度对本发明实施例中的和弦识别装置进行详细描述,下面从硬件处理的角度对本发明实施例中和弦识别设备进行详细描述。
[0176]
图7是本发明实施例提供的一种和弦识别设备的结构示意图,该和弦识别设备700可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(central processing units,cpu)710(例如,一个或一个以上处理器)和存储器720,一个或一个以上存储应用程序733或数据732的存储介质730(例如一个或一个以上海量存储设备)。其中,存储器720和存储介质730可以是短暂存储或持久存储。存储在存储介质730的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对和弦识别设备700中的一系列指令操作。更进一步地,处理器710可以设置为与存储介质730通信,在和弦识别设备700上执行存储介质730中的一系列指令操作。
[0177]
和弦识别设备700还可以包括一个或一个以上电源740,一个或一个以上有线或无线网络接口750,一个或一个以上输入输出接口760,和/或,一个或一个以上操作系统731,例如windows serve,mac os x,unix,linux,freebsd等等。本领域技术人员可以理解,图7示出的和弦识别设备结构并不构成对和弦识别设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
[0178]
本发明还提供一种和弦识别设备,所述计算机设备包括存储器和处理器,存储器中存储有计算机可读指令,计算机可读指令被处理器执行时,使得处理器执行上述各实施例中的所述和弦识别方法的步骤。
[0179]
本发明还提供一种计算机可读存储介质,该计算机可读存储介质可以为非易失性计算机可读存储介质,该计算机可读存储介质也可以为易失性计算机可读存储介质,所述计算机可读存储介质中存储有指令,当所述指令在计算机上运行时,使得计算机执行所述和弦识别方法的步骤。
[0180]
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0181]
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read

only memory,rom)、随机存取存储器(random access memory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。
[0182]
以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文章

  • 日榜
  • 周榜
  • 月榜