معرفی کتاب «OpenCV with Python By Example : Build Real-world Computer Vision Applications and Develop Cool Demos Using OpenCV for Python» نوشتهٔ Prateek Joshi، منتشرشده توسط نشر Packt Publishing در سال 2015. این کتاب در 5 صفحه، فرمت pdf، زبان انگلیسی ارائه شده است. «OpenCV with Python By Example : Build Real-world Computer Vision Applications and Develop Cool Demos Using OpenCV for Python» در دستهٔ بدون دستهبندی قرار دارد.
Key FeaturesLearn how to apply complex visual effects to images using geometric transformations and image filtersExtract features from an image and use them to develop advanced applicationsBuild algorithms to understand the image content and recognize objects in an imageBook DescriptionWhat you will learnApply geometric transformations to images, perform image filtering, and convert an image into a cartoon-like imageDetect and track various body parts such as the face, nose, eyes, ears, and mouthStitch multiple images of a scene together to create a panoramic imageMake an object disappear from an imageIdentify different shapes, segment an image, and track an object in a live videoRecognize objects in an image and understand the contentReconstruct a 3D map from imagesBuild an augmented reality applicationWho this book is forThis book is intended for Python developers who are new to OpenCV and want to develop computer vision applications with OpenCV-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. OpenCV with Python By Example Credits About the Author About the Reviewers www.PacktPub.com Support files, eBooks, discount offers, and more Why subscribe? Free access for Packt account holders Preface What this book covers What you need for this book Who this book is for Conventions Reader feedback Customer support Downloading the example code Downloading the color images of this book Errata Piracy Questions 1. Applying Geometric Transformations to Images Installing OpenCV-Python Windows Mac OS X Linux (for Ubuntu) Reading, displaying, and saving images What just happened? Loading and saving an image Image color spaces Converting between color spaces What just happened? Image translation What just happened? Image rotation What just happened? Image scaling What just happened? Affine transformations What just happened? Projective transformations What just happened? Image warping Summary 2. Detecting Edges and Applying Image Filters 2D convolution Blurring The size of the kernel versus the blurriness Edge detection Motion blur Under the hood Sharpening Understanding the pattern Embossing Erosion and dilation Afterthought Creating a vignette filter What's happening underneath? How do we move the focus around? Enhancing the contrast in an image How do we handle color images? Summary 3. Cartoonizing an Image Accessing the webcam Under the hood Keyboard inputs Interacting with the application Mouse inputs What's happening underneath? Interacting with a live video stream How did we do it? Cartoonizing an image Deconstructing the code Summary 4. Detecting and Tracking Different Body Parts Using Haar cascades to detect things What are integral images? Detecting and tracking faces Understanding it better Fun with faces Under the hood Detecting eyes Afterthought Fun with eyes Positioning the sunglasses Detecting ears Detecting a mouth It's time for a moustache Detecting a nose Detecting pupils Deconstructing the code Summary 5. 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) Summary 6. Creating a Panoramic Image Matching keypoint descriptors How did we match the keypoints? Understanding the matcher object Drawing the matching keypoints Creating the panoramic image Finding the overlapping regions Stitching the images What if the images are at an angle to each other? Why does it look stretched? Summary 7. Seam Carving Why do we care about seam carving? How does it work? How do we define "interesting"? How do we compute the seams? Can we expand an image? Can we remove an object completely? How did we do it? Summary 8. Detecting Shapes and Segmenting an Image Contour analysis and shape matching Approximating a contour Identifying the pizza with the slice taken out How to censor a shape? What is image segmentation? How does it work? Watershed algorithm Summary 9. Object Tracking Frame differencing Colorspace based tracking Building an interactive object tracker Feature based tracking Background subtraction Summary 10. Object Recognition 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? What if we cannot separate the data with simple straight lines? How do we actually implement this? What happened inside the code? How did we build the trainer? Summary 11. Stereo Vision and 3D Reconstruction What is stereo correspondence? What is epipolar geometry? Why are the lines different as compared to SIFT? Building the 3D map Summary 12. Augmented Reality 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? What happened inside the code? How to augment our reality? Mapping coordinates from 3D to 2D How to overlay 3D objects on a video? Let's look at the code Let's add some movements Summary Index
Build real-world computer vision applications and develop cool demos using OpenCV for Python
About This Book
- Learn how to apply complex visual effects to images using geometric transformations and image filters
- Extract features from an image and use them to develop advanced applications
- Build algorithms to help you understand the image content and perform visual searches
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-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
- Apply geometric transformations to images, perform image filtering, and convert an image into a cartoon-like image
- Detect and track various body parts such as the face, nose, eyes, ears, and mouth
- Stitch multiple images of a scene together to create a panoramic image
- Make an object disappear from an image
- Identify different shapes, segment an image, and track an object in a live video
- Recognize an object in an image and build a visual search engine
- Reconstruct a 3D map from images
- Build an augmented reality application
In Detail
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 are getting more processing power to work with. Using this technology, we can seamlessly integrate our computer vision applications into the cloud. Web developers can develop complex applications without having to reinvent the wheel.
This book will walk you through all the building blocks needed to build amazing computer vision applications with ease. We start off with applying geometric transformations to images. We then discuss affine and projective transformations and see how we can use them to apply cool geometric effects to photos. We will then cover techniques used for object recognition, 3D reconstruction, stereo imaging, and other computer vision applications.
This book will also provide clear examples written in Python to build OpenCV applications. The book starts off with simple beginner's level tasks such as basic processing and handling images, image mapping, and detecting images. It also covers popular OpenCV libraries with the help of examples.
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.
Style and approach
This is a conversational-style book filled with hands-on examples that are really easy to understand. Each topic is explained very clearly and is followed by a programmatic implementation so that the concept is solidified. Each topic contributes to something bigger in the following chapters, which helps you understand how to piece things together to build something big and complex.
Build real-world computer vision applications and develop cool demos using OpenCV for Python This book is intended for Python developers who are new to OpenCV and want to develop computer vision applications with OpenCV-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. 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 are getting more processing power to work with. Using this technology, we can seamlessly integrate our computer vision applications into the cloud. Web developers can develop complex applications without having to reinvent the wheel. This book will walk you through all the building blocks needed to build amazing computer vision applications with ease. We start off with applying geometric transformations to images. We then discuss affine and projective transformations and see how we can use them to apply cool geometric effects to photos. We will then cover techniques used for object recognition, 3D reconstruction, stereo imaging, and other computer vision applications. This book will also provide clear examples written in Python to build OpenCV applications. The book starts off with simple beginner's level tasks such as basic processing and handling images, image mapping, and detecting images. It also covers popular OpenCV libraries with the help of examples. 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. This is a conversational-style book filled with hands-on examples that are really easy to understand. Each topic is explained very clearly and is followed by a programmatic implementation so that the concept is solidified. Each topic contributes to something bigger in the following chapters, which helps you understand how to piece things together to build something big and complex.