SlideShare uma empresa Scribd logo
1 de 24
Texture Synthesis using the Image Quilting Algorithm From  Image Quilting for Texture Synthesis and Transferby Efros & Freeman, SIGGRAPH 2001 Presenter: Vicente Ordonez Department of Computer Science Stony Brook University  State University of New York
Texture Synthesis Given a sample texture image, generate an output texture of arbitrary size.
It Should Work on Different Types of Textures Stochastic textures (no apparent structure)
It Should Work on Different Types of Textures Repeated textures (Structured)
Other types of textures Semi-structured textures. Repetition and stochastic processes involved.
The Taking Patch Samples from the Sample Image Approach Xu et al. from MSR proposed the idea of taking random patch samples from the input image and then blending them together by blurring the edges.
Take the Patches so that they Agree on Some Overlapping Region B1 B2 Neighboring blocks constrained by overlap Idea:  Select the K patches from the input sample that match closely to the current overlapping region in the output texture. Pick one of those K patches randomly.
Algorithm Select a random patch from the input image and place it on the top left corner of the output texture. Go through the output texture in raster scan order with steps of the size of the patch minus the dimension of the overlap region. Using the current overlap region in the output texture, search for every location in the input image that minimizes the sum of square distances error between the overlap with top and left side of the last patch. Choose randomly one of the patches identified in the previous step and paste it into the output texture.
How to avoid repeating calculations? Idea: Don’t calculate the SSD for the overlapping regions for each possible positions one-bye-one but do it all in one pass. This is the objective:
How to avoid repeating calculations?
Blend each new patch along a Minimum Error Boundary Cut Calculate a cut between patches that minimizes the error along the overlap region. B1 B2 Minimal error boundary cut
Using Dynamic Programming to Calculate the Minimum Cost Path Generate a minimum cost path table {Eij} using the overlap error area {eij} using Dynamic Programming as follows: Traverse backwards the resulting table to find the minimum cost path.
Error Overlap Region and min-cut
Running the min-cut algorithm
How to get a better blending? Alpha blending  Pyramid blending Histogram matching Blending in the gradient domain Poisson Blending
User Controlled Parameters The size of the patches. This heavily affects the results. The ideal size patch is the one that captures the minimum units of detail of the objects being repeated in the texture. We also have to be careful not to choose the size patch so large so that the stochastic nature of the results gets affected.	 The size of the overlap. This mainly affects the cuts between adjacent patches. This parameter also depends on the patterns of the input texture. Having a larger overlap does not always results into a visual improvement in the generated texture.	 The size of the error range when choosing patches.Making this range larger makes the selection converge into a random selection of patches, so it has to be sufficiently large to take advantage of the overlap constraints while leaving an stochastic process to affect the results.
Final Results. Generating some textures. Generated in 12s
Final Results. Generating some textures. Generated in 25s
Final Results. Generating some textures. Generated in 11 s
Final results: Generating some textures. Patch size = 50pxOverlap size = 8pxError range = (0 – 0.05)Execution time = 15sInput texture size = 148x139Output texture size = 428x428
Final Results. Generating some textures. Patch size = 20pxOverlap size = 4pxError range = (0 – 0.05)Execution time = 26sInput texture size = 148x138Output texture size = 343x343
Conclusions The results of the original paper have been successfully replicated.  The execution times are slow for a real time application but there are some hints about how to make it in real time using other research results.  Even when there are some recommendations for selecting the parameters, selecting the appropriate ones is an important step for the method and still largely depends on the image contents.  Despite the previous fact, the method performs well in a wide range of textures that were difficult to handle for previous methods.  Given the appropriate parameters the method seems to resemble well the visual appearance of the input texture.
Issues/Further Additions Searching for a patch that agrees on an overlap region is computationally expensive, so it is necessary to search using heuristics or use another kind of efficient search (Tree structures). The blending function still produces a visible seam. Maybe there’s room for improvement here.  Pyramid Blending/ Gradient/Poisson Blending? Other ways to choose the seam that allow more flexibility in the curvature of the seam.
References Sample textures taken from the original Efros & Freeman paper and the project website athttp://graphics.cs.cmu.edu/people/efros/research/quilting.html

