Published on Sep 28, 2024
The objective:
The goal of this project was to build a 3D search engine that indexed and retrieved various geometric shapes, industrial models, and auxiliary industry parts by minimizing the time of exhaustive searching and maximizing the accuracy of the search results based on user queries.
1. A JAVA GUI was designed to accept a 3D file (.dwg (AUTOCAD) converted to .gif) and after a few verification factors, was immediately fed into the algorithmic phase.
2. The algorithm disintegrated each side (top, bottom, left, right, etc) of the model into individual miniature structures, thereby creating thousands of dots from a single model. It was then processed by a stream and passed on to the indexing phase.
3. The stream was compared to the 3D database (containing indexed streams) and matches were perfectly rearranged and presented to the user in a matrix format(3*3.)
4. To eliminate bugs, unit testing was used to test each module before being embedded into the main class.
A successful 3D search model was developed and results were returned based on the pixel make up, density measured, and the number of hits found. To test the accuracy of the algorithm, a known model acted as a query only to return the same model.
To accommodate deviations in accuracy, a distorted model of a known database model was prepared and uploaded. The search results were displayed as anticipated, and the distortion was removed (with moderate accuracy) to portray the exact model from the database.
The development of a 3D search engine serves the primary purpose of retrieving accurate results based on varied query characteristics. Once, the results were generated, the algorithm had to integrate all these factors and eventually display the most efficient model in the database.
It also has the capacity to evolve into a user-friendly interface where in users can draw an object (dog, cat, house, etc) and results are based on the drawing.
The applications for the 3D search engine include deployment in automobile industries, industrial assembly lines and aeronautical hardware industries.
This project utilizes an algorithm to index and retrieve 3D models based on geometrical and mathematical equations.