情報処理学会 音楽情報科学研究会 研究報告
99-MUS-31-16, Vol.99, No.68, August 1999.

音 楽 情 報 科 学 31–16（１９９９． ８． ８）

実世界の音楽音響信号を対象としたメロディーとベースの音高推定
後藤 真孝
電子技術総合研究所

goto@etl.go.jp
あらまし

本稿では，複数の楽器音が混在したモノラルの音楽音響信号に対して，メロディーとベースの音高を推定する手法を提案する．従来の音高推定や音源分離手法は，高々三つの音の混合音しか扱えず，市販の CD によるジャズやポピュラー音楽の音響信号には有効に機能しなかった．本手法は，安定に抽出できない基本周波数成分には依存せず，意図的に制限した帯域の高調波成分が支持する最も優勢な音高を求める．その際，EM アルゴ リズムを用いて各音高が相対的にどれくらい優勢かを推定し，マルチエージェントモデルを導入して音高の時間的な軌跡の連続性を考慮する．本手法を実装したシステムによる実験の結果，実世界の音響信号に対し，メロディーとベースの音高をリアルタイムに推定できることが確認された．

F0 Estimation of Melody and Bass Lines
in Real-world Musical Audio Signals
Masataka Goto
Electrotechnical Laboratory
1-1-4 Umezono, Tsukuba, Ibaraki 305-8568 Japan
Abstract

This paper describes a method for estimating the fundamental frequency (F0) of melody and basslines in monaural audio signals containing sounds of various instruments. Most previous methods premised mixturesof a few sounds and had great diﬃculty dealing with audio signals sampled from compact discs. Our method does
not rely on the unreliable F0’s component and obtains the most predominant F0 supported by harmonics within an
intentionally limited frequency range. It estimates relative dominance of every possible F0 by using the ExpectationMaximization algorithm and considers F0’s temporal continuity by introducing a multi-agent model. Experimental
results show that our real-time system can detect the melody and bass lines in real-world audio signals.

1pact disc) などに収録されている，歌声や複数種類のはじめに楽器音を同時に含むモノラルの音楽音響信号を対象

本研究の最終的な目標は，実世界の複雑な音楽音に，メロディーとベースの音高 (本稿では基本周波数

響信号を，人間と同程度まで理解できる処理モデルの意味で用いる) を推定する処理を実現する．西洋音を実現することである．その第一段階として，これま楽において楽曲の中核を担うメロディーと，調性に密では音楽音響信号を対象としたビートトラッキング

接に関連するベースの理解は，音楽的に訓練された

1)∼5)．そこでは，まず最初人と訓練されていない人のいずれにとっても基本的に，音楽的に訓練されていない人でも可能な程度にな能力であり，それらの音高推定の実現は重要な研究

音楽を理解するモデルを構築し ，その後，訓練され課題である．さらに，音高推定の結果は，自動採譜，た音楽家が理解できる程度まで音楽を理解するモデ

曲検索のための楽曲情報の自動インデキシング，計算の研究をおこなってきた

4),5)

．

機によるライブ演奏の支援，過去の優れた演奏録音

そして，人間は必ずしも音響信号から楽譜に相当すに対する演奏分析，CD を利用したカラオケの伴奏トるシンボル情報を正確に得て音楽を理解していない

ラックの自動生成等の，様々なアプリケーションにおという立場から，音響信号を出発点として音符等のいて有用である．

ルへと拡張するアプローチの重要性を指摘した

シンボルを抽出せずに音楽的な処理を実現してきた．

多数の音源の音が混ざり合ったモノラルの音響信

本研究ではその第二段階として，市販の CD (com-

号中から，ある特定の音源の音高を推定することは，−91−

非常に困難な課題である．従来，音高推定手法の多振幅を Ai (t) とすると，これらは以下のように表さ

くは，単一音のみか，非周期的な雑音を伴った単一音

れる．

6)∼10)．音源分

Dm (t) = {Fm (t), Am (t)}(1)

離や自動採譜の研究では，複数の楽器による混合音

Db (t) = {Fb (t), Ab (t)}(2)

を収録した音響信号を対象としていたに対して，各音を分離したり各音に対応するシンボ
ルを得る処理が取り組まれてきたが 11)∼18) ，それらは高々三つの楽器音や歌声が同時に鳴る演奏しか扱うことができず，市販の CD による複雑な音響信号に対して音高を推定することはできなかった．CD による音響信号からボーカル音を分離する研究 19) も報告されているが，事前に与えたボーカル音の楽譜 (パート譜) との DP マッチングが不可欠であり，本研究のような入力信号の楽譜がない一般的な場合には適用できなかった．このように，複数種類の楽器音や歌声を含む実世界の音楽音響信号に対して，メロディーとベースの音高を推定する手法はまだ実現されていな
かった．

つまり，ここでは音符のような楽譜表現にシンボル化
することは敢えて考えず，基本周波数と振幅の連続値の変化として メロディーラインとベースラインを求める．
混合音に対して音高推定することが難しい本質的な理由の一つに，時間周波数領域において，ある音の周波数成分が同時に鳴っている他の音の周波数成分と重複することが挙げられる．例えば，歌声，鍵盤楽器 (ピアノ等)，ギター，ベースギター，ド ラムス
等で演奏される典型的なポピュラー音楽では，メロディーを担う歌声の高調波構造の一部 (特に基本周波数成分) は，鍵盤楽器，ギターの高調波成分やベース
ギターの高次の高調波成分，スネアド ラム等の音に

