This is the code repository for Learn OpenCV 4 By Building Projects - Second Edition, published by Packt.
Build real-world computer vision and image processing applications with OpenCV and C++
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. Whether you’re completely new to computer vision or have a basic understanding of its concepts, Learn OpenCV 4 by Building Projects will be your guide to understanding OpenCV concepts and algorithms through real-world examples and projects. You’ll begin with the installation of OpenCV and the basics of image processing. Then, you’ll cover user interfaces and get deeper into image processing. As you progress through the book, you'll learn complex computer vision algorithms and explore machine learning and face detection. The book then guides you in creating optical flow video analysis and background subtraction in complex scenes. In the concluding chapters, you'll also learn text segmentation and recognition and understand the basics of the new and improved deep learning module. By the end of this book, you'll be familiar with the basics of Open CV—such as matrix operations, filters, and histograms—and you'll have mastered commonly used computer vision techniques to build OpenCV projects from scratch.
This book covers the following exciting features: Install OpenCV 4 on your operating system Create CMake scripts to compile your C++ application Understand basic image matrix formats and filters Explore segmentation and feature extraction techniques Remove backgrounds from static scenes to identify moving objects for surveillance Employ various techniques to track objects in a live video Work with new OpenCV functions for text detection and recognition with Tesseract Get acquainted with important deep learning tools for image classification
If you feel this book is for you, get your copy today!
<img src="https://raw.githubusercontent.com/PacktPublishing/GitHub/master/GitHub.png" alt="https://www.packtpub.com/" border="5" />
All of the code is organized into folders. For example, Chapter02.
The code will look like the following:
// Load image to process
Mat img= imread(img_file, 0);
if(img.data==NULL){
cout << "Error loading image "<< img_file << endl;
return 0;
}
Following is what you need for this book: 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, Learn OpenCV 4 by Building Projects for you. Prior knowledge of C++ will help you understand the concepts covered in this book.
With the following software and hardware list you can run all code files present in the book (Chapter 1-12).
Chapter | Software required | OS required |
---|---|---|
3 | Qt, OpenGL | Windows, Mac OS X, and Linux (Any) |
10, 11 | Tesseract | Windows, Mac OS X, and Linux (Any) |
12 | Protobuf 3.5.1, OpenCV compiled with DNN support module | Windows, Mac OS, and Linux (Any) |
We also provide a PDF file that has color images of the screenshots/diagrams used in this book. Click here to download it.
Click on the following link to see the Code in Action:
David Millán Escrivá completed his studies in IT from the Universitat Politécnica de Valencia in 2005. In 2014, he completed his Master's degree in artificial intelligence, computer graphics, and pattern recognition, focusing on pattern recognition and computer vision. David now has more than 13 years' experience in IT, with more than 9 years' experience in computer vision, computer graphics, and pattern recognition, working on different projects and start-ups, applying his knowledge of computer vision, optical character recognition, and augmented reality.
Vinicius G. Mendonça is a computer graphics university professor at PUCPR. He started programming with C++ 20 years ago and has ventured into the field of computer gaming and computer graphics over the last 12 years. He was also a reviewer of the OpenNI Cookbook by Packt Publishing, among other Packt books. In his research, he has used Kinect, OpenNI, and OpenCV to recognize Brazilian sign-language gestures. His field of interest includes image processing, Computer Vision, design patterns, project management, and parallel applications.
Prateek Joshi is an artificial intelligence researcher, an author of eight published books, and a TEDx speaker. He has been featured in Forbes 30 Under 30, CNBC, TechCrunch, Silicon Valley Business Journal, and many more publications. He is the founder of Pluto AI, a venture-funded Silicon Valley start-up building an intelligence platform for water facilities. He graduated from the University of Southern California with a Master's degree specializing in Artificial Intelligence. He has previously worked at NVIDIA and Microsoft Research.
Python: Real World Machine Learning
Click here if you have any feedback or suggestions.