Морти, мы в UltraHD! Как посмотреть любой фильм в 4K, дорисовав его через малоизвестную нейросеть

    Наверное, вы слышали про технологию Яндекса DeepHD, с помощью которой они как-то раз улучшили качество советских мультфильмов. Увы, в публичном доступе ее еще нет, а у нас, рядовых программистов, вряд ли найдутся силы написать свое решение. Но лично мне, как обладателю Retina-дисплея (2880х1800), недавно очень захотелось посмотреть «Рика и Морти». Какого же было мое разочарование, когда я увидел, как мыльно на этом экране выглядит 1080р, в котором существуют оригиналы этого мультсериала! (это прекрасное качество и обычно его вполне достаточно, но поверьте, ретина так устроена, что анимация с ее четкими линиями в 1080р выглядит мыльновато, словно 480р на FHD-мониторе)

    Я твердо решил, что хочу увидеть этот мультсериал в 4К, хотя и совершенно не умею писать нейросети. Однако решение было найдено! Любопытно, что нам даже не придется писать код, понадобится лишь ~100 ГБ места на диске и немного терпения. А результат — четкое изображение в 4К, которые выглядит достойнее, чем любая интерполяция.

    image

    Подготовка


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

    Это можно сделать через Adobe Premiere Pro или другую программу для работы с видео, но я уверен, что такая установлена далеко не у всех. Поэтому давайте воспользуемся консольной утилитой ffmpeg. Я взял первую серию первого сезона, и понеслось:

    $ ffmpeg -i RiM01x01_4K.mp4 -q:v 1 IM/01x01_%05d.jpg

    Почему JPG, а не PNG?
    Справедливый вопрос. Дело в том, что 31 000 PNG, которые бы мы получили бы на выходе, весили умопомрачительно много. Настолько много, что можно незначительно пожертвовать качеством.

    К слову, параметр -q:v 1 означает, что мы выводим JPG в максимально возможном качестве.

    Подождав примерно 10 минут, мы получим большущую папку с изображениями. У меня она заняла 26 ГБ.

    Осталось обработать каждый из этих кадров!

    Как будем обрабатывать?


    Я нашел три варианта, работающих более-менее нормально — это небезизвестный Let's Enhance, waifu2x (натренирован на аниме) и Mail.ru Vision.

    Чуть позже я обязательно покажу примеры.

    Mail.ru Vision и Let's Enhance неплохо обрабатывали изображения, но они, к сожалению, не опенсорсные, то есть для обработки 31000 картинок нам придется писать создателям на почту и, вероятно, немало заплатить. Поэтому я пригляделся к оставшемуся waifu2x, но он не порадовал меня качественным результатом, были шумы и нечеткости. Все-таки «Рик и Морти» — это не аниме.

    Я уже было отчаялся бесконечно листать Github и тематические форумы, но… Спасение вдруг пришло! Нашелся вариант, который работает на машине локально, обрабатывает картинку меньше, чем за секунду, и показывает отличное качество. И вы не поверите, кто в очередной раз пришел нам на помощь!

    Adobe Photoshop!

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

    Для начала нужно открыть исходное изображение, затем перейти через верхнее меню в Изображение > Размер изображения… и выбрать ресамплинг «Сохранение Деталей 2.0».



    Результат приятно удивил! Пожалуй, впереди только Let's Enhance. Вот и обещанное сравнение (исходное изображение приближено примерно в 8 раз):



    — И что теперь, вручную обрабатывать каждый кадр через фотошоп?
    Конечно, нет! В фотошопе есть инструмент Actions, который позволяет сначала записать последовательность действий, а потом применить ее на целую папку с изображениями. Не буду расписывать весь процесс, он легко гуглится.

    Я оставил свой ноутбук обрабатывать тридцать одну тысячу кадров на ночь по шаблону «сделай апскейл в два раза и сохрани». Проснулся утром — все готово! Еще одна папка с кучей кадров, но теперь уже в 4К и с размером в 82 ГБ.

    Назад, в видео


    Нам снова поможет ffmpeg.

    Понимаем, что мы совсем забыли про аудиодорожку, и достаем ее из оригинального файла:

    ffmpeg -i RiM01x01_1080p.mp4 -vn -ar 44100 -ac 2 -ab 320K -f mp3 sound.mp3

    А потом скидываем саунд в папку со всеми 4К-кадрами. Все наши труды прошли не зря, мы готовы к финальной склейке!

    ffmpeg -i 01x01_%05d.jpg -i sn.mp3 -vcodec libx264 -preset veryslow -crf 10 -r 23.976 RiM_01x01_4K.mp4

    Будьте внимательны: после -r ставьте именно такое количество кадров, какое было в оригинале, иначе звук не будет совпадать с картинкой!

    Готово!


    Мы получили первую серию «Рика и Морти» в 4К. Вот сэмпл. Конечно, это было немного по-ламерски, что ли… Но на самом деле у такого подхода есть серьезное преимущество. При работе с другими фильмами или мультиками мы можем удобнейшим образом, прямо через Photoshop доводить их кадры до идеала. Подобрали идеальную резкость и балансировку цветов под несколько кадров из фильма, потом записали свои действия в Action, распространили на весь фильм, и получили отличный результат без всяких математических сложностей. Это делает чудо-апскейл чуть ближе к обычному пользователю. Сложнейшие вещи, к которым люди шли веками, воспроизводятся быстро и без специальных знаний — что это, если не будущее?
    Поделиться публикацией

    Комментарии 182

      +86
      Mail.ru Vision и Let's Enhance неплохо обрабатывали изображения, но они, к сожалению, не опенсорсные
      То ли дело Фотошоп)
        +10
        И правда, нестыковочка. Но я имел в виду, что их нельзя запустить локально и бесплатно обработать большой объем данных)
          +94
          бесплатно
          То ли дело Фотошоп)
            +80
            Всем очевидно, что у большинства жителей наших стран уже есть купленный Фотошоп)
              +36
              Причём последней версии.
                0
                В смысле: «Купленный»?
                  +4

                  Леонард_Хофстедер.jpg

                    +3
                    Я смайлик :-) забыл поставить, что вы сразу.
                  +5
                  На купленой винде
                  0
                  Ну а почему бы и нет? 644 руб/месяц вполне подъёмны для типичного программиста, особенно если нужен он на тот самый единственный месяц чтобы чуть-чуть «поиграться со скриптами»
                    +1
                    Я недавно смотрел, уже сильно больше 1000. 20 баксов. Где купить за 644р?
                      +1
                      Тут. Тариф «работа с фотографиями» — 644 руб.
                        +2
                        Это же без НДС, реальная стоимость — 773 рубля\месяц.
                          0
                          А, ну я смотрел отдельный фотошоп. Так и не понял чем «фото» отличается, кроме того что шрифтов нет и еще кой-чего новомодного.
                          0
                          www.adobe.com/ru/creativecloud/plans.html
                          Ну и да, это подписка за 11,89 € /мес. включая НДС. Возможно я где-то не разобрался в их политиках лицензирования. Ну либо для разных стран/городов/платформ они показывают разные цены =)
                          +2

                          Пару лет назад Adobe взяли с меня плату за неустойку при отмене подписки досрочно.

                            0
                            Так надо было блокировать карточку. Не 100% что это поможет, в худшем случае может и в дебет загнать, но в интернетах пишут, что помогает.
                          0
                          Если уж говорить о пиратстве, то у того же Adobe есть Premiere, а для него есть Shooter Instant 4K
                    +8
                    Полагаю, что это валидно только для современных мультиков без отрисованных фонов.
                    image
                      0
                      а почему тут не сработает?
                        +4
                        Потому что современные мультики — это вектор без рисованных красками фонов — посмотрите на скриншоты в статье. Вернуть векторизацию изначально векторному изображению — тривиальная задача (я так для своего лазера беру с платных сайтов ч\б сжатые векторные изображения предпросмотра, удаляю вотермарк, прогоняю через векторизацию Inkscape и получаю исходный вектор без малейших артефактов.

                        Старые мультики рисованы двумя техниками — акварелью\маслом\гуашью фон на который накладывается прозрачный целл с персонажами и статичной равномерной заливкой — персонажей можно овекторить и как угодно растянуть. Фоны — нет. Максимум можно получить их целыми в конкретной сцене где вычитая персонажа можно перекрыть на фоне все недостающие места.
                          +1
                          беру с платных сайтов ч\б сжатые векторные изображения предпросмотра, удаляю вотермарк

                          Обычно о таком молчат.

                        0
                        Сжал до ширины 500 px (потому что очевидно в данном случае уже был выполнен апскейлинг, нам это не нужно)
                        Ресайз до 25 дюймов в высоту с 100%-м подавлением шума.
                        Ресайз до оригинального размера.
                        Результат - небольшой
                        image


                        Даже с исходным разрешением картинка выглядит немного чётче. Однако можно и больше действий вложить.
                        Filter-denoise
                        filter-sharpen edges
                        Дальше как автор статьи писал — ресемплинг с сохранением деталей 2.0 (в этот раз без возврата на исходное)
                        Результат после ресемплинга
                        image


                        Результат с возвратом на исходный размер
                        image


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

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

                        Каждый раз, когда будет сложный рисунок, будет эпик фейл.
                          +33
                          Осталось сделать нейросеть, которая нарисует 4 сезон в плохом качестве.
                            0
                            Ой, промазал
                            +18
                            а самим ffmpeg не пробовали?
                            ffmpeg -i input.mp4 -vf scale=3840:-2 \
                                   -c:v libx264 -preset slow -crf 22 \
                                   -c:a copy \
                                   output.mp4

                              +9
                              Вот и мне думается, нафига фотожоп, если в ffmpeg выбор методов по богаче будет
                              … да и фильтры для мультов вроде-бы были вроде ворпшарпа которого тут было-бы за глаза
                              +2
                              Разница на глаз не отличается отличается от оригинала
                              +2
                              Прям захотелось немедленно проверить на первых 4-х сезонах Футурамы, но необходимость пирать Фотошоп остановила от немедленных действий. А что за версию вы использовали?
                                +1
                                Это СС 2018. Кажется, фичу с апскейлингом добавили в 2017-м.
                                  +1
                                  Ну во первых, есть триальная версия фотошопа
                                  А во вторых, месячная подписка стоит около 700 рублей — это фотошоп, лайтрум и что-то ещё. Вполне нормальная цена
                                    +4
                                    Справедливости ради, это годовой план. Так что ты всё равно будешь платить целый год, если пользовался месяц.

                                    Если хочется именно на месяц и только фотошоп, то это уже 1932 рубля.
                                      +2
                                      Выбираете годовой план с помесячной оплатой. Платите с виртуальной карточки. Оставляете на ней нулевой баланс. Адоб попытается списать с нее деньги за второй месяц и, после пары неудач, отменит готовую подписку.
                                        +12
                                        Если уже нарушаем договор, то не проще ли спиратить?
                                          0
                                          А мне просто не нравятся программы (кряки, кейгены и тп), сделанные непонятно кем, которые надо запускать с правами администратора.
                                          Фотошопом и лайтрумом я пользуюсь пару раз в год, разгребая очередную порцию фотографий после поездки какой-нибудь. Проще Адобу заплатить за эти разы.
                                        0
                                        Он только называется годовым. На самом деле он помесячный, в любое время можно отказаться, и платишь раз в месяц. И стоит он 644 рублей в месяц. Думаю, что почти все себе могут это позволить)
                                      +2
                                      7 дней пробный период
                                        +1
                                        Ты смотри, подзакрутили гайки… пару лет назад один месяц было…
                                          0
                                          Откуда инфориация про 7 дней? Мне три месяца назад дали 30, и в прошлом году дали 30 дней. В этом году я купил
                                            0
                                            Раньше был 30 дней, теперь 7. Информация из первых рук, только недавно накатывал пробную версию. Есть конечно вероятность что на разных ОС разный период, на винде я не проверял.
                                            Купили — в смысле оплатили подписку?
                                              0
                                              Да, на маке мне давали два раза 30 дней. Купил подписку
                                        +2
                                        Ну почему же. Та же waifu2x неплохо снижает количество артефактов и сглаживает ступеньки.
                                        image
                                          0
                                          Артефакты уменьшились, но лестницы остались.Плюс половина артефактов осталась как есть — правая (для него левая) лапа кролика и чуть выше нее.
                                            +1
                                            Инструмент, встроенный в фотошоп, называется не «Восстановление деталей», а «Сохранение деталей». Входные данные должны содержать максимально качественную картинку, а фотошоп в свою очередь старается сохранить качество, увеличив разрешение. Поэтому да, способ наиболее эффективен с современными мультиками. А предварительное удаление артефактов и лесенок — это работа для других нейросетей.
                                              0
                                              В том же Photoshop есть инструмент/фильтр Filter Camera Raw. В нем переходим на вкладку «Детализация» (два треугольника) и в графе «Уменьшения шума» двигаем (прежде всего) ползунок «Светимость». На нескольких разных картинках данного видеоряда нужно выбрать оптимальное значение и тогда просто добавить этот фильтр в список действий Action.
                                              0
                                              А это уже вторая проблема. Сложность вашего скриншота — в большом количестве артефактов MPEG-сжатия. Тут по сути нужен не только апскейл качественный, но и шумодав соответствующий.
                                                0
                                                А шумодав в итоге еще больше деталей зарежет. Выхода нет!
                                                  0
                                                  Шумодав, как и фильтр удаления блочности увеличивают PSNR, качество картинки, проще говоря.
                                            0
                                            Сработает только для рисованных мультиков. Фотошоп порезал кучу деталей изображения, особенно видно на артефактах кодирования, например нижняя стрелка часов или левая двойка. Да, границы разноцветовых областей стали четче, а однотонные фоны ровнее, но кроме мультиков такое больше нигде не встречается.
                                              +1
                                              Простите, но я не вижу, какие именно детали он отрезал. Вы о том, что картинка стала не так JPG-стой? А мне казалось, это фича. Без тестов на реальных кадрах нельзя сказать, как оно будет на самом деле.
                                              0
                                              Крутота!
                                              Интересно, а сколько займёт ресэмплинг фильмов? ведь там более сложная картинка в плане количества фигур и цветов…
                                                0
                                                Присоединяюсь к вопросу. Особенно для фильмов в разрешении 720х576.
                                                  0
                                                  Да столько же примерно, сложность фотошоп не слишком интересует, вопрос, хватит ли вам места на диске для такого…
                                                  +6
                                                  Кстати, в фотошопе из action можно сделать dropplet — это exe файл, который принимает в качестве параметра путь к изображениям и запускает для них нужный action. Можно использовать в .bat файлах, в контекстном меню проводника (send to) или с помощью drag'n'drop.
                                                    0
                                                    И обрабатывать по одной картинке, разбирая файл последовательно
                                                      0
                                                      Ну да, если для одних сцен подходит одно, для других другое или третье, сделать несколько дропллетов, повесить их на кнопки в directory opus и кусками фильм обработать. Так можно, например, раскрашивать старые фильмы.
                                                        0
                                                        А папку картинок он разве не проглотит?
                                                          0

                                                          Проглотит. Просто удобнее, не надо 100гиг.

                                                      +5
                                                      Можно автора попросить прикрепить 10 сек семпл до и после?
                                                        +2
                                                        Поддерживаю, интересно посмотреть, насколько результат темпорально стабилен.
                                                          +2
                                                          Что-то я не подумал. Спасибо, ловите!

                                                          yadi.sk/d/3TvUrOPQXS_Wrg
                                                            0
                                                            Спасибо, оч. круто получилось, как мне кажется. Единственное но — у меня, почему-то, возник какой-то странный дискомфорт на кадрах где движется фон.
                                                              0
                                                              Подтверждаю! Как-то в глазах зарябило… У меня такое бывало от разогнанных 30->60FPS фильмов иногда. С тех пор не пользуюсь подобным софтом, но прогресс наблюдать интересно.
                                                          +15

                                                          Вы не покрутили настройки waifu, думаю что удаление шума и профиль UpRGB могут дать результат лучше фотошоповского.


                                                          Ещё хотелось бы упомянуть Madshi Video Renderer — отрисовщик совместимый с многими видеоплеерами. С ним нет необходимости в конвертировании видео, только установить и раз покопаться в настройках проигрывателя. Если потянет видеокарта, то даже может нейросеткой NGU очень круто ресайзить. Там у него ещё есть удаление артефактов сжатия на нейросетях, удаление бандинга, да и вообще дофига всяких опций.


                                                          извиняюсь за большой скриншот

                                                            0
                                                            А может стоит попробовать потренировать waifu2x? И, кстати, как насчёт производительности?
                                                              0
                                                              Спасибо. Классная идея. Переделал картинку на рабочий стол в 4К. Стало реально лучше.
                                                              Интересно видеокарта уровня 1080 не потянет в реальном времени?
                                                              Нужен ускоритель нейросетей в который можно загрузить обученную сеть.
                                                              Думаю стартап с платой для улучшения мультиков/аниме который выпустит подобную карточку вполне может и взлететь.
                                                              Ведь давно есть SVP (SmoothVideo Project) который делает видео более плавным вставляя кадры. Можно прикрутить нейросеть которая будет еще и качество улучшать. Закинул любимый сериал запустил и через пару дней получил результат.
                                                                0
                                                                waifu2x не может улучшить аниме за исключением некоторых случаев. Надо доработать именно под аниме или взять другой продукт, где таких проблем нет. Но вот с артом waifu2x справляется превосходно.
                                                                  0

                                                                  Offtopic, а ещё Windows по умолчанию конвертирует фоновую картинку рабочего стола в JPEG: https://www.reddit.com/r/pcgaming/comments/6kry64/protip_windows_automatically_compresses_wallpaper/


                                                                  Единственный костыль, который заработал "в лоб" без сторонних программ: ПКМ по .bmp картинке и Set as desktop background в IE (Win7). Десятка вроде даже в PNG научилась, но тоже не всё так просто.

                                                                    +1

                                                                    Там всё очень сложно и не понятно. Ставлю png на фон, пару дней вижу png, затем начинаю наблюдать артифакты сжатия jpg, смотрю и в правду уже jpg, ставлю опять png, но через пару дней опять появляется jpg на фоновоц картинке. Причину так и не смог выяснить windows 10.

                                                                +3
                                                                Есть такой рендер-движок для видеопроигрывателей: 'MadVR' (win only)

                                                                В нём есть множество методов для увеличения.
                                                                Среди них есть NGU, нейросетевой. Правда его результаты не сильно отличаются от Super-XBR (тоже очень крутой).

                                                                Есть два варианта применения:
                                                                1. Если есть мощная видеокарта, можно апскейлить в проигрывателе в реальном времени
                                                                2. Или разобраться, как можно направить поток от рендера в файл

                                                                p.s. для поиска проектов по true-нейросетевому апскейлу гуглить надо super-resolution neural upscale. Например:
                                                                  0

                                                                  А ведь по такому принципу можно и 60 фпс сделать… делаем твиннинг двух картинок, результат улучшаем, собираем всё с правильной скоростью, профит?

                                                                    0
                                                                    Вообще-то нужно распознавать движущиеся объекты в кадре и дорисовывать фазы движения в дополнительных кадрах.
                                                                      +1
                                                                      Для этих целей уже есть SmoothVideo Project
                                                                        +1
                                                                          +1
                                                                          SVP это делает. В платной версии есть конвертер. И вроде бы он бесплатный под Linux. В Adobe AE вроде тоже что-то недавно (?) прикрутили на эту тему…
                                                                            0
                                                                            Пользовался им. С одной стороны и правда улучшает. С другой стороны артефакты иногда просто дикие. Для примера попробуйте посмотреть заставку «футурамы», особенно момент когда выскакивает название в начале, и буквы формируются. Там лютые косяки алгоритма.
                                                                              0
                                                                              Я и сейчас пользуюсь. А артефакты — ну а что делать?
                                                                                0
                                                                                Не пользоваться :)

                                                                                Хотя каждый решает за себя, конечно.
                                                                          +1
                                                                          Хм а для игр можно что-то подобно сделать?) Чтоб картинку на лету улучшало… хотя бы на 60 фпс
                                                                            0
                                                                            В fhd уже можно на калькуляторе играть в 60fps. Даже на нулевой встройке от интела в 20fps будет.
                                                                            Если так хочется играть то надо просто купить любую карту, а не придумывать костыли.
                                                                              0
                                                                              Речь о 4К.
                                                                                0
                                                                                1080Ti
                                                                                  0
                                                                                  Уже 2080 вышла вообще-то.
                                                                                    0
                                                                                    Да, а лучше наверное даже 2080. Правда на около-профильных геймингу ресурсах говорят, что даже 1080ti не во всех играх в 4к работает без просадок фпс (карты у меня нет и сам проверить не могу).
                                                                                    0
                                                                                    Вы с другого аккаунта пишите или вы догадались какое разрешение у пользователя выше?
                                                                                    Если 4к то как бы перед покупкой надо понимать что берешь. 4к гейминг сейчас очень дорог.
                                                                                    У меня, например, 2к + 2080 fe. В самых тяжелых проектах 60-70 кадров есть, но для 4к это были бы неиграбельные 40-50.

                                                                                    Nvidia недавно как раз представила технологию «на лету улучшало», называется dlss.
                                                                                      0
                                                                                      Конечно догадался. Это не сложно, учитывая заголовок статьи.
                                                                                        0
                                                                                        Ха, так и есть. Невнимателен был.
                                                                                        +2
                                                                                        неиграбельные 40-50


                                                                                        *Вспомнил детство с дай бог 20 фпс и заплакал...*

                                                                                        P.S. Не хотел вас задеть, просто как-то упустил момент, когда 40 фпс стали неиграбельными =)
                                                                                          0
                                                                                          Вот да. Еще б сказали, что киношные 24 fps (или телевизионные 25) несмотрибельны.
                                                                                            +1
                                                                                            Стоить учесть, что в киношных 24 ФПС — отличный, честный Motion Blur, а не то мыло, которое в играх. Плюс там нет необходимости прицеливаться в точку с быстрой реакцией.

                                                                                            Ну то есть я очень комфортно могу играть в Героев 3 на 12 фпс и совсем некомфотно — в КС или Пубжик.

                                                                                            И даже при таких условиях при панорамной съемке 24 кадрами (камера неспеша летит и показывает природу) видно строб, особенно в кинотеатре. И этот строб раздражает.
                                                                                              0
                                                                                              Ну вообще-то да, они не смотрибельные. Посидите хотя бы час за 144/165гц монитором, а потом посмотрите (попробуйте посмотреть) час фильма типа боевика. Вы вероятно вообще не сможете понимать что происходит из-за чуть ли не покадровой картинки.
                                                                                              Хм, мне начало казаться что вы просто иронизируете.
                                                                                                0
                                                                                                Во времена CRT-мониторов герцовка была выше (100-160 Гц в зависимости от видеорежима). И ничего, нормально боевики смотрелись.
                                                                                      0
                                                                                      В эмуляторах потихоньку появляются штуки, основанные на распознавании форм

                                                                                      Вот сеговский, например

                                                                                      Во Flashback получается современный хипстерский графон без пикселей, мыла и странных артефактов.
                                                                                        0
                                                                                        Nvidia DLSS, правда подход немного другой — рендерить кадр в меньшем разрешении а потом «растягивать» до 4к, но эффект тот же — больше фпс.

                                                                                        Звучит конечно хорошо, но не работает пока кажется нигде
                                                                                          0
                                                                                          Есть в последней Final Fantasy и 3D Mark.
                                                                                          0

                                                                                          Есть аппаратные постобработчики сигнала вроде Marseille mCable. Эффект варьируется в зависимости от исходной картинки. Особенно заметно на низких разрешениях.

                                                                                          0
                                                                                          Для игр не получится. Input Lag будет огромным.
                                                                                            +1
                                                                                            1 кадр?
                                                                                            0
                                                                                            Еще лучше было бы, если бы фотореалистичность картинки улучшало.
                                                                                            +1
                                                                                            Проблема только не в источнике, а в устройстве, что upscale делает для вывода на ретину.
                                                                                            У меня 50 дюймовый 4к телек, я там 720р от 1080р отличу, только если в лоб сравнивать, а ели просто включить фильм с достаточным битрейтом — не факт что отличу.
                                                                                              0
                                                                                              Вот тоже пытался найти отличия в предложенных выше семплах и не смог =(
                                                                                              15" 3840х2160
                                                                                                +2
                                                                                                Яндекс Диск воспроизводит оба видео в 1080p. Чтобы увидеть разницу, нужно скачать ролики и проиграть в своём плеере.
                                                                                                  0
                                                                                                  О! =) Спасибо. Теперь вижу разницу. Яндексу двойка за плеер )
                                                                                                    0
                                                                                                    Если вы на 15" видите разницу, то на стандартных 24-27 и подавно.
                                                                                                –3
                                                                                                Залогинился только что бы написать — что автор купил дисплей который не предназначен для просмотра видео и\или игры в HD1080 или 4k т.к. его разрешение не кратно 3840, на дисплеях с 3840 будет «гореть» 4 мелких пикселя вместо 1 большого и все будет выглядеть ровно так же как при просмотре на дисплее с разрешением 1080, у автора же «горит» неравное-нечетное число пикселей и вы никогда не доведете картинку до такого же вида как на дисплее с нормальным разрешением. Так что проблема вовсе не в низком качестве Рика и Морти — на нормальном экране ваше рукоблудие выглядит не лучше чем оригинал, а если проводить детальное исследование то окажется хуже…
                                                                                                  0
                                                                                                  Потому что у телевизора современного встроенный перекодировщик, который делает апскейл до 4к. Вы сравните 720р и 4к, разница будет, как говорится, на глаз.
                                                                                                  +4

                                                                                                  Позвольте предложить ещё такой вариант: сеть single-image-super-resolution-1011 из Intel OpenVINO:


                                                                                                  Исходная картинка (1920x1080): https://habrastorage.org/webt/z-/wn/yy/z-wnyyf2a33hbporlp-cmsz4t5w.jpeg
                                                                                                  Результат (3840x2160): https://habrastorage.org/webt/kx/3t/ng/kx3tngnwfxav7_rjps4tbzn95nc.jpeg


                                                                                                  Запуск сети ровно 1 секунда (980ms — 990ms). Ubuntu пишет, CPU: Intel® Core™ i5-4460 CPU @ 3.20GHz × 4, 16GB RAM.


                                                                                                  Пример обрабатывает только первый кадр. Если кому понравился результат — можно допилить до записи видео файла с помощью cv::VideoWriter.


                                                                                                  import numpy as np
                                                                                                  import cv2 as cv
                                                                                                  from openvino.inference_engine import IENetwork, IEPlugin
                                                                                                  
                                                                                                  model = 'single-image-super-resolution-1011'
                                                                                                  prefix = '/opt/intel/computer_vision_sdk_2018.5.445/deployment_tools/intel_models/' + model + '/FP32/' + model
                                                                                                  
                                                                                                  # Load a plugin.
                                                                                                  plugin = IEPlugin('CPU')
                                                                                                  
                                                                                                  # Copy single-image-super-resolution-1011.xml and do global replacement of numbers:
                                                                                                  # 1920 -> 3840
                                                                                                  # 1080 -> 2160
                                                                                                  # 960 -> 1920
                                                                                                  # 540 -> 1080
                                                                                                  # 480 -> 960
                                                                                                  # 270 -> 540
                                                                                                  
                                                                                                  w = 960
                                                                                                  h = 540
                                                                                                  print(h*4, w*4)
                                                                                                  
                                                                                                  # Load network.
                                                                                                  net = IENetwork(model + '.xml', prefix + '.bin')
                                                                                                  exec_net = plugin.load(net)
                                                                                                  
                                                                                                  cap = cv.VideoCapture('1080_sample.mp4')
                                                                                                  while cv.waitKey(1) != 27:
                                                                                                      hasFrame, frame = cap.read()
                                                                                                      if not hasFrame:
                                                                                                          break
                                                                                                      cv.imwrite('img.jpg', frame)
                                                                                                  
                                                                                                      frameResized = cv.resize(frame, dsize=(w*4, h*4), interpolation=cv.INTER_CUBIC)
                                                                                                      frame = cv.resize(frame, dsize=(w, h))
                                                                                                  
                                                                                                      blob = frame.reshape(1, h, w, 3).transpose([0, 3, 1, 2]).astype(np.float32)
                                                                                                      blobResized = frameResized.reshape(1, 4*h, 4*w, 3).transpose([0, 3, 1, 2]).astype(np.float32)
                                                                                                  
                                                                                                      outputs = exec_net.infer({'0': blob, '1': blobResized})
                                                                                                  
                                                                                                      out = outputs['129'].reshape(3, 4*h, 4*w).transpose(1, 2, 0)
                                                                                                  
                                                                                                      cv.imwrite('out.jpg', (np.clip(out, 0, 1) * 255).astype(np.uint8))
                                                                                                      break
                                                                                                  +3
                                                                                                  Почему JPG, а не PNG?

                                                                                                  Все же сколько в гигабайтах? Не думали использовать JPEG 2000 или WebP?


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

                                                                                                    –2
                                                                                                    Видео — последовательность кадров. Между ними нет никакой связи, по крайней мере в консьюмерских кодеках. Optical Flow, о котором вы говорите, при таких манипуляциях не страдает, потому что количество кадров и продолжительность видео не меняется.
                                                                                                      0

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

                                                                                                        0
                                                                                                        Если эти артефакты создал способ увеличения — да, особенно если это нейронная сеть, потому что нет гарантий в том, что она сохранит пропорции деталей со своими умными алгоритмами. Если вы в кратное количество раз увеличиваете изображение (то есть например 1080p в 2160p) — может только мыло появиться (информации-то новой в кадре не появилось), но никаких артефактов.
                                                                                                        +1
                                                                                                        Вы хотите сказать, что в развитии кодеков был сделан шаг назад? Ведь переход от сжатия отдельных кадров (mjpeg ) к дельтам от предыдущих кадров в своё время был прогрессом и позволял повысить степень упаковки.

                                                                                                        Кажется, вы всё же ошибаетесь. Смотрим описание H.264:
                                                                                                        Многокадровое предсказание… Использование сжатых ранее кадров в качестве опорных… Позволяется использование до 32 ссылок на другие кадры… Компенсация движения с переменным размером блока

                                                                                                          0
                                                                                                          Давайте еще раз: видео — последовательность кадров. В консьюмерских кодеках (тех, которые вы можете использовать без жутко дорогого железа в профессиональной среде) это отдельные изображения, объединенные в контейнер. Вы процитировали процесс сжатия экнодером видео: он выбирает i-фреймы (ключевые кадры), а потом рисует между ними другие кадры (b- и p- фреймы). Все они в итоге превращаются в последовательность типа (грубо говоря, для примера) I — P — B — B — B — P — B — B — B — I, каждый кадр — отдельное изображение. С видео как динамичным объектом, непрерывным, движущимся — работает только профессиональное ПО и профессиональные кодеки (или вообще их отсутствие в виде несжатых I-фреймов (где нет никаких B- и P- кадров)).
                                                                                                          Любое видео раскладывается на отдельные кадры и собирается обратно без каких-либо потерь качества (как визуально, так и по всяким шумомерам а-ля *SNR), потому что оно и есть отдельные кадры, как бы их не сжимали и не распространяли.

                                                                                                          Смотрите, в видео 30 фпс будет тридцать отдельных кадров. I, B или P в нашем случае без разницы. Вот типичное распределение кадров в видео x265 с пресетом slower:
                                                                                                          x265 [info]: frame I: 6, Avg QP:15.77 kb/s: 60673.84
                                                                                                          x265 [info]: frame P: 229, Avg QP:18.37 kb/s: 17777.54
                                                                                                          x265 [info]: frame B: 1133, Avg QP:28.17 kb/s: 2385.00
                                                                                                          Все 1133+229+6 — отдельные кадры, любой из них можно взять и увеличить, либо сразу все. Если частота кадров и продолжительность остались прежними, никаких странностей не будет.

                                                                                                          Ведь переход от сжатия отдельных кадров (mjpeg ) к дельтам от предыдущих кадров в своё время был прогрессом и позволял повысить степень упаковки.
                                                                                                          Он и повысил. Благодаря P и B фреймам. Но кадрами они из-за этого быть не перестали. Можете сами проверить — разберите 30fps видео на кадры и соберите обратно тем же ffmpeg с тем же фреймрейтом.
                                                                                                          Одна оговорка — смотря как вы его обратно в видео сжимать будете. Потому что кучка PNG это по-определению I-frame sequence.
                                                                                                            +1
                                                                                                            I — P — B — B — B — P — B — B — B — I, каждый кадр — отдельное изображение
                                                                                                            да ладно?

                                                                                                            P- и B-кадры — как раз разностные, P — со ссылкой на один предыдущий, B — на несколько (предыдущих и/или последующих). Это после разжатия они становятся отдельными изображениями, а в файле (или потоке) представлены как разности от тех на которые ссылаются.

                                                                                                            Поток только с I-кадрами по сути и будет MJPEG (впрочем, правильнее сказать — кодирование в MJPEG использует только I-кадры).

                                                                                                            С тем что будет 30 кадров при 30 fps я не спорю.

                                                                                                            Любое видео раскладывается на отдельные кадры и собирается обратно без каких-либо потерь качества
                                                                                                            да ладно? На ютубе при просмотре летсплеев зачастую на видео куча характерных артефактов сжатия заметна — и еще можно заметить что при движущемся фоне детализация падает по сравнению с моментами неподвижности.
                                                                                                              +1
                                                                                                              P- и B-кадры — как раз разностные, P — со ссылкой на один предыдущий, B — на несколько (предыдущих и/или последующих). Это после разжатия они становятся отдельными изображениями, а в файле (или потоке) представлены как разности от тех на которые ссылаются.
                                                                                                              Смотрите, если вы скормите свое видео ffmpeg-у и скажете разложить на PNG (то есть в i-фреймы) он сразу же посчитает количество кадров и все их превратит в I-фреймы, не делая разницы между тем, что в видео было i, что было b и что — p, потому что отдельные изображения могут быть только i-фреймами. Вы, возможно, путаете\не различаете процесс сжатия видео и разжатия. Ту же самую кучку PNG наложите поверх своего видео в редакторе видео — не будет никакой разницы. Я этим чуть ли не каждый день занимаюсь. Хотя признаюсь — проще использовать даже тот же uncompressed mov в yuv или rgb и не возиться с кучей картинок, их банально импортировать дольше. Если в видео 30 кадров, то между этими кадрами ничего нет. Опять же, не важно какие они фреймы — разобрать эти 30 кадров на 30 картинок и собрать обратно в секундное видео 30 фпс можно без потерь. Не рассуждая сейчас о способах сжатия картинок в видео — там потери будут, если это не i-frame only кодек.
                                                                                                              да ладно? На ютубе при просмотре летсплеев зачастую на видео куча характерных артефактов сжатия заметна — и еще можно заметить что при движущемся фоне детализация падает по сравнению с моментами неподвижности.
                                                                                                              Это банальное ограничение битрейта. Стоящему неподвижно изображению вполне может хватить 5 мбит\c или сколько там у твича. Чем больше движения в кадре, тем хуже качество — потому что большему количеству изменений в кадре нужно больше битрейта. H264, H265 и VP9 работают с макроблоками — если в каких-то нет движения, то там здорово экономится битрейт. Если движение везде — что-то сэкономить сложно. Но к вопросу конвертации видео-изображения-видео это не имеет отношения.
                                                                                                                +1
                                                                                                                Смотрите, если вы скормите свое видео ffmpeg-у и скажете разложить на PNG
                                                                                                                не вопрос, но причём тут ваше исходное утверждение «в консюмерских кодеках нет связи между кадрами»?
                                                                                                                Набор PNG — это как раз несколько нестандартный формат кодирования видео для «консюмерских» кодеков. Никто в здравом уме не использует такое ни для хранения видеофайлов, ни для передачи потока (вот когда станут общедоступны многотерабитные каналы и экза- и петабайтные хранилища, тогда может быть). Даже автор статьи изпользовал jpeg.

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

                                                                                                                Но при этом b и p фреймы декодеру приходится «дорисовывать», основываясь на соседних i-фреймах в контейнере. Если из контейнера взять только голый b- или p-фрейм, никакой ffmpeg не сможет из этого фрейма построить полное изображение.

                                                                                                                если в каких-то нет движения, то там здорово экономится битрейт
                                                                                                                — и за счёт чего же же оно экономится, по-вашему? За счет чего статичному изображению хватает низкого битрейта? Неужели за счет изменения степени сжатия каждого отдельно взятого изображения, независимого от соседних кадров?

                                                                                                                  0
                                                                                                                  Даже автор статьи изпользовал jpeg.
                                                                                                                  Очень зря. PNG как бы архивировать не требуется — «использовал» и удалил.
                                                                                                                  Неужели за счет изменения степени сжатия каждого отдельно взятого изображения, независимого от соседних кадров?
                                                                                                                  Мне казалось, что мы все это обсуждаем в контексте изначального комментария:
                                                                                                                  Это конечно интересный подход, но в нем не учитывается информация о связи последовательных кадров, т.е. о движении. Это может быть важным.
                                                                                                                  Никакой таинственной информации о движении и связях последовательных кадров не нужно для того, чтобы их апскейлить — нужно просто разложить видео на отдельные кадры, раз уж апскейлер работает только с изображениями.

                                                                                                                  По всему остальному вы правы — воспроизведение и сжатие файлов нуждается во всех этих кадрах. Если без пары b или p еще можно выжить (просто артефакты полезут), то без i уже все совсем плохо будет.

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

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

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

                                                                                                                      0
                                                                                                                      Согласен, здесь некорректно высказался:
                                                                                                                      Между ними нет никакой связи

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

                                                                                                                    Ну вот DNG используют.
                                                                                                                      0
                                                                                                                      Жесть.

                                                                                                                      нууу… тут можно придраться, что это не хранение и передача «готового продукта», а исходники. Вот, к примеру, фотографы raw хотя и хранят (и то не все), но в последующем повседневном обращении в Сети raw не встретишь.

                                                                                                                      Интересно, и какую длительность можно записать на одну карту (512G)? Так, говорят, в lossless по 7-8 Мб на кадр — при 60 fps где-то на полчаса получается. В принципе, не так мало.

                                                                                                                      Но где хранить такое, когда общий футаж фильмов перевалит хотя бы за полдесятка часов? В нынешних реалиях все равно получается — обработал, сжал, исходник выбросил. То есть «см. п. 1».
                                                                                                                        0
                                                                                                                        Писать по 400-500 мбайт/сек на карту памяти?
                                                                                                                        Не получится даже не столько из-за способностей карты памяти, сколько из-за пропускной способности интерфейса.
                                                                                                                          0
                                                                                                                          UHS-III до 624 МБ/с.
                                                                                                                          Но для raw видео эта камера использует карты CFast 2.0 (440 MB/s на запись).
                                                                                                                          0
                                                                                                                          Он там дальше на 1ТБ SSD пишет: RAW без сжатия — 35 минут.
                                                                                                                          Но где хранить такое, когда общий футаж фильмов перевалит хотя бы за полдесятка часов?

                                                                                                                          Ну, нужна какая-то хранилка на 10++ полок с 10—12 ТБ винтами ;)
                                                                                                                            0
                                                                                                                            нууу… тут можно придраться, что это не хранение и передача «готового продукта», а исходники.
                                                                                                                            Так в том-то и смысл, что любое сжатие ухудшает качество. Поэтому нужно количество этих сжатий минимизировать и на всех этапах (где это возможно) использовать не сжатый материал.
                                                                                                            +1

                                                                                                            Интересно, почему не взлетели векторные мультики?

                                                                                                              +3
                                                                                                              Флэш был популярен достаточно долгое время, когда интернет-каналы были очень слабые. И мультики на нём тоже делали.
                                                                                                                +1
                                                                                                                ранняя Масяня же
                                                                                                                  0
                                                                                                                  Собственно, изначально для мультиков он и предназначался. ActionScript появился только в пятой версии, в 2000 году.
                                                                                                                  0
                                                                                                                  Вот, да. Я наоборот, ждал появления 3D фильмов, которые рендерятся по принципу игр. А они даже «Масяню» убили, как формат. (
                                                                                                                    +2
                                                                                                                    ждал появления 3D фильмов, которые рендерятся по принципу игр
                                                                                                                    В некотором смысле игры и являются таким фильмом.

                                                                                                                    Собственно, единственный плюс рендеринга на стороне пользователя — возможность выбора пользователем точки зрения. Игры это и дают. Ну еще они дают нелинейность (вариабельность последовательности нарратива), но это отдельная фича, перпендикулярная выбору ракурса, и не требующая рендеринга у пользователя. Были и «интерактивные фильмы» — именно фильмы (и даже по ТВ, не говоря уже о DVD), и игры, рассказывающие историю строго последовательно — где камеру вертеть можно, а изменить последовательность сюжетных сцен нельзя (большинство шутеров таковы). Хотя в играх, заточенных на пассивное восприятие истории зрителем, чаще всё же эти две фичи совмещены — см, например, What Remains of Edith Finch, Vanishing of Ethan Carter.
                                                                                                                      0
                                                                                                                      Не единственный — рендеринг на стороне пользователя можно выполнять в нужном разрешении и без артефактов сжатия. Та же Масяня во флеше выглядит куда лучше, чем видео в YouTube. И с увеличением разрешения монитора разница всё заметнее.
                                                                                                                        0
                                                                                                                        Для чисто векторных данных — да, экономия значительна.
                                                                                                                        Для реалистичного же изображения все равно придется тянуть растровые текстуры, причём некоторую часть еще до начала рендеринга, что задержит начало воспроизведения.
                                                                                                                  +1

                                                                                                                  Берем сжатое видео.
                                                                                                                  Выгружаем ведро жипегов.
                                                                                                                  Апскейлим.
                                                                                                                  Пережимаем обратно в видео.
                                                                                                                  Наслаждаемся нормальным качеством.

                                                                                                                    +9
                                                                                                                    Берем фотошоп, создаем холст с размерами исходного объекта, прямо в него закидываем перетаскиванием видео, добавляем если нужно эффекты, апскейлим, смотрим прямо в Фотошопе если лень выгонять avi. Если комп мощный даже не тормозит. Я так когда то экранки убитого качества смотрел, с наложением фильтра Shadows|Highlites
                                                                                                                    habrastorage.org/webt/nf/wz/-h/nfwz-hslcnhsozwxmtqpm5rkpo8.jpeg
                                                                                                                      +1

                                                                                                                      Ничего себе. Надо попробовать в фотошоп засунуть видео. Такое мне в голову не приходило. Мсье — шаман.

                                                                                                                        0
                                                                                                                        GIF-ы, обычно, так и делают. Загоняют видео в фотошоп и оттуда экспортируют: там много настроек.
                                                                                                                    0
                                                                                                                    Это бы всё автоматизировать, а еще исключить всю работу с жёстким диском, думаю скорость должна подняться в разы.
                                                                                                                      +1
                                                                                                                      www.infognition.com/super_resolution_avisynth
                                                                                                                      Бесплатно, потоком, без промежуточных jpeg и Фотошопа.

                                                                                                                      Это то, что нашлось за минуту гугления.
                                                                                                                        0
                                                                                                                        Именно этот движок и хочу посоветовать, в виде Video Enhancer (при желании можно найти Video Enhancer 1.9.10.1, иначе Trial рисует водяной знак, в том числе и в Avisynth). Работает довольно быстро, использую его чтобы заливать 1080p видео на Youtube, в 4к там просто тупо больше битрейт.
                                                                                                                        0
                                                                                                                        А разве эффект Detail-preserving Upscale в After Effects не то же самое делает? И не нужно генерировать десятки тысяч изображений — MP4 или любой формат, который принимает AE можно напрямую импортировать в AE.
                                                                                                                          0
                                                                                                                          Он делает не совсем то же самое. В AE содержится первая версия «Сохранения Деталей», которая основана только на математике, а в фотошопе уже версия 2.0. С тестовым кадром ваш метод сделает следующее:
                                                                                                                          image
                                                                                                                            0
                                                                                                                            Да… Видимо, он все же больше «для общих задач», т.к. с обычным видео справляется достаточно хорошо, но контрастные мультфильмы с четкими линиями — несколько иной случай.
                                                                                                                          0
                                                                                                                          Подозреваю, что количество 4к апскейлов в ближайшую неделю увеличится вдвое
                                                                                                                            0
                                                                                                                            погодите, осталось дождаться объявления астрологов
                                                                                                                              +1
                                                                                                                              Объявление
                                                                                                                                0
                                                                                                                                Количество 4К апскейлов увеличится в 4К :D
                                                                                                                              0
                                                                                                                              Парку а бы и не па? Куча мульт-сериалов которые не против посмотреть в 4к, а и если даже не в 4к, то в фулхд тоже неплохо.
                                                                                                                              +5
                                                                                                                              Основная проблема видео — реальные кадры не являются независимыми, а ресамплер обрабатывает их как независимые изображения. Проблема может возникнуть, когда последовательные кадры обрабатываются несогласованно. Дело в том, что информация для восстановления изображений не берётся из ниоткуда. Она представлена в виде закономерностей в самом алгоритме. И вполне возможно, что на последовательных кадрах нейросеть может дорисовать изображения по-разному, что визуально может привести к дрожанию и мерцанию деталей.
                                                                                                                                –1
                                                                                                                                Ну к чему приплетать сюда нейросети? Объясните мне! Ведь можно написать обычные не нейросетевые фильтры, которые мультяшную графику такого стиля неплохо заапскейлят. Чтобы написать громкое название для статьи?
                                                                                                                                  +1
                                                                                                                                  Про какие конкретно «обычные фильтры» вы говорите?
                                                                                                                                    +1
                                                                                                                                    Тссс, не спугните :)
                                                                                                                                      +1
                                                                                                                                      Я имею ввиду фильтры, которые написаны руками. Я вот сходу могу предложить построить SDF по разным областям, разделенным edgedetection фильтром, поскейлить SDF bicubic и получить векторное изображение обратно. Гладкое, четкое, с антиалиазингом и прочими фишками. Я про то, что все скейлят мультики, которые и так можно неплохо поскейлить. А фильмы, например, старинные — слабо (я видел статьи и фотки, но почему-то мультики важнее)? А делать стереопары? А тут решение такой задачи с помощью нейросетей, котороая и без нейросетей нормально решается.
                                                                                                                                    +3
                                                                                                                                    Вы упускаете одну вещь. Автор текста ничего не писал. Он искал подходящий инструмент. И, внезапно, им оказался инструмент на основе нейросети.

                                                                                                                                    А так как текст сам по себе имеет ценность (в отличие от 100499 текстов с кликбейтными заголовками), то я бы сказал, что здесь громкое название почти оправдано (я вообще надеялся на какой-нибудь онлайновый сервис, но ладно).
                                                                                                                                    0
                                                                                                                                    можно еще 60fps сделать кстати
                                                                                                                                      0
                                                                                                                                      Согласен. 30 в секунду невозможно смотреть (хотя некоторые считают с точностью наоборот).
                                                                                                                                      Из доступных, butterflow показал себя весьма хорошо. Думаю, что на векторной графике он должен сработать отлично. Умеет работать на GPU через OpenCL.
                                                                                                                                      Правда теперь вам понадобится в 2 раза больше места на жестком диске и ещё в несколько раз больше терпения.
                                                                                                                                      Хотя вроде современные телевизоры и сами неплохо справляются с этой задачей.
                                                                                                                                        +1
                                                                                                                                        Можно, но нужно учесть, что в мультфильмах вообще рисуют в 12 fps (особенно в аниме), а потом сохраняют в видеофайл с 25/30 fps.
                                                                                                                                        +2
                                                                                                                                        Конечно, это было немного по-ламерски, что ли…

                                                                                                                                        Зато понятно и доступно.
                                                                                                                                          +1
                                                                                                                                          Попробовал раскукожить арт, оригинал которого тщетно пытался найти ещё лет 10 назад
                                                                                                                                          Арт
                                                                                                                                          image

                                                                                                                                          Разница между Ps и LetEnhance огромна. Если после Ps картинка осталась мыльной, то LetEnhance, похоже, дорисовывает текстуру. (хорошо видно через новую вкладку)
                                                                                                                                          Ps
                                                                                                                                          image

                                                                                                                                          LetEnhance
                                                                                                                                          image

                                                                                                                                          Compare
                                                                                                                                          image
                                                                                                                                            +1
                                                                                                                                            Интересный опыт! Но это закономерно, потому что инструмент фотошопа только старается сохранить существующие детали при масштабировании, а не добавить новых. Загонять в него изначально мыльную картинку — не вариант.

                                                                                                                                            А вот Let's Enhance и правда иногда старается добавить «от себя», и даже классифицировать поверхности (например, к фотографии бородача сервис применит отдельный алгоритм прорисовки волос). Там даже при загрузке есть такая опция, как «Добавление текстур».
                                                                                                                                            +1

                                                                                                                                            Интресно, только непонятно зачем лишние действия с аудиодорожкой — зачем её извлекать, зачем перекодировать в mp3 (что приведёт к потере качества)? Чтобы её не перекодировать, можно указывать -acodec copy. А чтобы не извлекать, можно на последнем этапе указать исходный видеофайл, чтобы ffmpeg взял аудиодорожку прямо из него. Только в этом случае надо правльно указать параметр -map, чтобы он не стал использовать видеоряд из этого файла.

                                                                                                                                              0

                                                                                                                                              Господа, а какой наиболее качественный метод порекомендуете для upscale JPG с фотокамер, с целью печати в большом размере?
                                                                                                                                              Даже если это займет сутки для одного кадра, главное качество :)

                                                                                                                                                0
                                                                                                                                                Ждем 8K upscale
                                                                                                                                                  0
                                                                                                                                                  А как быть с сильно пережатыми исходниками? Например видео сжатое Xvid кодеком? По идее после апскейла артефакты сжатия станут более резкими и заметными
                                                                                                                                                    0
                                                                                                                                                    Думаю, можно попробовать подобрать такие алгоритмы для фотошопа, которые смогуть удалить эти артефакты, а уже после этого производить апскейл. В любом случае, в фотошоп лучше загонять как можно более качественную картинку, чтобы получить налучший результат.
                                                                                                                                                    0
                                                                                                                                                    Может тогда поясните заодно один момент!
                                                                                                                                                    Почему на официальных релиза 4к картинка тёмная?
                                                                                                                                                    К примеру — скриншот 4k издания «Короля Льва»
                                                                                                                                                    image
                                                                                                                                                      0
                                                                                                                                                      Как всегда хабр ломает всё кроме текста(сколько лет этому багу уже), если акк не подтверждённый.
                                                                                                                                                      Пере выложите, и лучше под спойлер.
                                                                                                                                                        0
                                                                                                                                                        Скриншот сломан, но скорей всего дело в HDR.
                                                                                                                                                          0

                                                                                                                                                          Вот и у меня такое же чувство что дела в нём.

                                                                                                                                                            0
                                                                                                                                                            Пока у вас не пройдут модерацию первые десять комментариев у Разных авторов, так и будет резать html код. Этому багу уже черт знает сколько лет. И никак не поправят.
                                                                                                                                                            Под этой публикацией уже можно нормально выкладывать, т.к. модерации тут уже не будет.
                                                                                                                                                        0
                                                                                                                                                        А почему собственно сразу видеоролик не увеличить фотошопом, не разбирая его на кадры? PS CC умеет работать с видео как «с картинкой».

                                                                                                                                                        я не работаю с видео и не знаю весь зоопарк программ и возможностей в них заложенных, может быть есть какие-то программы/плагины для умного увеличения видео… для умного увеличения фото в свое время было много плагинов…

                                                                                                                                                        прошу прошения, если это кто-то уже предложил раньше.

                                                                                                                                                          0
                                                                                                                                                          Круто, это же можно кучу всего перегнать в хорошее качество! Можно ходить по каналам с старыми мультфильмами/фильмами и др., и предлагать перегнать им видео в более качественное, за копейку…
                                                                                                                                                            0
                                                                                                                                                            Повышение разрешения ещё не означает повышение качества.
                                                                                                                                                            Грязь с плёнки, неравномерность экспозиции, дрожание кадров кто будет убирать?
                                                                                                                                                              0
                                                                                                                                                              ИИ? Потом ему правда надоест и он решит стереть кожаных ублюдков с лица Земли, которые ни зарплаты, ни выходных не дают.

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

                                                                                                                                                          Самое читаемое