专利名称:使用具有时间演化信息的基底函数来分解音乐信号的制作方法
技术领域:
本发明涉及音频信号处理。
背景技术:
便携式装置(例如,智能手机、上网本、便携式计算机、平板计算机)或电子游戏机上的许多音乐应用程序可供单个用户使用。在这些情况下,装置的用户哼唱旋律、演唱歌曲或演奏乐器,同时装置记录所得音频信号。所记录的信号接着可由应用程序来分析其音高/音调升降曲线,并且用户可以选择处理操作,例如,纠正或以其它方式变更升降曲线,用不同音高或乐器音色来对信号进 行上混操作(upmix)等。此类应用程序的实例包含QUSIC应用程序(QUALCOMM公司,圣地亚哥(San Diego), CA);例如吉他英雄(Guitar Hero)和摇滚乐队(Rock Band) (Harmonix音乐系统,剑桥,MA)等的电子游戏;以及卡拉0K、单人乐队(one-man-band)及其它记录应用程序。许多电子游戏(例如,吉他英雄、摇滚乐队)和音乐会音乐场景可能涉及多个乐器和歌手同时演出。当前市售游戏和音乐制作系统要求顺序地或在具有紧密定位的麦克风的情况下演奏这些情形,以能够单独地对这些情形进行分析、后处理及上混操作。这些约束可在音乐制作的情况下限制控制干扰和/或记录空间效应的能力,且可在电子游戏的情况下导致受限制的用户体验。
发明内容
一种根据一般配置分解音频信号的方法包含针对所述音频信号的多个时间片段中的每一者,计算在频率范围内的对应信号表示。这种方法还包含基于所述多个所计算的信号表示和多个基底函数计算激活系数的向量。在这种方法中,所述向量的每一激活系数对应于所述多个基底函数中的不同基底函数,且所述多个基底函数中的每一者包括在所述频率范围内的第一对应信号表示,和不同于所述第一对应信号表示的在所述频率范围内的第二对应信号表示。还揭示具有有形特征的计算机可读存储媒体(例如,非瞬时媒体),所述有形特征使读取所述特征的机器执行此种方法。—种用于根据一般配置分解音频信号的设备包含用于针对所述音频信号的多个时间片段中的每一者计算在频率范围内的对应信号表示的装置;及用于基于所述多个所计算的信号表示和多个基底函数计算激活系数的向量的装置。在这种设备中,所述向量的每一激活系数对应于所述多个基底函数中的不同基底函数,且所述多个基底函数中的每一者包括在所述频率范围内的第一对应信号表示,和不同于所述第一对应信号表示的在所述频率范围内的第二对应信号表示。一种用于根据另一一般配置分解音频信号的设备包含经配置以针对所述音频信号的多个时间片段中的每一者计算在频率范围内的对应信号表示的变换模块;及经配置以基于所述多个所计算的信号表示和多个基底函数计算激活系数的向量的系数向量计算器。在这种设备中,所述向量的每一激活系数对应于所述多个基底函数中的不同基底函数,且所述多个基底函数中的每一者包括在所述频率范围内的第一对应信号表示,和不同于所述第一对应信号表示的在所述频率范围内的第二对应信号表示。
图1A展示了根据一般配置的方法MlOO的流程图。图1B展示了方法MlOO的实施方案M200的流程图。图1C展示了根据一般配置的用于分解音频信号的设备MF100的方框图。图1D展示了根据另一一般配置的用于分解音频信号的设备AlOO的方框图。图2A展示了方法MlOO的实施方案M300的流程图。图2B展示了设备AlOO的实施方案A300的方框图。图2C展示了设备AlOO的另一实施方案A310的方框图。图3A展示了方法M200的实施方案M400的流程图。图3B展示了方法M200的实施方案M500的流程图。图4A展示了方法MlOO的实施方案M600的流程图。图4B展示了设备AlOO的实施方案A700的方框图。图5展示了设备AlOO的实施方案A800的方框图。图6展示了基底函数库存的第二实例。图7展示了具有和声鸣响的语音的声谱图。图8展示了在图6的库存中的图7的声谱图的稀疏表示。图9图解说明模型Bf=y。图10展示由方法MlOO产生的分离结果的曲线图。图11图解说明图9的模型的修改B’ f=y。图12展示了在钢琴和长笛的音调的未定期间基底函数的时域演化的曲线图。图13展示了由方法M400产生的分离结果的曲线图。图14展示了在音调F5处的钢琴和长笛的基底函数的曲线图(左)和在音调F5处的钢琴和长笛的预加重基底函数的曲线图(右)。图15图解说明多个声源在活跃的情形。图16图解说明源紧密地挨在一起且一个源位于另一源之后的情形。图17图解说明分析个别空间集群的结果。图18展示了基底函数库存的第一实例。图19展示了吉他音调的声谱图。图20展示了在图18的库存中的图19的声谱图的稀疏表示。
图21展示了将开始检测方法应用于两个不同复合信号实例的结果的声谱图。图22到图25表明将基于开始检测的后处理应用于第一复合信号实例的结果。图26到图32表明将基于开始检测的后处理应用于第二复合信号实例的结果。图33到图39是表明将基于开始检测的后处理应用于第一复合信号实例的结果的声谱图。图40到图46是表明将基于开始检测的后处理应用于第二复合信号实例的结果的声谱图。图47A展示了评估应用于钢琴-长笛测试实例的开始检测方法的性能的结果。图47B展示了通信装置D20的方框图。图48展示了手机HlOO的正视图、后视图和侧视图。
具体实施方式
揭示了使用基底函数库存和稀疏恢复技术来分解音频信号,其中基底函数库存包含与音调的未定期间音符的频谱改变有关的信息。此类分解可用以支持信号的分析、编码、再现和/或合成。本文中展示了对包含来自和声(即,非打击)和打击乐器的声音的混合物的音频信号的定量分析的实例。除非由其上下文明确限制,否则本文中使用术语“信号”来指示其普通意义中的任一者,包括在电线、总线或其它传输媒体上表达的存储器位置(或存储器位置集合)的状态。除非由其上下文明确限制,否则本文中使用术语“产生”来指示其普通意义中的任一者,例如计算或以其它方式产生。除非由其上下文明确限制,否则本文中使用术语“计算”来指示其普通意义中的任一者,例如计算、评估、平滑和/或从多个值中进行选择。除非由其上下文明确限制,否则使用术语“获得”来指示其普通意义中的任一者,例如计算、导出、接收(例如,从外部装置)和/或检索(例如,从存储元件阵列)。除非由其上下文明确限制,否则使用术语“选择”来指示其普通意义中的任一者,例如识别、指示、应用和/或使用两者或两者以上的集合中的不到全部的至少一者。在术语“包括”用于本描述及权利要求书中的情况下,其不排除其它元件或操作。术语“基于”(如“A基于B”)用以指示其普通意义中的任一者,包含情况⑴“从……导出”(例如,“B是A的前驱体”),(ii) “至少基于”(例如,“A至少基于B”)及在特定上下文中适当的情况下(iii) “等于”(例如,“A等于B”)。类似地,术语“响应于”用以指示其普通意义中的任一者,包含“至少响应于”。对多麦克风音频传感装置的麦克风的“位置”的参考指示麦克风的声学敏感面的中心的位置,除非上下文以其它方式指示。根据特定上下文,术语“信道”有时用以指示信号路径,且在其它时候指示由此路径携带的信号。除非以其它方式指示,否则术语“系列”用以指示两个或两个以上项目的序列。术语“对数”用以指示以十为底数的对数,但此运算延伸到其它底数(例如,底数二)属于本发明的范围内。术语“频率分量”用以指示信号的一组频率或频带当中的一者,例如信号的频域表示的样本(例如,通过快速傅里叶变换产生)或信号的子带(例如,巴克(Bark)标度或梅尔(mel)标度子带)。除非另外指出,否则对具有特定特征的设备的操作的任何揭示内容还明确地希望揭示具有类似特征的方法(且反之亦然),且对根据特定配置的设备的操作的任何揭示内容还明确地希望揭示根据类似配置的方法(且反之亦然)。术语“配置”可参考方法、设备和/或系统来使用,如其特定上下文所指示。术语“方法”、“过程”、“程序”和“技术”被一般地且可互换地使用,除非特定上下文以其它方式指示。术语“设备”和“装置”也被一般地且可互换地使用,除非特定上下文以其它方式指示。术语“元件”和“模块”通常用以指示较大配置的一部分。除非其上下文明确地限制,否则术语“系统”在本文中用以指示其普通意义中的任一者,包含“交互以服务共同目的的元素的群组”。任何以引用的方式并入有文献的一部分还应理解为并入有所述部分内所提及的术语或变量的定义(在此类定义出现在文献的其它地方的情况下),及所并入有部分中所提及的任何图式。除非开始由定冠词引入,否则用以修饰权利要求元素的序数术语(例如,“第一”、“第二”、“第三”等)自身并不指示权利要求元素相对于彼此的任何优先级或次序,而是仅区别权利要求元素与具有同一名称(但使用序数术语)的另一权利要求元素。除非其上下文明确地限制,否则术语“多个”在本文中用以指示大于一的整数量。如本文中所描述的方法可经配置以将所捕获的信号作为一系列片段来处理。典型片段长度范围在约五或十毫秒到约四十或五十毫秒之间,且片段可重叠(例如,邻近片段重叠25%或50%)或不重叠。在一个特定实例中,信号被分成各自具有十毫秒长度的一系列不重叠片段或“帧”。由此种方法进行处理的片段还可以是由不同操作进行处理的较大片段的片段(即,“子帧”),或反之亦然。可需要对音乐场景进行分解,以从两个或两个以上乐器和/或声音信号的混合物中提取个别音调/音高轮廓。潜在使用实例包含用多个麦克风录制音乐会/电子游戏场景,通过空间/稀疏恢复处理来分解乐器和声音,提取音高/音调轮廓,部分地或完全地用经纠正的音高/音调轮廓来对个别源进行上混操作。此类操作可用以使音乐应用程序(例如,Qualcomm的QUSIC应用程序、例如摇滚乐队或吉他英雄等的电子游戏)的能力延伸到多演奏者/歌唱者情形。可需要使音乐应用程序能够处理特定的情形,在所述特定的情形中,一个以上歌手在活跃和/或多个乐器同时演奏(例如,如图15中所示)。可需要此能力以支持实际音乐录制情形(多音高场景)。尽管用户可能想要单独地编辑且重新合成每一源的能力,但产生音轨可能需要同时记录所述源。本发明描述可用以允许实现多个源可同时活跃的音乐应用程序的使用实例的方法。此种方法可经配置以使用基于基底函数库存的稀疏恢复(例如,稀疏分解)技术来分析音频混合信号。可需要通过找到基底函数集合的激活系数的最稀疏向量(例如,使用有效稀疏恢复算法),来将混合信号频谱分解成源分量。可使用激活系数向量(例如,与基底函数集合一起)来重构混合信号,或重构混合信号的选定部分(例如,来自一个或一个以上选定乐器)。还可需要对稀疏系数向量进行后处理(例如,根据量值和时间支持)。图1A展示了根据一般配置的分解音频信号的方法MlOO的流程图。方法MlOO包含任务T100,所述任务TlOO基于来自音频信号的帧的信息,计算在频率范围内的对应信号表示。方法MlOO还包含任务T200,所述任务T200基于由任务TlOO计算的信号表示和多个基底函数,来计算激活系数的向量,其中激活系数中的每一者对应于多个基底函数中的不同基底函数。可实施任务TlOO以将信号表示计算为频域向量。此向量的每一元素可指示可根据梅尔或巴克标度获得的一组子带中的对应者的能量。然而,通常使用例如快速傅里叶变换(FFT)或短时傅里叶变换(STFT)等的离散傅里叶变换(DFT)来计算此向量。此向量可具有(例如)64、128、256、512或1024个分格的长度。在一实例中,音频信号具有8kHz的采样率,且对于长度为32毫秒的每一帧,0到4kHz频带由256分格的频域向量表示。在另一实例中,对音频信号的重叠片段使用经修改的离散余弦变换(MDCT)来计算信号表示。在另一实例中,实施任务TlOO以将信号表示计算为倒谱系数(例如,梅尔倒频谱系数或MFCC)的向量,所述向量表示帧的短期功率谱。在此情况下,可实施任务TlOO以计算此向量,计算的方式是将梅尔标度滤波器组应用于帧的DFT频域向量的量值,求得滤波器输出的对数,及求得对数值的DCT。例如,在标题为“STQ:DSR--前端特征提取算法;压缩算法(STQ:DSR - Front-end feature extraction algorithm; compressionalgorithm),,的ETSI文献ES201108(欧洲电信标准协会,2000)中所描述的极光标准(Aurora standard)中描述了此程序(procedure)。乐器通常具有界限清楚的音色。乐器的音色可由其频谱包络(例如,频率范围内能量的分布)描述,使得可使用编码个别乐器的频谱包络的基底函数库存来建模不同乐器的音色范围。每一基底函数包括在频率范围内的对应信号表示。可需要此些信号表示中的每一者具有与由任务T100计算的信号表示相同的形式。举例来说,每一基底函数可为长度为64、128、256、512或1024分格的频域向量。或者,每一基底函数可为倒谱域向量,例如MFCC的向量等。在另一实例中,每一基底函数为小波域向量。基底函数库存A可包含每一乐器n (例如,钢琴、长笛、吉他、鼓等)的基底函数集合An。举例来说,乐器的音色通常是依赖于音高的,使得每一乐器n的基底函数集合An通常将包含在某所要音高范围内的每一音高的至少一基底函数,所述音高范围可在乐器之间变化。对应于调谐到(例如)半音阶的乐器的基底函数集合可包含每八音度十二个音高中的每一音高的不同基底函数。钢琴的基底函数集合可包含钢琴的每一基调的不同基底函数,总计八十八个基底 函数。在另一实例中,每一乐器的基底函数集合包含在所要音高范围(例如,五个八音度(例如,56个音高)或六个八音度(例如,67个音高)等)中的每一音高的不同基底函数。这些基底函数集合An可不相交,或两个或两个以上集合可共享一个或一个以上基底函数。图6展示了特定和声乐器的十四个基底函数的集合的曲线图(音高指数对频率)的实例,其中所述集合的每一基底函数编码在不同对应音高处的乐器的音色。在音乐信号的上下文中,人类话音可被视为乐器,使得库存可包含一个或一个以上人类话音模型中的每一者的基底函数集合。图7展示了具有和声鸣响的语音的声谱图(以Hz为单位的频率对以样本为单位的时间),且图8展示了此信号在图6中所示的和声基底函数集合中的表
/Jn o基底函数的库存可基于从特别记录的个别乐器记录中获知的通用乐器音高数据库,和/或基于分离的混合物流(例如,使用例如独立分量分析(ICA)、期望最大化(EM)等的分离方案)。 基于由任务T100计算的信号表示且基于来自库存A的多个基底函数B,任务T200计算激活系数的向量。此向量的每一系数对应于多个基底函数B中的不同基底函数。举例来说,任务T200可经配置以计算向量,使得所述向量根据多个基底函数B指示信号表示的最有可能模型。图9图解说明此模型Bf=y,其中多个基底函数B为矩阵,使得B的列为个别基底函数,f为基底函数激活系数的列向量,且y为所记录的混合信号的帧的列向量(例如,呈声谱图频率向量形式的五、十或二十毫秒的帧)。任务T200可经配置以通过求解线性编程问题来恢复音频信号的每一帧的激活系数向量。可用以求解此问题的方法的实例包含非负矩阵因式分解(NNMF)。可配置基于NNMF的单信道参考方法以使用期望最大化(EM)更新规则(例如,如下文所描述),来同时计算基底函数和激活系数。可需要通过找到已知或部分已知基底函数空间中的最稀疏激活系数向量,将音频混合信号分解成个别乐器(其可包含一个或一个以上人类话音)。举例来说,可配置任务T200以使用已知乐器基底函数的集合通过找到基底函数库存中的最稀疏激活系数向量(例如,使用有效稀疏恢复算法),将输入信号表示分解成源分量(例如,一个或一个以上个别乐器)。已知地是,对线性方程的欠定系统(S卩,具有多于方程的未知数的系统)的最小LI范数解常常也是对所述系统的最稀疏解。可如下执行通过LI范数的最小化而进行的稀疏恢复。假定目标向量&是具有K〈N个非零项(即,“K稀疏”)的长度为N的稀疏向量,且对于大小约为K的集合,投影矩阵(S卩,基底函数矩阵)A是非相干的(类似随机)。观测到
信号y=Af。。接着,求解服从于Af=y min/||/|iW (其中l/^定义为;^f=1|./;|)将精确地恢复
f。。此外,可通过求解易处理的程序,从M ^ KdogA/个非相干量度中恢复量度的数目M大约等于有效分量的 数目。一种方法是使用来自压缩传感的稀疏恢复算法。在压缩传感(也称作“经压缩传感”)信号恢复Ox=y的一实例中,y是长度为M的观测到的信号向量,X是具有K〈N个非零项(即,“K稀疏模型”)的长度为N的稀疏向量(其为y的精简表示),且O是大小为MXN的随机投影矩阵。随机投影O不是满秩的,但其对于稀疏/可压缩信号模型以高几率可逆(即,随机投影O求解了病态求逆问题)。图10展示了由方法MlOO的稀疏恢复实施方案产生的分离结果的曲线图(音高指数对帧指数)。在此情况下,输入混合信号包含演奏音调序列C5-F5-G5-G#5-G5-F5-C5-D#5的钢琴和演奏音调序列C6-A#5-G#5-G5的长笛。钢琴的经分离的结果以虚线展示(音高序列0-5-7-8-7-5-0-3),且长笛的经分离的结果以实线展示(音高序列12_10_8_7)。可认为激活系数向量f包含每一乐器n的子向量4,所述子向量fn包含对应基底函数集合An的激活系数。可独立地处理此些乐器特定激活子向量(例如,在后处理操作中)。举例来说,可需要强加一个或一个以上稀疏性约束(例如,向量元素的至少一半为零,乐器特定子向量中的非零元素的数目不超过最大值等)。激活系数向量的处理可包含编码每一帧的每一非零激活系数的指数编号,编码每一非零激活系数的指数和值,或编码整个稀疏向量。可使用此信息(例如,在另一时间和/或位置)来使用所指示的活跃基底函数再现混合信号,或仅再现混合信号的特定部分(例如,仅再现由特定乐器演奏的音调)。由乐器产生的音频信号可建模为被称作音调的一系列事件。演奏音调的和声乐器的声音可在时间上分成不同区域:举例来说,开始阶段(也被称作起奏)、固定阶段(也被称作维持)和偏移阶段(也被称作释放)。对音调(ADSR)的时间包络的另一描述包含在起奏与维持之间的额外衰减阶段。在此上下文中,音调的持续时间可定义为从起奏阶段的开始到释放阶段的结束(或到终止音调的另一事件,例如同一根弦上的另一音调的开始等)的时间间隔。假定音调具有单一音高,但还可以实施库存以建模具有单一起奏和多个音高的音调(例如,如由例如颤音或滑音等的音高弯曲效应所产生)。一些乐器(例如,钢琴、吉他或竖琴)可以在被称作和弦的事件中一次产生一个以上音调。由不同乐器产生的音调可在维持阶段期间具有类似音色,使得可能难以在此时段识别哪一乐器正在演奏。然而,可预期音调的音色在阶段之间变化。举例来说,识别活跃乐器可能在起奏或释放阶段期间比在维持阶段期间更为容易。图12展示了钢琴(虚线)和长笛(实线)的八音度C5到C6中的十二个不同音高的基底函数的时域演化的曲线图(音高指数对时域帧指数)。可看出(例如)钢琴基底函数的起奏与维持阶段之间的关系显著不同于长笛基底函数的起奏与维持阶段之间的关系。为了增加激活系数向量将指示适当基底函数的可能性,可能需要最大化基底函数之间的差异。举例来说,可能需要使基底函数包含与音调的随时间推移的频谱改变有关的信息。可能需要基于随时间推移的音色改变来选择基底函数。此方法可包含将与音调的音色的此时域演化有关的信息编码成基底函数库存。举例来说,特定乐器n的基底函数的集合An可包含每一音高处的两个或两个以上对应信号表不,使得此些信号表不中的每一者对应于音调的演化中的不同时间(例如,起奏阶段一个信号表不,维持阶段一个信号表不,且释放阶段一个信号表示)。可从演奏音调的乐器的记录的对应帧中提取此些基底函数。图1C展示了根据一般配置的用于分解音频信号的设备MF100的方框图。设备MF100包含用于基于来自音频信号的帧的信息计算在频率范围内的对应信号表示的装置FlOO (例如,如本文中参考任务TlOO所描述)。设备MF100还包含装置F200,所述装置F200用于基于由装置FlOO计算的信号表示和多个基底函数,来计算激活系数的向量,其中激活系数中的每一者对应于多个基底函数中的不同基底函数(例如,如本文中参考任务T200所描述)。图1D展示了根据另一一般配置的用于分解音频信号的设备AlOO的方框图,所述设备AlOO包含变换模块100和系数向量计算器200。变换模块100经配置以基于来自音频信号的帧的信息计算在频率范围内的对应信号表示(例如,如本文中参考任务TlOO所描述)。系数向量计算器200经配置以基于由变换模块100计算的信号表示和多个基底函数,来计算激活系数的向量,其中激活系数中的每一者对应于多个基底函数中的不同基底函数(例如,如本文中参考任务T200所描述)。图1B展示了方法MlOO的实施方案M200的流程图,其中基底函数库存包含针对每一乐器的每一音高的多个信号表示。此些多个信号表示中的每一者描述在频率范围内的多个不同能量分布(例如,多个不同音色)。库存还可经配置以包含针对不同时间相关模态的不同多个信号表示。在一个这样的实例中,库存包含在每一音高处用弓拉弦的多个信号表不,和在每一音高处拨弦(例如,拨奏)的不同的多个信号表不。方法M200包含任务TlOO (在此实例中,任务T100A和T100B)的多个例子,其中每一例子基于来自音频信号的对应不同帧的信息,计算在频率范围内的对应信号表示。可串接各种信号表示,且同样,每一基底函数可为多个信号表示的串接。在此实例中,任务T200将混合帧的串接与每一音高处的信号表示的串接相匹配。图11展示了图S5的模型Bf=y的修改B’ f=y的实例,其中混合信号y的帧pl、p2被串接以用于匹配。可构造库存以使得从训练信号的连续帧中获得每一音高处之多个信号表示。在其它实施方案中,可能需要使每一音高处的多个信号表不横跨较大的时间窗(例如,包含时间上分离而非连续的帧)。举例来说,可能需要使每一音高处的多个信号表示包含来自起奏阶段、维持阶段与释放阶段当中的至少两者的信号表示。通过包含关于音调的时域演化的更多信息,可增加不同音调的基底函数集合之间的差异。在左边,图14展示了音调F5处的钢琴的基底函数(虚线)和音调F5处的长笛的基底函数(实线)的曲线图(振幅对频率)。可看出指示此特定音高处的乐器的音色的此些基底函数极为类似。因此,实践中可预期所述基底函数之间的某一程度的不匹配。为了得到更稳健的分离结果,可能需要最大化库存的基底函数之间的差异。长笛的实际音色含有比钢琴的实际音色多的高频能量,但图14的左曲线图中所示的基底函数未编码此信息。在右边,图14展示了音调F5处的钢琴的基底函数(虚线)和音调F5处的长笛的基底函数(实线)的另一曲线图(振幅对频率)。在此情况下,除了已预加重源信号的高频区域之外,从与左曲线图中的基底函数相同的源信号导出基底函数。因为钢琴源信号含有显著少于长笛源信号的高频能量,所以右曲线图中所示的基底函数之间的差异明显大于左曲线图中所示的基底函数之间的差异。图2A展示了方法MlOO的实施方案M300的流程图,所述实施方案M300包含加重片段的高频的任务T300。在此实例中,任务TlOO经布置以计算在预加重之后的片段的信号表示。图3A展示了包含任务T300的多个例子T300A、T300B的方法M200的实施方案M400的流程图。在一实例中,预加重任务T300增加了高于200Hz的能量对总能量的比率。图2B展示了设备AlOO的实施方案A300的方框图,所述实施方案A300包含经布置以在变换模块100的上游对音频信号执行高频加重的预加重滤波器300 (例如,高通滤波器,例如一阶高通滤波器等)。图2C展示了设备AlOO的另一实施方案A310的方框图,在所述实施方案A310中,预加重滤波器300经布置以对变换系数执行高频预加重。在此些情况下,还可能需要对多个基底函数B执行高频预加重(例如,高通滤波)。图13展示了由方法M300对于与图10的分离结果相同的输入混合信号产生的分离结果的曲线图(音高指数对帧指数)。音符可包含赋色效应,例如,颤音和/或颤声等。颤音是具有通常在四或五赫兹到七、八、十或十二赫兹的范围中的调制率的频率调制。归因于颤音的音高改变对于歌唱者来说可在0.6到2个半音程之间变化,且对于管乐器和弦乐器来说通常小于+/-0.5半音程(例如,对于弦乐器来说,在0.2与0.35半音程之间)。颤声是通常具有类似调制率的振幅调制。可能难以在基底函数库存中建模此类效应。可能需要检测此类效应的存在。举例来说,颤音的存在可由在4Hz到8Hz的范围中的频域峰值来指示。还可能需要记录所检测到的效应的水平的量度(例如,作为此峰值的能量),这是因为可使用此特性来在再现期间还原所述效应。对于颤声检测和量化,可在时域中执行类似处理。一旦效应已被检测到且可能经量化,就可能需要通过针对颤音使频率在时间上平滑或针对颤声使振幅在时间上平滑,来移除调制。图4B展示了设备AlOO的实施方案A700的方框图,所述实施方案A700包含调制水平计算器MLC。计算器MLC经配置以计算且可能记录如上文所描述的音频信号的片段中的所检测到的调制的量度(例如,在时域或频域中所检测到的调制峰值的能量)。本发明描述可用以允许实现多个源可同时活跃的音乐应用程序的使用实例的方法。在此情况下,可能需要在计算激活系数向量之前使源分离(如果有可能的话)。为了实现此目的,提出了多信道和单信道技术的组合。图3B展示了方法MlOO的实施方案M500的流程图,所述实施方案M500包含将信号分离成空间集群的任务T500。任务T500可经配置以将源隔离成尽可能多的空间集群。在一实例中,任务T500使用多麦克风处理来将所记录的声学情形分离成尽可能多的空间集群。此处理可基于麦克风信号之间的增益差和/或相位差,其中可跨越整个频带来评估此类差或在多个不同频率子带或频率分格中的每一者处评估此类差。单独的空间分离方法可能不足以实现所要的分离水平。举例来说,一些源可能太靠近麦克风阵列或以其它方式次最佳地相对于麦克风阵列布置(例如,多个小提琴手和/或和声乐器可位于一个角落;打击乐器乐手通常位于后面)。在典型乐队情形下,源可能紧密地挨在一起或甚至在其它源之后(例如,如图16中所示),使得单独使用空间信息来处理由处于相对于乐队的同一大体方向的麦克风阵列捕获的信号可能无法将所有的源彼此相区分。任务TlOO和T200使用如本文中所描述的单信道基于基底函数库存的稀疏恢复(例如,稀疏分解)技术来分析个别空间集群以分离个别乐器(如图17中所示)。为了便于计算处理,可能需要多个基底函数B显著地小于基底函数库存A。可能需要对于给定分离任务从大库存开始缩减库存。在一实例中,此减小可通过以下方式来执行:确定片段是包含来自打击乐器的声音还是包含来自和声乐器的声音,及从库存中选择适当的多个基底函数B以用于匹配。与和声声音的水平线相反,打击乐器倾向于具有类似脉冲的声谱图(例如,垂直线)。在声谱图中,和声乐器的特征通常可为某一基本音高和相关联的音色,及此和声模式的对应较高频率延伸。因此,在另一实例中,可能需要通过仅分析此些频谱的较低八音度来减小计算任务,这是因为可基于低频副本来预测其较高频率副本。在匹配之后,可将活跃基底函数外推到较高频率,且从混合信号减去,以获得可以编码和/或进一步分解的残余信号。还可通过用户在图形用户接口中的选择和/或通过基于第一轮稀疏恢复或最大可能性拟合预先分类最有可能的乐器和/或音高来执行此减小。举例来说,可执行第一轮稀疏恢复操作以获得经恢复的稀疏系数的第一集合,且基于此第一集合,可对于另一轮稀疏恢复操作缩减可适用的音调基底函数。一个减小方法包含通过测量某些音程中的稀疏性得分,来检测某些乐器音调的存在。此方法可包含基于最初音高估计来改进一个或一个以上基底函数的频谱形状,及使用改进的基底函数作为方法MlOO中的多个B。减小方法可经配置以通过测量投影到对应基底函数中的音乐信号的稀疏性得分来识别音高。在给定最佳音高得分的情况下,可使基底函数的振幅形状最优化,以识别乐器音调。接着可使用活跃基底函数的减小的集合作为方法MlOO中的多个B。图18展示了可用于第一轮方法中的稀疏和声信号表示的基底函数库存的实例。图19展示了吉他音调的声谱图(以Hz为单位的频率对以样本为单位的时间),且图20展示了图18中所示的基底函数集合中此声谱图的稀疏表示(基底函数数目以帧为单位的时间)。图4A展示了包含此第一轮库存减小的方法MlOO的实施方案M600的流程图。方法M600包含任务T600,所述任务T600计算在非线性频域(例如,其中邻近元素之间的频率距离随频率而增加,如按梅尔或巴克标度)中的片段的信号表示。在一实例中,任务T600经配置以使用常数Q变换来计算非线性信号表示。方法M600还包含任务1700,所述任务1700基于非线性信号表示和多个类似非线性基底函数,计算激活系数的第二向量。基于来自第二激活系数向量的信息(例如,来自激活的基底函数的恒等式,其可指示活跃音高范围),任务T800选择用于任务T200中的多个基底函数B。明确地注意到方法M200、M300和M400还可经实施以包含此些任务T600、T700和T800。图5展示了设备AlOO的实施方案A800的方框图,所述实施方案A800包含经配置以从基底函数的较大集合中(例如,从库存中)选择多个基底函数的库存减小模块IRM。模块IRM包含第二变换模块110,第二变换模块110经配置以计算非线性频域中的片段的信号表示(例如,根据常数Q变换)。模块IRM还包含第二系数向量计算器,第二系数向量计算器经配置以基于非线性频域中的所计算的信号表示和如本文中所描述的第二多个基底函数,计算激活系数的第二向量。模块IRM还包含基底函数选择器,基底函数选择器经配置以基于如本文中所描述的来自第二激活系数向量的信息,从基底函数的库存当中选择多个基底函数。可能需要方法MlOO包含开始检测(例如,检测音符的开始)和后处理,以改进和声乐器稀疏系数。可认为激活系数向量f包含每一乐器n的对应子向量fn,所述子向量fn包含乐器特定基底函数集合Bn的激活系数,且可独立地处理此些子向量。图21到图46图解说明了将此方案用于复合信号实例I (在同一八音度下演奏的钢琴和长笛)和复合信号实例2 (伴随打击乐器在同一八音度下演奏的钢琴和长笛)的音乐分解的方面。一般开始检测方法可基于频谱量值(例如,能量差)。举例来说,此种方法可包含基于频谱能量和/或峰值斜率找到峰值。图21展示了将此种方法分别应用于复合信号实例I (在同一八音度下演奏的钢琴和长笛)和复合信号实例2 (伴随打击乐器在同一八音度下演奏的钢琴和长笛)的结果的声谱图(以Hz为单位的频率对以帧为单位的时间),其中垂直线指示所检测到的开始。可能还需要检测每一个别乐器的开始。举例来说,在和声乐器当中的检测开始的方法可基于时间的对应系数差。在一个这样的实例中,如果当前帧的乐器n的系数向量(子向量fn)的最高量值元素的指数不等于先前帧的乐器n的稀疏向量的最高量值元素的指数,那么触发和声乐器n的开始检测。可对于每一乐器,重复进行此操作。可能需要执行和声乐器的稀疏系数向量的后处理。举例来说,对于和声乐器,可能需要保持对应子向量的具有高量值和/或满足指定的标准(例如,足够尖)的起奏轮廓的系数,和/或移除(例如,归零)残余系数。对于每一和声乐器,可能需要在每一开始帧处(例如,当指示了开始检测时)对系数向量进行后处理,使得保持具有支配量值和可接受起奏时间的系数,且使残余系数归零。可根据例如时间平均量值等的标准来评估起奏时间。在一个这样的实例中,如果系数的当前平均值小于系数的过去平均值(例如,如果在当前窗(例如,从帧(t-5)到帧(t+4))中的系数的值的总和小于在过去窗(例如,从帧(t-15)到帧(t-6))中的系数的值的总和),那么使当前帧t的乐器的每一系数归零(即,起奏时间不可被接受)。在每一开始帧处的和声乐器的系数向量的此后处理还可包含保持具有最大量值的系数,且使其它系数归零。对于每一和声乐器,在每一非开始帧处,可能需要对系数向量进行后处理,以便只保持在先前帧中值非零的系数,且使向量的其它系数归零。图22到图25表明将基于开始检测的后处理应用于复合信号实例I (演奏同一八音度的钢琴和长笛)的结果。在此些图中,垂直轴是稀疏系数指数,水平轴是以帧为单位的时间,且垂直线指示特定帧,在所述特定帧处指示了开始检测。图22和图23分别展示了在后处理之前和之后的钢琴稀疏系数。图24和图25分别展示了在后处理之前和之后的长笛稀疏系数。图26到图30表明将基于开始检测的后处理应用于复合信号实例2 (伴随打击乐器在同一八音度下演奏的钢琴和长笛)的结果。在此些图中,垂直轴是稀疏系数指数,水平轴是以帧为单位的时间,且垂直线指示特定帧,在所述特定帧处指示了开始检测。图26和图27分别展示了在后处理之前和之后的钢琴稀疏系数。图28和图29分别展示了在后处理之前和之后的长笛稀疏系数。图30展示了鼓稀疏系数。图31到图39是表明将如本文中所描述的开始检测方法应用于复合信号实例
1(在同一八音度下演奏的钢琴和长笛)的结果的声谱图。图31展示了原始复合信号的声谱图。图32展示了在无后处理的情况下重构的钢琴分量的声谱图。图33展示了在具有后处理的情况下重构的钢琴分量的声谱图。图34展示了通过使用EM算法获得的库存所建模的钢琴。图35展示了原始钢琴。图36展示了在无后处理的情况下重构的长笛分量的声谱图。图37展示了在具有后处理的情况下重构的长笛分量的声谱图。图38展示了通过使用EM算法获得的库存所建模的长笛。图39展示了原始长笛分量的声谱图。图40到图46是表明将如本文中所描述的开始检测方法应用于复合信号实例
2(在同一八音度下演奏的钢琴和长笛以及鼓)的结果的声谱图。图40展示了原始复合信号的声谱图。图41展示了在无后处理的情况下重构的钢琴分量的声谱图。图42展示了在具有后处理的情况下重构的钢琴分量的声谱图。图43展示了在无后处理的情况下重构的长笛分量的声谱图。图44展示了在具有后处理的情况下重构的长笛分量的声谱图。图45和图46分别展示了经重构的鼓分量和原始鼓分量的声谱图。图47A展示了使用由文森特(Vincent)等人描述的评估尺度(盲音频源分离中的性能测量,IEEE Trans.ASSP,第14卷,第4期,2006年7月,第1462到1469页)来评估应用于钢琴-长笛测试情况的如本文中所描述的开始检测方法的性能的结果。信号干扰比(SIR)是对不想要的源的抑制的量度,且定义为IOlogltlO IstmgeJ I2/ IeinterfI I2)。信号伪影比(SAR)是已由分离过程引入的伪影(例如,音乐噪声等)的量度,且定义为101og1Q(| |starget+einterfl I2/ IeartifI I2)。信号失真比(SDR)是性能的总体量度,这是因为SDR考虑以上标准两者,且定义为101og1(l( I |Sta_| I2/ eartif+einterf| I2)此定量评估展示了具有可接受的伪影产生水平的稳健源分离。
EM算法可用以产生最初基底函数矩阵和/或更新基底函数矩阵(例如,基于激活系数向量)。现描述EM方法的更新规则的实例。在给定声谱图Vft的情况下,希望对于每一时间帧估计频谱基底向量P(f Iz)和加权向量Pt (z)。此些分布提供了矩阵分解。如下应用EM算法:首先,随机地初始化加权向量Pt (Z)和频谱基底向量P(f|z)。接着,在以下步骤之间重复直到收敛为止:1)期望(E)步骤-在给定频谱基底向量P(f |z)和加权向量Pt(Z)的情况下,估计后验分布Pt(z|f)。此估计可表达如下:
权利要求
1.一种分解音频信号的方法,所述方法包括: 针对所述音频信号的多个时间片段中的每一者,计算在频率范围内的对应信号表示;及 基于所述多个所计算的信号表示和多个基底函数计算激活系数的向量, 其中所述向量的每一激活系数对应于所述多个基底函数中的不同基底函数,且其中所述多个基底函数中的每一者包括在所述频率范围内的第一对应信号表示,和不同于所述第一对应信号表不的在所述频率范围内的第二对应信号表不。
2.根据权利要求1所述的方法,其中对于所述多个片段中的至少一者,(A)在高于200赫兹的频率下的总能量与(B)在所述频率范围内的总能量的比率在所述所计算的对应信号表示中比在所述对应片段中高。
3.根据权利要求1和2中任一权利要求所述的方法,其中对于所述多个片段中的至少一者,所述所计算的对应信号表示中的调制的水平低于所述对应片段中的所述调制的水平,所述调制是振幅调制与音高调制当中的至少一者。
4.根据权利要求3所述的方法,其中对于所述多个片段中的所述至少一者,所述计算所述对应信号表示包括记录所述调制的所述水平的量度。
5.根据权利要求1到4中任一权利要求所述的方法,其中所述向量的所述激活系数的至少百分之五十为零值。
6.根据权利要求1到5中任一权利要求所述的方法,其中所述计算激活系数的所述向量包括计算形式为Bf=y的线性方程系统的解,其中y是包含所述多个所计算的信号表示的向量,B是包含所述多个基 底函数的矩阵,且f是激活系数的所述向量。
7.根据权利要求1到6中任一权利要求所述的方法,其中所述计算激活系数的所述向量包括最小化激活系数的所述向量的LI范数。
8.根据权利要求1到7中任一权利要求所述的方法,其中在所述音频信号中,所述多个片段中的至少一者通过所述音频信号的不在所述多个片段当中的至少一个片段而与所述多个片段中的每一其它片段隔开。
9.根据权利要求1到8中任一权利要求所述的方法,其中对于所述多个基底函数中的每一基底函数: 所述第一对应信号表不描述在所述频率范围内的对应乐器的第一音色,且所述第二对应信号表示描述在所述频率范围内的所述对应乐器的不同于所述第一音色的第二音色。
10.根据权利要求9所述的方法,其中对于所述多个基底函数中的每一基底函数: 所述第一音色是在对应音调的第一时间间隔期间的音色,且 所述第一音色是在所述对应音调的不同于所述第一时间间隔的第二时间间隔期间的首色。
11.根据权利要求1到10中任一权利要求所述的方法,其中对于所述多个片段中的每一者,所述对应信号表示是基于对应频域向量。
12.根据权利要求1到11中任一权利要求所述的方法,其中所述方法包括在所述计算激活系数的所述向量之前,且基于来自所述多个片段中的至少一者的信息,从基底函数的较大集合中选择所述多个基底函数。
13.根据权利要求1到12中任一权利要求所述的方法,其中所述方法包括: 对于所述多个片段中的至少一者,计算在非线性频域中的对应信号表示;及 在所述计算激活系数的所述向量之前,且基于在所述非线性频域中的所述所计算的信号表示和第二多个基底函数,计算激活系数的第二向量, 其中所述第二多个基底函数中的每一者包括在所述非线性频域中的对应信号表示。
14.根据权利要求13所述的方法,其中所述方法包括基于来自激活系数的所述所计算的第二向量的信息,从基底函数库存当中选择所述多个基底函数。
15.一种用于分解音频信号的设备,所述设备包括: 用于针对所述音频信号的多个时间片段中的每一者计算在频率范围内的对应信号表示的装置;及 用于基于所述多个所计算的信号表示和多个基底函数计算激活系数的向量的装置, 其中所述向量的每一激活系数对应于所述多个基底函数中的不同基底函数,且 其中所述多个基底函数中的每一者包括在所述频率范围内的第一对应信号表示,和不同于所述第一对应信号表不的在所述频率范围内的第二对应信号表不。
16.根据权利要求15所述的设备,其中对于所述多个片段中的至少一者,(A)在高于200赫兹的频率下的总能量与(B)在所述频率范围内的总能量的比率在所述所计算的对应信号表示中比在所述对应片段中高。
17.根据权利要求15所述的设备,其中对于所述多个片段中的至少一者,所述所计算的对应信号表示中的调制的水平低于所述对应片段中的所述调制的水平,所述调制是振幅调制与音高调制当中的至少一者。
18.根据权利要求17所述的设备,其中所述用于计算所述对应信号表示的装置包括用于对于所述多个片段中的所述至少一者记录所述调制的所述水平的量度的装置。
19.根据权利要求15所述的设备,其中所述向量的所述激活系数的至少百分之五十为零值。
20.根据权利要求15所述的设备,其中所述用于计算激活系数的所述向量的装置包括用于计算形式为Bf=y的线性方程系统的解的装置,其中y是包含所述多个所计算的信号表示的向量,B是包含所述多个基底函数的矩阵,且f是激活系数的所述向量。
21.根据权利要求15所述的设备,其中所述用于计算激活系数的所述向量的装置包括用于最小化激活系数的所述向量的LI范数的装置。
22.根据权利要求15所述的设备,其中在所述音频信号中,所述多个片段中的至少一者通过所述音频信号的不在所述多个片段当中的至少一个片段而与所述多个片段中的每一其它片段隔开。
23.根据权利要求15所述的设备,其中对于所述多个基底函数中的每一基底函数: 所述第一对应信号表不描述在所述频率范围内的对应乐器的第一音色,且 所述第二对应信号表示描述在所述频率范围内的所述对应乐器的不同于所述第一音色的第二音色。
24.根据权利要求23所述的设备,其中对于所述多个基底函数中的每一基底函数: 所述第一音色是在对应音调的第一时间间隔期间的音色,且 所述第一音色是在所述对应音调的不同于所述第一时间间隔的第二时间间隔期间的首色。
25.根据权利要求15所述的设备,其中对于所述多个片段中的每一者,所述对应信号表示是基于对应频域向量。
26.根据权利要求15所述的设备,其中所述设备包括用于在所述计算激活系数的所述向量之前且基于来自所述多个片段中的至少一者的信息从基底函数的较大集合中选择所述多个基底函数的装置。
27.根据权利要求15所述的设备,其中所述用于从基底函数的较大集合中选择所述多个基底函数的装置包括: 用于对于所述多个片段中的至少一者计算在非线性频域中的对应信号表示的装置;及 用于在所述计算激活系数的所述向量之前且基于在所述非线性频域中的所述所计算的信号表示和第二多个基底函数计算激活系数的第二向量的装置, 其中所述第二多个基底函数中的每一者包括在所述非线性频域中的对应信号表示。
28.根据权利要求27所述 的设备,其中所述设备包括用于基于来自激活系数的所述所计算的第二向量的信息从基底函数库存当中选择所述多个基底函数的装置。
29.一种用于分解音频信号的设备,所述设备包括: 变换模块,其经配置以针对所述音频信号的多个时间片段中的每一者计算在频率范围内的对应信号表不;及 系数向量计算器,其经配置以基于所述多个所计算的信号表示和多个基底函数计算激活系数的向量, 其中所述向量的每一激活系数对应于所述多个基底函数中的不同基底函数,且 其中所述多个基底函数中的每一者包括在所述频率范围内的第一对应信号表示,和不同于所述第一对应信号表不的在所述频率范围内的第二对应信号表不。
30.根据权利要求29所述的设备,其中对于所述多个片段中的至少一者,(A)在高于200赫兹的频率下的总能量与(B)在所述频率范围内的总能量的比率在所述所计算的对应信号表示中比在所述对应片段中高。
31.根据权利要求29所述的设备,其中对于所述多个片段中的至少一者,所述所计算的对应信号表示中的调制的水平低于所述对应片段中的所述调制的水平,所述调制是振幅调制与音高调制当中的至少一者。
32.根据权利要求31所述的设备,其中所述设备包含调制水平计算器,所述调制水平计算器经配置以对于所述多个片段中的所述至少一者计算所述调制的所述水平的量度。
33.根据权利要求29所述的设备,其中所述向量的所述激活系数的至少百分之五十为零值。
34.根据权利要求29所述的设备,其中所述系数向量计算器经配置以计算形式为Bf=y的线性方程系统的解,其中I是包含所述多个所计算的信号表示的向量,B是包含所述多个基底函数的矩阵,且f是激活系数的所述向量。
35.根据权利要求29所述的设备,其中所述系数向量计算器经配置以最小化激活系数的所述向量的LI范数。
36.根据权利要求29所述的设备,其中在所述音频信号中,所述多个片段中的至少一者通过所述音频信号的不在所述多个片段当中的至少一个片段而与所述多个片段中的每一其它片段隔开。
37.根据权利要求29所述的设备,其中对于所述多个基底函数中的每一基底函数: 所述第一对应信号表不描述在所述频率范围内的对应乐器的第一音色,且 所述第二对应信号表示描述在所述频率范围内的所述对应乐器的不同于所述第一音色的第二音色。
38.根据权利要求37所述的设备,其中对于所述多个基底函数中的每一基底函数: 所述第一音色是在对应音调的第一时间间隔期间的音色,且 所述第一音色是在所述对应音调的不同于所述第一时间间隔的第二时间间隔期间的首色。
39.根据权利要求29所述的设备,其中对于所述多个片段中的每一者,所述对应信号表示是基于对应频域向量。
40.根据权利要求29所述的设备,其中所述设备包括经配置以在所述计算激活系数的所述向量之前且基于来自所述多个片段中的至少一者的信息从基底函数的较大集合中选择所述多个基底函数的库存减小模块。
41.根据权利要求29所述的设备,其中所述库存减小模块包括: 第二变换模块,其经配置以对于所述多个片段中的至少一者计算在非线性频域中的对应信号表不;及 第二系数向量计算器,其经配置以在所述计算激活系数的所述向量之前且基于在所述非线性频域中的所述所计算的信号表示和第二多个基底函数计算激活系数的第二向量,其中所述第二多个基底函数中的每一者包括在所述非线性频域中的对应信号表示。
42.根据权利要求41所述的设备,其中所述设备包括经配置以基于来自激活系数的所述所计算的第二向量的信息从基底函数库存当中选择所述多个基底函数的基底函数选择器。
43.一种机器可读存储媒体,所述机器可读存储媒体包括在由机器读取时致使所述机器执行根据权利要求1到14中任一权利要求所述的方法的有形特征。
全文摘要
本发明揭示使用基底函数库存和稀疏恢复技术分解多源信号。
文档编号G10L25/48GK103189915SQ201180051682
公开日2013年7月3日 申请日期2011年10月25日 优先权日2010年10月25日
发明者埃里克·维瑟, 郭尹义, 朱默飞, 刘尚忆, 金莱轩, 辛钟元 申请人:高通股份有限公司