Optical pretrain, SAR finetune, twelve epochs.
SSDD (Zhang et al.) is 1,160 SAR ship chips (~190–688 px), RadarSat-2 / TerraSAR-X / Sentinel-1, 1–15 m. Official split: file numbers whose last digit is 1 or 9 are test (~232); the rest are train (~928). oriented-det v0.3 loads it natively (dataset.format: ssdd). A full Faster R-CNN 1× finetune from the DOTA Hub reached 90.34% mAP50 on held-out test. There is no SSDD Hub zoo.

The dataset Link to heading
Single class ship. Native loader discovers VOC XML (rotated_bndbox / robndbox), then COCO, then DOTA. Point data_root at Official-SSDD-OPEN (walks into RBox_SSDD/voc_style). Grayscale SAR is loaded as RGB (channel repeat). Chips fit a 608 keep-ratio canvas — do not tile.
| Split | Chips | In training? |
|---|---|---|
| last-digit train | ~928 | Yes |
| last-digit test | ~232 | No |
| test inshore / offshore | 46 / 186 | subsets of test |
odet train --config configs/rotated_faster_rcnn/ssdd_le90_1x.json
make eval-val EXPERIMENT=runs/rotated_faster_rcnn/<timestamp>
Notebook: notebooks/ssdd_finetune_tutorial.ipynb (1-epoch smoke and full 1×). Optional: odet ssdd-to-dota.

Local 1× Faster R-CNN: 90.34% Link to heading
From hf://rotated_faster_rcnn_dota_le90_1x (1-way ship head re-init), RTX 3090 Ti, 15 m (runs/rotated_faster_rcnn/20260918-130546). Score ≥ 0.05, rotated IoU 0.50, NMS IoU 0.10. Report: docs/eval-reports/rotated_faster_rcnn_ssdd_le90_1x/.
| Epoch | Train loss | In-train val mAP50 (score ≥ 0.3) |
|---|---|---|
| 4 | 0.292 | 79.86% |
| 8 | 0.260 | 80.73% |
| 12 | 0.235 | 90.41% |
make eval-val (score ≥ 0.05) is 90.34% — same checkpoint, slightly different floor. Best-F1 deploy threshold on that sweep is 0.40 (P 0.94 / R 0.91 / F1 0.93). Mean best IoU vs GT is 0.74.


Literature Faster R-CNN on SSDD sits around ~89% (Guo et al., Sensors 2021: 88.96% overall). Treat <80% overall as a failed train. The notebook 1-epoch smoke will not hit 90%. Inshore / offshore subsets were not scored separately on this run — the pictures above are the contrast, not a split table.
What this shows Link to heading
You do not start SAR detection from random weights. You start from an oriented optical zoo, swap the head, and qualify on a real holdout. We do not redistribute the chips and we do not ship a SAR zoo. Weather-independent ships on your SAR still need your license and your test set.
Links Link to heading
- Official-SSDD · docs — SSDD
- v0.3 release note
- Previous: FAIR1M · v0.3
- Next: HRSID (1 Oct)