Marathon Detection
The results of this project are available on HuggingFace, at Faraphel/MarathonBibDetector.
It can be tested on its own HuggingFace Space.
One of the projects we were given at university was to detect players of a marathon at checkpoints from only their BIB numbers.
We started by looking for existing projects or datasets, but the only thing we found was a small project using a dataset of around 100 images that was not very accurate.
So we decided to create our own dataset and train a brand-new model to detect the runner bib numbers. This project was based on the YOLO framework, which is known for its speed and accuracy in the field object detection. By fine-tuning one of their models with a custom dataset of bib pictures, we excepted it to work pretty well.
The first step was to create our custom dataset. This was a tedious task due to the huge number of pictures required to create a good dataset, so we largely automated the process using depth-estimation and OCR.
Details about this process can be found on the HuggingFace page of the project.
Once our model fine-tuned, we had pretty decent accuracy results, especially on videos where multiple frames could be analyzed rapidly at once.
One of our members created a website to display the results of the detections, while I configured the model and set up multiple cameras recoding video streams towards an OSSRS server regrouping them all.
The videos were then sent to the model for analysis, and the results were saved in a database shared with the website.
At first, we thought the project would likely fail due to the normally huge amount of data required for that kind of AI training. However, our dataset creation did work pretty well and made a good model for the task. In the end, our detections worked well, and we learned many things about AI and object detection.