Image Quilting and Apples

Slides:



Advertisements
Similar presentations
Lapped textures Emil Praun Adam Finkelstein Hugues Hoppe
Advertisements

Filling Algorithms Pixelwise MRFsChaos Mosaics Patch segments are pasted, overlapping, across the image. Then either: Ambiguities are removed by smoothing.
Texture Symmetry A lecture by Alexey Burshtein. Definitions Regular texture is a periodic pattern containing translation symmetry and (possibly) rotation,
Andrew Nealen and Marc Alexa, Discrete Geometric Modeling Group, TU Darmstadt, 2004 Fast and High Quality Overlap Repair for Patch-Based Texture Synthesis.
Super-Resolution Texturing for Online Virtual Globes
A Robust Super Resolution Method for Images of 3D Scenes Pablo L. Sala Department of Computer Science University of Toronto.
Texture. Limitation of pixel based processing Edge detection with different threshold.
Data-driven methods: Texture (Sz 10.5) Cs129 Computational Photography James Hays, Brown, Spring 2011 Many slides from Alexei Efros.
Texture Synthesis on [Arbitrary Manifold] Surfaces Presented by: Sam Z. Glassenberg* * Several slides borrowed from Wei/Levoy presentation.
CS 691 Computational Photography
Texture. Edge detectors find differences in overall intensity. Average intensity is only simplest difference. many slides from David Jacobs.
Lapped Textures Emil Praun and Adam Finkelstien (Princeton University) Huges Hoppe (Microsoft Research) SIGGRAPH 2000 Presented by Anteneh.
Layered Texture Matting 葉展岱 范智勝. Outline  Introduction  Implementation Overview  Current Work  Reference.
Mosaics con’t CSE 455, Winter 2010 February 10, 2010.
Texture Synthesis Tiantian Liu. Definition Texture – Texture refers to the properties held and sensations caused by the external surface of objects received.
Improved Image Quilting Jeremy Long David Mould. Introduction   Goal: improve “ minimum error boundary cut ”
Maryia Kazakevich “Texture Synthesis by Patch-Based Sampling” Texture Synthesis by Patch-Based Sampling Real-Time Texture Synthesis By Patch-Based Sampling,
Lapped Textures Emil Praun Adam Finkelstein Hugues Hoppe Emil Praun Adam Finkelstein Hugues Hoppe Princeton University Microsoft Research Princeton University.
Announcements Project 4 questions? Guest lectures Thursday: Richard Ladner “tactile graphics” Next Tuesday: Jenny Yuen and Jeff Bigham.
Image Quilting for Texture Synthesis & Transfer Alexei Efros (UC Berkeley) Bill Freeman (MERL) +=
Overview of Texture Synthesis Ganesh Ramanarayanan Cornell Graphics Seminar.
Order-Independent Texture Synthesis Li-Yi Wei Marc Levoy Gcafe 1/30/2003.
Lapped Textures SIGGRAPH 2000 Emil Praun Adam Finkelstein Hugues Hoppe.
Image Quilting for Texture Synthesis and Transfer Alexei A. Efros1,2 William T. Freeman2.
Texture Synthesis on Surfaces Paper by Greg Turk Presentation by Jon Super.
Announcements For future problems sets: matlab code by 11am, due date (same as deadline to hand in hardcopy). Today’s reading: Chapter 9, except.
Original image: 512 pixels by 512 pixels. Probe is the size of 1 pixel. Picture is sampled at every pixel ( samples taken)
Texture Reading: Chapter 9 (skip 9.4) Key issue: How do we represent texture? Topics: –Texture segmentation –Texture-based matching –Texture synthesis.
Andrew Nealen and Marc Alexa, Discrete Geometric Modeling Group, TU Darmstadt, 2003 Hybrid Texture Synthesis Andrew Nealen Marc Alexa Discrete Geometric.
Near-Regular Texture Analysis and Manipulation Written by: Yanxi Liu Yanxi Liu Wen-Chieh Lin Wen-Chieh Lin James Hays James Hays Presented by: Alex Hadas.
Graphcut Texture: Image and Video Synthesis Using Graph Cuts
Overview of Back Propagation Algorithm
Image Pyramids and Blending
Texture Optimization for Example-based Synthesis
Lecture 12 Stereo Reconstruction II Lecture 12 Stereo Reconstruction II Mata kuliah: T Computer Vision Tahun: 2010.
Creating Sound Effects and Sound Textures from Examples Jim Parker, MinkHollow Media An exercise in audio synthesis.
Light Using Texture Synthesis for Non-Photorealistic Shading from Paint Samples. Christopher D. Kulla, James D. Tucek, Reynold J. Bailey, Cindy M. Grimm.
Interactive Shortest Path Part 3 An Image Segmentation Technique Jonathan-Lee Jones.
CS 6825: Binary Image Processing – binary blob metrics
Plug-in and tutorial development for GIMP- Cathy Irwin, 2004 The Development of Image Completion and Tutorial Plug-ins for the GIMP By: Cathy Irwin Supervisors:
Poisson Image Editing & Terrain Synthesis Howard Zhou Jie Sun
Texture Optimization for Example-based Synthesis Vivek Kwatra Irfan Essa Aaron Bobick Nipun Kwatra.
Image Quilting for Texture Synthesis and Transfer Alexei A. Efros (UC Berkeley) William T. Freeman (MERL) Siggraph01 ’
TEXTURE SYNTHESIS BY NON-PARAMETRIC SAMPLING VIVA-VITAL Nazia Tabassum 27 July 2015.
Synthesis of Compact Textures for real-time Terrain Rendering Nader Salman 22 juin 2007 Encadrant : Sylvain Lefebvre.
Scene Completion Using Millions of Photographs James Hays, Alexei A. Efros Carnegie Mellon University ACM SIGGRAPH 2007.
Synthesizing Natural Textures Michael Ashikhmin University of Utah.
Towards Real-Time Texture Synthesis With the Jump Map Steve Zelinka Michael Garland University of Illinois at Urbana-Champaign Thirteenth Eurographics.
Mesh Quilting For Geometric Texture Synthesis Kun Zhou et al. In SIGGRAPH 2006 발표 이성호 2009 년 4 월 15 일.
2D Texture Synthesis Instructor: Yizhou Yu. Texture synthesis Goal: increase texture resolution yet keep local texture variation.
Graphcut Textures Image and Video Synthesis Using Graph Cuts
Two Patch-based Algorithms for By-example Texture Synthesis Bruno Galerne MAP5, Université Paris Descartes 1 Master 2 Traitement.
Geometry Synthesis Ares Lagae Olivier Dumont Philip Dutré Department of Computer Science Katholieke Universiteit Leuven 10 August, 2004.
Texture Synthesis by Image Quilting CS766 Class Project Fall 2004 Eric Robinson.
SIGGRAPH 2007 Hui Fang and John C. Hart.  We propose an image editing system ◦ Preserve its detail and orientation by resynthesizing texture from the.
Texture Analysis and Synthesis. Texture Texture: pattern that “looks the same” at all locationsTexture: pattern that “looks the same” at all locations.
Hebrew University Image Processing Exercise Class 8 Panoramas – Stitching and Blending Min-Cut Stitching Many slides from Alexei Efros.
Image Mosaicing with Motion Segmentation from Video Augusto Roman, Taly Gilat EE392J Final Project 03/20/01.
Example Results (Case 1) This shows our estimation technique applied to real data. The information loss (in other words which values to drop) was simulated.
Two Patch-based Algorithms for By-example Texture Synthesis
Graphcut Textures:Image and Video Synthesis Using Graph Cuts
Announcements Project 4 out today help session at the end of class.
Detail Preserving Shape Deformation in Image Editing
Texture Synthesis by Non-parametric Sampling
Announcements Final Project 3 artifacts Evals
By: Kevin Yu Ph.D. in Computer Engineering
Texture Quality Extensions to Image Quilting
Texture.
Image Quilting for Texture Synthesis & Transfer
Announcements Guest lecture next Tuesday
Presentation transcript:

Image Quilting and Apples By Zach Broderick A presentation of the paper “Image Quilting for Texture Synthesis and Transfer” by Alexei A. Efros and William T. Freeman

Texture Synthesis (Images taken from paper) The concept of image-based texture synthesis is to create an image of unlimited size from a smaller source image. We want this new image to “look the same” as the source image, as well as maintain its resolution, not repeat, and be seamless even if the edges of the original don’t line up. (Images taken from paper)

Output texture is: Infinitely Large Output Sample of Texture Same resolution Non-repeating Seamless Must be perceived as “same”

Previous Methods Tiling (bad seams, repetitive) Stochastic (doesn’t work for structured) Pixel-based (SLOW, poor for structured) Random Patches/Blending (poor seams)

Image Quilting Copy patches (like the random patch method) based on neighborhood (like pixel method) Faster (predetermined pixels/less search space), maintains structure of regular textures Seams smoothed with graph cut through least error path (Image from Wikipedia)

Image Quilting (Diagram from paper) The idea of “perceiving” an image to be the same as another is related to certain statistics of the image, namely Markov Fields, which the paper does not get into. These statistics must be transferred from the source to destination images in order to maintain “sameness”. Previous methods used a variety of less successful techniques, such as copying the source image pixel by pixel based on the surrounding neighbor pixels. This was slow and had trouble with more structured textures, though it did okay with stochastic textures. There were also fractal based methods, as well as copying random blocks and doing a second pass to smooth the seams. A faster way that maintains the integrity of the original image better is “quilting”, of which this paper is one of the first to introduce back in 2001. Quilting involves copying blocks of the source image to the destination image with a slight overlap in pixels. Block selection is made based on least mean squared error, and not the entire block is copied—a least-error path is carved through the overlap region in order to minimize the appearance of seams, as seen above. (Diagram from paper)

