3d Searching....

January 30, 2018 | Author: sadikhussainp | Category: 3 D Modeling, Web Search Engine, 2 D Computer Graphics, Information Retrieval, Shape
Share Embed Donate

Short Description

qr code...



1. INTRODUCTION Today both the internet and corporate warehouses are full of all types of digital information, from simple text documents to complex application. One type of information gaining in prominence in 3D object. From computer-aided design (CAD) drawings of complex engineering parts to digital representations of proteins and complex molecules, an increasing amount of 3D information is making its way onto the Web and into corporate databases.

Because of this, users need ways to store, index, and search this information. Typical Web-searching approaches, such as Google’s, can’t do this. Even for 2D images, they generally search only the textual parts of a file, noted Greg Notes, editor of the online Search Engine Showdown newsletter.

However, researchers at universities such as Purdue and Princeton have begun developing search engines that can mine catalogs of 3D objects, such as airplane parts, by looking for physical, not textual, attributes. Users formulate a query by using a drawing application to sketch what they are looking for or by selecting a similar object from a catalog of images. The search engine then finds the items they want.



2.BASICS OF INTERNET SEARCHING Internet searching typically involves placing a keyword in the search box and clicking search. The search engines crawls through the websites and rate a webpage according to the occurrence of the keyword in the page. Some of the internet searching techniques is

Search Engines The world-wide web is changing the way we find and use information. It provides access to a vast amount of text and image data on every conceivable topic. Unfortunately, the sheer quantity of information can make it difficult to quickly find what you are looking for. To aid in this search, many search engines exist that index large portions of the web. They typically provide a search interface based on text keywords: a user enters some descriptive keywords (e.g. ―Boeing 747‖), after which web pages containing these keywords are returned. Examples of popular text-based search engines are Google and AltaVista.

However, the web does not just contain text pages, but a lot of non-textual data as well, such as images, sound files, or CAD models. Many so-called specialized search engines targeting these specific kinds of data have been developed. Perhaps the biggest such search engine is Google Image Search, which indexes hundreds of millions of images. Other examples are Find Sounds, a search engine for sound files and Mesh Nose [67], a search engine for 3D models. Many of these specialized search engines take advantage of the fact that even though the indexed objects are of a non-textual type, often they are annotated with descriptive text. The search engine then simply tries to match the userentered keywords to this descriptive text.





A 3D Model Search Engine To improve the accessibility of all these online 3D models, we have created a prototype specialized search engine for 3D models. It supports a text-based query interface and several different types of shape-based query interfaces. Figure 2.1 shows a screenshot of the actual search engine web site, with its main components annotated. On the left side of the page the user can enter queries and specify which database is to be searched (both free and commercial databases have been indexed). On the right side search results are shown, as well as links that allow the selection of different query interfaces and miscellaneous pages with a feedback form, information about our research, and links to similar projects elsewhere Challenges

The challenges in creating such a search engine are threefold. First, the 3D models available on the web have to be found. Unfortunately, most of the online 3D models are scattered across the web, on repository sites, project sites, and personal homepages. Second, it is not obvious what the best query interface is for searching a database of 3D models. Additionally, an important goal for our search engine is that it is useable by the average user. By ―average user‖ we mean someone who knows what ―3D‖ means, and is able to manipulate a 3D model using a viewing interface, but not necessarily a computer graphics professional. This means that the query interfaces should be intuitive and easy to use. And finally, user-entered queries have to be matched to 3D models. For each type of query a suitable matching method needs to be developed. Also, because the search engine is an interactive system, a matching method has only limited time to run.




Figure 3.1: System organization The organization of our system is shown in Figure 3.1. Execution proceeds in four steps: crawling, indexing, querying, and matching. The first two steps are performed offline, while the last two are done for each user query. The following text provides an overview of each step and highlights its main features:

1. Crawling: We build a database of 3D models by crawling the Web. 3D data still represents a very small percentage of the Web, and high quality models represent an equally small percentage of all 3D data. So, we have developed a focused crawler that incorporates a measure of 3D model ―quality‖ into its page rank. Using this crawler, we have downloaded 17,834 VRML models from the Web. We augment this database with 2,873 commercial models provided by 3D vendors [43, 24].

