![]() |
|
|
|
#1
|
|||
|
|||
|
Time - seconds are longer than real seconds
I'm using the code from the reaction time tutorial, and the time listed is supposed to be in seconds. However, compared to real time, the time listed is less than half the number of seconds that elapse in the interim between the display of the stimulus and the response. Is there a conversion factor that I can use, or is there a better way to handle this? Thanks!
|
|
#2
|
|||
|
|||
|
Have you modified the example or moved the code into your own script? If so, does this happen when you run the example without changes?
|
|
#3
|
|||
|
|||
|
I thought that might be the problem when I had it added into my own program, so I tried it with an exact copy of the tutorial code in a new file, and it had the same problem. Does it work for you in the tutorial version?
|
|
#4
|
|||
|
|||
|
So if you start a stopwatch when the color turns green and let it run for say 10 seconds and then press the spacebar, are you saying the time shown on screen is approximately 5 seconds? What OS are you using?
|
|
#5
|
|||
|
|||
|
It seems like it might actually be a bit worse than that. I'm using Windows XP. When I try it in the tutorial file alone, it shows a little under 4 seconds when I let a stopwatch go for 10 seconds. In my file that I'm trying to use it in, it seems like it's closer to 5 or 6 Vizard seconds for 10 stopwatch seconds. Even factoring my double reaction time (starting the stopwatch and then stopping the stimulus and the stopwatch simultaneously), I think something's off. Any ideas?
P.S. Sorry for taking so long to respond! |
|
#6
|
|||
|
|||
|
hi can you try this modified script and see what you get? The modifications are:
- stimulus changing color is not triggered by a random time - you trigger it by hitting the space bar. So essentially, it measures the time interval between two key presses instead of measuring your reaction time. - there is a timer function that prints the elapsed time between stimulus change and keypress. - i've added a second viz.Data object called dd and used that one for storing the time data from the second waitkeydown function. I tested the code with an external stopwatch and seems accurate. Code:
import viz
viz.go()
import vizinfo
info = vizinfo.add( 'This script uses precisely timed input recording to measure your reaction time.\nPress any key when the color changes to green.\nCan you get under .2 seconds?' )
#Add quad to screen
quad = viz.addTexQuad( viz.SCREEN , pos=(0.5,0.5,0) , scale=(4,4,4) )
#Display time on screen
timeDisplay = viz.addText( 'Time:', viz.SCREEN , pos=(0.1,0.2,0) )
import viztask
import time
starttime = time.time()
stopWatch = False
def TestReactionTime():
global starttime, stopWatch
#Data for getting values from wait conditions
d = viz.Data()
# dd = viz.Data()
while True:
#Set quad to red color
quad.color(viz.RED)
#Wait random amount of time
yield viztask.waitKeyDown(' ')
starttime = time.time()
stopWatch = True
#Set quad color to green
quad.color(viz.GREEN)
#Wait for next frame to be drawn to screen
yield viztask.waitDraw(d)
#Save display time
displayTime = d.time
#Wait for keyboard reaction
yield viztask.waitKeyDown(None,d)
#Calculate reaction time
reactionTime = d.time - displayTime
#Print and display time
print 'Reaction time:',reactionTime
timeDisplay.message( 'Time: %.5f' % (reactionTime) )
stopWatch = False
viztask.schedule( TestReactionTime() )
def showTime():
if stopWatch:
print time.time() - starttime
vizact.onupdate(-100, showTime)
Masaki |
![]() |
|
|
Similar Threads
|
||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| real time collision on animation path | whj | Vizard | 10 | 10-06-2008 04:38 PM |
| Real Time Audio Data | lomendil | Vizard | 2 | 06-02-2008 08:18 PM |
| Can I get real time Intersense tracking data from another computer on the network? | GoldenSun | Vizard | 4 | 04-30-2008 07:42 PM |
| Flagging the Data | Elittdogg | Vizard | 5 | 04-11-2008 11:40 AM |
| timer question | Elittdogg | Vizard | 5 | 10-10-2007 02:49 PM |