[comp.graphics] Multibit Dithering

jbm@eos.arc.nasa.gov (Jeffrey Mulligan) (02/21/91)

bahl@Gauss.dec.com (P. Bahl (Victor)) writes:

>I am looking for references on multibit dithering (Ordered and/or Error 
>Diffusion).

There is a very simple method for the special case where the
grey scale is to be quantized uniformly (equal steps):

Say you want to quantize to N levels, and that the input
is normalized to a min of 0 and a max of N-1.  First quantize
the image to N-1 levels by rounding down, resulting in an
integer image ranging from 0 to N-2.  (To insure that no
pixels get quantized to N-1 you have to tweak the normalization
so that the max is slightly less than N-1).  Now subtract the
quantized image from the original, which results in a non-negative
error image ranging from 0 to 1.  Apply your favorite binary
dithering algorithm to this error image.  Now add the dithered
error image to the quantized (truncated) image, with the "on"
pixels in the dithered error image "promoting" selected pixels
in the quantized image to the next level.

I discussed this briefly in an SPIE paper from 1990 (of which I
have reprints).  There are also other, more complex algorithms
which can deal with nonuniform quantization and arbitrary
color palettes, for which I cannot supply references off-hand.
For arbitrary color palettes, this usually boils down to
finding the "best" color; there are two halves to the problem:
the search (maybe it can be restricted), and deciding what
metric to use to decide which of two palette colors is "closer"
to the target color.  General formulas for characterizing
perceptual color differences is an active area of psychophysical
research.



-- 

	Jeff Mulligan (jbm@eos.arc.nasa.gov)
	NASA/Ames Research Ctr., Mail Stop 262-2, Moffett Field CA, 94035
	(415) 604-3745