Learning OpenCV 3 - Gary R. Bradski, Adrian Kaehler

Learning OpenCV 3

Computer Vision in C++ with the OpenCV Library
Buch | Softcover
1024 Seiten
2017
O'Reilly Media (Verlag)
978-1-4919-3799-0 (ISBN)
76,30 inkl. MwSt
Get started in the rapidly expanding field of computer vision with this practical guide.

Written by Adrian Kaehler and Gary Bradski, creator of the open source OpenCV library, this book provides a thorough introduction for developers, academics, roboticists, and hobbyists. You’ll learn what it takes to build applications that enable computers to "see" and make decisions based on that data.

With over 500 functions that span many areas in vision, OpenCV is used for commercial applications such as security, medical imaging, pattern and face recognition, robotics, and factory product inspection. This book gives you a firm grounding in computer vision and OpenCV for building simple or sophisticated vision applications. Hands-on exercises in each chapter help you apply what you’ve learned.

This volume covers the entire library, in its modern C++ implementation, including machine learning tools for computer vision.

Learn OpenCV data types, array types, and array operations
Capture and store still and video images with HighGUI
Transform images to stretch, shrink, warp, remap, and repair
Explore pattern recognition, including face detection
Track objects and motion through the visual field
Reconstruct 3D images from stereo vision
Discover basic and advanced machine learning techniques in OpenCV

Dr. Gary Rost Bradski is a consulting professor in the CS department at Stanford University AI Lab where he mentors robotics, machine learning and computer vision research. He is also Senior Scientist at Willow Garage http://www.willowgarage.com, a recently founded robotics research institute/incubator. He has a BS degree in EECS from U.C. Berkeley and a PhD from Boston University. He has 20 years of industrial experience applying machine learning and computer vision spanning option trading operations at First Union National Bank, to computer vision at Intel Research to machine learning in Intel Manufacturing and several startup companies in between. Gary started the Open Source Computer Vision Library (OpenCV http://sourceforge.net/projects/opencvlibrary/ ), the statistical Machine Learning Library (MLL comes with OpenCV), and the Probabilistic Network Library (PNL). OpenCV is used around the world in research, government and commercially. The vision libraries helped develop a notable part of the commercial Intel performance primitives library (IPP http://tinyurl.com/36ua5s). Gary also organized the vision team for Stanley, the Stanford robot that won the DARPA Grand Challenge autonomous race across the desert for a $2M team prize and helped found the Stanford AI Robotics project at Stanford http://www.cs.stanford.edu/group/stair/ working with Professor Andrew Ng. Gary has over 50 publications and 13 issued patents with 18 pending. He lives in Palo Alto with his wife and 3 daughters and bikes road or mountains as much as he can.

Dr. Adrian Kaehler is a senior scientist at Applied Minds Corporation. His current research includes topics in machine learning, statistical modeling, computer vision and robotics. Adrian received his Ph.D. in Theoretical Physics from Columbia university in 1998. Adrian held positions at Intel Corporation and the Stanford University AI Lab, and was a member of the winning Stanley race team in the DARPA Grand Challenge.

