音源分離

スパース性基準によるF0周波数選択を用いた
Specmurtによる多重音解析
神戸大学 システム情報学研究科
◎西村大樹、中鹿亘、滝口哲也、有木康雄
研究内容
 多重音解析とは
 同時刻に様々な高さの音が存在する信号の解析
音量
多重音解析
周波数
楽譜形式
wavデータ
時間
スペクトル
時間
短時間フーリエ変換
ウェーブレット変換
ピアノロール形式
www.***.com
調波性を持つ音響信号
 基本周波数とn次高調波周波数の関係は整数n倍である
基本周波数
強
度
高調波周波数
基本周波数
強
度
線形周波数
高調波周波数
対数周波数
www.***.com
調波性を持つ音響信号
 基本周波数とn次高調波周波数の関係は整数n倍である
基本周波数
強
度
高調波周波数
基本周波数
強
度
高調波周波数
線形周波数
強
度
対数周波数
強
度
線形周波数

対数周波数
x
www.***.com
調波性を持つ音響信号
 基本周波数とn次高調波周波数の関係は整数n倍である
基本周波数
強
度
高調波周波数
基本周波数
強
度
高調波周波数
線形周波数
強
度
対数周波数
強
度
線形周波数

2 3 4
対数周波数
x
x x x
www.***.com
調波性を持つ音響信号
 基本周波数とn次高調波周波数の関係は整数n倍である
基本周波数
強
度
強
度
高調波周波数
音階が変化すると
構造も変化する
基本周波数
強
度
線形周波数
強
度
高調波周波数
音階が変化しても
構造は変化しない
線形周波数

2 3 4
対数周波数
対数周波数
x
x x x
www.***.com
Specmurtによる多重音解析
基本周波数分布と共通調波構造の畳み込みで
観測スペクトルを表現できる

*
x1
v(x)
h(x)
u (x)
x1 x2
x2
基本周波数分布
共通調波構造
観測スペクトル
www.***.com
Specmurtによる多重音解析
基本周波数分布と共通調波構造の畳み込みで
観測スペクトルを表現できる
?
x1
v(x)
h(x)
u (x)

*
x1 x2
x2
基本周波数分布
共通調波構造
観測スペクトル
Specmurt法
www.***.com
Specmurtによる多重音解析
基本周波数分布と共通調波構造の畳み込みで
観測スペクトルを表現できる
?
x1
v(x)
h(x)
u (x)
*
?
x1 x2
x2
基本周波数分布

共通調波構造
観測スペクトル
Specmurt法
www.***.com
Specmurtによる多重音解析(従来)
基本周波数分布と共通調波構造の畳み込みで
観測スペクトルを表現できる
?
x1
v(x)
h(x)
u (x)
*
?
x1 x2
x2
基本周波数分布

共通調波構造
観測スペクトル
Specmurt法
いかにモデル化するか!?
www.***.com
Specmurtによる多重音解析(提案)
基本周波数分布と共通調波構造の畳み込みで
観測スペクトルを表現できる
*
x1
v(x)
h(x)
u (x)
?
x1 x2
x2
基本周波数分布
観測スペクトルをもとに
仮定

共通調波構造
観測スペクトル
Specmurt法
www.***.com
Specmurtによる多重音解析(提案)
基本周波数分布と共通調波構造の畳み込みで
観測スペクトルを表現できる

*
x1
v(x)
h(x)
u (x)
x1 x2
x2
基本周波数分布
観測スペクトルをもとに
仮定
共通調波構造
観測スペクトル
Specmurt法
www.***.com
Specmurtによる多重音解析(提案)
基本周波数分布と共通調波構造の畳み込みで
観測スペクトルを表現できる

*
x1
v(x)
h(x)
u (x)
x1 x2
x2
基本周波数分布
観測スペクトルをもとに
仮定
共通調波構造
観測スペクトル
Specmurt法
スパース性に基づく
最も理想的な楽器情報
www.***.com
Specmurtによる多重音解析(提案)
基本周波数分布と共通調波構造の畳み込みで
観測スペクトルを表現できる

*
x1
v(x)
h(x)
u (x)
x1 x2
x2
基本周波数分布
一意に定まる
共通調波構造
観測スペクトル
Specmurt法
スパース性に基づく
最も理想的な楽器情報
www.***.com
u(x)の候補
 u(x) : 基本周波数分布
: 基本周波数
: 高調波周波数
Waveform (piano triad)
Horizontal axis : Frequency
Vertical axis : Amplitude
www.***.com
u(x)の候補
 u(x) : 基本周波数分布
: 基本周波数
: 高調波周波数
基本周波数分布
Waveform (piano triad)
Horizontal axis : Frequency
Vertical axis : Amplitude
www.***.com
u(x)の候補
 u(x) : 基本周波数分布
