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

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

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

姓名:王冬

学号:201318001027048

姓名:杨少凡

学号:201318001027058

2014年4月15日

一、任务分工

王冬:设计哼唱旋律特征提取算法及比对算法、撰写终期报告。

杨少凡:音乐库的建立及旋律特征提取,界面设计。

二、背景介绍

音乐库中有多首乐曲,通过哼唱一段旋律,分析频率谱,从多首乐曲中找出相应的曲名,并用乐器正确播放旋律。

三、总体方案设计

3.1开发平台

Python2.7.5.0

3.2功能设计

本次课程项目主要使用Python程序设计语言对实现了基于4首歌的哼唱识别,进行了充分的实验和参数调整,实现了哼唱旋律特征提取、噪声去除、特征值识别及使用乐器播放旋律等课题

选取音乐分帧处理,提取旋律特征建立旋律特征库

去噪

哼唱音乐数据旋律特征提取输出识别歌曲名

并用乐器演奏

与旋律库比对

四、核心算法及结果分析

(1)音乐旋律特征提取

下图是《城里的月光》歌中“城里的月光把梦照亮,请温暖他心房”一句话的旋律特征提取结果。

######分帧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

else:

m=abs(fft_y[0])

frequent[i]=maxx

######平滑处理

for i in xrange(3,len(frequent)-2):

frequent[i]=round((frequent[i-2]+frequent[i-1]+frequent[i]+fr equent[i+1]+frequent[i+2])/5)

(2)哼唱音频旋律提取

下图是哼唱《城里的月光》中“城里的月光把梦照亮,请温暖他心房”一句话的旋律提取结果。

##############低通滤波

Wp = 0.04 # Cutoff frequency

Ws = 0.06 # Stop frequency

Rp = 0.1 # passband maximum loss (gpass)

As = 60 # stoppand min attenuation (gstop)

Filters = {'ellip' : (), 'cheby2' : (), 'butter' : (), 'cheby1' : (), 'bessel' : ()}

# ellip and cheby2 filter design

Filters['ellip'] = fd.iirdesign(Wp, Ws, Rp, As, ftype='ellip')

Filters['cheby2'] = fd.iirdesign(Wp, Ws, Rp, As, ftype='cheby2')

filtered_sig1 = lfilter(Filters['ellip'][0], Filters['ellip'][1], pianduan)

######分帧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

else:

m=abs(fft_y[0])

frequent[i]=maxx

######平滑处理

for i in xrange(3,len(frequent)-2):

frequent[i]=round((frequent[i-2]+frequent[i-1]+frequent[i]+fr equent[i+1]+frequent[i+2])/5)

(3)旋律比对算法

############哼唱片段切割

ku_l=len(tezheng)

heng_l=len(frequent_fil)

ku_zhidian=zeros(ku_l*heng_l)

heng_zhidian=zeros(ku_l*heng_l)

for i in xrange(heng_l):

for j in xrange(ku_l):

heng_zhidian[i*ku_l+j]=frequent_fil[i]

for i in xrange(ku_l):

for j in xrange(heng_l):

ku_zhidian[i*heng_l+j]=tezheng[i]

heng_qiangcaiyang=zeros(ku_l)

m=0

for i in xrange(len(heng_zhidian)):

j=i%heng_l

if j==0:

m=m+1

heng_qiangcaiyang[m-1]=heng_zhidian[i]

###################匹配算法

quanzhi=0

for i in xrange(len(tezheng)):

quanzhi=quanzhi+heng_qiangcaiyang[i]**2

cor_fenmu=quanzhi

quanzhi=sqrt(quanzhi)

cor=0

for i in xrange(len(tezheng)):

cor=cor+tezheng[i]*heng_qiangcaiyang[i]

a=cor/cor_fenmu

er=0

for i in xrange(len(tezheng)):

er=er+(tezheng[i]-a*heng_qiangcaiyang[i])**2 quan=0

for i in xrange(len(tezheng)):

quan=quan+tezheng[i]**2

er=er/sqrt(quan)

(4)结果分析

设计结果如右图所示

参考文献

[1] 方勇.数字信号处理——原理与实践.第2版.北京:清华大学出版社,2010

