Возможности нейросетей, генерирующих изображения, кажутся поистине безграничными. В сети представлено множество впечатляющих артов, созданных буквально из воздуха, на основе одного лишь текстового описания. Художники и обыватели творят фантастические миры, фотореалистичные портреты и абстрактные полотна, соревнуясь в изобретательности. Однако далеко не каждый знает, что можно пойти дальше и смешать несколько готовых фотографий в единое, абсолютно новое полотно, где искусственный интеллект выступает уже не просто исполнителем, а скорее соавтором-интерпретатором. А начать стоит с правильного запроса, или, как его называют, промта.
Что такое image blending?
Задача не из лёгких. В представлении многих смешивание картинок нейросетью — это простое наложение слоёв, как в старом добром фоторедакторе. Но на самом деле всё гораздо сложнее и интереснее. Image blending (или слияние изображений) — это процесс, при котором нейросеть получает на вход две или более картинки, анализирует их содержимое, композицию, стиль, цветовую палитру и основные объекты, а затем создаёт совершенно новое изображение, в котором гармонично сплетены черты всех исходников. Это не коллаж. Это скорее генетический синтез, где «потомку» достаются признаки от нескольких «родителей». И именно от текстового промта зависит, какие черты станут доминантными, а какие уйдут на второй план.
С чего начинается этот процесс? С понимания базовой механики. Нейросеть не видит картинку так, как человек. Для неё это набор данных о формах, цветах и взаимосвязях. Когда вы загружаете фото рыжего кота и изображение звёздного неба, она не думает: «Ага, кот и космос». Она считывает паттерны: оранжевые и белые текстуры шерсти, плавные изгибы тела, а также тёмно-синие тона, яркие точки и спиральные узоры туманностей. Текстовый промт выступает в роли режиссёра, который говорит ей, как именно соединить эти паттерны в единую сцену. Без чётких указаний результат может получиться довольно хаотичным и наляпистым.
Базовая структура промта
Чтобы заставить машину творить чудеса, нужно говорить с ней на её языке. К счастью, он довольно прост. Основа промта для объединения изображений состоит из нескольких ключевых компонентов. Во-первых, это прямые ссылки (URL) на исходные изображения. Большинство сервисов, таких как Midjourney, требуют, чтобы картинки были загружены в интернет и имели общедоступный адрес. Во-вторых, это само текстовое описание, которое задаёт сюжет, атмосферу и желаемый результат. Ну и, наконец, в дело могут вступать технические параметры или флаги, которые регулируют тонкие настройки, например, «вес» каждого изображения в итоговом результате.
Рассмотрим эту конструкцию подробнее. Ссылки обычно вставляются в самое начало строки запроса, одна за другой, через пробел. После них идёт текстовая часть. Именно здесь и кроется вся магия. Что вы хотите получить? Портрет человека, чей облик впитал черты лесного пейзажа? Или городской ландшафт, нарисованный в стиле известного художника? Именно это и нужно описать словами. Чем детальнее и образнее будет текст, тем точнее нейросеть поймёт вашу задумку. А технические параметры, вроде веса изображения, позволяют указать, какая из картинок должна стать основной, а какая — лишь добавить деталей или стиля.
Как объединить два изображения?
Давайте разложим всё по полочкам на конкретном примере. Представим, что у нас есть две фотографии: студийный портрет девушки и снимок таинственного туманного леса. Наша цель — создать фэнтезийный арт, где девушка становится частью этого лесного антуража.
Сначала нужно загрузить обе фотографии на любой хостинг изображений (например, Discord, если вы работаете в Midjourney) и получить на них прямые ссылки. Допустим, они у нас есть. Теперь составляем промт. Он может выглядеть так:
[URL_портрета_девушки] [URL_лесного_пейзажа] a portrait of a beautiful dryad woman in a misty fantasy forest, mystical glowing atmosphere, hyperdetailed face, cinematic lighting, style of oil painting –ar 16:9
Что здесь происходит? Первые две части — это наши ссылки. Они говорят нейросети, откуда черпать визуальную информацию. Далее идёт текстовое описание. Мы не просто просим «смешать», а задаём конкретный образ: «портрет красивой женщины-дриады в туманном фэнтезийном лесу». Мы добавляем детали для атмосферы («мистическое сияние», «кинематографическое освещение») и уточняем стилистику («в стиле масляной живописи»). Ну и, конечно же, параметр --ar 16:9 задаёт соотношение сторон, чтобы картинка получилась широкоформатной. В результате нейросеть возьмёт черты лица и фигуру с портрета, а композицию, цвета и туман — с пейзажа, создав из этого цельный, добротный арт.
Слияние стилей: Фотография и живопись
Один из самых интересных сценариев — это перенос стиля с одного изображения на другое. Буквально десятилетие назад такие махинации требовали часов кропотливой работы в графических редакторах, а сейчас это делается одной командой. С одной стороны, это настоящий кладезь для творческих экспериментов. С другой — довольно скользкая дорожка, где легко получить безвкусный результат.
Допустим, у вас есть фотография ночной улицы вашего города и вы хотите представить, как бы её нарисовал Винсент Ван Гог. Что для этого нужно? Найти в сети качественную репродукцию его картины (например, «Звёздная ночь») и составить промт. Важный нюанс: в этом случае текстовое описание играет решающую роль.
Пример такого промта может быть следующим:
[URL_фотографии_города] [URL_картины_Ван_Гога] a city street at night in the expressive style of Van Gogh’s “Starry Night”, dynamic swirling brushstrokes, vibrant yellow and blue colors, post-impressionism, oil on canvas texture –iw 0.7
Здесь мы не только даём две ссылки, но и скрупулёзно описываем, что именно хотим взять от картины художника. Мы упоминаем «экспрессивный стиль», «динамичные закрученные мазки», «яркие жёлтые и синие цвета». Это помогает нейросети сфокусироваться именно на стилистических особенностях, а не на содержании картины Ван Гога. К слову, параметр --iw (image weight) здесь может быть очень полезен. Он регулирует, насколько сильно текстовый промт будет влиять на результат по сравнению с исходными изображениями. Уменьшая его значение (например, до 0.7), мы даём нейросети больше свободы для интерпретации стиля.
Стоит ли смешивать больше двух картинок?
Обязательно ли ограничиваться парой изображений? Вовсе нет. Современные модели позволяют смешивать и три, и четыре, и даже пять картинок. Но здесь есть свои подводные камни. Чем больше исходников вы даёте нейросети, тем сложнее ей найти между ними что-то общее и создать гармоничный образ. Результат рискует превратиться в визуальную «кашу».
Чтобы избежать этого, при работе с несколькими изображениями текстовый промт должен быть максимально конкретным и подробным. Он должен стать тем самым спасательным кругом, который не даст искусственному интеллекту «утонуть» в разнообразии визуальной информации. Представим себе грандиозную задачу: создать фотореалистичный портрет кота в скафандре на фоне космоса, используя три разных картинки: фото вашего питомца, студийный снимок шлема и фотографию туманности из телескопа «Хаббл».
Промт будет выглядеть внушительно:
[URL_фото_кота] [URL_фото_шлема] [URL_фото_туманности] a photorealistic award-winning portrait of a fluffy ginger cat wearing a futuristic reflective astronaut helmet, a swirling colorful nebula and distant stars are visible in the reflection on the glass visor, cinematic dramatic lighting, ultra-detailed, 8k
В этом запросе мы не оставляем нейросети пространства для домыслов. Мы чётко указываем, что кот должен быть одет в шлем, а туманность должна отражаться в его стекле. Такие детали направляют «мысль» алгоритма в нужное русло, и он уже не просто хаотично смешивает три картинки, а выстраивает из них сложную, продуманную сцену. Процесс, конечно, не самый простой, но результат того стоит.
Не бойтесь экспериментировать, смешивать несовместимое и искать свою изюминку в этом процессе. Ведь именно так рождаются настоящие цифровые шедевры. Удачи в творческих поисках.