声音信号的音框基本周期的计算方法及系统技术方案

技术编号:4300239 阅读:355 留言:0更新日期:2012-04-11 18:40
本发明专利技术公开了一种声音信号的音框基本周期的计算方法及系统,此声音信号经音高检测演算后,在音框中的每个音高点均有对应坐标值(x,y),取最小x坐标值为基准值与累加值,并将其相加而得一比较值。将比较值与其余x坐标值进行比对,当比较值与x坐标值之间的差异值大于门坎值时,选取次一x坐标值为基准值与累加值重新进行比对;当差异值小于门坎值时,以此x坐标值取代基准值再次进行累加与比对的步骤。当比较值大于最大x坐标值时,利用累加值计算出声音信号之音框基本周期。此方法可解决已知时域音高算法误判音高点的问题,以提高音高检测的准确度。

【技术实现步骤摘要】

本专利技术涉及一种声音信号的音框基本周期的计算方法及系统
技术介绍
音高检测算法(Pitch Detection Algorithm)是针对声音信号的音高(pitch) 作估算所设计出来的算法,这些算法主要是在估算及^r测声音波形的基频。 音高检测的应用非常广泛,如在语言学习上,即是以音高检测来找出语音基 频的轨迹,并与标准语音模板比对,进行所谓的音调评分。另外,音高侦测 也可应用于旋律识别(Melody Recognition),撷取啤唱者之歌声来计算其音高 向量,进而将此音高向量与音乐音高数据库进行比对,找出最接近的歌曲, 以达到畔唱找歌的功能。KTV伴唱机更利用音高侦测技术,衍生出歌唱音 准评分及伴奏跟调等功能。音高检测算法主要分为两种类型, 一种为利用声音信号在频域 (Frequency Domain)上的特性来做音高检测,另一种则是利用声音信号在时 域(Time Domain)上的特性来做音高检测。不管是在频域或时域上的音高检 测算法,均是用来求出声音信号的基本周期。在时域上的音高检测算法,是从输入信号变动的波形中找出重复出现的 波形,也就是利用声音波形相似的特征来找出其基本周期。在作法上是先将 声音信号切成一个个的音框(frame),然后针对每个音框来作音高检测,也就 是将音框内之原始声音信号与声音位移后之信号依序作相似度比对。当此位 移时间距离等于音高频率倒数时,声音信号和其位移信号必有最大的相似 度,此时便可求出基本周期。时域上的各种算法就是在定义寻找这两种信号 相似度的算法法则,而目前在时域上较为广泛使用的算法为平均振幅差异函 凄t (Average Magnitude Difference Function, AMDF)算法以及自相关 (Auto-Correlation Function, ACF)算法。无论是利用ACF算法或AMDF算法来进行音高检测,最后都有一个重 要的步骤,就是找出局部极值。以ACF算法来说,就是要找出声音信号之 ACF曲线的局部最大值(local maximum),而在AMDF算法中,则是要找出 声音信号之AMDF曲线的局部最小值(localminimum)。这些局部极值即是所 谓的音高点,后续再通过这些音高点来计算声音信号的基频。图1A为一声音信号的AMDF曲线示意图。请参照图1A,以虚线圏起 之部分即为AMDF曲线100的局部最小值。在找出局部最小值后,接下来 则是要计算基本周期。已知的一种作法是直接找出最小的局部最小值,然后 取该点与原点间的距离作为声音信号的基本周期。但是这种作法的误判率非 常高,因为并非所有AMDF曲线的第一个波谷均为最小值,如图1B所绘示 之AMDF曲线110。为此,当前提出另一种方法,也就是找出最小及次小的局部最小值,如 图1B之102与104,然后计算点102至点104的距离,即为声音信号的基 本周期。然而,此种作法也不尽理想,以图1C所绘示之AMDF曲线120来 说,利用此已知方法所算出来的基本周期会是实际上的两倍。
技术实现思路
本专利技术所要解决的技术问题是提供一种声音信号的音框基本周期的计 算方法及系统,解决了现有技术中存在无法准确地算出声音信号的音框基本 周期的问题。为了解决上述问题,本专利技术提供了一种声音信号的音框基本周期的计算 方法是利用声音信号在时域上经音高检测算法所产生的音高点来求出声音 信号的基本周期,其中声音信号在一音框中经音高检测演算后会获得复数个 音高点,每个音高点均有对应之坐标值(x,y),且这些x坐标值由小至大排序 为数组。此计算方法的步骤如下(a)选取最小之x坐标值为一基准值与一 累加值;(b)将基准值与累加值相加,以得一比较值,其中当比较值小于数 组中最大之x坐标值时,更包括将比较值与其余x坐标值依序进行比对,并 计算比较值与这些x坐标值之间的差异值,若比较值与一x坐标值的差异值 小于门坎值时,以x坐标值取代基准值后回到步骤(b);若比较值与这些x坐标值的差异值大于门坎值时,选取次一X坐标值取代基准值及累加值,并 回到步骤(b)。反之,当比较值大于数组中最大之X坐标值时,利用累加值 计算出声音信号之音框基本周期。本专利技术还提供了 一种计算声音信号的音框基本周期的系统,主要是由取 样模块、比对模块、累加模块及计算模块所构成,且其是利用声音信号之在 时域上经音高检测算法所产生的音高点来求出声音信号的基本周期,其中声 音信号在一音框中经音高检测演算后会获得复数个音高点,每个音高点均有对应之坐标值(x,y),而这些坐标值是由小至大排列为数组。其中,取样模块 用于选取一 x坐标值作为基准值及累加值,且其第一次所选取之x坐标值为 最小的x坐标值。累加模块用于接收取样模块所输出之基准值及累加值,并 将基准值与该累加值相加,以输出一比较值。比对模块用于接收累加模块所输出之比较值,并对比较值与其余x坐标 值依序进行比对,以及计算比较值与这些x坐标值的差异值,其中当比较值 小于数组中最大之x坐标值,且其与一x坐标值的差异值小于门坎值时,将 此x坐标值反馈至累加模块以取代基准值;以及当比较值小于数组中最大之 x坐标值,且其与这些x坐标值的差异值大于门坎值时,输出一重新取样信 号至取样模块,以使其选取次一x坐标值取代基准值与累加值;以及当比较 值大于数组中最大之x坐标值时,输出累加值。计算模块即是用于接收比对 模块所输出之累加值,并依据累加值计算出声音信号之音框基本周期。与现有技术相比,应用本专利技术,声音信号在时域上经音高检测演算所产 生的音高点对应之x坐标值,找到可能的音框基本周期,再提供累加运算方 式来验证,而求出真正的音框基本周期。本专利技术与现有技术之间的差异在于 本专利技术并非直接取声音信号在时域上经音高检测演算后所产生之曲线的绝 对极值或次一极值来计算音框基本周期,而是先判断作为基准值的x坐标值 累加后是否均近似于这些x坐标值,以验证此点是否即为基本周期。由此可 知,本专利技术能够精确地计算出声音信号的基本周期。附图说明图1A为一声音信号的AMDF曲线示意7图1B为另一声音信号的AMDF曲线示意图1C为又一声音信号的AMDF曲线示意图2为本专利技术之一实施例中声音信号的AMDF曲线示意图3为本专利技术之一实施例中声音信号的音框基本周期的计算方法步骤 流程图4为本专利技术之一实施例中计算声音信号的音框基本周期的系统方框 示意图。具体实施例方式下面结合附图和具体实施方式对本专利技术作进一步说明。以下实施例是以AMDF算法所求出的音高点来计算音框基本周期,但 其并非用于限定本专利技术。熟习此技艺者应该知道,本专利技术可利用任何时域上 之音高检测算法所求出之音高点来计算音框基本周期。图2为本专利技术之 一 实施例中声音信号的AMDF曲线示意图。请参照图2 , 此AMDF曲线200具有多个音高点,这些音高点分别对应至一坐标值(x,y), 其中这些x坐标值是代表音框点数,y坐标值则是代表AMDF值。图3为本 专利技术之一实施例中声音信号之音框基本周期的计算方法步骤流程图。图4为 本专利技术之一实施例中计算声音信号之音框基本周期的系统方框示意图。请同时参照图2、第图3及图4,计算声音信号之音框基本周期的系统 400主要是由取样模块410、比对模块420、累加模块4本文档来自技高网
...

