Демозаїкізація

Технічна інформація
Опис
Реконструювати повні RGB-пікселі з даних масиву кольорових фільтрів сенсора.
Призначення
Обов’язковий модуль.
На вході
лінійний простір, raw, на основі сцен.
Обробка
лінійна, raw.
На виході
лінійний простір, RGB, на основі сцен.

Контролює, як декодуються мозаїчні фільтри raw файлів і за потреби застосовує збільшення різкості знімку.

🔗Фільтри Баєра

Сенсорні комірки цифрової камери не є чутливими до кольорів – вони здатні реєструвати лише різні рівні світла. Для отримання кольорового зображення кожна комірка покрита кольоровим фільтром (червоним, зеленим або синім), який в основному пропускає світло цього кольору. Це означає, що кожен піксель вихідного raw зображення містить лише інформацію про один кольоровий канал.

Кольорові фільтри зазвичай розташовані у вигляді мозаїки, відомої як масив фільтрів Баєра. Демозаїчний алгоритм відновлює відсутні кольорові канали шляхом інтерполяції з даними із сусідніх пікселів. Для подальшого читання дивіться статті Вікіпедії про демозаїкізацію та фільтр Баєра.

Darktable пропонує кілька демозаїчних алгоритмів, кожен із яких має свої особливості. Відмінності між ними часто дуже тонкі і можуть бути помітними лише під час попіксельного розглядання при великих збільшеннях. Однак, оскільки програма працює піксель за пікселем, а демозаїкізація генерує базові дані для інших модулів, вибір алгоритму може мати візуально значний вплив на якість дуже тонких деталей на зображенні. Це може включати появу артефактів “лабіринтів”, а також якість візуалізації кольорових контурів.

Алгоритми демозаїчної інтерполяції часто схильні створювати артефакти, які зазвичай відображаються як муарові візерунки при наближенні зображення. Вибраний алгоритм може краще чи гірше обробляти наявні муаро- або лабіринто-подібні візерунки в raw даних. За цих обставин VNG4 і LMMSE часто є більш стабільними.

Для сенсорів з фільтрами Баєра доступні наступні алгоритми:

  • PPG раніше був алгоритмом за замовчуванням у Darktable. Він швидкий, але інші алгоритми зазвичай дають кращі результати.

  • AMaZE та RCD пропонують кращу реконструкцію високочастотного вмісту (дрібніші деталі, контури, зірки), але можуть страждати від “овершутів” кольорової реконструкції або доданого шуму в зонах з низьким контрастом. Хоча AMaZE часто зберігає більше високочастотних деталей, він також більш схильний до “овершутів” кольорів, ніж RCD. Оскільки RCD тепер пропонує продуктивність, подібну до PPG, але з кращими результатами, це тепер алгоритм за замовчуванням.

  • LMMSE краще підходить для використання на зображеннях із високим рівнем ISO та із шумом, ніж AMaZE або RCD, обидва з яких мають тенденцію генерувати артефакти овершутингу при застосуванні до таких зображень. Також може бути корисним для керування зображеннями, які демонструють муарові візерунки, за допомогою інших алгоритмів.

  • VNG4 краще підходить для зображень із низькочастотним вмістом (наприклад, області з низькою контрастністю, такі як небо або снігові поля). Порівняно з AMaZE та RCD, він спричиняє втрату деяких деталей, але він дуже стабільний для артефактів лабіринту. VNG4 більше не рекомендується – для більшості зображень інші алгоритми дають кращі результати.


Примітка: Ефективність алгоритмів значно відрізняється, AMaZE є найповільнішим.


🔗Сенсори без фільтрів Баєра

Є певна кількість камер, сенсори яких не використовують фільтр Баєра. Камери з сенсором “X-Trans” мають власний набір демозаїчних алгоритмів. Алгоритм за замовчуванням для сенсорів X-Trans – Маркестейн, 1 прохід, що дає досить хороші результати. Для трохи кращої якості (за рахунок набагато повільнішої обробки) виберіть Маркестейн, 3 проходи. Хоча VNG швидший, ніж Маркестейн, 1 прохід на деяких комп’ютерах, він схильний до артефактів.

Зображення з монохромних камер не потребують демозаїчної інтерполяції, проте, починаючи з версії Darktable 5.4, вони використовують цей модуль для підтримки збільшення різкості знімка.

🔗Спеціальні алгоритми

