UT Vision Toolboxfor Matlab+PTB (VTB) J.1.0-Beta
VTBの関数リスト
アクション | 関数 |
刺激の生成 | |
グリッドを作る | [x,y] = makeGrid('type',nx,ny) |
テクセルマップを作る | [x,y] = makeTexelmap('type',ied,nx,ny) |
ランプ波形を作る | v = makeRamp1d(blur,cnt,nx,[dx]) |
各種波形の格子パタンを作る(2D) | im = makeGrating2d('type',lambda,ori,ph,cnt,nx,ny,[dx],[dy]) |
ガボール・パッチを作る(2D) | im = makeGabor2d(lambda,sd,ori,ph,cnt,nxy,[dx],[dy]) |
ガウシアン・パッチを作る(2D) | im = makeGauss2d(sd,cnt,nxy,[dx],[dy]) |
DoGパッチを作る(2D) | im = makeDoG2d(sdc,sds,cnt,nxy,[dx],[dy]) |
円盤を作る | im = makeDisk(diam,blur,cnt,nxy,[dx],[dy]) |
円環を作る | im = makeAnnulus(ediam,idiam,eblur,iblur,cnt,nxy,[dx],[dy]) |
各種ノイズを作る | im = makeNoise2d('type',sd,cnt,nx,ny) |
ランダムドット・パタンを作る | im = makeRdp('type',dotsize,sd,cnt,nx,ny) |
長方形を作る | im = makeRect(length,width,ori,blur,cnt,nx,ny,[dx],[dy]) |
楕円を作る | im = makeEllipse(hdiam,wdiam,ori,blur,cnt,nx,ny,[dx],[dy]) |
楕円窓のガボール・パッチを作る | im = makeGaborlong(lambda,cori,ph,eori,hsd,wsd,cnt,nx,ny,[dx],[dy]) |
楕円窓のガウス・パッチを作る | im = makeGausslong(ori,hsd,wsd,cnt,nx,ny,[dx],[dy]) |
チェッカーボード・パタンを作る | im = makeCheckerboard(checksize,ori,phase,cnt,nx,ny,[dx],[dy]) |
D2パッチを作る(2D) | im = makeGdev2d(sd,ori,cnt,nxy,[dx],[dy]) |
モンドリアン・パタンを作る | im = mondrian(x,y,'type',maxsize,minsize,number,cnt,[color]) |
文字の画像を作る | im = makeCharacters('characters',size,nx,ny,[bg],[strcol],[font],[bold]) |
画像処理 | |
画像を読み込みガンマ補正する | im = loadImage('file',gamma,['from'],['to']) |
ガンマ補正した画像を保存する | saveImage(im,'file',gamma) |
色を異なる色空間に変換する | im = convertColorSpace(im0,'from','to') |
特定の位置に画像をコピーする | im = fillLocalImage(im,im0,cx,cy) |
特定の位置に画像を加算する | im = addLocalImage(im,im0,cx,cy) |
画像をマスクしつつブレンドする | im = blendLocalImage(im,im0,mask,cx,cy) |
特定の位置の領域を切り出す | im = pickLocalImage(im,cx,cy,xn,yn) |
画像をフィルタする(2D) | im = filter2d(im0,fl,[fltype]) |
位相ライダマイズする(2D) | im = randomizePhase2d(v,[seed]) |
周波数スペクトルを得る(2D) | im = spectrum2d(v) |
周波数・方位フィルタを作る(2D) | k = makefilter2d('type',fsize,osize,cpi,fbw,ori,obw) |
数値変換 | |
コントラストを輝度に変換 | v = lum(x,mean) |
輝度をコントラストに変換する | v = cnt(x,mean) |
min-maxの範囲にクリップする | v = clip(x,max,min) |
thr以上をv1に未満をv2にする | v = thr(x,thr,v1,v2) |
degをラジアンに変換する | v = deg2rad(x) |
ラジアンをdegに変換する | v = rad2deg(v) |
xの底argのlog値を求める | v = logx(x,arg) |
s.d.を半値幅に変換する | v = sd2fwmh(x) |
半値幅をs.d.に変換する | v = fwmh2sd(x) |
xを半端整流する | v = hwrectify(x) |
(x1,y1)と(x2,y2)の距離を求める | v = dist(x1,y1,x2,y2) |
指定された統計量がargになるように数値を正規化する | v = normalize('type',x,arg) |
ロジット値に変換する | v = logit(x) |
シャッフルする | v = shuffle(x,[n]) |
確率データのSeを求める | v = probse(x) |
データ分析 | |
最尤法にしたがい閾値やPSEを,ブートストラップで誤差を求める | [thr,slope,thrse,slopese] = getThreshoold('pmf',stim,rsp,chance,pthr,lapse,Nboot,show,[centroid],[inislope]) |
実験制御 | |
ディスプレイその他を初期化する | initExp(screenNumber,bg,'SubName',distance,['key'],['fptype'],[fpxy],[fpsize],[fpcol],[strcol],['fname']) |
メモリ・ページ'をクリアする | clearPage(page) |
あるページのある位置に画像を描画する | drawImage(im,page,cx,cy) |
あるページを任意のフレーム表示する | [resp,rt] = showPage('type',page,ped,cnt,['fptype'],[fpxy],[fpsize],[fpcol],[key]) |
注視点のみを表示する | time = showFP(['fptype'],[fpxy],[fpsize],[fpcol]) |
キーの番号を得る | resp = getKey('type') |
キー番号を得る(待つ) | [resp,rt] = waitKey('type',[time0]) |
ニ肢強制選択の正誤を判定する | resp = afc(resp,correct,[feedback]) |
トーン音を出す | tone(code) |
試行順序を設定する(恒常法) | sequence = setTrialSequence('type',Ncond,repeat) |
条件(番号)を組み合わせる | grid = setConditionGrid(params) |
階段法の初期化 | UD = initStaircase(condm,Ncondm,[varargin]) |
階段法の次の刺激レベルを得る | test = staircase(UD,cond,Ncond) |
階段法の系列を更新する | UD = updateStaircase(UD,cond,Ncond,response) |
PSI法の初期化 | PM = initPSI(condm,Ncondm,[varargin]) |
PSI法の次の刺激レベルを得る | test = PSI(PM,cond,Ncond) |
PSI法の系列を更新する | PM = updatePSI(PM,cond,Ncond,response,[varargin]) |
データを保存する | saveData(x) |
実験終了の各処理 | exitExp |
休憩画面の表示 | restExp(NthSession,Nsession) |
教示の表示 | showInstruction(’sentence’,[x],[y],[strcol]) |
引数の意味は各関数のコードの冒頭のコメントに使用例とともに書いてあります.このリストと一致しない場合はコード内の説明を優先してください.
このリストに載っていない関数もあります.2D版の関数は多くの場合1D版と3D版があります.なお,画像の拡大縮小や回転などは,Matlab標準の関数でできるのでVTBには含まれません.
関数の種類はできるだけ少なくするよう心がけています.