我正在尝试确定设置显示两个连续图像所需的时间。我有一个'for'循环显示图像并对它们进行计时,然后在直方图上绘制结果。我对ms准确性感兴趣,但到目前为止结果令人沮丧,并且想知道它是否是我的代码而不是设置。我使用的是Matlab和psychtoolbox,代码如下:
clear all;
close all;
clc;
Screen('Preference','SkipSyncTests',0);
PsychDefaultSetup(0);
screenNumber = 0;
wPtr = PsychImaging('OpenWindow',screenNumber,1,[],[],2);
black = imread('aonlyblacksep.bmp');
white = imread('white.bmp');
i = zeros(0,150);
for i = 1: 150
tic
Screen('PutImage',wPtr,black);
Screen ('Flip',wPtr,screenNumber);
WaitSecs(0.01667);
Screen('PutImage',wPtr,white);
Screen ('Flip',wPtr,screenNumber);
WaitSecs(0.01667);
toc
elapsedTime(i) = round(toc*1000);
data = elapsedTime;
end
figure
hist(data);
fclose ('all');
clear mex;
sca;
我现在已将'data = elapsedTime向下移出循环,将Psychdefault设置更改为2并且在flip命令中输入不清除为1但是我仍然得到32ms的读数应该是16ms翻转。 '令人沮丧的结果是',我不知道我是否真的通过这段代码测量翻转的速度。