-
- 1
-
V. Cheung, B. J. Frey, and N. Jojic,
Video epitomes,
Proc. IEEE Conf. Computer Vision and Pattern Recognition,
2005.
- 2
-
R. Fergus, P. Perona, A. Zisserman,
Object Class Recognition by Unsupervised Scale-Invariant Learning,
Proc. of the IEEE Conf on Computer Vision and Pattern Recognition,
2003.
- 3
-
N. Jojic, B. J. Frey, and A. Kannan,
Epitomic analysis of appearance and shape,
Proc. 9th Int. Conf. Computer Vision,
2003.
- 4
-
http://research.microsoft.com/jojic/epitome.htm
- 5
-
http://www.psi.toronto.edu/vincent/videoepitome.html
README
This section explains the some of the supplemental materials attached to the physical handin of this final report.
Experimental results
- Result images = These are the resulting images from the experimental runs
- Result report = This is the automatically generated text report of the experiments
MATLAB code used in project
- epitome.m = Function to learn the epitome from an image, obtained from [4]
- reconstruct.m = Function to reconstruct original image from the (possibly modified) epitome, obtained from [4]
- crossValidate.m = Top level script - handles experimental setup, reads in images, randomly selects training/testing sets, calls experimentRun for each iteration, and organizes reporting of experimental results
- experimentRun.m = Given training and testing image sets, run a single classification experiment
- patchTrace.m = Reconstruct the original image, painting green borders around patches in the image that were generated by discriminative patches in the epitome - this code is a slightly modified version of reconstruct.m from [4]
- classify.m = Given an image, the mapping status for the discriminative patches(do they map into this image or not?), the conditional mapping probabilities
and
for each patch , calculate the classification odds ratio
- getBest.m = Returns the coordinates of the k top-scoring epitome patches, where k is a parameter
- isPatchMappedAll.m = Given an image and an epitome, for each patch in the epitome determine whether or not it is mapped into the image
MATLAB code developed during project but not used for final results
- getPrecRec.m = Function to calculate precision and recall values for varying classification threshold values - used to determine that test images were either getting very high odds ratios or very low ones, so the threshold does not make a significant difference
- findCritical.m = Calculates the positive/negative odds ratio of the average max posterior mapping probability for each epitome patch over all training examples (this was my previous method for discriminative patch identification - this code is not used in final implementation)
- findMaxPost.m = For an epitome patch and an example image, find the max posterior probability of this epitome patch mapping into this image (helper function used by findCritical)
- calcPosterior.m = Given a patch in the original image, calculate the posterior probabilities of all epitome mappings into this patch (helper function for findMaxPost)
It is also important to note that many of the MATLAB functions contain code fragments from the epitome.m and reconstruct.m files obtained from [4]. I have attempted to document these instances in the handin code by clearly marking them with green ink and the letters ``MSR'' (for MicroSoft Research).
David Andrzejewski
2005-12-19