AI · 6 мин чтения

Обработка нейросетью бесплатно: сто снимков за один проход

Обработка нейросетью бесплатно решает конкретную задачу: у меня на столе папка со ста фото карточек товара, каждое нужно вырезать из фона, поднять резкость и привести к одному размеру, и делать это руками в Photoshop желания нет. На практике беру пару открытых моделей, десяток строк на Python и получаю результат за то время, что раньше уходило на обработку пяти снимков вручную. В статье показываю рабочий пайплайн: какие нейросети ставить бесплатно, как гонять их пачкой и где встроить это в обычный рабочий процесс с интернет-магазином или Telegram-ботом.

Зачем бизнесу пакетная обработка фото нейросетью

Чаще всего запрос приходит от владельцев магазинов на WooCommerce и Tilda: поставщик присылает архив фото с разным фоном, кто-то на белом, кто-то на складе среди коробок, а на сайте нужна единая витрина. Ретушёр на фрилансе берёт от 50 до 150 рублей за фото по рыночным расценкам, и на партии в 300 карточек это уже ощутимая сумма плюс несколько дней ожидания.

Автоматическая обработка снимает именно эту рутину: удаление фона, апскейл до нужного разрешения, приведение к одному соотношению сторон. Ручная доработка остаётся только для сложных случаев вроде прозрачного стекла или меха, где нейросеть путает край объекта с фоном. По моим прогонам таких кадров обычно 5-10% от партии, остальное уходит в автоматику без правок.

Бесплатные нейросети для удаления фона и апскейла

rembg: удаление фона без Photoshop

rembg собран поверх модели U2-Net и ставится через pip одной командой. Работает на CPU без GPU, на моём ноутбуке без видеокарты обрабатывает фото карточки товара за 1-2 секунды, на GPU время падает до долей секунды. Из коробки есть несколько моделей: общая u2net, отдельная под людей u2net_human_seg и облегчённая isnet-general-use, которая точнее держит тонкие детали вроде проводов или бахромы на текстиле.

Real-ESRGAN: апскейл без размытия

Если поставщик прислал фото 800х800, а на сайте нужно 2000х2000, Real-ESRGAN поднимает разрешение в 2-4 раза и достраивает детали, а не просто растягивает пиксели, как это делает обычный ресайз. На CPU одно фото обрабатывается 40-60 секунд, на бесплатном GPU в Google Colab время падает до 5-8 секунд.

GFPGAN: если в кадре лица

Для карточек с моделями или для восстановления архивных фото пригодится GFPGAN: он подчищает лица после апскейла, убирает артефакты сжатия и сглаживает шум на коже. Ставится тем же способом через pip и запускается отдельным проходом после Real-ESRGAN.

Инструмент Задача Нужен ли GPU Время на одно фото
rembg удаление фона нет, но ускоряет 1-2 сек на CPU
Real-ESRGAN апскейл в 2-4 раза желателен 40-60 сек на CPU, 5-8 сек на GPU
GFPGAN восстановление лиц желателен 3-5 сек на GPU

Python-скрипт для пакетного прогона папки с фото

Дальше собираю всё в один проход: скрипт берёт папку с исходниками, вырезает фон и складывает результат в отдельную папку с сохранением имён файлов.

import os
from rembg import remove

SRC = "photos_in"
DST = "photos_out"
os.makedirs(DST, exist_ok=True)

for name in os.listdir(SRC):
    if not name.lower().endswith((".jpg", ".jpeg", ".png")):
        continue
    with open(os.path.join(SRC, name), "rb") as f:
        input_bytes = f.read()
    output_bytes = remove(input_bytes)
    out_name = os.path.splitext(name)[0] + ".png"
    with open(os.path.join(DST, out_name), "wb") as f:
        f.write(output_bytes)
    print(f"Обработано: {name}")

Апскейл дальше вешаю отдельным проходом через консольную сборку Real-ESRGAN, чтобы не тянуть модель в тот же процесс и не упереться в память на слабой машине:

