Чому цей портрет не зроблений у f / 29 різким?


25

Мене бентежить, чому ця картина не гостра. Це портретний знімок у F / 29 ISO100 1/250 із об'єктивом 17-85 мм, орієнтованим на 38 мм. Предметна відстань становила 1,2М. Мій додаток DOF повідомляє мені, що мій DOF повинен був становити ~ 82,98 см або приблизно 1М.

Мене бентежить, чому ця картина не така гостра, як повинна бути. Для цього скріншоту я збільшив його на 200%. Це так сильно розмито на 200% нормально?

EDIT: Деякі люди мають запитання щодо DOF у цьому знімку, тому ось деяка інформація, яку можна отримати з будь-якого онлайн-калькулятора DOF. Моя оцінка 82,8 см була від програми, а 1,2 мільйона - від інформації EXIF, використовуючи цей онлайн-інструмент , DOF у F28 буде:

 Subject distance   1.2 m

 **Depth of field** 
 Near limit     0.84 m
 Far limit      2.13 m
 Total          1.29 m

 In front of subject        0.36 m  (28%)
 Behind subject             0.93 m  (72%)

 Hyperfocal distance         2.7 m
 Circle of confusion       0.019 mm

Це також правильно, адже саме так я фактично був від камери - 1.2M. Тож, щоб цей кадр був поза фокусом, мені довелося б знаходитись приблизно в півметра від камери, чого я не пам’ятаю. Можливо, розмиття, яке спостерігається на цій фотографії, пов’язане не з тим, що суб'єкт знаходиться в фокусі.

портрет F / 29 ISO100 1/250


6
дифракція грає певну роль у цій діафрагмі
нульова

7
Однозначно пов'язаний, якщо не зовсім дублікат: Що таке "дифракційна межа"? .
Філіп Кендалл

1
Чи лінза фокусувалася на 38 мм або 38 см? мм здається малоймовірним.
mattdm

9
Ніде в описі своїх налаштувань ви не говорили, на яку відстань була зосереджена ваша лінза. Зауважте, що це не має нічого спільного з фокусною відстанню, на яку було встановлено ваші зум-об'єктиви. Можливо, для всіх, що ми знаємо, лінза була зосереджена на нескінченності. Гаразд, можливо, не нескінченність, але просто відсутній фокус - це ймовірний кандидат.
осульський

2
"Зосереджено на" та "фокусна відстань" - це два різних поняття. Більше тут .
mattdm

Відповіді:


48

Як було сказано в інших відповідях, дифракція призвела до нерізкості. Щоб поставити це на тест, можна спробувати заточити зображення за допомогою деконволюції, використовуючи функцію точкового розвороту, що відповідає F / ​​29. Для дифракції ми маємо (до загальної нормалізації)

P (s) = {J 1rs / ( λF )] / [π rs / ( λF )]} 2

де J 1 - функція Бесселя першого типу порядку 1 ,
s - відстань у зображенні, виміряна в пікселях,
r - розмір одного пікселя (як правило, приблизно 4,2 * 10 ^ (- 6) метрів для датчиків обрізання),
λ є довжину хвилі світла, а
Р діафрагма, в даному випадку 29.

Тоді це справедливо для монохроматичного світла, щоб наблизити функцію розповсюдження точок для кольорових каналів, яку ми можемо оцінити за деякий відповідний діапазон довжин хвиль. Також слід інтегрувати P (s) над площею пікселя, заданою s.

Якщо ми компілюємо 3-х точкові функції розтікання для 3-х кольорових каналів таким чином, ми можемо посилити зображення, трансформуючи його в лінійний кольоровий простір і застосувавши алгоритм деконволюції, а потім перетворити назад в sRGB. Я отримав такий результат:

Заточена картина

Тож обличчя було значно загострене, використовуючи лише дані про F-число та припущення про розмір пікселя. Артефакти обшивки видно у темній частині зображення, це пов’язано з постеризацією після перетворення назад у sRGB.

За потребою я додам ще кілька деталей про використовувані програми. Я використовував ImageJ та ImageMagick , я також використовував Mathematica для обчислення функції розподілу точок, але це також можна зробити в ImageJ. Почну з пояснення того, як я роблю деконволюцію з ImageJ, коли у мене вже є функція розведення точки. Для деконволюції вам потрібно встановити плагін для ImageJ, я використовував цей плагін для цього випадку, але є й інші плагіни, наприклад DeconvolutionLab .

По-перше, вам потрібно перетворити в лінійний кольоровий простір, я використовував ImageMagick для перетворення непотопченого зображення (input.jpg) в лінійний кольоровий простір за допомогою команди:

convert input.jpg -colorspace RGB output.tif

