Learning Path Building Computer Vision Projects with OpenCV 4 and C++

David Millan Escriva , Prateek Joshi , Vinicius G. Mendonca , Roy Shilkrot



Key Features

  • Discover best practices for engineering and maintaining OpenCV projects
  • Explore important deep learning tools for image classification
  • Understand basic image matrix formats and filters

Book Description

OpenCV is one of the best open source libraries available and can help you focus on constructing complete projects on image processing, motion detection, and image segmentation.

This Learning Path is your guide to understanding OpenCV concepts and algorithms through real-world examples and activities. Through various projects, you'll also discover how to use complex computer vision and machine learning algorithms and face detection to extract the maximum amount of information from images and videos. In later chapters, you'll learn to enhance your videos and images with optical flow analysis and background subtraction. Sections in the Learning Path will help you get to grips with text segmentation and recognition, in addition to guiding you through the basics of the new and improved deep learning modules. By the end of this Learning Path, you will have mastered commonly used computer vision techniques to build OpenCV projects from scratch. This Learning Path includes content from the following Packt books:

  • Mastering OpenCV 4 - Third Edition by Roy Shilkrot and David Millan Escriva
  • Learn OpenCV 4 By Building Projects - Second Edition by David Millan Escriva, Vinicius G. Mendonca, and Prateek Joshi

What you will learn

  • Stay up-to-date with algorithmic design approaches for complex computer vision tasks
  • Work with OpenCV's most up-to-date API through various projects
  • Understand 3D scene reconstruction and Structure from Motion (SfM)
  • Study camera calibration and overlay augmented reality (AR) using the ArUco module
  • Create CMake scripts to compile your C++ application
  • Explore segmentation and feature extraction techniques
  • Remove backgrounds from static scenes to identify moving objects for surveillance
  • Work with new OpenCV functions to detect and recognize text with Tesseract

Who this book is for

If you are a software developer with a basic understanding of computer vision and image processing and want to develop interesting computer vision applications with OpenCV, this Learning Path is for you. Prior knowledge of C++ and familiarity with mathematical concepts will help you better understand the concepts in this Learning Path.


Table of Contents

  1. Getting Started with OpenCV
  2. An Introduction to the Basics of OpenCV
  3. Learning Graphical User Interfaces
  4. Delving into Histogram and Filters
  5. Automated Optical Inspection, Object Segmentation, and Detection
  6. Learning Object Classification
  7. Detecting Face Parts and Overlaying Masks
  8. Video Surveillance, Background Modeling, and Morphological Operations
  9. Learning Object Tracking
  10. Developing Segmentation Algorithms for Text Recognition
  11. Text Recognition with Tesseract
  12. Deep Learning with OpenCV
  13. Cartoonifier and Skin Color Analysis on the RaspberryPi
  14. Explore Structure from Motion with the SfM Module
  15. Face Landmark and Pose with the Face Module
  16. Number Plate Recognition with Deep Convolutional Networks
  17. Face Detection and Recognition with the DNN Module
  18. Android Camera Calibration and AR Using the ArUco Module
  19. iOS Panoramas with the Stitching Module
  20. Finding the Best OpenCV Algorithm for the Job
  21. Avoiding Common Pitfalls in OpenCV