Left Sidebar Page Type Image

Computer Vision Course - Fall Semester 2014



You will have a problem statment, i.e., a description of a problem precisely specifying the dataset to be used. For the solution you should write a Matlab code that should be "published" using the "Publish Botton" (see tutorial video). The Matlab code(s) written by you for the solution of the assignment and the html files generated by the Publish function must be zipped into one file called HW_AssignmentNumber_FirstName_LastName.zip (for example if you did Homework #3 and your name is Mary Smith, then the zip file would be HW_3_Mary_Smith.zip). You should send the zip file to dmery@nd.edu before the deadline. Zip files received after the deadline will no be considerded.  This webpage provide you an example (Assignment #0) in order to show you what to do. 

[ HONOR CODE ] The assignments are individual. You may consult any books, papers, webpages, etc. for ideas and available codes (e.g. Balu, VLfeat, etc) that you may want to incorporate into your implementation, so long as you clearly cite your sources. However, under no circumstances may you look or use code of another student of the course. See the Honor Code of the University of Notre Dame.

Assignment #0

This is just an example! The idea is to show you how to do a assignment in this course. See guidelines above.


This assignment is about Image Analysis. Supose we have an image containg some white rice grains on a dark background. You have to write a Matlab code that segments each isolated grain (grains that are not touching to each other), counts the number of segmented grains, computes the area (in pixels) of each segmented grain and gives the average and standard deviation of the area. Use the image 'rice.png' of Matlab for testing the code.

[ SOLUTION ] (given only for this homework)

The solution is given in this m-file. The file contents many sections and comments that explain how the solution was done. In your solution you should explain these sections showing the results that were obtained in each step of the solution. Please use as many comments as you can to explain what you did. The view of the html file generated by "Publish Bottom" is here. The whole zip file is here


Assignment #1


This assignment is about enhancement, filetring and segmentation of color images. These two beautiful deers were seen a few days ago on Campus. Unfortunatly, there is an ugly grid fence in front of them! You have to write a Matlab code that "removes" the fence, that means, the pixels where the fence is, must be replaced by pixels of the background. In addition, the image must be enhanced, that means you can remove noise, sharpen, or brighten the image in order to create a beautiful photo. The idea is to obtain an image where the deers are aparently free. An example of this removing process is shown in the presentation about image processing definition. 


Monday, September 22nd, 2014. 9:00am.


Assignment #2


This assignment is about Automated Visual Inspection. Welds are normally used to join two metal pipelines (see welding process here). However, some defects (like cracks and pores) can be produced in the weld causing it to fail. In order to inspect the weld, a radiography is usually taken (see inspection process here). In this radiography you can see a 3512 × 366 X-ray image where many defects are distinguishable. You have to write a Matlab code that detects automatically the defects of the radiography.

The output must be a 3512 × 366 binary image, where 1 or 0 means the pixel belongs or does not belong to a defect respectively. In this image you can see the ideal detection that was done manually. In order to compute the performance of your detection you must give the true positive rate (TPR) and false positive rate (FPR). TPR is defined as TP/E, where TP is the number of defective pixels that are correctly detected, and E is the number of existing defective pixels. FPR is defines as FP/I, where FP is the number of non-defective pixels detected as defective, and I the total number of non-defective pixels. If X is your binary image and Y is the ideal binary image, in Matlab:

TPR = sum(and(X(:),Y(:))/sum(Y(:)));

FPR = sum(and(X(:),not(Y(:)))/sum(not(Y(:)))); 

For a perfect detection, TPR = 1, and FPR = 0.


Thursday, October 9th, 2014. 10:30am.


Assignment #3


This homework is about OCR (Optical Character Recognition). You have to write a Matlab code that is able to recognize automatically the alphabet letters V, W, X, Y and Z. For this end, two binary images (VWXYZ_Training1 y VWXYZ_Training2) are available for training. You have to extract more than 50 geometric features of them, select no more than 12 of them and design a classifier using the selected features only. After training stage, you have to test your classifier on this binary image VWXYZ_Testing. Finally, you have to show the confusion matrix of testing data. 


Monday, November 3rd, 2014. 9:00am.


Assignment #4


This assignment is about Face Recognition. For this end, you have to design a classifier using the ORL database consisting of 40 subjects with 10 frontal face images each. In the training stage, you might take 9 images of each subject. In the testing stage, the remaining image of each subject is used as probe image. You have to compute the accuracy of the recognition that must be computed using cross validation approach with ten folders. 


Tuesday, November 18th, 2014. 10:30am.


Assignment #5


This assignment is about Multiple View Imaging. For this end, you have four views of a classroom: View 1, View 2, View 3, View 4. The cameras are calibrated, and their projection matrices P1, P2, P3, P4 are available here for a coordinate system given in milimeters. In addition, you have the (x,y) coordinates of a person's head in View 1 (m1 = (354.3, 221.9)) and in View 2 (m2 = (278.4, 224.6)). You have to compute:

1) m3: the coordinates (in pixels) of the head in third view using m1, m2 and epipolar geometry.

2) m4: the coordinates (in pixels) of the head in fourth view using m1, m2, m3 and epipolar geometry.

3) M: the 3D point (in milimeters) reconstructed from m1, m2, m3 and m4.

4) d: the distance (in milimeters) from M to the teacher's head. For this problem you can find the 2D coordinates of the teacher's head manually. 


Thursday, December 11th, 2014. 10:30am.