Потім за допомогою ImageJ ви відкриєте файл output.tif. Потім з параметрів меню ви вибираєте "зображення", потім "колір", а потім "Плюйте канали". Потім у меню виберіть "плагіни", а потім "паралельну ітераційну деконволюцію", а потім 2d інтерактивну деконволюцію ".

Потім ви отримуєте вікно деконволюції, потім вибираєте зображення, а "PSF" означає fucntion поширення точки, там ви вибираєте файл зображення, який містить функцію поширення точки. Для методу я вибираю "WPL", який базується на фільтрі Вінера, який зазвичай працює досить добре для зображень із низьким рівнем шуму. В параметрах для WPL встановіть прапорець "нормалізувати PSF", а для фільтра низьких частот змініть значення на 0,2, за замовчуванням - 1, але нижнє значення краще для зображень із низьким рівнем шуму (якщо ви виберете його більше, ви ' Ви отримаєте менш чітке зображення). Інші параметри, границя може бути обрана як рефлексивна, зміна розміру може бути встановлена ​​на "наступна потужність 2", вихід може бути встановлений на 32 біт, точність може бути встановлена ​​вдвічі. Я вибрав кількість максимальних ітерацій, що дорівнює 15,

Потім ви запускаєте програму, натиснувши на "деконвельвати". Потім ви отримаєте 32-бітний файл зображення як вихід. Зазвичай значення пікселів досить подібні до того, що вони були у вихідному зображенні, але ви можете мати пікселі, що перевищують максимальний для вихідного формату зображення. Так, у цьому випадку ми розпочали з 8-бітових зображень, але у деконційованому зображенні ви можете мати значення сірого кольору, що перевищують 255, а потім все зображення стає занадто темним. Це потрібно виправити, відрізавши ці пікселі до 255, що можна зробити, вибравши в меню "процес", а потім "Математику", а потім "Макс". Максимальне значення буде використане для відсікання сірих значень, що перевищують це значення. Зауважте, що це буде зроблено з зображенням, яке ви останнім чином натиснули на нього. Ви також можете побачити, який файл є "поточним файлом", вибравши "

Після того, як ви відключили 3 кольорові компоненти, ви можете їх об'єднати, вибравши в меню "зображення", потім "колір", а потім "Об'єднати канали". Потім ви отримуєте складене зображення, яке ви можете перетворити на 8-бітний RGB за допомогою команди «Стек у RGB», яку ви знайдете там.

Потім ви збережете це зображення, назвемо його ім.tif. Нарешті, ви повинні перетворити це в sRGB, ви можете зробити це за допомогою ImageMagick за допомогою команди:

convert im.tif -set colorspace RGB -colorspace sRGB output.tif

Залишилося питання, як отримати функцію розведення точки. На практиці, якби ви сфотографували подібну до обговорюваної тут, ви могли просто сфотографувати точковий джерело, наприклад, зірку у F / 29 і використати це як функцію розведення точки. Крім того, ви можете переглянути високі межі контрасту та витягнути функцію поширення точок із того, як значення сірого кольору змінюються від одного значення до іншого через межу. Але тоді ви намагаєтеся чіткіше зобразити зображення.

У цьому випадку метою було скласти функції розподілу точок для кольорового каналу, виходячи з того, що ви очікували б, що це буде для F / 29, відключити зображення до цього і побачити, чи результат виглядає досить добре, що це. Я використовував Mathematica, щоб зробити деякі обчислення, і в такій передовій програмі комп’ютерної алгебри досить просто робити всілякі маніпуляції, включаючи усереднення через інтервал довжини хвилі та інтеграцію по піксельних областях, щоб зробити PSF більш реалістичним.

ImageJ також дозволяє створити нове зображення, яке ви можете використовувати як функцію поширення точки. Якщо натиснути "Файл", а потім "Створити", ви можете створити 32-бітове зображення розміром, скажімо, 64 на 64, заповнене чорним кольором. Потім можна запрограмувати формулу сірих значень, вибравши "обробити", потім "Математика", а потім "Макрос". Щоб отримати функцію розведення точки в цьому випадку, яка включає тут функцію Бесселя, ви можете використовувати той факт, що він добре описаний першими кількома умовами розширення рядів. Сторінка MathWorld, з якою я пов’язана, дає вам розширення цієї серії, тому J 1 (x) 2 / x 2 з x = π rs / ( λF ) можна замінити функцією форми A + B s 2 + C s 4. Це наближення стане недійсним, якщо s занадто великий. Тепер ми знаємо, що PSF має тенденцію до нуля, наприклад, на відстані приблизно 5 або 6 пікселів його можна встановити на нуль. Припускаючи, що поліном ще малий при цих значеннях, ви можете написати макрос як:

if(d<7) v = A + B  * pow(d,2) +  B * pow(d,4)

Потім ви створюєте 3 зображення для, скажімо, лямбда = 650 нм, 500 нм і 400 нм, або будь-яких інших значень, які ви вважаєте за потрібне представляти дифракцію в 3 кольорових каналах. Потім ви можете виконати усереднення за декількома різними довжинами хвилі, створивши зображення для різної лямбда, а потім виберіть "обробити", потім "калькулятор зображення", і там ви вибрали "додати". Потім ви можете додати до цього результату ще одне зображення, і коли ви закінчите додавати, ви можете розділити, щоб отримати середнє значення, вибравши "обробити", потім "математику", а потім "розділити".


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

2
+10 (хоча насправді не можна зробити +10) для додавання математики. Чудово, що ви додали його. Чи можете ви на це надати якісь цитати. Я хочу спробувати це сам. Чим детальніше математика, тим веселіше!
Пошкоджений MyStack

Це справді досить дивовижно. У якому програмному забезпеченні ви це робили? Здається, це може бути неймовірно корисним для макрофотографії.
Whelkaholism

@mattdm Deconvolution вимагає певної обчислювальної потужності, але тоді деякі алгоритми, такі як деконволюція Річардсона – Люсі, можуть бути легше реалізовані в апаратному забезпеченні, ніж інші. Крім того, програмне забезпечення для камери, яке використовується для обробки своїх неочищених файлів на своїх комп’ютерах, може включати деконволюцію, яка спеціально оптимізована для вирішення фактичної розмитості, яку ви отримуєте через розфокусування та дифракцію.
Граф Ібліс

1
@CorruptedMyStack Я додам ще кілька деталей у відповідь. Ви повинні мати можливість зробити набагато кращу роботу, якщо у вас є файл із сировиною. Ви можете подивитися розмір датчика і з цього розрахувати розмір пікселя. Але ви також можете пропустити обчислення та безпосередньо виміряти функцію розвороту точок, сфотографувавши якийсь такий предмет, як об'єкт, а потім просто витягнути з нього функцію розведення точки. У разі дифракції деконволюцію найкраще проводити із неочищеними файлами, на відміну від інших випадків у вас є кольорова облямівка, яку не слід виправляти до того, як буде проведено деконволюцію.
Граф Ібліс

51

Ви перебігли межу дифракції . Світлові промені, що проходять через невеликий отвір, будуть розходитись і перешкоджати один одному, і з'являється візерунок - своєрідна смуга, де різні частоти / розміщення можуть спричиняти окремі промені складатись або заперечувати один одного. Чим меншим стає отвір, тим більшою стає ця розбіжність / втручання. Ця модель називається диском Airy. Коли діаметр пікового диска Airy стає більшим, ніж розмір пікселя, і диски Airy для кожного пікселя починають зливатися, ви отримуєте м'якість - тим чим більша кількість пікселів вашого датчика і чим менший ваш датчик, тим швидше ви Я побачу це, як ви зупинитесь.

Ви, як правило, гостріші за "щасливого середовища". Там, де може бути "щаслива середовище" вашої передачі, буде змінюватися залежно від щільності / розміру пікселів та конструкції об'єктива. З датчиками розміру APS-C, які я вміло виявляю, що ви використовуєте з посилань об'єктива 17-85, ви, ймовірно, не хочете переходити f / 11 без дійсно вагомих причин і готовності відмовитися від різкості. Теоретичні межі дифракції, ймовірно, будуть знаходитись у діапазоні f / 5.6-f / 8. Ви також захочете дізнатись, де "солодке місце" вашого об'єктива - багато лінз краще спрацьовувати на 1-2 зупинки від широко відкритих. Наприклад, "солодке місце" EF 50mm f / 1.8 II знаходиться в діапазоні f / 4-5.6.

Я б також сказав, що судити про різкість при 200% збільшенні - це просто прохання, щоб усі ваші лінзи були схожі на догмат. Це не реалістичне збільшення з точки зору відстані перегляду від типового друку, і це рідкісний об'єктив, який буде витримувати цей тест, навіть якщо він використовується в його солодкому місці. Зупиніть піксельний вигляд. Почніть дивитись на друк.

Дивіться також: http://www.cambridgeincolour.com/tutorials/diffraction-photography.htm


Або, якщо ви судите про те, як може виглядати друк, тоді: збільште масштаб зображення таким чином, щоб воно з'явилося на екрані приблизно такого ж розміру, як і для друку, і подивіться на екран приблизно з тієї ж відстані, як і друк. Це дасть вам набагато краще уявлення про те, як буде виглядати кінцевий результат, навіть якщо це не ідеальний метод. @CorruptedMyStack
CVn

15

Через дифракцію. f / 29 - це занадто багато для вас, щоб очікувати різкого зображення. Спробуйте знімати те саме на f / 8, і ви побачите різницю.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.