Seabed Baited Remote Underwater Video (sBRUV)

Overview

The sbruv/ dataset contains all seabed baited remote underwater video (sBRUV) data collected during Pristine Seas expeditions. sBRUVs are stereo camera systems deployed on the seafloor with standardized bait to attract and record fish assemblages in a non-extractive manner.

The sBRUV protocol involves deploying paired cameras on a frame with bait for a standardized soak time (typically 60-90 minutes). This method is particularly effective for detecting mobile predators, sharks, and other fish that may be attracted to bait, providing complementary data to visual survey methods.

Each sBRUV deployment represents a single sampling unit where both cameras record simultaneously, allowing for stereo analysis and accurate fish length measurements. The dataset structure reflects this approach with deployment-level metadata, individual fish observations, and summary abundance metrics.

sbruv/
├── stations      # Individual sBRUV deployments with metadata
├── detections    # Individual fish observations with timing and size data
└── maxn_by_taxa  # Maximum number of individuals by species per deployment

Tables

Stations (sbruv.stations)

The sbruv.stations table contains one row per sBRUV deployment. Each deployment represents a distinct point in space and time where a stereo camera system was deployed on the seafloor with bait. Since each sBRUV site has exactly one deployment at one specific depth, there is a 1:1 relationship between sites and stations, eliminating the need for a separate sites table.

This table stores all deployment metadata including spatial information, equipment details, environmental conditions, and deployment parameters. It follows the core site schema shared across methods and adds sBRUV-specific fields for camera equipment, bait type, and bottom conditions.

