有谁知道如何修复出现在 PsychoPy 刺激物上的随机绿线?

Does anyone know how to fix random green lines appearing on PsychoPy stimuli?

我刚开始使用 PsychoPy 并尝试翻转文本和光栅,两者都被绿线打断了。 有人知道如何解决这个问题吗?

我将 PyCharm 与 Python 3.8 一起使用,我收到这些错误消息,不确定是否相关:

C:\Users\USERID\AppData\Local\Programs\Python\Python38\lib\site-packages\pyglet\media\codecs\wmf.py:838: UserWarning: [WinError -2147417850] Cannot change thread mode after it is set
  warnings.warn(str(err))
C:\Users\USERID\AppData\Local\Programs\Python\Python38\lib\site-packages\pyglet\image\codecs\wic.py:292: UserWarning: [WinError -2147417850] Cannot change thread mode after it is set
  warnings.warn(str(err))

这是光栅的代码和图像:

    import psychopy.visual
    import psychopy.event
    
    
    win = psychopy.visual.Window(
        size=[400,400],
        fullscr=False,
        units="pix")
    
    grating = psychopy.visual.GratingStim(
        win = win,
        units="pix",
        size=[150,150])
    
    grating.draw()
    win.flip()
    psychopy.event.waitKeys()
    win.close()

编辑:我将 pyglet 回滚到版本 1.4.10,错误消息消失但绿线仍然存在。

我遇到了同样的问题,但发现只有我的电脑出现这种情况。当我在另一台计算机上使用完全相同的代码时,一切看起来都很正常。

我有同样的问题,在我的情况下似乎与 window 大小有关。它发生在 vis.Window(size=[1400,800]) 但将其更改为 vis.Window(size=[1920,1080]) 解决了它。

这里是解决方案:

尝试在创建 window 时添加参数 multiSample 和 numSamples,如下例所示:

w = visual.Window([wstim, hstim], color = [0, 0, 0], units = "pix", fullscr=False, multiSample=True, numSamples = 16)

在我的脚本中这很好用。