Skip to main content

Kinetic-Edge

Local Video AI Pipeline & Offline Basketball Referee Assistant

Kinetic-Edge is an offline video processing pipeline and standalone desktop tool designed to evaluate local computer vision models on fast-moving subjects. It tracks basketball players and the ball in real time, flags out-of-bounds boundary violations, detects rapid acceleration spikes (potential fouls), and monitors possession changes.


Live Demo & Links


Architecture

+--------------------------------------------------------------+
|             Kinetic-Edge Desktop Application                 |
|                                                              |
|  +--------------------------------------------------------+  |
|  |              Native Window (WebKit / PyWebView)        |  |
|  |  - Drag & Drop Clip Loader                             |  |
|  |  - Hardware-Accelerated Canvas Rendering               |  |
|  |  - Referee Decision & Alerts Feed                      |  |
|  |  - Playback Controls (Pause / Resume / Slow-Mo 0.5x)   |  |
|  +---------------------------+----------------------------+  |
|                              | Local In-Memory IPC           |
|  +---------------------------v----------------------------+  |
|  |               Local Desktop Backend (Offline)          |  |
|  |  - Offline YOLOv8 Weights (cached locally)             |  |
|  |  - Kinetic Anomaly & Boundary Rule Engine              |  |
|  |  - C++ High-Throughput Video Ingestion (OpenCV)        |  |
|  |  - ZeroMQ PUSH/PULL Inter-Process Transport            |  |
|  +--------------------------------------------------------+  |
+--------------------------------------------------------------+

Quick Start

1. Run Offline Desktop App

git clone https://github.com/JustFady/kinetic-edge.git
cd kinetic-edge
make app

(or run .venv/bin/python3 desktop.py)

2. Run Local Web Interface

make web

Open http://localhost:8000 in your browser.

3. Run CLI Pipeline directly with C++ Ingestion

make run VIDEO=data/nba_gameplay.mp4

4. Install via Python Package

pip install -e .
kinetic-edge app

Performance & Evaluation

Tested on 5v5 full-court basketball footage on local CPU:

  • Inference Speed: ~40.8 FPS (~22ms per frame on local CPU)
  • Multi-Subject Tracking: ~6.7 simultaneous players tracked per frame
  • Network: 100% offline, zero cloud dependency

Detailed SWaP-C analysis and benchmarks can be found in REPORT.md.


Project Structure

kinetic-edge/
├── desktop.py              # Standalone offline desktop app entrypoint
├── server.py               # Local FastAPI backend and WebSocket streamer
├── pyproject.toml          # Package configuration
├── kinetic_edge/           # Python CLI package
├── huggingface/            # Hugging Face Space Dockerfile and config
├── docs/                   # GitHub Pages web showcase
├── REPORT.md               # SWaP-C and latency evaluation report
├── ROADMAP.md              # Technical and product roadmap
├── Makefile                # Build and orchestration targets
├── CMakeLists.txt          # C++ build configuration
├── config/
│   └── pipeline.yaml       # Runtime config (resolution, thresholds, models)
├── cpp/
│   ├── include/ingest.h    # C++ frame ingestion header
│   └── src/ingest.cpp      # OpenCV and ZeroMQ video streamer
├── python/
│   ├── requirements.txt    # Python dependencies
│   ├── inference.py        # YOLOv8 tracking and anomaly logic
│   ├── tracker.py          # Detection backends and boundary heuristics
│   ├── ipc_receiver.py     # ZeroMQ frame deserializer
│   └── telemetry.py        # Latency and FPS logging
├── web/
│   ├── index.html          # Dark-mode referee UI
│   ├── style.css           # UI styles
│   └── app.js              # WebSocket frame renderer and alert feed
└── data/                   # Video inputs (git-ignored)

License

MIT License.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

kinetic_edge-1.0.0.tar.gz (4.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

kinetic_edge-1.0.0-py3-none-any.whl (4.7 kB view details)

Uploaded Python 3

File details

Details for the file kinetic_edge-1.0.0.tar.gz.

File metadata

  • Download URL: kinetic_edge-1.0.0.tar.gz
  • Upload date:
  • Size: 4.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.14.7

File hashes

Hashes for kinetic_edge-1.0.0.tar.gz
Algorithm Hash digest
SHA256 f6b6a2e8ac0b8bc8a64d24a303f97e01970ea62c01a470511ec759cc3c211a51
MD5 9a97a15dbe30732cb94e5c746ecc2725
BLAKE2b-256 89f36e08177ad9d2784465a301be7bd58161cc7c25c40c3002b242302ca45372

See more details on using hashes here.

File details

Details for the file kinetic_edge-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: kinetic_edge-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 4.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.14.7

File hashes

Hashes for kinetic_edge-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 2628a60e2bbdb223f5643e0c3d891651265c16ab5d099597422eac9ae2d36ad8
MD5 b4bc5998e2b29a55c5cc8c05070da3cc
BLAKE2b-256 210d2ffcddbcd7e311f73a57004951e7619a5f84e3c1780a0a833e38da02d6db

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page