Domain. operations. Image Warping and Morphing. Domain transform. Transformation. BIL721: Computational Photography!
|
|
- Darcy Douglas
- 5 years ago
- Views:
Transcription
1 Image Warping and Morphing Domain Photo by Jeffrey Martin BIL721: Computational Photography! Aykut Erdem! Spring 2015, Lecture 7! Hacettepe University! Computer Vision Lab (HUCVL)! operations Domain transform Apply a function f from R 2 to R 2 to the image domain if (y, x) had color c in the input, f(y, x) has color c in the output Transformation Simple parametric transformations linear, affine, perspective, etc translation! rotation! aspect! affine! perspective! cylindrical!
2 Warping Imagine your image is made of rubber Warp the rubber Application of warping: weight loss Liquify in photoshop
3 Domain transform issues Apply a function f from R2 to R2 to the image domain looks easy enough But two big issues: which direction do we transform how do we deal with non-integer coordinates? Basic resampling And for warping: how do we specify f? Naïve scaling Take all the pixels in input and transform them to their output location im[y, x] => out[k*y, k*x] Use the inverse transform!!!!! Main loop on output pixels out[y, x] <=im[y/k, x/k] def scalebad(im, k): out = constantim(im.shape[0]*k, im.shape[1]*k, 0) for y, x in imiter(im): out[k*y, k*x]= im[y, x] return out def scalewithinverse(im, k): out = constantim(im.shape[0]*k, im.shape[1]*k, 0.0) for y, x in imiter(out): out[y,x]=im[y/k, x/k] return out
4 Remaining problem A little too blocky Because we round to the nearest integer pixel coordinates called nearest neighbor reconstruction Linear reconstruction im is now a 1D array along x reconstruct im[1.3] =0.7*im[1]+0.3*im[2] Bilinear reconstruction Recall nearest neighbor Take 4 nearest neighbors Weight according to x & y fractional coordinates Can be done using two 1D linear reconstructions along x then y (or y then x)
5 Bilinear Take home messages Main loop over OUTPUT pixels Makes sure you cover all of them Use inverse transform Reconstruction makes a difference Linear much better than nearest neighbor Lookup Better reconstruction Bilinear Consider more than 4 pixels: bicubic, Lanczos, etc. Try to sharpen edges Use training database of low-res/high-res pairs
6 Bicubic (Photoshop) Ignore small color issues Bill Freeman s super-resolution Important scientific question How to turn Dr. Jekyll into Mr. Hyde? How to turn a man into a werewolf? Warping & Powerpoint cross-fading? Morphing
7 Important scientific question How to turn Dr. Jekyll into Mr. Hyde? How to turn a man into a werewolf? Powerpoint cross-fading? Digression: old metamorphoses Unless I m mistaken, both employ the trick of making already-applied makeup turn visible via changes in the color of the lighting, something that works only in black-and-white cinematography. It s an interesting alternative to the more familiar Wolf Man time-lapse dissolves. This technique was used to great effect on Fredric March in Rouben Mamoulian s 1932 film of Dr. Jekyll and Mr. Hyde, although Spencer Tracy eschewed extreme makeup for his 1941 portrayal. or Image Warping and Morphing? From An American Werewolf in London Demo of morphing Jekyll & Hide 1932: 35:13 ch18 1:06:45 ch19 1:17:50 Jekyll & Hide 1941: ch20 1:25:13
8 Challenge Smoothly transform a face into another Related: slow motion interpolation interpolate between key frames Averaging images Cross-fading Pretty much the compositing equation C=t F +(1-t) B Problem with cross fading Features (eyes, mouth, etc) are not aligned It is probably not possible to get a global alignment We need to interpolate the LOCATION of features domain transform! Averaging vectors (location) P & Q are two 2D points (in the domain ) V= t P + (1-t) Q P V Q
9 Warping Move pixel spatially: C (x,y)=c(f(x,y)) Leave colors unchanged Warping Deform the domain of images (not range) Central to morphing Also useful for Optical aberration correction Video stabilization Slimming people down Recap Color (range) interpolation: C=t F +(1-t) B Location (domain) interpolation: V= t P + (1-t) Q Warping: C (x,y)=c(f(x,y)) Morphing combine both For each pixel Transform its location like a vector (domain) Then linearly interpolate like an image (range)
10 Morphing Input: two images I 0 and I N Expected output: image sequence I i, with i 1..N-1 User specifies sparse correspondences on the images Pairs of vectors {(P 0 j, P N j)} Morphing For each intermediate frame I t Interpolate feature locations P t i= (1- t) P 0 i + t P 1 i Perform two warps: one for I 0, one for I 1 Deduce a dense warp field from the pairs of features Warp the pixels Linearly interpolate the two warped images t=0 t=1 t=0.5 Warping Imagine your image is made of rubber warp the rubber Warping No prairie dogs were armed when creating this image
11 Warping Assume we are given the spatial mapping How do we compute the warped image? Careful: warp vs. inverse warp How do you perform a given warp: Forward warp For each input pixel, compute output location and copy color there Forward warp and gaps Careful: warp vs. inverse warp Gap How do you perform a given warp: Forward warp Potential gap problems Inverse lookup the most useful For each output pixel Lookup color at inverse-warped location in input
12 Warping in action Warping in action! +" +" Target! Source! Target! Source! Slide by Tamara Berg =! Result! Slide by Tamara Berg User clicks on 4 points in target, 4 points in source.! Find best affine transformation between source subimg and target subimg.! Transform the source subimg accordingly.! Insert the transformed source subimg into the target image.!! Warping in action! Warping in action +" Target! Source! Slide by Tamara Berg =! Result! Slide by Tamara Berg HP commercial!
13 Image Morphing - Women in Art video Morphing = Object Averaging Slide by Tamara Berg 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! Usually required user/artist input! Idea #1: Cross-Dissolve Idea #2: Align, then cross-disolve Interpolate whole images:! Image halfway = (1 - t)*image 1 + t*image 2! This is called cross-dissolve in film industry! But what is the images are not aligned?! Align first, then cross-dissolve! Alignment using global warp picture still valid!
14 Jason Salavon: The Late Night Triad! Jason Salavon: 100 Special Moments! Slide by Charles R. Dyer Slide by Charles R. Dyer Dog Averaging Idea #3: Local warp, then cross-dissolve What to do?! Cross-dissolve doesn t work! Global alignment doesn t work! Cannot be done with a global transformation (e.g. affine)! Any ideas?! Feature matching! Nose to nose, tail to tail, etc.! This is a local (non-parametric) warp! Morphing procedure:! For every t,! 1. Find the average shape (the mean dog!)! local warping! 2. Find the average color! Cross-dissolve the warped images!
15 Local (non-parametric) Image Warping Image Warping non-parametric Move control points to specify a spline warp! Spline produces a smooth vector field! Need to specify a more detailed warp function! Global warps were functions of a few (2, 4, 8) parameters! Non-parametric warps u(x, y) and v(x, y) can be defined independently for every single location x, y! Once we know vector field u, v we can easily warp each pixel (use backward warping with interpolation)! Warp specification - dense Warp specification - sparse How can we specify the warp?! Specify corresponding spline control points! interpolate to a complete warping function! How can we specify the warp?! Specify corresponding points! interpolate to a complete warping function! How do we do it?!! But we want to specify only a few points, not a grid! How do we go from feature points to pixels?!
16 Warp as interpolation We are looking for a warping field A function that given a 2D point, returns a warped 2D point We have a sparse number of correspondences These specify values of the warping field This is an interpolation problem Given sparse data, find smooth function Interpolation in 1D You know the function at a sparse set of points Simplest interpolation? Piecewise linear! Interpolation in 1D What is that function we interpolate? Warp (absolute or relative displacement) In 1D, pairs Now what about 2D What is the equivalent of piecewise linear in 2D? What is the equivalent of a segment? Triangles and triangulation! Coordinate in image 1 Coordinate in image 0
17 Triangular Mesh Triangulations A triangulation of set of points in the plane is a partition of the convex hull to triangles whose vertices are the points, and do not contain other points.! 1. Input correspondences at key 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 separately from source to destination! How do we warp a triangle?! 3 points = affine warp! Just like texture mapping! There are an exponential number of triangulations of a point set.! An O(n 3 ) Triangulation Algorithm Quality Triangulations Repeat until impossible:! Select two sites.! Let α(t) = (α 1, α 2,.., α 3t ) be the vector of angles in the triangulation T in increasing order.! If the edge connecting them does not intersect previous edges, keep it.! A triangulation T 1 will be better than T 2 if the smallest angle of T 1 is larger than the smallest angle of T 2! The Delaunay triangulation is the best (maximizes the smallest angles)! good bad
18 ! Improving a Triangulation In any convex quadrangle, an edge flip is possible. If this flip improves the triangulation locally, it also improves the global triangulation.! Illegal Edges Lemma: An edge pq is illegal iff one of its opposite vertices is inside the circle defined by the other three vertices.! Proof: By Thales theorem.! p q If an edge flip improves the triangulation, the first edge is called illegal.! Theorem: A Delaunay triangulation does not contain illegal edges.! Corollary: A triangle is Delaunay iff the circle through its vertices is empty of other sites.! Corollary: The Delaunay triangulation is not unique if more than three sites are co-circular.! Naïve Delaunay Algorithm Delaunay Triangulation by Duality Start with an arbitrary triangulation. Flip any illegal edge until no more exist.! Could take a long time to terminate.! Draw the dual to the Voronoi diagram by connecting each two neighboring sites in the Voronoi diagram.! The DT may be constructed in O(nlogn) time! This is what Matlab s delaunay function uses!
19 ! Triangular Mesh Example: warping triangles B B?# 1. Input correspondences at key 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 separately from source to destination! How do we warp a triangle?! 3 points = affine warp! A Source T(x,y)# C A Destination Given two triangles: ABC and A B C in 2D (12 numbers)! Need to find transform T to transfer all pixels from one to the other.! How can we compute the transformation matrix:! & x' # & a $ y'! = $ d $! $ $ % 1!" $ % 0 b e 0 c #& x# f! $ y!! $! 1! " $ % 1! " C Image Morphing Warp interpolation We know how to warp one image into the other, but how do we create a morphing sequence?! 1. Create an intermediate shape (by interpolation)! 2. Warp both images towards it! 3. Cross-dissolve the colors in the newly warped images! How do we create an intermediate warp at time t?! Assume t = [0,1]! Simple linear interpolation of each feature pair! (1-t)*p 1 +t*p 0 for corresponding features p 0 and p 1!
20 Slide by Fredo Durand and Bill Freeman Morphing & matting Extract foreground first to avoid artifacts in the background! Slide by Tamara Berg Summary of morphing 1. Define corresponding points! 2. Define triangulation on points! Use same triangulation for both images! 3. For each t = 0:step:1! a. Compute the average shape (weighted average of points)! b. For each triangle in the average shape! Get the affine projection to the corresponding triangles in each image! For each pixel in the triangle, find the corresponding points in each image and set value to weighted average! c. Save the image as the next frame of the sequence! Beier and Neely Specify warp based on pairs of segments Feature-Based Metamorphosis, SIGGRAPH 1992 Used in Michael Jackson Black and White Music Video Pset 2!! Segment-based warping
21 Problem statement Inputs: One image, two lists of segments before and after, in the image domain Goal: warp the image following the displacement of the segments Idea Each before/after pair of segment implies a planar transformation simple and linear Single line transforms Idea Test Each before/after pair of segment implies a planar transformation simple and linear Single line transforms
22 Idea Transform wrt 1 segment Each before/after pair of segment implies a planar transformation Then take weighted average of transformations Define a coordinate system with respect to segment 1 dimension, u, along segment 1 dimension, v, orthogonal to segment Compute u, v in one image tation The after one, because we use the inverse transform find the corresponding transformations based on a single l find the X in the source image for that transformations are possible. Compute destinationlmage(x) point corresponding to u, v in secondaffine image shears are not possible to specify. = sourcelmage(x ) Comp For each pixel X in the destination image but different positions specifie U,V U,V Q Q b v Single line transforms Transform wrt 2 lines x u 1V x I P Destination Imw-ze Source Image Figure 1: Single line ptiir In Figure 1, X is the location to sample the source image for the pixel at X in the destination image. The location is at a distance v (the distance from the line to the pixel in the source image) from the line P Q. and at a proportion u along that line. Computing u, v 3.3 Transformation with Mult Multiple pairs of lines specify more weighting of the coordinate transfor formed. A position Xi is calculated displacement Di=Xi - Xis the differ inthesource and destination image those displacements is calculated. T distance from X to the line, This av the current pixel location X to deter in the source image. The single Iine of the multiple Iinecase, assuming anywhere in the image. The weight strongest when the pixel is exactly on the pixel is from it. The equation w Transforming a point given u, v The algorithm transforms each pikel coordinate by a rotation, translation, itnd/or a scale, thereby transforming the whole image. All of the pixels along the line in the source image are copied on top of the line in the destination image. Because the u coordinate is normalized try the length of the line, and the v coordinate is not (it is always distance in pixels), the images is scaled along the direction of the lines by the ratio of the lengths of the lines, The scale is only along the direction of the line. We have tried scaling the v coordinate by the length of the line, so that the scaling is always uniform, but found that the given formulation is more useful. X =P +up Q+v perpendicular(p Q )/ P Q u = PX.PQ/ PQ 2 is the length of a line. where The u component is scaled according to segment scaling this way u is 0 at P and 1 at Q pixel to the line, and a, b, and p are change the relative effect of the line But v is absolute (see output3) v=px.perpendicular(pq)/ PQ If a is barely greater than zero, then They say they tried to scale v as well but it didn t work the pixel is zero, the strength is nea where perpendicular(pq) is PQ rotated by 90 degrees, a, the user knows that pixels on the as well tation tation of an image. All of a wants them. Values larger than that and has length PQ find the corresponding transformations based on a single line pair are affine, but not all find the corresponding transformations based on a with singlelessline pair are affine,thb in,g,but precise control. find the X in the source image for that affine transformations are possible. In particular, uniform scales and find the X in the source image for that affine transformationsrelative are possible. uniform strength In of particular, different lines Fa unlike u which is normalized, v is in distance units shears are not possible to specify. shears are not possible specify. destinationlmage(x) = sourcelmage(x ) destinationlmage(x) = sourcelmage(x ) then toevery pixel will be affected on Computer For each pixel X in the destination image but different positions specifies Graphics, 26, 2, July 1992 a translation For each pixel X in the destination U,V u 1V x I P Destination Imw-ze specifies 26, a translation Source Image Figure 1: Single line ptiir In Figure 1, X is the location to sample the source image for the pixel at X in the destination image. The location is at a distance v zero, then each pixel will be affected Q Q 3.3 Transformation with Pairs of Lin 3.3 Transformation with Multiple Pairs of Lines bin the rangemultiple [().5, 2] are the most u in the range more [0, 1];complex if it is zero, then Multiple pairs of lines specify transform Multiple pairs of lines specify more complex transformations. A if it is one,transformations then longer lines V x weighting of the coordinate for have each al weighting of the coordinate transformations for each line is perv x lines, formed. A position shorter Xi is calculated for each pair of lin formed. A position Xi is calculated for each pair of lines. The I I I I I I I I 1 Ill I I I I I I I 1I I I displacement Di=Xi - Xis the difference between the p displacement Di=Xi - Xis the difference between the pixel location I I I I ]ihtlhtli!llllllllllll lli\l]ll1/11 inthesource and destination The multiple line algorithm is as foa images, anda weighted inthesource and destination images, anda weighted average of u those displacements is calculated. The weight is determ those displacements is calculated. The weight is determined by the For line, each This pixel average X in thedisplacement destination distance from X to the distance from X to the line, This average displacement is added to = (0,0) the position X the current pixel locationdsum X to determine the current pixel location X to determine the position X to sample P () falls out as a in the source image. Therveightsunr single Iine =case in the source image. The single Iine case falls out as a special case Source Image Destination Imw-ze each line Qi of the multiple Iinecase, For assuming thepiweight never g of the multiple Iinecase, assuming the weight never goes to zero U,V based on Pilin calculate anywhere in the image. The weight aisigned to each anywhere in the image. The weight aisigned to each line should be FigureI 1: Single line ptiir U,V calculate based strongest when the pixel is exactly on thex i line, and on weake strongest when the pixel is exactly on the line, and weaker the further calculate displacement Di In Figure 1, X is the location to sample the source image for the the pixel is from it. The equation wc use is the pixel is from it. The equation wc use is,, rfist = shortest distance fr pixel at X in the destination image. The location is at a distance v b x positions Graphics, U,V Q v but different Computer U,V U,V Q image length b 1- Single line transforms
23 Multiple segments For each point X For each segment pair sbefore[i], safter[i] Transform X into X i Compute weighted average of all transformed X i weight according to distance to segments Morphing length p b weight = a + dist where a, b, p control the influence Transform wrt 2 lines Input images Segments slide by Fredo Duran slide by Fredo Duran
24 Interpolate segments Warp images to segments[t] t=0.5 The red segments are at the same location in both images Image features such as eyes are aligned Warp images to segments[t] Interpolate color The red segments are at the same location in both images Image features such as eyes are aligned
25 Interpolate color Result Recap For each intermediate frame I t Interpolate segment locations y t i= (1- t) x 0 i + t x 1 i Michael Jackson BW Uses the very technique we just studied! Perform two warps: one for I 0, one for I 1 Deduce a dense warp field from the pairs of features Warp the pixels Linearly interpolate the two warped images
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 informationImage 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 informationImage 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 informationImage 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 informationThe 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 informationLecture 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 informationImage 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 informationImage 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 informationImage 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 informationWarping, Morphing and Mosaics
Computational Photograph and Video: Warping, Morphing and Mosaics Prof. Marc Pollefes Dr. Gabriel Brostow Toda s schedule Last week s recap Warping Morphing Mosaics Toda s schedule Last week s recap Warping
More informationImage 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 informationImage 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 informationWarps, Filters, and Morph Interpolation
Warps, Filters, and Morph Interpolation Material in this presentation is largely based on/derived from slides originally by Szeliski, Seitz and Efros Brent M. Dingle, Ph.D. 2015 Game Design and Development
More informationCS4670: 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 informationProf. 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 informationVoronoi diagrams Delaunay Triangulations. Pierre Alliez Inria
Voronoi diagrams Delaunay Triangulations Pierre Alliez Inria Voronoi Diagram Voronoi Diagram Voronoi Diagram The collection of the non-empty Voronoi regions and their faces, together with their incidence
More informationComputational Geometry
Lecture 12: Lecture 12: Motivation: Terrains by interpolation To build a model of the terrain surface, we can start with a number of sample points where we know the height. Lecture 12: Motivation: Terrains
More informationImage Morphing. Michael Kazhdan ( /657) HB Ch Feature Based Image Metamorphosis, Beier and Neely 1992
Image Morphing Michael Kazhdan (601.457/657) HB Ch. 16.5 Feature Based Image Metamorphosis, Beier and Neely 1992 Image Morphing Animate transition between two images H&B Figure 16.9 Image Morphing Animate
More informationWarping. 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 informationPractical Image and Video Processing Using MATLAB
Practical Image and Video Processing Using MATLAB Chapter 7 Geometric operations What will we learn? What do geometric operations do to an image and what are they used for? What are the techniques used
More informationWhat will we learn? Geometric Operations. Mapping and Affine Transformations. Chapter 7 Geometric Operations
What will we learn? Lecture Slides ME 4060 Machine Vision and Vision-based Control Chapter 7 Geometric Operations What do geometric operations do to an image and what are they used for? What are the techniques
More informationBroad field that includes low-level operations as well as complex high-level algorithms
Image processing About Broad field that includes low-level operations as well as complex high-level algorithms Low-level image processing Computer vision Computational photography Several procedures and
More informationCS4670: 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 informationAnnouncements. 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 informationUnderstanding Gridfit
Understanding Gridfit John R. D Errico Email: woodchips@rochester.rr.com December 28, 2006 1 Introduction GRIDFIT is a surface modeling tool, fitting a surface of the form z(x, y) to scattered (or regular)
More informationLast 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 informationEECS 556 Image Processing W 09. Interpolation. Interpolation techniques B splines
EECS 556 Image Processing W 09 Interpolation Interpolation techniques B splines What is image processing? Image processing is the application of 2D signal processing methods to images Image representation
More informationImage Warping and Morphing
Image Warping and Morphing Paul Heckbert, Sept. 1999 15-869, Image-Based Modeling and Rendering Image Warping Image warping = rearranging the pixels of a picture. Also called image distortion, geometric
More informationImage 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 informationDelaunay Triangulations
Delaunay Triangulations (slides mostly by Glenn Eguchi) Motivation: Terrains Set of data points A R 2 Height ƒ(p) defined at each point p in A How can we most naturally approximate height of points not
More informationComputational Geometry Lecture Delaunay Triangulation
Computational Geometry Lecture Delaunay Triangulation INSTITUTE FOR THEORETICAL INFORMATICS FACULTY OF INFORMATICS 7.12.2015 1 Modelling a Terrain Sample points p = (x p, y p, z p ) Projection π(p) = (p
More informationImage Warping and Morphing
Image Warping and Morphing OUTLINE: Image Warping Morphing Beier and Neely s Morphing Method Image Warping Point processing and filtering don t move pixels around. Image warping = rearranging the pixels
More informationInteractive 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 informationCS 532: 3D Computer Vision 14 th Set of Notes
1 CS 532: 3D Computer Vision 14 th Set of Notes Instructor: Philippos Mordohai Webpage: www.cs.stevens.edu/~mordohai E-mail: Philippos.Mordohai@stevens.edu Office: Lieb 215 Lecture Outline Triangulating
More informationImage 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 informationImage Morphing. The user is responsible for defining correspondences between features Very popular technique. since Michael Jackson s clips
Image Morphing Image Morphing Image Morphing Image Morphing The user is responsible for defining correspondences between features Very popular technique since Michael Jackson s clips Morphing Coordinate
More informationImage Warping: A Review. Prof. George Wolberg Dept. of Computer Science City College of New York
Image Warping: A Review Prof. George Wolberg Dept. of Computer Science City College of New York Objectives In this lecture we review digital image warping: - Geometric transformations - Forward inverse
More informationImage 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 informationIntroduction 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 informationImage 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 information2D Geometry. Pierre Alliez Inria Sophia Antipolis
2D Geometry Pierre Alliez Inria Sophia Antipolis Outline Sample problems Polygons Graphs Convex hull Voronoi diagram Delaunay triangulation Sample Problems Line Segment Intersection Theorem: Segments (p
More informationEE795: Computer Vision and Intelligent Systems
EE795: Computer Vision and Intelligent Systems Spring 2012 TTh 17:30-18:45 FDH 204 Lecture 14 130307 http://www.ee.unlv.edu/~b1morris/ecg795/ 2 Outline Review Stereo Dense Motion Estimation Translational
More informationMotion. 1 Introduction. 2 Optical Flow. Sohaib A Khan. 2.1 Brightness Constancy Equation
Motion Sohaib A Khan 1 Introduction So far, we have dealing with single images of a static scene taken by a fixed camera. Here we will deal with sequence of images taken at different time intervals. Motion
More informationBIL Computer Vision Apr 16, 2014
BIL 719 - Computer Vision Apr 16, 2014 Binocular Stereo (cont d.), Structure from Motion Aykut Erdem Dept. of Computer Engineering Hacettepe University Slide credit: S. Lazebnik Basic stereo matching algorithm
More informationSpecification and Computation of Warping and Morphing Transformations. Bruno Costa da Silva Microsoft Corp.
Specification and Computation of Warping and Morphing Transformations Bruno Costa da Silva Microsoft Corp. Morphing Transformations Representation of Transformations Specification of Transformations Specification
More informationInteractive Deformation with Triangles
Interactive Deformation with Triangles James Dean Palmer and Ergun Akleman Visualization Sciences Program Texas A&M University Jianer Chen Department of Computer Science Texas A&M University Abstract In
More informationDigital Geometry Processing
Digital Geometry Processing Spring 2011 physical model acquired point cloud reconstructed model 2 Digital Michelangelo Project Range Scanning Systems Passive: Stereo Matching Find and match features in
More informationAnnouncements. 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 informationEE795: Computer Vision and Intelligent Systems
EE795: Computer Vision and Intelligent Systems Spring 2012 TTh 17:30-18:45 FDH 204 Lecture 10 130221 http://www.ee.unlv.edu/~b1morris/ecg795/ 2 Outline Review Canny Edge Detector Hough Transform Feature-Based
More informationComputer Vision Projective Geometry and Calibration. Pinhole cameras
Computer Vision Projective Geometry and Calibration Professor Hager http://www.cs.jhu.edu/~hager Jason Corso http://www.cs.jhu.edu/~jcorso. Pinhole cameras Abstract camera model - box with a small hole
More informationGeometric Modeling. Bing-Yu Chen National Taiwan University The University of Tokyo
Geometric Modeling Bing-Yu Chen National Taiwan University The University of Tokyo Surface Simplification Motivation Basic Idea of LOD Discrete LOD Continuous LOD Simplification Problem Characteristics
More informationOutline of the presentation
Surface Reconstruction Petra Surynková Charles University in Prague Faculty of Mathematics and Physics petra.surynkova@mff.cuni.cz Outline of the presentation My work up to now Surfaces of Building Practice
More informationAnnouncements. Image Matching! Source & Destination Images. Image Transformation 2/ 3/ 16. Compare a big image to a small image
2/3/ Announcements PA is due in week Image atching! Leave time to learn OpenCV Think of & implement something creative CS 50 Lecture #5 February 3 rd, 20 2/ 3/ 2 Compare a big image to a small image So
More informationStereo Vision. MAN-522 Computer Vision
Stereo Vision MAN-522 Computer Vision What is the goal of stereo vision? The recovery of the 3D structure of a scene using two or more images of the 3D scene, each acquired from a different viewpoint in
More informationCPSC 4040/6040 Computer Graphics Images. Joshua Levine
CPSC 4040/6040 Computer Graphics Images Joshua Levine levinej@clemson.edu Lecture 19 Projective Warping and Bilinear Warping Nov. 3, 2015 Agenda EC Quiz Review PA06 out Refresher from Lec18 https://en.wikipedia.org/wiki/affine_transformation
More informationDelaunay Triangulations. Presented by Glenn Eguchi Computational Geometry October 11, 2001
Delaunay Triangulations Presented by Glenn Eguchi 6.838 Computational Geometry October 11, 2001 Motivation: Terrains Set of data points A R 2 Height ƒ(p) defined at each point p in A How can we most naturally
More informationComputer Animation. Conventional Animation
Animation The term animation has a Greek (animos) as well as roman (anima) root, meaning to bring to life Life: evolution over time Conventional Animation Animation is a technique in which the illusion
More information2D Transforms. Lecture 4 CISC440/640 Spring Department of Computer and Information Science
2D Transforms Lecture 4 CISC440/640 Spring 2015 Department of Computer and Information Science Where are we going? A preview of assignment #1 part 2: The Ken Burns Effect 2 Where are we going? A preview
More informationEECS 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 informationSampling, Resampling, and Warping. COS 426, Spring 2014 Tom Funkhouser
Sampling, Resampling, and Warping COS 426, Spring 2014 Tom Funkhouser Image Processing Goal: read an image, process it, write the result input.jpg output.jpg imgpro input.jpg output.jpg histogram_equalization
More informationHow 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 informationMöbius Transformations in Scientific Computing. David Eppstein
Möbius Transformations in Scientific Computing David Eppstein Univ. of California, Irvine School of Information and Computer Science (including joint work with Marshall Bern from WADS 01 and SODA 03) Outline
More informationImage 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 informationMath background. 2D Geometric Transformations. Implicit representations. Explicit representations. Read: CS 4620 Lecture 6
Math background 2D Geometric Transformations CS 4620 Lecture 6 Read: Chapter 2: Miscellaneous Math Chapter 5: Linear Algebra Notation for sets, functions, mappings Linear transformations Matrices Matrix-vector
More informationTransforms. COMP 575/770 Spring 2013
Transforms COMP 575/770 Spring 2013 Transforming Geometry Given any set of points S Could be a 2D shape, a 3D object A transform is a function T that modifies all points in S: T S S T v v S Different transforms
More informationMosaics. 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 informationSynthesizing Realistic Facial Expressions from Photographs
Synthesizing Realistic Facial Expressions from Photographs 1998 F. Pighin, J Hecker, D. Lischinskiy, R. Szeliskiz and D. H. Salesin University of Washington, The Hebrew University Microsoft Research 1
More informationCS6670: 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 informationLecture 10: Image Descriptors and Representation
I2200: Digital Image processing Lecture 10: Image Descriptors and Representation Prof. YingLi Tian Nov. 15, 2017 Department of Electrical Engineering The City College of New York The City University of
More informationCamera Calibration. Schedule. Jesus J Caban. Note: You have until next Monday to let me know. ! Today:! Camera calibration
Camera Calibration Jesus J Caban Schedule! Today:! Camera calibration! Wednesday:! Lecture: Motion & Optical Flow! Monday:! Lecture: Medical Imaging! Final presentations:! Nov 29 th : W. Griffin! Dec 1
More information2D rendering takes a photo of the 2D scene with a virtual camera that selects an axis aligned rectangle from the scene. The photograph is placed into
2D rendering takes a photo of the 2D scene with a virtual camera that selects an axis aligned rectangle from the scene. The photograph is placed into the viewport of the current application window. A pixel
More informationImage 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 informationIntroduction to Voronoi Diagrams and Delaunay Triangulations
Introduction to Voronoi Diagrams and Delaunay Triangulations Solomon Boulos Introduction to Voronoi Diagrams and Delaunay Triangulations p.1 Voronoi Diagrams Voronoi region: V (p i ) = {x R n p i x p j
More informationDD2423 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 informationCS770/870 Spring 2017 Animation Basics
Preview CS770/870 Spring 2017 Animation Basics Related material Angel 6e: 1.1.3, 8.6 Thalman, N and D. Thalman, Computer Animation, Encyclopedia of Computer Science, CRC Press. Lasseter, J. Principles
More informationCS770/870 Spring 2017 Animation Basics
CS770/870 Spring 2017 Animation Basics Related material Angel 6e: 1.1.3, 8.6 Thalman, N and D. Thalman, Computer Animation, Encyclopedia of Computer Science, CRC Press. Lasseter, J. Principles of traditional
More informationStereo vision. Many slides adapted from Steve Seitz
Stereo vision Many slides adapted from Steve Seitz What is stereo vision? Generic problem formulation: given several images of the same object or scene, compute a representation of its 3D shape What is
More informationN-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 informationCSE 554 Lecture 7: Deformation II
CSE 554 Lecture 7: Deformation II Fall 2011 CSE554 Deformation II Slide 1 Review Rigid-body alignment Non-rigid deformation Intrinsic methods: deforming the boundary points An optimization problem Minimize
More informationImage 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 informationCOMP 175 COMPUTER GRAPHICS. Ray Casting. COMP 175: Computer Graphics April 26, Erik Anderson 09 Ray Casting
Ray Casting COMP 175: Computer Graphics April 26, 2018 1/41 Admin } Assignment 4 posted } Picking new partners today for rest of the assignments } Demo in the works } Mac demo may require a new dylib I
More informationTranslations. Geometric Image Transformations. Two-Dimensional Geometric Transforms. Groups and Composition
Geometric Image Transformations Algebraic Groups Euclidean Affine Projective Bovine Translations Translations are a simple family of two-dimensional transforms. Translations were at the heart of our Sprite
More informationChapter 18. Geometric Operations
Chapter 18 Geometric Operations To this point, the image processing operations have computed the gray value (digital count) of the output image pixel based on the gray values of one or more input pixels;
More informationVoronoi Diagrams and Delaunay Triangulation slides by Andy Mirzaian (a subset of the original slides are used here)
Voronoi Diagrams and Delaunay Triangulation slides by Andy Mirzaian (a subset of the original slides are used here) Voronoi Diagram & Delaunay Triangualtion Algorithms Divide-&-Conquer Plane Sweep Lifting
More informationCSE 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 informationProblem Set 4. Assigned: March 23, 2006 Due: April 17, (6.882) Belief Propagation for Segmentation
6.098/6.882 Computational Photography 1 Problem Set 4 Assigned: March 23, 2006 Due: April 17, 2006 Problem 1 (6.882) Belief Propagation for Segmentation In this problem you will set-up a Markov Random
More informationImage Base Rendering: An Introduction
Image Base Rendering: An Introduction Cliff Lindsay CS563 Spring 03, WPI 1. Introduction Up to this point, we have focused on showing 3D objects in the form of polygons. This is not the only approach to
More informationMatching. Compare region of image to region of image. Today, simplest kind of matching. Intensities similar.
Matching Compare region of image to region of image. We talked about this for stereo. Important for motion. Epipolar constraint unknown. But motion small. Recognition Find object in image. Recognize object.
More informationImage preprocessing in spatial domain
Image preprocessing in spatial domain Sampling theorem, aliasing, interpolation, geometrical transformations Revision:.4, dated: May 25, 26 Tomáš Svoboda Czech Technical University, Faculty of Electrical
More informationImage preprocessing in spatial domain
Image preprocessing in spatial domain Sampling theorem, aliasing, interpolation, geometrical transformations Revision:.3, dated: December 7, 25 Tomáš Svoboda Czech Technical University, Faculty of Electrical
More informationCIS581: Computer Vision and Computational Photography Project 2: Face Morphing and Blending Due: Oct. 17, 2017 at 3:00 pm
CIS581: Computer Vision and Computational Photography Project 2: Face Morphing and Blending Due: Oct. 17, 2017 at 3:00 pm Instructions This is an individual project. Individual means each student must
More information6.837 LECTURE 7. Lecture 7 Outline Fall '01. Lecture Fall '01
6.837 LECTURE 7 1. Geometric Image Transformations 2. Two-Dimensional Geometric Transforms 3. Translations 4. Groups and Composition 5. Rotations 6. Euclidean Transforms 7. Problems with this Form 8. Choose
More informationVoronoi diagram and Delaunay triangulation
Voronoi diagram and Delaunay triangulation Ioannis Emiris & Vissarion Fisikopoulos Dept. of Informatics & Telecommunications, University of Athens Computational Geometry, spring 2015 Outline 1 Voronoi
More information2D Spline Curves. CS 4620 Lecture 18
2D Spline Curves CS 4620 Lecture 18 2014 Steve Marschner 1 Motivation: smoothness In many applications we need smooth shapes that is, without discontinuities So far we can make things with corners (lines,
More informationComputational Geometry: Lecture 5
Computational Geometry: Lecture 5 Don Sheehy January 29, 2010 1 Degeneracy In many of the algorithms that we have discussed so far, we have run into problems when that input is somehow troublesome. For
More informationBoundary descriptors. Representation REPRESENTATION & DESCRIPTION. Descriptors. Moore boundary tracking
Representation REPRESENTATION & DESCRIPTION After image segmentation the resulting collection of regions is usually represented and described in a form suitable for higher level processing. Most important
More informationComputational Geometry
Computational Geometry 600.658 Convexity A set S is convex if for any two points p, q S the line segment pq S. S p S q Not convex Convex? Convexity A set S is convex if it is the intersection of (possibly
More information2D Image Morphing using Pixels based Color Transition Methods
2D Image Morphing using Pixels based Color Transition Methods H.B. Kekre Senior Professor, Computer Engineering,MP STME, SVKM S NMIMS University, Mumbai,India Tanuja K. Sarode Asst.Professor, Thadomal
More informationTextures and normals in ray tracing
Textures and normals in ray tracing CS 4620 Lecture 7 1 Texture mapping Objects have properties that vary across the surface 2 Texture Mapping So we make the shading parameters vary across the surface
More informationDigital Geometry Processing Parameterization I
Problem Definition Given a surface (mesh) S in R 3 and a domain find a bective F: S Typical Domains Cutting to a Disk disk = genus zero + boundary sphere = closed genus zero Creates artificial boundary
More information