Navigating and Browsing 3D Models in 3DLIB Hesham Anan, Kurt Maly, Mohammad Zubair Computer Science...

33
Navigating and Browsing 3D Models in 3DLIB Hesham Anan, Kurt Maly, Mohammad Zubair Computer Science Dept. Old Dominion University, Norfolk, VA, 23529 (anan, maly, zubair @ cs . odu . edu )

Transcript of Navigating and Browsing 3D Models in 3DLIB Hesham Anan, Kurt Maly, Mohammad Zubair Computer Science...

Page 1: Navigating and Browsing 3D Models in 3DLIB Hesham Anan, Kurt Maly, Mohammad Zubair Computer Science Dept. Old Dominion University, Norfolk, VA, 23529 (anan,

Navigating and Browsing 3D Models in 3DLIB

Hesham Anan, Kurt Maly, Mohammad ZubairComputer Science Dept. Old Dominion

University, Norfolk, VA, 23529(anan, maly, zubair @cs.odu.edu)

Page 2: Navigating and Browsing 3D Models in 3DLIB Hesham Anan, Kurt Maly, Mohammad Zubair Computer Science Dept. Old Dominion University, Norfolk, VA, 23529 (anan,

Motivation

Handling three-dimensional (3D) data in digital Handling three-dimensional (3D) data in digital libraries (DL) faces many challenges such as: efficient storage, fast retrieval, and a user-friendly search and discovery process

Browsing 3D models by grouping by shape is difficult.

Page 3: Navigating and Browsing 3D Models in 3DLIB Hesham Anan, Kurt Maly, Mohammad Zubair Computer Science Dept. Old Dominion University, Norfolk, VA, 23529 (anan,

Objective

Support browsing in a DL for 3D models by grouping objects by similarity.

Develop a clustering algorithm based on a signature based similarity measure.

Page 4: Navigating and Browsing 3D Models in 3DLIB Hesham Anan, Kurt Maly, Mohammad Zubair Computer Science Dept. Old Dominion University, Norfolk, VA, 23529 (anan,

Background3DLIB Architecture

Metadata

Signatures

3D Repository

Ora

cle

Se

rver

Anchor Point Extraction and

Normal Direction Calculation

Signature Generation

Upload Service

Client

3D Model

Publishing Service

WWW Client

Metadata Search Server

Local Cache

Metadata

Anchor Point Extraction and

Normal Direction Calculation

Signature Generation

Similarity Matching Engine

3D Model

Local Cache

Search & Discovery Service

3D ViewerAggregator

(Stream Manager)Signature Retrieval

Service

Progressive Retrieval Service

Metadata Browser

Navigator of Clustered Models

Page 5: Navigating and Browsing 3D Models in 3DLIB Hesham Anan, Kurt Maly, Mohammad Zubair Computer Science Dept. Old Dominion University, Norfolk, VA, 23529 (anan,

Services 3D Repository: Store the 3D models and their metadata in

database. Publishing service: accepts the 3D model and its metadata and

passes them to the storage service. (This service will be updated to automatically generate some of the metadata and signature images).

Search and discovery service: searches for 3D models by their associated metadata. This service has the capability to perform shape-similarity searches as well as searching for 3D models by their corresponding metadata. A sub-component of this service is the metadata browser which is used to view search results. It also have a navigation sub-component that is used to navigate through clusters of 3D models.

Progressive Retrieval services: Provides the capability to progressively from the database.

3D Viewer: Renders the 3D model and allows the end use to view the model from different perspectives.

Page 6: Navigating and Browsing 3D Models in 3DLIB Hesham Anan, Kurt Maly, Mohammad Zubair Computer Science Dept. Old Dominion University, Norfolk, VA, 23529 (anan,

Surface Signature

Surface signature is a 2D image that captures information about the shape of the 3D model using the angles relative to the normal direction at an anchor point and the distance of all 3D model points relative to the anchor point.

Page 7: Navigating and Browsing 3D Models in 3DLIB Hesham Anan, Kurt Maly, Mohammad Zubair Computer Science Dept. Old Dominion University, Norfolk, VA, 23529 (anan,

Why use Surface Signature

Captures significant data about the object Easy to discretize and to compress Enables reconstruction of original object (with

some loss of details – degree of loss depends on number of signatures used)

Page 8: Navigating and Browsing 3D Models in 3DLIB Hesham Anan, Kurt Maly, Mohammad Zubair Computer Science Dept. Old Dominion University, Norfolk, VA, 23529 (anan,

Example Free-Form Surface

Page 9: Navigating and Browsing 3D Models in 3DLIB Hesham Anan, Kurt Maly, Mohammad Zubair Computer Science Dept. Old Dominion University, Norfolk, VA, 23529 (anan,

Signature (1)

Page 10: Navigating and Browsing 3D Models in 3DLIB Hesham Anan, Kurt Maly, Mohammad Zubair Computer Science Dept. Old Dominion University, Norfolk, VA, 23529 (anan,

Signature (2)

Page 11: Navigating and Browsing 3D Models in 3DLIB Hesham Anan, Kurt Maly, Mohammad Zubair Computer Science Dept. Old Dominion University, Norfolk, VA, 23529 (anan,

Reconstruction

Page 12: Navigating and Browsing 3D Models in 3DLIB Hesham Anan, Kurt Maly, Mohammad Zubair Computer Science Dept. Old Dominion University, Norfolk, VA, 23529 (anan,

Background

The representation of the 3D models is a sequence of 2D images called surface signatures.

The mapping from the 3D domain to the 2D signature image is many-to-one.

The decompression algorithm is as follows: For each component of the 3D object representation, do the following:

Create a (m*l*n) grid of Voxels. Where m, l, and n are determined according to the available memory storage and to the required granularity in the directions of X, Y and Z respectively.

Define a mapping from the grid coordinates to 3D coordinates. Decompress the 2D-surface signature image For each non-zero pixel in the 2D-surface signature image compute the equation of the inverse signature circle put the circle as a set of Voxels in the 3D grid Find the intersection of all 3D grids. This will be the decompressed

vertices of the 3D object

Page 13: Navigating and Browsing 3D Models in 3DLIB Hesham Anan, Kurt Maly, Mohammad Zubair Computer Science Dept. Old Dominion University, Norfolk, VA, 23529 (anan,

Browsing and Navigation Service

The three factors to be considered in designing a browsing and navigation service are: how many objects can the viewer absorb to

make a selection (N); how do we define similarity (sim); and how do we select a representative object from

a cluster (key).

Page 14: Navigating and Browsing 3D Models in 3DLIB Hesham Anan, Kurt Maly, Mohammad Zubair Computer Science Dept. Old Dominion University, Norfolk, VA, 23529 (anan,

Browsing and Navigation Service

Basic assumption: if two signatures i and j are similar the models i and j are similar (experimentally verified).

Similarity is defined as the average root mean square error between all signature images of the two models:

Wherek is the number of signatures used in computing similarity for each model is the value for pixel that has coordinates m,l in signature s.i,j are the two models whose similarity is computed

k

s

Height

m

Width

l jsisji lmPlmPk

Sim1

0 0

2,,, )),(),((

1

),(, lmP is

Page 15: Navigating and Browsing 3D Models in 3DLIB Hesham Anan, Kurt Maly, Mohammad Zubair Computer Science Dept. Old Dominion University, Norfolk, VA, 23529 (anan,

Browsing and Navigation Service

Based on this similarity measure, we used a direct join clustering algorithm to cluster 3D models as follows: Compute the similarity between each two

models. Place each model in its own cluster. While (Number of Clusters > N) where N is

the desired number of clusters Merge the two closest clusters

Page 16: Navigating and Browsing 3D Models in 3DLIB Hesham Anan, Kurt Maly, Mohammad Zubair Computer Science Dept. Old Dominion University, Norfolk, VA, 23529 (anan,

Browsing and Navigation Service

Selecting the number of clusters (N) is a key issue in this algorithm.

This number should be as small as possible because only keys of these clusters are used in the top level browsing of the model.

The smaller this number gets, the user will view a small number of keys.

However, we do not want it to be too small to have un-correlated models grouped together

Page 17: Navigating and Browsing 3D Models in 3DLIB Hesham Anan, Kurt Maly, Mohammad Zubair Computer Science Dept. Old Dominion University, Norfolk, VA, 23529 (anan,

Browsing and Navigation Service

Two error metrics are introduced to study the trade-off of varying N: the Internal cluster error and the External cluster error. The internal cluster error measures the average

distance (similarity) of any two objects in a cluster.

Where N is the number of clusters, is the number of member of cluster I, is the similarity value between model j and model k.

im

kjSim ,

N

i

m

j

m

kkj

i

i i

SimmN 1 1 1

,2 )1(11

ErrorCluster Internal

Page 18: Navigating and Browsing 3D Models in 3DLIB Hesham Anan, Kurt Maly, Mohammad Zubair Computer Science Dept. Old Dominion University, Norfolk, VA, 23529 (anan,

Browsing and Navigation Service

The external cluster error measures the average distance of objects in different clusters.

N is the number of clusters,

is the number of member of cluster I,

is the similarity value between model j and model k.

N

i

m

j

ihN

h

m

kkjipN

ppi

i h

Sim

mmN 1 1

,

1 1,,

1

11ErrorCluster External

im

kjSim ,

Page 19: Navigating and Browsing 3D Models in 3DLIB Hesham Anan, Kurt Maly, Mohammad Zubair Computer Science Dept. Old Dominion University, Norfolk, VA, 23529 (anan,

Algorithm for Browsing and Navigation Service Clustering of 3D models is performed offline based

on shape-similarity (as was illustrated earlier). Keys of each cluster are computed where a cluster

keyn is defined as the cluster member that has the min average of internal clustering error within cluster n.

The user is presented with a view that contains the cluster keys.

Upon selection of a cluster key, the user can view the members of the cluster.

The process can be applied recursively to view the contents of a single cluster but sub-clustering the members and repeating the above process.

Page 20: Navigating and Browsing 3D Models in 3DLIB Hesham Anan, Kurt Maly, Mohammad Zubair Computer Science Dept. Old Dominion University, Norfolk, VA, 23529 (anan,

Browsing and Navigation

Web Client Key Clusters Storage Cluster Contents 3D DB

Initial View

Retrieve Cluster

Send Cluster Keys (centers)

Send Cluster Contents()

Retrieve 3D Model

Send 3D Model()

Page 21: Navigating and Browsing 3D Models in 3DLIB Hesham Anan, Kurt Maly, Mohammad Zubair Computer Science Dept. Old Dominion University, Norfolk, VA, 23529 (anan,

Experimental Results

A test bed that contained about 350 3D-models. Some of the models were designed using 3D studio. Others were collected from the Internet from different archives such as 3D café (http://www.3Dcafe.com).

Page 22: Navigating and Browsing 3D Models in 3DLIB Hesham Anan, Kurt Maly, Mohammad Zubair Computer Science Dept. Old Dominion University, Norfolk, VA, 23529 (anan,

Experimental Results - Cluster Sample 1

(a)

Page 23: Navigating and Browsing 3D Models in 3DLIB Hesham Anan, Kurt Maly, Mohammad Zubair Computer Science Dept. Old Dominion University, Norfolk, VA, 23529 (anan,

Experimental Results - Cluster Sample 2

Page 24: Navigating and Browsing 3D Models in 3DLIB Hesham Anan, Kurt Maly, Mohammad Zubair Computer Science Dept. Old Dominion University, Norfolk, VA, 23529 (anan,

Experimental Results - Cluster Sample 3

(c)

Page 25: Navigating and Browsing 3D Models in 3DLIB Hesham Anan, Kurt Maly, Mohammad Zubair Computer Science Dept. Old Dominion University, Norfolk, VA, 23529 (anan,

Experimental Results - Cluster Sample 4

Page 26: Navigating and Browsing 3D Models in 3DLIB Hesham Anan, Kurt Maly, Mohammad Zubair Computer Science Dept. Old Dominion University, Norfolk, VA, 23529 (anan,

Experimental ResultsClustering Error

• In this figure we show the relation of the inter and intra cluster errors for a particular collection for varying N.

• we also show an overall error that is the combination of the two: overall error = 0.5*Intra Cluster Error+ 0.5*Inter Cluster error

Clustering Error

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0 5 10 15 20 25 30 35

Number of Clusters

Err

or

Internal Error

External Error

Total Error

Page 27: Navigating and Browsing 3D Models in 3DLIB Hesham Anan, Kurt Maly, Mohammad Zubair Computer Science Dept. Old Dominion University, Norfolk, VA, 23529 (anan,

Experimental Results Clustering Error for Random Subcollections

Clustering Error

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0 5 10 15 20 25 30 35

Number of Clusters

Err

or Intenal Error

External Error

Total Error

Page 28: Navigating and Browsing 3D Models in 3DLIB Hesham Anan, Kurt Maly, Mohammad Zubair Computer Science Dept. Old Dominion University, Norfolk, VA, 23529 (anan,

Experimental Results Clustering Error for Random Subcollections

Clustering Error

-0.1

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0 5 10 15 20 25 30 35

Number of Clusters

Err

or Internal Error

External Error

Total Error

Page 29: Navigating and Browsing 3D Models in 3DLIB Hesham Anan, Kurt Maly, Mohammad Zubair Computer Science Dept. Old Dominion University, Norfolk, VA, 23529 (anan,

Experimental Results

We have shown the relation of the internal and external cluster errors for a particular collection for varying N.

This kind of graph can be useful to the user in making a choice of N, given that the user is aware of her own capacity for handling a number of 3D objects simultaneously. Since the external cluster error reaches a limit at around 30 clusters, we have computed a number of data points between 1 and 30 to show the detail of the curves

Page 30: Navigating and Browsing 3D Models in 3DLIB Hesham Anan, Kurt Maly, Mohammad Zubair Computer Science Dept. Old Dominion University, Norfolk, VA, 23529 (anan,

Experimental Results

The directions of the curves is intuitive, the shape is not. Our current belief is that this is directly dependent on the nature of the collection and less on the specific clustering algorithm we use. As our test bed collection grows we will be able to experimentally describe the changing nature of these graphs.

Page 31: Navigating and Browsing 3D Models in 3DLIB Hesham Anan, Kurt Maly, Mohammad Zubair Computer Science Dept. Old Dominion University, Norfolk, VA, 23529 (anan,

Summary

A digital library framework that has services to support storage, retrieval and discovery of 3D models was presented.

A navigation service based on hierarchical clustering of similar 3D models was described.

In this paper shape similarity was used to compute the clusters of the 3D models used in the navigation service.

Page 32: Navigating and Browsing 3D Models in 3DLIB Hesham Anan, Kurt Maly, Mohammad Zubair Computer Science Dept. Old Dominion University, Norfolk, VA, 23529 (anan,

Future Work

Using additional similarity measure that combine the shape similarity along with other metadata similarity measures (e.g. using the text description of the 3D model).

Using clustering of similar 3D models to speed up the similarity search process using the same methodology that was implemented for browsing the 3D models.

This will be done by computing the similarity of models with only the representative “key” model of a cluster instead of computing the similarity with all members of the cluster.

Page 33: Navigating and Browsing 3D Models in 3DLIB Hesham Anan, Kurt Maly, Mohammad Zubair Computer Science Dept. Old Dominion University, Norfolk, VA, 23529 (anan,

Experimental Results We have used an equal weight for the internal error

and external error to calculate the total error. However, some users might have more weight for internal error (making sure that cluster members are similar) than external error. In this case, more weight should be assigned to the internal error.

To select the number of clusters, we should select the number that minimizes the total error but does not exceed the max number that can be viewed by a user.

If we assume that the max number of cluster keys that can be viewed by a user is 30, we would select 30 clusters for the first and second graphs and 23 for the third one.