Нейронные сети научились окрашивать черно-белые фото

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


    Одно из таких изображений (попробовать сделать собственное можно здесь)

    Но нейронные сети могут работать и в более спокойном режиме. Например, делать цветными черно-белые снимки. Для того, чтобы научить систему это делать, исследователи обучают ее, демонстрируя большое количество различных фотографий. Нейронная сеть выбирает с цветных снимков те объекты, что схожи с объектами на черно-белых снимках, и разукрашивает последние. Сейчас такой проект разрабатывается исследователями из Калифорнийского университета в Беркли.



    По результатам работы в рамках проекта опубликована статья Colorful Image Colorization (PDF). Далеко не все «окрашенные» снимки можно назвать удачными, но некоторые — просто идеальны. Алгоритм системы, разработанной исследователями, работает с рядом обычных правил (например, небо — голубое, трава — зеленая и т.п.), плюс эти алгоритмы прорабатывают множество схожих фото, чтобы получить информацию о точном цвете нужных объектов.



    Цветные снимки показывались добровольцам, которые пытались угадать, какие снимки были изначально черно-белыми, а затем их сделали цветными, а какие — изначально цветными. Около 20% расцвеченных снимков испытуемые посчитали изначально цветными. Интересно, что сети сложно раскрасить, например, зеленый овощ на белой тарелке, или оставить снежно белой цаплю определенного вида.

    Исходники алгоритма, документацию и остальные наработки можно найти на Github.

    Сейчас нейронные сети не просто разукрашивают фото, но и генерируют лица людей и интерьеры. Так, команда исследователей из компании Indico и Facebook создала нейронную сеть, способную «придумывать» реалистичные изображения. Кстати, об эволюции нейронных сетей можно почитать здесь.
    Метки:
    Поделиться публикацией
    Реклама помогает поддерживать и развивать наши сервисы

    Подробнее
    Реклама
    Комментарии 69
    • 0
      Отличные новости! http://ic.pics.livejournal.com/faiman/12547182/43489/43489_320.jpg
      • +3
        не понимаю за что минусы, Штирлиц в цвете давнишняя мечта…
        • 0
          1) Это не мечта, это уже свершившийся (по мнению прогрессивной общественности) ужас.
          2) Минусы, вероятно, за то, что не картинка, а некликабельная ссылка. Но это уже от меня не зависит.
          • +1
            Как так? Я думал значение кармы всегда кратно «1».
            • –1
              Это не ко мне вопрос, а к администрации сайта. Полагаю, что некоторые пользователи равнее других.
              • 0
                Было старое правило, что при взаимном голосовании значение голоса снижается. Например, если вам влепили минус, то у вас карма снижается на 1. Если вы в ответку влепили минус, то у обидчика карма уменьшается на 0,5, но ваша карма увеличивается (!) на 0,5, давая суммарный эффект тоже на −0,5. Аналогично, с плюсованием.

                Возможно, есть и более тонкие формулы.
                • 0
                  Спасибо за просвещение. Это видимо было до введения анонимности оценок.
                  • 0
                    Оценки всегда были анонимными. Но иногда нетрудно угадать, кто влепил минус. А даже если и не угадал, система провоцирует их ставить.
                    • +1
                      Ну то что анонимность негативно действует на неокрепшие умы, давно известно.
                      P.S. Ща меня эти умы заминусят. :)
            • 0
              читал новость, и сразу в голову пришла мысль прогнать Штирлица!
              • +3
                Мне вот было бы интересно посмотреть на цветного Чарли Чаплина :)
                • 0
                  Да, но только если это будет очень качественная работа. Плохую раскраску я никогда не променяют на исходный Ч\Б материал. Сейчас уже приходится тратить время на поиски оригинала в черно-белом варианте, потому что все переиздания цветные и цвета эти фальшивые. Раньше, в молодости, это возбуждало воображение, например, как же режиссер видел картину в цвете, но потом я быстро понял, что моя фантазия делала гораздо больше. ИМХО, конечно.
                  • 0
                    как же режиссер видел картину в цвете
                    для получения естественных изображений человеческих лиц в начальную эпоху кинематографа, когда киноплёнка не имела приемлемой чувствительности в красной области, порой применялся специальный грим, например, голубая помада для губ. Декорации же для такой съёмки не раскрашивались в сколько-нибудь реальные цвета. (ru.wikipedia.org/wiki/Сенсибилизация_(фото))
                  • 0
                    Главное чтобы не получилось как на КДПВ :)
                • +1
                  Просто оставлю здесь: Цветной Штирлиц
              • 0
                Ну как ту не вспомнить анекдот:
                • Эта жёлтая машина — Стелькина, а Стелькин — взяточник.
                • Жёлтая? В прямом смысле, или фигурально?
                • Увы, в прямом.
                • Ну вот, Штирлица им мало — эти маляры и к нам добрались!
              • 0
                Интересно, насколько близко к оригиналу будут окрашены черно-белые снимки, изначально полученные из цветных…
                • 0
                  Скорее всего, все использованные черно-белые снимки получены из цветных.
                  • 0
                    В оригинальной статье есть несколько примеров известных, изначально чёрно-белых фотографий раскрашенных этой нейросетью.
                    • +1
                      Но при обучении-то всё равно использовались изначально цветные, иначе какой смысл...
                • 0
                  У меня не получилось нормально окрасить фотографию Алисы Лидделл из Википедии.
                  • 0
                    Блин, классно же!
                    Где-нибудь есть готовый сервис/программа куда можно загружать фото?
                    • –4
                      А в чем "классность"?
                      То что алгоритм работает и это круто или реально очень полезное применение, можно будет фото бабушки расцветить и как бы будет цветное фото (только зачем?).
                      Или в дальнейшем можно будет передавать скажем ч/б изображение в некоторых случаях и на принимающей стороне раскрашивать для экономии канала? Но для того другие алгоритмы применимее наверное?
                      В чем все же практическое применение?
                      • +1
                        Я кроме раскраски старых фото\видео придумать не могу, но это не означает что применения не найдётся.
                        • +9
                          Используя этот алгоритм можно повысить качество съемки в темноте,
                          • 0
                            А потом и без видеокамеры.
                        • 0
                          Кстати да, если она может почти идеально восстанавливать цвет на изначально чб-изображениях, то не сможет ли она восстанавливать его абсолютно идеально, если туда изначально добавить какой-то минимум информации о цвете и сжимать только чб-часть?
                          А ещё не получится ли с помощью неё избавиться от матрицы Байера в фотоаппарате и использовать его полное разрешение?
                          Добавить только какую-нибудь матрицу низкого разрешения, которая даёт общее представление о цвете и восстанавливать остальное по хайрезу.
                          • 0
                            А ещё вдобавок корректно очертить границы объектов с указанием семантики, чтобы алгоритму не приходилось прикидывать, что он видит и какого это цвета. Тогда должно получиться весьма качественно
                            • 0
                              Уже — Sigma DP Quattro
                            • 0
                              Ну вот вам пример практического применения. Берём практически любой современный фильм. Думаю, многие заметили, что 95% того, что сейчас снимается, на самом деле чёрно-белое и лишь немного подсинивается или желтится ползунком Hue.
                              И раскрашиваем! А если ещё разработают нейросеть для восстановления фона в тех случаях, когда 99% действия происходит чёрной-чёрной ночью в тёмном-тёмном подземелье, из-за чего на всём кадре видны лишь лица и факелы, то это будет прямо-таки возрождение кинематографа, который сейчас просто поражает редкостным нежеланием работать со светом и цветом.
                          • 0
                            Ради интереса скормил программе пару фоток Лондона викторианской эпохи. Результат получился довольно забавным. Похоже на коллажи, которые время от времени выкладывают на steampunker.
                            />
                            • +2
                              Что-то не срослось. Как-то вот:
                              https://habrastorage.org/files/676/500/b61/676500b61cf74a0fa1545d544e63497f.jpg
                              • +1
                                Это вы через Deep Dream прогнали, а надо через https://richzhang.github.io/colorization/
                                • 0
                                  del
                                • 0
                                  Чарли Чаплин там, кстати, присутствует
                                  https://m.youtube.com/watch?v=_MJU8VK2PI4
                                  • 0
                                    плюс эти алгоритмы прорабатывают множество схожих фото, чтобы получить информацию о точном цвете нужных объектов.
                                    Далеко не всегда существуют эти самые «схожие фото». Например фотографию меня в шапке, которую связала моя мама, не получится правильно раскрасить, потому что шапка существует в единственном экземпляре, цветных фотографий не существует. Но всё равно очень круто. Можно подсунуть в качестве образца фотографию шапки любого цвета и получить желаемый результат.
                                    • +1
                                      «Еще раз про цвет из чб» — http://tema.livejournal.com/2129837.html
                                      • 0
                                        В цитате написано что-то похожее на правду, но если перейти на статью про фотографию в комбинезоне: "единственные несколько сине-зеленых пикселей я нашел на комбинезоне." Что это за бред написан? Почему именно сине-зелёные пиксели? Почему не красно-розовые, светло-коричневые, голубые, фиолетовые? Если я предоставлю тем людям чёрно-белую фотографию незнакомого (и им, и нейросети) объекта, то как они определят какие пиксели сине-зелёные, а какие нет? Никак.
                                        Раскрасить правдоподобно можно, достоверно — не всегда.
                                        • 0
                                          Я не совсем это имел ввиду, mia culpa. В комментариях есть неоднократное утверждение, о том что восстановить никак нельзя, кроме как логическими рассуждениями. Иными словами, если ваша мама специально выбирала необычные цвета, раскрасить достоверно нет никаких шансов. Но возможно о цветах можно догадаться по другим предметам. Перебрать базу похожих шапок, может даже базу тканей или фасонов.
                                      • 0
                                        Если следовать Вашей логике, то никого нельзя раскрасить, т.к. двух одинаковых людей не существует, даже если они близнецы. Задача программы — не найти именно те цвета, которые были в оригинале, а заставить зрителя поверить, что цвета на выходе алгоритма истинные.
                                        • 0
                                          Вы неверно трактуете мою логику. Люди все более или менее похожи. У всех, скажем так, коренных европейцев цвет кожи розово-коричневый. И вот цвета вязанных шапочек самые разнообразные. Если шапочка выпускалась серийно, но можно найти похожее изображение в материалах по которым обучалась нейросеть. Грубо говоря логика такая: "Так, это похоже на спортивную шапочку Adidas из коллекции 1988 года, они были чёрные, белые, тёмно-синие и розовые. По насыщенности оттенка эта больше всего похожа на тёмно синюю — красим всю шапку в тёмно-синий." Но если шапка изготовлена в единственном экземпляре, если нет её цветных фотографий, то любая догадка о её цвете не может считаться более верной чем любая другая. Шапка с одинаковым успехом может быть как розовой, так и голубой.
                                          И дело не только в шапках. Если у вас есть ч.б. фотография с красочного театрального представления, карнавала или ещё чего-то подобного, то вы не знаете в какие точно цвета всё раскрашивать, если только у вас нет дополнительных описаний от очевидцев.
                                          • 0
                                            Перечитайте мой предыдущий ответ. Как я уже сказал, сети абсолютно наплевать, Adidas это или что-то ещё. Нет там никакой БД, в которой ищется Adidas 1988 года. Круто уже, если она может понять, что это просто шапка, а шапки обычно цвета N, а полосатые шапки — цвета N в полоску K. Нет задачи получить тот же набор цветов, потому все Ваши умозаключения относительно знания точного цвета не имеют смысла.
                                            • 0
                                              Ещё раз:
                                              раскрасить правдоподобно можно, достоверно — не всегда.
                                              Вы пытаетесь убедить меня ровно в том же в чём я убеждаю вас. "Нет задачи получить тот же набор цветов" равносильно "раскрасить правдоподобно, без гарантии достоверности".
                                              • 0
                                                ОК, согласен. В любом случае, надо мне будет почитать о топологии этого дела. Интересно было бы собрать что-то в таком роде самостоятельно.
                                      • 0
                                        Наконец то заветная кнопка заказчика «сделать красиво» будет скоро доступна :D
                                        • +2
                                          Боюсь, спроса на такую кнопку не будет. Народу нужна совсем другая кнопка — "сделать редкостный вырвиглазный шлак, от которого заказчик будет просто в диком восторге".
                                          • 0
                                            Судя по картинке в заголовке поста с этим тоже проблем не будет))
                                            • НЛО прилетело и опубликовало эту надпись здесь
                                        • 0
                                          Может кто нибудь объяснить «на пальцах», что такое этот ИИ и как он работает?
                                          • 0
                                            Нейронная сеть для каждой структуры и насыщенности черно-белых пикселей запоминает их исходный цвет.
                                            Грубо говоря, НС запоминает, что если рядом находятся пиксели {100, 250, 105}, то их надо покрасить в {red, pink, blue}, а если {120, 151, 183}, то в {blue, green, light-green}.
                                            Дополнительно может учитываться положение пикселей на фотографии (сверху, снизу).
                                            • 0
                                              Спасибо, хотя вопросов прибавилось (не обращайте внимания, я дилетант в этом вопросе). Но, как всё не понятное — манит.
                                              • НЛО прилетело и опубликовало эту надпись здесь
                                                • 0
                                                  Разве это не одно и то же? Мне казалось, что "фичи" это те же самые пиксели, только каждый пиксель "фичи" вычисляется по какому то правилу, скажем "среднее расстояние до ближайших ярких пикселей на картинке."
                                                  • НЛО прилетело и опубликовало эту надпись здесь
                                            • –1
                                              Теперь этот алгоритм зашиваем в кодек и можно резать цвет в фильмах для уменьшения обьема…
                                              • +1
                                                Ага. И пишем инструкцию: "Для просмотра фильма в цвете скачайте нейросеть на 50 гигабайтов". =)
                                              • 0
                                                А не может ли программа подобрать цвета, если человеком, абсолютно не знакомым с её принципами, будут указываться только качественные характеристики без уточнения оттенков, — например, человек кликает пипеткой по участку а потом по ближайшему подходящему цвету из набора, указывая, что этот листик, например, — зеленый, тот мячик — синий, этот участок — на солнце а тот — в тени, — а программа же, зная качественную информацию, поберет цвета, оттенки, освещение. Если была допущена ошибка, например, алое небо было сочтено голубым, то можно переназначить этот выбор.
                                                • 0
                                                  Только для начала придётся сегментировать изображение, выделив объекты, цвета которым будут назначаться, либо придётся вручную рисовать пиксельную цветовую маску для каждого изображения. В принципе, ничего принципиально невозможного здесь нет, нужно лишь собрать всё это воедино.
                                                • 0
                                                  Пользователь указывает цвет и освещенность для одного «типичного» пикселя или маленького кусочка, участка а программа распространяет значения на подобные места и прогнозирует, как будут выглядеть иные места, не указанные человеком.
                                                  Просто сейчас приходится делать маски, обводить, а так дело упрощается — мазнул по фото — назначил параметры, затем опять и опять, хотя бы 2-3 раза, затем нужно поправить те места, которые получились неестественными, опять таки, давая программе качественные оценки, — так как любой человек очень хорошо разбирается в вещах окружающего мира, а в теории хранения графической информации в компьютере разбираются только специалисты.
                                                  • +1
                                                    Спасибо за собачек. Вот чего мне не хватало, чтобы уснуть
                                                    • –5
                                                      s3-us-west-1.amazonaws.com/ddream/dream_a6b63c5ea1.jpg как-то невпечатлило…
                                                      • НЛО прилетело и опубликовало эту надпись здесь
                                                        • 0
                                                          Господин высказал своё мнение.

                                                          Однако ж на некоторых фотках, например с яблоком, отработало восхитительно!
                                                          • НЛО прилетело и опубликовало эту надпись здесь
                                                        • 0
                                                          Ради интереса показали бы старые ч/б фото.
                                                          • –2
                                                            Осталось вживить эту технологию в голову дальтоникам — вот и практическое применение в будущем.
                                                            • 0
                                                              Скоро будем пересматривать старые чёрно-белые фильмы в цвете.
                                                              • 0
                                                                По результатам работы в рамках проекта опубликована статья Colorful Image Colorization (PDF).


                                                                Было бы интересно почитать перевод статьи.

                                                                Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.