by W.A. Steer PhD
About...
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.
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.
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