02.02.2023

Системы машинного обучения для синтеза изображений и подавления шумов на ночных фото

Компания Stability AI опубликовала готовые модели для системы машинного обучения Stable Diffusion, способной синтезировать и изменять изображения на основе текстового описания на естественном языке. Модели открыты под пермиссивной лицензией Creative ML OpenRAIL-M, допускающей использование в коммерческих целях. Для обучения системы использовался кластер из 4000 GPU NVIDIA A100 Ezra-1 и коллекция LAION-5B, включающая 5.85 миллиардов изображений с текстовыми описаниями. Ранее под лицензией MIT был открыт код инструментов для обучения нейронной сети и генерации изображений.

Доступность готовой модели и достаточно скромные системные требования, позволяющие начать эксперименты на ПК с типовыми GPU, привела к появлению ряда смежных проектов:

  • textual-inversion (код) — надстройка, позволяющая синтезировать изображения с заданным персонажем, объектом или стилем. В оригинальном Stable Diffusion объекты в синтезируемых изображениях случайны и не контролируемы. Предложенная надстройка позволяет добавить собственные визуальные объекты, привязать их к ключевым словам и использовать при синтезе.

    Например, в обычном Stable Diffusion можно попросить систему сформировать изображение с «кошкой в лодке». Дополнительно можно уточнить характеристики кошки и лодки, но непредсказуемо, какая именно кошка и лодка будут синтезированы. Textual-inversion позволяет обучить систему изображению своей кошки или лодки и синтезировать изображение с конкретной кошкой или лодкой. Подобным образом также может заменять элементы изображения на определённые объекты, задавать пример визуального стиля для синтеза и конкретизировать понятия (например, из всего многообразия докторов можно использовать более точную и качественную выборку в нужном стиле).

  • stable-diffusion-animation — создание анимированных (движущихся) изображений на основе интерполяции между картинками, сформированными в Stable Diffusion.
  • stable_diffusion.openvino (код) — порт Stable Diffusion, в котором для вычислений используется только CPU, что позволяет экспериментировать на системах без мощных GPU. Для работы требуется процессор, поддерживаемый в библиотеке OpenVINO. Официально в OpenVINO предоставлены плагины для процессоров Intel с расширениями AVX2, AVX-512, AVX512_BF16 и SSE, а также для плат Raspberry Pi 4 Model B, Apple Mac mini и NVIDIA Jetson Nano. Неофициально возможно использование OpenVINO и на процессорах AMD Ryzen.
  • sdamd — порт для GPU AMD.
  • Начальная реализация синтеза видео.
  • stable-diffusion-gui, stable-diffusion-ui, Artbreeder Collage, diffuse-the-rest — графические интерфейсы для генерации изображений при помощи Stable Diffusion.
  • beta.dreamstudio.ai, Hugging Face Spaces, hlky Stable Diffusion WebUI — web-интерфейсы для синтеза изображений при помощи Stable Diffusion.
  • Плагины для интеграции Stable Diffusion с GIMP, Figma, Blender и Photoshop.

Дополнительно можно отметить публикацию компанией Google кода системы машинного обучения RawNeRF (RAW Neural Radiance Fields), позволяющей на основе данных из нескольких RAW-изображений, повышать качество сильно зашумленных снимков, снятых в темноте и при плохом освещении. Кроме устранения шумов развиваемые проектом инструменты позволяют повышать детализацию, устранять блики, синтезировать HDR и изменять общее освещение на фотографиях, а также по нескольким снимкам c разными ракурсами воссоздавать трёхмерное положение объектов, сдвигать точку обзора, манипулировать фокусом и генерировать движущиеся картинки.



[embedded content]

[embedded content]Источник.