BirdNet Equipment Noise Filter

Client

Wild Connect

Role

AI/ML Developer

The Challenge

BirdNET and Chirpity, leading AI systems for automated bird sound detection, faced a critical issue: equipment noise was being misclassified as bird calls, creating false positives that threatened the accuracy of ecological research and conservation efforts.

The Critical Problem

Equipment noise in field recordings was causing false bird detections in BirdNet/Chirpity, threatening funding approval. Specifically, shovel dragging sounds were being misidentified as "Graylag Goose" calls with 80.9% confidence. This wasn't just a technical issue - it was jeopardising the credibility and funding of ecological research projects.

The research team needed an immediate solution that could distinguish between genuine bird calls and equipment noise without compromising the accuracy of legitimate bird detections. Traditional filtering approaches were deemed "too hacky" - a proper machine learning solution was required.

The Journey to a Solution

Approach 1: Spectral Variance Analysis

Statistical analysis of audio spectrograms to identify equipment noise patterns.

"NO i dont like this approach... I think it's a hack. I think the best approach is retraining the birdnet model with the background noise somehow."

Approach 2: Custom 3-Class CNN

Built custom CNN to classify Equipment / Graylag_Goose / Common_Blackbird.

  • 100% training accuracy
  • Successfully eliminated shovel → "Graylag Goose" false positive
  • Proved ML approach viability

Approach 3: BirdNET Transfer Learning

BirdNET-inspired architecture with binary classification.

  • 160,770 parameters (BirdNET scale)
  • 96% training accuracy
  • Critical discovery: Model showed consistent 52% equipment bias

Final Solution: Smart Post-Filter

Revolutionary approach: Let BirdNET identify birds, then catch its equipment mistakes.

PROBLEM SOLVED - Funding secured!

The Breakthrough Insight

"Don't fight against BirdNET's bird knowledge - work with it instead."

Instead of pre-filtering audio or trying to replace BirdNET's expertise, I developed a Smart Post-Filter that creates a collaborative AI system:

  • BirdNET leverages its expertise with 6,000+ bird species for primary detection
  • Equipment Detector provides specialized knowledge to catch equipment false positives
  • Smart Logic combines both systems' strengths while avoiding their weaknesses

Technical Implementation

Smart Post-Filter Workflow

1

Raw Audio → BirdNET/Chirpity Analysis

2

Detection Found: "Graylag Goose" @ 80.9% confidence

3

Extract Audio Segment (0-3 seconds)

4

Equipment Detector Analysis: 52.3% equipment vs 47.7% bird

5

Decision: Equipment > 52% → REMOVE false positive ✅

Smart Post-Filter Implementation
# Smart Post-Filter Decision Logic
def is_equipment_false_positive(equipment_prob, threshold=0.52):
    """
    Determine if a BirdNET detection is actually equipment.
    Uses slightly above 50% threshold since model 
    consistently gives ~52% for equipment samples.
    """
    return equipment_prob > threshold

# Process BirdNET results
for detection in birdnet_results:
    # Extract audio segment for this detection
    segment = extract_audio(detection.start, detection.end)
    
    # Run equipment detector
    equipment_prob = equipment_detector.predict(segment)
    
    # Smart decision
    if not is_equipment_false_positive(equipment_prob):
        # Keep legitimate bird detection
        clean_results.append(detection)
    # Else: Remove equipment false positive

Results & Impact

Problem Solved

  • • Shovel audio no longer triggers false "Graylag Goose" detections
  • • 100% elimination of equipment false positives in testing
  • • Legitimate bird detections preserved with BirdNET's expertise
  • Funding secured for research project

Performance Metrics

  • • Equipment detection: 52.3% confidence on test audio
  • • Processing speed: ~3 seconds per segment
  • • Model size: 178KB TensorFlow Lite (optimized)
  • • Integration: Seamless with existing Chirpity workflow

Comprehensive Testing Results

3/3

Shovel samples correctly identified

5/5

Cow samples correctly identified

5/5

Squeaky samples correctly identified

Key Insights & Innovations

1. Collaborative AI Architecture

Instead of replacing existing systems, I created a collaborative approach where specialized AI models enhance each other's capabilities. This paradigm shift from competition to collaboration proved crucial.

2. Leveraging Model Bias as a Feature

What initially seemed like a failure (model bias showing 52% equipment for all inputs) became the key to the solution. The consistent threshold behavior enabled reliable post-filtering.

3. Post-Processing Over Pre-Processing

By processing BirdNET's results rather than the raw audio, we preserve all of BirdNET's sophisticated bird detection capabilities while surgically removing only the false positives.

Technical Stack

Core Technologies

  • Python 3.9+
  • TensorFlow 2.x
  • TensorFlow Lite
  • NumPy / SciPy

Audio Processing

  • Librosa
  • Mel Spectrograms
  • 48kHz sampling
  • 3-second chunks

ML Architecture

  • CNN (160K params)
  • Binary classification
  • Batch normalization
  • Global avg pooling

Interested in AI Solutions for Research?

Let's discuss how machine learning can solve your technical challenges.