基于神经网络的声乐演奏评价系统研究及其在钢琴教学中的应用

2020-09-02 07:14何鸿雁
微型电脑应用 2020年8期
关键词:乐谱演奏者神经网络

摘要:

现阶段的声乐教学面临的教师资源短缺日益严重,因此利用计算机辅助教学功能开发一款声乐教学系统显得尤为重要。首先,根据计算机神经网络技术原理对系统的算法流程进行了详细设计,利用傅里叶变换及其改进函数对声乐的演奏特征进行提取,根据系统框架结构和数据处理流程对系统的重点模块进行设计,并给出了关键设计代码,最后以钢琴演奏为例,选取了不同钢筋等级的演奏者对系统评判准确性进行测试,测试结果表明该系统能反映表演者的真实水平,有利于声乐教学。

关键词:

神经网络; 声乐演奏; 系统; 评价; 教学

中图分类号: G 643

文献标志码: A

Research on Vocal Music Performance Evaluation System Based on

Neural Network and Its Application in Piano Teaching

HE Hongyan

(Department of Pop Music, Shanxi Vocational Academy of Art, Xian, Shanxi 710054, China)

Abstract:

At present, vocal music teaching is facing on a growing shortage of teacher resources, so it is particularly important to develop a vocal music teaching system by using the computeraided teaching function. First of all, according to the principle of computer neural network technology, the algorithm flow of the system is designed in detail, the performance characteristics of vocal music are extracted by using Fourier transform and its improved function, the key modules of the system are designed according to the system frame structure and data processing flow, and the key design codes are given. Finally, taking piano performance as an example, performers withdifferent grades are selected to test the accuracy of the system evaluation, and the test results show that the system can reflect the real level of the performer, which is conducive to vocal music teaching.

Key words:

neural network; vocal music performance; system; evaluation; teaching

0引言

隨着我国经济的发展,居民生活水平日益提高,在物质生活得到大幅度改善的同时,人们的精神生活也在不断充实[1]。钢琴演奏作为陶冶情操的一种重要手段受到众多人追捧,学员人数众多,而现阶段,我国钢琴演奏的教学者人数却极为稀少,加之钢琴教学需采用一对一的教学方式,加之钢琴教学对环境、时间要求等因素,使得钢琴普及率并不高[25]。因此针对钢琴学习开发一款声乐演奏评价系统并利用计算机的自动识别技术,自动记录学员的演奏信息,并利用系统内已存乐曲信息对比,对学员的钢琴演奏效果进行点评,找到演奏中的不足显得尤为重要。该系统不仅在一定程度代替老师的教学工作,同时该系统还可对相关专业人员进行音乐创作有一定的辅助作用。

1神经网络技术研究

计算机神经网络技术是根据人体的神经网络原理产生的信息处理系统。BP(Back Propagation)网络是目前最流行的神经网络技术,它能够学习并存储输入—输出关系型映射[68]。按照功能和作用机理的不同,该网络技术的学习模型包括输入层、隐层和输出层三个层级[9],其结构示意如图1所示。

假设输入层节点个数为n,隐层节点个数为q,输出层节点个数为m,输入层至隐层间权值为vki,转换关系用f1表示,隐层至输出层间权值为wjk,转换关系用f2表示,则由输入层至隐层的转换可用式(1)表示,由隐层至输出层的转换如式(1)。

式中:zk为输入层转换至隐层后的值,xi为输入层值,i为1到n的整数如式(2)。

式中:yj为隐层转换至输出层后的值,k为1到m的整数。

网络结构中的误差可用式(3)计算,如式(3)。

式中:e为计算误差,y为隐含层平均值。

根据以上转换规则,得到了计算机中BP神经网络算法流程,如图2所示。

2声乐特征提取技术

2.1音乐特征提取

音乐特征提取是评价系统中最为重要的内容。音乐特征提取的准确性和科学性决定了系统信号识别的准确性和评价结果客观与否,因此必须对声乐特征提取进行系统分析。

音乐特征识别是一个将音乐素材转变成电子信号的过程[10]。识别的基础是音乐特征的采集,本文选取了4架钢琴并分为不同制式,采用不同的演奏方法和弹奏力度,并包含了各个音区,将采集到的音乐信息通过傅里叶变化得到不用音的时域波形和频域波形,傅里叶变换公式如式(4),图3为提取后的波形图。

式中:v0为弦的初始运动速度,a为振动加速度,t为振动时间,l为弦长,δ为击打的半宽度。

2.2提取后处理

