CoolFace
Modelpublic

sdoerrich97/true_colon_yolov8m_realcolon_s42

sourceHugging Faceagpl-3.0updated 1mo agoView on Hugging Face
0likes31downloads
Model Card

TRUE-Colon — YOLOv8-M (REAL-Colon, seed 42)

Official weights for TRUE-Colon: Exposing a Consistent Transfer Asymmetry in Real-Time Polyp Detection (MICCAI 2026 EndoLINA Workshop). This repo holds the `yolov8` detector at seed 42, trained on REAL-Colon: 60 complete, unedited colonoscopy procedures rather than curated lesion-centric clips.

TRUE-Colon is an evaluation protocol first. Its finding is that detectors trained on curated benchmarks collapse on full procedures, while procedure-trained models like this one suppress non-polyp content and still transfer back to curated data. The detector itself is an off-the-shelf YOLOv8: what is released here is a baseline trained under the paper's protocol, not a new architecture.

This is one of three seeds. Reporting a single seed of this model in isolation would overstate its precision; the paper aggregates all three.

Model Details

  • —Developed by: Sebastian Doerrich, Andreas Franz Schwab (xAILab, University of Bamberg)
  • —Funded by: Hightech Agenda Bayern (HTA) of the Free State of Bavaria, Germany
  • —Model type: Single-class object detector (lesion)
  • —License: AGPL-3.0, inherited from Ultralytics. This is not the MIT license of the true_colon evaluation package (© Sebastian Doerrich, Andreas Franz Schwab). Using these weights in a product carries the AGPL's source-availability obligations.
  • —Framework: Ultralytics

Model Sources

  • —Paper: https://arxiv.org/abs/2608.13711
  • —Repository: https://github.com/sdoerrich97/true-colon
  • —Package: https://pypi.org/project/true-colon/

Architecture and training

BackboneYOLOv8
Input640 x 640
Classes1 (lesion)
Training dataREAL-Colon, patient-level split, 86.47% lesion-free training frames
Seed42
Batch size208
OptimizerSGD, lr0 0.01, momentum 0.9, weight decay 5e-4 (resolved from optimizer=auto)
Schedule100 epochs, early stopping patience 10, 3-epoch warm-up
InitializationCOCO-pretrained, as shipped by Ultralytics
Ultralytics version8.3.232

This is the configuration this checkpoint was trained with. The paper states the recipe in one sentence and otherwise defers to the frameworks' defaults, so the values it does not state — the optimizer, learning rate, momentum, weight decay and warm-up — come from the training run itself.

On the optimizer. The run recorded optimizer: auto, which is the framework default the paper keeps. Ultralytics resolves that at runtime: SGD when the iteration budget exceeds 10,000, AdamW otherwise. This run reaches 820,500 iterations, so it trained with SGD, at lr0=0.01 and momentum=0.9 — auto sets both, so the run's own momentum entry does not apply.

Uses

Direct use

Research on polyp detection and on evaluation methodology for video-based computer-aided detection. The intended use is reproducing and extending the TRUE-Colon benchmark.

Out-of-scope use

This is not a medical device and must not be used for clinical decision-making. The paper's own conclusion is that performance under realistic full-procedure conditions remains insufficient for reliable clinical deployment. It has not been validated prospectively, cleared by any regulator, or tested against the population, scope hardware or bowel-preparation quality of any particular site.

Bias, risks and limitations

  • —Trained on 60 procedures from 4 institutions; endoscope hardware, imaging mode and patient population all shift performance.
  • —Detection is dominated by medium and large lesions; average precision on small lesions is near zero.
  • —Two histological subtypes (SSL, TSA) appear only in the test split, and sessile serrated lesions have the highest miss rates.
  • —Frame-level, with no temporal model: each frame is scored independently.

How to get started

python
from ultralytics import YOLO  # or RTDETR for the RT-DETR variant
from huggingface_hub import hf_hub_download

weights = hf_hub_download("sdoerrich97/true_colon_yolov8m_realcolon_s42", "model.pt")
model = YOLO(weights)
results = model.predict("frame.jpg", conf=0.06)

Then evaluate under the protocol:

python
import true_colon as tc

evaluator = tc.create_evaluator(dataset="realcolon", id_source="pred_string")
result = evaluator.evaluate_paths("gt.json", "predictions.json")

Evaluation

Evaluate with the TRUE-Colon protocol rather than COCO mAP alone: the point of the benchmark is that localization accuracy alone does not predict deployment behaviour. The paper reports this architecture at a matched false-alert operating point of *tau = 0.06** on REAL-Colon, targeting a frame-level false-positive rate of 4-5%.

For the full result tables, see the paper. Per-seed numbers are not reproduced on this card, because a single seed's values are not the quantity the paper reports.

Citation

bibtex
@article{doerrich2026truecolon,
  title={TRUE-Colon: Exposing a Consistent Transfer Asymmetry in Real-Time Polyp Detection},
  author={Sebastian Doerrich and Andreas Franz Schwab and Francesco {Di Salvo} and Shyam Nandan Rai and Hanh Huyen My Nguyen and Christian Ledig},
  year={2026},
  eprint={2608.13711},
  archivePrefix={arXiv},
  primaryClass={eess.IV},
  url={https://arxiv.org/abs/2608.13711},
}

Model Card Contact

For questions or issues, please open an issue in the GitHub repository, or contact sebastian.doerrich@uni-bamberg.de.