哼唱旋律到midi旋律的转换方法_5

文档序号:9490322阅读:来源:国知局
半音音阶音高(chromaticscaletones) [22]作为输入。因 此M. 的分析方法在进入调性分析之前需先将音符音高无调性倾向地取整化(即 roundtoMIDIpitch),也就是说在调性分析之前"取整误差"就已经形成。而我们的方法 中对相邻或"间邻"哼唱音符的估算音程的取整化操作则与调性分析同时进行。因此我们 的算法最终可以选择使估算音程的取整误差积累最少并且能与选定的调性音级所构成演 算音程序列相匹配的候选音程序列。
[0125]M.Ryyn&ixen的方法[16]与本发明分别分析38首人声哼唱的1)算法估算的实际 哼唱旋律,2)算法估算的期望哼唱旋律以及,3)手工标注的Groundtruth的评估结果与比 较参见表4,其中TR为算法估算的期望哼唱旋律或算法估算的实际哼唱旋律,GR为手工标 注的Groundtruth。
[0126] 表4与图3展示并比较了我们模拟M.Ryynanenetal[16]系统中的调性分析方法 以我们算法对38首人声哼唱估算的实际哼唱旋律及手工标注的Groundtruth作为输入样 本的各种数据分析结果与用我们的调性分析方法对38首人声哼唱估算的期望哼唱旋律及 手工标注的Groundtruth为输入样本的各种数据分析结果,其中:



