问题标签 [psychopy]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1649 浏览

python - 在 PsychoPy 中记录所有按键以及等待按键?

我正在使用 PsychoPy 进行实验。我有一个简单的实验,每次按下某个键时屏幕都会改变。这很简单,为此我使用了 event.waitKeys()。但是,我希望运行一个“背景”过程(不确定术语是否正确),其中记录了每次按键,包括不触发刺激的按键或屏幕转换期间发生的按键。

有没有办法做到这一点?

0 投票
1 回答
147 浏览

file-io - Psychopy 网站没有修复输出文件倍增数据

这是一些代码......每当我得到一个输出文件时,我都会得到一倍的数据。

0 投票
0 回答
173 浏览

python - 如何在古怪的任务中嵌入楼梯

目前,我尝试创建一个嵌入了楼梯程序的视觉古怪任务(使用 Psychopy v1.81.03,构建器版本)。赔率应该遵循楼梯(改变方向的gabor补丁)。标准应该是垂直方向的gabor补丁。我从创建一个简单的随机试验循环开始。在那个循环中,我插入了如下代码组件:

对于“实验开始”,我定义了一个方向变量(也在界面中引用它,其中定义了 gabor 补丁的属性)和楼梯:

对于“例程的开始”,我定义了刺激的呈现和一个 if 语句,该语句应该根据它是标准还是奇数来选择方向。

对于“结束例程”的部分,我定义了应该改变未来赔率方向的响应,具体取决于它是否是正确答案(检测 - 按下空格键):

一般来说,这会以某种方式起作用(标准和赔率是随机呈现的,赔率也会改变它们的方向,但不是以有意义或预期的方式)。我可以想象没有正确检测到响应或将其添加到楼梯。另一种可能性可能是设置赔率方向的 for 循环在某种程度上是错误的。但是由于我从来没有收到错误消息,而且我对精神病学也比较陌生,所以我很难找出问题所在。

有人可以帮助我解决这个问题吗?那将是非常棒的。

非常感谢你,

汉内斯

0 投票
0 回答
170 浏览

psychopy - 正弦波声音的阶梯频率差异——听觉自适应古怪范式

我尝试使用 PsychoPy 创建一个听觉古怪的实验。标准声音应该是正弦波声音(440 HZ),几率应该是不同频率的声音。如果检测到奇数,在下一次试验(楼梯程序)中,奇数和标准之间的差异应该更小(如果没有检测到奇数,则更大)。目前我不知道如何在 PsychoPy 中建立这个基本上非常简单的想法。有没有人暗示如何处理这个问题?

提前致谢,

最好的,汉内斯

0 投票
1 回答
304 浏览

psychopy - PsychoPy:记录用户输入字符串

我有一个 PsychoPy 例程,旨在充当内存对象跨度测试。在一个循环中,软件多次呈现一个对象(单个文本字符),然后是用户任务。该软件会记住字符串,然后要求用户输入所显示的字符。这个序列(任务循环,然后是字符召回)本身在一个更大的循环中出现了几次。

角色是随机选择的。

我想在 PsychoPy 生成的 CSV 文件或某种日志文件中记录用户输入的字符。在 PsychoPy 图形界面系统中如何做到这一点?

用于记录字符序列的代码块是:

开始例行程序

每一帧

loopTest = True 用户输入 = ""

结束例程

后来的例程有,作为它的开始例程

粗略(它是一个原型),但每个帧部分的目的只是通过 R_disp 文本刺激来反映写入屏幕的字符,同时允许用户退格而不用担心区分大小写。最终答案以givenAnswer结束,随后与之前建立的memorySequence进行比较。

我想将这些变量、memorySequencegivenAnswer的内容转储到 CSV 文件或某个日志文件中,这样我就不会丢失信息。

有没有办法做到这一点?

0 投票
2 回答
613 浏览

python - PsychoPy 使用随机点运动图 (RDK) 模拟扩展焦点

我需要使用 PsychoPy 的 RDK 功能来模拟扩展的焦点。

