Hi Hosein,
This is a good question and worth posting to the OpenBR mailing list (although there may be a duplicate question of this already answered). In any case, I wouldn't compare OpenCV and OpenBR directly.
OpenCV provides all sorts of low level matrix manipulations in addition to higher level image processing/computer vision algorithms that are encapsulated via their function calls. Further, OpenCV's matrix library itself is very powerful and help one avoid reinventing the wheel for this sort of thing.
By comparison, OpenBR's strength is to be able to string a bunch of algorithmic steps together via the grammar (
http://openbiometrics.org/docs/api_docs/cl_api/) making it very easy and simple to train statistical models for a lot of biometric tasks and evaluate their performance. For example, it's possible to train a face detector on your own data without writing any code (see the SlidingWindowTransform and the associated ClassifierTransforms: CascadeClassifier and HaarRepresentation). To do the same with OpenCV is challenging, especially with respect to manipulating parameters of the Cascade. Further, all the code for evaluating algorithmic performance is already there for you. You're absolutely right that OpenCV's documentation is significantly better than ours - we simply do not have the manpower to write the in depth tutorials like OpenCV.
So, I would classify OpenCV and OpenBR as serving different purposes. Indeed, a lot of OpenBR transforms simply wrap calls to OpenCV functions.
I hope this helps.
Regards,
Scott