This is how to create a 5-axis CNC cut photo, a project in collaboration with James Yett, using the same methods as the 3d printed photo (http://www.instructables.com/id/3d-printed-photo/).
The concept works on the basis of a diffuse reflection on a surface from a single light source http://en.wikipedia.org/wiki/Diffuse_reflection . When a surface is oriented so that it reflects the light source towards your eye, it appears to be a brighter color. When the light is reflected away, it appears darker.
If the surface texture is fairly rough you will have a more diffuse reflection and most of the brightness of the light is scattered. This works best with a darker material since a lighter color will absorb less light and the light source will be less visible. If the surface is polished, you will get more specular reflection and the light source will appear brighter, allowing for a lighter color material.
To create the oriented surfaces, I used Autodesk's Dynamo which is a free graphical programming environment for Vasari or Revit (get Vasari for free at www.autodeskvasari.com and Dynamo at www.dynamobim.org). You will also need Solidworks with HSMworks (www.hsmworks.com) to generate the 5-axis toolpaths.