Есть множество интернет-магазинов, где продается одежда с принтами, и там как правило предлагают несколько разных видов товаров с одним принтом. Как пример:
https://www.redbubble.com/i/t-shirt/Visit-Tatooine... Вопрос в том, как автоматизировать создание изображений для подобного рода товаров?
Что ясно на данный момент.
Как сделать это в фотошопе в полу-автоматическом режиме понятно -- дизайнер создает смарт-объект, над которым производятся все манипуляции и который заменяется на изображение принта. Предполагается же, что процесс наложения принтов будет проходить на сервере в момент создания товаров через админку CMS Magento.
Воспроизвести наложение картинки в нужном месте в нужном размере и смешать цвета принта и макета чтобы сквозь принт была видна форма одежды можно с помощью библиотеки, подобной OpenCV.
Проблема в этом шаге, в преобразовании формы принта так, чтобы он повторял форму одежды.
Мне подсказали, что надо смотреть в сторону 2D spline deformation, пара библиотек что я глянул похоже слишком низкоуровневые для того, чтобы можно было за вменяемое время задать сложные деформации для макетов.
Возможным вариантом выглядит использование GIMPа в консольном режиме, но пока неясно, способен ли он воспроизвести все требуемые шаги автоматически. Т.е. наложить принт в нужном месте в нужном размере на макет, смешать цвета, изменить форму принта в зависимости от макета и на выходе получить изображение в JPEG и, в идеале, PSD со слоями. Smart-объектов например в нем нет, то есть воспроизвести подход, используемый в Photoshop 1 в 1 точно не получится.
Альтернативный подход, насчет которого пока совсем все неясно -- поднять отдельную виртуальную машину на Windows и пробовать автоматизировать Photoshop на ней, но этот вариант конечно выглядит сложнее использования консольного GIMP или OpenCV.
Может кто знает, как обычно подходят к решению подобного рода задач? Почему-то вообще ничего нагуглить на эту тему не удалось (может конечно не то искал), при том что наверняка это не делается вручную и задача в целом выглядит типовой.