From camera footage to a counted catch, in one place
CatchOntheWeb turns the video from cameras on fishing vessels into counts of the fish that are discarded and the fish that are kept. Upload the footage, outline fish with AI help, train a detector on your own boats, and let it count.
The problem
Hours of footage, and a different tool for every step
Cameras on board record every haul, but someone still has to watch it. Reviewing footage by eye is slow, and it limits how much of a fishery can be monitored.
Automating it used to mean stitching tools together: somewhere to store the video, a separate program to label frames, scripts and a GPU machine to train a model, more scripts to count, and a spreadsheet for the results. Each hand-over loses time, and only people who can code can do it.
The tools a team used to stitch together:
- Shared drive of videos
- Frame grabber
- Desktop labelling program
- Training scripts
- A GPU machine to log into
- Tracking code
- Counting spreadsheet
- Email to say it finished
CatchOntheWeb puts every step in one website, in the order the work happens, so a fisheries scientist can go from footage to counts without writing code.
What it does
Five tools, one platform
Each project follows the same five steps. Inside a project the sidebar shows them in order, ticks the ones done and points to the next.
-
Upload and organise footage
Group work into projects and cameras, and upload videos and still images straight from the browser, many at once. Videos are prepared for playback on the server, and a frame chooser picks the stills worth labelling, every few seconds or by hand.
- MP4, AVI, MOV and more
- Import datasets already labelled
-
Label fish with AI assist
Click a fish and its outline appears: Smart uses the SAM 2.1 segmentation model on our own server. Once a project has a model, Predict finds the fish on an image for you to check. Work saves as you go, and changing a fish's class asks first, so a stray click can't spoil the labels.
- One click per fish
- Keyboard shortcuts throughout
-
Train a detector on your own boats
Turn the labelled images into a dataset, split into images to learn from and images kept back to test on. Press Train and an RF-DETR detector learns on the GPU server. You can close the page: a notice tells you when the model is ready to use.
- Trains on the site's GPUs
- A notice when it finishes
-
Count the catch
Draw where fish are counted on each camera: a line across the discard chute, a zone over the box of fish kept. The model finds every fish in each frame, follows it along the belt, and counts it once, as discarded or retained, when it crosses a line or enters a zone.
- Lines and zones per camera
- Each fish tracked, counted once
-
Review and report
Watch the video back with every fish outlined and counted, check each counted fish in the review report and correct it if needed, and download the counts. Move a counting line and recount finished analyses straight away, without analysing the videos again.
- Download as CSV or JSON
- Recount without re-running
How it works
From raw footage to counts: one example
A monitoring team wants to know how many fish go back over the side on one vessel. This is the path they take through CatchOntheWeb.
- Set upCreate a project for the vessel, list the species, and add a camera for the view over the sorting belt.
- UploadUpload a few trips of footage and take a frame every couple of seconds from each haul.
- LabelOutline the fish on a few hundred varied frames, one click each with Smart, and tick each frame done.
- TrainCreate a dataset and train a detector. It waits for a GPU, trains, and is tested on frames it has never seen.
- CountDraw the discard line across the chute, upload new trips and analyse them with the model.
- ImproveReview the counts. Where the model missed fish, label more frames like them and train again: each round gets better at this vessel.
Who it is for
Built for fisheries monitoring
Discard monitoring
Count the fish returned to the sea from remote electronic monitoring footage, haul by haul.
Catch composition
Label by species to learn what is caught, and in what proportion, across a fleet.
Shared projects
Scientists and reviewers work on the same project, each seeing only the projects they are part of.
Footage stays with us
Video, labels and models are stored and processed on University of East Anglia servers, not sent to outside services.
Who we are
Part of EVERYFISH, with Cefas
CatchOntheWeb is developed at the University of East Anglia for the EVERYFISH project, in partnership with Cefas, the Centre for Environment, Fisheries and Aquaculture Science. The aim is simple: make monitoring every fish caught practical, so that the people who manage fisheries have the numbers they need.
Start counting
Accounts are for EVERYFISH partners. Log in to open your projects, or contact the EVERYFISH team at UEA to join.