音楽プログラミングの超入門(仮)

Python / 音楽情報処理 初心者が、初心者にも分かるような記事を書きたい。

Pythonでフーリエ変換(と逆変換)

音響信号のフーリエ変換

ここでは、離散フーリエ変換のみを扱っています。
信号処理においてフーリエ変換というと、ほとんどの場合、離散フーリエ変換を指しています。

フーリエ変換は可逆変換なので、逆変換があります。フーリエ変換・逆変換の定義式はこんな感じです。


\begin{eqnarray}
\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ 
  \ \ \ \ \ \ H(f) &=& \int_{-\infty}^{\infty} h(t)e^{-i2\pi ft}\;\;dt, \\
  h(t) &=& \int_{-\infty}^{\infty} H(f)e^{i2\pi ft}\;\;df
\end{eqnarray}

ここでは、 h(t) が入力音響信号ですね。

続きを読む

PythonでWAVファイルを読み込む

音声信号処理を行う場合、大抵、数値列をWAVファイルから読み込むことになると思います。Python でそれを行う方法を2つ紹介します。

waveモジュールを使う

wave モジュールはその名の通り、WAVファイルを扱うためのモジュールです。WAVファイルの読み込みはこんな感じにします。

続きを読む

Pythonでの信号処理とは

Pythonを使うメリット

Pythonは簡単

Pythonスクリプト言語の中でも、特に覚えるのが簡単な言語だと思う。全く触ったことがない人でも、1週間くらいで小さいプログラムなら大体書けるようになるんじゃないかな。Pythonしか触ったことのない筆者がいうのだから間違いない。

ライブラリが豊富

信号処理に限らず、Pythonは特定分野の処理を行うためのライブラリが沢山ある。それらを用いることで、効率的なコーディングや、プログラム実行時間の短縮を実現できるよ。公開されているライブラリは大抵、とても洗練されているから、自分で同じものを書くより全ての面で優れていることが多い。

続きを読む