本稿では，そのような音響信号に対してメロディーとベースの音高推定を可能にするために，混合音中で最も優勢な音高を推定する手法を提案する．本手法
は，各音の高調波構造に対応する確率分布の混合分
布 (重み付き和) として混合音をモデル化する．その重みの値を EM (Expectation-Maximization) アルゴ
リズム 20) を用いて推定することで，基本周波数成分の存在に依存せずに，最も優勢な高調波構造を求めることができる．メロディーは中高域において最も優含まれるノイズ成分などと頻繁に重複する．そのため，各周波数成分を局所的に追跡するような手法は，複雑な混合音に対しては安定して機能しない．基本周波数成分が存在することを前提に高調波構造を推定する手法もあるが，そのような手法は，ミッシングファンダ メンタル (missing fundamental) 現象☆1を扱
えないという大きな欠点を持つ．さらに，同時に鳴っている他の音の周波数成分が基本周波数成分と重複すると，有効に機能しない．

勢な高調波構造を持ち，ベースは低域において最も優勢な高調波構造を持つことが多いため，これを意図的に制限した周波数帯域に対して適用すれば ，メロディーとベースの音高が推定できる．さらに本手法
では，マルチエージェントモデルを導入し，音高の時間的な軌跡を追跡しながら安定した推定を実現する．
提案手法をリアルタイムに実行するシステムを分メロディーとベースの音高を推定する際の主要な課題は，以上を考慮して次の三つにまとめられる．

(1) 多数の音源の中で，どのようにしてメロディーとベースに着目するか．
(2) 音源数が不明な混合音に対して，どのようにして音高を推定するか．

験をおこなった．その結果，単音のメロディーとベー(3) 音高の候補が複数あるときに，どのようにして適切な音高を選択するか．

スを含む，ポピュラー音楽，ジャズ，クラシックの楽本研究では，以下の三つを仮定してこれらを解決する．

曲 10 曲に対して，メロデ ィーとベースの音高を推定• メロディーとベースは高調波構造を持つ．ただし ，基本周波数成分の有無は問わない．

散環境で実装し，CD による音楽音響信号を用いて実できることを確認した．

2• メロディーは中高域において最も優勢な (パワーの大きい) 高調波構造を持ち，ベースは低域において最も優勢な高調波構造を持つ．

メロディーとベースの音高推定
本研究では，モノラルの音楽音響信号に対し，その• メロディーとベースの音高は，発音中の時間的な軌跡が連続する傾向を持つ．

中のメロディーラインとベースラインを推定する問
題を解く．メロディーは他よりも際立って聞こえる単音の系列，ベースはアンサンブル中で最も低い単音の系列であり，その時間的な変化の軌跡をそれぞれメ
ロディーライン Dm (t)，ベースライン Db (t) と呼ぶ．
時刻 t における基本周波数 (F0) を Fi (t) (i = m, b)，以上は多くの場合に当てはまる妥当な仮定である．
☆1
基本周波数成分が存在しない，あるいは非常に小さい場合でも，高調波成分によって基本周波数に相当する高さが知覚される現象である．メロディー (特に歌声で起きやすい) やベースの音でも，基本周波数成分が非常に小さいことがある．

−92−

各課題に対応する本研究の解決法を以下に示す．

音響信号(1) メロディーを求める場合は中高域に，ベースを求める場合は低域に周波数帯域を意図的に制限し，その帯域に含まれる周波数成分が，高調波成分として最も支持するような高調波構造の音高を推定する．その際，その帯域に基本周波数成分が含まれているかど うかは問わない．

瞬時周波数の算出

メロディーライン用のＢＰＦ ベースライン用のＢＰＦ

周波数成分の候補
基本周波数の確率密度関数の推定
基本周波数の確率密度関数

特徴検出器に重なり合うため，その帯域を意図的に避けることが重要となる．このような基本周波数成分を積極的に用いない手法は，シンギングフォルマント (singing

formant) とも関連があると考えられる．シンギング
フォルマントとは，男性のオペラ歌唱中の母音が，スペクトル包絡の 2.8 kHz 付近に強いピークを持つ現象
である☆2 ．オーケストラの大きな伴奏音の平均エネルギー分布は 450 Hz 付近に最大値を持ち，その帯域
では歌声の基本周波数成分をマスクしてし まう．しかし，シンギングフォルマントがあることによって，高域に存在する歌声の高調波成分が十分優勢となるため，聴衆は歌声を聞き取ることができる 21) ．
さらに，本研究に関連する音響心理学の知見として，高調波構造を持つ音に関して，文献 22) では，人メロディーライン

ベースライン

図 1: 優勢な音高の推定手法の処理の流れ

間はかなり限定された帯域の情報を主に用いて音の高さの知覚を得ていることが報告され，文献 23) では，
約 1.4 kHz 以下の基本周波数を持つ音の高さの知覚が，基本周波数成分でなく第 2 次以上の高調波成分によって決まることが報告されている．ただし，これらは単一音の知覚に関する報告であり，本研究を直接支持するものではない．

