掌桥专利:专业的专利平台
掌桥专利
首页

一种基于AR和人工智能的音乐线上教育演示方法及系统

文献发布时间:2023-06-19 13:29:16


一种基于AR和人工智能的音乐线上教育演示方法及系统

技术领域

本申请涉及人工智能领域,具体涉及一种基于AR和人工智能的音乐线上教育演示方法及系统。

背景技术

因不同于传统的一对一教学且不受时间和空间的限制,音乐线上教育受到了大家的欢迎。音乐教育需要知识和技能相结合,在音乐教育领域专注于线上视频教学的部分占据了很大的比例,但受限于教师与学生之间互动的局限性,在线授课过程中教师没有办法通过视频对学生进行纠正;另一方面,在视频授课过程中,学生无法清楚地看到教师的弹琴过程,更无法准确领会教师的授课精髓。

现有技术通过手机或者平板拍摄的视频,对视频中教师的动作进行分析,在学生端的手机或平板中根据教师的动作显示AR特效,但这种方法在实际使用时需要提前分析教师演示时的视频,在一对一授课时教师会针对不同学生的实际情况做针对性教学,如果未提前准备好教学视频将无法生成特效,存在局限性。

发明内容

针对上述技术问题,本发明提出了一种基于AR和人工智能的音乐线上教育方法及演示系统。

第一方面,本文提出了一种基于AR和人工智能的音乐线上教育演示方法,包括:

建立包含所有曲谱的琴键状态及琴键被按下时不同力度的曲谱时序数据库;

从曲谱时序数据库中获得当前教学曲谱的曲谱时序,根据当前教学曲谱的曲谱时序获得琴键开始被按下的时刻;

根据不同力度下琴键开始被按下的时刻的手指位置变化轨迹,建立手指位移模型;

获取在演奏时琴键被按下时的手指按键轨迹,并确定该琴键被按下的力度对应的手指位移模型,根据手指按键轨迹和对应的手指位移模型得到琴键被按下时的关键时间点;

利用得到的关键时间点确定出该琴键被按下到手指离开琴键的时间段;

获取在演奏过程中所有琴键被按下到手指离开的时间段并加载到对应的曲谱时序中得到新曲谱数据;

根据新曲谱数据生成按照曲谱演奏时的AR特效进行教学演示。

进一步地,所述手指位移模型的建立包括:

获取进行演示时的视频,根据演示时的视频逐帧获取演示时的图像;

利用分割网络获得所有琴键在所述演示时图像中的位置;

利用神经网络获取所述图像中的指尖的位置坐标;

识别所述琴键开始被按下时刻所对应的按下琴键的手指;

对琴键被按下时指尖位置的变化进行标准化,并根据标准化后的指尖位置的变化得到手指位置变化轨迹;

获取同一力度下手指变化轨迹的手指位移模型,并得到所有力度的手指位移模型。

进一步地,所述对指尖位置的变化进行标准化的方法包括:

式中p

进一步地,所述同一力度下手指变化轨迹的手指位移模型的获取方法包括:

获得某一力度下的琴键开始被按下的时刻手指变化轨迹,不同琴键及不同手指所对应的手指变化轨迹的重叠部分为该力度下手指位移模型。

进一步地,所述关键时间点的获取方法包括:

获取琴键被按下时刻的手指标准变化向量,选择与当前力度相对应的手指位移模型,根据该时刻的手指标准变化向量在手指位移模型中的位置得到关键时间点。

进一步地,所述手指标准变化向量的获取过程包括:

获取手指位移模型建立后的教学视频,并根据所述教学视频提取得到琴键被按下时刻的前一帧图像与琴键被按下时刻的后一帧图像,利用神经网络获得前一帧图像中指尖位置以及后一帧图像中指尖位置,计算后一帧图像中指尖位置与前一帧图像中指尖位置的差值向量,将所述差值向量标准化得到手指标准变化向量。

进一步地,所述AR特效的生成过程包括:

用粒子代替手指进行运动,所述粒子大小与当前琴键被按下的力度大小成正相关,所述粒子在不同琴键之间的运动以抛物线的形式呈现。

第二方面,一种基于AR和人工智能的音乐线上教育演示系统,包括:

教师端、储存端、处理端及学生端;

所述教师端用于记录所有曲谱中琴键状态及琴键被按下时不同力度,得到曲谱时序数据并发送给储存端;采集演奏开始时曲谱的演奏声纹信息并发送给储存端;采集得到琴键区域视频及演奏时的视频并发送给储存端;

所述储存端用于储存教师端及处理端发送的数据,并接受处理端对数据的调用;

所述处理端用于调用储存端所储存的数据;

建立包含所有曲谱的曲谱时序数据库并发送给储存端;获得当前教学曲谱的曲谱时序,根据当前教学曲谱的曲谱时序获得琴键开始被按下的时刻;

根据不同力度下琴键开始被按下的时刻的手指位置变化轨迹,建立手指位移模型;获取在演奏时琴键被按下时的手指按键轨迹,并确定该琴键被按下的力度对应的手指位移模型,根据手指按键轨迹和对应的手指位移模型得到琴键被按下时的关键时间点;

利用得到的关键时间点确定出该琴键被按下到手指离开琴键的时间段;获取在演奏过程中所有琴键被按下到手指离开的时间段并加载到对应的曲谱时序中得到新曲谱数据;

根据新曲谱数据生成AR数据并发送给学生端;

所述学生端用于根据处理发送的AR数据在显示设备上呈现出AR特效。

相较于传统技术方案,本发明的有益效果是:

1.基于教师的手指位移模型确定教师手部动作关键时间点,不需要对视频逐帧进行分析,可降低教师端处理器的运算量;

2.学生端生成的特效可以强调教师的指法、节奏和力度,使得学生更加直观有效的进行学习。

附图说明

在下文中,将参考附图仅作为举例来对本文的实施例进行更加详细的描述,在附图中:

图1是本发明的一种基于AR和人工智能的音乐线上教育演示方法的框图。

图2是本发明的实施例提供的琴键状态示意图。

图3是本发明的实施例提供的建立手指位移模型的过程的框图。

图4是本发明的实施例提供的同一力度下不同手指的手指相对位置叠加示意图。

图5是本发明实施例中不同力度下的手指位移模型示意图。

图6是本发明实施例中关键时刻确定的示意图。

图7是本发明的一种基于AR和人工智能的音乐线上教育演示系统的框图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本申请实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本申请。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。

术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征;在本实施例的描述中,除非另有说明,“多个”的含义是两个或两个以上。

图1是本实施例中一种基于AR和人工智能的音乐线上教育演示方法的框图,如图1所示基于AR和人工智能的音乐线上教育演示方法包括如下步骤:

步骤S101、建立包含所有曲谱的琴键状态及琴键被按下时不同力度的曲谱时序数据库,具体包括以下内容:

1.在电钢琴上弹奏教材中的每一首曲子;

2.在每一首曲子演奏过程中记录电钢琴中不同的琴键在当前时刻中被按下还是没有被按下,琴键被按下记为1,没有被按下记为0;

3.在每个琴键的时序中,标记每个琴键被按下时应有的力度(力度有8种,极弱ppp、很弱pp、弱p、中弱mp、中强mf、强f、很强ff、极强fff);

4.将教材中每一首曲子在不同时刻每个琴键的时序记录下来,建立曲谱时序数据库。

步骤S102、从曲谱时序数据库中获得当前教学曲谱的曲谱时序,根据当前教学曲谱的曲谱时序获得琴键开始被按下的时刻。

在演示教学刚开始的时候使用音频指纹识别确定当前的教学曲谱,在曲谱时序数据库中获得对应的曲谱时序,按照曲谱中不同琴键的上升沿确定琴键被按下的时刻。

图2示出了本实施例中琴键状态示意图,如图2所示每个曲子中每个琴键在被按下时都有对应力度标记,整个曲子都有不同状态的划分,图中琴键1在t

