Texture Symmetry A lecture by Alexey Burshtein. Definitions Regular texture is a periodic pattern containing translation symmetry and (possibly) rotation,

Slides:



Advertisements
Similar presentations
TESSELLATIONS Oleh : Sulistyana SMP N 1 Wonosari.
Advertisements

Animosaics Kaleigh Smith, Yunjun Liu, and Allison Klein McGill University Eurographics Symposium on Computer Animation 2005.
電腦視覺 Computer and Robot Vision I
November 12, 2013Computer Vision Lecture 12: Texture 1Signature Another popular method of representing shape is called the signature. In order to compute.
Texture Synthesis on [Arbitrary Manifold] Surfaces Presented by: Sam Z. Glassenberg* * Several slides borrowed from Wei/Levoy presentation.
Procedural Content Tiling
Image Segmentation Image segmentation (segmentace obrazu) –division or separation of the image into segments (connected regions) of similar properties.
Segmentation (2): edge detection
X0 xn w0 wn o Threshold units SOM.
Instructor: Mircea Nicolescu Lecture 13 CS 485 / 685 Computer Vision.
Maryia Kazakevich “Texture Synthesis by Patch-Based Sampling” Texture Synthesis by Patch-Based Sampling Real-Time Texture Synthesis By Patch-Based Sampling,
Image Quilting for Texture Synthesis and Transfer Alexei A. Efros1,2 William T. Freeman2.
Contents Description of the big picture Theoretical background on this work The Algorithm Examples.
Segmentation Divide the image into segments. Each segment:
CS223B Assignment 1 Recap. Lots of Solutions! 37 Groups Many different approaches Let’s take a peek at all 37 results on one image from the test set.
Texture Reading: Chapter 9 (skip 9.4) Key issue: How do we represent texture? Topics: –Texture segmentation –Texture-based matching –Texture synthesis.
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.
Find another five letter word whose letters each belong in different categories. I’ve divided the alphabet into five categories as shown below. Can you.
Robust estimation Problem: we want to determine the displacement (u,v) between pairs of images. We are given 100 points with a correlation score computed.
Computer Vision - A Modern Approach Set: Segmentation Slides by D.A. Forsyth Segmentation and Grouping Motivation: not information is evidence Obtain a.
This Exploration of Tessellations will guide you through the following: Exploring Tessellations Definition of Tessellation Semi-Regular Tessellations.
October 8, 2013Computer Vision Lecture 11: The Hough Transform 1 Fitting Curve Models to Edges Most contours can be well described by combining several.
Example 1 Use the coordinate mapping ( x, y ) → ( x + 8, y + 3) to translate ΔSAM to create ΔS’A’M’.
CSE554AlignmentSlide 1 CSE 554 Lecture 8: Alignment Fall 2014.
October 14, 2014Computer Vision Lecture 11: Image Segmentation I 1Contours How should we represent contours? A good contour representation should meet.
OBJECT RECOGNITION. The next step in Robot Vision is the Object Recognition. This problem is accomplished using the extracted feature information. The.
Chapter 9.  Mathematical morphology: ◦ A useful tool for extracting image components in the representation of region shape.  Boundaries, skeletons,
CSE554AlignmentSlide 1 CSE 554 Lecture 5: Alignment Fall 2011.
Tilings of a plane Meenal Tayal.
Computer Vision Lecture 5. Clustering: Why and How.
CS 6825: Binary Image Processing – binary blob metrics
Vision & Recognition. From a different direction At different times, particularly if it has been modified in the interval In different light A particular.
Section 12-5 Symmetry SPI 32D: determine whether the plane figure has been translated given a diagram and vice versa Objectives: Identify types of Symmetry.
Digital Media Dr. Jim Rowan ITEC Vector Graphics Elegant way to construct digital images that –have a compact representation –are scalable –are.
September 23, 2014Computer Vision Lecture 5: Binary Image Processing 1 Binary Images Binary images are grayscale images with only two possible levels of.
CSE554AlignmentSlide 1 CSE 554 Lecture 8: Alignment Fall 2013.
Digital Media Dr. Jim Rowan ITEC So far… We have compared bitmapped graphics and vector graphics We have discussed bitmapped images, some file formats.
CS 450: COMPUTER GRAPHICS PROJECTIONS SPRING 2015 DR. MICHAEL J. REALE.
Synthesizing Natural Textures Michael Ashikhmin University of Utah.
Tessellations. Formal definition: A careful juxtaposition of elements into a coherent pattern sometimes called a mosaic or tiling. Simply put: A tessellation.
Semiconductors, BP&A Planning, DREAM PLAN IDEA IMPLEMENTATION.
Digital Media Dr. Jim Rowan ITEC Vector Graphics Elegant way to construct digital images that –have a compact representation –are scalable –are.
October 1, 2013Computer Vision Lecture 9: From Edges to Contours 1 Canny Edge Detector However, usually there will still be noise in the array E[i, j],
Image Segmentation Image segmentation (segmentace obrazu)
Texture Synthesis by Image Quilting CS766 Class Project Fall 2004 Eric Robinson.
2 pt 3 pt 4 pt 5pt 1 pt 2 pt 3 pt 4 pt 5 pt 1 pt 2pt 3 pt 4pt 5 pt 1pt 2pt 3 pt 4 pt 5 pt 1 pt 2 pt 3 pt 4pt 5 pt 1pt Vocab 1 Vocab 2 Transformations CompositionsMiscellaneous.
Course 5 Edge Detection. Image Features: local, meaningful, detectable parts of an image. edge corner texture … Edges: Edges points, or simply edges,
Machine Vision Edge Detection Techniques ENT 273 Lecture 6 Hema C.R.
Image features and properties. Image content representation The simplest representation of an image pattern is to list image pixels, one after the other.
Instructor: Mircea Nicolescu Lecture 5 CS 485 / 685 Computer Vision.
Unit 3 Transformations This unit addresses transformations in the Coordinate Plane. It includes transformations, translations, dilations, reflections,
Symmetry.
Main characteristics of Vector graphics  Vector graphics provide an elegant way of constructing digital images (diagrams, technical illustration and.
Tessellations Starting slide….
Grouping and Segmentation. Sometimes edge detectors find the boundary pretty well.
April 21, 2016Introduction to Artificial Intelligence Lecture 22: Computer Vision II 1 Canny Edge Detector The Canny edge detector is a good approximation.
Another Example: Circle Detection
CSE 554 Lecture 8: Alignment
Lecture 5 Basic geometric objects
Chapter 9 Vocab Review.
Data Mining, Neural Network and Genetic Programming
Polygons, Perimeters, and Tessellations
Mean Shift Segmentation
Properties of Translations
Computer Vision Lecture 5: Binary Image Processing
Fitting Curve Models to Edges
Create a design (image) on the graph paper on the last page, making sure at least 3 vertices land on whole number (integer) coordinates, in the upper left.
Morphological Operators
Introduction to Artificial Intelligence Lecture 22: Computer Vision II
Presentation transcript:

Texture Symmetry A lecture by Alexey Burshtein

Definitions Regular texture is a periodic pattern containing translation symmetry and (possibly) rotation, reflection and glide-reflection symmetries. Regular texture is a periodic pattern containing translation symmetry and (possibly) rotation, reflection and glide-reflection symmetries. Near-regular texture is a texture that is not strictly symmetrical. The difference may be in color, deformations, resolution. Near-regular texture is a texture that is not strictly symmetrical. The difference may be in color, deformations, resolution.

Definitions – cont. Perfect regularities are uncommon; Perfect regularities are uncommon; Near-regular textures are very common. Near-regular textures are very common.

Definitions – cont. Tile (also lattice item) – a smallest parallelogram (or hexagon), whose orbit produces a cover of the original pattern with no gaps or overlaps. Tile (also lattice item) – a smallest parallelogram (or hexagon), whose orbit produces a cover of the original pattern with no gaps or overlaps.

In a way, every picture as a distorted regular pattern. Thus, every picture may be generated by a near-regular pattern generator. Well see how to create this from this:

Theory of wallpaper-like regular structures exists for more then 100 years; its called Theory of Wallpaper Groups. There are only 5 possible shapes of tiles: parallelogram; parallelogram; rectangle; rectangle; rhomb; rhomb; square; square; hexagonal. hexagonal.

You cannot just fill all the image with one tile. The result will be not naturalistic. You cannot just fill all the image with one tile. The result will be not naturalistic. There are two contradictive objectives: There are two contradictive objectives: Preparing a realistic image (= giving up the regularity ) Preparing a realistic image (= giving up the regularity ) Preserving the regularity (= filling all image with same tile and giving up the naturalism ) Preserving the regularity (= filling all image with same tile and giving up the naturalism ) The following algorithm avoid these traps. The following algorithm avoid these traps.

Near-regular Texture Synthesis Part 1.

Input: a sample near-regular texture S Input: a sample near-regular texture S Output: a synthesized texture S 0 statistically similar to S. Output: a synthesized texture S 0 statistically similar to S. The color and intensity are captured from different tiles to give the output more natural appearance. The color and intensity are captured from different tiles to give the output more natural appearance. This will not affect the regularity of the synthesized pattern. This will not affect the regularity of the synthesized pattern. Algorithm explained

Algorithm explained – cont. First of all, recognize the tile precisely. First of all, recognize the tile precisely. This is performed with algorithm regions of dominance which is beyond our scope. This is performed with algorithm regions of dominance which is beyond our scope. The found lattice is determined by two vectors t 1 and t 2. The found lattice is determined by two vectors t 1 and t 2. Offset of the lattice from each side is NOT determined. Offset of the lattice from each side is NOT determined. t2t2 t1t1 t2t2 t1t1

Algorithm explained – cont. The vectors t 1 and t 2 may be also specified (or verified) by user. The vectors t 1 and t 2 may be also specified (or verified) by user. The lattice has to be placed so that all original tiles are uniquely defined. This is usually controlled by the user. The lattice has to be placed so that all original tiles are uniquely defined. This is usually controlled by the user. Minimum tiles – the tiles carved by the lattice. Minimum tiles – the tiles carved by the lattice. Maximum tile – smallest rectangular shape which circumscribes the minimum tile. Maximum tile – smallest rectangular shape which circumscribes the minimum tile.

Yellow rhombs – minimum tiles recognized by the algorithm. White rectangles – maximum tiles constructed over the minimum tiles. Algorithm explained – cont.

After all minimum tiles had been defined, (and possibly verified by user), construct appropriate set of maximum tiles. After all minimum tiles had been defined, (and possibly verified by user), construct appropriate set of maximum tiles. Start generation: Start generation: Start from top-left corner. Start from top-left corner. Take a random maximum tile. Take a random maximum tile. Stamp it to create a row of tiles in direction of t 1 + t 2 with step of |(t 1 +t 2 )/2|. Stamp it to create a row of tiles in direction of t 1 + t 2 with step of |(t 1 +t 2 )/2|. After reaching the right bound, place one tile at t 2 – t 1 with step of |(t 1 +t 2 )/2| to the left of the generated row of tiles. After reaching the right bound, place one tile at t 2 – t 1 with step of |(t 1 +t 2 )/2| to the left of the generated row of tiles. Algorithm explained – cont.

The tile to be used as a stamp is a random selection from tiles that fit most closely to generated color of the place. The tile to be used as a stamp is a random selection from tiles that fit most closely to generated color of the place. Therefore, at each cell in the generated lattice the closest tile will be placed. Therefore, at each cell in the generated lattice the closest tile will be placed. The chosen tile is allowed to move a bit around the calculated place to fit the structure even better. The chosen tile is allowed to move a bit around the calculated place to fit the structure even better. Neighboring tiles are stitched together. To avoid conflicts, boundaries of tiles are blended. Neighboring tiles are stitched together. To avoid conflicts, boundaries of tiles are blended. Continue until the image is created. Continue until the image is created.

Algorithm - conclusions Maximum tiles are used instead of minimum tiles to allow smoother blending of tiles edges. Each tile has from ½ to ¾ of overlapped area. Maximum tiles are used instead of minimum tiles to allow smoother blending of tiles edges. Each tile has from ½ to ¾ of overlapped area. The generated structure is smoother then the original – because of blending. The generated structure is smoother then the original – because of blending. The result may be more regular then the source – because of too tight error threshold in selection of tiles to be used as stamps. The result may be more regular then the source – because of too tight error threshold in selection of tiles to be used as stamps. Its either bigger choice of tiles to be used in every point of lattice, or smoother transition between neighbor tiles. Its either bigger choice of tiles to be used in every point of lattice, or smoother transition between neighbor tiles.

Algorithm - conclusions Damaged tiles may never be used at all. Damaged tiles may never be used at all. Examples: Examples:

Algorithm - conclusions Question: will regularity be preserved if bigger size of tile will be taken? Question: will regularity be preserved if bigger size of tile will be taken? Answer: NO, not really. The regularity will exist, but it will be some other regularity, not the one from the original tile set. The regularity will exist, but it will be some other regularity, not the one from the original tile set.

Algorithm – advantages 1. The tile is not necessarily a rectangle. 2. The orientation of tiles is not necessarily horizontal. 3. Perfect adaptation to the given sample. 4. Weve covered here only translational symmetry; rotation, reflection and glide reflection can also be used.

What if the lattice itself is irregular? Part 2.

The Problem The lattice may not be defined with straight lines. The lattice may not be defined with straight lines. Examples: Examples:

Idea: beneath each successful man stands a more successful woman. Idea: beneath each successful man stands a more successful woman. The Approach Idea: beneath each irregular lattice stands a distorted regular one. Idea: beneath each irregular lattice stands a distorted regular one. Lets find out the near-regular lattice which resembles the given irregular lattice most. The lattice is computed using energy minimization function Lets find out the near-regular lattice which resembles the given irregular lattice most. The lattice is computed using energy minimization function The difference between the lattices will allow us to compute the distortion field. The difference between the lattices will allow us to compute the distortion field.

How do we compute the (near) regular lattice from the irregular one? The function is: The function is: Where t 1 and t 2 are the vectors defining the near- regular lattice, l i, l j, l k, l m are links in directions t 1, t 2, t 1 +t 2, t 1 -t 2 respectively; N i, N j, N k, N m are total number of such links. is angle between t 1 and t 2. It may be computed from t 1, t 2, t 1 +t 2.

Algorithm explained 1. Compute the near-regular lattice. 2. Compute the distortion field. 3. Rectify the input texture into near-regular structure. 4. Create 2D-image from near-regular texture as explained in part Create 2D-pattern of size equal to the requested image from the deformation field. More tight requirements for smoothness on edges!

Algorithm explained 6. Apply the resulting distortion field map built at step 5 to the image built at step 4.

Practical Usage – Generalized Symmetry Transform Part 3.

Generalized Symmetry Transform Input: edge map. Input: edge map. Output: map of points of high symmetry, with intensity and orientation. Output: map of points of high symmetry, with intensity and orientation. Usage: detection of symmetry; possibility to detect symmetric patterns. Usage: detection of symmetry; possibility to detect symmetric patterns. The symmetry transform assigns continuous symmetry measure to each point. The symmetry transform assigns continuous symmetry measure to each point. Symmetry transform is local, not global! Symmetry transform is local, not global!

How the symmetry is quantified? Each point receives its symmetry value calculated as a sum of contributions from all other points. Each point receives its symmetry value calculated as a sum of contributions from all other points. Weve already seen this before. Weve already seen this before. Symmetry direction is defined as direction of maximal product. Symmetry direction is defined as direction of maximal product. riri rjrj j i ( i + j )/2

How the symmetry is quantified? It is possible to detect radial symmetry as well as other types of symmetry. It is possible to detect radial symmetry as well as other types of symmetry. Line is treated as a single object (reminds Hough transform). Line is treated as a single object (reminds Hough transform). The contributed weight of each symmetry is defined using the Gaussian. This Gaussian may be elliptic – for recognizing human eyes, for example. The contributed weight of each symmetry is defined using the Gaussian. This Gaussian may be elliptic – for recognizing human eyes, for example.

Result of Symmetry Transform From left to right – original image, the edges, symmetric points. From left to right – original image, the edges, symmetric points. Symmetric transform generalizes most methods for finding interesting regions. Symmetric transform generalizes most methods for finding interesting regions.

Usage of the transform Using this transform, it is possible to recognize symmetry in patterns. Examples: Using this transform, it is possible to recognize symmetry in patterns. Examples: Note: X`es are detected as +`es; circles are detected as points.

Conclusions This transform can be used to detect symmetric figures on asymmetric background or (even better) vice versa. Its easier to detect ellipses among circles. This transform can be used to detect symmetric figures on asymmetric background or (even better) vice versa. Its easier to detect ellipses among circles. The model may also be used as predictor of human behavior when recognizing symmetric and asymmetric patterns. The model may also be used as predictor of human behavior when recognizing symmetric and asymmetric patterns. It should be a part of a bigger processing system rather then stand-alone application. It should be a part of a bigger processing system rather then stand-alone application.

References 1. Y. Liu and W. Lin Deformable Texture: the Irregular-Regular-Irregular Cycle Y. Liu, Y. Tsin, and W. Lin,The Promise and Perils of Near-Regular Texture J. Beck. Textural segmentation. In J. Beck, editor, Organization and Representation in Perception, pages Hilldale,NJ: Lawrence Erlbaum,