for f in photos_out/*.png; do
  realesrgan-ncnn-vulkan -i "$f" -o "upscaled/$(basename "$f")" -n realesrgan-x4plus
done

На сотне карточек товара такой пайплайн у меня отрабатывает за 15-25 минут на обычном рабочем ноутбуке без выделенной видеокарты, из которых основное время съедает именно апскейл.

Бесплатный материал

🎁 Полезный скрипт в подарок

Подпишитесь на Telegram - пришлю готовый скрипт по этой теме.

Без спама. Отписка в 1 клик.

Google Colab: бесплатный GPU, если своей видеокарты нет

Когда апскейл на CPU занимает час на партию, разумнее перенести расчёт в Google Colab: там доступна бесплатная видеокарта Tesla T4, и та же партия из ста фото проходит Real-ESRGAN за 10-15 минут вместо часа. У бесплатного тарифа есть ограничения, которые стоит держать в голове до запуска, а не выяснять посреди обработки:

  • сессия обрывается через 90 минут простоя без активности в ноутбуке;
  • максимальная длительность одной сессии составляет около 12 часов;
  • очередь на GPU не гарантирована в часы пиковой нагрузки, иногда достаётся только CPU;
  • файлы после отключения сессии стираются, поэтому результат сразу сохраняю на Google Диск или скачиваю архивом.

Для разовой партии в сто-двести фото этого запаса с избытком хватает. Для регулярной обработки тысяч карточек в месяц ограничения по времени сессии и очередь на GPU уже мешают, и тогда логичнее считать стоимость выделенного сервера с видеокартой против времени, которое тратится на пересборку прерванных сессий.

Как встроить обработку в рабочий процесс: бот и n8n

Разовый скрипт хорош для одной партии, но если поставщик присылает фото каждую неделю, ручной запуск скрипта остаётся тем же ручным трудом, только на шаг короче. Здесь пайплайн собираю иначе: менеджер кидает фото в Telegram-канал через бота на aiogram, бот сохраняет файлы в рабочую папку на сервере, а дальше n8n по расписанию или по вебхуку запускает обработку и кладёт готовые снимки в папку, откуда их забирает импорт в WooCommerce или Tilda.

Саму связку из ноды Telegram Trigger, Execute Command для запуска Python-скрипта и ноды выгрузки на сервер по SFTP я обычно собираю за один рабочий день, и дальше менеджер вообще не думает про нейросети, просто скидывает фото в чат. Если нужна такая же настройка сценария в n8n под конкретный магазин, обычно разбираю на созвоне, куда именно должны попадать готовые фото: на сервер, в облако компании или напрямую в CMS через API.

Где бесплатная обработка упирается в потолок

Связка rembg плюс Real-ESRGAN закрывает базовый сценарий: один товар, один фон, один размер на выходе. На практике потолок наступает в нескольких местах:

  • сложные края: мех, стекло, полупрозрачный пластик модель режет с артефактами, и на партии в тысячу фото такие случаи нужно отдельно отлавливать скриптом-фильтром по качеству маски;
  • единый брендовый стиль: подложка с логотипом, тень под товаром, фирменная рамка вручную бесплатной моделью не добавляются, это отдельный слой обработки поверх;
  • объём: на регулярных партиях от тысячи фото в месяц бесплатный GPU в Colab с его лимитом сессии и очередью становится узким местом, и дешевле оказывается один раз собрать пайплайн на выделенном сервере.

Для таких задач собираю уже не разовый скрипт, а сервис: очередь обработки, фильтр по качеству результата, автоматическую загрузку в CMS и уведомление в Telegram, когда партия готова. Такая автоматизация на Python обходится от 20 000 ₽ в зависимости от числа шагов в пайплайне, а если нужна ещё и генерация описаний товаров или подбор категорий по фото через модель, AI-интеграция считается отдельно, от 50 000 ₽.

Частые вопросы

Можно ли обрабатывать фото нейросетью совсем без программирования?

Да, у моделей вроде rembg есть готовые веб-интерфейсы и десктопные обёртки без консоли, но при пакетной обработке в сто и больше фото ручная загрузка каждого файла через браузер отнимает почти столько же времени, сколько занял бы Photoshop. Скрипт на Python окупается уже на второй-третьей партии.

Почему после rembg на фото остаются серые ореолы по краю объекта?

Это артефакт маски на полупрозрачных или мелких деталях: мех, распущенные волосы, тонкие ремешки. Помогает переключение модели с u2net на isnet-general-use в параметрах rembg, она точнее держит края, но на сложных материалах ручная доводка в четверти случаев всё равно нужна.

Хватит ли бесплатного Google Colab для регулярной обработки фото каждую неделю?

Для одной партии в сто-двести фото раз в неделю хватает с запасом. Проблемы начинаются, если нужно гарантированное время запуска или очередь превышает 12 часов работы, тогда лимиты бесплатной сессии и очередь на GPU становятся риском сорвать сроки, и разумнее переносить пайплайн на постоянный сервер.

Чем апскейл через нейросеть лучше обычного увеличения размера в редакторе?

Обычный ресайз растягивает существующие пиксели и на увеличении в 2-4 раза даёт размытую картинку. Real-ESRGAN обучен достраивать правдоподобные детали текстуры, поэтому на выходе края остаются резкими, а не размазанными, особенно заметно на фото с текстилем и мелким узором.

Есть задача?

Обсудим в мессенджере

Расскажите, что нужно сделать — отвечу в течение 4 часов в рабочее время. Первая консультация бесплатно.

Продолжая пользование настоящим сайтом Вы выражаете своё согласие на обработку Ваших персональных данных (файлов куки) с использованием Yandex.Metrika.
Понятно