分析图3的波形图可以发现,提取后的音乐特征与实际值之间存在一定差距,电子音乐与实际音频之间关系不能完全对应,因此有必要对提取后的波形处理使其与真实值更为接近。根据相关研究[1014],钢琴的音高取决于基频的大小,钢琴的音色取决于倍频的大小,钢琴的音色受提取的频谱中前五个峰值范围内的波形及五个峰值间的相互相对大小影响。因此必须对提取公式重新修正,从波形影响因素出发,构建了式(5)所示的修正公式,根据修正公式对提取波形进行修改,并依据公式(5)对图3做出修改,修改后图像如图4所示。

式中:S(ω)为修改后的振动纵坐标值,α1为调节波形峰值附近波形曲线的参数值,

A为振幅,ωt为指定音频或倍频。

3系统设计与应用

3.1评价系统构件

声乐演奏评价系统是利用计算机的识别技术判断演奏者的演奏效果,并按照严谨的计算机逻辑和预先制定的演奏标准对于演奏表演打分。系统会根据不同乐曲,事先将乐曲转化成电子信息,演奏者在系统内演奏的乐谱经滤波处理后被提取音乐特征,经过电子乐谱与演奏者乐谱信息比较,最后输出比较结果并打分,其结构框架如图5所示。

根据系统框架结构,从系统内部数据的处理顺序出发,按照系统的工作原理和工作顺序,绘制了系统流程如图6所示。

系统会将乐谱预处理并以电子信息形式存储,演奏者乐谱信息经过音乐特征提取并整理后与存储的乐谱信息比较,最后依据比较结果评分并输出评分结果。

相关提取模块是系统实现的基础,并在上文中给出了提取公式,本章重点分析匹配比较模块。该模块的功能是对表演信息与表演乐谱的比较,以判断表演者和乐谱的相似程度,找出二者间的差距。比较分为两部分,一部分为演奏特征和电子乐谱的定性比较,判断弹奏的准确性,另一部分为系统根据演奏结果与实际乐谱的定量对比并给出演奏分数。演奏准确性界面,如图7所示。

界面中蓝线表示弹奏者弹奏的音节,一旦与乐谱出现差异部分,蓝线会变成红色,模块的部分代码如下。

提取模块关键代码:

//OnEventInput函数部分代码

//_noteMgr为标准音管理NoteManager类的实例,实例化时候从课程信息类里

//获得曲谱信息作为构造参数,并根据曲谱的小节、旋律、和弦信息对标准音归类。

//Note类存储标准音的信息,包括音高、大小、开始、结束等音的属性。

Note curNote=NULL;

if (evt.command=90H)//当Midi消息为按下键时

curNote_noteMgr.getCurrentNote(true);//curNode为当前时间段内标准音(开始发音)

else if (evt.command==80H)//当Midi消息为释放键时

//curNode为当前时间段内标准音(结束发音)

curNote_noteMgr.getCurrentNote(false);

//由系统时间和弹奏开始的时间换算得出当前的绝对时间

LONG curtime=getCurrentTime();

