Domain. operations. Image Warping and Morphing. Domain transform. Transformation. BIL721: Computational Photography!

Size: px
Start display at page:

Download "Domain. operations. Image Warping and Morphing. Domain transform. Transformation. BIL721: Computational Photography!"

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 : 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 2017 Women in Art video http://youtube.com/watch?v=nudion-_hxs Image Warping

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 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

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

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 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

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

Warping, Morphing and Mosaics

Warping, 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 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/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

Warps, Filters, and Morph Interpolation

Warps, 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 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

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

Voronoi diagrams Delaunay Triangulations. Pierre Alliez Inria

Voronoi 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 information

Computational Geometry

Computational 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 information

Image Morphing. Michael Kazhdan ( /657) HB Ch Feature Based Image Metamorphosis, Beier and Neely 1992

Image 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 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

Practical Image and Video Processing Using MATLAB

Practical 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 information

What will we learn? Geometric Operations. Mapping and Affine Transformations. Chapter 7 Geometric Operations

What 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 information

Broad field that includes low-level operations as well as complex high-level algorithms

Broad 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 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

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

Understanding Gridfit

Understanding 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 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

EECS 556 Image Processing W 09. Interpolation. Interpolation techniques B splines

EECS 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 information

Image Warping and Morphing

Image 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 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

Delaunay Triangulations

Delaunay 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 information

Computational Geometry Lecture Delaunay Triangulation

Computational 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 information

Image Warping and Morphing

Image 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 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

CS 532: 3D Computer Vision 14 th Set of Notes

CS 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 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 Morphing. The user is responsible for defining correspondences between features Very popular technique. since Michael Jackson s clips

Image 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 information

Image 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 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 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

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

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

2D Geometry. Pierre Alliez Inria Sophia Antipolis

2D 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 information

EE795: Computer Vision and Intelligent Systems

EE795: 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 information

Motion. 1 Introduction. 2 Optical Flow. Sohaib A Khan. 2.1 Brightness Constancy Equation

Motion. 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 information

BIL Computer Vision Apr 16, 2014

BIL 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 information

Specification 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. Specification and Computation of Warping and Morphing Transformations Bruno Costa da Silva Microsoft Corp. Morphing Transformations Representation of Transformations Specification of Transformations Specification

More information

Interactive Deformation with Triangles

Interactive 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 information

Digital Geometry Processing

Digital 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 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

EE795: Computer Vision and Intelligent Systems

EE795: 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 information

Computer Vision Projective Geometry and Calibration. Pinhole cameras

Computer 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 information

Geometric Modeling. Bing-Yu Chen National Taiwan University The University of Tokyo

Geometric 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 information

Outline of the presentation

Outline 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 information

Announcements. Image Matching! Source & Destination Images. Image Transformation 2/ 3/ 16. Compare a big image to a small image

Announcements. 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 information

Stereo Vision. MAN-522 Computer Vision

Stereo 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 information

CPSC 4040/6040 Computer Graphics Images. Joshua Levine

CPSC 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 information

Delaunay Triangulations. Presented by Glenn Eguchi Computational Geometry October 11, 2001

Delaunay 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 information

Computer Animation. Conventional Animation

Computer 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 information

2D Transforms. Lecture 4 CISC440/640 Spring Department of Computer and Information Science

2D 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 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

Sampling, Resampling, and Warping. COS 426, Spring 2014 Tom Funkhouser

Sampling, 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 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

Möbius Transformations in Scientific Computing. David Eppstein

Mö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 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

Math background. 2D Geometric Transformations. Implicit representations. Explicit representations. Read: CS 4620 Lecture 6

Math 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 information

Transforms. COMP 575/770 Spring 2013

Transforms. 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 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

Synthesizing Realistic Facial Expressions from Photographs

Synthesizing 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 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

Lecture 10: Image Descriptors and Representation

Lecture 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 information

Camera Calibration. Schedule. Jesus J Caban. Note: You have until next Monday to let me know. ! Today:! Camera calibration

Camera 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 information

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

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 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 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

Introduction to Voronoi Diagrams and Delaunay Triangulations

Introduction 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 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

CS770/870 Spring 2017 Animation Basics

CS770/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 information

CS770/870 Spring 2017 Animation Basics

CS770/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 information

Stereo vision. Many slides adapted from Steve Seitz

Stereo 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 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

CSE 554 Lecture 7: Deformation II

CSE 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 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

COMP 175 COMPUTER GRAPHICS. Ray Casting. COMP 175: Computer Graphics April 26, Erik Anderson 09 Ray Casting

COMP 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 information

Translations. Geometric Image Transformations. Two-Dimensional Geometric Transforms. Groups and Composition

Translations. 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 information

Chapter 18. Geometric Operations

Chapter 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 information

Voronoi 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 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 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

Problem Set 4. Assigned: March 23, 2006 Due: April 17, (6.882) Belief Propagation for Segmentation

Problem 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 information

Image Base Rendering: An Introduction

Image 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 information

Matching. Compare region of image to region of image. Today, simplest kind of matching. Intensities similar.

Matching. 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 information

Image preprocessing in spatial domain

Image 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 information

Image preprocessing in spatial domain

Image 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 information

CIS581: 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 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 information

6.837 LECTURE 7. Lecture 7 Outline Fall '01. Lecture Fall '01

6.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 information

Voronoi diagram and Delaunay triangulation

Voronoi 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 information

2D Spline Curves. CS 4620 Lecture 18

2D 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 information

Computational Geometry: Lecture 5

Computational 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 information

Boundary descriptors. Representation REPRESENTATION & DESCRIPTION. Descriptors. Moore boundary tracking

Boundary 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 information

Computational Geometry

Computational 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 information

2D Image Morphing using Pixels based Color Transition Methods

2D 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 information

Textures and normals in ray tracing

Textures 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 information

Digital Geometry Processing Parameterization I

Digital 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