問題タブ [eeglab]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
49 参照

matlab - matlab - プラグインによって実行される関数を表示できますか?

eeglab プラグインを使用して、matlab R2012b を使用しています。これは GUI を備えたプラグインですが、これは非常に便利ですが、GUI を使用するときにプラグインが実行している機能を確認したいのですが、これは可能ですか?

0 投票する
1 に答える
417 参照

matlab - WindowKeyPressFcn の呼び出しが停止する

私は EEGlab のeegplot機能 (vim スタイルのナビゲーションなど) を修正する作業を行っていWindowKeyPressFcnます。
しかし、何らかの理由でコールバックが呼び出されていません。私はしばらく問題をデバッグしてきましたが、少し迷っています。何が間違っているのかについての提案を探しています。残念ながら、eegplot関数は大きく、複雑で、やや複雑であり、簡単な例で問題を再現できませんでした。したがって、明らかに存在する関数ハンドルがある時点で使用されなくなる可能性がある理由について、一般的な提案を探していWindowKeyPressFcnます。

これまでに学んだことは次のとおりです。

  • デバッグ モードに移行するとeegplot(setup 関数 [eegplot の前半] の終了近くにブレークポイントを設定) WindowKeyPressFcn、少なくとも 1 回は実行できます。
  • ただし、関数はデバッグ中のある時点で呼び出されなくなります (一度だけ呼び出された後でも)。
  • デバッグなしで実行eegplotすると (つまり、終了して制御が返されるのを待ちます) WindowKeyPressFcn、キーを押して呼び出すことができません。関数ハンドルはWindowKeyPressFcnFigure のプロパティにまだ存在します。
  • キーWindowKeyPressFcnを押したときに が使用されていない場合でも、次のように呼び出すことができます。

    /li>

したがって、関数ハンドルはいわば「健全」ですが、キーが押されて Figure にフォーカスがある場合、何らかの理由で使用されなくなります。いつ、なぜこのようなことが起こり得るのでしょうか? この問題を理解するために確認する必要があることについてのアイデアはありますか?

更新:
WindowKeyPressFcn コールバックが一部のウィンドウ リスナーによってブロックされる場合があることがわかり、次の解決策を試しました。

動作しません - キーを押しても WindowKeyPressFcn は呼び出されません。:(

更新 2 :
動作しない別のこと:

eegplot_readkey_newキープレスに反応するために使用する機能です)

更新 3 :
そして別の 1 つが動作していません:

0 投票する
1 に答える
1270 参照

matlab - MATLAB - EEGLAB: pop_eegfiltnew() の GUI を抑制する

私は、matlab の EEGLAB パッケージのいくつかの関数を使用するいくつかのスクリプトに取り組んでいます。f( ... 'gui','off')これらの関数のほとんどは、たとえば を使用するか、同じ関数の別のバージョンを使用することにより、GUI の表示を抑制することができます。ただし、関数に対してこれを行う方法がわかりませんpop_eegfiltnew()。2 つの類似した関数はeegfilt()、関数の古いバージョンのようですが、これらの他の 2 つよりも多くの引数を持っているため、機能的には同じではありませんfirfilt()pop_eegfiltnew()

誰でもこれを回避する方法を知っていますか?

0 投票する
1 に答える
2727 参照

matlab - ロードの使用中にエラーが発生しました。ファイル matlab を読み取れません

ユーザーにファイルを選択するように求めるダイアログ ボックスを開き、EEGLAB という matlab ツールボックス用に作成された関数でそのファイルを使用しようとしています。コードは次のとおりです。

私が遭遇している問題は、次の行にあります。

これは私が得るエラーメッセージです:

ロード使用エラー ファイル '/Users/maheensiddiqui/Desktop/eeglab13_4_4b/EEG_data/Data/infant control01 および lance01 参照 Fz - TF 分析 - すべての電極/FF' を読み取ることができません: そのようなファイルまたはディレクトリはありません。pop_loadset のエラー (108 行目) TMPVAR = load('-mat', filename); newrereferencing のエラー (7 行目) EEG = pop_loadset('filename','FF','filepath','/Users/maheensiddiqui/Desktop/eeglab13_4_4b/EEG_data/Data/infant control01 and lance01 ref Fz - TF 分析 - すべての電極/ ');

