Axial flip invariance and fast exhaustive searching with wavelets l.jpg
This presentation is the property of its rightful owner.
Sponsored Links
1 / 52

Axial Flip Invariance and Fast Exhaustive Searching with Wavelets PowerPoint PPT Presentation


  • 58 Views
  • Uploaded on
  • Presentation posted in: General

Axial Flip Invariance and Fast Exhaustive Searching with Wavelets. Matthew Bolitho. Outline. Goals Shape Descriptors Invariance to rigid transformation Wavelets The wavelet transform Haar basis functions Axial ambiguity with wavelets Axial ambiguity Invariance Fast Exhaustive Searching.

Download Presentation

Axial Flip Invariance and Fast Exhaustive Searching with Wavelets

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Axial flip invariance and fast exhaustive searching with wavelets l.jpg

Axial Flip Invariance and Fast Exhaustive Searching with Wavelets

Matthew Bolitho


Outline l.jpg

Outline

  • Goals

  • Shape Descriptors

    • Invariance to rigid transformation

  • Wavelets

    • The wavelet transform

    • Haar basis functions

    • Axial ambiguity with wavelets

  • Axial ambiguity Invariance

  • Fast Exhaustive Searching


Wavelet based shape descriptor l.jpg

Wavelet based Shape Descriptor

  • Voxel based descriptor

    • Rasterise model into voxel grid

    • Apply Wavelet Transform

    • Subset of information into feature vectors

    • Compare vectors


Shape descriptor goals l.jpg

Shape Descriptor Goals

  • Concise to store

  • Quick to compute

  • Efficient to match

  • Discriminating

  • Invariant to transformations

  • Invariant to deformations

  • Insensitive to noise

  • Insensitive to topology

  • Robust to degeneracies


Project focus l.jpg

Project focus

  • Invariance to transformation

  • Efficient matching


Scale translation rotation invariance l.jpg

Scale, Translation, Rotation Invariance

  • Invariance through normalisation

  • Scale: scale voxel grid such that is just fits the whole model

  • Translation: set the origin of voxel grid to be model center of mass

  • Rotation: Principal Component Analysis


Principal component analysis l.jpg

Principal Component Analysis

  • Align model to a canonical frame

  • Calculate variance of points

  • Eigen-values of covariance matrix map to (x,y,z) axes in order of size

[1]


Axial ambiguity l.jpg

Axial Ambiguity

  • PCA has a problem

  • Eigen-values are only defined up to sign

  • In 3D, flip about x,y,z axes

[1]


Resolving the ambiguity l.jpg

Resolving the Ambiguity

  • Exhaustive search approach

    • Compare all possible alignments (8 in 3D)

    • Select alignment with minimal distance as best match

  • An invariant approach: make comparison invariant to axial flip


The wavelet transform l.jpg

The Wavelet Transform

  • Transforms a function to a new basis: Haar basis functions

  • Invertible

  • Non-Lossy

[2]


Haar basis functions l.jpg

Haar Basis Functions

  • Family of step functions

  • i specifies frequency family

  • j indexes family

  • Orthogonal

  • Orthonormal when scaled by

  • Fast to compute

  • Compute in-place


Constant function l.jpg

Constant Function


Family i 0 l.jpg

Family i=0


Family i 1 l.jpg

Family i=1


Family i 2 l.jpg

Family i=2


Nomenclature l.jpg

Nomenclature

  • Adopt a more convenient indexing scheme

i=0

i=1

i=2


Vector basis l.jpg

Vector Basis

  • Basis functions can also be represented as a set of orthonormal basis vectors:

  • Wavelet transform of function g is:


Example l.jpg

Example

  • Given a function

  • Wavelet transform is

  • Aside: given function


Resolving axial ambiguity l.jpg

Resolving Axial Ambiguity

  • Exploit wavelets to get:

    • Axial Flip Invariance

      • Make Wavelet Transform invariant to axial flip

    • Fast Exhaustive Search

      • Reduce the complexity of exhaustively testing all permutations of flip (recall: 8 in 3D)


Observation l.jpg

Observation


Observation21 l.jpg

Observation


Observation22 l.jpg

Observation


Observation23 l.jpg

Observation


Observation24 l.jpg

Observation


Wavelets and axial flip l.jpg

Wavelets and Axial Flip

  • Established a mapping for axial flip

    • f0 itself

    • f1  inverse of itself

    • Pairs  inverse of each other


Invariance l.jpg

