NoiseStim resizing: From Exp Settings to Deg


I have managed to make a Noise component by playing around with some settings:
Type of Noise: Gabor
Randomize Image component: Phase
Size = [0.5, 0.5]
Noise element size = 0.825
Foreground color = [1,1,1]
Orientation for Gabor filter = 0
Contrast = 0.3
final SF = None
Phase = 0.0
Texture resolution = 512
Interpolate: Linear
Apply filter to noise sample: Gabor
Base spatial frequency: 16
Spatial frequency bandwidth = 1
Orientation bandwidth for Gabor noise = 30
Skew in frequency spectrum = 0
Order of filter = 0
Upp cut off frequency = 8
Lower cut off frequency = 1
Number of s.d. to clip noise = 7

At the end of this process, I realized that I had “from exp settings” set as spatial units, but I had to use “deg” instead. However, when set the units to “Deg”, the Noise stimulus looks completely different (it is very tiny and a very different kind of noise), and I do not understand how to modify my values above to make it look as I had it before.
Is there a direct formula to automatically change the parameters above?
I tried dividing everything by a constant (I used x60, as it makes the stim picture equal size as what I had previously), but it seems not to work, the noise image looks very different (I suspect more complex adjustments are needed in the parameters above).

Does anybody know what needs to be modified in those parameters to match other settings? I am attaching the original psyexp file.


NoiseStim.psyexp (8.0 KB)


see here for the various units for the window and stimuli. From reading this paragraph you might notice that there is no direct conversion from one unit to the other. But given that you are using deg, it should be simply to determine the proper x- and y-size for your stimulus using α = 2arctan(g/(2r) or g = |2rtan(α/2)| with

α being the viewing angle
g being the size of the stimulus
r begin the distance of viewer to object.

So, an object with a size of 1 cm, given a viewing distance of 60 cm has a viewing angle of 0.955 degree. or wanting to have a viewing angle of 0.5 degree, viewing distance of 60 cm, results in an object size of 0.524 cm.

Notice that you need to know the screen size and the viewing distance (set-up a monitor) which makes it difficult to use in online experiments. But there is a screen scaling procedure by @wakecarter which alleviates this problem.

Best wishes Jens

Thanks for your reply Jens.
I have all my parameters (viewing distance, monitor size, pixels etc) set into my monitor settings, so the conversion for degrees should be automatic. The problem is that the stimulus does not scale accordingly, i.e. it does not look the same in a smaller scale, but it really looks different noise-wise. I think the parameters I mentioned above scale in a different way, not just based on multiplication/division for a constant (based on the degree conversion), and I am wondering whether there are some nonlinear transformations which are implemented in the parameters above…


a size of 0.5 degree should result in a stimulus of size approx. 0.524 cm given a viewing distance of 60 cm. The settings in the monitor center do not do the conversion for you.

What unit did you use before and how large do you want to have your stimulus?

Best wishes Jens