步骤S103、根据不同力度下琴键开始被按下的时刻的手指位置变化轨迹,建立手指位移模型,具体包括以下内容:

该步骤目的在于通过在教师端获取教师的演示视频,在选中帧中获得教师的指尖位置;通过比对各琴键状态变化时段中的指尖位置确定教师的手指位移模型,从而在后续的演奏中根据手指位移模型确定演奏当前曲谱的关键时刻点。

本实施例中,对刚入门的钢琴学习者来说节奏和力度是必须掌握的演奏技巧,同时一首曲子好听与否,很大程度上取决于教师能否正确得表现曲谱中的每个节拍,然而对于钢琴初学者来说,节奏和力度又是很难掌握的技法之一。本实施例中生成的AR特效根据教师端教师的指尖动作确定粒子的关键位置,用以辅助学生端学生对节奏和力度的学习。

由于本公开所提供的演示方法应用于线上的一对一教学,需要考虑其实时性,即教师端的教师动作要能够在学生端低延时得以呈现;本实施例关注教师指尖在按下琴键时的动作,对教师指尖的动作建立手指位移模型确定演奏的关键时刻;建模完成后,后续的关键时刻就不需要逐帧检测,任选一帧计算手指位置就可以利用手指位移模型确定关键时刻,从而保证系统方案的实时性。

图3示出了本实施例中建立手指位移模型的过程的框图,如图3所示建立手指位移模型的过程具体包括以下内容:

步骤S201、获取进行演示时的视频以及分段后的视频,逐帧获取所述演示时视频的图像,具体包括以下内容:

将教师端相机设置在琴键区域的斜上方,保证能够拍摄到整个琴键区域,从教师端教师进行示范演奏时开始获取视频,刚开始没有建立手指位移模型的时候逐帧检测获取图像,将相机位置固定使得每一次演示时仅需检测一次琴键区域即可。

步骤S202、利用分割网络获得琴键在所述图像中的位置,具体包括以下内容:

本实施例中使用实例分割网络选出各个琴键在图像中的区域,具体包括以下内容:

1.本实施例所用DNN为Encoder-Decoder结构,训练集为斜上方所拍摄得到的钢琴图片;

2.标签分为琴键区域和其他区域共两类,将本实施例中88个琴键区域分别标记为1~88,其他非琴键的区域标记为零;

3.损失函数采用交叉熵函数;

4.记录每个琴键区域在像素坐标系中v轴最大值v

步骤S203、利用神经网络获取所述图像中的指尖的位置坐标,具体包括以下内容:

根据当前教学曲谱的分段时间点,选中分段时刻前后时长各为T共2T的视频帧,在这些帧中的琴键区域检测教师的指尖位置。T的大小可以根据演示端的处理器性能确定,经验值为0.5秒。本实施例中教师的指尖位置检测网络采用关键点检测网络,关键点检测网络为Encoder-Decoder结构,具体训练如下:

1.数据集采用琴键斜上方相机获得的图片;

2.标签为十类关键点,即人双手的十个指尖。标注过程为:每类关键点对应一个单通道,在该通道中标记关键点对应像素的Diagram位置,而后高斯模糊使得标记点处形成关键点热斑,本实施例中标签图像共包含十个通道;

3.Loss为均方误差。

将关键点检测网络得到的指尖位置热斑进行soft-argmax变换得到每一帧中对应的指尖位置坐标。

步骤S204、识别所述琴键开始被按下时刻所对应的按下琴键的手指,具体包括以下内容:

在每段选中的视频中,获取后半段视频对应的时间,确定这段时间内琴键的状态,选中状态为1的各个琴键在图像中对应的区域。统计在后半段视频中选中区域内出现的关键点对应的指尖。哪个指尖在视频指定区域中出现的次数多,哪个手指就按下这个区域对应的琴键,这个手指称为当前这个琴键的按键手指。

