Японский автор сделал в ComfyUI серию игровых персонажей и отобрал 7 изображений из 15 для прозрачных PNG. Фон он удалял от внешнего края картинки — так белые детали внутри персонажа оставались на месте.
Сработало не со всеми кадрами. Землю и тени алгоритм оставляет, если они нарисованы как часть иллюстрации. А изображения с неудачным фоном приходится отбраковывать вручную.
Зелёный фон менял цвет персонажей
Автор проверил способ на пяти игровых персонажах: слайме, драконе, големе, кракене и демоне. Сначала сделал 10 изображений — по два на героя. Четырём персонажам задал зелёный фон, слайму — пурпурно-розовый.
Для вырезания такой фон оказался неудобным. По словам автора, у голема в обеих генерациях большая часть тела стала зелёной. Он просил серого каменного героя с мхом на плечах. Сам фон тоже часто выходил неровным: с градиентами, серыми и фиолетоватыми участками.
Почему это произошло, автор не выяснил. По его наблюдению, слова о цвете фона могли влиять на цвета всего изображения. Если тело героя подхватывает цвет подложки, удаление этого цвета заденет и самого героя. Поэтому зелёный и пурпурный варианты автор отложил.
Затем он сделал ещё 15 изображений, на этот раз с белым фоном и просьбой не добавлять цветной. Из них чистыми для обработки показались только 7. Генерации всё равно нужно просматривать и отбирать.
Удаление фона от краёв сохраняет больше деталей
Автор сравнил два способа на одних и тех же изображениях. В первом прозрачными становятся все пиксели, близкие по цвету к фону. Во втором обработка начинается с внешнего края: алгоритм удаляет только связанные с ним области похожего цвета.
На кракене разница хорошо заметна. Удаление по цвету сделало прозрачными блики в глазах и белую часть на лбу, зато оставило овальную тень под ногами. Обработка от края сохранила белые детали и убрала внешнюю тень.
Так работает заливка связанных областей, или flood fill: алгоритм стартует от краёв и движется внутрь, пока соседние пиксели достаточно похожи. Белая деталь внутри персонажа отделена от внешнего фона, поэтому базовая заливка до неё не доходит.
| Подход | Что удаляет | Где риск |
|---|---|---|
| Удаление по цвету | Все похожие на фон пиксели | Прозрачные дырки в глазах и других белых деталях |
| Удаление связного фона | Похожие пиксели, соединённые с краем | Внутренние просветы и отдельные участки могут требовать дополнительных правил |
| Anima RGBA | Альфа-канал, создаваемый модельным пайплайном | Нужны подходящие VAE и LoRA |
Пороги помогают, но не исправляют фон
В скрипте автора по периметру изображения ставятся стартовые точки через каждые 64 пикселя. Фон распространяется дальше, если разница между соседними пикселями не превышает 7 по каждому цветовому каналу. Так алгоритм может пройти и по плавному градиенту: он сравнивает соседние пиксели, а не каждый пиксель с одним заданным цветом.
Затем скрипт убирает небольшие отдельные фрагменты. Остаются компоненты размером не меньше 8% крупнейшей области. Следующий шаг ищет крупные внутренние области, похожие на фон: расстояние по цвету меньше 28, площадь больше 500 пикселей. В примерах автора это помогает убрать большие просветы внутри фигуры, например между рукой и телом.
- Если фон заметно отличается от белого, автор советует взять другое изображение. Порогами такую генерацию лучше не исправлять.
- Камни, земля и тени, нарисованные как часть иллюстрации, останутся: алгоритм не знает, что именно автор хотел убрать.
- Крупные белые глаза или одежду нужно проверить отдельно. Внутренние области похожего цвета тоже могут стать прозрачными.
- Изображение обрезается до содержимого, получает поля и приводится к квадрату.
- Размер результата задаёт последнее число: в примере это 512 пикселей. Если его не указать, используется 640.
Стикерам и игровым ассетам это может мешать: после обработки скрипт обрезает изображение до содержимого и меняет расположение объекта на холсте. Чтобы сохранить исходный кадр и композицию, придётся изменить этап обрезки.
Метод проверен на иллюстрациях
Японский автор работал на Windows 11 с RTX 4060 на 8 ГБ. Для генерации использовал ComfyUI с SDXL, для обработки — Python 3.10.11 и opencv-python 5.0.0. Тестовые изображения — квадратные иллюстрации 1024 × 1024. Фотореалистичные картинки он не проверял и с rembg или другими инструментами метод не сравнивал.
Генерации он проверил 10 октября 2026 года, повторную обработку с теми же настройками провёл 2 ноября. Это результат на конкретной машине и наборе картинок. Он не доказывает, что способ лучше любого автоматического удаления фона.
В переданном фрагменте автор упоминает полный скрипт для копирования, но самого листинга там нет. Поэтому можно описать логику и пороги, но нельзя привести его код или обещать, что реконструкция даст тот же результат.
В ComfyUI есть и другой способ получить прозрачный PNG
В заметке ComfyUI Wiki от 2 ноября 2026 года описан Anima RGBA. Это связка четырёхканального VAE для Anima и совместимой LoRA, которая позволяет получать изображения с альфа-каналом. В предложенной схеме заменяют VAE, добавляют LoRA с силой 1.0, указывают в запросе transparent background и сохраняют результат через VAE Decode и Save Image.
В этом пайплайне прозрачность формируется при декодировании. Он рассчитан на Anima и не заменяет SDXL-скрипт одним кликом. Японский автор Anima RGBA не проверял, поэтому сравнить качество двух способов по его тестам нельзя.
Для серии персонажей маршрут такой: запросить спокойный белый фон, отобрать кадры без лишнего фона и земли, удалить область, связанную с краями, а затем проверить белые детали. Алгоритм уберёт внешний фон. Решать, какие элементы иллюстрации оставить, всё равно придётся человеку.
Источники
Anima RGBA Gives Anima a Real Alpha Channel in ComfyUI
Источникnote.com