Mais conteúdo relacionado

Mais procurados

Dimension Reduction And Visualization Of Large High Dimensional Data Via Inte...
Dimension Reduction And Visualization Of Large High Dimensional Data Via Inte...Dimension Reduction And Visualization Of Large High Dimensional Data Via Inte...
Dimension Reduction And Visualization Of Large High Dimensional Data Via Inte...
wl820609
 
Cristopher M. Bishop's tutorial on graphical models
Cristopher M. Bishop's tutorial on graphical modelsCristopher M. Bishop's tutorial on graphical models
Cristopher M. Bishop's tutorial on graphical models
butest
 
MetaPerturb: Transferable Regularizer for Heterogeneous Tasks and Architectures
MetaPerturb: Transferable Regularizer for Heterogeneous Tasks and ArchitecturesMetaPerturb: Transferable Regularizer for Heterogeneous Tasks and Architectures
MetaPerturb: Transferable Regularizer for Heterogeneous Tasks and Architectures
MLAI2
 

Mais procurados (16)

Scene Text Detection on Images using Cellular Automata
Scene Text Detection on Images using Cellular AutomataScene Text Detection on Images using Cellular Automata
Scene Text Detection on Images using Cellular Automata
 
Image forgery detection using adaptive over segmentation and feature point ma...
Image forgery detection using adaptive over segmentation and feature point ma...Image forgery detection using adaptive over segmentation and feature point ma...
Image forgery detection using adaptive over segmentation and feature point ma...
 
A1804010105
A1804010105A1804010105
A1804010105
 
Multiscale computing in 15 minutes
Multiscale computing in 15 minutesMultiscale computing in 15 minutes
Multiscale computing in 15 minutes
 
Ant Colony Optimization (ACO) based Data Hiding in Image Complex Region
Ant Colony Optimization (ACO) based Data Hiding in Image Complex Region Ant Colony Optimization (ACO) based Data Hiding in Image Complex Region
Ant Colony Optimization (ACO) based Data Hiding in Image Complex Region
 
50120130405033
5012013040503350120130405033
50120130405033
 
Steganalysis of LSB Embedded Images Using Gray Level Co-Occurrence Matrix
Steganalysis of LSB Embedded Images Using Gray Level Co-Occurrence MatrixSteganalysis of LSB Embedded Images Using Gray Level Co-Occurrence Matrix
Steganalysis of LSB Embedded Images Using Gray Level Co-Occurrence Matrix
 
Dimension Reduction And Visualization Of Large High Dimensional Data Via Inte...
Dimension Reduction And Visualization Of Large High Dimensional Data Via Inte...Dimension Reduction And Visualization Of Large High Dimensional Data Via Inte...
Dimension Reduction And Visualization Of Large High Dimensional Data Via Inte...
 
The Gaussian Process Latent Variable Model (GPLVM)
The Gaussian Process Latent Variable Model (GPLVM)The Gaussian Process Latent Variable Model (GPLVM)
The Gaussian Process Latent Variable Model (GPLVM)
 
sns
snssns
sns
 
A novel secure image steganography method based on chaos theory in spatial do...
A novel secure image steganography method based on chaos theory in spatial do...A novel secure image steganography method based on chaos theory in spatial do...
A novel secure image steganography method based on chaos theory in spatial do...
 
Cristopher M. Bishop's tutorial on graphical models
Cristopher M. Bishop's tutorial on graphical modelsCristopher M. Bishop's tutorial on graphical models
Cristopher M. Bishop's tutorial on graphical models
 
A0360109
A0360109A0360109
A0360109
 
