Cases

Fanaty

Capturing the full football pitch with two cameras

Fanaty, a Miami sports-tech startup, films amateur football with fixed cameras and no operator. We made its video processing eight times faster and built the stitcher that joins two sideline cameras into one panorama of the whole pitch. It runs in a cloud pipeline with no GPU, so every recorded game stays cheap.

Key results
  • Every match stitched into one full-pitch panorama automatically
  • 4K panorama at 30 FPS in a cloud pipeline, with no GPU bill as new fields join
  • Video processing 8× faster after the first consultation
Floodlit amateur football pitch at night, cut along the halfway line and laced back together like a boot
Client
Fanaty, Miami, USA
Industry
Sports tech, amateur football
Team
Team lead and three engineers
Duration
Two years
Platforms
Cloud pipeline

In short

Fanaty films amateur games with cameras that need no person behind them. Two lenses on one mount see the two halves of the pitch, and the product needs one clean picture of the whole field from every match. Stitching each game by hand in desktop software costs money every time and grows with every new field.

Our first consultation took Fanaty’s processing from 15 to 120 frames per second on SD video. We then built a C++ stitcher that makes the full-pitch panorama on its own, in 4K at 30 frames per second on a CPU. We also researched ball and player tracking and built a prototype of the automatic camera.

What it gives the business

  • 8×faster video processing after the first consultation, in the client’s words
  • 30 FPSfull-pitch panorama in 4K on a plain CPU, so processing cost stays flat as fields are added
  • 0people needed to stitch a match
  • 1calibration per camera mount, then every match is stitched automatically

Building a sports product with a camera on the field?

Stitching, ball and player tracking, an automatic camera: we start with a two-week technical research on your footage and tell you what will hold up on your cameras and your servers.

Book a two-week technical research

About the client

Fanaty: amateur football on camera

Fanaty LLC is a sports-tech startup from Miami, Florida, with its development team in Argentina. Its founder and CEO, Federico Blumberg, came to the US on a soccer scholarship and started the company because amateur matches went unrecorded. Athletes and amateur teams record their games and get automatic, TV-style video.

The camera is built for amateur venues. Two lenses on one mount cover about 180 degrees of the pitch from the sideline, so no one has to stand behind it. When the work started, Fanaty was a founder and two developers, with no computer vision team of its own.

Miami
Headquarters, with the team in Argentina
Football first
Padel, pickleball and basketball planned

Main challenges the customer faced

Three problems to solve at once

Business

A watchable game from fixed cameras, at an amateur price

Amateur football has no camera operator. Fanaty needed fixed cameras that give a video people want to watch: the whole pitch in view, and later a view that follows the play the way a TV operator would.

Processing had to stay cheap: CPU only, on a standard AWS instance (c5.xlarge), in one-minute chunks, for videos of any length.

Technical

Two close-mounted wide lenses, a tiny ball, no GPU

  • Two cameras side by side see two halves of the pitch through wide lenses, with different projections and colours. The seam has to disappear in a 180° panorama, frame after frame.
  • The panorama is 4K. Every step after it has to be fast on frames that size.
  • The ball changes size and colour with distance, is often hidden by players, and is a few pixels wide in a wide panorama. Real-time neural-network ball detection was not feasible on the hardware available.
Delivery

A startup that had already paid once for a cheaper attempt

“Before working with them, I tried to do it with some other people in a cheaper way, but I ended up having to develop the project with them.”

Federico Blumberg, Founder and CEO, Fanaty · Clutch review

Every step had to prove itself on Fanaty’s own footage before the next one started.

What we did

Four parts of one video pipeline