[2] 刘任化.基于数字音频信号处理技术的研究.2008

[3] 吴宗济.实验语音学概要.北京:高等教育出版社,1989

[4] 宋德,须德. 音频信息检索的研究及实现[J]. 计算机应用, 2003(12) :52

音乐哼唱检索技术在WEB上的应用

第25卷第12期 计算机应用与软件 Vo l 25N o .12 2008年12月 Co m puter App lications and So ft w are Dec .2008 音乐哼唱检索技术在WEB 上的应用 张 晶1 周明全2 耿国华1 王小凤 1 1(西北大学可视化技术研究所 陕西西安710127) 2 (北京师范大学信息科学与技术学院 北京100875) 收稿日期:2007-07-30。国家自然科学基金项目(60203011)。张 晶,硕士生,主研领域:多媒体技术与图形图像处理。 摘 要 将基于内容的哼唱检索技术用于W EB 上。首先阐述了音乐检索现状,并对基于内容的音乐检索过程进行了详细地分析,然后介绍了W EB 的相关技术,提出了将音乐检索技术用于W EB 的思路,最后对全文归纳总结,并对进一步的工作进行了展望。关键词 音乐检索 哼唱检索 特征提取 W EB THE TECHNOLOGY OF MUSI C QUERY BY HU MM ING BASED ON WEB Zhang Ji n g 1 Zhou M i n gquan 2 G eng Guohua 1 W ang X i a ofeng 1 1(Instit u te of Vis ua liza ti on T ec hnology ,N orthw estUniversit y,X i an 710127,Shaanxi ,Ch i na ) 2 (C olle g e of Informa tion S cie n c e and T ec hnology ,B eiji ng N orma l Un i v e rsit y ,B eiji ng 100875,China ) Ab stract In the paper ,the query by hu mm i ng technology based on content was app lied to the W eb .The act ua lities ofm usi c retr i eva lw ere discussed ,and the process of content based m usi c re trieval w as ana l y zed i n deta i.l T he co rre lated techno l ogy o fm us i c retrieva l based on W eb was i ntroduced ,and the t hought of usi ng the techno l ogy of music query on W eb w as proposed .In t he end ,we su mm arized t he who le expression i n the pape r and took the expecta tion o f the future w ork . K ey words M usi c re trieval Q ue ry by hu mm i ng F eature ex trac ti on W eb 0 引 言 随着计算机技术的高速发展和互联网的蓬勃发展,网络中的信息和数据呈爆炸式增长。这样,计算机用户在处理信息时所面临的主要问题,已经从早期的信息匮乏转变为如何从海量信息中快速合理地检索出所需要的信息。 当前,多数搜索引擎仅能对文本进行检索,对图片、声音、视频这些以二进制编码的多媒体数据无能为力,而后者目前增长非常迅猛。传统的基于文本检索方式已经越来越无法满足用户新的需求,因此,对多媒体数据进行内容检索具有重要的实用价值。 基于内容的音乐检索是对音乐数据从内容本身进行检索的一种方法。目前,网络中进行音乐检索都是通过音乐的元数据(M e tadata)如歌名、歌手、歌词等进行的。当用户没有歌曲的元数据信息时,如果能够记忆起歌曲的某些片断,那么通过哼唱方式就可以找到目标歌曲。它可以带给用户更新的体验。 基于W EB 的音乐哼唱检索将使用户通过互联网来体验这种新的检索技术,这样,用户就可以通过个人电脑、无线设备(手机)等终端来进行访问。 1 国内外现状分析 目前国内外对于基于内容的音乐检索的研究已经被大量提出。1995年,G h i as [1]等展示了首个QB H 系统,此系统将歌曲转 换为音调轮廓信息进行匹配,利用三个字符S same 、U up 、D down 来表示音乐的旋律轮廓,将音乐的旋律转换成字符串,使用了字符串匹配的相似度方法进行检索。至此以后,对于基于内容的音乐检索的研究如雨后春笋般地发展起来。国内中国科学院声学研究所在哼唱检索方面开展了工作,另外如浙江大学、上海交通大学、西北大学等也在基于内容音乐检索方面开展了研究工作。基于内容的音乐哼唱检索技术以其独特的体验方式,已经被越来越多的人所关注。 2 基于内容的音乐哼唱检索 基于内容的音频检索,是指通过音频特征分析,对不同音频数据赋以不同的语义,使具有相同语义的音频在听觉上保持相似,其中基于内容的音乐检索是具有较高实用价值的一个部分。基于内容的音乐检索是根据音乐的内容特征来进行检索,也就是根据音乐的旋律、节奏等音乐特征进行检索。基于内容的音乐哼唱检索是基于内容的音乐检索一部分。其将检索的数据源缩小为用户的哼唱,通过接收用户哼唱的旋律,对接收的音乐旋律进行内容的描述,即提取特征,然后与数据库中的特征进行相似度匹配,最后将搜索结果集返回。

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

