We knew from the get go that we wanted to track the linearity of a bar path but in order to do this, we needed to think about the: model, framework, data, libraries, and the gpu.
First, we needed to choose a model to train. For this, we decided to choose Ultralytics YOLOv8-pose model due to its fast but precise performance. It is a smaller model than the YOLO11, however, for our task, the YOLOv8 was enough.
Next, is a dataset fit for the size of our model. Thanks to Roboflow Universe, they had a set of annotated images that we were able to use to train our model.
Since the primary programming language is Python, the many libraries that are used to track, analyze and visualize data include: OpenCV, PyTorch, NumPy and Matplotlib.
Finally, due to limited access to a powerful gpu, Google Colab is used to train, test and validate the model.