Fanaty came to us for computer vision across its video pipeline: stitching, calibration, colour correction, and finding the players and the ball. We worked on four parts of it:

  1. Speed. A review of the whole pipeline that took processing from 15 to 120 frames per second on SD video.
  2. Panorama stitcher. A C++ stitcher that joins two cameras into one 4K panorama, with Linux and Windows builds.
  3. Ball and player tracking. A review of neural-network detectors, retraining on newly labelled frames, and tuning of the tracker.
  4. Automatic camera. A prototype of a virtual camera that follows the play. It-Jim did not finalize it for the product.

“They deliver everything on time and the results we get are great.”

Federico Blumberg, Founder and CEO, Fanaty · Clutch review

Solution

One panorama from two cameras

Why it matters: the product needs one clean picture of the whole pitch from every match, with no manual step.

We wrote a stitcher in C++ with OpenCV that reads the calibration file of PTGui, the desktop tool Fanaty used to calibrate its cameras, and builds the panorama frame by frame, on its own. A custom parser reads the lens and position of each camera, and PTmender projections turn them into warp maps once, at start-up. Each new frame is then only remapped and blended. It supports 18 projections, from rectilinear and cylindrical to fisheye and Panini, so the same code fits a different lens or mount.

The seam is hidden with weighted or multi-band blending, with optional seam finding by Voronoi or graph cut. The command line matches the client’s existing tool, so it dropped into Fanaty’s pipeline without changes on their side.

The same moment from the left and the right wide-angle camera, with arrows into one panorama of the whole pitch stitched from both, with no visible seam
The heavy work happens once per mount, so each frame costs only a remap and a blend.

Solution

Finding a ball that is a few pixels wide

Why it matters: an automatic camera has to know where the game is. The ball is the strongest signal, and the hardest to see.

We reviewed neural-network ball and player detectors, YOLOv4 and FootAndBall among them, with the SORT and DeepSORT trackers. The ball detector was retrained on newly labelled frames from Fanaty’s fields, and the tracker was tuned to keep the ball through short occlusions.

On the CPU budget Fanaty had, a neural network could not detect the ball in real time. That finding shaped the next step: the camera prototype leaned on the movement of players, found with classic computer vision.

Ball detection on a stitched panorama. Research footage.
Player detection and tracking with YOLOv4 and SORT. Research footage.

Solution

A prototype of the automatic camera

Why it matters: a wide recording of the whole pitch is hard to watch. Fanaty’s product needed a view that follows the play and zooms in near the goal.

We built a first version of that camera on the CPU. It masks out everything outside the pitch, finds players by background subtraction, tracks them with a Kalman filter, and frames the most active ones. Averaging, prediction and speed limits keep the camera move even, and the zoom is closer near the goals and wider in midfield. It saved its state between one-minute chunks and came with a setup tool for new fields.

The prototype met most of the client’s acceptance criteria, but It-Jim did not finalize it for the product.

Prototype debug view: the red box is the region of play the camera would frame.
1 · Smooth moves POSITION ON PITCH TIME → RAW TARGET CAMERA

Averaging, prediction and speed limits turn a jumpy target into an even camera move.

2 · Zoom pattern CLOSER CLOSER WIDER

Closer near the goals, wider in the middle of the pitch.

Schematic, not measured data.

Key results

Faster processing

Two things had to hold before Fanaty could record many fields cheaply: processing fast enough on CPU servers, and one clean picture of the whole pitch from every match.

  1. 1
    Fanaty’s video processing, on CPU servers

    8× faster on SD video, and a 4K panorama at 30 FPS

    Before It-Jim, Fanaty’s pipeline processed 15 frames per second. After our first consultation it ran at 120 on SD video.

    “Before we met with It-Jim, we had a processing speed of 15 frames per second. They helped us reach 120. That surpassed all our expectations.”

    Federico Blumberg, Founder and CEO, Fanaty · Clutch review

    Our stitcher builds the full panorama of the whole pitch in 4K, a much larger frame, at 30 frames per second on a plain CPU.

  2. 2
    On every match

    One seamless panorama for every match, automatically

    The stitcher turns the two camera views into one panorama of the whole pitch, with no visible seam and no manual step. A camera mount is calibrated once, and every match after that is stitched on its own.

    It dropped into Fanaty’s pipeline without changes on their side. With 18 supported projections, a new lens or mount needs a new calibration, not new code.

    ONE PANORAMA · WHOLE PITCH TWO CAMERAS · ONE MOUNT LEFT LENS RIGHT LENS
    Seamless panorama One calibration per camera mount No manual stitching Drop-in for the existing pipeline

