amir pelled. topics what is 3d-symmetry ? what is 3d-symmetry ? basic 3d-symmetry definitions basic...

56
Amir Amir Pelled Pelled

Post on 18-Dec-2015

228 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Amir Pelled. Topics What is 3D-Symmetry ? What is 3D-Symmetry ? Basic 3d-Symmetry Definitions Basic 3d-Symmetry Definitions Mathematical Definitions for

Amir Amir PelledPelled

Page 2: Amir Pelled. Topics What is 3D-Symmetry ? What is 3D-Symmetry ? Basic 3d-Symmetry Definitions Basic 3d-Symmetry Definitions Mathematical Definitions for

TopicsTopics

• What is 3D-Symmetry ?What is 3D-Symmetry ?

• Basic 3d-Symmetry DefinitionsBasic 3d-Symmetry Definitions

• Mathematical Definitions for 3D-Mathematical Definitions for 3D-SpaceSpace

• Symmetry Detection AlgorithmsSymmetry Detection Algorithms

• ApplicationsApplications

• BibliographyBibliography

Page 3: Amir Pelled. Topics What is 3D-Symmetry ? What is 3D-Symmetry ? Basic 3d-Symmetry Definitions Basic 3d-Symmetry Definitions Mathematical Definitions for

What is 3D-Symmetry ?What is 3D-Symmetry ?

Does this building possess 3D-Symmetry ?Does this building possess 3D-Symmetry ?

Page 4: Amir Pelled. Topics What is 3D-Symmetry ? What is 3D-Symmetry ? Basic 3d-Symmetry Definitions Basic 3d-Symmetry Definitions Mathematical Definitions for

What is 3D-Symmetry ?What is 3D-Symmetry ?

A basic misconception : A basic misconception : We can only see the 2D-projection We can only see the 2D-projection

that is facing us.that is facing us. 3D-symmetry has to consider the 3D-symmetry has to consider the

whole of the objectwhole of the object

Page 5: Amir Pelled. Topics What is 3D-Symmetry ? What is 3D-Symmetry ? Basic 3d-Symmetry Definitions Basic 3d-Symmetry Definitions Mathematical Definitions for

Basic DefinitionsBasic Definitions

Topics : Topics : • 3d-reflection symmetry3d-reflection symmetry• 3d-rotation symmetry3d-rotation symmetry

Page 6: Amir Pelled. Topics What is 3D-Symmetry ? What is 3D-Symmetry ? Basic 3d-Symmetry Definitions Basic 3d-Symmetry Definitions Mathematical Definitions for

Basic DefinitionsBasic Definitions3D-Reflection-Symmetry3D-Reflection-Symmetry

A reflection symmetry has :A reflection symmetry has :• N mirror planes each passing through the N mirror planes each passing through the

object’s mass center ( in contrast to mirror object’s mass center ( in contrast to mirror axes in 2D)axes in 2D)

A rotational symmetry has a center of A rotational symmetry has a center of rotation : rotation : • an axis (a line) in a 3D object ( in contrast to a an axis (a line) in a 3D object ( in contrast to a

point in 2D)point in 2D)• A number of times N by which shapes are A number of times N by which shapes are

repeated about that axisrepeated about that axis

Page 7: Amir Pelled. Topics What is 3D-Symmetry ? What is 3D-Symmetry ? Basic 3d-Symmetry Definitions Basic 3d-Symmetry Definitions Mathematical Definitions for

Basic DefinitionsBasic Definitions3D-Reflection-Symmetry3D-Reflection-Symmetry

Reflection planes of a water moleculeReflection planes of a water molecule

Page 8: Amir Pelled. Topics What is 3D-Symmetry ? What is 3D-Symmetry ? Basic 3d-Symmetry Definitions Basic 3d-Symmetry Definitions Mathematical Definitions for

Basic DefinitionsBasic Definitions3D-Reflection-Symmetry3D-Reflection-Symmetry

Page 9: Amir Pelled. Topics What is 3D-Symmetry ? What is 3D-Symmetry ? Basic 3d-Symmetry Definitions Basic 3d-Symmetry Definitions Mathematical Definitions for

Basic DefinitionsBasic Definitions3D-Reflection-Symmetry3D-Reflection-Symmetry

How many 3D-reflection symmetries How many 3D-reflection symmetries does a cube have ?does a cube have ? 99

Page 10: Amir Pelled. Topics What is 3D-Symmetry ? What is 3D-Symmetry ? Basic 3d-Symmetry Definitions Basic 3d-Symmetry Definitions Mathematical Definitions for

Basic DefinitionsBasic Definitions3D-Rotation-Symmetry3D-Rotation-Symmetry

A cube has these axes of rotational A cube has these axes of rotational symmetry :symmetry :

