Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
クロマベクトルって何?
Search
fkubota
March 02, 2020
Programming
1
1.9k
クロマベクトルって何?
クロマベクトルについて社内で発表した
fkubota
March 02, 2020
Tweet
Share
More Decks by fkubota
See All by fkubota
データドリブンな組織の不正検知
fkubota
0
1.9k
JupyterNotebookでのdebug入門(サンプルは説明欄にあります)
fkubota
6
12k
ルールベース画像処理のススメ
fkubota
17
15k
Kaggle日記について
fkubota
1
2.4k
MoAコンペで気づいたこと
fkubota
1
720
鳥コンペで惨敗した話とコンペの取り組み方
fkubota
1
6.4k
生産性と戦った僕の1年の記録とツールたち
fkubota
6
6.5k
Other Decks in Programming
See All in Programming
Effective Signals in Angular 19+: Rules and Helpers
manfredsteyer
PRO
0
100
useSyncExternalStoreを使いまくる
ssssota
6
1.1k
Scalaから始めるOpenFeature入門 / Scalaわいわい勉強会 #4
arthur1
1
330
創造的活動から切り拓く新たなキャリア 好きから始めてみる夜勤オペレーターからSREへの転身
yjszk
1
130
わたしの星のままで一番星になる ~ 出産を機にSIerからEC事業会社に転職した話 ~
kimura_m_29
0
180
ドメインイベント増えすぎ問題
h0r15h0
2
330
range over funcの使い道と非同期N+1リゾルバーの夢 / about a range over func
mackee
0
110
今年のアップデートで振り返るCDKセキュリティのシフトレフト/2024-cdk-security-shift-left
tomoki10
0
200
rails statsで大解剖 🔍 “B/43流” のRailsの育て方を歴史とともに振り返ります
shoheimitani
2
940
ブラウザ単体でmp4書き出すまで - muddy-web - 2024-12
yue4u
3
470
42 best practices for Symfony, a decade later
tucksaun
1
180
アクターシステムに頼らずEvent Sourcingする方法について
j5ik2o
4
280
Featured
See All Featured
[RailsConf 2023] Rails as a piece of cake
palkan
53
5k
The Art of Programming - Codeland 2020
erikaheidi
53
13k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
10
810
Being A Developer After 40
akosma
87
590k
Faster Mobile Websites
deanohume
305
30k
The Power of CSS Pseudo Elements
geoffreycrofte
73
5.4k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
59k
Why Our Code Smells
bkeepers
PRO
335
57k
Testing 201, or: Great Expectations
jmmastey
40
7.1k
BBQ
matthewcrist
85
9.4k
Code Reviewing Like a Champion
maltzj
520
39k
Transcript
クロマベクトル ってなに? fkubota
- 今日は音響特徴量で有名なクロマベクトルについて話しま す。 - あまりいい解説がないので自分で作ることにしました。(理解 の助けになればいいなとおもいます。)
今日 の ゴール 「以下の図を理解する!!」 よく見るよね
まずは 疑問を 列挙しましょう
なんで12個? (ドレミファソラシドは8個だよ?) 抜けてるところがあるけど、 この図は何がしたいの? うーん...
他にも - 音階って何? - 半音て何? - オクターブってなに? - ドレミファソラシドって何? うーん...
C C# D D# E F F# G G# A
A# B まずは 音階について 理解しましよう
音階の種類 平均律 純正律 & - 身近な楽器ではこっちが使わ れてる - 音階の間隔が一定なのが特徴 -
今日はこっちだけ話します - 和音が大事なオーケストラとか はこっち使う - 音階の間隔が一定ではない
平均律の前にオクターブの説明 ド ド 1オクターブあがると音の高さが 二倍になる (ピアノのド--->ドは高さ二倍(1オクターブあがる))
平均律とは 1オクターブを 12等分したもの!!
どういうこと? 図で説明しましょう。 ド ド 例えばド--->ドの1オクターブを12等分します (レ--->レでもなんでもいいです )
12等分と言っても、単純に分割するわけではなく、 隣り合う音の周波数の周波数比が以下のようになるように 分けます 基準の周波数を1として、 ド ド 1オクターブ高い (周波数2倍)
これが平均律で定義された音階!! そして半音、全音の定義は図の通り!! - 隣は半音違い - 2つ隣は全音違い 半音 全音 ドレミファは?
ドレミファソラシド ? 以下のように割り振られてます。 ド ド レ ミ ファ ソ ラ
シ 半音 - なんと、半音違いの関係にあるのは、「ミ」と「ファ」、「シ」と「ド」だけ でした。 - つまり、 - 「ファ」は「ミ」に比べて 2^(1/12) 倍高い - 「レ」は「ド」に比べて 2^(2/12)倍高い 余ったやつらは?
余ったやつらは? ピアノで考えるとわかりやすいです。 ド レ ミ ファ ソ ラ シ ド
ド ド レ ミ ファ ソ ラ シ
「ド」は何Hzなの? - 当然の疑問ですね。 - 国際基準があります。 - ピアノの鍵盤の真ん中付近にある 「ラ」を440Hz とする。 これが国際基準です。
ド レ ミ ファ ソ ラ シ ド 440Hz
「ラ」が決まれば「ド」 も決まる ド ラ 440Hz ド
ド ド レ ミ ファ ソ ラ シ 記号について C
C D E F G A B C# D# F# G# A# イタリア アメリカ
もうわかりましたね?
この図は、 「ドレミファソラシド」 を表しています ド レ ミ ファ ソ ラ シ
ド この図をクロマグラムと いいます
クロマべクトルとは... ある音に 「C C# D D# E F F# G
G# A A# B 」 がどの割合で含まれているのか? をあらわしています。 C C# D D# E F F# G G# A A# B 0.1 0.3 0.5 0.02 0.4 0.1 0.1 0.2 0.1 0.9 0.2 0.1 Aが一番多く含まれている !!
実装タイム!! https://github.com/fkubota/Lightning Talk/tree/master/009_chroma_vector /notebook/01_chromagram.ipynb
次は数式で理解しよう
クロマべクトルの計算方法 https://www.slideshare.net/akinoriito549/ss-23821928 :パワースペクトル :バンドパスフィルタ
少しずつ理解する - 例えばあるスペクトルで ド(261.6 Hz)と ラ(440 Hz) はどちらが多く含まれているか知 りたい。 -
どうする? ほしい周波数にバンドパスフィルタをかけて積分!!
ド(261.6 Hz) ラ(440 Hz) n = ド or ラ バンドパスフィルタを掛けて積分
「ラ」は1種類じゃない ラ ラ ラ ラ ラ 440 880 1760 220
110 オクターブ違いのラがある それぞれの「ラ」で バンドパスフィルタ を用意
「ラ」のバンドパスフィルタ群 n = ラ オクターブごとに バンドパスフィルタを掛けて積分
以上です!!
まだ残る疑問 - ピアノとギターの「ド」はなんで違う音に聞こえるの? - ピアノのド(261.6 Hz)のスペクトル見ると思った感じ と違うんだけど...
次回!! 音色について LTします!!
None