Warping, Morphing and Mosaics

Size: px
Start display at page:

Download "Warping, Morphing and Mosaics"

Transcription

1 Computational Photograph and Video: Warping, Morphing and Mosaics Prof. Marc Pollefes Dr. Gabriel Brostow

2 Toda s schedule Last week s recap Warping Morphing Mosaics

3 Toda s schedule Last week s recap Warping Mosaics Morphing

4 Eposure: shutter vs. aperture Trade off motion blur vs. depth of field (also gain/iso sensitivit)

5 Imperfect lenses: aberrations, etc.

6 Sensors and color

7 Schedule Computational Photograph and Video 2 Feb Introduction to Computational Photograph 27 Feb More on Cameras, Sensors and Color Assignment 1: Color 5 Mar Warping, morphing and mosaics Assignment 2: Alignment 12 Mar Image pramids, Graphcuts Assignment 3: Blending 19 Mar Dnamic Range, HDR imaging, tone mapping Assignment 4: HDR 26 Mar Easter holida no classes 2 Apr TBD Project proposals 9 Apr TBD Papers 16 Apr TBD Papers 23 Apr TBD Papers 3 Apr TBD Project update 7 Ma TBD Papers 14 Ma TBD Papers 21 Ma TBD Papers 28 Ma TBD Final project presentation

8 Toda s schedule Last week s recap Warping Mosaics Morphing

9 Image Warping image filtering: change range of image g() = T(f()) f T f image warping: change domain of image g() = f(t()) f f T toda lots of slides from Aleei Efros

10 Image Warping image filtering: change range of image g() = T(f()) f T g image warping: change domain of image f g() = f(t()) T g

11 Parametric (global) warping Eamples of parametric warps: translation rotation aspect affine perspective clindrical

12 Parametric (global) warping T p = (,) p = (, ) Transformation T is a coordinate changing machine: p = T(p) What does it mean that T is global? Is the same for an point p can be described b just a few numbers (parameters) Let s represent T as a matri: p = Mp ' = M '

13 Scaling Scaling a coordinate means multipling each of its components b a scalar Uniform scaling means this scalar is the same for all components: 2

14 Scaling Non uniform scaling: different scalars per component: X 2, Y.5

15 Scaling operation: Or, in matri form: b a = = ' ' = b a ' ' scaling matri S What s inverse of S? Scaling

16 2 D Rotation (, ) (, ) θ = cos(θ) - sin(θ) = sin(θ) + cos(θ)

17 2 D Rotation This is eas to capture in matri form: ' ' = cos sin θ ( θ ) sin( θ ) ( ) ( ) cos θ Even though sin(θ) and cos(θ) are nonlinear functions of θ, is a linear combination of and is a linear combination of and What is the inverse transformation? Rotation b θ For rotation matrices R 1 T R = R

18 What tpes of transformations can be represented with a 22 matri? 2D Identit? = = ' ' = 1 1 ' ' 2D Scale around (,)? s s * ' * ' = = = s s ' ' 22 Matrices

19 What tpes of transformations can be represented with a 22 matri? 2D Rotate around (,)? * cos * sin ' * sin * cos ' Θ + Θ = Θ Θ = Θ Θ Θ Θ = cos sin sin cos ' ' 2D Shear? sh sh + = + = * ' * ' = sh sh 1 1 ' ' 22 Matrices

20 22 Matrices What tpes of transformations can be represented with a 22 matri? 2D Mirror about Y ais? ' = ' = ' ' = 1 1 2D Mirror over (,)? ' ' = = ' ' = 1 1

21 22 Matrices What tpes of transformations can be represented with a 22 matri? 2D Translation? ' = + t ' = + t NO! Onl linear 2D transformations can be represented with a 22 matri

22 All 2D Linear Transformations Linear transformations are combinations of Scale, Rotation, Shear, and Mirror Properties of linear transformations: Origin maps to origin Lines map to lines Parallel lines remain parallel Ratios are preserved Closed under composition ' ' = a c b e d g ' a = ' c f i h k b d j l

23 Homogeneous Coordinates Q: How can we represent translation as a 33 matri? ' = + t ' = + t

24 Homogeneous Coordinates Homogeneous coordinates represent coordinates in 2 dimensions with a 3 vector homogeneous coords 1

25 Homogeneous Coordinates Add a 3rd coordinate to ever 2D point (,, w) represents a point at location (/w, /w) (,, ) represents a point at infinit (,, ) is not allowed 2 1 (2,1,1) or (4,2,2) or (6,3,3) Convenient coordinate sstem to represent man useful transformations 1 2

26 Q: How can we represent translation as a 33 matri? A: Using the rightmost column: = t t Translation t t + = + = ' ' Homogeneous Coordinates

27 Translation Eample of translation + + = = ' ' t t t t t = 2 t = 1 Homogeneous Coordinates

28 Basic 2D Transformations Basic 2D transformations as 33 matrices Θ Θ Θ Θ = 1 1 cos sin sin cos 1 ' ' = ' ' t t = ' ' sh sh Translate Rotate Shear = ' ' s s Scale

29 Affine Transformations Affine transformations are combinations of Linear transformations, and Translations Properties of affine transformations: Origin does not necessaril map to origin Lines map to lines Parallel lines remain parallel Ratios are preserved Closed under composition Models change of basis ' ' w = a d b e c f 1 w

30 Projective Transformations Projective transformations Affine transformations, and Projective warps Properties of projective transformations: Origin does not necessaril map to origin Lines map to lines Parallel lines do not necessaril remain parallel Ratios are not preserved Closed under composition Models change of basis ' ' w' = a d g b e h c f i w

31 Transformations can be combined b matri multiplication Θ Θ Θ Θ = w s s t t w 1 1 cos sin sin cos ' ' ' p = T(t,t ) R(Θ) S(s,s ) p Matri Composition

32 2D image transformations These transformations are a nested set of groups Closed under composition and inverse is a member

33 Image Warping in Biolog D'Arc Thompson groups.dcs.st and.ac.uk/~histor/miscellaneous/darc.html Importance of shape and structure in evolution Slide b Durand and Freeman

34 Recovering Transformations? T(,) f(,) g(, ) What if we know f and g and want to recover the transform T? willing to let user provide correspondences How man do we need?

35 Translation: # correspondences? How man correspondences needed for translation? How man Degrees of Freedom? What is the transformation matri? T(,)? = 1 ' 1 ' 1 p p p p M

