The PlanarReflective Symmetry Transform Princeton University Motivation Symmetry

  • Slides: 65
Download presentation
The Planar-Reflective Symmetry Transform Princeton University

The Planar-Reflective Symmetry Transform Princeton University

Motivation Symmetry is everywhere

Motivation Symmetry is everywhere

Motivation Symmetry is everywhere Perfect Symmetry [Blum ’ 64, ’ 67] [Wolter ’ 85]

Motivation Symmetry is everywhere Perfect Symmetry [Blum ’ 64, ’ 67] [Wolter ’ 85] [Minovic ’ 97] [Martinet ’ 05]

Motivation Symmetry is everywhere Local Symmetry [Blum ’ 78] [Mitra ’ 06] [Simari ’

Motivation Symmetry is everywhere Local Symmetry [Blum ’ 78] [Mitra ’ 06] [Simari ’ 06]

Motivation Symmetry is everywhere Partial Symmetry [Zabrodsky ’ 95] [Kazhdan ’ 03]

Motivation Symmetry is everywhere Partial Symmetry [Zabrodsky ’ 95] [Kazhdan ’ 03]

Goal A computational representation that describes all planar symmetries of a shape ? Input

Goal A computational representation that describes all planar symmetries of a shape ? Input Model

Symmetry Transform A computational representation that describes all planar symmetries of a shape ?

Symmetry Transform A computational representation that describes all planar symmetries of a shape ? Input Model Symmetry Transform

Symmetry Transform A computational representation that describes all planar symmetries of a shape ?

Symmetry Transform A computational representation that describes all planar symmetries of a shape ? Perfect Symmetry = 1. 0

Symmetry Transform A computational representation that describes all planar symmetries of a shape ?

Symmetry Transform A computational representation that describes all planar symmetries of a shape ? Zero Symmetry = 0. 0

Symmetry Transform A computational representation that describes all planar symmetries of a shape ?

Symmetry Transform A computational representation that describes all planar symmetries of a shape ? Local Symmetry = 0. 3

Symmetry Transform A computational representation that describes all planar symmetries of a shape ?

Symmetry Transform A computational representation that describes all planar symmetries of a shape ? Partial Symmetry = 0. 2

Symmetry Measure Symmetry of a shape is measured by correlation with its reflection

Symmetry Measure Symmetry of a shape is measured by correlation with its reflection

Symmetry Measure Symmetry of a shape is measured by correlation with its reflection Symmetry

Symmetry Measure Symmetry of a shape is measured by correlation with its reflection Symmetry = 0. 7

Symmetry Measure Symmetry of a shape is measured by correlation with its reflection Symmetry

Symmetry Measure Symmetry of a shape is measured by correlation with its reflection Symmetry = 0. 3

Outline • Introduction • Algorithm – Computing Discrete Transform – Finding Local Maxima Precisely

Outline • Introduction • Algorithm – Computing Discrete Transform – Finding Local Maxima Precisely • Applications – Alignment – Matching – Segmentation – Viewpoint Selection • Summary

PRST

PRST

Outline • Introduction • Algorithm – Computing Discrete Transform – Finding Local Maxima Precisely

Outline • Introduction • Algorithm – Computing Discrete Transform – Finding Local Maxima Precisely • Applications – Alignment – Segmentation • Summary – Matching – Viewpoint Selection

Computing Discrete Transform n planes • Brute Force • Convolution • Monte-Carlo

Computing Discrete Transform n planes • Brute Force • Convolution • Monte-Carlo

Computing Discrete Transform O(n 3) planes X = O(n 6) O(n 3) dot product

Computing Discrete Transform O(n 3) planes X = O(n 6) O(n 3) dot product O(n 6) n planes • Brute Force • Convolution • Monte-Carlo

Computing Discrete Transform O(n 6) O(n 5 Log n) n planes • Brute Force

Computing Discrete Transform O(n 6) O(n 5 Log n) n planes • Brute Force • Convolution • Monte-Carlo

Computing Discrete Transform • Brute Force • Convolution • Monte-Carlo O(n 6) O(n 5

Computing Discrete Transform • Brute Force • Convolution • Monte-Carlo O(n 6) O(n 5 Log n) O(n 4) For 3 D meshes – Most of the dot product contains zeros. – Use Monte-Carlo Importance Sampling.

Offset Monte Carlo Algorithm Angle Input Model Symmetry Transform

Offset Monte Carlo Algorithm Angle Input Model Symmetry Transform

Monte Carlo Algorithm Offset Monte Carlo sample for single plane Angle Input Model Symmetry

Monte Carlo Algorithm Offset Monte Carlo sample for single plane Angle Input Model Symmetry Transform

Offset Monte Carlo Algorithm Angle Input Model Symmetry Transform

Offset Monte Carlo Algorithm Angle Input Model Symmetry Transform

Offset Monte Carlo Algorithm Angle Input Model Symmetry Transform

Offset Monte Carlo Algorithm Angle Input Model Symmetry Transform

Offset Monte Carlo Algorithm Angle Input Model Symmetry Transform

Offset Monte Carlo Algorithm Angle Input Model Symmetry Transform

Offset Monte Carlo Algorithm Angle Input Model Symmetry Transform

Offset Monte Carlo Algorithm Angle Input Model Symmetry Transform

Offset Monte Carlo Algorithm Angle Input Model Symmetry Transform

Offset Monte Carlo Algorithm Angle Input Model Symmetry Transform

Weighting Samples Need to weight sample pairs by the inverse of the distance between

Weighting Samples Need to weight sample pairs by the inverse of the distance between them P 2 d P 1

Weighting Samples Need to weight sample pairs by the inverse of the distance between

Weighting Samples Need to weight sample pairs by the inverse of the distance between them Two planes of (equal) perfect symmetry

Weighting Samples Need to weight sample pairs by the inverse of the distance between

Weighting Samples Need to weight sample pairs by the inverse of the distance between them Votes for vertical plane…

Weighting Samples Need to weight sample pairs by the inverse of the distance between

Weighting Samples Need to weight sample pairs by the inverse of the distance between them Votes for horizontal plane.

Outline • Introduction • Algorithm – Computing Discrete Transform – Finding Local Maxima Precisely

Outline • Introduction • Algorithm – Computing Discrete Transform – Finding Local Maxima Precisely • Applications – Alignment – Segmentation • Summary – Matching – Viewpoint Selection

Finding Local Maxima Precisely Motivation: • Significant symmetries will be local maxima of the

Finding Local Maxima Precisely Motivation: • Significant symmetries will be local maxima of the transform: the Principal Symmetries of the model Principal Symmetries

Finding Local Maxima Precisely Approach: • Start from local maxima of discrete transform •

Finding Local Maxima Precisely Approach: • Start from local maxima of discrete transform • Finding the candidate plane by using threshold(1 -r/R)

Finding Local Maxima Precisely Approach: • Start from local maxima of discrete transform •

Finding Local Maxima Precisely Approach: • Start from local maxima of discrete transform • Refine iteratively to find local maxima precisely ………. Initial Guess Final Result

Outline • Introduction • Algorithm – Computing discrete transform – Finding Local Maxima Precisely

Outline • Introduction • Algorithm – Computing discrete transform – Finding Local Maxima Precisely • Applications – Alignment – Segmentation • Summary – Matching – Viewpoint Selection

Application: Alignment Motivation: • Composition of range scans • Feature mapping PCA Alignment

Application: Alignment Motivation: • Composition of range scans • Feature mapping PCA Alignment

Application: Alignment Approach: • Perpendicular planes with the greatest symmetries create a symmetry-based coordinate

Application: Alignment Approach: • Perpendicular planes with the greatest symmetries create a symmetry-based coordinate system.

Application: Alignment Approach: • Perpendicular planes with the greatest symmetries create a symmetry-based coordinate

Application: Alignment Approach: • Perpendicular planes with the greatest symmetries create a symmetry-based coordinate system.

Application: Alignment Approach: • Perpendicular planes with the greatest symmetries create a symmetry-based coordinate

Application: Alignment Approach: • Perpendicular planes with the greatest symmetries create a symmetry-based coordinate system.

Application: Alignment Approach: • Perpendicular planes with the greatest symmetries create a symmetry-based coordinate

Application: Alignment Approach: • Perpendicular planes with the greatest symmetries create a symmetry-based coordinate system.

Application: Alignment Results: PCA Alignment Symmetry Alignment

Application: Alignment Results: PCA Alignment Symmetry Alignment

Application: Matching Motivation: • Database searching = Query Database Best Match

Application: Matching Motivation: • Database searching = Query Database Best Match

Application: Matching Observation: • All chairs display similar principal symmetries

Application: Matching Observation: • All chairs display similar principal symmetries

Application: Matching Approach: • Use Symmetry transform as shape descriptor = Query Transform Database

Application: Matching Approach: • Use Symmetry transform as shape descriptor = Query Transform Database Best Match

Application: Matching Results: • The PRST provides orthogonal information about models and can therefore

Application: Matching Results: • The PRST provides orthogonal information about models and can therefore be combined with other shape descriptors

Application: Matching Results: • The PRST provides orthogonal information about models and can therefore

Application: Matching Results: • The PRST provides orthogonal information about models and can therefore be combined with other shape descriptors

Application: Matching Results: • The PRST provides orthogonal information about models and can therefore

Application: Matching Results: • The PRST provides orthogonal information about models and can therefore be combined with other shape descriptors

Application: Segmentation Motivation: • Modeling by parts [Chazelle ’ 95][Li ’ 01] [Mangan ’

Application: Segmentation Motivation: • Modeling by parts [Chazelle ’ 95][Li ’ 01] [Mangan ’ 99][Garland ’ 01] [Katz ’ 03]

Application: Segmentation Observation: • Components will have strong local symmetries not shared by other

Application: Segmentation Observation: • Components will have strong local symmetries not shared by other components

Application: Segmentation Observation: • Components will have strong local symmetries not shared by other

Application: Segmentation Observation: • Components will have strong local symmetries not shared by other components

Application: Segmentation Observation: • Components will have strong local symmetries not shared by other

Application: Segmentation Observation: • Components will have strong local symmetries not shared by other components

Application: Segmentation Observation: • Components will have strong local symmetries not shared by other

Application: Segmentation Observation: • Components will have strong local symmetries not shared by other components

Application: Segmentation Observation: • Components will have strong local symmetries not shared by other

Application: Segmentation Observation: • Components will have strong local symmetries not shared by other components

Application: Segmentation Approach: • Cluster points on the surface by how well they support

Application: Segmentation Approach: • Cluster points on the surface by how well they support different symmetries …. . Support = 0. 1 Support = 0. 5 Support = 0. 9 Symmetry Vector = { 0. 1 , 0. 5 , …. , 0. 9 }

Application: Segmentation Results:

Application: Segmentation Results:

Application: Viewpoint Selection Motivation: • Catalog generation • Image Based Rendering [Blanz ’ 99][Vasquez

Application: Viewpoint Selection Motivation: • Catalog generation • Image Based Rendering [Blanz ’ 99][Vasquez ’ 01] [Lee ’ 05][Abbasi ’ 00] Picture from Blanz et al. ‘ 99

Application: Viewpoint Selection Approach: • Symmetry represents redundancy in information.

Application: Viewpoint Selection Approach: • Symmetry represents redundancy in information.

Application: Viewpoint Selection Approach: • Symmetry represents redundancy in information • Minimize the amount

Application: Viewpoint Selection Approach: • Symmetry represents redundancy in information • Minimize the amount of visible symmetry • Every plane of symmetry votes for a viewing direction perpendicular to it Best Viewing Directions

Application: Viewpoint Selection Results: Viewpoint Function

Application: Viewpoint Selection Results: Viewpoint Function

Application: Viewpoint Selection Results: Viewpoint Function Best Viewpoint

Application: Viewpoint Selection Results: Viewpoint Function Best Viewpoint

Application: Viewpoint Selection Results: Viewpoint Function Best Viewpoint Worst Viewpoint

Application: Viewpoint Selection Results: Viewpoint Function Best Viewpoint Worst Viewpoint

Application: Viewpoint Selection Results:

Application: Viewpoint Selection Results:

The End

The End