Learn the techniques for object recognition, 3D reconstruction, stereo imaging, and other computer vision applications using examples on different functions of OpenCV. 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. 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.
This is a fairly short, haphazard intro to OpenCV for Python. It starts out with image processing functions and moves into more sophisticated uses like object detection and recognition and neural nets. Each chapter starts off with a description of what we're trying to do and the tools that we'll use to do it. These runs of prose can be quite effective, and show that the authors are quite capable. Unfortunately, the coding part fails to match the quality of the overview summaries.
I buy books because online tutorials are often half-hearted, with blocks of unexplained code and paragraphs full of poor grammar. This book has okay grammar, and the descriptions of the algorithms and methods are often quite good, but at the end of the day, there's too little explanation of what's going on. Let me spell it out: C-O-D-E D-U-M-P-S! I used this book to get me started, but most of my effort in learning OpenCV came from online tutorials. It's a shame as the book obviously has potential.
I also tried to download the code from the book's website and failed miserably. The publisher makes it hard to do. They should follow the example of the No Starch Press and provide a link to a public GitHub site. They want to ensure that you bought the book, which might be easy if you bought directly from Packt, but not if you bought from Amazon or a bookstore. As a result, I will be very careful about buying Packt books in the future.