← Back to projects

2026

Maritime Vessel Detection from High-Resolution Remote-Sensing Imagery

An end-to-end oriented vessel detection pipeline for remote-sensing imagery, centered on dataset engineering, annotation quality, auditability, and controlled evaluation.

YOLO11m-OBB · PyTorch · OpenCV · Remote Sensing

0.7067 mAP50-95 · 0.9567 precision · 0.8620 recall

The final checkpoint was selected from an audit-fixed dataset and a bounded, multi-seed experiment process rather than a single-run tuning sweep.

Sources
DOTA v2.0 · xView · HRSC2016-MS
Training set
5,351 image/label pairs
Final labels
98,768 oriented vessel annotations
Model
YOLO11m-OBB
Input
1280 px · 40 epochs
Curation
175+ hours
Selected model output clips. Oriented vessel detections are rendered from the same annotation format used by the live project visual.

01 / Problem

A dataset problem before a model problem

Public remote-sensing datasets were not directly interchangeable for maritime oriented detection. They differed in image scale, spatial resolution, annotation geometry, scene composition, and label consistency.

Large source images also required tiling before training, introducing duplicate observations, partial edge objects, and coordinate-management problems. xView introduced an additional geometry mismatch because its vessel labels were horizontal bounding boxes rather than oriented bounding boxes.

The engineering problem therefore became broader than model fine-tuning: construct a consistent, auditable maritime dataset before optimizing the detector.

02 / Approach

Parent-space annotations, derived training tiles

I combined DOTA v2.0, xView, and HRSC2016-MS into a maritime-focused dataset while retaining hard-negative context such as docks, shorelines, cranes, container infrastructure, and open water.

For xView vessel annotations, the geometry conversion followed HBB → SAM3 mask → OBB. Two manual annotation passes corrected missing ships, false positives, incorrect rotations, duplicate labels, truncated objects, and ambiguous small targets.

Tile-local corrections were reconstructed into canonical parent-image coordinates. This changed the annotation architecture so that parent-space annotations became the source of truth and training tiles became derived views.

  • maritime region-of-interest selection
  • deterministic fixed-size crops
  • annotation-driven recovery tiles
  • intentionally retained negative maritime scenes

After the second manual review, the frozen dataset underwent a structural audit before controlled model experiments began.

03 / Data Lineage

An audit-first engineering sequence

The project progressed from public datasets through maritime filtering, geometry normalization, manual review, parent-space recovery, maritime-aware tiling, model-assisted review, structural audit, controlled data-quality experiments, and final model selection. The largest architectural shift was moving from a tile-first workflow to a parent-first representation.

01

Raw aerial datasets

DOTA · xView · HRSC2016-MS

02

Maritime-context filtering

Remove low-value inland context

03

Manual parent image review

Correct, add, or discard labels

04

SAM3 / SixOpen support

Candidate masks and detections

05

Audit-fixed training dataset

Repaired tiling, coverage, duplicates

06

Controlled experiments

Filtering, resolution, augmentation, HPO

07

Final YOLO11m-OBB detector

Selected model recipe
Data lineage from raw maritime imagery to the final oriented ship detector.

04 / Dataset Engineering

Source data, geometry conversion, and review

The initial source pool contained 4,356 labeled images and 281,423 source annotations. Scenes were retained based on maritime context as well as vessel labels, preserving realistic hard negatives that help suppress false positives.

Representative DOTA maritime aerial image

DOTA v2.0

Representative xView maritime aerial image

xView

Representative HRSC2016-MS maritime image

HRSC2016-MS

Representative maritime imagery from the three source datasets used in this work.

Annotation geometry conversion

The annotation work became the most labor-intensive component of the project. The first manual pass required more than 100 hours of review. A second pass added approximately 75 hours after parent-space recovery, revised tiling, SAM3 candidates, and external maritime predictions became available.

xView source horizontal bounding box in cyan

HBB

Prompted instance mask in green

Mask

Derived oriented bounding box in magenta

OBB

xView annotation-geometry conversion pipeline. Source horizontal bounding boxes are cyan, prompted instance masks green, and derived oriented bounding boxes magenta.

Canonical parent-space OBBs with OBB and mask representations where required.

Tile provenance, recovery-tile lineage, and deterministic dataset regeneration.

Parent recovery and tiling

First pass 01

First-pass annotation input example 1 First-pass corrected annotation example 1

First pass 02

First-pass annotation input example 2 First-pass corrected annotation example 2

First pass 03

First-pass annotation input example 3 First-pass corrected annotation example 3

Second pass 01

Second-pass annotation input example 1 Second-pass corrected annotation example 1

Second pass 02

Second-pass annotation input example 2 Second-pass corrected annotation example 2

Second pass 03

Second-pass annotation input example 3 Second-pass corrected annotation example 3
Representative before-and-after examples from the two manual annotation review passes. Cyan indicates input or candidate annotations; green indicates corrected manual labels.

