信息处理方法、装置、电子设备及存储介质与流程

文档序号:26091025发布日期:2021-07-30 17:59阅读:103来源:国知局
信息处理方法、装置、电子设备及存储介质与流程

本申请涉及数字音乐领域,尤其涉及一种信息处理方法、装置、电子设备及存储介质。



背景技术:

自信息革命以来,音乐和多媒体的传播方式在短时间内发生了天翻地覆的变化。这种质的变化使得市场对各类音乐的需求呈现了爆发式的增长:无论是以流行音乐或艺术创作为主要元素的单曲、专辑、mv、卡拉ok,还是使用音乐作为辅助的短视频、广告、动画、宣传片和影视作品,抑或是使用音乐作为背景内容的电台、主播、公共空间音乐,都需要大量的原创音乐。旋律是生成高质量原创音乐的一个构成要素,如何基于给定的节奏自动化的生成旋律,成为亟待解决的技术问题。



技术实现要素:

本申请提供了一种信息处理方法、装置、电子设备及存储介质。

根据本申请的一方面,提供了一种信息处理方法,包括:

获取节奏信息;

根据所述节奏信息及预先训练好的旋律生成模型,得到对应所述节奏信息的音高信息;

根据所述节奏信息及所述音高信息进行合成处理,得到旋律信息。

根据本申请的另一方面,提供了一种信息处理装置,包括:

节奏获取模块,用于获取节奏信息;

音高生成模块,用于根据所述节奏信息及预先训练好的旋律生成模型,得到对应所述节奏信息的音高信息;

合成模块,用于根据所述节奏信息及所述音高信息进行合成处理,得到旋律信息。

根据本申请的另一方面,提供了一种电子设备,包括:

至少一个处理器;以及

与该至少一个处理器通信连接的存储器;其中,

该存储器存储有可被该至少一个处理器执行的指令,该指令被该至少一个处理器执行,以使该至少一个处理器能够执行本申请任意一实施例所提供的方法。

根据本申请的另一方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,该计算机指令用于使该计算机执行本申请任意一项实施例所提供的方法。

采用本申请,可以获取节奏信息,根据所述节奏信息及预先训练好的旋律生成模型,得到对应所述节奏信息的音高信息,根据所述节奏信息及所述音高信息进行合成处理,得到旋律信息,从而,可以基于给定的节奏自动化的生成旋律。

应当理解,本部分所描述的内容并非旨在标识本申请的实施例的关键或重要特征,也不用于限制本申请的范围。本申请的其它特征将通过以下的说明书而变得容易理解。

附图说明

附图用于更好地理解本方案,不构成对本申请的限定。其中:

图1是根据本申请实施例的信息处理方法的流程示意图;

图2是根据本申请实施例的信息处理方法的一应用示例的系统流程示意图;

图3是根据本申请实施例的信息处理方法的一应用示例的seq2seq模型的示意图;

图4是根据本申请实施例的信息处理方法的一应用示例的给定节奏序列生成音高序列的示意图;

图5是根据本申请实施例的信息处理装置的组成结构示意图;

图6是用来实现本申请实施例的信息处理方法的电子设备的框图。

具体实施方式

以下结合附图对本申请的示范性实施例做出说明,其中包括本申请实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本申请的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。

本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。本文中术语“至少一种”表示多种中的任意一种或多种中的至少两种的任意组合,例如,包括a、b、c中的至少一种,可以表示包括从a、b和c构成的集合中选择的任意一个或多个元素。本文中术语“第一”、“第二”表示指代多个类似的技术用语并对其进行区分,并不是限定顺序的意思,或者限定只有两个的意思,例如,第一特征和第二特征,是指代有两类/两个特征,第一特征可以为一个或多个,第二特征也可以为一个或多个。

另外,为了更好的说明本申请,在下文的具体实施方式中给出了众多的具体细节。本领域技术人员应当理解,没有某些具体细节,本申请同样可以实施。在一些实例中,对于本领域技术人员熟知的方法、手段、元件和电路未作详细描述,以便于凸显本申请的主旨。

根据本申请的实施例,提供了一种信息处理方法,图1是根据本申请实施例的信息处理方法的流程示意图,该方法可以应用于信息处理装置,例如,该装置可以部署于终端或服务器或其它处理设备执行的情况下,可以执行节奏信息获取、音高信息生成、合成旋律等等。其中,终端可以为用户设备(ue,userequipment)、移动设备、蜂窝电话、无绳电话、个人数字处理(pda,personaldigitalassistant)、手持设备、计算设备、车载设备、可穿戴设备等。在一些可能的实现方式中,该方法还可以通过处理器调用存储器中存储的计算机可读指令的方式来实现。如图1所示,包括:

s101、获取节奏信息。

s102、根据所述节奏信息及预先训练好的旋律生成模型,得到对应所述节奏信息的音高信息。

一示例中,预先训练好的旋律生成模型,可以是神经网络(如基于“编码-解码”机制的反馈神经网络),通过该预先训练好的旋律生成模型可以对上述节奏信息进行特征提取,并利用得到的节奏特征生成对应的音高,并最终合成对应的旋律信息。

s103、根据所述节奏信息及所述音高信息进行合成处理,得到旋律信息。

一示例中,旋律信息是一系列音符沿时间分布的集合,每个音符均包涵音高和时长两个要素。其中,音高决定了这个音符的频率高低,时长则决定了这个音符将被弹奏多久。音符的时长属性在时间上的排列就是旋律的节奏,换言之,该旋律的节奏是组成旋律的音符的时长序列。

采用本申请,可以获取节奏信息,根据所述节奏信息及预先训练好的旋律生成模型,得到对应所述节奏信息的音高信息,根据所述节奏信息及所述音高信息进行合成处理,得到旋律信息,也就是说,可以将用户输入的节奏输入训练好的旋律生成模型中,以生成旋律中的音高,再将节奏和音高进行组合后,基于给定的节奏赋予音高,最终生成旋律,从而,实现了基于给定的节奏自动化的生成旋律。

一实施方式中,所述预先训练好的旋律生成模型包括:用于编码的第一子模型、及用于解码的第二子模型。所述根据所述节奏信息及预先训练好的旋律生成模型,得到对应所述节奏信息的音高信息,包括:将所述节奏信息输入所述第一子模型(第一子模型可以是编码器),通过所述第一子模型提取所述节奏信息对应的节奏特征信息;将所述节奏特征信息输入所述第二子模型(第二子模型可以是解码器),通过所述第二子模型对所述节奏特征信息进行解码,得到所述音高信息。

一实施方式中,所述获取节奏信息,包括:获取第一用户操作,从所述第一用户操作中提取检索关键词,根据所述检索关键词进行查询处理,得到所述节奏信息;或者,响应于第一用户操作,从所述第一用户操作中直接提取所述节奏信息。

一示例中,检索关键词为歌名,根据歌名去曲库中检索,以得到该节奏信息;另一示例中,用户手工输入该节奏信息,无需任何检索等额外处理在,可直接得到该节奏信息。也就是说,用户可以采用多种方式输入一段节奏信息,例如输入一首已有歌曲的歌名,以查询到对应该歌名的节奏信息;或者直接输入节奏信息。

一实施方式中,还包括:预先采集多个旋律样本信息;将所述多个旋律样本信息进行信息分离处理,得到构成每个旋律样本信息的节奏序列和音高序列;根据所述节奏序列及所述音高序列对旋律生成模型进行训练,以得到所述预先训练好的旋律生成模型。

一实施方式中,所述根据所述节奏信息及所述音高信息进行合成处理,得到旋律信息,包括:根据所述节奏信息及所述音高信息进行合成处理,得到音符的时长属性在时间上排列所生成的音符时长序列;将所述音符时长序列作为所述旋律信息。

应用示例:

深度学习方法已经在多个艺术创作领域得到了应用,如绘画风格迁移,小说创作等。音乐是一种重要的艺术形式,在这一艺术领域,一些基于深度学习的方法也已经被提出用于音乐创造。旋律是音乐的重要组成成分。通常,旋律是一系列音符沿时间分布的集合。每个音符均包涵音高和时长两个要素。音高决定了这个音符的频率高低,时长则决定了这个音符将被弹奏多久。音符的时长属性在时间上的排列就是旋律的节奏。

在作曲,即生成旋律的过程中,有多种可行的方式:1)先创作节奏,再为音符赋予音高;2)先创作旋律线(即有了大致的音高走向),再配上节奏;3)同时创作节奏和音高走向。

考虑到作曲是一项门槛较高的技能。一般需要作曲者具有扎实的乐理基础和丰富的作曲经验才能够完成曲子的创作,但是大多数用户为非专业人士,如何帮助非专利人士比较轻松地进行作曲?

针对上述问题,应用本申请实施例一应用示例的处理流程,针对非专业人士,可以自动化地为给定的节奏赋予音高并最终生成旋律,通过将节奏转换成一首优美的旋律,来实现自动化作曲,包括如下内容:

旋律是一系列音符沿时间分布的集合。每个音符均包涵音高和时长两个要素。音高决定了这个音符的频率高低,时长则决定了这个音符将被弹奏多久。音符的时长属性在时间上的排列就是旋律的节奏。根据节奏自动化生成旋律,如图2所示,包括:获取用户输入的节奏;将节奏输入训练好的旋律生成模型以生成旋律中的音高;将节奏和音高进行组合,得到最终的旋律。

一、获取用户输入的节奏

首先需要获取用户输入的节奏。旋律的节奏是组成旋律的音符的时长的序列。用户可以采用多种方式输入一段节奏,例如输入一首已有歌曲的歌名,或者直接输入节奏。当用户输入歌名时,将从数据库中根据此歌名找到该歌曲并提取该歌曲的节奏作为输入。当用户输入节奏时,则直接将用户输入的类似如下序列作为节奏:

[四分音符,八分音符,八分音符,四分音符……]

二、将节奏输入训练好的旋律生成模型以生成旋律中的音高

使用一个基于神经网络的旋律生成模型来对节奏进行处理,从节奏中提取特征,并利用该特征来生成旋律。这个旋律生成模型基于序列到序列(seq2seq)模型,是一种基于编码器-解码器思想的神经网络模型。如图3所示,它利用一个神经网络作为编码器,对输入的节奏序列进行编码,将这些输入的信息集成到一个定长的向量;之后,让另一个神经网络作为解码器,对这个向量进行解码,最后得到完整的输出序列。该seq2seq模型所针对的任务可以抽象为给定序列x=(x1,x2,x3,…,xn1)),希望得到相对应的输出序列y=(y1,y2,y3,…,yn2)),计算概率p(y1,y2,…,yn2|x1,x2,…,xn1)。

具体在给定节奏生成旋律的任务中,如图4所示,将节奏序列[四分音符,八分音符,八分音符,四分音符……]作为序列x。将音高序列[c,e,g,e……]作为序列y,使用一个反馈神经网络(rnn)或者其他神经网络作为编码器(encoder),使用一个rnn或者其他神经网络作为解码器(decoder)。使用编码器将节奏序列x=(x1,x2,x3,…,xn1)中的元素逐个输入到编码器模型中,并得到代表节奏序列信息的特征:

h=encoder(x)

h是代表节奏序列信息的特征。解码器利用h来解码生成每个音符对应的音高的分布:

p(y|x)=decoder(h)

然后,可以从概率分布中采样得到最终每个音符的音高。

这里的编码器、解码器网络并不限定形式。可以是上述rnn,还可以是卷积神经网络(cnn)、或者是基于注意力的神经网络。

为了得到一个可以使用的旋律生成模型,需要对模型进行训练。首先需要收集一个包含很多旋律的数据集。对数据集中的每一个旋律,需要从中分离出它的节奏序列和音高序列。然后,使用随机梯度下降算法对模型按照以下优化准则进行优化:

l=argmaxp(y|x)

三、将节奏和音高进行组合,得到最终的旋律

在将节奏序列输入旋律生成模型得到音高序列后,将节奏和音高进行组合,得到一个音符序列,这个序列即是最终的旋律。

采用本申请,可以基于给定节奏自动化的生成旋律,从而有效地降低了作曲的门槛,可以帮助非专业人士基于他们的节奏创意完成旋律的创作。

根据本申请的实施例,提供了一种信息处理装置,图5是根据本申请实施例的信息处理装置的组成结构示意图,如图5所示,包括:节奏获取模块51,用于获取节奏信息;音高生成模块52,用于根据所述节奏信息及预先训练好的旋律生成模型,得到对应所述节奏信息的音高信息;合成模块53,用于根据所述节奏信息及所述音高信息进行合成处理,得到旋律信息。

一实施方式中,所述预先训练好的旋律生成模型包括:用于编码的第一子模型、及用于解码的第二子模型;所述音高生成模块,用于:将所述节奏信息输入所述第一子模型,通过所述第一子模型提取所述节奏信息对应的节奏特征信息;将所述节奏特征信息输入所述第二子模型,通过所述第二子模型对所述节奏特征信息进行解码,得到所述音高信息。

一实施方式中,所述节奏获取模块,用于:获取第一用户操作,从所述第一用户操作中提取检索关键词,根据所述检索关键词进行查询处理,得到所述节奏信息;或者,响应于第一用户操作,从所述第一用户操作中直接提取所述节奏信息。

