Нейросеть теперь умеет рисовать картинки по текстовому описанию. Нейросеть рисует картины


Мы испытали пять бесплатных сервисов с нейросетями, и вот что получилось

Когда-то развернуть нейросеть на своем ПК могли только умудренные программисты. Но теперь технологию «облачного искусственного интеллекта» используют десятки онлайн-сервисов и мобильных приложений.

Я протестировала пять бесплатных разработок, которые используют нейросеть для творчества: рисования, раскрашивания рисунков, обработки фото и видео. Результаты эксперимента – в статье! Спойлер: искусственному интеллекту удалось меня удивить. Буду рада, если и вы поделитесь с нами своим креативом в комментариях.

 

Вы рисуете, ИИ угадывает

Сервис quickdraw.withgoogle.com предлагает сделать 20-секундный скетч заданного предмета. После этого нейронная сеть Google угадывает, что именно вы изобразили. Это очень похоже на «Крокодил» – популярную игру для компании, но только против вас играет искусственный интеллект. Я сыграла три раунда, и в каждом нейросеть распознавала 4-6 моих рисунков из шести. Рисовать, кстати, нужно мышкой, что не очень удобно.

 

 

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

 

 

Рисуй вместе с ИИ: картина в стиле Ван Гога

Тем, кто увлечен рисованием всерьез, нейросеть предлагает поработать в соавторстве: на просторах сети есть сервисы для «раскрашивания» рисунков и фото в выбранном стиле. Загружаете на сайт свой рисунок, кликаете картину-образец – и получаете произведение искусства. Прототипом стала программа Neural Doodle, выложенная в 2016 году в открытый доступ. Сервис instapainting.com, который я решила протестировать, – один из ее преемников. Сюда можно загрузить любое изображение и применить к нему один из 20 стилей, собранных в галерее. За основу шаблонов взяты картины известных художников: Джеймса Уистлера, Умберта Боччони и даже Пабло Пикассо. Я отправила в instapainting.com свой рисунок и предоставила нейросети делать с ним, что ей заблагорассудится. Вот результат.

 

 

Кстати, готовую работу сервис предложил нарисовать на холсте – но уже за плату. Рисунок сначала наносится на подрамник с помощью рельефной печати, а потом его дорабатывает красками художник. Еще один интересный дуэт человека и машины.

 

Нейросеть поможет создать персонажа

Сервис для тех, кто увлекается трехмерной компьютерной графикой: демоверсия программы с длинным названием «Large Pose 3D Face Reconstruction from a Single Image via Direct Volumetric CNN Regression» создает объемную модель лица по одной фотографии.

Я загрузила на сайт свое фото, которое соответствовало требованиям разработчиков (анфас в хорошем разрешении) – и получила вполне узнаваемый 3D-слепок собственного лица! В этот момент я всерьез пожалела, что не увлекаюсь 3D-моделированием. Ну а те, кто его освоил, наверняка воспользуются возможностями сервиса. Результат можно скачать в удобном формате .obj.

 

 

Раскрась видео!

Еще каких-то лет 40 назад кинорежиссерам приходилось вручную раскрашивать кинопленку, чтобы добиться эффекта ярких цветов в кадре. Эта кропотливая работа могла занять недели. Теперь нейросеть и мобильное приложение Artisto могут изменить цвета на видео буквально за несколько минут. Алгоритм похож на тот, что используется для фото: вы выбираете один из 14 цветовых шаблонов и накладываете на видео. Обработка происходит в облаке. По словам разработчиков, интернет-концерна Mail.ru, Artisto – первый подобный сервис для видео, и он фактически перерисовывает ролик, оставляя сюжет, но добавляя новые цвета и фактуры. В результате получается видео, похожее на анимацию.

 

 

Сервисы для фотографа

Выбор онлайн-сервисов для фотографов больше не исчерпывается фильтрами и фоторедакторами. Теперь можно выполнять и сложные операции по восстановлению фото: например, повысить разрешение и убрать пикселизацию, улучшить цвета и резкость. Делать это вручную долго, сложно и требует не только хороших умений работы в редакторе, но и художественных навыков. А искусственный интеллект сделает ту же работу за минуту. Правда, результат пока далек от идеала.

