Book description
Updated for OpenCV 4 and Python 3, this book covers the latest on depth cameras, 3D tracking, augmented reality, and deep neural networks, helping you solve real-world computer vision problems with practical code
Key Features
- Build powerful computer vision applications in concise code with OpenCV 4 and Python 3
- Learn the fundamental concepts of image processing, object classification, and 2D and 3D tracking
- Train, use, and understand machine learning models such as Support Vector Machines (SVMs) and neural networks
Book Description
Computer vision is a rapidly evolving science, encompassing diverse applications and techniques. This book will not only help those who are getting started with computer vision but also experts in the domain. You'll be able to put theory into practice by building apps with OpenCV 4 and Python 3.
You'll start by understanding OpenCV 4 and how to set it up with Python 3 on various platforms. Next, you'll learn how to perform basic operations such as reading, writing, manipulating, and displaying still images, videos, and camera feeds. From taking you through image processing, video analysis, and depth estimation and segmentation, to helping you gain practice by building a GUI app, this book ensures you'll have opportunities for hands-on activities. Next, you'll tackle two popular challenges: face detection and face recognition. You'll also learn about object classification and machine learning concepts, which will enable you to create and use object detectors and classifiers, and even track objects in movies or video camera feed. Later, you'll develop your skills in 3D tracking and augmented reality. Finally, you'll cover ANNs and DNNs, learning how to develop apps for recognizing handwritten digits and classifying a person's gender and age.
By the end of this book, you'll have the skills you need to execute real-world computer vision projects.
What you will learn
- Install and familiarize yourself with OpenCV 4's Python 3 bindings
- Understand image processing and video analysis basics
- Use a depth camera to distinguish foreground and background regions
- Detect and identify objects, and track their motion in videos
- Train and use your own models to match images and classify objects
- Detect and recognize faces, and classify their gender and age
- Build an augmented reality application to track an image in 3D
- Work with machine learning models, including SVMs, artificial neural networks (ANNs), and deep neural networks (DNNs)
Who this book is for
If you are interested in learning computer vision, machine learning, and OpenCV in the context of practical real-world applications, then this book is for you. This OpenCV book will also be useful for anyone getting started with computer vision as well as experts who want to stay up-to-date with OpenCV 4 and Python 3. Although no prior knowledge of image processing, computer vision or machine learning is required, familiarity with basic Python programming is a must.
Table of contents
- Title Page
- Copyright and Credits
- Dedication
- About Packt
- Contributors
- Preface
-
Setting Up OpenCV
- Technical requirements
- What's new in OpenCV 4
- Choosing and using the right setup tools
- Running samples
- Finding documentation, help, and updates
- Summary
- Handling Files, Cameras, and GUIs
- Processing Images with OpenCV
-
Depth Estimation and Segmentation
- Technical requirements
- Creating modules
- Capturing frames from a depth camera
- Converting 10-bit images to 8-bit
- Creating a mask from a disparity map
- Modifying the application
- Depth estimation with a normal camera
- Foreground detection with the GrabCut algorithm
- Image segmentation with the Watershed algorithm
- Summary
- Detecting and Recognizing Faces
-
Retrieving Images and Searching Using Image Descriptors
- Technical requirements
- Understanding types of feature detection and matching
- Detecting Harris corners
- Detecting DoG features and extracting SIFT descriptors
- Detecting Fast Hessian features and extracting SURF descriptors
- Using ORB with FAST features and BRIEF descriptors
- Filtering matches using K-Nearest Neighbors and the ratio test
- Matching with FLANN
- Performing homography with FLANN-based matches
- A sample application – tattoo forensics
- Summary
- Building Custom Object Detectors
- Tracking Objects
-
Camera Models and Augmented Reality
- Technical requirements
- Understanding 3D image tracking and augmented reality
- Implementing the demo application
- Improving the 3D tracking algorithm
- Summary
-
Introduction to Neural Networks with OpenCV
- Technical requirements
- Understanding ANNs
- Training a basic ANN in OpenCV
- Training an ANN classifier in multiple epochs
- Recognizing handwritten digits with an ANN
- Using DNNs from other frameworks in OpenCV
- Detecting and classifying objects with third-party DNNs
- Detecting and classifying faces with third-party DNNs
- Summary
- Appendix A: Bending Color Space with the Curves Filter
- Other Book You May Enjoy
Product information
- Title: Learning OpenCV 4 Computer Vision with Python 3
- Author(s):
- Release date: February 2020
- Publisher(s): Packt Publishing
- ISBN: 9781789531619
You might also like
book
Learning OpenCV 5 Computer Vision with Python - Fourth Edition
Updated for OpenCV 5, this book covers the latest on depth cameras, 3D navigation, deep neural …
book
Building Computer Vision Projects with OpenCV 4 and C++
Delve into practical computer vision and image processing projects and get up to speed with advanced …
book
Deep Learning with Python, Second Edition
Printed in full color! Unlock the groundbreaking advances of deep learning with this extensively revised new …
video
Computer Vision Theory and Projects in Python for Beginners
The high-quality content of the Mastering Computer Vision from the Absolute Beginning Using Python course presents …