An In-Depth Look at the Image Quilting Algorithm: Overview Copy tiles from the source image to the destination image in a left to right, top to bottom fashion, with an overlap of about 1/6 the tile size on the top and left regions. In selecting each of these tiles, search the source image space S for the tile with the least mean squared error in the overlap region (the first tile can be selected at random). When copying each tile, calculate the minimum error path cut in each of the overlap regions, and only copy the portion of the tile within the cut.

Tiles are copied from left to right, top to bottom (though this is not a requirement). Notice the overlap in the top and left regions of the tile. It is from this overlap that we calculate the mean squared error and make the graph cut in order to minimize the appearance of seams. Copying a whole tile maintains the structure of the original image.

Error Calculation First, we search the source space, which is every possible tile that can be fit in the source image (which is a lot, so it is slow). For each of these possible tiles, we compute the total error and choose a tile at random from the group with the least errors. Error is computed by subtracting the red, green, and blue color values (squared) of each of the pixels in the overlap region.

Path Cut In order to obtain more optimal seams, we will not copy the entire source tile, but rather cut a path through the overlap region along the minimum error line and only copy the pixels within those cuts.

Path Cut Cont’d… We start with a potential path for each column in the left overlap (or row in the top, in this case they are both 4). Starting with the first pixel, we calculate the error as before. Then we move up (or left) a row (or column), and compare the errors of the pixels above the previous one to the left, center, and right. We choose the one with the lowest error and add that one to our path, and repeat for the next row (or column). For the corner, we simply merge the horizontal and vertical paths.

Texture Transfer Algorithm can be generalized to provide texture transfer capabilities (image from paper)

Problems Repetition often occurs (see raspberries) Occasional glaring seams (mutant tomatoes)

Demonstration

Questions?