-**Database**: for ease of retrieving, updating, and storing Objects and corresponding features, we use a MongoDB database
- the output is storage for those objects from object tracking
-**GUI**: for an outward facing display of our work, we implemented a Javascript UI, that creates a server, such that we can view the system's output in any browser.
- the output is a clean point cloud view of objects and features that the camera has seen
- the output guides the user through the process of making the application as well as provides a conceise view of the data produced by the server side code.
- A colored point cloud is generated in the front end from the raw data sent by the back end. This is done by a library called plotly by converting the color and position values of each point to dots on the 3d point cloud.
- Each item is represented on the front end as a button to select an item in the point cloud. When the user selects that item the 3d visualization highlights the corresponding points.
### Features
@@ -90,7 +92,7 @@ The following links:
**Samuel Gulinello**:
- GUI Creation
- All JavaScript, HTML, CSS files
- Utilized and Configured ThreeJS for pointcloud
- Utilized and Configured 3d plotting libraries for pointcloud
- Worked on server configuration
**Sanford Edelist**:
@@ -102,7 +104,7 @@ The following links:
### A: References and Material Used
- The UI used a Library called [ThreeJS](https://threejs.org/). This library is responsible for creating the visualization of the pointcloud.
- The UI used a Library called [Plotly](https://plotly.com). This library is responsible for creating the visualization of the pointcloud.
- The object detection uses [YOLOv4](https://github.com/bytedeco/javacv/blob/master/samples/YOLONet.java) from the javacv library
- The server was written with [Spring Boot](https://spring.io/projects/spring-boot)
- The database used was via [MongoDB](https://www.mongodb.com/), and the database itself was hosted on MongoDB provided free-tier server