どのピークが基本周波数であるか
基本周波数の数(何和音であるか)
は未知
: 基本周波数
: 高調波周波数
Fundamental frequency distribution
Waveform (piano triad)
Horizontal axis : Frequency
Vertical axis : Amplitude
www.***.com
u(x)の候補
 u(x) : 基本周波数分布
: 基本周波数
: 高調波周波数
観測スペクトルのピークの組み合わせに基づいて、
u(x)の候補を大量に生成する。
Waveform (piano triad)
Horizontal axis : Frequency
Vertical axis : Amplitude
www.***.com
u(x)の各候補に対応するh(x)
 u(x) : 基本周波数分布
 h(x) : 共通調波構造
v( x)  h( x) * u( x)
h( x)  v( x) * u 1 ( x)
観測スペクトルのピークの組み合わせに基づいて、
u(x)の候補を大量に生成する。
www.***.com
u(x)の各候補に対応するh(x)
 u(x) : 基本周波数分布
 h(x) : 共通調波構造
観測スペクトルのピークの組み合わせに基づいて、
u(x)の候補を大量に生成する。
h( x)  v( x) * u 1 ( x)
より、h(x) を求める
www.***.com
最適なh(x)の探査
 理想的なh(x)は
基本周波数と高調波周波数にのみピークを持つ
基本周波数
第2高調波
第3高調波
第4高調波
第5高調波
Example of harmonic structure (piano)
www.***.com
最適なh(x)の探査
 理想的なh(x)は
基本周波数と高調波周波数にのみピークを持つ
基本周波数
Step1 : 非調波構造の棄却
第2高調波
Step2 :スパース性の計算
第3高調波
第4高調波
第5高調波
Example of harmonic structure (piano)
www.***.com
最適なh(x)の探査
 Step1 : 非調波構造の棄却
非調波構造とは、高調波成分をもたない構造
u (x)
h(x)
www.***.com
最適なh(x)の探査
 Step1 : 非調波構造の棄却
非調波構造とは、高調波成分をもたない構造
u (x)
h(x)
www.***.com
最適なh(x)の探査
 Step2 : スパース性の計算
最適なh(x) は基本周波数と高調波周波数にのみ
ピークを持つので、よりスパースであると考えられる
u (x. )
h(x)
www.***.com
最適なh(x)の探査
 Step2 : スパース性の計算
最適なh(x) は基本周波数と高調波周波数にのみ
ピークを持つので、よりスパースであると考えられる
u (x)
h(x)
Sparse
Not sparse
www.***.com
最適なh(x)の探査
 Step2 : スパース性の計算
最適なh(x) は基本周波数と高調波周波数にのみ
ピークを持つので、よりスパースであると考えられる
u (x)
L1 norm
X
x1| h( x) |
h(x)
Sparse
Not sparse
L2 norm
X
2
h
(
x
)
x1
www.***.com
最適なh(x)の探査
 Step2 : スパース性の計算
最適なh(x) は基本周波数と高調波周波数にのみ
ピークを持つので、よりスパースであると考えられる
u (x)
L1 norm
X
x1| h( x) |
h(x)
Sparse
Not sparse
L2 norm
X
2
h
(
x
)
x1
最適なh(x)
www.***.com
基本周波数分布u(x)の決定
 最適なh(x) に対応するu(x)が基本周波数分布
最適なu (x)
最適な h(x)
www.***.com
実験
 Piano楽曲 (13秒)
RWC-MDB-C-2001 No. 43: Sicilienne op.78
6
 u(x)の候補数:  6 C k  63
k 1
 ウェーブレット変換「
Observed spectrum
Horizontal axis : Time
Vertical axis : Note number
www.***.com
結果
解析結果(しきい値処理後)
MIDI data
Horizontal axis : Time
Vertical axis : Note number
www.***.com
結果
 Piano楽曲 (13秒)
93%
Accuracy
92%
92.5%
91.6%
91%
90%
89.2%
89%
88%
87%
提案手法
(L1 norm)
提案手法
(L2 norm)
従来手法
www.***.com
今後の課題
 様々な楽器での実験
 今のところピアノでの正解率は高いが他の楽器ではどうか?
 オクターブ違いを含む和音の解析
 今の手法では単音とオクターブ違いの区別はつかない
 2種類以上の楽器を含む楽曲での解析
 Specmurtを離れた、もっと別の手法が必要?
www.***.com
ご清聴ありがとうございました
www.***.com
Specmurt法
 線形周波数領域ではなく、対数周波数領域で信号を扱う
 基本周波数とn次高調波周波数の関係は整数n倍である
基本周波数
高調波周波数
線形周波数の場合
線形周波数領域では基本周波数が
Δω変化するとき、n次高調波周波数は
それぞれnΔω変化してしまう

2 3 4
www.***.com
Specmurt法
 線形周波数領域ではなく、対数周波数領域で信号を扱う
 基本周波数とn次高調波周波数の関係は整数n倍である
