CE 261: Lab #2
Spring 1996


Introduction to the Image Vision Libraries

Instructor: Dr. Craig M. Wittenbrink

Office: Applied Science Bldg. #309

Phone: (408) 459 4099

Due: Friday April 26. Labs are due at the beginning of class.

Lab Environment: Applied Sciences Computer Engineering/Computer and Information Sciences educa tional lab. Silicon Graphics Indy's and Indigos.
Location: Applied Sciences 213
Lab Hours: Any time, but you need a keycode or Social Sciences 1. See World Wide Web URL:

http://wwwcatsic.ucsc.edu/Labs/labs.html for locations and times.

Equipment: Silicon Graphics Workstations.

Image Vision Libraries Overview.

The ImageVision libraries are object oriented image processing libraries with C++, C, and fortran bindings for creating image processing applications. Base classes allow working with many different image types by extending the classes. An introduction to the ImageVision library is given in [1]. There is also online information and man pages for the commands and classes, by man ilClassName. For example, try `man ilDisplay' on the SGI's. The class hierarchy consists of ilLink, Multi-threading, ilDisplay, and Miscellaneous. ilLink defines image operators and images associated with operators, which can be chained together through `links'. Many of the operators which I have discussed in class are directly available as function calls. There are options for the function calls, and many different image formats can be handled. Compression and decompression can also be handled transparently by the libraries. The goal of this lab is to get you familiar with using the ImageVision libraries, and also to reinforce the processing which we have discussed so far. If you have image sources of your own you are welcome and encouraged to use them.

Sample Programs

In the directory /usr/share/people/4Dgifts/exaples/ImageVision/ (hereafter ~) are several directories which contain sample programs as well as sample images.
cd
mkdir ImageVision
Make a copy of the file in ~/ilguide/*.
cd ImageVision
cp -r ~/ilguide .
At the same directory level as the ilguide make the following soft link:
ln -s /usr/share/people/4Dgifts/examples/ImageVision/images images
Compile the various example programs, and run them on the example images provided in the ~ directory. For example to make a sample program use: make sampleProgGL
To run the sample program use:
sampleProgGL ../images/eye.rgb
The other sample programs can be compiled in a similar fashion. Once you have completed this step, implement the following project.

Project Description

Using the ImageVision Libraries, create a program which does histogram equalization, and geometric mapping on an image (in that order). The purpose of the geometric mapping will be to navigate a satellite image so that it can be shown in the map projection of your choice. Several sources are currently available for satellite information including GOES and SAR. Obtain an image of your choice (instructor will make several available), and illustrate the contrast enhancement and geometric correction.

I will run the programs to see that they work, and would also like a printout listing of your programs, and a brief description (one or two paragraphs) of the approach you used, especially the user interactions you allow, and the map projection chosen, as well as how it was implemented.

[1] ImageVision Library Programming Guide, by Jackie Neider and Eleanor Bassler, Document Number 007-1387-030, Silicon Graphics, 1993.

craig@cse.ucsc.edu
Last modified Thursday, 11-Apr-1996 13:40:24 PDT.

Back to the CE / CS Class Home Pages.
Back to the CE / CS Home Page.