Вычислительная фотография 2.0
Поговорим про ProRAW
Весной 19-го мы с Вастриком написали статью про вычислительную фотографию. В ней мы разобрали, как математика обманывает физику: я на пальцах[1], он в деталях[2].

Статья, которую сейчас вы читаете, что-то вроде DLC к тем трудам.
§1. Зачем вообще понадобился ProRAW
Для начала разберёмся хотя бы с тем, зачем RAW на смартфонах в принципе.

Ответ на этот вопрос зависит от года, в котором вы его задаёте.

Года так до в 2013-го поддержка RAW маскировала плохой JPEG. Обрабатывать там было нечего, зато можно было рассказывать бутербродникам на прессухах, какой невероятный камерофон им показывают.

Начиная с iPhone 6s, а на Андроидах чуть раньше, RAW стал по смыслу такой же опцией, какой он был на больших камерах. Хочешь запилить лифтолук – запускай камеру да снимай, хочешь красиво снять закатик – вот тебе Halide со всеми ништяками RAW-конвертации[3]:
Достаточно упоротые ребята (типа меня) даже клеили панорамы из равок[4], чтобы получать сахаристую детализацию, шикарный динамический диапазон и цвет во всех подробностях.

Начиная с iPhone 11 Pro[5], а на Андроидах чуть раньше, RAW по смыслу перестал быть такой же опцией, какой он был на больших камерах. Настала эпоха вычислительной фотографии.

Фотограф ставился перед выбором: или исходник фотографии или стопка вычислительных слоёв над ней. И выбор этот был не всегда очевидным, потому что в этих слоях была информация, которой в раве не было.

Так в iPhone 11 Pro давали 5 рублей и предлагали на них собрать фотку:
Рав
5₽
Портретный режим
3₽
Ночной режим
3
Deep Fusion
1₽
Smart HDR
1
Запуск камеры с экрана блокировки
1
Съёмка в рав больше не была расширением возможностей. Она подменяла одни возможности другими.

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

Я подчёркиваю это: именно цвет, а не динамический диапазон – единственная причина, по которой съёмка в рав на iPhone 11 Pro имела смысл. Ну и отключённый шумодав, может быть.
Отказываться от всех плюшек вычислительной фотографии ради возни с динамическим диапазоном – это примерно как взять Ланос вместо Теслы, чтобы можно было скорости попереключать. Особенно если учесть, что грамотный HDR делается не четырьмя ползунками в Лайтруме[6], а несколько сложнее. Смартфон с этим справится, скорее всего, лучше.

Но вот пришёл 2020-й год, и выбирать больше не надо. Причём инновации прут от компании, которая внедрила поддержку RAW последней.

В iPhone 12 Pro вместо 5 рублей дают сразу 14, и накидывают лидар впридачу. А в 12 Pro Max ещё и стабилизируют матрицу, что в теории в будущем может увеличить доступное разрешение вчетверо[7].

Главные достижения мобильной фотографии в 2020-м слегка старомодные, да.
§2. ProRAW на этапе съёмки
Чтобы как-то подчеркнуть, что теперь в равах с айфонов будут данные вычислительной фотографии, Эппл придумала новый бренд: ProRAW. Но ProRAW это не какой-то новый формат. Это всё тот же dng, который можно открыть в любой программе.

С одной стороны, хорошо, что Эппл не стала делать, как она обычно делает и придумывать новый формат. Могло получиться как с дополненной реальностью, где пока толком ни о чём не договорились[8]. Любой Лайтрум откроет ProRAW.

С другой – теперь перед загрузкой ProRAW в конвертёр надо смотреть, понимает ли он, что этот рав особенный. Чтобы было понятней, в чём его особенность, нарисую такую схемку:
Матрицы камер накрыты цветной мозаикой из красных, синих и зелёных ячеек, чтобы камера могла различать эти цвета. Но помимо них есть ещё много других цветов, и процесс, позволяющий отличить розовый от бирюзового, называется дебайеризацией[9].

Все большие камеры отдают недебайеризованные равы и алгоритмов дебайеризации множество. Причём для каждой ситуации есть свой собственный лучший.

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

Алгоритм Apple называется AMaZE и даёт лабиринтоподобные артефакты, которые на посте уже никак не правятся.
Когда мы снимаем в обычном RAW, мы можем, меняя конвертёры, менять и методы дебайеризации. В случае с ProRAW поменять уже ничего не получится. Главное ограничение именно в этом.

Всем остальным же фотограф может управлять.
Фотографии, снятые в ночном режиме, в любом фоторедакторе откроются как обычные ночные фотки со штатива. Хотя на самом деле никакого штатива не было: смартфон непрерывно штамповал кадры, а потом склеил их воедино[10].

