Пиксель. История одной точки - Элви Рэй Смит
Шрифт:
Интервал:
Рис. 7.5
Рис. 7.6
Теорема выборки очень ясна. Делайте выборку с (чуть более чем) удвоенной максимальной частотой. Но у геометрического треугольника острые грани. Вспомните наше эмпирическое правило в отношении частоты: острые края — это высокие частоты, а очень острые края — это очень высокие частоты. На самом деле мы не сможем делать выборку достаточно часто для того, чтобы получить идеальный треугольник. Его края содержат слишком высокие (если не сказать бесконечно высокие) частоты. Пиксели и элементы дисплея должны быть расположены слишком близко друг к другу, чтобы это было физически или экономически целесообразно.
В компьютерной графике мы обычно работаем в другом направлении. Расстояние между пикселями заранее задано, как и в нашем примере, и мы должны подгонять под него теорему отсчетов. Это означает, что мы должны избавить идеальный треугольник от его высоких частот — от острых граней. Мы должны убедиться, что края достаточно закруглены, чтобы подъем интенсивности света от фонового уровня на них не происходил быстрее, чем заданное расстояние между пикселями. На рисунке 7.7 показаны два идеальных треугольника после того, как они подверглись такому размытию, чтобы из пикселей могла сложиться правильная выборка. Маленький треугольник почти исчез. Треугольники выглядят очень сильно размытыми. Но представьте, будто фактический интервал между пикселями составляет, скажем, 1/100 изображенного на рисунке интервала, что больше соответствует расстоянию между элементами дисплея на вашем мобильном телефоне. Тогда размытие останется незаметным. Конечно, на этой иллюстрации все масштабы сильно преувеличены.
Рис. 7.7
На рисунке 7.8 показаны пиксели, полученные в результате выборки размытых треугольников. Опять же, мы не можем видеть пиксели и у них нет формы, поэтому маленькие кружочки только обозначают пиксели — их местоположение и записанный в них цвет. На этот раз маленький треугольник не исчезает полностью.
Вспомним, что говорит нам теорема выборки: когда представленные таким образом пиксели отображаются на дисплее, мы снова увидим два размытых треугольника. Это не идеальные геометрические синие треугольники нашей модели. Такое безупречное совершенство невозможно точно передать с помощью пикселей. Это просто еще один способ сформулировать теорему выборки. Хитрость заключается в том, что при достаточно высоком разрешении мы, люди, будем чувствовать себя комфортно, глядя на слегка размытые треугольники, так как на обычном расстоянии для просмотра они не покажутся нам размытыми.
Но есть проблема с идеальным рендерингом, который я только что описал. Что значит удалить слишком высокие частоты из геометрии с острыми краями? Что заменит треугольник в модели? Его следует заменить компьютерным описанием треугольника со сглаженными краями. Тогда, если два треугольника примыкают друг к другу, место соединения нужно сгладить и как-то описать в модели. Это уже не простые геометрические концепции. На самом деле никто не заменяет геометрическую модель в компьютерной графике сглаженной версией, с удалением слишком высоких частот. Тогда что же делают для решения проблемы? Разрабатывают все более и более сложные способы приблизиться к идеальному варианту. На самом деле вся история компьютерной графики состоит из попыток добиться наилучшего приближения, способного обмануть наше зрение. Далее я расскажу об одном из приемов.
Рис. 7.8
Субдискретизация
Почему бы нам не сделать выборку из более близко расположенных пикселей? Скажем, в два раза чаще? Представьте, что пиксели расположены в два раза плотнее. На рисунке 7.9 слева показана старая сетка отсчетов, а в середине — предлагаемая новая, более плотная. Справа вы видите их наложение друг на друга. Более плотная выборка, по сути, удвоит частоту (как по горизонтали, так и по вертикали), при которой начнут появляться неприятные артефакты, такие как зубцы и неровности. Но сложность в том, что мы не в состоянии позволить себе кадровый буфер, где ячеек памяти в четыре раза больше. Что же тогда делать?
Идея состоит в том, чтобы делать выборки в четырех местах, окружающих каждое прежнее местоположение пикселя (большие точки), как показано на рисунке справа. Четыре выборки, полученные таким образом, назовем подвыборками или подпикселями. Четыре цвета подвыборки усредняются, чтобы сформировать цвет одного фактического пикселя — того, который сохраняется и отправляется элементу отображения. Как вы видите на рисунке, местоположение каждого пикселя окружено массивом подвыборки с размером 2 на 2.
Я использовал массив 2 на 2 для простоты иллюстрации, но более высокие плотности тоже работают. Pixar использует субдискретизацию 4 на 4. На рисунке 7.10 показаны два варианта крупным планом. Большая точка — это фактическое местоположение пикселя, а окружающие маленькие точки — это местоположения для получения значений цветовых отсчетов. В случае субдискретизации 4 на 4 усредняются 16 цветов, формируя одно цветовое значение, хранящееся в фактическом пикселе, — цвет, который в конечном итоге отправляется на элемент дисплея для разбрасывания и отображения.
Рис. 7.9
Трюк с субдискретизацией эффективно увеличивает разрешение конечного изображения, но полностью не устраняет артефакты, возникающие из-за дискретизации очень высоких частот (например, краев треугольников) на слишком низкой частоте, не удовлетворяющей условию теоремы отсчетов. Подвыборка с массивом 2 на 2 удваивает самую высокую частоту, которая доступна для адекватной обработки с дискретными выборками, а массив 4 на 4 увеличивает максимальную частоту в четыре раза. Но на острых краях остаются еще более высокие частоты, которые оба вида субдискретизации зарегистрировать не в состоянии. Однако существует на удивление эффективный прием, который все-таки решает эту проблему. Мы вернемся к нему, когда закон Мура обеспечит еще три порядка вычислительной мощности.
Рис. 7.10
Реальность — расширение Центральной Догмы
Реальность — это просто удобная мера сложности.
— Элви Рэй Смит
«Ваша цель — смоделировать реальность?» — этот вопрос мне постоянно задавали на всех лекциях, которые я читал на заре компьютерной графики. «Нет!» — хотелось огрызнуться мне, потому что навязчивые повторения очень раздражали. Мы хотели создавать искусство, а не
Поделиться книгой в соц сетях:
Обратите внимание, что комментарий должен быть не короче 20 символов. Покажите уважение к себе и другим пользователям!