一实施方式中,还包括:样本采集模块,用于预先采集多个旋律样本信息;信息分离模块,用于将所述多个旋律样本信息进行信息分离处理,得到构成每个旋律样本信息的节奏序列和音高序列;模型训练模块,用于根据所述节奏序列及所述音高序列对旋律生成模型进行训练,以得到所述预先训练好的旋律生成模型。

一实施方式中,所述合成模块,用于:根据所述节奏信息及所述音高信息进行合成处理,得到音符的时长属性在时间上排列所生成的音符时长序列;将所述音符时长序列作为所述旋律信息。

本申请实施例各装置中的各模块的功能可以参见上述方法中的对应描述,在此不再赘述。

根据本申请的实施例,本申请还提供了一种电子设备和一种可读存储介质。

如图6所示,是用来实现本申请实施例的信息处理方法的电子设备的框图。该电子设备可以为前述部署设备或代理设备。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本申请的实现。

如图6所示,该电子设备包括:一个或多个处理器801、存储器802,以及用于连接各部件的接口,包括高速接口和低速接口。各个部件利用不同的总线互相连接,并且可以被安装在公共主板上或者根据需要以其它方式安装。处理器可以对在电子设备内执行的指令进行处理,包括存储在存储器中或者存储器上以在外部输入/输出装置(诸如,耦合至接口的显示设备)上显示gui的图形信息的指令。在其它实施方式中,若需要,可以将多个处理器和/或多条总线与多个存储器和多个存储器一起使用。同样,可以连接多个电子设备,各个设备提供部分必要的操作(例如,作为服务器阵列、一组刀片式服务器、或者多处理器系统)。图6中以一个处理器801为例。

存储器802即为本申请所提供的非瞬时计算机可读存储介质。其中,所述存储器存储有可由至少一个处理器执行的指令,以使所述至少一个处理器执行本申请所提供的信息处理方法。本申请的非瞬时计算机可读存储介质存储计算机指令,该计算机指令用于使计算机执行本申请所提供的信息处理方法。

存储器802作为一种非瞬时计算机可读存储介质,可用于存储非瞬时软件程序、非瞬时计算机可执行程序以及模块,如本申请实施例中的信息处理方法对应的程序指令/模块。处理器801通过运行存储在存储器802中的非瞬时软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述方法实施例中的信息处理方法。

存储器802可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据电子设备的使用所创建的数据等。此外,存储器802可以包括高速随机存取存储器,还可以包括非瞬时存储器,例如至少一个磁盘存储器件、闪存器件、或其他非瞬时固态存储器件。在一些实施例中,存储器802可选包括相对于处理器801远程设置的存储器,这些远程存储器可以通过网络连接至电子设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。

信息处理方法的电子设备,还可以包括:输入装置803和输出装置804。处理器801、存储器802、输入装置803和输出装置804可以通过总线或者其他方式连接,图6中以通过总线连接为例。

输入装置803可接收输入的数字或字符信息,以及产生与电子设备的用户设置以及功能控制有关的键信号输入,例如触摸屏、小键盘、鼠标、轨迹板、触摸板、指示杆、一个或者多个鼠标按钮、轨迹球、操纵杆等输入装置。输出装置804可以包括显示设备、辅助照明装置(例如,led)和触觉反馈装置(例如,振动电机)等。该显示设备可以包括但不限于,液晶显示器(lcd)、发光二极管(led)显示器和等离子体显示器。在一些实施方式中,显示设备可以是触摸屏。

此处描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、专用asic(专用集成电路)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。

这些计算程序(也称作程序、软件、软件应用、或者代码)包括可编程处理器的机器指令,并且可以利用高级过程和/或面向对象的编程语言、和/或汇编/机器语言来实施这些计算程序。如本文使用的,术语“机器可读介质”和“计算机可读介质”指的是用于将机器指令和/或数据提供给可编程处理器的任何计算机程序产品、设备、和/或装置(例如,磁盘、光盘、存储器、可编程逻辑装置(pld)),包括,接收作为机器可读信号的机器指令的机器可读介质。术语“机器可读信号”指的是用于将机器指令和/或数据提供给可编程处理器的任何信号。

为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,crt(阴极射线管)或者lcd(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。

可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(lan)、广域网(wan)和互联网。

计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。

应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发申请中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本申请公开的技术方案所期望的结果,本文在此不进行限制。

上述具体实施方式,并不构成对本申请保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本申请的精神和原则之内所作的修改、等同替换和改进等,均应包含在本申请保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1