基于音乐特征识别的音乐喷泉计算机辅助设计系统
摘要:介绍一种基于音乐特征识别的音乐喷泉计算机辅助设计系统。由于能够自动识别音乐的曲式、情感等特征,该系统能够根据不同曲目的特点设计体现音乐内涵的音乐喷泉表演程序;同时,通过综合运用电脑动画、自动控制等技术,大大提高了音乐喷泉表演程序的开发效率。为了对该系统的设计方案进行检验,开发了一个小型室内音乐喷泉的实验装置。实验证明,该系统的运行结果。十分令人满意。
关键词:音乐喷泉 计算机辅助设计系统 音乐特征识别 模糊专家系统
音乐喷泉作为将听觉艺术与视觉艺术相结合的艺术形式,javascript:window.open(this.src);" style="cursor:pointer;"/>已经得到了广泛的关注。目前,国内外虽然已建有很多音乐喷泉,但大多数音乐喷泉都存在着两方面不足:首先、音乐喷泉表演程序的设计需要音乐、舞美、电脑、自控、喷泉等专业专家的合作;其次,为了了解音乐喷泉表演程序的喷射效果,只有在硬件上进行仿真实验。因此,对于一般的音乐喷泉系统,其表演程序的设计非常费时费力,也正是由于这个原因,既便是美国Lasvegas这样著名的喷泉也只能表演几首曲目。
基于上述问题,笔者设计开发了一个音乐喷泉的计算机辅助设计系统,简称CAD-MF。在该系统中,首先提取音乐的基本特征,然后在此基础上分析音尔的曲式特征并将整首乐曲分成若干乐段,并分析出每一段音乐所表达的基本感情色彩;第二步,根据音乐的曲式和情感特片,为每个乐段匹配相应的音乐喷泉基本表演程序,从而生成最初的音乐喷泉表演程序。该表演程序可以用三维动画进行仿真,并可以通过友好的人机界面进行修改,直至满意。最终的表演程序经过自动编译,可以控制音乐喷泉按照设计的动作进行喷射,实现音乐与喷泉的同步。
1 音乐喷泉实验装置
该音乐喷泉实验装置的草图如图1所示。该喷泉由13个喷头、4组彩灯组成。其中,喷头1~6为第一组,可以沿圆圈的切向径向进行自由摆动;7~9为第二组,10~12为第三组,可以左右随意摇摆;13为第三组,不能转动。此外,这13个喷头的喷射高度还可以有3个级别的变化。同时,该装置中还配有4组(1~4)彩灯,由于每一组由3个不同颜色的灯泡组成,因此可以营造出多彩的光照效果。
2 系统概述
该系统由七个部分组成,如图2。
(1)音乐特征的识别
在本系统中,选择MIDI(Musical Instrument Digital Interface)文件作为输入的音源。MIDI是音乐信号在电子乐器之间传输的标准,包括硬件接口标准以及电子音乐信号在不同硬件之间的异步串行传输协议[1]。MIDI格式的音乐文件记录了音乐的全部乐谱和演奏的全过程,很多基本的音乐特征都可以从中直接获得。在此基础上,又可以进一步提取旋律、和声、节奏等复杂特片。根据音乐基本特征和复杂特征在内的音乐信息,最终能够按照乐曲的结构将其分为若干乐段,并且利用模糊分类器识别出每一个乐段所带有的感情色彩。
javascript:window.open(this.src);" style="cursor:pointer;"/>
(2)音乐特征与喷射动作的匹配
这一部分主要是通过模糊专家系统将音乐特征与喷射动作进行两个层次的匹配——段匹配和音符匹配。段匹配是指根据感情色彩为各个乐段找到合适的基本表演程序,即用于表现某一特定情感的典型动作序列。音符匹配则是为特定的音符安排特定的喷射动作。这两个层次的匹配过程也就是音乐喷泉表演程序的最终设计过程,它记录了音乐喷泉随着音乐舞动的全部状态。
(3)动画仿真
当表演程序被设计出来后,如果直接在喷泉装置上进行仿真,将是一个非常费时费力的过程。因此,设计了动画仿真了系统。动画的参数全部按照实际的喷泉实验装置来设计,通过动画可以实现对实际喷射效果的仿真。为了做出与实际喷射相似的喷射效果,采用粒子系统[2]。
javascript:window.open(this.src);" style="cursor:pointer;"/>
(4)手动修改
在观看动画仿真结果后,用户可能需要对原表演程序进行修改。为了使用户能够在不需要了解内部代码的情况下对表演程序进行任意的修改,笔者开发了一个很有好的人机界面。该界面不仅可以实现单点修改、多点修改,还可以为整段音乐选择另一套表演动作。
(5)打印喷泉表演流程总谱
该总谱既包括了所有音符,又包括了与音乐对应的所有喷射动作,可以对整个表演程序一目了然。
(6)编译成控制程序javascript:window.open(this.src);" style="cursor:pointer;"/>
用一台Pentium III 866MHz的PC机作为控制器,它能够自动地把表演程序编译成功放输出的控制程序,从而控制音乐喷泉硬件装置的喷射,实现音乐与喷泉的同步。
(7)同步播放
为了保证喷射与音乐的同步,笔者开发了同步播放程序,主要用于防止喷射相对于控制的延时。
音乐特征识别和匹配是该系统的核心。下面,将对这两个子系统进行重点介绍。
3 音乐特征的识别
由于不同风格的音乐有着各自不同的特点,这里,选择节奏相对稳定、曲式相对固定的约翰·施特劳斯(Johann Strauss)的圆舞曲。
3.1 音乐基本特征的提取
在该系统中,选择MIDI文件作为输入的音源。一个MIDI文件含有一个header chunk和若干个track chunks。速度、节拍等全局基本特片以从header chunk中得到;而音高、音长等音符信息则可以从track chunks中获取[3]。由于MIDI文件中含有大量音乐信息,因此许多音乐的基本特征都可以从中直接获取。这里,提取了九种基本特片:音色、调性、节拍、音高、音长、音量、力度、速度和发声时间。
3.2 音乐曲式特征的提取[4]
施特劳斯的圆舞曲多由三部分组成:主体是3~5个小圆舞曲,前面有序奏,最后有尾声。每首圆舞曲有两个主要旋律,用单二部曲式(AB)或单三部曲式(ABA)构成。考虑到这些旋律常常由两个非常相似的乐句组成,采用一种搜索相似旋律的方法分析音乐的曲式结构;同时,为了提高搜索效率和正确率,还兼顾了曲式结构中的和声与节奏特点。
javascript:window.open(this.src);" style="cursor:pointer;"/>