
			     IMAGE FILE SOURCES

   For the article
   "Singularity Detection in Images Using Dual Local Autocovariance"
   by  Wojciech Czaja and Mladen Victor Wickerhauser.

   Preparer: M.V.Wickerhauser <victor@math.wustl.edu>
   Date: 22 July 2001

CONTENTS:

In this archive are demonstrations of `edginess' computations for a test
pattern and 5 grayscale images.  Unpack it into an empty directory to get:

    File		Comments
    ----		--------
    readme.txt		This documentation file
    makefile		Compilation instructions
    tests.c		Program to test functions in `edginess.c'
    edges.c		Program for main executable to compute edginess
    edginess.c		Library of edginess computation functions
    edginess.h		Header declaring library functions
    figure.c		Program to generate `figure.pgm'
    finger7.c		Program to get 512x512 middle of cmp00007.raw
    cmp00007.raw	Original 512x512 fingerprint image
    cone.pgm		Original ray-traced 256x256 synthetic image
    lena.pgm		Original 512x512 8-bit grayscale image
    truck.pgm		Original 256x256 8-bit grayscale image


ACTION:

Modify the makefile to suit your system.  Typically, CC, CFLAGS, and LIBS
need to be altered.

Type `make' to compile and run a relatively short testing program.

Type `make execs' to compile all the source codes.

Type `make all' to compile and run the complete demonstration.  Then
	display all the .pgm files in a suitable viewer.

Type `make clean' (on a Unix system) to remove some derived files.

Type `make spotless' (on a Unix system) to remove all derived files.

You will need a viewer for PGM (Portable Gray Map) files.  These are easily
converted into other formats, however.  See the documentation in `edginess.c'
near the function `writePGM()'.


DETAILS:

Source Files:

  makefile

	This was written on a NeXT machine, OpenStep 4.1, which is a BSD
	Unix-derived system, with cc being derived from GCC.

  edges.c

	Compile this into the main executable `edges', which reads a PGM
	image file on stdin and writes a normalized grayscale density plot to
	represent its edginess.

  edginess.c  edginess.h 

	Main library of function definitions, with their declarations.

  tests.c

	This compiles into an executable that calls all the functions in
	`edginess.c'.

  figure.c finger7.c

	Small utility functions to produce some test images.



Image Files:

test.pgm

	This is a 50 column by 40 row image file containing two opposed ramps
	meeting at an edge, with 4 single-point spikes.  It is generated by
	the executable `tests', which also produces other outputs with the
	naming pattern `test*.pgm'.

lena.pgm

	This is the famous picture of Lena Sjooblom from the
	November, 1972 issue of Playboy Magazine.

	I downloaded the RGB file `lena_std.tif' from a web site citing the
	comp.compression FAQ site at
 http://www.cis.ohio-state.edu/hypertext/faq/usenet/compression-faq/top.html

	I converted it to grayscale with Adobe Photoshop 5.5, saved to `RAW'
	format with no header, and added the PGM header manually with Emacs.

cone.pgm

	I copied RAW file `conesphere' from Craig Kolb, around Sept. 1993,
	and added PGM header manually with Emacs.

figure.pgm

	This is a RAW file, output from running `figure' written by W. Czaja.

truck.pgm

	This is a RAW file obtained from Peng Li, around May, 2000, with
	a PGM header added manually with Emacs.

finger7.pgm

	I downloaded `cmp00007.raw' from NIST WSQ compliance testing site,
		ftp://jedgar.cam.nist.gov/pub/cmp_imgs
		owned by Rem Onyshczak <rjo@jedgar.cam.nist.gov>
	[from the README file:
		File Name      Width   Height
		-------------------------------
		cmp00007	545	638
	]
	Ran `fingerprint.c' to extract 512 rows starting at 63
		and 512 columns starting at 16 (initial indices are 0)
		of the original 638 row by 545 column image.