Сервис украинского стартапа Let’s Enhance улучшает качество фото, повышая их разрешение вчетверо. Также на сайте можно улучшить цвета и текстуры фотографии. По словам разработчиков, алгоритм обработки убирает «артефакты сжатия» (например, потерю резкости на краях) и повышает разрешение. А нейросеть определяет изображения на фото и дополняет их деталями – фактически «дорисовывает по памяти».

Я загрузила на сервис старое фото из «ВКонтакте», сильно сжатое загрузчиком «ВК» образца 2007 года. В целом Let’s Enhance выполнил свою задачу неплохо: полюбуйтесь, как преобразились дерево и шлем! Но вот к отрисовке лица у меня есть претензии.

 

Искусственный интеллект может вернуть фотографии не только резкость, но и цвет. Так, один японский ресурс предлагает раскрасить загруженную черно-белую фотографию. Чтобы протестировать его, я превратила цветное фото в черно-белое с помощью фоторедактора, а потом заново раскрасила с помощью сервиса. Нейросеть верно определила цвета кожи и травы, но не угадала с одеждой. И, кажется, ей по душе сдержанная цветовая гамма.

 

А вы пользовались какими-нибудь из этих сервисов? Какие результаты получились у вас?

 

Алена Андреева

Читайте также: "Алиса от «Яндекса»: чему нейросеть научилась за два месяца"

robo-hunter.com

Microsoft научила нейросеть рисовать картинки по их описанию

«ИИ нарисует то, что пожелаешь».

Разработчики из компании Microsoft создали новую порождающую состязательную нейросеть, которая умеет рисовать изображения на основе их краткого текстового описания.

Фото: dailymail.co.uk

Система работает благодаря алгоритму, который учитывает важные детали описания, и подробно описана в препринте на arXiv.

Очень часто в основе создающих изображения алгоритмов лежат порождающие состязательные нейросети (также их называют генеративно-состязательными, GAN — generative adversarial networks) — разновидность искусственных нейронных сетей, состоящих из генератора и дискриминатора.

Задача первого — создавать новые объекты, похожие на объекты из обучающей выборки, доступа к которой у него нет, а задача второго — решить, принадлежит ли сгенерированный объект к классу объектов из доступной ему обучающей выборки, и дать соответствующий сигнал генератору.

На основе такого алгоритма создаются программы, которые умеют рисовать оригинальные произведения искусства, создавать трехмерные модели местности и даже превращать наброски в фотореалистичные портреты.

Разработчики из исследовательского отделения Microsoft под руководством Сяодуна Хэ для создания изображений из текстового описания разработали новую разновидность GAN-нейросети: внимательную GAN (attentional GAN, AttGAN).

В отличие от уже существующих алгоритмов, которые генерируют изображения из целого описания, превращая его в один вектор-предложение, новый алгоритм обращает внимание на детали: то есть оценивает каждое слово в описании и рисует изображение на их основе.

В результате нейросеть учится создавать достаточно реалистичные изображения на основе описаний.

Фото: dailymail.co.uk

При обучении на базе данных COCO, содержащей текст и описание, работа новой нейросети превосходит уже существующие алгоритмы в точности на 170,25 процента, а при использовании базы данных CUB (она содержит изображения птиц) — на 14,14 процента.

Разработчикам, таким образом, удалось показать эффективность нового алгоритма создания изображений на основе описания и отдельно — эффективность добавления в нейросеть «внимательной» составляющей.

Подписывайтесь на Квибл в Viber и Telegram, чтобы быть в курсе самых интересных событий.

quibbll.com

Нейросеть теперь умеет рисовать картинки по текстовому описанию

Разработчики из компании Microsoft разработали новую порождающую состязательную нейросеть, которая умеет создавать изображения на основе их краткого текстового описания.

Система работает благодаря алгоритму, который учитывает важные детали описания, и подробно описана в препринте на arXiv.

