Segmentation mask
- Автор: Команда PhotoPanda
- Обновлено
- 2 мин чтения
- 96 просмотров
Определение
Segmentation mask (маска сегментации) — бинарное или полутоновое изображение, где каждый пиксель кодирует принадлежность к объекту (1/белый) или фону (0/чёрный). Soft mask содержит промежуточные значения 0–255 для полупрозрачных областей и антиалиасинга.
Segmentation mask (маска сегментации) — изображение того же разрешения, что и входное, где каждый пиксель кодирует класс или уровень принадлежности объекту. В задаче удаления фона маска — это карта «объект vs фон», создаваемая нейросетями типа BiRefNet или rembg перед финальным compositing.
Типы масок
- Бинарная (hard) маска: каждый пиксель строго 0 (фон) или 255 (объект). Чёткая граница без полупрозрачности. Используется для геометрических форм, иконок. Недостаток — лестничный эффект (aliasing) на диагональных краях.
- Soft mask (alpha mask): значения 0–255, где промежуточные представляют полупрозрачность. Позволяет плавно смешивать объект с новым фоном. Критична для волос, стекла, меха.
- Instance mask: отдельная маска для каждого объекта на сцене (Mask R-CNN, SAM). Позволяет выделить человека среди множества объектов.
- Semantic mask: пиксели классифицируются по типу объекта (человек, небо, трава, автомобиль). DeepLab, Segformer.
От маски к альфа-каналу: pipeline
- Нейросеть предсказывает soft mask в диапазоне [0,1] для каждого пикселя
- Маска умножается на 255 — становится alpha-channel
- Alpha refinement уточняет значения в зоне 10–245 (неопределённая граница)
- RGBA-изображение собирается: RGB из оригинала + A из маски
- Compositing: RGBA накладывается на новый фон через формулу Alpha Compositing (Porter-Duff «over»)
Форматы хранения масок
| Формат | Тип маски | Применение |
|---|---|---|
| PNG 8-bit grayscale | Soft mask (0–255) | Общий случай, alpha refinement |
| PNG RGBA | Встроенная alpha | Готовый результат для compositing |
| NumPy .npy float32 | Вероятностная (0.0–1.0) | Промежуточные вычисления в Python |
| RLE (Run-Length Encoding) | Бинарная компрессия | COCO dataset формат |
Маски в PhotoPanda
API удаления фона PhotoPanda возвращает два варианта: RGBA PNG (объект на прозрачном фоне) или alpha mask в grayscale (по запросу параметра output=mask). Mask-only режим полезен, когда клиент хочет самостоятельно выполнить compositing с нестандартным фоном или наложить несколько объектов.
FAQ — Segmentation mask
Почему на волосах маска всегда хуже, чем на теле?
Волосы — полупрозрачные, тонкие, перемешанные с фоном на субпиксельном уровне. Ни одна сеть не может восстановить «правильный» alpha для волоска шириной 1–2 пикселя. BiRefNet даёт лучший результат за счёт локальной high-resolution ветки, но абсолютной точности нет. Для студийных портретов на сплошном фоне — результат близок к идеальному.
Можно ли редактировать маску вручную после AI?
Да, это стандартная практика. После автоматического удаления фона — доработка в Photoshop (Select and Mask), GIMP или Figma. PhotoPanda планирует добавить in-browser mask editor для ручных правок без скачивания файла.
Связанные термины
- Edge detectionEdge detection (детекция границ) — группа алгоритмов компьютерного зрения для выделения границ объектов по резкому изменению яркости или цвета пикселей. Лежит в основе классической сегментации изображений и дополняет нейросетевые методы удаления фона.
- Alpha channelAlpha channel (альфа-канал) — дополнительный канал в RGBA-изображении, кодирующий прозрачность каждого пикселя (0–255). Позволяет создавать полупрозрачные области, anti-aliasing границ. Поддерживается в PNG, WebP, TIFF.
- BiRefNetBiRefNet (Bilateral Reference Network) — state-of-the-art архитектура нейросети для задач dichotomous image segmentation. Опубликована в 2024 году, превосходит U-Net и SAM по точности на бордерах объектов.
- Апскейл фотоАпскейл фото — увеличение разрешения изображения нейросетью с восстановлением деталей. В отличие от обычного интерполяционного увеличения (bicubic), AI-апскейл генерирует утерянные детали на основе обученных моделей.
- Колоризация (Colorization)Колоризация — автоматическое раскрашивание чёрно-белых изображений в цветные через нейросеть. Современные модели (ColorFlow, Adobe Quickfire) учитывают исторический период съёмки для period-accurate раскраски.
- Adversarial training (состязательное обучение)Adversarial training (состязательное обучение) — метод, при котором две нейросети учатся друг против друга: генератор создаёт данные, дискриминатор их разоблачает. Лежит в основе GAN и adversarial-лосса в апскейле (ESRGAN) и восстановлении лиц (GFPGAN).
Материал подготовила
Команда PhotoPanda
Редакция сервиса обработки фото PhotoPanda.