0% found this document useful (0 votes)
72 views35 pages

CS5760: Computer Vision: Lecture 8: Image Alignment

This document discusses image alignment through computing transformations between images based on feature matches. It covers: 1) Computing the transformation that best aligns feature matches between two images by solving a least squares problem. For translations, the solution is the mean displacement of matches. 2) The transformations covered include translations, affine transformations which have 6 unknowns, and homographies which have 8 unknowns and require 4 or more matches to solve. 3) Common optimization problems in image alignment involve finding the least squares solution to an overdetermined system of equations and solving for the unit vector corresponding to the smallest eigenvalue of a matrix.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
72 views35 pages

CS5760: Computer Vision: Lecture 8: Image Alignment

This document discusses image alignment through computing transformations between images based on feature matches. It covers: 1) Computing the transformation that best aligns feature matches between two images by solving a least squares problem. For translations, the solution is the mean displacement of matches. 2) The transformations covered include translations, affine transformations which have 6 unknowns, and homographies which have 8 unknowns and require 4 or more matches to solve. 3) Common optimization problems in image alignment involve finding the least squares solution to an overdetermined system of equations and solving for the unit vector corresponding to the smallest eigenvalue of a matrix.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 35

CS5760: Computer Vision

Noah Snavely

Lecture 8: Image alignment

http://www.wired.com/gadgetlab/2010/07/camera-software-lets-you-see-into-the-past/
Reading
• Szeliski: Chapter 6.1
Announcements
• Project 2 due date extended to Wednesday,
3/6 (code due at 11:59pm to CMS)
– Artifact due Friday, 3/8
• Quiz 2 in class next Wednesday, 3/6
Project 1 Artifact Prizes
Third Place
Siqi Ouyang
Second Place
Ishan Virk
First Place
Jingjing Bai
Computing transformations
• Given a set of matches between images A and B
– How can we compute the transform T from A to B?

– Find transform T that best “agrees” with the matches


Computing transformations

?
Simple case: translations

How do we solve for


?
Simple case: translations

Displacement of match i =

Mean displacement =
Another view

• System of linear equations


– What are the knowns? Unknowns?
– How many unknowns? How many equations (per match)?
Another view

• Problem: more equations than unknowns


– “Overdetermined” system of equations
– We will find the least squares solution
Least squares formulation
• For each point

• we define the residuals as


Least squares formulation
• Goal: minimize sum of squared residuals

• “Least squares” solution


• For translations, is equal to mean (average)
displacement
Least squares formulation
• Can also write as a matrix equation

2n x 2 2x1 2n x 1
Least squares

• Find t that minimizes

• To solve, form the normal equations


Questions?
Least squares: linear regression

12

10

8
(yi, xi)
Mileage

4 y = mx + b

0
0 1 2 3 4 5 6
Time
Linear regression
12

10

residual error
Mileage

0
0 1 2 3 4 5 6
Time
Linear regression
Affine transformations

• How many unknowns?


• How many equations per match?
• How many matches do we need?
Affine transformations
• Residuals:

• Cost function:
Affine transformations
• Matrix form

2n x 6 6x1 2n x 1
Homographies

p’
p

To unwarp (rectify) an image


• solve for homography H given p and p’
• solve equations of the form: wp’ = Hp
– linear in unknowns: w and coefficients of H
– H is defined up to an arbitrary scale factor
– how many points are necessary to solve for H?
Solving for homographies

Not linear!
Solving for homographies
Solving for homographies

2n × 9 9 2n

Defines a least squares problem:


• Since is only defined up to scale, solve for unit vector
• Solution: = eigenvector of with smallest eigenvalue
• Works with 4 or more points
Recap: Two Common Optimization Problems

Problem statement Solution

x   AT A AT b
2 1
minimize Ax  b
least squares solution to Ax  b x  A\b (matlab)

Problem statement Solution


minimize x T A T Ax s.t. x T x  1
[ v,  ]  eig( A T A )
1  2.. n : x  v 1
non - trivial lsq solution to Ax  0
Questions?
Image Alignment Algorithm
Given images A and B

1. Compute image features for A and B


2. Match features between A and B
3. Compute homography between A and B
using least squares on set of matches

What could go wrong?


Outliers outliers

inliers

You might also like