Record timing of user input
조회 수: 5 (최근 30일)
이전 댓글 표시
Hello and thank you for reading my question,
I'm trying to display images and record the timing (and keyboard value if possible) of when the user advanced to the next image. (that is, the user presses a keyboard button after they are done with the image and advances to the next image).
I've looked at some of the "input" and such commands but i'm still confused on this.
any ideas how to do this?
thankyou, veritas
댓글 수: 0
채택된 답변
Kye Taylor
2014년 1월 20일
I think you want tic and toc, as in the example below:
% I will create a cell that represents some collection of images
nImg = 4;
timings = zeros(1,nImg);
I = cell(1,nImg); % cell of images
for i = 1:nImg
I{i} = rand(640,480,3); % I{i} is an 640-by-480-by-3 random RGB image
end
figure(1)
for i = 1:nImg
close(1)
figure(1)
image(I{i})
tic % start stopwatch
input('Hit any key to advance to next image.');
timings(i) = toc; % end stopwatch and store result in element i
end
댓글 수: 0
추가 답변 (2개)
Bruno Pop-Stefanov
2014년 1월 20일
편집: Bruno Pop-Stefanov
2014년 1월 20일
As for the user input, it depends on how you are planning your human-computer interface. The input function requests a user input in the Command Window using the keyboard. For example:
number = input('Choose a number\n');
However, you can also get user input through a mouse click on the image you are displaying (see ginput) or you can design more complex graphical user interfaces using the GUI Design Environment (GUIDE).
If you want to measure how long the user looked at a picture before displaying the next image, you could write a script in which the images are displayed one after the other, but using tic and toc between each image to measure time and using ginput(1) to wait for a mouse click.
댓글 수: 0
참고 항목
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!