Video Analysis of the Rich Strike’s Comeback Win at the Kentucky Derby
I don’t really do much with horse races, but you have to admit that this is like the Atlanta Falcons being up 28–3 over the New England Patriots — and then the Patriots win. Sorry if you are Falcons fan. I know that one hurts.
OK, so here’s the deal. Apparently there is this horse named Rich Strike and he’s way back in the pack. For some reason, the horse just says “let’s do this” and then turns on the heat and wins the race.
Check it out.
So, my first question was — what would this look like on a plot of position vs. time? Oh, let’s do that. I’m going to walk you through this whole process as I make this graph. It will be fun. Also, I really like this video since it mostly shows the view from above. It’s not perfect, but it should work.
Tracker Video Analysis
The first step is to get the video and plop it into a video analysis program. My favorite is Tracker Video Analysis (it’s free and multi-platform).
Think about video analysis like this — you are taking data from the location of an object in each video frame. This would give you x, y, and t data. But wait! What if the camera pans, or zooms, or rotates? In that case a particular pixel on the video won’t actually correspond to the same position in real space. That’s a problem. This means we need to set the actual distance scale for the video and then adjust the coordinate system to compensate for the motion of the camera.
Here is the important part of the track. Note — I originally had the opposite corner for my analysis before I realized how dreadfully wrong I was.
The key is to find some feature in the video with a known distance value. I was going to use those cement-looking pads on the side of the track, but they don’t actually match up with the video (it must be an older shot from Google). So, instead I’m going to use the width of the track. Remember that if you right-click in google maps, you can measure distances (super useful).
But still — the camera both pans and rotates during the final part of this race. If it was up to me, I would put a drone right above the horses and fly straight. That would be the best for me, but I guess they didn’t really think about physics while recording the win.
The best way to deal with a changing camera is to use Tracker Video’s calibration points. These allow you to mark locations in the video to adjust the coordinate system in each frame. All you have to do is to step through the video and move these points. You can even use more than one set of points if your original points move out of the frame.
Here is a view of my starting frame. I tried to pick a part of the video that shows Rich Strike making his move — but also a part of the track that’s mostly straight.
Let me just point out a few things.
- You can see the width of the track — I have it at 23.79 meters. This might not be quite true since it seems like the drone is looking down at an angle on the track. That means my mark for the side with the stands might be blocked a little bit. Oh well.
- The origin is in the lower right of the screen with the x-axis in the direction of the track.
- I’m using those fence posts as my calibration points.
Check this out. Here is a “world corrected” view of the motion. This rotates and zooms each frame of the video so that they are all the same scale and orientation.
Now we are ready. I can just mark the location of both Epicenter and Rich Strike for this motion to get position-time data. This is what it looks like.
The blue data is for Epicenter and the red is Rich Strike. Notice that this data doesn’t go all the way to the end of the race. I stopped collecting data because I was afraid the scale would get messed up over such a large change.
I also added a parabolic fitting equation for the Rich Strike position. If the horse had a constant acceleration, then the following would be true.
From this, the acceleration would be twice the “A” term in the fit. That puts Rich Strike at -0.62 m/s². Yes, it’s a negative acceleration. It looks like the horse is slowing down — but you can still slow down and win the race as long as your negative acceleration is less than the other horse. Doing the same thing with Epicenter —he has an acceleration of -0.58 m/s². Yes, that would suggest that Epicenter would slow down LESS than Rich Strike but this is for just part of the whole run.
The parabolic fit also gives a value for the velocity at time (t = 0 seconds) — which is the first frame I collected data. With that, Rich Strike starts off at 17.4 m/s and Epicenter is at 16.1 m/s. So, from this it looks like both horses are slowing down and Rich Strike slows down MORE. However, Rich Strike starts off with a higher speed.
OK, let’s look at something else. How about a plot of the “lead” vs. time? This would be the distance between the two horses as a function of time. I’m sure I could get this plot in Tracker Video, but I’m just going to export the data and use python (because I like python).
This looks fairly linear. From this I can create a function for lead as a function of time (using the slope and two points on the graph). Here’s what I get.
Now I can just solve for the time that d(t) = 0 meters. Simple. This gives me 11.1 seconds — of course this is the time from the start of my data. However, from the video it looks like Rich Strike actually catches up at 14.1 seconds so this linear model isn’t quite perfect.
OK, I think that’s enough for this video analysis. If you want some homework, here you go:
- Get a position-time plot for the end of the race.
- Collect more data to get a better value for the acceleration of the two horses — especially near the end of the race.
- Use the initial velocities (at the start of the data run) and the accelerations to see if you can reproduce the “lead” as a function of time curve.