おかげさまでspamコメントが増えてきましたので、一応コメントを承認制にしました。基本的には承認します。
× [PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。 はじめに言っておきますが,数式は全く理解していないで,雰囲気だけで書いているので,中身は信用しないでください.できれば石も投げないでいただきたいですが,投げられるかもしれませぬ. FFT (Fast Fourier Transform)というのは,ようするに,複数の周波数成分からなる信号(単一でも別にいいけど,単一ならみりゃ分かる)の時間情報を捨ててスペクトル情報をみる方法であるフーリエ変換を,短い時間窓を使って連続して行うことで,スペクトル情報の推移をそれなりに追えるようにしたものである.たとえば,全体で6秒間の複合波があって,最初の2秒は10Hzのみ,次の2秒は10Hzと20Hzの複合は,次の2秒は10Hzと30Hzの複合波,というように位相が変化するとして,この複合波全体をフーリエ変換すると,得られる情報は,10Hzが一番多く(パワー値が高い,ということでいいのか?),20Hzと30Hzは10Hzの3分の1(に正確になるのかは知りませんが;石を投げてもいい)のパワーで,相互に同一の大きさである,ということになる.ここで,1秒毎,とか2秒毎のフーリエ変換を行えば,最初は10Hzだけが出ていて→次に10Hzと20Hzが出ていて→最後に10Hzと30Hzが出てくる,ということがわかるはずである,ということ.ただ,あまりにも時間窓が短いと,得られる情報が少なくなる.これもイメージだけど,たとえば100msの時間窓だと,10Hzの波は1回しか出てこないし,ちょうど窓の最初と最後で1回周期がくる,という保証もないので,多少長めに時間窓を設定せねばならない. 一方でwavelet transformによるデータは(理屈はさっぱりわからないけど),FFTに比べてリッチな時間情報を持つこ,らしい.でもなんで,と聞かれると全く答えられないので,時間があるときに勉強したい.まず数3Cからかな….高校時代は文系だったので,なにせ.今もばりばりの文系だけど. PR 大「脳」洋航海記 11/10の記事から,θ律動がPFCとMTLの機能連絡を担う.おお,これは読まなきゃ.メモメモ.はてなブックマークとか使うと,こういうのには便利なのかなー. 覚書.みんなで訳すると混乱しますが,これで一応統一しましょう.文意が合わない場合は教えてください.user-specified (specify):ユーザ指定の(指定する).argument:(独立)変数.configuration structure:構造体(ひとつの変数の中に,複数のデータセットが存在するもののこと,という理解で合ってるかな?).call:(関数を)呼ぶ,呼び出す.その関数の機能を実施する.cell-array:セル配列の.string;文字列.matrix:行列.nx3 matrixは,n (たとえばトライアル数) * 3の行列,という意味(だろう).function:(順番が前後したな)関数.matlabの場合,*.mファイルに格納されている. twitterでもつぶやいていたんですが,.mファイルを.sciファイルにコンバートできたらいいよな,と思って,試してみました.あ,scilabはこのあたり(Scilab日本語版)からどうぞ. それで,実はScilab 5.1.1では,(Mac OS Xでは)ツールバーにApplicationsという項目がありまして,そこの"Matlab to Scilab traslator"を使えば,お手軽にmファイルをsciファイルにコンバートできるようです.で,やってみたんですが….とりあえず説明を簡単に書きますと,Conversion modeでは,単一のファイル(左側)をsciファイルに変換するか,フォルダ内の全てのファイル(右側)を変換するかを選べます.Input fileでは,変換したいファイル(フォルダ内の全て,を選択している場合はそのファイルの入っているフォルダ)を選択します.一見,どのディレクトリにいても,ここでフルパスを指定するので,問題なさそうに見えますが,事前にカレントディレクトリを指定したファイル/フォルダのあるディレクトリにしておかないと,警告が出る気がします(別のことが原因かも?).Output directoryは,特に入力しなければInputと同様で,別のディレクトリに出力したい場合は,それを指定します. Optionsの,Recursive conversion, Only double value used,Generate pretty printed code.は良くわかりません.%を使って検索できないので,困ります.だれかたすけて!笑.一個分かったのは,Verbose mode (Verboseというのは,冗長さ,という意味らしい)で,これはようするにmファイルをsciファイルに変換したログをどのくらい出すか,を意味していますので,とりあえず3にしとけば間違いがないでしょう. さて,ここまでやって,さて変換!と思ったら, Warning :という警告が出ました.多分,もともとのmファイルのファイル名が長過ぎるので,途中削りましたよ,という意味でしょう.ひとつの変数で,他の変数を呼び出す場合が多々あるので,この長い文字のファイルが,他のファイルに引っかかっていれば多分呼び出しに失敗するでしょう.ということで残念ですが,やはり地道にmatlabで,コツコツ理解していこうと思います. 今のmatlab 7.5.0(win)は、カレントディレクトリウインドウでフォルダを右クリックすると、そのフォルダを勝手にmatlabpathにくわえてくれるんですね。べんりー。で、fieldtripとMNEのmatlab toolboxのフォルダをダウンロードして(場所とかはそのうち書きます)、両方のフォルダにパスを通しまして、hdr = read_header(filename)とすると、ちゃんとデータを読み込めていることがわかりました!やっほう。すごい細かいtipsかつ業界人には常識かもしれませんが、(filename)というのは、含意としては、('filename')、つまり、シングルクオーテーションで囲む必要があるのですね。こんなところで躓いたぜ。 カレントディレクトリの中にfifファイルがあるとして、名前が、date_subjectname_condition.fifとかだとすると、hdr = read_header('date_subjectname_condition.fif')としないと読み込んでくれないのですね。笑うかもしれませんが、文系にはつらいんです。 |
カレンダー
カテゴリー
プロフィール
HN:
渡辺隼人
性別:
男性
ブログ内検索
アクセス解析
カウンター
|