问题标签 [psychtoolbox]

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 回答
867 浏览

matlab - psychtoolbox 准确计时不会在设定帧翻转

我在使用 psychtoolbox 和准确的时间时遇到问题。我按照网站上的教程和 PsychDocumentation 中的 PBTTutorial-ECVP2013.pdf 编写了我的代码。但不知何故,它仍然无法正常工作。翻转(超过 20 秒)所需的时间比应有的时间长(1 或 2 秒)。所以我想我在某个地方犯了一个严重的错误,但我找不到它。你能帮我写代码吗?

无论如何,这就是我的代码的样子。

0 投票
0 回答
156 浏览

matlab - OpenGL 2D 坐标到 Psychtoolbox(像素)坐标

我正在修改一个matlab代码。它使用 Psychtoolbox 显示图形,基本上可以创建一个屏幕窗口。我要改编的代码使用了 Matlab OpenGL 工具箱提供的高级 Psychtoolbox 命令和低级 OpenGL 调用。我熟悉 Psychtoolbox,一点也不熟悉 OpenGL。

Psychtoolbox 中的坐标以像素为单位,从屏幕左上角 (0,0) 开始,向右 (x) 和向下 (y) 移动。

我只需要 OpenGL 坐标的 Matlab 实现和 Psychtoolbox 基于像素的坐标之间的转换。网上有一些问题和答案以及许多关于此的资源,但我仍然感到困惑。

例如,据我了解,OpenGL 使用范围在 [-1, 1] 之间的归一化坐标。但是,在我正在调整的代码中,尽管 y = -1.5,但仍能很好地显示某些内容。

所以我的问题是:

  1. 如何在 Matlab 的 OpenGL 和 Matlab 的 Psychtoobox 坐标之间进行转换?
  2. Matlab中的OpenGL坐标可以超出[-1, 1]范围吗?
0 投票
1 回答
56 浏览

for-loop - 试验结构中的重复数字

如何让 matlab 再次使用数字?

我有 10 次试验,但只有 8 个数字,我想告诉 matlab 以随机顺序重复这些数字。我怎样才能做到这一点?

数字 = {0 1 2 3 4 5 6 7 8};

0 投票
1 回答
193 浏览

matlab - OpenGL 映射到 Psychtoolbox(像素)坐标

前段时间我问了一个类似的问题,但我想我现在可以更好地表述它。

下面的代码(我正在改编,而不是从头开始编写)在正确的位置和正确的角度绘制了一个白条,如下图所示。它使用Psychtoolbox中的 OpenGL 命令(在 Matlab 上运行)。Psychtoolbox 坐标非常简单且基于像素:(0,0) 位于左上角。Y 向下增加,x 向右增加。

我无法理解 OpenGL 和 Psychtoolbox 坐标之间的映射。特别是,这条线glTranslatef( SkitSet.xLever, SkitSet.yLever, 0 );将白条向下平移了 1.5 个单位。这些单位是什么?我在哪里告诉 matlab OpenGL 中的 1.5 个单位大约是垂直屏幕的一半?

最少代码的结果

0 投票
1 回答
560 浏览

matlab - 在 Psychtoolbox 中打印变量值

我正在寻找一种在 Psychtoolbox (Matlab) 中将变量的值打印到屏幕上的方法。我正在寻找类似的东西fprintf:例如。fprintf('%s%d\n','Your score: ', score);

我猜这DrawFormattedText()就是我正在寻找的函数,但有人可以建议如何添加一个不属于字符串的变量吗?

谢谢。

0 投票
1 回答
533 浏览

matlab - KbCheck (?) 在 Psychtoolbox RT 范式中不可靠

我正在尝试使用 Psychtoolbox 在 MATLAB R2014b 中创建一个简单的 RT 实验。参与者必须对面孔进行分类,尽可能快地按下两个按钮之一。我在一台计算机上创建了范例,它运行良好,但是当我将它移到另一台(我想要测试的那个)上时,出现了一个奇怪的错误:即使程序似乎正在记录按键大多数试验,有时它不会响应,我必须按几次键才能进行下一次试验。我不确定发生了什么,但我认为计算机本身可能有问题(可能是什么?),或者代码的这个特定位:

谁能发现这可能有问题?

顺便说一句:这是让 RT 退出 PTB 的正确方法吗?我在网上找到了那段代码,但我有点不确定为什么不使用“secs”变量。

两台计算机都运行 Windows 10。

0 投票
1 回答
393 浏览

matlab - Matlab 彩色棋盘格

我正在使用 Matlabcheckerboard函数来创建棋盘格。我有兴趣将棋盘格做成条纹(而不是格子),这是我想出来的。我还想更改条纹的颜色,使其变为红色和白色或红色和粉红色,而不是黑色和白色。我不明白该怎么做。

在 Matlab 棋盘格函数中,黑色被定义为大小zeros(n)在哪里n,因为在 Matlab 中黑色的颜色代码是 [0 0 0],所以这是有效的。但我不知道如何设置它以产生红色瓷砖或条纹。

我努力了

为我想要的带有 81 个方格的棋盘格获得红色条纹。这会产生一个81 x 81如下所示的矩阵:

而且它不是红色的,它只是不同粗细的黑白条纹。

谁能帮忙?!

0 投票
0 回答
226 浏览

matlab - 如何设置纹理出现在 Psychtoolbox 中的持续时间?

我是 Psychtoolbox 的新手,正在使用它在屏幕上创建一个反转棋盘图案。棋盘已被着色,使其更像垂直条纹而不是格子。我有两种对比条件,一个是常规的黑色/白色条纹图案,然后是一个浅灰色/深灰色条纹图案。我已经设法做所有事情,除了我真的在时间上挣扎。

起初,我在时间方面苦苦挣扎,无法让屏幕从灰屏切换到黑白屏。等待帧解决了这个问题。然而,既然我让每个屏幕都出现了一定的持续时间,那么每个纹理的图案交替已经停止。有人对如何解决这个问题有建议吗?目前我的代码中缺少什么阻止了条纹的反转?

任何人都可以提供建议吗?我的代码如下。

0 投票
1 回答
330 浏览

matlab - 在 Matlab 中创建平滑网格

我正在使用 Matlab 函数checkerboard创建棋盘格,然后将其显示为圆形而不是正方形或矩形。我已经编写了下面的代码来执行此操作,但是因为我的网格网格似乎很粗糙,当我这样做时,imshow(checks)您会看到圆的边缘是锯齿状的,而且一点也不光滑。谁能告诉我如何克服这个问题?

或者,我必须设置这么小的网格网格的原因是我需要K生成的矩阵checkerboard非常小,因为我希望在那里显示更少的棋盘格,使其看起来好像正方形有更大的距离。如果有人知道在不创建网格网格的情况下这样做的方法,那也可以。

这是我使用的脚本的一部分,Psychtoolbox所以我能做的有点受限。创建完成后checks,我会使用它生成一个texture以绘制到屏幕上,同时将其放大以使其更大。

任何人都可以帮忙吗?

代码:

0 投票
2 回答
1311 浏览

matlab - Psychtoolbox - Text for Instruction

I have some problems using Psychtoolbox Screen and Textwindow... For my experiment I want to give an instruction at the beginning. I used something like this: % Draw text in the middle of the screen in Courier in white

And the other basic Screen definitions. The problem is: The text is not fully shown. I tried different sizes and set the Font to Times, but it is always the same - every letter is only displayed 3/4 (ca)...

What could be the problem? Would be very nice if someone can give me a hint...

Thanks!

Letters are cut