Transcript ppt
Texture Synthesis by Image Quilting CS766 Class Project Fall 2004 Eric Robinson Today we will answer these questions: What is texture synthesis? Can it be used in the real world? What were the earlier approaches to texture synthesis? What is image quilting? How does image quilting perform? What can we say about image quilting? Where can we go from here? What is texture synthesis? Create large texture image from small one Hopefully capture texture properties Given this: Produce something like this: Can it be used in the real world? Example task: Image based rendering Reconstruct world Time consuming Computationally expensive Probably overkill Sample, synthesize, map Fast Limited input required Requires ability to synthesize (and transfer) large amounts of image data What were the earlier approaches? “Statistical property” matching Tiling Determine relevant texture properties (histograms, filter responses), synthesize image with matching properties Place together random blocks - captures local properties, many boundary errors Pixel-at-a-time estimation from neighbors Use conditional probability of pixel values to synthesize new image – requires search of entire input for each output pixel! What is Image Quilting? Similar to tiling approach Reduce boundary errors by: B1 Find good fit of overlapping tiles and Allow ragged edges between tiles to minimize boundary error B2 B1 B2 B1 Illustration based on that used in Efros & Freeman paper “Image Quilting for Texture Synthesis and Transfer” B2 How does Image Quilting perform ? How does Image Quilting perform ? How does Image Quilting perform? What can we say about Image Quilting? Strengths Excellent results on structured patterns Relatively fast Intuitive approach Weaknesses Boundaries (still!) Excessive repetition Parameter setting Where can we go from here? Fully-structured textures: Results are quite good Semi-structured textures: Boundary problem Allow rectangular patches Allow variable overlap size Repetition problem Flip or rotate patches What does patch size affect? 6 pixels 10 pixels 6 pixels 24 pixels 42 pixels 24 pixels What does overlap size affect? 1 pixel 7 pixels 21 pixels 8 pixels 24 pixels 36 pixels