万本电子书0元读

万本电子书0元读

顶部广告

Learning OpenCV 3 Computer Vision with Python - Second Edition电子书

售       价:¥

26人正在读 | 0人评论 6.2

作       者:Joe Minichino

出  版  社:Packt Publishing

出版时间:2015-09-29

字       数:244.4万

所属分类: 进口书 > 外文原版书 > 电脑/网络

温馨提示:数字商品不支持退换货,不提供源文件,不支持导出打印

为你推荐

  • 读书简介
  • 目录
  • 累计评论(0条)
  • 读书简介
  • 目录
  • 累计评论(0条)
Unleash the power of computer vision with Python using OpenCV About This Book Create impressive applications with OpenCV and Python Familiarize yourself with advanced machine learning concepts Harness the power of computer vision with this easy-to-follow guide Who This Book Is For Intended for novices to the world of OpenCV and computer vision, as well as OpenCV veterans that want to learn about what's new in OpenCV 3, this book is useful as a reference for experts and a training manual for beginners, or for anybody who wants to familiarize themselves with the concepts of object classification and detection in simple and understandable terms. Basic knowledge about Python and programming concepts is required, although the book has an easy learning curve both from a theoretical and coding point of view. What You Will Learn Install and familiarize yourself with OpenCV 3's Python API Grasp the basics of image processing and video analysis Identify and recognize objects in images and videos Detect and recognize faces using OpenCV Train and use your own object classifiers Learn about machine learning concepts in a computer vision context Work with artificial neural networks using OpenCV Develop your own computer vision real-life application In Detail OpenCV 3 is a state-of-the-art computer vision library that allows a great variety of image and video processing operations. Some of the more spectacular and futuristic features such as face recognition or object tracking are easily achievable with OpenCV 3. Learning the basic concepts behind computer vision algorithms, models, and OpenCV's API will enable the development of all sorts of real-world applications, including security and surveillance. Starting with basic image processing operations, the book will take you through to advanced computer vision concepts. Computer vision is a rapidly evolving science whose applications in the real world are exploding, so this book will appeal to computer vision novices as well as experts of the subject wanting to learn the brand new OpenCV 3.0.0. You will build a theoretical foundation of image processing and video analysis, and progress to the concepts of classification through machine learning, acquiring the technical know-how that will allow you to create and use object detectors and classifiers, and even track objects in movies or video camera feeds. Finally, the journey will end in the world of artificial neural networks, along with the development of a hand-written digits recognition application. Style and approach This book is a comprehensive guide to the brand new OpenCV 3 with Python to develop real-life computer vision applications.
目录展开

Learning OpenCV 3 Computer Vision with Python Second Edition

Table of Contents

Learning OpenCV 3 Computer Vision with Python Second Edition

Credits

About the Authors

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

Errata

Piracy

Questions

1. Setting Up OpenCV

Choosing and using the right setup tools

Installation on Windows

Using binary installers (no support for depth cameras)

Using CMake and compilers

Installing on OS X

Using MacPorts with ready-made packages

Using MacPorts with your own custom packages

Using Homebrew with ready-made packages (no support for depth cameras)

Using Homebrew with your own custom packages

Installation on Ubuntu and its derivatives

Using the Ubuntu repository (no support for depth cameras)

Building OpenCV from a source

Installation on other Unix-like systems

Installing the Contrib modules

Running samples

Finding documentation, help, and updates

Summary

2. Handling Files, Cameras, and GUIs

Basic I/O scripts

Reading/writing an image file

Converting between an image and raw bytes

Accessing image data with numpy.array

Reading/writing a video file

Capturing camera frames

Displaying images in a window

Displaying camera frames in a window

Project Cameo (face tracking and image manipulation)

Cameo – an object-oriented design

Abstracting a video stream with managers.CaptureManager

Abstracting a window and keyboard with managers.WindowManager

Applying everything with cameo.Cameo

Summary

3. Processing Images with OpenCV 3

Converting between different color spaces

A quick note on BGR

The Fourier Transform

High pass filter

Low pass filter

Creating modules

Edge detection

Custom kernels – getting convoluted

Modifying the application

Edge detection with Canny

Contour detection

Contours – bounding box, minimum area rectangle, and minimum enclosing circle

Contours – convex contours and the Douglas-Peucker algorithm

Line and circle detection

Line detection

Circle detection

Detecting shapes

Summary

4. Depth Estimation and Segmentation

Creating modules

Capturing frames from a depth camera

Creating a mask from a disparity map

Masking a copy operation

Depth estimation with a normal camera

Object segmentation using the Watershed and GrabCut algorithms

Example of foreground detection with GrabCut

Image segmentation with the Watershed algorithm

Summary

5. Detecting and Recognizing Faces

Conceptualizing Haar cascades

Getting Haar cascade data

Using OpenCV to perform face detection

Performing face detection on a still image

Performing face detection on a video

Performing face recognition

Generating the data for face recognition

Recognizing faces

Preparing the training data

Loading the data and recognizing faces

Performing an Eigenfaces recognition

Performing face recognition with Fisherfaces

Performing face recognition with LBPH

Discarding results with confidence score

Summary

6. Retrieving Images and Searching Using Image Descriptors

Feature detection algorithms

Defining features

Detecting features – corners

Feature extraction and description using DoG and SIFT

Anatomy of a keypoint

Feature extraction and detection using Fast Hessian and SURF

ORB feature detection and feature matching

FAST

BRIEF

Brute-Force matching

Feature matching with ORB

Using K-Nearest Neighbors matching

FLANN-based matching

FLANN matching with homography

A sample application – tattoo forensics

Saving image descriptors to file

Scanning for matches

Summary

7. Detecting and Recognizing Objects

Object detection and recognition techniques

HOG descriptors

The scale issue

The location issue

Image pyramid

Sliding windows

Non-maximum (or non-maxima) suppression

Support vector machines

People detection

Creating and training an object detector

Bag-of-words

BOW in computer vision

The k-means clustering

Detecting cars

What did we just do?

SVM and sliding windows

Example – car detection in a scene

Examining detector.py

Associating training data with classes

Dude, where's my car?

Summary

8. Tracking Objects

Detecting moving objects

Basic motion detection

Background subtractors – KNN, MOG2, and GMG

Meanshift and CAMShift

Color histograms

The calcHist function

The calcBackProject function

In summary

Back to the code

CAMShift

The Kalman filter

Predict and update

An example

A real-life example – tracking pedestrians

The application workflow

A brief digression – functional versus object-oriented programming

The Pedestrian class

The main program

Where do we go from here?

Summary

9. Neural Networks with OpenCV – an Introduction

Artificial neural networks

Neurons and perceptrons

The structure of an ANN

Network layers by example

The input layer

The output layer

The hidden layer

The learning algorithms

ANNs in OpenCV

ANN-imal classification

Training epochs

Handwritten digit recognition with ANNs

MNIST – the handwritten digit database

Customized training data

The initial parameters

The input layer

The hidden layer

The output layer

Training epochs

Other parameters

Mini-libraries

The main file

Possible improvements and potential applications

Improvements

Potential applications

Summary

To boldly go…

Index

累计评论(0条) 0个书友正在讨论这本书 发表评论

发表评论

发表评论,分享你的想法吧!

买过这本书的人还买过

读了这本书的人还在读

回顶部