Как узнать или рассчитать глубину резкости фотографии по меткам EXIF? - PullRequest
5 голосов
/ 18 сентября 2009

Я хочу знать глубину резкости фотографии, предпочтительно в см или м.

Я знаю, что мы можем узнать настройку камеры, прочитав теги EXIF, но есть ли тег, напрямую указывающий глубину резкости? Или как мы можем рассчитать его по некоторым тегам EXIF?

Примеры будут оценены. Спасибо!

Ответы [ 4 ]

6 голосов
/ 22 сентября 2009

Расчет глубины резкости:

t = A * (S / 1440) * (D - F) / F ^ 2

Расстояние ближней фокусировки = D / (1 + t)

Дальняя фокусная дистанция = D / (1-т)

И полная глубина резкости - это разница между ними.

Переменные:

A = диафрагма объектива (число F)

S = размер диагонали датчика камеры или плоскости пленки в мм

D = фокусное расстояние в мм

F = фокусное расстояние объектива в мм

Конечно, резкость фокуса является субъективной и корректируется путем изменения константы в расчете круга путаницы (CoC). Здесь я использовал CoC = S / 1440, это значение, которое обычно используется.

2 голосов
/ 18 сентября 2009

Я предполагаю здесь, поэтому я был бы признателен, если кто-то еще может подтвердить это:

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

Поля FNumber и Focal Length дадут вам первые два. Третий обычно невозможно определить с помощью камеры. Вам понадобится какой-нибудь механизм ранжирования - какое-то дополнительное оборудование для камеры или некоторые известные значения для триангуляции.

1 голос
/ 20 августа 2010

Я наткнулся на вышеприведенные формулы, когда искал вычисления dof, и нашел их.

Просто пара баллов:

  1. Значения t необходимо проверить в программе. Если t = 1, то фокусное расстояние равно D/2, а бесконечность, в этом случае D фактически является гиперфокальным расстоянием (hfd). Это легко доказать и дает hfd примерно (f**2)/(coc*Fnumber).

  2. Если t больше 1, ваши ответы будут отрицательными, и это бессмысленный результат

1 голос
/ 18 сентября 2009

Эта веб-страница http://www.dofmaster.com/dofjs.html содержит прямое объяснение того, что входит в расчеты глубины резкости:

...