基于旋律的音频哼唱识别系统 姓名:王冬 学号:201318001027048 姓名:杨少凡 学号:201318001027058 2014年4月15日

一、任务分工 王冬:设计哼唱旋律特征提取算法及比对算法、撰写终期报告。 杨少凡:音乐库的建立及旋律特征提取,界面设计。 二、背景介绍 音乐库中有多首乐曲,通过哼唱一段旋律,分析频率谱,从多首乐曲中找出相应的曲名,并用乐器正确播放旋律。 三、总体方案设计 3.1开发平台 Python2.7.5.0 3.2功能设计 本次课程项目主要使用Python程序设计语言对实现了基于4首歌的哼唱识别,进行了充分的实验和参数调整,实现了哼唱旋律特征提取、噪声去除、特征值识别及使用乐器播放旋律等课题 选取音乐分帧处理,提取旋律特征建立旋律特征库 去噪 哼唱音乐数据旋律特征提取输出识别歌曲名 并用乐器演奏 与旋律库比对 四、核心算法及结果分析 (1)音乐旋律特征提取 下图是《城里的月光》歌中“城里的月光把梦照亮,请温暖他心房”一句话的旋律特征提取结果。

######分帧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 else: m=abs(fft_y[0]) frequent[i]=maxx ######平滑处理 for i in xrange(3,len(frequent)-2): frequent[i]=round((frequent[i-2]+frequent[i-1]+frequent[i]+fr equent[i+1]+frequent[i+2])/5)

一种基于Python的音乐检索方法的研究

出了“听歌识曲”。这个应用在国内众多的音乐类APP火热上线,受到社会媒体及大众的一致好评,比如网易云音乐,QQ音乐。用户可以通过这个功能识别当前环境里播放器里播放的音乐或别人哼唱的悦耳的音乐,从而第一时间留住音乐,丰富自己的最爱乐库。 21世纪随着大数据数字化经济的发展,2008年,shazam率先在iOS和Android上发布了APP,并且用最快的速度以领头羊的身份整合了iTunes/Amazon MP3store 歌曲购买服务,2013年,shazam被国外媒体评价为年度十大最受欢迎的手机应用,由此听歌识曲迎来了一波火热狂潮,音乐检索也成为各大网络科技公司的重要项目之一。 1 音乐检索的研究现状 音乐检索按搜索的目标分类,大致可以分为两类,一种是检索乐谱,另外一种是检索音频。检索乐谱是把音乐转化成字符串的形式,而检索音频是将一段音频分割成小段,提取每一小段的听觉感知特征,通过比较特征序列来检索。音频的处理比字符串的效率高了许多。尤其是在复杂环境下采用声纹能够出其不意,达到事倍功半的效果。声纹是提取我们所需音乐的基频然后采用动态时间规整比较两个基频序列的相似度[1]。 2 音乐检索的意义及目的 音乐检索具有重大意义。作为一种重要的媒体资源,音乐的检索对于音乐数据库和数字图书馆建设有着非常重要的意义。网络上多媒体资源量非常巨大,人们需要高效的搜索引擎从浩如烟海的数据中找出需要的音乐资源。另外,音乐检索在卡拉oK检索以及辅助视频检索等方面都有广阔的研究前景和巨大的应用价值。所以不论从科技发展还是从大众的娱乐的角度去看,音乐检索的意义深厚而且未来的任务次应用在KTV 里的点唱系统中,可以使点歌更加简便快捷,而不需要层层的选择。大大减少了失误的效率,提高速度,方便娱乐消遣;另外,哼唱检索技术应用于现有的音乐设备上,如MP3、音乐手机等,可以提供更加自动化及直观的搜寻。 3 音乐检索的研究方法 音乐检索的方法有很多,如基于文本的检索,基于哼唱的检索,基于发音的检索,基于指纹的音乐检索等等,下面针对其中的基于哼唱的音乐检索和基于指纹的音乐检索方法进行展开说明[3][4][5]。 ■3.1 基于哼唱的音乐检索 如图1所示,该图是基于哼唱的音乐检索流程图,首先用户哼唱一段音乐,然后系统会帮助你进行处理检索,识别音乐的特征,与此同时自己数据库的信息与用户哼唱的音乐进行比对,以尽可能快的速度去探索,然后也同样进行特征提取,一路一路看哪部分会大量重合,建立好后近似匹配识别出最接近结果的那一个,最后向用户显示检索结果。哼唱检索的核心是基频序列之间的相似度匹配,由于用户哼唱的片段跟实际音乐片段不可能完全相似,所以哼唱检索是一种模糊匹配。针对模糊匹配,我们的研究方法很多,我们通常采用动态时间规整算法(DTW)进行处理,并可以配合GPU、FPGA等硬件进行加速。 ■3.2 基于指纹的音乐检索 如图2所示,是基于指纹的音乐检索流程图,该流程大致过程如下:首先是利用FFT变换将原始的时域波形转换到频域,转换之后会得到一个频谱图,频谱图是一个三维图,X坐标是时间,Y坐标是频率,Z坐标是能量;然后从频谱图中求得一系列极大值点,也就是求得了landmark;然后就是构造指纹,构造方法是将每一个landmark和 82 | 电子制作 2019年07月

