Digital Image Processing
Project for Autumn 2013-2014
Project for Spring 2012-2013
Project for Spring 2011-2012
Project for Spring 2010-2011
Project for Spring 2009-2010
Project for Spring 2007-2008
Project for Spring 2006-2007
Project for Spring 2005-2006
Project for Spring 2003-2004
Project for Spring 2002-2003
Final Project for Spring 2005-2006
The project should be done individually or in groups of up to 3 people and should require about 50 hours per person. Each group will develop and implement their own algorithm to detect an unknown number of visual code markers in an image captured by a cell-phone camera.
The project should be done individually or in groups of up to 3 people and should require about 50 hours per person. Each group will develop and implement their own algorithm. The task of the project is to detect and read visual code markers through the cell-phone camera. In the paper titled "Real-World Interaction with Camera-Phones", the author, Michael Rohs, describes the use of visual code markers in interacting with real-world objects. More information can be obtained by following this link. To give you an idea of the utility of visual code markers, the user could, for example, download the data embedded in the marker to his cell-phone, or follow a hyperlink embedded in the marker, or perform item-selection by rotating the camera-phone with respect to the marker, etc.
You will design and test your detection algorithm with a set of training images and the corresponding ground truth data that can be downloaded from the Downloads section. Once you submit your algorithm implementation, we will check its performance with a set of test images, which will be unknown to you while you work on your algorithm.
Visual Code Marker Details:
The visual code markers that we consider are 2-dimensional arrays. The array consists of 11x11 elements. Each element is either black or white. As shown in the figure below, we fix the elements in three of the corners to be black. One vertical guide bar (7 elements long) and one horizontal guide bar (5 elements long) are also included. The immediate neighbors of the corner elements and the guide bar elements are fixed to be white. This leaves us with 83 data elements which can be either black or white.
Training Images and Ground Truth Data
- The training images are regular JPEG images.
- The images can be read by imread( ) in MATLAB.
- The ground truth data are stored in the MATLAB data file called training_ground_truth.mat and can be read using load in MATLAB. The ground truth data consist of code marker data and position of upper left corner of the marker(s) in the given training images.
This is the MATLAB function which will be used to evaluate your code marker reading algorithm. You should use it to evaluate the performance of your algorithm on the training images.
Code Generation Program
This MATLAB function generates the code marker for a given input vector of 83 elements.
(1) Note that your detection algorithm has to output
Specifically, the interface between your code detection function and the function evaluate( ) is specified in MATLAB notation as follows:
(2) The performance metric (for a single input image):
(3) Positive scores will be added for different test images. Negative scores will be counted as zero.
(4) The maximum run time for a single image is 1 minute. We will abort your program if it takes longer.
(5) While still in the training and optimization phase, you can create your own code markers using generate_code.m, paste them on real-world objects, capture images using your humble cell-phone camera, and use them to check your performance.
(6) To register your group, please send an e-mail to firstname.lastname@example.org with the subject "group registration for project".
Deadline to register groups: May 12.
(1) Please mail to email@example.com (do not c.c. to TA's or Professor's personal e-mail address).
(2) For program, please include ONLY nessessary files in ONE ZIP file named "ee368groupXX.zip" and email it with subject "ee368 groupXX program". Your 2 digit group number XX is listed below.
(3) For report, please prepare in PDF format, name it "ee368groupXX.pdf" and email it with subject "ee368 groupXX report". Your 2 digit group number XX is listed below.
(4) Note that your code will be run on the SCIEN machines by the teaching staff. Hence, it is a good idea to get an account there and make sure that there are no platform-specific problems with your code.
(5) If you are a group, then you need to submit the log of who did what with your report.
2-member or 3-member groups:
01) Eric Chu, Erin Hsu, Sandy Yu. (project report)
20) Arayssi Sami. (project report)
Ground Truth Data for Test Images:
Updated evaluate function:
Histogram of scores:
project_histogram.pdf (each bin in the histogram is 100 points wide, maximum obtainable score is 1826, minimum possible score is 0.)
Please email firstname.lastname@example.org for questions or bug reports.