Очень часто в основе создающих изображения алгоритмов лежат порождающие состязательные нейросети (также их называют генеративно-состязательными, GAN — generative adversarial networks) — разновидность искусственных нейронных сетей, состоящих из генератора и дискриминатора.

Задача первого — создавать новые объекты, похожие на объекты из обучающей выборки, доступа к которой у него нет, а задача второго — решить, принадлежит ли сгенерированный объект к классу объектов из доступной ему обучающей выборки, и дать соответствующий сигнал генератору. На основе такого алгоритма создаются программы, которые умеют рисовать оригинальные произведения искусства, создавать трехмерные модели местности и даже превращать наброски в фотореалистичные портреты.

Разработчики из исследовательского отделения Microsoft под руководством Сяодуна Хэ (Xiaodong He) для создания изображений из текстового описания разработали новую разновидность GAN-нейросети: внимательную GAN (attentional GAN, AttGAN). В отличие от уже существующих алгоритмов, которые генерируют изображения из целого описания, превращая его в один вектор-предложение, новый алгоритм обращает внимание на детали: то есть оценивает каждое слово в описании и рисует изображение на их основе.

Разработчикам, таким образом, удалось показать эффективность нового алгоритма создания изображений на основе описания и отдельно — эффективность добавления в нейросеть «внимательной» составляющей.

Недавно исследователи из Сеульского университета представили другую нейросеть, которая из текстового описания действия генерирует трехмерную модель его выполнения. Полученную модель затем можно использовать для того, чтобы заставить двигаться робота.

zelv.ru

Как нейронные сети рисуют картины / Блог компании .io / Хабр

Умные алгоритмы уже умеют находить и распознавать лица, определять главную часть картинки, узнавать различные предметы. А нейронные сети пошли дальше и даже могут самостоятельно создавать произведения искусства.

Недавно Google на своем блоге опубликовали интересный способ использования нейронных сетей, распознающих картинки. Далее свободный перевод публикации.

Каждая нейронная сеть обучается с помощью миллионов тренировочных картинок. Сеть имеет от 10 до 30 вложенных слоев с различными уровнями абстракции. Вначале картинка поступает на входной слой, который делает свою работу и передает информацию в следующий слой, пока на выходе не получится ожидаемый результат.

Важно понять, что именно происходит на каждом уровне системы. Каждый последующий слой извлекает новые черты изображения. Допустим первый уровень определяет углы и ребра на картинке, второй — формы, и именно последние несколько слоев принимают решение о том, что изображено на картинке.

Распознавание наоборот
Чтобы нейронная сеть начала рисовать картины на её вход подается изображение рандомного шума и ставится задача — найти в нем определенную форму и утрировать её. Например, нарисовать банан.

Это нужно для того, чтобы понять научилась ли нейронная сеть распознавать тот или иной образ. Например, её обучали узнавать вилку по определенным характеристикам: 2-4 зубца и ручка. При этом форма и цвет предмета не должны влиять на решение.

Хороший способ проверить, действительно ли сеть научилась распознавать образ — это попросить её нарисовать его.

В некоторых случаях можно выявить явную ошибку в обучении. Система не смогла нарисовать правильную гантель. Скорее всего, при обучении она видела гантели только в комплекте с рукой.

Нижние слои
Нейронной сети можно и не задавать конечный результат. Если на вход подать любую картинку и указать уровень, который будет с ней работать, то он улучшит все, что в его компетенции. Пример отрисовки картинки нижним слоем, отвечающим за края:

Продвинутые слои
Если для интерпретации выбрать более продвинутый слой, то сеть постарается найти в картинке те образы, на которых тренировалась.

На вход нейронной сети, которая обучалась на фотках животных подали изображение облаков.

Все, что сеть смогла распознать, она сделала утрированным. Таким образом в облаках образовались необычные животные: собака-бабочка, свинья-улитка, птица-верблюд и собака-рыба.

