声音信号分析设备以及声音信号分析方法和程序的制作方法

文档序号:2827351阅读:186来源:国知局
声音信号分析设备以及声音信号分析方法和程序的制作方法
【专利摘要】本发明公开了声音信号分析设备以及声音信号分析方法和程序。一种声音信号分析设备(10),其包括:声音信号输入装置,其用于输入表示乐曲的声音信号;拍速检测装置,其用于通过使用所输入的声音信号来检测所述乐曲的每个部分的拍速;判断装置,其用于判断所述拍速的稳定性;以及控制装置,其用于根据由所述判断装置判断的结果来控制特定目标。
【专利说明】声音信号分析设备以及声音信号分析方法和程序

【技术领域】
[0001]本发明涉及声音信号分析设备、声音信号分析方法和声音信号分析程序,用于分析表示乐曲的声音信号以检测该乐曲的节拍位置(节拍定时)和拍速,从而使受所述设备、方法和程序控制的特定目标进行操作使得该目标与所检测到的节拍位置和拍速同步。

【背景技术】
[0002]传统上,存在这样的声音信号分析设备,其检测乐曲的拍速并使受设备控制的特定目标进行操作以使得该目标与所检测到的节拍位置和拍速同步,例如,如“Journal ofNew Music Research” 2001 年第 30 卷第 2 期第 159-171 页所述。


【发明内容】

[0003]上述文献的传统的声音信号分析设备被设计为处理每个具有大致恒定的拍速的乐曲。因此,在传统的声音信号分析设备处理其中拍速在乐曲中间的某个点处急剧变化的乐曲的情况下,该设备很难准确地检测拍速变化的时间段内的节拍位置和拍速。因此,传统的声音信号分析设备呈现了在拍速变化的时间段内目标操作不自然的问题。
[0004]完成本发明以解决上述问题,并且本发明的目的是提供一种声音信号分析设备,其检测乐曲的节拍位置和拍速,并且使受所述声音信号分析设备控制的目标进行操作以使得所述目标与所检测到的节拍位置和拍速同步,所述声音信号分析设备防止所述目标在拍速变化的时间段内操作不自然。另外,对于本发明的各个构成要素的描述,为了方便对本发明的理解,稍后描述的实施例的对应组件的参考字母均提供在括号内。然而,应当理解的是,本发明的构成要素不限于实施例的参考字母所表示的对应组件。
[0005]为了实现上述目的,本发明的一个特征是提供一种声音信号分析设备,包括:声音信号输入装置(S13,S120),其用于输入表示乐曲的声音信号;拍速检测装置(S15,S180),其用于通过使用所输入的声音信号来检测所述乐曲的每个部分的拍速;判断装置(S17,S234),其用于判断所述拍速的稳定性;以及控制装置(S18,S19,S235,S236),其用于根据由所述判断装置判断的结果来控制特定目标(EXT,16)。
[0006]在该情况下,如果各部分之间的拍速的变化量落在预定的范围内,则所述判断装置(S17)可以判断拍速稳定,而如果各部分之间的拍速的变化量在所述预定的范围以外,则所述判断装置可以判断拍速不稳定。
[0007]另外,在该情况下,在拍速稳定的部分中,所述控制装置可以使所述目标在预定的第一模式(S18,S235)下操作,而在拍速不稳定的部分中,所述控制装置使所述目标在预定的第二模式(S19,S236)下操作。
[0008]如上配置的声音信号分析设备判断乐曲的拍速稳定性,以根据分析的结果来控制目标。因此,所述声音信号分析设备可以防止在拍速不稳定的部分中乐曲的节奏不能与目标的操作同步的问题。因此,所述声音信号分析设备可以防止目标不自然的操作。
[0009]本发明的另一特征是所述拍速检测装置具有:特征值计算装置(S165,S167),其用于计算第一特征值(XO)和第二特征值(XB),所述第一特征值表示与节拍的存在相关的特征,所述第二特征值表示与所述乐曲的每个部分中的拍速相关的特征;以及估计装置(S170,S180),其用于通过从多个概率模型中选择其观测似然度(L)的序列满足一定标准的一个概率模型来同时估计所述乐曲中的节拍位置和拍速变化,所述多个概率模型被描述为根据与所述每个部分中的节拍的存在相关的物理量(η)和与所述每个部分中的拍速相关的物理量(b)的结合来分类的各状态(qb,n)的序列,所述一个概率模型的所述观测似然度的序列中的每个均表示所述每个部分中的所述第一特征值和所述第二特征值的同时观测的概率。
[0010]在该情况下,所述估计装置可以通过从所述多个概率模型中选择最可能的观测似然度的序列的概率模型来同时估计所述乐曲中的节拍位置和拍速变化。
[0011]在该情况下,所述估计装置可以具有第一概率输出装置,其用于输出通过将所述第一特征值指定为根据与节拍的存在相关的物理量而定义的概率分布函数的概率变量来计算得到的概率,以作为所述第一特征值的观测概率。
[0012]在该情况下,所述第一概率输出装置可以输出通过将所述第一特征值指定为根据与节拍的存在相关的物理量来定义的正态分布、伽马分布和泊松分布中的任何一个(包括但不限于其中的任何一个)的概率变量而计算出的概率,作为所述第一特征值的观测的概率。
[0013]在该情况下,所述估计装置可以具有第二概率输出装置,其用于输出所述第二特征相对于根据与拍速相关的物理量提供的多个模板的拟合优度,来作为所述第二特征值的观测概率。
[0014]另外,在该情况下,所述估计装置可以具有第二概率输出装置,其用于输出通过将所述第二特征值指定为根据与拍速相关的物理量定义的概率分布函数的概率变量而计算得到的概率来作为所述第二特征值的观测概率。
[0015]在该情况下,所述第二概率输出装置可以输出通过将所述第二特征值指定为根据与拍速相关的物理量来定义的多项分布、狄利克雷分布、多维正态分布、以及多维泊松分布中的任何一个(包括但不限于其中的任何一个)的概率变量而计算出的概率,作为所述第二特征值的观测的概率。
[0016]以上构造的声音信号分析设备可以选择满足通过使用表示与节拍的存在相关的特征的第一特征值和表示与拍速相关的特征的第二特征值而计算出的观测似然度的序列的特定标准的概率模型(诸如最可能的概率模型或最大后验概率模型之类的概率模型),以同时(一道地)估计乐曲中的节拍位置和拍速的变化。因此,与其中通过计算得出乐曲的节拍位置从而使用该计算结果来得到拍速的情况相比,所述声音信号分析设备可以提高拍速估计的精度。
[0017]本发明的又一特征是所述判断装置根据从所述乐曲的开端到各个部分所观测的所述第一特征值和所述第二特征值来计算各个部分中的各个状态的似然度(C),并且根据各个部分中的各个状态的似然度的分布来判断各个部分中的拍速的稳定性。
[0018]如果各部分中的各个状态的似然度分布的方差小,则可以认为拍速值的可靠性高以致得到稳定的拍速。另一方面,如果各部分的各个状态的似然度分布的方差大,则可以认为拍速值的可靠性低从而导致不稳定的拍速。根据本发明,由于根据各状态的似然度的分布来控制目标,因此所述声音信号分析设备可以防止当拍速不稳定时乐曲的节奏不能与目标的操作同步的问题。因此,所述声音信号分析设备可以防止目标的不自然的操作。
[0019]另外,本发明不仅可以体现为声音信号分析设备的发明,还可以体现为声音信号分析方法的发明以及适用于所述设备的计算机程序的发明。

【专利附图】

