Как реализуется глубина резкости?


10

Я знаю, что глубина резкости предполагает размытие.

В вопросе, как реализовано размытие по Гауссу, есть отличная информация о том, как сделать размытие по Гауссу.

Но, кроме этого, как реализуется глубина резкости?

Каковы правила о том, как размыть каждый пиксель, и как вы справляетесь со случаем, когда рядом с пикселем, который не хочет слишком размыть, есть пиксель, который хочет много размыть?

Я также слышал о «круге путаницы», но понятия не имею, что это такое.

Кто-нибудь может объяснить DOF простым и понятным способом?

Ответы:


20

Глубина резкости является характеристикой настройки объектива камеры, хотя название «Глубина резкости» обычно используется для описания эффекта, вызванного такой характеристикой.

Объективы фотокамеры могут идеально фокусироваться только на одной точке, но есть расстояние, на котором изображение будет выглядеть достаточно резким. Такое расстояние и есть глубина. Это расстояние варьируется в зависимости от различных факторов, но для краткости скажем, что самый простой способ отрегулировать его - это изменить апертуру камеры.

введите описание изображения здесь

Что касается круга путаницы, то полезно посмотреть картинку из википедии:

введите описание изображения здесь

Во всех трех случаях одна точка «проецируется» на нашу плоскость изображения, но, как вы можете видеть, она находится на разных расстояниях от объектива.

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

Теперь из этого должно быть ясно, что, варьируя глубину резкости, вы изменяете размер CoC, следовательно, он может использоваться как мера самого DoF и интуитивно понятный, если думать с точки зрения размытия.

Что касается того, как это реализовано в рендеринге, там действительно много методов. Обычно в играх это делается как постобработка с использованием информации о глубине для разделения вашей сцены на разные «плоскости»; например, плоскость фокусировки, которая не должна быть размытой, ближняя плоскость и дальняя / фоновая плоскость, которые должны быть размытыми. После того, как вы размыли свои самолеты, вы можете объединить их вместе, чтобы получить окончательное изображение. Насколько вы размываете разные плоскости, зависит от того, какого эффекта вы хотите достичь. Усовершенствованная система обычно реализует этот и другие «линзовые» эффекты, используя соответствующие параметры из мира фотографии, такие как диафрагма.

Обратите внимание, что существует множество способов реализации эффекта, описанный мною только один способ, который также имеет вариации (например, выполнение всего этого с более низким разрешением). Предел зависит от того, какова ваша цель и сколько вы заложили в бюджет для этого эффекта. Вы можете перейти от применения метода «3-х плоскостей» с чрезвычайно низким разрешением к вычислению круга путаницы для каждого пикселя и к применению последующего специального размытия к этому пикселю.


РЕДАКТИРОВАТЬ: комментарий от @NathanReed должен быть более очевидным, как часть ответа:

Сообщения в блоге Мэтта Петтинео « Как подделать Боке и Боке II: Сиквел» - отличное введение в практическую реализацию DoF после обработки и устранение типичных артефактов, которые вы получаете от него.


1
Дешевый способ сделать это - просто использовать размытие по Гауссу на финальной сцене и сохранить два из них. Один для переднего плана и один для фона. Они могут иметь одинаковый уровень размытия или различаться, и это зависит от вас. По окончании размытия просто перейдите от глубины 0 к некоторой определенной (и настраиваемой) глубине (скажем, 0,10). То, что вы изучаете, - это размытая сцена для идеально сфокусированной сцены. Для размытия фона вы можете просто сделать то же самое, за исключением размытия от идеального фокуса до размытого изображения. Оставьте немного места для середины, чтобы создать идеально сфокусированную область.
ChaoSXDemon
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.