Formation Scout is a project that combines my passions for technology and sports while giving me hands-on experience with AI image recognition and expanding my web development capabilities. At its core, Formation Scout features an image recognition model trained to identify various offensive formations in American football. Users interact with the system through a Django web application where they can upload a picture of a pre-snap play. In response, the application returns a prediction of the formation along with an annotated version of the image generated by the model.
The image recognition model was created, trained, and hosted using Roboflow, utilizing their Train 3.0 system. The training dataset consisted of annotated images extracted from the EA College Football 25 video game. Through experimenting with different image augmentation techniques and iteratively training on previous checkpoints, the model was fine-tuned to achieve higher prediction accuracy. After a satisfactory model was reached it was added into a Roboflow workflow capable of producing both prediction results, labels, and annotated images. This workflow is accessible via an API, allowing easy integration with the Django web app.
The web application was developed using Django and is organized into different views to handle various functionalities. User authentication and account management are powered by Auth0, allowing users to sign in with third-party providers like Google. Certain pages and features are protected, ensuring they are only accessible to signed-in users. Django's built-in form management and auto-escaping features are utilized to enhance application security, while custom methods are implemented to validate API responses safely. The site is hosted on Heroku through their Git CLI and is connected to a custom domain purchased via Namecheap.
to view source code for the project, check out https://github.com/Noah8080/FormationScout