Фотографии, снятые в «свитерном режиме» (он же deep fusion), в любом фоторедакторе откроются как фотки со своеобразной детализацией, но без шумов. Фотографии, снятые со Smart HDR будут выглядеть как обычные фотки из камеры с хорошим динамическим диапазоном[11].

В фотокамерах от сторонних разработчиков эти режимы отключаются, но почему-то только совместно. Вместе с ними настраивается даже битность: от 8-и до 12-и[12].

Постфактум на эти параметры уже никак не повлиять: они запекаются в рав.
В iPhone 12 Pro съёмка в ProRAW занимает пару секунд, что супер долго для мобильной фотографии. Вероятно, его непоявление в iPhone 11 Pro объясняется именно этим. А в пролетарский iPhone 12 его не добавили, видимо, по немного другой причине.
Ну или, может, просто памяти не хватило: в прошках на пару гигов больше.
§3. ProRAW в фоторедакторах
Самая мякотка вычислительной фотографии – портретный режим. Я думаю, сам термин «вычислительная фотография» пришёл вместе с ним.

Три года назад я писал, что размытый фон – это не всегда круто[13], но именно карту глубин ждал в ProRAW больше всего и в итоге обломался.

В портретном режиме ProRAW не включается.
Просто примите меня таким, какой я есть.

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

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

Насколько я знаю, Адоуби пока не все теги в dng считывает, хотя и открывает эти файлы. Вам много усилий потребовалось для того, чтобы внедрить его поддержку?
Антон Сухинов, старший разработчик
Pixelmator Team:
Смотря что считать поддержкой и какие наработки уже имеются.

ProRAW сильно отличается от типичных DNG способом получения, но с точки зрения графического редактора отличия минимальны.

Основные отличия с точки зрения графического редактора, на мой взгляд, такие:

1) Не требуется делать дебайер, т.к. данные уже интерполированы.
2) Появляется новая сущность — локальный tone-mapping.
3) Глобальный tone-mapping сильно различается от фото к фото.
4) Появляются некие семантические маски (кожа, волосы), с которыми непонятно, что делать.

Если взять некоторый типичный RAW-конвертер (не поддерживающий ProRAW) и подсунуть ему ProRAW, то отсутствие дебайера обработается автоматически, а пункты 2)-4) будут просто проигнорированы. И от ProRAW останется только способ его получения — стекинг нескольких кадров в один.
Дальше разговор пойдёт о кривых, поэтому быстренько объясню что это такое, чтобы все всё поняли.

У вас есть 3 красных кубика, 7 зелёных и 4 синих. Если собрать их в стопки по цветам и поставить рядом, получится гистограмма распределения цветов. В фотографии вместо разноцветных кубиков – пиксели разной яркости.

Если над ними провести прямую линию под углом 45°, мы получим так называемую «кривую». Допустим, кубики могут менять цвет, когда мы переносим их из столбика в столбик. Тогда, когда мы переносим красный кубик в синий столбик прямая линия над красным столбцом просядет, а над синим – приподнимется.

Ничего сложного.
Я:
В статье Halide написано о тоновых кривых, которые Apple подсовывает в рав. Как вы с ними взаимодействуете?
Антон Сухинов:
С тоновыми кривыми очень интересный момент. Причём, я думаю, что Adobe с этой проблемой тоже столкнётся.

Так сложилось, что каждый Raw-конвертер имеет некоторые фиксированные тоновые кривые. Такие, при которых фотографии в среднем смотрятся хорошо. В итоге получается, что в разных raw-конвертерах тоновые кривые примерно одинаковы.

Старые версии Lightroom делали тоновую кривую через Brightness и Contrast. Открываешь raw-фото — и эти настройки по умолчанию выставлены в плюс. Cоответственно, глобальную тоновую кривую можно представлять себе, как глобальные ненулевые настройки яркости и контраста.

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

Редактирование тоновых кривых — это не то, что делается легко и просто. Если их настройка возможна, то обычно они спрятаны в далёком углу приложения, и снабжены каким-то непонятным интерфейсом. И тут появляется ProRAW с его переменной глобальной тоновой кривой и локальными тоновыми кривыми.

Интересный момент с локальными тоновыми кривыми в том, что они не попиксельные — это не маски. Там «маска» локальных тоновых кривых - это всего-то таблица примерно 5 на 8 гигантских ячеек. Я был удивлён, когда увидел такой подход. Упрощённо, локальные тоновые кривые — это яркость/контраст на сетке.

