I am testing several methods for finding region of interest in hand gesture. in opencv for example I found some methods like camshift (for tracking a interest object), some background extraction methods (MoG, MoG2, ..) which specially are used in video to subtract background from foreground, which can also be used when we have hand as an object in a video with a complex background. and also GrabCut and backproject methods which can be used for hands posture in a static state. Contours, edge detection or skin methods are some other approaches for detecting hand in an image or video. And lastly I found that haar cascade can be used as well. I want to know that for passing from this stage, which algorithm is the best choice, considering that I use images with complex background. some algorithms like Grabcut or backproject were good but the most important problem was that I should manually specify some regions as foreground or background and this is not what it should be. After choosing a method for roi, generally what are the most important features in hand gesture recognition? for extracting features which method is your suggestion? that can work well with one of the general classifiers like svm, knn, etc to classify an specified image.
Thank you all for taking your time