Chapter 1Overview
What Is OpenCV?
Who Uses OpenCV?
What Is Computer Vision?
The Origin of OpenCV
Downloading and Installing OpenCV
Getting the Latest OpenCV via Git
More OpenCV Documentation
OpenCV Contribution Repository
Portability
Summary
Exercises
Chapter 2Introduction to OpenCV
Include Files
First Program—Display a Picture
Second Program—Video
Moving Around
A Simple Transformation
A Not-So-Simple Transformation
Input from a Camera
Writing to an AVI File
Summary
Exercises
Chapter 3Getting to Know OpenCV Data Types
The Basics
OpenCV Data Types
Summary
Exercises
Chapter 4Images and Large Array Types
Dynamic and Variable Storage
Summary
Exercises
Chapter 5Array Operations
More Things You Can Do with Arrays
Summary
Exercises
Chapter 6Drawing and Annotating
Drawing Things
Summary
Exercises
Chapter 7Functors in OpenCV
Objects That “Do Stuff”
Summary
Exercises
Chapter 8Image, Video, and Data Files
HighGUI: Portable Graphics Toolkit
Working with Image Files
Working with Video
Data Persistence
Summary
Exercises
Chapter 9Cross-Platform and Native Windows
Working with Windows
Summary
Exercises
Chapter 10Filters and Convolution
Overview
Before We Begin
Threshold Operations
Smoothing
Derivatives and Gradients
Image Morphology
Convolution with an Arbitrary Linear Filter
Summary
Exercises
Chapter 11General Image Transforms
Overview
Stretch, Shrink, Warp, and Rotate
General Remappings
Image Repair
Histogram Equalization
Summary
Exercises
Chapter 12Image Analysis
Overview
Discrete Fourier Transform
Integral Images
The Canny Edge Detector
Hough Transforms
Distance Transformation
Segmentation
Summary
Exercises
Chapter 13Histograms and Templates
Histogram Representation in OpenCV
Basic Manipulations with Histograms
Some More Sophisticated Histograms Methods
Template Matching
Summary
Exercises
Chapter 14Contours
Contour Finding
More to Do with Contours
Matching Contours and Images
Summary
Exercises
Chapter 15Background Subtraction
Overview of Background Subtraction
Weaknesses of Background Subtraction
Scene Modeling
Averaging Background Method
A More Advanced Background Subtraction Method
Connected Components for Foreground Cleanup
Comparing Two Background Methods
OpenCV Background Subtraction Encapsulation
Summary
Exercises
Chapter 16Keypoints and Descriptors
Keypoints and the Basics of Tracking
Generalized Keypoints and Descriptors
Summary
Exercises
Chapter 17Tracking
Concepts in Tracking
Dense Optical Flow
Mean-Shift and Camshift Tracking
Motion Templates
Estimators
Summary
Exercises
Chapter 18Camera Models and Calibration
Camera Model
Calibration
Undistortion
Putting Calibration All Together
Summary
Exercises
Chapter 19Projection and Three-Dimensional Vision
Projections
Affine and Perspective Transformations
Three-Dimensional Pose Estimation
Stereo Imaging
Structure from Motion
Fitting Lines in Two and Three Dimensions
Summary
Exercises
Chapter 20The Basics of Machine Learning in OpenCV
What Is Machine Learning?
Legacy Routines in the ML Library
Summary
Exercises
Chapter 21StatModel: The Standard Model for Learning in OpenCV
Common Routines in the ML Library
Machine Learning Algorithms Using cv::StatModel
Summary
Exercises
Chapter 22Object Detection
Tree-Based Object Detection Techniques
Object Detection Using Support Vector Machines
Summary
Exercises
Chapter 23Future of OpenCV
Past and Present
How Well Did Our Predictions Go Last Time?
Future Functions
Some AI Speculation
Afterword
Appendix Planar Subdivisions
Delaunay Triangulation, Voronoi Tesselation
Exercises
Appendix opencv_contrib
An Overview of the opencv_contrib Modules
Appendix Calibration Patterns
Calibration Patterns Used by OpenCV

Erscheint lt. Verlag 7.2.2017
Verlagsort Sebastopol
Sprache englisch
Maße 180 x 234 mm
Gewicht 1604 g
Einbandart kartoniert
Themenwelt Informatik Programmiersprachen / -werkzeuge C / C++
Informatik Software Entwicklung User Interfaces (HCI)
Informatik Theorie / Studium Künstliche Intelligenz / Robotik
Schlagworte openCV; C++; C-Programmierung; C++ API; Bildverarbeitung; Objekterkennung; Robotik; Library; Software-Bibliothek; computer vision; machine learning; image processing; object recognition; Klassifikation; classification; Segmentierung; segmentation; künstlic
ISBN-10 1-4919-3799-8 / 1491937998
ISBN-13 978-1-4919-3799-0 / 9781491937990
Zustand Neuware
Haben Sie eine Frage zum Produkt?
Mehr entdecken
aus dem Bereich