Обычно локальную настройку фотографии (тот же HDR) мы представляем себе, как локальную экспозицию. То есть какие-то участки фотографии искусственно осветляются, какие-то затемняются.

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

Apple же пошли другим путём — у них локально меняется не экспозиция, а тоновая кривая. Такой подход позволяет делать локальные настройки очень грубо (например, на сетке 5 на 8), и при этом не получать ореолов потому, что в каждой ячейке этой гигантской сетки хранится не экспозиция, а сразу целая кривая, задающая коррекции для всех цветов, от чёрных до белых.

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

Сейчас для тонкого HDR приходится запускать Фотошоп и использовать экшены типа Люменции.
Антон Сухинов:
Если переводить на «язык фотографа» то, что происходит в ProRAW в плане локальных коррекций — так это то, что на фотографию наложена сетка 5 на 8 кривых типа Luminance, и они как-то настроены в момент сохранения файла.

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

То есть ушли от того, что Apple навязывает нам свою тоновую кривую.

По соображениям экономии памяти в приложении для iPad мы не можем при таком подходе дать пользователю настройку «Local Boosting», т.к. это удвоит потребление памяти, и плохо будет взаимодействовать с Repair Tool и прочими.
Я:
Уже сейчас записываются данные глубины - или ещё нет?
Антон Сухинов:
Данные глубины скорее всего будут записываться, но конкретно сейчас мы их не видим. Наверное, Apple доделает их поддержку в ближайшем времени.

Цитата из сайта Apple: «You can't use ProRAW with Live Photos, in Portrait mode, or when shooting video.» А портретный режим — это как раз то, где была маска глубины (в случае записи фотографии в HEIC).

Мы добавили поддержку маски глубины в приложение для Mac по той же схеме, как у нас было в Portrait-mode фотографиях.
Пиксельматор пока не работает с, как выразился Антон, «семантическими масками» – то есть, с масками по объектам. Айфоны давно понимают, где кот, а где сапог. Теперь они могут объяснять это фоторедакторам.

Мы сможем сильнее давить шумы на однотонных текстурах и настраивать баланс белого для кожи человека, сохраняя исходную освещённость среды[15]. Сейчас это приходится всё ручками делать.
— Очень круто, можно мне в моём Кэноне тоже такое?
— Нет, нельзя.
— А на Ксяоми?
– Можно, но потом.
§4. ProRAW в несмартфонных камерах и на Андроиде
С Андроидом просто.

Поскольку ProRAW это всё тот же dng, умные равы со смартфонов на Андроиде могут быть точно такими же. Какие-то фишечки типа масок по объектам в фоторедакторы будут внедряться медленней, просто потому что под Андроид фоторедакторы пишут не так охотно как под iOS, но, формально, препятствий нет.

С большими камерами сложнее.

Люди по инерции недооценивали производительность смартфонов, а они всё это время зверели. Год от года.

Apple M1 – плоть от плоти айфонский А14. Макбуки стартовых категорий, которые на нём работают, уделывают прошлогодние топовые Маки на Интеле. При этом работают дольше и меньше греются.
И вот, чтобы сгенерировать один прорав, этой зверине требуется пара секунд. Один прорав на 12 бит и 12 мегапикселей.

В больших камерах сейчас повсеместно 14 бит и разрешение от 24-х Мп и выше. В лоб процессоры в камерах и в смартфонах нельзя сравнивать, но мы можем получить хотя бы общее представление о сложности задачи, которую Никону, Кэнону, Сони и присным нужно решать.

Я больше верю в то, что все вычисления переместятся в фоторедакторы. Ночной режим заменят умные алгоритмы устранения шевелёнки, Deep Fusion – продвинутые шумодавы, Smart HDR – автоматический тон-мэппинг.

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

В 2010-м году магазины продали больше фотокамер, чем когда бы то ни было. Я тоже свою первую зеркальную камеру приобрёл тогда же.

В 2019-м фотокамер продали в 10 раз меньше:
Как мне рассказал человек, когда-то давно поработавший в Конике, производители ещё в начале нулевых поняли, что сначала обычные люди, а затем и «просьюмеры» (или более нафталиново: фотоэнтузиасты) будут снимать телефонами.

Этот путь занял почти 15 лет, но финал был очевиден и неизбежен. Самые радикальные перепрофилировались сразу. Та же Коника сначала штамповала микрооптику для лазерных дисков, а сейчас вполне успешно занимается объективами для смартфонов.
Все рассуждения о том, достаточно ли обычному человеку смартфона уже давно устарели. Обычные люди и без гиков со всем разобрались.