ここで、最初にポップアップ ダイアログ ウィンドウを実行しない場合 (つまり、私が持っているコードの最初の 4 行と、次の行を削除します。

および lance01 ref Fz - TF 分析 - すべての電極/');

つまり、ファイルの名前を明示的に指定すると、残りのコードは正常に動作します。なぜこれが起こっているのかわかりません...約20個の異なるファイルに対してコードを実行する必要があり、機能するために毎回名前を入力する必要がある場合、非常に非効率的です! (特に、自分のコードを他の人と共有する場合)。

このエラーが発生する理由を知っている人はいますか? ファイル形式のせいでしょうか?.mat や .txt などの従来の形式ではなく .set 。ただし、ファイル名を明示的に指定すると、.set 形式が機能します。また、スペースを除外するようにディレクトリを変更しましたが、それも機能しません...

助けていただければ幸いです!

0 投票する
1 に答える
54 参照

arrays - データ構造からMatlabのファイル名フィールドにフィールドを保存する方法は?

Matlab には、次のような構造配列があります。

基本的に、多数のデータセットがあり、それぞれに名前があります。各データセットには、一定数のデータポイントがあります。これは、脳内の電気的活動から、刺激の提示から、特定の秒数にわたって記録されたデータです。

各データセットについて、刺激が提示される前の 2 秒間の記録と、刺激が提示された後の 3 秒間の記録がありました。したがって、実際には、データを 2 つに分割して、データ ポイントを「前」に関連付け、データ ポイントを「後」に関連付けたいと考えています。これは、for ループを使用して行うのは非常に簡単です。私はそれを実行し、各データ セットに関連付けられた 2 つの追加フィールドを作成しました。

ご参考までに

ここで、たとえば、それらのいずれかが呼び出された場合に、各データセットの元のファイル名を取得したいと思います

(「前」と「後」に切り刻まれていない) の完全なデータ記録を含むというラベルの付いたフィールドがありましたdata。2 つの新しいデータセットがあるように、作成した「前」と「後」のフィールドを保存したいと思います。

これらのそれぞれのdataフィールドはそれぞれ「前」と「後」であり、データセットに関連付けられた他のフィールドは維持されます。

元のファイル名を取得して変更する方法がわからず、多くのデータセットを持っているため、すべて手動で行いたくないため、その方法について少し混乱しています。

誰でもこれを手伝ってもらえますか?

0 投票する
0 に答える
107 参照

matlab - 新しいヘッダー フィールドを EDF ファイルに追加する

追加のヘッダー フィールドを追加する必要がある EDF ファイルがあります。たとえば、これら 2 つの新しいフィールドを追加したいとします。

しかし、ヘッダー構造にこれら 2 つのフィールドを作成するとlab_write_edf、Matlab EDF ライブラリの にはこれらのフィールドが含まれません。

EDF ファイルは、標準に従ってデフォルト フィールドのみを受け入れますか?

また、新しいフィールドを含めることができたとしても、編集された EDF ファイルは EEGLAB や WFDB などのツールで受け入れられますか?

0 投票する
1 に答える
544 参照

matlab - 周波数スペクトルの加算

私は、Matlab でさまざまな脳波の強度を見つけたい EEG デバイスからの一連のデータを持っています。EEGLAB を使用しようとしましたが、方法がよくわからなかったので、この時点では単に Matlab の dsp ツールボックスを使用しています。

背景: 15 エポック、長さ 4 秒。デバイスは 256 Hz でサンプリングし、264 個のセンサーがあるため、各エポックのセンサーごとに 1024 個のデータ ポイントがあります。つまり、生データは 264 x 1024 x 15 です。ベースラインは削除されます。各エポックのデータは、最終的に分類器のトレーニングに使用されるため、各エポックを個別に扱っています。後でさらに多くのデータ サンプルを考え出します。

とにかく、これまでに行ったことは、データにハン フィルターを適用し、フィルター処理されたデータに対して fft を実行することです。これで、周波数ドメインの情報が得られました。ただし、求めている値を取得するために、fft バケットのパワーから特定の周波数帯域 (アルファ 8-13 など) のパワーに移動する方法がよくわかりません。

答えが簡単であることはわかっていますが、必要な答えをオンラインで見つけることができないようです。その後、ウェーブレット変換の使用を推奨する特定の情報源によるさらなる混乱がありますか? ここに私がこれまでに持っている小さなコードがあります.入力「データ」は1つのエポック、つまり264 x 1024です.

助けてくれてありがとう!

0 投票する
2 に答える
268 参照

matlab - データが既に収集された後、EEGLAB でイベント ラベルの位置を移動することは可能ですか?

私は最近、EEG データを分析するプロジェクトに参加しましたが、データ収集に問題があることがわかりました。
実験は、刺激提示に EPrime を使用し、EEG の記録に BioSemi Active 2 システムを使用して実行されました。トリガーは、刺激の開始時に E-Prime から送信され、応答時に送信されるはずでした。ただし、実験の性質上、刺激が応答時に消えず、トリガーのタイミングに何らかの影響がありました。後に登録された応答のみのトリガー画面から刺激が消えた。これは、EEG データ内のすべての応答イベント ラベルが、試行ごとに異なる数百ミリ秒だけ延期されることを意味します。ただし、RT データは正確に記録されており、そのすべてのデータは .edat ファイル (Excel などで抽出できます) にあります。
私の質問は次のとおりです: EEG データのイベント ラベルの位置を調整することは可能ですか? 分析には、Matlab の EEGLAB ツールボックスを使用します。RT の Excel ファイルを EEG の対応するイベントと「同期」し、スクリプトを実行してすべての処理を実行できるのではないかと考えていました。そもそもそれが可能であれば、どうすればいいのかわかりません。助けていただければ幸いです、ありがとうございます!(そして、これが質問するのに適切なフォーラムでない場合は、私に知らせてください。削除します)

0 投票する
2 に答える
1145 参照

matlab - EEGLab: ICA コンポーネントの数

私は 238 チャンネルから取得した EEG を持っています。ICA を実行することを決定したとき、独立したコンポーネントをいくつ取得すればよいかわかりません。よく理解すれば、ICAを実行すると、チャネルの数は独立したコンポーネントの数と同じになるため、私の特定のケースでは、238個のコンポーネントが必要だと思います。

EEGLab ツールボックスで、run ICAコマンドをクリックして表示されるウィンドウで、使用するアルゴリズムを設定runicaし、コマンド ライン オプションで「extended」、1、「pca」、238 を設定しました。

それが正しいか?みんなありがとう。

PS私はすでにICAで他の回答を読んでいますが、少し混乱しています.