Title: Amir%20Pelled
13D-Symmetry
2Topics
- What is 3D-Symmetry ?
- Basic 3d-Symmetry Definitions
- Mathematical Definitions for 3D-Space
- Symmetry Detection Algorithms
- Applications
- Bibliography
3What is 3D-Symmetry ?
- Does this building possess 3D-Symmetry ?
4What is 3D-Symmetry ?
- A basic misconception
- We can only see the 2D-projection that is facing
us. - 3D-symmetry has to consider the whole of the
object
5Basic Definitions
- Topics
- 3d-reflection symmetry
- 3d-rotation symmetry
6Basic Definitions3D-Reflection-Symmetry
- A reflection symmetry has
- N mirror planes each passing through the objects
mass center ( in contrast to mirror axes in 2D) - A rotational symmetry has a center of rotation
- an axis (a line) in a 3D object ( in contrast to
a point in 2D) - A number of times N by which shapes are repeated
about that axis
7Basic Definitions3D-Reflection-Symmetry
- Reflection planes of a water molecule
8Basic Definitions3D-Reflection-Symmetry
9Basic Definitions3D-Reflection-Symmetry
- How many 3D-reflection symmetries does a cube
have ?
9
10Basic Definitions3D-Rotation-Symmetry
- A cube has these axes of rotational symmetry
4 axes of 3-fold each passing through the
centers of two opposite vertices
3 axes of 4-fold each passing through the
centers of two opposite faces
6 axes of 2-fold each passing through the
centers of two opposite edges
11Basic Definitions3D-Rotation-Symmetry
- Table of rotational symmetries for other platonic
objects -
Symmetry Basis
axes through vertices
Axes through face centers
Axes through edge centers
Icosahedron
6 5-fold
10 3-fold
15 2-fold
Dodecahedron
10 3-fold
6 5-fold
15 2-fold
Octahedron
3 4-fold
4 3-fold
6 2-fold
Hexahedron
4 3-fold
3 4-fold
6 2-fold
Tetrahedron
4 3-fold
4 3-fold
3 2-fold
12Mathematical Definitions for 3D-Space
- We need one standard method which could represent
an objects characteristics in 3D space - Shape
- Size
- Position
- Orientation
13Mathematical Definitions for 3D-Space
- Inertia Matrix
- Eigenvalues Eigenvectors
- Principal Axes
14Mathematical Definitions for 3D-Space (inertia
matrix)
- The inertia matrix of an object, is a
mathematical descriptor of the dispersion of the
objects mass, around its center. - If B is an object and
- O is the center of mass for B
- We sample points at coordinates (x,y,z) where x
is the distance from O on the yz plane - Mi is the mass of the object located at point i
15Mathematical Definitions for 3D-Space (inertia
matrix)
Notice that matrix I is symmetrical
16Mathematical Definitions for 3D-Space
(EigenValues EigenVectors)
- Scalar ? is called an eigenvalue of a linear
mapping A if there exists a non-zero vector x
such that Ax ?x - Vector x is called an eigenvector
Example
17Mathematical Definitions for 3D-Space
(EigenValues EigenVectors)
- The dominant eigenvector of a matrix is an
eigenvector corresponding to the eigenvalue of
largest magnitude (for real numbers, largest
absolute value) of that matrix -
- EigenVectors of a symmetrical matrix are mutually
orthogonal
18Mathematical Definitions for 3D-Space
(EigenValues EigenVectors)
x-gt
lt-x
o
The eigenvector in the direction of x, is more
dominant in describing the dispersion of mass
around O than the other two. As such, the
eigenvalue associated with it will be the largest.
19Mathematical Definitions for 3D-Space (principle
axes)
- Principle axes can be defined as a set of N
vectors that satisfy the following conditions - They have a common intersection point at the
objects centroid - They are mutually orthogonal
- They point in the direction of the maximum
variance of data
20Mathematical Definitions for 3D-Space (principle
axes cont)
- Principal Axis Theorem
- Any plane of reflectional symmetry of a body is
perpendicular to a principal axis - Any axis of rotational symmetry of a body is a
principal axis - Principal axes are eigenvectors of the objects
inertia matrix ( and its covariance matrix as
well)
21Symmetry Detection Algorithms
- There are numerous algorithms for 3D-symmetry
detection but they have flaws - Computational problems
- 2D based algorithms could detect symmetry only in
specific directions - Noise
- Standard of object/symmetry representation
- Unable to work with complex objects
22Symmetry Detection Algorithms
- We would like to introduce two improved
algorithms - An Oct-Tree based algorithm
- An Extended-Gaussian-Image algorithm
23Symmetry Detection Algorithms (Oct-Tree)
- Why use an Oct-Tree ?
- We need an object representation that allows
- Computing moment ( in order to form the inertia
matrix) - Linear transformation ( translation and rotation)
- Cross-section extraction
- Symmetry evaluation
- An Oct-Tree is a data structure that allows these
operations
24Symmetry Detection Algorithms (Oct-Tree cont)
- A cross-section represented by a quad-tree can be
found simply by an oct-tree traversal. - Symmetry evaluation of rotation and reflection
can be obtained by traversing and comparing
appropriate tree nodes. ( for rotation of nlt4.
For ngt5 a more complex evaluation is required) - Linear transformation can be achieved by moving
the object from one group of cells, to another
correlating group in the oct-tree. (the
transformations are not immune to quantization
errors, but this does not significantly affect
their performance
25Symmetry Detection Algorithms (Oct-Tree cont)
- Building the tree
- Starting with one cube enclosing the entire
object - Mark all unmarked boxes White and Black
(representing the absence, presence on the
object) - Mark all boxes containing a border of the object
Grey and split them - Continue until no more unmarked boxes exist, or
reached requested resolution.
26Symmetry Detection Algorithms (Oct-Tree cont)
27Symmetry Detection Algorithms (Oct-Tree cont)
- Using the tree
- Step 1
- Compute the eigenvalues associated with the
inertia matrix - Compute the principal axis transform
- For eigenvectors not uniquely determined, choose
any orthogonal vectors (to the ones that are)
28Symmetry Detection Algorithms (Oct-Tree cont)
Computing the inertia matrix with an oct-tree
The inertia matrix is composed of central moments
that are related to the ordinary moments Mpqr of
order (pqr p,q,r ?N0)
Where S is the oct-trees space and ? is the
density function
29Symmetry Detection Algorithms (Oct-Tree cont)
- Step 2
- Perform the principal axis transform of the
input tree in order to build the principal
oct-tree - The result of this step is that the object is
centered at the origin, and its principal axes
are aligned with the coordinate axes
30Symmetry Detection Algorithms (Oct-Tree cont)
- Step 3
- According to the eigenvalues acquired in step 1
evaluate the types of symmetries we need to
search ( that there is a potential of ) - Case 1 If all eigenvalues are distinct, check
for - reflectional symmetry using the coordinate planes
- axial symmetry using the coordinate axes
- central symmetry, using the centroid
- Case 2 If two eigen values are equal also check
for - Rotational symmetry using a cross-section of
coordinate plane perpendicular to the unique
eigenvector - Case 3 If all eigenvalues are equal also check
for - central symmetry with respect to the origin
- Spherical symmetry (if potential axes of symmetry
are given)
31Symmetry Detection Algorithms (Oct-Tree cont)
If all eigenvalues are distinct, search for
symmetry along the dominant eigenvector or
perpendicular to it
If two eigen values are the same, we need to look
for symmetry along the third eigenvector or
perpendicular to it
If all three eigenvalues are equal, there is a
possibility for spherical symmetry
32Symmetry Detection Algorithms (symmetry detection
using Oct-Tree)
33Symmetry Detection Algorithms (Extended Gaussian
Image)
- The Oct-Tree based algorithm operates well on
synthetic objects, but when it comes to real
images, it has its short-comings. - The EGI algorithm solves this problem and as
such, is much more flexible than the Oct-Tree
solution.
34Symmetry Detection Algorithms (Extended Gaussian
Image cont)
- The goals of the EGI algorithm
- Determine the position and orientation of the
plane of reflection symmetry - Determine the axis and order of rotational
symmetry for images in a variety of formats
35Symmetry Detection Algorithms (Extended Gaussian
Image cont)
- It is not an objective of the algorithm to
determine whether or not an image is symmetric,
but assumes that the image has some degree of
symmetry. - Not all symmetries are required to be found, only
the strongest. For rotational symmetry, the
highest order is sought.
36Symmetry Detection Algorithms (Extended Gaussian
Image cont)
- The Gaussian Image
- Take a 3D object. Declare a sphere that encloses
the object whose center of mass is the center of
the object - From every surface of the object, draw a normal
vector whose tail lies at the center of the
sphere, and head lies on a point on the sphere
appropriate to the particular face
37Symmetry Detection Algorithms (Extended Gaussian
Image cont)
Block object
Gi of a block object
38Symmetry Detection Algorithms (Extended Gaussian
Image cont)
- The Extended Gaussian Image
- Create the Gaussian Image, but assign each vector
a weight (scalar) which is equal to the area of
the surface the vector is mapping
8
8
2
2
8
8
39Symmetry Detection Algorithms (Extended Gaussian
Image cont)
- The Orientation Histogram
- We need a data structure that stores the EGI, in
a fashion that a computer can use
40Symmetry Detection Algorithms (Extended Gaussian
Image cont)
- Tessellating the Gaussian Sphere
- Place an Icosahedron in the gaussian sphere, so
that they both have the same center, and the
vertices are touching the sphere - Divide each triangle face into four triangle by
connecting the mid-points of the three edges - Normalize the new triangles onto the unit sphere
- Repeat until desired resolution is achieved
- Convert the triangular faces into hexagonal faces
41Symmetry Detection Algorithms (Extended Gaussian
Image cont)
- Properties of Tessellation
- All the cells have the same area
- All cells are of the same shape
- All cells have compact regular shapes
- The division should be fine enough to allow
curvature - Each bin (hexagon) of the tessellation sphere is
enumerated
42Symmetry Detection Algorithms (Extended Gaussian
Image cont)
object
Tessellation sphere
43Symmetry Detection Algorithms (Extended Gaussian
Image cont)
- Creating the orientation histogram
- Using the Gaussian Image, assign each normal to
the appropriate bin (hexagon) in the Tessellation
Sphere - For every bin, mark the number of normal that are
assigned to it - Create the histogram F bin -gt num(normals)
44Symmetry Detection Algorithms (Extended Gaussian
Image cont)
- Symmetry detection using the orientation
histogram - Reflectional symmetry
- The degree of reflectional symmetry in a plane is
measured by the correlation of the histogram with
itself after reflection in the plane - The correlation is formed by visiting each
histogram bin and multiplying its value by the
value in the bin which mirrors it in the plane - Accumulate the products
- The candidates for the symmetry plane normal are
the three principal axis directions and their
neighbors (5-6) - The plane with the highest histogram correlation
is the plane with the strongest symmetry
45Symmetry Detection Algorithms (reflection
detection using EGI)
46Symmetry Detection Algorithms (Extended Gaussian
Image cont)
- Symmetry detection using the orientation
histogram - Rotation symmetry
- We denote the rotation around vector n through an
angle ? - For each candidate rotation degree, the histogram
is rotated by the corresponding angle, and the
product is correlated with the original
47Symmetry Detection Algorithms (Extended Gaussian
Image cont)
- This is performed for all candidate axes for
rotational symmetry ( the eigenvectors ) - The order which results in a peak in the
correlation is the strongest order of symmetry
for the given axis - The largest correlation from these axes indicates
the axis of rotational symmetry
48Symmetry Detection Algorithms (rotation detection
using EGI)
49Symmetry Detection Algorithms (rotation detection
using EGI)
(a) (b) (c)
50Symmetry Detection Algorithms (rotation detection
using EGI)
This object also has an axis of 2-fold rotational
symmetry, but the axis with the higher order will
be the one identified by the algorithm
51Symmetry Detection Algorithms (Extended Gaussian
Image cont)
- Advantages of using the EGI
- Reduce search space
- We only need to search one hemisphere of the
histogram - For high resolution tessellations, we can further
reduce the search by focusing on the principal
axes of the object and their neighbors ( because
of the correlation between the principal axes and
the planes/axes of symmetry)
52Symmetry Detection Algorithms (Extended Gaussian
Image cont)
- Advantages of using the EGI
- The corresponding EGI for each stored object
model can be saved in the model database - Model stored as a surface normal vector histogram
- Surface normals available for extraction
- Once a match is found ( by compairing EGI
histograms), both the identity and orientation of
the object may be calculated
53Symmetry Detection Algorithms (Extended Gaussian
Image cont)
- Disadvantages of using the EGI
- EGIs only uniquely define convex objects
- An infinite number of non-convex objects can
possess the same EGI - The following objects have the same EGI
54Applications
- Object descriptor
- Use the object symmetry axes as identifiers
- Computer vision
- Identify object
- Compression
- Tessellation and Crystalography
- Medical Technology (example advantages of MRI
over mammography because of MRI symmetry)
55Bibliography
- 3D Symmetry Detection Using the EGI Changming
Sun and Jamie Sherrah - Symmetry Identification of a 3-D Object
Represented by Octree Predrag Minovic, Sciji
Ishikawa and Kiyoshi Kato - Answers.com
- wolfram research
- Mathworld.wolfram.com
- Scienceworld.wolfram.com
- EG1527 Dynamics Note 10 Moments of Inertia
- City University London DOC Lecture 7
Polygons and Polyhedrons - Extended Gaussian Images Berthold K.P.Horn
56The End
or is it ?