Using Python to Track and Make a Video Highlight of a Soccer Match…or a World Cup Highlight Reel?
I saw this last week and thought it was pretty clever. Using Python, the developer created an automated summary of video highlights from a professional soccer match. Zulko, as he goes by, used the assumption that soccer highlights could be tracked by how loud fans were during the game.
He opened the video file with Python and computed the audio volume of each second of the match:
By plotting the data, Zulko showed the loudness of the match after each goal was scored:
He found that the five highest peaks in volume correlated to the time when a goal was scored. He then took the top 10 percent of the other peaks in volume to find other highlights. He further regrouped the data the cheers that were less than a minute apart.
final_times "contains the times (in seconds) of 21 events, from which we can cut our video.” For each of the 321 events, he started five seconds before its time and stop five seconds after.
What resulted is a video 3:30 in length. There are some aspects of the match that confuses the algorithm, he writes. For example, broadcasters that do lots of replays or lower the sound after the goal.
Zulko provided the whole script for those who want to try it themselves.
This method could be used for other sports, movie highlights and other videos, Zulko writes.
So…who is going to make the automated World Cup highlight reel?