36 Euclidian: # correspondences? How man correspondences needed for translation+rotation? How man DOF?? T(,)

37 Affine: # correspondences?? T(,) How man correspondences needed for affine? How man DOF?

38 Projective: # correspondences?? T(,) How man correspondences needed for projective? How man DOF?

39 Image warping T(,) f(,) g(, ) Given a coordinate transform (, ) = T(,) and a source image f(,), how do we compute a transformed image g(, ) = f(t(,))?

40 Forward warping T(,) f(,) g(, ) Send each piel f(,) to its corresponding location (, ) = T(,) in the second image Q: what if piel lands between two piels?

41 Forward warping T(,) f(,) g(, ) Send each piel f(,) to its corresponding location (, ) = T(,) in the second image Q: what if piel lands between two piels? A: distribute color among neighboring piels (, ) Known as splatting Check out griddata in Matlab

42 Inverse warping T -1 (,) f(,) g(, ) Get each piel g(, ) from its corresponding location (,)=T 1 (, ) in the first image Q: what if piel comes from between two piels?

43 Inverse warping T -1 (,) f(,) g(, ) Get each piel g(, ) from its corresponding location (,)=T 1 (, ) in the first image Q: what if piel comes from between two piels? A: Interpolate color value from neighbors nearest neighbor, bilinear, Gaussian, bicubic Check out interp2 in Matlab

44 Forward vs. inverse warping Q: which is better? A: usuall inverse eliminates holes however, it requires an invertible warp function not alwas possible...

45 Toda s schedule Last week s recap Warping Mosaics Morphing

46 Wh Mosaic? Are ou getting the whole picture? Compact Camera FOV = 5 35 Slide from Brown & Lowe

47 Wh Mosaic? Are ou getting the whole picture? Compact Camera FOV = 5 35 Human FOV = Slide from Brown & Lowe

48 Wh Mosaic? Are ou getting the whole picture? Compact Camera FOV = 5 35 Human FOV = Panoramic Mosaic = Slide from Brown & Lowe

49 Mosaics: stitching images together virtual wide-angle camera

50 A pencil of ras contains all views real camera snthetic camera Can generate an snthetic camera view as long as it has the same center of projection!

51 How to do it? Basic Procedure Take a sequence of images from the same position Rotate the camera about its optical center Compute transformation between second image and first Transform the second image to overlap with the first Blend the two together to create a mosaic If there are more images, repeat but wait, wh should this work at all? What about the 3D geometr of the scene? Wh aren t we using it?

52 Aligning images left on top right on top Translations are not enough to align the images

53 Image reprojection mosaic PP The mosaic has a natural interpretation in 3D The images are reprojected onto a common plane The mosaic is formed on this plane Mosaic is a snthetic wide angle camera

54 Image reprojection Basic question How to relate two images from the same camera center? how to map a piel from PP1 to PP2 PP2 Answer Cast a ra through each piel in PP1 Draw the piel where that ra intersects PP2 But don t we need to know the geometr of the two planes in respect to the ee? PP1 Observation: Rather than thinking of this as a 3D reprojection, think of it as a 2D image warp from one image to another

55 Back to Image Warping Which t-form is the right one for warping PP1 into PP2? e.g. translation, Euclidean, affine, projective Translation Affine Perspective 2 unknowns 6 unknowns 8 unknowns

56 Homograph A: Projective mapping between an two PPs with the same center of projection rectangle should map to arbitrar quadrilateral parallel lines aren t but must preserve straight lines same as: project, rotate, reproject called Homograph w' * * * w' = * * * w * * * 1 p H p To appl a homograph H Compute p = Hp (regular matri multipl) Convert p from homogeneous to image coordinates PP1 PP2

57 Image warping with homographies image plane in front black area where no piel maps to image plane below

58 Image rectification p p To unwarp (rectif) an image Find the homograph H given a set of p and p pairs How man correspondences are needed? Trick to write H analticall, but we can solve for it! Find such H that best transforms points p into p Use least-squares!

59 Computing a homograph λ 1 = h 1 h 2 h 3 > > > > 1 h > 1 h > 2 h > 3 = λ = h 3 h 3 = h 1 h 3 = h 2 = 1 2 equations/point Stack matri representing equations for 4 or more points Solve through SVD, least-square solution is given b last right singular vector USV >.V 9 = σ 9 (i.e. smallest singular value) Numericall better if image coordinates scaled to [-1,1]

60 Panoramas 1. Pick one image (red) 2. Warp the other images towards it (usuall, one b one) 3. blend

61 changing camera center Does it still work? PP1 snthetic PP PP2

62 Planar scene (or far awa) PP3 PP1 PP2 PP3 is a projection plane of both centers of projection, so we are OK! This is how big aerial photographs are made

63 Planar mosaic

64 Toda s schedule Last week s recap Warping Mosaics Morphing

65 Morphing = Object Averaging The aim is to find an average between two objects Not an average of two images of objects but an image of the average object! How can we make a smooth transition in time? Do a weighted average over time t How do we know what the average object looks like? We haven t a clue! But we can often fake something reasonable Usuall required user/artist input

66 Averaging Points What s the average of P and Q? v = Q - P Q P Linear Interpolation (Affine Combination): New point ap + bq, defined onl when a+b = 1 So ap+bq = ap+(1-a)q P +.5v = P +.5(Q P) =.5P +.5 Q P and Q can be anthing: P + 1.5v = P + 1.5(Q P) = -.5P Q (etrapolation) points on a plane (2D) or in space (3D) Colors in RGB or HSV (3D) Whole images (m b n D) etc.

67 Idea #1: Cross Dissolve Interpolate whole images: Image halfwa = (1 t)*image 1 + t*image 2 This is called cross dissolve in film industr But what is the images are not aligned?

68 Idea #2: Align, then cross disolve Align first, then cross dissolve Alignment using global warp picture still valid

69 Dog Averaging What to do? Cross dissolve doesn t work Global alignment doesn t work Cannot be done with a global transformation (e.g. affine) An ideas? Feature matching! Nose to nose, tail to tail, etc. This is a local (non parametric) warp

70 Idea #3: Local warp, then cross dissolve Morphing procedure: for ever t, 1. Find the average shape (the mean dog ) local warping 2. Find the average color Cross dissolve the warped images

