endo-depth-robustness-eval
Benchmarking Robustness of Endoscopic Depth Estimation with Synthetically Corrupted Data — An Wang et al. (2024) (arXiv:2409.16063, 2024)
What this evaluates
This benchmark evaluates the robustness of monocular depth estimation models when processing endoscopic images degraded by realistic surgical artifacts. It probes how well models maintain depth prediction accuracy and consistency under varying severities of illumination changes, optical blurs, visual obstructions, sensor noise, and compression artifacts.
Datasets
Metrics
DERS (primary) — range: other
- DERS = (E / A) * exp(-R). E normalizes the average error across 4 metrics (AbsRel, SqRel, RMSE, LogRMSE) on corrupted images relative to clean images. A averages thresholded accuracy metrics (a1, a2, a3) across all corruption levels weighted by threshold strictness. R measures the standard deviation of all 7 metrics across corruption levels relative to clean performance, penalizing instability.
Input / output format
Input: Single-channel or RGB endoscopic images (clean and synthetically corrupted across 6 corruption types at 5 severity levels each).
Output: Per-pixel monocular depth prediction map.
Scoring recipe
def compute_ders(preds_clean, preds_corrupted, gt):
# Compute 4 error metrics on clean (E0) and corrupted (Ej)
E0 = [abs_rel, sq_rel, rmse, log_rmse](preds_clean, gt)
Ej = [abs_rel, sq_rel, rmse, log_rmse](preds_corrupted, gt)
E = sum(sum(Ej[i]) / (5 * E0[i]) for i in range(4))
# Compute 3 accuracy metrics on clean (A0) and corrupted (Aj)
A0 = [a1, a2, a3](preds_clean, gt)
Aj = [a1, a2, a3](preds_corrupted, gt)
A = sum((W[k] / 6) * sum(Aj[k][j] for j in range(6)) for k in range(3))
# Compute robustness R across all 7 metrics
M0 = E0 + A0
Mj = [Ej[i] + Aj[i] for i in range(7)]
R = (lambda_p / 7) * sum(sqrt(sum((Mj[i][j] - M0[i])**2 for j in range(1,6)) / 5) for i in range(7))
return (E / A) * exp(-R)
Common pitfalls
- DERS requires normalizing corrupted error metrics against the clean image's error for the same metric, not against a fixed ground-truth scale or absolute values.
- The robustness component R penalizes performance variance across corruption severities rather than absolute degradation, so a consistently mediocre model may score better than a highly accurate but unstable one.
- Accuracy thresholds (a1, a2, a3) use multiplicative factors (<1.25, <1.25^2, <1.25^3) relative to ground truth depth, not absolute pixel differences.
Evidence (verbatim from paper)
To measure a model’s performance across various distortions common in endoscopic imaging, we present the Depth Estimation Robustness Score (DERS). DERS purposefully devised to combine three pivotal components—error, accuracy, and robustness—into a comprehensive composite index. ... Rendered as a whole, the Depth Estimation Robustness Score (DERS) integrates the aforementioned components, thus: DERS=rac{E}{A} imes e^{-R}.
Citation
@misc{wang2024endodepthbenchmark,
title={Benchmarking Robustness of Endoscopic Depth Estimation with Synthetically Corrupted Data},
author={An Wang et al. (2024)},
year={2024},
note={arXiv:2409.16063}
}
1---2name: endo-depth-robustness-eval3description: This benchmark evaluates the robustness of monocular depth estimation models when processing endoscopic images degraded by realistic surgical artifacts. It probes how well models maintain depth prediction accuracy and consistency under varying severities of illumination changes, optical blurs, visual obstructions, sensor noise, and compression artifacts. Use when the user wants to benchmark on Endoscopic Depth Estimation Dataset (Synthetically Corrupted), or asks about evaluating this task. Reports DERS.4---56# endo-depth-robustness-eval78> Benchmarking Robustness of Endoscopic Depth Estimation with Synthetically Corrupted Data — An Wang et al. (2024) (arXiv:2409.16063, 2024)910## What this evaluates1112This benchmark evaluates the robustness of monocular depth estimation models when processing endoscopic images degraded by realistic surgical artifacts. It probes how well models maintain depth prediction accuracy and consistency under varying severities of illumination changes, optical blurs, visual obstructions, sensor noise, and compression artifacts.1314## Datasets1516- **Endoscopic Depth Estimation Dataset (Synthetically Corrupted)** — total ?; splits: test (-1); repo https://github.com/lofrienger/EndoDepthBenchmark1718## Metrics1920- `DERS` **(primary)** — range: other21 - DERS = (E / A) * exp(-R). E normalizes the average error across 4 metrics (AbsRel, SqRel, RMSE, LogRMSE) on corrupted images relative to clean images. A averages thresholded accuracy metrics (a1, a2, a3) across all corruption levels weighted by threshold strictness. R measures the standard deviation of all 7 metrics across corruption levels relative to clean performance, penalizing instability.2223## Input / output format2425**Input**: Single-channel or RGB endoscopic images (clean and synthetically corrupted across 6 corruption types at 5 severity levels each).2627**Output**: Per-pixel monocular depth prediction map.2829## Scoring recipe3031```python32def compute_ders(preds_clean, preds_corrupted, gt):33 # Compute 4 error metrics on clean (E0) and corrupted (Ej)34 E0 = [abs_rel, sq_rel, rmse, log_rmse](preds_clean, gt)35 Ej = [abs_rel, sq_rel, rmse, log_rmse](preds_corrupted, gt)36 E = sum(sum(Ej[i]) / (5 * E0[i]) for i in range(4))37 38 # Compute 3 accuracy metrics on clean (A0) and corrupted (Aj)39 A0 = [a1, a2, a3](preds_clean, gt)40 Aj = [a1, a2, a3](preds_corrupted, gt)41 A = sum((W[k] / 6) * sum(Aj[k][j] for j in range(6)) for k in range(3))42 43 # Compute robustness R across all 7 metrics44 M0 = E0 + A045 Mj = [Ej[i] + Aj[i] for i in range(7)]46 R = (lambda_p / 7) * sum(sqrt(sum((Mj[i][j] - M0[i])**2 for j in range(1,6)) / 5) for i in range(7))47 48 return (E / A) * exp(-R)49```5051## Common pitfalls5253- DERS requires normalizing corrupted error metrics against the clean image's error for the same metric, not against a fixed ground-truth scale or absolute values.54- The robustness component R penalizes performance variance across corruption severities rather than absolute degradation, so a consistently mediocre model may score better than a highly accurate but unstable one.55- Accuracy thresholds (a1, a2, a3) use multiplicative factors (<1.25, <1.25^2, <1.25^3) relative to ground truth depth, not absolute pixel differences.5657## Evidence (verbatim from paper)5859> To measure a model’s performance across various distortions common in endoscopic imaging, we present the Depth Estimation Robustness Score (DERS). DERS purposefully devised to combine three pivotal components—error, accuracy, and robustness—into a comprehensive composite index. ... Rendered as a whole, the Depth Estimation Robustness Score (DERS) integrates the aforementioned components, thus: DERS=rac{E}{A} imes e^{-R}.6061## Citation6263```bibtex64@misc{wang2024endodepthbenchmark,65 title={Benchmarking Robustness of Endoscopic Depth Estimation with Synthetically Corrupted Data},66 author={An Wang et al. (2024)},67 year={2024},68 note={arXiv:2409.16063}69}70```7172- arXiv: 2409.16063