【附图说明】
[0020]图1是表示根据本发明的第一和第二实施例的声音信号分析设备的整体构造的框图;
[0021]图2是根据本发明的第一实施例的声音信号分析程序的流程图;
[0022]图3是拍速稳定性判断程序的流程图;
[0023]图4是概率模型的概念图;
[0024]图5是根据本发明的第二实施例的声音信号分析程序的流程图;
[0025]图6是特征值计算程序的流程图;
[0026]图7是表不要分析的声音信号的波形的图;
[0027]图8是表示通过对一帧进行短时傅里叶变换得到的声谱的图;
[0028]图9是表示带通滤波器的特性的图;
[0029]图10是表示各个频带的时变振幅的图;
[0030]图11是表示时变的起振(onset)特征值的图;
[0031]图12是梳状滤波器的框图;
[0032]图13是表示BPM特征值的计算结果的图;
[0033]图14是对数观测似然度计算程序的流程图;
[0034]图15是表示起振特征值的观测似然度的计算结果的图表;
[0035]图16是表示各模板的构造的图表;
[0036]图17是表示BPM特征值的观测似然度的计算结果的图表;
[0037]图18是节拍/拍速同时估计程序的流程图;
[0038]图19是表示对数观测似然度的计算结果的图表;
[0039]图20是表示当从最上一帧起开始观测起振特征值和BPM特征值时作为各个帧的各状态的极大似然度序列而选择的各状态的似然度的计算结果的图表;
[0040]图21是表示转变之前的状态的计算结果的图表;
[0041]图22是表示BPM率、BPM率的平均值和BPM率的方差的计算结果的示例的图表;
[0042]图23是示意性地表示节拍/拍速信息列表的示意图;
[0043]图24是表示拍速变化的图;
[0044]图25是表示节拍位置的图;
[0045]图26是表示起振特征值、节拍位置和BPM率方差的变化的图;以及
[0046]图27是再现/控制程序的流程图。

