Я совершенно ясно, что DOF зависит от:
- Фокусное расстояние
- апертура
- Расстояние от предмета
- Размер сенсора
и многое другое (как указано в комментарии).
Но вот в чем вопрос: есть ли формула, которая связывает все эти факторы с DOF? Учитывая эти значения можно ли точно рассчитать глубину резкости ??
camera-basics
depth-of-field
calculations
vivek_jonam
источник
источник
Ответы:
Глубина резкости зависит от двух факторов: увеличения и числа f.
Фокусное расстояние, расстояние до объекта, размер и круг путаницы (радиус, при котором размытие становится видимым) совместно определяют увеличение.
Глубина резкости не зависит от конструкции объектива или камеры, кроме переменных в формуле, поэтому действительно существуют общие формулы для расчета глубины резкости для всех камер и объективов. У меня их нет в памяти, поэтому я буду копировать и вставлять их только из Википедии, поэтому я оставлю эту ссылку:
Лучшим ответом на ваш вопрос может стать вывод формул из первых принципов, что я хотел сделать некоторое время, но у меня не было времени. Если кто-то захочет стать волонтером, я дам ему голос;)
источник
Вы хотели математику, так что здесь идет:
Вам необходимо знать CoC вашей камеры, датчики размера Canon APS-C это число 0,018, для Nikon APS-C 0,019, для полнокадровых датчиков и 35-мм пленки значение 0,029.
Формула для полноты:
Другой способ сделать это - формула Цейсса :
Где d - размер диагонали датчика, а c - максимально допустимый CoC. Это приводит к немного другим числам.
Сначала необходимо рассчитать гиперфокальное расстояние для объектива и камеры (эта формула неточна для расстояний, близких к фокусному расстоянию, например, для экстремального макро):
например:
Затем вам нужно вычислить ближайшую точку, которая является ближайшим расстоянием, которое будет находиться в фокусе, учитывая расстояние между камерой и объектом:
например:
Затем вам нужно вычислить дальнюю точку, которая является самым дальним расстоянием, которое будет находиться в фокусе, учитывая расстояние между камерой и объектом:
например:
Теперь вы можете рассчитать общее фокусное расстояние:
например:
Итак, полная формула с CoC и HyperFocal предварительно рассчитана:
Или упрощенно:
С предварительно рассчитанным CoC: я попытался упростить следующие уравнения со следующими заменами: a = расстояние просмотра (см) b = желаемое разрешение конечного изображения (lp / mm) для расстояния просмотра 25 см c = увеличение d = FocalLength e = диафрагма f = расстояние X = CoC
Упрощенная:
Еще больше упрощается с WolframAlpha:
Или, если ничего не рассчитано, вы получите этого монстра, который непригоден для использования:
Упрощенная:
Поэтому в основном используют пересчитанные CoC и HyperFocal :)
источник
Если вы хотите увидеть практическую реализацию формул глубины резкости, вы можете воспользоваться этим онлайн-калькулятором глубины резкости . Источник связанной HTML-страницы содержит все формулы, реализованные в Javascript.
источник
Да, есть формулы. Его можно найти по адресу http://www.dofmaster.com/equations.html . Эти формулы используются в этом калькуляторе, он также объясняет глубину резкости более подробно. Я использовал этот сайт несколько раз и обнаружил, что он достаточно точен после проведения практических тестов самостоятельно.
источник
Вот простая формула DOF. Надеюсь, это поможет.
Ссылка: http://graphics.stanford.edu/courses/cs178-09/applets/dof.swf
источник
P = точка сосредоточена на
Pd = дальняя точка, четко определенная
Pn = близко определенная точка
D = диаметр круга путаницы
f = f-число
F = фокусное расстояние
Pn = P ÷ (1 + PDf ÷ F ^ 2)
Pd = P ÷ (1-PDf ÷ F ^ 2)
Промышленный стандарт для установки D = 1/1000 фокусного расстояния. Для более точной работы используйте 1/1500 фокусного расстояния. Предположим, фокусное расстояние 100 мм, затем 1/1000 из 100 мм = 0,1 мм или 1/1500 = 0,6666 мм
источник