This book is excellent at exposing the reader to the various methods available in OpenCV and showing via code examples how to use each one. The author also gives you the website where you can look at the actual source code of each method shown. This is helpful since, for example, if you want to know exactly how the code is going about calculating the Fundamental Matrix, it is difficult to determine this by reading the book alone.
This book would be most useful to someone who already has a fundamental understanding of computer vision and image processing and wants to see how OpenCV will make their programming tasks easier. It does this by coding up well known algorithms into reliable pieces of code that you can use to accomplish more complex tasks. Do not come to this book if you are seeking to learn computer vision. You will only be confused as the author does not offer enough detail to teach you the mathematical foundations. However, I don't think that was his intention at all. Instead it is part user manual, part basic computer vision tutorial and overview, and part idea book. Each chapter is supplemented with excellent and interesting programming exercises that test your knowledge of what has been presented in a practical setting.
For a good basic understanding of computer vision try Computer Vision. To understand the algorithmic underpinnings of 3D computer vision try Introductory Techniques for 3-D Computer Vision. However, before you read either of these you must read Digital Image Processing (3rd Edition), since image processing concepts are fundamental to understanding computer vision tasks. In fact, the two disciplines overlap in many spots. The sad truth of the matter is that no one book will teach you what you need to know to be an effective image scientist. However, this book on OpenCV is essential reading on applying the theory via programming in an effective manner. Highly recommended.