Я очень новичок в Matlab, но очень хочу улучшить. Для моего эксперимента я хочу показать картинку, на которую ответчик да/нет, используя два разных ключа (f & g), и затем отображается следующая фотография, и она повторяется так далее.Повторные испытания в MatLab
Представляя изображение, используя клавиши работает далеко, но я не могу заставить его повторить пробную версию. Таким образом, мой вопрос заключается в том, как я могу заставить программу повторить/запустить мою пробную версию? В моем коде есть что-то не так, или есть дополнительная кодировка, которую я должен использовать?
это мой код до сих пор
function try1_6()
cleanupObj= onCleanup(@() myCleanupFxn);
% PRETEST
% Initialize screen with black background
winID = Screen('openWindow',0, [0 0 0]);
%Parameter
backcol=255;
textcol=0;
% Load image file(s)
structimages= [];
TheImagesdir = dir('theImagesdir/*.jpg');
for i=1: length(TheImagesdir);
TheImages = imread(['theImagesdir/' TheImagesdir(i).name], 'JPEG');
% Get width and height
imageX = size(TheImages,2);
imageY = size(TheImages,1);
% Convert to texture
myTexture = Screen('MakeTexture', winID, TheImages);
% Set destination rectangle
destRect = [50 100 50+imageX 100+imageY];
%save to structure
structimages(end+1).filename=TheImagesdir(i).name;
structimages(end).destRect= destRect;
structimages(end).texture= myTexture;
end
%Make triallist
numberOfItems= [5]; %list of all possible items
Nrepeats=4;
Response=0;
TrialList=HH_mkTrialList({numberOfItems Response},Nrepeats);
%PRESENTATION
for trialnum=1:size(TrialList,1)
nitems = TrialList(trialnum,1);
Screen('FillRect', winID,backcol); % makes the screen blank
%displays text
DrawFormattedText(winID,'dkjfghaslkdfglksdjgfh','center','center',textcol);
Screen('Flip', winID)
HH_waitForKeyPress({'space'}); % waits for spacebar to be pressed
Screen('FillRect',winID,backcol);
Screen('Flip',winID);
WaitSecs(1);
%display picture
whichTheImages= randi(length(TheImagesdir)); % randomly selects image for directory
Screen('FillRect',winID,backcol);
Screen('DrawTexture', winID, myTexture, [], destRect);
Screen('Flip', winID);
HH_waitForKeyPress({'f','j'},5)
if resp==-1
break
end
TrialList(trialnum,4)= response; %records response
end
end
function myCleanupFxn()
Screen('CloseAll')
end
Одна очень важная вещь, которую вы забыли упомянуть о том, что вы используете [Psychtoolbox] (http://psychtoolbox.org/) для материала экрана. – Setsu
Кроме того, введите свой код правильно. Тело блоков 'try' и' for' должно быть отступом на вкладке. Кроме того, не оберните все это гигантской «попыткой». – Setsu
Это не полный вопрос.'HH_mkTrialList' и' HH_waitForKeyPress' являются и обычными методами, которые вы не объяснили, что они делают. См. [This] (http://stackoverflow.com/help/how-to-ask) руководство для размещения вопросов на этом сайте. – Setsu