71 Local (non parametric) Image Warping Need to specif a more detailed warp function Global warps were functions of a few (2,4,8) parameters Non parametric warps u(,) and v(,) can be defined independentl for ever single location,! Once we know vector field u,v we can easil warp each piel (use backward warping with interpolation)

72 Image Warping non parametric Move control points to specif a spline warp Spline produces a smooth vector field

73 Warp specification dense How can we specif the warp? Specif corresponding spline control points interpolate to a complete warping function But we want to specif onl a few points, not a grid

74 Warp specification sparse How can we specif the warp? Specif corresponding points interpolate to a complete warping function How do we do it? How do we go from feature points to piels?

75 Triangular Mesh 1. Input correspondences at ke feature points 2. Define a triangular mesh over the points Same mesh in both images! Now we have triangle to triangle correspondences 3. Warp each triangle separatel from source to destination How do we warp a triangle? 3 points = affine warp! Just like teture mapping

76 Image Morphing We know how to warp one image into the other, but how do we create a morphing sequence? 1. Create an intermediate shape (b interpolation) 2. Warp both images towards it 3. Cross dissolve the colors in the newl warped images

77 Warp interpolation How do we create an intermediate warp at time t? Assume t = [,1] Simple linear interpolation of each feature pair (1 t)*p1+t*p for corresponding features p and p1

78 Slide b Durand and Freeman Morphing & matting Etract foreground first to avoid artifacts in the background

79 Women in Art video _Hs

80 Problem with morphing So far, we have performed linear interpolation of feature point positions But what happens if we tr to morph between two views of the same object?

81 View morphing Seitz & Der Interpolation consistent with 3D view interpolation

82 Main trick Prewarp with a homograph to "prealign" images So that the two views are parallel Because linear interpolation works when views are parallel

83 morph morph prewarp prewarp input output input homographies

84

85

86

87 Net week Image pramids and graph cuts

Image Warping, mesh, and triangulation CSE399b, Spring 07 Computer Vision

Image Warping, mesh, and triangulation CSE399b, Spring 07 Computer Vision http://grail.cs.washington.edu/projects/rotoscoping/ Image Warping, mesh, and triangulation CSE399b, Spring 7 Computer Vision Man of the slides from A. Efros. Parametric (global) warping Eamples of parametric

More information

Image Warping CSE399b, Spring 07 Computer Vision

Image Warping CSE399b, Spring 07 Computer Vision Image Warping CSE399b, Spring 7 Computer Vision http://maps.a9.com http://www.cs.ubc.ca/~mbrown/autostitch/autostitch.html http://www.cs.ubc.ca/~mbrown/autostitch/autostitch.html Autostiching on A9.com

More information

Interactive Computer Graphics. Warping and morphing. Warping and Morphing. Warping and Morphing. Lecture 14+15: Warping and Morphing. What is.

Interactive Computer Graphics. Warping and morphing. Warping and Morphing. Warping and Morphing. Lecture 14+15: Warping and Morphing. What is. Interactive Computer Graphics Warping and morphing Lecture 14+15: Warping and Morphing Lecture 14: Warping and Morphing: Slide 1 Lecture 14: Warping and Morphing: Slide 2 Warping and Morphing What is Warping

More information

Image Warping and Morphing. Alexey Tikhonov : Computational Photography Alexei Efros, CMU, Fall 2007

Image Warping and Morphing. Alexey Tikhonov : Computational Photography Alexei Efros, CMU, Fall 2007 Image Warping and Morphing Alexey Tikhonov 15-463: Computational Photography Alexei Efros, CMU, Fall 2007 Image Warping in Biology D'Arcy Thompson http://www-groups.dcs.st-and.ac.uk/~history/miscellaneous/darcy.html

More information

Image Warping and Morphing. Alexey Tikhonov

Image Warping and Morphing. Alexey Tikhonov Image Warping and Morphing Alexey Tikhonov CS194: Image Manipulation & Computational Photography Alexei Efros, UC Berkeley, Fall 2016 Women in Art video http://youtube.com/watch?v=nudion-_hxs Image Warping

More information

Image Warping. Some slides from Steve Seitz

Image Warping.   Some slides from Steve Seitz Image Warping http://www.jeffre-martin.com Some slides from Steve Seitz 5-463: Computational Photograph Aleei Efros, CMU, Spring 2 Image Transformations image filtering: change range of image g() = T(f())

More information

Image Warping : Computational Photography Alexei Efros, CMU, Fall Some slides from Steve Seitz

Image Warping : Computational Photography Alexei Efros, CMU, Fall Some slides from Steve Seitz Image Warping http://www.jeffre-martin.com Some slides from Steve Seitz 5-463: Computational Photograph Aleei Efros, CMU, Fall 2 Image Transformations image filtering: change range of image g() T(f())

More information

Image Warping. Some slides from Steve Seitz

Image Warping.   Some slides from Steve Seitz Image Warping http://www.jeffre-martin.com Some slides from Steve Seitz 5-463: Computational Photograph Aleei Efros, CMU, Fall 26 Image Warping image filtering: change range of image g() T(f()) f T f image

More information

Image Warping and Morphing. Alexey Tikhonov

Image Warping and Morphing. Alexey Tikhonov Image Warping and Morphing Alexey Tikhonov CS194: Image Manipulation & Computational Photography Alexei Efros, UC Berkeley, Fall 2017 Women in Art video http://youtube.com/watch?v=nudion-_hxs Image Warping

More information

How is project #1 going?

How is project #1 going? How is project # going? Last Lecture Edge Detection Filtering Pramid Toda Motion Deblur Image Transformation Removing Camera Shake from a Single Photograph Rob Fergus, Barun Singh, Aaron Hertzmann, Sam

More information

Last Lecture. Edge Detection. Filtering Pyramid

Last Lecture. Edge Detection. Filtering Pyramid Last Lecture Edge Detection Filtering Pramid Toda Motion Deblur Image Transformation Removing Camera Shake from a Single Photograph Rob Fergus, Barun Singh, Aaron Hertzmann, Sam T. Roweis and William T.

More information

Image Warping. Many slides from Alyosha Efros + Steve Seitz. Photo by Sean Carroll

Image Warping. Many slides from Alyosha Efros + Steve Seitz. Photo by Sean Carroll Image Warping Man slides from Alosha Efros + Steve Seitz Photo b Sean Carroll Morphing Blend from one object to other with a series of local transformations Image Transformations image filtering: change

