1 | initial version |
It all depends on what you want to achieve. You can use an ML-algorithm directly on your features, then you need to select always a specific amount of features, maybe the 500 best ones or 500 random ones (like @joshuajnoble suggested). However if you want categorize images/objects you typically form a histogram of features and use that as input for your classifier, this is also known as Bag-of-Words (aka Bag-of-Features), see http://answers.opencv.org/question/8677/image-comparison-with-a-database#8686 for more details.
Instead of keypoint-based features you can also use histograms of LBPs/HOGS/HAAR, the idea is the similar, however these texture features are not evaluated on keypoints but typically on the whole image/object. Note that the CascadeClassifier is also nothing else than applying texture-features with a form of AdaBoost.
@Sarevok: Please leave a comment if you have further questions or ask a separate question and don't answer with a non-answer ;) - thx.