COSC 387: Artificial Intelligence

Project 5
Fall 2004

Due: Dec 8 @ 5 P.M.
13 points

  1. Write a program that, when given an image of a face, detects any eyes therein. Here are six GIF images of faces from the AT&T face database:

  2. I've converted the original GIF images into a raw image format. The first two integers in the file are the x and y dimensions of the image. These are followed by the grayscale values of the image's pixels. For this project, each image is a 92 x 112 grayscale image with pixel values between 0 and 255; 0 is black and 255 is white. Use the following files as input and to develop your program:

  3. The top-level function, detect-eyes, should take a string as the argument, which is the name of the file containing the image in the raw format. The function should load the image, do whatever processing is necessary to detect any eyes in the image, and return either a list of coordinates where it found eyes, or nil indicating that no eyes were present in the image. Take the following function call as an example:
    > (detect-eyes "f105.raw")
    ((26 61) (63 61))
    
    For this project, you can use any programming language for which I have a compiler/interpreter on my machine. This includes clisp, gcc 3.4.2, g++, g77, java 1.4.1, perl 5.6.1, and ruby 1.8.1.

Instructions for Submission

Put everything (source, Makefile, whatever) in a zip or tar file, and send it to me as an attachment to an e-mail. I don't care what you name the archive, but the name of the archived directory should be your netid. If you send me a zip file, make sure it doesn't have the extension .zip.

In a README file, provide the following information:

COSC 387 Project 5
Name
E-mail Address
Platform: Windows, Linux, Solaris (gusun, daruma)
Language: clisp, gcc, g++, etc.

In accordance with the class policies and Georgetown's Honor Code,
I certify that, with the exceptions of the course materials and those
items noted below, I have neither given nor received any assistance
on this project.
Also in this README file, provide instructions so I know how to compile and run your code and your analysis. This applies doubly to you Ruby guys.

You must submit your project before 5 PM on the due date.

When storing source code on university machines, it is important to set file permissions so others cannot read the file. To turn off such read/write permissions, type at the UNIX prompt chmod og-rw <file>, where <file> is the name of your source file.