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

交响乐曲自动创作方法、装置、设备及存储介质与流程

2021-07-09 11:19:00 来源:中国专利 TAG:交响 人工智能 乐曲 装置 创作


1.本发明涉及人工智能技术领域,尤其涉及一种交响乐曲自动创作方法、装置、设备及存储介质。


背景技术:

2.音乐是人们生活中不可或缺的一部分,在生活的方方面面均有其用途。近年来随着人们生活发展的变化,交响乐曲除了在音乐会上演奏,还有诸如游戏、影视配乐的使用用途。
3.但对于交响乐曲这种包含多个乐章的大型管弦乐曲,由于其曲式结构较为严谨,且声部较多,人工进行创作时十分耗费精力,创作时对乐器的选择也十分繁琐。现有的自动作曲技术大多是单旋律的自动创作或者第二声部的生成上,没有能够针对创作需求生成完整曲式的交响乐曲的自动创作方法。


技术实现要素:

4.本发明的主要目的在于解决现有的乐曲自动创作技术创作的乐曲难以根据用户的需求进行自动创作,且创作完整度较低的技术问题。
5.本发明第一方面提供了一种交响乐曲自动创作方法,包括:
6.获取待创作的交响乐曲的初始信息,其中,所述初始信息包括交响乐曲的曲式结构和所述交响乐曲的基本参数,所述曲式结构基于所述交响乐曲的类型确定;
7.根据所述基本参数,利用预设的乐曲片段生成算法生成所述交响乐曲的对应的多个片段单元,并将多个所述片段单元进行组合,得到多个乐曲片段,其中,所述片段单元包括若干个具有音调的音符序列;
8.根据音效反馈系统中的片段推荐算法,计算出多个所述乐曲片段中不同类型片段之间的拼接完整度,并基于所述拼接完整度从每种类型片段中选择所述拼接完整度较高的n个乐曲片段推送至用户使用的客户端;
9.根据用户的选择从每种类型片段中确定一个乐曲片段,并对确定的乐曲片段进行变换处理,得到所述交响乐曲。
10.可选的,在本发明第一方面的第一种实现方式中,所述基本参数包括节奏设计数据和音高跨度范围,所述根据所述基本参数,利用预设的乐曲片段生成算法生成所述交响乐曲的对应的多个片段单元,并将多个所述片段单元进行组合,得到多个乐曲片段包括:
11.根据所述节奏设计数据,利用所述乐曲片段生成算法中的节奏生成算法生成节奏片段,其中,所述节奏片段包括若干个音符序列;
12.根据所述音高跨度范围,利用所述乐曲片段生成算法中的音调生成算法,对所述节奏片段进行音调的调整处理,得到片段单元。
13.可选的,在本发明第一方面的第二种实现方式中,所述根据所述节奏设计数据,利用所述乐曲片段生成算法中的节奏生成算法生成节奏片段包括:
14.根据所述节奏设计数据中的单节节奏的节奏细胞设计参数,将音符进行组合处理,得到多个节奏细胞,其中,所述节奏细胞至少包括以下四种类型细胞:一拍细胞、二拍细胞、三拍细胞和四拍细胞;
15.根据所述节奏设计数据中的单节节奏时值,从四种类型细胞中选择至少两种细胞进行任意组合,生成节奏片段。
16.可选的,在本发明第一方面的第三种实现方式中,所述根据所述音高跨度范围,利用所述乐曲片段生成算法中的音调生成算法,对所述节奏片段进行音调的调整处理,得到片段单元包括:
17.根据所述音高跨度范围,通过分解和弦、连续级进、迂回上下和折返上下的处理方式,对所述节奏片段中的每个音符序列的音调进行调整,得到片段单元。
18.可选的,在本发明第一方面的第四种实现方式中,所述根据所述基本参数,利用预设的乐曲片段生成算法生成所述交响乐曲的对应的多个片段单元,并将多个所述片段单元进行组合,得到多个乐曲片段包括:
19.根据所述基本参数,将所述多个片段单元进行叠加,得到多声部的片段单元;
20.将所述多声部片段单元进行拼接,得到多个乐曲片段。
21.可选的,在本发明第一方面的第五种实现方式中,在所述获取待创作的交响乐曲的初始信息之前,还包括:
22.获取现有的交响乐曲的乐曲信息,将所述乐曲信息组成乐曲训练集,其中,所述乐曲信息包括曲谱;
23.利用所述乐曲训练集对深度学习算法进行训练,得到片段推荐算法。
24.可选的,在本发明第一方面的第六种实现方式中,所述根据用户的选择从每种类型片段中确定一个乐曲片段,并对确定的乐曲片段进行变换处理,得到所述交响乐曲包括:
25.对确定的乐曲片段进行直接重复、配器变化或复调变化,得到变化乐曲片段;
26.将确定的乐曲片段和所述变化乐曲片段进行拼接,得到所述交响乐曲。
27.本发明第二方面提供了一种交响乐曲自动创作装置,包括:
28.获取模块,用于获取待创作的交响乐曲的初始信息,其中,所述初始信息包括交响乐曲的曲式结构和所述交响乐曲的基本参数,所述曲式结构基于所述交响乐曲的类型确定;
29.乐曲片段生成模块,用于根据所述基本参数,利用预设的乐曲片段生成算法生成所述交响乐曲的对应的多个片段单元,并将多个所述片段单元进行组合,得到多个乐曲片段,其中所述片段单元为若干具有音调的音符序列;
30.反馈模块,用于根据音效反馈系统中的片段推荐算法,计算出多个所述乐曲片段中不同类型片段之间的拼接完整度,并基于所述拼接完整度从每种类型片段中选择所述拼接完整度较高的n个乐曲片段推送至用户使用的客户端;
31.乐曲输出模块,用于根据用户的选择从每种类型片段中确定一个乐曲片段,并对确定的乐曲片段进行变换处理,得到所述交响乐曲。
32.可选的,在本发明第二方面的第一种实现方式中,所述乐曲片段生成模块包括:
33.节奏生成单元,用于根据所述节奏设计数据,利用所述乐曲片段生成算法中的节奏生成算法生成节奏片段,其中,所述节奏片段包括若干个音符序列;
34.根据所述音高跨度范围,利用所述乐曲片段生成算法中的音调生成算法,对所述节奏片段进行音调的调整处理,得到片段单元。
35.可选的,在本发明第二方面的第二种实现方式中,所述节奏生成单元包括:
36.节奏细胞组合子单元,用于根据所述节奏设计数据中的单节节奏的节奏细胞设计参数,将音符进行组合处理,得到多个节奏细胞,其中,所述节奏细胞至少包括以下四种类型细胞:一拍细胞、二拍细胞、三拍细胞和四拍细胞;
37.节奏片段生成子单元,用于根据所述节奏设计数据中的单节节奏时值,从四种类型细胞中选择至少两种细胞进行任意组合,生成节奏片段。
38.可选的,在本发明第二方面的第三种实现方式中,所述音调生成单元具体用于根据所述音高跨度范围,通过分解和弦、连续级进、迂回上下和折返上下的处理方式,对所述节奏片段中的每个音符序列的音调进行调整,得到片段单元。
39.可选的,在本发明第二方面的第四种实现方式中,所述乐曲片段生成模块包括:
40.声部生成单元,用于根据所述基本参数,将所述多个片段单元进行叠加,得到多声部的片段单元;
41.乐曲片段生成单元,用于将所述多声部片段单元进行拼接,得到多个乐曲片段。
42.可选的,在本发明第二方面的第五种实现方式中,所述反馈模块还包括:
43.片段推荐算法单元,用于获取现有的交响乐曲的乐曲信息,将所述乐曲信息组成乐曲训练集,其中,所述乐曲信息包括曲谱;利用所述乐曲训练集对深度学习算法进行训练,得到片段推荐算法;
44.反馈单元,用于基于所述片段推荐算法单元计算出的拼接完整度从每种类型片段中选择所述拼接完整度较高的n个乐曲片段推送至用户使用的客户端。
45.可选的,在本发明第二方面的第六种实现方式中,所述乐曲输出模块包括:
46.片段变化单元,用于对确定的乐曲片段进行直接重复、配器变化或复调变化,得到变化乐曲片段;
47.拼接单元,用于将确定的乐曲片段和所述变化乐曲片段进行拼接,得到所述交响乐曲。
48.本发明第三方面提供了一种交响乐曲自动创作设备,包括:存储器和至少一个处理器,所述存储器中存储有指令;所述至少一个处理器调用所述存储器中的所述指令,以使得所述交响乐曲自动创作设备执行上述的交响乐曲自动创作方法。
49.本发明的第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述的交响乐曲自动创作方法。
50.本发明提供的技术方案中,交响乐曲自动创作方法包括:获取待创作的交响乐曲的初始信息,其中,初始信息包括交响乐曲的曲式结构和交响乐曲的基本参数,所述曲式结构基于所述交响乐曲的类型确定;根据基本参数,利用预设的乐曲片段生成算法生成交响乐曲的对应的多个片段单元,并将多个片段单元进行组合,得到多个乐曲片段,其中所述片段单元为若干具有音调的音符序列;根据音效反馈系统中的片段推荐算法,计算出多个乐曲片段中不同类型片段之间的拼接完整度,并基于拼接完整度从每种类型片段中选择拼接完整度较高的n个乐曲片段推送至用户使用的客户端;根据用户的选择从每种类型片段中确定一个乐曲片段,并对确定的乐曲片段进行变换处理,得到所述交响乐曲。可以针对用户
的创作需求自动生成符合用户心理预期的曲式结构完整的交响乐曲。
附图说明
51.图1为本发明实施例中交响乐曲自动创作方法的一个实施例示意图;
52.图2为本发明实施例中交响乐曲自动创作方法的另一个实施例示意图;
53.图3为本发明实施例中生成的一段节奏片段的示意图;
54.图4为本发明实施例中交响乐曲自动创作方法的另一个实施例示意图;
55.图5为本发明实施例中交响乐曲自动创作方法的另一个实施例示意图;
56.图6为本发明实施例中节奏细胞的形态种类示意图;
57.图7本发明实施例中交响乐曲自动创作装置的一个实施例示意图;
58.图8为本发明实施例中交响乐曲自动创作装置的另一个实施例示意图;
59.图9为本发明实施例中交响乐曲自动创作设备的一个实施例示意图。
具体实施方式
60.本发明实施例提供了一种交响乐曲自动创作方法、装置、设备及存储介质,用于实现交响乐的自动创作。可以针对用户的创作需求自动生成符合用户心理预期的曲式结构完整的交响乐曲。
61.本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”或“具有”及其任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
62.为便于理解,下面对本发明实施例的具体流程进行描述,请参阅图1,本发明实施例中交响乐曲自动创作方法的一个实施例包括:
63.101、获取待创作的交响乐曲的初始信息中的交响乐曲的曲式结构和交响乐曲的基本参数;
64.可以理解的是,本发明的执行主体可以为交响乐曲自动创作装置,还可以是终端或者服务器,具体此处不做限定。本发明实施例以服务器为执行主体为例进行说明。
65.在本步骤中,通过与用户的交互获取待创作的交响乐的初始信息,初始信息包括曲式结构以及交响乐曲的基本参数,其中,所述曲式结构基于所述交响乐曲的类型确定。
66.下面,以具体的交响乐创作过程为例对本实施例中的步骤进行说明,通过用户的输入或选择,获取待创作的交响乐曲的初始信息,初始信息包括乐曲的曲式结构和交响乐曲的基本参数,基本参数还包括有乐曲的情绪风格、节拍速度和交响乐曲各曲式结构部分的长度等信息。例如,用户当前需要创作的交响曲式为奏鸣曲式时,则在本实施例中提供的软件或者网页等界面中选中奏鸣曲式,并输入或选择在当前需要创作的情绪风格、节拍速度等信息。其中,情绪风格包括慷慨激昂的、舒缓轻松、忧郁低沉等等;节拍速度包括快板、中板、慢板等。各曲式结构部分的长度信息包括各曲式结构的小节数。由于奏鸣曲式中包括
有呈示部,展开部,再现部三个部分,故进一步地,用户还需要继续选择这三部分每部分的长度,也就是需要创作的小节数。
67.102、根据基本参数,利用预设的乐曲片段生成算法生成交响乐曲的对应的多个片段单元,并将多个片段单元进行组合,得到多个乐曲片段;
68.接下来,根据上一步骤中获取到的基本参数,使用预设的乐曲片段生成算法生成所述交响乐曲的多个片段单元,其中所述片段单元包括若干个具有音调的音符序列。
69.以奏鸣曲式为例,首先对呈示部这一部分进行片段单元的生成,所述的乐曲生成算法能够根据乐曲的情绪风格、节拍速度等基本参数信息自动生成与所述基本参数信息相关的片段单元。
70.具体地,所述的乐曲生成算法根据前述获得到的基本参数需要对所述片段单元进行节奏和音调的生成。根据基本参数需求,每次生成的片段单元的长度可以为一个小节或几个小节。这些片段单元中包括节奏和音高相同但演奏使用的乐器不同、或节奏相同、音高以及演奏使用的乐器均有改变的节奏片段。获得多个所述的片段单元后,将多个所述片段单元进行组合,具体地,组合拼接还包括叠加以及拼接,组合后得到多个针对呈示部所生成的乐曲片段。
71.103、根据音效反馈系统中的片段推荐算法,计算出多个乐曲片段中不同类型片段之间的拼接完整度,并基于拼接完整度从每种类型片段中选择拼接完整度较高的n个乐曲片段推送至用户使用的客户端;
72.获取上步骤中获得的多个针对呈示部所生成的乐曲片段后,使用预先训练好的片段推荐算法对获得到的多个乐曲片段进行识别并计算出每个乐曲片段中各片段单元之间的拼接完整度。其中,每个片段单元之间的拼接完整度包括各片段单元之间衔接的部分是否衔接良好,无音高或配器等的突变等。
73.利用片段推荐算法计算出的拼接完整度,将这些乐曲片段按照拼接完整度进行排列,对拼接完整度排在前n位的乐曲片段进行试听音频的生成,并按照拼接完整度的顺序将试听音频推送给用户使用的客户端,以便用户根据拼接完整度的打分以及试听音频进行选择。
74.104、根据用户的选择从每种类型片段中确定一个乐曲片段,并对确定的乐曲片段进行变换处理,得到交响乐曲。
75.在用户根据拼接完整度的打分以及试听音频对乐曲片段进行选择后,获得一个确定的乐曲片段,也就是说,此时针对呈示部的创作已经完成。
76.根据奏鸣曲式的特点,呈示部、展开部以及再现部中都有与呈示部中相同或相似的部分,故可以根据已创作完成的呈示部进行变换,将选中的乐曲片段以及获得到的变换处理后的乐曲片段进行拼接,获得到完整的交响乐曲。随后,可以通过用户的选择,进行曲谱以及交响乐曲音频的输出。
77.本发明实施例中,针对获取到的待创作的交响乐曲的初始信息,自动生成符合用户心理预期的、曲式结构完整的交响乐曲。
78.请参阅图2以及图3,本发明实施例中交响乐曲自动创作方法的另一个实施例包括:
79.201、获取待创作的交响乐曲的初始信息中的交响乐曲的曲式结构和交响乐曲的
基本参数;
80.其中,所述曲式结构基于所述交响乐曲的类型确定;以具体的交响乐创作过程为例对本实施例中的步骤进行说明,通过用户的输入或选择,获取待创作的交响乐曲的初始信息,所述初始信息包括乐曲的曲式结构和所述交响乐曲的基本参数,所述基本参数还包括有乐曲的情绪风格、节拍速度和所述交响乐曲各曲式结构部分的长度等信息。例如,用户当前需要创作的交响曲式为奏鸣曲式时,则在本实施例中提供的软件或者网页等界面中选中奏鸣曲式,并输入或选择在当前需要创作的情绪风格、节拍速度等信息。其中,情绪风格包括慷慨激昂的、舒缓轻松、忧郁低沉等等;节拍速度包括快板、中板、慢板等。
81.各曲式结构部分的长度信息包括各曲式结构的小节数,不同的长度信息包括的小节数也不同。由于奏鸣曲式中包括有呈示部,展开部,再现部三个部分,故进一步地,用户还需要继续选择这三部分每部分的长度,也就是需要创作的小节数。
82.更进一步的,用户可以在本步骤中输入或选择节奏设计数据和音高跨度范围,其中,音高跨度范围可以是待创作的交响乐曲中的音域范围;从而更好地确定用户的需求风格,从而使得本实施例中生成的交响乐曲可以更加贴近用户的心理预期。
83.202、根据节奏设计数据,利用乐曲片段生成算法中的节奏生成算法生成节奏片段;
84.首先建立节奏生成算法,所述的节奏生成算法是根据步骤201中获取到的节奏设计数据对节奏进行生成的算法。其中,节奏设计数据中包括有用户想要生成的节奏型的信息,以及全音符的时值对应的时长等信息。
85.在具体的操作中,首先将音符按照时值的不同进行节奏编码,具体的编码对应关系如下表1所示:
86.表1节奏编码表
87.音符种类对应编码全音符16附点二分音符12二分音符8附点四分音符6四分音符4八分音符2十六分音符1
88.以奏鸣曲式为例,首先根据节奏设计数据对呈示部这一部分进行片段单元中节奏片段的生成,所述的节奏生成算法根据想要生成的节奏型的信息,以及全音符的时值对应的时长等信息需求,利用编码生成符合用户心理预期的节奏片段每次生成的节奏片段的长度可以为一个小节或几个小节。具体地,若用户需要生成音值均分型的一段节奏,则按照获取到的节奏设计数据利用节奏编码进行节奏的生成,具体地,可以生成一段如图3所示的节奏编码为[2,2,2,2,2,2,4]的一段节奏片段。
[0089]
203、根据音高跨度范围,利用乐曲片段生成算法中的音调生成算法,对节奏片段进行音调的调整处理,得到片段单元;
[0090]
根据用户输入的音高跨度范围,对步骤202中获得到的节奏片段进行音调的调整
处理,具体地,对生成的节奏片段中的音符进行音高数值的赋值,将获得到的节奏片段中第一个音符随机在一定预设范围内随机选定一个音高作为初始音高,随后,根据不同的音调生成规则对节奏片段中的音符序列中的不含有音调的音符按顺序进行音调的调整,直到对当前节奏片段的音调调整完毕,获得到片段单元。
[0091]
204、将多个片段单元进行组合,得到多个乐曲片段;
[0092]
在上一步骤中获得多个所述的片段单元后,将多个所述片段单元进行组合,具体地,组合拼接还包括叠加以及拼接;
[0093]
所述组合拼接中的叠加,主要是为了对待生成的交响乐曲进行多声部的生成。具体地,根据前述可知,上步骤中获取到的多个片段单元中包括节奏相似但音高不同的多个片段单元,将这些片段单元的按照节奏点进行叠加,同时给不同的片段单元采用不同的乐器配器,从而得到数段多声部的片段单元。
[0094]
随后将这些多声部的片段单元按照获取到的呈示部的小节长度进行拼接,直到获得多个针对呈示部所生成的乐曲片段。
[0095]
205、根据音效反馈系统中的片段推荐算法,计算出多个乐曲片段中不同类型片段之间的拼接完整度,并基于拼接完整度从每种类型片段中选择拼接完整度较高的n个乐曲片段推送至用户使用的客户端;
[0096]
获取上步骤中获得的多个针对呈示部所生成的乐曲片段后,使用预先训练好的片段推荐算法对获得到的多个乐曲片段进行识别并计算出每个乐曲片段中各片段单元之间的拼接完整度。其中,每个片段单元之间的拼接完整度包括各片段单元之间衔接的部分是否衔接良好,无音高或配器等的突变等。
[0097]
利用片段推荐算法计算出的拼接完整度,将这些乐曲片段按照拼接完整度进行排列,对拼接完整度排在前n位的乐曲片段进行试听音频的生成,并按照拼接完整度的顺序将试听音频推送给用户使用的客户端,以便用户根据拼接完整度的打分以及试听音频进行选择。
[0098]
206、根据用户的选择从每种类型片段中确定一个乐曲片段,并对确定的乐曲片段进行变换处理,得到交响乐曲。
[0099]
在用户根据拼接完整度的打分以及试听音频对乐曲片段进行选择后,获得一个确定的乐曲片段,也就是说,此时针对呈示部的创作已经完成。根据奏鸣曲式的特点,呈示部包括主部、连接段、副部及小结尾;展开部中会有将主调(也就是呈示部中的主部的曲调)在不同的调性上进行呈现的片段;再现部中具有将主部在原调上再现的部分。故可以根据相应部分对选定的乐曲片段进行变换,将选中的乐曲片段以及获得到的变换处理后的乐曲片段进行拼接,获得到完整的交响乐曲。随后,可以通过用户的选择,进行曲谱以及交响乐曲音频的输出。
[0100]
本发明实施例中,针对获取到的待创作的交响乐曲的初始信息,自动生成符合用户心理预期的、曲式结构完整的交响乐曲。
[0101]
请参阅图4,本发明实施例中交响乐曲自动创作方法的另一个实施例包括:
[0102]
401、获取待创作的交响乐曲的初始信息中的交响乐曲的曲式结构和交响乐曲的基本参数;
[0103]
可以理解的是,本发明的执行主体可以为交响乐曲自动创作装置,还可以是终端
或者服务器,具体此处不做限定。本发明实施例以服务器为执行主体为例进行说明。
[0104]
在本步骤中,通过与用户的交互获取待创作的交响乐的初始信息,初始信息包括曲式结构以及交响乐曲的基本参数,其中,所述曲式结构基于所述交响乐曲的类型确定。
[0105]
402、根据基本参数,利用预设的乐曲片段生成算法生成交响乐曲的对应的多个片段单元,并将多个片段单元进行组合,得到多个乐曲片段;
[0106]
接下来,根据上一步骤中获取到的基本参数,使用预设的乐曲片段生成算法生成所述交响乐曲的多个片段单元,其中所述片段单元包括若干个具有音调的音符序列。
[0107]
以奏鸣曲式为例,首先对呈示部这一部分进行片段单元的生成,所述的乐曲生成算法能够根据乐曲的情绪风格、节拍速度等基本参数信息自动生成与所述基本参数信息相关的片段单元。
[0108]
具体地,所述的乐曲生成算法根据前述获得到的基本参数需要对所述片段单元进行节奏和音调的生成。根据基本参数需求,每次生成的片段单元的长度可以为一个小节或几个小节。这些片段单元中包括节奏和音高相同但演奏使用的乐器不同、或节奏相同、音高以及演奏使用的乐器均有改变的节奏片段。获得多个所述的片段单元后,将多个所述片段单元进行组合,具体地,组合拼接还包括叠加以及拼接,组合后得到多个针对呈示部所生成的乐曲片段。
[0109]
403、获取现有的交响乐曲的乐曲信息,将乐曲信息组成乐曲训练集,利用乐曲训练集对深度学习算法进行训练,得到片段推荐算法;
[0110]
首先获取多个交响乐音乐样本,其中使用人工标注的方法对交响乐进行标注,组成交响乐训练集,其中所述的交响乐训练集中包括有乐曲的完整度信息。
[0111]
将所述交响乐训练集中的数据划分为训练集、验证集和测试集三个部分,利用这些信息对深度学习算法进行训练,具体地,在本实施例中对深度神经网络进行训练,得到训练好的片段推荐算法。
[0112]
404、根据片段推荐算法,计算出多个乐曲片段中不同类型片段之间的拼接完整度,并基于拼接完整度从每种类型片段中选择拼接完整度较高的n个乐曲片段推送至用户使用的客户端;
[0113]
利用训练好的片段推荐算法获取上步骤中获得的多个针对呈示部所生成的乐曲片段后进行识别并计算出每个乐曲片段中各片段单元之间的拼接完整度。其中,每个片段单元之间的拼接完整度包括各片段单元之间衔接的部分是否衔接良好,无音高或配器等的突变等。
[0114]
随后将这些乐曲片段按照拼接完整度进行排列,对拼接完整度排在前n位的乐曲片段进行试听音频的生成,并按照拼接完整度的顺序将试听音频推送给用户使用的客户端,以便用户根据拼接完整度的打分以及试听音频进行选择。
[0115]
405、根据用户的选择从每种类型片段中确定一个乐曲片段,并对确定的乐曲片段进行变换处理,得到交响乐曲。
[0116]
在用户根据拼接完整度的打分以及试听音频对乐曲片段进行选择后,获得一个确定的乐曲片段,也就是说,此时针对呈示部的创作已经完成。
[0117]
根据奏鸣曲式的特点,呈示部、展开部以及再现部中都有与呈示部中相同或相似的部分,故可以根据已创作完成的呈示部进行变换,将选中的乐曲片段以及获得到的变换
处理后的乐曲片段进行拼接,获得到完整的交响乐曲。随后,可以通过用户的选择,进行曲谱以及交响乐曲音频的输出。
[0118]
本发明实施例中,针对获取到的待创作的交响乐曲的初始信息,自动生成符合用户心理预期的、曲式结构完整的交响乐曲。
[0119]
请参阅图5以及图6,本发明实施例中交响乐曲自动创作方法的另一个实施例包括:
[0120]
501、获取待创作的交响乐曲的初始信息中的交响乐曲的曲式结构和交响乐曲的基本参数;
[0121]
其中,所述曲式结构基于所述交响乐曲的类型确定;
[0122]
以具体的交响乐创作过程为例对本实施例中的步骤进行说明,通过用户的输入或选择,获取待创作的交响乐曲的初始信息,所述初始信息包括乐曲的曲式结构和所述交响乐曲的基本参数,所述基本参数还包括有乐曲的情绪风格、节拍速度和所述交响乐曲各曲式结构部分的长度等信息。例如,用户当前需要创作的交响曲式为奏鸣曲式时,则在本实施例中提供的软件或者网页等界面中选中奏鸣曲式,并输入或选择在当前需要创作的情绪风格、节拍速度等信息。其中,情绪风格包括慷慨激昂的、舒缓轻松、忧郁低沉等等;节拍速度包括快板、中板、慢板等。各曲式结构部分的长度信息包括各曲式结构的小节数。由于奏鸣曲式中包括有呈示部,展开部,再现部三个部分,故进一步地,用户还需要继续选择这三部分每部分的长度,也就是需要创作的小节数。
[0123]
更进一步的,用户可以在本步骤中输入或选择节奏设计数据和音高跨度范围,其中,音高跨度范围可以是待创作的交响乐曲中的音域范围;从而更好地确定用户的需求风格,从而使得本实施例中生成的交响乐曲可以更加贴近用户的心理预期。
[0124]
502、根据节奏设计数据中的单节节奏的节奏细胞设计参数,将音符进行组合处理,得到多个四种类型的节奏细胞;根据节奏设计数据中的单节节奏时值,从四种类型细胞中选择至少两种细胞进行任意组合,生成节奏片段;
[0125]
首先,获取上一步骤中获得的节奏数据中包含的单节节奏的节奏细胞设计参数,也就是节奏细胞的时值,将音符进行组合处理,得到多个节奏细胞,具体地,请参照图6,其中根据节奏细胞的时值长度,分为不同的节奏细胞,分别为一拍细胞,二拍细胞,三拍细胞,四拍细胞四种类型。且每一种细胞有不同的子细胞形态,例如一拍细胞中具有一个四分音符构成的子细胞、两个八分音符构成的子细胞等子细胞形态。
[0126]
在节奏生成的过程中,根据节奏设计数据中的单节节奏时值,任意从四种细胞中,抽取子细胞进行组合,得到所需单节节奏时值长度的节奏片段。在具体的操作中,还要将音符按照时值的不同进行节奏编码,具体的编码如上述的实施例中所述,在此不再赘述。
[0127]
503、根据音高跨度范围,通过分解和弦、连续级进、迂回上下和折返上下的处理方式,对节奏片段中的每个音符序列的音调进行调整,得到片段单元;
[0128]
根据用户输入的音高跨度范围,对步骤502中获得到的节奏片段进行音调的调整处理,具体地,对生成的节奏片段中的音符进行音高数值的赋值,将获得到的节奏片段中第一个音符随机在一定预设范围内随机选定一个音高作为初始音高,随后,根据不同的音调生成规则对节奏片段中的音符序列中的音符按顺序进行音调的调整,直到对当前节奏片段的音调调整完毕,获得到片段单元。
[0129]
对音调进行调整的方式包括分解和弦、连续级进、迂回上下和折返上下等,具体地,音调生成算法如下:
[0130]
(1)如果音符索引i=1,则音符采取55

