Google научила нейросеть редактировать фотографии по текстовому описанию

Она редактирует нужные детали, не трогая остальное

Исследователи из компании Google разработали нейросетевую модель Imagic, редактирующую изображения по текстовому описанию. Например, она может изменить фотографию собаки так, чтобы она не сидела, а стояла, сохранив при этом все остальные детали. Статья об алгоритме опубликована на arXiv.org.

За последние два года исследователи в области машинного обучения добились больших успехов в создании алгоритмов, которые умеют генерировать довольно реалистичные изображения (а с недавнего времени и видеоролики) по текстовому описанию. Довольно быстро эти возможности начали интегрировать в графические редакторы и даже создавать новые сервисы для дизайнеров на основе генеративных нейросетей. Например, существует плагин для Photoshop на базе нейросети Stable Diffusion, позволяющий генерировать или дорисовывать изображения.

Разработчики из Google под руководством Михаля Ирани (Michal Irani) пошли дальше и научили нейросеть редактировать изображения вообще без необходимости в ручных манипуляциях, требуя от пользователя только текстовое описание правок. Как и многие из недавних генеративных моделей, новый алгоритм создает изображения, используя дифузионный метод, при котором он на протяжении десятков стадий постепенно улучшает изображение, на котором изначально находится только шум. Подробнее о принципе работы таких генеративных моделей можно прочитать в другой нашей заметке.

Главное нововедение авторов нового алгоритма касается не самой генерации, а работы с ее «прекурсорами». Дело в том, что текст попадает на генеративную нейросеть не сразу. Перед этим текст подается на кодировщик, который преобразует его в сжатое векторное представление (эмбеддинг), кодирующее смысл так, что похожие по смыслу предложения будут иметь похожие эмбеддинги. Исследователи решили изменять не само генерируемое изображение, а работать именно с текстовыми эмбеддингами.

Схему работы алгоритма можно разбить на три стадии. Сначала пользователь дает исходное изображение и текстовое описание того, что нужно изменить, например, фотографию стоящей на газоне собаки и текст «сидящая собака». На первом этапе эта фраза превращается в эмбеддинг, а затем оптимизируется так, чтобы сгенерированное на его базе изображение было похоже на исходное. На втором этапе уже сама диффузионная генеративная нейросеть оптимизируется так, чтобы в ответ на оптимизированный эмбеддинг генерировать изображения, похожие на оригинал. А на третьем этапе происходит линейная интерполяция между исходным и оптимизированным эмбеддингами, а результат подается на оптимизированную нейросеть. Тесты показали, что такая схема позволяет менять только нужные детали на изображении, оставляя практически нетронутыми остальные.

Режим редактирования изображений по текстовому описанию доступен и в нейросети DALL-E 2 от OpenAI, о которой мы рассказывали весной, однако он требует от пользователя самостоятельно выделить нужную область, тогда как Imagic достаточно лишь текстового описания.

Нашли опечатку? Выделите фрагмент и нажмите Ctrl+Enter.
Google научил нейросети генерировать видео по текстовому описанию