MetaPerturb: Transferable Regularizer for Heterogeneous Tasks and Architectures
MetaPerturb: Transferable Regularizer for Heterogeneous Tasks and ArchitecturesMetaPerturb: Transferable Regularizer for Heterogeneous Tasks and Architectures
MetaPerturb: Transferable Regularizer for Heterogeneous Tasks and Architectures
 
50120140501016
5012014050101650120140501016
50120140501016
 
Multiple Style-Transfer in Real-Time
Multiple Style-Transfer in Real-TimeMultiple Style-Transfer in Real-Time
Multiple Style-Transfer in Real-Time
 

Destaque

Steganography Project
Steganography Project Steganography Project
Steganography Project
Jitu Choudhary
 
Advance image blending
Advance image blendingAdvance image blending
Advance image blending
naeemtayyab
 

Destaque (18)

Lighting and shading
Lighting and shadingLighting and shading
Lighting and shading
 
Ray tracing
 Ray tracing Ray tracing
Ray tracing
 
Ray tracing
Ray tracingRay tracing
Ray tracing
 
Steganography Project
Steganography Project Steganography Project
Steganography Project
 
Fast texture synthesis using tree structured vector quantization
Fast texture synthesis using tree structured vector quantizationFast texture synthesis using tree structured vector quantization
Fast texture synthesis using tree structured vector quantization
 
PPT steganography
PPT steganographyPPT steganography
PPT steganography
 
Advance image blending
Advance image blendingAdvance image blending
Advance image blending
 
Prisma and other stylization apps: explaining tech behind
Prisma and other stylization apps: explaining tech behindPrisma and other stylization apps: explaining tech behind
Prisma and other stylization apps: explaining tech behind
 
Chap. 10 computational photography
Chap. 10 computational photographyChap. 10 computational photography
Chap. 10 computational photography
 
Ray tracing
Ray tracingRay tracing
Ray tracing
 
Ray tracing
Ray tracingRay tracing
Ray tracing
 
GRPHICS08 - Raytracing and Radiosity
GRPHICS08 - Raytracing and RadiosityGRPHICS08 - Raytracing and Radiosity
GRPHICS08 - Raytracing and Radiosity
 
Steganography
SteganographySteganography
Steganography
 
Web api
Web apiWeb api
Web api
 
Ieee 2015 2016
Ieee 2015 2016Ieee 2015 2016
Ieee 2015 2016
 
Image Steganography
Image SteganographyImage Steganography
Image Steganography
 
Text structure for young readers
Text structure for young readersText structure for young readers
Text structure for young readers
 
Slideshare Powerpoint presentation
Slideshare Powerpoint presentationSlideshare Powerpoint presentation
Slideshare Powerpoint presentation
 

Semelhante a Texture Synthesis

Nano Scale Roughness Quantification
Nano Scale Roughness QuantificationNano Scale Roughness Quantification
Nano Scale Roughness Quantification
Pratham Ghael
 
Sample Paper Techscribe
Sample  Paper TechscribeSample  Paper Techscribe
Sample Paper Techscribe
guest533af374
 

Semelhante a Texture Synthesis (20)

Object Elimination and Reconstruction Using an Effective Inpainting Method
Object Elimination and Reconstruction Using an Effective Inpainting MethodObject Elimination and Reconstruction Using an Effective Inpainting Method
Object Elimination and Reconstruction Using an Effective Inpainting Method
 
Disparity Estimation by a Real Time Approximation Algorithm
Disparity Estimation by a Real Time Approximation AlgorithmDisparity Estimation by a Real Time Approximation Algorithm
Disparity Estimation by a Real Time Approximation Algorithm
 
Digital Media Steganography
Digital Media SteganographyDigital Media Steganography
Digital Media Steganography
 
