technion faculty of electrical engineering project a 044167 summer 2001 israel institute of...
Post on 19-Dec-2015
218 views
TRANSCRIPT
Technion
Faculty of Electrical Engineering
Project A 044167
Summer 2001
Israel Institute of Technology
3D Geometric Objects Search• Project team: Lyakas Alexander 307666883
• Instructor: Dr. Sigal Ar
The Main Idea
• Given a collection (database) of objects• Choose a search object
• Find objects that are similar to the search object
• The search is iterative and interactive• A user marks some objects as ‘GOOD’ or ‘BAD’
• The search program tries to refine the search by considering the user’s feedback
The Main Idea – Cont.
An Example
An Example – Cont.
• The following components available from
Starting the Project
Iterative and Interactive Search for Objectsby Moty Golan & Oren Kerembased onSimilarity Between Three-Dimensional Objects –An Iterative and Interactive Approachby Michael Elad, Ayellet Tal, Sigal Ar.
• Two databases: 3D colorless models & 2D images• A search program
• Test the approach with 3D colored models
• Design & perform system tests with real users
Project Requirements
• Improve the search program
Project Requirements - Cont.
• Build a database of 3D colored models
• Gather 3D colored objects from the WWW
• Perform preprocessing calculations, i.e. present each object in a way that will enable searching
Project Requirements - Cont.
• Improve the search program
• Adding a new database must not influence the search program’s code
• Add features needed for testing
Project Requirements - Cont.
• Test the system with real users
• Design the tests
• Perform tests with volunteers
• Draw conclusions
Working with Objects
• Each object is presented as a numerical vector, AKA ‘feature vector’
• To calculate feature vectors we used moments of different orders on
• colored points in 3D
• colored normals in 3D
• colorless points in 3D
• colorless normals in 3D
Comparing Objects
),...,(),...,( 11 nn yyYxxX ),...,(),...,( 11 nn yyYxxX • Consider two objects represented as feature vectors:
n
iii yxYXD
1
2)(),(
n
iii yxYXD
1
2)(),(
• We can compare them using the (square of) standard Euclidean distance:
• By adding weights and a bias value we can refine the distance function:
byxwYXDn
iiii
1
2)(),( byxwYXDn
iiii
1
2)(),(
Data Preprocessing
• Convert the objects to the format convenient to be sampled
• Perform sampling
• Correct normals directions• Normalize rotation and scale
• Create icons for all objects
• Calculate features vectors
• Before sampling each object is presented as colored triangular mesh
Sampling
• The sampling workflow:• Choose a triangle to sample
• Sample a point, normal and color from the chosen triangle
• Do this as many times as needed (10,000 in our case)
Ensure uniformsampling
Calculating features
ri
N
i
qi
pipqr zyx
Nm
1
1ˆ
ri
N
i
qi
pipqr zyx
Nm
1
1ˆ
• We approximate moments as:
• The pqr-th moment (of a 3D object) is defined as:
surface
rqppqr dxdydzzyxm
surface
rqppqr dxdydzzyxm
• The order of the moment is p+q+r
• Feature vector of level 3 in ‘colorless 3D’ look like:
...)ˆˆˆˆˆˆˆ( ,021,012,120,102,003,030,300 mmmmmmm ...)ˆˆˆˆˆˆˆ( ,021,012,120,102,003,030,300 mmmmmmm
The Search Program
• The extendibility requirement – adding new database must not influence the search program code• The object-based solution introduces the DBLINK class• Database-specific information is stored inside DBLINK objects only• One DBLINK object for each database – stored on disk
The Search Program – Cont.
Saving Test Sessions Results
• Automatic Screen Shooting• Before search refinements – with user’s ‘GOOD/BAD’ markings• When the new results are displayed
• Manual Screen Shooting
Testing the system
• Several volunteers that had no previous knowledge about how the system works• Tests were done for several test objects
• For each test object – all search configurations were tried
• The testers gave feedback on the search results
Test Example 1
Test Example 1 - Cont.
Test Example 1 - Cont.
Test Example 1 - Cont.
Test Example 1 - Cont.
Test Example 1 - Cont.
Test Example 2 - Cont.
Test Example 2 - Cont.
Test Example 2 - Cont.
Test Example 2 - Cont.
Test Example 2 - Cont.
Testing Results ExampleObject №TesterConfigurationFeedback
across iterations
Final feedback
595Shpitser Boris‘Pixels’, level 44 7 7 6 8
3 3 3 5 4
1 2 2 3 3
‘Results do not improve. Few good
results’.
595Brouk Aleksey‘Pixels’, level 41 4 4 9
1 4 8 9
2 4 8 8
‘Many good results’.
595Lyakas Igor‘Pixels’, level 41 9 9
1 7 9
2 6 9
‘Found everything I meant’.
890Shpitser Boris‘Colorless Pixels’, level 4
3 3 1 1 1 1
2 3 2 4 4 1
1 2 3 3 4 2
‘The search did not converge’.
890Brouk Aleksey‘Colorless Pixels’, level 4
1 10 1 3 10 10
2 2 3 3 5 7
1 2 3 4 4 5
‘Good results in first two rows’.
890Lyakas Igor‘Colorless Pixels’, level 4
2 8 1 1 8 8
2 2 3 1 4 4
2 3 3 3 4 4
‘Results do not change. Very few
good results’.
Conclusions
• No search configuration worked well for all objects
• ‘Normals’, level 4 worked good• but slow…
• In most cases the search converged• not always with good search results…
• So should the colors be considered?• …
• Searching for objects having a ‘family’ was successful with most configurations
The End
• See the project book for many skipped details