December 2010

LibRaw 0.12.1

LibRaw 0.12.1 доступна для скачивания в обычном месте

В этой версии отключена попытка обработки файлов с камер Sigma DPxx ввиду полной бесполезности таких попыток: формат сжатия и метаданных в них другой, чем в Sigma SD и не поддерживается текущим кодом.

LibRaw 0.12.0 Release

Выпущена стабильная версия LibRaw 0.12, доступна в обычном месте.

Эта версия добавляет поддержку дополнительных 'demosaic packs', содержащие дополнительные алгоритмы, лицензия которых не позволяет распространять их на тех же либеральных условиях, что и основную LibRaw.

Полный список изменений:

  • Поддержка дополнительных алгоритмов, распространяемых на условиях GPL2/GPL3:
    • demosaic-pack-GPL2: алгоритмы интерполяции AFD, LMMSE, VCD, modified AHD, AHD+VCD. Дополнительные методы медианной фильтрации изображения. Поддержка сенсоров Foveon.
    • demosaic-pack-GPL3: алгоритм AMaZE и подавление хроматических аберраций для AMaZE.
  • Дополнительный алгоритм интерполяции (DCB) и шумопонижения (FBDD) включены в состав основной LibRaw.
  • Поддержка LCMS 2.x
  • Новый механизм ./configure на базе GNU autotools.
  • Исправлены ошибки:
    • Исправления в green_matching для некоторых layouts байеровских матриц.
    • Исправлена ошибка в вызове add_masked_borders_to_bitmap(), которая проявлялась на камерах с нечетной шириной черной рамки.
  • Новые параметры командной строки примера unprocessed_raw: -B - вычитать уровень черного, -M - добавлять маскированную рамку к изображению.

Пишите нам, если у вас есть пожелания, предложения или вопросы.

Дебайеризация для астрофотографии.

Есть ли у собравшихся рекомендации по выбору алгоритма для дебайеризация для астрофото? Иль не мудрить и использовать билинейный алгоритм?

Форумы: 

Поспешай медленно

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

Кстати, некоторые разработчики, которые ранее активно настаивали на том, что точности целых вычислений достаточно, в настоящее время свои алгоритмы интерполяции реализуют в плавающей точке.

Вот сравнение результатов AHD-демозаики, реализованных по одному и тому же алгоритму, но с разной точностью вычислений: с плавающей точкой и тот же самый алгоритм, но в целых числах (оригинальный код из dcraw).

LibRaw 0.12 Beta 3: Foveon возвращается

LibRaw 0.12 Beta2 доступна для скачивания где и обычно

Поскольку начиная с версии 0.12 принята идея об отдельном и независимом распространении кусочков кода под разными лицензиями, появилась возможность вернуть поддержку Foveon, что и было проделано.

raw->sizes.flip=5

Обнаружил, что Canon 550D иногда сохраняет cr2 файлы с raw->sizes.flip=5
При этом LibRaw декодирует с неправильной ориентацией. Причем переключение с raw->sizes.flip=0 на raw->sizes.flip=5 происходит без видимых причин. Просто в процессе съемки серии темновых кадров.
Вылечил поставив в программе после status=libraw_open_file(raw, fname);
raw->sizes.flip=raw->sizes.flip%4;

Форумы: 

Байеровский муар

Об анализе RAW-конверторов

Существующее на сегодня многообразие RAW-конверторов и используемых в них алгоритмов порождает проблему выбора: какие конверторы лучше (и для чего). На интернет-форумах распространена очевидная методология: берется одно (или несколько) изображений, обрабатывается разными конверторами/алгоритмами/настройками и визуально сравнивается. Зачастую, результат выглядит так для изображения P лучше алгоритм Q, а для изображения A алгоритм Z с включенной галкой f+ .

Более того, анализ в терминах хуже/лучше просто неправилен, правильная постановка звучит как ближе/дальше от исходного изображения.

Проблема заключается в том, что мы имеем дело со сложной системой, включающей в себя

  1. Снимаемый объект и его освещение
  2. Оптический тракт камеры с аберрациями объектива и светорассеянием внутри камеры.
  3. Сенсор со всеми его конструктивными особенностями: противомуарным фильтром, цветными байеровскими фильтрами, микролинзами и так далее.
  4. Внутрикамерный процессинг, как аналоговый, так и цифровой.
  5. А, да, изучаемый RAW-конвертор тоже.

Даже если правильное исходное изображение известно (снималась синтетическая мишень с известными характеристиками), вклад каждой из перечисленных составляющих остается неясным.

Вместе с тем, никто не мешает исключить из процесса фотокамеру (и снимаемую сцену) и изучать только RAW-конвертор, подавая ему на вход специально сгенерированные данные. Эти данные не обязаны быть правдоподобными (т.е. такими, какие возможно получить с реальной камеры), многие интересные особенности алгоритмов конверторов лучше видны на нереальных данных.