優勢な音高の推定手法

3

本研究で提案する，最も優勢な音高を推定する手法の処理の流れを図 1 に示す．まず，入力音響信号に対してマルチレート信号処理をおこなって瞬時周波数を計算し ，瞬時周波数に関連した尺度に基づいて周波数成分の候補を抽出する．次に，2 種類のバンド
パスフィルタ ( メロディーライン用とベースライン用)を適用し ，それぞれの出力に基づいて，基本周波数(本章では以下，音高ではなく，より正確なこの用語を用いる) の確率密度関数を求める．そして，マルチ
エージェントモデルを導入し，その確率密度関数の中で有望な各ピークの軌跡を異なるエージェントが追跡して，それぞれの信頼度を評価する．最後に，最も信頼度の高いエージェントが持つ優勢な基本周波数の軌跡を出力する．

3.1☆2 ただし，本研究の適用範囲はオペラ歌唱に限定してはいない．

ポピュラー音楽等でも，メロディーの歌声が混合音中で十分聞き取りやすいように通常はミックスダウンがなされており，シンギ
ングフォルマントがなくても，中高域に存在するメロディーの高調波成分が，伴奏に対して十分優勢になっていると考えられる．

ractio
n エージェント

最も優勢な基本周波数の軌跡

特に，メロディーの音高を推定する際に，基本周波数付近の帯域では，様々な音の周波数成分が頻繁

エージェントInt
エージェントe

ベースラインの推定(3) 複数の優勢な音高があるときに，それぞれの時
間的な軌跡の連続性を考慮し ，最も安定してパワーの大きい軌跡を持つ音高を出力とする．このような軌跡の追跡処理を実現するためにマル
チエージェントモデルを導入し，複数のエージェ
ントがそれぞれ異なる音高を追跡することで，安定な音高推定結果を得る．

周波数帯域の制限

メロディーラインの推定(2) 音源数を仮定せず，対象とするあらゆる音高の高調波構造に対応する確率分布を考え，その混合分布 (重み付き和) として観測した周波数成分をモデル化する．そして，その重みの値を EM(Expectation-Maximization) アルゴリズム 20) を用いて推定する．EM アルゴ リズムは，隠れ変数を含む確率モデルに対して最尤推定をおこなう
ための反復アルゴリズムであり，局所最適解を求められる．ここで，最も大きな重みの値を持つ確率分布は，その時点で最も優勢な高調波構造であるとみなせるため，あとはその音高を求めればよい．この手法は基本周波数成分の存在に依存しな
いため，ミッシングファンダ メンタル現象も適切に扱える．

周波数成分の候補の抽出

瞬時周波数の算出

本手法では，まず，フィルタバンクの各出力信号に対し ，位相の時間微分である瞬時周波数 24),25) を計算する．ここでは，Flanagan の手法 24) を用い，短時

−93−

FFT
FFT
音響信号 16 kHz
FFT
デシメータ 8 kHz
2
FFT
デシメータ 4 kHz
デシメータ 2 kHz
1kHz
FFT
デシメータ
デシメータ = ローパスフィルタ (0.45 fs) + ダウンサンプラー

3.6-7.2
kHz

周波数成分の候補の抽出

3.2

1.8-3.6kHz

0.9-1.8フィルタの中心周波数からその瞬時周波数への写

0.45-0.9

像に基づいて，周波数成分の候補を抽出する 8)∼10) ．

kHz

kHz

0-0.45
kHzある STFT フィルタの中心周波数 ω からその出力の瞬時周波数 λ(ω, t) への写像を考える．すると，もし

図 2: マルチレートフィルタバンクの構成

周波数 ψ の周波数成分があるときには，ψ がこの写像の不動点に位置し，その周辺の瞬時周波数の値はほ間フーリエ変換 (STFT) の出力をフィルタバンク出力

ぼ一定となる 10) ．つまり，全周波数成分の瞬時周波と解釈して，効率良く瞬時周波数を計算する．入力音

数 Ψf は，次式によって抽出することができる 27) ．

(t)

(t)

響信号 x(t) に対する窓関数 h(t) を用いた STFT が ∞X(ω, t) =x(τ )h(τ − t)e−jωτ dτ
(3)

Ψf = { ψ | λ(ψ, t) − ψ = 0,∂(λ(ψ, t) − ψ) < 0}∂ψ−∞

= a + jb(4)で定義されるとき，瞬時周波数 λ(ω, t) は次式で求めることができる 24) ．

a ∂b − b ∂a∂tλ(ω, t) = ω + ∂t2
a + b2(6)(t)

これらの周波数成分のパワーは，Ψf の各周波数における STFT パワースペクトルの値として得られる(t)ため，周波数成分のパワー分布関数 Ψp (ω) を次の(5)ように定義できる．
Ψ(t)p (ω) =

ここで窓関数 h(t) として，最適な時間周波数の局所化を与えるガウス関数に 2 階のカーディナル B-スプライン関数を畳み込んで作成した時間窓 10) を用いる．

3.3

(t)

| X(ω, t) | if ω ∈ Ψf0otherwise(7)

周波数帯域の制限

