[0004] 本发明的目的在于提供一种智能钢琴音律识别和自动调整系统。
[0005] 本发明通过对采集的智能钢琴弹奏音频与播放的标准音频进行动态地、量化地比较,让已经初步开发完的智能钢琴自动演奏系统拥有自我调节、优化音律效果的能力,大量减少了钢琴自动演奏系统开发者在系统开发过程中的音律校准工作,也用准确的量化、动态调整方式代替了以经验判断和估计为主的人力调整方式。
[0006] 实现本发明目的的技术解决方案为:
[0007] 一种智能钢琴音律识别和自动调整系统,包括移动端应用模块、主控制模块、分控制模块、电磁螺线驱动模块、电源模块以及与该主控制模块分别连接的音律传感器模块、WIFI模块、CAN总线模块,所有部件集成一体,连接设置于钢琴中心位置,其中:
[0008] 所述移动端应用模板,通过WIFI协议给主控制模块下发指令,并实时接受、存储、显示智能钢琴系统运行状况信息。
[0009] 所述主控制模板,通过WIFI协议等待接受移动端指令,对MIDI音乐文件进行格式解析,并负责将声音识别反馈信息发放到下级分控制模块。
[0010] 所述分控制模块,多个分控制模块接受主控制板指令,模块间协作控制88个琴键,具有实时并行处理能力、动态力度输出能力、存储播放评价反馈信息、间接处理音律反馈信息的能力;
[0011] 所述电磁螺线模块,与分控制模块引脚相连,通电后驱动钢琴按键底部的磁铁,撞击琴键使钢琴发声。
[0012] 所述电源模块,包含设置在钢琴内部的36V可充电电池,对整个钢琴控制系统进行供电。
[0013] 所述音律传感器模块,在环境中捕捉声音数据,对数据进行采样、量化、分析,将得到的分析数据反馈给主控制模块。
[0014] 所述WIFI模块,用于移动端与主控制模块的无线通讯,并对智能钢琴状况信息进行转发。
[0015] 所述CAN总线模块,用于主控制模块与分控制模块的区域通信,负责智能钢琴系统板间信息传递和交互。
[0016] 进一步地,所述主控制模块采用i.MX287ARM工控板,基于ARM9内心为处理器核心,其主频率最高可达到454MHz,配有DDR2和NAND Flash闪存,并拥有非常低的功耗。该主控制模块通过WIFI与移动端应用模块相连,通过CAN总线模块与分控制模块相连,通过串口输出模块与计算机相连。
[0017] 进一步地,所述分控制模块采用功耗低、性能强、易于开发的STM32微处理器,通过CAN总线模块与主控制模块相连,通过引线与电磁螺线模块相连,具有实时并行处理能力、动态力度输出能力、存储播放评价反馈信息能力、间接处理音律反馈信息能力,具体如下:
[0018] (1)实时并行处理能力:每个分控制模块负责控制十二个琴键,为每一个琴键的PWM波形产生创建一个线程,使得不同琴键之间不会互相阻塞。微处理器的CAN总线模块具有接收到同步间隔字符的自动唤醒功能,接受到数据帧时处理器就会唤醒相应进程。
[0019] (2)动态力度输出能力:在主控制模块和分控制模块的通信协议中还融入了变化力度的数据信息,分控制模块接受到特定指令后配合其定时器模块可以准确地控制力度逐级改变。
[0020] (3)存储播放评价反馈信息能力:微处理器配有永久性存储介质Flash存储芯片,能将即时接受到的数据快速、永久地存储下来,并且结合历史数据进行存储。
[0021] (4)间接处理音律反馈信息能力:接受到音律传感器模块的音域反馈信息,根据协议数据帧要求,通过改变对应的PWM波形和频率来调整对应音符弹奏音强,通过调整对应音符按下、弹起时间来调整对应音符弹奏音长。
[0022] 进一步地,所述音律传感器模块包括2个部分,具体为:
[0023] (1)利用数字麦克风用作接受琴声的音律感知模块,所述音律感知模块与音律识别模块相连,负责将环境中采集到的音律转为离散、可处理的音频数据再交由音律识别模块处理。
[0024] (2)利用高性能计算机用作计算琴声的音律识别模块,所述音律识别模块与音律感知模块相连,通过CAN总线模块与主控制模块相连,负责接受音律感知模块传来的离散音频数据,并对离散音频数据进行去噪声化处理、时域分析、频域分析、特征处理、音律识别,使音频数据更能体现出声音的本质,然后得到采集后琴声的音高、音长、音强的音频数据。最后通过与MIDI音乐文件中预判断的理想化音频数据做动态比较,根据动态比较的结果形成音频反馈修改建议并交由主控制模块处理。
[0025] 一种智能钢琴音律识别和自动调整方法,包括如下步骤:
[0026] 步骤1,首先将移动端应用模块、主控制模块、分控制模块、电磁螺线驱动模块、电源模块、音律传感器模块、CAN总线模块进行初始化。
[0027] 步骤2,创建标准钢琴MIDI文件通过音频播放设备播放,音频传感器模块录制得到的音频数据库y1、将音频数据库进行去噪声化处理、时域分析、频域分析、特征处理、音律识别后得到音律评价标准数据库y2作为音频评价、反馈比较标准。
[0028] 步骤3,启动WIFI模块,移动端应用向主控制模块发出自动音律调整开始指令,并通过用户界面实时显示主控制模块发回的系统运行状况。
[0029] 步骤4,MIDI音乐文件经过主控制模块解析后广播到CAN总线模模块,由分控制模块接受数据流并实时产生PWM波形,控制电磁螺线模块驱动琴键发声。
[0030] 步骤5,音律识别模块采集离散音频数据,并对离散音频数据进行去噪声化处理、时域分析、频域分析、特征处理、音律识别,得到被测琴声的音高、音长、音强的音频数据。最后通过与音律评价标准数据库y2的理想化音频数据做比较,根据动态比较的结果形成音频反馈修改建议并交由主控制模块处理,主控制模块将播放修改建议发往分控制模块,由分控制模块对指定音高的琴键进行音长、音强的调整。
[0031] 步骤6,依次对钢琴的88个琴键对象重复步骤4、步骤5的操作,直至将智能钢琴弹奏效果调整至标准音效果。为了防止在传输的过程中数据包出现丢包状况,在经过指定时间间隔t2后,将再次传输该数据包。
[0032] 进一步地,步骤1所述微控制模块首先将移动端应用模块、主控制模块、分控制模块、电磁螺线驱动模块、电源模块进行初始化,其中音律传感器模块、CAN总线模块处于暂时休眠状态等待唤醒指令。
[0033] 进一步地,步骤3所述根据音律传感器模块得到音律评价标准数据库y2,,具体如下:
[0034] 音律感知模块对音频数据库y1播放单音符音乐事件进行采样以得到离散音频数据,并将离散音频数据交由音率识别模块,再由音率识别模块利用小波分析法对单音符音乐事件进行声音频率提取,以确定单音符音乐事件的音高属性,即确定单音符音乐事件属于哪个音符。再通过对单音符事件的振动波形延续时间进行测量,即确定单音符事件的音长属性。最后对采集到的数据进行傅里叶变换,计算出单音符事件的分贝值,即确定单音符事件的音强属性。
[0035] 音率识别模块将得到的音符、音长、音强属性存入音律评价标准数据库y2作为步骤5比较评价的标准。
[0036] 进一步地,步骤5所述音律识别模块对音律进行自动调整必要性及其过程具体如下:
[0037] (1)必要性:由于智能钢琴演奏系统的发声原理是将MIDI音乐文件通过解析翻译最后转化为电磁驱动撞击琴键的机械发声过程。而在整个转化过程中,要用机械撞击发声来准确表现出一个MIDI单音符音乐事件的音长、音强,本是需要大量的人力资源不断地进行测量、校准。而对于不同的钢琴、连接琴键的木板之间的轻微摩擦、钢琴所处的地理位置带来不同的湿度因素都会影响到整个系统的演奏效果,同时MIDI音乐文件中有着127级不同的弹奏力度,每一个弹奏力度又将对应一系列可能影响弹奏效果的变量因素,所以拥有自动音律调整系统的智能钢琴系统是非常必要也是十分可行的。并且这套系统也适用于所有乐器的自动演奏系统。
[0038] (2)过程:通过采集智能钢琴真实弹奏的音频信息,并且放入音率识别模块进行解析。将识别得到的数据与音律评价标准数据库y2作比较。最后由分控制模块进行反复、多次的PWM波形调整来优化音强属性,具体的播放延时或者缩减来优化音长属性,最后完成对整个MIDI音乐文件转为智能钢琴真实播放过程的优化。
[0039] 本发明的有益效果:
[0040] (1)解决了现有的智能钢琴自动演奏系统开发过程音律校准过程效率过低、耗费人力资源过大的问题。
[0041] (2)通过量化、动态的音律校准方式替代了以经验判断和估计为主的人力调整方式。
[0042] (3)以移动应用端作为系统控制台优化了系统的用户使用体验。