/HurdlerDetection

Project aimed to develop a tool to track hurdlers during 100/110m hurdles races and extract useful information out of it.

Apache License 2.0Apache-2.0

HurdlerDetection

Project aimed to develop a tool to track hurdlers during 100/110m hurdles races and extract useful information out of it.

Sources and Resources:

Source/Resource Description
World Athletics research center Final reports on scientific projects in the areas of biomechanics, coaching and development initiated by World Athletics, with help from the IAF (International Athletics Foundation)
Sports Analytics Resources for Sports Analytics from Linköping University
Towards Data Science (Article) Implementing real time object detection system using pytorch and openCV.
Detecting straight lines using Hough transform in Python (Video) Youtube video. Could be useful to detect lanes
Object Tracking from scratch with OpenCV and Python (Video) Could be used to track runners
Dima Sports Hurdles Dima catalog. Can be used to find hurdles dimensions
AAE Sports Hurdles AAE catalog. Can be used to find hurdles dimensions
NordicSports Hurdles Nordic Sports. Can be used to find hurdles dimenions
Gills Athletics hurdles Gills. Can be used to find hurdles dimenions

Data:

Report Video
Men's 110m hurdles - 2017 IAAF World Championships Biomechanical report video (final)
Men’s 60m hurdles – 2018 IAAF Indoor Championships Biomechanical Report video (final)
Women’s 60m hurdles – 2018 IAAF Indoor Championships Biomechanical Report video (final)
Biomechanics Report WC Berlin 2009 Hurdles Men video (final),video (SF1/3),video (SF2/3), video (SF3/3)
video
video

Brainstorming (using a LLM):

  1. Lane Detection:

Keywords: centerline extraction, Hough transforms Implement lane detection algorithms to identify and distinguish between different lanes on the track. This can involve techniques like edge detection, Hough transforms, or deep learning-based methods. Once lanes are detected, assign each athlete to their respective lane based on their position within the lanes.

  1. Dynamic Distance Measurement:

Use reference points in the video, such as the dimensions of the hurdles, to calibrate distance measurements dynamically. Measure the distance between reference points (e.g., hurdles) in each frame and use this information to scale other dimensions in the video. Implement algorithms to track the movement of reference points throughout the video to account for any changes in perspective or distance.

  1. Hurdle Detection and Dimension Extraction:

Develop algorithms to detect hurdles in each frame using techniques like template matching, edge detection, or deep learning-based object detection. Extract dimensions of the hurdles from the detected regions in the video. Use these dimensions as reference points for distance calibration and extrapolation.

  1. Lane Tracking and Athlete Assignment:

Implement algorithms to track the movement of athletes within their respective lanes over time. Assign each athlete to their corresponding lane based on their trajectory and position relative to the detected lanes.

  1. Data Extraction and Analysis:

Extract relevant data such as time, speed, ground contact times, etc., from the tracked athletes using similar techniques as mentioned before. Use calibrated distance measurements to calculate accurate speeds and distances covered by the athletes. Analyze the extracted data to derive insights and visualize the performance of each athlete.

  1. Validation and Testing:

Validate the accuracy of lane detection, distance measurement, and athlete tracking algorithms using ground truth data or manual annotations. Test the entire system on a variety of videos with different camera angles and conditions to ensure robustness and accuracy.

  1. Deployment and Continuous Improvement:

Deploy the system and gather feedback from users to improve its performance over time. Continuously refine algorithms, optimize performance, and add new features based on user feedback and evolving requirements.

Implementing these steps will require a combination of computer vision, image processing, and algorithm development skills. Experiment with various techniques and fine-tune parameters to achieve the best results for your specific application. Additionally, consider leveraging existing libraries and frameworks to expedite development and ensure compatibility with your chosen programming environment.