基本周波数
高調波周波数
対数周波数の場合
対数周波数領域では基本周波数が
Δx変化するとき、全ての高調波周波数も
Δx変化する
x
x x x
www.***.com
Specmurt法
 基本周波数分布 (和音) : u (x)
 共通調波構造 (音色の倍音構造) : h(x)
 多重音スペクトル (観測情報) : v(x)
と定義すると、 v(x) は以下のように
v( x)  h( x) * u( x)
h(x) と u (x) の畳み込みで表現される
www.***.com
Specmurt法
多重音解析は基本周波数分布 )x ( u を求めることであるため
u( x)  h( x)1 * v( x)
と変形する
共通調波構造 h(x) が既知であるなら、畳み込みの定理より、
フーリエ変換、逆フーリエ変換を用いて u (x) を得ることができる
www.***.com
Specmurt法
 Specmurtによる従来のアプローチ方法
1. 自然音をもとに、事前知識によって
共通調波構造 h(x) を仮定する方法
2. 非線形写像や最少二乗法によって
準最適な h(x) を求める方法
 いずれも共通調波構造 h(x) をいかにモデル化するかに焦点がある
しかしながら h(x) は同じ楽器でも音階によって微妙に異なる
異なる音階の組合せである和音の解析において、 h(x) の形にそこま
で拘らないでもよいのでは?
www.***.com
提案手法
 観測情報 v(x)に注目
 v(x) 波形のピークは一般に、基本周波数と高調波周波数
三和音の波形の例
横:対数周波数
縦:強度
:基本周波数
:高調波周波数
www.***.com
提案手法
 正しいピークの組合せが解(基本周波数分布)
 しかし普通は基本周波数がいくつあるのかわからず、
どのピークが基本周波数でどのピークが高調波周波数なのか
わからない
:基本周波数
:高調波周波数
正しいピークの組合せ = 基本周波数分布
(全ての基本周波数を取り出し、高調波周波数は除去)
 どうやって正しいピークの組合せを選ぶのか?
www.***.com
提案手法
 観測スペクトルから得られる様々なピークの組合せをuˆi ( x) と
し、 hˆi ( x) を計算してみる
 Specmurt法で用いる v( x)  h( x) * u ( x) を変形して
hˆi ( x)  uˆi ( x)1 * v( x) とすることで各ピークの組み合わせ
に対応する hˆi ( x) が得られる
 正しいピークの組合せのuˆi ( x) で得られた hˆi ( x) は間違った
ピークの組合せで求めたものに比べて理想的な構造を持って
いると考えられる
www.***.com
提案手法
 理想的な共通調波構造 h(x)
右図のようにピークは
基本周波数成分と
高調波周波数成分
楽器によってそれぞれの
高調波周波数における強度は
異なるが、高調波周波数の
発生する位置は決まっている
基本周波数成分
2次高調波周波数成分
3次
4次
5次
7次
9次
理想的な共通調波構造 h(x) の例
www.***.com
提案手法
 得られた hˆi ( x) の中から
~
理想的な共通調波構造に最も近いものh ( x) を探す
基本周波数成分
 基本周波数と
高調波周波数成分をもち、
それ以外にピークを
持たない(スパースである)
ものを探す
2次高調波周波数成分
3次
4次
5次
7次
9次
理想的な共通調波構造 h(x) の例
www.***.com
提案手法
~
 h ( x) の決定方法
 Step1
hˆi ( x) のうち、
高調波周波数成分を
持たないものの棄却
基本周波数成分
2次高調波周波数成分
 Step2
各 hˆi ( x)のスパース性を
調べる
最もスパースなものを
~
h ( x) とする
3次
4次
5次
7次
9次
理想的な共通調波構造 h(x) の例
www.***.com
提案手法
 スパース性の計算方法
~
 実際に得られる h ( x) は本来ピークのない部分にもわずかなピークが
現れるため、L1ノルムやL2ノルムのような各値の大きさを考慮できるも
のを適用する
~
~
 h ( x)  hˆ~i ( x) であるとすると i は以下のように
X
~
i  arg min x1| hi ( x) |
i
または
X
~
i  arg min x1 hi ( x)2
i
と計算される
www.***.com
提案手法
~
 得られた h ( x) に対応するu~ ( x) が解として一意に決まる
 以上の手順を全ての短時間フレームごとに実行する
www.***.com
実験
 ピアノ3和音(A3, C4, E4)0.53sの解析
観測スペクトル
横軸:時間
縦軸:対数周波数
理想的な解析結果
www.***.com
実験
L1ノルムによる結果
www.***.com
実験
L2ノルムによる結果
www.***.com
実験
 実験結果(正解率)
提案手法
(L1ノルム)
提案手法
(L2ノルム)
L0ノルム
従来手法
(自然音
Specmurt)
提案手法
(反復
Specmurt)
60.7%
77.6%
0%
7.5%
25.8%
 提案手法による多重音解析の可能性が示せた
www.***.com