3 axes of 4-fold : each passing through the 3 axes of 4-fold : each passing through the centers of two opposite facescenters of two opposite faces

4 axes of 3-fold : each passing through the 4 axes of 3-fold : each passing through the centers of two opposite verticescenters of two opposite vertices

6 axes of 2-fold : each passing through the 6 axes of 2-fold : each passing through the centers of two opposite edgescenters of two opposite edges

Page 11: Amir Pelled. Topics What is 3D-Symmetry ? What is 3D-Symmetry ? Basic 3d-Symmetry Definitions Basic 3d-Symmetry Definitions Mathematical Definitions for

Basic DefinitionsBasic Definitions3D-Rotation-Symmetry3D-Rotation-Symmetry

Table of rotational symmetries for other platonic objects:Table of rotational symmetries for other platonic objects:

Symmetry Symmetry BasisBasis

IcosahedronIcosahedron

OctahedronOctahedron

TetrahedronTetrahedron

axes through axes through verticesvertices

Axes through Axes through face centersface centers

Axes through Axes through edge centersedge centers

6 5-fold6 5-fold 10 3-fold10 3-fold 15 2-fold15 2-fold

3 4-fold3 4-fold 4 3-fold4 3-fold 6 2-fold6 2-fold

4 3-fold4 3-fold 4 3-fold4 3-fold 3 2-fold3 2-fold==

DodecahedronDodecahedron 10 3-fold10 3-fold 6 5-fold6 5-fold 15 2-fold15 2-fold

HexahedronHexahedron 4 3-fold4 3-fold 3 4-fold3 4-fold 6 2-fold6 2-fold

Page 12: Amir Pelled. Topics What is 3D-Symmetry ? What is 3D-Symmetry ? Basic 3d-Symmetry Definitions Basic 3d-Symmetry Definitions Mathematical Definitions for

Mathematical Definitions for 3D-Mathematical Definitions for 3D-SpaceSpace

We need one standard method which We need one standard method which could represent an object’s could represent an object’s characteristics in 3D space :characteristics in 3D space :• ShapeShape• SizeSize• PositionPosition• OrientationOrientation

Page 13: Amir Pelled. Topics What is 3D-Symmetry ? What is 3D-Symmetry ? Basic 3d-Symmetry Definitions Basic 3d-Symmetry Definitions Mathematical Definitions for

Mathematical Definitions for 3D-Mathematical Definitions for 3D-SpaceSpace

• Inertia MatrixInertia Matrix• Eigenvalues & EigenvectorsEigenvalues & Eigenvectors• Principal AxesPrincipal Axes

Page 14: Amir Pelled. Topics What is 3D-Symmetry ? What is 3D-Symmetry ? Basic 3d-Symmetry Definitions Basic 3d-Symmetry Definitions Mathematical Definitions for

Mathematical Definitions for 3D-Mathematical Definitions for 3D-Space Space (inertia matrix)(inertia matrix)

The The inertia matrix inertia matrix of an object, is a mathematical descriptor of an object, is a mathematical descriptor of the dispersion of the object’s mass, around its center.of the dispersion of the object’s mass, around its center.

If B is an object and :If B is an object and :• O is the center of mass for BO is the center of mass for B• We sample points at coordinates (x,y,z) where x is the distance from We sample points at coordinates (x,y,z) where x is the distance from

O on the yz planeO on the yz plane• Mi is the mass of the object located at point iMi is the mass of the object located at point i

Page 15: Amir Pelled. Topics What is 3D-Symmetry ? What is 3D-Symmetry ? Basic 3d-Symmetry Definitions Basic 3d-Symmetry Definitions Mathematical Definitions for

Mathematical Definitions for 3D-Mathematical Definitions for 3D-Space Space (inertia matrix)(inertia matrix)

Notice that matrix Notice that matrix II is symmetrical is symmetrical

Page 16: Amir Pelled. Topics What is 3D-Symmetry ? What is 3D-Symmetry ? Basic 3d-Symmetry Definitions Basic 3d-Symmetry Definitions Mathematical Definitions for

Mathematical Definitions for 3D-Mathematical Definitions for 3D-Space Space (EigenValues & EigenVectors)(EigenValues & EigenVectors)

Scalar λ is called an Scalar λ is called an eigenvalueeigenvalue of a of a linear mapping linear mapping AA if there exists a non- if there exists a non-zero vector zero vector xx such that such that Ax = λxAx = λx

Vector Vector xx is called an is called an eigenvectoreigenvector

Example:Example:

Page 17: Amir Pelled. Topics What is 3D-Symmetry ? What is 3D-Symmetry ? Basic 3d-Symmetry Definitions Basic 3d-Symmetry Definitions Mathematical Definitions for

