"Psychtoolbox教程1"
Psychtoolbox是一个用于心理学实验设计和视觉刺激呈现的工具包,它是基于MATLAB环境的。这个教程是浙江大学心理系在2012年短学期由一组成员整理翻译的,旨在帮助初学者理解和使用Psychtoolbox进行实验研究。在掌握了MATLAB基础之后,学习Psychtoolbox会更加顺利。
在提供的代码示例中,展示了如何使用Psychtoolbox呈现一张图片的基本流程:
1. 定义窗口背景颜色:`win_bk_color=[125,125,125];`
这行代码定义了一个灰色(RGB值为125,125,125)作为窗口的背景颜色。
2. 打开窗口并获取句柄:`[winPt,winRect]=Screen('OpenWindow',0,win_bk_color);`
`Screen`函数用于操作屏幕,这里的`OpenWindow`子函数用来创建一个新的窗口,`0`代表使用默认屏幕,`win_bk_color`是前面定义的背景色。
3. 加载图片:`a=imread('imgname.jpg');`
`imread`是MATLAB的标准函数,用于读取图像文件,这里读取名为'imgname.jpg'的图片。
4. 创建纹理对象:`b=Screen('MakeTexture',winPt,a);`
`MakeTexture`函数将图像数据转换为可以在屏幕上渲染的纹理对象。
5. 呈现图片:`Screen('DrawTexture',winPt,b);`
使用`DrawTexture`函数在指定的窗口句柄`winPt`上绘制纹理对象`b`。
6. 更新屏幕:`Screen('Flip',winPt);`
`Flip`函数将渲染缓冲区的内容翻转到屏幕上,使得图像可见。
7. 延时:`WaitSecs(2);`
`WaitSecs`函数让程序等待指定的秒数,这里是2秒。
8. 关闭所有窗口:`Screen('CloseAll');`
`CloseAll`函数关闭所有由Psychtoolbox打开的窗口。
此外,教程还提到了其他一些功能,如:
- 计时:通过`toc`和`tic`函数来记录时间间隔。
- 键盘检测:使用`KbCheck`函数实时检查是否有按键被按下,用于收集反应时间等数据。
- 设置字体大小、写入文本、计算显示位置:`TextSize`、`DrawText`、`TextBounds`、`Rect`和`DrawLine`等函数可以用于文字的处理和图形的绘制。
在实际实验设计中,这些基本操作可以组合起来实现复杂的视觉刺激序列和行为响应的记录。Psychtoolbox提供了丰富的函数,涵盖了从简单的刺激呈现到复杂的实验逻辑控制,是心理学实验软件开发的重要工具。