Computer Vision / Baseball / FastAPI

AI Robot Umpire

AI Robot Umpire is a computer-vision prototype that uses a live webcam feed to estimate a batter's strike zone in real time, simulate incoming pitches, and deliver ball or strike calls with visual and audio umpire feedback.

Perception prototype and full-stack demoFastAPIOpenCVMediaPipeReactComputer Vision

Pose-tracked Strike Zone

Uses MediaPipe pose landmarks to identify body reference points and generate a dynamic nipple-to-waist strike-zone overlay that follows the batter's stance.

Vision Backend

A FastAPI, OpenCV, and MediaPipe backend processes webcam frames, detects body landmarks, and streams the annotated video feed back to the browser.

Real-time Umpire Feedback

The React frontend simulates pitches entering from the left side of the frame, evaluates each crossing against the tracked zone, and calls balls or strikes instantly.

Project Notes

The details that mattered.

What it does

The prototype turns a webcam into a lightweight umpire assistant. As a batter steps into frame, the system estimates the strike zone from tracked body landmarks, overlays the zone on the video, and keeps updating it as the stance changes.

Backend perception loop

FastAPI serves the computer-vision pipeline while OpenCV handles frame capture and image processing. MediaPipe pose tracking provides the landmark data used to anchor the top and bottom of the zone, making the overlay responsive without requiring manual calibration.

Frontend game loop

The React interface streams the processed feed, animates incoming pitches from the left side of the frame, compares the pitch path against the live zone, and presents the result with on-screen and audio umpire feedback.

Videos

Project demos and test footage.

AI Robot Umpire webcam demo