400 likes | 592 Views
10/17/06. ELE 488 Fall 2006 Image Processing and Transmission (10-17-06). Geometric Transformation translation rotation scaling Affine Image Registration Goodness of fit. Mosaicking and Registration. Reference Image. Floating Image.
E N D
10/17/06 ELE 488 Fall 2006Image Processing and Transmission (10-17-06) • Geometric Transformation • translation • rotation • scaling • Affine • Image Registration • Goodness of fit
Mosaicking and Registration Reference Image Floating Image
Identify Features and Matchto Determine Geometric Transformation Image I (reference) h(x,y) Image II (floating) h–1(x’,y’) Two cartesian coordinate systems: (x,y) and (x’,y’) Forward: (x’,y’) = h(x,y) Reverse: (x,y) = h-1(x’,y’)
y y’ (1, 1) (2, 1) (3, 1) x’ x (1, 0) Four Basic Transformations translation rotation scaling shearing
Combining Transformations • Rotation and translation • Successive application of rotation, translation and scaling. • Involves matrix multiplications and additions • Homogeneous Coordinates Matrix multiplication, no addition
Translation – Rotation – Scaling Translation: Rotation: Scaling: Note: c=0
Combining Transformations 1) Translate 2) Rotate 3) Translate
Homogeneous Transforms • Rigid-body: Rotation and Translation • 2x2 rotation submatrix is orthonormal • Translation/Rotation/Scaling • are determined by rotation and scaling parameters
Affine and Projective Transformations • Affine: 6 free parameters • Projective: 8 free parameters • More general geometric transformations between two planes • Widely used in modeling cameras s scaling factor.
Inverse Transform Examples:
Reflections Reflect in x-axis Reflect in y-axis Reflect in line y=x
Image Formation: pin hole model Projection of point (X,Y,Z) in 3D space to (x,y) in image plane
Mosaicking and Registration Reference Image Floating Image Two camerasOr one camera at two positions
Two Cameras Point in 3-D has two sets of coordinates
General Rotation of Camera Two 3-D coordinates of a point are related by a rotation matrix: rotation matrix R Decompose R into 3 rotations about the first camera axes: Counter clockwise rotation about Z axis Counter clockwise rotation about X axis Counter clockwise rotation about Y axis
Translation location of 2nd camera in 1st camera coordinates
3-D Coordinate Transformation The two 3-D coordinates of a point are related by a 3-D rotation and a translation: Counter clockwise rotation about Z axis Counter clockwise rotation about X axis Counter clockwise rotation about Y axis from pinhole camera
3-D Coordinate Transformation Independently scale each side of the equation
No Translation Homogeneous transformation Knowing establishes the correspondence between the images.
Flat Scene See slide 9 Homogeneous transformation Knowing establishes the correspondence between the images.
Planar Scene Homogeneous transformation Knowing establishes the correspondence between the images.
Mosaic: Firestone Library Photos: P. Ramadge, Mosaic: Y.P. Tan/R. Radke The zero translation approximation was used to register these images
Affine and Projective Transformations • Projective Transformations are closely connected to image formation models and camera rotation • Affine is an approximation:
Small Rotations Can be approximated by affine
Three Questions of Image Registration • How is the spatial transformation (= warping function) applied and what family of warping functions are allowed? • How do we measure how well the warped floating image aligns with the reference image? • How to we find the best warp in the allowed class to best match the images (optimization)
Warping Function Examples Translation Rotation Scaling Affine Projective
y x Goodness of Fit:How well does warped image align with reference 1)Use all pixel values: 2)Only use pixel values around selected “features”: What are features?
v u Features and Feature Selection Sharp corners GOOD BAD v u
Registration As An Optimization Problem Consider transformations parameterized by a vector of parameters θ Find the transformation that minimizes the registration metric (e.g., above) In some special cases this can be solved analytically (in closed form) In other cases it can be approximated and solved analytically In the most complex cases it has to be solved iteratively by a gradient-like descent method.
Example: Translation + SSD Feature Metric 1 feature - can do this by brute force search by finding the best match More features?
Simplification Find the best translation for each feature individually by a brute forcesearch (can be refined) This gives (called a correspondence) Then select the translation for the entire image to minimize : This yields
Image Registration Reference Image Floating Image • 756x504 pixels • 16 bit color • Allowed warpings is translations • Matching metric is how well a selected subset of “features” match using SAD • best translation match. average pixels where images overlap
Registration Using Affine Transformation translation, rotation, scaling, shearing
Registration Using Projective Transformation Add: tilting