[comp.graphics] reverse dithering

dickey@ssc-vax.UUCP (Frederick J Dickey) (11/16/87)

Does anybody have any pointers to reverse dithering techniques? In
particular, suppose you have a bilevel display device and you want
to display an image that has several gray scales. A common technique
seems to be to "dither" the image with patterns like the following:

     . . .....
      . ......
     . . .....

My question is the following: Given the image in the dithered form,
is there any reasonable way of reconstructing the original gray scale
image?

cmcmanis@pepper.UUCP (11/18/87)

In article <1525@ssc-vax.UUCP> dickey@ssc-vax.UUCP (Frederick J Dickey) writes:
>My question is the following: Given the image in the dithered form,
>is there any reasonable way of reconstructing the original gray scale
>image?

If you know the region of the dither (like 4 X 4 squares or something) you
can just average all of the pixels in the region and multiply that by the 
a normalizing factor.
--Chuck McManis
uucp: {anywhere}!sun!cmcmanis   BIX: cmcmanis  ARPAnet: cmcmanis@sun.com
These opinions are my own and no one elses, but you knew that didn't you.

holloway@drivax.UUCP (11/18/87)

In article <1525@ssc-vax.UUCP> dickey@ssc-vax.UUCP (Frederick J Dickey) writes:

>My question is the following: Given the image in the dithered form,
>is there any reasonable way of reconstructing the original gray scale
>image?

1) Find the size of the dithering matrix. This should be pretty obvious, and
   usually square  (8x8 pixels is common)

2) Take each pixel in turn as the center of the dithering matrix. Then count
   the number of white pixels in the matrix, divide by the total number
   of pixels in the matrix, and you have your percentage of white for that
   pixel (from 0 to 1).

This method isn't foolproof, especially where the intensity changes quickly,
but it should serve. I'd be interested in hearing about any better algorithms.

- Bruce
-- 
*******************************************************************************
* Bruce Holloway - Terminal Netnews Addict       uunet!amdahl!drivax!holloway *
* ALBATROSS, ATARI*TROS @ Plink                            ALBATROSS @ Delphi *
*******************************************************************************

flaig@cit-vlsi.UUCP (11/18/87)

In article <34159@sun.uucp> cmcmanis@sun.UUCP (Chuck McManis) writes:
>In article <1525@ssc-vax.UUCP> dickey@ssc-vax.UUCP (Frederick J Dickey) writes:
>>My question is the following: Given the image in the dithered form,
>>is there any reasonable way of reconstructing the original gray scale
>>image?
>
>If you know the region of the dither (like 4 X 4 squares or something) you
>can just average all of the pixels in the region and multiply that by the 
>a normalizing factor.
>--Chuck McManis

Unfortunately, while the dithering _pattern_ may be 4x4, most dithering is
done on a pixel by pixel basis.  Information (in the form of more bits of
color resolution) is thrown away when a picture is dithered, and cannot
be recovered (maybe that pattern of dots _was_ in the original picture).

There are two exceptions where information can be recovered:

1) If the dithering wasn't done on a pixel by pixel basis (usually this
   is only done with low resolution pixtures, and the result shows it).

2) If you can identify large areas in the dithered picture which were a
   constant untextured shade in the original, then averaging pixels
   within that area will give the original color.  But most interesting
   pictures have textures or shading which will not allow this.

Note:  I am not an expert in the above topic, but I have taken classes
in graphics and information theory and done dithering myself.

--Charles Flaig
  flaig@vlsi.caltech.edu

jbm@aurora.UUCP (Jeffrey Mulligan) (11/19/87)

in article <1525@ssc-vax.UUCP>, dickey@ssc-vax.UUCP (Frederick J Dickey) says:
+ 
+ 
+ My question is the following: Given the image in the dithered form,
+ is there any reasonable way of reconstructing the original gray scale
+ image?

Do what the eye does:  low-pass filter.


-- 

	Jeff Mulligan (jbm@ames-aurora.arpa)
	NASA/Ames Research Ctr., Mail Stop 239-3, Moffet Field CA, 94035
	(415) 694-5150

marinell@dalcs.UUCP (Kevin Marinelli) (11/19/87)

In article <4579@cit-vax.Caltech.Edu> flaig@cit-vlsi.UUCP (Charles M. Flaig) writes:
>In article <34159@sun.uucp> cmcmanis@sun.UUCP (Chuck McManis) writes:
>>In article <1525@ssc-vax.UUCP> dickey@ssc-vax.UUCP (Frederick J Dickey) writes:
>>>My question is the following: Given the image in the dithered form,
>>>is there any reasonable way of reconstructing the original gray scale
>>>image?
>>
>>If you know the region of the dither (like 4 X 4 squares or something) you
>>can just average all of the pixels in the region and multiply that by the 
>>a normalizing factor.
>>--Chuck McManis

  I have tried to do something similar myself recently, but by using
  grey levels only. I have used two techniques, both however have their 
  problems.

  It is assumed that the dithered image uses 1 bit per pixel, although
  this may be altered if necessary.

  Algorithm 1

	for each pixel in the image, the grey level = sum of the bits that
	are on for each of its neighbors, and itself. This gives a 9 level
	grey map. (this may be extended to neighbors within 2 pixels for 
	a 16 level grey map.

	This technique preserves the spacial resolution of the dithered
	image, but causes the grey level map to look "Blurred". In many
	cases this is not a problem. If there are a lot of high contrast
	edges, then the bluring is more pronounced. E.g for black text
	on a white background.

 Algorithm 2

	for every block of N X N bits, the grey level is the sum of the
	on bits. The next pixel in the sequence is the next adjacent 
	block of N X N bits.

	This technique compresses the spacial resolution of the dithered
	image to 1/N. Bluring of the image is much less of a problem. This
	works best for very large dithered images where the loss of spacial
	resolution is not important.

 I have used the above technique for converting images from an apple Mac
 for display on an IBM PGA card. Because the images on the Mac were
 monochromatic dithered images, it was not possible to restore any actual
 colour information to the image.


-- 
Kevin Marinelli
Academic Computing Services  ! marinell@dal.bitnet		    BITNET
Dalhousie University	     ! marinell@dalcs.UUCP		    UUCP
Halifax, Nova Scotia, CANADA ! marinell%dal.bitnet@wiscvm.wisc.edu  INTERNET