Без корекції (монохром) корисний лише для камер, у яких масив кольорових фільтрів був фізично вилучений з сенсора. Демозаїчні алгоритми зазвичай реконструюють інші кольорові канали шляхом інтерполяції з даними із сусідніх пікселів. Однак, якщо масиву кольорового фільтра немає, інтерполювати немає чого, тому цей алгоритм просто встановлює однакові значення всіх кольорових каналів, що призводить до монохромного зображення. Цей метод дозволяє уникнути артефактів інтерполяції, які можуть привнести стандартні алгоритми.

Показати структуру сенсора не призначений для обробки зображень. Він бере необроблені дані і представляє їх у вигляді червоних, синіх або зелених пікселів. Це розроблено для налагодження з метою перегляду raw даних та може допомогти в аналізі помилок, спричинених іншими демозаїчними алгоритмами.

Монохром доступний лише для монохромних камер.

🔗Алгоритми подвійної демозаїки

Деякі зображення мають області, які найкраще обробляються за допомогою алгоритму, який зберігає високочастотну інформацію (наприклад, AMaZE або RCD), а також інші області, які можуть отримати вигоду від алгоритму, який більше підходить для низькочастотного вмісту (наприклад, VNG4).

У подвійних алгоритмах демозаїки (наприклад, RCD + VNG4) дані сенсора обробляються двічі, спочатку RCD, AMaZE або Маркестейн, 3 проходи, а потім VNG4. Обидва набори демозаїкізованих даних зберігаються для подальшої обробки.

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

Загалом, області з більшою деталізацією обробляються за алгоритмом, який найкраще підходить для цієї мети (RCD, AMaZe, Маркестейн 3 проходи), а будь-які гладкі ділянки (наприклад, синє небо) обробляються за допомогою другого алгоритму (VNG4).

‘Локальна зміна даних’ технічно реалізована як розмита за Гаусом одноканальна маска вибору, розрахована на основі комбінації порогового значення та яскравості пікселів.

🔗Вибір порогу

Автоматично обчислений поріг важко реалізувати. Натомість за допомогою кнопки “показати маску змішування” можна відобразити маску вибору, щоб ви могли контролювати вибір алгоритму вручну. Чим яскравіше піксель у відображеній масці, тим більше результат береться з високочастотного алгоритму.

🔗Збільшення різкості знімка

Збільшення різкості знімка відновлює деталі, втрачені через розмиття в камері або об’єктиві, яке може бути спричинене дифракцією, фільтром згладжування або іншими джерелами розмиття гаусового типу.

Збільшення різкості знімка виконується всередині модуля демозаїкізації, оскільки деякі частини алгоритму потребують необроблених даних сенсора. Саме збільшення різкості виконується на RGB-даних і доступне для сенсорів Bayer, X-Trans та монохромних сенсорів.

Збільшення різкості знімка не призначене для використання як загальний інструмент для підвищення різкості / локального покращення контрасту. Його слід розуміти як спосіб збільшення мікроконтрасту в структурах з великою кількістю деталей, що призводить до кращих результатів для подальшої обробки. Чудовими прикладами можуть бути деталі таких поверхонь, як дерево, цегляні стіни, волосся тощо.

Передумовами для досягнення оптимальних результатів є:

  • Прийнятні параметри балансу білого (такі ж вимоги, як і для Відновлення переекспонованого або Демозаїкізації) – у дуже рідкісних випадках це може призвести до погіршення якості процесу збільшення різкості.

  • Low chromatic aberration – you might want to use the raw chromatic aberrations module to reduce problems – there will still likely be more and stronger halo artifacts.

  • Прийнятний шум сенсора, оскільки шум, як правило, посилюється збільшенням різкості знімка (див. Чутливість до контрасту нижче).

Збільшення різкості знімка працює в ітераційному процесі з використанням спеціалізованих гаусових ядер, що передбачають різне значення сигми (в діапазоні від 0,0 до 1,5) для кожного окремого пікселя.

🔗Елементи керування модулем

