Graphcut textures: Image and video synthesis using graph cuts

  • Vivek Kwatra
  • , Arno Schödl
  • , Irfan Essa
  • , Greg Turk
  • , Aaron Bobick

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

497 Scopus citations

Abstract

In this paper we introduce a new algorithm for image and video texture synthesis. In our approach, patch regions from a sample image or video are transformed and copied to the output and then stitched together along optimal seams to generate a new (and typically larger) output. In contrast to other techniques, the size of the patch is not chosen a-priori, but instead a graph cut technique is used to determine the optimal patch region for any given offset between the input and output texture. Unlike dynamic programming, our graph cut technique for seam optimization is applicable in any dimension. We specifically explore it in 2D and 3D to perform video texture synthesis in addition to regular image synthesis. We present approximative offset search techniques that work well in conjunction with the presented patch size optimization. We show results for synthesizing regular, random, and natural images and videos. We also demonstrate how this method can be used to interactively merge different images to generate new scenes.

Original languageEnglish
Title of host publicationACM SIGGRAPH 2003 Papers, SIGGRAPH '03
Pages277-286
Number of pages10
DOIs
StatePublished - 2003
EventACM SIGGRAPH 2003 Papers, SIGGRAPH '03 - San Diego, CA, United States
Duration: Jul 27 2003Jul 31 2003

Publication series

NameACM SIGGRAPH 2003 Papers, SIGGRAPH '03

Conference

ConferenceACM SIGGRAPH 2003 Papers, SIGGRAPH '03
Country/TerritoryUnited States
CitySan Diego, CA
Period07/27/0307/31/03

Keywords

  • image and video processing
  • image-based rendering
  • machine learning
  • natural phenomenon
  • texture synthesis

Fingerprint

Dive into the research topics of 'Graphcut textures: Image and video synthesis using graph cuts'. Together they form a unique fingerprint.

Cite this