/ Модель

Характеристики

Лицензия
Apache 2.0
Библиотека
onnx
Опубликована
18 сен 2026

selfie_multiclass_256x256-ONNX

Сегментация изображенийИзображение → mask

ONNX-конверсия сегментатора MediaPipe от Google выделяет волосы, кожу, фон и другие классы на фотографиях людей.

0скачиваний за 30 дней0лайковвеса обновлены18 сен 2026

Бенчмарки

Как модель справилась с задачами пользователей ailist и что о ней публикуют открытые лидерборды

Публичные оценки

Из открытых лидербордов. Сравнивайте результаты одного теста при одинаковых условиях — отсутствие оценки не значит, что модель хуже.

В подключённых источниках результатов для этой модели пока нет.

Что умеет модель

Описание составлено по карточке модели и метаданным Hugging Face

Это модель сегментации изображений MediaPipe selfie_multiclass_256x256 от Google, опубликованная в формате ONNX. Она присваивает каждому пикселю один из шести классов, включая фон, волосы и кожу тела, и предназначена для создания масок частей человека на фотографиях. Модель принимает изображение RGB размером 256×256 в формате float32 со значениями от 0 до 1 и выдаёт для каждого пикселя логиты по шести классам; перед интерпретацией результатов как вероятностей нужно применить softmax.

Веса Google не менялись: репозиторий содержит конверсию исходной модели из TFLite в ONNX. Для выполнения достаточно ONNX Runtime, без MediaPipe или TensorFlow. Конверсия проверена сравнением с исходной моделью на трёх фотографиях; совпадение пиксельных argmax составило 100%. Репозиторий распространяется по лицензии Apache-2.0.

Сценарии применения

  • создание масок волос на селфи
  • выделение кожи и частей тела на фотографии
  • разделение человека и фона по пикселям
  • подготовка масок для многослойной обработки портретов

Ограничения

Модель рассчитана на вход 256×256 RGB: изображение нужно растянуть до этого размера, не добавляя поля. Выход содержит логиты, поэтому для получения вероятностей требуется отдельно применить softmax; проверка конверсии описана только на трёх фотографиях.

Карточка модели

README от автора на Hugging Face, как он его опубликовал

Открыть на Hugging Face

MediaPipe selfie multiclass (256×256), ONNX

This is Google's MediaPipe selfie_multiclass_256x256 image segmenter, converted from TFLite to ONNX so it runs anywhere onnxruntime does, with no MediaPipe or TensorFlow at inference time. The weights are Google's and unchanged. Only the file format is different. See the original model card: MediaPipe image segmenter models.

It labels each pixel as one of six classes:

indexclass
0background
1hair
2body skin
3face skin
4clothes
5others (accessories)

Usage

  • Input input_29: float32 [1, 256, 256, 3], NHWC, RGB, values in [0, 1]. Stretch the image to 256×256; don't letterbox it.
  • Output Identity: float32 [1, 256, 256, 6]. These are logits. MediaPipe applies the softmax outside the model, so apply it yourself before treating them as probabilities.
import numpy as np, onnxruntime as ort
from PIL import Image

sess = ort.InferenceSession("onnx/model.onnx", providers=["CPUExecutionProvider"])
img = Image.open("photo.jpg").convert("RGB")
x = (np.asarray(img.resize((256, 256), Image.BILINEAR), np.float32) / 255.0)[None]
logits = sess.run(None, {"input_29": x})[0][0]
e = np.exp(logits - logits.max(-1, keepdims=True))
probs = e / e.sum(-1, keepdims=True)            # 256 x 256 x 6
hair = Image.fromarray((probs[..., 1] * 255).astype(np.uint8)).resize(img.size, Image.BILINEAR)

This takes about 35 ms on a laptop CPU (Intel Core Ultra 9 185H, onnxruntime 1.30).

The masks are 256×256, so individual strands at the edge of the hair are not resolved. We multiply the upsampled probabilities by a high-resolution subject matte (BiRefNet), which removes background false positives and brings back the flyaway edge. MediaPipe's model card lists the model's intended use and limits (selfie framing, people within a few metres); read it before relying on it elsewhere.

Conversion

From the versioned TFLite file:

  • source: https://storage.googleapis.com/mediapipe-models/image_segmenter/selfie_multiclass_256x256/float32/1/selfie_multiclass_256x256.tflite
  • source sha256: c6748b1253a99067ef71f7e26ca71096cd449baefa8f101900ea23016507e0e0
pip install tf2onnx==1.17.0 tensorflow   # conversion only
python -m tf2onnx.convert --tflite selfie_multiclass_256x256.tflite --opset 17 --output model.onnx

The result was checked against the TFLite model run through LiteRT on three photographs: the largest absolute difference is 3.7e-5, and the per-pixel argmax agrees 100%.

sha256 of onnx/model.onnx: 35ec1ecd9ee7f85073c99c00020b7f6751b69506eeacf683bc8665f6117f85b0

This conversion is used by painter (painter.parts), for hair, face and clothes masks in its layered painter.

License

Apache-2.0, the same as the original model. The model and its weights are © Google LLC. This repository only changes the file format.

Как запустить

На своей GPU в ailist. Цена — по текущим предложениям провайдеров

GPU в ailist

Универсальный рантайм · onnx

Нельзя запустить

В репозитории нет весов в формате PyTorch/safetensors.

Ревизия весов
6db8421

0 моделей