FeyNobg
Модель для удаления фона от Feyn Inc., которая углубляет архитектуру BiRefNet и переобучает её. В LibreYOLO есть инференс и валидация для задачи matte из FeyNobg.
- Задачи
- matte
- Размеры
- l at 1024 px
- Установка
pip install libreyolo- Уровень поддержки
- Только инференс, начиная с v. Только предсказание, валидация и экспорт. Функции обучения неприменимы.
- Исходный проект
- FeyNobg от Feyn Inc., Apache-2.0. Статья, исходный код
- Лицензии
- Код: MIT, веса: Apache-2.0. Коммерческое использование
Установка
FeyNobg не требует установки дополнительных extra-пакетов. Всё, что он импортирует, входит в базовую установку.
pip install libreyoloПредсказание
Чекпойнт скачивается из организации LibreYOLO на Hugging Face при первом запуске и кэшируется локально, как и в любом другом семействе, хотя в таблице чекпойнтов на этой странице он пока не указан.
from libreyolo import LibreYOLO, SAMPLE_IMAGE model = LibreYOLO("LibreFeyNobgl-matte.pt")result = model(SAMPLE_IMAGE, save=True) matte = result.matteprint(matte.array.shape, matte.array.dtype)libreyolo predict model=LibreFeyNobgl-matte.pt source=https://raw.githubusercontent.com/LibreYOLO/libreyolo/release/libreyolo/assets/parkour.jpg save=Truefrom libreyolo import LibreYOLO, SAMPLE_IMAGE model = LibreYOLO("LibreFeyNobgl-matte.pt")result = model(SAMPLE_IMAGE) # RGBA (H, W, 4) uint8: исходный RGB плюс альфа-маска как альфа-канал.rgba = result.cutout()result.save("subject.png")В результате задачи matte нет рамок; result.matte — плотный массив
(H, W) типа float32 со значениями в [0, 1], где 1 — полностью передний
план, а 0 — полностью фон. В отличие от бинарной маски, мягкая альфа-маска
сохраняет сглаженные детали на краях: например, волосы и шерсть.
result.cutout() собирает исходное изображение с этим альфа-каналом в
RGBA-массив, а result.save(path) (или save=True в вызове предсказания)
сразу записывает его в PNG с прозрачным фоном. Модель работает на
фиксированном родном холсте 1024x1024; другое разрешение не поддерживается,
потому что к нему привязаны таблицы относительных позиций бэкбона Swin, и при
несовпадении они интерполируются некорректно, а не вызывают ошибку. Об
источниках, стриминге и обработке результатов — в разделе
предсказание.
Варианты
Опубликован один размер, l, — бэкбон уровня Swin-L. FeyNobg берёт
архитектуру BiRefNet и углубляет её третью стадию Swin с 18 до 24 блоков, а
затем переобучает, поэтому порт в LibreYOLO переиспользует прямой проход,
предобработку и контракт вывода с одним логитом из BiRefNet; предсказание,
валидация и работа с чекпойнтами устроены так же, как в семействе birefnet.
Валидация
val() считает две метрики по папке с парами изображение/альфа-маска; обе
лежат в [0, 1] и не зависят от разрешения: MAE — средняя абсолютная ошибка
относительно эталонной альфа-маски (ground truth), чем меньше, тем лучше, и
S-measure (Fan et al., ICCV 2017) — структурное сходство, которое учитывает
сохранение формы объекта и отверстий в нём, чего попиксельный MAE сам по себе
не замечает (чем больше, тем лучше). Валидация идёт через собственный
predict модели, поэтому использует ровно ту предобработку, что принята в
семействе.
from libreyolo import LibreYOLO model = LibreYOLO("LibreFeyNobgl-matte.pt") # Вместо YAML датасета подойдёт и каталог с images/ и автоматически# найденным каталогом альфа-масок (mattes/, matte/, gt/, masks/,# mask/ или alpha/).metrics = model.val(data="my-matte-dataset/") print(metrics["metrics/MAE"])print(metrics["metrics/Smeasure"])Валидация работает только на инференсе. В исходной библиотеке nobg есть код
обучения под Apache-2.0; дообучение (fine-tuning) сегодня означает обучение
там и конвертацию результата собственным скриптом конвертации LibreYOLO, а не
вызов train() в этом семействе — он вызывает ошибку, а не запускает
частично готовый trainer.
Лицензирование
Проверяйте лицензию в репозитории конкретных весов на Hugging Face. Она указана для каждого чекпойнта в организации LibreYOLO и может различаться даже внутри одного семейства. Этот репозиторий считается авторитетным источником, а сводка ниже описывает условия на момент последней проверки страницы.
Это описание соответствующих лицензий, а не юридическая консультация. Если ответ важен для коммерческого использования, прочитайте лицензии самостоятельно и проконсультируйтесь с юристом.
- Оригинальная работа
- FeyNobg, Feyn Inc.
- Лицензия исходного проекта
- Apache-2.0
- Исходный код проекта
- github.com/feyninc/nobg
- Код LibreYOLO
- MIT
- Веса
- Apache-2.0, повторно опубликованы на huggingface.co/LibreYOLO
- Толкование
- Apache-2.0 is a permissive license, so these weights can be used in commercial and closed-source products. It asks you to keep its license text and attribution notices with any copy of the weights you redistribute, and it grants a patent license. It places no obligation on your own application code. FeyNobg builds on BiRefNet's architecture (MIT) with a deepened backbone stage, and Feyn Inc. releases both the nobg library and the FeyNobg weights under Apache-2.0. LibreYOLO's checkpoint is a format conversion of Feyn's own published weights, with the learned parameters unchanged; fine-tuning is not wired into this library, so there is no LibreYOLO-trained variant to license separately.
Цитирование
@software{nobg,
title={nobg: Open Source Background Removal Models for Image and Video Matting},
author={Hichri, Hafedh},
year={2026},
url={https://github.com/feyninc/nobg},
license={Apache-2.0},
}Скопировано из блока цитирования авторов на странице github.com/feyninc/nobg#citation.