ただし，文献 10) では単一音を前提に，窓関数を基本抽出した周波数成分に重み付けすることで，周波数周波数に応じて適切に設定することの重要性が指摘されていたが，ここでは一つの STFT 窓内に異なった
基本周波数が混在し うるため，h(t) はある一つの音

帯域を制限する．ここでは，メロディーラインとベー
スライン用に，二種類のバンド パスフィルタ (BPF)を用意する．メロディーライン用の BPF は，典型的の基本周波数には最適化されていない．
この瞬時周波数を計算するのに，単一の STFT のみを用いたのでは，ある周波数帯域における時間分
解能や周波数分解能が悪くなってしまう．そこで，マルチレートフィルタバンク 26) を構成し，リアルタイ
ムに実行可能という制約のもとで，ある程度妥当な
時間周波数分解能を得る．

なメロディーラインの主要な高調波成分の多くを通過させることができ，かつ，基本周波数付近の重複が頻繁に起きる周波数帯域をある程度遮断できるように設計する．一方，ベースライン用の BPF は，典型的なベースラインの主要な高調波成分の多くを通過させることができ，かつ，他の演奏パートがベースラ
インよりも優勢になるような周波数帯域をある程度設計したバイナリツリー状のフィルタバンクの構遮断できるように設計する．

成を図 2 に示す．ツリーの各分岐後において，アンチエリアシングフィルタ (FIR ローパスフィルタ) と

現在の実装で用いた BPF の周波数応答を図 3 に示す．本稿では以下，対数スケールの周波数を cent の
1/2 ダウンサンプラーによって構成されるデシメータ
単位 (本来は音高差 (音程) を表す尺度) で表し，Hz で(decimator) によって，音響信号をダウンサンプリン
表された周波数 fHz を，次のように cent で表された
グする．各デシメータのローパスフィルタの遮断周波
周波数 fcent に変換する．
fHz
数は 0.45 fs (fs は各分岐における標本化周波数) で
fcent = 1200 log2 REF(8)Hz
3ある．現在の実装では，音響信号を標本化周波数 16−5(9)REFHz = 440 × 2 12
kHz，量子化ビット数 16 bit で A/D 変換し，それが平均律の半音は 100 cent に，1 オクターブは 1200 cent
最終的に標本化周波数 1 kHz までダウンサンプリンに相当する．
グされる．STFT の窓幅は 512 点で，ツリーのそれぞれの葉において時間遅延を補償しながら高速フーリ
ベースライン用のＢＰＦ
メロディーライン用のＢＰＦ
エ変換 (FFT) によって計算する．その際，FFT のフ 1
レームを 16 kHz において 160 点ずつシフトするため，
フレームシフト時間 (1 フレームシフト ) は 10 msec と 0 cent 1200 cent 2400 cent 3600 cent 4800 cent 6000 cent 7200 cent 8400 cent 9600 centなる．このフレームシフトを，すべての処理の時間単 16.35 Hz 32.70 Hz 65.41 Hz 130.8 Hz 261.6 Hz 523.3 Hz 1047 Hz 2093 Hz 4186 Hz
図 3: バンド パスフィルタ (BPF) の周波数応答
位とする．

−94−

周波数 x cent での BPF の周波数応答を BP Fi (x)

題を解けばよいことがわかる．θ (t) の最尤推定量は，(i = m, b) とし ，周波数成分のパワー分布関数を
(t)Ψp (x) とすると ，BPF を 通過し た周波数成分は
(t)
(t)
BP Fi (x)Ψp (x) と表せる．ただし，Ψp (x) は，周波(t)
数軸が cent で表されていることを除けば Ψp (ω) と同じ関数である．ここで，次の段階の準備として，BPF(t)を通過した周波数成分の確率密度関数 pΨ (x) を定義する．
(t)BP Fi (x) Ψp (x)(t)
pΨ (x) =(10)
P ow(t)P ow(t) は BPF を通過した周波数成分のパワーの合計を表す．


次式で定義される平均対数尤度を最大化することで∞P ow (t) =

−∞

3.4

BP Fi (x) Ψ(t)p (x) dx(11)基本周波数の確率密度関数の推定

それぞれの BPF を通過した周波数成分の候補に対し ，各高調波構造が相対的にどれくらい優勢かを表す基本周波数の確率密度関数を求める．そのために(t)

