OpenCV is a great library for creating Computer Vision software using state-of-the-art techniques, and is freely available for Windows, Linux, Mac and even Android & iPhone. OpenCV was originally designed by Intel in 1999 to show how fast Intel CPUs can run. So most of OpenCV runs very fast on Intel CPUs, now including some SSE2 optimizations.

However, OpenCV is mainly used for tasks that are complex in nature, often requiring post-grad experience in the fields of Computer Vision or Artificial Intelligence (AI).

OpenCV is for creating futuristic applications that perhaps no-one else has done before, so it’s important that you are good at computer programming BEFORE you start using OpenCV!

Things you can do with OpenCV

  • Shirt Color Detection
  • Video Stabilization
  • Face Recognition
  • HSV Color Conversion
  • Visual Salience Tracking (for People Detection)
  • Graphing Functions
  • Image Transforms
  • Combine Videos
  • Skin and Blob Detection

Books on Computer Vision and OpenCV

The official reference book for OpenCV is “Learning OpenCV: Computer Vision with the OpenCV Library” (Second Edition) from O’Reilly Publishing (2013) [source code]. It is a very useful book for learning OpenCV, and the new second edition covers the new C++ API of OpenCV v2.

If you are a complete beginner to OpenCV and computer vision, you might consider the book Instant OpenCV Starter for a quick intro. There are also many other books on OpenCV, listed at Most of the existing books are for OpenCV beginners.

If you are already experienced with OpenCV but looking for more projects & ideas, consider the “Mastering OpenCV with Practical Computer Vision Projects” (2013) [source code] book that I worked on, it explains whole projects so it is for intermediate and advanced OpenCV users. Also, the book “Instant OpenCV for iOS” [2013] covers simple topics like Apple iOS / iPhone / iPad development but also some advanced topics such as Apple’s Accelerate framework and ARM NEON SIMD optimization, and both authors are official OpenCV developers.

There are also many other good books for computer vision that are not specific to OpenCV, such as:

OpenCV Tutorials on the Web

Some good places to learn how to use OpenCV are online tutorials such as:

Leave a Reply

Your email address will not be published. Required fields are marked *