Open menu
Close Menu
Abstract
Monty Python's Flying Circus had a "cat detector van" so, in this tutorial, we use Python and OpenCV to make our very own cat detector and recognizer. We also cover examples of human face detection and recognition. More generally, we cover a methodology that applies to training a detector (based on Haar cascades) for any class of object and a recognizer (based on LBPH, Fisherfaces, or Eigenfaces) for any unique objects. We build a small GUI app that enables an LBPH-based recognizer to learn new objects interactively in real time. Although this tutorial uses Python, the project could be ported to Android and iOS using OpenCV's Java and C++ bindings.
Attendees will gain experience in using OpenCV to detect and recognize visual subjects, especially human and animal faces. GUI development will also be emphasized. Attendees will be guided toward additional information in books and online. There is no formal evaluation of attendees' work but attendees are invited to demonstrate their work and discuss the results they have achieved during the session by using different detectors and recognizers and different parameters.
Schedule
Form of Presentation
The tutorial will include a presentation of PDF slides, videos featuring detection/recognition of real cats, and a live demo featuring detection/recognition of humans and artificial cats. The project and documentation will be available for download during the tutorial. Because of the long processing time required to train a detector, attendees will not be able to fully execute this step during the tutorial. However, a variety of pre-trained detectors will be provided and attendees will be able to parameterize and combine detectors in original ways and train their own recognizers. Training of human recognizers is a good opportunity for attendees to mingle. The tutorial allows time for attendees to demonstrate and discuss their work if they wish.
Intended Audience
This tutorial is intended for any developer who wants an introduction to detection and recognition in OpenCV. No expertise in computer vision or algorithms is assumed. Familiarity with Python and shell scripting would be helpful.
Instructor Background
Joseph (Joe) Howse has worked in the AR industry since 2011. He is President of Nummist Media Corporation Limited (http://nummist.com), providing software development and training services to clients worldwide. His publications include OpenCV for Secret Agents (Packt Publishing, forthcoming), OpenCV Application Programming for Android (Packt Publishing, 2013), OpenCV Computer Vision with Python (Packt Publishing, 2013), and “Illusion SDK: An Augmented Reality Engine for Flash 11” (ISMAR Workshop on Authoring Solutions for Augmented Reality, 2012). Joe holds a Master of Computer Science, MA in International Development Studies, and MBA from Dalhousie University. He has no difficulty detecting or recognizing any of his four splendid cats.
Further Information
http://nummist.com/opencv