www.techmind.org logo
by W.A. Steer  PhD
About...


 

Stereograms: creating the best

The software around on the Internet, mine included, makes it relatively easy to knock up some simple stereograms. However an appreciation of the medium and a great deal of skill is required to produce truly stunning pieces of artwork. I hope this document will open your eyes, answer some frequently-asked questions, and help you get the most out of this new art form.

This document assumes that you are familiar with the material covered in my Introduction to Stereograms.

Introduction and Definitions

Firstly, recognise that a stereogram is built from two components: the actual 3D scene to be contained within, and the pattern used to render it. The 3D scene may originate in any computer-format, but as far as the stereogram program is concerned, it simply needs to know the depth to be represented by each pixel on the image. It is thus convenient to pass the 3D information to the stereogram software as a 2-dimensional array of depths known as a depth-map, commonly in the form of a greyscale picture where the gradations from white to black indicate increasing distance.

 


Diagram: A stereogram is formed by processing a pattern with a depth-map.

Sometimes you will see a depth-map called a "bump map". This terminology stems from C.A.D./rendering software which frequently use the concept of a greyscale picture to describe surface textures, such as pebble-dashing. I will avoid the term "bump map" because it is normally applied to definitions of small variations in the surface of a larger body, rather than the complete range of depths encountered in a scene.

3D scene and depth-maps

For a stereogram to be good, it must contain an interesting 3D scene. Accept that the amount of detail that an average person can discern is fairly limited, so big, bold designs work best. Nevertheless, a handful of more subtle features will keep experienced viewers enthralled for longer.

Probably the most difficult part of realising a stereogram is getting a good idea for a scene into a usable depth-map. There are four main approaches:

Bitmap art software
Programs such as the Windows Paintbrush, or Paint Shop Pro can be used to manually draw shapes or text in different shades of grey, so they appear at different depths in the image. This is tedious, and generally will only result in a somewhat limited "cardboard cutout" collage of flat shapes.

Custom computer program
For virtually all the depth-maps I created I wrote small custom computer programs for the task, each scene requiring a unique chunk of code. Providing you are of the programmer type, this technique works well for simple scenes which can be described geometrically or algorithmically. It is also good for plotting mathematical surfaces and may be the only way of rendering scientific data.

CAD software
You can build up quite complex scenes and freely change the camera angle and image size using the various C.A.D. programs, but these in turn need considerable skill, practice, and patience to use. The particular software used will determine how easy it is to output the scene as a depth-map. If there is no built in feature, they can be coaxed, by using matt white surfaces, purely ambient illumination, and black fog or "distance cue" rendering options. An alternative is to put a lone point light source at the camera position, with shadows switched off, and linear fall-off selected. Care must always be taken to ensure the grey level varies linearly with depth, otherwise the scene will become distorted in the stereogram. Consequently features such as gamma-correct must be turned off as well. Similarly, anti-aliassing options have an undesirable effect in this application. You need to make sure the depth-map has a wide and smooth tonal range of greys, otherwise the stereogram may have very distinctive layers in place of smooth curves.

Model scanning
People or animals are particularly difficult to model by computer, and artists may well be much more at home sculpting with plaster or plasticine than trying to get to grips with complex computer software anyway. The answer is to create a real model scene, then input it to a computer using a 3D scanner. Unfortunately these are extremely expensive to buy, however bureaux services are available - though still far from cheap!

I'm working on software to generate depth-maps from a simple stereo pair of photographs, but this is still in a very early stage of development.

Note that the resolving power of the eye is such that it is completely unnecessary to have more than 256 discrete levels in a stereogram depth-map.

Patterns

Patterns obviously add lots of interest and set the mood of a stereogram. But never forget that all the 3D information is conveyed by the subtle variations in the repeated pattern. A pattern lacking in fine detail - a cartoon is the worst example - will fail to reproduce delicate 3D structure and the stereogram may assume an indistinct "watery" quality. At the other extreme, large scale structure in the pattern is essential to aid initial and sustained correct convergence of the eyes. Good contrast helps the convergence of the eyes, but take care: a pattern which is too "strong" or itself suggestive of 3D - containing representations of shadows, for example - is likely to detract from the hidden image. It can be difficult to predict how well a particular pattern will work for a given depth-map, though with experimentation you'll develop a feel for it.

Ensure your audience sees what you intended

There are two common reasons why an audience may not see quite what was intended in a stereogram:
Artifacts
Many of the earlier popular computer stereogram programs available on the Internet have a variety of deficiencies which manifest themselves as artifacts in the 3D image: narrow fragments of scene appear in places where they do not belong. They characteristically repeat - "echo" - across the page and may come and go as you view the picture. If you persuade yourself to look "through" them they may become totally invisible, but once seen they usually reappear again soon. I worked long and hard to eradicate this problem with SISGen. There are two main features required in stereogram software to prevent artifacts arising at depth discontinuties: hidden-surface removal (the process can only properly support unique depths) and some means of ensuring that inserted pattern does not replicate any already used on that line.