Tile-local annotations

Tile-local annotation view 1Tile-local annotation view 2Tile-local annotation view 3

Recovered parent-space annotations

Recovered parent-space annotations with contributing tile boundaries
Tile-to-parent coordinate recovery. Tile-local annotations are reconstructed in parent coordinates so manual corrections remain valid when derived training crops change.
Maritime region-of-interest tile selection

ROI selection

Deterministic maritime tile grid

Deterministic grid

Annotation-driven recovery tile coverage

Recovery coverage

Hybrid maritime tiling after parent-space annotation recovery. Cyan borders indicate ROI-admitted tiles; magenta borders indicate recovery tiles added to cover valid parent annotations missed by the standard grid.

Audit repair and quality filtering

Structural repairs made the dataset auditable before filtering policies were compared. Together, they produced the stable v9 / v2 active dataset used for later experiments.

Audit repairs

StageRepairScope
v1 structural repairExcluded low-resolution DOTA parents5 parents · 43 tiles
v1 label cleanupCanonicalized duplicate windows and OBB labels10 windows · 120 labels
v1 coverage repairRestored valid parent-to-tile projections233 occurrences
v1 recoveryAdded deterministic recovery crops21 tiles
v2 residual repairReviewed residual atomic edge cases202 cases
v2 policySuppressed edges when a clean >=90% view existed183 cases
v2 recoveryAdded deterministic recovery tiles14 tiles
promotionPromoted repaired v2 as canonical active dataset3 stable roots

Filtering highlights

VariantPolicymAP50-95
Baseline 100epOriginal reference0.61498
v1Moderate filtering; retain bad parents0.69066
v2Aggressive filtering; retain bad parents0.69383
v5Aggressive filtering; seed 1, 40ep0.69438
v9Aggressive filtering; seed 3, 40ep0.69585
v10Aggressive filtering; seed 40.68932

Data-quality filtering improved the original shared-reference baseline from 0.61498 to roughly 0.69 mAP50-95 across multiple filtering variants.

05 / Controlled Experiments

Bounded evaluation after data stabilization

With the annotation system frozen and structurally audited, experiments followed a fixed sequence: data-quality filtering → OBB geometry → input resolution → augmentation → HPO. Small single-seed gains were treated as provisional unless they were replicated.

Resolution

Preserving spatial detail materially improved small-target OBB supervision.

Pixel expansion

Globally enlarging tight vessel OBBs reduced localization quality.

Geometric augmentation

Rotation and flips held a positive paired multi-seed gain of +0.00648.

Small-object filtering

Selective annotation filtering outperformed removing entire degraded parents: 0.69257 +/- 0.00299 across five aggressive-filtering seeds.

Final training recipe

YOLO11m-OBB · audit-fixed v9 / repair v2 · 1280 px · geometric rotation and flips · 40 epochs · batch 4 · seed 3.

Selected checkpoint

0.70666 mAP50-95 · 0.95672 precision · 0.86197 recall

06 / Results and Failure Analysis

Strong conventional-vessel detection with known limits

The final detector performs well on conventional vessels across many port and open-water scenes, but several systematic failure modes remain.

Common false positives

  • long docks
  • breakwaters
  • marina structures
  • other elongated port geometry

Difficult positive cases

  • very small vessels at high ground sample distance
  • tightly packed moored ships
  • shoreline-adjacent vessels
  • covered or stored ships
  • low-contrast hulls
  • scenes affected by haze, mist, or cloud

In dense marinas, adjacent vessels can merge into a single elongated detection when individual hull boundaries are poorly resolved. Further gains are more likely to come from targeted data refinement and additional high-quality maritime imagery than unconstrained hyperparameter search.

Representative final predictions and failure cases. Conventional vessels in many port and open-water scenes are detected well; dense marinas, elongated shoreline structures, low-contrast hulls, and very small vessels remain challenging.

07 / Lessons Learned

What carried forward

Annotation architecture should be decoupled from tiling policy
Maintaining parent-space annotations as the source of truth made downstream tile generation reproducible and allowed tiling strategies to change without invalidating prior labels.
Tiling is a distributional design choice
Crop placement changes object truncation, duplicate exposure, negative context, and the effective sample balance seen during training.
Image quality and label utility are independent
Low-quality imagery can still provide valid large-object supervision and informative hard negatives. Filtering only by image quality can remove useful training signal.
Spatial resolution constrains orientation supervision
Small vessels can remain detectable after their geometry becomes too ambiguous to support reliable oriented-box annotations.
Marginal gains require replication
Multi-seed validation helped distinguish repeatable improvements from normal run-to-run variance when evaluating small model changes.

The complete IEEE-style technical report, live inference demo, and project links are available from the overview at the top of this page.

↑ Back to report and demo actions

© 2026 Paul Ramirez-Lopez