Эту же технику можно применить для любой другой картинки. Результаты зависят от типа изображения, т.к. установленные свойства склоняют сеть к определенным интерпретациям.

Например, линия горизонта замещается пагодами и башнями, очертания деревьев и скал — постройками, а листья превращаются в птиц и насекомых.

Техника обратного рисования дает разработчикам оценить качество распознавания того или иного слоя.

Сами разработчики называют эту технику «Inceptionism» (инцепционизм). Еще картины.

Итерации
На вход нейронной сеть можно подавать немного увеличенную картинку с выхода и получить невероятные цветовые пространства. Если начать с рандомного шума, то выходную картину можно считать исключительно творением нейронной сети.

Эта техника помогает понять и визуализировать как именно нейронная сеть выполняет задачи классификации, как улучшить архитектуру и проверить чему она научилась.

Конспект
  1. Нейронная сеть имеет от 10 до 30 вложенных слоев с разным уровнем абстракции.
  2. Чтобы нейронная сеть начала рисовать картины на её вход подается картинка и ставится задача — найти в нем определенную форму и утрировать её.
  3. Техника «инцепционизм» помогает понять и визуализировать как нейронная сеть выполняет задачи классификации.

flowers-for-all.com

нейронные сети научились писать картины — Meduza

В блоге Google опубликован рассказ группы исследователей (в их числе российский разработчик Александр Мордвинцев) о том, как искусственные нейронные сети научили писать свои картины. Для этого использовались нейросети, предназначенные для распознавания изображений: получив фотографию или рисунок, они выясняют, какие именно объекты на ней изображены.

Такие нейросети состоят из 10-30 связанных слоев, которые работают последовательно: получив картинку, они анализируют ее и «сообщают» результаты анализа следующему слою. Например, первые слои могут искать на изображении края и углы, средние — интерпретировать наборы особенностей в отдельные объекты (например, двери или листья). Наконец, финальные слои объединяют все эти интерпретации воедино и делают выводы о том, что изображено на картинке — например, здание или дерево.

Чтобы получать «картины», исследователи заставляют работать нейронные сети задом наперед: они показывают сети случайный шум и просят «улучшить» его таким образом, чтобы на выходе получилась определенная интерпретация. Например, если попросить нейросеть «найти» в шуме банан, муравья или морскую звезду, та действительно подкорректирует изображение, чтобы в нем проявились узнаваемые черты.

Шум превращается в бананы

Иллюстрация: Google

Цель этого процесса — понять, правильно ли нейросеть интерпретирует те или иные объекты. Дело в том, что нейронные сети обучаются на большом количестве примеров. Можно показать им тысячу фотографий вилок, чтобы они определили нужные характеристики (ручка, четыре зубчика) и научились игнорировать лишние (цвет, форма, положение).

И в будущем, если «попросить» нейросеть нарисовать вилку, можно увидеть, насколько хорошо она усвоила «урок». Например, с гантелей одна из таких сетей не справилась: по-видимому, на всех фотографиях, которые ей показывали, гантели были изображены вместе с держащими их руками. Поэтому в собственном «творчестве» нейросеть тоже постаралась изобразить гантели с руками.

Шум превращается в неправильные гантели

Иллюстрация: Google

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

Например, базовые слои, определяющие края и их положение на картинке, будут накладывать на фотографию мазки или простые орнаменты (еще один пример можно посмотреть по ссылке).

А ниже — пример того, что получится, если скормить картинку более «продвинутым» слоям нейронной сети, которые ищут целые объекты на картинках. Разработчики как бы говорят нейросети: «Что бы ты ни увидела, мы хотим побольше этого!». В результате, если сети покажется, что облако похоже на птицу, она сделает его еще более похожим.

Иллюстрация: Google

Эта нейросеть в основном обучалась на изображениях животных, поэтому она попыталась найти их на фотографии. Правда, получилось немного вперемешку — как объясняют разработчики, это из-за того, что данные хранились на таком высоком уровне абстракции (да, мы тоже ничего не поняли, но выглядит красиво).

Слева направо: Бабочка-пес, свинья-улитка, верблюд-птица и собака-рыба.