本手法では，周波数成分の確率密度関数 pΨ (x) が，高調波構造を持つ音をモデル化した確率分布 (音モデ得られる． −∞1. (E ステップ )平均対数尤度の条件付き期待値 Q(θ (t) |θ(t) ) を

率密度関数を p(x|F ) とすると，その混合分布モデル

θ(t) = {w(F ) | Fli ≤ F ≤ Fhi }計算する．

Q(θ(t) |θ(t) )
 ∞
(t)
=
pΨ (x) EF [log p(x, F ; θ (t) ) | x; θ(t) ] dx

(12)

−∞

(13)

(17)
ここで，条件付き期待値 EF [a|b] は，条件 b により決定される確率分布を持つ隠れ変数 F に関する，a の期待値を意味する．

ここで，Fhi と Fli は，許容される基本周波数の上限と下限であり，w(t) (F ) は，次式を満たすような，音モデル p(x|F ) の重みである．
 Fhi
w(t) (F ) dF = 1

2. (M ステップ )(14)

Q(θ(t) |θ (t) ) を θ(t) の関数として最大化して，更新後の新しい推定値 θ(t) を得る．

Fli

CD 等による実世界の音響信号に対して事前に音源数を仮定することは不可能なため，このように，あらゆる基本周波数の可能性を同時に考慮してモデル化する(t)ことが重要となる．もし，観測した周波数成分 pΨ (x)がモデル p(x; θ(t) ) から生成されたかのようにモデル(t)パラメータ θ (t) を推定できれば，pΨ (x) は個々の音モデルへと分解されたとみなすことができ，その重み(t)w(t) (F ) を，基本周波数の確率密度関数 pF 0 (F ) と解
釈することができる．
(t)

pF 0 (F ) = w (t) (F ) (Fli ≤ F ≤ Fhi )(16)

EM (Expectation-Maximization) アルゴリズム 20) を用いて θ (t) を推定する．EM アルゴ リズムは，E ステップ (expectation step) と M ステップ (maximizationstep) を交互に繰返し適用することで，不完全な観測(t)
データ (この場合，pΨ (x)) から最尤推定をおこなう
ための反復アルゴ リズムである．ここでは各繰返しにおいて，パラメータ θ(t) に関して，古いパラメー
タ推定値 θ(t) を更新して新しい (より尤もらしい) パ
ラメータ推定値 θ(t) を求めていく．θ(t) の初期値には，一つ前の時刻 t − 1 における最終的な推定値を用いる．
周波数 x において観測した各周波数成分が，どの音モデルから生成されたのかを表す隠れ変数 (観測できない変数) F を導入して，EM アルゴリズムを以下のように定式化することができる．

成されたと考える．基本周波数が F の音モデルの確

Fli
(t)

(t)

pΨ (x) log p(x; θ(t) ) dx

この最大化問題は解析的に解くことが 困難なため，

ル ) の混合分布モデル (重み付き和のモデル ) から生

p(x; θ (t) ) は次式で定義できる．
 Fhip(x; θ (t) ) =w(t) (F ) p(x|F ) dF∞

θ (t) = argmax Q(θ (t) |θ(t) )

(18)

θ (t)

E ステップにおいて，式 (17) より
Q(θ(t) |θ (t) ) ∞  Fhi(t)pΨ (x)p(F |x; θ(t) ) log p(x, F ; θ (t) )dF dx=−∞ Fli(19)が得られる．この式中の完全データの対数尤度はlog p(x, F ; θ(t) ) = log(w(t) (F ) p(x|F ))(15)

つまり，混合分布中において，ある音モデル p(x|F )= log w(t) (F ) + log p(x|F ) (20)が優勢になればなるほど (w(t) (F ) が大きくなるほど )，で与えられる．次に，M ステップに関しては，式 (18)(t)
pF 0 (F ) において，そのモデルの基本周波数 F の確が，式 (14) を条件とする条件付き変分問題となっている．この問題は，Lagrange の乗数 λ を導入し，次率が高くなる．
(t)以上から，確率密度関数 pΨ (x) を観測したときに，そのモデル p(x; θ(t) ) のパラメータ θ (t) を推定する問の Euler-Lagrange の微分方程式を用いて解くことが
できる．

−95−

∂
∂w(t)

 ∞

pΨ (x) p(F |x; θ(t) ) (log w(t) (F ) +−∞log p(x|F )) dx − λ(w(t) (F ) − Fhi 1−Fli ) = 0
(t)

特徴検出器
基本周波
確率密度数の関数(21)

排他的な割り当て
エージェント生成

エージェント Interaction エージェント
追跡 エージェント

これより，


1 ∞ (t)p (x) p(F |x; θ(t) ) dx
(22)
λ −∞ Ψ
が得られる．この式において，λ は式 (14) から λ = 1と定まり，p(F |x; θ (t) ) はベイズの定理から，
w(t) (F ) p(x|F )(23)p(F |x; θ (t) ) =  Fhiw (t) (η) p(x|η) dηFliw (t) (F ) =となる．ここで，w(t) (F ) は古いパラメータ推定値である (θ(t) = {w (t) (F )})．以上から，新しいパラメー
タ推定値 w(t) (F ) を求める式は次のようになる．
 ∞w (t) (F ) p(x|F )(t)w (t) (F ) =pΨ (x)  Fhidx
(t) (η) p(x|η) dη
−∞
w
Fli
(24)
式 (24) を計算するためには，音モデルの確率密度関数 p(x|F ) を仮定する必要がある．これは，基本周
波数が F のときに，その高調波成分がどの周波数にどれくらい現れるかをモデル化したものである．本
研究では，メロディーライン (i = m) とベースライン (i = b) 用に，次のような高調波構造の音モデルを仮定する．

p(x|F ) = α

Ni


追跡

追跡
時間

周波数

図 4: マルチエージェントモデルによる基本周波数の継時
的な追跡

3.5

マルチエージェント モデルによる基本
周波数の継時的な追跡

