CN109176541A - 一种实现机器人跳舞的方法、设备和储存介质 - Google Patents
一种实现机器人跳舞的方法、设备和储存介质 Download PDFInfo
- Publication number
- CN109176541A CN109176541A CN201811040032.9A CN201811040032A CN109176541A CN 109176541 A CN109176541 A CN 109176541A CN 201811040032 A CN201811040032 A CN 201811040032A CN 109176541 A CN109176541 A CN 109176541A
- Authority
- CN
- China
- Prior art keywords
- music
- eigenmatrix
- model
- order
- dance movement
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J11/00—Manipulators not otherwise provided for
- B25J11/003—Manipulators for entertainment
- B25J11/0035—Dancing, executing a choreography
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1656—Programme controls characterised by programming, planning systems for manipulators
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Manipulator (AREA)
- Toys (AREA)
- Electrophonic Musical Instruments (AREA)
Abstract
本发明提供了一种实现机器人跳舞的方法、设备和储存介质,其方法包括:提取音频源文件的音乐低阶特征矩阵;所述音乐低阶特征矩阵为音乐的表层特征的矩阵数据;将所述音乐低阶特征矩阵输入音乐特征分类模型中进行计算,获得对应的音乐高阶特征矩阵;所述音乐高阶特征矩阵为音乐的深层特征的矩阵数据;将所述音乐高阶特征矩阵输入舞蹈动作生成模型中,生成满足运动学约束条件的舞蹈动作。本发明实现减轻开发人员的时间精力,使得机器人能够根据多个维度的音乐特征信息进行自主跳舞,以及提高舞蹈动作与音乐特征信息之间的匹配度的目的。
Description
技术领域
本发明涉及机器人控制领域,尤指一种实现机器人跳舞的方法、设备和储存介质。
背景技术
随着机器人技术的发展,越来越多的消费级的机器人走进千家万户,然而机器人的智能程度直接影响用户的体验,其中机器人随音乐跳舞是很常见的一个应用场景。所谓机器人随音乐跳舞是指机器人根据给定的音频源文件,获取该音频源文件的特征,然后根据该音乐的特征,生成舞蹈动作,从而实现随音乐跳舞的功能。
目前机器人随音乐跳舞的实现方式有两种,一是开发人员提前根据音乐的类型、节奏、情绪等预先手动编排舞蹈动作,然后在播放音乐时机器人调取编排好的与播放音乐对应的舞蹈动作实现跳舞。二是开发人员首先获取音乐的节拍信息,根据节拍信息随机生成舞蹈动作或者映射到舞蹈动作库生成舞蹈动作实现跳舞。
然而,第一种方式为开发人员需要先聆听音乐后,人工理解音乐的节奏和情绪,然后人工提前编排舞蹈动作,而人工编排不仅仅效率比较低下,且跳舞效果与编排的开发人员的水平相关。第二种仅仅利用音乐的节拍信息生成舞蹈动作,舞蹈动作生成的维度低,导致舞蹈动作和音乐的匹配度较低,用户体验较差;此外,根据节拍信息自主随机生成的舞蹈动作拟人化不够,且无法体现音乐的起伏和情绪。
发明内容
本发明的目的是提供一种实现机器人跳舞的方法、设备和储存介质,实现减轻开发人员的时间精力,使得机器人能够根据多个维度的音乐特征信息进行自主跳舞,以及提高舞蹈动作与音乐特征信息之间的匹配度的目的。
本发明提供的技术方案如下:
本发明提供一种实现机器人跳舞的方法,包括步骤:
提取音频源文件的音乐低阶特征矩阵;所述音乐低阶特征矩阵为音乐的表层特征的矩阵数据;
将所述音乐低阶特征矩阵输入音乐特征分类模型中进行计算,获得对应的音乐高阶特征矩阵,所述音乐高阶特征矩阵为音乐的深层特征的矩阵数据;
将所述音乐高阶特征矩阵输入舞蹈动作生成模型中,生成满足运动学约束条件的舞蹈动作。
本技术方案通过自主提取音乐低阶特征矩阵,根据音乐低阶特征矩阵得到对应的音乐高阶特征矩阵,然后音乐高阶特征矩阵生成对应的舞蹈动作,避免了由于人工预先编排舞蹈引起的效率低下和体验好坏不一的问题,使得机器人能够更高层次表达出音乐情绪、音乐节奏变化等,帮助机器人进一步理解音乐,使舞蹈动作在更高的维度和音乐匹配,提升机器人跳舞的观赏性。
进一步的,所述获取音频源文件的音乐低阶特征矩阵之前包括:
收集音乐样本及其对应的舞蹈图像样本;
提取所述音乐样本的音乐低阶特征矩阵;
对所述音乐样本进行标记得到其音乐高阶特征矩阵;
对所述舞蹈图像样本进行标记得到其动作特征矩阵;
将所述音乐低阶特征矩阵和所述音乐高阶特征矩阵输入训练模型,并根据预设的模型参数训练得到所述音乐特征分类模型;
将所述音乐高阶特征矩阵和所述动作特征矩阵输入训练模型,并根据预设的模型参数训练得到所述舞蹈动作生成模型。
本技术方案通过训练得到的音乐特征分类模型,能够自动理解此后的音频源文件,不需要人工再次参与就能客观可靠的得到对应的音乐高阶特征矩阵,进一步提升获取音乐高阶特征矩阵的准确性和可靠性。获取舞蹈图像样本训练得到对应的舞蹈动作生成模型,根据舞蹈动作生成模型进行生成舞蹈动作,不需要人工再次参与,降低开发人员的工作强度。
进一步的,所述将所述音乐低阶特征矩阵和所述音乐高阶特征矩阵输入训练模型,并根据预设的模型参数训练得到所述音乐特征分类模型之后包括:
根据所述音乐低阶特征矩阵和所述音乐高阶特征矩阵对所述音乐特征分类模型进行验证,得到所述音乐特征分类模型的预测误差值;
当所述音乐特征分类模型的预测误差值小于等于预设误差阈值时,确定所述音乐特征分类模型为最终的音乐特征分类模型;
当所述音乐特征分类模型的预测误差值大于预设误差阈值时,调整所述训练模型的模型参数获得多个待定音乐特征分类模型;
根据所述音乐低阶特征矩阵对每个待定音乐特征分类模型进行验证,得到每个待定音乐特征分类模型对应的预测误差值;
比较每个待定音乐特征分类模型对应的预测误差值的大小,确定预测误差值最小的待定音乐特征分类模型为最终的音乐特征分类模型。
本技术方案进行验证得到最终的音乐特征分类模型,得到分类效果最好的音乐特征分类模型,提升对音乐低阶特征矩阵分类准确性。
进一步的,所述根据所述音乐低阶特征矩阵和所述音乐高阶特征矩阵对所述音乐特征分类模型进行验证,得到所述音乐特征分类模型的预测误差值具体包括:
将所述音乐低阶特征矩阵和音乐高阶特征矩阵分割成若干份数据集;
根据交叉验证的方式将所述数据集依次轮换为验证集和训练集;
将所有交叉验证对应的验证结果求均值得到所述预测误差值。
本技术方案通过交叉验证的方式进行验证评价音乐特征分类模型的分类效果,能够在一定程度上减小过拟合的现象,提升音乐特征分类模型的分类准确性。
进一步的,所述获取音频源文件的音乐低阶特征矩阵具体包括:
将读取的音频源文件进行分割得到若干个音频帧;
对所述音频帧进行音频信号处理得到所述音乐低阶特征矩阵;所述音频信号处理包括加窗处理或加窗处理后频域变换处理。
进一步的,所述将所述音乐低阶特征矩阵输入音乐特征分类模型中进行计算,获得对应的音乐高阶特征矩阵,所述音乐高阶特征矩阵为音乐的深层特征的矩阵数据具体包括:
将所述音乐低阶特征矩阵输入所述音乐特征分类模型;
通过所述音乐特征分类模型解析输入的所述音乐低阶特征矩阵得到类别评判值;
根据输入的音乐特征分类模型的预设阈值与所述类别评判值的比较结果,输出所述音乐低阶特征矩阵对应的音乐高阶特征矩阵。
进一步的,所述将所述音乐高阶特征矩阵和所述动作特征矩阵输入训练模型,并根据预设的模型参数训练得到所述舞蹈动作生成模型之后包括:
根据所述音乐高阶特征矩阵和所述动作特征矩阵对所述舞蹈动作生成模型进行验证,得到所述舞蹈动作生成模型的预测误差值;
当所述舞蹈动作生成模型的预测误差值小于等于预设误差阈值时,确定所述舞蹈动作生成模型为最终的舞蹈动作生成模型;
当所述舞蹈动作生成模型的预测误差值大于预设误差阈值时,调整所述训练模型的模型参数获得多个待定舞蹈动作生成模型;
根据所述动作特征矩阵对每个待定舞蹈动作生成模型进行验证,得到每个待定舞蹈动作生成模型对应的预测误差值;
比较每个待定舞蹈动作生成模型对应的预测误差值的大小,确定预测误差值最小的待定舞蹈动作生成模型为最终的舞蹈动作生成模型。
本技术方案进行验证得到最终的舞蹈动作生成模型,得到分类效果最好的舞蹈动作生成模型,能够根据音频源文件的音乐高阶特征矩阵生成不同的舞蹈动作,实现实时跟随相同的歌曲跳出不同的舞姿,极大的丰富了机器人的舞蹈动作,改善了用户体验。
进一步的,所述将所述音乐高阶特征矩阵输入舞蹈动作生成模型中,生成满足运动学约束条件的舞蹈动作具体包括:
将所述音乐高阶特征矩阵输入至所述舞蹈动作生成模型,通过所述舞蹈动作生成模型分类计算得到与所述音乐高阶特征矩阵对应的参考舞蹈动作;
将所述参考舞蹈动作进行分割得到对应的关节运动参数;所述关节运动参数包括移动幅度和移动时间;
分别对相邻的两组关节运动参数进行处理,生成满足所述运动学约束条件的舞蹈动作。
本技术方案将生成的参考舞蹈动作进行验证处理,生成满足运动学约束条件的舞蹈动作,这样会让机器人动作更加柔顺和自然,同时有效避免自碰撞等现象的产生。
进一步的,所述将所述参考舞蹈动作进行分割得到对应的关节运动参数之后,所述分别对相邻的两组关节运动参数进行处理,生成满足所述运动学约束条件的舞蹈动作之前包括:
当存在超过所述预设自由度范围和预设速度范围的关节运动参数时,对所有关节运动参数进行等比例缩小,得到等比例缩小后的关节运动参数。
本技术方案验证动作是否超出机器人关节的自由度范围及速度范围等,并对所有关节运动参数进行等比例缩小,实现小范围的优化,使得机器人的舞蹈动作等比例变化,令机器人跳舞时更加流畅自然,提升机器人舞蹈的观赏性。
本发明还提供一种存储介质,所述存储介质存储有多条指令,所述多条指令被一个或者多个处理器执行,实现以上所有方案描述的实现机器人跳舞的方法的步骤。
本发明还提供一种实现机器人跳舞的设备,包括:
音乐低阶特征矩阵提取模块,用于获取音频源文件的音乐低阶特征矩阵;所述音乐低阶特征矩阵为音乐的表层特征的矩阵数据;
音乐高阶特征矩阵获取模块,与所述音乐低阶特征矩阵提取模块连接,用于将所述音乐低阶特征矩阵输入所述音乐特征分类模型中进行分类,获得对应的音乐高阶特征矩阵,所述音乐高阶特征矩阵为音乐的深层特征的矩阵数据;
舞蹈动作生成模块,与所述音乐高阶特征矩阵获取模块连接,用于将所述音乐高阶特征矩阵输入所述舞蹈动作生成模型中,生成满足运动学约束条件的舞蹈动作。
本技术方案通过自主提取音乐低阶特征矩阵,根据音乐低阶特征矩阵得到对应的音乐高阶特征矩阵,然后音乐高阶特征矩阵生成对应的舞蹈动作,避免了由于人工预先编排舞蹈引起的效率低下和体验好坏不一的问题,使得机器人能够更高层次表达出音乐情绪、音乐节奏变化等,帮助机器人进一步理解音乐,使舞蹈动作在更高的维度和音乐匹配,提升机器人跳舞的观赏性。
进一步的,还包括:
样本收集模块,用于收集音乐样本及其对应的舞蹈图像样本;
所述音乐低阶特征矩阵提取模块,与所述样本收集模块连接,还用于提取所述音乐样本的音乐低阶特征矩阵;
音乐高阶特征矩阵标记模块,与所述样本收集模块连接,用于对所述音乐样本进行标记,得到所述音乐样本的音乐高阶特征矩阵;
动作特征矩阵标记模块,与所述样本收集模块连接,用于对所述舞蹈图像样本进行标记,得到所述舞蹈图像样本的动作特征矩阵;
音乐特征分类模型生成模块,与所述音乐低阶特征矩阵提取模块和所述音乐高阶特征矩阵标记模块和所述音乐高阶特征矩阵获取模块连接,用于将所述音乐样本的音乐低阶特征矩阵和音乐高阶特征矩阵输入训练模型,并根据预设的模型参数训练得到所述音乐特征分类模型;
舞蹈动作生成模型生成模块,与所述音乐高阶特征矩阵标记模块、所述动作特征矩阵标记模块和所述舞蹈动作生成模型生成模块连接,用于将所述音乐样本的音乐高阶特征矩阵和所述动作特征矩阵输入训练模型,并根据预设的模型参数训练得到所述舞蹈动作生成模型。
本技术方案通过训练得到的音乐特征分类模型,能够自动理解此后的音频源文件,不需要人工再次参与就能客观可靠的得到对应的音乐高阶特征矩阵,进一步提升获取音乐高阶特征矩阵的准确性和可靠性。获取舞蹈图像样本训练得到对应的舞蹈动作生成模型,根据舞蹈动作生成模型进行生成舞蹈动作,不需要人工再次参与,降低开发人员的工作强度。
进一步的,还包括:
音乐特征分类预测误差获取模块,与所述音乐低阶特征矩阵提取模块,所述音乐高阶特征矩阵标记模块和所述音乐特征分类模型生成模块连接,用于根据所述音乐低阶特征矩阵和所述音乐高阶特征矩阵对所述音乐特征分类模型进行验证,得到所述音乐特征分类模型的预测误差值;
音乐特征分类模型确定模块,与所述音乐特征分类预测误差获取模块连接,用于当所述音乐特征分类模型的预测误差值小于等于预设误差阈值时,确定所述音乐特征分类模型为最终的音乐特征分类模型;还当所述音乐特征分类模型的预测误差值大于预设误差阈值时,调整所述训练模型的模型参数获得多个待定音乐特征分类模型,根据所述音乐低阶特征矩阵对每个待定音乐特征分类模型进行验证,得到每个待定音乐特征分类模型对应的预测误差值,比较每个待定音乐特征分类模型对应的预测误差值的大小,确定预测误差值最小的待定音乐特征分类模型为最终的音乐特征分类模型。
本技术方案进行验证得到最终的音乐特征分类模型,得到分类效果最好的音乐特征分类模型,提升对音乐低阶特征矩阵分类准确性。
进一步的,所述音乐特征分类预测误差获取模块包括:
分割单元,用于将所述音乐低阶特征矩阵和音乐高阶特征矩阵分割成若干份数据集;
验证单元,与所述分割单元连接,根据交叉验证的方式将所述数据集依次轮换为验证集和训练集;
计算单元,与所述验证单元连接,将所有交叉验证对应的验证结果求均值得到所述预测误差值。
本技术方案通过交叉验证的方式进行验证评价音乐特征分类模型的分类效果,能够在一定程度上减小过拟合的现象,提升音乐特征分类模型的分类准确性。
进一步的,所述音乐低阶特征矩阵提取模块包括:
音频分割单元,用于将所述音频源文件进行分割得到若干个音频帧;
音乐处理单元,与所述音频分割单元连接,用于对所述音频帧进行音频信号处理得到所述音乐低阶特征矩阵;所述音频信号处理包括加窗处理或加窗处理后频域变换处理。
进一步的,所述音乐高阶特征矩阵获取模块包括:
音乐低阶特征矩阵输入单元,用于将所述音乐低阶特征矩阵输入所述音乐特征分类模型;
类别估测单元,与所述音乐低阶特征矩阵输入单元连接,用于通过所述音乐特征分类模型解析输入的所述音乐低阶特征矩阵得到类别评判值;
音乐高阶特征矩阵输出单元,与所述类别估测单元连接,用于根据输入的音乐特征分类模型的预设阈值与所述类别评判值的比较结果,输出所述音乐低阶特征矩阵对应的音乐高阶特征矩阵。
进一步的,还包括:
舞蹈分类预测误差获取模块,与所述音乐高阶特征矩阵标记模块,所述动作特征矩阵标记模块和所述舞蹈动作生成模型生成模块连接,用于根据所述音乐高阶特征矩阵和所述动作特征矩阵对所述舞蹈动作生成模型进行验证,得到所述舞蹈动作生成模型的预测误差值;
舞蹈动作生成模型确认模块,与所述舞蹈分类预测误差获取模块连接,用于当所述舞蹈动作生成模型的预测误差值小于等于预设误差阈值时,确定所述舞蹈动作生成模型为最终的舞蹈动作生成模型;还当所述舞蹈动作生成模型的预测误差值大于预设误差阈值时,调整所述训练模型的模型参数获得多个待定舞蹈动作生成模型;根据所述动作特征矩阵对每个待定舞蹈动作生成模型进行验证,得到每个待定舞蹈动作生成模型对应的预测误差值;比较每个待定舞蹈动作生成模型对应的预测误差值的大小,确定预测误差值最小的待定舞蹈动作生成模型为最终的舞蹈动作生成模型。
本技术方案进行验证得到最终的舞蹈动作生成模型,得到分类效果最好的舞蹈动作生成模型,能够根据音频源文件的音乐高阶特征矩阵生成不同的舞蹈动作,实现实时跟随相同的歌曲跳出不同的舞姿,极大的丰富了机器人的舞蹈动作,改善了用户体验。
进一步的,所述舞蹈动作生成模块包括:
音乐高阶特征矩阵输入单元,用于将所述音乐高阶特征矩阵输入至所述舞蹈动作生成模型;
参考舞蹈动作获取单元,与所述音乐高阶特征矩阵输入单元连接,用于通过所述舞蹈动作生成模型分类计算得到与所述音乐高阶特征矩阵对应的参考舞蹈动作;
关节运动参数获取单元,与所述参考舞蹈动作获取单元连接,用于将所述参考舞蹈动作进行分割得到对应的关节运动参数;所述关节运动参数包括移动幅度和移动时间;
关节运动参数处理单元,与所述关节运动参数获取单元连接,用于分别对相邻的两组关节运动参数进行处理,生成满足所述运动学约束条件的舞蹈动作。
本技术方案将生成的参考舞蹈动作进行验证处理,生成满足运动学约束条件的舞蹈动作,这样会让机器人动作更加柔顺和自然,同时有效避免自碰撞等现象的产生。
进一步的,所述舞蹈动作生成模块还包括:
关节运动参数调整单元,分别与所述关节运动参数获取单元连接,用于当存在超过所述预设自由度范围和预设速度范围的关节运动参数时,对所有关节运动参数进行等比例缩小,得到等比例缩小后的关节运动参数;
所述关节运动参数处理单元,与所述关节运动参数调整单元连接,用于分别对相邻的两组关节运动参数进行处理,生成满足所述运动学约束条件的舞蹈动作。
本技术方案验证动作是否超出机器人关节的自由度范围及速度范围等,并对所有关节运动参数进行等比例缩小,实现小范围的优化,使得机器人的舞蹈动作等比例变化,令机器人跳舞时更加流畅自然,提升机器人舞蹈的观赏性。
本发明提供的一种实现机器人跳舞的方法、设备和储存介质,通过自主提取音乐低阶特征矩阵,根据音乐低阶特征矩阵得到对应的音乐高阶特征矩阵,然后音乐高阶特征矩阵生成对应的舞蹈动作,避免了由于人工预先编排舞蹈引起的效率低下和体验好坏不一的问题,使得机器人能够更高层次表达出音乐情绪、音乐节奏变化等,帮助机器人进一步理解音乐,使舞蹈动作在更高的维度和音乐匹配,提升机器人跳舞的观赏性。
附图说明
下面将以明确易懂的方式,结合附图说明优选实施方式,对一种实现机器人跳舞的方法、设备和储存介质的上述特性、技术特征、优点及其实现方式予以进一步说明。
图1是本发明实现机器人跳舞的方法的一个实施例的流程图;
图2是本发明实现机器人跳舞的方法的另一个实施例的流程图;
图3是本发明实现机器人跳舞的方法的另一个实施例的流程图;
图4是本发明实现机器人跳舞的方法的另一个实施例的流程图;
图5是本发明实现机器人跳舞的设备的一个实施例的结构示意图;
图6是本发明实现机器人跳舞的设备的另一个实施例的结构示意图。
具体实施方式
为了更清楚地说明本发明实施例或现有技术的技术方案,下面将对照附图说明本发明的具体实施方式。显而易见地,下面描述的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图,并获得其他的实施方式。
为使图面简洁,各图中只示意性地表示出了与本发明相关的部分,它们并不代表其作为产品的实际结构。另外,以使图面简洁便于理解,在有些图中具有相同结构或功能的部件,仅示意性地绘示了其的一个,或仅标出了其的一个。在本文中,“一个”不仅表示“仅此一个”,也可以表示“多于一个”的情形。
本发明第一实施例,一种实现机器人跳舞的方法,如图1所示,包括:
S1000提取音频源文件的音乐低阶特征矩阵,所述音乐低阶特征矩阵为音乐的表层特征的矩阵数据;
具体的,音频源文件的类型包括MP3,VQF,MIDI等等,将音频源文件进行分析,通过对音频源文件的频谱特征进行分析得到一系列的音乐低阶特征,将音乐低阶特征进行矩阵化得到对应的音乐低阶特征矩阵,从而得到对应的音乐低阶特征矩阵。其中,音乐低阶特征矩阵为音乐的表层特征的矩阵数据,而表层特征即为类似节奏,节拍等等不需要人工收听后理解,而是直接由现有的音频处理技术能够分析处理得到的表层特征。
S2000将所述音乐低阶特征矩阵输入音乐特征分类模型中进行计算,获得对应的音乐高阶特征矩阵;所述音乐高阶特征矩阵为音乐的深层特征的矩阵数据;
具体的,由于舞蹈是一种表演艺术,它是一种将音乐配乐作为输入经过舞蹈艺术家的理解进而以肢体语言表达出来的艺术形式,需要对音乐具有更高层次的抽象与理解才会表演出更精彩的舞蹈。本发明获取到音乐低阶特征矩阵后,并不像现有技术那样将其作为舞蹈动作的依据传递至机器人,让机器人根据音乐低阶特征矩阵生成对应的舞蹈动作进行跳舞,而是根据多维度的音乐低阶特征矩阵和预先训练得到的音乐特征分类模型进行获取得到音乐高阶特征矩阵,将获取到多维度的音乐高阶特征矩阵作为后续机器人的舞蹈动作产生的依据。其中,音乐高阶特征矩阵为音乐的深层特征的矩阵数据,而深层特征即为跳舞指数,音乐流派等等抽象的,需要人工收听后理解,不能由现有的音频处理技术能够分析处理得到的深层特征。
优选的,音乐特征分类模型可以是SVM训练模型,也可以是神经网络训练模型,音乐特征分类模型能够将通过音频处理技术提取的音乐低阶特征矩阵分类计算得到多个维度的音乐高阶特征。
S3000将所述音乐高阶特征矩阵输入舞蹈动作生成模型中,生成满足运动学约束条件的舞蹈动作;
具体的,运动学约束条件是机器人能够执行跳舞的约束条件,由于通过对音频源文件的音乐低阶特征矩阵进行分析,然后由音乐特征分类模型对音乐低阶特征矩阵进行分类得到音乐高阶特征矩阵,从而对音频源文件有充分的了解和分析,将获取的音乐高阶特征矩阵输入预先训练得到的舞蹈动作生成模型中,能够自主生成充满情感的舞蹈动作,不仅仅避免了由于开发人员人工预先编写代码编排舞蹈动作引起的效率低下的问题,还能够对音乐表达出来的情绪类型音乐节奏变化等音乐高阶特征矩阵,匹配得到合适的舞蹈动作,使得机器人能够进一步跳舞表达出更加丰富,深度的舞蹈,令机器人的舞蹈动作更深层次的,更全面化的与音频源文件匹配,使得机器人的舞蹈更加自然流畅,更加贴近音频源文件的特征,拟人效果好,从而使得使用者能够被跳舞机器人的舞蹈打动,提升使用体验。
本实施例中,机器人随音乐跳舞的功能可以提高机器人的智能程度和用户体验,然而目前机器人舞蹈动作大多通过提前预设完成,效率比较低,本发明提出的方案让机器人自主获取音乐的特征矩阵(包括音乐低阶特征矩阵和音乐高阶特征矩阵),然后根据音乐的特征矩阵自主生成舞蹈动作,避免了由于人工预先编排舞蹈引起的效率低下和体验好坏不一的问题。此外,由于自主获取音乐低阶特征矩阵,后在此基础上提出了利用音乐特征分类模型获取音乐高阶特征矩阵,帮助机器人进一步理解音乐,使舞蹈动作在更高的维度和音乐匹配,提升机器人跳舞的观赏性。
本发明第二实施例,如图2所示,本实施例是上述第一实施例的优化实施例,与上述第一实施例相比,改进之处在于,所述S1000获取音频源文件的音乐低阶特征矩阵之前包括:
S0100收集音乐样本及其对应的舞蹈图像样本;
具体的,音乐样本可以是各种类型的音乐,舞蹈图像样本包括但是不限于舞蹈动作视频(MV,AVI等等)和多帧动态图(GIF,JPG等等),而获取的舞蹈图像样本是依据收集的音乐样本进行获取的,因此,舞蹈图像样本与音乐样本呈对应关系,可以从网络获取音乐样本及其对应的舞蹈图像样本,也可以从本地音乐样本及其对应的舞蹈图像样本。获取的音乐样本及其对应的舞蹈图像样本的种类和数量越多越好,这样便于训练得到音乐特征分类模型和舞蹈动作生成模型,使得音乐特征分类模型的识别率更高,准确率更高,也使得舞蹈动作生成模型生成的舞蹈动作更丰富多样。
S0200提取所述音乐样本的音乐低阶特征矩阵;
具体的,获取音乐样本的音乐低阶特征,根据音乐低阶特征得到对应的音乐低阶特征矩阵,音乐低阶特征包括音乐节奏(Rhythm)、音乐响度(Loudness)、音乐频谱特征(复杂度、升频、降频、能量等)、和声(Harmonic)、音调(Pitch)、音乐力度变化(Dynamic)、倒谱系数(MFCC)、节拍(BPM)等,得到音乐低阶特征后,将得到的每个音乐低阶特征进行矩阵化处理,得到对应的音乐低阶特征矩阵。
S0300对所述音乐样本进行标记得到其音乐高阶特征矩阵;
具体的,人工对收听每个音乐样本并对每个音乐样本进行理解,得到每个音乐样本对应的音乐高阶特征,将得到的每个音乐高阶特征进行矩阵化处理,得到对应的音乐高阶特征矩阵,再将得到的音乐高阶特征矩阵对应标记各个音乐样本,得到具有音乐高阶特征矩阵标记的音乐样本。音乐高阶特征矩阵包括但是不限于跳舞指数(Dance ability)矩阵、演唱者性别(Gender)、音乐流派矩阵(爵士音乐、蓝调音乐、说唱音乐、流行音乐、宫廷音乐、乡村音乐、重金属音乐、民族音乐等)、情绪类型矩阵(这首音乐听完后对于人的情绪的影响类型,包括但是不限于歌曲激情指数、歌曲高兴指数、歌曲放松指数、歌曲伤心指数等)、旋律变化指数矩阵、主歌副歌指数矩阵等。
S0400对所述舞蹈图像样本进行标记得到其动作特征矩阵;
具体的,将获取的舞蹈图像样本进行分割得到若干个图像帧,人工对每个图像帧的各个动作姿态进行观看理解,分析各个动作姿态得到每个图像帧对应的动作特征,再将得到的每个动作特征进行矩阵化处理得到对应的动作特征矩阵,再将得到的动作特征矩阵对应标记各个舞蹈图像样本得到具有动作特征矩阵标记的舞蹈图像样本。
由于通过收集的音乐样本对应获取的舞蹈图像样本,因此每个舞蹈图像样本分别对应于音乐样本的音乐高阶特征矩阵。示例性的,假设音乐样本有Y,Y2和Y3,其分别对应的音乐高阶特征矩阵为H1,H2和H3,根据音乐样本有Y,Y2和Y3对应找到对应的舞蹈图像样本W1,W2和W3,那么对舞蹈图像样本W1,W2和W3分别进行观赏标记对应的动作特征矩阵D1,D2和D3,由于舞蹈图像样本依据音乐样本查找获取的,因此,舞蹈图像样本W1的音乐高阶特征矩阵为H1,舞蹈图像样本W2的音乐高阶特征矩阵为H2,舞蹈图像样本W3的音乐高阶特征矩阵为H3。此处只是例举了一个音乐样本找到一个舞蹈图像样本的情况,由于不同人对同一个音乐样本编排的舞蹈可能不一样,因此,对于一个音乐样本找到两个或两个以上的舞蹈图像样本的情况,同样依据上述方式对舞蹈图像样本进行标记对应的音乐高阶特征矩阵。
S0500将所述音乐低阶特征矩阵和所述音乐高阶特征矩阵输入训练模型,并根据预设的模型参数训练得到所述音乐特征分类模型;
具体的,将音乐低阶特征矩阵和音乐高阶特征矩阵输入训练模型输入训练模型中,可以设置训练模型的模型参数为默认值或者经验值,从而对输入的音乐低阶特征矩阵和音乐高阶特征矩阵进行训练得到对应的音乐特征分类模型;优选的,将预设的模型参数优选设置为经验值,从而提升训练得到音乐特征分类模型的效率。其中,音乐特征分类模型,音乐低阶特征矩阵和音乐高阶特征矩阵三者之间的关系就类似于y=ax,音乐低阶特征矩阵代表因变量y,音乐高阶特征矩阵代表自变量x,音乐特征分类模型代表系数a,那么,将获取的音乐低阶特征矩阵和音乐高阶特征矩阵输入训练模型进行训练就能得到音乐特征分类模型。
S0600将所述音乐高阶特征矩阵和所述动作特征矩阵输入训练模型,并根据预设的模型参数训练得到所述舞蹈动作生成模型。
具体的,将音乐高阶特征矩阵和动作特征矩阵输入训练模型输入训练模型中,可以设置训练模型的模型参数为默认值或者经验值,从而对输入的音乐高阶特征矩阵和动作特征矩阵进行训练得到对应的舞蹈动作生成模型;优选的,将预设的模型参数优选设置为经验值,从而提升训练得到舞蹈动作生成模型的效率。针对不同类型的音乐高阶特征矩阵进行训练,使得根据不同的音乐高阶特征矩阵生成随机的舞蹈动作,从而避免对应同一首歌曲执行同样的舞蹈动作,提升用户的观赏体验。
本实施例中,图2中的步骤S0200-S0400之间无先后顺序,可以先后执行,也可调换执行顺序,亦可同时执行,此处只是一个示例图。事先获取音乐样本及其对应的舞蹈图像样本,提取音乐样本的音乐低阶特征矩阵,并根据人工确定对应音乐样本的音乐高阶特征矩阵,从而训练得到对应的音乐特征分类模型,便于后续直接根据音乐特征分类模型对新出的音频源文件进行分类处理得到音乐高阶特征矩阵,而不再需要人工收听理解就能自动理解得到对应的深层特征,减少人工反复参与的情况,提升机器人舞蹈动作编排的效率。此外,避免人工在由于反复参与过程中,可能因为不同环境,不同心境,不同情绪的影响下主观理解得到音乐高阶特征矩阵差异性大的情况,本发明在专业人士(例如资深音乐家)对每个音乐样本进行收听理解后得到的音乐高阶特征矩阵比较权威可信的前提下,通过训练得到的音乐特征分类模型,能够自动理解此后的音频源文件,不需要人工再次参与就能客观可靠的得到对应的音乐高阶特征矩阵,进一步提升获取音乐高阶特征矩阵的准确性和可靠性。然后,根据舞蹈图像样本对应的音乐样本获取其音乐高阶特征矩阵,并人工确定舞蹈图像样本对应的动作特征矩阵,训练得到对应的舞蹈动作生成模型,便于后续直接根据舞蹈动作生成模型对新得到的音乐高频特征矩阵进行训练得到对应的舞蹈动作。例如收集大量的爵士音乐对应的爵士舞、民族音乐对应的民族舞、说唱音乐对应的说唱肢体动作等一系列的舞蹈图像样本,获取每个舞蹈图像样本的动作特征矩阵,将舞蹈图像样本的动作特征矩阵和音乐高阶特征矩阵输入训练模型中,然后进行训练并找到最优的舞蹈动作生成模型,便于后续向舞蹈动作生成模型输入音乐高阶特征矩阵以生成对应的动作特征矩阵,生成适用于机器人的舞蹈动作,从而使得机器人根据上述步骤生成的舞蹈动作进行跳舞,以表现出根据音频源文件的音乐类型、音乐情绪变化和旋律变化等高阶特征。例如同一首音乐,不同的情感表达就能够由机器人表达出不同的舞蹈动作,拟人性更佳,较好地模拟了人类舞蹈的场景,易于产生共鸣,加强舞蹈气氛。另外,还能够使机器人根据加载的歌曲内容的不同或者相同歌曲内容不同情绪,实现实时跟随歌曲跳出不同的舞姿,极大的丰富了机器人的舞蹈动作,改善了用户体验。
本发明第三实施例,如图3所示,本实施例是上述第二实施例的优化实施例,与上述第二实施例相比,改进之处在于,所述S0500将所述音乐低阶特征矩阵和所述音乐高阶特征矩阵输入训练模型,并根据预设的模型参数训练得到所述音乐特征分类模型之后之后包括:
S0510根据所述音乐低阶特征矩阵和所述音乐高阶特征矩阵对所述音乐特征分类模型进行验证,得到所述音乐特征分类模型的预测误差值;
S0520当所述音乐特征分类模型的预测误差值小于等于预设误差阈值时,确定所述音乐特征分类模型为最终的音乐特征分类模型;
具体的,进行训练得到音乐特征分类模型后,将若干个音乐低阶特征矩阵输入音乐特征分类模型得到对应的预测误差值,一旦预测误差值小于等于预设误差阈值的时候,就表明该音乐特征分类模型的分类结果的可靠性较高,达到预期的分类效果,从而确定训练得到的音乐特征分类模型为最终的音乐特征分类模型。
S0530当所述音乐特征分类模型的预测误差值大于预设误差阈值时,调整所述训练模型的模型参数获得多个待定音乐特征分类模型;
S0540根据所述音乐低阶特征矩阵对每个待定音乐特征分类模型进行验证,得到每个待定音乐特征分类模型对应的预测误差值;
S0550比较每个待定音乐特征分类模型对应的预测误差值的大小,确定预测误差值最小的待定音乐特征分类模型为最终的音乐特征分类模型。
具体的,进行训练得到音乐特征分类模型后,将若干个音乐低阶特征矩阵输入音乐特征分类模型得到对应的预测误差值,一旦预测误差值大于预设误差阈值的时候,就表明该音乐特征分类模型的分类结果的可靠性较低,未能达到预期的分类效果,从而调整训练模型的模型参数获得多个待定音乐特征分类模型,继而将若干个音乐低阶特征矩阵输入各个待定音乐特征分类模型,得到每个待定音乐特征分类模型对应的预测误差值,然后比较所有的待定音乐特征分类模型对应的预测误差值的数值大小,将预测误差值最小的待定音乐特征分类模型作为最终的音乐特征分类模型。示例性的,当使用SVM支持向量机的方法进行训练得到音乐特征分类模型时,如果采用默认的支持向量机参数,如分类器类型(C-SVC,V-SVC,One-Class SVM,E-SVR或者V-SVR)、核函数类型、惩罚因子等,进行模型训练,进而获得音乐特征分类模型,那么当其对应的预测误差值大于预设误差阈值的时候,进行支持向量机参数调优后,确定最终的音乐特征分类模型,即为了获得效果最好的训练模型,不断调整支持向量机参数,训练出多个待定音乐特征分类模型,然后将效果最好的也就是预测误差最小的待定音乐特征分类模型作为最终的音乐特征分类模型。优选的,采用SVM支持向量机的方法训练得到音乐特征分类模型,由于SVM支持向量机的方法适应于小数量样本训练学习,因此相对于神经网络学习而言,可以获取少量的样本就能得到准确率较高的分类结果,而且,SVM支持向量机的方法避开了从归纳到演绎的传统过程,实现了高效的从训练样本到预报样本的“转导推理”,大大简化了通常的分类和回归等问题,避免分类维数过高产生的“维数灾难”,避免高维情况下的过拟合现象,具有较高的鲁棒性,使得训练分类效率高的同时,提升分类准确率。
本实施例中,训练得到音乐特征分类模型后,需要对其分类的准确性进行判断,根据若干个具有音乐高阶特征矩阵标记的音乐样本对应的音乐低阶特征矩阵进行验证得到最终的音乐特征分类模型,这样,能够得到分类效果最好的音乐特征分类模型,而且使用经过数据验证后确定的最终的音乐特征分类模型进行分类,能够提升对音乐低阶特征矩阵分类准确性。
本发明第四实施例,本实施例是上述第三实施例的优化实施例,与上述第三实施例相比,改进之处在于,所述S0510根据所述音乐低阶特征矩阵和所述音乐高阶特征矩阵对所述音乐特征分类模型进行验证,得到所述音乐特征分类模型的预测误差值具体包括:
S0511将所述音乐低阶特征矩阵和音乐高阶特征矩阵分割成若干份数据集;
S0512根据交叉验证的方式将所述数据集依次轮换为验证集和训练集;
S0513将所有交叉验证对应的验证结果求均值得到所述预测误差值。
具体的,通过音乐低阶特征矩阵进行分割,示例性的,若将音乐低阶特征矩阵和音乐高阶特征矩阵分割成10份数据集即为N1,N2,……,N10,将1份数据集N1作为验证集,剩余的数据集N2,N3,……,N10总共9份数据集作为训练集进行训练验证得到对应的验证结果M1,然后依此类推,轮流轮换N2,N3,……,N10作为验证集等等得到对应的验证结果M2,M3,……,M10,将这10个验证结果进行均值运算得到预测误差值。优选的,少于数据集三分之一的作为验证集。
本实施例中,通过交叉验证的方式进行验证评价音乐特征分类模型的分类效果,能够在一定程度上减小过拟合的现象,提升音乐特征分类模型的分类准确性。
本发明第五实施例,本实施例是上述第一至第四任一实施例的优化实施例,与上述第一至第四任一实施例相比,改进之处在于,所述S1000获取音频源文件的音乐低阶特征矩阵具体包括:
S1100将所述音频源文件进行分割得到若干个音频帧;
S1200对所述音频帧进行音频信号处理得到所述音乐低阶特征矩阵;所述音频信号处理包括加窗处理或加窗处理后频域变换处理。
具体的,音乐低阶特征的获取是通过对音频源文件进行时域和频域的的分析后,根据音频源文件的波形特征和频谱特征提取音频源文件的梅尔倒谱系数(MFCC)、音乐节奏(Rhythm)、音乐响度(Loudness)、音乐频谱特征(复杂度、升频、降频、能量等)、和声(Harmonic)、音调(Pitch)、音乐力度变化(Dynamic)、节拍(BPM)等音乐低阶特征,然后对音乐低阶特征进行矩阵化得到对应的音乐低阶特征矩阵。
音乐低阶特征大多需要对音频源文件进行载入,然后经过分帧和加窗,最后经过频域转化(例如傅里叶变换)获得频谱图后在频域上进行数学分析获得,具体步骤如下:
步骤1:读取音频源文件。音频的读取是指载入待提取的音频源文件(如wav、MP3等格式)到内存中,通常利用FFmpeg或LibAv库来实现。
步骤2:音频帧分割。由于音频源文件直接处理器来内存开销过大,所以需要将音频源文件分割成方便处理的音频片段即音频帧,然后进一步处理。
步骤3:音频帧加窗。对上一步骤中获得的音频帧进行加窗处理就是采用窗函数对音频帧进一步进行截取,方便进行数据处理,常用的窗函数有矩形窗、三角窗、汉宁窗、高斯窗等。
步骤4:获得声音频谱图。对上一步骤加窗后的音频数据进行傅里叶变换将时域信号离散后转换成频域信号,将这些频域信号连接起来就获得了整首音频源文件的频谱图。
对于梅尔倒谱系数(MFCC)的获取,需要将步骤4中获得的频谱图通过梅尔滤波器组,进而得到梅尔频谱,梅尔频谱是体现了人类听觉特性的频率普,因此这一步骤将自然音的频谱转换成和人类听觉有相关性的频谱。再将获得的梅尔频谱上面进行倒谱分析(取对数,做逆变换等),获得梅尔频率倒谱系数,这就是该音频源文件音乐低价特征的梅尔倒谱系数(MFCC)。音乐低阶特征最后都转换成矩阵的形式进行描述得到音乐低阶特征矩阵,例如我们获得的歌曲的梅尔倒谱系数矩阵形式一般为([]内的…代表数据):
对于音乐节奏(Rhythm)的获取,需要将步骤4中获得的频谱图绘制成频率分布直方图(BPM直方图),利用统计学方法获得直方图的数字特征(均值、中位数、众数等)和波峰波谷分布情况,进一步获得音频源文件音乐低价特征的音乐节奏,音乐节奏矩阵如下表示:
对于音乐响度(Loudness)的获取,需要将步骤4中获得的频谱图的峰值为中心进行加窗,获得窗口内信号强度的最大、最小、中值、均值等数据,得到音频源文件音乐低价特征的音乐响度。音乐响度矩阵如下表示:
对于音乐频谱特征(复杂度、升频、降频、能量等)的获取,需要将步骤4中获得的频谱图进行频谱对比度分析(如频谱的峰值、谷值、峰谷差值等),获得音频源文件音乐低价特征的频谱特征。
对于和声(Harmonic)的获取,需要将步骤4中获得的频谱图进行频率分布状态分析,利用HPCP算法进行色度特征分析,得到音频源文件音乐低价特征的和声。
对于音乐力度变化(Dynamic)的获取,需要将步骤4中获得的频谱图对上述频谱图进行整体力度变化度进行分析,获得音频源文件音乐低价特征的音乐力度变化。
对于节拍(BPM)的获取,需要根据步骤4中获得的频谱图的频谱差异特征,获得鼓点数(Beat)和分布,然后求均值获得音频源文件音乐低价特征的节拍。
对于音调(Pitch)的获取,需要将步骤3进过加窗处理后的数据利用YinFFT算法进行频域分析,获得音频源文件音乐低价特征的音调。
本实施例中,通过对音频源文件进行分割,加窗,频域变换,分析的操作提取音频源文件中包括的各个音乐低阶特征,进而进行矩阵化得到对应的音乐低价特征矩阵,从而为了后续获取音乐高阶特征矩阵做准备。
本发明第六实施例,本实施例是上述第一至第五任一实施例的优化实施例,与上述第一至第五任一实施例相比,改进之处在于,所述S2000将所述音乐低阶特征矩阵输入音乐特征分类模型中进行计算,获得对应的音乐高阶特征矩阵,所述音乐高阶特征矩阵为音乐的深层特征的矩阵数据具体包括:
S2100将所述音乐低阶特征矩阵输入所述音乐特征分类模型;
S2200通过所述音乐特征分类模型解析输入的所述音乐低阶特征矩阵得到类别评判值;
S2300根据输入的音乐特征分类模型的预设阈值与所述类别评判值的比较结果,输出所述音乐低阶特征矩阵对应的音乐高阶特征矩阵。
具体的,音乐特征分类模型是分类得到各个类别评判值的,音乐特征分类模型相当于集成了若干个不同类别分类的子分类器,将音频源文件对应的音乐低阶特征矩阵输入各个子分类器中,各个子分类器进行分析评判得到属于自身类别的类别评判值,从而输出得到音乐低阶特征矩阵对应的音乐高阶特征矩阵。示例性的,利用SVM(SupportVectorMachine,支持向量机)训练得到音乐特征分类模型,然后将提取的音乐低阶特征矩阵提前训练好的音乐特征分类模型中进行分类计算,具体来讲,以跳舞指数为例,该跳舞指数是用来判断该音频源文件是否具是音乐文件(适合跳舞),如果是非音乐文件(如朗诵,故事、评书等),即没有音乐特有的节奏、乐音等特性,则跳舞指数很低,反之则较高,通过设置跳舞指数的预设阈值给出最终判断。例如某歌曲跳舞指数判定结果为:
此时适合跳舞可能性(probability)为0.999555051327,最终判定结果(value)为“适合跳舞(danceable)”。
又例如,音乐流派的判定,通过音乐特征分类模型的分类计算获得结果为:
这里有爵士音乐、蓝调音乐、说唱音乐、流行音乐、宫廷音乐、乡村音乐、重金属音乐、民族音乐等,其中可能性(probability)最大(值最大)的0.310666948557作为最终判定结果(value),即判断即将传递给机器人进行跳舞的音频源文件为爵士音乐(jaz)。其他的音乐高阶特征矩阵都以类似的方式给出判定结果,进而根据音乐高阶特征矩阵作为输入,生成机器人的舞蹈动作。获得音乐高阶特征矩阵包括但是不限于跳舞指数(Danceability)矩阵、演唱者性别(Gender)、音乐流派矩阵(爵士音乐、蓝调音乐、说唱音乐、流行音乐、宫廷音乐、乡村音乐、重金属音乐、民族音乐等)、情绪类型矩阵(这首音乐听完后对于人的情绪的影响类型,包括但是不限于歌曲激情指数、歌曲高兴指数、歌曲放松指数、歌曲伤心指数等)、旋律变化指数矩阵、主歌副歌指数矩阵等。示例性的,
本实施例中,将音乐低阶特征矩阵作为输入,利用提前训练好的音乐特征分类模型进行分类计算,最后获得对应的音乐高阶特征矩阵,让机器人学会理解音乐,例如理解音乐表达的喜怒哀乐、旋律的起伏变化等等,从而可以在动作的频率、幅度、动作生成上做到更加贴近音乐特点的目的,让机器人跳舞更加拟人和自然。
本发明第七实施例,本实施例是上述第二实施例的优化实施例,与上述第二实施例相比,改进之处在于,所述将所述音乐高阶特征矩阵和所述动作特征矩阵输入训练模型,并根据预设的模型参数训练得到所述舞蹈动作生成模型之后包括:
S0610根据所述音乐高阶特征矩阵和所述动作特征矩阵对所述舞蹈动作生成模型进行验证,得到所述舞蹈动作生成模型的预测误差值;
S0620当所述舞蹈动作生成模型的预测误差值小于等于预设误差阈值时,确定所述舞蹈动作生成模型为最终的舞蹈动作生成模型;
S0630当所述舞蹈动作生成模型的预测误差值大于预设误差阈值时,调整所述训练模型的模型参数获得多个待定舞蹈动作生成模型;
S0640根据所述动作特征矩阵对每个待定舞蹈动作生成模型进行验证,得到每个待定舞蹈动作生成模型对应的预测误差值;
S0650比较每个待定舞蹈动作生成模型对应的预测误差值的大小,确定预测误差值最小的待定舞蹈动作生成模型为最终的舞蹈动作生成模型。
具体的,进行训练得到舞蹈动作生成模型后,将若干个音乐高阶特征矩阵输入舞蹈动作生成模型得到对应的预测误差值,一旦预测误差值大于预设误差阈值的时候,就表明该舞蹈动作生成模型的分类结果的可靠性较低,未能达到预期的分类效果,从而调整训练模型的模型参数获得多个待定舞蹈动作生成模型,继而将若干个音乐高阶特征矩阵输入待定舞蹈动作生成模型得到对应的预测误差值,然后比较所有的待定舞蹈动作生成模型对应的预测误差值的数值大小,将预测误差值最小的待定舞蹈动作生成模型作为最终的舞蹈动作生成模型。示例性的,当使用神经网络的方法进行训练得到舞蹈动作生成模型时,如果采用默认的神经网络参数,如结构,激励函数等,进行模型训练,进而获得待定舞蹈动作生成模型,那么当其对应的预测误差值大于预设误差阈值的时候,进行神经网络参数调优后,确定最终的待定舞蹈动作生成模型,即为了获得效果最好的训练模型,不断调整支持神经网络参数训练出多个待定待定舞蹈动作生成模型,然后将效果最好的也就是预测误差最小的待定待定舞蹈动作生成模型作为最终的待定舞蹈动作生成模型。
本实施例中,训练得到待定舞蹈动作生成模型后,需要对其分类的准确性进行判断,根据若干个具有动作特征矩阵标记的舞蹈图像样本对应的音乐高阶特征矩阵,进行验证得到最终的待定舞蹈动作生成模型,这样,能够得到分类效果最好的待定舞蹈动作生成模型,而且使用经过数据验证后确定的最终的待定舞蹈动作生成模型,能够根据音频源文件的音乐高阶特征矩阵生成不同的舞蹈动作,实现实时跟随相同的歌曲跳出不同的舞姿,极大的丰富了机器人的舞蹈动作,改善了用户体验。
本发明第八实施例,如图5所示,本实施例是上述第一至第七任一实施例的优化实施例,与上述第一至第七任一实施例相比,改进之处在于,所述S3000将所述音乐高阶特征矩阵输入舞蹈动作生成模型中,生成满足运动学约束条件的舞蹈动作具体包括:
S3100将所述音乐高阶特征矩阵输入至所述舞蹈动作生成模型,通过所述舞蹈动作生成模型分类计算得到与所述音乐高阶特征矩阵对应的参考舞蹈动作;
S3200将所述参考舞蹈动作进行分割得到对应的关节运动参数;所述关节运动参数包括移动幅度和移动时间;
S3300分别对相邻的两组关节运动参数进行处理,生成满足所述运动学约束条件的舞蹈动作。
具体的,为了优化机器人舞蹈动作的拟人化和专业性,首先需要利用预先训练得到的舞蹈动作生成模型,然后将获取的音乐高阶特征作为输入至舞蹈动作生成模型进行分类计算出舞蹈动作的特点,最后根据动作特点生成相对应的参考舞蹈动作。即首先收集音乐样本及其对应的舞蹈图像样本,对其做动作特征矩阵标记和音乐高阶特征矩阵标记,例如收集大量的爵士舞、街舞、民族舞、现代舞、说唱舞等一系列的动作,然后利用SVM方法进行训练并找到参考舞蹈动作,由于机器人无法像人类一般做出复杂,灵活的动作,因此需要将何去的参考舞蹈动作进行分割得到对应的关节运动参数,一个机器人可能有很多个关节,将一个参考舞蹈动作分割成机器人的各个关节对应的关节运动参数,关节运动参数包括移动幅度和移动时间,然后分别对相邻的两组关节运动参数进行处理,生成满足运动学约束条件的舞蹈动作;其中,运动学约束条件为关节移动范围,关节移动速度,即为保证机器人的各个部位的关节运动稳定的条件。
例如生成的某一个舞蹈动作分为三帧,即有三个位姿,单个的左臂的关节运动参数如下所示:
Action_left_arm
{
[50.2,32,15,16.8,60.5] [0.322]
[90.4,40,30.8,30.1,90.5] [0.412]
[120,55.4,12.4,12.8,40.7] [0.542]
}
第一组数据如[50.2,32,15,16.8,60.5]为移动幅度(包括移动距离或移动角度),按照排列顺序相邻两组移动距离(或角度)数据之差为正则该左臂的关节正向运动,相邻两帧移动距离(或角度)数据之差为负则该左臂的关节反向运动。第二组数据为移动时间。
当然除了生成得到舞蹈动作之外,还可以设定机器人表情类的附属表达规则,用于配合舞蹈动作展现更好的跳舞效果。这里的关节运动参数是以音乐高阶特征矩阵和动作特征矩阵为参考随机生成的,因此机器人在跳舞时的动作具有非常大的多样性,同一首歌会呈现不同的舞蹈动作效果,但是这些舞蹈效果又和音乐的高阶特征如音乐类型、喜怒哀乐、节奏旋律变化等息息相关,因此具有较好的用户体验。获取到参考舞蹈动作对应的关节运动参数后,根据机器人运动模型,通过运动规划生成机器人可执行的运动序列数据,这样会让机器人动作更加柔顺和自然,同时有效避免自碰撞等现象的产生。
例如单个的左臂的关节运动参数包含两个位姿,如下所示:
Action_left_arm
{
[0,0,0,10,0] [0]
[20.921247,0.132093,-10.525701,2.631032,-0.000519] [0.523054]
}
经过运动序列数据转化后得到数据为:
Planing_left_arm
{
[0.0000000.0000000.0000000.0000000.000000][0.000000]
[4.1842490.026419-2.1051400.526206-0.000104][0.1046108]
[8.3684990.052837-4.2102801.052413-0.000208][0.1046108]
[12.5527480.079256-6.3154201.578619-0.000311][0.1046108]
[16.7369980.105675-8.4205602.104825-0.000415][0.1046108]
[20.9212470.132093-10.5257012.631032-0.000519][0.1046108]
}
运动数据转化就是将每两组关节运动参数进行数据插值,每两组关节运动参数相当于确定了起始位置和终点位置,然后利用一定的算法进行插值来控制机器人从起始位置到终点位置的速度和加速度,从而使动作更加顺滑自然,可采用多项式插值的方法来实现,以三次多项式插值为例进行说明:设关节满足下式(1):
其中,a0,a1,a2,a3均为多项式参数,t为时间,θ(t)为某个关节在t时刻的角度,为为某个关节在t时刻的速度,为为某个关节在t时刻的加速度。
假设将相邻的某两组关节运动参数作为起始位置和终点位置,满足下列式(2)如下:
其中,t0为起始时间,tf为终止时间,某个关节的起始时刻角度表示为θ0,某个关节的终点时刻角度表示为θf,某个关节在起始时间的速度表示为某个关节在终止时间的速度表示为的终点速度表示为Vf,已知V0和Vf的值,则将式(2)代入(式1)得到多项式的参数分别为:
将(式3)的a0,a1,a2,a3代入(式1)得到(式4)如下所示:
这样,在任意两个相邻的动作帧,我们将时间t等间隔区分后就会根据上面的(式4)得到若干个中间状态,角速度和角加速度也都可以得到,这样就实现了速度和加速度的控制。此外还可以利用五次多项式插值等其他插值方法实现,根据不同的方法的实现效果确定不同机器人的最终采用的方法即可。
本实施例中,将生成的参考舞蹈动作并不直接发送给机器人执行,而需要根据机器人运动模型,分割参考舞蹈动作得到对应的关节运动参数,然后分别对相邻的两组关节运动参数进行处理,生成满足运动学约束条件的舞蹈动作,这样会让机器人动作更加柔顺和自然,同时有效避免自碰撞等现象的产生。通过机器人的各个关节信息,结合关节运动参数进行模拟仿真,形成一个全身联动的活动关节网,使得机器人跳舞时,其跳舞动作拟人逼真,融观赏性,操控性,娱乐性,实用性于一体,提升用户的使用体验。
本发明第九实施例,本实施例是上述第八实施例的优化实施例,与上述第八实施例相比,改进之处在于,所述S3200将所述参考舞蹈动作进行分割得到对应的关节运动参数之后,所述S3300分别对相邻的两组关节运动参数进行处理,生成满足所述运动学约束条件的舞蹈动作之前包括:
S3250当存在超过所述预设自由度范围和预设速度范围的关节运动参数时,对所有关节运动参数进行等比例缩小,得到等比例缩小后的关节运动参数。
具体的,将生成的参考舞蹈动作进行分割得到对应的关节运动参数后,需要对各个关节的关节运动参数的可行性进行动作验证,主要验证动作是否超出机器人关节的自由度范围及速度范围等,并对所有关节运动参数进行等比例缩小,实现小范围的优化,使得机器人的舞蹈动作等比例变化,令机器人跳舞时更加流畅自然,提升机器人舞蹈的观赏性。
本发明第十实施例,如图5所示,一种实现机器人跳舞的设备,包括:
音乐低阶特征矩阵提取模块10,用于提取音频源文件的音乐低阶特征矩阵,所述音乐低阶特征矩阵为音乐的表层特征的矩阵数据;
音乐高阶特征矩阵获取模块20,与所述音乐低阶特征矩阵提取模块10连接,用于将所述音乐低阶特征矩阵输入音乐特征分类模型中进行计算,获得对应的音乐高阶特征矩阵,所述音乐高阶特征矩阵为音乐的深层特征的矩阵数据;
舞蹈动作生成模块30,与所述音乐高阶特征矩阵获取模块20连接,用于将所述音乐高阶特征矩阵输入舞蹈动作生成模型中,生成满足运动学约束条件的舞蹈动作。
具体的,本实施例是上述方法实施例对应的装置实施例,具体效果参见上述第一实施例,在此不再一一赘述。
本发明第十一实施例,如图6所示,本实施例是上述第十实施例的优化实施例,与上述第十实施例相比,改进之处在于,还包括:
样本收集模块40,用于收集音乐样本及其对应的舞蹈图像样本;
所述音乐低阶特征矩阵提取模块10,与所述样本收集模块40连接,还用于提取所述音乐样本的音乐低阶特征矩阵;
音乐高阶特征矩阵标记模块50,与所述样本收集模块40连接,用于对所述音乐样本进行标记,得到所述音乐样本的音乐高阶特征矩阵;
动作特征矩阵标记模块60,与所述样本收集模块40连接,用于对所述舞蹈图像样本进行标记,得到所述舞蹈图像样本的动作特征矩阵;
音乐特征分类模型生成模块70,与所述音乐低阶特征矩阵提取模块10和所述音乐高阶特征矩阵标记模块50和所述音乐高阶特征矩阵获取模块20连接,用于将所述音乐样本的音乐低阶特征矩阵和音乐高阶特征矩阵输入训练模型,并根据预设的模型参数训练得到所述音乐特征分类模型;
舞蹈动作生成模型生成模块80,与所述音乐高阶特征矩阵标记模块50、所述动作特征矩阵标记模块60和所述舞蹈动作生成模型生成模块80连接,用于将所述音乐样本的音乐高阶特征矩阵和所述动作特征矩阵输入训练模型,并根据预设的模型参数训练得到所述舞蹈动作生成模型。
具体的,本实施例是上述方法实施例对应的装置实施例,具体效果参见上述第二实施例,在此不再一一赘述。
本发明第十二实施例,本实施例是上述第十一实施例的优化实施例,与上述第十一实施例相比,改进之处在于,还包括:
音乐特征分类预测误差获取模块,与所述音乐特征分类模型生成模块70连接,用于根据所述音乐低阶特征矩阵和所述音乐高阶特征矩阵对所述音乐特征分类模型进行验证,得到所述音乐特征分类模型的预测误差值;
音乐特征分类模型确定模块,与所述音乐特征分类预测误差获取模块连接,用于当所述音乐特征分类模型的预测误差值小于等于预设误差阈值时,确定所述音乐特征分类模型为最终的音乐特征分类模型;还当所述音乐特征分类模型的预测误差值大于预设误差阈值时,调整所述训练模型的模型参数获得多个待定音乐特征分类模型,根据所述音乐低阶特征矩阵对每个待定音乐特征分类模型进行验证,得到每个待定音乐特征分类模型对应的预测误差值,比较每个待定音乐特征分类模型对应的预测误差值的大小,确定预测误差值最小的待定音乐特征分类模型为最终的音乐特征分类模型。
具体的,本实施例是上述方法实施例对应的装置实施例,具体效果参见上述第三实施例,在此不再一一赘述。
本发明第十三实施例,本实施例是上述第十二实施例的优化实施例,与上述第十二实施例相比,改进之处在于,所述音乐特征分类预测误差获取模块包括:
分割单元,用于将所述音乐低阶特征矩阵和音乐高阶特征矩阵分割成若干份数据集;
验证单元,与所述分割单元连接,根据交叉验证的方式将所述数据集依次轮换为验证集和训练集;
计算单元,与所述验证单元连接,将所有交叉验证对应的验证结果求均值得到所述预测误差值。
具体的,本实施例是上述方法实施例对应的装置实施例,具体效果参见上述第四实施例,在此不再一一赘述。
本发明第十四实施例,本实施例是上述第十至第十三任一实施例的优化实施例,与上述第十至第十三任一实施例相比,改进之处在于,所述音乐低阶特征矩阵提取模块10包括:
音频分割单元,用于将所述音频源文件进行分割得到若干个音频帧;
音乐处理单元,与所述音频分割单元连接,用于对所述音频帧进行音频信号处理得到所述音乐低阶特征矩阵;所述音频信号处理包括加窗处理或加窗处理后频域变换处理。
具体的,本实施例是上述方法实施例对应的装置实施例,具体效果参见上述第五实施例,在此不再一一赘述。
本发明第十五实施例,本实施例是上述第十一至第十四任一实施例的优化实施例,与上述第十一至第十四任一实施例相比,改进之处在于,所述音乐高阶特征矩阵获取模块20包括:
音乐低阶特征矩阵输入单元,用于将所述音乐低阶特征矩阵输入所述音乐特征分类模型;
类别估测单元,与所述音乐低阶特征矩阵输入单元连接,用于通过所述音乐特征分类模型解析输入的所述音乐低阶特征矩阵得到类别评判值;
音乐高阶特征矩阵输出单元,与所述类别估测单元连接,用于根据输入的音乐特征分类模型的预设阈值与所述类别评判值的比较结果,输出所述音乐低阶特征矩阵对应的音乐高阶特征矩阵。
具体的,本实施例是上述方法实施例对应的装置实施例,具体效果参见上述第六实施例,在此不再一一赘述。
本发明第十六实施例,本实施例是上述第十一实施例的优化实施例,与上述第十一实施例相比,改进之处在于,还包括:
舞蹈分类预测误差获取模块,与所述音乐高阶特征矩阵标记模块50,所述动作特征矩阵标记模块60和所述舞蹈动作生成模型生成模块80连接,用于根据所述音乐高阶特征矩阵和所述动作特征矩阵对所述舞蹈动作生成模型进行验证,得到所述舞蹈动作生成模型的预测误差值;
舞蹈动作生成模型确认模块,与所述舞蹈分类预测误差获取模块连接,用于当所述舞蹈动作生成模型的预测误差值小于等于预设误差阈值时,确定所述舞蹈动作生成模型为最终的舞蹈动作生成模型;还当所述舞蹈动作生成模型的预测误差值大于预设误差阈值时,调整所述训练模型的模型参数获得多个待定舞蹈动作生成模型;根据所述动作特征矩阵对每个待定舞蹈动作生成模型进行验证,得到每个待定舞蹈动作生成模型对应的预测误差值;比较每个待定舞蹈动作生成模型对应的预测误差值的大小,确定预测误差值最小的待定舞蹈动作生成模型为最终的舞蹈动作生成模型。
具体的,本实施例是上述方法实施例对应的装置实施例,具体效果参见上述第七实施例,在此不再一一赘述。
本发明第十七实施例,本实施例是上述第十至十六实施例的优化实施例,与上述第十至十六实施例相比,改进之处在于,所述舞蹈动作生成模块30包括:
音乐高阶特征矩阵输入单元,用于将所述音乐高阶特征矩阵输入至所述舞蹈动作生成模型;
参考舞蹈动作获取单元,与所述音乐高阶特征矩阵输入单元连接,用于通过所述舞蹈动作生成模型分类计算得到与所述音乐高阶特征矩阵对应的参考舞蹈动作;
关节运动参数获取单元,与所述参考舞蹈动作获取单元连接,用于将所述参考舞蹈动作进行分割得到对应的关节运动参数;所述关节运动参数包括移动幅度和移动时间;
关节运动参数处理单元,与所述关节运动参数获取单元连接,用于分别对相邻的两组关节运动参数进行处理,生成满足所述运动学约束条件的舞蹈动作。
具体的,本实施例是上述方法实施例对应的装置实施例,具体效果参见上述第八实施例,在此不再一一赘述。
本发明第十八实施例,本实施例是上述第十七实施例的优化实施例,与上述第十七实施例相比,改进之处在于,所述舞蹈动作生成模块30还包括:
关节运动参数调整单元,分别与所述关节运动参数获取单元连接,用于当存在超过所述预设自由度范围和预设速度范围的关节运动参数时,对所有关节运动参数进行等比例缩小,得到等比例缩小后的关节运动参数;
所述关节运动参数处理单元,与所述关节运动参数调整单元连接,用于分别对相邻的两组关节运动参数进行处理,生成满足所述运动学约束条件的舞蹈动作。
具体的,本实施例是上述方法实施例对应的装置实施例,具体效果参见上述第十实施例,在此不再一一赘述。
本发明第十九实施例,一种存储介质,所述存储介质存储有多条指令,所述多条指令被一个或者多个处理器执行,以上述第一至第九任一实施例中描述的方法步骤,包括:
S1000提取音频源文件的音乐低阶特征矩阵;所述音乐低阶特征矩阵为音乐的表层特征的矩阵数据;
S2000将所述音乐低阶特征矩阵输入音乐特征分类模型中进行计算,获得对应的音乐高阶特征矩阵;所述音乐高阶特征矩阵为音乐的深层特征的矩阵数据;
S3000将所述音乐高阶特征矩阵输入舞蹈动作生成模型中,生成满足运动学约束条件的舞蹈动作。
较佳的,在上述基础上,本发明存储介质的另一实施例,所述存储介质存储有多条指令,所述多条指令被一个或者多个处理器执行,以实现任一本发明所述的实现机器人跳舞的方法实施例的步骤。本发明所述的实现机器人跳舞的方法的步骤可参见前面的方法实施例部分,为减少重复,此处不再赘叙。
实现机器人跳舞的设备可以是机器人本身,也可以是与机器人连接的服务器等。可以通过无线连接方式(WIFI或者蓝牙等等),或者有线连接方式(USB或者RS232)将自主编排生成的舞蹈动作传递至机器人,任何传递舞蹈动作的方式均在本发明保护范围内,在此不作限定。需要说明的是,本领域普通测试人员可以理解实现本发明实施例机器人倾倒检测的方法的全部或部分流程,是可以通过计算机程序来控制相关的硬件来完成,计算机程序可存储于计算机可读取存储介质中,如存储在机器人的存储器中,并被该机器人内的至少一个处理器执行,在执行过程中可包括如机器人倾倒检测的方法实施例的流程。
在本发明中,如果以软件功能单元的形式实现并作为独立的产品销售或者使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术的贡献的部分或者该技术方案的全部或者部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可是个人计算机,服务器,或者网络设备),或者处理器执行本申请个实施例方法的全部或部分步骤。而前述的存储介质包数据服务器,云端服务器,只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,RandomAccessMemory)、移动通信设备,或者光盘、或者U盘等各种可以存储代码的介质。
应当说明的是,上述实施例均可根据需要自由组合。以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (19)
1.一种实现机器人跳舞的方法,其特征在于,包括步骤:
提取音频源文件的音乐低阶特征矩阵,所述音乐低阶特征矩阵为音乐的表层特征的矩阵数据;
将所述音乐低阶特征矩阵输入音乐特征分类模型中进行计算,获得对应的音乐高阶特征矩阵,所述音乐高阶特征矩阵为音乐的深层特征的矩阵数据;
将所述音乐高阶特征矩阵输入舞蹈动作生成模型中,生成满足运动学约束条件的舞蹈动作。
2.根据权利要求1所述的实现机器人跳舞的方法,其特征在于,所述获取音频源文件的音乐低阶特征矩阵之前包括:
收集音乐样本及其对应的舞蹈图像样本;
提取所述音乐样本的音乐低阶特征矩阵;
对所述音乐样本进行标记得到其音乐高阶特征矩阵;
对所述舞蹈图像样本进行标记得到其动作特征矩阵;
将所述音乐低阶特征矩阵和所述音乐高阶特征矩阵输入训练模型,并根据预设的模型参数训练得到所述音乐特征分类模型;
将所述音乐高阶特征矩阵和所述动作特征矩阵输入训练模型,并根据预设的模型参数训练得到所述舞蹈动作生成模型。
3.根据权利要求2所述的实现机器人跳舞的方法,其特征在于,所述将所述音乐低阶特征矩阵和所述音乐高阶特征矩阵输入训练模型,并根据预设的模型参数训练得到所述音乐特征分类模型之后包括:
根据所述音乐低阶特征矩阵和所述音乐高阶特征矩阵对所述音乐特征分类模型进行验证,得到所述音乐特征分类模型的预测误差值;
当所述音乐特征分类模型的预测误差值小于等于预设误差阈值时,确定所述音乐特征分类模型为最终的音乐特征分类模型;
当所述音乐特征分类模型的预测误差值大于预设误差阈值时,调整所述训练模型的模型参数获得多个待定音乐特征分类模型;
根据所述音乐低阶特征矩阵对每个待定音乐特征分类模型进行验证,得到每个待定音乐特征分类模型对应的预测误差值;
比较每个待定音乐特征分类模型对应的预测误差值的大小,确定预测误差值最小的待定音乐特征分类模型为最终的音乐特征分类模型。
4.根据权利要求3所述的实现机器人跳舞的方法,其特征在于,所述根据所述音乐低阶特征矩阵和所述音乐高阶特征矩阵对所述音乐特征分类模型进行验证,得到所述音乐特征分类模型的预测误差值具体包括:
将所述音乐低阶特征矩阵和音乐高阶特征矩阵分割成若干份数据集;
根据交叉验证的方式将所述数据集依次轮换为验证集和训练集;
将所有交叉验证对应的验证结果求均值得到所述预测误差值。
5.根据权利要求1所述的实现机器人跳舞的方法,其特征在于,所述获取音频源文件的音乐低阶特征矩阵具体包括:
将所述音频源文件进行分割得到若干个音频帧;
对所述音频帧进行音频信号处理得到所述音乐低阶特征矩阵;所述音频信号处理包括加窗处理或加窗处理后频域变换处理。
6.根据权利要求1所述的实现机器人跳舞的方法,其特征在于,所述将所述音乐低阶特征矩阵输入音乐特征分类模型中进行计算,获得对应的音乐高阶特征矩阵,所述音乐高阶特征矩阵为音乐的深层特征的矩阵数据具体包括:
将所述音乐低阶特征矩阵输入所述音乐特征分类模型;
通过所述音乐特征分类模型解析输入的所述音乐低阶特征矩阵得到类别评判值;
根据输入的音乐特征分类模型的预设阈值与所述类别评判值的比较结果,输出所述音乐低阶特征矩阵对应的音乐高阶特征矩阵。
7.根据权利要求2所述的实现机器人跳舞的方法,其特征在于,所述将所述音乐高阶特征矩阵和所述动作特征矩阵输入训练模型,并根据预设的模型参数训练得到所述舞蹈动作生成模型之后包括:
根据所述音乐高阶特征矩阵和所述动作特征矩阵对所述舞蹈动作生成模型进行验证,得到所述舞蹈动作生成模型的预测误差值;
当所述舞蹈动作生成模型的预测误差值小于等于预设误差阈值时,确定所述舞蹈动作生成模型为最终的舞蹈动作生成模型;
当所述舞蹈动作生成模型的预测误差值大于预设误差阈值时,调整所述训练模型的模型参数获得多个待定舞蹈动作生成模型;
根据所述动作特征矩阵对每个待定舞蹈动作生成模型进行验证,得到每个待定舞蹈动作生成模型对应的预测误差值;
比较每个待定舞蹈动作生成模型对应的预测误差值的大小,确定预测误差值最小的待定舞蹈动作生成模型为最终的舞蹈动作生成模型。
8.根据权利要求1-7任一项所述的实现机器人跳舞的方法,其特征在于,所述将所述音乐高阶特征矩阵输入舞蹈动作生成模型中,生成满足运动学约束条件的舞蹈动作具体包括:
将所述音乐高阶特征矩阵输入至所述舞蹈动作生成模型,通过所述舞蹈动作生成模型分类计算得到与所述音乐高阶特征矩阵对应的参考舞蹈动作;
将所述参考舞蹈动作进行分割得到对应的关节运动参数;所述关节运动参数包括移动幅度和移动时间;
分别对相邻的两组关节运动参数进行处理,生成满足所述运动学约束条件的舞蹈动作。
9.根据权利要求8所述的实现机器人跳舞的方法,其特征在于,所述将所述参考舞蹈动作进行分割得到对应的关节运动参数之后,所述分别对相邻的两组关节运动参数进行处理,生成满足所述运动学约束条件的舞蹈动作之前包括:
当存在超过所述预设自由度范围和预设速度范围的关节运动参数时,对所有关节运动参数进行等比例缩小,得到等比例缩小后的关节运动参数。
10.一种实现机器人跳舞的设备,其特征在于,包括:
音乐低阶特征矩阵提取模块,用于提取音频源文件的音乐低阶特征矩阵,所述音乐低阶特征矩阵为音乐的表层特征的矩阵数据;
音乐高阶特征矩阵获取模块,与所述音乐低阶特征矩阵提取模块连接,用于将所述音乐低阶特征矩阵输入音乐特征分类模型中进行计算,获得对应的音乐高阶特征矩阵,所述音乐高阶特征矩阵为音乐的深层特征的矩阵数据;
舞蹈动作生成模块,与所述音乐高阶特征矩阵获取模块连接,用于将所述音乐高阶特征矩阵输入舞蹈动作生成模型中,生成满足运动学约束条件的舞蹈动作。
11.根据权利要求10所述的实现机器人跳舞的设备,还包括:
样本收集模块,用于收集音乐样本及其对应的舞蹈图像样本;
所述音乐低阶特征矩阵提取模块,与所述样本收集模块连接,还用于提取所述音乐样本的音乐低阶特征矩阵;
音乐高阶特征矩阵标记模块,与所述样本收集模块连接,用于对所述音乐样本进行标记,得到所述音乐样本的音乐高阶特征矩阵;
动作特征矩阵标记模块,与所述样本收集模块连接,用于对所述舞蹈图像样本进行标记,得到所述舞蹈图像样本的动作特征矩阵;
音乐特征分类模型生成模块,与所述音乐低阶特征矩阵提取模块和所述音乐高阶特征矩阵标记模块和所述音乐高阶特征矩阵获取模块连接,用于将所述音乐样本的音乐低阶特征矩阵和音乐高阶特征矩阵输入训练模型,并根据预设的模型参数训练得到所述音乐特征分类模型;
舞蹈动作生成模型生成模块,与所述音乐高阶特征矩阵标记模块、所述动作特征矩阵标记模块和所述舞蹈动作生成模型生成模块连接,用于将所述音乐样本的音乐高阶特征矩阵和所述动作特征矩阵输入训练模型,并根据预设的模型参数训练得到所述舞蹈动作生成模型。
12.根据权利要求11所述的实现机器人跳舞的设备,其特征在于,还包括:
音乐特征分类预测误差获取模块,与所述音乐低阶特征矩阵提取模块,所述音乐高阶特征矩阵标记模块和所述音乐特征分类模型生成模块连接,用于根据所述音乐低阶特征矩阵和所述音乐高阶特征矩阵对所述音乐特征分类模型进行验证,得到所述音乐特征分类模型的预测误差值;
音乐特征分类模型确定模块,与所述音乐特征分类预测误差获取模块连接,用于当所述音乐特征分类模型的预测误差值小于等于预设误差阈值时,确定所述音乐特征分类模型为最终的音乐特征分类模型;还当所述音乐特征分类模型的预测误差值大于预设误差阈值时,调整所述训练模型的模型参数获得多个待定音乐特征分类模型,根据所述音乐低阶特征矩阵对每个待定音乐特征分类模型进行验证,得到每个待定音乐特征分类模型对应的预测误差值,比较每个待定音乐特征分类模型对应的预测误差值的大小,确定预测误差值最小的待定音乐特征分类模型为最终的音乐特征分类模型。
13.根据权利要求12所述的实现机器人跳舞的设备,其特征在于,所述音乐特征分类预测误差获取模块包括:
分割单元,用于将所述音乐低阶特征矩阵和音乐高阶特征矩阵分割成若干份数据集;
验证单元,与所述分割单元连接,根据交叉验证的方式将所述数据集依次轮换为验证集和训练集;
计算单元,与所述验证单元连接,将所有交叉验证对应的验证结果求均值得到所述预测误差值。
14.根据权利要求10所述的实现机器人跳舞的设备,其特征在于,所述音乐低阶特征矩阵提取模块包括:
音频分割单元,用于将所述音频源文件进行分割得到若干个音频帧;
音乐处理单元,与所述音频分割单元连接,用于对所述音频帧进行音频信号处理得到所述音乐低阶特征矩阵;所述音频信号处理包括加窗处理或加窗处理后频域变换处理。
15.根据权利要求10所述的实现机器人跳舞的设备,其特征在于,所述音乐高阶特征矩阵获取模块包括:
音乐低阶特征矩阵输入单元,用于将所述音乐低阶特征矩阵输入所述音乐特征分类模型;
类别估测单元,与所述音乐低阶特征矩阵输入单元连接,用于通过所述音乐特征分类模型解析输入的所述音乐低阶特征矩阵得到类别评判值;
音乐高阶特征矩阵输出单元,与所述类别估测单元连接,用于根据输入的音乐特征分类模型的预设阈值与所述类别评判值的比较结果,输出所述音乐低阶特征矩阵对应的音乐高阶特征矩阵。
16.根据权利要求11所述的实现机器人跳舞的设备,其特征在于,还包括:
舞蹈分类预测误差获取模块,与所述音乐高阶特征矩阵标记模块,所述动作特征矩阵标记模块和所述舞蹈动作生成模型生成模块连接,用于根据所述音乐高阶特征矩阵和所述动作特征矩阵对所述舞蹈动作生成模型进行验证,得到所述舞蹈动作生成模型的预测误差值;
舞蹈动作生成模型确认模块,与所述舞蹈分类预测误差获取模块连接,用于当所述舞蹈动作生成模型的预测误差值小于等于预设误差阈值时,确定所述舞蹈动作生成模型为最终的舞蹈动作生成模型;还当所述舞蹈动作生成模型的预测误差值大于预设误差阈值时,调整所述训练模型的模型参数获得多个待定舞蹈动作生成模型;根据所述动作特征矩阵对每个待定舞蹈动作生成模型进行验证,得到每个待定舞蹈动作生成模型对应的预测误差值;比较每个待定舞蹈动作生成模型对应的预测误差值的大小,确定预测误差值最小的待定舞蹈动作生成模型为最终的舞蹈动作生成模型。
17.根据权利要求11-16任一项所述的实现机器人跳舞的设备,其特征在于,所述舞蹈动作生成模块包括:
音乐高阶特征矩阵输入单元,用于将所述音乐高阶特征矩阵输入至所述舞蹈动作生成模型;
参考舞蹈动作获取单元,与所述音乐高阶特征矩阵输入单元连接,用于通过所述舞蹈动作生成模型分类计算得到与所述音乐高阶特征矩阵对应的参考舞蹈动作;
关节运动参数获取单元,与所述参考舞蹈动作获取单元连接,用于将所述参考舞蹈动作进行分割得到对应的关节运动参数;所述关节运动参数包括移动幅度和移动时间;
关节运动参数处理单元,与所述关节运动参数获取单元连接,用于分别对相邻的两组关节运动参数进行处理,生成满足所述运动学约束条件的舞蹈动作。
18.根据权利要求17所述的实现机器人跳舞的设备,其特征在于,所述舞蹈动作生成模块还包括:
关节运动参数调整单元,分别与所述关节运动参数获取单元连接,用于当存在超过所述预设自由度范围和预设速度范围的关节运动参数时,对所有关节运动参数进行等比例缩小,得到等比例缩小后的关节运动参数;
所述关节运动参数处理单元,与所述关节运动参数调整单元连接,用于分别对相邻的两组关节运动参数进行处理,生成满足所述运动学约束条件的舞蹈动作。
19.一种存储介质,其特征在于,所述存储介质存储有多条指令,所述多条指令被一个或者多个处理器执行,以实现权利要求1-9中任一项所述的实现机器人跳舞的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811040032.9A CN109176541B (zh) | 2018-09-06 | 2018-09-06 | 一种实现机器人跳舞的方法、设备和储存介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811040032.9A CN109176541B (zh) | 2018-09-06 | 2018-09-06 | 一种实现机器人跳舞的方法、设备和储存介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109176541A true CN109176541A (zh) | 2019-01-11 |
CN109176541B CN109176541B (zh) | 2022-05-06 |
Family
ID=64914997
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811040032.9A Active CN109176541B (zh) | 2018-09-06 | 2018-09-06 | 一种实现机器人跳舞的方法、设备和储存介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109176541B (zh) |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109922268A (zh) * | 2019-04-03 | 2019-06-21 | 睿魔智能科技(深圳)有限公司 | 视频的拍摄方法、装置、设备及存储介质 |
CN110189771A (zh) * | 2019-05-31 | 2019-08-30 | 腾讯音乐娱乐科技(深圳)有限公司 | 同源音频的音质检测方法、装置及存储介质 |
CN110781820A (zh) * | 2019-10-25 | 2020-02-11 | 网易(杭州)网络有限公司 | 游戏角色的动作生成方法、装置、计算机设备及存储介质 |
CN110853670A (zh) * | 2019-11-04 | 2020-02-28 | 南京理工大学 | 音乐驱动的舞蹈生成方法 |
CN110955786A (zh) * | 2019-11-29 | 2020-04-03 | 网易(杭州)网络有限公司 | 一种舞蹈动作数据的生成方法及装置 |
CN111037557A (zh) * | 2019-12-20 | 2020-04-21 | 扬州哈工科创机器人研究院有限公司 | 用于机械臂led显示演绎的系统和控制系统 |
CN111080752A (zh) * | 2019-12-13 | 2020-04-28 | 北京达佳互联信息技术有限公司 | 基于音频的动作序列生成方法、装置以及电子设备 |
CN111104964A (zh) * | 2019-11-22 | 2020-05-05 | 北京永航科技有限公司 | 音乐与动作的匹配方法、设备及计算机存储介质 |
CN111986295A (zh) * | 2020-08-14 | 2020-11-24 | 腾讯科技(深圳)有限公司 | 舞蹈合成方法、装置及电子设备 |
CN112894855A (zh) * | 2021-02-23 | 2021-06-04 | 广东智源机器人科技有限公司 | 机器人动作生成方法和装置、机器人、存储介质 |
CN113411663A (zh) * | 2021-04-30 | 2021-09-17 | 成都东方盛行电子有限责任公司 | 一种用于非编工程中的音乐节拍提取方法 |
CN113793582A (zh) * | 2021-09-17 | 2021-12-14 | 河海大学 | 基于动态频域分解的音乐驱动的指挥动作生成方法 |
CN115379299A (zh) * | 2022-08-23 | 2022-11-22 | 清华大学 | 一种舞蹈动作生成方法、装置、电子设备及存储介质 |
CN116400813A (zh) * | 2023-06-08 | 2023-07-07 | 之江实验室 | 一种训练样本的生成方法、装置、存储介质及电子设备 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101398825A (zh) * | 2007-09-29 | 2009-04-01 | 三星电子株式会社 | 用于快速音乐分类和检索的方法和设备 |
CN101524594A (zh) * | 2009-04-17 | 2009-09-09 | 中国地质大学(武汉) | 随节奏自主舞蹈的人形机器人 |
CN101587706A (zh) * | 2009-07-08 | 2009-11-25 | 沈阳蓝火炬软件有限公司 | 流媒体实时音乐节拍分析与舞蹈控制系统及方法 |
CN101615302A (zh) * | 2009-07-30 | 2009-12-30 | 浙江大学 | 音乐数据驱动的基于机器学习的舞蹈动作生成方法 |
CN102129456A (zh) * | 2011-03-09 | 2011-07-20 | 天津大学 | 去相关稀疏映射音乐流派有监督自动分类方法 |
CN102842310A (zh) * | 2012-08-10 | 2012-12-26 | 上海协言科学技术服务有限公司 | 中国民族民间音乐音频修复的音频特征提取及使用的方法 |
US20140249673A1 (en) * | 2013-03-01 | 2014-09-04 | Compal Communication, Inc. | Robot for generating body motion corresponding to sound signal |
CN105773612A (zh) * | 2016-03-28 | 2016-07-20 | 深圳前海勇艺达机器人有限公司 | 机器人舞蹈的控制系统及其方法 |
CN106292423A (zh) * | 2016-08-09 | 2017-01-04 | 北京光年无限科技有限公司 | 针对人形机器人的音乐数据处理方法及装置 |
CN107009371A (zh) * | 2017-06-14 | 2017-08-04 | 上海思依暄机器人科技股份有限公司 | 一种自动调节机器人舞蹈动作的方法及装置 |
CN108202334A (zh) * | 2018-03-22 | 2018-06-26 | 东华大学 | 一种能够识别音乐节拍和风格的舞蹈机器人 |
-
2018
- 2018-09-06 CN CN201811040032.9A patent/CN109176541B/zh active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101398825A (zh) * | 2007-09-29 | 2009-04-01 | 三星电子株式会社 | 用于快速音乐分类和检索的方法和设备 |
CN101524594A (zh) * | 2009-04-17 | 2009-09-09 | 中国地质大学(武汉) | 随节奏自主舞蹈的人形机器人 |
CN101587706A (zh) * | 2009-07-08 | 2009-11-25 | 沈阳蓝火炬软件有限公司 | 流媒体实时音乐节拍分析与舞蹈控制系统及方法 |
CN101615302A (zh) * | 2009-07-30 | 2009-12-30 | 浙江大学 | 音乐数据驱动的基于机器学习的舞蹈动作生成方法 |
CN102129456A (zh) * | 2011-03-09 | 2011-07-20 | 天津大学 | 去相关稀疏映射音乐流派有监督自动分类方法 |
CN102842310A (zh) * | 2012-08-10 | 2012-12-26 | 上海协言科学技术服务有限公司 | 中国民族民间音乐音频修复的音频特征提取及使用的方法 |
US20140249673A1 (en) * | 2013-03-01 | 2014-09-04 | Compal Communication, Inc. | Robot for generating body motion corresponding to sound signal |
CN105773612A (zh) * | 2016-03-28 | 2016-07-20 | 深圳前海勇艺达机器人有限公司 | 机器人舞蹈的控制系统及其方法 |
CN106292423A (zh) * | 2016-08-09 | 2017-01-04 | 北京光年无限科技有限公司 | 针对人形机器人的音乐数据处理方法及装置 |
CN107009371A (zh) * | 2017-06-14 | 2017-08-04 | 上海思依暄机器人科技股份有限公司 | 一种自动调节机器人舞蹈动作的方法及装置 |
CN108202334A (zh) * | 2018-03-22 | 2018-06-26 | 东华大学 | 一种能够识别音乐节拍和风格的舞蹈机器人 |
Cited By (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109922268A (zh) * | 2019-04-03 | 2019-06-21 | 睿魔智能科技(深圳)有限公司 | 视频的拍摄方法、装置、设备及存储介质 |
US11721350B2 (en) | 2019-05-31 | 2023-08-08 | Tencent Music Entertainment Technology (Shenzhen) Co., Ltd. | Sound quality detection method and device for homologous audio and storage medium |
CN110189771A (zh) * | 2019-05-31 | 2019-08-30 | 腾讯音乐娱乐科技(深圳)有限公司 | 同源音频的音质检测方法、装置及存储介质 |
CN110781820A (zh) * | 2019-10-25 | 2020-02-11 | 网易(杭州)网络有限公司 | 游戏角色的动作生成方法、装置、计算机设备及存储介质 |
CN110781820B (zh) * | 2019-10-25 | 2022-08-05 | 网易(杭州)网络有限公司 | 游戏角色的动作生成方法、装置、计算机设备及存储介质 |
CN110853670A (zh) * | 2019-11-04 | 2020-02-28 | 南京理工大学 | 音乐驱动的舞蹈生成方法 |
CN110853670B (zh) * | 2019-11-04 | 2023-10-17 | 南京理工大学 | 音乐驱动的舞蹈生成方法 |
CN111104964B (zh) * | 2019-11-22 | 2023-10-17 | 北京永航科技有限公司 | 音乐与动作的匹配方法、设备及计算机存储介质 |
CN111104964A (zh) * | 2019-11-22 | 2020-05-05 | 北京永航科技有限公司 | 音乐与动作的匹配方法、设备及计算机存储介质 |
CN110955786B (zh) * | 2019-11-29 | 2023-10-27 | 网易(杭州)网络有限公司 | 一种舞蹈动作数据的生成方法及装置 |
CN110955786A (zh) * | 2019-11-29 | 2020-04-03 | 网易(杭州)网络有限公司 | 一种舞蹈动作数据的生成方法及装置 |
CN111080752A (zh) * | 2019-12-13 | 2020-04-28 | 北京达佳互联信息技术有限公司 | 基于音频的动作序列生成方法、装置以及电子设备 |
CN111080752B (zh) * | 2019-12-13 | 2023-08-22 | 北京达佳互联信息技术有限公司 | 基于音频的动作序列生成方法、装置以及电子设备 |
CN111037557B (zh) * | 2019-12-20 | 2022-07-22 | 扬州哈工科创机器人研究院有限公司 | 用于机械臂led显示演绎的系统和控制系统 |
CN111037557A (zh) * | 2019-12-20 | 2020-04-21 | 扬州哈工科创机器人研究院有限公司 | 用于机械臂led显示演绎的系统和控制系统 |
CN111986295B (zh) * | 2020-08-14 | 2024-02-23 | 腾讯科技(深圳)有限公司 | 舞蹈合成方法、装置及电子设备 |
CN111986295A (zh) * | 2020-08-14 | 2020-11-24 | 腾讯科技(深圳)有限公司 | 舞蹈合成方法、装置及电子设备 |
CN112894855A (zh) * | 2021-02-23 | 2021-06-04 | 广东智源机器人科技有限公司 | 机器人动作生成方法和装置、机器人、存储介质 |
CN113411663A (zh) * | 2021-04-30 | 2021-09-17 | 成都东方盛行电子有限责任公司 | 一种用于非编工程中的音乐节拍提取方法 |
CN113793582A (zh) * | 2021-09-17 | 2021-12-14 | 河海大学 | 基于动态频域分解的音乐驱动的指挥动作生成方法 |
CN115379299A (zh) * | 2022-08-23 | 2022-11-22 | 清华大学 | 一种舞蹈动作生成方法、装置、电子设备及存储介质 |
CN116400813B (zh) * | 2023-06-08 | 2023-09-26 | 之江实验室 | 一种训练样本的生成方法、装置、存储介质及电子设备 |
CN116400813A (zh) * | 2023-06-08 | 2023-07-07 | 之江实验室 | 一种训练样本的生成方法、装置、存储介质及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN109176541B (zh) | 2022-05-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109176541A (zh) | 一种实现机器人跳舞的方法、设备和储存介质 | |
CN102664016B (zh) | 唱歌评测方法及系统 | |
CN110085263B (zh) | 一种音乐情感分类和机器作曲方法 | |
CN110503976A (zh) | 音频分离方法、装置、电子设备及存储介质 | |
US20100094634A1 (en) | Method and apparatus for creating face character based on voice | |
CN108564942A (zh) | 一种基于敏感度可调的语音情感识别方法及系统 | |
CN110838286A (zh) | 一种模型训练的方法、语种识别的方法、装置及设备 | |
CN111601433B (zh) | 舞台灯光效果控制策略的预测方法及装置 | |
CN108257614A (zh) | 音频数据标注的方法及其系统 | |
Baba et al. | " VirtualPhilharmony": A Conducting System with Heuristics of Conducting an Orchestra. | |
CN104505057A (zh) | 用于教学的钢琴 | |
CN110808069A (zh) | 一种演唱歌曲的评价系统及方法 | |
Valles et al. | An audio processing approach using ensemble learning for speech-emotion recognition for children with ASD | |
CN113813609A (zh) | 游戏音乐风格分类方法、装置、可读介质及电子设备 | |
Vukovic et al. | Cognitive load estimation from speech commands to simulated aircraft | |
Ramirez et al. | Automatic performer identification in commercial monophonic jazz performances | |
Kim et al. | An overview of automatic piano performance assessment within the music education context | |
CN117711444A (zh) | 一种基于口才表达的互动方法、装置、设备及存储介质 | |
CN107610691A (zh) | 英语元音发声纠错方法及装置 | |
Xu et al. | Launchpadgpt: Language model as music visualization designer on launchpad | |
Matsane et al. | The use of automatic speech recognition in education for identifying attitudes of the speakers | |
Yang et al. | Automatic violin synthesis using expressive musical term features | |
He et al. | Automatic generation algorithm analysis of dance movements based on music–action association | |
Hanum et al. | Melody training for quranic tarannum | |
US20230005201A1 (en) | Harmony-aware human motion synthesis with music |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |