CSE 6367 - Project

Due date: Sunday 04/29/2012, 11:55pm.

The final programming project constitutes 35% of the grade (25% for programming, 10% for the project presentation). Students also have the option to choose their own topic, as long as they have obtained the instructor's approval for the proposed topic by April 9. The project presentations will take place in class, Tuesday, May 1, and Thursday, May 3.

No extensions will be given, except for well-documented medical (or otherwise serious) emergencies, in which case extensions will be granted according strictly to UTA guidelines.


Implement a face detector that is trained using AdaBoost, combines information from skin color and rectangle filters, and utilizes the ideas of bootstrapping and classifier cascades. In particular, the following methods/concepts must be utilized in this face detector:


All the data that you need from this project can be downloaded from zipped file training_test_data.zip, which has size 47MB. You can access individual files from directory training_test_data, When you train your system, you can use windows from images in directory training_faces as positive examples. As negative examples, you can use windows from images in directory training_nonfaces. For bootstrapping, once you have trained a detector, you should apply it to all images in training_faces and training_nonfaces, identify windows where the detector makes mistakes, add those windows to the training set, and retrain.

As test data, you can use the images in directories test_cropped_faces, test_face_photos, and test_nonfaces. You are not allowed to use any of these test data for training.

Submission Instructions

You should submit your project on Blackboard. You should submit all your code, and also whatever data was computed and saved by your training algorithm. Do not submit any training and test images, you can assume that we have the entire training_test_data directory on our computer.


Grading will be based on how well you applied knowledge that you obtained in this course in order to design a detector that is accurate and efficient. 25% of the project grade will be assigned to each of the four components of the system (AdaBoost, skin detection, bootstrapping, cascades).

In addition to correctness and quality of implementation, you will also be graded based on:

In general, this project is intended to be a simulation of a project that you could be assigned when working in the real world. In such projects, much less is specified that in a typical homework assignment; the system designer needs to evaluate different choices at each step, and finally make choices that lead to a good product/system. Also, the system designer must be able to explain what was done, justify different choices, and describe clearly how well each component works. During this course you have learned a variety of different computer vision methods, and you have also encountered several different approaches for making system design choices and for justifying those choices. This is an opportunity to use what you have learned.


Students will need to present their project implementations, in a 7-10 minute presentation, for which slides should be prepared. The presentations should specify the main choices that were made in designing the system, and the accuracy/efficiency of the results that were obtained on the test data.