本实施例中,所选中的视频以数据库中琴键按下的时刻为中心,在前半段视频中教师的手指可能只是经过这一区域并没有按下琴键;本实施例中教师的手指在后半段视频中一定按在对应的琴键上,使得琴键被按下。

步骤S205、对琴键被按下时指尖位置的变化进行标准化,并根据标准化后的指尖位置的变化得到手指位置变化轨迹,具体包括以下内容:

1.获取选中视频中第i帧的按键手指指尖坐标p

2.对比相邻两帧中的坐标,计算两帧中的坐标差得到变化向量Δp

Δp

3.将变化向量映射到琴键末端得到标准变化向量,即:

4.将这段视频中的所有标准变化向量依次叠加得到手指变化轨迹。

因手指在琴键上按下的位置不同,琴键被按到底时手指的位移也不同,本实施例以琴键外边缘为准,通过本步骤将所有手指的位移映射到琴键外边缘处,便于后续步骤中对手指相对位置进行比较。

步骤S206、获取同一力度下手指变化轨迹的手指位移模型,并得到所有力度的手指位移模型,具体包括以下内容:

本步骤目的在于提取数据库中的琴键状态变化时的力度,对比同一个力度的琴键状态变化时刻点附近视频中对应琴键的手指变化轨迹,生成不同力度的琴键状态的手指位移模型,具体步骤如下:

1.对比所有的曲谱段落的长度即时间间隔,将最长的时间间隔x作为教师首次教学的延时,在教学刚开始的x时间内的视频帧中获得手指位移模型;

2.提取x段时间的视频中同一个力度在不同时刻按下不同琴键,对应的手指变化轨迹;

3.计算不同力度下,将所有手指变化轨迹的最长公共子序列作为该力度下的手指运动模版。

图4示出了本实施例中同一力度下不同手指的手指相对位置叠加示意图,如图4所示,在所选的2T时间长度内,同一力度下不同手指的手指相对位置存在重叠部分及不重叠部分,同一个力度下的各种手指位移中重合的k到k′段,得到该力度下的手指位移模型,进而得到所有力度下的手指位移模型,图5示出了本实施例中不同力度下的手指位移模型示意图,因本实施例中共有8种力度,故本实施例中共存在8个手指位移模型。

步骤S104、根据当前时刻指尖位置及所述手指位移模型,确定教学的关键时刻,具体包括以下内容:

首先在教学开始一段时间或者手指位移模型确定之后,根据数据库中时序的变化时刻确定检测帧的位置,具体步骤如下:

1.提取分段点对应的时间t

2.提取教学开始后t时刻,拍摄的教师演奏视频帧;

3.提取教学开始后t时刻的前一帧t

4.在提取的帧中使用指尖关键点检测网络获得指尖位置;

5.将t

6.将当前手指位置变化向量映射到琴键末端得到t时刻的手指标准变化向量。

因为本实施例中数据库中的时序和实际演奏曲子时的时序不一定相同,因此,将数据库中的时序当作参考,具体的时间点根据模型来确定的。

步骤S105、利用得到的关键时间点确定出该琴键被按下到手指离开琴键的时间段,具体包括以下内容:

1.确定当前时刻手指所弹琴键的力度;

2.将当前标准变化向量在这个力度下模版的位置;

3.根据这个模版的相对位置确定关键时刻k和k′。

本实施例中将当前的位置与对应的手指位移模型进行对比,在该力度下根据当前标准变化向量在模型中的相对位置,确定时间t

图6示出了本实施例中关键时刻确定的示意图,如图6所示得到当前的手指标准变化向量a后,根据a在手指位移模型中的相对位置,即图6中p

步骤S106、获取在演奏过程中所有琴键被按下到手指离开的时间段并加载到对应的曲谱时序中得到新曲谱数据,具体包括以下内容:

