Muutke küpsiste eelistusi

Introduction to Visual Effects: A Computational Approach [Kõva köide]

(Institute of Pure and Applied Mathematics, Rio de Janeiro, Brazil), (Military Institute of Engineering)
  • Formaat: Hardback, 228 pages, kõrgus x laius: 254x178 mm, kaal: 660 g, 3 Line drawings, color; 27 Line drawings, black and white; 12 Halftones, color; 15 Illustrations, color; 27 Illustrations, black and white
  • Ilmumisaeg: 06-Dec-2022
  • Kirjastus: CRC Press
  • ISBN-10: 103207230X
  • ISBN-13: 9781032072302
  • Formaat: Hardback, 228 pages, kõrgus x laius: 254x178 mm, kaal: 660 g, 3 Line drawings, color; 27 Line drawings, black and white; 12 Halftones, color; 15 Illustrations, color; 27 Illustrations, black and white
  • Ilmumisaeg: 06-Dec-2022
  • Kirjastus: CRC Press
  • ISBN-10: 103207230X
  • ISBN-13: 9781032072302
Introduction to Visual Effects: A Computational Approach is the first single introduction to the computational and mathematical aspects of visual effects, incorporating both computer vision and graphics. The book also provides the readers with the source code to a library, enabling them to follow the chapters directly and build up a complete visual effects platform. The book covers the basic approaches to camera pose estimation, global illumination, and image-based lighting, and includes chapters on the virtual camera, optimization and computer vision, path tracing and many more.

Key features include:











Introduction to projective geometry, image-based lighting (IBL), global illumination solved by the Monte Carlo method (Pathtracing), an explanation of a set of optimization methods, and the techniques used for calibrating one, two, and many cameras, including how to use the RANSAC algorithm in order to make the process robust, and providing code to be implemented using the Gnu Scientific Library.





C/C++ code using the OpenCV library, to be used in the process of tracking points on a movie (an important step for the matchmove process), and in the construction of modeling tools for visual effects.





A simple model of the Bidirectional Reflectance Distribution Function (BRDF) of surfaces and the differential rendering method, allowing the reader to generate consistent shadows, supported by a code that can be used in combination with a software like Luminance HDR.

Arvustused

"The Introduction to Visual Effects: A Computational Approach offers a clear, engaging and well-researched account of fundamental principles that have been used to give life to incredible storytelling for many generations. It is the best reference I have found for academics, studios and enthusiasts alike."

- Matteo Moriconi, Director of VFXRio.