【技术保护点】
一种声音信号的音框基本周期的计算方法,用于利用声音信号在时域上经音高检测演算所产生的音高点来求出音框基本周期,其中声音信号在一音框中经音高检测演算后会获得复数个音高点,每个音高点均有对应之坐标值(x,y),且该些x坐标值由小至大排序为数组,包括下列步骤: (a)选取最小之x坐标值为一基准值与一累加值;及 (b)将所述基准值与所述累加值相加,以得一比较值,其中: 当所述比较值小于所述数组中最大之x坐标值时,更包括下列步骤: 将所述比较值与其余所述x坐标值 依序进行比对,并计算该比较值与该些x坐标值之间的差异值,其中: 当所述比较值与所述x坐标值其中之一的差异值小于一门坎值时,以该x坐标值取代所述基准值后回到步骤(b);及 当所述比较值与所述x坐标值的差异值大于所述门坎值时,选取次 一x坐标值取代所述基准值及所述累加值,并回到步骤(b);及 当所述比较值大于所述数组中最大之x坐标值时,利用所述累加值计算出所述声音信号之音框基本周期。

【技术特征摘要】

【专利技术属性】
技术研发人员:陈进旺官圳清
申请(专利权)人:爱唱数码科技上海有限公司
类型:发明
国别省市:31[中国|上海]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1
相关领域技术
  • 暂无相关专利