В качестве небольшого любительского проекта я поэкспериментировал с нейросетями AI Gigapixel для апскейла одного из моих любимых научно-фантастических сериалов — Star Trek: Deep Space Nine (DS9), в русском переводе «Звёздный путь: Глубокий космос 9».
Перспективы Deep Space Nine
Так же, как Final Fantasy 7, где я делаю апскейл фонов, текстур и видео в моде Remako, DS9 лишён планов на выпуск HD-версии. В то время как популярные сезоны Original Series и The Next Generation (TNG) в основном сняты на плёнку, DS9 снимался в середине 90-х годов с наложением визуальных эффектов (космические битвы и т. д.).
Аналоговую плёнку можно заново отсканировать с более высоким разрешением, но с цифровым видео такое не получится. Ремастеринг сериала становится гораздо более дорогостоящим: это одна из причин, почему его не выпустили в HD.
Ремастеринг DS9 с машинным обучением
Я подумал, что здесь можно с пользой применить нейросети. С помощью таких инструментов, как AI Gigapixel, кадры низкого разрешения DS9 можно масштабировать до высокой чёткости: 1080p или 4K. Они никогда не сравнятся с хорошим ремастерингом, но это шаг в правильном направлении.
Поэтому я попробовал на парочке кадров, что получается. Результаты великолепны. AI Gigapixel использует нейронные сети, обученные на реальных фотографиях. Они хорошо подходят для апскейла рендеров видеоигр Final Fantasy, но также удивительно качественно отмасштабировали кадры и спецэффекты DS9.
Вот несколько примеров:
Оригинальное разрешение 480p (нажмите, чтобы увеличить)
Улучшенное разрешение 1080p (нажмите, чтобы увеличить)
Оригинальное разрешение 480p (нажмите, чтобы увеличить)
Улучшенное разрешение 1080p (нажмите, чтобы увеличить)
Эти отдельные кадры выглядели многообещающе. На первом наборе изображений обслуживающий персонал станции в скафандрах представляет собой лишь несколько пятен. После апскейла проявились гораздо более чёткие фигуры.
Крупный план руки тоже улучшился. Морщины и складки на коже выглядят гораздо более детализированными, а бейсбольный мяч лучше демонстрирует блеск и замысловатую прошивку.
Видео
Однако настоящая проверка — как нейросети справятся с последовательностью кадров, то есть видео. Появятся ли артефакты и другие проблемы? В конце концов, AI Gigapixel создана для апскейла отдельных изображений и не учитывает отношения между отдельными кадрами видео.
Для проверки я решил обработать часть эпизода «Жертва ангелов» 6-го сезона. Это отличная серия про Войну Доминиона, где есть и эпические космические битвы, и более личные моменты лицом к лицу.
Более подробно об этом процессе расскажу в будущих статьях, но если вкратце: извлечение и масштабирование кадров, а затем генерация из них нового видео заняла около двух дней. Это обработка первых пяти минут эпизода (резюме, начальная сцена и вступление). Вполне нормальное время для ПК среднего и высокого класса с общедоступным ПО.
Результат привел меня в благоговейный трепет. Он выглядел лучше, чем я надеялся. Никаких проблем и артефактов. Поскольку (движущиеся) изображения стоят более тысячи слов, вот два видеоролика для сравнения.
Первый демонстрирует ситуацию «до и после» на неподвижных кадрах.
Второй сравнивает два видео. Обратите внимание, насколько чётче выглядит улучшенная версия.
Настоятельно рекомендую смотреть эти видео через приложение YouTube на телевизоре, если это возможно. Это даёт лучшее ощущение, как будет выглядеть улучшенный DS9 непосредственно на ТВ.
Сравнения — это хорошо, но как выглядит реальное видео? Вот первые пять минут эпизода в полном объёме с разрешением 1080p:
Что насчёт 4К?
Честно говоря, не знаю. Хотя я могу увеличить масштаб до 4K, у меня нет телевизора или монитора с таким разрешением, чтобы проверить улучшения. Тем не менее, я записал это видео. Интересно услышать мнение людей с оборудованием 4K, выглядит ли оно лучше по сравнению с версией 1080p.
Рендеринг почти расплавил мой компьютер, так как он намного интенсивнее, чем 1080p, поэтому ограничимся только этим примером 4K.
Что дальше?
Поскольку я не владею правами на DS9, то не могу делать с сериалом что хочу. Я бы выпустил полные эпизоды, но это просто юридически невозможно. Данные видео служат скорее доказательством концепции, чтобы правообладатели из CBS взглянули на машинное обучение и нейронные сети для возможного ремастеринга DS9, который немного приблизит наш любимый фильм к эпохе HD.
Представьте, что может сделать профессиональная команда с мощным оборудованием, специально обученными нейронными сетями (возможно, обучив её на сезоне TNG — на наборе данных из оригинальных кадров и кадров после ремастеринга) и доступом к SD-исходникам вместо DVDRip, как у меня.
Ну а я со своей стороны могу более подробно рассказать о процессе апскейла, как я его проводил, что станет темой будущей статьи.
Дайте знать, что вы думаете об этом.
Комментарии (65)
ingvarhost
21.03.2019 09:18Qapla'! Отличная штука. Интересно, а с рисованной анимацией она так же хорошо справляется?
erty
21.03.2019 10:13С анимацией всё ещё проще. Там нет шумов на фоне, обширные области заполнены чаще одним цветом или понятным переходом, а разделительные линии отлично векторизуются.
Вот, например, недавно же было: Морти, мы в UltraHD!
vicsoftware
21.03.2019 21:29По моим ощущениям, с анимацией лучше справляется Wifu2x. Ai Gigapixel — с фотографией и реальными изображениями. Видимо, сказывается то, на чём тренировали сеть.
Fox_exe
21.03.2019 09:51+1Я один не заметил особой разницы?
Вижу только еле заметное увеличение резкости, что и без всяких AI было доступно ещё 10 лет назад?MedicusAmicus
21.03.2019 10:25Это как с теплым ламповым звуком — замечают не только лишь все.
Но есть люди, которым это важно.
Я, к примеру, разницу вижу.
Жаль, для личных целей апскейлить пару-тройку фильмов из детства не получится — цифромощь не тех порядков.
(Интересно, а как с такими задачами справилась бы ферма?)Aquahawk
21.03.2019 10:28Да ладно, ну пусть помолотит комп пару недель, да даже месяцев. Как раз для пары тройки фильмов подойдёт. А вот в реалтайме, да, не покатит.
ua30
21.03.2019 13:28Полностью согласен.
Сидя за 24" монитором ПК разница едва уловима. И то выискиваешь где же она. Диагональ не как у ТВ, но расстояние то вытянутой руки.
Это при том, что действительно давно есть множество плееров с фильтрами, которые в реальном времени дают однозначно ощутимый результат.
br4ve
21.03.2019 15:13Не знаю как можно не видеть разницы, она ясно видна.
После обработки картинка гораздо лучше.Zangasta
21.03.2019 15:37+1Не для всех.
Попробую объяснить — если я читаю книгу, где часть страниц, к примеру, зеленые — я этого просто не замечу. На содержание книги, которое я получаю через текст это не влияет.
Так и с высоким качеством изображения. Какая разница, какого качества картинка — если её все равно достраивает мозг?
При этом — нужно знать, что тут большая часть картинки полна мусорной информацией — это, если называть вещи своими именами, телевизионный спектакль. С предельно простыми декорациями и резиновыми масками актеров.
Это не мешает быть этому сериалу шедевром — я смотрел его 10 лет, и буду смотреть еще очень долго (Я не люблю когда сериалы заканчиваются — и ближе к концу начинаю смотреть их по одной серии сначала в месяц, потом в полгода, потом в год — так сериал для меня субъективно не закончится в ближайшие лет 20). Персонажи этого сериала стали для меня почти родными.
Но, но… хорошая картинка этот сериал только портит. Разрушает ту условность, некоторую театральность происходящего. И возможно поэтому, потому что у меня уже сформировались детальные образы героев — я не особо замечаю разницы в качестве.
Но, так-же я прекрасно понимаю, что есть люди, которым это важно. Не так давно, восхищенный Зельдой на Свитче, я попробовал поиграть в ранние игры этой серии. И тупо не смог — слишком плохое качество картинки.
Так что я допускаю, что человеку, привыкшему к ультра ХД разница действительно бросается в глаза. Является для него значимой и колоссальной.
Единственное, что я скажу — качество в глазах смотрящего. Мы, люди, очень по разному смотрим на мир, помните об этом.
vitaliy2
22.03.2019 11:49Какая разница, какого качества картинка — если её все равно достраивает мозг?
Интересно, а почему люди ходят в кинотеатры, а не смотрят фильмы на экране мобильного телефона? А разница в качестве большая. Просто взять и «увеличить резкость» раньше было нельзя. В чём-то картинка становилась лучше, в чём-то хуже, и в итоге с увеличением резкости только хуже (даже aWarpSharp2 имеет значительные недостатки). А тут честный апскейл, без недостатков.DrZlodberg
22.03.2019 12:01+1Слово «честный» применительно к апскейлу всё-таки странно звучит. Хотя, судя по картинкам (видео не видел) — очень даже неплохо. Хоть я и из тех, кто иногда и на мобиле смотрит — с таким исходным разрешением даже там разница должна быть заметна.
Zangasta
22.03.2019 13:06Интересно, а почему люди ходят в кинотеатры, а не смотрят фильмы на экране мобильного телефона?
Потому что поход в кино — это социальное действие. Если мне интересна именно история — я как раз смотрю её на телефоне.
Да и определенное натягивание совы на глобус у вас тоже есть — от сериала, с довольно бедной картинкой вы совершили прыжок к фильмам. Не спорю, среди них тоже есть экземпляры с говорящими головами, но как правило, картинка фильма полна деталей, которые интересно рассматривать.
Из примеров могу привести Прометей с Аватаром. В них фул хд оправдан.
ICELedyanoj
22.03.2019 08:02Когда у меня появился комп, способный играть FullHD, то я решил для примера глянуть первого «Шрека» и очень разочаровался. Живой и красивый мультик превратился в картонку с текстурами недостаточного разрешения и бедной детализацией. И это при том, что там не апскейл, а реальное разрешение, которое было при выпуске мульта. Просто полное разрешение вскрыло бедность графики тех годов, которая была не заметна в более низких разрешениях.
tretyakovpe
22.03.2019 11:54у нас в семье «паровозик томас» стал индикатором.
От кукольного мультфильма до современной CG посмотрели все сезоны.
Главный фактор — дым из трубы
KIVagant
21.03.2019 16:21Нет, не один. Классные фильтры, которые проделывали подобные вещи (не просто ползунок «резкость»), были в фотошопе в ещё в 2006м году. Ничего особенного это «нейросети» не демонстрируют. Вот если бы там появлялись новые детали, которых раньше не было, в зависимости от контекста вокруг (больше кораблей, мебель, улучшенный грим на актёрах вместо этой безжизненной маски) — вот тогда можно было бы это назвать достижением нейросетей.
Tangeman
21.03.2019 21:31Разница есть, но совсем другого типа чем если бы было реальное FullHD, не говоря уже про 4K.
Несуществующие детали, увы, никакой AI не додумает, да и чёткость не увеличивается. Чуть резче, да, но не более того — эффект примерно похожий на sharpening.Sadler
21.03.2019 22:16Несуществующие детали, увы, никакой AI не додумает
Для этого есть генеративные сети, однако, если бы данная конкретная сеть существенно додумывала детали, которых не было в оригинальном видео, нашлось бы куда больше огорчённых этим фактом.
vortex77
21.03.2019 11:26отличная идея, ждём с нетерпением.так же и Вояджер было бы не плохо обработать
Hodus
21.03.2019 11:26Это реально круто. Разница колоссальная. Я прям вижу как лет через 5-7 подобная технология будет в обычных программных плеерах, с ремастерингом на лету. И вместо того чтобы хранить свою библиотеку в 8к, или что там нас ждет, достаточно будет HD или около того. Кстати вы не курсе случайно как это сейчас в современных телевизорах реализовано? Я сомневаюсь что там только интерполяция применяется.
striver
21.03.2019 11:34Я прям вижу как лет через 5-7 подобная технология будет в обычных программных плеерах, с ремастерингом на лету.
Я бы не надеялся. Дешевле делать более объемные накопители, чем в рилтайме 320р перекодировать в 4к.Alexey2005
21.03.2019 15:42Вот для чего это действительно бы пригодилось, так для улучшения качества экранок. Когда нейросети смогут из тухлой экранки, снятой на левый ботинок, получить качество, сравнимое с DVD, глядишь и правоторговцы призадумаются, стоит ли задерживать выход дисков на полгода после начала проката.
DenimTornado
21.03.2019 12:06Вы точно знаете определение слова «колоссальный»?
Hodus
21.03.2019 12:41Колоссальный — большой/огромный. Ответа на вопрос «колоссальный это сколько?» не существует, насколько я знаю. Считаю что выразился корректно. Имею ввиду что вместо пикселизации и мыла, есть более-менее четкие границы у деталей. Разница хорошо заметна, деталей больше не стало, но они лучше прорисованы. Попробуйте тот-же пример с мячом растянуть оригинал по размеру экрана и сравнить с улучшенным файлом. Боке стало похоже на боке. Попробуйте обратить внимание на область с проксимальной фалангой указательного пальца — морщины кожи стали четче, при этом боке на фоне этого пальца замылилось. Посмотрите на край ногтевой пластины и ее блеск.
Mingun
21.03.2019 22:19Интересно, как вы это увидели, ведь "улучшенная" версия пальца меньше по разрешению, чем оригинал...
DistortNeo
21.03.2019 12:10И сразу видна проблема — фликинг, особенно на 4К видео. Из-за того, что каждый кадр увеличивается независимо, он достраивается нейросеткой по-разному.
Алгоритмы для улучшения видео тоже существуют, но их намного меньше, и они имеют существенно более высокую сложность.pvsur
21.03.2019 12:34Да, тоже помню что было что-то в инете об алгоритмах обработки видео с учетом предыдущих и последующих кадров…
arthur_veber
21.03.2019 13:00+1Так же это может пригодится для личных фото\видео снятых в 80х\90х.
Очень интересно какое нибудь простое решение, типа на входе дал авишку в 640x480, на выходе получил в 1080.
Berd90
21.03.2019 13:15ИМХО, автору нужно открывать свою фирму, патентовать методику и выходить с предложениями к правообладателям.
VGoudkov
21.03.2019 14:02Я правильно понял, что каждый кадр обрабатывался независимо, а потом из них собирался видеопоток? Если да, то есть существенный резерв для улучшения — анализ нескольких кадров с выделением смещений объектов, поскольку на каждом кадре размытие случайное, а если сформировать несколько «статических фотографий» одного и того же объекта (убирая смещения, повороты и масштабирования) то можно именно рассчитать оригинальные пикселы. Нейросеть же скорее их «придумывает» исходя из того, что она видела на похожих фрагментах.
Ayahuaska
21.03.2019 14:41-1>Так же, как Final Fantasy 7, где я делаю апскейл фонов, текстур и видео в моде Remako
А для каких игор ещё такое счастье есть?..
AlexanderG
21.03.2019 15:30Попробовал 4К версию на ноутбуке с 4К. Особого смысла в таком апскейле нет, в 480р не хватает информации и картинка иногда немного напоминает ротоскопию. Но, думаю, если апскейлить 1080р или даже 720 до 4К, то результат будет очень хорошим.
SergeiGarbar
21.03.2019 16:43даёшь «Волга-Волга» remastered и в цвете!
Am0ralist
21.03.2019 16:48И получится примерно так?s256
21.03.2019 22:16Очень интересно! Скажите, на каком железе это все гонялось и сколько времени занял процесс?
feodus
22.03.2019 00:04А разве последние модели телевизоров не делают то же самое? LG вот выпустил недавно линейки 2019 года — там тоже «AI улучшайзинг»… без всяких модных кастомных нейросетей и спаленного железа.
Я не утверждаю… просто мысли. У меня вообще старый самсунг FullHD без улучшалок ))
nidalee
22.03.2019 01:45Жаль, что пост — простой перевод, хотелось бы сравнения с чем-нибудь бесплатным, вроде того же waifu2x. Полагаю, разницу найти будет очень сложно, даже несмотря на то, что waifu2x предназначена для анимации.
PaveLiArcH
22.03.2019 08:25Странно, что никто не обратил внимания на огрехи «улучшения». Местами стало заметно хуже. И не только рывки изображения, которые видно в видео.
Давайте посмотрим на примере представленных в статье скриншотов. Сравнивать их лучше всего в одном окне, чтобы глазу было проще увидеть различия. Есть сервис, позволяющий сравнивать по наведению мыши.
Добавил в него скриншоты для сравнения:
- Скрин с кораблём резче, но сильные огрехи, черный цвет космоса какими-то обрывками стал светлее
- Скрин с мячем резче и, вроде бы лучше, но вот ранее артефакты фона сохраняли неравномерную структуру, позволяя нашему мозгу что-то в картинке додумать. В «улучшенной» же версии нас встречает ровное мыло
vitaliy2
22.03.2019 11:59черный цвет космоса какими-то обрывками стал светлее
Вы уверены? Специально проверил в редакторе — как был #000, так и остался #000. Это обман зрения.PaveLiArcH
22.03.2019 13:34Это обман зрения.
Перепроверил. С фоном действительно нет проблем (точнее масштаб их не так велик, как кажется). Но вот в чём сомневаться точно не приходится, так это в том, что звёзды стали ярче из-за шарпа (отдельно увеличил одинаковые фрагменты в 5 раз).DistortNeo
22.03.2019 14:48Потому что гамма.
Если размывать яркую точку без гамма-коррекции, то полученное пятно будет значительно темнее. И наоборот, при повышении резкости яркость будет возрастать.
С этим эффектом можно бороться, но нужно ли? Ведь исходное видео низкого разрешения тоже вряд ли было получено без правильной гамма-коррекции.
SuAlUr
22.03.2019 08:25m1rko
Есть следующие вопросы о методе — исходный тип материала для сравнения (DVDRip, DVD и т.д. (прогрессивный или чересстрочный)), каким образом извлекали видеокадры — видно смещение в сторону красного и были ли к исходному материалу применены доп. фильтры.
diff.pics/lHRLGXfZRhUK/1 вижу пример и понимаю, что в AviSynth можно было сделать это и раньше.
youyou2020
22.03.2019 08:25SW это очень старый сериал, молодежи он не интересен.
striver
22.03.2019 09:37Старый… а что можно тогда сказать об Оригинальных Сериях? При этом одна из лучших частей вообще всей научной фантастики «СТ: Следующее поколение» — старше этого сериала, тем не менее смотрят даже сейчас.
UncleAndy
Очень интересно! Хотелось-бы подробностей.
По видео сложилось субъективное ощущение что для HD надо апскейлить до UHD с помощью машинного обучения, а потом делать даунскейл до HD.
striver
Anton23
Перевод жи, это вам сюда писать: captrobau.blogspot.com/2019/03/remastering-star-trek-deep-space-nine.html
Или одному парню с Хабра, который Рика и Морти до 4к улучшал.
striver
OMG. Я как-то упустил момент, что это перевод… да глупо выходит…
DistortNeo
Скорее всего, это связано с компрессией видео.