本申请涉及计算机技术领域,具体而言,涉及一种数据处理方法、装置、设备和存储介质。
背景技术:
程序员在写完代码之后,需要对代码进行检查,以确保代码正确。在检查过程中,除了检测代码逻辑是否正确,代码的整体布局也是一个非常重要的检测点,因其很大程度上影响代码的可读性,需要程序员逐行对代码的长度进行检测,但是这种检测方式容易引起视觉疲劳,从而降低了代码的检查速度。
技术实现要素:
有鉴于此,本申请的目的在于提供一种数据处理方法、装置、设备和存储介质,以通过音乐的方式辅助用户检测代码,进而提高代码的检查速度。
第一方面,本申请实施例提供了一种数据处理方法,包括:
响应用于生成音乐的操作指令,根据指定代码段中各行代码的长度,为该行代码分配对应的数字音符,以得到所述指定代码段对应的数字音符串,所述数字音符串中包括的各数字音符的先后顺序与各数字音符对应的代码行在所述指定代码段中的先后顺序相同;
将所述数字音符串作为输入参数,输入到训练完成的时序预估模型中,得到携带有断音标记的数字音符串,以将携带有断音标记的数字音符串作为所述指定代码段的音乐简谱;
根据所述音乐简谱,输出音乐。
可选地,所述根据指定代码段中各行代码的长度,为该行代码分配对应的数字音符,以得到所述指定代码段对应的数字音符串,包括:
按照代码行由长倒短的顺序对所述指定代码段中各行代码进行排序,得到排序结果;
根据设定的数字音符确定顺序和配置的各数字音符的音符占比,对所述排序结果按照指定顺序进行划分,得到代码行组和数字音符的对应关系;
根据所述指定代码段中各行代码的先后顺序和所述对应关系,得到所述数字音符串。
可选地,所述数字音符确定顺序为音调由高到低的顺序或者音调由低到高的顺序。
可选地,所述指定顺序为代码长度由长到短的顺序或代码长度由短到长的顺序。
可选地,所述根据所述指定代码段中各行代码的先后顺序和所述对应关系,得到所述数字音符串,包括:
根据所述指定代码段中各行代码的先后顺序和所述对应关系,确定按照所述指定代码段中各代码行的先后顺序排列的各数字音符;
对于每个数字音符,对该数字音符进行随机扰动;
如果扰动成功,根据该数字音符对应的代码行的关键字所属语句,对该数字音符进行指定运算,得到扰动后的数字音符,其中,当关键字属于第一类语句时,所述指定运算为与指定数值的加法运算,当关键字属于第二类语句时,所述指定运算为与所述指定数值的减法运算。
可选地,所述方法还包括:
对于指定曲谱集合中的各曲谱,确定该曲谱中各数字音符的第一占比;
根据所述第一占比,计算各曲谱中相同数字音符的平均占比,以将该平均占比作为该数字音符的音符占比。
可选地,所述方法还包括:
获取携带有音符位置标注的样本曲谱,其中,在每个样本曲谱中,对于属于同一音乐断句的数字音符,第一个数字音符标注为开始音符,最后一个数字音符标注为结束音符,位于所述第一个数字音符和所述最后一个数字音符之间的音符标注为中间音符;
使用所述样本曲谱对指定的时序预估模型进行训练,得到所述训练完成的时序预估模型。
可选地,在响应用于生成音乐的操作指令之前,所述方法还包括:
根据用户选择的代码文件,对所述代码文件中的代码进行加载,以将加载的代码作为所述指定代码段;或者,
获取所述用户在代码输入框内输入的代码,以将输入的代码作为所述指定代码段;或者,
根据所述用户的截图操作,获取图片;对所述图片进行解析,获取所述图片中包括的代码,以将所述图片中包括的代码作为所述指定代码段。
可选地,在输出所述音乐之后,所述方法还包括:
响应用于暂停播放音乐的操作指令,根据当前播放的声音信号对应的数字音符在所述音乐简谱中的位置,在所述指定代码段中对该数字音符对应的代码行进行定位;
对定位出来的代码行进行标注。
第二方面,本申请实施例提供了一种数据处理装置,包括:
响应单元,用于响应用于生成音乐的操作指令,根据指定代码段中各行代码的长度,为该行代码分配对应的数字音符,以得到所述指定代码段对应的数字音符串,所述数字音符串中包括的各数字音符的先后顺序与各数字音符对应的代码行在所述指定代码段中的先后顺序相同;
输入单元,用于将所述数字音符串作为输入参数,输入到训练完成的时序预估模型中,得到携带有断音标记的数字音符串,以将携带有断音标记的数字音符串作为所述指定代码段的音乐简谱;
播放单元,用于根据所述音乐简谱,输出音乐。
可选地,所述响应单元用于根据指定代码段中各行代码的长度,为该行代码分配对应的数字音符,以得到所述指定代码段对应的数字音符串时,包括:
按照代码行由长倒短的顺序对所述指定代码段中各行代码进行排序,得到排序结果;
根据设定的数字音符确定顺序和配置的各数字音符的音符占比,对所述排序结果按照指定顺序进行划分,得到代码行组和数字音符的对应关系;
根据所述指定代码段中各行代码的先后顺序和所述对应关系,得到所述数字音符串。
可选地,所述数字音符确定顺序为音调由高到低的顺序或者音调由低到高的顺序。
可选地,所述指定顺序为代码长度由长到短的顺序或代码长度由短到长的顺序。
可选地,所述响应单元用于根据所述指定代码段中各行代码的先后顺序和所述对应关系,得到所述数字音符串时,包括:
根据所述指定代码段中各行代码的先后顺序和所述对应关系,确定按照所述指定代码段中各代码行的先后顺序排列的各数字音符;
对于每个数字音符,对该数字音符进行随机扰动;
如果扰动成功,根据该数字音符对应的代码行的关键字所属语句,对该数字音符进行指定运算,得到扰动后的数字音符,其中,当关键字属于第一类语句时,所述指定运算为与指定数值的加法运算,当关键字属于第二类语句时,所述指定运算为与所述指定数值的减法运算。
可选地,所述装置还包括:
确定单元,用于对于指定曲谱集合中的各曲谱,确定该曲谱中各数字音符的第一占比;
计算单元,用于根据所述第一占比,计算各曲谱中相同数字音符的平均占比,以将该平均占比作为该数字音符的音符占比。
可选地,所述装置还包括:
获取单元,用于获取携带有音符位置标注的样本曲谱,其中,在每个样本曲谱中,对于属于同一音乐断句的数字音符,第一个数字音符标注为开始音符,最后一个数字音符标注为结束音符,位于所述第一个数字音符和所述最后一个数字音符之间的音符标注为中间音符;
训练单元,用于使用所述样本曲谱对指定的时序预估模型进行训练,得到所述训练完成的时序预估模型。
可选地,所述装置还包括:
加载单元,用于在响应用于生成音乐的操作指令之前,根据用户选择的代码文件,对所述代码文件中的代码进行加载,以将加载的代码作为所述指定代码段;或者,获取所述用户在代码输入框内输入的代码,以将输入的代码作为所述指定代码段;或者,根据所述用户的截图操作,获取图片;对所述图片进行解析,获取所述图片中包括的代码,以将所述图片中包括的代码作为所述指定代码段。
可选地,所述响应单元,还用于在输出所述音乐之后,响应用于暂停播放音乐的操作指令,根据当前播放的声音信号对应的数字音符在所述音乐简谱中的位置,在所述指定代码段中对该数字音符对应的代码行进行定位;
所述装置还包括:
标注单元,用于对定位出来的代码行进行标注。
第三方面,本申请实施例提供了一种数据处理方法,包括:
响应用于执行应用程序中的目标功能的启动操作,根据所述目标功能对应的功能代码段中各行代码的长度,为该行代码分配对应的数字音符,以得到所述功能代码段对应的数字音符串,所述数字音符串中包括的各数字音符的先后顺序与各数字音符对应的代码行在所述功能代码段中的先后顺序相同;
将所述数字音符串作为输入参数,输入到训练完成的时序预估模型中,得到携带有断音标记的数字音符串,以将携带有断音标记的数字音符串作为所述功能代码段的音乐简谱;
在运行所述目标功能的过程中,调用音频输出模块,根据所述音乐简谱,输出音乐。
第四方面,本申请实施例提供了一种数据处理装置,包括:
响应单元,用于响应用于执行应用程序中的目标功能的启动操作,根据所述目标功能对应的功能代码段中各行代码的长度,为该行代码分配对应的数字音符,以得到所述功能代码段对应的数字音符串,所述数字音符串中包括的各数字音符的先后顺序与各数字音符对应的代码行在所述功能代码段中的先后顺序相同;
输入单元,用于将所述数字音符串作为输入参数,输入到训练完成的时序预估模型中,得到携带有断音标记的数字音符串,以将携带有断音标记的数字音符串作为所述功能代码段的音乐简谱;
输出单元,用于在运行所述目标功能的过程中,调用音频输出模块,根据所述音乐简谱,输出音乐。
第五方面,本申请实施例提供了一种电子设备,包括:处理器、存储介质和总线,所述存储介质存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储介质之间通过总线通信,所述处理器执行所述机器可读指令,以执行如第一方面或第三方面中任一项所述方法的步骤。
第六方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行如第一方面或第三方面中任一项所述方法的步骤。
本申请的实施例提供的技术方案可以包括以下有益效果:
在本申请中,根据指定代码段中各行代码的长度为该行代码分配数字音符,得到按照指定代码段中各行代码的先后顺序进行排列的数字音符串,然后将该数字音符串输出的时序预估模型中,得到携带有断音标记的音乐简谱,然后再根据该音乐简谱输出音乐,输出的音乐中的各个音符是按照指定代码段中各行代码的先后顺序进行输出的,并且各音符是与代码行的长度相关的,因此用户在需要对该指定代码段进行检查时,只需要听输出的音乐就是实现对指定代码段中各行代码的长度的检测,并且,输出的音乐中是有音乐断句的,因此输出的音乐具有较高的音乐性的,通过上述方法用户可以通过听的方式来对指定代码段进行辅助检查,因此不容易引起用户视觉疲劳,进而有利于提高代码的检测速度。
为使本申请的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本申请实施例一提供的一种数据处理方法的流程示意图;
图2为本申请实施例一提供的另一种数据处理方法的流程示意图;
图3为本申请实施例一提供的另一种数据处理方法的流程示意图;
图4为本申请实施例一提供的另一种数据处理方法的流程示意图;
图5为本申请实施例一提供的另一种数据处理方法的流程示意图;
图6为本申请实施例一提供的另一种数据处理方法的流程示意图;
图7为本申请实施例二提供的一种数据处理方法的流程示意图;
图8为本申请实施例三提供的一种数据处理装置的结构示意图;
图9为本申请实施例三提供的另一种数据处理装置的结构示意图;
图10为本申请实施例三提供的另一种数据处理装置的结构示意图;
图11为本申请实施例三提供的另一种数据处理装置的结构示意图;
图12为本申请实施例三提供的另一种数据处理装置的结构示意图;
图13为本申请实施例四提供的一种数据处理装置的结构示意图;
图14为本申请实施例五提供的一种电子设备的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,应当理解,本申请中附图仅起到说明和描述的目的,并不用于限定本申请的保护范围。另外,应当理解,示意性的附图并未按实物比例绘制。本申请中使用的流程图示出了根据本申请的一些实施例实现的操作。应该理解,流程图的操作可以不按顺序实现,没有逻辑的上下文关系的步骤可以反转顺序或者同时实施。此外,本领域技术人员在本申请内容的指引下,可以向流程图添加一个或多个其他操作,也可以从流程图中移除一个或多个操作。
另外,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
需要说明的是,本申请实施例中将会用到术语“包括”,用于指出其后所声明的特征的存在,但并不排除增加其它的特征。
需要提前说明的是,本申请中涉及到的指定代码段可以是一个功能对应的完整代码段,以定位功能为例,指定代码段包括进行定位时需要用到的所有代码,以叫车功能为例,指定代码段包括从服务请求方的下单操作到服务请求方结束行程时需要用到的所有代码,指定代码段还可以是一个完整代码中的部分代码段,关于具体的指定代码段可以根据实际需要进行设定,在此不做具体限定。
实施例一
图1为本申请实施例一提供的一种数据处理方法的流程示意图,如图1所示,该方法包括以下步骤:
步骤101、响应用于生成音乐的操作指令,根据指定代码段中各行代码的长度,为该行代码分配对应的数字音符,以得到所述指定代码段对应的数字音符串,所述数字音符串中包括的各数字音符的先后顺序与各数字音符对应的代码行在所述指定代码段中的先后顺序相同。
步骤102、将所述数字音符串作为输入参数,输入到训练完成的时序预估模型中,得到携带有断音标记的数字音符串,以将携带有断音标记的数字音符串作为所述指定代码段的音乐简谱。
步骤103、根据所述音乐简谱,输出音乐。
具体的,用户在需要对指定代码段进行检查时,可以点击用于生成音乐的控件,此时数据处理装置根据指定代码段中各行代码的长度,为该行代码分配对应的数字音符,从而得到各行代码对应的数字音符,将得到的各数字音符按照指定代码段中各行代码的先后顺序进行排列后得到数字音符串,其中,数字音符包括1、2、3、4、5、6、7这七个数字音符,这七个数字音符的读音分别为do、re、mi、fa、sol、la、si。
举例说明,指定代码段中包括10行代码,第一行代码的长度为10、第二行代码的长度为9、第三行代码的长度为10、第四行代码的长度为8、第五行代码的长度为7、第六行代码的长度为4、第七行代码的长度为13、第八行代码的长度为3、第九行代码的长度为6、第十行代码的长度为10,其中,长度大于10的代码行对应的数字音符为7、长度小于等于10且大于8的代码行对应的数字音符为6、长度等于8的代码行对应的数字音符为5、长度小于8且大于6的代码行对应的数字音符为4、长度小于等于6且大于4的代码行对应的数字音符为3、长度小于等于4且大于2的代码行对应的数字音符为2、长度小于等于2的代码行对应的数字音符为1,此时第一行代码对应数字音符为6、第二行代码对应数字音符为6、第三行代码对应数字音符为6、第四行代码对应数字音符为5、第五行代码对应数字音符为4、第六行代码对应数字音符为2、第七行代码对应数字音符为7、第八行代码对应数字音符为2、第九行代码对应数字音符为3、第十行代码对应数字音符为6,然后按照各代码行在指定代码段中的先后顺序对得到的数字音符进行排序,得到的数字音符串为:6665427236,各数字音符在数字音符串中的先后顺序和各数字音符对应的代码行在指定代码段中的先后顺序相同。
在得到数字音符串后,为了使输出的音乐具有节奏感,需要将数字音符串输出到训练完成的时序预估模型中,得到携带有断音标记的数字音符串,从而将携带有断音标记的数字音符串作为该指定代码段的音乐简谱,根据该音乐简谱输出音乐时,音符和音符之间根据断音标记进行有节奏的输出(即:音乐简谱中是有空拍的),其中,断音标记包括多种,每种断音标记表示不同时长的音符输出间隔,例如:有些断音标记表示音符和音符之间间隔1秒,有些断音标记标识音符和音符之间间隔2秒等,通过断音标记可以使输出的音乐具有一定的节奏感,以数字音符串6665427236为例,得到的音乐简谱可以为666|54272|36,其中,“|”为断音标记,在播放音乐时,666作为一组连续的音符输出,54272作为一组连续的音符输出,36作为一组连续的音符输出,在输出666的音符后按照断音标记间隔一定时长在输出54272的音符,在输出54272的音符后按照断音标记再间隔一定时长在输出36的音符。
用户在需要对该指定代码段进行检查时,只需要听输出的音乐就能实现对指定代码段中各行代码的长度的检测,并且,输出的音乐中是有音乐断句的(即:是具有节奏的),因此输出的音乐具有较高的音乐性的,通过上述方法用户可以通过听的方式来对指定代码段进行辅助检查,因此不容易引起用户视觉疲劳,进而有利于提高代码的检测速度。
需要说明的是,在播放音乐时,音乐的播放速度可以根据设定好的速度来进行播放。
需要再次说明的是,上述数字音符串和音乐简谱示例仅是示意性的说明,并不对本申请形成限定,关于数字音符串和音乐简谱的具体形式可以根据实际需要进行设定,在此不做具体限定。
在一个可行的实施方案中,图2为本申请实施例一提供的另一种数据处理方法的流程示意图,如图2所示,在执行根据指定代码段中各行代码的长度,为该行代码分配对应的数字音符,以得到所述指定代码段对应的数字音符串的步骤时,可以通过以下步骤实现:
步骤201、按照代码行由长倒短的顺序对所述指定代码段中各行代码进行排序,得到排序结果。
步骤202、根据设定的数字音符确定顺序和配置的各数字音符的音符占比,对所述排序结果按照指定顺序进行划分,得到代码行组和数字音符的对应关系。
步骤203、根据所述指定代码段中各行代码的先后顺序和所述对应关系,得到所述数字音符串。
具体的,对指定代码按照代码行又长倒短的顺序进行排序后,可以得到一个排序结果,该排序结果为一个代码序列,该代码序列按照代码行长度依次排列,以第一行代码的长度为10、第二行代码的长度为9、第三行代码的长度为10、第四行代码的长度为8、第五行代码的长度为7、第六行代码的长度为4、第七行代码的长度为13、第八行代码的长度为3、第九行代码的长度为6、第十行代码的长度为10为例,得到的代码序列按照以下顺序排列:第七行代码、第一行代码、第三行代码、第十行代码、第二行代码、第四行代码、第五行代码、第九行代码、第六行代码和第八行代码,然后按照数字音符确定顺序和配置的各数字音符的音符占比,对上述排序结果按照指定的顺序进行划分,例如:数字音符确定顺序为7、6、5、4、3、2、1,其中,7的音符占比为10%、6的音符占比为10%、5的音符占比为10%、4的音符占比为10%、3的音符占比为10%、2的音符占比为10%、1的音符占比为40%,同时按照排序结果中由长到短的顺序对排序结果进行划分时,按照上述的排序结果中由长到短的顺序选择10%的代码行作为7对应的代码组,即:将第七行代码作为一组,对应的数字音符为7,然后从剩余的排序结果中按照由长到短的顺序选择10%的代码行作为6对应的代码组,即:将第一行代码作为一组,对应的数字音符为6,再从剩余的排序结果中按照由长到短的顺序选择10%的代码行作为5对应的代码组,即:将第三行代码作为一组,对应的数字音符为5,依次类推,此时得到的对应关系为第七行代码为一个代码组,对应的数字音符为7;第一行代码为一个代码组,对应的数字音符为6;第三行代码为一个代码组,对应的数字音符为5;第十行代码为一个代码组,对应的数字音符为4;第二行代码为一个代码组,对应的数字音符为3;第四行代码为一个代码组,对应的数字音符为2;第五行代码、第九行代码、第六行代码和第八行代码为一个代码组,对应的数字音符为1,然后根据上述的对应关系和指定代码段中各行代码的先后顺序,得到的数字音符串为:6352117114。
通过上述方法,可以使不同行数的代码段生成不同的数字音符串,从而使不同的代码段能够播放出不同的音乐,从而使生成的音乐具有多样性。
需要说明的是,上述仅是示意性的说明,并不对本申请形成限定,并且各数字音符的音符占比之和为1,数字音符确定顺序可以为1到7的顺序,也可以是7到1的顺序,或者也可以按照部分数字音符的顺序等,例如按照1、2、4、6、7的顺序,其中,1、2、4、6、7的音符占比之和为1。
在一个可行的实施方案中,所述数字音符确定顺序为音调由高到低的顺序或者音调由低到高的顺序。
举例说明,数字音符的确定顺序可以按照7、6、5、4、3、2、1的顺序进行逐次确定,也可以按照1、2、3、4、5、6、7的顺序进行确定,通过上述方式,可以使确定出的数字音符串与指定代码段中代码行的长度具有关联关系,从而有利于辅助用户检查代码。
在一个可行的实施方案中,所述指定顺序为代码长度由长到短的顺序或代码长度由短到长的顺序。
具体的,按照代码长度由长到短的顺序或代码长度由短到长的顺序可以使得到的数字音符和代码长度形成正对应关系或负对应关系,从而使确定出的数字音符的高低与指定代码段中代码行的长度具有一定关联关系,从而有利于辅助用户检查代码。
在一个可行的实施方案中,图3为本申请实施例一提供的另一种数据处理方法的流程示意图,如图3所示,在执行根据所述指定代码段中各行代码的先后顺序和所述对应关系,得到所述数字音符串的步骤时,可以通过以下步骤实现:
步骤301、根据所述指定代码段中各行代码的先后顺序和所述对应关系,确定按照所述指定代码段中各代码行的先后顺序排列的各数字音符。
步骤302、对于每个数字音符,对该数字音符进行随机扰动。
步骤303、如果扰动成功,根据该数字音符对应的代码行的关键字所属语句,对该数字音符进行指定运算,得到扰动后的数字音符,其中,当关键字属于第一类语句时,所述指定运算为与指定数值的加法运算,当关键字属于第二类语句时,所述指定运算为与所述指定数值的减法运算。
具体的,在得到上述的对应关系后,可以根据该对应关系,按照指定代码段中各代码行的先后顺序逐个确定各代码行对应的数字音符,从而得到按照指定代码段中各代码行的先后顺序排列的数字音符串,然后对数字音符串中的每个数字音符逐个或者同时进行随机扰动,对于扰动成功的数字音符,根据该数字音符对应的代码行的关键字所属的语句,对该数字音符进行指定运算,得到扰动后的数字音符,对于未扰动成功的数字音符,则数字音符保持不变,以数字音符串为6352117114为例,对这十个数字音符分别进行随机扰动,当第一个数字音符扰动成功,且第一行代码的关键字属于第一类语句时,对数字音符6和指定数值进行加法运算,当指定数值为1时,计算数字音符6和1的和,此时第一行代码的数字音符为7,如果其他数字音符未扰动成功,那么最终得到的数字音符串为7352117114,当第一个数字音符扰动成功,且第一行代码的关键字属于第二类语句时,对数字音符6和指定数值进行减法运算,当指定数值为1时,计算数字音符6和1的差值,此时第一行代码的数字音符为5,如果其他数字音符未扰动成功,那么最终得到的数字音符串为5352117114。
通过上述方式,可以使同一代码段生成不同的音乐,从而使输出的音乐更加丰富。
需要说明的是,具体的指定数值可以根据实际需要进行设定,扰动成功后计算得到的值的最大值不大于最高音调的音符对应的数值,扰动成功后计算得到的值的最小值不小于最低音调的音符对应的数值,同时,关于关键字是属于第一类语句还是属于第二类语句可以根据实际需要进行设定和调整,在此不做具体限定。
在一个可行的实施方案中,图4为本申请实施例一提供的另一种数据处理方法的流程示意图,如图4所示,该方法还包括以下步骤:
步骤401、对于指定曲谱集合中的各曲谱,确定该曲谱中各数字音符的第一占比。
步骤402、根据所述第一占比,计算各曲谱中相同数字音符的平均占比,以将该平均占比作为该数字音符的音符占比。
具体的,在响应用于生成音乐指令之前,需要先确定出各数字音符在一首曲子中的音符占比,在确定音符占比时,可以从历史的曲谱中选择一定数量的曲谱作为指定曲谱,然后对于每个曲谱,确定该曲谱中各数字音符的第一占比,然后根据该数字音符在各曲谱中的第一占比,计算该数字音符的平均占比,以将该平均占比作为该数字音符的音符占比,以数字音符1为例,计算数字音符1在指定曲谱1中的第一占比1,计算数字音符1在指定曲谱2中的第一占比2,计算数字音符1在指定曲谱3中的第一占比3,然后计算第一占比1、第一占比2和第一占比3的平均值,将该平均值作为数字音符1的音符占比,通过确定各数字音符的音符占比可以确定将要生成的音乐简谱中的音符组成比例,从而使音乐简谱的生成方式相对简单。
在一个可行的实施方案中,图5为本申请实施例一提供的另一种数据处理方法的流程示意图,如图5所示,该方法还包括以下步骤:
步骤501、获取携带有音符位置标注的样本曲谱,其中,在每个样本曲谱中,对于属于同一音乐断句的数字音符,第一个数字音符标注为开始音符,最后一个数字音符标注为结束音符,位于所述第一个数字音符和所述最后一个数字音符之间的音符标注为中间音符。
步骤502、使用所述样本曲谱对指定的时序预估模型进行训练,得到所述训练完成的时序预估模型。
具体的,为了能够使生成的音乐简谱具有节奏感,音乐简谱中需要有空拍(即:需要有音乐断句),为了能够对数字音符串进行自动断句,需要对时序预估模型进行训练,在对时序预估模型进行训练时需要使用携带有音符位置标注的样本曲谱,以便时序预估模型能够学习到断句的断句规则,以666|54272|36为一个样本曲谱,666属于同一音乐断句的数字音符,54272属于同一音乐断句的数字音符,36属于同一音乐断句的数字音符,以54272为例,在进行音符位置标注时,第一位数字音符5标注为开始音符,第二位数字音符4至第四位数字音符7标注为中间音符,第五位数字音符2标注为结束音符,在完成上述标注后,在对时序预估模型进行训练时,能够学习到属于同一音乐断句的数字音符的规律,从而完成音乐断句的学习。
需要说明的是,除了能够使用时序预估模型外,还可以使用其他统计模型来进行训练,训练方式可以参考时序预估模型的训练方式,然后使用训练完成的其他统计模型来对数字音符串进行断音标记,关于其他具体的统计模型可以根据实际需要进行选择,在此不做具体限定。
在一个可行的实施方案中,在响应用于生成音乐的操作指令之前,可以通过以下几种方式得到指定代码段:
方式一:根据用户选择的代码文件,对所述代码文件中的代码进行加载,以将加载的代码作为所述指定代码段。
具体的,用户在点击用于选择代码文件的控件后,显示指定文件夹中包括的所有代码文件,然后用户选择将要检查的代码所在代码文件,此时可以对该代码文件中的代码进行加载,从而得到指定代码段。
方式二:获取所述用户在代码输入框内输入的代码,以将输入的代码作为所述指定代码段。
具体的,用户可以通过手动输出的方式在代码输入框内输入代码,从而获得指定代码段。
方式三:根据所述用户的截图操作,获取图片;对所述图片进行解析,获取所述图片中包括的代码,以将所述图片中包括的代码作为所述指定代码段。
具体的,用户可以通过截图的方式对将要检查的代码进行截图,在获得截图图片后,对该截图图片进行图像识别,得到截图图片中包括的代码,从而获得指定代码段。
在本申请中,可以通过以上三种方式中的任一一种来得到指定代码段,从而使获取指定代码段的途径更加丰富,从而便于用户操作,当然也可以通过加载指定图片的方式来获取指定代码段,例如:在加载指定图片后,对该指定图片进行识别,获取该图片中包括的代码,以将获取的代码作为指定代码段。
在一个可行的实施方案中,图6为本申请实施例一提供的另一种数据处理方法的流程示意图,如图6所示,在输出所述音乐之后,该方法还包括以下步骤:
步骤601、响应用于暂停播放音乐的操作指令,根据当前播放的声音信号对应的数字音符在所述音乐简谱中的位置,在所述指定代码段中对该数字音符对应的代码行进行定位。
步骤602、对定位出来的代码行进行标注。
具体的,在输出音乐后,用户可以通过音乐来对指定代码段进行检查,当用户通过音乐检查出指定代码段出现问题时,可以暂停音乐的播放,为了辅助用户快速找到用户认为有问题的地方,需要根据当前播放的声音信号对应的数字音符在音乐简谱中的位置,在指定代码段中对该数字音符对应的代码行进行定位,以上述的音乐简谱为666|54272|36为例,当播放到第四位数字音符5时,用户暂停了音乐的播放,此时定位到第四行代码,并对第四行代码进行标注,例如:高亮显示,或者使用指定颜色对第四行代码进行显示等,以便用户能够快速找到其认为出现问题的代码行。
实施例二
图7为本申请实施例二提供的一种数据处理方法的流程示意图,如图7所示,该方法包括以下步骤:
步骤701、响应用于执行应用程序中的目标功能的启动操作,根据所述目标功能对应的功能代码段中各行代码的长度,为该行代码分配对应的数字音符,以得到所述功能代码段对应的数字音符串,所述数字音符串中包括的各数字音符的先后顺序与各数字音符对应的代码行在所述功能代码段中的先后顺序相同。
步骤702、将所述数字音符串作为输入参数,输入到训练完成的时序预估模型中,得到携带有断音标记的数字音符串,以将携带有断音标记的数字音符串作为所述功能代码段的音乐简谱。
步骤703、在运行所述目标功能的过程中,调用音频输出模块,根据所述音乐简谱,输出音乐。
具体的,在一个应用程序中会包括多个功能,在运行不同的功能时,使用的代码是不同的,为了增加人机交互,使用户具有更好的体验,当用户在使用应用程序中的某个功能时,将该功能作用目标功能,并生成该目标功能的功能代码段的音乐,关于音乐的生成方式可参考实施例一的相关说明,在此不再详细说明,通过上述方法可以使用户在使用不同的功能时,输出不同的音乐,从而有利于增加用户在使用应用程序时的体感。
实施例三
图8为本申请实施例三提供的一种数据处理装置的结构示意图,如图8所示,该装置包括:
响应单元81,用于响应用于生成音乐的操作指令,根据指定代码段中各行代码的长度,为该行代码分配对应的数字音符,以得到所述指定代码段对应的数字音符串,所述数字音符串中包括的各数字音符的先后顺序与各数字音符对应的代码行在所述指定代码段中的先后顺序相同;
输入单元82,用于将所述数字音符串作为输入参数,输入到训练完成的时序预估模型中,得到携带有断音标记的数字音符串,以将携带有断音标记的数字音符串作为所述指定代码段的音乐简谱;
播放单元83,用于根据所述音乐简谱,输出音乐。
在一个可行的实施方案中,所述响应单元81用于根据指定代码段中各行代码的长度,为该行代码分配对应的数字音符,以得到所述指定代码段对应的数字音符串时,包括:
按照代码行由长倒短的顺序对所述指定代码段中各行代码进行排序,得到排序结果;
根据设定的数字音符确定顺序和配置的各数字音符的音符占比,对所述排序结果按照指定顺序进行划分,得到代码行组和数字音符的对应关系;
根据所述指定代码段中各行代码的先后顺序和所述对应关系,得到所述数字音符串。
在一个可行的实施方案中,所述数字音符确定顺序为音调由高到低的顺序或者音调由低到高的顺序。
在一个可行的实施方案中,所述指定顺序为代码长度由长到短的顺序或代码长度由短到长的顺序。
在一个可行的实施方案中,所述响应单元81用于根据所述指定代码段中各行代码的先后顺序和所述对应关系,得到所述数字音符串时,包括:
根据所述指定代码段中各行代码的先后顺序和所述对应关系,确定按照所述指定代码段中各代码行的先后顺序排列的各数字音符;
对于每个数字音符,对该数字音符进行随机扰动;
如果扰动成功,根据该数字音符对应的代码行的关键字所属语句,对该数字音符进行指定运算,得到扰动后的数字音符,其中,当关键字属于第一类语句时,所述指定运算为与指定数值的加法运算,当关键字属于第二类语句时,所述指定运算为与所述指定数值的减法运算。
在一个可行的实施方案中,图9为本申请实施例三提供的另一种数据处理装置的结构示意图,如图9所示,所述装置还包括:
确定单元84,用于对于指定曲谱集合中的各曲谱,确定该曲谱中各数字音符的第一占比;
计算单元85,用于根据所述第一占比,计算各曲谱中相同数字音符的平均占比,以将该平均占比作为该数字音符的音符占比。
在一个可行的实施方案中,图10为本申请实施例三提供的另一种数据处理装置的结构示意图,如图10所示,所述装置还包括:
获取单元86,用于获取携带有音符位置标注的样本曲谱,其中,在每个样本曲谱中,对于属于同一音乐断句的数字音符,第一个数字音符标注为开始音符,最后一个数字音符标注为结束音符,位于所述第一个数字音符和所述最后一个数字音符之间的音符标注为中间音符;
训练单元87,用于使用所述样本曲谱对指定的时序预估模型进行训练,得到所述训练完成的时序预估模型。
在一个可行的实施方案中,图11为本申请实施例三提供的另一种数据处理装置的结构示意图,如图11所示,所述装置还包括:
加载单元88,用于在响应用于生成音乐的操作指令之前,根据用户选择的代码文件,对所述代码文件中的代码进行加载,以将加载的代码作为所述指定代码段;或者,获取所述用户在代码输入框内输入的代码,以将输入的代码作为所述指定代码段;或者,根据所述用户的截图操作,获取图片;对所述图片进行解析,获取所述图片中包括的代码,以将所述图片中包括的代码作为所述指定代码段。
在一个可行的实施方案中,所述响应单元81,还用于在输出所述音乐之后,响应用于暂停播放音乐的操作指令,根据当前播放的声音信号对应的数字音符在所述音乐简谱中的位置,在所述指定代码段中对该数字音符对应的代码行进行定位;
图12为本申请实施例三提供的另一种数据处理装置的结构示意图,如图12所示,所述装置还包括:
标注单元89,用于对定位出来的代码行进行标注。
关于实施例三的相关说明可参考实施例一的原理解释,在此不再详细说明。
实施例四
图13为本申请实施例四提供的一种数据处理装置的结构示意图,如图13所示,该装置包括:
响应单元1301,用于响应用于执行应用程序中的目标功能的启动操作,根据所述目标功能对应的功能代码段中各行代码的长度,为该行代码分配对应的数字音符,以得到所述功能代码段对应的数字音符串,所述数字音符串中包括的各数字音符的先后顺序与各数字音符对应的代码行在所述功能代码段中的先后顺序相同;
输入单元1302,用于将所述数字音符串作为输入参数,输入到训练完成的时序预估模型中,得到携带有断音标记的数字音符串,以将携带有断音标记的数字音符串作为所述功能代码段的音乐简谱;
输出单元1303,用于在运行所述目标功能的过程中,调用音频输出模块,根据所述音乐简谱,输出音乐。
关于实施例四的相关说明可参考实施例二的原理解释,在此不再详细说明。
实施例五
图14为本申请实施例五提供的一种电子设备的结构示意图,包括:处理器1401、存储介质1402和总线1403,所述存储介质1402存储有所述处理器1401可执行的机器可读指令,当电子设备运行上述的数据处理方法时,所述处理器1401与所述存储介质1402之间通过总线1403通信,所述处理器1401执行所述机器可读指令,以执行实施例一或实施例二中所述的方法步骤。
实施例六
本申请实施例六还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行实施例一或实施例二中所述的方法步骤。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统和装置的具体工作过程,可以参考方法实施例中的对应过程,本申请中不再赘述。在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。
以上仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。
1.一种数据处理方法,其特征在于,包括:
响应用于生成音乐的操作指令,根据指定代码段中各行代码的长度,为该行代码分配对应的数字音符,以得到所述指定代码段对应的数字音符串,所述数字音符串中包括的各数字音符的先后顺序与各数字音符对应的代码行在所述指定代码段中的先后顺序相同;
将所述数字音符串作为输入参数,输入到训练完成的时序预估模型中,得到携带有断音标记的数字音符串,以将携带有断音标记的数字音符串作为所述指定代码段的音乐简谱;
根据所述音乐简谱,输出音乐。
2.如权利要求1所述的方法,其特征在于,所述根据指定代码段中各行代码的长度,为该行代码分配对应的数字音符,以得到所述指定代码段对应的数字音符串,包括:
按照代码行由长倒短的顺序对所述指定代码段中各行代码进行排序,得到排序结果;
根据设定的数字音符确定顺序和配置的各数字音符的音符占比,对所述排序结果按照指定顺序进行划分,得到代码行组和数字音符的对应关系;
根据所述指定代码段中各行代码的先后顺序和所述对应关系,得到所述数字音符串。
3.如权利要求2所述的方法,其特征在于,所述数字音符确定顺序为音调由高到低的顺序或者音调由低到高的顺序。
4.如权利要求2所述的方法,其特征在于,所述指定顺序为代码长度由长到短的顺序或代码长度由短到长的顺序。
5.如权利要求2所述的方法,其特征在于,所述根据所述指定代码段中各行代码的先后顺序和所述对应关系,得到所述数字音符串,包括:
根据所述指定代码段中各行代码的先后顺序和所述对应关系,确定按照所述指定代码段中各代码行的先后顺序排列的各数字音符;
对于每个数字音符,对该数字音符进行随机扰动;
如果扰动成功,根据该数字音符对应的代码行的关键字所属语句,对该数字音符进行指定运算,得到扰动后的数字音符,其中,当关键字属于第一类语句时,所述指定运算为与指定数值的加法运算,当关键字属于第二类语句时,所述指定运算为与所述指定数值的减法运算。
6.如权利要求2所述的方法,其特征在于,所述方法还包括:
对于指定曲谱集合中的各曲谱,确定该曲谱中各数字音符的第一占比;
根据所述第一占比,计算各曲谱中相同数字音符的平均占比,以将该平均占比作为该数字音符的音符占比。
7.如权利要求1所述的方法,其特征在于,所述方法还包括:
获取携带有音符位置标注的样本曲谱,其中,在每个样本曲谱中,对于属于同一音乐断句的数字音符,第一个数字音符标注为开始音符,最后一个数字音符标注为结束音符,位于所述第一个数字音符和所述最后一个数字音符之间的音符标注为中间音符;
使用所述样本曲谱对指定的时序预估模型进行训练,得到所述训练完成的时序预估模型。
8.如权利要求1所述的方法,其特征在于,在响应用于生成音乐的操作指令之前,所述方法还包括:
根据用户选择的代码文件,对所述代码文件中的代码进行加载,以将加载的代码作为所述指定代码段;或者,
获取所述用户在代码输入框内输入的代码,以将输入的代码作为所述指定代码段;或者,
根据所述用户的截图操作,获取图片;对所述图片进行解析,获取所述图片中包括的代码,以将所述图片中包括的代码作为所述指定代码段。
9.如权利要求1所述的方法,其特征在于,在输出所述音乐之后,所述方法还包括:
响应用于暂停播放音乐的操作指令,根据当前播放的声音信号对应的数字音符在所述音乐简谱中的位置,在所述指定代码段中对该数字音符对应的代码行进行定位;
对定位出来的代码行进行标注。
10.一种数据处理装置,其特征在于,包括:
响应单元,用于响应用于生成音乐的操作指令,根据指定代码段中各行代码的长度,为该行代码分配对应的数字音符,以得到所述指定代码段对应的数字音符串,所述数字音符串中包括的各数字音符的先后顺序与各数字音符对应的代码行在所述指定代码段中的先后顺序相同;
输入单元,用于将所述数字音符串作为输入参数,输入到训练完成的时序预估模型中,得到携带有断音标记的数字音符串,以将携带有断音标记的数字音符串作为所述指定代码段的音乐简谱;
播放单元,用于根据所述音乐简谱,输出音乐。
11.如权利要求10所述的装置,其特征在于,所述响应单元用于根据指定代码段中各行代码的长度,为该行代码分配对应的数字音符,以得到所述指定代码段对应的数字音符串时,包括:
按照代码行由长倒短的顺序对所述指定代码段中各行代码进行排序,得到排序结果;
根据设定的数字音符确定顺序和配置的各数字音符的音符占比,对所述排序结果按照指定顺序进行划分,得到代码行组和数字音符的对应关系;
根据所述指定代码段中各行代码的先后顺序和所述对应关系,得到所述数字音符串。
12.如权利要求11所述的装置,其特征在于,所述数字音符确定顺序为音调由高到低的顺序或者音调由低到高的顺序。
13.如权利要求11所述的装置,其特征在于,所述指定顺序为代码长度由长到短的顺序或代码长度由短到长的顺序。
14.如权利要求11所述的装置,其特征在于,所述响应单元用于根据所述指定代码段中各行代码的先后顺序和所述对应关系,得到所述数字音符串时,包括:
根据所述指定代码段中各行代码的先后顺序和所述对应关系,确定按照所述指定代码段中各代码行的先后顺序排列的各数字音符;
对于每个数字音符,对该数字音符进行随机扰动;
如果扰动成功,根据该数字音符对应的代码行的关键字所属语句,对该数字音符进行指定运算,得到扰动后的数字音符,其中,当关键字属于第一类语句时,所述指定运算为与指定数值的加法运算,当关键字属于第二类语句时,所述指定运算为与所述指定数值的减法运算。
15.如权利要求11所述的装置,其特征在于,所述装置还包括:
确定单元,用于对于指定曲谱集合中的各曲谱,确定该曲谱中各数字音符的第一占比;
计算单元,用于根据所述第一占比,计算各曲谱中相同数字音符的平均占比,以将该平均占比作为该数字音符的音符占比。
16.如权利要求10所述的装置,其特征在于,所述装置还包括:
获取单元,用于获取携带有音符位置标注的样本曲谱,其中,在每个样本曲谱中,对于属于同一音乐断句的数字音符,第一个数字音符标注为开始音符,最后一个数字音符标注为结束音符,位于所述第一个数字音符和所述最后一个数字音符之间的音符标注为中间音符;
训练单元,用于使用所述样本曲谱对指定的时序预估模型进行训练,得到所述训练完成的时序预估模型。
17.如权利要求10所述的装置,其特征在于,所述装置还包括:
加载单元,用于在响应用于生成音乐的操作指令之前,根据用户选择的代码文件,对所述代码文件中的代码进行加载,以将加载的代码作为所述指定代码段;或者,获取所述用户在代码输入框内输入的代码,以将输入的代码作为所述指定代码段;或者,根据所述用户的截图操作,获取图片;对所述图片进行解析,获取所述图片中包括的代码,以将所述图片中包括的代码作为所述指定代码段。
18.如权利要求10所述的装置,其特征在于,
所述响应单元,还用于在输出所述音乐之后,响应用于暂停播放音乐的操作指令,根据当前播放的声音信号对应的数字音符在所述音乐简谱中的位置,在所述指定代码段中对该数字音符对应的代码行进行定位;
所述装置还包括:
标注单元,用于对定位出来的代码行进行标注。
19.一种数据处理方法,其特征在于,包括:
响应用于执行应用程序中的目标功能的启动操作,根据所述目标功能对应的功能代码段中各行代码的长度,为该行代码分配对应的数字音符,以得到所述功能代码段对应的数字音符串,所述数字音符串中包括的各数字音符的先后顺序与各数字音符对应的代码行在所述功能代码段中的先后顺序相同;
将所述数字音符串作为输入参数,输入到训练完成的时序预估模型中,得到携带有断音标记的数字音符串,以将携带有断音标记的数字音符串作为所述功能代码段的音乐简谱;
在运行所述目标功能的过程中,调用音频输出模块,根据所述音乐简谱,输出音乐。
20.一种数据处理装置,其特征在于,包括:
响应单元,用于响应用于执行应用程序中的目标功能的启动操作,根据所述目标功能对应的功能代码段中各行代码的长度,为该行代码分配对应的数字音符,以得到所述功能代码段对应的数字音符串,所述数字音符串中包括的各数字音符的先后顺序与各数字音符对应的代码行在所述功能代码段中的先后顺序相同;
输入单元,用于将所述数字音符串作为输入参数,输入到训练完成的时序预估模型中,得到携带有断音标记的数字音符串,以将携带有断音标记的数字音符串作为所述功能代码段的音乐简谱;
输出单元,用于在运行所述目标功能的过程中,调用音频输出模块,根据所述音乐简谱,输出音乐。
21.一种电子设备,其特征在于,包括:处理器、存储介质和总线,所述存储介质存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储介质之间通过总线通信,所述处理器执行所述机器可读指令,以执行如权利要求1至9中任一项或权利要求20中所述方法的步骤。
22.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行如权利要求1至9中任一项或权利要求20中所述方法的步骤。
技术总结