Skip to content
CatchOntheWeb

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.

A conveyor belt seen from a deck camera Fish on the belt are outlined as they are found. One crosses the orange discard line at the end of the belt and the discarded count goes up to 12. discard line Discarded 12 Retained 5

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.

  1. 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
  2. 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
  3. 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
  4. 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
  5. 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.

  1. Set upCreate a project for the vessel, list the species, and add a camera for the view over the sorting belt.
  2. UploadUpload a few trips of footage and take a frame every couple of seconds from each haul.
  3. LabelOutline the fish on a few hundred varied frames, one click each with Smart, and tick each frame done.
  4. TrainCreate a dataset and train a detector. It waits for a GPU, trains, and is tested on frames it has never seen.
  5. CountDraw the discard line across the chute, upload new trips and analyse them with the model.
  6. 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.