基于音乐情感识别的舞台灯光控制方法研究
2020-12-08段中兴严洁杰
段中兴, 严洁杰
(1.西安建筑科技大学 信息与控制工程学院,西安 710055;2.西部绿色建筑国家重点实验室,西安 710055)
0 引言
舞台灯光是一门艺术,需根据表演内容和实际需要不断调整,其大都采用电脑灯控台来设计控制方法,通过灯光与音乐的结合,为观众营造一种真实、生动的艺术环境。然而,舞台灯光系统控制难度大、切换速度快,灯光控制方法设计更是一个难点。在传统的舞台灯光设计中,通常需要音乐专家和灯光设计师长时间的合作,在演出前做更多的准备,非常耗时。为解决传统舞台灯光表演设计难、效率低等问题,本文研究了基于音乐情感识别的舞台灯光控制方法,通过音乐情感来控制灯光颜色及灯具的转动,使人将对音乐的听觉感受同灯光变化的视觉感受溶为一体,营造出完美的艺术效果。
舞台灯光控制系统涉及计算机控制技术、数据库技术、舞美艺术等,是一个多学科交叉的研究领域[1]。音乐情感是音乐的本质特征[2],音乐情感识别是该系统的基础,与灯光控制方法的设计有着密不可分的关系。在音乐情感识别领域,如何对情感进行合理的分类是首要的难点,常用方法包括支持向量机[3]、神经网络[4-5]、模糊分类[6-7]等。文献[8]曾采用先提取音乐情感中高层特征、再进行分类的思路,进行音乐情感识别,克服了人工分类效率低、速度慢等问题,因此我们采用这个思路进行我们的工作,但是在特征选取以及情感分类算法都与文献[8]有很大不同。
本文主要由如下几个部分组成:1)确定MIDI文件的主音轨,提取主要特征数据,建立音乐特征分析模型;2)对音乐特征数据进行分类,建立音乐情感分类模型;3)使音乐情感与灯光动作相匹配,生成灯光控制方法。
1 基于径向基函数的支持向量机多分类算法
音乐情感分类器的主要任务是构造一个分类函数或者分类模型将未知情感类别的音乐映射到已知情感类别中。本文选用支持向量机(Support Vector Machine,SVM)分类算法,其对于解决小样本、非线性等一些问题的解决有很大优势,具有更好的数据泛化性能,是应用最广泛的音乐情感分类技术之一。
1.1 支持向量机算法
SVM算法在统计学习理论体系基础之上提出的思维新型机器学习方法,它通过非线性变换将输入样本投影到高维空间中,并在空间中寻找最优或广义最优线性分类的超平面,其柔性边界的表达式为:
(1)
在公式(1)中,(xi,yi)为训练样本,且xi∈Rd是输入向量,yi∈{-1,1}是输出向量;φ(xi)为将输入空间特征空间映射到高维特征空间;ω和b分别为d维空间的权向量和偏置,决定了超平面的位置;ξi为松弛变量;C为惩罚参数,C的大小决定了对离群样本的重视程度,C越大,越重视。
由于音乐特征数据空间中的分布比较复杂,因此采用基于内核的SVM(非线性)来处理音乐识别问题。引入拉格朗日函数后,将寻优问题转化为对偶问题描述如下:
(2)
其中:K(xi,x)为核函数,αi为拉格朗日乘子,求解可得α*,b*。
最终得到判别函数f(x)为:
(3)
1.2 模型核函数的选取
在SVM算法中,核函数用于实现样本低维到高维空间的转换,对模型的性能有着重要的影响。在本文中,样本数远超过特征维数,故选取基于径向基核函数(Radial Basis Function,RBF)的支持向量机训练分类器,相较与线性、多项式、Sigmoid等常用核函数,RBF函数具有较宽的收敛域,适应性更广,优化参数较少,是较为理想的映射核函数。RBF函数公式如下:
(4)
式中,σ为核参数,其定义了单个训练样本的影响大小,值越小影响越大,值越大影响越小。
1.3 多分类算法基本思想
本文选用Thayer 的二维情感模型[9-10],这两个维度分别是能量和压力。为了避免情感用语的歧义并减少系统开发的工作量,对模型进行了改进,用四种离散的情感形容词关联音乐情感与灯光动作。模型将音乐情感划分为四类:“兴奋的、热烈的”,“紧张的、生气的”,“悲伤的、忧郁的”和“放松的、宁静的”。如图1所示。
图1 四类离散情感模型图
SVM不能直接运用于多类分类。目前解决SVM多类分类问题常用两种方法:直接法和间接法[11]。直接法通过优化SVM的目标函数和参数,直接求出能够适用多分类问题的分类函数,但其求解难度大、效率低。间接法是将多类问题归结为多个两类问题的思想,通过对多个SVM分类器进行组合,以实现多分类的功能。本文运用间接法,构建完全二叉树的SVM多类分类模型,根据二维情感,先沿能量轴分为活力、平静两类,再沿压力轴分为悲伤、快乐两类,如图2所示。
图2 SVM多分类器构造示意图
2 粒子群优化算法及其改进
以RBF为核函数的SVM分类模型中的某些参数难以确定,手动参数调整的准确性不高且不智能。因此,本文选用改进的粒子群算法(particle swarm optimization,PSO)算法以优化惩罚参数C和核参数σ来提高模型准确性。
2.1 粒子群算法
粒子群算法(PSO)最初是受到鸟群觅食这一简单的社会行为启发,经过简化之后而提出的。该算法将每个个体看作搜索空间的“粒子”,每个粒子具有位置和速度属性,及一个被优化的函数决定的适应度值。算法开始时先从随机解出发,并在数次迭代中通过跟踪局部极值和个体极值来更新自己的速度和位置,公式如下:
(5)
Xidk + 1=Xidk+Vidk + 1
(6)
2.2 改进的粒子群算法
由式(5)可知,惯性权重对算法性能有着重要的影响。ω较大时,全局搜索能力变强;而ω较小时,局部搜索能力变强。为了提高PSO算法平衡全局和局部搜索的能力,本文采用自适应权重的惯性权重,其取值与目标函数和适应度函数有关:
(7)
其中,ωmax,ωmin分别为最大和最小惯性系数;F为粒子的适应度函数,Favg,Fmin分别为适应度函数的最小值和平均值。本文在每个二分类器的参数求取时,将五折交叉验证识别率作为PSO每个粒子的适应度函数:
(8)
由于采用五折交叉验证方法,故优化的样本集数目m设置为5,Rk,Wk分别为第k次分类时样本数据分类正确和错误的数目。
3 改进PSO优化的SVM分类算法
为进行音乐情感分类,本文选取平均音高、平均音强、旋律方向等七个音乐特征,输入基于RBF的完全二叉树SVM多分类模型训练分类器,最后用PSO算法优化分类模型的惩罚参数C和核参数σ。具体步骤如下:
4)根据公式(7)设置惯性权值ω;
7)得到体最优值Nid即为模型最佳的参数组合{C,σ},用于构建SVM最优模型,并用测试样本来验证模型分类准确率。
根据上述算法,本文建立音乐情感分类模型,算法流程如图3所示。
图3 音乐情感分类算法流程图
4 基于音乐情感识别的舞台灯光控制方案
系统首先依据四类基础情感将MIDI音乐的音乐特征(包括平均音高、平均音强、旋律走向等)进行提取分析,建立音乐情感分类模型,并将灯光动作模型与情感模型相对应,实现灯光情感与音乐情感同步匹配,最后将灯光动作信息以数据库存储,发给电脑灯控制台,控制舞台灯光的运动方式和颜色变化。
4.1 音乐情感特征分析模型
音乐情感内涵只是通过少数几种占据重要地位的音乐的特征元素塑造和表达的[12]。影响音乐情感计算的特征主要有调式、音速、节奏、节拍、音高、音强、旋律等。本节主要根据MIDI音乐的相关属性,确定主音轨的平均音高、平均音强、旋律走向等七个特征来进行音乐特征提取,再对提取的数据进行标准化,建立音乐特征分析模型。特征提取方法如下:
(9)
(10)
(11)
(12)
5)速度Tempo:音乐的速度可以使用音符时长来衡量。单个音符演奏的时长越短,音乐的速度越快,反之,速度越慢,是影响音乐情感的重要特征之一。本文使用音符时长duration来衡量。音符演奏的时长越短,音乐的速度越快,反之,速度越慢,描述如下:
(13)
n为主音轨中所有音符的个数。
6)音符密度NoteBar:音符的密度是指一个小节中音符数量的多少程度。音符密度较小的乐曲通常节奏较慢,而音符密度较大的乐曲通常节奏较快,音符密度也在一定程度上能够反应出乐曲的情感类型,可用音符个数NoteNumber和音节数BarNumber来表示,描述如下:
(14)
7)旋律方向DirPitch:旋律是音符的序列,在乐谱上呈现为一条起伏不平的波浪线。不同乐曲的音符波浪线在形状、走势上的差别,可以从侧面反应出不同音乐之间的不同情感。可由音高差Δpitch和音符时长duration来衡量。
(15)
Δpitchi=pitchi+1-pitchi
(16)
4.2 建立灯光表演动作库
根据文献[13]可知,在灯光颜色情感的研究中可分为两大类:暖色光和冷色光,与音乐能量特征有关。为完成舞台灯光与音乐情感的匹配,本节从灯光颜色、灯光动作两个方面,建立灯光动作模型,并将其与离散情感模型一一对应,分为四类,如表1所示。
表1 灯光动作模型
4.3 基于音乐情感识别的舞台灯光控制方法
为实现音乐情感驱动的舞台灯光控制,本文建立音乐情感分类系统,其基本思想如下:
1)提取音乐的情感特征;
2)建立标准音乐情感分类模型;
3)根据灯光颜色和动作变化建立灯光动作模型;
4)通过通用的离散情感模型,将音乐情感分类结果与舞台灯光动作相匹配,得到灯光控制方法。
灯光控制原理如图4所示。
图4 灯光控制原理图
5 实验结果与分析
实验数据为从midishow网站上下载的231首不同风格的MIDI音乐片段。所有乐曲经过筛选,长度控制在1分钟之内,这是因为过长的乐曲选段所包含的情感信息可能更多,不利于实验分类。实验开始前对所有的乐曲按照四类基础情感进行人工标记。为减少个人偏好和打分误差,邀请音乐专业和非音乐专业学生对这些歌曲进行情感打分,对一首歌只有超过一半的人都标记为同一类情感时,才作为实验数据保留下来。本文从231首乐曲中,选出160首作为训练集,每种类型对应训练用的数量均为40首。另外71首作为测试集,其中,“兴奋的、热烈的”有17首,“紧张的、生气的”有17首,“悲伤的、忧郁的”有19首,“放松的、宁静的”有18首。
5.1 音乐特征分析
实验第一步为对音乐特征进行分析。对音乐特征分析有两个部分:1)音乐特征提取技术;2)特征数据预处理。本文根据前文所述的计算机音乐特征提取技术,用轮廓线法提取数百首MIDI片段的出主旋律,在此基础上提取出每个片段的音频持征,包括平均音高、平均音强、音高稳定性、音强稳定性、速度音符、密度、旋律方向这七个特征;之后,为消除指标之间的量纲影响、使各项指标处于同一数量级,本文选用标准差归一化(Z-score)的方法对原始数据的均值和标准差进行标准化,并存为Excel文件。特征数据标准化后部分结果如表2所示。
表2 音乐特征数据表
5.2 分类认知模型
实验第二步为将训练集的MIDI文件的特征向量输入音乐情感多分类模型,后用改进的粒子群算法进行优化针。并使用一对一的SVM多分类模型[14]、一对多的SVM多分类模型[15]作为对比实验。为了评估算法的性能,我们的工作中采用了5折交叉验证法,把数据随机分为5个分区,其中类的表示形式与完整数据集中的属性大致相同。在每次运行期间,选择1个分区进行验证,而其余部分用于训练。同样,该过程重复五次,以便每个分区仅用于训练一次。
表3为四种SVM多分类器的分类结果对比。
表3 类别分类结果
如表3所示,PSO优化的二叉树SVM多分类模型相较于其他三种SVM多分类模型有明显的优势。
从时间角度来看,时间与决策分类器的数量、求解分类参数的计算量相关。四种多类分类算法中, PSO优化的二叉树SVM算法由于优化问题求解计算量变大,其训练时间稍长于二叉树SVM算法,但是由于分类器数量少,得到分类最优参数后测试时间最短,所以较优于其它3种算法。
从分类精度角度来看,分类精度与求解决策最优超平面的准确性有关。由于引入PSO算法,通过多次迭代寻找到了惩罚参数C和核参数σ的最优解,使模型参数调整的准确性、智能性都有所提高,所以分类精度明显优于其它3种算法。
5.3 PSO优化算法进行参数寻优试验
SVM分类模型包含3个分类器,须利用PSO算法对3组惩罚参数和核参数进行优化。首先设置PSO算法的种群规模为20,初始化粒子的位置和速度即为{C,σ},最大迭代次数为100,设置局部加速度因子系数c1为1.5,全局加速度因子的系数c2为1.7。通过5折交叉验证的方法,5次迭代后求取5次平均交叉验证识别率,提高了算法的可靠性,减小了核函数参数误差。图5为优化后的改进PSO优化的二叉树支持向量机的粒子群适应度收敛曲线图。
图5 适应度收敛曲线
如图5所示,随着进化次数的增加,平均适应度为75%~90%,验证了PSO的优化性能,说明了模型的核参数变化对分类模型准确性的影响。该试验通过PSO寻优得到的3组{C,σ}参数{5.1682,1.0614},{3.2581,0.6702},{6.3011,1.0372}。
综上,本文提出的改进的PSO优化的二叉树SVM算法具有较明显的时间优势,较高的分类精度。验证了改进的PSO优化的二叉树SVM算法分类器的准确性和快速性,且整体性能稍优于其他3种算法。如果分类类别较多时,使用本文思路构建的多层SVM分类模型相较于其他两种结构的分类模型而言,所需要SVM分类器的个数明显减少,所以的分类时间也会明显缩短,因此该优化方法适用于类别数较多、分类实时性要求较高的场合。
5.4 灯光控制方案的实现
基于音乐情感识别的灯光控制分为舞台灯光情感匹配模块和舞台灯光控制模块。
在舞台灯光情感匹配模块,本文使用Matlab编写了音乐情感识别程序,将音乐基本特征作为输入,情感识别结果作为输出,结果有[1,1]、[-1,1]、[-1,-1]、[1,-1],其对应情感为“兴奋的、热烈的”、“紧张的、生气的”、“悲伤的、忧郁的”和“放松的、宁静的”,根据表1可对应相应的灯光控制方案。以《春节序曲》为例,首先提取乐曲基本特征并做标准化处理,生成情感特征向量x={0.7755,0.0639,0.9805,0.7612,0.3474,0.8427,0.6277};然后将情感特征向量x通过情感识别模型得到识别结果,输出为y=[1,1],对应图2可知,经第一层分类器后输出结果为y1=1,判定为“快乐”,经第二层分类器后输出结果为y2=1,判定为“活力”,对应情感类型为兴奋的、热烈的;最后根据表1可选择灯光控制方案4,即灯光颜色为黄色、灯光动作为左右快速摇摆,并生成灯光控制方法存入Excel表格。
表4为部分乐曲灯光控制方案表。
表4 灯光控制方案表
在舞台灯光控制模块,本文将灯光控制方法通过计算机软件模拟照明控制台,将控制方案转换为DMX512信号,并利用市场上常见的MCSWEUSB-DMX舞台灯光控制器,通过与计算机的USB接口相连,从而实现电脑灯光控制平台与现场舞台灯具的连接。如图6所示,本文利用Freestyler和Easy View软件作为灯光控制方案演示平台,模拟舞台使用四个射灯来简单表示灯光动作。
图6 灯光控制效果图
6 结束语
本文先通过提取MIDI音乐的平均音高、平均音强、旋律方向等基本特征,设计情感模型将音乐分为四类基础情感,再与灯光动作一一匹配,建立基于音乐情感识别的舞台灯光控制模型。
在构建情感分类模型时,根据情感模型的特点构建了一个完全二叉树SVM多分类器,分别沿能量轴和压力轴对音乐情感进行识别,相较于其他两种对比模型,该方法有效地减少了分类时间。最后对粒子群算法做出改进,并将其用于分类器的参数寻优过程,虽然参数寻优算法增长了训练时间,但是对分类精度有着明显的提升,并且模型对于测试集的分类时间最短、分类精度最高。在未来研究中,该方法对于离散情感多分类模型及音乐实时情感识别模型有着重要意义。