Project 5:Face Detector

Algorithm Description

So the implementation was fairly straightforward. For getting the positive features I just formed hog features via iterating over all the images.To get the negative features I randomly selected a scene and took random 36x36 chunks out of the scene to use as non-face images. I then trained the svm using vl again. The best lambda parameter was at .0001 for this part of the piepline. For the sliding window detector, most thresholds had the same or very similar results. I tried thresholds between -.9 and -.1. I found -.5 seemed to do just as well as -.9 and saved some time. My detector produces tons of false positives which is reasonable if used in a cascade as in Dalal-triggs since this would be able to classify with good accuracy. The svm had 100% accuracy on the training data. I ran my detector in steps of .1 starting from 1 going down to .1. Doing more fine grained steps made little difference for this part. My best average precision maxed out at .796, even with hours of tuning, and changing the number of negative images also made no significant difference (I think I got up to .798 with 75000, but it ran incredibly slow.) Anyways here is my precision vs recall graph a picture of one of the detections, and a visualization of the learned detector.

Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.