FCam - фотографии при слабом освещении / HDR

Я использую FCam, чтобы делать снимки, и сейчас, без изменений, эти снимки являются нормой для камеры смартфона. FCam рекламирует HDR и производительность при слабом освещении, но я не вижу примеров того, как использовать это при съемке.

Как сделать снимки HDR? Исходя из моего опыта с зеркальными фотокамерами, вы обычно делаете 3 снимка, 1 под, 1 над и 1, выставленный правильно для сцены.

Поскольку я буду делать много снимков, как мне смешать эти пиксели вместе? Средний?

Вальтер

1 ответ

Решение

Страница проекта FCam включает полное приложение камеры - FCamera, проверьте страницу загрузки FCam, последний элемент, который для "HDR Viewfinder" просто усредняет изображение с длинной / короткой экспозицией, а для "HDR Capture" автоматически записывает серию подходящих выставленные выстрелы. Увидеть src/CameraThread.cpp в источниках, я не уверен, насколько уместно цитировать, но вы найдете обе части в CameraThread::run(),

Он не усредняет изображения HDR для вас, он записывает их в виде последовательности. Я предполагаю, что это намеренно - большая часть привлекательности "HDR" вы достигаете, тщательно настраивая тональное отображение после процесса усреднения, то есть отрегулируйте, как точно выполняется сжатие динамического диапазона до 8 бит. Если вы сделаете это жестко закодированным способом на камере, вы ограничите возможности фотографа в отношении достижения оптимального результата. У MPI есть исследовательская группа по методам визуализации HDR, которая предоставляет исходный код для этой цели.

Короче говоря, "HDR бедняков" был бы просто средним. "Правильный HDR" никогда не будет 8-битным JPEG, потому что он отбрасывает "старший" бит в "высоком динамическом диапазоне" - по этой причине преобразование из HDR (которое будет иметь 16-битный / цветной или даже больше) в, например, JPEG обычно выполняется как шаг постобработки (вне камеры) из последовательности изображений HDR.

Обратите внимание на HDR видео

Для HDR-видео, если вы записываете с помощью одного датчика на портативном устройстве, вы обычно вводите движение между изображениями, которые образуют "последовательность HDR" (ваше общее время экспозиции равно сумме всех субэкспозиций плюс задержка от датчика чтение данных и перепрограммирование контроллера камеры).
Это означает, что регистрация изображения должна быть предпринята до фактического наложения и окончательной операции тонального отображения, если вы не согласны с размытием. Регистрация требует большого объема вычислений и является еще одной веской причиной сначала записать поток изображений, а затем выполнить создание HDR-видео (с некоторыми ручными настройками). Библиотека OpenCV предоставляет функции регистрации / сопоставления.

Вышеупомянутым программным обеспечением MPI является PFSTools, в частности библиотека операторов Tone Mapping (PFStmo). Исследовательские работы одного из авторов дают хорошую отправную точку; Что касается вашего вопроса о том, как выполнять постобработку, PFSTools - это утилиты командной строки, которые взаимодействуют / передают данные через каналы UNIX; на Maemo / N900 их использование простое благодаря полной среде Linux; просто создать сценарий оболочки через system(),

Другие вопросы по тегам