Метод
Використовуваний алгоритм демозаїки (див. вище).
Поріг виявлення контурів (лише PPG)
Поріг для додаткового медіанного проходу. За замовчуванням “0”, що відключає медіанну фільтрацію.
LMMSE refine (LMMSE only)
Refinement steps for use with the LMMSE demosaic algorithm. Median steps average the output. Refinement steps add some recalculation of red and blue channels. While the refinement options work well for luma noise, they may decrease quality on images with heavy chroma noise.
Проходи згладжування кольорів
Активація ряду додаткових проходів згладжування кольорів. За замовчуванням “вимкнено”.
Вирівнювання зелених
У деяких камерах зелені фільтри мають дещо різні властивості. Цей параметр додає додатковий крок вирівнювання для придушення артефактів. Доступні варіанти: “вимкнено”, “локальне середнє”, “повне середнє” та “повне і локальне середнє”. Ця опція не відображається для сенсорів X-Trans.
dual threshold (dual demosaic modes only)
Set the contrast threshold for dual demosaic modes. Lower values favor the high frequency demosaic algorithm and higher values favor the low frequency algorithm.
Показати маску змішування (лише для подвійних алгоритмів)
Показати маску змішування, яка використовується для розрізнення областей високої та низької частоти (регулюється параметром “поріг контрасту для подвійної демозаїки”). Для кожного пікселя, чим яскравіша маска, тим більше вихід модуля береться з високочастотного алгоритму.
capture sharpen
Enable capture sharpening. Selecting this option will enable additional controls (see below) and attempt to auto-calculate the radius and contrast sensitivity based on the current image’s raw sensor data (see below).
iterations (capture sharpen)
The strength of the effect increases with more iterations. For most images a setting of 8 will be sufficient.
radius (capture sharpen)
Defines the mathematics used (sigma) for the special gaussian kernels. Analysis of many images (also from the RawTherapee community) show that, on modern sensors, using a good lens and a high quality demosaicer, a typical radius will be between 0.5 and 0.8.
To auto-calculate the radius for the current image (based on raw sensor data), click the button on the right of the radius slider. The underlying algorithm has been used for some time with reliable results, though it might fail on images with lots of chroma noise. This calculation works better when the image is fully-zoomed out and uncropped in the darkroom view.

Примітка: Не збільшуйте радіус вручну набагато більше, ніж автоматично розраховане значення, оскільки це швидко призведе до появи артефактів у вигляді ореолу.


contrast sensitivity (capture sharpen)
As sensor noise will typically be amplified by capture sharpening, we try to counter this problem by performing an analysis of local variance, luminance and a user-defined threshold. Sharpening is applied only to regions that are considered by this analysis to be safe. This analysis results in a mask that can be visualised by clicking the button to the right of the contrast sensitivity slider.
For a good default we check the image ISO and sensor readout precision as a starting point.
Very noisy images will require larger values than default. For very low sensor noise you can decrease the threshold to also improve capture sharpening in very dark parts of the image.
corner boost / sharp center (capture sharpen)
Most lenses are sharper in the central part than the corners of the image. Increasing the corner boost parameter causes a larger per-pixel radius to be used in the capture sharpen kernels for the image corners. This extra radius is controlled by the corner boost control. Adjusting the corner boost will cause an additional slider (sharp center) to appear. This controls the affected area using the distance from the image center. Again, the mask button to the right of the slider allows you to visualize the effect.

🔗presets, styles and copy/paste

Defining demosaic presets or using demosaic parameters for styles or copying/pasting history stacks is a bit more tricky than for other modules. Please bear in mind that demosaic works for a range of sensors each offering different algorithms and some specific options. Here are some reminders:

  1. Можна безпечно створити автоматичний пресет, який застосовується лише до певної камери.

  2. Якщо пресет було визначено під час роботи із зображенням з іншого сенсора, ніж поточне зображення, Darktable перетворює алгоритм наступним чином:

    • сенсори Bayer повертаються до RCD

    • сенсори X-Trans повертаються до Markjestejn

    • сенсори Bayer4 завжди використовують VNG4.

    • подвійна демозаїкізація також буде доступна на сенсорах Bayer та X-Trans

  3. Додаткові опції, такі як вирівнювання зелених каналів, будуть застосовані лише для тих сенсорів, де це потрібно.

  4. У автоматично застосованих пресетах з увімкненим збільшенням різкості знімка ви можете використовувати автоматично розрахований радіус (або чутливість до контрасту) замість жорстко закодованих значень. Для цього необхідно встановити радіус (або чутливість до контрасту) на нуль перед збереженням пресету. Якщо цей пресет потім застосовується до іншого зображення, Darktable сприймає це як запит на автоматичний перерахунок цих значень.

Збільшення різкості знімка не ввімкнено за замовчуванням, але ви можете досягти цього, визначивши автоматично застосований пресет після встановлення радіуса та порогу контрастності на нуль. Рекомендується залишити налаштування ітерацій на значенні за замовчуванням 8, оскільки це забезпечує хороше збільшення різкості з дуже низьким ризиком артефактів при використанні з автоматично розрахованим радіусом.

Зазвичай безпечно автоматично застосовувати збільшення різкості до зображень зі значеннями ISO нижче 1000. Якщо у вас хороший сенсор з низьким рівнем шуму навіть за високих значень ISO, ви можете використовувати його для ISO до 3200.

translations