到目前为止,我有以下代码。然而,这只创建了一个向某个方向移动的 RDK。

我需要创建一个 RDK,其中的点从窗口中的特定位置移开。

IE使用 RDK 扩展的重点

我尝试更改参数,但我无法模仿所需的功能。我还查看并搜索了精神病学文档,但是没有提到“扩展重点”。

有没有办法使用 PsychoPy 做到这一点?如果没有,最好的选择是什么?

0 投票
1 回答
704 浏览

ios - PsychoPy Coder:根据帧定义图像持续时间

我在 Matlab 方面有一些经验,但对 PsychoPy 很陌生。

现在我想在两个图像之间不断切换,直到有键盘响应。每个图像应在屏幕上准确停留 100 毫秒,我希望能够验证是否是这种情况(例如在日志文件中)。

我通过在 win.flip() 之后使用 core.wait(.084) 来做对了——在一个大约 100 毫秒的 60Hz 屏幕上。我通过使用 win.logOnFlip() 将每个翻转的帧写入日志文件来验证它

但我相信我可以更精确,我只知道如何根据帧来定义图像的持续时间。

函数 core.wait() 只需要几秒钟的时间,而不是帧,对吗?

如果您能给我一些关于如何实现(和验证)6 帧图像呈现的提示,我将不胜感激。

提前致谢

最好的

塞巴斯蒂安

这是我的代码:

0 投票
1 回答
431 浏览

python - 如何保持 PsychoPy 对象 visual.Window 是 Windows 7 上最顶层(活动)的窗口?

我有一个实验代码,它通过命令行(即 os.startfile)打开其他程序,并且想知道即使在打开这些程序时,如何将 PsychoPy 创建的 visual.Window() 对象保留为最顶层的活动窗口。我希望这些其他程序在后台运行,并且不会干扰参与者对实验刺激的键盘响应。就像现在一样,我必须手动单击实验窗口才能在打开这些其他程序时再次激活它,并且在我单击它之前,PsychoPy 中不会记录响应。

如果您不介意分享如何将 PsychoPy visual.Window() 放在首位,我将不胜感激。我在 Windows 7 上运行 PsychoPy v 1.81.03,但也对 OSX 的答案感兴趣。感谢您分享您的知识和专业知识!

0 投票
0 回答
288 浏览

python - Psychopy GetKeys 麻烦

我已经与这个问题作了几个小时的斗争,而我在网上寻找解决方案的尝试却一无所获。希望这里有人有一些见识。

在实验过程中,参与者在没有用户输入的情况下看到一系列刺激,然后是面具。但是,在某些试验中,我们希望进行“捕捉”试验以确保参与者仍然参与其中。

所以理想情况下,流程看起来像:

stim->mask->stim->mask...->catch trial->mask(注册按键-“我看到了”)->stim->mask...

我遇到的问题是,当我调用 event.getKeys('space') 时,它总是返回一个空列表。

这是一段相关代码:

据我了解, event.getKeys() 返回自上次调用 getKeys 或调用 clearEvent 以来按下的所有键的列表。

在这种情况下,我不明白为什么键总是空的。我尝试在整个循环中移动 getKeys 事件,但无济于事。

我将不胜感激任何帮助,本

0 投票
2 回答
1153 浏览

image - 图像顶部的心理多边形

在 Mac 上使用 Psychopy 版本 1.81.03 我想在图像顶部绘制一个多边形(例如三角形)。到目前为止,我的图像始终保持在顶部,因此隐藏了多边形,无论我放置它们的顺序如何。如果我让多边形比图像晚一帧开始,这也是正确的。

例如,请参阅下面的代码(在编译之前使用 Builder 创建)蓝色正方形和红色三角形应该如何从第 0 帧开始,但是当您运行它时,蓝色正方形总是覆盖红色三角形!?

有没有办法让多边形在上面?在绘制它们之前,我是否需要以某种方式合并图像和多边形?

非常感谢你的帮助!!

塞巴斯蒂安