Presentation is loading. Please wait.

Presentation is loading. Please wait.

Scale-Space Representation for Matching of 3D Models

Similar presentations


Presentation on theme: "Scale-Space Representation for Matching of 3D Models"— Presentation transcript:

1 Scale-Space Representation for Matching of 3D Models
Dmitriy Bespalov Department of Computer Science College of Engineering Drexel University 3141 Chestnut Street Philadelphia, PA 19104

2 Overview of the Thesis Introduction Approach Experimental results
Overview of feature decomposition Variations of feature decomposition Matching Experimental results Conclusions, contributions and future work

3 Related Work ? query Database query result ? query

4 Goals of this Work Feature extraction technique
Models in polyhedral representation Using local information Tolerance to noise

5 CAD vs Shape Representation
CAD Representation Shape Representation conversion is hard Topologically and geometrically consistent Implicit surfaces Analytic surfaces NURBS, etc Approximate representation, error prone Mesh Point cloud Can produce with laser scanners conversion is easy

6 What is a Scale Space Representation?
Commonly used for Coarse-to-Fine representations of an object Very popular in computer Vision Constructed via spatial filters: Gaussian pyramids, Wavelets… Basic Idea: At each scale, topologically relevant components will decompose the object into so called salient parts Recursive application of this paradigm will create the object’s scale space hierarchy

7 Side Note: Compare Features
This Technique CAD/CAM

8 Algorithm Overview (I)
Obtain mesh representation M 2. Define measurement function: assign distance measure to every pair of points or triangles

9 Algorithm Overview (II)
3. Decompose M into relevant components using a singular value decomposition of distance matrix D Note: this creates a clustering based on the angle between a vector Oti and the basis vectors (ck, ck-1)

10 Algorithm Overview (III)
Recursive feature decomposition using two principle components creates binary feature trees. Use leaf nodes as features.

11 Algorithmic Complexity
Bisection process: SVD decomposition takes O(n3). Polyhedral representation creates a 3D lattice; if only neighboring vertices are used in construction of the distance matrix, SVD decomposition is faster and takes O(n2).

12 Variations of Feature Decomposition (I)
Use various distance measures to tune nature of extracted features Global Distance Function Geodesic Distance Function Angular Shortest Path Max-Angle on Angular Shortest Path Global Feature Extraction Local Distance Function Local Feature Extraction

13 Variations of Feature Decomposition (II)
Geodesic Distance Function

14 Variations of Feature Decomposition (III)
Angular Shortest Path

15 Variations of Feature Decomposition (IV)
Max-Angle on Angular Shortest Path

16 Controlling Feature Decomposition
Which “feature” is better? Need to control decomposition process to get these features Otherwise, get these features

17 Controlling Feature Decomposition: When to Stop?
Depends on the distance measure used At each step of decomposition: decide whether to stop Assign “quality” measure to each bisection

18 Controlling Global Feature Decomposition
f measures the “quality” of a bisection Assume decomposition of M1 into M2 and M3 Bisect M1 into M2 and M3 if f(M1) < 0.5 M2 M2 M3 M3

19 Controlling Local Feature Decomposition
“Quality” of bisection is angle based Assume decomposition of M1 into M2 and M3 Bisect M1 into M2 and M3 if angular distance between components M2 and M3 is large angle across the border of the cluster is max on the path between most of the pairs of faces in M2 and M3. M2 M3

20 Matching for Feature Extraction
features extract features set of features set of features How to match extracted features?

21 Matching for Global Feature Extraction
Decomposition trees are near-to-balanced Compare decomposition trees (bottom up dynamic programming) using sub-tree edit distances Calculate model similarity based on an overall similarity of matched components

22 Matching for Local Feature Extraction
Decomposition trees can not be used Compare feature graphs (leaves of decomposition trees) Sub-graph isomorphism is used to asses similarity Hill-climbing algorithm with random restarts

23 Experimental Results for Global Feature Extraction
Perform retrieval experiments LEGO dataset CAD dataset Functional classification Manufacturing classification

24 Retrieval Experiments
k-nearest neighbor classification (kNN) Recall and precision measures Precision against recall graphs Relevant models: number of models that fall in the same category as query model Retrieved models: number of models returned by a query Retrieved and Relevant models: number of models returned and that fell into the same category as query model

