Похожие презентации:
Polyp_Segmentation_Defense_FINAL_CONTENT_REDESIGN
1.
AUTOMATIC POLYPSEGMENTATION
Сравнение YOLO11s-Seg, U-Net, UNet++ и PraNet
для сегментации полипов на колоноскопических
изображениях
Kvasir → CVC
RTX 3060
Strict CVC Dice
CVC IoU
Best CNN
0.7837
YOLO Kvasir-only
0.7161
YOLO Kvasir-only
PraNet
Precision 0.7550
512×512
Final Project Defense
Task
Data
Models
Results
Errors
Summary
2.
Задача проектане просто найти полип, а точно восстановить его маску
СУТЬ ПРОЕКТА
ЭКСПЕРИМЕНТАЛЬНАЯ
ЛОГИКА
Сегментация полипов на
уровне пикселей
Kvasir train
→
4 models
• Вход: RGB-кадр колоноскопии; выход: бинарная маска
полипа.
→
Kvasir val
↓ fixed checkpoints
• Сравниваются 4 архитектуры: U-Net, UNet++, PraNet и
YOLO11s-Seg.
CVC-ClinicDB external test
• Все финальные модели сравниваются при одинаковом
input size 512×512.
• Основной вопрос — не только accuracy на Kvasir, а
перенос на независимый CVC-ClinicDB.
Почему
segmentation?
Bounding box показывает где полип; mask показывает его
точную форму и границы.
Task
Data
Models
Results
STRICT CVC DICE
STRICT CVC IoU
BEST CNN
0.7837
0.7161
PraNet
YOLO
YOLO
Precision 0.7550
Отдельно: Combined YOLO = Kvasir + CVC в обучении. Это проверка
data diversity, а не unseen-domain generalization.
Errors
Summary
3.
Данные и протоколстрого разделяем generalization и combined-data experiment
Kvasir-SEG
Models
CVC-ClinicDB
train + validation
YOLO / U-Net / UNet++ / PraNet
external test
→
• 1,000 image-mask pairs
• 880 train / 120 validation
• checkpoint selection
→
• same 512×512 input
• same external split
• compare Dice/IoU
• independent domain
• no retraining
• domain-shift test
STRICT EVALUATION
COMBINED YOLO
CVC не участвует в обучении: это честная проверка unseendomain generalization.
Kvasir + CVC в обучении: это отдельный эксперимент про
diversity данных.
Task
Data
Models
Results
Errors
Summary
4.
Pipeline проектаот масок к финальному сравнению моделей
01
02
EDA
изображения, маски, размеры
04
→
mask → polygon для YOLO
05
Evaluate
→
Kvasir validation
03
Prepare
→
YOLO / U-Net / UNet++ /
PraNet
06
External
→
CVC-ClinicDB test
Train
Analyze
error maps + robustness
Финальная логика: одна и та же external split CVC + общий input size 512×512 + разделение strict и combined результатов.
Task
Data
Models
Results
Errors
Summary
→
5.
Подготовка данныхразные форматы для YOLO и CNN, единая геометрия 512×512
YOLO11s-Seg: raster mask → polygon
CNN: image + raster mask
Почему отдельный pipeline?
U-Net / UNet++ / PraNet используют маску напрямую.
YOLO segmentation обучается по polygon labels, поэтому исходную
GT mask нужно преобразовать.
• RGB conversion и resize до 512×512.
• Image → float tensor, channel-first.
GT MASK
→
CONTOUR
→ NORMALIZE →
• GT mask → binary tensor.
YOLO TXT
• Model output → sigmoid probability map.
• Threshold 0.5 → final binary prediction.
• cv2.findContours: внешний контур полипа.
• Координаты переводятся в [0,1].
• Label = class_id + polygon points.
• Verification: polygon восстанавливается и сравнивается с GT по
IoU.
Data
Models
Results
TARGET
THRESHOLD
3×512×512
1×512×512
0.5
Общий resize 512×512 нужен для честного cross-model
comparison.
Контроль conversion исключает ошибку аннотаций до обучения.
Task
INPUT
Errors
Summary
6.
Модели и training setupчетыре архитектуры, общий финальный размер входа 512×512
YOLO11s-Seg
U-Net
instance segmentation
512×512 • до 120 эпох • AMP
batch 2 • 80 эпох • Adam 1e-3
polygon labels • mask mAP + Dice/IoU
skip connections • BCE + Dice • scheduler • AMP
UNet++
PraNet
nested skip architecture
ResNet34 • no pretrained
Res2Net50 • no pretrained
BCE + Dice • Adam 1e-3 • scheduler • AMP
4 outputs • structure loss • Adam 1e-4 • early stop
baseline CNN
polyp-specialized CNN
Контроль справедливости: старые YOLO 640×640 runs исключены; финальный cross-model comparison использует 512×512.
Task
Data
Models
Results
Errors
Summary
7.
Метрики оценкисмотрим не только средний score, но и тип ошибки
Dice
IoU
Precision
2TP/(2TP+FP+FN)
TP/(TP+FP+FN)
TP/(TP+FP)
главная overlap-метрика
строже, чем Dice
контроль false positives
Recall
mAP50/95
wFβ / Sα / Eφ / MAE
TP/(TP+FN)
YOLO masks
extended
сколько полипа найдено
instance-segmentation quality
структурное качество маски
Правило: Dice/IoU = качество маски • Precision/Recall = характер ошибки • mAP = YOLO • MAE: ниже лучше.
Task
Data
Models
Results
Errors
Summary
8.
U-Net baselineпростая encoder-decoder модель задаёт нижнюю точку сравнения
BASELINE: что именно
обучалось
STRICT CVC-ClinicDB
• Encoder → bottleneck → decoder + skip connections.
• Input 512×512; batch size 2; максимум 80 epochs.
• Adam, initial LR = 1e-3.
• Loss = BCEWithLogitsLoss + Dice Loss.
• ReduceLROnPlateau по validation Dice.
DICE
IoU
0.5360
0.4220
external test
external test
Что означает результат
• AMP: autocast + GradScaler.
• U-Net имеет самый низкий external overlap среди 4 моделей.
• Это подтверждает, что хороший baseline недостаточен для
устойчивого cross-dataset переноса.
• UNet++, PraNet и YOLO дают заметный выигрыш на том же
CVC split.
Роль в проекте
Понятная нижняя точка сравнения: показывает, сколько дают
более сложные архитектуры и YOLO.
Task
Data
Models
Results
Вывод: baseline нужен для контекста, а не как ожидаемый
победитель.
Errors
Summary
9.
CNN resultsUNet++ и PraNet: training history + Kvasir/CVC metrics
UNet++
ResNet34 • nested skip pathways • no pretrained weights
PraNet
Res2Net50 • multi-scale aggregation • reverse
attention
Dataset
Dice
IoU
Precision
Recall
Dataset
Dice
IoU
Precision
Recall
Kvasir
0.7676
0.6813
0.8424
0.6865
Kvasir
0.8301
0.7476
0.8531
0.7965
CVC
0.6684
0.5834
0.7327
0.7023
CVC
0.7449
0.6572
0.7550
0.8109
Δ Dice −0.0992 • Δ IoU −0.0980
Δ Dice −0.0851 • best CNN Precision 0.7550
Nested skips улучшают baseline, но domain shift остаётся заметным.
PraNet лучше UNet++ на Kvasir и CVC; лучший CNN в проекте.
Task
Data
Models
Results
Errors
Summary
10.
Extended segmentation metricsдополнительная проверка качества UNet++ и PraNet
Зачем нужны дополнительные
метрики?
• wFβ — качество foreground с учётом структуры
ошибки.
• Sα — структурное сходство prediction и GT.
• Eφ max — enhanced alignment prediction и GT.
• MAE — средняя абсолютная ошибка; ниже лучше.
Ключевой результат
PraNet выше UNet++ по wFβ, Sα и Eφ max на
Kvasir и CVC.
MAE
UNet++: 0.0687 → 0.0480 | PraNet: 0.0534 → 0.0402
Task
Data
Models
Results
Errors
Summary
11.
Главный результат: strict CVC testмодели обучены без CVC training samples
STRICT EXTERNAL RANKING
CVC не использовался для обучения этих моделей.
Model
Dice
IoU
Precision
Recall
U-Net
0.5360
0.4220
—
—
UNet++
0.6684
0.5834
0.7327
0.7023
PraNet
0.7449
0.6572
0.7550
0.8109
YOLO11s
0.7837
0.7161
—
0.8395
Главный вывод
• YOLO11s-Seg — лучший Dice, IoU и Recall.
• PraNet — лучшая CNN и лучшая сохранённая
Precision.
• Combined YOLO здесь отсутствует: CVC участвовал в
его training.
Task
Data
Models
Results
Errors
Summary
12.
Domain shift: Kvasir → CVCпри переносе на другой датасет качество падает
UNet++: перенос на CVC
PraNet: перенос на CVC
Kvasir Dice
CVC Dice
Δ Dice
Kvasir Dice
CVC Dice
Δ Dice
0.7676
0.6684
−0.0992
0.8301
0.7449
−0.0851
Kvasir IoU
CVC IoU
Δ IoU
Kvasir IoU
CVC IoU
Δ IoU
0.6813
0.5834
−0.0980
0.7476
0.6572
−0.0903
Precision −0.1097 • Recall +0.0158
Precision −0.0981 • Recall +0.0144
Overlap и Precision падают сильнее, чем меняется Recall.
PraNet переносится лучше UNet++, но domain shift всё равно
заметен.
Интерпретация: модели продолжают находить полип, но на новом домене хуже определяют точную область и
границы.
Task
Data
Models
Results
Errors
Summary
13.
YOLO experimentsKvasir-only для generalization, Combined — для data diversity
Kvasir-only YOLO
Combined YOLO
512×512 • YOLO11s-Seg • AMP • до 120 epochs
Kvasir + CVC в обучении — не strict external ranking
Mean Dice
Mean IoU
Best epoch
mAP50
0.8707
0.8064
118
0.9650
mAP50
mAP50-95
mAP50-95
Mask Recall
0.9346
0.7292
0.7748
0.9340
Главная мысль: Combined показывает пользу разнообразия данных, но не доказывает unseen-domain generalization.
Task
Data
Models
Results
Errors
Summary
14.
Qualitative analysisпроверяем не только средний score, но и реальные ошибки
UNet++ predictions
PraNet prediction
• best / median / worst cases показывают распределение качества
• error maps отделяют TP, FP и FN пиксели
• основная сложность — границы полипа и ложноположительные области
Error maps
Task
Data
Models
Results
Errors
Summary
15.
Robustness и ограничениячто проверено дополнительно и где границы проекта
Robustness tests
Limitations
• Motion Blur
• Gaussian Blur
• Gaussian Noise
• Darkness
• Low Contrast
небольшие медицинские датасеты
нет prospective clinical validation
UNet++/PraNet без pretrained weights
Combined YOLO не является unseen-domain test
оценивалась маска, не клиническое решение
Для каждого degradation: тот же trained checkpoint →
prediction → Dice/IoU vs clean baseline. Никакого
retraining.
Честное ограничение повышает доверие к отчёту: мы не
завышаем claim сверх данных.
Task
Data
Models
Results
Errors
Summary
16.
Итоговые выводычто проект доказал
01
YOLO11s-Seg
лучший strict external Dice / IoU / Recall на CVC
02
PraNet
сильнейшая CNN-модель и лучшая external Precision
03
Domain shift
качество падает при переносе Kvasir → CVC
04
Data diversity
Combined YOLO показывает пользу более разнообразного training set
05
Full pipeline
EDA → подготовка → обучение → external test → robustness → error analysis
Strict CVC winner: YOLO Dice 0.7837 / IoU 0.7161 • Best CNN: PraNet Dice 0.7449 / Precision 0.7550
Главный вывод: external validation важнее одной красивой validation-метрики на исходном датасете.
Task
Data
Models
Results
Errors
Summary