肿瘤康复网,内容丰富有趣,生活中的好帮手!
肿瘤康复网 > 音乐生成方法 电子装置及计算机可读存储介质与流程

音乐生成方法 电子装置及计算机可读存储介质与流程

时间:2020-01-21 04:27:34

相关推荐

本发明涉及数据处理

技术领域:

,尤其涉及一种音乐生成方法、电子装置及计算机可读存储介质。

背景技术:

:当今社会,音乐已经深入渗透到人们的生活中,音乐可以调节心情,缓解压力、减少焦虑。传统音乐的生成方式需要创作人具有一定的乐理知识,并结合灵感和创作经验,才能创作出完整的音乐。而对于没有音乐基础的人来说,这些条件限制形成了很高的门槛,让很多热爱音乐的非专业人群都未能参与到创作音乐中。目前,缺少一种创作简单、易扩展的音乐生成方法。技术实现要素:鉴于以上内容,有必要提供一种音乐生成方法,旨在解决音乐创作难、不易扩展的问题。本发明提供的音乐生成方法,包括:第一识别步骤:利用摄像单元录制用户的动作视频,读取所述动作视频的当前视频帧作为第一目标视频帧,将所述第一目标视频帧输入预先训练好的模型,识别所述第一目标视频帧中用户的关键部位信息,所述关键部位信息包括第一类人体关节部位的id及其位置坐标值和第二类人体关节部位的id及其位置坐标值;生成步骤:当识别到第一目标视频帧中所述第一类人体关节部位的位置坐标值和第二类人体关节部位的位置坐标值时,控制播放单元启动并播放根据预设的音乐参数和音效参数的初始值生成的音乐;第二识别步骤:以第一目标视频帧的读取时间为时间起点,每间隔预设时间,读取所述动作视频的当前视频帧作为第二目标视频帧,将所述第二目标视频帧输入所述预先训练好的模型,识别所述第二目标视频中用户的第一类人体关节部位的id及其位置坐标值和第二类人体关节部位的id及其位置坐标值;调整步骤:根据预先确定的第一类人体关节部位与音乐参数的映射关系表、第二目标视频帧中第一类人体关节部位的位置坐标值的变化量及第一预设调整幅度表调整音乐参数,根据预先确定的第二类人体关节部位与音效参数的映射关系表、第二目标视频帧中第二类人体关节部位的位置坐标值的变化量及第二预设调整幅度表调整音效参数,并根据调整后音乐参数及音效参数对所述音乐进行调整生成新的音乐。可选的,所述调整步骤包括:a1、将第一目标视频帧中的人体各关节部位的位置坐标值作为各关节部位的位置初始值;a2、根据第二目标视频帧中第一类人体关节部位的位置坐标值及其位置初始值,计算得出第二目标视频帧中第一类人体关节部位的位置坐标值的变化量;a3、根据第二目标视频帧中第二类人体关节部位的位置坐标值及其位置初始值,计算得出第二目标视频帧中第二类人体关节部位的位置坐标值的变化量;a4、根据第二目标视频帧中第一类人体关节部位的位置坐标值的变化量及预先确定的第一类人体关节部位与音乐参数的映射关系表确定需要调整的音乐参数的名称,根据第二目标视频帧中第二类人体关节部位的位置坐标值的变化量及预先确定的第二类人体关节部位与音效参数的映射关系表确定需要调整的音效参数的名称;a5、根据第二目标视频帧中第一类人体关节部位的位置坐标值的变化量及第一预设调整幅度表对所述需要调整的音乐参数进行调整,根据第二目标视频帧中第二类人体关节部位的位置坐标值的变化量及第二预设调整幅度表对所述需要调整的音效参数进行调整;a6、根据调整后音乐参数及音效参数对所述音乐进行调整生成新的音乐。可选的,所述方法还包括:停止步骤:当接收到预设停止信号时,控制播放单元停止播放所述音乐。可选的,所述第一类人体关节部位为人体左半边关节部位,所述第二类人体关节部位为人体右半边关节部位。可选的,所述预先训练好的模型为posenet模型,所述posenet模型的训练过程包括:b1、获取预设数量的人物动作图片样本,将所述图片样本分为第一比例的训练集和第二比例的验证集;b2、利用所述训练集训练所述posenet模型;b3、利用所述验证集验证训练后的posenet模型的准确率,若所述准确率大于或者等于预设准确率,则训练结束;b4、若所述准确率小于预设准确率,则按照预设百分比增加所述预设数量的人物动作图片样本的数量,并返回步骤b1。此外,为实现上述目的,本发明还提供一种电子装置,该电子装置包括:存储器、处理器,所述存储器中存储有可在所述处理器上运行的音乐生成程序,所述音乐生成程序被所述处理器执行时实现如下步骤:第一识别步骤:利用摄像单元录制用户的动作视频,读取所述动作视频的当前视频帧作为第一目标视频帧,将所述第一目标视频帧输入预先训练好的模型,识别所述第一目标视频帧中用户的关键部位信息,所述关键部位信息包括第一类人体关节部位的id及其位置坐标值和第二类人体关节部位的id及其位置坐标值;生成步骤:当识别到第一目标视频帧中所述第一类人体关节部位的位置坐标值和第二类人体关节部位的位置坐标值时,控制播放单元启动并播放根据预设的音乐参数和音效参数的初始值生成的音乐;第二识别步骤:以第一目标视频帧的读取时间为时间起点,每间隔预设时间,读取所述动作视频的当前视频帧作为第二目标视频帧,将所述第二目标视频帧输入所述预先训练好的模型,识别所述第二目标视频中用户的第一类人体关节部位的id及其位置坐标值和第二类人体关节部位的id及其位置坐标值;调整步骤:根据预先确定的第一类人体关节部位与音乐参数的映射关系表、第二目标视频帧中第一类人体关节部位的位置坐标值的变化量及第一预设调整幅度表调整音乐参数,根据预先确定的第二类人体关节部位与音效参数的映射关系表、第二目标视频帧中第二类人体关节部位的位置坐标值的变化量及第二预设调整幅度表调整音效参数,并根据调整后的音乐参数及音效参数对所述音乐进行调整生成新的音乐。可选的,所述调整步骤包括:a1、将第一目标视频帧中的人体各关节部位的位置坐标值作为各关节部位的位置初始值;a2、根据第二目标视频帧中第一类人体关节部位的位置坐标值及其位置初始值,计算得出第二目标视频帧中第一类人体关节部位的位置坐标值的变化量;a3、根据第二目标视频帧中第二类人体关节部位的位置坐标值及其位置初始值,计算得出第二目标视频帧中第二类人体关节部位的位置坐标值的变化量;a4、根据第二目标视频帧中第一类人体关节部位的位置坐标值的变化量及预先确定的第一类人体关节部位与音乐参数的映射关系表确定需要调整的音乐参数的名称,根据第二目标视频帧中第二类人体关节部位的位置坐标值的变化量及预先确定的第二类人体关节部位与音效参数的映射关系表确定需要调整的音效参数的名称;a5、根据第二目标视频帧中第一类人体关节部位的位置坐标值的变化量及第一预设调整幅度表对所述需要调整的音乐参数进行调整,根据第二目标视频帧中第二类人体关节部位的位置坐标值的变化量及第二预设调整幅度表对所述需要调整的音效参数进行调整;a6、根据调整后音乐参数及音效参数对所述音乐进行调整生成新的音乐。可选的,所述音乐生成程序被所述处理器执行时还实现如下步骤:停止步骤:当接收到预设停止信号时,控制播放单元停止播放所述音乐。可选的,所述第一类人体关节部位为人体左半边关节部位,所述第二类人体关节部位为人体右半边关节部位。此外,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有音乐生成程序,所述音乐生成程序可被一个或者多个处理器执行,以实现上述音乐生成方法的步骤。相较现有技术,本发明通过读取正在录制的动作视频的当前视频帧作为第一目标视频帧,识别第一目标视频帧中的人体关节部位的id和位置坐标值并控制播放单元启动,播放按照预设的音乐参数和音效参数的初始值生成的音乐,以第一目标视频帧的读取时间为时间起点,每隔预设时间读取动作视频的当前视频帧作为第二目标视频帧,识别第二目标视频帧中人体关节部位的id及位置坐标值,根据人体关节部位的位置坐标值的变化量调整音乐参数和音效参数,从而对所述音乐进行调整生成新的音乐,从而解决了音乐创作难、不易扩展的问题。附图说明图1为本发明电子装置一实施例的示意图;图2为图1中的音乐生成程序一实施例的程序模块图;图3为本发明音乐生成方法一实施例的流程图。具体实施方式为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。需要说明的是,在本发明中涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本发明要求的保护范围之内。如图1所示,为本发明电子装置1一实施例的示意图。电子装置1是一种能够按照事先设定或者存储的指令,自动进行数值计算和/或信息处理的设备。所述电子装置1可以是计算机、也可以是单个网络服务器、多个网络服务器组成的服务器组或者基于云计算的由大量主机或者网络服务器构成的云,其中云计算是分布式计算的一种,由一群松散耦合的计算机集组成的一个超级虚拟计算机。在本实施例中,电子装置1包括,但不仅限于,可通过系统总线相互通信连接的存储器11、处理器12、网络接口13,该存储器11中存储有音乐生成程序10,所述音乐生成程序10可被所述处理器12执行。图1仅示出了具有组件11-13以及音乐生成程序10的电子装置1,本领域技术人员可以理解的是,图1示出的结构并不构成对电子装置1的限定,可以包括比图示更少或者更多的部件,或者组合某些部件,或者不同的部件布置。其中,存储器11包括内存及至少一种类型的可读存储介质。内存为电子装置1的运行提供缓存;可读存储介质可为如闪存、硬盘、多媒体卡、卡型存储器(例如,sd或dx存储器等)、随机访问存储器(ram)、静态随机访问存储器(sram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、可编程只读存储器(prom)、磁性存储器、磁盘、光盘等的非易失性存储介质。在一些实施例中,可读存储介质可以是电子装置1的内部存储单元,例如该电子装置1的硬盘;在另一些实施例中,该非易失性存储介质也可以是电子装置1的外部存储设备,例如电子装置1上配备的插接式硬盘,智能存储卡(smartmediacard,smc),安全数字(securedigital,sd)卡,闪存卡(flashcard)等。本实施例中,存储器11的可读存储介质通常用于存储安装于电子装置1的操作系统和各类应用软件,例如存储本发明一实施例中的音乐生成程序10的代码等。此外,存储器11还可以用于暂时地存储已经输出或者将要输出的各类数据。处理器12在一些实施例中可以是中央处理器(centralprocessingunit,cpu)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器12通常用于控制所述电子装置1的总体操作,例如执行与其他设备进行数据交互或者通信相关的控制和处理等。本实施例中,所述处理器12用于运行所述存储器11中存储的程序代码或者处理数据,例如运行音乐生成程序10等。网络接口13可包括无线网络接口或有线网络接口,该网络接口13用于在所述电子装置1与客户端(图中未画出)之间建立通信连接。可选的,所述电子装置1还可以包括用户接口,用户接口可以包括显示器(display)、输入单元比如键盘(keyboard),可选的用户接口还可以包括标准的有线接口、无线接口。可选的,在一些实施例中,显示器可以是led显示器、液晶显示器、触控式液晶显示器以及oled(organiclight-emittingdiode,有机发光二极管)触摸器等。其中,显示器也可以适当的称为显示屏或显示单元,用于显示在电子装置1中处理的信息以及用于显示可视化的用户界面。在本发明的一实施例中,所述音乐生成程序10被所述处理器12执行时实现如下第一识别步骤、生成步骤、第二识别步骤及调整步骤。第一识别步骤:利用摄像单元录制用户的动作视频,读取所述动作视频的当前视频帧作为第一目标视频帧,将所述第一目标视频帧输入预先训练好的模型,识别所述第一目标视频帧中用户的关键部位信息,所述关键部位信息包括第一类人体关节部位的id及其位置坐标值和第二类人体关节部位的id及其位置坐标值。所述录制用户的动作视频可以是录制用户的舞蹈视频,也可以是录制用户的健身视频、体育训练视频或者其他任意动作视频。在本发明的一个实施例中,所述预先训练好的模型为posenet模型,posenet模型是一种卷积神经网络模型,运行在tensorflow.js(一种深度学习框架)上,可以在浏览器中进行实时人体姿态估计。posenet模型可以识别单人姿态,也可以识别多人姿态。本实施例中,所选用的为用户的单人动作视频。所述posenet模型的训练过程包括:b1、获取预设数量(例如,1万张)的人物动作图片样本,将所述图片样本分为第一比例的训练集和第二比例的验证集;b2、利用所述训练集训练所述posenet模型;b3、利用所述验证集验证训练后的posenet模型的准确率,若所述准确率大于或者等于预设准确率(例如,95%),则训练结束;b4、若所述准确率小于预设准确率,则按照预设百分比(例如,15%)增加所述预设数量的人物动作图片样本的数量,并返回步骤b1。本实施例中,posenet模型输出的为用户17个关键关节部位的id及其位置坐标值。人体关节部位与其id关系可以如下表1所示:表1本实施例中,按照人体关节部位在人体的位置分布将关键关节部位划分为第一类人体关节部位和第二类人体关节部位。例如,第一类人体关节部位可以为人体上半部关节部位,第二类人体关节部位可以为人体下半部关节部位,或者第一类人体关节部位为人体左半部关节部位,第二类人体节点部位为人体右半部关节部位。本实施例中,第一类人体关节部位为人体左半部关节部位,例如,左腕、左膝、左肘、左臀等。第二类人体关节部位为人体右半部关节部位,例如,右腕、右膝、右肘、右臀等。本实施例中,摄像单元的位置是固定的,所述人体关节部位的位置坐标值为人体关节部位在各视频帧中的二维坐标值(x,y),所述二维坐标系的x轴为各视频帧的上边框,y轴为各视频帧的左边框,原点为各视频帧的上边框与左边框的交叉点。所述关键部位信息还包括人体关节部位的位置精度的置信度分值,所述置信度分值介于0到1.0之间,置信度的分值越高,表明识别出的人体关节部位的位置精确度越高。生成步骤:当识别到第一目标视频帧中所述第一类和第二类人体关节部位的位置坐标值时,控制播放单元启动并播放根据预设的音乐参数和音效参数的初始值生成的音乐。所述音乐参数包括音高、音乐速度、音符时值、音区等。所述音高为声音的高度,包括a,b,c,d四种类型。所述音乐速度为每分钟的拍数,慢速为每分钟40~69拍,中速为每分钟72~84拍,快速为每分钟108~28拍。所述音符时值用来表示音符之间的相对持续时间,二分音符的时值为全音符的1/2,四份音符为全音符的1/4,八分音符为全音符的1/8。所述音区包括高音区、中音区及低音区,数值区域为3~5。所述音效参数包括响度、延迟时间、左右相位、混响时间等。所述响度用来描述音量的大小。所述延迟时间为声音从发出到人耳接收的中间时间段。所述混响时间是声源停止发声后,声波经过反射和吸收在声音消失前的中间时间段。所述左右相位为声音的方向,包含左、右、居中三种类型。例如,预设音乐参数和音效参数的初始值如下:音高初始值为c,音乐速度初始值为90拍,音符时值初始值为四分之一,音区初始值为4,响度初始值为系统音量的80%,延迟时间初始值为0.6秒,混响时间初始值为1秒,左右相位初始值为居中。第二识别步骤:以第一目标视频帧的读取时间为时间起点,每间隔预设时间,读取所述动作视频的当前视频帧作为第二目标视频帧,将所述第二目标视频帧输入所述预先训练好的模型,识别所述第二目标视频中用户的第一类人体关节部位的id及其位置坐标值和第二类人体关节部位的id及其位置坐标值。因动作视频中相邻视频帧的变化较小,且为了减少待处理的数据量,本实施例未读取所有视频帧,而是采用间隔预设时间读取一帧的方式。调整步骤:根据预先确定的第一类人体关节部位与音乐参数的映射关系表、第二目标视频帧中第一类人体关节部位的位置坐标值的变化量及第一预设调整幅度表调整音乐参数,根据预先确定的第二类人体关节部位与音效参数的映射关系表、第二目标视频帧中第二类人体关节部位的位置坐标值的变化量及第二预设调整幅度表调整音效参数,并根据调整后的音乐参数及音效参数对所述音乐进行调整生成新的音乐。在本发明的一个实施例中,所述调整步骤包括:a1、将第一目标视频帧中的人体各关节部位的位置坐标值作为各关节部位的位置初始值;例如,第一目标视频帧id为9的左腕的位置初始值可以表示为(x9-start,y9-start),id为10的右腕的位置初始值可以表示为(x10-start,y10-start)。a2、根据第二目标视频帧中第一类人体关节部位的位置坐标值及其位置初始值,计算得出第二目标视频帧中第一类人体关节部位的位置坐标值的变化量;例如,第二目标视频帧中id为9的左腕的位置坐标值表示为(x9-2,y9-2),则第二目标视频帧中id为9的左腕的x轴的位置坐标值的变化量为x9-2start=x9-2-x9-start,y轴的位置坐标值的变化量为y9-2start=y9-2-y9-start。a3、根据第二目标视频帧中第二类人体关节部位的位置坐标值及其位置初始值,计算得出第二目标视频帧中第二类人体关节部位的位置坐标值的变化量;例如,第二目标视频帧中id为10的右腕的位置坐标值表示为(x10-2,y10-2),则第二目标视频帧中id为10的右腕的x轴的位置坐标值的变化量为x10-2start=x10-2-x10-start,y轴的位置坐标值的变化量为y10-2start=y10-2-y10-start。a4、根据第二目标视频帧中第一类人体关节部位的位置坐标值的变化量及预先确定的第一类人体关节部位与音乐参数的映射关系表确定需要调整的音乐参数的名称,根据第二目标视频帧中第二类人体关节部位的位置坐标值的变化量及预先确定的第二类人体关节部位与音效参数的映射关系表确定需要调整的音效参数的名称;所述预先确定的第一类人体关节部位的id与音乐参数的映射关系表可以用如下表2表示。id动作姿态有变化的坐标音乐参数9左腕上下移动y音高9左腕左右摆动x音乐速度13左膝左右摆动x音符时值7左肘上下移动y音区…………表2所述预先确定的第二类人体关节部位的id与音效参数的映射关系表可以用如下表3表示。id动作姿态有变化的坐标音效参数10右腕上下移动y响度8右肘左右摆动x延迟时间6右肩左右摆动x左右相位14右膝左右摆动x混响时间…………表3例如,根据第二目标视频帧中id为9的左腕的x轴的位置坐标值的变化量可确定音乐参数中的音乐速度需要调整,根据第二目标视频帧中id为9的左腕的y轴的位置坐标值的变化量可确定音乐参数中的音高需要调整。a5、根据第二目标视频帧中第一类人体关节部位的位置坐标值的变化量及第一预设调整幅度表对所述需要调整的音乐参数进行调整,根据第二目标视频帧中第二类人体关节部位的位置坐标值的变化量及第二预设调整幅度表对所述需要调整的音效参数进行调整。第一预设调整幅度表可以用表4表示。表4第二预设调整幅度表可以用表5表示。表5例如,假如d为5,当第二目标视频帧中id为9的左腕的x轴的位置坐标值的变化量x9-2start为8时,则音乐速度需调整为110拍。当第二目标视频帧中id为10的右腕的y轴的位置坐标值的变化量y10-2start为-13时,则响度需调整为系统音量的74%。a6、根据调整后音乐参数及音效参数对所述音乐进行调整生成新的音乐。在本发明的一个实施例中,所述音乐生成程序10被所述处理器12执行时还实现如下步骤:停止步骤:当接收到预设停止信号时,控制播放单元停止播放所述音乐。本实施例中,所述预设停止信号可以是停止录制用户的动作视频,也可以是音乐播放时间达到预设时间阈值(例如3分钟)。由上述实施例可知,本发明提出的电子装置1,首先,读取正在录制的动作视频的当前视频帧作为第一目标视频帧,识别第一目标视频帧中的人体关节部位的id和位置坐标值并控制播放单元启动,播放按照预设的音乐参数和音效参数的初始值生成的音乐;然后,以第一目标视频帧的读取时间为时间起点,每隔预设时间读取动作视频的当前视频帧作为第二目标视频帧,识别第二目标视频帧中人体关节部位的id及位置坐标值,根据人体关节部位的位置坐标值的变化量调整音乐参数和音效参数,从而对所述音乐进行调整生成新的音乐,从而解决了音乐创作难、不易扩展的问题。在其他实施例中,音乐生成程序10还可以被分割为一个或者多个模块,一个或者多个模块被存储于存储器11中,并由一个或多个处理器(本实施例为处理器12)所执行以完成本发明,本发明所称的模块是指能够完成特定功能的一系列计算机程序指令段,用于描述音乐生成程序10在电子装置1中的执行过程。如图2所示,为图1中的音乐生成程序10一实施例的程序模块图。在本发明的一个实施例中,音乐生成程序10包括第一识别模块110、生成模块120、第二识别模块130及调整模块140,示例性地:所述第一识别模块110,用于利用摄像单元录制用户的动作视频,读取所述动作视频的当前视频帧作为第一目标视频帧,将所述第一目标视频帧输入预先训练好的模型,识别所述第一目标视频帧中用户的关键部位信息,所述关键部位信息包括第一类人体关节部位的id及其位置坐标值和第二类人体关节部位的id及其位置坐标值;所述生成模块120,用于当识别到第一目标视频帧中所述第一类人体关节部位的位置坐标值和第二类人体关节部位的位置坐标值时,控制播放单元启动并播放根据预设的音乐参数和音效参数的初始值生成的音乐;所述第二识别模块130,用于以第一目标视频帧的读取时间为时间起点,每间隔预设时间,读取所述动作视频的当前视频帧作为第二目标视频帧,将所述第二目标视频帧输入所述预先训练好的模型,识别所述第二目标视频中用户的第一类人体关节部位的id及其位置坐标值和第二类人体关节部位的id及其位置坐标值;所述调整模块140,用于根据预先确定的第一类人体关节部位与音乐参数的映射关系表、第二目标视频帧中第一类人体关节部位的位置坐标值的变化量及第一预设调整幅度表调整音乐参数,根据预先确定的第二类人体关节部位与音效参数的映射关系表、第二目标视频帧中第二类人体关节部位的位置坐标值的变化量及第二预设调整幅度表调整音效参数,并根据调整后的音乐参数及音效参数对所述音乐进行调整生成新的音乐。上述第一识别模块110、生成模块120、第二识别模块130及调整模块140等程序模块被执行时所实现的功能或操作步骤与上述实施例大体相同,在此不再赘述。如图3所示,为本发明音乐生成方法一实施例的流程图,该音乐生成方法包括步骤s1-s4。s1、利用摄像单元录制用户的动作视频,读取所述动作视频的当前视频帧作为第一目标视频帧,将所述第一目标视频帧输入预先训练好的模型,识别所述第一目标视频帧中用户的关键部位信息,所述关键部位信息包括第一类人体关节部位的id及其位置坐标值和第二类人体关节部位的id及其位置坐标值。所述录制用户的动作视频可以是录制用户的舞蹈视频,也可以是录制用户的健身视频、体育训练视频或者其他任意动作视频。在本发明的一个实施例中,所述预先训练好的模型为posenet模型,posenet模型是一种卷积神经网络模型,运行在tensorflow.js(一种深度学习框架)上,可以在浏览器中进行实时人体姿势估计。posenet模型可以识别单人姿态,也可以识别多人姿态。本实施例中,所选用的为用户的单人动作视频。所述posenet模型的训练过程包括:b1、获取预设数量(例如,1万张)的人物动作图片样本,将所述图片样本分为第一比例的训练集和第二比例的验证集;b2、利用所述训练集训练所述posenet模型;b3、利用所述验证集验证训练后的posenet模型的准确率,若所述准确率大于或者等于预设准确率(例如,95%),则训练结束;b4、若所述准确率小于预设准确率,则按照预设百分比(例如,15%)增加所述预设数量的人物动作图片样本的数量,并返回步骤b1。本实施例中,posenet模型输出的为用户17个关键关节部位的id及其位置坐标值。人体关节部位与其id关系可以如上表1所示。本实施例中,按照人体关节部位在人体的位置分布将关键关节部位划分为第一类人体关节部位和第二类人体关节部位。例如,第一类人体关节部位可以为人体上半部关节部位,第二类人体关节部位可以为人体下半部关节部位,或者第一类关节部位为人体左半部关节部位,第二类节点部位为人体右半部关节部位。本实施例中,第一类人体关节部位为人体左半部关节部位,例如,左腕、左膝、左肘、左臀等。第二类人体关节部位为人体右半部关节部位,例如,右腕、右膝、右肘、右臀等。本实施例中,摄像单元的位置是固定的,所述人体关节部位的位置坐标值为人体关节部位在各视频帧中的二维坐标值(x,y),所述二维坐标系的x轴为各视频帧的上边框,y轴为各视频帧的左边框,原点为各视频帧的上边框与左边框的交叉点。所述关键部位信息还包括人体关节部位的位置精度的置信度分值,所述置信度分值介于0到1.0之间,置信度的分值越高,表明识别出的人体关节部位的位置精确度越高。s2、当识别到第一目标视频帧中所述第一类和第二类人体关节部位的位置坐标值时,控制播放单元启动并播放根据预设的音乐参数和音效参数的初始值生成的音乐。所述音乐参数包括音高、音乐速度、音符时值、音区等。所述音高为声音的高度,包括a,b,c,d四种类型。所述音乐速度为每分钟的拍数,慢速为每分钟40~69拍,中速为每分钟72~84拍,快速为每分钟108~28拍。所述音符时值用来表示音符之间的相对持续时间,二分音符的时值为全音符的1/2,四份音符为全音符的1/4,八分音符为全音符的1/8。所述音区包括高音区、中音区及低音区,数值区域为3~5。所述音效参数包括响度、延迟时间、左右相位、混响时间等。所述响度用来描述音量的大小。所述延迟时间为声音从发出到人耳接收的中间时间段。所述混响时间是声源停止发声后,声波经过反射和吸收在声音消失前的中间时间段。所述左右相位为声音的方向,包含左、右、居中三种类型。例如,预设音乐参数和音效参数的初始值如下:音高初始值为c,音乐速度初始值为90拍,音符时值初始值为四分之一,音区初始值为4,响度初始值为系统音量的80%,延迟时间初始值为0.6秒,混响时间初始值为1秒,左右相位初始值为居中。s3、以第一目标视频帧的读取时间为时间起点,每间隔预设时间,读取所述动作视频的当前视频帧作为第二目标视频帧,将所述第二目标视频帧输入所述预先训练好的模型,识别所述第二目标视频中用户的第一类人体关节部位的id及其位置坐标值和第二类人体关节部位的id及其位置坐标值。因动作视频中相邻视频帧的变化较小,且为了减少待处理的数据量,本实施例未读取所有视频帧,而是采用间隔预设时间读取一帧的方式。s4、根据预先确定的第一类人体关节部位与音乐参数的映射关系表、第二目标视频帧中第一类人体关节部位的位置坐标值的变化量及第一预设调整幅度表调整音乐参数,根据预先确定的第二类人体关节部位与音效参数的映射关系表、第二目标视频帧中第二类人体关节部位的位置坐标值的变化量及第二预设调整幅度表调整音效参数,并根据调整后的音乐参数及音效参数对所述音乐进行调整生成新的音乐。在本发明的一个实施例中,所述调整步骤包括:a1、将第一目标视频帧中的人体各关节部位的位置坐标值作为各关节部位的位置初始值;例如,第一目标视频帧id为9的左腕的位置初始值可以表示为(x9-start,y9-start),id为10的右腕的位置初始值可以表示为(x10-start,y10-start)。a2、根据第二目标视频帧中第一类人体关节部位的位置坐标值及其位置初始值,计算得出第二目标视频帧中第一类人体关节部位的位置坐标值的变化量;例如,第二目标视频帧中id为9的左腕的位置坐标值表示为(x9-2,y9-2),则第二目标视频帧中id为9的左腕的x轴的位置坐标值的变化量为x9-2start=x9-2-x9-start,y轴的位置坐标值的变化量为y9-2start=y9-2-y9-start。a3、根据第二目标视频帧中第二类人体关节部位的位置坐标值及其位置初始值,计算得出第二目标视频帧中第二类人体关节部位的位置坐标值的变化量;例如,第二目标视频帧中id为10的右腕的位置坐标值表示为(x10-2,y10-2),则第二目标视频帧中id为10的右腕的x轴的位置坐标值的变化量为x10-2start=x10-2-x10-start,y轴的位置坐标值的变化量为y10-2start=y10-2-y10-start。a4、根据第二目标视频帧中第一类人体关节部位的位置坐标值的变化量及预先确定的第一类人体关节部位与音乐参数的映射关系表确定需要调整的音乐参数的名称,根据第二目标视频帧中第二类人体关节部位的位置坐标值的变化量及预先确定的第二类人体关节部位与音效参数的映射关系表确定需要调整的音效参数的名称;所述预先确定的第一类人体关节部位的id与音乐参数的映射关系表可以用如上表2表示。所述预先确定的第二类人体关节部位的id与音效参数的映射关系表可以用如上表3表示。例如,根据第二目标视频帧中id为9的左腕的x轴的位置坐标值的变化量可确定音乐参数中的音乐速度需要调整,根据第二目标视频帧中id为9的左腕的y轴的位置坐标值的变化量可确定音乐参数中的音高需要调整。a5、根据第二目标视频帧中第一类人体关节部位的位置坐标值的变化量及第一预设调整幅度表对所述需要调整的音乐参数进行调整,根据第二目标视频帧中第二类人体关节部位的位置坐标值的变化量及第二预设调整幅度表对所述需要调整的音效参数进行调整。第一预设调整幅度表可以用上表4表示。第二预设调整幅度表可以用上表5表示。例如,假如d为5,当第二目标视频帧中id为9的左腕的x轴的位置坐标值的变化量x9-2start为8时,则音乐速度需调整为110拍。当第二目标视频帧中id为10的右腕的y轴的位置坐标值的变化量y10-2start为-13时,则响度需调整为系统音量的74%。a6、根据调整后音乐参数及音效参数对所述音乐进行调整生成新的音乐。在本发明的一个实施例中,所述音乐生成程序10被所述处理器12执行时还实现如下步骤:停止步骤:当接收到预设停止信号时,控制播放单元停止播放所述音乐。本实施例中,所述预设停止信号可以是停止录制用户的动作视频,也可以是音乐播放时间达到预设时间阈值(例如3分钟)。由上述实施例可知,本发明提出的音乐生成方法,首先,读取正在录制的动作视频的当前视频帧作为第一目标视频帧,识别第一目标视频帧中的人体关节部位的id和位置坐标值并控制播放单元启动,播放按照预设的音乐参数和音效参数的初始值生成的音乐;然后,以第一目标视频帧的读取时间为时间起点,每隔预设时间读取动作视频的当前视频帧作为第二目标视频帧,识别第二目标视频帧中人体关节部位的id及位置坐标值,根据人体关节部位的位置坐标值的变化量调整音乐参数和音效参数,从而对所述音乐进行调整生成新的音乐,从而解决了音乐创作难、不易扩展的问题。此外,本发明实施例还提出一种计算机可读存储介质,计算机可读存储介质可以是硬盘、多媒体卡、sd卡、闪存卡、smc、只读存储器(rom)、可擦除可编程只读存储器(eprom)、便携式紧致盘只读存储器(cd-rom)、usb存储器等中的任意一种或者几种的任意组合。计算机可读存储介质中包括音乐生成程序10,所述音乐生成程序10被处理器执行时实现如下操作:利用摄像单元录制用户的动作视频,读取所述动作视频的当前视频帧作为第一目标视频帧,将所述第一目标视频帧输入预先训练好的模型,识别所述第一目标视频帧中用户的关键部位信息,所述关键部位信息包括第一类人体关节部位的id及其位置坐标值和第二类人体关节部位的id及其位置坐标值;当识别到第一目标视频帧中所述第一类人体关节部位的位置坐标值和第二类人体关节部位的位置坐标值时,控制播放单元启动并播放根据预设的音乐参数和音效参数的初始值生成的音乐;以第一目标视频帧的读取时间为时间起点,每间隔预设时间,读取所述动作视频的当前视频帧作为第二目标视频帧,将所述第二目标视频帧输入所述预先训练好的模型,识别所述第二目标视频中用户的第一类人体关节部位的id及其位置坐标值和第二类人体关节部位的id及其位置坐标值;根据预先确定的第一类人体关节部位与音乐参数的映射关系表、第二目标视频帧中第一类人体关节部位的位置坐标值的变化量及第一预设调整幅度表调整音乐参数,根据预先确定的第二类人体关节部位与音效参数的映射关系表、第二目标视频帧中第二类人体关节部位的位置坐标值的变化量及第二预设调整幅度表调整音效参数,并根据调整后的音乐参数及音效参数对所述音乐进行调整生成新的音乐。本发明之计算机可读存储介质的具体实施方式与上述音乐生成方法以及电子装置的具体实施方式大致相同,在此不再赘述。上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、装置、物品或者方法不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、装置、物品或者方法所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、装置、物品或者方法中还存在另外的相同要素。通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的

技术领域:

,均同理包括在本发明的专利保护范围内。当前第1页1 2 3 

技术特征:

1.一种音乐生成方法,应用于电子装置,该电子装置包括摄像单元、播放单元,其特征在于,所述方法包括:

第一识别步骤:利用摄像单元录制用户的动作视频,读取所述动作视频的当前视频帧作为第一目标视频帧,将所述第一目标视频帧输入预先训练好的模型,识别所述第一目标视频帧中用户的关键部位信息,所述关键部位信息包括第一类人体关节部位的id及其位置坐标值和第二类人体关节部位的id及其位置坐标值;

生成步骤:当识别到第一目标视频帧中所述第一类人体关节部位的位置坐标值和第二类人体关节部位的位置坐标值时,控制播放单元启动并播放根据预设的音乐参数和音效参数的初始值生成的音乐;

第二识别步骤:以第一目标视频帧的读取时间为时间起点,每间隔预设时间,读取所述动作视频的当前视频帧作为第二目标视频帧,将所述第二目标视频帧输入所述预先训练好的模型,识别所述第二目标视频中用户的第一类人体关节部位的id及其位置坐标值和第二类人体关节部位的id及其位置坐标值;

调整步骤:根据预先确定的第一类人体关节部位与音乐参数的映射关系表、第二目标视频帧中第一类人体关节部位的位置坐标值的变化量及第一预设调整幅度表调整音乐参数,根据预先确定的第二类人体关节部位与音效参数的映射关系表、第二目标视频帧中第二类人体关节部位的位置坐标值的变化量及第二预设调整幅度表调整音效参数,并根据调整后的音乐参数及音效参数对所述音乐进行调整生成新的音乐。

2.如权利要求1所述的音乐生成方法,其特征在于,所述调整步骤包括:

a1、将第一目标视频帧中的人体各关节部位的位置坐标值作为各关节部位的位置初始值;

a2、根据第二目标视频帧中第一类人体关节部位的位置坐标值及其位置初始值,计算得出第二目标视频帧中第一类人体关节部位的位置坐标值的变化量;

a3、根据第二目标视频帧中第二类人体关节部位的位置坐标值及其位置初始值,计算得出第二目标视频帧中第二类人体关节部位的位置坐标值的变化量;

a4、根据第二目标视频帧中第一类人体关节部位的位置坐标值的变化量及预先确定的第一类人体关节部位与音乐参数的映射关系表确定需要调整的音乐参数的名称,根据第二目标视频帧中第二类人体关节部位的位置坐标值的变化量及预先确定的第二类人体关节部位与音效参数的映射关系表确定需要调整的音效参数的名称;

a5、根据第二目标视频帧中第一类人体关节部位的位置坐标值的变化量及第一预设调整幅度表对所述需要调整的音乐参数进行调整,根据第二目标视频帧中第二类人体关节部位的位置坐标值的变化量及第二预设调整幅度表对所述需要调整的音效参数进行调整;

a6、根据调整后音乐参数及音效参数对所述音乐进行调整生成新的音乐。

3.如权利要求2所述的音乐生成方法,其特征在于,所述方法还包括:

停止步骤:当接收到预设停止信号时,控制播放单元停止播放所述音乐。

4.如权利要求1所述的音乐生成方法,其特征在于,所述第一类人体关节部位为人体左半边关节部位,所述第二类人体关节部位为人体右半边关节部位。

5.如权利要求1至4中的任意一项所述的音乐生成方法,其特征在于,所述预先训练好的模型为posenet模型,所述posenet模型的训练过程包括:

b1、获取预设数量的人物动作图片样本,将所述图片样本分为第一比例的训练集和第二比例的验证集;

b2、利用所述训练集训练所述posenet模型;

b3、利用所述验证集验证训练后的posenet模型的准确率,若所述准确率大于或者等于预设准确率,则训练结束;

b4、若所述准确率小于预设准确率,则按照预设百分比增加所述预设数量的人物动作图片样本的数量,并返回步骤b1。

6.一种电子装置,其特征在于,该电子装置包括:存储器、处理器,所述存储器上存储有可在所述处理器上运行的音乐生成程序,所述音乐生成程序被所述处理器执行时实现如下步骤:

第一识别步骤:利用摄像单元录制用户的动作视频,读取所述动作视频的当前视频帧作为第一目标视频帧,将所述第一目标视频帧输入预先训练好的模型,识别所述第一目标视频帧中用户的关键部位信息,所述关键部位信息包括第一类人体关节部位的id及其位置坐标值和第二类人体关节部位的id及其位置坐标值;

生成步骤:当识别到第一目标视频帧中所述第一类人体关节部位的位置坐标值和第二类人体关节部位的位置坐标值时,控制播放单元启动并播放根据预设的音乐参数和音效参数的初始值生成的音乐;

第二识别步骤:以第一目标视频帧的读取时间为时间起点,每间隔预设时间,读取所述动作视频的当前视频帧作为第二目标视频帧,将所述第二目标视频帧输入所述预先训练好的模型,识别所述第二目标视频中用户的第一类人体关节部位的id及其位置坐标值和第二类人体关节部位的id及其位置坐标值;

调整步骤:根据预先确定的第一类人体关节部位与音乐参数的映射关系表、第二目标视频帧中第一类人体关节部位的位置坐标值的变化量及第一预设调整幅度表调整音乐参数,根据预先确定的第二类人体关节部位与音效参数的映射关系表、第二目标视频帧中第二类人体关节部位的位置坐标值的变化量及第二预设调整幅度表调整音效参数,并根据调整后的音乐参数及音效参数对所述音乐进行调整生成新的音乐。

7.如权利要求6所述的电子装置,其特征在于,所述调整步骤包括:

a1、将第一目标视频帧中的人体各关节部位的位置坐标值作为各关节部位的位置初始值;

a2、根据第二目标视频帧中第一类人体关节部位的位置坐标值及其位置初始值,计算得出第二目标视频帧中第一类人体关节部位的位置坐标值的变化量;

a3、根据第二目标视频帧中第二类人体关节部位的位置坐标值及其位置初始值,计算得出第二目标视频帧中第二类人体关节部位的位置坐标值的变化量;

a4、根据第二目标视频帧中第一类人体关节部位的位置坐标值的变化量及预先确定的第一类人体关节部位与音乐参数的映射关系表确定需要调整的音乐参数的名称,根据第二目标视频帧中第二类人体关节部位的位置坐标值的变化量及预先确定的第二类人体关节部位与音效参数的映射关系表确定需要调整的音效参数的名称;

a5、根据第二目标视频帧中第一类人体关节部位的位置坐标值的变化量及第一预设调整幅度表对所述需要调整的音乐参数进行调整,根据第二目标视频帧中第二类人体关节部位的位置坐标值的变化量及第二预设调整幅度表对所述需要调整的音效参数进行调整;

a6、根据调整后音乐参数及音效参数对所述音乐进行调整生成新的音乐。

8.如权利要求7所述的电子装置,其特征在于,所述音乐生成程序被所述处理器执行时还实现如下步骤:

停止步骤:当接收到预设停止信号时,控制播放单元停止播放所述音乐。

9.如权利要求6所述的电子装置,其特征在于,所述第一类人体关节部位为人体左半边关节部位,所述第二类人体关节部位为人体右半边关节部位。

10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有音乐生成程序,所述音乐生成程序可被一个或者多个处理器执行,以实现如权利要求1至5任一项所述的音乐生成方法的步骤。

技术总结

本发明涉及数据处理技术领域,揭露了一种音乐生成方法,该方法包括:录制用户的动作视频,读取所述动作视频的当前视频帧作为第一目标视频帧,识别第一目标视频帧中的人体关节部位的ID及位置坐标值并控制播放单元启动,播放按照预设的音乐参数和音效参数的初始值生成的音乐,以第一目标视频帧的读取时间为时间起点,每隔预设时间读取动作视频的当前视频帧作为第二目标视频帧,识别第二目标视频帧中人体关节部位的ID及位置坐标值,根据人体关节部位的位置坐标值的变化量调整音乐参数和音效参数,从而对所述音乐进行调整生成新的音乐。本发明还提出一种电子装置以及一种计算机可读存储介质。本发明解决了音乐创作难、不易扩展的问题。

技术研发人员:刘奡智;蔡梓丰;王健宗

受保护的技术使用者:平安科技(深圳)有限公司

技术研发日:.10.12

技术公布日:.02.21

如果觉得《音乐生成方法 电子装置及计算机可读存储介质与流程》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。