2. . Indexing: We compute indices to retrieve 3D models efficiently based on text and shape queries. In particular, we have developed a new 3D shape descriptor based on spherical harmonics that is descriptive, concise, efficient to compute, robust to model degeneracies, and invariant to rotations


3D MODEL SEARCH ENGINE 3. Querying: We allow a user to search interactively for 3D models. Our system supports query methods based on text keywords, 2D sketching, 3D sketching, model matching, and iterative refinement. We find that methods based on both text and shape combine to produce better results than either one alone.

4. Matching: For each user query, our web server uses its index to return the sixteen 3D models that best match the query. Our method answers 3D shape queries in less than a quarter of a second for our repository; and, in practice, it scales sub-linearly with the number of indexed models.



4.3D SEARCHING Advances in computing power combined with interactive modeling software, which lets users create images as queries for searches, have made 3Dsearch technology possible. Methodology used involves the following steps 

Query formulation

Search process

Search result

4.1QUERY FORMULATION True 3D search systems offer two principal ways to formulate a query: Users can select objects from a catalog of images based on product groupings, such as gears or sofas; or they can utilize a drawing program to create a picture of the object they are looking for. or example, Princeton’s 3D search engine uses an application to let users draw a 2D or 3D representation of the object they want to find.



Figure 4.1: The above picture shows the query interface of a 3D search system. left side of the search engine have an option to draw shape based query and keyword query. From above figure user enter a shape based query(car) ,which is the query to be searched. On the right side search results are shown.

4.2 SEARCH PROCESS The 3D-search system uses algorithms to convert the selected or drawn image-based query into a mathematical model that describes the features of the object being sought. This converts drawings and objects into a form that computers can work with. The search system then compares the mathematical description of the drawn or selected object to those of 3D objects stored in a database, looking for similarities in the described features.

The key to the way computer programs look for 3D objects is the voxel (volume pixel). A voxel is a set of graphical data—such as position, color, and density— that defines the smallest cube shaped building block of a 3D image. Computers can display 3D images only in two dimensions. To do this, 3D rendering software takes an object and 8

3D MODEL SEARCH ENGINE slices it into 2D cross sections. The cross sections consist of pixels (picture elements), which are single points in a 2D image. To render the 3D image on a 2D screen, the computer determines how to display the 2D cross sections stacked on top of each other, using the applicable interpixel and interslice distances to position them properly. The computer interpolates data to fill in interslice gaps and create a solid image. The steps involved in transforming the query to search query are normalization and voxelization. Normalization is the process of transformation of a 3D model into a standardized or canonical form that retains all the relevant geometrical information of the original model. 3D model have arbitrary scales, orientations and position in the 3D space. In many situations. They are required to normalize the size and orientation of 3D model before feature extraction in order to represent. It in a canonical coordinate system. The aim of the normalization is to guarantee that the same feature representation can be properly extracted from the same 3D object with different scale, position and orientation. The canonical coordinate normalization, such as alignment and scaling

Voxelization is the process of converting a representation of a 3D shape into a set of small volume elements (voxels) [1]. The procedure of voxelization is as follows: (1) Bound the model with a bounding box; (2) Divide the bounding box into N3 small boxes (voxels) with equal volume; and (3) Assign one to a voxel if it contains a part of the CAD model, and zero otherwise.

The search system then converts this voxel model into a form consisting of the skeleton of object. This skeleton represents the basic framework of the model. The model is then searched with those in the repository. If match is found then the object is returned