75midi数值中的任意一个;
[0131]
(2)如果音符索引i!=1,则音符i与音符i

1之间可以有如下几种关系:
[0132]

分解和弦:
[0133]
音符音高序列表达为:p[i]=p[i] 3||p[i]=p[i] 4;
[0134]

连续级进:
[0135]
音符音高序列表达为:p[i]=p[i] 2;
[0136]

迂回上下:
[0137]
音符音高序列表达为:p[i]=p[i] randint(2,3)||p[i]=p[i]

randint(2,3);
[0138]

折返上下:
[0139]
音符音高序列表达为:
[0140]
if i<=4:p[i]=p[i] randint(2,3)else:p[i]=p[i]

randint(2,3)。
[0141]
当节奏、音调生成完毕后,按照生成的曲谱对其进行乐器的随机匹配,生成多个片段单元。
[0142]
504、根据基本参数,将多个片段单元进行叠加,得到多声部的片段单元;将多声部片段单元进行拼接,得到多个乐曲片段;
[0143]
获得多个所述的片段单元后,将多个所述片段单元进行组合,具体地,组合拼接还包括叠加以及拼接;
[0144]
对于交响乐曲,一般具有多个声部,故获得到多个所述片段单元后,将多个获得到的片段单元进行叠加,得到具有多声部的片段单元,再将获得到的多声部的片段单元进行拼接,得到多个针对呈示部所生成的乐曲片段。
[0145]
505、获取现有的交响乐曲的乐曲信息,将乐曲信息组成乐曲训练集,利用乐曲训练集对深度学习算法进行训练,得到片段推荐算法;
[0146]
首先获取多个交响乐音乐样本,其中使用人工标注的方法对交响乐进行标注,组成交响乐训练集,其中所述的交响乐训练集中包括有乐曲的完整度信息。
[0147]
将所述交响乐训练集中的数据划分为训练集、验证集和测试集三个部分,利用这些信息对深度学习算法进行训练,具体地,在本实施例中对深度神经网络进行训练,得到训练好的片段推荐算法。
[0148]
506、根据音效反馈系统中的片段推荐算法,计算出多个乐曲片段中不同类型片段之间的拼接完整度,并基于拼接完整度从每种类型片段中选择拼接完整度较高的n个乐曲片段推送至用户使用的客户端;
[0149]
利用训练好的片段推荐算法获取上步骤中获得的多个针对呈示部所生成的乐曲片段后进行识别并计算出每个乐曲片段中各片段单元之间的拼接完整度。其中,每个片段单元之间的拼接完整度包括各片段单元之间衔接的部分是否衔接良好,无音高或配器等的突变等。
[0150]
随后将这些乐曲片段按照拼接完整度进行排列,对拼接完整度排在前n位的乐曲片段进行试听音频的生成,并按照拼接完整度的顺序将试听音频推送给用户使用的客户端,以便用户根据拼接完整度的打分以及试听音频进行选择。
[0151]
507、对确定的乐曲片段进行直接重复、配器变化或复调变化,得到变化乐曲片段;将确定的乐曲片段和变化乐曲片段进行拼接,得到交响乐曲。
[0152]
在用户根据拼接完整度的打分以及试听音频对乐曲片段进行选择后,获得一个确定的乐曲片段,也就是说,此时针对呈示部的创作已经完成。根据奏鸣曲式的特点,呈示部包括主部、连接段、副部及小结尾;展开部中会有将主调(也就是呈示部中的主部的曲调)在不同的调性上进行呈现的片段;再现部中具有将主部在原调上再现的部分。故可以采用预先设置好的段落变奏推荐系统,通过智能算法采用合适的方法,根据相应部分,采用直接重复、配器变化、复调变化等不同的手法对选定的乐曲片段进行变换,使得各乐曲片段之间互相关联却又同中有异。
[0153]
将选中的乐曲片段以及获得到的变换处理后的乐曲片段进行拼接,获得到完整的交响乐曲。随后,可以通过用户的选择,进行曲谱以及交响乐曲音频的输出。
[0154]
本发明实施例中,针对获取到的待创作的交响乐曲的初始信息,自动生成符合用户心理预期的、多声部的曲式结构完整的交响乐曲。
[0155]
上面对本发明实施例中交响乐曲自动创作方法进行了描述,下面对本发明实施例中交响乐曲自动创作装置进行描述,请参阅图7,本发明实施例中交响乐曲自动创作装置一个实施例包括:
[0156]
获取模块701,用于获取待创作的交响乐曲的初始信息,其中,所述初始信息包括交响乐曲的曲式结构和所述交响乐曲的基本参数,所述曲式结构基于所述交响乐曲的类型确定;
[0157]
乐曲片段生成模块702,用于根据所述基本参数,利用预设的乐曲片段生成算法生成所述交响乐曲的对应的多个片段单元,并将多个所述片段单元进行组合,得到多个乐曲片段,其中所述片段单元为若干具有音调的音符序列;
[0158]
反馈模块703,用于根据音效反馈系统中的片段推荐算法,计算出多个所述乐曲片段中不同类型片段之间的拼接完整度,并基于所述拼接完整度从每种类型片段中选择所述拼接完整度较高的n个乐曲片段推送至用户使用的客户端;
[0159]
乐曲输出模块704,用于根据用户的选择从每种类型片段中确定一个乐曲片段,并对确定的乐曲片段进行变换处理,得到所述交响乐曲。
[0160]
本发明实施例中,能够针对获取到的待创作的交响乐曲的初始信息,自动生成符合用户心理预期的、曲式结构完整的交响乐曲。
[0161]
请参阅图8,本发明实施例中交响乐曲自动创作装置的另一个实施例包括:
[0162]
获取模块701,用于获取待创作的交响乐曲的初始信息,其中,所述初始信息包括交响乐曲的曲式结构和所述交响乐曲的基本参数,所述曲式结构基于所述交响乐曲的类型确定;
[0163]
乐曲片段生成模块702,用于根据所述基本参数,利用预设的乐曲片段生成算法生成所述交响乐曲的对应的多个片段单元,并将多个所述片段单元进行组合,得到多个乐曲片段,其中所述片段单元为若干具有音调的音符序列;
[0164]
反馈模块703,用于根据音效反馈系统中的片段推荐算法,计算出多个所述乐曲片段中不同类型片段之间的拼接完整度,并基于所述拼接完整度从每种类型片段中选择所述拼接完整度较高的n个乐曲片段推送至用户使用的客户端;
[0165]
乐曲输出模块704,用于根据用户的选择从每种类型片段中确定一个乐曲片段,并对确定的乐曲片段进行变换处理,得到所述交响乐曲。
[0166]
可选的,所述乐曲片段生成模块702包括:
[0167]
节奏生成单元7021,用于根据所述基本参数,利用所述乐曲片段生成算法中的节奏生成算法生成节奏片段,其中,所述节奏片段为若干音符序列;
[0168]
音调生成单元7022,用于利用所述乐曲片段生成算法中的音调生成算法,根据所述基本参数,对所述节奏片段进行音调的生成,得到片段单元。
[0169]
可选的,所述节奏生成单元7021包括:
[0170]
节奏细胞分类子单元,用于将音符进行随机组合得到多个节奏细胞,根据所述节奏细胞的时值将所述多个节奏细胞分成一拍细胞,二拍细胞,三拍细胞,四拍细胞四种细胞类型;
[0171]
节奏细胞组合子单元,用于根据所述基本参数,从所述四种细胞类型中任意抽取所述节奏细胞进行组合,生成所述节奏片段。
[0172]
可选的,所述音调生成单元7022具体用于:
[0173]
根据所述基本参数,利用所述音调生成算法,对所述节奏片段中的音符序列的音调进行改变,得到片段单元,其中,所述音调生成算法包括对音符序列进行分解和弦、连续级进、迂回上下以及折返上下处理。
[0174]
可选的,所述乐曲片段生成模块702还用于:
[0175]
根据所述基本参数,将所述多个片段单元进行叠加,得到多声部的片段单元,将所述多声部片段单元进行拼接,得到多个乐曲片段。
[0176]
可选的,所述反馈模块703包括:
[0177]
片段推荐算法单元7031,用于获取现有的交响乐曲的乐曲信息,将所述乐曲信息组成乐曲训练集,其中,所述乐曲信息包括曲谱;利用所述乐曲训练集对深度神经网络进行训练,得到片段推荐算法;
[0178]
反馈单元7032,用于基于所述片段推荐算法单元7031计算出的拼接完整度从每种类型片段中选择所述拼接完整度较高的n个乐曲片段推送至用户使用的客户端。
[0179]
可选的,所述乐曲输出模块704包括:
[0180]
片段变化单元7041,用于对确定的乐曲片段进行直接重复、配器变化或复调变化,得到变化乐曲片段;
[0181]
拼接单元7042,用于将确定的乐曲片段和所述变化乐曲片段进行拼接,得到所述交响乐曲。
[0182]
本发明实施例中,能够针对获取到的待创作的交响乐曲的初始信息,自动生成符合用户心理预期的、曲式结构完整的交响乐曲。
[0183]
上面图7和图8从模块化功能实体的角度对本发明实施例中的交响乐曲自动创作装置进行详细描述,下面从硬件处理的角度对本发明实施例中交响乐曲自动创作设备进行详细描述。
[0184]
图9是本发明实施例提供的一种交响乐曲自动创作设备的结构示意图,该交响乐曲自动创作设备900可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(central processing units,cpu)910(例如,一个或一个以上处理器)和存储器
920,一个或一个以上存储应用程序933或数据932的存储介质930(例如一个或一个以上海量存储设备)。其中,存储器920和存储介质930可以是短暂存储或持久存储。存储在存储介质930的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对交响乐曲自动创作设备900中的一系列指令操作。更进一步地,处理器910可以设置为与存储介质930通信,在交响乐曲自动创作设备900上执行存储介质930中的一系列指令操作。
[0185]
交响乐曲自动创作设备900还可以包括一个或一个以上电源940,一个或一个以上有线或无线网络接口950,一个或一个以上输入输出接口960,和/或,一个或一个以上操作系统931,例如windows serve,mac os x,unix,linux,freebsd等等。本领域技术人员可以理解,图9示出的交响乐曲自动创作设备结构并不构成对交响乐曲自动创作设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
[0186]
本发明还提供一种交响乐曲自动创作设备,所述计算机设备包括存储器和处理器,存储器中存储有计算机可读指令,计算机可读指令被处理器执行时,使得处理器执行上述各实施例中的所述交响乐曲自动创作方法的步骤。
[0187]
本发明还提供一种计算机可读存储介质,该计算机可读存储介质可以为非易失性计算机可读存储介质,该计算机可读存储介质也可以为易失性计算机可读存储介质,所述计算机可读存储介质中存储有指令,当所述指令在计算机上运行时,使得计算机执行所述交响乐曲自动创作方法的步骤。
[0188]
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0189]
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read

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

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

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

相关文章

  • 日榜
  • 周榜
  • 月榜