Разработчики из Google Research научили нейросеть качественно дорисовывать недостающие фрагменты фотографий, даже если от нее скрыта большая часть снимка. В основе алгоритма лежит архитектура генеративно-состязательной нейросети, рассказывают авторы статьи, опубликованной на arXiv.org.
Нейросетевые алгоритмы уже некоторое время применяются на практике при редактировании фотографий. К примеру, Adobe Photoshop умеет убирать объекты со снимка, реалистично заменяя их на фон. Для этого программа использует информацию со всех окружающих объект областей. Кроме того, Photoshop способен дорисовывать края изображения, к примеру, при повороте, однако эта функция работает хуже и способна справляться лишь с небольшими участками, отчасти именно из-за того, что лишь часть пустой области окружена фрагментами исходного изображения, с которых можно взять информацию.
Разработчики из Google Research под руководством Уильяма Фримена (William Freeman) научили нейросеть реалистично дорисовывать даже большие области на кадре, расположенные сбоку. Алгоритм основан на популярной архитектуре генеративно-состязательной нейросети. Она подразумевает, что алгоритм состоит из двух частей: одна из них выполняет прямую задачу (в данном случае дорисовывает фотографии), а вторая пытается отличить результат работы первой от настоящих снимков из обучающей выборки.
Одна из ключевых особенностей подхода авторов, которая привела к хорошим результатам, заключается в том, что на входе нейросеть получает не один снимок, а два. Первое изображение — это исходный снимок, на котором большая прямоугольная область залита одним цветом. Авторы экспериментировали с размером этой области, заливая 25, 50 и 75 процентов от исходного кадра. Второе изображение — это маска, показывающая, какая именно область была залита.
Такой подход позволил дискриминатору сконцентрироваться на области, дорисованной генератором, и тем самым повысить качество распознавание «подделок». Это в свою очередь повысило качество работы генератора после обучения. Еще одна причина хорошего качества доррисованных фрагментов связана с обучающей выборкой. В качестве нее авторы выбрали почти два миллиона изображений из датасета Places365-Challenge.
Помимо дорисовывания изображений разработчики также опробовали алгоритм на видео. Таким способом они предлагают дорисовывать кадры по бокам, к примеру, в случае с вертикальными видео.
Нейросетевые алгоритмы умеют реалистично дорисовывать фон не только на изображениях, но и на видеозаписях. Эта задача одновременно более легкая, потому что информацию о фоне можно взять с соседних кадров, и более сложная, потому что дорисованные области должны быть похожими друг на друга, чтобы «подделка» была незаметна для пользователя. Недавно Adobe добавила такую функцию в видеоредактор After Effects.
Комментарии