4.3 AN EXAMPLE SEARCH SYSTEM: 3DESS Scientists at the Purdue Research and Education Center for Information Systems in Engineering, led by Professor Karthik Ramani, created a 3D shape search technology called 3DESS (3D Engineering Search System; http:// tools.ecn.purdue.edu/~cise/dess.html).The engine is designed primarily to find computerdesigned industrial parts. 3DESS gives users three options for searching industry databases: using a drawing application to sketch a part from scratch, penciling in modifications to an existing part to create a new search object, or selecting a part from a catalog of choices. 3DESS then develops a skeletal graph, using an algorithm that analyzes and renders the skeleton in terms of three common topological constructs: loops; edges; and nodes, which are connecting points between loops and/or edges. Expressing an object in terms of these common constructs, plotted on a graph, reduces the overall amount of data in the object representation and makes it easier to store and index descriptions in the database. According to Ramani, 3DESS also describes objects in terms of feature vectors, a set of mathematical representations of various aspects of the item’s shape, such as its volume, surface area, and the number of loops, edges, and nodes. The system can analyze a query by comparing either its feature-vector set compares queries’ shape representations with those stored in the database to find the ones that are most similar.



Figure 4.2 Purdue university’s 3DESS search technology start with a) A drawing of an object that a user want to find in a database. The system extract the most important parts of the shape to create. b) A skeletal, a reduced graphical representation of the object.3DESS then develops. Skeletonization is the process of extracting a skeleton from a 3D binary image (voxel model). The model can be converted into a binary 3D digital model. However, in digital spaces, only an approximation to the ―true skeleton‖ can be extracted. The two requirements for a skeleton are: 1

Topological: A skeleton must retain the topology of the original object.

2 Geometrical: A skeleton must be in the ―middle‖ of the original object and must be invariant to translation, rotation and scaling.

c) The skeleton is converted into a hierarchical skeletal graph, for storing in database. Skeleton graph in terms of three common topological constructs loop, edges, and nodes. This further reduces the amount of data in the object’s representation and make it easier to store, index, and search for descriptions within the database Node – the voxel situated at the ends of the edges Edge – Set of voxels forming a single geometric entity Loop – One or more edges forming a closed entity Each edge in the skeleton translates into an independent geometric entity giving a shape to the model in physical space. Similarly, each loop represents a hole in the 3D model. 11

3D MODEL SEARCH ENGINE For example, if a user wants to search for models with holes, it can be completed by searching for graphs with loops..

When the system retrieves models in response to a query, users can input which models more closely resemble the object they’re seeking. 3DESS then uses neuralnetwork technology to analyze users’ feedback, learn more about what they want, and fine-tune both the current search and future similar searches.



5.PRINCETON UNIVERSITY SEARCH SYSTEM Professor Thomas Funkhouser and his colleagues at the Princeton Shape Retrieval and Analysis Group (www.cs.princeton.edu/gfx/proj/shape) developed their Web-based 3D Model Search Engine. The engine works with a Java-based application that lets users produce, via their mouse, 2D renderings of objects to search for in a database.

The Princeton search engine, like its Purdue counterpart, uses mathematical representations to store the salient characteristics of 3D shapes in its dataedges, and nodes. The system can analyze a query by comparing either its featurevector set potential obstacles. The system compares queries’ shape representations with those stored in the database to find the ones that are most similar. Princeton’s 3D search engine first renders a 3D object or drawing as a voxel grid and then maps this to a sphere, yielding spherical-based mathematical functions. The system then breaks the spherical functions into component parts that make up the

ultimate shape descriptor, a graph like

abstraction that represents the item’s overall shape.

An advantage of the spherical approach is that it lets the search engine work with shape descriptors regardless of the object’s position. Thus, the system will match a query with the appropriate result even if the query drawing is positioned differently than the object in the database. Searchers can refine their queries by adding a text description.




On server side it requires a high performance computer for evaluating shape based retrieval and analysis algorithms. For each 3D model, there is an Object File Format (.off) file with the polygonal geometry of the model, an ASCII text file with information about the model (e.g.. the URL from hence it came), and a JPEG image file with a thumbnail view of the model, It contains a large database of 3D polygonal models collected from the World Wide Web. On client side high speed internet connection is required. The site should work with Netscape 4.0 or up, or equivalent with Java and JavaScript enabled. Java version should be 1.2 or above.




7.1 SHAPE REPRESENTATION A key issue in developing a shape-based retrieval and analysis system is to find a computational representation of shape (a shape descriptor) for which an index can be built, similarly queries can be answered efficiently. A spectrum of shape descriptors, ranging from ones that are simple to compute (but perhaps not very discriminating)to once that require expensive computations (but provide sophisticated shape analysis) 