A PROJECT REPORT ON REMOVAL OF UNNECESSARY OBJECTS FROM PHOTOS USING MASKING
A PROJECT REPORT ON REMOVAL OF UNNECESSARY OBJECTS FROM PHOTOS USING MASKINGA PROJECT REPORT ON REMOVAL OF UNNECESSARY OBJECTS FROM PHOTOS USING MASKING
A PROJECT REPORT ON REMOVAL OF UNNECESSARY OBJECTS FROM PHOTOS USING MASKING
 
Image Quilting in Steganography using Reversible Texture Formation
Image Quilting in Steganography using Reversible Texture FormationImage Quilting in Steganography using Reversible Texture Formation
Image Quilting in Steganography using Reversible Texture Formation
 
Translation Invariance (TI) based Novel Approach for better De-noising of Dig...
Translation Invariance (TI) based Novel Approach for better De-noising of Dig...Translation Invariance (TI) based Novel Approach for better De-noising of Dig...
Translation Invariance (TI) based Novel Approach for better De-noising of Dig...
 
International Journal of Computational Engineering Research(IJCER)
International Journal of Computational Engineering Research(IJCER)International Journal of Computational Engineering Research(IJCER)
International Journal of Computational Engineering Research(IJCER)
 
Paper review: Measuring the Intrinsic Dimension of Objective Landscapes.
Paper review: Measuring the Intrinsic Dimension of Objective Landscapes.Paper review: Measuring the Intrinsic Dimension of Objective Landscapes.
Paper review: Measuring the Intrinsic Dimension of Objective Landscapes.
 
N42018588
N42018588N42018588
N42018588
 
Video Stitching using Improved RANSAC and SIFT
Video Stitching using Improved RANSAC and SIFTVideo Stitching using Improved RANSAC and SIFT
Video Stitching using Improved RANSAC and SIFT
 
I017265357
I017265357I017265357
I017265357
 
A Combined Model for Image Inpainting
A Combined Model for Image InpaintingA Combined Model for Image Inpainting
A Combined Model for Image Inpainting
 
Computational Methods in Physics for Students
Computational Methods in Physics for StudentsComputational Methods in Physics for Students
Computational Methods in Physics for Students
 
Nano Scale Roughness Quantification
Nano Scale Roughness QuantificationNano Scale Roughness Quantification
Nano Scale Roughness Quantification
 
Paper 58 disparity-of_stereo_images_by_self_adaptive_algorithm
Paper 58 disparity-of_stereo_images_by_self_adaptive_algorithmPaper 58 disparity-of_stereo_images_by_self_adaptive_algorithm
Paper 58 disparity-of_stereo_images_by_self_adaptive_algorithm
 
IRJET - Object Detection using Hausdorff Distance
IRJET -  	  Object Detection using Hausdorff DistanceIRJET -  	  Object Detection using Hausdorff Distance
IRJET - Object Detection using Hausdorff Distance
 
IRJET- Object Detection using Hausdorff Distance
IRJET-  	  Object Detection using Hausdorff DistanceIRJET-  	  Object Detection using Hausdorff Distance
IRJET- Object Detection using Hausdorff Distance
 
Sample Paper Techscribe
Sample  Paper TechscribeSample  Paper Techscribe
Sample Paper Techscribe
 
K018137073
K018137073K018137073
K018137073
 
Digital Image Inpainting: A Review
Digital Image Inpainting: A ReviewDigital Image Inpainting: A Review
Digital Image Inpainting: A Review
 

Mais de Vicente Ordonez

From Large Scale Image Categorization to Entry-Level Categories
From Large Scale Image Categorization to Entry-Level CategoriesFrom Large Scale Image Categorization to Entry-Level Categories
From Large Scale Image Categorization to Entry-Level Categories
Vicente Ordonez
 
Data-driven Generation of Image Descriptions
Data-driven Generation of Image DescriptionsData-driven Generation of Image Descriptions
Data-driven Generation of Image Descriptions
Vicente Ordonez
 
Google Earth Maps Api Barcamp Quito 2009
Google Earth Maps Api Barcamp Quito 2009Google Earth Maps Api Barcamp Quito 2009
Google Earth Maps Api Barcamp Quito 2009
Vicente Ordonez
 
