| 12 | Our parking predictor consists of 5 main components, which are the following: the Data Collection, Video Processing, Data Formatting, Prediction Modeling, and the User Interface. |
| 13 | |
| 14 | The data collection is being done from the Rutger's Winlab Camera which is pointed into the adjacent parking lot. It collects video footage daily from 8 am to 8 pm. |
| 15 | |
| 16 | The video processing is where the video footage is analyzed for information. In our case, it is checking each of our 10 parking spots for availability. When a vehicle parks in any of the spots, it will return data that this spot has been occupied. We accomplished this functionality using OpenCV and YOLOv8. |
| 17 | |
| 18 | The video formatting is where the video data is formatted and aggregated into a CSV file. Within a line, it displays the spotID number, Month, Day, Year, Hour, Minute, Second, and the status of whether the spot is occupied or free. |
| 19 | |
| 20 | The prediction model is where the aggregated data is imported in order to train and teach a machine learning model. In our project, we are using a Random Forest model, which will take the data and use it to predict the occupancy given a spotID and a time. |
| 21 | |
| 22 | The user interface is where people can interact with our systems. We are planning to implement a large interactive UI where users are able to see a mock replica of the parking lot and are able to then select and visualize parking lot occupancy over the days and weeks. |