Shape Distributions: On the low end of the spectrum, search engine have been investigating shape

distributions that represent the shape of a 3D model as probability distribution sampled from a shape function measuring geometric properties of a 3D model. The motivation for this approach is that samples can be computed quickly and easily, and the shapes of the resulting distribution are invariant to similarity transformation, noise, tessellation, cracks, etc (with a normalization step for scale invariance).

Reflective Symmetry Description: Computing reflective symmetries of 2D and 3D shapes is a classical problem in

computer vision and computational geometry. Most prior work has focused on finding the main axes of symmetry, or determining that none exists. A new shape descriptor that represents a measure of reflective symmetry for an arbitrary 3D voxel model for all planes through the model center of mass (even if they are not planes of symmetry). The descriptors are drawn by scaling unit vectors on the sphere in proportion to the measure of the reflective symmetry about the plane through the center of mass and normal to the vector. The main benefits of this new shape descriptor are that it is defined over a canonical parameterization (the sphere), which makes comparison simple, and it describes global symmetry properties of a 3D sphere, which capture significant semantic features of many objects.



Spherical Harmonics:

In mathematics, spherical harmonics are the angular portion of a set of solutions to Laplace's equation. Represented in a system of spherical coordinates,

Visual representations of the

spherical harmonics. Red portions represent regions

where the function is positive, and green portions represent regions where the function is negative. One of the main challenging in matching and indexing sphere is accounting for arbitrary rotation. Previous method that require alignment into a common coordinate system (e.g., with the principal axes) are not robust. A novel rotation invariant shapedescriptor based on spherical harmonics. The main idea is to decompose a 3D model into a collection of function defined on concentric sphere and to use spherical harmonics to discard orientation information (phase) for each one, This yields a shape descriptor that is both orientations invariant and descriptive.

Skeletal Graphs: On the high end of the spectrum, System will investigate skeletons as a

descriptor of shape. The general idea is to drive ID skeletal curve from a 3D object such that each curve represents a significant part of the object. These curves are then converted to an attributed graph representation (a skeletal graph), which can be used for indexing, matching, segmentation, correspondence finding, etc. As an example, the figure below show the plane model, its medical axis (as computed using the ―Powercrust‖ algorithm), our voxelized centerline representation, and the resulting skeleton graph. Note that the medical axis comprises a multitude of noisy curves and sheets, while our centerline representation nicely segments the plane into its salient parts. 16


1. First, Rasterize the polygonal surfaces into a 2R× 2R× 2Rvoxel grid, assigning a cell a value of 1 if it is within one voxel of a polygonal surface, and assigning it a value of 0 1

otherwise. The model is scaled and translated so that the center of mass lies at the point (R,R,R) and so that the bounding sphere of the model has radius equal to R. 2. Treat the voxel grid as a (binary) real-valued function defined on the set of points with length less than or equal to Rand express the function in spherical coordinates f(r,Ө,φ)= Voxel(rsin(Ө) cos(φ)+ R,rcos(Ө)+ R,rsin(Ө)sin(φ)+ R) Where r Є [0,R], Ө Є [0,π],and φ Є [0,2π]. By restricting to the different radii we obtain a collection of spherical functions {f0, f1,...,fR} with: fr(Ө,φ)= f(r,Ө,φ). 3. Using spherical harmonics, we express each function fr as a sum of its different frequencies m

fr(Ө,φ)= fr (Ө,φ)


(That is, the function fr is the projection of the function fr onto the m-th irreducible representation of the rotation group acting on the space of spherical functions.) 4. Noting that the different irreducible representations are fixed under rotation, and noting m

that rotations do not change the L2 norm of functions, we observe that the value |fr | does not change if we rotate the function fr. for fr there is a rotation invariant signature as the 0


collection of scalars {|f |,|f |,...}. 5. Combining these different signatures over the different radii, system obtain a twodimensional rotation invariant spherical harmonics descriptor for the 3D model, with the value at index (r0, m0) corresponding to the length of the m0-th frequency of the restriction of f to the sphere with radius r0.

