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
2k
クロマベクトルって何?
クロマベクトルについて社内で発表した
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.5k
生産性と戦った僕の1年の記録とツールたち
fkubota
6
6.5k
Other Decks in Programming
See All in Programming
ESLintプラグインを使用してCDKのセオリーを適用する
yamanashi_ren01
2
230
Внедряем бюджетирование, или Как сделать хорошо?
lamodatech
0
940
EC2からECSへ 念願のコンテナ移行と巨大レガシーPHPアプリケーションの再構築
sumiyae
3
580
テストコードのガイドライン 〜作成から運用まで〜
riku929hr
7
1.4k
『改訂新版 良いコード/悪いコードで学ぶ設計入門』活用方法−爆速でスキルアップする!効果的な学習アプローチ / effective-learning-of-good-code
minodriven
28
4.1k
watsonx.ai Dojo #6 継続的なAIアプリ開発と展開
oniak3ibm
PRO
0
170
PHPで学ぶプログラミングの教訓 / Lessons in Programming Learned through PHP
nrslib
4
1.1k
毎日13時間もかかるバッチ処理をたった3日で60%短縮するためにやったこと
sho_ssk_
1
540
React 19でお手軽にCSS-in-JSを自作する
yukukotani
5
560
Package Traits
ikesyo
1
210
良いユニットテストを書こう
mototakatsu
11
3.6k
「とりあえず動く」コードはよい、「読みやすい」コードはもっとよい / Code that 'just works' is good, but code that is 'readable' is even better.
mkmk884
6
1.4k
Featured
See All Featured
Documentation Writing (for coders)
carmenintech
67
4.5k
Art, The Web, and Tiny UX
lynnandtonic
298
20k
Java REST API Framework Comparison - PWX 2021
mraible
28
8.3k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
33
2.7k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
49k
jQuery: Nuts, Bolts and Bling
dougneiner
62
7.6k
The Power of CSS Pseudo Elements
geoffreycrofte
74
5.4k
The Straight Up "How To Draw Better" Workshop
denniskardys
232
140k
Making Projects Easy
brettharned
116
6k
Designing Experiences People Love
moore
139
23k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
28
4.5k
4 Signs Your Business is Dying
shpigford
182
22k
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