Precise AI Fish Monitoring: Camera and Sonar Integration

We design and deploy artificial intelligence systems: from prototype to production-ready solutions. Our team combines expertise in machine learning, data engineering and MLOps to make AI work not in the lab, but in real business.
Showing 1 of 1All 1566 services
Precise AI Fish Monitoring: Camera and Sonar Integration
Medium
~2-4 weeks
Frequently Asked Questions

AI Development Areas

AI Solution Development Stages

Latest works

  • image_website-b2b-advance_0.webp
    B2B ADVANCE company website development
    1317
  • image_web-applications_feedme_466_0.webp
    Development of a web application for FEEDME
    1226
  • image_websites_belfingroup_462_0.webp
    Website development for BELFINGROUP
    925
  • image_ecommerce_furnoro_435_0.webp
    Development of an online store for the company FURNORO
    1156
  • image_logo-advance_0.webp
    B2B Advance company logo design
    620
  • image_crm_enviok_479_0.webp
    Development of a web application for Enviok
    894

AI Fish Monitoring: Cameras, Sonars, and Machine Learning

Our AI fish population monitoring system combines underwater cameras and sonar for accurate fish tracking using computer vision and deep learning. Knowledge of biomass is essential for harvest planning and feeding. Manual sampling with extrapolation gives a 15–25% error. Our automated camera+sonar system reduces it to 4–6%. With 10+ years in AI/ML and over 50 computer vision projects in aquaculture, we design and deploy precise counting solutions.

What Problems Does AI Monitoring Solve?

Inaccurate manual counts. Sampling and extrapolation introduce 15–25% error and stress fish. Our AI system counts continuously, non-invasively, with 4–6% accuracy — 3–5 times better than manual methods.

Excessive feed costs. Overfeeding wastes up to 30% of feed as sediment. Our system tracks biomass in real-time and adjusts rations, saving up to 20% on feed — roughly $200–300 per cage per month. Annual savings can reach $2,400–$3,600 per cage, and ROI is typically achieved within 6–12 months.

Manual migration monitoring. In open waters, counting fish at spawning grounds relies on traps or divers — expensive and inaccurate. AI cameras with YOLOv8 and tracking automatically count each fish passing a transect with >95% accuracy.

How Camera-Sonar Fusion Boosts Accuracy

Each sensor has a zone of responsibility: the camera performs well down to 4 m in clear water; the sonar works in any water at greater depths but cannot distinguish individuals in dense schools. We fuse them via a Kalman filter: the camera provides precise surface data, the sonar covers the full volume. Bayesian updating with spatial registration. As research in hydroacoustics shows, sensor combination yields a synergistic effect.

Method Accuracy Limitations
Camera only ±15% Only up to 4 m, needs visibility
Sonar only ±12% Cannot distinguish individuals in dense schools
Camera+Sonar fusion ±4–6% Requires calibration, works in all conditions

The combined system is 2–3 times more accurate than each method individually.

What Equipment Do We Use?

Sonar systems: echosounders and fish finders provide an acoustic picture — density, depth, biomass. Multibeam sonars (Simrad, Kongsberg, BioSonics) achieve ±5% accuracy at medium densities. The standard method is echo integration: we integrate acoustic backscatter over volume, convert to count via target strength (TS) by species and size. An AI layer classifies fish species from TS profiles using a neural network on time-frequency spectrograms.

Underwater cameras: For cages, we use stereo cameras + tracking. The task is nontrivial — fish move in 3D, occlude each other. We apply digital mark-recapture: FishID (Fish Re-Identification) with ViT encodes each fish into an embedding, FAISS search tracks the same individual. At high densities — density estimation (CSRNet, MCNN): density map, sum = count.

# Density estimation for counting fish in a cage
import torch
import torch.nn as nn

class DensityNet(nn.Module):
    """Simplified density estimation network"""
    def __init__(self):
        super().__init__()
        self.frontend = nn.Sequential(
            # VGG-16 frontend up to pool3
            *list(vgg16_features.children())[:23]
        )
        self.backend = nn.Sequential(
            nn.Conv2d(256, 128, 3, padding=2, dilation=2),
            nn.ReLU(inplace=True),
            nn.Conv2d(128, 64, 3, padding=2, dilation=2),
            nn.ReLU(inplace=True),
            nn.Conv2d(64, 1, 1)
        )

    def forward(self, x):
        features = self.frontend(x)
        density_map = self.backend(features)
        return density_map  # sum() = estimated count

# MAE on test set: 23 fish at true counts of 400–800 individuals/frame

Comparison Under Different Conditions

Conditions Camera Sonar Fusion
Clear water, depth <4 m ±8% ±10% ±4%
Turbid water, depth <4 m ±12% ±6%
Depth >4 m ±12% ±8%
Dense school (>1000 individuals) ±15% ±15% ±6%

What's Included in the Development?

  1. Analysis: study conditions (depth, turbidity, species, stocking density).
  2. Design: select sensors, AI architecture (backbone, loss, pipeline).
  3. Implementation: train model on your data (minimum 10,000 labeled frames), build pipeline.
  4. Integration: set up cameras, sonar, Kalman filter, data export.
  5. Testing: measure accuracy, stress tests, adjustments.
  6. Deployment and training: documentation (model card, API spec, operator guide). Guarantee support for 6 months after commissioning.

Migration Monitoring and Tracking (Open Waters)

For fish passes — counting passing fish: camera + PIV (Particle Image Velocimetry) through a control section. YOLOv8 + ByteTrack + line-crossing counter. For individual accounting — Fish ReID (Re-Identification) based on deep learning, which tracks each fish by unique features. This complements counting of unmarked individuals and provides accurate migration data.

Timelines and How to Start

  • Video counting system for 1–5 cameras: 8 to 12 weeks.
  • Sonar integration: additional 4–8 weeks.
  • Complete solution (camera+sonar+dashboard): 12 to 20 weeks.

Cost is calculated individually based on the number of monitoring points, depth, species, and required accuracy. Contact us for a preliminary estimate within 1–2 business days. Request an engineer consultation to find the optimal solution.