top of page

Random Dot Stereogram              STANFORD PSYCH 30 Project 

The random dot stereogram simulates a 3D image with with red-blue glasses, as each eye only receives input from one of the colors, and so tricks the brain into extracting depth information from a flat image.

 

Technically, this is accomplished via false binocular disparity. Binocular disparity is the difference in image location of an object seen by the right and left eyes, due to their horizontal separation. Naturally, the image that is fixated upon falls on the horopter, i.e. surface on which objects fall on corresponding points in both retinas, while points inside or outside of it will have various magnitudes of disparity and can fall on non-corresponding retinal points. In the stereogram, however, the entire image falls on the horopter, requiring disparity to be coded via shifting of the red/cyan dots to artificially create a 3D effect with red-bue glasses.

​

This concept was implemented using python (graphing the points with matplotlib). The program takes in an image provided by the user (with the alpha channel corresponding to the depth of the pixel) and shifts the red plotted dots based on the picture to create the output illusion image.

​

Here are the results of using the batman logo on two trials with dots sized 4 and 5 respectively:

(Size 4)

Looming Luminance Square         STANFORD PSYCH 30 Project

Media playlist can be found here.

Executable version and dependent dll files here

(Keys 1-3 select color presets, 4 selects a random color, and ESC exits the application. Your computer may warn you about opening the application, ignore this message)


Citations:

Bach, Michael. "Looming by Luminance." Visual Phenomena & Optical Illusions. N.p., 24 Nov. 2004. Web. 1 Dec. 2016. <http://www.michaelbach.de/ot/sze-lumiloom/index.html>.


Weiss, M., Seidemann, A. and Schaeffel, F. (2004), Stimulating human accommodation without changes in focus. Ophthalmic and Physiological Optics, 24: 207–217. doi:10.1111/j.1475-1313.2004.00188.x. Web. 1 Dec. 2016. <http://onlinelibrary.wiley.com/doi/10.1111/j.1475-1313.2004.00188.x/full>.

Purpose:

To simulate change in depth and illusory motion, without changing the focus or any using actual motion.

​

Illusion Generation:

The illusion was generated with OpenGL, as it offered comprehensive graphics possibilities. To begin, 100 quads were drawn a grid pattern on the screen with random starting brightness values from 0-1. The brightness was then modulated via a two-phase saw-tooth like function over time, with one phase increasing value from 0-1 and jumping back to zero over time and other phase decreasing from 1-0 before jumping back to one. This creates a periodic pulsing that changes phase after a set amount of time. Next, color was added via keyboard activated presets and random rgb multipliers to switch up the illusion and make it more interactive. Finally, post-processing via a framebuffer was added to slightly blur the grid before displaying it on the screen.

 

Note:
The saw-tooth function was implemented by increasing or decreasing the brightness based on the delta time from the last update, switching phase after some periodic time had elapsed. Since the period was greater than one (roughly 3 seconds) brightness exceeded 1.0 so the floor function was used to remove the left side of the decimal.

​

Perceptual mechanisms:

Monocular Cues

  • Atmospheric perspective (pictoral cue) was simulated via the looming and receding effect of the quads on the screen. ‘Distant’ objects appear less sharp/visible due to reduced brightness rather than atmosphere and blue coloring can be applied to add characteristic tint at distance.

  • Accommodation (oculomotor cue) can take two forms, i.e. proximal accommodation due to known distance of target or blur-driven/reflex accommodation in response to target defocus. In the case of this illusion, looming is effective in stimulating proximal accommodation though false changes in depth. The on-off stimulus does not have a known effect on reflex accommodation, however defocusing the illusion provided random accommodation responses which supports blur driven accommodation (Schäffel, Seidemann, Weiss). In relation to perception, change in the shape of the lens when focusing on objects at various known distances (proximal) creates the feeling of the eye muscles tightening and so cueing you in to a change in depth.


Motion

  • Illusory motion is created through apparent motion of flashing lights, i.e. no actual or real motion but fast enough that we perceive squares zipping around (all digital screens today use this concept). Additionally, due to phantom changes in accommodation, the object appears be at different depths. This also creates illusory motion on the z-axis, as the image appears to be breathing in and out (looming and receding) despite no actual motion. The effect of the motion in depth can be increased by only using one eye as binocular cues cannot discredit the flatness of the image.


Results:

bottom of page