Iconic maelstrom.gif (25kB) A classic stereogram with artifact is Pascal's maelstrom.gif (a minature of which is shown to the right). I find it near-impossible to see right into the "eye of the storm" without getting distracted by a flat, narrow vertical artifact shaped like a chimney, being broader at its base than higher up. If you look hard, you'll notice it repeats at regular intervals across the stereogram, though in the copies the base curves towards you quite sharply. It looks to me as if the root of the problem in this instance was the use of a pattern which was narrower than the widest repeat distance required, and hence repeated itself within that period (except at the shallower bottom of the picture).

A second example can be found if you look closely at another of Pascal's early stereograms, his "dripping tap": to the right of the tap you'll see a typical artifact, this time stemming from the depth discontinuity between the tap and the background.

Thanks to Pascal Massimino for permitting me to reference his work for this purpose.

"Multiple divergence"
When viewing a stereogram properly, the eyes diverge slightly from their usual viewing direction so that the left and right eyes look at immediately adjacent repeats of the pattern. It is sometimes possible to "doubly" or "triply" diverge the eyes to look at adjacent-bar-one or adjacent-bar-two repeats, with a very weird effect on the 3D image. Obviously the wider the repeat of the pattern the less likely it is that "multiple divergence" can be obtained. You can safely assume no-one will actually diverge their eyes in an absolute sense (i.e. go the opposite of cross-eyed), so ensuring that twice the repeat width is always greater than an eye-separation guards against the problem completely. In reality it's normally good enough to ensure the maximum repeat width is greater than half an eye-separation, which in practical terms means that the deepest item in the scene is at least as far behind the stereogram as the observer is in front. If your stereogram is postcard size, or has to be shallow for some other reason, then the risk of multiple divergence is more-or-less unavoidable.

General

Resolution is everything. The greater the print resolution of your final stereogram the more detailed and vivid the 3D becomes. For stereograms to be viewed at reading distance to a few feet, you should aim to approach 200 to 300dpi (equivalent to the resolving power of the eye at that distance). On a practical note, an A3-size picture at 300dpi will be something like a 20Mb file!

Some stereogram programs vary the repeat distance in direct proportion to the depth to be represented. Mathematically this is not quite correct and will lead to a mild distortion of depth, especially noticeable in very deep scenes. SISGen uses a slighly more sophisticated relation to achieve perfect depth scale. When combined with a depth-map incorporating perspective an even more realistic effect is obtained.

Contrary to popular belief, the depth resolution of an autostereogram on a given display device is just as good as for other technologies such as anaglyphs (red/green spectacles) or sequential display (alternate left/right images on a screen, with synchronised blinking LCD spectacles). The real limitation (and reason why autostereograms will never wipe out other types of 3D) is their inherent inability to represent localised colour. Normal visual detail, such as colour and form, is sacrificed in order that the stereographic (depth) information can be conveyed when both eyes see exactly the same picture. Traditional 3D uses some kind of filtering so that each eye sees a completely independent image, and then localised detail presents no problem.

It should be remembered that a very small minority of the population are unable to see autostereograms because of a genuine sight-difficulty, and many more don't see them because they haven't got the time - or inclination - to learn the technique. As long as you have reasonable vision and importantly a comparable quality of sight in each eye (with any spectacles if applicable) then there is no physical reason why you cannot view stereograms. For two years my brother couldn't see them, and denied he ever would, then one day - it happened!

If you are really serious about stereogram-creation you should try to understand the technical details of the method, documented in Technical Description of my Algorithms and Programs.

Answers to FAQs

The stereograms I've made are so coarse - please direct me to some depth-maps with more than 256 levels.
If you work out the resolution of the human eye (say 300dpi at reading distance, decreasing with increasing distance), then it is apparent that even under best conditions and a close-viewing stereogram it would be near impossible to distinguish 256 linearly-spaced levels spanning the maximum "safe" range usable in a stereogram. Rather, the complaints arise because stereograms have been produced at low resolution with no anti-aliassing. A standard computer monitor (about 70dpi) is incapable of representing more than approximately 40 depths in a typical stereogram, though the oversampling feature in SISGen will smooth out the jumps making them barely noticeable. Of course if you really need to represent fine detail, then a high-resolution output device is still a necessity.

Why do you need hidden surface removal in a stereogram program?
Failure to implement an effective hidden-surface routine will almost certainly result in the production of artifacts in the image stemming from regions where there is an abrupt change of depth as you move horizontally across the page. See the feature above on artifacts.


Stereo index Homepage

Originally written: 1997 or earlier
Last modified: 23 March 2002

Source: http://www.techmind.org/stereo/shints.html

©1995-2001 William Andrew Steer
andrew@techmind.org