Sistema de Recuperacion de Audio
Sistema de Recuperacion de AudioSistema de Recuperacion de Audio
Sistema de Recuperacion de Audio
Vicente Ordonez
 
Transmision de Vídeo por Red / Internet
Transmision de Vídeo por Red / InternetTransmision de Vídeo por Red / Internet
Transmision de Vídeo por Red / Internet
Vicente Ordonez
 
Portal Concepts and .NET Webparts
Portal Concepts and .NET WebpartsPortal Concepts and .NET Webparts
Portal Concepts and .NET Webparts
Vicente Ordonez
 

Mais de Vicente Ordonez (16)

From Large Scale Image Categorization to Entry-Level Categories
From Large Scale Image Categorization to Entry-Level CategoriesFrom Large Scale Image Categorization to Entry-Level Categories
From Large Scale Image Categorization to Entry-Level Categories
 
Data-driven Generation of Image Descriptions
Data-driven Generation of Image DescriptionsData-driven Generation of Image Descriptions
Data-driven Generation of Image Descriptions
 
Im2Text: Describing Images Using 1 Million Captioned Photographs
Im2Text: Describing Images Using 1 Million Captioned PhotographsIm2Text: Describing Images Using 1 Million Captioned Photographs
Im2Text: Describing Images Using 1 Million Captioned Photographs
 
Visual Saliency: Learning to Detect Salient Objects
Visual Saliency: Learning to Detect Salient ObjectsVisual Saliency: Learning to Detect Salient Objects
Visual Saliency: Learning to Detect Salient Objects
 
Contenido Generado Por Los Usuarios
Contenido Generado Por Los UsuariosContenido Generado Por Los Usuarios
Contenido Generado Por Los Usuarios
 
Pantallas Plasma vs LCD
Pantallas Plasma vs LCDPantallas Plasma vs LCD
Pantallas Plasma vs LCD
 
Google Earth Maps Api Barcamp Quito 2009
Google Earth Maps Api Barcamp Quito 2009Google Earth Maps Api Barcamp Quito 2009
Google Earth Maps Api Barcamp Quito 2009
 
Sistema de Recuperacion de Audio
Sistema de Recuperacion de AudioSistema de Recuperacion de Audio
Sistema de Recuperacion de Audio
 
Suenaemprendevive
SuenaemprendeviveSuenaemprendevive
Suenaemprendevive
 
MapReduce
MapReduceMapReduce
MapReduce
 
Robotica
RoboticaRobotica
Robotica
 
Transmision de Vídeo por Red / Internet
Transmision de Vídeo por Red / InternetTransmision de Vídeo por Red / Internet
Transmision de Vídeo por Red / Internet
 
Buscadores de Podcast en Internet
Buscadores de Podcast en InternetBuscadores de Podcast en Internet
Buscadores de Podcast en Internet
 
Sistemas Operativos 3D
Sistemas Operativos 3DSistemas Operativos 3D
Sistemas Operativos 3D
 
Ajax Atlas
Ajax AtlasAjax Atlas
Ajax Atlas
 
Portal Concepts and .NET Webparts
Portal Concepts and .NET WebpartsPortal Concepts and .NET Webparts
Portal Concepts and .NET Webparts
 

Último

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Victor Rentea
 

Último (20)

Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering Developers
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 