大局的な観点から基本周波数を推定するために，基本周波数の確率密度関数の時間変化において複数のピークの軌跡を継時的に追跡し ☆3 ，その中で最も優勢で安定した基本周波数の軌跡を選択する．このような追跡処理を動的で柔軟に制御するために，マルチエージェントモデルを導入する．以前提案したマル
チエージェントモデル 28) では，処理中はエージェン
トの数が固定されていたが，今回のモデルでは，残差駆動型アーキテクチャ 16) のようにエージェントの生成・消滅を動的におこなう．
提案するマルチエージェントモデルは，一つの特c(h) G(x; F + 1200 log2 h, Wi ) (25)h=1

徴検出器と複数のエージェントで構成される (図 4)．

(x−m)2G(x; m, σ) = √ 1 2 e− 2σ2(26)2πσここで，α は正規化係数，Ni は考慮する高調波成
分の数 (基本周波数成分も数える)，Wi2 はガウス分布
G(x; m, σ) の分散を表す．c(h) は，第 h 次高調波成分の振幅を決める関数で，本研究では c(h) = G(h; 1, Hi )
(Hi は定数) とする．この音モデルは，実世界の音響
信号中の高調波構造と完全には一致しないが，高調波構造が相対的にどれくらい優勢かを評価する目的においては有効に機能する．ただし，音記憶を導入す
るなど ，今後さらに洗練させる余地は残されている．
最も優勢な基本周波数 Fi (t) を決定するには，基本(t)周波数の確率密度関数 pF 0 (F ) (式 (15) より，式 (24)を反復計算した最終的な推定値として得られる) を最大にする周波数を求めればよい．
(t)

Fi (t) = argmax pF 0 (F )

(27)

F

しかし ，基本周波数の確率密度関数において，同時に鳴っている音の基本周波数に対応する複数のピークが拮抗すると，それらのピークが確率密度関数の最大値として次々に選ばれてしまうことがあるため，

特徴検出器は，基本周波数の確率密度関数の中で目立
つピークを拾い上げる．エージェントは基本的に，それらのピークに駆動されて軌跡を追跡していく．具体的には，各時刻において以下の処理がおこなわれる．

(1) 基本周波数の確率密度関数が求まった後，特徴検
出器は目立つピーク (最大ピークに応じて動的に変化する閾値を越えたピーク) を複数検出する．
そして，目立つピークのそれぞれについて，周波数成分のパワーの合計 P ow(t) も考慮しながら，どれくらい将来有望なピークかを評価する．これは，現在時刻を数フレーム先の時刻とみなして，ピークの軌跡をその時刻まで先読みして追跡することで実現する．
(2) 既に生成されたエージェントがあるときは，それらが相互作用しながら，目立つピークをそれに近い軌跡を持つエージェントへと排他的に割り当て
る．複数のエージェントが割り当て候補に上がる
場合には，最も信頼度の高いエージェントへと割り当てる．

このように単純に求めた結果は安定しない．したがって，次節で述べるように，基本周波数に対応するピー
クの時間的な連続性を考慮する必要がある．

☆3
本手法では，音源数を限定せずに基本周波数の確率密度関数を求めているため，適切な音源同定手法を導入することで，複数の音源を同時に追跡する問題へと拡張できる．

−96−

(3) 最も有望で目立つピークがまだ割り当てられていないときは，そのピークを追跡する新たなエー
ジェントを生成する．
(4) 各エージェントは累積ペナルティーを持っており，
それが一定の閾値を越えると消滅する．
(5) 目立つピークが割り当てられなかったエージェン
トは，一定のペナルティーを受け，基本周波数の確率密度関数の中から自分の追跡する次のピークを直接見つけようとする．もしそのピークも見つからないときは，さらにペナルティーを受ける．
さもなければ，ペナルティーはリセットされる．
(6) 各エージェントは，今割り当てられたピークがどれくらい有望で目立つかを表す度合いと，一つ前の時刻の信頼度との重み付き和によって，信頼度を自己評価する．
(7) 時刻 t における基本周波数 Fi (t) は，信頼度が高く，追跡しているピークの軌跡に沿ったパワーの合計が大きいエージェントに基づいて決定する．
振幅 Ai (t) は，基本周波数 Fi (t) の高調波成分を(t)Ψp (ω) から抽出して決定する．

4

図 5: ウィンドウの画面表示例: ド ラムスを伴うポピュラー
音楽を入力したときの周波数成分の候補 (左) と対応するメ
ロディーラインとベースラインの出力 (右)(図 5)．音響信号の出力では，検出した Di (t) に沿って 2 次の AR モデル 29) で追跡した高調波成分に基づいて，正弦波重畳モデルを用いて合成する．
本システムを分散環境で実装し ，音響信号の入出力，3 章で提案した手法の計算，中間結果や出力の視覚化といったシステムを構成する各機能を，LAN(Ethernet) 上に分散した異なるプロセスとして実行できるようにした．その際，システムの拡張やアプリケーションの開発を容易にするために，RACP (Remote

システムの実装と実験結果

Audio Control Protocol) を設計し，それに基づいて実

音楽音響信号を入力し ，推定したメロディーライ
ンとベースラインをリアルタイムに出力するシステ
ムを，提案した手法に基づいて構築した (パラメータの値を表 1 に示す)．出力形式として，視覚化のためのコンピュータグラフィックス，聴覚化のための音響
信号，アプ リケーションで使用するための連続的に変化する数値 (タイムスタンプ付き) の三種類に対応

