Automated 2D and 3D Segmentation of AMD and DME Lesions in OCT
Organizations: MAPS Lab, Technical University of Munich, Munich, Germany. · University of Wisconsin-Madison, Madison, Wisconsin, USA.
Abstract
Age-related macular degeneration (AMD) and diabetic macular edema (DME) are leading causes of vision loss, and optical coherence tomography (OCT) is the standard modality for detecting and monitoring the subtle lesions that drive treatment decisions. Most deep-learning segmentation work for OCT is validated only in-domain, leaving generalization to clinical data collected under different acquisition protocols largely untested. This work develops and systematically ablates four lesion-segmentation pipelines -- 2D and 3D variants for AMD and DME -- reaching Dice scores of 0.76 to 0.82 with strong volumetric and surface calibration (r vol, r surf greater than or equal to 0.97 across all four pipelines) on an in-domain validation set. The ablation process establishes a full-volume, calibration-aware adoption standard that catches mechanisms an ordinary slice-level evaluation would keep, and identifies ensemble composition as the most consistent driver of improvement. To test generalization, the models are evaluated on OLIVES, an external clinical cohort with no lesion-level ground truth, using a proxy-metric framework built around biomarker AUROC, central subfield thickness (CST) correlation, and longitudinal concordance. Predictions track clinical biomarkers outside the training distribution, though less strongly than in-domain -- evidence for, not validation of, automated lesion-burden tracking as a clinical tool.
Figures & tables
| Mechanism | Pipeline(s) | Description |
|---|---|---|
| Dice loss | AMD 2D | Sole soft Dice loss term. |
| Tversky-BCE ( / swept 0.2/0.8, 0.35/0.65, 0.6/0.4) | AMD 2D, DME 2D, AMD 3D, DME 3D | Tversky index + BCE; / sets FP/FN penalty balance. |
| Dice-BCE loss | AMD 2D, DME 2D, AMD 3D, DME 3D | Dice + BCE, equal weighting. |
| Boundary-aware distance-transform loss | AMD 2D, DME 2D, AMD 3D, DME 3D | Signed-distance-transform boundary penalty, ramped in over 20 epochs. |
| Focal Tversky loss | AMD 2D, AMD 3D, DME 2D, DME 3D | Tversky term raised to a difficulty-adaptive power. |
| Small-lesion / secondary-component per-voxel reweighting | AMD 2D, DME 2D, AMD 3D, DME 3D | Upweights loss for small/secondary lesion components below a size threshold. |
| Mechanism | Pipeline(s) | Description |
|---|---|---|
| Positive-ratio patch sampling (pos_ratio swept 0.5/0.7/1.0) | AMD 3D, DME 3D (0.7 AMD 3D only) | Fraction of sampled patches guaranteed to contain lesion. |
| Elongation-aware oversampling + full-z-extent positive centering | AMD 3D, DME 3D | 3x patch count for highly elongated lesions; positive centers sampled across full z-extent. |
| Small-lesion volume oversampling | AMD 2D, DME 2D, AMD 3D, DME 3D | 3x patch count for volumes with small lesions. |
| Copy-paste augmentation (lesion-instance and shadow hard-negative variants) | AMD 2D, DME 2D, AMD 3D, DME 3D | Pastes extracted lesion or shadow-artifact crops into training examples. |
| Mechanism | Pipeline(s) | Description |
|---|---|---|
| Patch-depth sweep (64/128/192/full-native 512 slices) | AMD 3D, DME 3D (192 AMD 3D only) | Z-extent of training patches, from the 64-slice baseline up to the full native volume in one patch. |
| Sliding-window inference overlap increase (0.25 to 0.5) | AMD 3D | Doubles inference-time tile overlap during 3D reconstruction. |
| Mechanism | Pipeline(s) | Description |
|---|---|---|
| UNet++ (nested/dense skip connections) | AMD 2D, DME 2D, AMD 3D | Nested, densely-connected decoder skip pathways. |
| Decoder-level attention gating | AMD 2D, DME 2D, AMD 3D, DME 3D | Convolutional attention in the decoder — scSE blocks in 2D, MONAI’s AttentionUnet gated skip-connections in 3D. |
| EfficientNet-B0 encoder swap | AMD 2D, DME 2D | Replaces ResNet-34 encoder with EfficientNet-B0. |
| ResNet-50 encoder swap | AMD 2D, DME 2D | Replaces ResNet-34 encoder with a deeper ResNet-50. |
| Auxiliary input channels (position / shadow-darkness / combined) | AMD 2D, AMD 3D, DME 2D, DME 3D (shadow and combined: DME 3D only) | Extra input channel(s) encoding anatomical depth position and/or shadow-darkness score. |
| Deep supervision | AMD 3D | Auxiliary loss-supervised outputs at intermediate decoder resolutions. |
| Mechanism | Pipeline(s) | Description |
|---|---|---|
| Standard augmentation recipe | AMD 2D, DME 2D | Flip, rotation, brightness/contrast, noise, elastic transform, coarse dropout. |
| CoarseDropout removal ablation | AMD 2D | Standard recipe minus coarse dropout. |
| Rotation-only augmentation (reduced recipe) | AMD 2D, DME 2D, AMD 3D, DME 3D | Flip + rotation only. |
| Domain-shift augmentation (full and half strength) | AMD 2D, AMD 3D, DME 2D, DME 3D (half strength: AMD 3D only) | Widened intensity perturbations sized to a measured target-domain gap. |
| Speckle noise injection | DME 3D | Synthetic speckle noise; off by default in production. |
| Mechanism | Pipeline(s) | Description |
|---|---|---|
| Weight decay (Adam, weight_decay=1e-4 ) | AMD 2D, DME 2D, AMD 3D, DME 3D | L2 penalty on model weights. |
| LR-decay removal ( --lr-patience 1000 ) | AMD 2D, DME 2D | Holds learning rate fixed throughout training. |
| Reduced initial learning rate (1e-4 to 3e-5) | AMD 3D, DME 3D | Stabilization fix for deeper-patch/loss configurations prone to background collapse. |
| Gradient-norm clipping + non-finite-batch guard | AMD 3D, DME 3D | Clips global gradient norm; skips batches with non-finite loss. |
| Extended training epoch budget (100 to 120 epochs) | AMD 3D, DME 3D | Resumes a converged checkpoint for additional epochs. |
| Mechanism | Pipeline(s) | Description |
|---|---|---|
| TTA — flip-based test-time augmentation | AMD 2D, DME 2D, AMD 3D, DME 3D | Averages predictions across flipped inference passes (horizontal; +vertical for 2D; +z-axis for 3D). |
| Decision-threshold tuning | AMD 2D, DME 2D, AMD 3D, DME 3D | Sweeps the binarization threshold on TTA-averaged probabilities. |
| 3D binary erosion | AMD 3D, DME 3D | Morphological erosion to remove thin/noisy boundary voxels. |
| 3D binary closing + hole-filling | AMD 2D, AMD 3D, DME 3D | Reconnects fragmented components and fills small gaps. |
| Minimum-component-size filtering (absolute and relative) | AMD 3D | Removes components below an absolute or relative size cutoff. |
| Largest-connected-component filtering | AMD 3D | Keeps only the single largest predicted component. |
| Mechanism | Pipeline(s) | Description |
|---|---|---|
| Checkpoint ensembling (uniform and weighted averaging) | AMD 2D, DME 2D, AMD 3D, DME 3D | Combines TTA-corrected member probabilities via uniform averaging or coordinate-ascent-tuned weights. |
| Leave-one-out ensemble composition search | AMD 2D, DME 2D, AMD 3D, DME 3D | Tests dropping/adding members to find the best-performing subset. |
| Pipeline | Dice | Pooled Dice | ||
|---|---|---|---|---|
| AMD 2D | 0.7641 | 0.8451 | 0.9880 | 0.9807 |
| DME 2D | 0.7722 | 0.8490 | 0.9981 | 0.9985 |
| AMD 3D | 0.7623 | 0.7573 | 0.9723 | 0.9927 |
| DME 3D | 0.8247 | 0.8444 | 0.9983 | 0.9963 |