A solution for highlights extraction for sports games by The Unknowns.

Overview

Untitled design

Sportlight by The Unknowns

Next.js, Express.js, NLTK, symbl.ai

Inspiration - Problem Statement #3 by Experion Technologies

Publishing highlights after a sports game is a mandatory practice followed in the broadcast industry. A highlights video provides a quick snapshot of the event highlighting the interesting events in the game and thus provides the viewers an opportunity to get a quick summary of the game. In a manual process, a video editor has to run through the entire game, identify candidate areas for the highlights and compile all the clips into a single compilation video. This can be a cumbersome process and a time-consuming.

What it does

The application uses AI enabled methods to automatically generate highlights data feed from an input video file. The expected output data feed contains start/end time stamps of interesting clips from the given video feed. For example, for a cricket game the clips may contain fall of wickets, exceptional fielding, batsman hitting boundaries etc. Finally, the highlights of that particular game would be displayed to the user sequentially.

How we plan to build it

  1. We would be building a web application, where the user can directly upload the video to the web server built using Node.js.
  2. The video will be processed frame by frame. The processing will be convert the audio to text form by the use of symbl.ai using an API call.
  3. The obtained texts along with the time frames will be processed by a python script consisting of technologies like NLTK, wordnetand NLP to carefully understand the text.
  4. Firstly, the script would pre-process the data by removing the unwanted literals such as punctuation, special characters, connectives and other unnecessary words.
  5. The script will then convert the phrase into its vector form. A phrase can be represented in n-dimensional vector space. A wordnet of some common cricket highlight words would be created and stored in for later use.
  6. All of this is carried keeping in mind the emotions of the commentators in the audio and the words they speak. For example, “bowled”, “that’s a six”, and others (for cricket).
  7. The vector would be parsed in a TF-ID vectorizer. Different similarity checks would be carried out in order to check the Similarity between the received text and the highlight words.
  8. Once we get the check results, we can use it to decide if that particular frame can be used or not. If yes, we would be giving the start and end timestamp of the highlight (considering a 5-sec time interval).

Challenges we ran into

  1. One major challenge we faced is to fix the values for different similarity checks in order to see if the given phrase is of a highlight or not.
  2. Different TF-ID vectors should be created for different sports in order to encompass all kinds of sports highlights.
  3. Segregating different phrases belonging to the same highlight so as to avoid repetitive highlights.
You might also like...

Offline modification of Doodle Champion Island Games by Google

Doodle Champion Island Games This is an offline backup copy of the Doodle Champion Island Games by Google and Studio 4°C. The game has been modified t

Dec 24, 2022

A self-hosted solution for backing up and viewing backed up mobile photos

A self-hosted solution for backing up and viewing backed up mobile photos

Photostore Photostore is a self-hosted, client-server solution for backing up, viewing and downloading photos. How it works The Photostore API (writte

Oct 25, 2022

Javascript engine to make fast games.

Javascript engine to make fast games.

G3 Javascript Basic javascript engine to make fast games and write clean code. 🕹️ Example code: const g3 = new G3() const Window = g3.createWindow("

Feb 13, 2022

Here I will add daily one problem with solution basic to advance level and try to add multiple solutions of a single problem.

#100-code-days 🕰 I am adding daily 1 JavaScript solution here 📟 and you can fork the repo for add your solution for any specific probelm ⌛️ Day 01:

Jan 22, 2022

La extensión web que muestra el precio de los juegos de la web de Xbox, PlayStation, Nintendo y Epic Games Store con los impuestos de Argentina incluidos. Conocé cuanto vas a pagar por tus juegos 💚💙❤️

La extensión web que muestra el precio de los juegos de la web de Xbox, PlayStation, Nintendo y Epic Games Store con los impuestos de Argentina incluidos. Conocé cuanto vas a pagar por tus juegos 💚💙❤️

Conocido anteriormente como Xboxito Impuestito - Conocé el precio real de los juegos Impuestito calcula y muestra el precio de los juegos de la web de

Dec 4, 2022

DiscordJs13-handler is the solution for all the discord.js developper who want a complete handler for slash commands

DiscordJs13-handler is the solution for all the discord.js developper who want a complete handler for slash commands

Jul 2, 2022

Omnivore - a complete, open source read-it-later solution for people who like text

Omnivore - a complete, open source read-it-later solution for people who like text

Omnivore Omnivore is a complete, open source read-it-later solution for people who like text. We built Omnivore because we love reading and we want it

Jan 1, 2023

Frontend Mentor - E-commerce product page solution

Frontend Mentor - E-commerce product page solution

Frontend Mentor - E-commerce product page solution This is a solution to the E-commerce product page challenge on Frontend Mentor. Frontend Mentor cha

Nov 2, 2022

Add all games from purchased itch.io bundles to your library.

itch-io-bundle-claimer When you purchase some game bundles on itch.io, you are required to manually claim every game that you want to add to your libr

Oct 3, 2022
Owner
Arjun Sivaraman
19 | App Dev | Web Dev @VinnovateIT @ADG-VIT @vitspot @Team-Fourth-Dimension
Arjun Sivaraman
Find a local sports match that fits your skill level. Built with NextJS and AWS.

MatchUp MatchUp Find local sport matches Beta walkthrough About The Project Looking for a fun and easy way to meet up and play sports with locals in y

MatchUp 7 Oct 27, 2022
E-commerce for fitness and sports equipment

Fitnest E-commerce for fitness and sports equipment. References https://topscore.id https://decathlon.co.id Links Frontend Production: https://fitnest

null 3 Oct 23, 2022
PDF data extraction for Physiotherapy Board NZ APC's

physioboard-apc-reader Parses and extracts info from NZ Physio board issued certificates Install npm install physioboard-apc-reader Use import { physi

null 2 Jan 13, 2022
Obsidian.md plugin to sync highlights/notes from koreader

Obsidian KOReader Plugin Sync KOReader notes in your Obsidian vault. The KOReader device must be connected to the device running obsidian to let the p

Federico Granata 24 Dec 18, 2022
An Obsidian.md plugin that syncs highlights from Raindrop.

Obsidian Raindrop Highlights Plugin (Community Plugin) Obsidian Raindrop Highlights (Community Plugin) is an unofficial plugin to synchronize Raindrop

You-Kai Zheng 81 Jan 4, 2023
Readavocado obsidian plugin to sync your favorite highlights.

Readavocado Sync Plugin This plugin automatically export your Readavocado highlights into your Obsidian vault. Usage Install the Readavocado Sync Plug

Sarat Limawongpranee 9 Oct 31, 2022
Grupprojekt för kurserna 'Javascript med Ramverk' och 'Agil Utveckling'

JavaScript-med-Ramverk-Laboration-3 Grupprojektet för kurserna Javascript med Ramverk och Agil Utveckling. Utvecklingsguide För information om hur utv

Svante Jonsson IT-Högskolan 3 May 18, 2022
Hemsida för personer i Sverige som kan och vill erbjuda boende till människor på flykt

Getting Started with Create React App This project was bootstrapped with Create React App. Available Scripts In the project directory, you can run: np

null 4 May 3, 2022
Kurs-repo för kursen Webbserver och Databaser

Webbserver och databaser This repository is meant for CME students to access exercises and codealongs that happen throughout the course. I hope you wi

null 14 Jan 3, 2023