装した．RACP は，RMCP (Remote Music Control

Protocol)30) を音響信号の伝送用に拡張したネットワ
ークプロトコルである．提案手法の計算はパーソナル
コンピュータ (Pentium II 450 MHz CPU x 2, Linux
2.2) 上で実行され，音響信号の入出力や視覚化の処理
はワークステーション (SGI Octane R10000 250 MHz
CPU, Irix 6.4) 上で実行される．

した．コンピュータグラフィックスの出力では，時間表 2 に示すポピュラー音楽，ジャズ，クラシックの

周波数平面上をスクロールする音高の軌跡を表示す楽曲 10 曲からの抜粋を用いて，システムの動作を確るウィンド ウと，それと同期してスクロールする周認する実験をおこなった．入力は市販の CD からサン

波数成分の候補を表示するウィンド ウが提示される

プ リングしたモノラルの音響信号で，それぞれが単音のメロディーと複数種類の楽器音を含んでいる．

表 1: パラメータの値
Fhm = 9600 cent (4186 Hz)
Flm = 3600 cent (130.8 Hz)
Nm = 16
Wm = 17 cent
Hm = 5.5

Fhb = 4800 cent (261.6 Hz)
Flb = 1000 cent (29.14 Hz)
Nb = 6
Wb = 17 cent
Hb = 2.7や中域の単音楽器によるメロディーラインと，ベース
ギターやコントラバスによるベースラインを正し く検出できた．メロディーの歌声やソロ楽器が鳴っていない部分では，システムは伴奏音の中に含まれる優表 2: 実験で用いた市販の CD による楽曲
タイトル
My Heart Will Go On (Celine Dion)
Vision of Love (Mariah Carey)
Always (Bon Jovi)
Time Goes By (Every Little Thing)Spirit of Love (Sing Like Talking)
星の降る丘 (Misia)
Scarborough Fair (Herbie Hancock)
Autumn Leaves (Julian “Cannonball” Adderley)
On Green Dolphin Street (Miles Davis)
Violin Concerto in D, Op. 35 (Tchaikovsky)

実験の結果，各抜粋の多くの部分において，歌声

ジャンル
popularpopularpopularpopularpopularpopular
jazz
jazz
jazz
classical

勢な音高の軌跡を検出した．これは，提案手法は単に最も優勢な音高を推定するだけで，音源同定まではおこなっていないためである．
誤検出した箇所では，それまで追跡していたメロ
ディーやベースが鳴り続けているにも関わらず，一時的にオブ リガート等の伴奏パートの方を追跡してしまうことがあった．さらに，メロディーの発音直後が十分優勢でないときに，他の伴奏パートの追跡から−97−

メロディーの追跡に戻るのが遅れてしまい，その発音直後の軌跡が欠けることがあった．これらの誤検出は，本質的には，複数の基本周波数の軌跡の中から，目的とするパートだけを同定する機構がないために引き起こされており，今後の実装で対処していく予定
である．他の典型的な誤検出は，本来の基本周波数の半分や倍の値を推定してしまう誤りであった．

5

おわりに
本稿では，歌声や複数種類の楽器音を同時に含む

モノラルの音響信号に対して，メロディーとベースの音高 (基本周波数) を推定する手法について述べた．
本手法は，基本周波数成分の有無を問わず，意図的に制限した周波数帯域から得られる部分情報だけを利用して，最も優勢な音高の軌跡を推定できる特長を持つ．音源数を仮定せずに混合音をモデル化し，EM
アルゴ リズムを適用することで，各高調波構造が相対的にどれくらい優勢かを表す基本周波数の確率密度関数を推定することができた．さらに，マルチエー
ジェントモデルを導入することで，基本周波数の時間的な連続性を考慮しながら，最も優勢で安定な音高の軌跡を得ることができた．本手法を実装したシス
テムを用いて実験した結果，CD による実世界の音響
信号中のメロディーとベースの音高を，リアルタイムに推定できることが確認された．
提案手法により推定した基本周波数の確率密度関数は，混合音中の各高調波構造の情報を潜在的に含んでいる．そこで今後は，音源同定手法を導入して，複数の音源の音高を同時に追跡する処理も実現していく予定である．

謝 辞
本研究に対し有益な議論をして頂いた，赤穂 昭太郎 氏，速水 悟 氏に感謝する．

参考文献[1] 後藤真孝, 村岡洋一: ビートトラッキングシステムの並列計算機への実装 — AP1000 によるリアルタイム音楽情報処理—, 情報処理学会論文誌, Vol. 37, No. 7, pp. 1460–1468(1996).
[2] 後藤真孝, 村岡洋一: 音響信号を対象としたリアルタイムビー
トトラッキングシステム— コード 変化検出による打楽器音を含まない音楽への対応 —, 電子情報通信学会論文誌 D-II,
Vol. J81-D-II, No. 2, pp. 227–237 (1998).
[3] Goto, M. and Muraoka, Y.: Music Understanding At
The Beat Level — Real-time Beat Tracking For Audio Signals —, Computational Auditory Scene Analysis,
Lawrence Erlbaum Associates, Publishers, pp. 157–176(1998).
[4] Goto, M. and Muraoka, Y.: Real-time Beat Tracking
for Drumless Audio Signals: Chord Change Detection
for Musical Decisions, Speech Communication, Vol. 27,
No. 3–4, pp. 311–335 (1999).
[5] 後藤真孝: 音楽音響信号を対象としたリアルタイムビート
トラッキングに関する研究, 博士論文, 早稲田大学 理工学部