Business results

What it changed for Fanaty

Fanaty’s business depends on recording a large number of amateur games without paying anyone to film or edit them. The stitcher removed the one step that needed a person on every match, and the speed work kept processing on cheap CPU machines.

  • Scales to new fields without new staff. Every field gets the same two-camera mount and the same processing. A new field means new hardware and one calibration, not new people.
  • Amateur games can pay for their own recording. Two ordinary cameras replace a broadcast rig, and processing runs in a cloud pipeline with no GPU.
  • Ready for new cameras. The stitcher handles 18 projections, so a new lens or mount needs a new calibration, not new code.

“I would suggest not to try to do anything cheap when trying to have a product developed. I paid more for It-Jim, but they were great.”

Federico Blumberg, Founder and CEO, Fanaty · Clutch review
8×Faster processing after the first consultation
30 FPSFull panorama in 4K on a plain CPU
0People needed to stitch a match
18Lens projections supported, so a new camera needs a calibration, not new code
1Calibration per camera mount, then every match runs on its own
CPUCloud servers only, no GPU in the processing path

Features delivered

What we shipped

  • Panorama stitcher in C++: PTGui calibration parser, 18 projections, seam finding and blending, Linux and Windows builds
  • Speed-up of Fanaty’s video pipeline, from 15 to 120 FPS on SD video
  • Ball detection research: detector review, retraining on labelled frames, tracker tuning
  • Virtual camera prototype: pitch masks, player tracking, smoothing and zoom, chunked processing, setup tool

The technology we used

Stack

Stitching
C++OpenCVCMakePTGui calibrationPTmender projections
Ball and player tracking
YOLOv4FootAndBallSORTDeepSORT
Camera prototype
PythonBackground subtractionKalman filter
Infrastructure
UbuntuAWS c5.xlarge classWindows build

Let’s Talk About Building AI That Works in the Real World

No vague promises. No pressure. Just a real conversation with our technical leadership to understand your needs and explore the best next steps.

Tell us about your project
Chat on WhatsApp
File upload (optional, up to 15 MB)

By submitting this form, you agree with our Privacy Policy

What Happens Next?
  1. Your message goes straight to our core team – not a sales department.
  2. You’ll talk directly with our CEO, CTO, or a domain expert for a consultation-style first call.
  3. We’ll ask the right technical questions to understand your challenge and scope.
  4. If we’re a fit, we’ll follow up with a proposed path forward.

More Projects Like This

Hockey tracking camera

Hockey tracking camera

Player tracking and a virtual camera that frame a live amateur hockey game with no one filming, on one desktop per rink, within a 30 ms frame budget.

Vastmindz

Vastmindz

rPPG technology that reads heart rate, blood oxygen and breathing rate from a selfie camera. Vastmindz sells it as an SDK to insurers, telemedicine and corporate wellness apps.

Tennis rally detection

Tennis rally detection

Computer vision that finds the rallies in amateur tennis matches and cuts the video by about 70%, on a cloud server with no GPU.

Postround

Postround

It-Jim built a cross-platform mobile app for Postround that detects and reads golf scorecards to keep player statistics

Doug Labs

Doug Labs

The solution assists medical practitioners with neurological patient diagnostics; it automates, records, and secures neurological test results within an iPhone app

Speech Therapy Platform

Speech Therapy Platform

A custom speech recognition system for children’s therapy, built with phoneme-level modeling, fine-tuned datasets, and production-ready deployment.