Preface xiii
Chapter 1 Introduction
1(10)
1.1 Camera Calibration
1(1)
1.2 Historical Overview Of Tracking
2(1)
1.3 Global Illumination
3(1)
1.4 Image-Based Lighting
4(1)
1.5 Mathematical Notations
4(1)
1.6 Projective Geometry Concepts
5(4)
1.6.1 Projective Space
5(1)
1.6.2 Projective Transforms
5(1)
1.6.3 Projective Geometry On This Book
6(1)
1.6.4 Parallelism And Ideal Points
7(2)
1.7 About The Code
9(2)
Chapter 2 Virtual Camera
11(18)
2.1 Basic Model
12(2)
2.1.1 Camera In The Origin
12(1)
2.1.2 Camera In Generic Position
13(1)
2.1.3 Digital Camera
13(1)
2.1.4 Intrinsic Parameters
13(1)
2.1.5 Dimension Of The Space Of Virtual Cameras
13(1)
2.2 Camera For Image Synthesis
14(1)
2.2.1 Terminologies
14(1)
2.2.2 Clipping And Visibility
14(1)
2.3 Transformation Of Visualization
15(2)
2.3.1 Positioning The Camera
15(1)
2.3.2 Transformation Of Normalization
16(1)
2.3.3 Perspective Projection
16(1)
2.3.4 Device Coordinates
16(1)
2.4 Comparison With The Basic Model
17(1)
2.4.1 Intrinsic Parameters
17(1)
2.4.2 Dimension
18(1)
2.4.3 Advantages Over The Basic Model
18(1)
2.5 Camera For Path Tracing
18(1)
2.6 Visibility And Ray Casting
18(1)
2.7 Cameras For Calibration
19(2)
2.7.1 Projective Model
20(1)
2.7.2 Projective Notation For Cameras
20(1)
2.7.3 Generic Projective Camera
20(1)
2.8 Mapping A Calibrated Camera Into The S3D Library
21(1)
2.8.1 Specification Of Extrinsic Parameters
21(1)
2.8.2 Specification Of Intrinsic Parameters
21(1)
2.9 Api
22(2)
2.9.1 Matchmove Software Functions
22(1)
2.9.2 Render Software Functions
23(1)
2.10 Code
24(5)
2.10.1 Code In The Matchmove Software
24(1)
2.10.2 Code In The Render Software
25(4)
Chapter 3 Optimization Tools
29(8)
3.1 Minimize A Function Defined On An Interval
29(2)
3.2 Least Squares
31(1)
3.3 Non4Jnear Least Squares
32(1)
3.3.1 Gauss-Newton Method
32(1)
3.3.2 Levenberg-Marquardt Algorithm
33(1)
3.4 Minimize The Norm Of A Linear Function Over A Sphere
33(1)
3.5 Two Stages Optimization
34(1)
3.6 Robust Model Estimation
35(2)
3.6.1 Ransac Algorithm
35(1)
3.6.2 Example Of Using The Ransac Algorithm
35(2)
Chapter 4 Estimating One Camera
37(26)
4.1 Calibration In Relation To A Set Of 3D Points
37(1)
4.1.1 Calibration Using Six Matches
37(1)
4.1.2 Calibration Using More Than Six Matches
38(1)
4.2 Normalization Of The Points
38(1)
4.3 Isolation Of Camera Parameters
38(3)
4.4 Camera For Image Synthesis
41(1)
4.5 Calibration By Restricted Optimization
42(2)
4.5.1 Adjusting The Levenberg-Marquardt To The Problem
42(1)
4.5.2 Parameterization Of Rotations
43(1)
4.5.3 Parameterization Of The Camera Space
43(1)
4.6 Problem Points Of Parameterization
44(1)
4.7 Finding The Intrinsic Parameters
44(1)
4.8 Calibration Using A Planar Pattern
45(3)
4.9 Api
48(2)
4.10 Code
50(9)
4.11 Single Camera Calibration Program
59(2)
4.12 Six Points Single Camera Calibration Program
61(2)
Chapter 5 Estimating Two Cameras
63(16)
5.1 Representation Of Relative Positioning
63(1)
5.2 Rigid Movement
64(1)
5.3 Other Projective Model
64(1)
5.4 Epipolar Geometry
64(1)
5.4.1 Essential Matrix
64(1)
5.5 Fundamental Matrix
65(1)
5.6 The 8-Points Algorithm
65(2)
5.6.1 Calculation Of F
66(1)
5.6.2 Using More Than 8 Points
66(1)
5.6.3 Calculation Of F
66(1)
5.7 Normalized 8-Points Algorithm
67(1)
5.8 Finding The Extrinsic Parameters
67(2)
5.8.1 Adding Clipping To The Model
68(1)
5.8.2 Three-Dimensional Reconstruction
69(1)
5.9 Api
69(3)
5.10 Code
72(7)
Chapter 6 Feature Tracking
79(6)
6.1 Definitions
79(1)
6.2 Kanade-Lucas-Tomasi Algorithm
79(1)
6.3 Following Windows
80(1)
6.4 Choosing The Windows
81(1)
6.5 Disposal Of Windows
81(1)
6.6 Problems Using Klt
82(1)
6.7 Code
82(3)
Chapter 7 Estimating Many Cameras
85(70)
7.1 Definitions
85(1)
7.2 Calibrating In Pairs
86(1)
7.3 Calibration In Three Steps
86(1)
7.4 Three-Step Calibration Problems
87(1)
7.5 Making The Calibration Of Small Sequences Robust
87(2)
7.5.1 Solution To The Problem Of Step 1
88(1)
7.5.2 Solution To The Problem Of Step 2
88(1)
7.5.3 Solution To The Problem In Step 3
89(1)
7.6 Choice Of Base Columns
89(1)
7.7 Bundle Adjustment
90(1)
7.8 Representation Of A Configuration
90(1)
7.9 Refinement Cycles
90(1)
7.10 Example
91(1)
7.11 Decomposition Of The Video Into Fragments
92(1)
7.12 Junction Of Fragments
93(2)
7.12.1 Alignment Of Fragments
93(1)
7.12.2 Compatibility Of Scales
94(1)
7.12.3 Robust Scale Compatibility
94(1)
7.13 Off-Line Augmented Reality
95(1)
7.14 Global Optimization By Relaxation
95(2)
7.15 Code Modules
97(54)
7.15.1 Bundle Adjustment Api
97(3)
7.15.2 Bundle Adjustment Code
100(4)
7.15.3 Ransac Api
104(1)
7.15.4 Ransac Code
105(6)
7.15.5 Features List Api
111(1)
7.15.6 Features List Code
112(5)
7.15.7 Sequence Of Frames Api
117(2)
7.15.8 Sequence Of Frames Code
119(18)
7.15.9 Relaxation Api
137(3)
7.15.10 Relaxation Code
140(11)
7.16 Matchmove Program
151(1)
7.17 Relaxation Program
152(3)
Chapter 8 Modeling Tools
155(12)
8.1 Api
155(1)
8.2 Code
156(5)
8.3 Point Cloud Definer Program
161(3)
8.4 Point Cloud Calib Program
164(3)
Chapter 9 Light Transport And Monte Carlo
167(22)
9.1 Radiance
167(2)
9.2 The Invariance Of The Radiance
169(1)
9.3 The Brdf And The Rendering Equation
169(1)
9.4 Other Definition For The Rendering Equation
170(1)
9.5 Examples Of Brdf
171(1)
9.5.1 The Perfect Lambertian Surface Brdf
171(1)
9.5.2 The Perfect Mirror Brdf
171(1)
9.5.3 The Modified Blinn-Phong's Brdf
171(1)
9.6 Numerical Approximation
172(1)
9.7 Monte Carlo Integration Method
172(1)
9.8 Path Tracing
173(1)
9.9 Uniform Sampling Over A Hemisphere
174(1)
9.10 Splitting The Direct And Indirect Illumination
174(2)
9.11 Polygonal Luminaries
176(1)
9.12 Code Modules
177(8)
9.12.1 Path Tracing Api
177(1)
9.12.2 Path Tracing Code
178(3)
9.12.3 Poly Light Api
181(1)
9.12.4 Poly Light Code
182(3)
9.13 Rendering Program
185(2)
9.14 Result
187(2)
Chapter 10 Image-Based Lighting
189(30)
10.1 Hdr Pictures
189(1)
10.2 Reconstructing The Hdr Radiance Map
189(2)
10.3 Colored Pictures
191(1)
10.4 Recovering An Hdr Radiance Map
191(1)
10.5 The Pfm File Format
191(1)
10.6 Conversions Between Ldr And Hdr Images
192(1)
10.7 From Hdr Pictures To Equirectangular Projections
192(2)
10.8 Orienting The Radiance Dome
194(2)
10.9 Rendering Using A Radiance Map
196(1)
10.10 Interaction Between The Real And Virtual Scenes
196(2)
10.10.1 Modeling The Brdf Of The Local Scene
197(1)
10.10.2 Differential Rendering
198(1)
10.11 Code Modules
198(12)
10.11.1 Hdr Image Api
198(1)
10.11.2 Hdr Image Code
199(2)
10.11.3 Image-Based Light Api
201(1)
10.11.4 Image-Based Light Code
202(4)
10.11.5 Hdr Scene Api
206(1)
10.11.6 Hdr Scene Code
206(2)
10.11.7 Dome Path Tracing Api
208(1)
10.11.8 Dome Path Tracing Code
209(1)
10.12 Polyshadow Color Adjust Program
210(2)
10.13 Visual Effects Program
212(4)
10.14 Results
216(3)
Bibliography 219(4)
Index 223
Bruno Madeira is a computer engineer from the Military Institute of Engineering (IME). He received his master's and DSc degrees in mathematics with emphasis on computer graphics and vision at IMPA. He has more than 15 years of experience teaching computer graphics at IME and is a member of the Simulators Group at CTEx, Brazil.

Luiz Velho is a senior researcher, professor, and a VISGRAF Laboratory leading scientist at the National Institute for Pure and Applied Mathematics (IMPA), Brazil. His academic background includes a BE in industrial design from ESDI-UERJ, an MS in computer graphics from MIT Media Lab, and a PhD in computer science from the University of Toronto. His experience in computational media spans the fields of modeling, rendering, imaging, and animation.