Fundamentals of Computer Vision

Download as pdf or txt
Download as pdf or txt
You are on page 1of 35

CS294-137


Lecture 6: Fundamentals of
Computer Vision


Allen Y. Yang

Fall, 2017
Course Schedule Update
Week 1 (8-23): Introduction and Capstone Options
Week 2 (8-30): Human Perception in the Context of VR
Week 3 (9-6): Basic Unity3D/VR Programming Workshop
Week 4 (9-13): Course project proposal presentation
Week 5 (9-20): Optics and Display technologies
Week 6 (9-27): Vision Accommodation and Vergence
Week 7 (10-4): Computer Vision related topics
Week 8 (10-11): Computer Graphics related topics
****************
Week 9: (10-18) Telemedicine (Ruzena Bajcsy/Gregorij Korillo)
Week 10 (10-25): Gaming (Jack McCauley)
Week 11 (11-1): VR Film Making (Richard Hernandez)
Week 12 (11-8): AR/VR in Arts & Design (Ted Selker)
Week 13 (11-15): Computational Imaging for VR (Ren Ng)
Week 14 (11-22): No class
Week 15 (11-29): Final project presentation
Week 16 (12-6): Final project presentation
Recommended Reading Material
•  Perception: Sensation and Perception
by Bruce Goldstein

•  Virtual Reality: Virtual Reality


By Steven LaValle (and checkout his YouTube lectures)

•  Computer Graphics: Fundamentals of CG


by Peter Shirley

•  Computer Vision: An Invitation to 3-D Vision


by Yi Ma, et al.

•  Display: Mobile Displays
by Achin Bhowmik, et al.

•  AR/VR Market Research: Virtual & Augmented Reality,


understanding the race for the next computing platform
by Goldman Sachs
Anatomy of an AR Device: HoloLens

Including perception & display, end-to-end latency


not exceeding 16ms (60 fps)
What can Computer Vision do?
Fundamental Problems of Computer
Vision

Camera Obscura, circa 400BC Holmes stereoscope, 1861

Image Matching using Robust Features


Part I: Basic Linear Algebra
Rigid Body Motion
Change of Coordinate Systems
Special Orthogonal Group
Be Aware of Left-Handed or Right-
Handed Coordinate Systems
Homogeneous Coordinates & 

Special Euclidean Group SE(3)

Concatenation:

Inverse:
Estimation of (R, T)

Translation Only:

Rotation Only:

Don’t forget to check right-handedness!


Part II: Geometry of Pinhole Camera

* OpenCV Online Documentation


Pinhole Camera Parameters

Intrinsic parameters Extrinsic parameters


Camera Calibration using OpenCV
Camera Distortion Rectification
Part III: Structure from Motion

SfM Problem

Assume multiple 2D images of 3D points and their correspondence are
known, estimate their 3D locations and the transformations (R, T).
Definition: hat operator

Quick Facts:
Epipolar Constraint
Properties of Epipolar Constraint

Conditions on the epipoles

Conditions on the epipolar lines (by co-images)


Estimation of Essential Matrix
Enforcing Essential Matrix
8-Point or 7-Point Algorithm
What if correspondence has error:

Random Sample Consensus (RANSAC)
Decomposition of E Matrix
Decomposition of E Matrix
About Depth Cameras

Time of Flight

Blur:
Structured Light

Light Field Camera


z1
z0
s A
s
Depth from Defocus
b
Part IV: Feature Matching
Features in images are not just 0-dim abstract points, their local appearance can
be used to improve matching across images
SIFT (Scale-Invariant Feature Transform)

Step 1: Feature Detector
What is a corner point?
SIFT (Scale-Invariant Feature Transform)

Step 1: Feature Detector
David Lowe’s Solution:

Difference of Gaussian

Typically, detection of SIFT combines both corner detection and DoG detection

* David Lowe, Distinctive image features from scale-invariant keypoints, IJCV 2004
SIFT (Scale-Invariant Feature Transform)

Step 2: Feature Descriptor
SIFT (Scale-Invariant Feature Transform)

Step 3: Histogram Matching
SIFT (Scale-Invariant Feature Transform)

Step 3: Histogram Matching
OpenCV Sample Code

You might also like