Invariance

  • Goal: Discard information that determines flip

  • Goal: Not loose too much information

  • Use mapping to make wavelet transform invariant to flip

    • f0 is already invariant

    • | f1 | is invariant

    • Pairs are not, yet…


Invariance with pairs l.jpg

Invariance with pairs

  • For a pair

  • So, a+b and a-b behave like f1 and f0 under axial flip

  • Note: when a+b and a-b are known, a and b can be known – no loss of information; transform invertible


Observation28 l.jpg

Observation


Observation29 l.jpg

Observation


A new basis l.jpg

A New Basis

  • Redefine basis with a new mapping S( f )

  • Now all coefficients either map to themselves (+) or their inverse (-) under reflection


Invariance31 l.jpg

Invariance

  • New basis defines reflections with change in sign of half the coefficients

  • Invariance:

    • Store f0, f3, f6, f7

    • Store absolute value of f1, f2, f4, f5, …


Invariance example l.jpg

Invariance Example

  • Given g and h from previous example

    Perform wavelet transform:Transform basis:


Invariance evaluation l.jpg

Invariance Evaluation

  • Advantages

    • Only perform single comparison

  • Disadvantage

    • Discards sign of half the coefficients

       may hurt ability to discriminate


Exhaustive searching l.jpg

Exhaustive Searching

  • Rather than making comparison invariant, perform it a number of times:

    R is the set of all possible axial reflections

  • Good Idea: If possible reduce this comparison cost

     fast exhaustive searching


Fast exhaustive searching l.jpg

Fast Exhaustive searching

  • Distance between g and h, R(g) and h:

    Recall gi , hi : sign according to axial reflection


Fast exhaustive searching36 l.jpg

Fast Exhaustive searching

Recall the mapping of R(gi) gi, thus:


Fast exhaustive searching37 l.jpg

Fast Exhaustive searching

Collect together terms to form:


Fast exhaustive searching38 l.jpg

Fast Exhaustive searching

  • Now, we can express andonly in terms of gi and hi

  • We can calculate both from the decomposition of the first, with minimal extra computation


Fast exhaustive search example l.jpg

Fast Exhaustive search Example

  • Given g and h from previous examples

    Transform basis:


Fast exhaustive search example40 l.jpg

Fast Exhaustive search Example

Calculate gh+ and gh- from S(W(g)) and S(W(h)):

Calculate norms:


Fast search evaluation l.jpg

Fast search Evaluation

  • For minimal extra computation, all permutations of flip can be compared

  • No information is discarded

    • c.f. invariance


Higher dimensions l.jpg

Higher Dimensions

  • Both invariance and fast exhaustive search apply to higher dimensions

  • As dimensionality increases, invariance needs to discard more and more information

    • In 2D, 4 flips

    • In 3D, 8 flips


Applying transforms in 2d l.jpg

Applying Transforms in 2D

  • Transform rows


Applying transforms in 2d44 l.jpg

Applying Transforms in 2D

  • Transform columns


Exhaustive searching in 2d l.jpg

Exhaustive Searching in 2D

  • In 1D we had gh+ and gh-

  • In 2D we will have gh++, gh+-, gh-+andgh--

  • By applying both W(g) and S(g) in rows then columns, the 2D flip problem is reduced to two 1D flip problems

    • This makes the cross multiplication easier


Cross multiplication l.jpg

Cross multiplication

  • gh++, gh+-, gh-+andgh--are determined by cross multiplying the grid

    • + * + = gh++

    • etc


Exhaustive searching in 2d47 l.jpg

Exhaustive Searching in 2D


In 3d l.jpg

In 3D

  • The extension into 3D is similar:

    • 8 flips

    • 8 gh terms

    • 8 ways to combine gh terms


Conclusion l.jpg

Conclusion

  • Presented a way to overcome PCA alignment ambiguity

    • With minimal extra computation

    • With no loss of useful shape information


Conclusion ii l.jpg

Conclusion II

  • PCA still has problems

    • Instability: Small change in PCA alignment can change voxel vote

       Gaussian smoothing can distribute votes better


Future work l.jpg

Future Work

  • Integrate into complete shape descriptor

    • Concise to store

    • Quick to compute

    • Discriminating

    • Robustness

    • etc

  • Actual precision vs. recall results


References l.jpg

References

  • [1] Misha Kazhdan: Alignment slides, October 25 2004

  • [2] Original teapot image from http://www.plunk.org/~grantham/public/graphics.html


  • Login