OpenCV

Last updated on 3rd October, 2010 by Shervin Emami. Posted originally on 2nd June, 2010.

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 the 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). So this website tries to make it easier with tutorials and source-code. All source code on this site are free to use for educational or commercial purposes, but may not be used for military-funded projects.

If you have never used OpenCV before, you should first read my Introduction To OpenCV.
Warning: OpenCV is for creating futuristic applications that maybe no-one else has done before, so its important that you are good at computer programming BEFORE you start using OpenCV!

SHIRT COLOR DETECTION
(for People Detection)

VIDEO STABILIZATION
(Coming Soon)

FACE RECOGNITION
(with realtime learning)

HSV COLOR CONVERSION

VISUAL SALIENCY TRACKING
(for People Detection)

GRAPHING FUNCTIONS

IMAGE TRANSFORMS

COMBINE VIDEOS

SKIN AND BLOB DETECTION

 

Books on Computer Vision:

Last updated on 3rd April, 2011 by Shervin Emami. Posted originally on 3rd October, 2010.

The official reference book for OpenCV is:
"Learning OpenCV: Computer Vision with the OpenCV Library", from O'Reilly (2008) [source code].

There are hundreds of other good books for computer vision that are not specific to OpenCV:

  1. "Computer Vision: A Modern Approach" by Forsyth and Ponce (2002).
  2. "Computer Vision: Algorithms and Applications" by Szeliski (2011).
  3. "Digital Image Processing" by Gonzalez and Woods (2001).
  4. "The Essential Guide to Image Processing", by Bovik (2009).
  5. "Computer Vision and Applications: A Guide for Students and Practitioners", by Jähne and Haußecker (2000).
  6. Many free Computer Vision books online
  7. HIPR2 Image Processing Worksheets (simple explanations of many computer vision topics)

 

OpenCV Tutorials on the Web:

Last updated on 8th December, 2010 by Shervin Emami. Posted originally on 8th December, 2010.

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

  • Noah Kuntz's 11 OpenCV tutorials (good for beginners!).
  • Avi Kak's Purdue University computer vision assignments with solutions.
  • Nashruddin's OpenCV tutorials such as eye tracking and beginner tutorials.
  • Utkarsh's OpenCV tutorials such as corner detection, histograms and SIFT.
  • Damile's OpenCV tutorials such as OCR and K-Nearest Neighbors pattern recognition.
  • Interesting OpenCV tutorials such as OpenCV on iPhone & Android, Augmented Reality and 3D Pose Estimation.
  • Barbato's libraries for combining OpenCV with OpenGL for 2D and 3D graphics.
  • OpenCV tutorials (but mainly just demonstrations) such as object detection, face recognition and cross-compiling.