Comments 262
Очень интересно, спасибо! Приходится иногда и видео и изображения :)
Как только появляется видео — появляется возможность реального восстановления, масса ссылок и примеров даны.
OCR — это не к нам, но боюсь контурный анализ сейчас вчистую проигрывает нейросетевым подходам и там сильно все поменялось в последние 5 лет
N) в лучшем случае — статический объект.
Если сделать только одно фото, то увидим на нём размытый шарик.
Если сделать много фотографий за короткий промежуток времени, то из них можно вытащить больше информации:
1) сначала отбираются самые резкие фотографии
2) затем они «суммируются» в специальной программе
В итоге фотография планеты получается очень неплохого качества, как если бы это было одиночное фото с телескопа на порядок более дорогого.
Осталась мелочь — найти принтер с хотя бы таким разрешением и такой фотобумагой.
А есть ли доступные (ооткрытые и тп) программы/плагины для обработки старых фото?Безусловно:
www.google.com/search?q=old+photo+restoration
В целом результат по старым фото может быть лучше, если сканировать пленку правильными сканерами (которые снимают HDR и сразу строят маску царапин и грязи поверх и сразу вычищают все это). На западе такое есть давно, думаю и у нас подобные сервисы должны появиться. Результат с большой вероятностью будет заметно лучше даже ручной ретуши 8-битной картинки.
К такому лучше подходить индивидуально все же, т.е. фоторедактором каждую, вдобавок можно колоризировать если ЧБ
А можно поподробнее, с картинками Topaz vs LE, интересно понять что вы подразумевате под «дышащим» шумом.
То что nnedi3 плохо ресайзит — неудивительно, ведь это интерполяция.
Вопрос не совсем по восстановлению разрешения, но все же близок к теме.
Есть интересная статья от Интел по восстановлению очень темных кадров. Интересно Ваше мнение на сколько это может быть работающая технология.
У Интела — речь про обработку RAW до дебайеринга, это технологии на уровне картинки и скорее вопрос денойзинга. Характерно, что они с результатами с применением денойзинга не сравниваются. Потому и на архиве публикация.
Причем сперва казалось, что будет очередной срыв покровов. А в результате оказалось, что подобные технологии действительно существуют (хотя в фильмах действительно перегибают палку)
собственно восстановление с использованием предыдущих (а иногда и последующих) кадров
Типичное видео содержит средний битрейт 0.11-0.23 бит/писксель. Если Вы сможете выделить честный кадр, это уже будет JPG (сжатие, ЕМНИП, с помощью Фурье и прореживания полученной 2-мерной матрицы) — это скажем 0.45 бит/пиксель, ну может 1 (то есть при 0.11 бит/пиксель мы можем сохранить менее 25% кадров в качестве 0.44 бит/пиксель).
Конечно какой-то алгоритм начнет работу с этим кадром в качестве 1-3 байт/пиксель, но лишней информации Вы не получите. Можете какие-то нейросети заставить из фото разрешением 720x400 в сжатии JPG (взял условное качество 0.44 бит/пиксель), следующего за ним и предыдущего «полного» кадра выхватить информацию (на любом кадре теряется информация, но это может быть разная информация). Таким образом есть вероятность, что последовательность из 5-9 полных кадров даст получить какую-то картинку.
Вывод — Вам нужно проехать область обзора камеры видеонаблюдения (25 или 30 к/с) за 5 кадров, то есть 0.16-0.2 секунды:)
На реальном снятом видео сейчас модная тема — карты салиентности. Следующее поколение камер видеонаблюдения будет «больше бит» тратить на движущиеся объекты в ущерб качеству шумов в остальной части кадра. Это сделает рассуждения в подсчете бит на пиксель некорректным.
Я согласен, что биты на пиксель для видео штука весьма абстрактная. Каким образом задают понятие «информация о движении» между «полными кадрами» — это я не знаю.
По поводу этого:
Дело в том, что 2/3 информации в реальном изображении на самом деле информация интерполированная.
Ну может 50% инфы мы сохраним в видео типа motionJPG — закодируем в 4:2:2 каждый кадр. А упомянутый тут переход от h.264 к h.265 дает повышение степени сжатия, но за счет этого скажем для процессора Celeron 1005M видео Full HD HEVC было весьма сложным — требовалось использовать более подходящий плеер.
Если плавное движение, то интересно было бы иметь камеру, способную снять скажем 15 к/с, но с HDR.Сейчас модная другая тема — снять больше кадров с одной экспозицией и работать с ними. При одинаковой экспозиции одинаковый motion blur и кардинально меньше проблем с сопоставлением движения.
В следующей статье про это немного будет )
интересно было бы иметь камеру, способную снять скажем 15 к/с, но с HDR. То есть за секунду есть 5 групп по 3 кадра, каждый из которых делается с разным уровнем ISO.
Это уже минимум лет пять как есть. Hikvision, к примеру, называет эту технологию WDR. Только потом эти три кадра сливаются в один с компрессией динамического диапазона.
Видел в 00вые документальный фильм, который сильно меня удивил — речь шла о поимке преступника, совершившего преступления в 70ые. Полицейские пригласили эксперта, который должен был состарить фото подозреваемого на 20 лет, чтоб попытаться найти еще раз.
Старик эксперт — предложил бредовую (на мой взгляд) методику. Он начала лепить из пластилина голову преступника, приговаривая что только этот способ надежно показывает как человек старится.
Выглядело это ужасно — как какой-то обряд вуду. Фото маленькой пластилиновой головы было совершенно не похоже на фото молодого преступника. Я предсказуемо прошелся по поводу развода полицаев хитрожопым экспертом.
И был не прав. Преступника удалось задержать. По фото маленькой, сморщенной пластилиновой головы. И что самое удивительное — голова реально была похожа на пойманного старика — обеспечивая стопроцентное узнавание.
Это я к чему? На мой взгляд, можно «восстановить» — а точнее дорисовать человека с сильно пережатого видео со статьи — только делать это должен эксперт, а не алгоритм.
Божественные картинки в некоторых случаях (на которые точились) и «it does not work at all» в остальных.
«Эксперт», как вы его назвали, это тот кто настраивает алгоритм, так, чтобы в конкретно отдельном взятом случае,
Насколько продвинулись эти технологии именно в подобной обработке видео? Уже можно залить на сервер файл и натравить на него нейросеть, или надо все еще «маять вещь» руками?
Нейросети в два клика состарят онлайн любую фотографию.… Экспертам остается только выбирать наиболее удачные.Австралийский следователь в письме выше не зря переживал.
Проблема нейросетей в том, что «удачный» вариант будет категорически зависеть от того, на чем нейросеть обучали. Сейчас размер выборок, конечно, растет, но шансы на неудачное «додумывание» из-за которого сядет не тот человек все равно велики. Поэтому я последовательно выступаю за восстановление, хотя оно сложнее и математически, и технически, и занимается им намного меньше людей.
Но если оставить в стороне полицейский аспект работы.
Получится ли тренировать нейросети на намеренно испорченных образцах, выбирая те направления обучения, которые ближе подходят к исходнику?
Например: берется обычный видеорегистратор, и, в бытовых условиях, снимается номер известной машины. Искажения, которые превносятся в изображение — абсолютно реальны, но у нас есть на что ориентироваться, потому что известно, какой результат нужно получить. Это позволит отсеять случаи, когда 6 превращается в 8 и тд тп.
Старик эксперт — предложил бредовую (на мой взгляд) методикуДля человека, поверхностно знакомого с анатомией — в этом нет ничего бредового. Возрастные изменения — распределения жировой ткани и изменение эластичности кожи, давно изучены и легко прогнозируемы. Просто этот эксперт имел навык скульптора и предпочел пластилин — карандашу.
Но да, надо хоть немного уметь в биологию.
Ещё лет 5 назад принимал участие в разработке сопроцессора для смартфонных камер:
— оптическая стабилизация при встряске до ±1.5 градуса и 10-15 Гц
— геометричесакие искажения в случае тонкой (~5мм) и дешёвой оптической системы
исправляли практически без искажений
— исправление смаза слепой деконволюцией
10-15 Гц — это с каким коэффициентом ослабения (в dB)? и какой самый минимальный?
Насчет слепой деконволюции не понял, почему слепая? Наверняка есть гироскоп, т.е. данные о смазе из «первых рук» и с хорошим временным разрешением.
Выше это 3 разных случая:
- процесс встряски с достаточно большим углом и частотой (камера в нестабильных руках, катер, в машине) действительно компенсировался с помощью MEMS гироскопа, датчика Холла и PID-регулятора.
- геометрические barrel/pincushion искажения восттанавливались обратным преобразованием координат от какого-то среднего для всех линз закона искажения.
- деконволюция для деблёра слепая, т.к. обратная свертка с заранее выбранной и общей для всех изображений матрицей.
Super Resolution
github.com/topics/super-resolution
и там почти 200 репозиториев.
Будет медленно и покадрово, как заказывали! )
В аватаре, кажется, было не повышение разрешения, а гораздо более реалистичная деконволюция блюра.
Сразу скажу — работать для реального кейса большой ГРИП регистраторов не будет.
Почему не будет, что будет, а также как делают такие картинки для рекламы — тянет на отдельную статью.
Не хочу показаться грубым, но я ничего не говорил про видео-регистраторы.
Только то, что кадр "до" из Аватара вовсе не в маленьком разрешении. Он расфокусирован, при том совсем чуть-чуть.
А на хороших данных деблюр способен отработать очень хорошо. В этой сцене нет чего-то чересчур фантастического.
Деблюр дает очень характерный узор. И в Аватаре просто размыли, а потом вернули как было.
Деблюром мы тоже занимались (наши примеры):
можно смотреть на ноги, в т.ч. человека за игроком, на надпись на спине. Это реальное восстановление в реальном разрешении и видно что где-то движение поймалось нормально, а где-то нет. И характерный узор овершарпенинга при deconvlution появляется.
Я мягко намекаю, что там не все волшебно в жизни. И чудеса пиплу показывают неспортивными методами.
Ну… вторая чуть «поприятнее» для глаза. Но такой вид зачастую получается при простом «зашарпливании». Вроде как и приятнее смотреть, но по факту различаемость объектов не повысилась.
Впрочем это относится к большинству примеров — и в этой статье и в подобных статьях.
Здесь — исключение — надпись 1809 год,… но тут только стопкадры… посмотреть бы оригинал и конкуретные видео… По стоп кадру кажется, что алгоритм мог и «додумать» с вероятностью.
Ну… вторая чуть «поприятнее» для глаза. Но такой вид зачастую получается при простом «зашарпливании».
Скопируйте в фотошоп и попробуйте там поиграться его фильтрами ) Получится как-то так:
Можете сами взять картинки и еще поиграться, в стремлении наиграть больше, а заодно приблизить, посмотреть.
как простому потребителю, мне кажется что картинки одинаковые…
Да, это НОРМА! ) Реально очень много людей не видят разницы. Хуже всего видят разницу по резкости те, у кого зрение севшее, даже на большом экране. Именно поэтому в фильмах и показывают чудесное увеличение разрешения в 50 раз, что в этом случае его видит последняя бабушка. ) А 2 раза, которые сегодня максимальный «честный» результат на обычных видео, многим не видно. Поэтому по масштабу исследований примерно в 10 раз популярнее разные «улучшатели» и «додумыватели», чем существенно более сложные «восстанавливатели».
По стоп кадру кажется, что алгоритм мог и «додумать» с вероятностью.
Уже писал, что задумался о конкурсе с призом 10 тысяч рублей за Action фотошопа, который встроенными фильтрами увеличивает разрешение так, как это делает Video SR. Можно и 100 тысяч долларов, надо только правила продумать, чтобы нельзя было заточиться под конкретную картинку, а так — флаг в руки так «додумывать» (чтобы было виднее — ниже картинка из статьи, увеличенная в 2 раза))):
Если на consumer market рекламировать — хорошая акция ) Тут для алгоритмов додумывания золотистые листики — это как раз раз классический контр-пример, они все на них умрут (выдадут синтетически выглядящее нечто))).
Да, это НОРМА! ) Реально очень много людей не видят разницы.О чем я и говорил. Если картинки не увеличивать и не сравнивать попиксельно, то в подавляющем большинстве сюжетов — не отличить от обычного аншарпа.
Стоит ли овчинка выделенки?
Стоит ли овчинка выделенки?
Ровно этим вопросом постоянно задаются менеджеры компаний (не только эффективные).
И ровно по этой причине на «красоту» выделяются на порядок большие деньги, чем на восстановление. Красоту сразу видно, и она дешевле во всех смыслах (от денег до количества операций на пиксель).
К счастью или к сожалению с гербом — реальное видео, правда довольно удачное — плавное движение камеры, при котором много субпиксельных сдвигов.
Сделать правильный датасет под SR сложно, поскольку если делать его маленьким — то новые DL алгоритмы мгновенно на него заточатся, а если большим — это большая работа, которую обычно финасируют компании (организую заточку под свой кейс и свои особенности сенсоров/потоков).
Короче — если баловаться — это сравнение уровня пикабу может выйти ))), если серьезно — слишком большая работа.
а так — флаг в руки так «додумывать» (чтобы было виднее — ниже картинка из статьи, увеличенная в 2 раза))):
ну… я верю, что в видео, за счет того что картинка на разных кадрах разные пиксели «засвечивает» для видеокамеры и можно «вытащить» алгоритмом много пикселей. Но вот примеры пока не увидел яркие. А улучшение четкости… ну вроде как лучше… но не «вау» !))
А про просто статические картинки и «умные деблюры» — более скептическое отношение.
И оно великолепно заходит! (даже если реально не работает и чистый фотошоп или фантастика)))
А то, что реально поднимает разрешение и реально восстанавливает исходный сигнал как-то побочно развивается и даже иногда получает финансирование ) Изредка )
А дальше даже инвесторы приходят. Задают вопросы. Но как только осознают сложность задачи восстановления — вежливо прощаются )
Ага. Для красивых картинок обычно делается в фотошопе размытие по диску и результат бережно сохраняется в PNG, а потом деконволюция запросто его обращает. В реальных изображениях задача посложнее:
- Трудно найти функцию размытия, которую нужно обратить. Это грубый перебор с несовершенной проверкой качества получающегося изображения. Даже в простейших случаях: пятно блюра обычно некруглое, смаз неровный.
- Функция размытия отличается для разных точек изображения. Объекты в кадре находятся на разной глубине, движутся с разной скоростью.
- Краевые эффекты по границам изображения и объектов.
- Неидеальность исходника. Типичные алгоритмы сжатия удаляют малозаметную глазу, но важную для деблюра информацию с изображения. Плюс блочность и шум жипега. Вообще говоря, даже если сжатия нет, шум квантования при большом размытии сильно повлияет на результат.
- Маленький диапазон яркости SRGB, когда все значения обрезаются до 255, следовательно звон вокруг белых пикселей.
Кажется я понял. В рекламных целях делается какой-то идеальный блюр, который потом благополучно убирается.AngReload очень хорошо ответил.
Основной чит — это размыть руками с известной функцией размытия. И можно восстанавливать просто обалденно.
Основной источник информации там — это алиасинг — проникновение высокочастотной информации в кадр при его дискретизации. Субпиксельные сдвиги поднимают частоту дискретизации, чем самым позволяя достать эту высокочастотную информацию. То есть для суперразрешения необходимо два фактора: и сдвиги, и алиасинг.
Высокочастотная информация теряется из-за несовершенства оптики и расфокусировки, а также на физическом антиалиасинговом фильтре — рассеивающей плёнке перед матрицей. Поэтому хорошие результаты можно получить только на синтетических изображениях, но не на реальных. И если нет алиасинга, то информацию восстановить не получится, только дорисовать.
Мы замеряли частотные характеристики камеры одного из топовых смартфонов в идеальных условиях для монохромной камеры — получили максимально возможное повышение реального разрешения всего в 1.3-1.4 раза. Для цветной камеры всё ещё хуже. Есть нет доступа к RAW, то штатный дебайер портит высокочастотную информацию, делая её непригодной для дальнейшего использования. Есть же доступ к RAW имеется, то на выходе получаем двойной геморрой с восстановлением цвета по нерегулярной сетке.
Вывод: при современных разрешениях камер повышение разрешения с помощью многокадрового суперразрешения бессмысленно. Зато можно эффективно понизить уровень шума.
получили максимально возможное повышение реального разрешения всего в 1.3-1.4 раза. Для цветной камеры всё ещё хуже. Есть нет доступа к RAW, то штатный дебайер портит высокочастотную информацию, делая её непригодной для дальнейшего использования. Есть же доступ к RAW имеется, то на выходе получаем двойной геморрой с восстановлением цвета по нерегулярной сетке.Вы до конца дочитали? Видели что сделал гугл в Pixel3? ) Ровно то, о чем вы пишите. И довольно успешно. И не только в плане шумов.
Но инженеры там хотят, чесслово! ) И даже с камерами активно экспериментируют!
Сейчас камеры быстро совершенствуются и у топовых моделей реально большая конкуренция по качеству фото. Менеджеры боятся реверс-инжиниринга, надо полагать.
Можно прогнозировать через какое-то время произойдет то же, что и с фотоаппаратами, т.е. сделают возможность RAW отдать и будет с чем работать. Пока запрос на RAW, очевидно, мал.
Или проблема в софте, тогда возникают такие рецепты:
как же добавить поддержку RAW на Xiaomi Mi 6, где официально снимать фотографии в этом формате нельзя.Даже в дешёвом смарте возможность есть.
В двух словах объясним, как это сделать, если у вас уже есть рут. Для этого всего лишь нужно дописать строчку “persist.camera.HAL3.enabled=1” в системном файле build.prop.
Samsung Galaxy начиная с S6 умеютВы имеете ввиду принципиальную возможность после перепрошивки?
В том же Galaxy s9 возможность съёмки в раве из коробки маркетологи выпилили. Как раз-таки из-за этого проклятого
пользователи — и это тоже норма — любят, чтобы была максимум одна кнопка «включить»
Поэтому, т.к. мне очень не хотелось перепрошивать новый телефон — взял себе предыдущую модель, которая умеет в raw без плясок с бубном.
Я на 95% уверен, что на S9 можно установить например это, без перепрошивки и рута, и будет DNG.
Многие готовы были бы подождать сколько угодно, чтобы дать новую жизнь своим старым ценным видео. Но почти все эти алгоритмы дальше PDF не ушли, нет готового инструмента для запуска.
По поводу второго раздела с SR из нескольких кадров фото: это есть уже из коробки с 2017 года у многих фото-производителей, например у Olympus и Sony это называется Pixel Shift Multi Shooting, всё точь в точь как описывает Гугл. Для остальных уже лет 10 это можно делать в Photoacute или Photoshop через объединение слоёв.
например у Olympus и Sony это называется Pixel Shift Multi Shooting, всё точь в точь как описывает ГуглС интересом читаю! Единственное — пока не увидел, сдвигают ли они сенсор, если камера на штативе, а так — да, это похоже оно. Спасибо!
Для остальных уже лет 10 это можно делать в Photoacute или Photoshop через объединение слоёв.Photoshop Action в студию! ) Боюсь, что через слои сколь-нибудь заметно разрешение поднять не удастся. Шумы — да.
Ну и здесь интересно решение из коробки на сравнительно слабом по вычислительной мощности устройстве, конечно.
Но вообще этой дорогой уже идут все производители: www.bhphotovideo.com/explora/photography/tips-and-solutions/pixel-shift-shootout-olympus-vs-pentax-vs-sony-vs-panasonic
Photoacute же есть на rutracker.
Разработка российская. Там у них есть ссылки на научную базу и статьи. Программа давно не обновлялась по причине того, что сейчас многопиксельных камер полно, а жаль. Я ей пользовался много лет и работала она просто отлично. Пользовался бы и сейчас.
Все шансы, что оно разовьется на профессиональную съемку как минимум неподвижных объектов.
www.youtube.com/watch?v=avo3LRTWU3k
Видимо, тут весь прикол в том, что атмосферные искажения имеют довольно плавно изменяющиеся вектора движений, и поэтому оптический поток можно построить довольно точно.
Именно чтобы субпиксельные сдвиги кто-то обрабатывал с повышением разрешения — не слышал, хотя может кто и сделал, не слежу, если честно.
Применяют. Если разрешение оптики настолько велико, что звёзды проваливаются в один пиксель, то можно увеличить разрешение именно таким способом:
www.astrosurf.com/buil/us/spe9/lrgb3.htm
«Сделал кадр с выдержкой 1 секунда, сдвинул камеру на 0.5 пикселя вправо»?Пропустил в большом потоке ваш вопрос… Есть движение воздуха разной температуры, дрожит земля (особенно если в городе или в молодых по геологическим меркам горах). Когда у вас телеобъектив — там это все влияет сильно и идет дрожание (от земли — равномерное по кадру, от воздуха — неравномерное). И точно определить, насколько у вас сдвинулась картинка, куда и каким образом это компенсировать — большая история. Существуют целые семейства алгоритмов, которые разными методами (одни — для длинной выдержки, другие — для пачки кадров с небольшой и т.д.) компенсируют эти проблемы, кардинально повышая качество результата.
.
P.S. С замиранием дыхания ждал — что же с запросами полицейских, наших и международных???
Помогли ли им или послали?
Облом… Осталось как интрига… :-))))
Но в любом случае нужно четко понимать, что текущее восстановление — это, как правило, увеличение разрешения в 2 раза. Реже в некоторых случаях, когда исходных материал не сжимался или почти не сжимался, речь может идти о 3-4 разах. Как видите, это даже близко не 100-1000 раз увеличения из фильмов, когда 1,5 пиксела убитой шумами ночной записи превращаются в превосходного качества номер машины.
Более того — сжатое, а тем более сильно сжатое такими методами вообще не восстанавливается, там другие нужны, сложнее.
А им обычно сильно сжатое надо… И не в 2 раза, а больше…
Не помогли, короче, им русские хакеры в этом конкретном случае. Облом-с вышел… )))
железо, которое в состоянии строить карту motion estimation с четвертьпиксельной точностью есть в любом смартфоне с поддержкой H.264
Смартфонное железо ищет движение в малой окрестности малых блоков, подбирая вектора движения по критерию минимизации SATD. Т. е. ищет те блоки, которые минимизируют кол-во бит на компенсацию ошибки предсказания и хранение самого вектора движения. Это близко, но не совсем true motion. Кроме того, есть сомнения в качестве «четверть-пиксельности», т. к. 8-тапные свёртки для вычисления четверть-пиксельных значений сильно нагружают шину памяти.
Примеры кадров с чтением года в надписи с гербом — там реальное разрешение или уменьшенное для статьи?
Как я понимаю — бОльшая часть фотографий в начале, прошли через фильтр повышения микроконтраста в высокочастотной области спектра?Неправильно понимаете. )
Попробуйте микроконтрастом восстановить все кончики в короне между флагами или дырку нуля в 1809 и вы поймете, о чем выше шла речь )
Примеры кадров с чтением года в надписи с гербом — там реальное разрешение или уменьшенное для статьи?Реальное. На здании специально кликнуть можно, чтобы реальное открыть.
Но примеры со зданиями habrastorage.org/webt/0a/-x/0z/0a-x0zj47mmkgsa79aiojqtrfco.gif и людьми habrastorage.org/getpro/habr/post_images/4bd/7bb/3da/4bd7bb3da22d2904311d2da762331b5e.gif — очень похожи на обычное повышение микроконтраста.
Я сейчас разглядел гифку со зданием на очень большом разрешении. Действительно, разница с обычным аншарпингом сильно заметна. Но только при большом увеличении. При том размере, что в статье — ничего не разобрать, зато хорошо видно вот так:
Возможно стоит добавить в статью подобные примеры, потом что без увеличения — выглядит как аншарп.
Справедливости ради заметим, что профессиональные фотоаппараты тоже на месте не стоят и, очевидно, что через какое-то время все эти технологии там тоже появятся.
Уже появилось, беззеркальные фотоаппараты Олимпус и Панасоник, уже умеют использовать 5- осевую стабилизацию изображения для создания снимков с супер разрешением. Например Olympus OM-D M5M2 с матрицей в 16 МП умеет создавать снимки с разрешением в 40 МП путём сдвига матрицы.
Тем не менее, SR в профессиональных фотоаппаратах должно скоро появиться: хотя бы для уменьшения шумов при низкой освещенности и увеличения резкости фото.
Если я правильно понял, то подобная технология технология уже используется как минимум в Pentax K-1 под названием «Pixel Shift».
подобная технология технология уже используется как минимум в Pentax K-1 под названием «Pixel Shift»Да, сейчас обновлю. Причем у Pentax K-1 чуть не у единственного нормальная обработка движения, т.е. можно движущиеся объекты в этом режиме снимать.
2. Есть ли значительные различия в SR с помощью CCD и CMOS камер?
2. конечно, при учете сдвига и байеровского паттерна. Т.е. алгоритм нужно тюнить под другой вид сенсора
2. Давайте для простоты считать матрицы монохромными без зазоров между пикселями и с одинаковым откликом число фотонов-заряд у пикселей, так оно как-то уютнее :) Можете кинуть ссылку на какой-нибудь алгоритм, который учитывает, что у CCD считывание кадрами, а у CMOS строками? Если у CMOS-камеры есть burst mode, на построчном считывании можно попробовать отыграть или число кадров, или необходимое на расчёт время.
Причем совершенно не ясно, это реальная работа или рекламная карточка.
Существует точка зрения, что все эти миллионы статей про Super Resolution — это одно большое надувательство ). С ней невозможно спорить )))
Добавлены ссылки на SR в профессиональных фотоаппаратах.
я лишь про то, что бОльшую часть примеров можно воспроизвести в фотошопе путем последовательного применения привычных фильтров (да, ручного, но простого), что действительно выглядит как надувательство, потому что не являет собой ничего необычного.
У меня другая точка зрения по этому вопросу )
Я тут осознал, что можно делать конкурс — сулить 10000 рублей тому, кто приведет Photoshop Action, переводящий левую картинку в правую (это к вопросу о примерах), причем умеющий так делать и на других картинках: )
Да, она резче, но ровно потому, что на ней благодаря восстановлению Video SR реально появились детали. И у меня сильнейший профессиональный интерес пользователя фотошоп с 25 летним стажем — какими «привычными фильтрами фотошопа» это можно сделать )))
Автор этого алгоритма не зря покинул нас и сейчас работает в Google DeepMind, с кондачка к счастью или к сожалению, эта задача не решается.
пользователя фотошоп с 25 летним стажем
Ну хочу вмешиваться в столь интересные диалоги но фотошопу меньше 25 лет.
Во-вторых, если пробежаться по вашей же ссылке на сколар, то создаётся впечатление, что подавляющее большинство статей по запросу super resolution посвящены вовсе не восстановлению оптического изображения с повышением разрешения, а либо разного рода микроскопии, не обязательно оптической, либо методам обеспечения высокого разрешения (ещё до снятия самого изображения).
Заговор? )
Миры практически не используются в статьях про SR! )
Как это не используются? Например, берём изображение миры, принимаем её за референс, двигаем-даунсамплим-зашумляем — моделируем входные данные, применяем алгоритм SR и получаем шикарнейший результат. Или берём нейросетку, обучаем её на мире, чтоб полоски красиво рисовала, даём на вход хрень, на выходе имеем конфетку и рапортуем о многократном повышении разрешения.
Абсолютно правильный ответ Spaceoddity!
И, главное, маркетинг большое спасибо скажет. И чиселки увеличения разрешения рекордные и картинки научно выглядят. Срочно везде пишем, какая у нас уникальная технология! )
Именно поэтому если на мирах показывать — грамотный народ почему-то недобро коситься будет )))
Хотя в целом миры — очень полезный инструмент, кто бы спорил.
По моей ссылке там сцена где есть участки разного типа, включая миру, и например такие сложные объекты как трава и волосы, там как раз хорошо сравнивать как pixel shift в современных камерах справляется с разными типами объектов. (Вы можете выбрать камеры и участок изображения)
На "траве", например, не только нет заметного улучшения, но появляются артефакты.
Видно, что одна травинка на 3 штуки распадается.
Мы в свое время, когда делали датасет с волосами, накрывали фотоаппарат и сцену специальным коробом, чтобы не было движения воздуха (которое портило качество фото).
Замечательная статья. Приятно получать информацию «из под пера профессионала».
Желаю вам дальнейших успехов.
Есть ли какой-то софт, который может взять 2-5 RAW-фотографий, сделанных последовательно с рук (сцена одна и та же), и увеличить итоговое разрешение / убрать смазывание?
Тут предлагают много программ для стакинга:
www.outdoorphotographer.com/blog/star-stacking-for-pinpoint-stars-and-low-noise
Если лень фотошоп, то Photoaccute.
www.flickr.com/gp/131045386@N06/s6ANp5
Слева — фото луны в зените, и без стекла, повернуто на 45 градусов. Справа вверху луна над горизонтом и снимал через стекло. Снизу — ручная деконволюция, самый лучший результат которого удалось достичь. Я вначале делал деконволюцию, и только потом понял что виновником оказалось стекло, которое значительно понижало резкость.
Но раз уж в этом обсуждении можно углубляться в технические детали, то у меня вопросы технические:
1) Восстановление движения — это подходы типа DTW / ShapeDTW?
2) Еще интересно насчет деконволюции — есть ли какие-то качественные источники и практические примеры, где можно было бы руками поделать оптимизацию? Я так понимаю, что деконволюция — это то же самое, что определить импульсную характеристику артефактов и вычесть её?
3) И общий вопрос: применяются ли здесь какие-либо подходы, придуманные для киномонтажа?
И можно кидать в топку тысячи статей, которые пишутся по открытым базам, потому что в продакшене идёт борьба за другой качественный уровень алгоритмов, по своим базам и т.д.Все ровно так. С точки зрения практического применения примерно 97% статей — увы, мусор.
1. Нет, современный motion estimation
2. habr.com/ru/post/147828 — примеры, есть репозитории на гите
3. Видимо имеется ввиду post-production фильмов. Это сильно другая область. Там алгоритм в 2000 раз медленнее реального времени с ускорением на GPU — норма, сегодня все студии сидят на render farms + норма, когда много данных задается или правится руками. А тут все же речь идет про более быстрые и более автоматические подходы и речь в первую очередь про восстановление.
Максимум что можно сделать — это убрать шум и сделать чёткие контуры, если они были такие на исходной картинке.
По крайней мере картинки с чёткими контурами намного лучше увеличиваются, чем с размытыми контурами, а хотелось бы как раз получить чёткие контуры из размытых.
Кстати, камера слегка дрожит даже и будучи укреплена на самом лучшем штативе. На 4К видео с дешевой камеры от Блэкмаджика от кадра к кадру стабильно сдвиг порядка 1/8 пиксела, а от минимума к максимуму — почти 1/4. Это дает очень интересный эффект — резкое увеличение шума на границе яркости, шум существенно выше, чем и на светлом и на темном участке. Вот чистый шум умноженный на 10, для лучшей видимости
Это, кстати, может быть использовано для автоматического выделения синтезированных частей изображения. Нужно только иметь с десяток кадров с неподвижным объектом. Впрочем, в моем примере шума «чистое» изображение строилось по 300 кадрам ;-)
На английском планируем.
Дрожание в пикселах зависит от FoV объектива. Если широкоугольным снимали со штатива — то дрожания почти не будет. А так — да, много для чего оно полезно может быть )
Но должны быть статическая сцена, полупиксельные сдвиги и правильный алгоритм. Выдержка, если движения в сцене нет — под сцену, лишь бы одинаковая. Выше человек описывал подобную съемку пейзажа с софтом для астросъемки. Если снимать с небольшим FoW — полупиксельные сдвиги гарантированы даже на штативе.
Я сам когда-то копал тему Noise Shaping, Dithering и всего такого в мире цифрового звука. Одно дело — теория, а другое — услышать собственными ушами звук, уровень которого ниже (что-то порядка 1...2 дБ) полки шумов. Шум-то оказывается «модулированным» — отсюда мозг и «вытягивает» сигнал.
В принципе, это общее место в теории информации. Что видео, что аудио, что текста, что архиваторов.
audiophilesoft.ru/publ/theory/why_44100/6-1-0-281
А на момент создания следующих поколений цифрового звукового оборудования, техника уже позволяла выжать чуть больше — 48кГц, хотя как по мне, Сонька с сотоварищами специально пошли на эти искусственные барьеры между CD, MiniDisc и студийного оборудования из копирастически-коммерческих соображений. Интернет и МП3 всё-равно всех побороли, а мы теперь вынуждены жить с кучей форматов, каждый из которых «тянет» наследие предыдущих, упиравшихся в пределы железа.
Короче до боли всем знакомая история с легаси в ПО.
Аналоговое аудио записывается путем его дискретизации 44 100 раз в секунду, а затем эти выборки используются для восстановления аудиосигнала при его воспроизведении.
И я всегда думал, что эта величина является ссылкой на терему Котельникова.
Так как человек явно не слышит звук 22050 Гц, то такой частоты дискретизации вполне хватает. А уже «наследие аналоговой эры» нужно знать для того, чтобы понять, как сигнал с частотой дискретизации 2*fmax будет преобразован в электрической цепи и пойдет на микрофон.
Но конечно у нас есть нелинейные системы, может мы при частоте звука 8 кГц попробуем воспроизвести третью гармонику — тогда 48 кГц нам лучше подойдет.
Для бытовых устройств специально задавали частоты дискретизации 32 или 48 кГц, чтобы не переписывали CD в цифровом виде. Тогда интерполяция была для простого смертного сложной задачей.
Интересно, если сделать снимок массивом камер (4 штуки: 2 по вертикали, 2 по горизонтали), можно ли эти данные рассматривать как «видео» и использовать для суперрезолюции? Так четырьмя дешевыми камерами можно было бы получить одну, но хорошую фотографию :)
Я интересуюсь данной темой в контексте моей статьи habr.com/ru/post/414877
Для построения карты глубин, обычно, чем «шире» — тем лучше. А вот для SR может и наоборот
Конечно, если есть желание, можно вытащить PSF камеры, например, фотографируя различные паттерны.
Там как раз взяли изображение героя снятое камерой видеонаблюдения в обычном магазине, естественно «улучшили и увеличили». Но этого им было мало, так-как у героя был интересовавший их пакет в руках. При этом камера смотрела на его ребро.
Но это не помешало супер-пупер алгоритмам восстановить 3д модель пакета, да еще и с рисунок на его сторонах, которые не попали в кадр :))).
Короче киношникам еще есть куда двигаться.
Есть дома записи сделанные в mjpg формате, качество и битрейт не зарезал. Но разрешение всего 640*480. Есть сейчас софт способный вытянуть разрешение побольше без урезания деталей? Я так понял нужен софт с работой анализа кадров вперед и назад. Пускай хоть неделю считает.
github.com/topics/super-resolution
Но если попробовать — будет хорошо видно, что с работой со сжатым видео там пока большие проблемы. Хотя сжатые мультики уже очень прилично обрабатывают и еще красивые примеры уже есть. Почти все примеры — Single Image.
Просто у камеры видеонаблюдения в подъезде разрешение совершенно случайно оказалось как у телескопа ХабблКстати говоря, у телескопа Хаббл довольно долго разрешение было 640х480 (или около того), поэтому сравнение неуместно =)
А насколько там постоянный шум при нескольких прогонах считывания?
У VHS аналоговое считывание, как следствие — целая пачка косяков как с самим сигналом, так и с неточным принятием сигналов синхронизации и т.д.
Сегодня совершенно реально сделать алгоритм, ориентированный на VHS, который бы по 10 прогонам оцифровки мог бы очень значительно поднять качество (в первую очередь за счет понижения шума), в том числе несколько поднять разрешение на сценах с равномерным движением фона. Это хорошая новость.
Другое дело, что заточку под такие кейсы (в первую очередь это обработка сдвигов из-за плохой синхронизации по строчкам на слабом сигнале осыпающейся кассеты) вряд ли кто оплатит, а программисты (я уж молчу — ресечеры в области современной обработки видео) сейчас нарасхват. Это плохая новость )
Как-то так. )
В принципе начиная с какого-то момента сложность создания технологии постепенно понижается (из-за многих факторов, но в первую очередь из-за развития открытых библиотек) и становится возможным сделать open source реализацию.
Например, только за последний месяц (!) количество репозиториев Super Resolution на гитхабе приросло примерно на 7%. Понятно, что когда появляется реализация быстрых качественных алгоритмов, грамотному человеку собрать из них что-то заточенное на узкую задачу становится проще.
Это еще одна хорошая новость. )
Чтобы делать три и более захвата нужно чтобы на ленте была нетленка класса Феллини.
Столяревского — CCD, SuperTemporal почти везде, Muksun не везде подошел.
MSU — Какой-то из deblocking-ов. Это было уже оцифрованное домашнее видео. MSU Smart Brightness and Contrast — после того как сам бегал с камерой при отвратительном освещении.
MSU Logo Remover — даже не помню для чего использовал. НО! Этот бы фильтр впилить в цифровые приставки — а то от этих лого экраны выгорают.
Но! Через некоторое время перестанут быть доступны работающие видеомагнитофоны. (У меня не включался три года. Вопрос: включится ли?)
Как ни странно, но CCD и SuperTemporal на выходе дают достаточное качество.
Захватывать нужно в максимальном для карты видеозахвата качестве, cохранять в Лагарих или MSU, резать на сцены и долго, очень долго подбирать положения ползунков в фильтрах. А потом еще дольше обрабатывать все это, так как при пяти-шести фильтрах в VD скорость обсчета может упасть до 0,5 кадра в секунду, потому-что GPUшных фильтров для VD практически нет.
И очень важно, внимательно отнестись к шнурам, я нарывался.
...да не совсем, я эту тему курочил ещё лет двадцать тому, и не сколько ради VHS, сколько ради квадруплекса, и иже с ним динозавров, ибо там было много уникального контента представлявшего большую ценность, а некоторые технические особенности ранних видео магнитофонов делали их мало совместимыми даже в лучшие их годы, ну а если с плёнкой что, так это полный швах.
Беда в том, что видеосигнал на выходе магнитофона, имеет мало общего с тем, что записано на ленте, и является результатом работы многих систем автоматического регулирования, при записи и воспроизведении сигнала. Эти системы не идеальны и их вводят во искушение различные проблемы с плёнкой. И сколько видеосигнал не оцифровывай, можно удавить лишь шум, а вариативность "траектории чтения" не велика.
Решение техническое, оно очевидно и не сложно, данные с него разобрать тоже много ума не потребуется, особенно сегодня. Ну а возможности разбора, даже тогда были за пределами способностей лучших магнитофонов и плат захвата, про FM звук вообще молчу...
Естественно, и за это можно побороться усреднением разной степени умности, хотя опять-же, если есть ограничение и\или нелинейности полосы пропускания, и\или ограничения сигнала, ясен ясень что лечится далеко не всё и лучше взять лучшую плату и магнитофон...
...но я немного о другом, о том что-бы вообще избавиться от аналоговых цепей там, где они могут на что-то влиять, и отказаться от считывания в реальном времени в пользу избыточности и работы непосредственно со строками на ленте, где простейшие алгоритмы решают ибо это есть физический уровень...
А пытаться выжать что-то из видео сигнала с магнитофона, равносильно суперскейлу сильно пожатого видео, где и моушен эстимейт и вообще вычисления с хрен знает какой погрешностью. Если плёнка растянута\пожевана, и видеомагнитофон соответственно отыгрывает потерю синхры, это можно лишь задрапировать, но не прочитать как оно было.
Задача интересная) Но сложная и не представляю, кто бы это мог профинансировать...
Она не то что сложная, а скорее на кругозор и навыки, дядькам с телевидения было проще их обслуживать, мне проще превратить в "магнитный сканер". Там было очень много технических грабель разложено, с головками, усилителями и их переключением, откуда собственно и проблемы совместимости двухдюймовых лент. Которые были отчасти унаследованы и далее.
А с одной головой, да отказом от реального времени, на это всё можно забить, считывая каждую строку по нескольку раз и, например, выбирая годный, хотя были и иные варианты.
Я к чему всё это дело описываю, оно не какой-то рокетсаиенс, и сегодня это сделать в разы проще чем тогда.
Минувшим летом, я был на грани, повторить тот вояж с SVHS ради FM звука, друг попросил цифрануть кассеты с его мюзиклами, но дело ограничилось небольшой регулировкой панасоника, который и сам весь цифровй и многоголовый. Но если-бы не вышло, я бы взялся за старое ;-)
Я к чему всё это дело описываю, оно не какой-то рокетсаиенс, и сегодня это сделать в разы проще чем тогда.
Чистая правда)
Если еще 5 лет назад тут нужно было говорить про пачку нетривиальных алгоритмов, то сегодня совершенно реально просто найти один и тот фильм на SVHS и в цифре и обучить сеточку на нескольких проходах входных данных. И она вам автоматом будет и шумы, и цвета править. Причем учтет вам тонкости настройки конкретной физической головки конкретного магнитофона, то, что учесть аналитически крайне сложно. Правда под другой магнитофон может потребоваться обучать повторно)
Этим тоже занимался, но там своя специфика, наверное тоже опишу для коллекционеров, ибо плёнки осыпаются, а оцифровывать их, даже отличными магнитофонами и звуковыми платами ИМХО не самая лучшая идея, по ряду причин. Сходу можно получить результат и без RXины, да и на качество работы последней, мой способ влияет драматически.
Про оцифровку звука рассказывали в комментариях на Хабре - воспроизведение на низкой скорости и затем ускорение в аудиоредакторе до нормы.
Да-да-да, только наоборот, это это всё мифологизации без понимания полной картины. В смысле люди видели аппараты и как-то себе объясняли секрет фокуса. Я же тогда был скуп на объяснения, и это дало возможность продавать и "лицензировать".
Если вы замедлите скорость ленты, у вас отдача на низких частотах окажется не то что ниже шумового плинтуса, а с LSB по соседству и потом уже как не ускоряй ;-( то-же касается любых ЭМ звукоснимателей!
По этому начинал я как раз с ускоренного воспроизведения и оцифровки, но проблема была в том, что это сегодня каждая мыльница 96 килогерц умеет, а DSD можно купить в музыкальном магазине... В общем пришлось колхозить, благо опыт имелся, я ещё на Speccy ЦАПами и АЦП баловался, включая дельту во всём ея многообразии...
Этот колхоз, принёс много других преимуществ, кроме чистенького и детального низа, получилось отличное предложение для мастер хаусов, на столько отличное что покупатели мне хорошо платили за то, что-бы я больше никому, тк результат получался значительно лучше чем от связки родной электроники магнитофона и AD-2. И это сказывалось на результатах обработки старых лент во всяких DART, CEP, etc...
А потом был вариант с MR головами, и он как раз работал на пониженной скорости, по целому ряду причин, но результат был такой, что для двух дорожечных лент семидесятых, никакое шумопонижение не требовалось в принципе.
Параллельно шла работа с механической звукозаписью (тут сильно помог AML, царство ему небесное) и видео.
Пошли опыты со сканированием аудио лент барабанами, была идея сделать ультимативный сканер с вращающейся MR головой, но это уже не было никому интересно включая меня, тк отдельные подходы были протестированы и результат предсказуем, а мне ещё хотелось поработать звукорежиссёром и мастеринг инженером. Мечта такая детская была.
Вообще, уровень технологий даже в топовой профессиональной аппаратуре совсем не предельный, ибо в рамках существовавшего на момент её производства бизнес процесса он был вполне достаточен, а о будущем мало кто думает. Кому нужны параметрические усилители, если шумит сама лента, кто мог подумать что с этими шумами можно что-либо сделать.
В смысле липнет\отслаивается? Это решается физико-химическими способами в зависимости от основы и лака. Отлёживание в печи\холодильнике и модифицированная атмосфера.
Очень часто результаты алгоритма очень хороши, но ему нужно, например, 20 кадров вперед и 20 кадров назад, а скорость обработки одного кадра — около 15 минут при использовании самого продвинутого GPU. Т.е. на 1 минуту видео нужно 450 часов (почти 19 суток).
А существует ли софт который делает подобное, чтобы самому на это все посмотреть?
Недавно оцифровал старые семейные хроники с 8 мм пленки, на профессиональном сканере в конторе, которая типа лучшая. 1488х1080 в m-jpeg и uncompressed avi. Получилось довольно размыто. Попробовал улучшить в Topaz Video Enhance AI 2.6.3 без увеличения разрешения - результат практически нулевой. Может при растягивании он и дал бы результат, но мне требовалось "дорисовать" немного резкости. Да, ненастоящей, но тем не менее. Ноль результата.
Собственно, вопрос - есть ли программы или сервисы которые реально это делают для домашнего пользователя?
Видео сохранялось в виде отдельных кадров BMP, которые автоматически обрабатывались фильтрами Photoshop и записывались в другую папку. Затем отдельные кадры обратно собирались в видеофайл.
Увеличь это! Современное увеличение разрешения