Local Symmetry - 2D Ribbons, SATs and Smoothed Local Symmetries Asaf Yaffe Image Processing Seminar, Haifa University, March 2005 Outline Symmetry and Shape Description Ribbons Symmetry Axis Transform (SAT) Smoothed Local Symmetries (SLS) Symmetry and Shape Description Global Symmetry Every symmetry element concerns the whole image or shape All points in the object contribute to determining the symmetry Behind the scope of this presentation… Local Symmetry Symmetry elements are local to a subset of the image or shape The subset is a continuous section of the shape’s contour Generally used for shape description Compact coding Shape recognition Motivation for Local Symmetry In many vision systems (e.g., robotics), shape is represented in terms of global features: Centers of area/mass, number of holes, aspect ration of the principal axes Global features can be computed efficiently But… Motivation for Local Symmetry Global features cannot be used to describe occluded objects A feature’s value of the visible portion has no relationship to the value of the whole object Therefore, it is nearly impossible to recognize occluded parts using global features Hence, the need for local features Shape Description Contour-based Representations Chain-code, Region-based Representations Axial Fourier descriptors… representations (MAT)… Shape descriptor properties Generative: reconstruct the shape from its descriptor Recoverable: create a unique descriptor for a shape General Terms and Definitions Normal - אנך Tangent - משיק Curvature - עקמומיות Perpendicular – מאונך/ניצב Oblique - אלכסוני Concave - קעור Convex – קמור Contour – מתאר Planar – מישורי Ribbons What is a Ribbon? A planar shape Locally symmetric around an arc called “axis” or “spine” What is a Ribbon? S GO O S – Spine. Assume S is a simple, continuous arc with a tangent at every point G – Generator. A simply connected set. May be of any shape O – Center. Generator’s reference point (center) GO – Generator centered at O. What is a Ribbon? S R GO rO G’s are geometrically similar and may differ only in size rO – Radius. The size of GO. R – Ribbon. The union of all GO for all O S What is a Ribbon? Let O’ and O’’ be the endpoints for S bR – the border of R. The border is smooth Ribbon ends – parts of the border that are in GO’ or GO’’ but not in any other GO Ribbon sides – the remaining parts of the border of R. Requirements GO moves along S S is a simple arc G’s should not intersect (well… sort of… hard to define…) G’s must be maximal. Otherwise R may not follow the shape of its spine. Requirements In all cases which follow, G is symmetric about its center O. The symmetry of G tends to make R “locally symmetric”. This, however, does not imply global symmetry Ribbon Classes “Blum” Ribbons (Blum, 1967, 1978) “L-Ribbons” “Brooks” “Brady” Ribbons (Brooks, 1981) Ribbons (Brady, 1984) Blum Ribbons Ribbons generated by disks centered on the spine The disks are circles with varying radii Blum Ribbons are Recoverable Theorem: “If R is a Blum ribbon, the spine and generators of R are uniquely determined” Proof: 1: “If R is simply connected and its border bR smooth, then any maximal disk D contained in R is tangent to bR” Proposition Proof (cont.) 2: “If R is a Blum ribbon, every maximal disk D contained in R is one of the G’s (and has its center on S)” Proposition Corollary: “The set of maximal disks is the same as the set of G’s” {DP | P bR} be the set of all maximal disks tangent to the border of R By proposition 1, A contains all maximal disks By proposition 2, A is identical to the set of all G’s. The spine S is the locus of their centers Let A = Blum Ribbons Limitations A Thick Blum ribbon cannot have points of high positive curvature on its border A Thick Blum ribbon cannot turn rapidly The “non-self-intersection” requirement is hard to define L-Ribbons Ribbons generated by a line segment with its midpoint on the spine The length and orientation of the line may vary as it moves along the spine The sides of R are the loci of the lines’ endpoints The ends of R are the lines at the ends of the spine L-Ribbon Properties The “non-self-intersection” requirement is easily defined Generators may not intersect More flexible than Blum ribbons Thick ribbons can make sharp turns Can have points of high positive (or negative) curvature on their borders L-Ribbon Properties L-Ribbons may have long protuberances on their borders as long as every point is visible from the spine L-Ribbons Difficulties Highly ambiguous Same shape can be generated in many different ways Need to apply constraints on the definition… Brooks Ribbons The generator is required to make a fixed angle with the spine We assume that the angle is 90 degrees This limits the ability of Brooks ribbons to make sharp turns The thickness cannot exceed twice the radius of the curvature of the spine S Brooks Ribbons If the sides of the ribbon are straight and parallel, its spine and generators are uniquely determined If the sides are not parallel, the spine need not be a straight line, and thus may not be unique Brady Ribbons The generator always makes equal angles with the sides of the ribbon Brady Ribbons If the ribbon has just one straight side, its spine and generators are uniquely determined Theorem: if both sides are straight, the spine is a segment of the angle bisector and the generators are perpendicular to the spine In the general case, the spine and generators are not unique Brady Ribbons Theorem proof: 1 2 - 1 = 2 - => = (2 - 1) / 2 is constant. Hence, all G’s are parallel Brady Ribbons Thick Brady ribbons can make sharp turns Thus, there are Brady ribbons which are not Brooks ribbons Every Blum ribbon is a Brady ribbon (ignoring the ends) O G Special Cases If the spine is straight, and we ignore the ends then Every Blum ribbon is a Brooks ribbon Every Brooks ribbon is a Brady ribbon Blum Brooks Brady Special Cases Even if the spine is straight… There are Brady ribbons which are not Brooks There are Brooks ribbons which are not Blum Blum Brooks Brady Symmetry Axis Transform (SAT) Symmetry Axis Transform The loci of the centers of all maximal disks entirely contained within the shape The disks must touch the border of the shape (at least in one section) Also known as Medial Axis Transform (MAT) Symmetry Axis Transform Captures the major axis of the shape and its orientation Reflects local boundary formations (e.g, corners) of the shape SAT “Skeleton” Points The centers of maximal disks can be classified into 3 classes: End points: disks touching the border in one section Normal points: disks touching the border in 2 sections Branch points: disks touching the border in 3 or more sections Major cause for problems, such as losing the symmetry axes of rectangular shapes SAT Properties Piecewise smooth Comprised Recoverable The of one or more smooth spines SAT of a shape is uniquely determined Generative A shape its SAT can be perfectly reconstructed from SAT Weaknesses Very sensitive to noise May lose the symmetry axes of the shape Smooth Local Symmetries (SLS) Smooth Local Symmetries Defined in two parts Determination of the local symmetry Formation of maximal smooth loci of these symmetries Determining Local Symmetry Let A, B be points on the shape’s border Let nA be the outward normal at A Let nB be the inward normal at B A and B are locally symmetric if both angles of the segment AB and the normals are the same Determining Local Symmetry A point may have a local symmetry with several points Point A has local symmetry with both B and C Forming the “Skeleton” The shape’s “skeleton” is the union of symmetry axes An axis is the formation of maximal smooth loci of local symmetries The symmetry locus is the midpoint of the segment connecting the local symmetry points Smooth Local Symmetry Axes An axis describes some piece of the contour and the region This portion is called a Cover Some covers are wholly contained in other covers (subsumed) Subsumed covers are of less importance but still convey useful information Smooth Local Symmetry Axes The short diagonal axes are subsumed The diagonal axes are not subsumed SLS Difficulties May generate redundant spines Difficult to compute O(n2) algorithm exists which tests all pairs of border points for local symmetry A faster algorithm exists which calculates an approximation of the SLS An Comparing SLS and SAT SLS SAT Summary Local symmetry can be used to describe parts of shapes Local symmetry can be described in various ways Ribbons SAT SLS References A. Rosenfeld. “Axial Representation of Shape”. Computer Vision, Graphics and Image Processing, Vol. 33, pp. 156173. 1986 M.J. Brady, and H. Asada. “Smooth Local Symmetries and Their Implementations”. Int. J. of Robotics Reg. 3(3). 1984 J.Ponce, "On Characterizing Ribbons and Finding Skewed Symmetries," Computer Vision, Graphics, and Image Processing, vol. 52, pp. 328340, 1990 H. Zabrodsky, “Computational Aspects of Pattern Characterization – Continuous Symmetry”. pp. 13 – 21. 1993