Texture Synthesis

  • 1. Texture Synthesis using the Image Quilting Algorithm From Image Quilting for Texture Synthesis and Transferby Efros & Freeman, SIGGRAPH 2001 Presenter: Vicente Ordonez Department of Computer Science Stony Brook University State University of New York
  • 2. Texture Synthesis Given a sample texture image, generate an output texture of arbitrary size.
  • 3. It Should Work on Different Types of Textures Stochastic textures (no apparent structure)
  • 4. It Should Work on Different Types of Textures Repeated textures (Structured)
  • 5. Other types of textures Semi-structured textures. Repetition and stochastic processes involved.
  • 6. The Taking Patch Samples from the Sample Image Approach Xu et al. from MSR proposed the idea of taking random patch samples from the input image and then blending them together by blurring the edges.
  • 7. Take the Patches so that they Agree on Some Overlapping Region B1 B2 Neighboring blocks constrained by overlap Idea: Select the K patches from the input sample that match closely to the current overlapping region in the output texture. Pick one of those K patches randomly.
  • 8. Algorithm Select a random patch from the input image and place it on the top left corner of the output texture. Go through the output texture in raster scan order with steps of the size of the patch minus the dimension of the overlap region. Using the current overlap region in the output texture, search for every location in the input image that minimizes the sum of square distances error between the overlap with top and left side of the last patch. Choose randomly one of the patches identified in the previous step and paste it into the output texture.
  • 9. How to avoid repeating calculations? Idea: Don’t calculate the SSD for the overlapping regions for each possible positions one-bye-one but do it all in one pass. This is the objective:
  • 10. How to avoid repeating calculations?
  • 11. Blend each new patch along a Minimum Error Boundary Cut Calculate a cut between patches that minimizes the error along the overlap region. B1 B2 Minimal error boundary cut
  • 12. Using Dynamic Programming to Calculate the Minimum Cost Path Generate a minimum cost path table {Eij} using the overlap error area {eij} using Dynamic Programming as follows: Traverse backwards the resulting table to find the minimum cost path.
  • 13. Error Overlap Region and min-cut
  • 14. Running the min-cut algorithm
  • 15. How to get a better blending? Alpha blending Pyramid blending Histogram matching Blending in the gradient domain Poisson Blending
  • 16. User Controlled Parameters The size of the patches. This heavily affects the results. The ideal size patch is the one that captures the minimum units of detail of the objects being repeated in the texture. We also have to be careful not to choose the size patch so large so that the stochastic nature of the results gets affected. The size of the overlap. This mainly affects the cuts between adjacent patches. This parameter also depends on the patterns of the input texture. Having a larger overlap does not always results into a visual improvement in the generated texture. The size of the error range when choosing patches.Making this range larger makes the selection converge into a random selection of patches, so it has to be sufficiently large to take advantage of the overlap constraints while leaving an stochastic process to affect the results.
  • 17. Final Results. Generating some textures. Generated in 12s
  • 18. Final Results. Generating some textures. Generated in 25s
  • 19. Final Results. Generating some textures. Generated in 11 s
  • 20. Final results: Generating some textures. Patch size = 50pxOverlap size = 8pxError range = (0 – 0.05)Execution time = 15sInput texture size = 148x139Output texture size = 428x428
  • 21. Final Results. Generating some textures. Patch size = 20pxOverlap size = 4pxError range = (0 – 0.05)Execution time = 26sInput texture size = 148x138Output texture size = 343x343
  • 22. Conclusions The results of the original paper have been successfully replicated. The execution times are slow for a real time application but there are some hints about how to make it in real time using other research results. Even when there are some recommendations for selecting the parameters, selecting the appropriate ones is an important step for the method and still largely depends on the image contents. Despite the previous fact, the method performs well in a wide range of textures that were difficult to handle for previous methods. Given the appropriate parameters the method seems to resemble well the visual appearance of the input texture.
  • 23. Issues/Further Additions Searching for a patch that agrees on an overlap region is computationally expensive, so it is necessary to search using heuristics or use another kind of efficient search (Tree structures). The blending function still produces a visible seam. Maybe there’s room for improvement here. Pyramid Blending/ Gradient/Poisson Blending? Other ways to choose the seam that allow more flexibility in the curvature of the seam.
  • 24. References Sample textures taken from the original Efros & Freeman paper and the project website athttp://graphics.cs.cmu.edu/people/efros/research/quilting.html