• В чём заключается задача сегментации
  • Как подготавливается y_train для сегментации
  • Какие архитектуры применяются для сегментации

Сегментация – это выделение объектов в исходных данных. Как отдельный класс сегментация изображений заключается в подсвечивании объектов на изображении, другими словами можно сказать, что сегментация изображений – это попиксельная классификация, где каждому пикселю объекта присваивается определенный класс.

Бывают:

  1. Semantic segmentation. Нейронная сеть на выходе для каждого пикселя выдаёт вероятность его принадлежности к каждому классу.
  2. Object recognition. Нейронная сеть получает на вход изображение с ровно одним объектом и возвращает координаты содержащего объект прямоугольника и его класс.
  3. Object detection. На картинке есть несколько объектов, сеть должна обвести прямоугольником и предсказать класс для каждого объекта. Заслуживают внимания архитектуры Faster R-CNN и YOLO.
  4. Instance segmentation. Самая сложная задача – объектов может быть несколько, причём надо отличать друг от друга разные экземпляры одного класса.

Сравнивая каждый пиксель выводимого сетью изображения (y_pred) с верным сегментированным изображением (y_true), мы находим ошибки, применяя функцию потери кросс-энтропии к каждому пикселю. Затем в модели вычисляются частные производные и пересчитываются веса нейронов для следующей итерации обучения.

U-NET

 

PSP NET

 

LINK NET

 

https://colab.research.google.com/drive/1TaJzhhFB1GYQyNgb9-CeeLObYjiTy5rC
https://colab.research.google.com/drive/15YdJp_-Of5NLAaYSqsV9r_sFGHQma2-k
https://colab.research.google.com/drive/13QiBpQ9OeZVdrCU4stZqhXVjhux9uQAg
https://colab.research.google.com/drive/1ZqX6hJ-nov9Qmj_8Nj2uYmgTS3SVRUxn

25387