Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

フラクタル音楽 〜可視化と可聴化の世界〜

3,057 views

Published on

MathPower 2016 プログラマのための数学勉強会コーナーの発表資料です。

Published in: Technology
  • Be the first to comment

フラクタル音楽 〜可視化と可聴化の世界〜

  1. 1. フラクタル音楽 〜可視化と可聴化の世界〜 MathPower 2016-10-04 岩淵 勇樹 (@butchi_y)
  2. 2. アカウント紹介  https://twitter.com/butchi_y  https://www.instagram.com/carpet_fra ctal/ #フラクタル音楽 で検索
  3. 3. ソース画像と生成された音楽
  4. 4. 自己紹介  岩淵勇樹 ( IWABUCHI Yu(u)ki )  金沢大学自然科学研究科修了  博士(工学)  面白法人カヤック HTMLファイ部・人事部  博士論文は 「図形と音声の変換方法と その応用に関する研究」
  5. 5. 用語  カーペットフラクタル(造語)  解析信号  ラスタスキャン
  6. 6. 岩淵流フラクタル生成法  カーペットフラクタル → シェルピンスキーのカーペットに 類似した汎用生成方法  代表的な有名フラクタル ◦ シェルピンスキーのギャスケット ◦ Hexaflake ◦ カントールの塵  今日はこの手法を発展させます。
  7. 7. シェルピンスキーのカーペットとは  正方形3分の1ずつ 切り抜く  それを繰り返した 極限(フラクタル)  面積0 https://en.wikipedia.org/wiki/Sierpinski_carpet
  8. 8. カーペットフラクタルとは  1×1配列→3×3配列→9×9配列 と膨張していく  配列の便宜上、「くり抜く」ではなく 「膨張」の手法をとる (→あとで縮小すればいい) 1 1 1 1 0 1 1 1 1 0 0 0 0 0 0 0 0 0 1 0を に置換 を に置換
  9. 9. 膨張していく様子 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 0 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 1 1 1 1 0 1 0 0 0 1 0 1 1 1 1 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 0 1 1 0 1 1 1 1 1 1 1 1 1 1 → →
  10. 10. カーペットフラクタルの多様性 以外の配列を指定(大きさも自由) することにより汎用的に使える 1 1 1 1 0 1 1 1 1 0 1 1 1 1 1 1 1 1 0 0 1 1 0 0 1 1 1 1 1 とか 1 1 1 1 0 1 1 1 1 とか とか
  11. 11. デモ  http://jsdo.it/butchi/carpet_fractal
  12. 12. 広義のカーペットフラクタル  くり抜く部分にビットを埋め込む  例: 1 1 1 1 0 1 1 1 1 0 0 0 0 1 0 0 0 0 1 0 → →
  13. 13. ラスタスキャン  ブラウン管テレビ時代の 表示方式  左から右へ、そして 上から下へ  幾何学模様との 相性がいいことが判明 W. S. Yeo, et al. Raster Scanning: A New Approach to Image Sonification, Sound Visualization, Sound Analysis And Synthesis
  14. 14. ラスタスキャン
  15. 15. 映像  ソースのカーペットは静止画で味気ない  解析信号によって音声と連動し可視化 参考: 岩淵勇樹 博士論文
  16. 16. 音を形にする Sinc関数 鋸波 三味線 ハーモニカ ギター バイオリン
  17. 17. 予備知識  三角関数 sin(t+p/2) = cos(t)  複素平面 x軸が実数部(Re)でy軸が虚数部(Im)  オイラーの公式 eiwt = cos(t) + i sin(t)  (フーリエ変換・フーリエ級数展開) (関数を三角関数に分解する)
  18. 18. 三角関数と指数関数  三角関数 (cos(a t+q))は 指数関数(ei a t+q)の 実数部(オイラーの公式より)  ばね(指数関数)の方 が自然な形 cf) |{cos(t)}’| =|-sin(t)| |{ei t}’| =|i ei t| =1
  19. 19. ヒルベルト変換 1. 音声信号を三角関数(正弦波)に分解 2. 位相を1/4周期(90度)ずらす(cosをsinに) 3. 分解した正弦波を足し合わせる ⇒ヒルベルト変換 音声信号 (例: 三角波) 6 4 2 2 4 6 1.0 0.5 0.5 1.0 6 4 2 2 4 6 1.0 0.5 0.5 1.0 6 4 2 2 4 6 1.0 0.5 0.5 1.0 6 4 2 2 4 6 1.0 0.5 0.5 1.0 = + + +… 6 4 2 2 4 6 0.6 0.4 0.2 0.2 0.4 0.6 = 6 4 2 2 4 6 1.0 0.5 0.5 1.0 6 4 2 2 4 6 1.0 0.5 0.5 1.0 6 4 2 2 4 6 1.0 0.5 0.5 1.0 + + +… ↓ ↓ ↓ ⇒ ヒルベルト変換
  20. 20. 音声信号の複素化 実数部: 元の音声信号 虚数部: ヒルベルト変換した音声信号 t t Re Im t + Re Im Re Im Re Im 複素平面に投影 (時間軸を潰す)
  21. 21. 音は形にできる Sinc関数 鋸波 三味線 ハーモニカ ギター バイオリン
  22. 22. 鳴らす  フラクタル音楽の出来上がり〜
  23. 23. Mathematicaプログラム 生成から画像出力・音声出力まで たったの3行 Mathematica素晴らしい!
  24. 24. なぜ音楽に聞こえるのか  一つのフラクタル図形が、音色と音階 と旋律合わせた音声信号を生成  カーペットのジェネレーターの高さが 偶数だと四拍子的に聞こえる
  25. 25. 更新内容  6月12日〜 2x2カーペットのシフト★  6月30日〜 2x2カーペット  7月9日〜 2x4のカーペット★★  7月17日〜 8x2のカーペット★  8月1日〜 5x2のカーペット  8月8日〜 2x5のカーペット  8月16日〜 2x3のカーペット  8月22日〜 2x4のカーペット  8月30日〜 2x13のカーペット★  9月5日〜 2x7のカーペット★  9月13日〜 3x2のカーペット  9月20日〜 4x4のカーペット★  9月20日〜 3x3のカーペット★  10月3日〜 2x2カーペットのシフト★
  26. 26. 今後の予定  これまでは0,1列がメインだったので 実数範囲で動く波形を増やしたい!  そもそもの生成方法を模索
  27. 27. おさらい 1. ジェネレーターを指定 2. カーペットフラクタル生成 3. ラスタスキャンによる可聴化 4. 解析信号による可視化
  28. 28. 聴いてください。「Real Xor」
  29. 29. これは何?  本来は整数に 適用する「BitXor」  これを間違えて 実数に適用  そして偶然現れた 音楽。
  30. 30. 1桁のBitXor  BitXor[0, 0] = 0  BitXor[0, 1] = 1  BitXor[1, 0] = 1  BitXor[1, 1] = 0
  31. 31. 複数桁のBitXor  BitXor[61, 15] == 50  6110 == 1111012  1510 == 0011112  5010 == 1100102
  32. 32. 実数のBitXor  BitXor[0.2, 0.2] == 0  BitXor[0.1, 0.2] == BitXor[0.1, 0.2]  BitXor[0.2, 0.2, 0.1] == 0.1  BitXor[0.1, 0.1, 0.2, 0.2] == 0  BitXor[hoge, hoge] == 0  BitXor[hoge, piyo, hoge] == piyo
  33. 33. 今後のフラクタル音楽候補
  34. 34. ウォルシュ行列
  35. 35. 自己加算カーペット
  36. 36. フーリエ変換カーペット
  37. 37. カオスと秩序の狭間1  「Real Xor」のランダム値に 偏りを持たせる
  38. 38. カオスと秩序の狭間2  「Real Xor」のランダム値に もっと偏りを持たせる
  39. 39. まとめ  規則的な幾何学模様をラスタスキャン すると音楽になる  フラクタルによる音楽生成を実現  様々な生成方法を模索中
  40. 40. 以上  ご清聴ありがとうございました。

×