if (curNote!=NULL && abs(curNote.positionurtime)

//limit time为判断错音的限制时间

//确定当前Midi消息的绝对时间

evt.position=curtime;

//当前Midi消息与标准音对应,当对应数超过两个则进行和弦判断

curNote.attach(evt);

//如果Midi信号超过限制时间,则认为这个键弹错,即最坏的结果。

得到每个标准音Note对应的信息后,就可以根据小节、旋律的归类计算神经网络模型的输

//得到以记为标号的小节的节奏特性

float getSegmentRhythmValue (int id)

{

int noteNum=noteMgr>getSegmentNum(id);//小节的单符数量

value=0;

for(int i=0;i

{

//按照小节编号获得音

Note*note=_noteMgr>getSegmentNote(id,i);

//计算标准音和Midi信号时长的差值

value+=note>CalculateRhythm();

}

//startMidiEvent和endMidiEvent是Midi信號实例,如果在弹奏的时候没有加入,则以默认的

float Note::ClculateRhythm()

{

return abs(_startTime-startMidiEvent.position)

+abs(endTime-endMidiEvent.position);

系统中定量对比是调式调性、触键、时值音高和速度的综合结果。其中调式调性占评判总分的30%,触键占评判总分的20%,时值音高占评判总分的30%,速度占评判总分的20%。模块的关键代码如下,模块界面如图8所示。

定量评价模块关键代码:

//segmentMgr

for(int i=0;i<_segmentMgr>getSegmentNum;i++)//循环次数为小节数量

{

//rhythmInput为输入节奏数据数组,类型为float

rhythmInput[i]=_segmentMgr.getSegmentRhythmValue(i);

//}itchInput为音高数据数组,实际上表示小节内的错音数

}itchInput[i]=_segmentMgr.getSegmentPitchValue(i);

//_metronomeInput为节拍数据数组

metronomeInput[i]=_segmentMgr.getSegmentmetronomeValue(i);

}

//同样的方法可以获得和弦和旋律输入数据,然后进行数据归一化处理

for(i=0;i<_segmentMge>getSegmentNum;}i++)//输入小节神经网络数据

{

BPNetVPork.SetInput(i*3+0,rhythmInput[i])://节奏

BPNetWork.SetInput(i*3+1,}itchInput[i]);//音高

BPNetWork.SetInput(i*3+2,metronomeInput[i]);//节拍

}

//同样的方法可以输入神经网络和弦和旋律数据

BPNetWork.FeedForward();//向前计算评价值

GetOutput();//获得评价输出值

3.2系统应用分析

系统完成后对其应用效果进行了试验验证。对于同一首乐谱分别选取了三位演奏者进行表演,其中一位是钢琴教师,学生1为钢琴8级别,学生2为钢琴7级,三位演奏者演奏完成后分数,如表1所示。

从表中可以发现,无论是在演奏中的单次得分,还是多次演奏的平均分,在系统中得分由高到低分别为教师、学生1和学生2,与三位演奏者的真实钢琴水平相比,此分数排名能够客观上反映表演者的演奏水平。因此系统在缓解声乐教学资源不足和提高学生自主学习方面具有一定的借鉴意义。

4总结

在计算机技术日益发展的今天,如何将信息化技术带入到钢琴教学中一直是一个热点问题。本文用计算机神经网络信息系统,以评价声乐演奏者的表演水平为目标,开发了一款声乐表演评价系统,并将其应用于钢琴教学中。本文的研究主要得出了以下结论:

(1)根据计算机神经网络内在逻辑关系,对系统网络算法流程进行设计,并将该算法应用于系统构建中。

(2)音乐特征提取是系统的关键环节,本文依据傅里叶变换将演奏者的声音信息转变成计算机能够识别的波形图,并根据转变特点对图像加以修正,结果表明修正后的音乐特征与演奏者实际音乐特征相符。

(3)对系统框架和关键模块进行了设计研究,并给出了部分程序代码,最后选取了三位表演者对系统的评价效果进行分析,结果表明该系统能反映演奏者的真实水平,能发现演奏者的不足,有利于钢琴教学的开展。

参考文献

[1]郭峰,钱黎明,沈煜,等.吉他演奏机器人的机械结构设计[J].机械设计与制造,2020(1):248250.

[2]秦键, 许舒亚.管弦乐作品中的电子声学理念——以《夕阳、水晶》为例[J].星海音乐学院学报,2019(3):93104.

[3]孟庆林,原猛,夏洋,等.幅度调制信息对乐器识别的影响[J].声学学报,2015,40(2):300306.

[4]曹莎莎,吴永忠,程文娟.钢琴乐声仿真频谱模型研究[J].电子测量与仪器学报,2017,31(1):125131.

[5]万景.基于乐器演奏的乐音识别系统的研究[J].人民音乐,2011(11):3335.

[6]张承忠,叶邦彦,梁立东,等.小提琴弓弦系统的振动形态及振动机理研究[J].振动工程学报,2015,28(3):359365.

[7]徐仪,刘涓涓.频谱音乐的历史渊源、创作实质与美学态度[J].黄钟(武汉音乐学院学报),2017(3):412.

[8]张琳,王珊,秦晓瑜,等.基于听觉仿生模型的乐器识别[J].东北师大學报(自然科学版),2014,46(1):7579.

[9]彭其圣,彭建盛,徐咏.基于PSoC3的多功能电子琴设计与实现[J].制造业自动化,2012,34(19):116118.

[10]李笑珂.基于乐器学理论的河南特色剧种乐器音色数据库的构建研究[J].音乐创作,2016(11):193194.

[11]陶珂.高师声乐集体课教学目标与评价的多元化研究[J].教育与职业,2012(30):180181.

[12]杨艳.器乐课程教学评价研究[J].大舞台,2013(5):159160.

[13]张轶.高师声乐教学评价标准体系的研究[J].人民论坛,2015(33):163164.

[14]李子晋,付晓东,朱嘉星.民族低音拉弦乐器改良中音质评价实验方法研究[J].中国音乐,2018(3):157163.

(收稿日期: 2020.03.11)

作者简介:何鸿雁(1980),女,硕士,讲师,研究方向:声乐、音乐教育。

文章编号:1007757X(2020)08012504

猜你喜欢
乐谱演奏者神经网络
基于人工智能LSTM循环神经网络的学习成绩预测
基于图像处理与卷积神经网络的零件识别
乐谱:放飞梦想
基于自适应神经网络的电网稳定性预测
二胡演奏者的合奏技能探究
一毛学琴记——乐谱失踪
三次样条和二次删除相辅助的WASD神经网络与日本人口预测
浅析心理活动对钢琴演奏的重要影响
交响曲中小提琴演奏者视奏能力的培养策略
基因密码乐谱