Browse Source

Small fixes to sound and colors. -MT

master
Michael Tan 6 years ago
parent
commit
e7eae46e36
  1. 8
      SaccadePursuit.py
  2. 48
      SaccadePursuitEyeTracking.py

8
SaccadePursuit.py

@ -158,9 +158,11 @@ class SPtask(template.BaseExperiment): @@ -158,9 +158,11 @@ class SPtask(template.BaseExperiment):
counter = 0
for num_trials in range(numTrials):
if condition == 'Pursuit':
counter1 = 0
for freq in self.pursuit_frequencies:
trial = self.make_trial(self.pursuit_time, freq, condition)
trial = self.make_trial(self.pursuit_time[counter1], freq, condition)
trial_list.append(trial)
counter1 += 1
elif condition == 'Necker':
trial = self.make_trial(self.necker_time, 1, condition)
trial_list.append(trial)
@ -310,6 +312,8 @@ class SPtask(template.BaseExperiment): @@ -310,6 +312,8 @@ class SPtask(template.BaseExperiment):
counter = 0
if not isinstance(stim_frequency, list):
stim_frequency = [stim_frequency]
if not isinstance(stim_time, list):
stim_time = [stim_time]
for freq in stim_frequency:
stim_frames = int(round(stim_time[counter]*num_frames_per_second))
for time in range(stim_frames):
@ -447,12 +451,12 @@ class SPtask(template.BaseExperiment): @@ -447,12 +451,12 @@ class SPtask(template.BaseExperiment):
freq = self.display_necker(trial['trial_time'], tracker)
elif trial['trial_type']=='Pursuit':
self.display_pursuit(trial['pursuit_frequency'],trial['trial_time'])
psychopy.sound.Sound(self.new_trial_sound).play()
freq = trial['pursuit_frequency']
elif trial['trial_type']=='Fixation':
self.display_fixation(trial['trial_time'])
elif trial['trial_type']=='Rivalry':
freq = self.display_rivalry(trial['trial_time'], tracker)
psychopy.sound.Sound(self.new_trial_sound).play()
else:
self.display_saccade(trial['locations'], trial['trial_time'])
psychopy.sound.Sound(self.new_trial_sound).play()

48
SaccadePursuitEyeTracking.py

