psychtoolbox 3 - university of glasgomartinl/holidaysnaps/psychtoolbox.pdf · psychtoolbox 3.0...

23
Psychtoolbox 3.0 Routines for Psychophysics 1

Upload: others

Post on 24-May-2020

12 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Psychtoolbox 3 - University of Glasgomartinl/HolidaySnaps/Psychtoolbox.pdf · Psychtoolbox 3.0 Routines for Psychophysics 1. Outline • Hardware and Software • PTB installation

Psychtoolbox 3.0 Routines for Psychophysics

1

Page 2: Psychtoolbox 3 - University of Glasgomartinl/HolidaySnaps/Psychtoolbox.pdf · Psychtoolbox 3.0 Routines for Psychophysics 1. Outline • Hardware and Software • PTB installation

Outline

• Hardware and Software

• PTB installation

• Testing and Timing

• Basic functions

• Examples and Exercises

• Miscellaneous

2

Page 3: Psychtoolbox 3 - University of Glasgomartinl/HolidaySnaps/Psychtoolbox.pdf · Psychtoolbox 3.0 Routines for Psychophysics 1. Outline • Hardware and Software • PTB installation

Hardware and Software

• Requirements

• Displays

LCD

CRT

Projectors

• Matlab, GNU/Octave

3

Page 4: Psychtoolbox 3 - University of Glasgomartinl/HolidaySnaps/Psychtoolbox.pdf · Psychtoolbox 3.0 Routines for Psychophysics 1. Outline • Hardware and Software • PTB installation

Hardware and SoftwareBasic functionality available on any graphics hardware:

Basic OpenGL 1.0 support required.

16 MB VRAM required.

High speed and advanced features:

OpenGL 1.5, better 2.0/2.1 capable.

> 128 MB VRAM, more is better.

Simplifies a lot of complex stimulus programming tasks. Allows for high precision, e.g., 32 bpc floating point.

PTB-3 regularly tested on: NVidia GeForce, ATI Radeon. Onboard chips are very limited in functionality and speed! (e.g. Intel MacBooks, iMacs)

4

Page 5: Psychtoolbox 3 - University of Glasgomartinl/HolidaySnaps/Psychtoolbox.pdf · Psychtoolbox 3.0 Routines for Psychophysics 1. Outline • Hardware and Software • PTB installation

!"#$%#$& "$'()*+,--./-012334+,,56##77785()*+,--./-08-9:;313<=>?3@A/BCC,DE:

!"#$%&'()%#"*+#",)#--.)*./&-&)01123%,)4356078)(&-9:,6;<==,",*)*"#+&-9)/.*,:

!"#$"%&'&()*

+,"-.%/00.,1234!56%78

9:;<=><.

?@)

?@)

?@)

:4A

:4A

:4A !B<>#B,

C&D,"7E>8F&8",G&HH&!BF#$I&7"FF>J.&>-"=.&F#B,.K&&C&(FI8E#BB$%BL&G,"MF&G>,.8#$I&><#B&+,"-.%/00.,&ME>$.&%/00.,&>F&F8"<<.G&B/#&0B,&G>F7$"IKC&!BF#&G,"M><=&B7.,"#>B<F&>-7$.-.<#.GN.L.8/#.G&><&FB0#M",.&B<&F$BM&A(@K

C&O<$I&J.,I&0.M&B7.,"#>B<F&",.&E",GM",.P"88.$.,"#.G&1Q-"=.&8B7IR&0>$$.G&,.8#"<=$.F5K&

Old Graphics Hardware

5

Page 6: Psychtoolbox 3 - University of Glasgomartinl/HolidaySnaps/Psychtoolbox.pdf · Psychtoolbox 3.0 Routines for Psychophysics 1. Outline • Hardware and Software • PTB installation

!"#$%#$& ""'()*+,--./-012334+,,56##77785()*+,--./-08-9:;313<=>?3@A/BCC,DE:

!"#$%&'()%#"*+#",)-.*#/0

!"#$"%&'&()*