Я между смартфоном и камерой по-прежнему выберу камеру. Она надёжней во всех смыслах. Мобила где-то, да киксанёт. С нормальной аппаратурой же я уверен, что всё сниму. Но это я и такие же, как я. А глобально рынок умирает.

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

Профессиональный сегмент падает не так быстро, но он меньше, а конкуренция в нём выше и покупатели придирчивей. Зарабатывать на нём получится только у тех, то готов вкладываться миллиардами в разработку и исследования. Таких компаний три: Сони, Фуджи и Панасоник.

Эти конторы разве что парфюмерию не производят – они могут себе позволить докидывать денег своему фотоподразделению. От остальных каких-то прорывов в вычислительной фотографии я не жду в принципе.
Чем занимается Фуджи
Но пока что основные поползновения в сторону вычислительной фотографии – это мертворожденные камеры на Андроиде[16]. Вроде бы звучит логично: дадим нормальную матрицу и ух навычисляем. Да вот не покупают такое почему-то.

Какие-то элементы вычислений в камерах со временем появятся. Более того – они необходимы. Уже сейчас камеры максимально близко подобрались к максимальным теоретически рабочим ISO[17].

Клеить HDR и увеличивать разрешение за счёт сдвига матрицы камеры умеют сто лет. Автоматически перефокусироваться на разных планах, чтобы всё было резким – тоже, почему-то бы не зашить все снимки эти сразу в рав. Но, глобально, отставание от смартфонов будет только нарастать. Спасибо зеркальщикам за бетатест.

Большие камеры сейчас в плане развития фотографии в роли страшной подружки.
Зачем вообще понадобился ProRAW
Вместо выводов напоследок вернёмся в начальную точку и пойдём в обратном направлении.

Мобильная фотография и инстаграм приучили нас к тому, что техническое качество фотографии глубоко вторично[18]. Десятые закончились, хайрезы на Фото.ру никто уже не открывает.

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

В ProRAW нет ничего особенного для фотографа – это обычный рав. В этом весь его шарм: вроде бы ничего такого, но благодаря нему камера iPhone 12 Pro воспринимается более цельной.

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

Сила подобных технологий в том, что мы всё реже оставляем телефон в кармане с мыслью «а, ладно, всё равно на него нормально не получится».
«Пока завод не починили» – канал о фотографии для тех, кто учится снимать в интернете. Подписывайтесь, всё, что я узнаю о фотографии, попадает прямиком туда.
Поддерживайте этот блог на Патреоне. И мне приятно, и вам дополнительный контент:
Поблагодарить конкретно за этот пост
Если ежемесячные пожертвования не для вас, можете разово проставиться автору через форму здесь:
Титры
Великолепные патреоны, которые уже поддерживают блог:
Vilen Sharifov; Artem Golenchenko; LordOfShawarma; Вастрик; Dan Komissar, Dan Ko, DenisMikhailov, Chernov Dima, dkataiev, Alexander Akhatov, Olga Dragunova, sergei mosquito, ighorka, Cf Motor, Andrey Ahryzko, Fr. Kirill Gorbunov, Igor Djachenko, Demenin Dmitriy, Alexander, Daniil Ososkov, Edgar Cherkasov, Artur Aliev, vlmokhov, Naim, Naimov, Taras, Anton G, Dmitry, Nick Gladkiy, Maksim Maksimov, Alex Kolov, Ruslan Keba
comments powered by HyperComments
Все ссылки списком
[1] – Как победит вычислительная фотография
[2] – Вычислительная Фотография
[3] – Зачем снимать в RAW на смартфоне
[4] – Я обещал рассказать, как обрабатываю фотографии с iPhone 7
[5] – Ещё б нормальный телевик – и было бы супер. Обзор камеры iPhone 11 Pro
[6] – Проблема HDR в современной цифровой фотографии
[7] – Принцип работы режима Pixel Shift Multi Shoot
[8] – Дополненная Реальность
[9] – Алгоритмы дебайеризации
[10] – Night Sight: Seeing in the Dark on Pixel Phones
[11] – Динамический диапазон
[12] – Inside the iPhone 11 Camera, Part 1: A Completely New Camera
[13] – Размытый фон – это не всегда круто
[14] – Твит Аполло
[15] – Баланс белого: как было или как надо?
[16] – Relonch Camera Relaunched As Hassle Free Photography
[17] – Физику не обманешь (или еще раз про 3 млн. ISO)
[18] – Исследование влияния качества картинки на её оценку
Корректорка и редактор: Екатерина Джеджея.
Другие статьи-объяснялки:
Made on
Tilda