学习 Open CV(影印版)
分類: 图书,计算机/网络,影印版,
作者: (美)布拉德斯基,(美)克勒著
出 版 社: 东南大学出版社
出版时间: 2009-4-1字数:版次: 1页数: 555印刷时间:开本: 16开印次: 1纸张:I S B N : 9787564116293包装: 平装编辑推荐
“这本宝库对专业人员来讲非常有用,对初涉这个领域的人们也是个绝好的工具。像其宣传的那样,它是一组计算机视觉算法。”
——William T.Freeman.
麻省理工学院计算机科学与人工智能实验室“《学习0penCV》即将占据每从从事计算机视觉领域的人的书架上最显著的一处。”
——David Lowe,英属哥
内容简介
《学习0penCV》将你置身于迅速发展的计算机视觉领域。本书作者是免费开源0penCV的发起人,这本书为你介绍了计算机视觉,例证了如何迅速建立使计算机能“看”的应用程序,以及如何基于计算机获取的数据作出决策。
计算机视觉几乎随处可见:安全系统、管理检验系统、医学图像分析、无人机等。它将Google地图和Google地球结合在一起,在LCD屏幕上核对像素,确保衬衫上的每一个针脚都完全缝合。OpenCV提供了一个简易实用的计算机视觉框架以及一个含有超过500种可以实时运行视觉代码的函数的综合库。《学习OpenCV》在每一章里教授任何OpenCV的开发者或热爱者如何在这些实战经验的帮助下迅速掌握该软件。这本书包括了如下内容:
对0penCV全面详尽的介绍
从照相机中导入图片
转换图像
分割图像和形状匹配
模式识别,包括人脸检测
两到三个计量单位间的跟踪和运动
立体视觉中的3D再现
机器学习算法
使机器能看见是一个具有挑战却又充满乐趣的目标。无论你是想建立一个简单的还是复杂的视觉应用程序,《学习OpenCV》都是你入门的必备教材。
作者简介
伦比亚大学计算机科学教授Gary Rost BradSki博士,斯坦福大学人工智能实验室的顾问教授,也是Willow Garage公司机器;人学研究协会的资深科学家。Ad rian Kaehler博士,Applied Mind S公司的资深科学家,从事机器学习、统计建模、计算机视觉和机器人学方面的研究。
目录
Preface
1. Overview
What Is OpenCV?
Who Uses OpenCV?
What Is Computer Vision?
The Origin of OpenCV
Downloading and Installing OpenCV
Getting the Latest OpenCV via CVS
More OpenCV Documentation
OpenCV Structure and Content
Portability
Exercises
2. Introduction to OpenCV
Getting Started
First Program--Display a Picture
Second Program--AVI Video
Moving Around
A Simple Transformation
A Not-So-Simple Transformation
Input from a Camera
Writing to an AVI File
Onward
Exercises
3. Gettingto KnowOpenCV
OpenCV Primitive Data Types
CvMat Matrix Structure
IplImage Data Structure
Matrix and Image Operators
Drawing Things
Data Persistence
Integrated Performance Primitives
Summary
Exercises
4. HighGUI
A Portable Graphics Toolkit
Creating a Window
Loading an Image
Displaying Images
Working with Video
ConvertImage
Exercises
5. Image Processing
Overview
Smoothing
Image Morphology
Flood Fill
Resize
Image Pyramids
Threshold
Exercises
6. Image Transforms
Overview
Convolution
Gradients and Sobel Derivatives
Laplace
Canny
Hough Transforms
Remap
Stretch, Shrink, Warp, and Rotate
CartToPolar and PolarToCart
LogPolar
Discrete Fourier Transform (DFT)
Discrete Cosine Transform (DCT)
Integral Images
Distance Transform
Histogram Equalization
Exercises
7. Histograms and Matching
Basic Histogram Data Structure
Accessing Histograms
Basic Manipulations with Histograms
Some More Complicated Stuff
Exercises
8. Contours
Memory Storage
Sequences
Contour Finding
Another Contour Example
More to Do with Contours
Matching Contours
Exercises
9. Image Parts and Segmentation
Parts and Segments
Background Subtraction
Watershed Algorithm
Image Repair by Inpainting
Mean-Shift Segmentation
Delaunay Triangulation, Voronoi Tesselation
Exercises
10. Tracking and Motion
The Basics of Tracking
Corner Finding
Subpixel Corners
Invariant Features
Optical Flow
Mean-Shift and Camshift Tracking
Motion Templates
Estimators
The Condensation Algorithm
Exercises
11. Camera Models and Calibration
Camera Model
Calibration
Undistortion
Putting Calibration All Together
Rodrigues Transform
Exercises
12. Projection and 3D Vision
Projections
Affine and Perspective Transformations
POSIT: 3D Pose Estimation
Stereo Imaging
Structure from Motion
Fitting Lines in Two and Three Dimensions
Exercises
13. Machine Learning
What Is Machine Learning
Common Routines in the ML Library
Mahalanobis Distance
K-Means
Naive/Normal Bayes Classifier
Binary Decision Trees
Boosting
Random Trees
Face Detection or Haar Classifier
Other Machine Learning Algorithms
Exercises
14. OpenCV's Future
Past and Future
Directions
OpenCV for Artists
Afterword
Bibliography
Index
书摘插图
Chapter 1 oVerviw
What Is OpenCV?
OpenCV [OpenCV] is an open source (see http://opensource.org) computer vision library available from http://SourceForge.net/projects/opencvlibrary. The library is written in Cand C++ and runs under Linux, Windows and Mac OS X. There is active development on interfaces for Python, Ruby, Matlab, and other languages.
OpenCV was designed for computational efficiency and with a strong focus on realtime applications. OpenCV is written in optimized C and can take advantage of mul ticore processors. If you desire further automatic optimization on Intel architectures [Intel], you can buy Intel's Integrated Performance Primitives (IPP) libraries [IPP], which consist of low-level optimized routines in many different algorithmic areas. OpenCV automatically uses the appropriate IPP library at runtime if that library is installed.
One of OpenCV's goals is to provide a simple-to-use computer vision infrastructure that helps people build fairly sophisticated vision applicatio'ns quickly. The OpenCV library contains over 500 functions that span many areas in vision。 including factory product inspection, medical imaging, security, user interface, camera calibration, stereo vision, and robotics. Because computer vision and machine learning often go hand-inhand, OpenCV also contains a full, general-purpose Machine Learning Library (MLL).This sublibrary is focused on statistical pattern recognition and clustering. The MLL is highly useful for the vision tasks that are at the core of OpenCV's mission, but it is gen eral enough to be used for any machine learning problem.
Who Uses OpenCV?
Most computer scientists and practical programmers are aware of some facet of the role that computer vision plays. But few people are aware of all the ways in which computer vision is used. For example, most people are somewhat aware of its use in surveillance,and many also know that it is increasingly being used for images and yideo on the Web. A few have seen some use of computer vision in game interfaces.
……