[Scilab] ディジタル信号処理(備忘録) part1

フリーの数値計算ソフトであるScilabを利用した、信号処理の基本操作の個人メモです。


Scilabのインストールや簡単な演算と演算子の説明に関しては友人のTBVector氏の丁寧な説明ページがあるので紹介しておく。

以下に続く



音声ファイルの読み込み
[data, sf]="wavread("filename.wav");

Scilab(ショートカット)の起動ディレクトリにファイルが無ければ絶対パス記述の必要あり。
Scilabではlsやワイルドカード'*'の使用も可能。以下は例。
//WAVファイルを表示する
    -->ls *.wav
     ans =
    !smplMusic1m.wav      !
//WAVファイルを読み込む
    -->[wav, sf] = wavread("smplMusic1m.wav");
//サンプリング周波数
    -->sf
     sf  =
        44100.

音声ファイルの書き込み
wavwrite(data, sf, "filename.wav");

データ(行列)の長さ
    -->length(wav)
     ans  =
        156160.


データ(行列)の次元数(行,列)
    -->size(wav)
     ans  =
        1.    156160.


11111番目の要素を見たい(先ほど読み込んだwav)
    -->wav(1,11111)
     ans  =
      - 0.1850281


グラフを表示
    -->plot(wav);


フーリエ変換
    -->fft(wav);


逆フーリエ変換
    -->ifft(wav);


振幅特性
    -->abs(fft(wav));


位相特性
(arctanでの計算)
    -->x = fft(wav);
    -->atan(imag(x)./real(x));
MATLABでは位相角を出すangle()なんつー関数があったけど、Scilabではなかったような


インパルス列、ステップ(↓例えばこんなのを作りたい)

    --> x = [zeros(1,3),ones(1,4),zeros(1,3)];
. . . ↑ ↑ ↑ ↑  . . .
0 1  2 3  4 5 6  7 8  9


畳込み
   
    --> convol(data1,data2);


とりあえずはこのぐらいで



トラックバック(1)

このブログ記事を参照しているブログ一覧: [Scilab] ディジタル信号処理(備忘録) part1

このブログ記事に対するトラックバックURL: http://delta50.net/mt/mt-tb.cgi/124

もぼなもな書房

ディジタル・サウンド処理入門―音のプログラミングとMATLAB(Octave・Scilab)における実際 (ディジタル信号... 続きを読む

コメントする

このブログ記事について

このページは、滑稽者が2008年5月21日 16:04に書いたブログ記事です。

ひとつ前のブログ記事は「[Yahoo] Site explorer β を試してみた」です。

次のブログ記事は「[Movable Type] FC2 blogへトラックバックができない」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

友人ブログへのリンク


  • うえちょこ@ぼろぐ ―uechoco氏

  • うえちょこ@ぼろぐ

  • いそっちノート ―isocchi氏

  • いそっちノート

  • 情報科学を学ぶ大学生のブログ ―TBVector氏

  • 情報科学を学ぶ大学生のブログ

  • リココのLieと述べるブログ! ―Likoko氏

  • リココのLieと述べるブログ!

  • 何だっけ、多分何か。 ―ふらっぐ氏

  • 何だっけ、多分何か。

  • ゆーやのゆったりブログ ―ゆーや氏

  • ゆーやのゆったりブログ

  • あやなんの日記だぎゃ~ ―愛染綾那氏

  • あやなんの日記だぎゃ~

  • 黒須ぶろぐ ―黒須氏

  • 黒須ぶろぐ


    関連Webサイト

  • 準備中
  • ミク時計

    あわせて読みたい

    あわせて読みたい