More information

Image Warping. Computational Photography Derek Hoiem, University of Illinois 09/28/17. Photo by Sean Carroll

Image Warping. Computational Photography Derek Hoiem, University of Illinois 09/28/17. Photo by Sean Carroll Image Warping 9/28/7 Man slides from Alosha Efros + Steve Seitz Computational Photograph Derek Hoiem, Universit of Illinois Photo b Sean Carroll Reminder: Proj 2 due monda Much more difficult than project

More information

Image warping. image filtering: change range of image. image warping: change domain of image g(x) = f(h(x)) h(y)=0.5y+0.5. h([x,y])=[x,y/2] f h

Image warping. image filtering: change range of image. image warping: change domain of image g(x) = f(h(x)) h(y)=0.5y+0.5. h([x,y])=[x,y/2] f h Image warping Image warping image filtering: change range of image g() () = h(f()) h(f()) f h g h()=0.5+0.5 image warping: change domain of image g() = f(h()) f h g h([,])=[,/2] Parametric (global) warping

More information

Image Warping (Szeliski Sec 2.1.2)

Image Warping (Szeliski Sec 2.1.2) Image Warping (Szeliski Sec 2..2) http://www.jeffre-martin.com CS94: Image Manipulation & Computational Photograph Aleei Efros, UC Berkele, Fall 7 Some slides from Steve Seitz Image Transformations image

More information

Warping. 12 May 2015

Warping. 12 May 2015 Warping 12 May 2015 Warping, morphing, mosaic Slides from Durand and Freeman (MIT), Efros (CMU, Berkeley), Szeliski (MSR), Seitz (UW), Lowe (UBC) http://szeliski.org/book/ 2 Image Warping Image filtering:

More information

Prof. Feng Liu. Winter /05/2019

Prof. Feng Liu. Winter /05/2019 Prof. Feng Liu Winter 2019 http://www.cs.pd.edu/~fliu/courses/cs410/ 02/05/2019 Last Time Image alignment 2 Toda Image warping The slides for this topic are used from Prof. Yung-Yu Chuang, which use materials

More information

Image warping/morphing

Image warping/morphing Image warping/morphing Digital Visual Effects, Spring 2007 Yung-Yu Chuang 2007/3/20 with slides b Richard Szeliski, Steve Seitz, Tom Funkhouser and Aleei Efros Image warping Image formation B A Sampling

More information

CS 2770: Intro to Computer Vision. Multiple Views. Prof. Adriana Kovashka University of Pittsburgh March 14, 2017

CS 2770: Intro to Computer Vision. Multiple Views. Prof. Adriana Kovashka University of Pittsburgh March 14, 2017 CS 277: Intro to Computer Vision Multiple Views Prof. Adriana Kovashka Universit of Pittsburgh March 4, 27 Plan for toda Affine and projective image transformations Homographies and image mosaics Stereo

More information

Image Warping and Mosacing

Image Warping and Mosacing Image Warping and Mosacing 15-463: Rendering and Image Processing Alexei Efros with a lot of slides stolen from Steve Seitz and Rick Szeliski Today Mosacs Image Warping Homographies Programming Assignment

More information

Affine and Projective Transformations

Affine and Projective Transformations CS 674: Intro to Computer Vision Affine and Projective Transformations Prof. Adriana Kovaska Universit of Pittsburg October 3, 26 Alignment problem We previousl discussed ow to matc features across images,

More information

CS4670: Computer Vision

CS4670: Computer Vision CS467: Computer Vision Noah Snavely Lecture 8: Geometric transformations Szeliski: Chapter 3.6 Reading Announcements Project 2 out today, due Oct. 4 (demo at end of class today) Image alignment Why don

More information

Image Morphing. CSC320: Introduction to Visual Computing Michael Guerzhoy. Many slides borrowed from Derek Hoeim, Alexei Efros

Image Morphing. CSC320: Introduction to Visual Computing Michael Guerzhoy. Many slides borrowed from Derek Hoeim, Alexei Efros Image Morphing Edvard Munch, The Scream Many slides borrowed from Derek Hoeim, Alexei Efros CSC320: Introduction to Visual Computing Michael Guerzhoy Morphing Examples Women in art http://youtube.com/watch?v=nudion-_hxs

More information

The aim is to find an average between two objects Not an average of two images of objects but an image of the average object!

The aim is to find an average between two objects Not an average of two images of objects but an image of the average object! The aim is to find an average between two objects Not an average of two images of objects but an image of the average object! How can we make a smooth transition in time? Do a weighted average over time

More information

CSE328 Fundamentals of Computer Graphics: Theory, Algorithms, and Applications

CSE328 Fundamentals of Computer Graphics: Theory, Algorithms, and Applications CSE328 Fundamentals of Computer Graphics: Theor, Algorithms, and Applications Hong in State Universit of New York at Ston Brook (Ston Brook Universit) Ston Brook, New York 794-44 Tel: (63)632-845; Fa:

More information

Image warping and stitching

Image warping and stitching Image warping and stitching May 4 th, 2017 Yong Jae Lee UC Davis Last time Interactive segmentation Feature-based alignment 2D transformations Affine fit RANSAC 2 Alignment problem In alignment, we will

More information

CS6670: Computer Vision

CS6670: Computer Vision CS6670: Computer Vision Noah Snavely Lecture 7: Image Alignment and Panoramas What s inside your fridge? http://www.cs.washington.edu/education/courses/cse590ss/01wi/ Projection matrix intrinsics projection

More information

N-Views (1) Homographies and Projection

N-Views (1) Homographies and Projection CS 4495 Computer Vision N-Views (1) Homographies and Projection Aaron Bobick School of Interactive Computing Administrivia PS 2: Get SDD and Normalized Correlation working for a given windows size say

More information

Image warping and stitching

Image warping and stitching Image warping and stitching May 5 th, 2015 Yong Jae Lee UC Davis PS2 due next Friday Announcements 2 Last time Interactive segmentation Feature-based alignment 2D transformations Affine fit RANSAC 3 Alignment

More information

Image stitching. Digital Visual Effects Yung-Yu Chuang. with slides by Richard Szeliski, Steve Seitz, Matthew Brown and Vaclav Hlavac

