学习OpenCV(影印版)
学习OpenCV(影印版)
Gary Bradski, Adrian Kaehler
出版时间:2009年04月
页数:555
《学习OpenCV》将你置身于迅速发展的计算机视觉领域。本书作者是免费开源OpenCV的发起人,这本书为你介绍了计算机视觉,例证了如何迅速建立使计算机能“看”的应用程序,以及如何基于计算机获取的数据作出决策。

计算机视觉几乎随处可见:安全系统、管理检验系统、医学图像分析、无人机等。它将Google地图和Google地球结合在一起,在LCD屏幕上核对像素,确保衬衫上的每一个针脚都完全缝合。

OpenCV提供了一个简易实用的计算机视觉框架以及一个含有超过500种可以实时运行视觉代码的函数的综合库。

《学习OpenCV》在每一章里教授任何OpenCV的开发者或热爱者如何在这些实战经验的帮助下迅速掌握该软件。这本书包括了如下内容:

* 对OpenCV全面详尽的介绍
* 从照相机中导入图片
* 转换图像
* 分割图像和形状匹配
* 模式识别,包括人脸检测
* 两到三个计量单位间的跟踪和运动
* 立体视觉中的3D再现
* 机器学习算法

使机器能看见是一个具有挑战却又充满乐趣的目标。无论你是想建立一个简单的还是复杂的视觉应用程序,《学习OpenCV》都是你入门的必备教材。

“这本宝库对专业人员来讲非常有用,对初涉这个领域的人们也是个绝好的工具。像其宣传的那样,它是一组计算机视觉算法。”
——William T. Freeman,麻省理工学院计算机科学与人工智能实验室

“《学习OpenCV》即将占据每个从事计算机视觉领域的人的书架上最显著的一处。”
——David Lowe,英属哥伦比亚大学计算机科学教授

Gary Rost Bradski博士,斯坦福大学人工智能实验室的顾问教授,也是Willow Garage公司机器人学研究协会的资深科学家。

