我正在执行一个实验,名为“心理变态”1.85.1。
该任务将在1920 x 1080监视器上执行(即16:9宽高比)。
而不是通过以下方式更改我使用的每个单独视觉图像对象的大小:
some_obj.size *= [0.6,1]我宁愿使用一行代码,它只是所有视觉对象的大小参数的普遍机会,以说明16:9的比例所导致的扭曲。
有什么建议吗?
编辑:下面是一个由精神病患者的默认比例为4:3和适当的图像引起的拉伸示例。左边是图像大小不变时发生的情况,右边是如上所示改变图像大小时发生的情况。

实验的窗口是通过以下方式创建的:
myWin = visual.Window(size = (1200,675), fullscr = False,
winType = 'pyglet', color = 'white') 上面显示的圆形图像由以下人员创建:
testCircleL = visual.Circle(myWin, fillColor = 'lightskyblue', lineColor = 'lightskyblue', units = 'norm',
radius = 0.5, pos=(-.50,0.15))
testCircleR = visual.Circle(myWin, fillColor = 'lightskyblue', lineColor = 'lightskyblue',
radius = 0.5, pos=(0.5,0.15)); testCircleR.size *= [0.6,1]发布于 2018-03-11 08:25:57
正如Mike在评论中指出的,如果保持纵横比是问题所在,请使用height、pix (像素)或deg作为units in the window,例如myWin = visual.Window(units='pix')。请注意,对于deg,您必须在监控中心输入一些距离测量值才能正常工作。另外,请注意,您必须重新缩放脚本中的数字。例如,0.5“规范”的半径很大,而0.5像素的半径只能覆盖一个像素。
如果你真的想一次缩放许多刺激,你可能会在一个循环中进行:
# Set up many visual objects
stim1 = visual.Circle(myWin)
stim2 = visual.ImageStim(myWin)
stim3 = visual.GratingStim(myWin)
# Scale multiple visual objects
for this_stim in [stim1, stim2, stim3]:
this_stim.size *= [0.6, 1]当然,这只适用于具有size属性的刺激。
https://stackoverflow.com/questions/49182669
复制相似问题