Info-Mac Archive Downloads: dev/lib/

Back to dev/lib/

farther _enhanced_ grayscale image processing classlib (gray-image-23-cpp.hqx)

Download gray-image-23-cpp.hqx (477,629 KB)


From: oleg@pobox.com
Subject: farther _enhanced_ grayscale image processing classlib

Attached is a Mac distribution of a new, 2.3, version of grayimage - a
grayscale image processing class library and verification code

The new version is more portable: besides a Mac, the source code
compiles and correctly runs on various UNIX boxes (Sun/Solaris, HP
9000/7xx, FreeBSD), a BeBox, and even Win95/WinNT.

Besides portability and safety embellishments, there are more
substantial enhancements:
- non-separable (truly 2D) 3x3 convolutions (very optimized and very fast)
- much improved handling of TIFF files
- non-deterministic filtration
- a cuter algorithm for generating fractal clouds.
Now, you may easily add your own private (non-obligatory) tags to a
TIFF file, and/or look them up. BTW, the code that writes TIFF files
shows off an important concept of a safe, one-purpose pointer: a
pointer that _physically_ cannot be misused (miscast, left dangling,
etc), yet just as efficient as a regular, unprotected C pointer.

What: A C++ class library to do many boring and exciting things
with grayscale images
Keywords:
image arithmetics, median filtration, morphological filtration,
convolution, lazy image, TIFF, plasma fractals,
nondeterministic filter, C++, class library
Hot points:
- all standard algebra/arithmetics on an image/image slices
- LazyImages, and PixelAction iterators, and image streams for
fast sweeping actions;
- very *fast* convolutions, median filtration, and lookup
table substitutions
- morphological filtration
- assigning an image of _really_ any size to another image _to fit_
- Fractal clouds generator (as an example of a Lazy Image)
- non-deterministic filtration (averaging)
- reading/writing XWD/PGM/grayscale_TIFF files with automatic
input file format recognition
The user may now add/look up private and other non-mandatory tags,
and iterate over/clone TIFF IFD entries
- with a validation code to verify everything
- with a commented source and CW9 projects
A README file gives more details.