In today's digital world, images and videos are everywhere, and with the advent of powerful
and affordable computing devices, it has never been easier to create sophisticated imaging
applications. Plentiful software tools and libraries manipulating images and videos are
offered, but for anyone who wishes to develop his/her own applications, the OpenCV library is
the tool to use.
OpenCV (Open Source Computer Vision) is an open source library containing more than 500
optimized algorithms for image and video analysis. Since its introduction in 1999, it has
been largely adopted as the primary development tool by the community of researchers and
developers in computer vision. OpenCV was originally developed at Intel by a team led by
Gary Bradski as an initiative to advance research in vision and promote the development of
rich, vision-based CPU-intensive applications. After a series of beta releases, version 1.0 was
launched in 2006. A second major release occurred in 2009 with the launch of OpenCV 2 that
proposed important changes, especially the new C++ interface which we use in this book. At
the time of writing, the latest release is 2.2 (December 2010).
This book covers many of the library's features and shows how to use them to accomplish
specific tasks. Our objective is not to provide a complete and detailed coverage of every
option offered by the OpenCV functions and classes, but rather to give you the elements you
need to build your applications from the ground up. In this book we also explore fundamental
concepts in image analysis and describe some of the important algorithms in computer vision.
This book is an opportunity for you to get introduced to the world of image and video analysis.
But this is just the beginning. The good news is that OpenCV continues to evolve and expand.
Just consult the OpenCV online documentation to stay updated about what the library can do