psychopy实验设计技术

xxxspy 2017-10-25 17:08:09
Categories: Tags:

psychopy是著名的心理学刺激呈现软件,类似eprime,但是因为加持python,所以远比eprime强大,而且psychopy和eprime类似,有适合非专业人士的图形界面,也有适合程序员的coder模式,更有对openGL的支持,使得很多在eprime中无法实现的特效在psychopy中都能轻而易举的实现,并且工作效率大大提升。

我是一个有心理学背景的程序员,主要编程语言是python,开发过一些数据管理系统和自动化报告系统,业余时间帮助心理学专业的硕士和博士完成一些比较难的编程任务,有幸接触到了psychopy。在心理学中,已经有很多比较成熟的刺激呈现软件,比如E-prime或presentation,而E-prime是我接触psychopy之前,最常用的刺激呈现软件,当然多半是通过写脚本来完成,因为我的身份就是程序员,我所接受的任务也都是比较复杂的,所以编程是我最佳的选择。
我使用E-prime大概有5年的时间,我几乎写过心理学中的所有实验范式,因此我受够了E-prime的种种不爽:

与此相比,psychopy有很多优点:

不过,psychopy作为一个年轻的软件,还有不少的缺点:

我使用psychopy开发实验程序已经有2年,为了了解psychopy的API,我通读了它的源码,从一个开发者得角度来说,我觉得psychopy已经达到了成熟的水平,这也是为什么我今天想要推广psychopy在中国的应用。我身边的的心理学研究人员早就抛弃了E-prime,投身到psychopy的怀抱,也是在他们的鼓励下,我才斗胆开始写这本书。
在我写这本书的时候,网上已经有一些关于psychopy零零散散的入门文章,文章质量让我担忧,我觉得psychopy是一个好东西,但不能因为入门教程差而丧失一些用户。
这本书的大体结构你可以通过目录了解一二,不过我在这里介绍一下故事的主线。我是这么想的,为了降低学习曲线的斜率,我先从psychopy的界面开始,也就是Builder视图,通过界面来了解psychopy的主要构成和它的主要功能,使得你能够完成一些简单的实验,如stroop范式。但是,我不会在界面上停留太久,因为界面构建实验程序效率低,且很难完成一些复杂任务,所以我们会接着往下走,进入Coder视图,也就是编程模式。这时候你需要了解一些python基础,不过python真的很简单,两周时间足以让你成为一个合格的python初级用户。在完成了Builder和Coder的教程以后,我会完成一个经典的实验范式,并将代码开源给你们,你们可以学习,也可以直接用到自己的实验中去。
在完成这本书以后,我会写几个经典范式的实验开发教程,每个范式都单独成册,这是为了让一些已经有psychopy基础的人只不必阅读所有的内容,只需要阅读自己用到的实验范式即可,稍加修改就能完成自己的实验,毕竟心理学人不是专业的程序开发人员,没有必要完全掌握psychopy的所有技术细节,只要能在已有程序的基础上完成自己的研究即可。