Image stitching. Digital Visual Effects Yung-Yu Chuang. with slides by Richard Szeliski, Steve Seitz, Matthew Brown and Vaclav Hlavac Image stitching Digital Visual Effects Yung-Yu Chuang with slides by Richard Szeliski, Steve Seitz, Matthew Brown and Vaclav Hlavac Image stitching Stitching = alignment + blending geometrical registration

More information

Modeling Transformations

Modeling Transformations Modeling Transformations Michael Kazhdan (601.457/657) HB Ch. 5 FvDFH Ch. 5 Overview Ra-Tracing so far Modeling transformations Ra Tracing Image RaTrace(Camera camera, Scene scene, int width, int heigh,

More information

Image warping and stitching

Image warping and stitching Image warping and stitching Thurs Oct 15 Last time Feature-based alignment 2D transformations Affine fit RANSAC 1 Robust feature-based alignment Extract features Compute putative matches Loop: Hypothesize

More information

Image Morphing. Application: Movie Special Effects. Application: Registration /Alignment. Image Cross-Dissolve

Image Morphing. Application: Movie Special Effects. Application: Registration /Alignment. Image Cross-Dissolve Image Morphing Application: Movie Special Effects Morphing is turning one image into another (through a seamless transition) First movies with morphing Willow, 1988 Indiana Jones and the Last Crusade,

More information

Scene Graphs & Modeling Transformations COS 426

Scene Graphs & Modeling Transformations COS 426 Scene Graphs & Modeling Transformations COS 426 3D Object Representations Points Range image Point cloud Surfaces Polgonal mesh Subdivision Parametric Implicit Solids Voels BSP tree CSG Sweep High-level

More information

Announcements. Mosaics. How to do it? Image Mosaics

Announcements. Mosaics. How to do it? Image Mosaics Announcements Mosaics Project artifact voting Project 2 out today (help session at end of class) http://www.destination36.com/start.htm http://www.vrseattle.com/html/vrview.php?cat_id=&vrs_id=vrs38 Today

More information

Determining the 2d transformation that brings one image into alignment (registers it) with another. And

Determining the 2d transformation that brings one image into alignment (registers it) with another. And Last two lectures: Representing an image as a weighted combination of other images. Toda: A different kind of coordinate sstem change. Solving the biggest problem in using eigenfaces? Toda Recognition

More information

Modeling Transformations

Modeling Transformations Modeling Transformations Michael Kazhdan (601.457/657) HB Ch. 5 FvDFH Ch. 5 Announcement Assignment 2 has been posted: Due: 10/24 ASAP: Download the code and make sure it compiles» On windows: just build

More information

Panoramas. Why Mosaic? Why Mosaic? Mosaics: stitching images together. Why Mosaic? Olivier Gondry. Bill Freeman Frédo Durand MIT - EECS

Panoramas. Why Mosaic? Why Mosaic? Mosaics: stitching images together. Why Mosaic? Olivier Gondry. Bill Freeman Frédo Durand MIT - EECS Olivier Gondry 6.098 Digital and Computational Photography 6.882 Advanced Computational Photography Panoramas Director of music video and commercial Special effect specialist (Morphing, rotoscoping) Today

More information

Photo by Carl Warner

Photo by Carl Warner Photo b Carl Warner Photo b Carl Warner Photo b Carl Warner Fitting and Alignment Szeliski 6. Computer Vision CS 43, Brown James Has Acknowledgment: Man slides from Derek Hoiem and Grauman&Leibe 2008 AAAI

More information

6.098 Digital and Computational Photography Advanced Computational Photography. Panoramas. Bill Freeman Frédo Durand MIT - EECS

6.098 Digital and Computational Photography Advanced Computational Photography. Panoramas. Bill Freeman Frédo Durand MIT - EECS 6.098 Digital and Computational Photography 6.882 Advanced Computational Photography Panoramas Bill Freeman Frédo Durand MIT - EECS Lots of slides stolen from Alyosha Efros, who stole them from Steve Seitz

More information

Announcements. Mosaics. Image Mosaics. How to do it? Basic Procedure Take a sequence of images from the same position =

Announcements. Mosaics. Image Mosaics. How to do it? Basic Procedure Take a sequence of images from the same position = Announcements Project 2 out today panorama signup help session at end of class Today mosaic recap blending Mosaics Full screen panoramas (cubic): http://www.panoramas.dk/ Mars: http://www.panoramas.dk/fullscreen3/f2_mars97.html

More information

3D Geometry and Camera Calibration

3D Geometry and Camera Calibration 3D Geometr and Camera Calibration 3D Coordinate Sstems Right-handed vs. left-handed 2D Coordinate Sstems ais up vs. ais down Origin at center vs. corner Will often write (u, v) for image coordinates v

More information

Fitting a transformation: Feature-based alignment April 30 th, Yong Jae Lee UC Davis

Fitting a transformation: Feature-based alignment April 30 th, Yong Jae Lee UC Davis Fitting a transformation: Feature-based alignment April 3 th, 25 Yong Jae Lee UC Davis Announcements PS2 out toda; due 5/5 Frida at :59 pm Color quantization with k-means Circle detection with the Hough

More information

Modeling Transformations

Modeling Transformations Transformations Transformations Specif transformations for objects o Allos definitions of objects in on coordinate sstems o Allos use of object definition multiple times in a scene Adam Finkelstein Princeton

More information

Multi-stable Perception. Necker Cube

Multi-stable Perception. Necker Cube Multi-stable Perception Necker Cube Spinning dancer illusion, Nobuuki Kaahara Fitting and Alignment Computer Vision Szeliski 6.1 James Has Acknowledgment: Man slides from Derek Hoiem, Lana Lazebnik, and

More information

MAN-522: COMPUTER VISION SET-2 Projections and Camera Calibration

MAN-522: COMPUTER VISION SET-2 Projections and Camera Calibration MAN-522: COMPUTER VISION SET-2 Projections and Camera Calibration Image formation How are objects in the world captured in an image? Phsical parameters of image formation Geometric Tpe of projection Camera

More information

Image Metamorphosis By Affine Transformations

Image Metamorphosis By Affine Transformations Image Metamorphosis B Affine Transformations Tim Mers and Peter Spiegel December 16, 2005 Abstract Among the man was to manipulate an image is a technique known as morphing. Image morphing is a special

More information

CS 335 Graphics and Multimedia. Geometric Warping

CS 335 Graphics and Multimedia. Geometric Warping CS 335 Graphics and Multimedia Geometric Warping Geometric Image Operations Eample transformations Straightforward methods and their problems The affine transformation Transformation algorithms: Forward

More information

Mosaics. Today s Readings

Mosaics. Today s Readings Mosaics VR Seattle: http://www.vrseattle.com/ Full screen panoramas (cubic): http://www.panoramas.dk/ Mars: http://www.panoramas.dk/fullscreen3/f2_mars97.html Today s Readings Szeliski and Shum paper (sections

More information

More Mosaic Madness. CS194: Image Manipulation & Computational Photography. Steve Seitz and Rick Szeliski. Jeffrey Martin (jeffrey-martin.

More Mosaic Madness. CS194: Image Manipulation & Computational Photography. Steve Seitz and Rick Szeliski. Jeffrey Martin (jeffrey-martin. More Mosaic Madness Jeffrey Martin (jeffrey-martin.com) CS194: Image Manipulation & Computational Photography with a lot of slides stolen from Alexei Efros, UC Berkeley, Fall 2018 Steve Seitz and Rick

More information

Modeling Transformations

Modeling Transformations שיעור 3 גרפיקה ממוחשבת תשס"ח ב ליאור שפירא Modeling Transformations Heavil based on: Thomas Funkhouser Princeton Universit CS 426, Fall 2 Modeling Transformations Specif transformations for objects Allows

More information

CS F-07 Objects in 2D 1

CS F-07 Objects in 2D 1 CS420-2010F-07 Objects in 2D 1 07-0: Representing Polgons We want to represent a simple polgon Triangle, rectangle, square, etc Assume for the moment our game onl uses these simple shapes No curves for

More information

Modeling Transformations

Modeling Transformations Modeling Transformations Thomas Funkhouser Princeton Universit CS 426, Fall 2 Modeling Transformations Specif transformations for objects Allos definitions of objects in on coordinate sstems Allos use

More information

Single-view 3D Reconstruction

Single-view 3D Reconstruction Single-view 3D Reconstruction 10/12/17 Computational Photography Derek Hoiem, University of Illinois Some slides from Alyosha Efros, Steve Seitz Notes about Project 4 (Image-based Lighting) You can work

More information

Lecture 7: Image Morphing. Idea #2: Align, then cross-disolve. Dog Averaging. Averaging vectors. Idea #1: Cross-Dissolving / Cross-fading

Lecture 7: Image Morphing. Idea #2: Align, then cross-disolve. Dog Averaging. Averaging vectors. Idea #1: Cross-Dissolving / Cross-fading Lecture 7: Image Morphing Averaging vectors v = p + α (q p) = (1 - α) p + α q where α = q - v p α v (1-α) q p and q can be anything: points on a plane (2D) or in space (3D) Colors in RGB or HSV (3D) Whole

More information

Computer Graphics. Si Lu. Fall er_graphics.htm 10/11/2017

Computer Graphics. Si Lu. Fall er_graphics.htm 10/11/2017 Computer Graphics Si Lu Fall 27 http://www.cs.pd.edu/~lusi/cs447/cs447_547_comput er_graphics.htm //27 Last time Filtering Resampling 2 Toda Compositing NPR 3D Graphics Toolkits Transformations 3 Demo

More information

Editing and Transformation

Editing and Transformation Lecture 5 Editing and Transformation Modeling Model can be produced b the combination of entities that have been edited. D: circle, arc, line, ellipse 3D: primitive bodies, etrusion and revolved of a profile

More information

Geometric Image Transformations and Related Topics

Geometric Image Transformations and Related Topics Geometric Image Transformations and Related Topics 9 th Lesson on Image Processing Martina Mudrová 2004 Topics What will be the topic of the following lesson? Geometric image transformations Interpolation

More information

Image Stitching. Slides from Rick Szeliski, Steve Seitz, Derek Hoiem, Ira Kemelmacher, Ali Farhadi

Image Stitching. Slides from Rick Szeliski, Steve Seitz, Derek Hoiem, Ira Kemelmacher, Ali Farhadi Image Stitching Slides from Rick Szeliski, Steve Seitz, Derek Hoiem, Ira Kemelmacher, Ali Farhadi Combine two or more overlapping images to make one larger image Add example Slide credit: Vaibhav Vaish

More information

EECS 556 Image Processing W 09

EECS 556 Image Processing W 09 EECS 556 Image Processing W 09 Motion estimation Global vs. Local Motion Block Motion Estimation Optical Flow Estimation (normal equation) Man slides of this lecture are courtes of prof Milanfar (UCSC)

More information

Image warping , , Computational Photography Fall 2017, Lecture 10

Image warping , , Computational Photography Fall 2017, Lecture 10 Image warping http://graphics.cs.cmu.edu/courses/15-463 15-463, 15-663, 15-862 Computational Photography Fall 2017, Lecture 10 Course announcements Second make-up lecture on Friday, October 6 th, noon-1:30

More information

Homographies and RANSAC

Homographies and RANSAC Homographies and RANSAC Computer vision 6.869 Bill Freeman and Antonio Torralba March 30, 2011 Homographies and RANSAC Homographies RANSAC Building panoramas Phototourism 2 Depth-based ambiguity of position

More information

Computer Graphics. P04 Transformations. Aleksandra Pizurica Ghent University

Computer Graphics. P04 Transformations. Aleksandra Pizurica Ghent University Computer Graphics P4 Transformations Aleksandra Pizurica Ghent Universit Telecommunications and Information Processing Image Processing and Interpretation Group Transformations in computer graphics Goal:

More information

Computer Vision Lecture 20

Computer Vision Lecture 20 Computer Vision Lecture 2 Motion and Optical Flow Bastian Leibe RWTH Aachen http://www.vision.rwth-aachen.de leibe@vision.rwth-aachen.de 28.1.216 Man slides adapted from K. Grauman, S. Seitz, R. Szeliski,

More information

CSE 527: Introduction to Computer Vision

CSE 527: Introduction to Computer Vision CSE 527: Introduction to Computer Vision Week 5 - Class 1: Matching, Stitching, Registration September 26th, 2017 ??? Recap Today Feature Matching Image Alignment Panoramas HW2! Feature Matches Feature

More information

Image Transformations

Image Transformations Image Transformations Outline Gre-level transformations Histogram equalization Geometric transformations Affine transformations Interpolation Warping and morphing. Gre-level transformations Changes the

More information

1. We ll look at: Types of geometrical transformation. Vector and matrix representations

1. We ll look at: Types of geometrical transformation. Vector and matrix representations Tob Howard COMP272 Computer Graphics and Image Processing 3: Transformations Tob.Howard@manchester.ac.uk Introduction We ll look at: Tpes of geometrical transformation Vector and matri representations

More information

Transformations II. Week 2, Wed Jan 17

Transformations II. Week 2, Wed Jan 17 Universit of British Columbia CPSC 34 Computer Graphics Jan-Apr 27 Tamara Munzner Transformations II Week 2, Wed Jan 7 http://www.ugrad.cs.ubc.ca/~cs34/vjan27 Readings for Jan 5-22 FCG Chap 6 Transformation

More information

3D Photography: Epipolar geometry

3D Photography: Epipolar geometry 3D Photograph: Epipolar geometr Kalin Kolev, Marc Pollefes Spring 203 http://cvg.ethz.ch/teaching/203spring/3dphoto/ Schedule (tentative) Feb 8 Feb 25 Mar 4 Mar Mar 8 Mar 25 Apr Apr 8 Apr 5 Apr 22 Apr

More information

CS4670: Computer Vision

CS4670: Computer Vision CS467: Computer Vision Noah Snavely Lecture 13: Projection, Part 2 Perspective study of a vase by Paolo Uccello Szeliski 2.1.3-2.1.6 Reading Announcements Project 2a due Friday, 8:59pm Project 2b out Friday

More information

COSC579: Scene Geometry. Jeremy Bolton, PhD Assistant Teaching Professor

COSC579: Scene Geometry. Jeremy Bolton, PhD Assistant Teaching Professor COSC579: Scene Geometry Jeremy Bolton, PhD Assistant Teaching Professor Overview Linear Algebra Review Homogeneous vs non-homogeneous representations Projections and Transformations Scene Geometry The

More information

Today s class. Geometric objects and transformations. Informationsteknologi. Wednesday, November 7, 2007 Computer Graphics - Class 5 1

Today s class. Geometric objects and transformations. Informationsteknologi. Wednesday, November 7, 2007 Computer Graphics - Class 5 1 Toda s class Geometric objects and transformations Wednesda, November 7, 27 Computer Graphics - Class 5 Vector operations Review of vector operations needed for working in computer graphics adding two

More information

Perspective Projection Transformation

Perspective Projection Transformation Perspective Projection Transformation Where does a point of a scene appear in an image?? p p Transformation in 3 steps:. scene coordinates => camera coordinates. projection of camera coordinates into image

More information

Uses of Transformations. 2D transformations Homogeneous coordinates. Transformations. Transformations. Transformations. Transformations and matrices

Uses of Transformations. 2D transformations Homogeneous coordinates. Transformations. Transformations. Transformations. Transformations and matrices Uses of Transformations 2D transformations Homogeneous coordinates odeling: position and resie parts of a comple model; Viewing: define and position the virtual camera Animation: define how objects move/change

More information

Geometric Model of Camera

Geometric Model of Camera Geometric Model of Camera Dr. Gerhard Roth COMP 42A Winter 25 Version 2 Similar Triangles 2 Geometric Model of Camera Perspective projection P(X,Y,Z) p(,) f X Z f Y Z 3 Parallel lines aren t 4 Figure b

More information

What and Why Transformations?

What and Why Transformations? 2D transformations What and Wh Transformations? What? : The geometrical changes of an object from a current state to modified state. Changing an object s position (translation), orientation (rotation)

More information

CS4670: Computer Vision

CS4670: Computer Vision CS4670: Computer Vision Noah Snavely Lecture 9: Image alignment http://www.wired.com/gadgetlab/2010/07/camera-software-lets-you-see-into-the-past/ Szeliski: Chapter 6.1 Reading All 2D Linear Transformations

More information

CS559: Computer Graphics

CS559: Computer Graphics CS559: Computer Graphics Lecture 8: 3D Transforms Li Zhang Spring 28 Most Slides from Stephen Chenne Finish Color space Toda 3D Transforms and Coordinate sstem Reading: Shirle ch 6 RGB and HSV Green(,,)

More information

Announcements. Equation of Perspective Projection. Image Formation and Cameras

Announcements. Equation of Perspective Projection. Image Formation and Cameras Announcements Image ormation and Cameras Introduction to Computer Vision CSE 52 Lecture 4 Read Trucco & Verri: pp. 22-4 Irfanview: http://www.irfanview.com/ is a good Windows utilit for manipulating images.

More information

Introduction to Computer Vision. Week 3, Fall 2010 Instructor: Prof. Ko Nishino

Introduction to Computer Vision. Week 3, Fall 2010 Instructor: Prof. Ko Nishino Introduction to Computer Vision Week 3, Fall 2010 Instructor: Prof. Ko Nishino Last Week! Image Sensing " Our eyes: rods and cones " CCD, CMOS, Rolling Shutter " Sensing brightness and sensing color! Projective

More information

M y. Image Warping. Targil 7 : Image Warping. Image Warping. 2D Geometric Transformations. image filtering: change range of image g(x) = T(f(x))

M y. Image Warping. Targil 7 : Image Warping. Image Warping. 2D Geometric Transformations. image filtering: change range of image g(x) = T(f(x)) Hebrew Universi Image Processing - 6 Image Warping Hebrew Universi Image Processing - 6 argil 7 : Image Warping D Geomeric ransormaions hp://www.jere-marin.com Man slides rom Seve Seiz and Aleei Eros Image

More information

3D Computer Vision II. Reminder Projective Geometry, Transformations. Nassir Navab. October 27, 2009

3D Computer Vision II. Reminder Projective Geometry, Transformations. Nassir Navab. October 27, 2009 3D Computer Vision II Reminder Projective Geometr, Transformations Nassir Navab based on a course given at UNC b Marc Pollefes & the book Multiple View Geometr b Hartle & Zisserman October 27, 29 2D Transformations

More information

Geometric camera models and calibration

Geometric camera models and calibration Geometric camera models and calibration http://graphics.cs.cmu.edu/courses/15-463 15-463, 15-663, 15-862 Computational Photography Fall 2018, Lecture 13 Course announcements Homework 3 is out. - Due October

More information

Image warping/morphing

Image warping/morphing Image warping/morphing Digital Visual Effects Yung-Yu Chuang with slides by Richard Szeliski, Steve Seitz, Tom Funkhouser and Alexei Efros Image warping Image formation B A Sampling and quantization What

More information

Geometric Transformations and Image Warping

Geometric Transformations and Image Warping Geometric Transformations and Image Warping Ross Whitaker SCI Institute, School of Computing University of Utah Univ of Utah, CS6640 2009 1 Geometric Transformations Greyscale transformations -> operate

More information

Today s lecture. Image Alignment and Stitching. Readings. Motion models

Today s lecture. Image Alignment and Stitching. Readings. Motion models Today s lecture Image Alignment and Stitching Computer Vision CSE576, Spring 2005 Richard Szeliski Image alignment and stitching motion models cylindrical and spherical warping point-based alignment global

More information

2D Image Transforms Computer Vision (Kris Kitani) Carnegie Mellon University

2D Image Transforms Computer Vision (Kris Kitani) Carnegie Mellon University 2D Image Transforms 16-385 Computer Vision (Kris Kitani) Carnegie Mellon University Extract features from an image what do we do next? Feature matching (object recognition, 3D reconstruction, augmented

More information

Motivation. What we ve seen so far. Demo (Projection Tutorial) Outline. Projections. Foundations of Computer Graphics

Motivation. What we ve seen so far. Demo (Projection Tutorial) Outline. Projections. Foundations of Computer Graphics Foundations of Computer Graphics Online Lecture 5: Viewing Orthographic Projection Ravi Ramamoorthi Motivation We have seen transforms (between coord sstems) But all that is in 3D We still need to make

More information

Last Time. Correct Transparent Shadow. Does Ray Tracing Simulate Physics? Does Ray Tracing Simulate Physics? Refraction and the Lifeguard Problem

Last Time. Correct Transparent Shadow. Does Ray Tracing Simulate Physics? Does Ray Tracing Simulate Physics? Refraction and the Lifeguard Problem Graphics Pipeline: Projective Last Time Shadows cast ra to light stop after first intersection Reflection & Refraction compute direction of recursive ra Recursive Ra Tracing maimum number of bounces OR

More information

3-Dimensional Viewing

3-Dimensional Viewing CHAPTER 6 3-Dimensional Vieing Vieing and projection Objects in orld coordinates are projected on to the vie plane, hich is defined perpendicular to the vieing direction along the v -ais. The to main tpes

More information

But First: Multi-View Projective Geometry

But First: Multi-View Projective Geometry View Morphing (Seitz & Dyer, SIGGRAPH 96) Virtual Camera Photograph Morphed View View interpolation (ala McMillan) but no depth no camera information Photograph But First: Multi-View Projective Geometry

More information

To Do. Demo (Projection Tutorial) Motivation. What we ve seen so far. Outline. Foundations of Computer Graphics (Fall 2012) CS 184, Lecture 5: Viewing

To Do. Demo (Projection Tutorial) Motivation. What we ve seen so far. Outline. Foundations of Computer Graphics (Fall 2012) CS 184, Lecture 5: Viewing Foundations of Computer Graphics (Fall 0) CS 84, Lecture 5: Viewing http://inst.eecs.berkele.edu/~cs84 To Do Questions/concerns about assignment? Remember it is due Sep. Ask me or TAs re problems Motivation

More information

calibrated coordinates Linear transformation pixel coordinates

calibrated coordinates Linear transformation pixel coordinates 1 calibrated coordinates Linear transformation pixel coordinates 2 Calibration with a rig Uncalibrated epipolar geometry Ambiguities in image formation Stratified reconstruction Autocalibration with partial

More information

Introduction to Computer Vision

Introduction to Computer Vision Introduction to Computer Vision Michael J. Black Oct 2009 Motion estimation Goals Motion estimation Affine flow Optimization Large motions Why affine? Monday dense, smooth motion and regularization. Robust

More information

Visual Recognition: Image Formation

Visual Recognition: Image Formation Visual Recognition: Image Formation Raquel Urtasun TTI Chicago Jan 5, 2012 Raquel Urtasun (TTI-C) Visual Recognition Jan 5, 2012 1 / 61 Today s lecture... Fundamentals of image formation You should know

More information

CSE528 Computer Graphics: Theory, Algorithms, and Applications

CSE528 Computer Graphics: Theory, Algorithms, and Applications CSE528 Computer Graphics: Theor, Algorithms, and Applications Hong Qin State Universit of New York at Ston Brook (Ston Brook Universit) Ston Brook, New York 794--44 Tel: (63)632-845; Fa: (63)632-8334 qin@cs.sunsb.edu

More information

Image stitching. Digital Visual Effects Yung-Yu Chuang. with slides by Richard Szeliski, Steve Seitz, Matthew Brown and Vaclav Hlavac

Image stitching. Digital Visual Effects Yung-Yu Chuang. with slides by Richard Szeliski, Steve Seitz, Matthew Brown and Vaclav Hlavac Image stitching Digital Visual Effects Yung-Yu Chuang with slides by Richard Szeliski, Steve Seitz, Matthew Brown and Vaclav Hlavac Image stitching Stitching = alignment + blending geometrical registration

More information

DD2423 Image Analysis and Computer Vision IMAGE FORMATION. Computational Vision and Active Perception School of Computer Science and Communication

DD2423 Image Analysis and Computer Vision IMAGE FORMATION. Computational Vision and Active Perception School of Computer Science and Communication DD2423 Image Analysis and Computer Vision IMAGE FORMATION Mårten Björkman Computational Vision and Active Perception School of Computer Science and Communication November 8, 2013 1 Image formation Goal:

More information

Projections. Brian Curless CSE 457 Spring Reading. Shrinking the pinhole. The pinhole camera. Required:

Projections. Brian Curless CSE 457 Spring Reading. Shrinking the pinhole. The pinhole camera. Required: Reading Required: Projections Brian Curless CSE 457 Spring 2013 Angel, 5.1-5.6 Further reading: Fole, et al, Chapter 5.6 and Chapter 6 David F. Rogers and J. Alan Adams, Mathematical Elements for Computer

More information

2D/3D Geometric Transformations and Scene Graphs

2D/3D Geometric Transformations and Scene Graphs 2D/3D Geometric Transformations and Scene Graphs Week 4 Acknowledgement: The course slides are adapted from the slides prepared by Steve Marschner of Cornell University 1 A little quick math background

More information