因原有的曲谱时序数据库中只有琴键状态以及琴键被按下时的力度,并没有琴键被按下的过程的具体时间以及手指在琴键被按下过程中的具体位移变化情况,在现有曲谱数据库的基础上载入所有琴键被按下到手指离开的时间段得到新曲谱数据,得到的新曲谱数据包括琴键状态、琴键被按下时的力度以及琴键被按下过程中从手指被按下到离开的时间段,为后续生成AR特效提供依据。

步骤S107、根据新曲谱数据生成按照曲谱演奏时的AR特效进行教学演示,具体包括以下内容:

本实施例中每一个手指均存在与其对应的一个粒子,本实施例通过粒子来体现教师的手部动作,并通过粒子的动作时刻强调教师的指法、节奏和力度。具体如下:

1.本实施例中共有十个粒子,每一个粒子均代表教师每一个手指;

2.粒子的大小代表当前手指弹奏琴键的力度大小,本实施例中从小到大八个大小分别代表从极弱到极强共八种力度;

3.粒子的位置代表手指的位置;

4.每个粒子在k到k′的时间内位于对应手指按下的琴键上,这一时间内的粒子准确位置根据手指位移模型确定;

5.每个粒子从按下上一个琴键的k′时刻,到按下下一个琴键的k时刻之间,粒子的轨迹为抛物线轨迹。

下面参考图7来描述本公开实施例的系统,图7示出了一种基于AR和人工智能的音乐线上教育演示系统的框图,如图所示基于AR和人工智能的音乐线上教育演示系统包括以下内容:

教师端301、储存端302、处理端303及学生端304。

所述教师端301用于记录所有曲谱中琴键状态及琴键被按下时不同力度,得到曲谱时序数据并发送给储存端302;采集演奏开始时曲谱的演奏声纹信息并发送给储存端302;采集得到琴键区域视频及演奏时的视频并发送给储存端302;

所述储存端302用于储存教师端301及处理端303发送的数据,并接受处理端303对数据的调用。

所述处理端303用于调用储存端所储存的数据;

建立包含所有曲谱的曲谱时序数据库并发送给储存端302;获得当前教学曲谱的曲谱时序,根据当前教学曲谱的曲谱时序获得琴键开始被按下的时刻;

根据不同力度下琴键开始被按下的时刻的手指位置变化轨迹,建立手指位移模型;获取在演奏时琴键被按下时的手指按键轨迹,并确定该琴键被按下的力度对应的手指位移模型,根据手指按键轨迹和对应的手指位移模型得到琴键被按下时的关键时间点;

利用得到的关键时间点确定出该琴键被按下到手指离开琴键的时间段;获取在演奏过程中所有琴键被按下到手指离开的时间段并加载到对应的曲谱时序中得到新曲谱数据;

根据新曲谱数据生成AR数据并发送给学生端304。

所述学生端304用于根据处理发送的AR数据在显示设备上呈现出AR特效。

综上所述相较于传统技术方案,本公开在手指位移模型建立之后基于教师的手指位移模型确定教师手部动作的关键时间点,不需要对视频逐帧分析,降低教师端处理器的运算量;学生端生成的特效强调教师的指法、节奏和力度,能够帮助学生更加直观有效地进行音乐学习。

本发明中涉及诸如“包括”、“包含”、“具有”等等的词语是开放性词汇,指“包括但不限于”,且可与其互换使用。这里所使用的词汇“或”和“和”指词汇“和/或”,且可与其互换使用,除非上下文明确指示不是如此。这里所使用的词汇“诸如”指词组“诸如但不限于”,且可与其互换使用。

还需要指出的是,在本发明的方法和系统中,各部件或各步骤是可以分解和/或重新组合的。这些分解和/或重新组合应视为本公开的等效方案。

上述实施例仅仅是为清楚地说明所做的举例,并不构成对本发明的保护范围的限制。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动,这里无需也无法对所有的实施方式予以穷举。凡是与本发明相同或相似的设计均属于本发明的保护范围之内。

相关技术
  • 一种基于AR和人工智能的音乐线上教育演示方法及系统
  • 基于AR的演示方法及系统
技术分类

06120113693368