(1998).
[6] Rabiner, L. R., Cheng, M. J., Rosenberg, A. E. and
McGonegal, C. A.: A Comparative Performance Studyof Several Pitch Detection Algorithms, IEEE Trans. on
ASSP, Vol. ASSP-24, No. 5, pp. 399–418 (1976).
[7] Nehorai, A. and Porat, B.: Adaptive Comb Filtering for
Harmonic Signal Enhancement, IEEE Trans. on ASSP,
Vol. ASSP-34, No. 5, pp. 1124–1138 (1986).
[8] Charpentier, F. J.: Pitch detection using the shortterm phase spectrum, Proc. of ICASSP 86 , pp. 113–116(1986).
[9] 阿部敏彦, 小林隆夫, 今井聖: 瞬時周波数に基づく雑音環境下でのピッチ推定, 電子情報通信学会論文誌 D-II, Vol. J79-D-II,
No. 11, pp. 1771–1781 (1996).
[10] 河原英紀, 片寄晴弘, Patterson, R. D., de Cheveigné, A.:
瞬時周波数を用いた基本周波数の高精度の抽出について, 日
本音響学会音楽音響研究会 H-98-116, pp. 31–38 (1998).
[11] Chafe, C. and Jaﬀe, D.: Source separation and note
identiﬁcation in polyphonic music, Proc. of ICASSP 86 ,pp. 1289–1292 (1986).
[12] 片寄晴弘: 音楽感性情報処理に関する研究, 博士論文, 大阪大学 基礎工学部 (1991).
[13] Brown, G. J. and Cooke, M.: Perceptual Grouping ofMusical Sounds: A Computational Model, J. of New
Music Research, Vol. 23, pp. 107–132 (1994).
[14] 柏野邦夫: 音楽音響信号を対象とする聴覚的情景分析に関する研究, 博士論文, 東京大学 工学部 (1994).
[15] 植田護, 橋本周司: 音源分離のためのブラインドデコンポジ
ションアルゴ リズム, 情報処理学会論文誌, Vol. 38, No. 1,
pp. 146–157 (1997).
[16] 中谷智広, 後藤真孝, 川端豪, 奥乃博: 残差駆動型アーキテク
チャの提案と音響ストリーム分離への応用, 人工知能学会誌,
Vol. 12, No. 1, pp. 111–120 (1997).
[17] 柏野邦夫, 村瀬洋: アンサンブル実演奏の自動アンミキサ, 情処研報 音楽情報科学 98-MUS-24-5, pp. 33–40 (1998).
[18] 白土保: 二重奏音からの基本周波数分離抽出, 日本音響学会
誌, Vol. 54, No. 10, pp. 715–719 (1998).
[19] 柏野邦夫, 村瀬洋: パート譜を用いたボーカル音 分離システ
ム, 音講論集 春季 2-9-1 (1998).
[20] Dempster, A. P., Laird, N. M. and Rubin, D. B.: Maximum likelihood from incomplete data via the EM algorithm, J. Roy. Stat. Soc. B , Vol. 39, No. 1, pp. 1–38
(1977).
[21] Richards, W.(ed.): Natural Computation, The MIT
Press (1988).
[22] Ritsma, R. J.: Frequencies Dominant in the Perceptionof the Pitch of Complex Sounds, J. Acoust. Soc. Am.,
Vol. 42, No. 1, pp. 191–198 (1967).
[23] Plomp, R.: Pitch of Complex Tones, J. Acoust. Soc.
Am., Vol. 41, No. 6, pp. 1526–1533 (1967).
[24] Flanagan, J. L. and Golden, R. M.: Phase Vocoder, The
Bell System Technical J., Vol. 45, pp. 1493–1509 (1966).
[25] Boashash, B.: Estimating and Interpreting The Instantaneous Frequency of a Signal, Proc. of the IEEE ,Vol. 80, No. 4, pp. 520–568 (1992).
[26] Vetterli, M.: A Theory of Multirate Filter Banks, IEEE
Trans. on ASSP , Vol. ASSP-35, No. 3, pp. 356–372(1987).
[27] Abe, T., Kobayashi, T. and Imai, S.: The IF spectrogram: a new spectral representation, Proc. of ASVA 97 ,pp. 423–430 (1997).
[28] Goto, M. and Muraoka, Y.: Beat Tracking based on
Multiple-agent Architecture — A Real-time Beat Tracking System for Audio Signals —, Proc. of the Second
Intl. Conf. on Multiagent Systems, pp. 103–110 (1996).
[29] Aikawa, K., Kawahara, H. and Tsuzaki, M.: A neuralmatrix model for active tracking of frequency-modulated
tones, Proc. of ICSLP 96 , pp. 578–581 (1996).
[30] 後藤真孝, 根山亮, 村岡洋一: RMCP: 遠隔音楽制御用プロト
コルを中心とした音楽情報処理, 情報処理学会論文誌, Vol. 40,
No. 3, pp. 1335–1345 (1999).

−98−