Shape from Shading, Texture, and Specularity

The visual system can readily perceive a three-dimensional object from a two-dimensional image. I am interested in how the brain creates a 3D representation given this ambiguous input. Here are some examples that demonstrate how the interpretations are affected different cues and their parameterizations. These examples require a modern web browser with support for WebGL.

Here is a set of objects ray-traced in Mitsuba with different attributes; textured, shaded, specular, and combinations of the three.

Texture only
Shading only
Specular only
Texture and Shading
Shading, Texture, and Specular

Now, lets take the specular object and manipulate how it moves relative to the environment. As you can see, environment and object movements can interact in interesting ways.

Object rotating, environment stationary
Object stationary, environment rotating
Environment map rotating 2x object speed
Higher speed environment map rotation
Environment map rotation reversed