Mathematical Definitions for 3D-Mathematical Definitions for 3D-Space Space (EigenValues & EigenVectors)(EigenValues & EigenVectors)

The The dominant eigenvectordominant eigenvector of a of a matrix is an eigenvector matrix is an eigenvector corresponding to the eigenvalue of corresponding to the eigenvalue of largest magnitude (for real numbers, largest magnitude (for real numbers, largest absolute value) of that matrixlargest absolute value) of that matrix

EigenVectors of a symmetrical matrix EigenVectors of a symmetrical matrix

are mutually orthogonalare mutually orthogonal

Page 18: Amir Pelled. Topics What is 3D-Symmetry ? What is 3D-Symmetry ? Basic 3d-Symmetry Definitions Basic 3d-Symmetry Definitions Mathematical Definitions for

Mathematical Definitions for 3D-Mathematical Definitions for 3D-Space Space (EigenValues & EigenVectors)(EigenValues & EigenVectors)

x->x-><-x<-x

The eigenvector in the direction of x, is more dominant The eigenvector in the direction of x, is more dominant in describing the dispersion of mass around O than the in describing the dispersion of mass around O than the other two. As such, the eigenvalue associated with it will other two. As such, the eigenvalue associated with it will be the largest.be the largest.

oo

Page 19: Amir Pelled. Topics What is 3D-Symmetry ? What is 3D-Symmetry ? Basic 3d-Symmetry Definitions Basic 3d-Symmetry Definitions Mathematical Definitions for

Mathematical Definitions for 3D-Mathematical Definitions for 3D-Space Space (principle axes)(principle axes)

Principle axes can be defined as a set of N Principle axes can be defined as a set of N vectors that satisfy the following conditions:vectors that satisfy the following conditions:• They have a common intersection point at the They have a common intersection point at the

object’s centroidobject’s centroid• They are mutually orthogonalThey are mutually orthogonal• They point in the direction of the maximum They point in the direction of the maximum

variance of data variance of data

Page 20: Amir Pelled. Topics What is 3D-Symmetry ? What is 3D-Symmetry ? Basic 3d-Symmetry Definitions Basic 3d-Symmetry Definitions Mathematical Definitions for

Mathematical Definitions for 3D-Mathematical Definitions for 3D-Space Space (principle axes cont’)(principle axes cont’)

Principal Axis TheoremPrincipal Axis Theorem• Any plane of reflectional symmetry of a Any plane of reflectional symmetry of a

body is perpendicular to a principal axisbody is perpendicular to a principal axis• Any axis of rotational symmetry of a Any axis of rotational symmetry of a

body is a principal axisbody is a principal axis

Principal axes are eigenvectors of the Principal axes are eigenvectors of the object’s inertia matrix ( and its object’s inertia matrix ( and its covariance matrix as well)covariance matrix as well)

Page 21: Amir Pelled. Topics What is 3D-Symmetry ? What is 3D-Symmetry ? Basic 3d-Symmetry Definitions Basic 3d-Symmetry Definitions Mathematical Definitions for

Symmetry Detection Symmetry Detection AlgorithmsAlgorithms

There are numerous algorithms for 3D-There are numerous algorithms for 3D-symmetry detection but they have flawssymmetry detection but they have flaws Computational problemsComputational problems 2D based algorithms could detect symmetry 2D based algorithms could detect symmetry

only in specific directionsonly in specific directions NoiseNoise Standard of object/symmetry representationStandard of object/symmetry representation Unable to work with complex objectsUnable to work with complex objects

Page 22: Amir Pelled. Topics What is 3D-Symmetry ? What is 3D-Symmetry ? Basic 3d-Symmetry Definitions Basic 3d-Symmetry Definitions Mathematical Definitions for

Symmetry Detection Symmetry Detection AlgorithmsAlgorithms

We would like to introduce two We would like to introduce two improved algorithmsimproved algorithms An Oct-Tree based algorithmAn Oct-Tree based algorithm An Extended-Gaussian-Image algorithmAn Extended-Gaussian-Image algorithm

Page 23: Amir Pelled. Topics What is 3D-Symmetry ? What is 3D-Symmetry ? Basic 3d-Symmetry Definitions Basic 3d-Symmetry Definitions Mathematical Definitions for

Symmetry Detection Symmetry Detection Algorithms Algorithms (Oct-Tree)(Oct-Tree)

Why use an Oct-Tree ?Why use an Oct-Tree ? We need an object representation that We need an object representation that

allows :allows : Computing moment ( in order to form the inertia Computing moment ( in order to form the inertia

matrix)matrix) Linear transformation ( translation and rotation)Linear transformation ( translation and rotation) Cross-section extractionCross-section extraction Symmetry evaluationSymmetry evaluation

An Oct-Tree is a data structure that allows An Oct-Tree is a data structure that allows these operationsthese operations