+,-%$./*-00.1.2

31"4.%-00.15678!9

:5;<=>?9&%@A

BC)

BC)

BC)

+8D

+8D

+8D !,EF#,1

G&H(CIJ&"1.&4"JJFK.&@"1"$$.$&"E2&LFML$N&@1,M1"44"%$.OG&PFML&4.4,1N&%"E2QF2#LR&S&;TT&H*=J&&KJO&:&H*=J&,E&D(COG&D,4@-#"#F,E"$&[email protected]&UVW&H3$,@J&KJO&;?/?U&H3$,@JOG&()*&FE#.10"A.J&QF#L&#L.&H(C&4,J#$N&KF"&[email protected]

YZ"4@$.R&8)[&7"2.,E&\?]TT&H(C&JAL.4"#FA&531,4&QQQOZ%F#$"%JOA,49

P.1.&-J.2&#,&%.&"&@FA#-1.&,0#L.&#1.4.E2.,-J$N&A,4@$.Z8)[&7"2.,E&P+&?]TT&H(C^"J&"E&.Z"4@$.&,0&L,QA,4@$.Z&"&4,2.1E&M1"@LFAJ@1,A.JJ,1&FJO

P,Q.K.1^&Q.&2,EI#&L"[email protected],E&5N.#9&#,&@-%$FJL#LFJ&@FA#-1.OOO

Modern Graphics Hardware

6

Page 7: Psychtoolbox 3 - University of Glasgomartinl/HolidaySnaps/Psychtoolbox.pdf · Psychtoolbox 3.0 Routines for Psychophysics 1. Outline • Hardware and Software • PTB installation

!"#$%#$& !$'()*+,--./-012334+,,56##77785()*+,--./-08-9:;313<=>?3@A/BCC,DE:

!"#$%&'()*+,-'+*..-/-0'0/12345'6)0-,'$'7)48-9:

!"#$"%&'&()*

+,-./.%$0&*"12%344056789!:

;/05<7./.%$0&=5>,#%344056?./@$"A:

B:&C3%D01#&/00/&1$>3EA&@.1#350&>,&#F0&E./@$"A&/1500,&6GG=5>,#%34405:HI:&!"#$"%&.//30/&C1500,6:&E5"J.,K&1>LL",E/HM:&N5"@F.1/&F"5EJ"50&E5"J/&.,#>&%"12%34405O&@5>10//.,K&#F0&P@0,NQ&1>LL",E/&.,&#F0&%"12K5>3,E&JF.$0&!"#$"%&",E&(/A1F#>>$%>R&"50&"%$0&#>&E>&>#F05&/#344&.,&@"5"$$0$O&0HKHO&20A%>"5E&S305.0/O&/>3,E&>3#@3#HHH

PTB-3: Double Buffered Drawing

7

Page 8: Psychtoolbox 3 - University of Glasgomartinl/HolidaySnaps/Psychtoolbox.pdf · Psychtoolbox 3.0 Routines for Psychophysics 1. Outline • Hardware and Software • PTB installation

decades, many of the concepts how to control a monitor aretaylored to the CRT technology. The main characteristics of thistechnology have been described already decades ago [4,5]: Anelectron beam inside the cathode ray tube scans the raster of pixelslinewise from left to right, beginning with the uppermost line.When the beam has traversed the rightmost pixel in a line abovethe last line then it jumps to the first pixel one line below.When the beam has passed the rightmost pixel in the last line it

jumps back to the leftmost pixel in the first line. The period of timeof this jump we call vertical blank. Fig. 1 outlines the raster scanconcept. In the following, we call the time between two verticalblanks a frame. The duration of the frame is the reciprocal of therefresh rate of the monitor. The frequently used 60 Hz refresh rate,for instance, results in frames of 16.7 ms.These CRT characteristics determine how CRT monitors can

be controlled: The graphics adapter of the computer needs to besynchronized to the vertical blank of the monitor during which thebuffered signal of the graphics card is sent. Therefore, the frame isthe essential temporal unit to control stimulus durations.LCD monitors do not have electron beams and the LCD

technology would theoretically allow several other modes ofdisplay refresh. However, for historical reasons, LCD panelsconform to the same raster scan mechanism as CRTs.

Temporal signals on CRT and LCD devicesTemporal signals of CRT monitors have been extensively

studied in vision science [4–11]. The single dots of a CRT arecovered with a substance called phosphor. Upon stimulation, theluminance of the phosphor rises rapidly and reaches its maximumalmost instantaneously. After this, the energy decays, initiallyexponentially, later on converging to a power law course. Thereare different phosphors. On modern consumer CRT monitors, themost frequently used phosphor is P22. Fig. 2(a) shows therecording of the luminance course of a P22 phosphor afterstimulation at time t~0.The time course of the phosphor decay is an essential

characteristic of a CRT monitor. Because of the non–exponentialcourse, specifications of decay constants, although convenient, arenot appropriate for decays to low percentages of the maximum.Usually, decay times to the 10% level are specified. Thepersistence of the luminance signal depends on the phosphortype. For the frequently used P22 phosphor, Sherr [6] (p. 91)

specifies decay times ranging from 1.5 ms to 6 ms. In ourillustrative measurement (Fig. 2(a)), the luminance falls below the10% level already after about 400 ms. Note that a stimuluspresented for n frames is not displayed as a constant signal butrather as a succession of n such pulses as shown in Fig. 2(a).Compared to the CRT literature, up to now there is

substantially less literature about temporal signals of LCDmonitors, and the use of LCD devices for medical and visionscience purposes has been studied only by a few recent works [11–13]. In contrast to CRT signals, LCD signals are not pulsed butsample and hold displays, that is, the signal can be ‘‘switched on’’,stays on a constant level, and can be ‘‘switched off’’ again. LCDpanels do not have phosphors but are passively lit by a steadybacklight. This backlight is not a constant signal but subject toperiodic modulations the effects of which have been recentlydiscussed [13,14]. LCD panels control their luminance by aligningthe optical axis of the liquid crystal to allow transmission of thebacklight through polarizers. Luminance changes on LCDmonitors are determined by the speed of the liquid crystalalignment. The duration of an LCD luminance transition is calledresponse time.Fig. 2(b) shows the recording of a luminance transition from

black to green on an LCD panel. The backlight modulations havebeen filtered by the division method [13].Note that the response times vary not only over different

monitor models but are not even homogeneous with respect todifferent luminance levels on a single monitor [11–13]. Fig. 3shows an example for this variability. The response times of a Dell3007 WFP monitor have been measured for luminance transitionsbetween 0% and 100% of the maximal luminance of the monitorin five steps. For this monitor, response times tend to be smallestfor transitions to the target level 0 (black) and to the target level100% (white). Note that transitions between two distinct levelsneed not be symmetric. For instance, the response time of the25%?0% transition is only a fraction of the response time of the0%?25% transition.

Results

The search of the electronic data base according to the criteriagiven in the Methods section produced a total of 402 citations. Allcitations were unique. Of these citations, 323 studies werediscarded because after reviewing the full text it appeared thatthe experiments described in them did not make use of stimulusdurations, onset asynchronies, or interstimulus intervals of lessthan 50 ms. Fig. 4 shows the respective flowchart according to thePRISMA guidelines [15,16].The remaining 79 studies, which included a wide range of topics

(e.g. attentional blink, metacontrast, apparent motion, flash lageffect, letter or word identification, temporal order judgment, facerecognition, change and repetition blindness, or macula degener-ation research), matched all the given criteria. Of these, only 17(21.5%) described how they calculated their stimulus presentationdurations. All of them summed up the frames during which thestimulus was presented. In the following we call this measurementsum of frames (SOF) method. For 58 further studies the SOFmeasure could be deduced from their given presentation durationvalues, either because their monitor refresh rate was specified orbecause all values were integer multiples of typical intervalsbetween two monitor refreshes. For the remaining works nomeasurement method could be inferred from their given data.36 (45.6%) articles mentioned the monitor model used. Two of

them used an LCD panel, all the others used CRT monitors. 25(31.6%) of the studies used stimulus duration or the interval

Figure 1. Schematic of the CRT raster scan. The dashed arrowsdepict the course of the electron beam. The duration of the verticalblank is about 5% of the frame.doi:10.1371/journal.pone.0012792.g001

Presentation Durations

PLoS ONE | www.plosone.org 2 September 2010 | Volume 5 | Issue 9 | e12792

Elze (2010) PLoS ONE

CRT Display

8

Page 9: Psychtoolbox 3 - University of Glasgomartinl/HolidaySnaps/Psychtoolbox.pdf · Psychtoolbox 3.0 Routines for Psychophysics 1. Outline • Hardware and Software • PTB installation

Figure 2. Comparison of CRT and LCD luminance transition signals. The plots show the onset of a green stimulus on a black monitor at timet~0. The CRT signal shown in (a) was measured from an Iiyama HM 204 DT monitor. The LCD signal shown in (b) was taken from a Dell 3007 WFPpanel after backlight filtering by the division method [13]. Note the different scalings of the abscissas.doi:10.1371/journal.pone.0012792.g002

Figure 3. Response times variability over different luminance levels (Dell 3007 WFP LCD panel, green channel). The bar plots showaveraged response times over five measurements. Response times have been measured from five different initial levels (given as percentage of themaximal luminance of the monitor) to five target levels. All response times have been calculated by means of the division method with dynamicalfiltering [13].doi:10.1371/journal.pone.0012792.g003

Presentation Durations

PLoS ONE | www.plosone.org 3 September 2010 | Volume 5 | Issue 9 | e12792

Elze (2010) PLoS ONE

CRT vs LCD

9

Page 10: Psychtoolbox 3 - University of Glasgomartinl/HolidaySnaps/Psychtoolbox.pdf · Psychtoolbox 3.0 Routines for Psychophysics 1. Outline • Hardware and Software • PTB installation

presentation. We assume the classical disk–ring paradigm whichwas introduced already decades ago [24]. Variations of thisparadigm were used in several of the studies from the literaturereview, both for CRT monitors [25] and for LCD monitors[26].In our hypothetical experiment, a disk stimulus is presented for

one frame. In the next frame, a surrounding ring is presented, andour hypothetical experimenter specifies both the stimulus durationand the interstimulus interval (ISI) between disk and ringaccording to the SOF method. As for the ISI, the SOF methodassumes temporal adjacency, that is the onset of the ring occurs atthe same time as the offset of the disk. The experimenter wouldtherefore state an ISI of zero and a duration of the disk of oneframe, as outlined in the top row of Fig. 6. If we assume the refreshrate which was most frequently used in the reviewed studies,namely 60 Hz (see Fig. 5A), the experimenter would specify astimulus duration of 16.7 ms.

Let us compare these assumptions with the signal shapes on aCRT monitor, as sketched in the bottom row of Fig. 6. Theluminance signal of the disk stimulus is a pulse determined by thealmost instantaneous phosphor activation at frame start and by thefollowing phosphor decay to zero. Obviously, it is unclear how tospecify the true stimulus duration. One might integrate over thepulse and approximate a rectangular signal of the equivalentluminance or one might define the offset at the point in time whenthe luminance has decayed to 10% of its maximum, or define atime p from the beginning of the frame until the luminance hasdecayed to nearly zero, as Bridgeman [9] suggested. In Fig. 6 wedo the latter. In our sketch, p&2:7 ms, which is in the time rangeof typical CRT phosphors [6]. The true disk duration would be2:7 ms now instead of 16.7 ms, that is, the SOF method wouldconsiderably overestimate the duration. Note that there aremonitors with much lower phosphor decay times (see, for instance,Fig. 2(a)). In addition, the assumption of temporal adjacency is

Figure 5. Display timing characteristics in the literature review studies. Frequency of refresh rates (A) and the minimal numbers of frames(B) used in the experiments.doi:10.1371/journal.pone.0012792.g005

Figure 6. Stimulus succession on CRT vs. LCD monitors. Schematic of the luminance course of a disk stimulus presented for one framefollowed by a surrounding ring stimulus. The signals of the disk stimulus are shown in blue, those of the ring stimulus in red. The top row outlines thesignal assumptions according to the SOF method. The two underneath rows sketch the true signal shapes on LCD and for CRT monitors, respectively.doi:10.1371/journal.pone.0012792.g006

Presentation Durations

PLoS ONE | www.plosone.org 5 September 2010 | Volume 5 | Issue 9 | e12792

Elze (2010) PLoS ONE

CRT vs LCD

10

Page 11: Psychtoolbox 3 - University of Glasgomartinl/HolidaySnaps/Psychtoolbox.pdf · Psychtoolbox 3.0 Routines for Psychophysics 1. Outline • Hardware and Software • PTB installation

PTB Installation

• for Windows

• for Mac OS/X

• for Linux

11

Page 12: Psychtoolbox 3 - University of Glasgomartinl/HolidaySnaps/Psychtoolbox.pdf · Psychtoolbox 3.0 Routines for Psychophysics 1. Outline • Hardware and Software • PTB installation

Basic Functions

•OpenWindow()

•Screen()

•try - catch

•Priority()

•AssertOpenGL

•VBLSyncTest

12

Page 13: Psychtoolbox 3 - University of Glasgomartinl/HolidaySnaps/Psychtoolbox.pdf · Psychtoolbox 3.0 Routines for Psychophysics 1. Outline • Hardware and Software • PTB installation

Screen()

Controls all aspects of the graphics- and display-hardware.

• Performs all 2D drawing operations. • Controls stimulus onset timing and provides timestamps. • Allows for some high performance image processing. • Performs on-demand stimulus post-processing.

13

Page 14: Psychtoolbox 3 - University of Glasgomartinl/HolidaySnaps/Psychtoolbox.pdf · Psychtoolbox 3.0 Routines for Psychophysics 1. Outline • Hardware and Software • PTB installation

try-catch-endtry% main prg

catch % catch error: This is executed in case something goes wrong % in the'try' part due to programming error:

% Do same cleanup as at the end of a regular session...Screen('CloseAll');ShowCursor;fclose('all');Priority(0);

% Output the error message that describes the error:psychrethrow(psychlasterror);

end

14

Page 15: Psychtoolbox 3 - University of Glasgomartinl/HolidaySnaps/Psychtoolbox.pdf · Psychtoolbox 3.0 Routines for Psychophysics 1. Outline • Hardware and Software • PTB installation

Screen()screens=Screen('Screens');screenNumber=max(screens);

gray=GrayIndex(screenNumber);

[w, wRect]=Screen('OpenWindow',screenNumber, gray);Screen(w,'BlendFunction',GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);

Screen('Flip', w);

tex=Screen('MakeTexture', w, imdata);

Screen('DrawTexture', w, tex);

[VBLTimestamp startrt]=Screen('Flip', w);

Screen('CloseAll');

15

Page 16: Psychtoolbox 3 - University of Glasgomartinl/HolidaySnaps/Psychtoolbox.pdf · Psychtoolbox 3.0 Routines for Psychophysics 1. Outline • Hardware and Software • PTB installation

Priority()

% Returns as default the mean gray value of screen:gray=GrayIndex(screenNumber);

% Open a double buffered fullscreen window on the screen% 'screenNumber' and choose a gray background. 'w' is the handle% used to direct all drawing commands to that window - "Name" of% the window. 'wRect' is a rectangle defining the size.% See "help PsychRects" [w, wRect]=Screen('OpenWindow',screenNumber, gray);

% Set priority for script execution to realtime priority:priorityLevel=MaxPriority(w);Priority(priorityLevel);

16

Page 17: Psychtoolbox 3 - University of Glasgomartinl/HolidaySnaps/Psychtoolbox.pdf · Psychtoolbox 3.0 Routines for Psychophysics 1. Outline • Hardware and Software • PTB installation

KbCheck% Make sure keyboard mapping is the same on all operating systems% Apple MacOS/X, MS-Windows and GNU/Linux:KbName('UnifyKeyNames'); % assign response keyresp=KbName('b'); % respond with key 'b'

% initialize KbCheck and variables to make sure they're% properly initialized/allocted by Matlab - this to avoid time% delays in the critical reaction time measurement part of the% script:[KeyIsDown, endrt, KeyCode]=KbCheck;

while ( KeyCode(resp)==0) [KeyIsDown, endrt, KeyCode]=KbCheck; WaitSecs(0.001);end

17

Page 18: Psychtoolbox 3 - University of Glasgomartinl/HolidaySnaps/Psychtoolbox.pdf · Psychtoolbox 3.0 Routines for Psychophysics 1. Outline • Hardware and Software • PTB installation

Example and Exercises

18

Page 19: Psychtoolbox 3 - University of Glasgomartinl/HolidaySnaps/Psychtoolbox.pdf · Psychtoolbox 3.0 Routines for Psychophysics 1. Outline • Hardware and Software • PTB installation

Example and Exercises

• Display image HolidaySnap.jpg HolidaySnap1.m

18

Page 20: Psychtoolbox 3 - University of Glasgomartinl/HolidaySnaps/Psychtoolbox.pdf · Psychtoolbox 3.0 Routines for Psychophysics 1. Outline • Hardware and Software • PTB installation

Example and Exercises

• Display image HolidaySnap.jpg HolidaySnap1.m

• Draw an anti-aliased fixation dot HolidaySnap2.m

18

Page 21: Psychtoolbox 3 - University of Glasgomartinl/HolidaySnaps/Psychtoolbox.pdf · Psychtoolbox 3.0 Routines for Psychophysics 1. Outline • Hardware and Software • PTB installation

Example and Exercises

• Display image HolidaySnap.jpg HolidaySnap1.m

• Draw an anti-aliased fixation dot HolidaySnap2.m

• Record response time and response HolidaySnap3.m

18

Page 22: Psychtoolbox 3 - University of Glasgomartinl/HolidaySnaps/Psychtoolbox.pdf · Psychtoolbox 3.0 Routines for Psychophysics 1. Outline • Hardware and Software • PTB installation

Micellaneous• Textures and Alpha Blending AlphaImageDemo.m

• QuickTime movie playback SimpleMovieDemo.m

• Image processing pipeline ProceduralGaboriumDemo.m

• 3D Graphics OpenGL UtahTeapotDemo.m

• PsychPortAudio19

Page 23: Psychtoolbox 3 - University of Glasgomartinl/HolidaySnaps/Psychtoolbox.pdf · Psychtoolbox 3.0 Routines for Psychophysics 1. Outline • Hardware and Software • PTB installation

Summary

• Know thy stimuli

• Know thy methods

• Know thy observers

Three Commandments of Experimentation:

20