UT Vision Toolboxfor Matlab+PTB (VTB) J.1.0-Beta
VTB: 短く簡単なプログラムで本格的な心理実験を
UT VisionToolBox (VTB)は,非常に短いプログラムで本格的な視覚心理学の実験をおこなうための命令集です.全ての解説が日本語で書かれています.初心者でも実験を容易に実施できることを目指して作られています.
VTBを使うには実験心理学でよく使われるMATLABというプログラム言語の初歩を理解しておく必要がありますが,深い知識は不要です.むしろ,VTBを使った実験を通してMATLABを学習してください.
English version will be available soon.
VTBをインストールしよう
0. MATLAB,PsychToolBox,Palamedes
ToolBoxをインストールしてください.
[インストールの準備と方法]
1.
VisionToolBoxBeta.zipをダウンロードして解凍し,どこかのフォルダの下に入れてください.
MATLAB上で,VisionToolboxのフォルダと下位フォルダにパスを通してください.
2. VTBを実験で使用する場合は,(輝度などの)モニタ変数を各自で測定・
VTBでプログラムを書いてみよう
視覚心理の実験はたいてい,刺激の作成・刺激の提示・反応の取得・データの保存,の繰り返しです.VTBはそれぞれのステップを非常に短い命令で書くことができます.
以下の例は,縞パタンが左右どちらに傾いているかを弁別する典型的な視覚実験のプログラムです.
ori = [-2 -1.5 -1 -0.5 0 0.5 1 1.5 2]; %
縞の方位(x 9)
initExp(0,0.5,'test',57); %
いろいろなものを初期化・設定する
m = setTrialSequence('RandomBlock',9,10); %
試行順序を決める(恒常法)
for n = 1:90
phase = rand(1)*360; % 縞の空間位相(ランダム)を決める
test = ori(m(n)); % この試行における方位を求める
drawImage(lum(makeGabor2d(25,20,90+test,phase,0.4,160),0.5),1,100,0);%
縞の画像を生成し描画する
showPage('',0,30,1); % 背景を表示する
showPage('',1,60,1); % 縞を表示する
showFP; % 注視点を表示する
resp = afc(waitKey('f,j'),test>=0,2);
%
キーfとjで反応を取得し正誤を判定する
saveData([n test resp phase]);
% データを保存する
clearPage; % 描画ページをクリアする
end
exitExp; % 実験終了の処理をする
このように,わずか数十行の短いプログラムで本格的な視覚刺激を使った実験ができます.少し書き換えるだけで,もっと複雑なパタンや動く刺激を表示したり,適応的な心理物理学的測定法で閾値を測ることもできます.
VTBを使った実験の例
視覚探索
注意の研究でおこなわれる有名な実験です.観察者は,たくさんの線分のなかから色と方位の組み合わせで定義された標的刺激の有無をできるだけ速く回答します.一定の密度で要素刺激をランダムに配置する命令やキー押し反応までの時間を測定する命令を使っています.
空間周波数フィルタをかける
読み込んだ画像(例えば顔)の特定の空間周波数成分だけをフィルタした画像を作り表示します.観察者はその画像のカテゴリ(例えば男女)をボタン押しで回答します.輝度画像の読込みの命令や画像にフィルタをかける命令を使っています.
運動刺激の閾値を測る
左右どちらかに動く縞パタンのアニメーションを表示して反応を取得します.反応が正答であれば運動はゆっくりになり,誤答であれば速くなります.この試行を繰り返すと,適応的心理物理学的測定法という手続きにしたがって,縞の速度はぎりきり検出できる最低の速度(閾値)へと自動的に近づいていきます.
VTBの命令リスト
こちらに代表的な命令のリストがあります.各関数の詳しい説明はコード本体に記載されています.
利用条件
VTBやその改造版を利用した方は,論文から学内行事までを含む成果発表において下記の論文を引用してください.また,VTBを利用したことをご一報いただけるとうれしいです.
中山遼平・本吉勇 (2018).
Vision Toolbox: Psychtoolboxを利用した視覚実験パッケージ
(日本語版)
VTBの全体または一部の再配布を禁じます.本ページは自由にリンクしていただいて構いません.
注意事項
VTBは主に以下の人々が開発し提供しています.まだβ版です.VTBの開発は慎重におこなっていますが,VTBの利用により生じた不利益に関して開発者は一切の責任を負いかねますので,理解した上で利用してください.趣旨を理解した上で開発に加わっていただける方々も募集しています.
Major contributors: Ryohei Nakayama (codes), Shiori Mori (codes), Isamu Motoyoshi (Architecture).
VTBのエラーや問題点を見つけた場合は,こちらまでご報告いただけるとたいへん助かります.なお,単なる使用方法に関する質問にはお答えできません.MatlabやPTBに関する書籍やVTBのマニュアル(作成中)をお読みください.
専門の方へ: VTBはMATLABの関数群です.動作にはPsychToolBox (PTB),Palamedes ToolBox,いくつかのMATLAB純正TBが必要です.VTBは,PTBやPalamedesTBの優れた関数群を視覚実験専用にまとめあげた関数リストのようなものです.例えば,PTBのみでは数十行を要したお決まりのルーチンが一つの関数にされています.また,描画と表示はCRS VSG/ViSageと類似の紙芝居感覚で制御できるようにしてあります.