Page 24: Amir Pelled. Topics What is 3D-Symmetry ? What is 3D-Symmetry ? Basic 3d-Symmetry Definitions Basic 3d-Symmetry Definitions Mathematical Definitions for

Symmetry Detection Symmetry Detection Algorithms Algorithms (Oct-Tree cont’)(Oct-Tree cont’)

A cross-section represented by a quad-tree can A cross-section represented by a quad-tree can be found simply by an oct-tree traversal.be found simply by an oct-tree traversal.

Symmetry evaluation of rotation and reflection Symmetry evaluation of rotation and reflection can be obtained by traversing and comparing can be obtained by traversing and comparing appropriate tree nodes. appropriate tree nodes. (( for rotation of n<=4. For n>5 for rotation of n<=4. For n>5 a more complex evaluation is required)a more complex evaluation is required)

Linear transformation can be achieved by Linear transformation can be achieved by moving the object from one group of cells, to moving the object from one group of cells, to another correlating group in the oct-tree. another correlating group in the oct-tree. (the (the transformations are not immune to quantization errors, but this transformations are not immune to quantization errors, but this does not significantly affect their performancedoes not significantly affect their performance

Page 25: Amir Pelled. Topics What is 3D-Symmetry ? What is 3D-Symmetry ? Basic 3d-Symmetry Definitions Basic 3d-Symmetry Definitions Mathematical Definitions for

Symmetry Detection Symmetry Detection Algorithms Algorithms (Oct-Tree cont’)(Oct-Tree cont’)

Building the tree :Building the tree : Starting with one cube enclosing the Starting with one cube enclosing the

entire objectentire object Mark all unmarked boxes White and Black Mark all unmarked boxes White and Black

(representing the absence, presence on the (representing the absence, presence on the object)object)

Mark all boxes containing a border of the Mark all boxes containing a border of the object Grey and split themobject Grey and split them

Continue until no more unmarked boxes Continue until no more unmarked boxes exist, or reached requested resolution.exist, or reached requested resolution.

Page 26: Amir Pelled. Topics What is 3D-Symmetry ? What is 3D-Symmetry ? Basic 3d-Symmetry Definitions Basic 3d-Symmetry Definitions Mathematical Definitions for

Symmetry Detection Symmetry Detection Algorithms Algorithms (Oct-Tree cont’)(Oct-Tree cont’)

Page 27: Amir Pelled. Topics What is 3D-Symmetry ? What is 3D-Symmetry ? Basic 3d-Symmetry Definitions Basic 3d-Symmetry Definitions Mathematical Definitions for

Symmetry Detection Symmetry Detection Algorithms Algorithms (Oct-Tree cont’)(Oct-Tree cont’)

Using the treeUsing the tree Step 1 : Step 1 :

Compute the eigenvalues associated with Compute the eigenvalues associated with the inertia matrixthe inertia matrix

Compute the principal axis transformCompute the principal axis transform For eigenvectors not uniquely determined, For eigenvectors not uniquely determined,

choose any orthogonal vectors (to the ones choose any orthogonal vectors (to the ones that are)that are)

Page 28: Amir Pelled. Topics What is 3D-Symmetry ? What is 3D-Symmetry ? Basic 3d-Symmetry Definitions Basic 3d-Symmetry Definitions Mathematical Definitions for

Symmetry Detection Symmetry Detection Algorithms Algorithms (Oct-Tree cont’)(Oct-Tree cont’)

Computing the inertia matrix with an oct-tree :Computing the inertia matrix with an oct-tree :

The inertia matrix is composed of central moments The inertia matrix is composed of central moments that are related to the ordinary moments Mthat are related to the ordinary moments Mpqrpqr of order of order (p+q+r : p,q,r (p+q+r : p,q,r NN00))

Where S is the oct-tree’s space and Where S is the oct-tree’s space and is the density function is the density function

Page 29: Amir Pelled. Topics What is 3D-Symmetry ? What is 3D-Symmetry ? Basic 3d-Symmetry Definitions Basic 3d-Symmetry Definitions Mathematical Definitions for

Symmetry Detection Symmetry Detection Algorithms Algorithms (Oct-Tree cont’)(Oct-Tree cont’)

Step 2:Step 2: Perform the principal axis transform of the Perform the principal axis transform of the

“input tree” in order to build the “principal “input tree” in order to build the “principal oct-tree”oct-tree”

The result of this step is that the object is The result of this step is that the object is centered at the origin, and its principal axes centered at the origin, and its principal axes are aligned with the coordinate axesare aligned with the coordinate axes

Page 30: Amir Pelled. Topics What is 3D-Symmetry ? What is 3D-Symmetry ? Basic 3d-Symmetry Definitions Basic 3d-Symmetry Definitions Mathematical Definitions for

Symmetry Detection Symmetry Detection Algorithms Algorithms (Oct-Tree cont’)(Oct-Tree cont’)

Step 3 :Step 3 : According to the eigenvalues acquired in step 1 According to the eigenvalues acquired in step 1

evaluate the types of symmetries we need to search ( evaluate the types of symmetries we need to search ( that there is a potential of )that there is a potential of )

Case 1Case 1 :If all eigenvalues are distinct, check for :If all eigenvalues are distinct, check for reflectional symmetry using the coordinate planesreflectional symmetry using the coordinate planes axial symmetry using the coordinate axesaxial symmetry using the coordinate axes central symmetry, using the centroidcentral symmetry, using the centroid

Case 2Case 2 :If two eigen values are equal also check for :If two eigen values are equal also check for Rotational symmetry using a cross-section of Rotational symmetry using a cross-section of

coordinate plane perpendicular to the unique coordinate plane perpendicular to the unique eigenvectoreigenvector

Case 3Case 3 :If all eigenvalues are equal also check for :If all eigenvalues are equal also check for central symmetry with respect to the origincentral symmetry with respect to the origin Spherical symmetry (if potential axes of symmetry Spherical symmetry (if potential axes of symmetry

are given)are given)

Page 31: Amir Pelled. Topics What is 3D-Symmetry ? What is 3D-Symmetry ? Basic 3d-Symmetry Definitions Basic 3d-Symmetry Definitions Mathematical Definitions for

Symmetry Detection Symmetry Detection Algorithms Algorithms (Oct-Tree cont’)(Oct-Tree cont’)

xx

zz

yy

If two eigen values are the same, If two eigen values are the same, we need to look for symmetry we need to look for symmetry along the third eigenvector or along the third eigenvector or perpendicular to itperpendicular to it

If all three eigenvalues are If all three eigenvalues are equal, there is a possibility equal, there is a possibility for spherical symmetryfor spherical symmetry

xx

zzyy

If all eigenvalues are distinct, search If all eigenvalues are distinct, search for symmetry along the dominant for symmetry along the dominant eigenvector or perpendicular to iteigenvector or perpendicular to it

Page 32: Amir Pelled. Topics What is 3D-Symmetry ? What is 3D-Symmetry ? Basic 3d-Symmetry Definitions Basic 3d-Symmetry Definitions Mathematical Definitions for

Symmetry Detection Symmetry Detection Algorithms Algorithms (symmetry detection using Oct-(symmetry detection using Oct-

Tree)Tree)

Page 33: Amir Pelled. Topics What is 3D-Symmetry ? What is 3D-Symmetry ? Basic 3d-Symmetry Definitions Basic 3d-Symmetry Definitions Mathematical Definitions for

Symmetry Detection Symmetry Detection Algorithms Algorithms (Extended Gaussian Image)(Extended Gaussian Image)

The Oct-Tree based algorithm The Oct-Tree based algorithm operates well on synthetic objects, operates well on synthetic objects, but when it comes to real images, it but when it comes to real images, it has its short-comings.has its short-comings.

The EGI algorithm solves this The EGI algorithm solves this problem and as such, is much more problem and as such, is much more flexible than the Oct-Tree solution.flexible than the Oct-Tree solution.

Page 34: Amir Pelled. Topics What is 3D-Symmetry ? What is 3D-Symmetry ? Basic 3d-Symmetry Definitions Basic 3d-Symmetry Definitions Mathematical Definitions for

Symmetry Detection Symmetry Detection Algorithms Algorithms (Extended Gaussian Image (Extended Gaussian Image

cont’)cont’)

The goals of the EGI algorithm :The goals of the EGI algorithm : Determine the position and orientation Determine the position and orientation

of the plane of reflection symmetryof the plane of reflection symmetry Determine the axis and order of Determine the axis and order of

rotational symmetry for images in a rotational symmetry for images in a variety of formatsvariety of formats

Page 35: Amir Pelled. Topics What is 3D-Symmetry ? What is 3D-Symmetry ? Basic 3d-Symmetry Definitions Basic 3d-Symmetry Definitions Mathematical Definitions for

Symmetry Detection Symmetry Detection Algorithms Algorithms (Extended Gaussian Image (Extended Gaussian Image

cont’)cont’)

It is not an objective of the algorithm to It is not an objective of the algorithm to determine whether or not an image is determine whether or not an image is symmetric, but assumes that the image symmetric, but assumes that the image has some degree of symmetry.has some degree of symmetry.

Not all symmetries are required to be Not all symmetries are required to be found, only the strongest. For rotational found, only the strongest. For rotational symmetry, the highest order is sought.symmetry, the highest order is sought.

Page 36: Amir Pelled. Topics What is 3D-Symmetry ? What is 3D-Symmetry ? Basic 3d-Symmetry Definitions Basic 3d-Symmetry Definitions Mathematical Definitions for

Symmetry Detection Symmetry Detection Algorithms Algorithms (Extended Gaussian Image (Extended Gaussian Image

cont’)cont’)

The Gaussian ImageThe Gaussian Image Take a 3D object. Declare a sphere that Take a 3D object. Declare a sphere that

encloses the object whose center of encloses the object whose center of mass is the center of the objectmass is the center of the object

From every surface of the object, draw a From every surface of the object, draw a normal vector whose tail lies at the normal vector whose tail lies at the center of the sphere, and head lies on a center of the sphere, and head lies on a point on the sphere appropriate to the point on the sphere appropriate to the particular faceparticular face

Page 37: Amir Pelled. Topics What is 3D-Symmetry ? What is 3D-Symmetry ? Basic 3d-Symmetry Definitions Basic 3d-Symmetry Definitions Mathematical Definitions for

Symmetry Detection Symmetry Detection Algorithms Algorithms (Extended Gaussian Image (Extended Gaussian Image

cont’)cont’)

Block objectBlock object Gi of a block objectGi of a block object

Page 38: Amir Pelled. Topics What is 3D-Symmetry ? What is 3D-Symmetry ? Basic 3d-Symmetry Definitions Basic 3d-Symmetry Definitions Mathematical Definitions for

Symmetry Detection Symmetry Detection Algorithms Algorithms (Extended Gaussian Image (Extended Gaussian Image

cont’)cont’)

The Extended Gaussian ImageThe Extended Gaussian Image Create the Gaussian Image, but assign each Create the Gaussian Image, but assign each

vector a weight (scalar) which is equal to vector a weight (scalar) which is equal to the area of the surface the vector is the area of the surface the vector is mappingmapping

8888

88

88

22 22

Page 39: Amir Pelled. Topics What is 3D-Symmetry ? What is 3D-Symmetry ? Basic 3d-Symmetry Definitions Basic 3d-Symmetry Definitions Mathematical Definitions for

Symmetry Detection Symmetry Detection Algorithms Algorithms (Extended Gaussian Image (Extended Gaussian Image

cont’)cont’)

The Orientation HistogramThe Orientation Histogram We need a data structure that stores the We need a data structure that stores the

EGI, in a fashion that a computer can EGI, in a fashion that a computer can useuse

Page 40: Amir Pelled. Topics What is 3D-Symmetry ? What is 3D-Symmetry ? Basic 3d-Symmetry Definitions Basic 3d-Symmetry Definitions Mathematical Definitions for

Symmetry Detection Symmetry Detection Algorithms Algorithms (Extended Gaussian Image (Extended Gaussian Image

cont’)cont’)

Tessellating the Gaussian SphereTessellating the Gaussian Sphere Place an Icosahedron in the gaussian sphere, so Place an Icosahedron in the gaussian sphere, so

that they both have the same center, and the that they both have the same center, and the vertices are touching the spherevertices are touching the sphere

Divide each triangle face into four triangle by Divide each triangle face into four triangle by connecting the mid-points of the three edgesconnecting the mid-points of the three edges

Normalize the new triangles onto the unit sphereNormalize the new triangles onto the unit sphere Repeat until desired resolution is achievedRepeat until desired resolution is achieved Convert the triangular faces into hexagonal facesConvert the triangular faces into hexagonal faces

Page 41: Amir Pelled. Topics What is 3D-Symmetry ? What is 3D-Symmetry ? Basic 3d-Symmetry Definitions Basic 3d-Symmetry Definitions Mathematical Definitions for

Symmetry Detection Symmetry Detection Algorithms Algorithms (Extended Gaussian Image (Extended Gaussian Image

cont’)cont’)

Properties of Tessellation Properties of Tessellation All the cells have the same areaAll the cells have the same area All cells are of the same shapeAll cells are of the same shape All cells have compact regular shapesAll cells have compact regular shapes The division should be fine enough to The division should be fine enough to

allow curvatureallow curvature Each bin (hexagon) of the tessellation Each bin (hexagon) of the tessellation

sphere is enumeratedsphere is enumerated

Page 42: Amir Pelled. Topics What is 3D-Symmetry ? What is 3D-Symmetry ? Basic 3d-Symmetry Definitions Basic 3d-Symmetry Definitions Mathematical Definitions for

Symmetry Detection Symmetry Detection Algorithms Algorithms (Extended Gaussian Image (Extended Gaussian Image

cont’)cont’)

objectobject Tessellation sphereTessellation sphere

Page 43: Amir Pelled. Topics What is 3D-Symmetry ? What is 3D-Symmetry ? Basic 3d-Symmetry Definitions Basic 3d-Symmetry Definitions Mathematical Definitions for

Symmetry Detection Symmetry Detection Algorithms Algorithms (Extended Gaussian Image (Extended Gaussian Image

cont’)cont’)

Creating the orientation histogramCreating the orientation histogram Using the Gaussian Image, assign each Using the Gaussian Image, assign each

normal to the appropriate bin (hexagon) normal to the appropriate bin (hexagon) in the Tessellation Spherein the Tessellation Sphere

For every bin, mark the number of For every bin, mark the number of normal that are assigned to itnormal that are assigned to it

Create the histogram F: bin -> Create the histogram F: bin -> num(normals)num(normals)

Page 44: Amir Pelled. Topics What is 3D-Symmetry ? What is 3D-Symmetry ? Basic 3d-Symmetry Definitions Basic 3d-Symmetry Definitions Mathematical Definitions for

Symmetry Detection Symmetry Detection Algorithms Algorithms (Extended Gaussian Image (Extended Gaussian Image

cont’)cont’)

Symmetry detection using the orientation Symmetry detection using the orientation histogramhistogram Reflectional symmetry :Reflectional symmetry :

The degree of reflectional symmetry in a plane is The degree of reflectional symmetry in a plane is measured by the correlation of the histogram with measured by the correlation of the histogram with itself after reflection in the planeitself after reflection in the plane

The correlation is formed by visiting each histogram The correlation is formed by visiting each histogram bin and multiplying its value by the value in the bin bin and multiplying its value by the value in the bin which mirrors it in the planewhich mirrors it in the plane

Accumulate the productsAccumulate the products The candidates for the symmetry plane normal are The candidates for the symmetry plane normal are

the three principal axis directions and their neighbors the three principal axis directions and their neighbors (5-6)(5-6)

The plane with the highest histogram correlation is The plane with the highest histogram correlation is the plane with the strongest symmetrythe plane with the strongest symmetry

Page 45: Amir Pelled. Topics What is 3D-Symmetry ? What is 3D-Symmetry ? Basic 3d-Symmetry Definitions Basic 3d-Symmetry Definitions Mathematical Definitions for

Symmetry Detection Symmetry Detection Algorithms Algorithms (reflection detection using EGI)(reflection detection using EGI)

Page 46: Amir Pelled. Topics What is 3D-Symmetry ? What is 3D-Symmetry ? Basic 3d-Symmetry Definitions Basic 3d-Symmetry Definitions Mathematical Definitions for

Symmetry Detection Symmetry Detection Algorithms Algorithms (Extended Gaussian Image (Extended Gaussian Image

cont’)cont’)

Symmetry detection using the Symmetry detection using the orientation histogramorientation histogram Rotation symmetry :Rotation symmetry :

We denote the rotation around vector We denote the rotation around vector nn through an angle through an angle θθ

For each candidate rotation degree, the For each candidate rotation degree, the histogram is rotated by the corresponding histogram is rotated by the corresponding angle, and the product is correlated with the angle, and the product is correlated with the originaloriginal

Page 47: Amir Pelled. Topics What is 3D-Symmetry ? What is 3D-Symmetry ? Basic 3d-Symmetry Definitions Basic 3d-Symmetry Definitions Mathematical Definitions for

Symmetry Detection Symmetry Detection Algorithms Algorithms (Extended Gaussian Image (Extended Gaussian Image

cont’)cont’)

This is performed for all candidate axes for This is performed for all candidate axes for rotational symmetry ( the eigenvectors )rotational symmetry ( the eigenvectors )

The order which results in a peak in the The order which results in a peak in the correlation is the strongest order of correlation is the strongest order of symmetry for the given axissymmetry for the given axis

The largest correlation from these axes The largest correlation from these axes indicates the axis of rotational symmetryindicates the axis of rotational symmetry

Page 48: Amir Pelled. Topics What is 3D-Symmetry ? What is 3D-Symmetry ? Basic 3d-Symmetry Definitions Basic 3d-Symmetry Definitions Mathematical Definitions for

Symmetry Detection Symmetry Detection Algorithms Algorithms (rotation detection using EGI)(rotation detection using EGI)

Page 49: Amir Pelled. Topics What is 3D-Symmetry ? What is 3D-Symmetry ? Basic 3d-Symmetry Definitions Basic 3d-Symmetry Definitions Mathematical Definitions for

Symmetry Detection Symmetry Detection Algorithms Algorithms (rotation detection using EGI)(rotation detection using EGI)

                                                                                                    (a) (b) (c)

Page 50: Amir Pelled. Topics What is 3D-Symmetry ? What is 3D-Symmetry ? Basic 3d-Symmetry Definitions Basic 3d-Symmetry Definitions Mathematical Definitions for

Symmetry Detection Symmetry Detection Algorithms Algorithms (rotation detection using EGI)(rotation detection using EGI)

This object also has an axis of This object also has an axis of 2-fold rotational symmetry, but 2-fold rotational symmetry, but the axis with the higher order the axis with the higher order will be the one identified by the will be the one identified by the algorithmalgorithm

Page 51: Amir Pelled. Topics What is 3D-Symmetry ? What is 3D-Symmetry ? Basic 3d-Symmetry Definitions Basic 3d-Symmetry Definitions Mathematical Definitions for

Symmetry Detection Symmetry Detection Algorithms Algorithms (Extended Gaussian Image (Extended Gaussian Image

cont’)cont’)

Advantages of using the EGI :Advantages of using the EGI : Reduce search spaceReduce search space

We only need to search one hemisphere of We only need to search one hemisphere of the histogramthe histogram

For high resolution tessellations, we can For high resolution tessellations, we can further reduce the search by focusing on the further reduce the search by focusing on the principal axes of the object and their principal axes of the object and their neighbors ( because of the correlation neighbors ( because of the correlation between the principal axes and the between the principal axes and the planes/axes of symmetry)planes/axes of symmetry)

Page 52: Amir Pelled. Topics What is 3D-Symmetry ? What is 3D-Symmetry ? Basic 3d-Symmetry Definitions Basic 3d-Symmetry Definitions Mathematical Definitions for

Symmetry Detection Symmetry Detection Algorithms Algorithms (Extended Gaussian Image (Extended Gaussian Image

cont’)cont’)

Advantages of using the EGI :Advantages of using the EGI : The corresponding EGI for each stored The corresponding EGI for each stored

object model can be saved in the model object model can be saved in the model databasedatabase

Model stored as a surface normal vector Model stored as a surface normal vector histogramhistogram

Surface normals available for extractionSurface normals available for extraction Once a match is found ( by compairing EGI Once a match is found ( by compairing EGI

histograms), both the identity and histograms), both the identity and orientation of the object may be calculatedorientation of the object may be calculated

Page 53: Amir Pelled. Topics What is 3D-Symmetry ? What is 3D-Symmetry ? Basic 3d-Symmetry Definitions Basic 3d-Symmetry Definitions Mathematical Definitions for

Symmetry Detection Symmetry Detection Algorithms Algorithms (Extended Gaussian Image (Extended Gaussian Image

cont’)cont’)

Disadvantages of using the EGI :Disadvantages of using the EGI : EGI’s only uniquely define convex EGI’s only uniquely define convex

objectsobjects An infinite number of non-convex An infinite number of non-convex

objects can possess the same EGIobjects can possess the same EGI The following objects have the same EGIThe following objects have the same EGI

Page 54: Amir Pelled. Topics What is 3D-Symmetry ? What is 3D-Symmetry ? Basic 3d-Symmetry Definitions Basic 3d-Symmetry Definitions Mathematical Definitions for

ApplicationsApplications

Object descriptorObject descriptor Use the object symmetry axes as identifiersUse the object symmetry axes as identifiers

Computer visionComputer vision Identify objectIdentify object

CompressionCompression Tessellation and CrystalographyTessellation and Crystalography Medical Technology (example :advantages Medical Technology (example :advantages

of MRI over mammography because of of MRI over mammography because of MRI symmetry)MRI symmetry)

Page 55: Amir Pelled. Topics What is 3D-Symmetry ? What is 3D-Symmetry ? Basic 3d-Symmetry Definitions Basic 3d-Symmetry Definitions Mathematical Definitions for

BibliographyBibliography

““3D Symmetry Detection Using the EGI” Changming Sun 3D Symmetry Detection Using the EGI” Changming Sun and Jamie Sherrahand Jamie Sherrah

““Symmetry Identification of a 3-D Object Represented by Symmetry Identification of a 3-D Object Represented by Octree” Predrag Minovic, Sciji Ishikawa and Kiyoshi KatoOctree” Predrag Minovic, Sciji Ishikawa and Kiyoshi Kato

Answers.comAnswers.com wolfram research wolfram research

Mathworld.wolfram.comMathworld.wolfram.com Scienceworld.wolfram.comScienceworld.wolfram.com

EG1527 Dynamics: Note 10 “Moments of Inertia”EG1527 Dynamics: Note 10 “Moments of Inertia” City University London DOC : Lecture 7 : “Polygons and City University London DOC : Lecture 7 : “Polygons and

Polyhedrons”Polyhedrons” ““Extended Gaussian Images” Berthold K.P.HornExtended Gaussian Images” Berthold K.P.Horn

Page 56: Amir Pelled. Topics What is 3D-Symmetry ? What is 3D-Symmetry ? Basic 3d-Symmetry Definitions Basic 3d-Symmetry Definitions Mathematical Definitions for