OpenCV 3 Blueprints

Expand your knowledge of computer vision by building amazing projects with OpenCV 3

OpenCV 3 Blueprints

This ebook is included in a Mapt subscription
Joseph Howse et al.

1 customer reviews
Expand your knowledge of computer vision by building amazing projects with OpenCV 3
$0.00
$25.20
$44.99
$29.99p/m after trial
RRP $35.99
RRP $44.99
Subscription
eBook
Print + eBook
Start 30 Day Trial
Subscribe and access every Packt eBook & Video.
 
  • 4,000+ eBooks & Videos
  • 40+ New titles a month
  • 1 Free eBook/Video to keep every month
Start Free Trial
 
Preview in Mapt

Book Details

ISBN 139781784399757
Paperback382 pages

Book Description

Computer vision is becoming accessible to a large audience of software developers who can leverage mature libraries such as OpenCV. However, as they move beyond their first experiments in computer vision, developers may struggle to ensure that their solutions are sufficiently well optimized, well trained, robust, and adaptive in real-world conditions. With sufficient knowledge of OpenCV, these developers will have enough confidence to go about creating projects in the field of computer vision.

This book will help you tackle increasingly challenging computer vision problems that you may face in your careers. It makes use of OpenCV 3 to work around some interesting projects. Inside these pages, you will find practical and innovative approaches that are battle-tested in the authors’ industry experience and research. Each chapter covers the theory and practice of multiple complementary approaches so that you will be able to choose wisely in your future projects. You will also gain insights into the architecture and algorithms that underpin OpenCV’s functionality.

We begin by taking a critical look at inputs in order to decide which kinds of light, cameras, lenses, and image formats are best suited to a given purpose. We proceed to consider the finer aspects of computational photography as we build an automated camera to assist nature photographers. You will gain a deep understanding of some of the most widely applicable and reliable techniques in object detection, feature selection, tracking, and even biometric recognition. We will also build Android projects in which we explore the complexities of camera motion: first in panoramic image stitching and then in video stabilization.

By the end of the book, you will have a much richer understanding of imaging, motion, machine learning, and the architecture of computer vision libraries and applications!

Table of Contents

Chapter 1: Getting the Most out of Your Camera System
Coloring the light
Capturing the subject in the moment
Rounding up the unusual suspects
Supercharging the PlayStation Eye
Supercharging the ASUS Xtion PRO Live and other OpenNI-compliant depth cameras
Supercharging the GS3-U3-23S6M-C and other Point Grey Research cameras
Shopping for glass
Summary
Chapter 2: Photographing Nature and Wildlife with an Automated Camera
Planning the camera trap
Controlling a photo camera with gPhoto2
Detecting the presence of a photogenic subject
Processing images to show subtle colors and motion
Further study
Summary
Chapter 3: Recognizing Facial Expressions with Machine Learning
Introducing facial expression recognition
Finding the face region in the image
Feature extraction
Classification
Evaluation
System overview
Further reading
Summary
Chapter 4: Panoramic Image Stitching Application Using Android Studio and NDK
Introducing the concept of panorama
The Android section – an application user interface
Integrating OpenCV into the Android Studio
Application showcase
Further improvement
Summary
Chapter 5: Generic Object Detection for Industrial Applications
Difference between recognition, detection, and categorization
Smartly selecting and preparing application specific training data
Parameter selection when training an object model
Using scene specific knowledge and constraints to optimize the detection result
Obtaining rotation invariance object detection
2D scale space relation
Performance evaluation and GPU optimizations
Practical applications
Summary
Chapter 6: Efficient Person Identification Using Biometric Properties
Biometrics, a general approach
Face detection and recognition
Fingerprint identification, how is it done?
Iris identification, how is it done?
Combining the techniques to create an efficient people-registration system
Summary
Chapter 7: Gyroscopic Video Stabilization
Stabilization with images
Stabilization with hardware
A hybrid of hardware and software
The math
Project overview
Capturing data
Android specifics
Calibration
Rolling shutter compensation
What's next?
Summary

What You Will Learn

  • Select and configure camera systems to see invisible light, fast motion, and distant objects
  • Build a “camera trap”, as used by nature photographers, and process photos to create beautiful effects
  • Develop a facial expression recognition system with various feature extraction techniques and machine learning methods
  • Build a panorama Android application using the OpenCV stitching module in C++ with NDK support
  • Optimize your object detection model, make it rotation invariant, and apply scene-specific constraints to make it faster and more robust
  • Create a person identification and registration system based on biometric properties of that person, such as their fingerprint, iris, and face
  • Fuse data from videos and gyroscopes to stabilize videos shot from your mobile phone and create hyperlapse style videos

Authors

Table of Contents

Chapter 1: Getting the Most out of Your Camera System
Coloring the light
Capturing the subject in the moment
Rounding up the unusual suspects
Supercharging the PlayStation Eye
Supercharging the ASUS Xtion PRO Live and other OpenNI-compliant depth cameras
Supercharging the GS3-U3-23S6M-C and other Point Grey Research cameras
Shopping for glass
Summary
Chapter 2: Photographing Nature and Wildlife with an Automated Camera
Planning the camera trap
Controlling a photo camera with gPhoto2
Detecting the presence of a photogenic subject
Processing images to show subtle colors and motion
Further study
Summary
Chapter 3: Recognizing Facial Expressions with Machine Learning
Introducing facial expression recognition
Finding the face region in the image
Feature extraction
Classification
Evaluation
System overview
Further reading
Summary
Chapter 4: Panoramic Image Stitching Application Using Android Studio and NDK
Introducing the concept of panorama
The Android section – an application user interface
Integrating OpenCV into the Android Studio
Application showcase
Further improvement
Summary
Chapter 5: Generic Object Detection for Industrial Applications
Difference between recognition, detection, and categorization
Smartly selecting and preparing application specific training data
Parameter selection when training an object model
Using scene specific knowledge and constraints to optimize the detection result
Obtaining rotation invariance object detection
2D scale space relation
Performance evaluation and GPU optimizations
Practical applications
Summary
Chapter 6: Efficient Person Identification Using Biometric Properties
Biometrics, a general approach
Face detection and recognition
Fingerprint identification, how is it done?
Iris identification, how is it done?
Combining the techniques to create an efficient people-registration system
Summary
Chapter 7: Gyroscopic Video Stabilization
Stabilization with images
Stabilization with hardware
A hybrid of hardware and software
The math
Project overview
Capturing data
Android specifics
Calibration
Rolling shutter compensation
What's next?
Summary

Book Details

ISBN 139781784399757
Paperback382 pages
Read More
From 1 reviews

Read More Reviews