【具体实施方式】
[0047](第一实施例)
[0048]现在将描述根据本发明的第一实施例的声音信号分析设备10。如下所述,声音信号分析设备10接收表示乐曲的声音信号,检测该乐曲的拍速,并且使受声音信号分析设备10控制的特定目标(外部设备EXT、嵌入式音乐演奏设备等)进行操作使得该目标与所检测到的拍速同步。如图1所示,声音信号分析设备12具有输入操作元件11、计算机部分12、显示单元13、存储装置14、外部接口电路15和声音系统16,这些组件通过总线BS彼此连接。
[0049]输入操作元件11由能够进行开/关操作的开关(例如,用于输入数值的数字小键盘)、能够进行旋转操作的音量或旋转编码器、能够进行滑动操作的音量或线性编码器、鼠标、触摸面板等构成。演奏者的手操纵这些操作元件来选择要分析的乐曲、开始或停止声音信号的分析、再现或停止乐曲(从稍后描述的声音系统16输出或停止声音信号)、或者设置与声音信号的分析有关各种参数。响应于演奏者对输入操作兀件11的操纵,表不该操纵的操作信息通过总线BS提供至稍后描述的计算机部分12。
[0050]计算机部分12由均连接至总线BS的CPU12a、R0M12b和RAM12c构成。CPU12a从R0M12b中读出稍后将详细描述的声音信号分析程序及其子程序,并且执行该程序和子程序。在R0M12b中,不仅存储了声音信号分析程序及其子程序,还存储了初始设置参数以及诸如用于生成显示数据的图形数据和文本数据之类的各种数据,该显示数据表示要显示在显示单元13上的图像。在RAM12C中,临时存储了执行声音信号分析程序所需的数据。
[0051]显示单元13由液晶显示器(IXD)构成。计算机部分12生成表示要通过使用图形数据、文本数据等来显示的内容的显示数据,并且将生成的显示数据提供给显示单元13。显示单元13基于从计算机部分12提供的显示数据来显示图像。例如,在选择要分析的乐曲时,在显示单元13上显示乐曲的标题的列表。
[0052]存储装置14由诸如HDD、FDD、⑶-ROM、MO和DVD之类的高容量的非易失性存储介质及其驱动单元构成。在存储装置14中,存储了分别表示多个乐曲的多个乐曲数据集。每个乐曲数据集由通过在某些采样周期(例如,l/44100s)下对乐曲进行采样得到的多个采样值构成,同时这些采样值依次记录在存储装置14的连续地址内。每个乐曲数据集还包括表示乐曲标题的标题信息和表示乐曲数据集的量的数据大小信息。乐曲数据集可以预先存储在存储装置14中,或者可以通过稍后将描述的外部接口电路15来从外部设备取回。存储在存储装置14中的乐曲数据由CPU12a读取,以分析该乐曲中的节拍位置和拍速的变化。
[0053]外部接口电路15具有能够使声音信号分析设备10与诸如电子音乐设备、个人计算机、或照明设备之类的外部设备EXT连接的连接端子。声音信号分析设备10还可以通过外部接口电路15连接至诸如LAN (局域网)或因特网之类的通信网络。
[0054]声音系统16具有:D/A转换器,其用于将乐曲数据转换为模拟乐音信号;放大器,其用于放大转换后的模拟乐音信号;以及一对左右扬声器,其用于将放大的模拟乐音信号转换为音响信号并输出该音响信号。声音系统16还具有效果设备,其用于将效果(音效)添加至乐曲的乐音。添加至乐音的效果的类型和效果的强度由CPU12a控制。
[0055]接下来,将说明如上配置的声音信号分析设备10在第一实施例中的操作。当用户打开声音信号分析设备10的电源开关(未示出)时,CPU12a从R0M12b中读出图2所示的声音信号分析程序,并且执行该程序。
[0056]在步骤SlO处CPU12a开始声音信号分析处理。在步骤Sll处,CPU 12a读取存储在存储装置14中的乐曲数据集中所包含的标题信息,并在显示单元13上显示乐曲的标题列表。用户利用输入操作元件11,从显示单元13上显示的各乐曲中选择用户想要分析的乐曲数据集。声音信号分析处理可以被构造为使得:当用户在步骤Sll中选择了要分析的乐曲数据集时,再现由该乐曲数据集表示的乐曲的一部分或整体,使得用户可以确认该乐曲数据的内容。
[0057]在步骤S12处,CPU12a进行用于声音信号分析的初始设置。具体地,在RAM12c中,CPU12a保留用于读取要分析的部分乐曲数据的存储区域,以及保留用于表示开始乐曲数据的读取的地址的读取起始指针RP、用以临时存储所检测到的拍速值的拍速值缓冲器BFl至BF4、以及表示拍速的稳定性(拍速是否已变化)的稳定性标志SF的存储区域。然后,CPU12a分别将某些值作为初始值写入保留的存储区域。例如,将读取起始指针RP的值设置为表示乐曲开端的“O”。而且,将稳定性标志SF的值设置为表示拍速稳定的“I”。
[0058]在步骤S13处,CPU 12a将从由读取起始指针RP表示的开端地址开始的时间序列上连续的预定数量(例如,256)的采样值读入至RAM12c,并使读取起始指针RP前进与读取的采样值的数量相等的地址数。在步骤S14处,CPU12a将读取的采样值传输至声音系统16。声音系统16按采样周期的时间序列的顺序将从CPU12a接收的采样值转换为模拟信号,并放大转换的模拟信号。从扬声器发出放大的信号。如稍后所述,重复执行步骤S13至S20。由此,每当执行步骤S13时,会从乐曲的开端向乐曲的末端读取预定数量的采样值。具体地,在步骤S14处再现与读取的预定数量的采样值对应的乐曲的部分(在下文中称为单位部分)。因此,从乐曲的开端到末端平滑地再现乐曲。
[0059]在步骤S15 处,CPU12a 通过与上述“Journal of New Music Research” 中描述的程序类似的计算程序来对由读取的预定数量的采样值形成的单位部分或者包括该单位部分的部分的节拍位置和拍速(每分钟节拍数(BPM))进行计算。在步骤S16处,CPU12a从R0M12b中读取由图3表示的拍速稳定性判断程序,并且执行该程序。拍速稳定性判断程序是声音信号分析程序的子程序。
[0060]在步骤S16a处,CPU 12a开始拍速稳定性判断处理。在步骤S16b处,CPU 12a将分别存储在拍速值缓冲器BF2至BF4中的值分别写进拍速值缓冲器BFl至BF3,并且将在步骤S15处计算出的拍速值写进拍速值缓冲器BF4。如稍后所述,由于重复地执行步骤S13至S20,四个连续的单位部分的拍速值会分别存储在拍速值缓冲器BFl至BF4中。因此,通过使用存储在拍速值缓冲器BFl至BF4中的拍速值,可以判断连续的四个单位部分的拍速的稳定性。在下文中,连续的四个单位部分被称为判断部分。
[0061]在步骤S16c处,CPU 12a判断判断部分的拍速稳定性。具体地,CPU 12a计算拍速值缓冲器BFl的值和拍速值缓冲器BF2的值之差df12 (= I BF1-BF2 I )。而且,CPU12a还计算拍速值缓冲器BF2的值和拍速值缓冲器BF3的值之差df23 (= I BF2-BF3 I)、以及拍速值缓冲器BF3的值和拍速值缓冲器BF4的值之差df34(= I BF3-BF4 I)。CPU12a然后判断差df12、df23和df34是否等于或小于预定的基准值dfs (例如,dfs=4)0如果差df12、df23和df34中的每一个均等于或小于基准值dfs,则CPU12a确定为“是”然后前进到步骤S16d,以将稳定性标志SF的值设置为表示拍速稳定的“I”。若果差df12、df23和df34中至少一个大于基准值dfs,则CPU12a确定为“否”,然后前进到步骤S16e,以将稳定性标志SF的值设置为表示拍速不稳定的“O”(即,拍速在判断部分内急剧变化)。在步骤S16f处,CPU12a终止拍速稳定性判断处理,以前进到声音信号分析处理(主程序)的步骤S17。
[0062]现在将再次说明声音信号分析处理。在步骤S17处,CPU12a根据拍速稳定性(SP,根据稳定性标志SF的值)来确定CPU12a接下来执行的步骤。如果稳定性标志SF为“1”,CPU 12a前进到步骤S18,以便使目标操作在第一模式,在步骤S18处执行拍速稳定时所需的特定处理。例如,CPU 12a使通过外部接口电路15连接的照明设备以在步骤S15处计算的拍速(在下文中称为当前拍速)闪烁,或者使照明设备以不同的颜色照明。在该情况下,例如,照明设备的亮度与节拍位置同步地上升。而且,例如,照明设备可以以恒定的亮度和恒定的颜色保持照明。而且,例如,可以将与当前拍速对应的类型的效果添加至由声音系统16当前再现的乐音。例如,在该情况下,如果已选择延迟乐音的效果,则可以将延迟量设置为与当前拍速对应的值。而且,例如,可以在显示单元13上显示多个图像,以当前的拍速来切换图像。而且,例如,可以以当前的拍速来控制通过外部接口电路15连接的电子音乐设备(电子乐器)。在该情况下,例如,CPU12a分析判断部分的和弦,以将表示该和弦的MIDI信号传输至电子音乐设备,使得该电子音乐设备可以发出与该和弦对应的乐音。在该情况下,例如,可以以当前的拍速将表示由一个或多个乐器的乐音形成的乐句的MIDI信号的序列传输至电子音乐设备。而且,在该情况下,CPU12a可以使乐曲的节拍位置与乐句的节拍位置同步。因此,可以以当前的拍速来演奏乐句。而且,例如,可以对由一个或多个乐器以一定的拍速演奏的乐句进行采样,以将采样值存储在R0M12b、外部存储装置15等中,使得CPU12a可以以与当前拍速对应的读取速度依次读出表示乐句的采样值,从而将读取的采样值传输至声音系统16。因此,可以以当前的拍速再现乐句。
[0063]如果稳定性标志SF为“0”,则CPU12a前进到步骤S19,以便使目标操作在第二模式下,在步骤S19处执行当拍速不稳定时所需的特定处理。例如,CPU12a使通过外部接口电路15连接的照明设备停止闪烁,或者使照明设备停止改变颜色。在控制照明设备使得当拍速稳定时照明设备以恒定的亮度和恒定的颜色照明的情况下,CPU12a可以控制照明设备使得当拍速不稳定时照明设备闪烁或变化颜色。而且,例如,CPU12a可以将恰在拍速变得不稳定之前添加的效果定义为要添加至由声音系统16当前再现的乐音的效果。而且,例如,可以停止在多个图像之间切换。在该情况下,可以显示预定的图像(例如,表示不稳定的拍速的图像)。而且,例如,CPU12a可以停止向电子音乐设备传输MIDI信号,从而停止电子音乐设备的伴奏。而且,例如,CPU12a可以停止声音系统16再现乐句。
[0064]在步骤S20处,CPU 12a判断读取指针RP是否已到达乐曲的末端。如果读取指针RP还没有到达乐曲的末端,则CPU12确定为“否”以前进到步骤S13从而再次执行步骤S13至S20。如果读取指针RP已到达乐曲的末端,则CPU12a确定为“是”以前进到步骤S21从而终止声音信号分析处理。
[0065]根据第一实施例,声音信号分析设备10判断判断部分的拍速稳定性,以根据分析结果来控制诸如外部设备EXT之类的目标和声音系统16。因此,声音信号分析设备10可以防止出现这样的问题:如果判断部分中的拍速不稳定,则乐曲的节奏不能与目标的动作一致。因此,声音信号分析设备10可以防止受声音信号分析设备10控制的目标的不自然的动作。而且,由于声音信号分析设备10可以在再现乐曲的某一部分期间检测乐曲的该部分的节拍位置和拍速,因此声音信号分析设备10能够在用户选择了乐曲之后立即再现乐曲。
[0066](第二实施例)
[0067]接下来,将描述本发明的第二实施例。由于根据第二实施例的声音信号分析设备被构造为类似于声音信号分析设备10,因此将省略关于第二实施例的声音信号分析设备的构造的说明。然而,第二实施例的声音信号分析设备的操作与第一实施例的操作不同。具体地。在第二实施例中,执行与第一实施例中的程序不同的程序。在第一实施例中,重复其中在读取和和再现乐曲的一部分的采样值期间分析判断部分的拍速稳定性以根据分析结果来控制外部设备EXT和声音系统16的一系列的步骤(步骤S13至S20)。然而,在第二实施例中,读取所有形成乐曲的采样值以分析该乐曲的节拍位置和拍速变化。而且,分析后,开始乐曲的再现,并且根据分析结果控制外部设备EXT或声音系统16。
[0068]接下来,将说明第二实施例中的声音信号分析设备10的操作。首先,将简略地说明声音信号分析设备?ο的操作。将要分析的乐曲分为多个帧\α=ο,ι,...,最后}。而且,针对每个帧ti,计算出表示与节拍的存在相关的特征的起振特征值XO以及表示与拍速相关的特征的BPM特征值XB。从被描述为根据帧ti中节拍周期b的值(与拍速的倒数成比例的值)和与下一节拍之间的帧的数量η的值的结合来分类的状态qb,n的序列这样的概率模型(隐马尔科夫模型)中,选择如下概率模型:其具有表示作为观测值的起振特征值XO和BPM特征值XB的同时观测的概率的最可能的观测似然度的序列(见图4)。由此,检测所分析的乐曲的节拍位置和拍速的变化。节拍周期b由帧的数量表示。因此,节拍周期b的值是满足“I≤b≤bmax”的整数,在节拍周期b的值为“ β ”的状态下,帧的数量η的值是满足“O ( η<β”的整数。而且。计算出表示帧\中节拍周期b的值为“β”(O≤n<bmax)的概率的“BPM率”,从而通过使用“BPM率”来计算“BPM率的方差”。而且,基于“BPM率的方差”,控制外部设备EXT、声音系统16等。
[0069]接下来,将具体说明第二实施例中的声音信号分析设备10的操作。当用户打开声音信号分析设备10的电源开关(未示出)时,CPU12a从R0M12b中读出图5的声音信号分析程序,并且执行该程序。
[0070]在步骤SlOO处CPU12a开始声音信号分析处理。在步骤SllO处,CPU 12a读取存储在存储装置14中的乐曲数据集中包含的标题信息,并在显示单元13上显示乐曲的标题列表。用户利用输入操作元件11,从显示单元13上显示的各乐曲中选择用户想要分析的乐曲数据集。声音信号分析处理可以被构造为使得:当用户在步骤SllO中选择了要分析的乐曲数据集时,再现由该乐曲数据集表示的乐曲的一部分或整体,使得用户可以确认该乐曲数据的内容。
[0071]在步骤S120处,CPU12a进行声音信号分析的初始设置。具体地,CPU12a在RAM12c中保留适合于所选乐曲数据集的数据大小信息的存储区域,并且将所选的乐曲数据集读入至保留的存储区域。此外,CPU12a在RAM12C中保留用于临时存储表示分析结果的节拍/拍速信息列表、起振特征值X0、BPM特征值XB等的区域。
[0072]程序分析的结果会存储在存储装置14中,稍后将详细对其进行描述(步骤S220)。如果所选的乐曲已被该程序分析,则分析结果存储在存储装置14中。因此,在步骤S130处,CPU12a搜索与所选乐曲的分析有关的现有数据(在下文中,简称为现有数据)。如果存在现有数据,则CPU12a在步骤S140处确定为“是”,以在步骤S150处将现有数据读入RAM12c,从而前进到稍后将描述的步骤S190。如果不存在现有数据,则CPU12a在步骤S140处确定为“否”,以前进到步骤S160。
[0073]在步骤S160处,CPU 12a从R0M12b中读出图6所示的特征值计算程序,并且执行该程序。特征值计算程序是声音信号分析程序的子程序。
[0074]在步骤S161处,CPU 12a开始特征值计算处理。在步骤S162处,CPU 12a以图7所示的一定的时间间隔来划分所选的乐曲,从而将所选的乐曲分为多个帧\α=ο,1,…,最后}。各个帧具有相同的长度。为了方便理解,在本实施例中假设每个帧具有125ms。如上所述,由于每个乐曲的采样周期为l/44100s,因此每个帧由大约5000个采样值构成。如下所述,进一步,针对每个帧计算起振特征值XO和BPM (每分钟的拍数)特征值XB。
[0075]在步骤S163处,CPU12a针对每个帧执行短时傅里叶变换,以计算出每个频点fj{j=l, 2,…}的振幅A(f」,\),如图6所示。在步骤S164处,CPU12a通过分别针对各频点fj设定的滤波器组Fboj来对振幅A(f\,ti),A(f2,ti),…进行滤波,从而分别计算出某些频带wk{k=l, 2,…}的振幅M(wk, ti)。频点fj的滤波器组FBOj由多个带通滤波器BPF (wk, fj)构成,每个带通滤波器BPF(wk,fp均具有不同的通带中心频率,如图9所示。构成滤波器组FBOj的带通滤波器BPF (wk,fj)的中心频率在对数频率刻度上均匀地间隔开,同时各带通滤波器BPF(wk,fj)在对数频率刻度上具有相同的通带宽度。每个带通滤波器BPF(wk,fj)被构造为使得增益从通带的中心频率向着通带的下限频率侧和上限频率侧逐渐递减。如图6的步骤S164所示,CPUl2a针对每个频点f」用带通滤波器BPF (wk,f」)的增益乘以振幅A(Gti)15然后,CPU12a合并针对各个频点fj计算的全部结果。合并的结果被称为振幅M(wk, h)。如上计算出的振幅M的示例序列如图10所示。
[0076]在步骤S165处,CPU 12a基于时变的振幅M计算帧\的起振特征值XO (t^。具体地,如图6 的步骤S165所示,CPU 12a针对每个频带Wk计算出振幅M从帧到帧的增量R (wk,。然而,在帧V1的振幅M (wk,t^)与帧&的振幅M (wk,相同的情况下,或者在帧h的振幅M(wk,小于帧V1的振幅M(wk,t^)的情况下,假设增量R(wk,h)为“O”。然后,CPU12a合并针对各个频带wi,w2,…计算的增量R(wk,ti)。该合并的结果被称为起振特征值X(Kti)15图11中例示了以上计算的起振特征值XO的序列。通常,在乐曲中,节拍位置具有较大的乐音量。因此,起振特征值X(Kti)越大,帧\具有节拍的概率越高。
[0077]通过使用起振特征值Xoatl), Xoai),...,CPU12a随后针对每个帧\计算BPM特征值XB。帧&的8?11特征值XBai)由在每个节拍周期b中计算出的一组BPM特征值XBb=1;2,...(h)表示(见图 13)。在步骤 S166 处,CPU12a 将起振特征值 XO(tQ),X(Kt1),...按此顺序输入至滤波器组FBB以对起振特征值XO进行滤波。滤波器组FBB由多个设为分别与各节拍周期b对应的梳状滤波器Db构成。当帧\的起振特征值X(Kti)被输入至梳状滤波器Db=e时,梳状滤波器Db=e将输入的起振特征值X(Kti)与作为比帧\超前“β ”的帧t1-g的起振特征值X(Ktg)的输出的数据XDb=e (tg)以一定的比例进行合并,并且将合并的结果输出为帧\的数据乂队=0(\)(见图12)。换而言之,梳状滤波器Db=e具有用作保持装置的延迟电路db=e,该保持装置用于将数据XDb=e保持与帧的数量β相等的时间段。如上所述,通过将起振特征值XO的序列XO (t) {=XO(t0),XO(t1),…}输入至滤波器组FBB,可以计算出数据XDb的序列XDb (t) {=XDb (t0),XDbU1),…}。
[0078]在步骤S167处,CPU 12a通过将数据XDb的序列XDb (t)在时间序列上颠倒得到的数据序列输入至滤波器组FBB,从而得到BPM特征值的序列XBb (t) {=XBb (t0),XBb (tj,…}。因此,可以使起振特征值XO (tQ),XOai),…的相位与BPM特征值XBb (tQ),XBbU1),…的相位之间的相位偏移为“O”。图13中例示了如上计算出的BPM特征值XBai)。如上所述,BPM特征值XBJti)是通过将起振特征值X(Kti)与延迟了等同于节拍周期b的值的时间段(即,帧的数量b)的BPM特征值XBb(Vb)以一定的比例进行结合得到的。因此,在起振特征值X(Ktci),XOai),…具有其时间间隔等于节拍周期b的值的峰值的情况下,BPM特征量XBbUi)的值增加。由于乐曲的拍速由每分钟的节拍数表示,因此节拍周期b与每分钟的节拍数的倒数成比例。在图13的示例中,例如,在各BPM特征值XBb中,节拍周期b的值为“4”的BPM特征值XBb (BPM特征值XBb=4)最大。因此,在该示例中,很有可能每四个帧存在一个节拍。由于该实施例被设计为将每个帧的长度限定为125ms,因此在该情况下各节拍之间的间隔为0.5s。换而言之,拍速为120BPM (=60s/0.5s)。
[0079]在步骤S168处,CPU12a终止特征值计算处理而前进到声音信号分析处理(主程序)的步骤S170。
[0080]在步骤S170处,CPU 12a从R0M12b中读出图14所示的对数观测似然度计算程序,并且执行该程序。该对数观测似然度计算程序是声音信号分析处理的子程序。
[0081]在步骤S171处,CPU12a开始对数观测似然度计算处理。然后,如下所述,计算出起振特征值Xoai)的似然度P(Xoai) I Zb,n(ti))和BPM特征值XBai)的似然度P(XBai) I Zb,n(ti))。上述ZbHnUi)表示仅状态qb=e,n=n的发生,其中在帧ti中节拍周期b的值为“β ”,到下一个节拍之间的帧的数量η的值为“ II”。具体地,在帧ti中,状态%=^和状态%#^^不能够同时发生。因此,似然度P(Xoai) I Zbmai))表示在帧ti中节拍周期b的值为“ β ”同时到下一个节拍之间的帧的数量η的值为“ I! ”的条件下起振特征值Xoai)的观测的概率。此外,似然度P(XBai) I ZbI1^ai))表示在帧\中节拍周期b的值为“ β ”并且与下一个节拍之间的帧的数量η的值为“ η ”的条件下BPM特征值XB(ti)的观测的概率。
[0082]在步骤S172处 ,CPU 12a计算似然度P (X0 (t) I ZbJti))。假设如果到下一节拍之间的帧的数量η的值为“0”,则起振特征值XO按均值为“3”方差为“ I ”的第一正态分布来分布。换而言之,通过将起振特征值X(Kti)指定为第一正态分布的随机变量而得到的值为似然度P(XCKti) I ZuJti))。另外,假设如果节拍周期b的值为“β”并且与下一个节拍之间的帧的数量η的值为“ β /2”,则起振特征值XO按均值为“ I ”方差为“ I ”的第二正态分布来分布。换而言之,通过将起振特征值X(Kti)指定为第二正态分布的随机变量而得至ij的值为似然度P(Xoai) I另外,假设如果与下一个节拍之间的帧的数量η的值既不是“O”也不是“β/2”,则起振特征值XO按均值为“O”方差为“I”的第三正态分布来分布。换而言之,通过将起振特征值Xoai)指定为第三正态分布的随机变量而得到的值为似然度 P (Xoai) I zb;n^0; 0/2 Ui)).
[0083]图15表示具有起振特征值XO的序列{10,2,0.5,5,I, O, 3,4,2}的似然度P(Xoai) I Zb=6,n(ti))的对数计算的示例结果。如图15所示,帧ti具有的起振特征值XO越大,似然度P(Xoai) I zb,^ai))相对于似然度P(Xoai) ι越大。如上所述,设置概率模型(第一至第三正态分布及其参数(均值和方差))使得帧ti具有的起振特征值XO越大,具有帧的数量η的值为“O”的节拍存在的概率越高。第一至第三正态分布的参数值不限制于上述实施例。可以基于重复试验或者通过机器学习来确定这些参数值。在该示例中,使用正态分布作为用以计算起振特征值XO的似然度P的概率分布函数。然而,可以使用不同的函数(例如,伽马分布或泊松分布)作为概率分布函数。
[0084]在步骤S173处,CPU12a计算似然度P(XBUi) I ZbJti))。似然度P(XBai) I Zb=Y,n(ti))等同于BPM特征值XBai)相对于图16中表示的模板ΤΡY{Y=1,2,...}的拟合优度。具体地,似然度P(XBai) I Zb=Y,n(ti))等同于BPM特征值XBai)与模板ΤΡY {Y =1,2,...}的内积(见图14的步骤S173的表达式)。在该表达式中,“ K b”是定义BPM特征值XB相对于起振特征值XO的权重的因子。换而言之,Kb越大,结果在稍后描述的节拍/拍速同时估计处理中得到的BPM特征值XB越大。另外,在该表达式中,“Z(Kb)”是取决于Kb的归一化因子。如图16所示,模板TPy由要与形成BPM特征值XBai)的BPM特征值XBb Ui)相乘的因子δ Y,b形成。设计模板TPy使得δ Y全局最大,同时因子δ Y,2Y因子δ Y,3Y、…、因子δ (?Y,,Wft|M0中的每一个局部最大。具体地,例如,模板ΤΡY=2被设计为拟合其中每隔两帧存在一个节拍的乐曲。在本示例中,模板TP用于计算BPM特征值XB的似然度P。然而,可以使用概率分布函数(例如,多项分布、狄利克雷分布、多维正态分布、以及多维泊松分布)来取代模板ΤΡ。
[0085]图17例示了在BPM特征值XBai)为图13所示的值的情况下通过使用图16所示的模板ΤΡY {Y =1,2,...}计算似然度P (XBai) I Zb,n(ti))的对数计算的结果。在该示例中,由于似然度P(XBai) I Zb=4,n(ti))最大,因此BPM特征值XBai)最好地拟合模板TP4。
[0086]在步骤S174处,CPU12a合并似然度P(XCKti) I ZbJti))的对数和似然度P(XBai) I Zb,n(ti))的对数并且将合并的结果定义为对数观测似然度Lb,n(ti)。可以通过将合并似然度P(Xoai) I 2_(\))和似然度?饰(\) I Zb,n(ti))而得到的结果的对数定义为对数观测似然度Lb,n(ti)来类似地得到相同的结果。在步骤S175处,CPU12a终止对数观测似然度计算处理,以前进到声音信号分析处理(主程序)的步骤S180。
[0087]在步骤S180处,CPU12a从R0M12b中读出图18所示的节拍/拍速同时估计程序,并且执行该程序。节拍/拍速同时估计程序是声音信号分析程序的子程序。节拍/拍速同时估计程序是用于通过使用维特比(Viterbi)算法来计算极大似然度状态的序列Q的程序。在下文中,将简略的说明该程序。首先,CPU12a将在选择似然度序列就好像当从帧tQ至帧&观测起振特征值XO和BPM特征值XB时帧&的状态qb,n最大的情况下的状态qb,n的似然度存储来作为似然度Cb,n(ti)。另外,CPU12a还分别存储恰在向状态qb,n转变之前的帧的状态(紧挨在转变之前的状态)来作为状态Ib,n(ti)。具体地,如果转变后的状态是状态Qb= e e,n= U e,同时转变前的状态是状态%= 0s,n=ns?则状态Ib= @ e,n= U e (t D是状态Qb= 0 s, n= n s o CPU I 2a计算似然度C和状态I直到CPU12a达到帧tiJg,并且使用计算结果来选择极大似然序列Q。
[0088]在稍后将描述的具体示例中,为简洁起见,将要分析的乐曲的节拍周期b的值为“3”、“4”或“5”。作为具体示例,具体地将说明如图19所示的计算对数观测似然度Lb,n(ti)的情况的节拍/拍速同时估计处理的过程。在该示例中,假设其中节拍周期b的值为“3”、“4”和“5”以外的任何值的状态的观测似然度足够小,使得图19至图21中省略了其中节拍周期b的值为“3”、“4”和“5”以外的任何值的状态的观测似然度。另外,在该示例中,按如下方式来设置从其中节拍周期b的值为“ β s”且帧的数量η的值为“ η s”的状态到其中节拍周期b的值为“ β e”且帧的数量η的值为“ η e”的状态的对数转变概率T的值:如果“ ηθ=0”、“βθ=β8”且“ !!^^^”,则对数转变概率了的值为“^”。如果“ ns=0”、“ β e=i3 s+1”且“ Πθ=β e-1”,则对数转变概率 T 的值为“-0.6”。如果“ ns=0”、“ β θ=β s_l”且“ ηθ=βθ-1",则对数转变概率T的值为“-0.6”。如果“ ns > 0”、“i3e=i3S”并且“ η e= η s-1”,则对数转变概率T的值为“O”。除上述情况以外的情况的对数转变概率T的值为⑴”。具体地,在从其中帧的数量n的值为“O”的状态(Ils=O)向下一状态转变时,节拍周期b的值增加或减小“I”。另外,在该转变时,帧的数量n的值被设置为比转变后节拍周期值b小“I”的值。在从其中帧的数量n的值不是“O”的状态(Hs古O)转变至下一状态时,将不改变节拍周期b的值,但是帧的数量n的值减“I”。
[0089]在下文中,将具体描述节拍/拍速同时估计处理。在步骤S181处,CPU12a开始节拍/拍速同时估计处理。在步骤S182处,用户通过使用输入操作元件11来输入与图20所示的各个状态qb,n对应的似然度C的初始条件CSb,n。初始条件CSb,n可以存储在R0M12b中使得CPU12a可以从R0M12b中读出初始条件CSb,n。
[0090]在步骤S183处,CPU 12a计算似然度CbJti)和状态IbJti)。可以通过将初始条件CSb=ee,n=ne与对数观测似然度合并来得到其中在帧h处节拍周期b的值为“ β e”并且帧的数量n的值为“ ne”的状态qb=fie,n=ne中的似然度Cb=0e,n=ne (tQ)。
[0091]此外,在从状态qb=es,n=ns向状态qb=f^n=ne转变时,可以按如下方式来计算似然度Cb=ee,n=ne(ti) U > 0}。如果状态qb=es,n=Ils的帧的数量n不为“O”(即,ns关O),则通过合并似然度Cb=fU,、对数观测似然度、和对数转变概率T来得到似然度然而,在该实施例中,由于转变之前的状态的帧的数量n不是“O”的情况下的对数转变概率τ为“0”,因此实质上通过合并和对数观测似然度
Lb= β e, n= n e
(h)来得到似然度


