2015年 l2月 第 44卷 第 12期 机械设计与制造工程 Machine Design and Manufacturing Engineering Dec.2015 Vo1.44 No.12 DOI:10.3969/j.issn.2095—509X.2015.12.019 一 种 MATLAB软件对乐音识别 自动配置的分析研究 李啸凤 (广东科技学院继续教育学院,广东 东莞 523000) 摘要 :为了给乐器演奏的旋律 自动配置和声,给 出了乐音识 别、预 处理和和声构造功 能实现的思 路和方法 ,借助 MATLAB软件 ,详 细阐述 了钢琴单音旋律 自动产生和谐 的多音 色和 声的整个流 程,最后通过一段钢琴单音旋律《小星星》进行仿真实验,结果显示具有良好的实用性。 关键词:MATLAB;乐音识别;和声理论;自动配置 中图分类号:TP29 文献标志码 :A 文章编号 :2095—509X(2015)12~0070—04 在计算机技术和电子音乐技术 日益成熟 的今 天 ,如何利用这些技术进行特征提取 、乐音识别以 及辅助音乐创作已经成为人们研究的热点 ,并取得 了一些 研究 成果 。在 国外 ,Sundberg& Tjernlund 于 1970年 就进行 了单 音 自动识 别实 验 ;1977年 Moorer完善了乐音识别计算机系统 ,但适用范围有 限 ;1987年 Dannenberg& Mont—Reynaud研发 了 一 种可对乐音进行实时识别 、跟踪 的系统 ,由此乐 音识别技术进入了实用化研究阶段。在国内 ,许鹏 进于2011年利用 MATLAB和 c语言混合编程完 成算法测试 ,提升 了乐音特征提取 的精确度 ;杨若 方于 2011年探讨 了如何借 助 MATLAB实现乐音 识别与 自动配置和声 的功能 ;王婷于 2012年对乐 音识别算法及 iOS平台的音频处理 、交互式可视化 技术等进行了理论和实践研究。 为 了进一步完善乐音识别 自动配置和声 的功 能 ,本文将乐音识别技术和 MATLAB软件相结合 , 以乐器演奏旋律 自动配置和声为核心 内容 ,综合运 用傅里叶变换 、频谱分析 、和声 配置以及 MATLAB 软件强大的矩阵分析 、处理和作图功能 ,进行乐音 识别 智能 配置 系统 的开发 和研 究。以钢琴 乐音 《小星星》为例进行实验,获得的仿真效果良好。 通过计算机系统储存 为基于音学信号的 wav格式 音频数据 ,借助于 MATLAB软件对该音频文件进 行音高 、音色 、音强及节奏 的分析 ,并判别其调性 , 从而配置出与该曲旋律相匹配的和声音频文件 ,而 后将其与原钢琴音频进行叠加 ,衍生 出和谐 的多音 色和声 ,实现 良好的播放效果。同时根据乐音单音 符信号频域内的平稳性 ,并结合乐音识别的包络波 形 、快速傅里叶变换 、频谱分析 、除噪声 、十二平均 律 、调 式 、调 性 、和 声 等 相 关 技 术 和 算 法 ,设 计 MATLAB软件对乐音识别 自动配置的流程 ,如 图 1 所示 。 相关乐器演奏的旋律 录音并存 储:~Jjwav文件 乐音信号预处理 端点检测 lI 噪声消除 l l单音符分割 乐音分析 、和声构造 和声音频文件 {三成 图 1 MATLAB软件 乐音识别 自动配置 流程 图 2 MATLAB软件对乐音识别 自动配置和声 1 MATLAB软件对乐音识别 自动配置和声 的关键模块分析 的基本研究思路 2.1 乐音信号的预处理 本文以钢琴乐音作为研究对象 ,将一段钢琴曲 乐音信号的预处

matlab编程模拟乐器产生乐音,一种MATLAB软件对乐音识别自动配置的分析研究相关推荐

  1. 读取gps观测数据o文件的matlab编程,读取GPS观测数据O文件的matlab编程.doc

    读取GPS观测数据O文件的matlab编程 读取GPS观测数据O文件的matlab编程 function HeadO=ReadObsHead [fname,fpath]=uigetfile('*.*O ...

  2. 用MATLAB编程正弦稳态相量图,matlab课程设计--利用MATLAB对线性电路正弦稳态特性分析...

    matlab课程设计--利用MATLAB对线性电路正弦稳态特性分析 课程设计任务书 学生姓名: 专业班级: 指导教师: 刘 新 华 工作单位:信息工程学院 题 目: 利用MATLAB对线性电路正弦稳态 ...

  3. 主程序分析法MATLAB编程,专题五  概率统计问题的Matlab求解

    [实验目的及要求] I.熟练掌握Matlab编程中常见概率分布的概率密度.概率分布.逆分布.均值和方差等语句的调用格式,学会用Matlab对服从各种分布的样本进行参数估计和假设检验.对实际问题,能够进 ...

  4. 最优控制问题matlab编程实例,第十二章用matlab解最优控制问题及应用实例.ppt

    第十二章用matlab解最优控制问题及应用实例 第十二章 用MATLAB解最优控制问题及应用实例 第十二章 用MATLAB解最优控制问题及应用实例 12.1 MATLAB工具简介 12.2 用MATL ...

  5. matlab直接读取Kinect V2的两种方式(实现骨骼识别、kinect studio对接)

    目前matlab直接读取kinect有两种方法,在此放一下: 1.第一种是matlab官方的一个包, https://docs.microsoft.com/en-us/previous-version ...

  6. Matlab编程技巧:MBD中常用的Matlab函数

    在MBD(基于模型开发)中,需要掌握一些常用的函数.这些函数经常用于搭建集成环境.生成手写代码.工具链开发等.恰当地使用函数编写Matlab脚本可以提高MBD工作的自动化程度,提高工作效率. 本文会分 ...

  7. 马尔可夫预测matlab编程,马尔科夫决策过程的matlab编程实现

    [实例简介] matlab平台下实现的MDP过程,供相关研究者学习 [实例截图] [核心代码] e946eb82-9756-4de0-9621-9e6907e4c826 ├── Markov Deci ...

  8. matlab程序模拟微信抢红包,微信红包算法MATLAB实现

    上午看到基友分享的微信红包算法的文章,代码很短,春节期间红包太火了,看完就也想实现下玩玩,原代码是JAVA的,没接触过JAVA,所以看懂后改成了MATLAB的.原文链接:微信红包随机算法初探 , 作者 ...

  9. matlab编程999玫瑰花,网上收到的用matlab画玫瑰花的代码怎么不行啊,报告错误,求大神...

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 function plot_rose draw_main(450,90); function draw_main(x,y) %粉红色玫瑰 arcdata{ ...

最新文章

  1. 基于深度学习神经网络等机器学习技术实现一个医学辅助诊断的专家系统原型
  2. linux设备驱动第一篇:设备驱动程序简介
  3. FuncT,TResult的使用方法(转载)
  4. JZOJ 100046. 【NOIP2017提高A组模拟7.14】收集卡片
  5. MySQL日期及时间加减函数
  6. Java RMI(1):HelloWorld篇
  7. 字节前端终于开源!吹爆!
  8. 丁可以组什么词_有哪些量词可以用来描述生意经?
  9. 408. Valid Word Abbreviation
  10. Linux下配置CentOS7网络设置 获取ip地址
  11. java 自己的 pid_Java获取自身PID方法搜集
  12. LinkedIn第三方登录
  13. .net 6 简单使用redis
  14. thinkphp框架复习知识点
  15. CSDN里的文章去广告、打印成PDF__小胡亲测
  16. 多肽TAT接枝/功能肽RGDC修饰荧光碳量子点/碳量子点修饰多肽LyP-1的制备研究
  17. navicat ssh postgresql 报错:no password supplied
  18. 非常口語化的英語單詞,短句
  19. 设计模式---组合Composite模式
  20. 使用循环语句打印菱形梅花阵

热门文章

  1. MobaXterm 终端界面 修改背景颜色
  2. js常用的循环,for of 和 for in等比较
  3. 1975年图灵奖-赫伯特·西蒙和艾伦·纽厄尔简介
  4. Redis - String内存开销问题以及基本/扩展数据类型的使用
  5. win10更改计算机属性,Win10右键电脑属性将更改为设置应用“关于”界面
  6. vue项目中点击button下载文件到浏览器
  7. 人生总要有所珍视和眷恋
  8. 湖南麒麟下修改显示默认分辨率
  9. matlab安装 一闪,Matlab生成的exe文件一闪消失
  10. 数据库中存储图片等文件的小探讨