Details

An Introduction to 3D Computer Vision Techniques and Algorithms


An Introduction to 3D Computer Vision Techniques and Algorithms


1. Aufl.

von: Boguslaw Cyganek, J. Paul Siebert

112,99 €

Verlag: Wiley
Format: PDF
Veröffentl.: 30.12.2008
ISBN/EAN: 9780470714447
Sprache: englisch
Anzahl Seiten: 512

DRM-geschütztes eBook, Sie benötigen z.B. Adobe Digital Editions und eine Adobe ID zum Lesen.

Beschreibungen

Computer vision encompasses the construction of integrated vision systems and the application of vision to problems of real-world importance. The process of creating 3D models is still rather difficult, requiring mechanical measurement of the camera positions or manual alignment of partial 3D views of a scene. However using algorithms, it is possible to take a collection of stereo-pair images of a scene and then automatically produce a photo-realistic, geometrically accurate digital 3D model. <p>This book provides a comprehensive introduction to the methods, theories and algorithms of 3D computer vision. Almost every theoretical issue is underpinned with practical implementation or a working algorithm using pseudo-code and complete code written in C++ and MatLab®. There is the additional clarification of an accompanying website with downloadable software, case studies and exercises. Organised in three parts, Cyganek and Siebert give a brief history of vision research, and subsequently:  </p> <ul> <li>present basic low-level image processing operations for image matching, including a separate chapter on image matching algorithms;</li> <li>explain scale-space vision, as well as space reconstruction and multiview integration;</li> <li>demonstrate a variety of practical applications for 3D surface imaging and analysis;</li> <li>provide concise appendices on topics such as the basics of projective geometry and tensor calculus for image processing, distortion and noise in images plus image warping procedures.</li> </ul> <p><i>An Introduction to 3D Computer Vision Algorithms and Techniques</i> is a valuable reference for practitioners and programmers working in 3D computer vision, image processing and analysis as well as computer visualisation. It would also be of interest to advanced students and researchers in the fields of engineering, computer science, clinical photography, robotics, graphics and mathematics.</p>
<p>Preface xv</p> <p>Acknowledgements xvii</p> <p>Notation and Abbreviations xix</p> <p><b>Part I 1</b></p> <p><b>1 Introduction 3</b></p> <p>1.1 Stereo-pair Images and Depth Perception 4</p> <p>1.2 3D Vision Systems 4</p> <p>1.3 3D Vision Applications 5</p> <p>1.4 Contents Overview: The 3D Vision Task in Stages 6</p> <p><b>2 Brief History of Research on Vision 9</b></p> <p>2.1 Abstract 9</p> <p>2.2 Retrospective of Vision Research 9</p> <p>2.3 Closure 14</p> <p>2.3.1 Further Reading 14</p> <p><b>Part II 15</b></p> <p><b>3 2D and 3D Vision Formation 17</b></p> <p>3.1 Abstract 17</p> <p>3.2 Human Visual System 18</p> <p>3.3 Geometry and Acquisition of a Single Image 23</p> <p>3.3.1 Projective Transformation 24</p> <p>3.3.2 Simple Camera System: the Pin-hole Model 24</p> <p>3.3.3 Projective Transformation of the Pin-hole Camera 28</p> <p>3.3.4 Special Camera Setups 29</p> <p>3.3.5 Parameters of Real Camera Systems 30</p> <p>3.4 Stereoscopic Acquisition Systems 31</p> <p>3.4.1 Epipolar Geometry 31</p> <p>3.4.2 Canonical Stereoscopic System 36</p> <p>3.4.3 Disparity in the General Case 38</p> <p>3.4.4 Bifocal, Trifocal and Multifocal Tensors 39</p> <p>3.4.5 Finding the Essential and Fundamental Matrices 41</p> <p>3.4.6 Dealing with Outliers 49</p> <p>3.4.7 Catadioptric Stereo Systems 54</p> <p>3.4.8 Image Rectification 55</p> <p>3.4.9 Depth Resolution in Stereo Setups 59</p> <p>3.4.10 Stereo Images and Reference Data 61</p> <p>3.5 Stereo Matching Constraints 66</p> <p>3.6 Calibration of Cameras 70</p> <p>3.6.1 Standard Calibration Methods 71</p> <p>3.6.2 Photometric Calibration 73</p> <p>3.6.3 Self-calibration 73</p> <p>3.6.4 Calibration of the Stereo Setup 74</p> <p>3.7 Practical Examples 75</p> <p>3.7.1 Image Representation and Basic Structures 75</p> <p>3.8 Appendix: Derivation of the Pin-hole Camera Transformation 91</p> <p>3.9 Closure 93</p> <p>3.9.1 Further Reading 93</p> <p>3.9.2 Problems and Exercises 94</p> <p><b>4 Low-level Image Processing for Image Matching 95</b></p> <p>4.1 Abstract 95</p> <p>4.2 Basic Concepts 95</p> <p>4.2.1 Convolution and Filtering 95</p> <p>4.2.2 Filter Separability 97</p> <p>4.3 Discrete Averaging 99</p> <p>4.3.1 Gaussian Filter 100</p> <p>4.3.2 Binomial Filter 101</p> <p>4.4 Discrete Differentiation 105</p> <p>4.4.1 Optimized Differentiating Filters 105</p> <p>4.4.2 Savitzky–Golay Filters 108</p> <p>4.5 Edge Detection 115</p> <p>4.5.1 Edges from Signal Gradient 117</p> <p>4.5.2 Edges from the Savitzky–Golay Filter 119</p> <p>4.5.3 Laplacian of Gaussian 120</p> <p>4.5.4 Difference of Gaussians 126</p> <p>4.5.5 Morphological Edge Detector 127</p> <p>4.6 Structural Tensor 127</p> <p>4.6.1 Locally Oriented Neighbourhoods in Images 128</p> <p>4.6.2 Tensor Representation of Local Neighbourhoods 133</p> <p>4.6.3 Multichannel Image Processing with Structural Tensor 143</p> <p>4.7 Corner Detection 144</p> <p>4.7.1 The Most Common Corner Detectors 144</p> <p>4.7.2 Corner Detection with the Structural Tensor 149</p> <p>4.8 Practical Examples 151</p> <p>4.8.1 C++ Implementations 151</p> <p>4.8.2 Implementation of the Morphological Operators 157</p> <p>4.8.3 Examples in Matlab: Computation of the SVD 161</p> <p>4.9 Closure 162</p> <p>4.9.1 Further Reading 163</p> <p>4.9.2 Problems and Exercises 163</p> <p><b>5 Scale-space Vision 165</b></p> <p>5.1 Abstract 165</p> <p>5.2 Basic Concepts 165</p> <p>5.2.1 Context 165</p> <p>5.2.2 Image Scale 166</p> <p>5.2.3 Image Matching Over Scale 166</p> <p>5.3 Constructing a Scale-space 168</p> <p>5.3.1 Gaussian Scale-space 168</p> <p>5.3.2 Differential Scale-space 170</p> <p>5.4 Multi-resolution Pyramids 172</p> <p>5.4.1 Introducing Multi-resolution Pyramids 172</p> <p>5.4.2 How to Build Pyramids 175</p> <p>5.4.3 Constructing Regular Gaussian Pyramids 175</p> <p>5.4.4 Laplacian of Gaussian Pyramids 177</p> <p>5.4.5 Expanding Pyramid Levels 178</p> <p>5.4.6 Semi-pyramids 179</p> <p>5.5 Practical Examples 181</p> <p>5.5.1 C++ Examples 181</p> <p>5.5.2 Matlab Examples 186</p> <p>5.6 Closure 191</p> <p>5.6.1 Chapter Summary 191</p> <p>5.6.2 Further Reading 191</p> <p>5.6.3 Problems and Exercises 192</p> <p><b>6 Image Matching Algorithms 193</b></p> <p>6.1 Abstract 193</p> <p>6.2 Basic Concepts 193</p> <p>6.3 Match Measures 194</p> <p>6.3.1 Distances of Image Regions 194</p> <p>6.3.2 Matching Distances for Bit Strings 198</p> <p>6.3.3 Matching Distances for Multichannel Images 199</p> <p>6.3.4 Measures Based on Theory of Information 202</p> <p>6.3.5 Histogram Matching 205</p> <p>6.3.6 Efficient Computations of Distances 206</p> <p>6.3.7 Nonparametric Image Transformations 209</p> <p>6.3.8 Log-polar Transformation for Image Matching 218</p> <p>6.4 Computational Aspects of Matching 222</p> <p>6.4.1 Occlusions 222</p> <p>6.4.2 Disparity Estimation with Subpixel Accuracy 224</p> <p>6.4.3 Evaluation Methods for Stereo Algorithms 226</p> <p>6.5 Diversity of Stereo Matching Methods 229</p> <p>6.5.1 Structure of Stereo Matching Algorithms 233</p> <p>6.6 Area-based Matching 238</p> <p>6.6.1 Basic Search Approach 239</p> <p>6.6.2 Interpreting Match Cost 241</p> <p>6.6.3 Point-oriented Implementation 245</p> <p>6.6.4 Disparity-oriented Implementation 250</p> <p>6.6.5 Complexity of Area-based Matching 256</p> <p>6.6.6 Disparity Map Cross-checking 257</p> <p>6.6.7 Area-based Matching in Practice 259</p> <p>6.7 Area-based Elastic Matching 273</p> <p>6.7.1 Elastic Matching at a Single Scale 273</p> <p>6.7.2 Elastic Matching Concept 278</p> <p>6.7.3 Scale-based Search 280</p> <p>6.7.4 Coarse-to-fine Matching Over Scale 283</p> <p>6.7.5 Scale Subdivision 284</p> <p>6.7.6 Confidence Over Scale 285</p> <p>6.7.7 Final Multi-resolution Matcher 286</p> <p>6.8 Feature-based Image Matching 288</p> <p>6.8.1 Zero-crossing Matching 289</p> <p>6.8.2 Corner-based Matching 292</p> <p>6.8.3 Edge-based Matching: The Shirai Method 295</p> <p>6.9 Gradient-based Matching 296</p> <p>6.10 Method of Dynamic Programming 298</p> <p>6.10.1 Dynamic Programming Formulation of the Stereo Problem 301</p> <p>6.11 Graph Cut Approach 306</p> <p>6.11.1 Graph Cut Algorithm 306</p> <p>6.11.2 Stereo as a Voxel Labelling Problem 311</p> <p>6.11.3 Stereo as a Pixel Labelling Problem 312</p> <p>6.12 Optical Flow 314</p> <p>6.13 Practical Examples 318</p> <p>6.13.1 Stereo Matching Hierarchy in C++ 318</p> <p>6.13.2 Log-polar Transformation 319</p> <p>6.14 Closure 321</p> <p>6.14.1 Further Reading 321</p> <p>6.14.2 Problems and Exercises 322</p> <p><b>7 Space Reconstruction and Multiview Integration 323</b></p> <p>7.1 Abstract 323</p> <p>7.2 General 3D Reconstruction 323</p> <p>7.2.1 Triangulation 324</p> <p>7.2.2 Reconstruction up to a Scale 325</p> <p>7.2.3 Reconstruction up to a Projective Transformation 327</p> <p>7.3 Multiview Integration 329</p> <p>7.3.1 Implicit Surfaces and Marching Cubes 330</p> <p>7.3.2 Direct Mesh Integration 338</p> <p>7.4 Closure 342</p> <p>7.4.1 Further Reading 342</p> <p><b>8 Case Examples 343</b></p> <p>8.1 Abstract 343</p> <p>8.2 3D System for Vision-Impaired Persons 343</p> <p>8.3 Face and Body Modelling 345</p> <p>8.3.1 Development of Face and Body Capture Systems 345</p> <p>8.3.2 Imaging Resolution, 3D Resolution and Implications for Applications 346</p> <p>8.3.3 3D Capture and Analysis Pipeline for Constructing Virtual Humans 350</p> <p>8.4 Clinical and Veterinary Applications 352</p> <p>8.4.1 Development of 3D Clinical Photography 352</p> <p>8.4.2 Clinical Requirements for 3D Imaging 353</p> <p>8.4.3 Clinical Assessment Based on 3D Surface Anatomy 353</p> <p>8.4.4 Extraction of Basic 3D Anatomic Measurements 354</p> <p>8.4.5 Vector Field Surface Analysis by Means of Dense Correspondences 357</p> <p>8.4.6 Eigenspace Methods 359</p> <p>8.4.7 Clinical and Veterinary Examples 362</p> <p>8.4.8 Multimodal 3D Imaging 367</p> <p>8.5 Movie Restoration 370</p> <p>8.6 Closure 374</p> <p>8.6.1 Further Reading 374</p> <p><b>Part III 375</b></p> <p><b>9 Basics of the Projective Geometry 377</b></p> <p>9.1 Abstract 377</p> <p>9.2 Homogeneous Coordinates 377</p> <p>9.3 Point, Line and the Rule of Duality 379</p> <p>9.4 Point and Line at Infinity 380</p> <p>9.5 Basics on Conics 382</p> <p>9.5.1 Conics in ℘2 382</p> <p>9.5.2 Conics in ℘2 384</p> <p>9.6 Group of Projective Transformations 385</p> <p>9.6.1 Projective Base 385</p> <p>9.6.2 Hyperplanes 386</p> <p>9.6.3 Projective Homographies 386</p> <p>9.7 Projective Invariants 387</p> <p>9.8 Closure 388</p> <p>9.8.1 Further Reading 389</p> <p><b>10 Basics of Tensor Calculus for Image Processing 391</b></p> <p>10.1 Abstract 391</p> <p>10.2 Basic Concepts 391</p> <p>10.2.1 Linear Operators 392</p> <p>10.2.2 Change of Coordinate Systems: Jacobians 393</p> <p>10.3 Change of a Base 394</p> <p>10.4 Laws of Tensor Transformations 396</p> <p>10.5 The Metric Tensor 397</p> <p>10.5.1 Covariant and Contravariant Components in a Curvilinear Coordinate System 397</p> <p>10.5.2 The First Fundamental Form 399</p> <p>10.6 Simple Tensor Algebra 399</p> <p>10.6.1 Tensor Summation 399</p> <p>10.6.2 Tensor Product 400</p> <p>10.6.3 Contraction and Tensor Inner Product 400</p> <p>10.6.4 Reduction to Principal Axes 400</p> <p>10.6.5 Tensor Invariants 401</p> <p>10.7 Closure 401</p> <p>10.7.1 Further Reading 401</p> <p><b>11 Distortions and Noise in Images 403</b></p> <p>11.1 Abstract 403</p> <p>11.2 Types and Models of Noise 403</p> <p>11.3 Generating Noisy Test Images 405</p> <p>11.4 Generating Random Numbers with Normal Distributions 407</p> <p>11.5 Closure 408</p> <p>11.5.1 Further Reading 408</p> <p><b>12 Image Warping Procedures 409</b></p> <p>12.1 Abstract 409</p> <p>12.2 Architecture of the Warping System 409</p> <p>12.3 Coordinate Transformation Module 410</p> <p>12.3.1 Projective and Affine Transformations of a Plane 410</p> <p>12.3.2 Polynomial Transformations 411</p> <p>12.3.3 Generic Coordinates Mapping 412</p> <p>12.4 Interpolation of Pixel Values 412</p> <p>12.4.1 Bilinear Interpolation 412</p> <p>12.4.2 Interpolation of Nonscalar-Valued Pixels 414</p> <p>12.5 The Warp Engine 414</p> <p>12.6 Software Model of the Warping Schemes 415</p> <p>12.6.1 Coordinate Transformation Hierarchy 415</p> <p>12.6.2 Interpolation Hierarchy 416</p> <p>12.6.3 Image Warp Hierarchy 416</p> <p>12.7 Warp Examples 419</p> <p>12.8 Finding the Linear Transformation from Point Correspondences 420</p> <p>12.8.1 Linear Algebra on Images 424</p> <p>12.9 Closure 427</p> <p>12.9.1 Further Reading 428</p> <p><b>13 Programming Techniques for Image Processing and Computer Vision 429</b></p> <p>13.1 Abstract 429</p> <p>13.2 Useful Techniques and Methodology 430</p> <p>13.2.1 Design and Implementation 430</p> <p>13.2.2 Template Classes 436</p> <p>13.2.3 Asserting Code Correctness 438</p> <p>13.2.4 Debugging Issues 440</p> <p>13.3 Design Patterns 441</p> <p>13.3.1 Template Function Objects 441</p> <p>13.3.2 Handle-body or Bridge 442</p> <p>13.3.3 Composite 445</p> <p>13.3.4 Strategy 447</p> <p>13.3.5 Class Policies and Traits 448</p> <p>13.3.6 Singleton 450</p> <p>13.3.7 Proxy 450</p> <p>13.3.8 Factory Method 451</p> <p>13.3.9 Prototype 452</p> <p>13.4 Object Lifetime and Memory Management 453</p> <p>13.5 Image Processing Platforms 455</p> <p>13.5.1 Image Processing Libraries 455</p> <p>13.5.2 Writing Software for Different Platforms 455</p> <p>13.6 Closure 456</p> <p>13.6.1 Further Reading 456</p> <p><b>14 Image Processing Library 457</b></p> <p>References 459</p> <p>Index 475</p>
<p>“This text is a valuable reference for practitioners and programmers working in 3D computer vision, image processing and analysis as well as computer visualisation. It would also be of interest to advanced students and researchers in the fields of engineering, computer science, clinical photography, robotics, graphics and mathematics.”  (<i>Zentralblatt MATH</i>, 2012)</p> <p><br /> <br /> <br /> </p>
<b>Boguslaw Cyganek</b>, AGH – University of Science and Technology, Department of Computer Science, Signal Processing Laboratory, Krakow, Poland <p>Boguslaw Cyganek has been teaching at the AGH – University of Science and Technology since 1993 and is now a Lecturer and Researcher in the Department of Electronics and Computer Science. His research interests include the development of image processing systems, robot vision and neural networks. During this time, he has gained several years of practical experience working as a Software Development Manager and a Software Engineer both in the USA and Poland. He has also written <i>Three Dimensional Image Processing</i> (Academic Publisher House, 2002) and 18 academic papers on image processing and algorithms.</p> <p><b>Paul Siebert</b>, Department of Computing Science, University of Glasgow, 3D-MATIC Research Laboratory, Scotland</p> <p>Dr Jan Paul Siebert is currently Director of the 3D-MATIC Research Laboratory in the Department of Computing Science at Glasgow University. His research interests are in computer vision, image processing, and 3D imaging by stereo photogrammetry and its applications in 3D whole human body imaging. He is Scottish Chair of the BMVC and prior to his current position he was Chief Executive of the of the Turing Institute, Glasgow, which developed the ‘C3D’ imaging technology. He has written over 50 journal, technical and conference papers on 3D image processing, modelling virtual images and photogrammetry.</p>
Computer vision encompasses the construction of integrated vision systems and the application of vision to problems of real-world importance. The process of creating 3D models is still rather difficult, requiring mechanical measurement of the camera positions or manual alignment of partial 3D views of a scene. However using algorithms, it is possible to take a collection of stereo-pair images of a scene and then automatically produce a photo-realistic, geometrically accurate digital 3D model. <p>This book provides a comprehensive introduction to the methods, theories and algorithms of 3D computer vision. Almost every theoretical issue is underpinned with practical implementation or a working algorithm using pseudo-code and complete code written in C++ and MatLab®. There is the additional clarification of an accompanying website with downloadable software. Organised in three parts, Cyganek and Siebert give a brief history of vision research, and subsequently:</p> <ul> <li>present basic low-level image processing operations for image matching, including a separate chapter on image matching algorithms</li> <li>explain scale-space vision, as well as space reconstruction and multiview integration</li> <li>demonstrate a variety of practical applications for 3D surface imaging and analysis</li> <li>provide concise appendices on topics such as the basics of projective geometry and tensor calculus for image processing, distortion and noise in images plus image warping procedures</li> </ul> <p><b>An Introduction to 3D Computer Vision Techniques</b> <b>and Algorithms</b> is a valuable reference for practitioners and programmers working in 3D computer vision, image processing and analysis as well as computer visualisation. It would also be of interest to advanced students and researchers in the fields of engineering, computer science, clinical photography, robotics, graphics and mathematics.</p>

Diese Produkte könnten Sie auch interessieren:

Ground Penetrating Radar
Ground Penetrating Radar
von: Mohammed Serhir, Dominique Lesselier
EPUB ebook
142,99 €
Computational Imaging for Scene Understanding
Computational Imaging for Scene Understanding
von: Takuya Funatomi, Takahiro Okabe
EPUB ebook
142,99 €