下载此文档

基于旋律的音频哼唱识别系统.doc


文档分类:IT计算机 | 页数:约8页 举报非法文档有奖
1/8
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/8 下载此文档
文档列表 文档介绍
基于旋律的音频哼唱识别系统.doc: .
基于旋律的音频哼唱识别系统
基于旋律的首频哼唱识别系统
姓名:王冬学号:姓名:学号:
2014年4月15日
一、 任务分工
王冬:设计哼唱旋律特征提取算法及比对算法、撰写终期报告。杨少凡:咅乐库的建 立及旋律特征提取,界面设计。
二、 背景介绍
音乐库中有多首乐曲,通过哼唱一段旋律,分析频率谱,从多首乐曲中找出相应的曲 名,并用乐器正确播放旋律。
三、 总体方案设计
3. 1开发平台
Python2. 7. 5. 0
3. 2功能设计
本次课程项目主要使用Python程序设计语言对实现了基于4首歌的哼唱识别,进行了 充分的实验和参数调整,实现了哼唱旋律特征提取、噪声去除、特征值识别及使用乐器播 放旋律等课题
选取音乐
)
分帧处理,提取旋律特征
去噪
哼唱音乐数押
旋律特征提取
与旋律库比对I
\ )
四、核心算法及结果分析
(1) 音乐旋律特征提取
下图是《城里的月光》歌中“城里的月光把梦照亮,请温暖他心房” 一句话的旋律特征 提取结果。
40
5 o
3 3
Auualnbal上
25
2Oo
100
200 300
zhen
400
500
######分帧fft提取频率
for i in xrange(nframes/1024):
for j in xrange (1024):
y[j]=int(pianduan[j+i*1024])
fft_y=fft(y, 2048)
for j in xrange(1024):
if j>0:
if abs(fft_y[j])>m:
m二abs(fft y[j])
maxx二j
0
50
100
150 200
zhen
250 300 350
45
40
30
25
20
15
else:
m=abs(fft_y[0])
frequent[i]二maxx
######平滑处理
for i in xrange(3, len(frequent)-2):
frequen t [i] pound ((freque nt [i-2] +frequen t [i-
1] +frequent [ i] +freque nt [ i+1] +freque nt [i+2]) /5)
60
55
50
(2) 哼唱音频旋律提取
下图是哼唱《城里的月光》中“城里的月光把梦照亮,请温暖他心房” 一句话的旋律提 取结果。
############## 低通滤波
Wp 二 0. 04 # Cutoff frequency
Ws 二 0. 06 # Stop frequency
Rp 二 0. 1 # passband maximum loss (gpass)
As 二 60 # stoppand min a/ttenuation (gstop)
F订ters 二{'ellip' : (), ,cheby2, : (), 'butter' : (), ' chebyl':(), 'bessel' :

基于旋律的音频哼唱识别系统 来自淘豆网www.taodocs.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数8
  • 收藏数0 收藏
  • 顶次数0
  • 上传人sssmppp
  • 文件大小87 KB
  • 时间2021-02-22