Cb= β e, n= n e
(?ι)(。匕=0 e,n= ne (ti) Cb= β e,n= n e+1 (t i—i)+Lb= β e,n= η e (ti))。
另外,在该情况下,状态是状态qb=f^n=ne+1。例如,在如图20所示来计算似然度C的示例中,似然度Cya2)的值为“-0.3”,同时对数观测似然度Lya3)的值为“1.1”。因此,似然度C4^t3)为“0.8”。另外,如图21所示,状态Dt3)为状态q41。
[0092]此外,按如下方式来计算其中状态qb=es,n=ns的帧的数量n为“O”的情况(η s=0)的似然度。在该情况下,随着状态转变,节拍周期b的值可以增加或减少。因此,将对数转变概率T分别与似然度^ (t^)、似然度Ce^ (t^)和似然度Ce Atl (V1)合并。然后,进一步将合并的结果的最大值与对数观测似然度Lb=Mn=Mai)合并,从而将合并的结果定义为似然度此外,状态是选自状态q^。、状态qee,。、和状态(be+1’0的状态q。具体地,将对数转变概率T分别加至状态状态Qf^cl、和状态如糾’^的似然度Ce ^ci (V1)、似然度Ce ^ (t^)和似然度Ce e+1,^ (tg),以选择具有最大求和值状态,从而将选择的状态定义为状态更加严格地,需要将似然度Cb,n(ti)归一化。然而,即使不进行归一化,节拍位置和拍速变化的估计结果数学上仍是相同的。
[0093]例如,按如下方式来计算似然度C4,3(t3)。由于在转变之前的状态为状态q”的情况下,似然度Cwa2)的值为“0.0”同时对数转变概率T为“-0.6”,因此通过合并似然度C3,o(t2)和对数转变概率T得到的值为“-0.6”。另外,由于在转变前的状态为状态qy的情况下,转变前的似然度Cwa2)的值为“-1.2”同时对数转变概率T为“-0.2”,因此通过合并似然度Cya2)和对数转变概率T得到的值为“-1.4”。此外,由于在转变前的状态为状态q5’0的情况下,转变前的似然度Cya2)的值为“-1.2”同时对数转变概率T为“-0.6”,因此通过合并似然度Cwa2)和对数转变概率T得到的值为“-1.8”。因此,通过合并似然度C3,0(t2)和对数转变概率T得到的值最大。此外,对数观测似然度L43(t3)的值为“-1.1”。因此,似然度C4,3(t3)的值为“-1.7”(=-0.6+(-1.1)),使得状态I4,3(t3)为状态q3,Q。
[0094]当针对所有帧&完成了对所有状态qb,n的似然度Cb,n(h)和状态Ib,n(tj的计算时,CPU12a前进到步骤S184,以按如下方式来确定极大似然度状态的序列Q( = {qfflax(t0),qfflax(t1),-,qfflax(t?J=)})o 首先,CPU12a 将帧 t 最后内的具有极大似然度 Cb,n(t 最后)的状态qb,n定义为状态qmax(t最后)。状态Qmax(^jg)的节拍周期b的值由“βπι”表示,同时帧的数量η的值由“iim”表示。具体地,状态Iem,nm(t最后)是紧挨在帧t最后之前的帧t最JS-1的状态qmax(t最后-按类似于状态qmax(t最后J的方式来确定帧t最后_2、帧t最后_3、…的状态Qmax (t最后-2)、状态dmax(t最后_3)、…。具体地,其中帧ti+1的状态qmax(ti+1)的节拍周期b的值由“ β m”表示、同时帧的数量η的值由“ η m”表示的状态1nm (ti+1)是紧挨在帧ti+1之前的帧&的状态qmax (tj。如上所述,CPU 12a依次确定从帧丨最^至帧、的状态qmax,以确定极大似然状态的序列Q。
[0095]例如,在图20和图21示出的示例中,在帧t最后=77中,状态q5’,的似然度C5,i (t最后=77)最大。因此,状态qmax(tiJg=77)为状态q5;1。根据图21,由于状态15,Jt77)为状态q5,2,因此状态q_(t76)为状态q5,2。另外,由于状态I5,2(t76)为状态(15,3,因此状态q_(t75)为状态q5,3。同样按类似于状态qmax(t76)和状态qmax(t75)的方式来确定状态qmax(t74)至状态Qmax(t0)。如上所述,确定了如图20中的箭头所示的极大似然状态的序列Q。在该示例中,节拍周期b的值先被估计为“3”,但是接近帧t4(l时节拍周期b的值变为“4”,并且在接近t44时进一步变为“5”。另外,在序列Q中,估计出节拍存在于与其中帧的数量η的值为“O”的状态Qmax (tQ)、Qmax ^3),…对应的帧tQ、t3,…中。
[0096]在步骤S185处,CPU12a终止节拍/拍速同时估计处理以前进到声音信号分析处理(主程序)的步骤S190。
[0097]在步骤S190处,CPU 12a针对每个帧\计算“BPM率”、“BPM率的均值”、“BPM率的方差”、“基于观测的概率”、“节拍率”、“节拍存在的概率”、以及“节拍不存在的概率”(见图23所示的表达式)。“BPM率”表示帧&中的拍速值是与节拍周期b对应的值的概率。“BPM率”是通过将似然度Cb,n(ti)归一化并且将帧的数量η边缘化来得到的。具体地,在节拍周期b的值为“ β ”的情况下的“ΒΡΜ率”为其中节拍周期b的值为“ β ”的各状态的似然度C之和与帧h中所有状态的似然度C之和的比率。“BPM率的均值”是这样得到的:通过将帧h中与节拍周期b的各值对应的各“BPM率”乘以节拍周期b的各值,并且将通过合并乘积结果而得到的值除以通过合并帧\的所有“BPM率”而得到的值。“BPM率的方差”按如下方式来计算。首先,从节拍周期b的各个值中减去帧\中的“BPM率的均值”,以将各个求差的结果取二次方,再将各个平方的结果乘以与节拍周期b的各个值对应的各个“BPM率”的值。然后,将通过合并各个乘积的结果得到的值除以通过合并帧\的所有“BPM率”得到的值,从而得到“BPM率的方差”。图22例示了以上计算的“BPM率”、“BPM率的均值”和“BPM率的方差”的各个值。“基于观测的概率”表示基于其中在帧\中存在节拍的观测值(即,起振特征值X0)而计算出的概率。具体地,“基于观测的概率”为起振特征值XO Ui)与特定基准值XObase的比率。“节拍率”为似然度P(XCKti) I Z1^ti))与通过合并帧的数量η的所有值的起振特征值Xoai)的似然度P(Xoai) ι Z1^ai))得到的值的比率。“节拍存在的概率”和“节拍不存在的概率”是通过将节拍周期b的似然度Cb,n(ti)边缘化而得到的。具体地,“节拍存在的概率”为其中帧的数量η的值为“O”的各状态的似然度C之和与帧\中所有状态的似然度C之和的比率。“节拍不存在的概率”为其中帧的数量η的值不为“O”的各状态的似然度C之和与帧ti中所有状态的似然度C之和的比率。
[0098]通过使用“BPM率”、“基于观测的概率”、“节拍率”、“节拍存在的概率”、以及“节拍不存在的概率”,CPU12a在显示单元13上显示如图23所示的节拍/拍速信息列表。在列表的“估计的拍速值(BPM)”栏,显示与具有在以上计算的“BPM率”所包含的概率中的最高概率的周期b对应的拍速值(BPM)。在包含在以上确定的状态内并且其帧的数量η的值为“O”的帧的“节拍的存在”栏上,显示“〇”。在其它帧的“节拍的存在”栏上,显示“X”。而且,通过使用估计的拍速值(BPM),CPU12a在显示单元13上显示如图24所示的表示拍速变化的图。图24所示的示例将拍速的变化表示为柱状图。在参照图20和图21说明的示例中,尽管节拍周期b的值开始为“3”,但节拍周期b的值在帧t4(l处变为“4”,并且进一步在t44处变为“5”。因此,用户可以在视觉上识别拍速的变化。而且,通过使用以上计算的“节拍存在的概率”,CPU12a在显示单元13上显示如图25所示的表示节拍位置的图。而且,通过使用以上计算的“起振特征值X0”、“BPM率的方差”和“节拍的存在”,CPU 12a在显示单元13上显示如图26所示的表示拍速稳定性的图。
[0099]而且,在通过在声音信号分析处理的步骤S130处搜索现有数据而找到了现有数据的情况下,在步骤S190处CPU12a通过使用在步骤S150处读入至RAM12c的与先前分析结果有关的各种数据,在显示单元13上显示节拍/拍速信息列表、表示拍速变化的图、以及表示节拍位置和拍速稳定性的图。
[0100]在步骤S200处,CPU12a在显示单元13上显示询问用户是否想要开始再现乐曲的消息,并且等待用户的指示。用户通过使用输入操作元件11,要么指示开始再现乐曲,要么指示执行稍后描述的节拍/拍速信息校正处理。例如,用户用鼠标点击未示出的图标。
[0101]如果在步骤 S200处用户已指示执行节拍/拍速信息校正处理,则CPU12a确定为“否”,以前进到步骤S210,执行节拍/拍速信息校正处理。首先,CPU12a进行等待,直到用户完成校正信息的输入。用户通过使用操作元件11,输入“BPM率”、“节拍存在的概率”等的校正值。例如,用户用鼠标选择其想要校正的帧,并且用数字小键盘输入校正值。然后,为了明确地表示值的校正,位于校正项的右边的“F”的显示模式(例如,颜色)改变。用户可以校正多个项的各个值。一旦完成校正值的输入,用户通过使用输入操作元件11通知完成了校正信息的输入。例如,用户通过使用鼠标来点击未不出但表不校正完成的图标。CPU12a根据校正值来更新似然度P (XCKti) I 2_(\))和似然度?饰(\) I ZbJti))中的任一个或两者。例如,在用户已进行校正使得帧\中的“节拍存在的概率”增加同时针对校正值的帧的数量η的值为“ile”的情况下,CPU12a将似然度P (XBai) I Zb,n# neUi))设置为足够小的值。因此,在帧\处,帧的数量η的值为“ ile”的概率相对最高。而且,例如,在用户已校正帧h的“BPM率”使得节拍周期b的值为“ β e”的概率增加的情况下,CPU12a将其中节拍周期b的值不为“βθ”的状态的似然度P(XBUi) I ZbHpai))设置为足够小的值。因此,在帧\处,节拍周期b的值为“ β e”的概率相对最高。然后,CPU12a终止节拍/拍速信息校正处理,以前进到步骤S180,通过用校正的对数观测似然度L来再次执行节拍/拍速同时估计处理。
[0102]如果用户已指示开始再现乐曲,则CPU12a确定为“是”以前进到步骤S220从而将关于似然度C、状态1、和节拍/拍速信息列表的分析结果的各种数据存储在存储装置14中,使得各种数据与乐曲的标题相关联。
[0103]在步骤S230处,CPU 12a从R0M12b中读出图27所示的再现/控制程序,并且执行该程序。再现/控制程序是声音信号分析程序的子程序。
[0104]在步骤S231处,CPU 12a开始再现/控制处理。在步骤S232处,CPU 12a将表示要再现的帧的帧号i设置为“O”。在步骤S233处,CPU12a将帧t的采样值传输至声音系统
16。类似于第一实施例,声音系统16通过使用从CPU12a接收的采样值来再现与乐曲的帧&对应的部分。在步骤S234处,CPU 12a判断帧\的“BPM率的方差”是否小于预定的基准值os2 (例如,0.5)。如果“BPM率的方差”小于基准值σ/,则CPU12a确定为“是”以前进到步骤S235从而执行用于稳定的BPM的预定处理。如果“BPM率的方差”等于或大于基准值σ s2,则CPU12a确定为“否”,以前进到步骤S236从而执行用于不稳定的BPM的预定处理。由于步骤S235和S236分别类似于第一实施例的步骤S18和S19,因此将省略有关步骤S235和S236的说明。在图26的示例中,从帧t39至帧t53 “BPM率的方差”等于或大于基准值σ s2。因此,在图26的示例中,在步骤S236处CPU12a在帧t4(l至帧t53中执行用于不稳定的BPM的处理。在头几帧中,即使节拍周期b是常数“BPM率的方差”仍倾向于大于基准值os2。因此,可以构造再现/控制处理使得在步骤S235处CPU12a在头几帧中执行用于稳定的BPM的处理。
[0105]在步骤S237处,CPU12a判断当前处理的帧是否为最后的帧。具体地,CPU12a判断帧号i的值是否为“最后”。如果当前处理的帧不是最后的帧,则CPU12a确定为“否”,并且在步骤S238处增加帧号i。在步骤S238后,CPU12a前进到步骤S233以再次执行步骤S233至S238。如果当前处理的帧是最后的帧,则CPU12a确定为“是”以在步骤S239处终止再现/控制处理,然后返回至声音信号分析处理(主程序)以在步骤S240处终止声音信号分析处理。因此,声音信号分析设备10可以控制外部设备EXT、声音系统16等,还能够从乐曲的开端至末端平滑地再现乐曲。
[0106]根据第二实施例的声音信号分析设备10可以选择通过使用与节拍位置相关的起振特征值XO和与拍速相关的BPM特征值XB而计算出的对数观测似然度L的最可能的序列的概率模型,以同时(一道地)估计乐曲中的节拍位置和拍速的变化。因此,与通过计算得出乐曲的节拍位置从而通过使用该计算结果得到拍速的情况相比,声音信号分析设备10可以提闻拍速估计的精度。
[0107]另外,根据第二实施例的声音信号分析设备10根据“BPM率的方差”的值来控制目标。具体地,如果“BPM率的方差”的值等于或大于基准值σ s2,则声音信号分析设备10判断拍速值的可靠性低,并且执行用于不稳定的拍速的处理。因此,声音信号分析设备10可以防止出现当拍速不稳定时乐曲的节奏不能与目标的操作同步的问题。因此,声音信号分析设备10可以防止目标的不自然的操作。
[0108]而且,本发明不限制于上述实施例,而是可以在不偏离本发明目标的情况下对其进行多样地修改。
[0109]例如,尽管第一实施例和第二实施例被设计为使得声音信号分析设备10再现乐曲,但仍可以修改实施例使得外部设备再现乐曲。
[0110]另外,第一实施例和第二实施例被设计为使得基于两个等级来评价拍速稳定性:拍速稳定还是不稳定。然而,可以基于三个或更多的等级来评价拍速稳定性。在该变型中,可以根据拍速稳定性的等级(稳定的程度)来可变地控制目标。
[0111]另外,在第一实施例中,提供了四个单位部分作为判断部分。然而,单位部分的数量可以多于或小于四个。而且,选为判断部分的单位部分可以不是时间序列上连续的。例如,单位部分可以在时间序列上交替地选择。
[0112]而且,在第一实施例中,拍速稳定性是基于相邻的单位部分之间的拍速之差来判断的。然而,可以基于判断部分的最大的拍速值和最小的拍速值之差来判断拍速稳定性。
[0113]而且,第二实施例选择了表示作为观测值的起振特征值XO和BPM特征值XB的同时观测的概率的最可能的观测似然序列的概率模型。然而,选择概率模型的标准不限于这些实施例。例如,可以选择最大后验分布的概率模型。
[0114]另外,在第二实施例中,每个帧的拍速稳定性是基于每个帧的“BPM率的方差”来判断的。然而,类似于第一实施例,通过使用各帧的各个估计的拍速值,可以计算出各帧中拍速的变化量,从而根据该计算的结果来控制目标。
[0115]另外,在第二实施例中,计算极大似然状态的序列Q来确定每个帧中节拍的存在/不存在和拍速值。然而,可以基于与帧ti的似然度C中包含的极大似然度C对应的状态qb,n的节拍周期b和帧的数量η的值来确定帧中的节拍的存在/不存在和拍速值。该变型可以减少分析所需的时间,这是因为该变型不需要计算极大似然状态的序列Q。
[0116]另外,为了简洁起见,第二实施例被设计为使得每个帧的长度为125ms。然而,每个帧可以具有更短的长度(例如,5ms)。减小的帧长度可以有助于改善与节拍位置和拍速的估计相关的分辨率。例如,增强的分辨率能够使拍速估计以IBPM增加。
【权利要求】
1.一种声音信号分析设备,包括: 声音信号输入装置,其用于输入表不乐曲的声音信号; 拍速检测装置,其用于通过使用所输入的声音信号来检测所述乐曲的每个部分的拍速; 判断装置,其用于判断所述拍速的稳定性;以及 控制装置,其用于根据由所述判断装置判断的结果来控制特定目标。
2.根据权利要求1所述的声音信号分析设备,其中 所述拍速检测装置具有: 特征值计算装置,其用于计算第一特征值和第二特征值,所述第一特征值表示与节拍的存在相关的特征,所述第二特征值表示与所述乐曲的每个部分的拍速相关的特征;以及 估计装置,其用于通过从多个概率模型中选择其观测似然度的序列满足一定标准的一个概率模型来同时估计所述乐曲中的节拍位置和拍速变化,所述多个概率模型被描述为根据与所述每个部分中的节拍的存在相关的物理量和与所述每个部分中的拍速相关的物理量的结合来分类的各状态的序列,所述一个概率模型的所述观测似然度的序列中的每一个观测似然度表示所述每个部分中的所述第一特征值和所述第二特征值的同时观测概率。
3.根据权利要求2所述的声音信号分析设备,其中 所述估计装置通过从所述多个概率模型中选择最可能的观测似然度的序列的概率模型来同时估计所述乐曲中的节拍位置和拍速变化。
4.根据权利要求2所述的声音信号分析设备,其中 所述估计装置具有第一概率输出装置,其用于输出这样的概率来作为所述第一特征值的观测概率:所述概率是通过将所述第一特征值指定为根据与节拍的存在相关的物理量而定义的概率分布函数的概率变量来计算得到的。
5.根据权利要求4所述的声音信号分析设备,其中 所述第一概率输出装置输出通过将所述第一特征值指定为根据与节拍的存在相关的物理量来定义的正态分布、伽马分布和泊松分布中的任何一个的概率变量而计算出的概率,来作为所述第一特征值的观测概率。
6.根据权利要求2所述的声音信号分析设备,其中 所述估计装置具有第二概率输出装置,其用于输出所述第二特征相对于根据与拍速相关的物理量而提供的多个模板的拟合优度,来作为所述第二特征值的观测概率。
7.根据权利要求2所述的声音信号分析设备,其中 所述估计装置具有第二概率输出装置,其用于输出这样的概率来作为所述第二特征值的观测概率:所述概率是通过将所述第二特征值指定为根据与拍速相关的物理量而定义的概率分布函数的概率变量而计算得到的。
8.根据权利要求7所述的声音信号分析设备,其中 所述第二概率输出装置输出通过将所述第二特征值指定为根据与拍速相关的物理量来定义的多项分布、狄利克雷分布、多维正态分布、以及多维泊松分布中的任何一个的概率变量而计算出的概率,作为所述第二特征值的观测概率。
9.根据权利要求2所述的声音信号分析设备,其中 所述判断装置根据从所述乐曲的开端到各个部分观测的所述第一特征值和所述第二特征值来计算各个部分中的各个状态的似然度,并且根据各个部分中的各个状态的似然度的分布来判断各个部分中的拍速的稳定性。
10.根据权利要求1所述的声音信号分析设备,其中 如果各部分之间的拍速的变化量落在预定的范围内,则所述判断装置判断拍速稳定,而如果各部分之间的拍速的变化量在所述预定的范围以外,则所述判断装置判断拍速不稳定。
11.根据权利要求1至10中任一项所述的声音信号分析设备,其中 在拍速稳定的部分中,所述控制装置使所述目标在预定的第一模式下操作,而在拍速不稳定的部分中,所述控制装置使所述目标在预定的第二模式下操作。
12.—种声音信号分析方法,包括步骤: 声音信号输入步骤,其用于输入表不乐曲的声音信号; 拍速检测步骤,其用于通过使用所输入的声音信号来检测所述乐曲的每个部分的拍速; 判断步骤,其用于判断所述拍速的稳定性;以及 控制步骤,其用于根据 通过所述判断步骤判断的结果来控制特定目标。
【文档编号】G10L25/81GK104050974SQ201410092702
【公开日】2014年9月17日 申请日期:2014年3月13日 优先权日:2013年3月14日
【发明者】前泽阳 申请人:雅马哈株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1