Table 1: Schema for sbruv.stations: sBRUV deployment metadata
Field Type Required Description
ps_station_id STRING true Unique station ID (ps_site_id_depth), e.g., PNG_2024_sbruv_001_25m
ps_site_id STRING true Site identifier (exp_id_method_###), e.g., PNG_2024_sbruv_001
exp_id STRING true Expedition ID (ISO3_YEAR)
region STRING true Broad geographic or administrative unit
subregion STRING true Intermediate feature within the region
locality STRING false Local named feature such as a village, bay, or reef
date DATE true Date of sBRUV deployment (YYYY-MM-DD)
time TIME true Deployment time (HH:MM:SS)
latitude FLOAT true Deployment latitude (decimal degrees, WGS84)
longitude FLOAT true Deployment longitude (decimal degrees, WGS84)
depth_m FLOAT true Deployment depth (meters)
distance_shore_km FLOAT false Distance from nearest shore (km) - calculated
habitat STRING true Dominant habitat type (e.g., fore_reef, channel, bank)
exposure STRING true Wave/wind exposure (windward, leeward, lagoon, etc.)
bottom_type STRING false Substrate description at deployment site (e.g., sand, coral_rubble, rock)
team_lead STRING true Name of the field lead or technician responsible for deployment
rig_id STRING true ID of the camera rig used (e.g., RIG01, SBRUV_A)
left_cam STRING true Model or serial number of the left camera
right_cam STRING true Model or serial number of the right camera
bait_type STRING true Type of bait used (e.g., sardines, skipjack, local_fish)
uwa_opcode STRING false UWA operation code for this deployment (e.g., PNGS24_001)
highlights STRING false Notable events during deployment (e.g., large predator presence)
video_quality STRING false Assessment of video quality (excellent, good, poor, unusable)
notes STRING false Additional comments or QA annotations

Detections (sbruv.detections)

This table contains individual fish observations recorded during sBRUV deployments. Each row represents a specific fish or group of fish observed at a particular time during the video analysis, including behavioral and size measurement data from stereo analysis.

This detailed temporal data enables behavioral analysis, arrival time studies, and provides the raw data from which MaxN values are calculated. Key station and spatial metadata are denormalized to enable efficient querying.

Table 2: Schema for sbruv.detections: individual fish observations with timing and measurement data
Field Type Required Description
detection_id STRING true Unique detection ID (auto-generated)
ps_station_id STRING true Foreign key to sbruv.stations
ps_site_id STRING true Site identifier - denormalized for performance
exp_id STRING true Expedition ID - denormalized for performance
time_min FLOAT true Time of observation (minutes from deployment start)
frame INTEGER false Video frame number (if available)
filename STRING true Video filename (e.g., PNG_2024_sbruv_001_L.avi, PNG_2024_sbruv_001_R.avi)
region STRING true Region name - from stations
subregion STRING true Subregion name - from stations
habitat STRING true Habitat type - from stations
depth_m FLOAT true Deployment depth - from stations
distance_shore_km FLOAT false Distance from shore - from stations
date DATE true Deployment date - denormalized for temporal queries
accepted_name STRING true Scientific name (Genus species) of observed taxon
accepted_aphia_id INTEGER true WoRMS AphiaID — foreign key to taxonomy.fish
rank STRING true Taxonomic rank (species, genus, or family)
family STRING true Family of the observed taxon
field_code STRING false Original field identification code (if used)
count INTEGER true Number of individuals observed at this time point
life_stage STRING false Life stage (adult, juvenile, unknown)
activity STRING false Behavioral activity (passing, feeding, investigating, resident)
length_mm FLOAT false Estimated total length (mm) from stereo measurement
precision_mm FLOAT false Measurement precision/error (mm)
length_type STRING false Type of length measured (TL, FL, SL)
notes STRING false Observation-specific comments or notes
Detection vs MaxN Data

Detections Table: Contains all individual observations throughout the deployment - Multiple records per species as fish appear, leave, and return - Enables behavioral and temporal analysis - Raw data for calculating MaxN

MaxN Table: Contains summary statistics per species per deployment
- One record per species showing peak abundance - Derived from detections table - Standard metric for BRUV abundance comparisons


MaxN by Taxa (sbruv.maxn_by_taxa)

This table contains species-level summaries for each sBRUV deployment using the MaxN metric—the maximum number of individuals of each species observed in a single video frame during the deployment. MaxN is the standard metric for BRUV analysis as it provides a conservative abundance estimate that minimizes double-counting of mobile individuals.

Each row represents a unique combination of deployment (ps_station_id) and species, with taxonomic information standardized using accepted_aphia_id from taxonomy.fish. Key deployment and spatial metadata are denormalized to enable efficient querying without joins.

Table 3: Schema for sbruv.maxn_by_taxa: MaxN abundance by species per deployment
Field Type Required Description
ps_station_id STRING true Foreign key to sbruv.stations
ps_site_id STRING true Site identifier - denormalized for performance
exp_id STRING true Expedition ID - denormalized for performance
region STRING true Region name - from stations
subregion STRING true Subregion name - from stations
locality STRING false Locality name - from stations
habitat STRING true Habitat type - from stations
exposure STRING true Exposure type - from stations
date DATE true Date of deployment - denormalized for temporal queries
depth_m FLOAT true Deployment depth (meters) - from stations
distance_shore_km FLOAT false Distance from shore - from stations
bait_type STRING true Bait type used - from stations
uwa_opcode STRING false UWA operation code - from stations
accepted_name STRING true Scientific name (Genus species) of observed taxon
accepted_aphia_id INTEGER true WoRMS AphiaID — foreign key to taxonomy.fish
rank STRING true Taxonomic rank (species, genus, or family)
family STRING true Family of the observed taxon
trophic_group STRING false Trophic group classification from taxonomy.fish
common_name STRING false Common name from taxonomy.fish
maxn INTEGER true Maximum number of individuals observed in a single frame
maxn_time_min FLOAT false Time (minutes from start) when MaxN was recorded
first_arrival_min FLOAT false Time of first appearance in video (minutes from start)
mean_length_cm FLOAT false Mean estimated length from stereo analysis (cm)
min_length_cm FLOAT false Minimum estimated length (cm)
max_length_cm FLOAT false Maximum estimated length (cm)
n_measured INTEGER false Number of individuals successfully measured
notes STRING false Species-specific observations or notes