Сегментация и детекция
Владимир Игловиков
Classification


Cat (0.99)
Dog(0.01)
Segmentation

- Сегментация = попиксельная классификация
- Не требует большого объема тренировочных данных.
- Все сегментационные сети - это архитектуры вида FCN.
Segmentation: Metric


Чаще всего используют Dice - особенно в медицинских снимках
и Jaccard (IoU)
Fully Convolutional Network: FCN

- Оторвать Dense слой, или Dense => Conv.
- В сети мало параметров.
- Берет на вход картинки любого размера.
Jonathan Long, Evan Shelhamer, Trevor Darrell; The IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2015, pp. 3431-3440
FCN = Efficient Sliding Window


Classification to Segmentation

- Оторвать Dense или Dense => Conv
- Добавить декодер
Jonathan Long, Evan Shelhamer, Trevor Darrell; The IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2015, pp. 3431-3440
FCN8 to SegNet

FCN8
SegNet
Заменить Upsampling на иерархический Upsampling
V. Badrinarayanan, A. Kendall, and R. Cipolla, “Segnet: A deep convolutional encoder-decoder architecture for image segmentation,” arXiv:1511.00561, 2015
SegNet to UNet

SegNet
UNet
Added skip connections

O. Ronneberger P. Fischer T. Brox "U-net: Convolutional networks for biomedical image segmentation" Proc. Med. Image Comput. Comput.-Assisted Intervention pp. 234-241 2015.
UNet => TernausNet


Text
Iglovikov, V., Shvets, A.: Ternausnet: U-net with vgg11 encoder pre-trained on imagenet for image segmentation. arXiv preprint arXiv:1801.05746 (2018)
Энкодер инициализируем весами с ImageNet
Any binary Image Segmentation => UNet


Medical Imaging


Satellite Imaging
Feature Pyramid Networks (FPN)

- Легко добавить во многие архитектуры.
- Помогает с multiscale
Tsung-Yi Lin, Piotr Dollar, Ross Girshick, Kaiming He, Bharath Hariharan, Serge Belongie; The IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2017, pp. 2117-2125
U-Net + FPN


Segmentation Loss Function
Каждый пиксель классификатор => Categorical / Binary Cross Entropy(CCE, BCE)
Но! Метрика Dice / Jaccard
Dice / Jaccard недифференцируемы =>
Soft Dice / Soft Jaccard
и добавляем в loss

Lovasz-Softmax loss
Использовать для FineTune
Berman, M., Rannen Triki, A., Blaschko, M.B.: The lovász-softmax loss: a tractable surrogate for the optimization of the intersection-over-union measure in neural networks. In: Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, pp. 4413–4421 (2018)
Detection

Предсказываем:
- координаты боксов
- класс
- опционально атрибуты
Detection Metric: mAP

Метрика крайне замороченная.
Нужно свести в одно число:
- Точность бокса
- Confidence класса
Для каждого класса:
- Хотим получить Precision Recall Curve.
- Цикл по трешходам confidence.
- Трешхолд по IOU => TP, FP, FN
- mAP = area under PR Curve

Non Maximum Supression (NMS)
Detection = Предсказываем много боксов, а потом фильтруем


Detection
One-shot (быстрые)
YOLO, SSD, RetinaNet,
SqueezeNet, DetectNet
Two-shot (точные)
R-FCN, Fast RCNN, Faster-RCNN

One shot detectors


Для каждой ячейки в последнем conv слое предказываем координаты бокса и класс объекта с центром в ячейке.
One shot detectors: YOLO
Для каждой ячейки в последнем conv слое предказываем координаты бокса и класс объекта с центром в ячейке.

One shot detector with FPN = SSD

mAP | FPS | |
---|---|---|
YOLO v2 | 21.6 | 91 |
SSD | 28.0 | 59 |
Two shot: R-CNN


R-CNN = Selective Search
+ Classification
Ross Girshick, Jeff Donahue, Trevor Darrell, Jitendra Malik; The IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2014, pp. 580-587
Two shot: Fast-RCNN


R-CNN => Fast R-CNN
Меняем порядок Crop и ConvNet
50 секунд => 2 секунды (25 раз быстрее)
Fast => Faster

Fast R-CNN => Faster R-CNN
Вычисляем proposals самой сетью.
2 секунды => 0.2 секунды (10 раз быстрее)

Two shot: performance

Improvements
- Тяжелые backbones
- FPN
- ROI Pooling => ROI Align
- Аугментации
Backbone | FPN | mAP |
---|---|---|
ResNet 50 | No | 34.8 |
ResNet 50 | Yes | 36.8 |
ResNet 101 | Yes | 39.1 |
ResNext 101 | Yes | 41.2 |
Сегментация и детекция
By Vladimir Iglovikov
Сегментация и детекция
- 7,522