Learn the techniques for object recognition, 3D reconstruction, stereo imaging, and other computer vision applications using examples on different functions of OpenCV.
About This Book
- Learn how to apply complex visual effects to images with OpenCV 3.x and Python
- Extract features from an image and use them to develop advanced applications
- Build algorithms to help you understand image content and perform visual searches
- Get to grips with advanced techniques in OpenCV such as machine learning, artificial neural network, 3D reconstruction, and augmented reality
Who This Book Is For
This book is intended for Python developers who are new to OpenCV and want to develop computer vision applications with OpenCV and Python. This book is also useful for generic software developers who want to deploy computer vision applications on the cloud. It would be helpful to have some familiarity with basic mathematical concepts such as vectors, matrices, and so on.
What You Will Learn
- Detect shapes and edges from images and videos
- How to apply filters on images and videos
- Use different techniques to manipulate and improve images
- Extract and manipulate particular parts of images and videos
- Track objects or colors from videos
- Recognize specific object or faces from images and videos
- How to create Augmented Reality applications
- Apply artificial neural networks and machine learning to improve object recognition
Computer vision is found everywhere in modern technology. OpenCV for Python enables us to run computer vision algorithms in real time. With the advent of powerful machines, we have more processing power to work with. Using this technology, we can seamlessly integrate our computer vision applications into the cloud. Focusing on OpenCV 3.x and Python 3.6, this book will walk you through all the building blocks needed to build amazing computer vision applications with ease.
We start off by manipulating images using simple filtering and geometric transformations. We then discuss affine and projective transformations and see how we can use them to apply cool advanced manipulations to your photos like resizing them while keeping the content intact or smoothly removing undesired elements. We will then cover techniques of object tracking, body part recognition, and object recognition using advanced techniques of machine learning such as artificial neural network. 3D reconstruction and augmented reality techniques are also included. The book covers popular OpenCV libraries with the help of examples.
This book is a practical tutorial that covers various examples at different levels, teaching you about the different functions of OpenCV and their actual implementation. By the end of this book, you will have acquired the skills to use OpenCV and Python to develop real-world computer vision applications.
Style and approach
The book is a practical tutorial that covers various examples at different levels, teaching you about the different functions of OpenCV and their actual implementation.
Downloading the example code for this book You can download the example code files for all Packt books you have purchased from your account at http://www.PacktPub.com. If you purchased this book elsewhere, you can visit http://www.PacktPub.com/support and register to have the files e-mailed directly to you.
Table of Contents
Applying Geometric Transformations to Images
- Installing OpenCV-Python
- Reading, displaying, and saving images
- Loading and saving an image
- Image color spaces
- Image translation
- Image rotation
- Image scaling
- Affine transformations
- Projective transformations
- Image warping
Detecting Edges and Applying Image Filters
- 2D convolution
- Motion blur
- Edge detection
- Erosion and dilation
- Creating a vignette filter
- Enhancing the contrast in an image
- Cartoonizing an Image
Detecting and Tracking Different Body Parts
- Using Haar cascades to detect things
- What are integral images?
- Detecting and tracking faces
- Fun with faces
- Detecting eyes
- Fun with eyes
- Detecting ears
- Detecting a mouth
- It's time for a moustache
- Detecting pupils
Extracting Features from an Image
- Why do we care about keypoints?
- What are keypoints?
- Detecting the corners
- Good features to track
- Scale-invariant feature transform (SIFT)
- Speeded-up robust features (SURF)
- Features from accelerated segment test (FAST)
- Binary robust independent elementary features (BRIEF)
- Oriented FAST and Rotated BRIEF (ORB)
- Seam Carving
- Detecting Shapes and Segmenting an Image
- Object Tracking
- Object detection versus object recognition
- What is a dense feature detector?
- What is a visual dictionary?
- What is supervised and unsupervised learning?
- What are support vector machines?
- How do we actually implement this?
- What is the premise of augmented reality?
- What does an augmented reality system look like?
- Geometric transformations for augmented reality
- What is pose estimation?
- How to track planar objects
- How to augment our reality
- Let's add some movements
- Machine Learning by an Artificial Neural Network
- Other Books You May Enjoy
- Title: OpenCV 3.x with Python By Example - Second Edition
- Release date: January 2018
- Publisher(s): Packt Publishing
- ISBN: 9781788396905