音频检索的关键技术与挑战

音频检索的关键技术与挑战 耳朵是我们每个人最为重要的身体器官之一,那么声音则是我们用来感知世界,认识世界的最重要的工具之一。如果没有声音,那么我们的生活将会黯然失色,毫无光彩,失去很多精彩的瞬间。我们都知道聋哑人刚刚开始的时候只是失去听力,感知不到声音,他们的说话能力并没有问题。但是在一天天的成长过程中,由于听不到声音,他们也就无法学习用语言交流,慢慢的慢慢的他们也就不会说话了,没有了语言能力。所以,从这个例子中,我们知道了声音对我们有多么的重要。 科学家们也意识到了声音的重要性,逐渐地把音频做为了一种重要的研究对象。音频做为一种意义非凡的媒体,包含了非常丰富的听觉特征,可分为3类:语音(具有字词,语法等语素);音乐(具有节奏,旋律和声音等要素);波形声音(对模拟声音数字化而得到的数字音频信号)。而音频内容又可以分为3 个级别:底层(物理样本级);中层(声学特征级);高层(语义级)。音频检索是以波形声音为对象的检索,也是多媒体检索技术中的一个重要组成部分。我们都知道音频信息做为一种不透明的位流,虽然有外部属性,但是缺少关键词可以用来进行匹配的实体,可以通过方法将音频转化为文字进行检索。但是,缺点是:数据量越来越大,人工注释的工作量越来越大;人对音频的感知不准确;不能支持实时音频数据流检索。为了解决这些问题,音频检索应运而生。今天我们要根据当前的音频检索各种技术发展,来好好地讨论现阶段一些音频检索技术研究中的关键技术:音频特征提取,音频分类,语音识别技术,特征相似度匹配等。 音频信息检索技术有着广泛的应用前景:(l)它是智能语音系统的核心技术,用户可通过该技术方便快捷地获取所需的信息;(2)它可以实现对网络中的媒体,例如网上电视,音视频等的音频信息进行实时检索、审查和有效监控,对各种数字音频产品的版权保护,如音乐的版权保护,即搜索未经授权的使用等;(3)它在音频信息分类与统计技术的研究中也扮演着重要的角色,如在广播电视新闻节目、数字图书馆等内容中包含着大量的语音、音乐等信息,使用音频信息检索技术可以有效地对这些信息进行分类、统计与检索,更好地管理、存储与高效利用

相关文档
最新文档