@ -26,15 +26,15 @@ import SaccadePursuit @@ -26,15 +26,15 @@ import SaccadePursuit
# Experimental Parameters
monitor_name = 'testMonitor'
monitor_width = 59.5 #41
distance_to_monitor = 80
monitor_px = [2560,1440] #[1440,900]
window_screen = 0 #1
monitor_width = 41
distance_to_monitor = 74
monitor_px = [1440,900]
window_screen = 1
disableTracker = True # For Debugging
conditions = ['Fixation', 'Pursuit', 'Saccade', 'AntiSaccade', 'Necker'] #, 'Rivalry']
#conditions = ['Saccade']
isi_time = 1 # Interstimulus Interval
#conditions = ['Necker']
isi_time = 2 # Interstimulus Interval
data_directory = os.path.join(
os.path.expanduser('~'), 'Desktop', 'ExperimentalData', 'SaccadePursuitEyeTracking')
image_directory = os.path.join(os.getcwd(),'Images')
@ -43,8 +43,8 @@ new_trial_sound = 'A' @@ -43,8 +43,8 @@ new_trial_sound = 'A'
# Saccade / Antisaccade Parameters
number_of_saccade_trials = 1
number_of_saccade_blocks = 1
saccade_distance = 15 #15
saccade_time = 3 #3
saccade_distance = 15 # Degrees per direction
saccade_time = 3 # Maximum Time
stimulus_size = 0.3
stim_color = [1,-1,-1]
saccade_fixation_color = [100,100,100]
@ -54,17 +54,18 @@ number_of_pursuit_trials = 1 @@ -54,17 +54,18 @@ number_of_pursuit_trials = 1
number_of_pursuit_blocks = 1
pursuit_distance = 15
pursuit_frequencies = [0.1,0.2,0.4]
pursuit_time = [5,5,5] #[40,20,15]
pursuit_time = [40,20,15]
# Necker Cube Parameters
number_of_necker_trials = 1
number_of_necker_blocks = 4
necker_time = 6
necker_color = [100,100,100]
necker_bg_color = [64,64,64]
necker_time = 60
necker_color = [190,190,190]
necker_bg_color = [30,30,30]
necker_scale = 0.5
necker_file = os.path.join(image_directory,'Necker1.tif')
response_box_file = os.path.join(image_directory,'ResponseBox4.tif')
necker_response_box_file = os.path.join(image_directory,'ResponseBox5.tif')
necker_response_box_scale = 0.22
# Fixation Parameters
number_of_fixation_trials = 1
@ -79,9 +80,11 @@ rivalry_time = 90 @@ -79,9 +80,11 @@ rivalry_time = 90
rivalry_scale = 2.5
rivalry_file1 = os.path.join(image_directory,'house4n_11-160.tif')
rivalry_file2 = os.path.join(image_directory,'face2nS_11-160.tif')
rivalry_border_color = [100,100,100]
rivalry_border_color = [190,190,190]
rivalry_border_width = 5
rivalry_distance = 4
response_box_file = os.path.join(image_directory,'ResponseBox3.tif')
response_box_scale = 0.22
data_fields = [
'Subject',
@ -195,6 +198,9 @@ class EyeTrackingSaccadePursuit(SaccadePursuit.SPtask): @@ -195,6 +198,9 @@ class EyeTrackingSaccadePursuit(SaccadePursuit.SPtask):
self.number_of_rivalry_trials = number_of_rivalry_trials
self.number_of_rivalry_blocks = number_of_rivalry_blocks
self.response_box_file = response_box_file
self.necker_response_box_file = necker_response_box_file
self.necker_response_box_scale = necker_response_box_scale
self.response_box_scale = response_box_scale
super(EyeTrackingSaccadePursuit, self).__init__(**kwargs)
@ -270,11 +276,15 @@ class EyeTrackingSaccadePursuit(SaccadePursuit.SPtask): @@ -270,11 +276,15 @@ class EyeTrackingSaccadePursuit(SaccadePursuit.SPtask):
numBlocks = self.number_of_pursuit_blocks
numTrials = self.number_of_pursuit_trials
elif condition=='Necker':
self.display_text_screen(text=necker_instruct_text, image_file=self.response_box_file)
self.display_text_screen(text=necker_instruct_text,
image_file=self.necker_response_box_file,
image_scale=self.necker_response_box_scale)
numBlocks = self.number_of_necker_blocks
numTrials = self.number_of_necker_trials
elif condition=='Rivalry':
self.display_text_screen(text=rivalry_instruct_text, image_file=self.response_box_file)
self.display_text_screen(text=rivalry_instruct_text,
image_file=self.response_box_file,
image_scale=self.response_box_scale)
numBlocks = self.number_of_rivalry_blocks
numTrials = self.number_of_rivalry_trials
else:
@ -332,10 +342,12 @@ class EyeTrackingSaccadePursuit(SaccadePursuit.SPtask): @@ -332,10 +342,12 @@ class EyeTrackingSaccadePursuit(SaccadePursuit.SPtask):
self.display_text_screen(text='Remember:\n\n' + pursuit_instruct_text)
elif condition=='Necker':
self.display_text_screen(text='Remember:\n\n' + necker_instruct_text,
image_file=self.response_box_file)
image_file=self.response_box_file,
image_scale=self.necker_response_box_scale)
elif condition=='Rivalry':
self.display_text_screen(text='Remember:\n\n' + rivalry_instruct_text,
image_file=self.response_box_file)
image_file=self.response_box_file,
image_scale=self.response_box_scale)
self.display_text_screen(
'The experiment is now over.',

Loading…
Cancel
Save