Iff Routines

There are iff executables and libraries for doing various neat things to images. The easiest to use are executables, which take an iff file, do something to it, and produce another iff file, or some other information. Examples are iffsee, which provides information about an image (size, bits per pixel etc.) and iffscale, which scales an image to lie in the range 0-255. There are also programs for performing convolutions, Fourier transforms (which doesn't work), etc. A list of these programs is contained in /usr/src/vision/iff/misc/iffsummary1.v. You need to have /usr/vision/bin on your path to get at them. There are also man entries for a lot of them if you put /usr/vision/man on your manpath.

Most of the working code for these programs is in a set of libraries which are defined in subdirectories of /usr/src/vision/iff/lib. If you want to use this stuff inside of a c program without going through intermediate files, you might be able to pull usable stuff from these libraries. The problem is that this stuff was written in the days before it was practical to put a reasonable sized image in core, and thus a lot of them a buffered line mode of operation, which makes interfacing with them complex. The only library routines I have ever used are the ones in the bitio library, which read and write images from iff files. A better bet in this day and age is to use an in core image format, such as the defined for my image processing libraries, or the one provided by matlab.

Back to vision course main page