Figure 7.1: Computing spherical harmonics shape descriptor



7.2 QUERY INTERFACES This thesis focuses on query interfaces for our 3D model search engine, and their corresponding model/query representations and matching methods. 3D models typically contain textual, and shape information, which can all be queried. We investigated query interfaces based on text keywords, 3D shape, 2D freeform sketches, and 2D structural input (i.e. sets of parts), and their associated matching methods Another issue is how should people specify shape-based queries?. For instance, consider a person who wants to build a 3D virtual world representing a city scene. She will need cars, street lamps, stop signal, etc. What input should be given to a search engine to retrieve objects of these types from the World Wide Web? System investigated several options:

 Text Queries Because text query interfaces are very common and potentially very effective, The developed a text query interface and accompanying matching method for our search engine (see Figure 2.1 for an example text query ―rotor‖ and the results from a commercial database provided by De Espona). The interface works as follows. User-entered keywords are matched to a representative text document, one of which has been created for each 3D model. This text document contains text from the model file itself (e.g. its filename, part names) and from the web page it was found on

 3D Model System will support shape-based queries. For instance, the user can provide an existing 3D model and ask our search engine to retrieve similar ones. Alternatively, the user may search for models with shapes like one returned in a previous search by clicking on the ―Find Similar Shape‖ link under its image on a results page.



3D sketches Of course, shape similarity queries are only possible when the user already has a

representative 3D model. In some cases, he will be able to find one by using a text search. However, in other cases, he will have to create it from scratch (at least to speed the search). To investigate this option, we have developed a query interface in which the user creates a simple 3D model with Teddy, and then the system returns objects with similar shapes.

 2D sketches An alternative approach to allow the user to draw one or more 2D shapes with a pixel paint program and then have the system match the resulting images to 2D projection of 3D objects. Because of the apparent complexity of the 3D sketch interface, The system will develop a simpler 2D sketch based query interface. Here the user can submit freeform sketches of a target object as seen from up to three directions. It is similar to the pendrawing interface in Paintbrush-style programs: pixels can be drawn by dragging the mouse. The sketches are matched to several 2D projections of each 3D model using an image matching method. The matching performance of the online 2D sketch interface is negatively affected by the poor quality of the sketches that are submitted: they are often inaccurate and contain interior detail. The image matching method we use is very sensitive to interior detail, and as a consequence, searches using the 2D freeform sketch interface result in very few model downloads.




 Analyses any 3D model automatically  Delivers results rapidly in graphical form  It plays an important role in application domains like manufacturing, design, science and entertainment  It is very helpful for intelligence agencies examining photos, corporate marketing departments looking for one of many product images, or any individual or organization trying to find an item in a collection of object.  It is useful for recognizing health problems in the results of 3D medical imaging.




 3D search technology faces several potential obstacles. For example, researches are trying to improve accuracy so that search results more closely match queries.  Researches must improve search speed, by developing new search algorithms.  Drawing shapes is more difficult than entering text queries.  Who wants to use a 3D search engine to take a three week training course to learn the complicated menu structure of a commercial CAD tool.




Application areas include 

Medical fields It could be useful for such purposes as recognizing health problems in the results of 3D medical imaging. For example, a physician could search a hospital’s database of alreadydiagnosed magnetic-resonance scans to accurately diagnose a vexing abnormality found in a patient’s scan.

Automated industries

Virtual game development, etc...



11. CONCLUSION The main research contributions are: (1) new query interfaces that integrate text, 2D sketches, 3D sketches, and 3D models, (2) a new shape descriptor based on spherical harmonics that is both discriminating and robust and (3) results of experiments suggesting shape is useful in conjunction with text during search for 3D models. Finally, The system provide a large repository of 3D models and a way to find the interesting ones. Most of today’s individual and corporate computer users don’t conduct the type of searches that would justify paying for and learning to use sophisticated 3D search engines However, within those markets, 3D search could prove useful and successful.




IEEE Computer Society Journal

ACM Transaction on Graphics




View more...


Copyright ©2017 KUPDF Inc.