Иллюстрация: Google

Работает это, конечно, не только с облаками. Ниже другие примеры — как горы превращаются в башни, деревья — в здания, а листочки — в птиц.

Иллюстрация: Google

Чтобы получить действительно интересные картины, исследователи пошли еще дальше: они подавали нейронной сети картинку, затем то, что она выдала — и так вновь и вновь, на каждом шаге увеличивая масштаб изображения. Причем изначально можно скормить нейросети случайный шум, и все равно получится нечто прекрасное.

Иллюстрация: MIT Computer Science and AI Laboratory / Google

Иллюстрация: MIT Computer Science and AI Laboratory / Google

Иллюстрация: MIT Computer Science and AI Laboratory / Google

Мы собрали отдельную галерею с творчеством нейронных сетей: располагайтесь поудобнее и смотрите.

amp.meduza.io

Нейросеть превращает рисунки в «настоящих» котов — Naked Science

Совсем недавно разработчик Кристофер Гессе (Christopher Hesse) явил миру свое детище – проект Edges2cats. С помощью нейросети нарисованные коты превращаются в «реальных». В основе идеи находится система машинного обучения от Google, названная TensorFlow. Edges2cats разделен на два «поля». В первом пользователь рисует кота (или нечто, на него похожее), а во втором нейросеть старается сделать так, чтобы рисунок походил на реальное животное.

 

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

 

Пример "удачного" кота / ©Twitter

 

И не очень удачного... / ©Twitter

 

Просто милаха / ©Twitter

 

Этот проект, кстати, не единственное творение Кристофера Гессе. Ранее разработчик уже представил проекты, позволяющие создавать сумки, дома и обувь. Правда, ни один из них не обрел такую популярность, как Edges2cats.

 

Искусственная нейронная сеть является математической моделью, а также ее программным или аппаратным воплощением, построенными по принципу, схожему с организацией и функционированием биологических нейронных сетей – сетей нервных клеток живого организма.

 

Ранее, напомним, сообщалось о разработке искусственной нейронной сети, которая может подобрать идеальный подарок для любого человека. 

naked-science.ru

Нейронные сети Google научились «рисовать» картины — Look At Me

Специалисты Google Александр Мордвинцев, Кристофер Олах и Майк Тайка рассказали в блоге компании о том, как работают нейронные сети, используемыe Google, и как их можно использовать для создания новых изображений.

Нейронные сети Google научились «рисовать» картины
. Изображение № 1.Нейронные сети Google научились «рисовать» картины
. Изображение № 2.Нейронные сети Google научились «рисовать» картины
. Изображение № 3.Нейронные сети Google научились «рисовать» картины
. Изображение № 4.Нейронные сети Google научились «рисовать» картины
. Изображение № 5.Нейронные сети Google научились «рисовать» картины
. Изображение № 6.Нейронные сети Google научились «рисовать» картины
. Изображение № 7.Нейронные сети Google научились «рисовать» картины
. Изображение № 8.Нейронные сети Google научились «рисовать» картины
. Изображение № 9.

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

Этот процесс можно провести и с обычными фотографиями, на которых изображены пейзажи, предметы и животные. В этом случае программе не дают запросов на поиск какого-либо предмета, а просто просят найти знакомые и выделить их. При этом при работе с многослойной нейронной сетью можно работать с различными слоями и получать разные эффекты: так, более низкие слои просто выделяют цвета, края и линии, создавая цветные мазки или орнаменты поверх имеющегося изображения. В случае, если речь идёт о более высоком и сложном слое, то программа находит изображения зданий, деревьев и различных животных.

Наконец, для создания самых сложных картин специалисты сначала загружали в нейронную сеть картинку, затем — сгенерированное ей изображение и повторяли этот процесс несколько раз, каждый раз увеличивая масштаб. При этом интересные изображения можно получить даже в том случае, если на самой первой картинке был случайный шум.

www.lookatme.ru


Evg-Crystal | Все права защищены © 2018 | Карта сайта