Adrian Kaehler博士,Applied Minds公司的资深科学家,从事机器学习、统计建模、计算机视觉和机器人学方面的研究。
  1. Preface
  2. 1. Overview
  3. What Is OpenCV?
  4. Who Uses OpenCV?
  5. What Is Computer Vision?
  6. The Origin of OpenCV
  7. Downloading and Installing OpenCV
  8. Getting the Latest OpenCV via CVS
  9. More OpenCV Documentation
  10. OpenCV Structure and Content
  11. Portability
  12. Exercises
  13. 2. Introduction to OpenCV
  14. Getting Started
  15. First Program—Display a Picture
  16. Second Program—AVI Video
  17. Moving Around
  18. A Simple Transformation
  19. A Not-So-Simple Transformation
  20. Input from a Camera
  21. Writing to an AVI File
  22. Onward
  23. Exercises
  24. 3. Getting to Know OpenCV
  25. OpenCV Primitive Data Types
  26. CvMat Matrix Structure
  27. IplImage Data Structure
  28. Matrix and Image Operators
  29. Drawing Things
  30. Data Persistence
  31. Integrated Performance Primitives
  32. Summary
  33. Exercises
  34. 4. HighGUI
  35. A Portable Graphics Toolkit
  36. Creating a Window
  37. Loading an Image
  38. Displaying Images
  39. Working with Video
  40. ConvertImage
  41. Exercises
  42. 5. Image Processing
  43. Overview
  44. Smoothing
  45. Image Morphology
  46. Flood Fill
  47. Resize
  48. Image Pyramids
  49. Threshold
  50. Exercises
  51. 6. Image Transforms
  52. Overview
  53. Convolution
  54. Gradients and Sobel Derivatives
  55. Laplace
  56. Canny
  57. Hough Transforms
  58. Remap
  59. Stretch, Shrink, Warp, and Rotate
  60. CartToPolar and PolarToCart
  61. LogPolar
  62. Discrete Fourier Transform (DFT)
  63. Discrete Cosine Transform (DCT)
  64. Integral Images
  65. Distance Transform
  66. Histogram Equalization
  67. Exercises
  68. 7. Histograms and Matching
  69. Basic Histogram Data Structure
  70. Accessing Histograms
  71. Basic Manipulations with Histograms
  72. Some More Complicated Stuff
  73. Exercises
  74. 8. Contours
  75. Memory Storage
  76. Sequences
  77. Contour Finding
  78. Another Contour Example
  79. More to Do with Contours
  80. Matching Contours
  81. Exercises
  82. 9. Image Parts and Segmentation
  83. Parts and Segments
  84. Background Subtraction
  85. Watershed Algorithm
  86. Image Repair by Inpainting
  87. Mean-Shift Segmentation
  88. Delaunay Triangulation, Voronoi Tesselation
  89. Exercises
  90. 10. Tracking and Motion
  91. The Basics of Tracking
  92. Corner Finding
  93. Subpixel Corners
  94. Invariant Features
  95. Optical Flow
  96. Mean-Shift and Camshift Tracking
  97. Motion Templates
  98. Estimators
  99. The Condensation Algorithm
  100. Exercises
  101. 11. Camera Models and Calibration
  102. Camera Model
  103. Calibration
  104. Undistortion
  105. Putting Calibration All Together
  106. Rodrigues Transform
  107. Exercises
  108. 12. Projection and 3D Vision
  109. Projections
  110. Affine and Perspective Transformations
  111. POSIT: 3D Pose Estimation
  112. Stereo Imaging
  113. Structure from Motion
  114. Fitting Lines in Two and Three Dimensions
  115. Exercises
  116. 13. Machine Learning
  117. What Is Machine Learning
  118. Common Routines in the ML Library
  119. Mahalanobis Distance
  120. K-Means
  121. Nai?Nve/Normal Bayes Classifier
  122. Binary Decision Trees
  123. Boosting
  124. Random Trees
  125. Face Detection or Haar Classifier
  126. Other Machine Learning Algorithms
  127. Exercises
  128. 14. OpenCV’s Future
  129. Past and Future
  130. Directions
  131. OpenCV for Artists
  132. Afterword
  133. Bibliography
  134. Index
书名:学习OpenCV(影印版)
国内出版社:东南大学出版社
出版时间:2009年04月
页数:555
书号:978-7-5641-1629-3
原版书出版商:O'Reilly Media
Gary Bradski
 
Dr. Gary Rost Bradski is a consulting professor in the CS department at the 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 holds a B.S. in EECS from
UC Berkeley and a Ph.D. 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), which is used around the world in research, in government, and
commercially; the statistical Machine Learning Library (which comes with OpenCV);
and the Probabilistic Network Library (PNL). Th e 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 he helped found the Stanford AI Robotics project at Stanford (http://www.cs.stanford
.edu/group/stair) working with Professor Andrew Ng. Gary has more than 50 publications
and 13 issued patents with 18 pending. He lives in Palo Alto, CA, with his wife and
three daughters and bikes road or mountain as much as he can.
 
 
Adrian Kaehler
 
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 Th eoretical Physics from Columbia University in
1998. He has since 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.
He has a variety of published papers and patents in physics, electrical engineering,
computer science, and robotics.
 
 
Th e image on the cover of Learning OpenCV is a giant, or great, peacock moth (Saturnia
pyri). Native to Europe, the moth’s range includes southern France and Italy, the Iberian
Peninsula, and parts of Siberia and northern Africa. It inhabits open landscapes
with scattered trees and shrubs and can oft en be found in parklands, orchards, and
vineyards, where it rests under shade trees during the day.
Th e largest of the European moths, giant peacock moths have a wingspan of up to six
inches; their size and nocturnal nature can lead some observers to mistake them for
bats. Th eir wings are gray and grayish-brown with accents of white and yellow. In the
center of each wing, giant peacock moths have a large eyespot, a distinctive pattern most
commonly associated with the birds they are named for.