25 Techniques Used in Evaluation
Shape distributions (SD) Shape distributions with point pair classifications (SD-Class) Reeb graph comparison (Reeb) Shape distributions with weights learning (SD-Learn) Global Feature Extraction comparison (Scale-Space)

26 LEGO Classification X-Shape Axles Cylindrical Parts Wheels-Gears
Plates

27 Functional Classification
Springs Screws Gears Nuts Brackets Housings Linkage arms Functional Classification

28 Manufacturing Classification
Cast-then-machined: Prismatic Machined:

29 Experimental Results for Local Feature Extraction
Feature decomposition on CAD data Feature decomposition on partial and scanned data Perform retrieval experiments Functional classification on CAD dataset Retrieval on partial and scanned data

30 Experimental Results: CAD Data

31 Experimental Results: Partial Data

32 Experimental Results: Partial Data

33 Experimental Results: Partial Data

34 Experimental Results: Partial Data

35 Experimental Results: Partial Data

36 Experimental Results: Scanned Data
From Exact Representation 360° Scan Single Scan

37 Experimental Results: Scanned Data
From Exact Representation 360° Scan Single Scan An example of one-to-many correspondence

38 Experimental Results: Scanned Data
From Exact Representation 360° Scan Single Scan An example of one-to-one correspondence

39 Experimental Results: Scanned Data
From Exact Representation 360° Scan Single Scan An example of one-to-one correspondence

40 Experimental Results: Scanned Data
From Exact Representation 360° Scan Single Scan An example of many-to-many correspondence

41 Experimental Results: Scanned Data
From Exact Representation 360° Scan Single Scan An example of one-to-many correspondence

42 Experimental Results: Scanned Data
From Exact Representation 360° Scan Single Scan An example of one-to-one correspondence

43 Retrieval Using Functional Classification
Techniques used: Reeb graph comparison (Reeb) Global Feature Extraction (Scale-Space) Local Feature Extraction (Local Scale-Space)

44 Retrieval Using Functional Classification

45 Retrieval on Partial and Scanned Data
Construct feature graphs for CAD dataset Obtain several scanned and partial models For every scanned or partial model: Compare with every model in CAD dataset Sort by distance Return k nearest models

46 Retrieval on Partial and Scanned Data
Partial Data From Exact Representation 360° Scan Single Scan query CAD Database

47 Retrieval on Partial and Scanned Data
Full Scan Partial Scan Partial CAD

48 Retrieval on Partial and Scanned Data
Full Scan Partial Scan Partial CAD

49 Retrieval on Partial and Scanned Data
Full Scan Partial Scan Partial CAD

50 Retrieval on Partial and Scanned Data
Models Returned Correct Queries 5 3 / 9 10 5 / 9 15 7 / 9 20 9 / 9

51 Summary of Experimental Results
Feature extraction is acceptable Matching could be improved Matching for Global Feature Extraction: Comparison of feature pairs is weak, drawn from Reeb Graph technique Matching for Local Feature Extraction: No feature pairs comparison No many-to-many matching No handling for noise features

52 Conclusions & Contributions
Parameterizable feature extraction for CAD Features depend only on distance measure Applicable to partial and scanned data Query CAD database with scanned data Attempted to address matching problem

53 Future Work Introduce matching for feature graphs
Better comparison for feature pairs Handle many-to-many matching Identify noise features Develop various distance measures That resemble traditional CAD features Approximate B-Rep from polyhedral models

54 Q&A Sponsored by:

55 The Eckart-Young Theorem
The Eckart-Young Theorem: Given an n by m matrix X of rank r ≤ m ≤ n, and its singular value decomposition, ULV', where U is an n by m matrix, L is an m by m diagonal matrix of singular values, and V is an m by m matrix such that U'U = In and V'V = VV' = Im with the singular values arranged in decreasing sequence λ1 ≥ λ2 ≥ λ3 ≥ ... ≥ λm ≥ 0 then there exists an n by m matrix B of rank s, s ≤ r, which minimizes the sum of the squared error between the elements of X and the corresponding elements of B when B = UΛsV' where the diagonal elements of the m by m diagonal matrix Λs are λ1 ≥ λ2 ≥ λ3 ≥ ... ≥ λs > λs+1 = λs+2 = ... = λm = 0


Download ppt "Scale-Space Representation for Matching of 3D Models"

Similar presentations


Ads by Google