Быстро вырезать фон у рисунка - программа
В процессе создания игры мы с ребёнком столкнулись с кучей маленьких задач:
- Как быстро вырезать фон у рисунка?
- Как превратить описание персонажа в картинку?
- Как создать текстуру травы программно?
- Как добавить TTS (озвучку) без платных API?
Каждую такую задачу я решал отдельным скриптом или микросервисом. И понял: эти **утилиты могут быть полезны и другим**.
Как работает программа:
Загружает изображение и конвертирует его в формат RGBA
Анализирует каждый пиксель - вычисляет "расстояние" от белого цвета (255, 255, 255)
Устанавливает прозрачность:
Пиксели, близкие к белому (в пределах 32 уровней): становятся частично или полностью прозрачными
Чем ближе пиксель к белому, тем он более прозрачный
Пиксели дальше 32 уровней от белого остаются без изменений
Сохраняет результат в формате PNG
Установка зависимостей:pip install Pillow
Использование программы:
Вариант 1: Обработка одного изображения
make_white_transparent('input.jpg', 'output.png')
Вариант 2: Через командную строку
# Обработка одного файла python program.py image.jpg # Обработка директории python
program.py --dir ./input_folder ./output_folderВариант 3: Интерактивный режим
Просто запустите программу без аргументов:
python program.py