[0136]表5为M.Ryyn&ien的方法[16]与本发明分别分析38首人声哼唱的1)算法估算 的实际哼唱旋律,2)算法估算的期望哼唱旋律以及,3)手工标注的Groundtruth的平均评 估结果。表5为M.Ryyn&ften的方法[16]与本发明分别分析38首人声哼唱的1)算法估算 的实际哼唱旋律,2)算法估算的期望哼唱旋律以及,3)手工标注的Groundtruth的平均评 估结果。其中TR为算法估算的期望哼唱旋律或算法估算的实际哼唱旋律,GR为手工标注 的Groundtruth〇
[0137]表 5
[0138]
[0139] 通过比较可以看出在多数情况下M.Ryyr^nen%的方法分析算法估算的实际哼唱 旋律与Groundtruth的音程正确率比我们的方法分析算法估算的期望哼唱旋律与Ground truth的演算音程正确率要低得多。表5所描述的M.Ryyninen.方法分析Groundtruth 的平均音程正确率为66. 13,而本发明分析Groundtruth的平均音程正确率为79. 44。二 者相差超过10个百分点。这说明若以手工标注的期望哼唱旋律的期望音程(参见定义1) 序列为正确哼唱旋律线的标准,通过本发明的调性分析算法对手工标注的Groundtruth所 估算的演算音程序列所描述的哼唱旋律线要比包括M.RyynEnen[i(']在内的其它现有方法 按定义2中公式(F-6)对手工标注的Groundtruth所估算的Groundtruth音程序列所 描述的哼唱旋律线的准确率要超过10%。同样地在算法估算的期望哼唱旋律的演算音程 正确率与算法估算的实际哼唱旋律的音程正确率的分析上也有类似的结果。即表5中分 析算法估算的期望哼唱旋律的演算音程的平均正确率、召回率及F-measure的结果分别为 30. 25 %,31. 91 %,30. 82 %,而分析算法估算的实际哼唱旋律的邻近正确音符音程的平均 正确率、召回率及F-measure的结果分别为18. 98%,19. 99%,19. 31%。因此,二种哼唱旋 律线准确率(即音程正确率与演算音程正确率)分析结果上的差异反映出本发明比现有以 M. %的方法为代表的其他方法具有明显的优势。通过播放器分别播放算法估算 的实际哼唱旋律与算法估算的期望哼唱旋律也可从听觉上感受到更多的算法估算的期望 哼唱旋律比算法估算的实际哼唱旋律更接近心目中的结果。
[0140]除去4首含转调或移调的哼唱childl.wav、childl2.wav、q61.wav与q63.wav以 及2首过度走音的哼唱child4.wav、childlO.wav,在余下的32首哼唱中,我们的调性分 析算法正确估算了其中27首的调性(调性估算正确率为84. 34%)以及26首手工标注的 Groundtruth的调性(估算Groundtruth的调性正确率为81. 25%)。而M.RyynSxie'n的 调性分析模型正确估算了 23首的调性(调性估算正确率为71. 88% )以及25首手工标注 的Groundtruth的调性(估算Groundtruth的调性正确率为78. 13% )。整体上看我们 的调性分析方法的结果也好于现有的M.Ryynanen的方法。
[0141]B.评估方法的比较与讨论
[0142] 在此主要比较与讨论现有的估算旋律评估中评估音符音高方法上的差异。在音符 音高的参照标准上,现有方法主要有2种。其一是使用以平均律为标准的MIDI音高为评 估参照标准(例如W.Keige[15]、M.Ryyniinen[ia].与Viitaniemi[17Mtl系统性能评估)。其二 是以对数频率音高记法(精确到小数点后2位)的Groundtruthpitch为评估参照标准 (例如Molinaetal[ls]、G0mezandBonada[19]&及我们在对算法估算的实际哼唱旋律的评 估)。由于实际人声哼唱音符的音高与以平均律为标准的MIDI音高常存在不同程度的偏 差,因此以对数频率音高记法的Groundtruthpitch[ls'19]作为评估算法估算的实际哼唱旋 律的标准更具客观性。然而音高不太准确的人声哼唱却蕴含着与哼唱者或听者心目中调性 认知保持一致的期望哼唱旋律。期望哼唱旋律以调性音级作为音符的音高。同样的Ground truthpitch在不同的上下文所对应的调性音级可能是不同的MIDI音高。自动旋律识别系 统作为一个智能程序必须能在音高不太准确的人声哼唱中以期望哼唱旋律作为系统的寻 求目标并将其视为输入哼唱的正确旋律。特别地,表4和5所展示的校正音程正确率指出 了我们算法将Groundtruth或算法估算的实际哼唱旋律中不准确的相邻音程自动校正为 正确音程的能力。需要指出的是,现有的评估法仅能反映算法估算实际哼唱旋律的性能,但 不能判断实际哼唱旋律与期望哼唱旋律的关系,而期望哼唱旋律才是一个哼唱旋律自动识 别系统最终寻求的目标。
[0143] 以下通过图示说明SingingTracker系统的使用方法。
[0144] 步骤1 (哼唱输入):连接好麦克风。打开SingingTracker系统。在系统主菜单 上选择"录音"一"打开录音机",系统会弹出"录音机"窗口。点击其中的"开始录音"按钮, 开始哼唱,哼唱完毕,点击"停止录音"按钮。
[0145] 步骤2 (导入哼唱信号):在系统主菜单上选择"录音"一"导入录音",系统会自动 将采样率为44kHz,16bit的哼唱信号导入系统。
[0146] 步骤3 (估算实际哼唱旋律与期望哼唱旋律):点击主界面上的"旋律识别"按钮, 系统会弹出"旋律识别"窗口。依次点击"旋律识别"窗口中的"实际哼唱旋律"按钮、"期望 哼唱旋律"按钮,即可获得实际哼唱旋律与期望哼唱旋律的结果。
[0147] 步骤4 (显示调音功能):点击主界面上的"显示调音功能"按钮,在系统主界面下 方会出现"音高调整"与"原音重现"面板。
[0148] 步骤5 (哼唱旋律播放、单音播放与多个相邻音块连续播放):在"原音重现"面板 上,点击"播放全曲"按钮,系统会播放导入到系统的整首人声哼唱。选择下拉菜单的音块 号,再点击"单音播放"按钮,系统会播放指定音块号所对应的哼唱信号区域的人声哼唱。还 可选择从一个音块号到另一个音块号所对应的信号区域,再点击"连续播放"按钮,系统会 播放这个信号区域的人声哼唱片段。注意,这里的一个音块所对应的哼唱区域,就是一个哼 唱音符。
[0149] 步骤6 (播放算法估算的实际哼唱旋律与期望哼唱旋律):在点击完"旋律识别"窗 口的"期望哼唱旋律"按钮之后,系统会估算出期望哼唱旋律。此时,可在"音高调整"面板 上,点击"播放全曲"按钮,系统会用指定的合成音色播放系统估算的期望哼唱旋律。选择下 拉菜单的音块号,再点击"单音播放"按钮,系统会用指定的合成音色播放指定音块号(即 相应音符)所对应的哼唱信号区域的音符音高。还可选择从一个音块号到另一个音块号所 对应的信号区域,再点击"连续播放"按钮,系统会用指定的合成音色播放这个信号区域所 对应的相邻音符构成旋律片段。
【主权项】
1. 哼唱旋律到MIDI旋律的转换方法,其特征在于包括以下步骤: 1) 估算信号帧的基频; 2) 规?a哼唱首符的听觉标准; 3) 估算哼唱音符切割与音符音高; 4) 估算基于哼唱旋律调性分析的期望哼唱旋律; 5) 建立系统性能评估方法。2. 如权利要求1所述哼唱旋律到MIDI旋律的转换方法,其特征在于在步骤1)中,所述 估算信号帧的基频的具体方法为:采用倍音分析与变采样技术相结合,为每个信号帧估算 指定精度范围内的音高。3. 如权利要求1所述哼唱旋律到MIDI旋律的转换方法,其特征在于在步骤2)中,所述 规范哼唱音符的听觉标准的具体方法为:哼唱音符是哼唱旋律的基本组成单位,将一段实 际的哼唱片段视为由一个听觉可辨识的听觉成分序列所组成,每个听觉成分在听觉上可呈 现为首尚波动相对稳定的稳定首,或为具有$父大首尚上下波动性的颠首,或为首尚沿单一 方向变动的滑音,或为以气流开始的气音,以及换气或停顿等等不同的声学特性;在听觉成 分序列上判定某一听觉成分子串能否可认定为个哼唱首符,并由此规?E各种哼唱首符的 听觉标准。4. 如权利要求1所述哼唱旋律到MIDI旋律的转换方法,其特征在于在步骤3)中,所述 估算哼唱音符切割与音符音高的具体方法为:通过构造ATN网络,在一个听觉成分序列上 识别音高波动范围在半音甚至全音音程内变化且由不同听觉成分构成的哼唱音符从而实 现哼唱音符的自动切割,同时通过观察与比较由听觉确认的各种不同类型哼唱音符中各种 听觉成分信号帧基频与实际音高听觉的关系,建立各种哼唱音符的音高估算模型,估算音 符音高。5. 如权利要求1所述哼唱旋律到MIDI旋律的转换方法,其特征在于在步骤4)中,所 述估算基于哼唱旋律调性分析的期望哼唱旋律的具体方法为:先通过相邻音程分析推导第 j+1个哼唱音符的音级,当相邻音程最小取整误差达到某个阈值(〇. 75)时,使用间邻音程 分析并优先匹配第一候选音级,同时允许匹配至多一个非调性音级,即算法所输出的音级 序列中允许出现至多一种非调性音级,该非调性音级理解为实际哼唱的一个走音音符,或 为在自然调式体系下的一个临时变化音级;算法在使用第j-1个哼唱音符的音级通过间邻 音程分析推导第j+1个哼唱音符的音级时,要求第j-1个哼唱音符的音级必须是通过唯一 的第1候选推导出来的结果,并以此作为使用间邻音程分析的条件;任意二个相邻音符或 间邻音符的估算音程不一定正好是整数,每当算法根据二个相邻音符或间邻音符从当前音 符的音级推算下一个音符音级时,产生取整误差,算法会累积这些取整误差,并按累积的取 整误差由小到大的次序排列输出解的优劣,累积取整误差最小的解为最优解。6. 如权利要求1所述哼唱旋律到MIDI旋律的转换方法,其特征在于在步骤5)中,所述 建立系统性能评估方法的具体方法为:任意实际哼唱均具有二种旋律,即实际哼唱旋律与 期望哼唱旋律,将所述期望哼唱旋律作为哼唱旋律的正确旋律,通过比较音符"绝对音高" 及"调性音级"的主观听觉判定与系统客观估算结果的差异,评估系统识谱能力。
【专利摘要】哼唱旋律到MIDI旋律的转换方法,涉及数字音频信号处理。1)估算信号帧的基频;2)规范哼唱音符的听觉标准;3)估算哼唱音符切割与音符音高;4)估算基于哼唱旋律调性分析的期望哼唱旋律;5)建立系统性能评估方法。可以为输入哼唱信号估算“实际哼唱旋律”与“期望哼唱旋律”的哼唱旋律自动识别。通过比较“实际哼唱旋律”与“期望哼唱旋律”的差异,可以鉴别输入哼唱信号的“哼唱质量”以及系统的自动校正能力。采用一种基于相邻或间邻哼唱音符音程分析的哼唱旋律的调性分析法。即先估算实际哼唱相邻或间邻哼唱音符的音程,而后再在音程序列上估算哼唱旋律的调性。并由此建立期望哼唱旋律的估算模型。
【IPC分类】G10L13/08, G10H7/00, G10L19/00
【公开号】CN105244021
【申请号】CN201510743017
【发明人】冯寅, 盘子圣
【申请人】厦门大学
【公开日】2016年1月13日
【申请日】2015年11月4日
当前第5页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1