I am attempting to create a program that can find human figures in video of game play of call of duty. I have compiled a list of ~2200 separate images from this video that eithe
Better features win over better learning algorithms. The basic principle in feature selection is that the best features maximize interclass variance and minimize intraclass variance. In your case, the features should emphasize the difference between images that contain a human figure and images that don't, and deemphasize the differences between images of the same class.
For instance, you could try and find the contour of the human figure, and calculate features based on the contour. OpenCV already has some functions for calculating features of contours: Moments, GetCentralMoment, NormalizedCentralMoment etc. The question then would be: how to segment human figures from the background, so that their contour can be found? There are several ways to approach this problem, such as by using texture segmentation.
Once you can solve the segmentation problem and calculate reasonable features, the choice of learning algorithm is not really that important. But why not try several and see what works best? Take a look at the Machine Learning section in the OpenCV docs.