A large downside to the current OpenCV cascade classifier implementation is that it only supports multiscale single rotation object detection. Many industrial applications that could actually use object detection do not know the orientation of the object beforehand and thus rotation invariant multiscale object detection would be much more interesting. Therefore, I will guide you through some techniques for applying multiscale rotation invariant object detection, by simply using the provided functionality in OpenCV.
OpenCV 3 also provides other techniques that are able to perform multiscale rotation invariant object categorization like the Bag of Visual Words approach. A good tutorial on this technique can be found at https://gilscvblog.wordpress.com/2013/08/23/bag-of-words-models-for-visual-categorization/.
There are three main ideas when trying to achieve rotation invariant object detection:
Train a single object model with all possible orientations...