Jump to content

Анизотропная фильтрация

Иллюстрация методов фильтрации текстур, показывающая текстуру с трилинейным мип-мэппингом (слева) и анизотропной фильтрацией текстур.

В 3D-графике компьютерной применяется анизотропная фильтрация (сокращенно AF ). [1] [2] — это метод улучшения качества изображения текстур на поверхностях компьютерной графики, находящихся под наклонными углами обзора по отношению к камере, при которых проекция текстуры (а не многоугольника или другого примитива , на котором она визуализируется) кажется некачественной. ортогональный (отсюда и происхождение слова: «an» означает « не » , «iso» означает «тот же » и «тропик» от тропизма , относящегося к направлению; анизотропная фильтрация не фильтрует одно и то же во всех направлениях).

Подобно билинейной и трилинейной фильтрации , анизотропная фильтрация устраняет наложения спектров . эффекты [3] [4] но улучшает эти другие методы, уменьшая размытие и сохраняя детали при экстремальных углах обзора.

Анизотропная фильтрация является относительно интенсивной (в первую очередь пропускной способностью памяти и, в некоторой степени , вычислительной , хотя применяются стандартные правила компромисса между пространством и временем ) и стала стандартной функцией видеокарт потребительского уровня только в конце 1990-х годов. [5] Анизотропная фильтрация теперь широко распространена в современном графическом оборудовании (и программном обеспечении видеодрайвера) и включается либо пользователями через настройки драйвера, либо графическими приложениями и видеоиграми через программные интерфейсы.

Улучшение изотропного MIP картирования

Пример хранения анизотропных MIP-изображений: основное изображение в левом верхнем углу сопровождается отфильтрованными, линейно преобразованными копиями уменьшенного размера.
Изотропное MIP-изображение того же изображения

С этого момента предполагается, что читатель знаком с отображением MIP .

Если бы нам пришлось исследовать более приблизительный анизотропный алгоритм, RIP-отображение, как расширение MIP-отображения, мы могли бы понять, как анизотропная фильтрация обеспечивает такое высокое качество отображения текстур. [6] Если нам нужно текстурировать горизонтальную плоскость, расположенную под косым углом к ​​камере, традиционная минификация MIP-карты даст нам недостаточное горизонтальное разрешение из-за уменьшения частоты изображения по вертикальной оси. Это связано с тем, что при отображении MIP каждый уровень MIP изотропен, поэтому текстура 256 × 256 уменьшается до изображения 128 × 128, затем изображения 64 × 64 и так далее, поэтому разрешение уменьшается вдвое по каждой оси одновременно, поэтому текстура карты MIP зонд к изображению всегда будет выбирать изображение, имеющее одинаковую частоту по каждой оси. Таким образом, при дискретизации во избежание наложения на высокочастотной оси другие оси текстуры будут аналогичным образом субдискретизированы и, следовательно, потенциально размыты.

При анизотропной фильтрации MIP-карт, помимо понижения разрешения до 128 × 128, изображения также дискретизируются до размеров 256 × 128, 32 × 128 и т. д. Эти изображения с анизотропно пониженной дискретизацией можно исследовать, когда частота изображения с отображением текстуры различна для каждой оси текстуры. Таким образом, одна ось не должна размываться из-за частоты экрана другой оси, и сглаживание по-прежнему предотвращается. В отличие от более общей анизотропной фильтрации, MIP-отображение, описанное для иллюстрации, ограничено поддержкой только анизотропных зондов, выровненных по осям в текстурном пространстве , поэтому диагональная анизотропия по-прежнему представляет собой проблему, даже несмотря на то, что в реальных случаях анизотропной текстуры обычно используются такие отображения экранного пространства. .

Хотя реализации могут свободно варьировать свои методы, отображение MIP и связанные с ним ограничения по оси означают, что оно неоптимально для истинной анизотропной фильтрации и используется здесь только в иллюстративных целях. Полностью анизотропная реализация описана ниже.

С точки зрения непрофессионала, анизотропная фильтрация сохраняет «резкость» текстуры, обычно теряемую из-за попыток текстуры карты MIP избежать наложения. сглаженных Таким образом, можно сказать, что анизотропная фильтрация сохраняет четкую детализацию текстур при всех ориентациях просмотра, обеспечивая при этом быструю фильтрацию текстур .

Поддерживаемая степень анизотропии [ править ]

Во время рендеринга могут применяться различные степени или коэффициенты анизотропной фильтрации, и текущие реализации аппаратного рендеринга устанавливают верхнюю границу этого коэффициента. [7] Эта степень относится к максимальному коэффициенту анизотропии, поддерживаемому процессом фильтрации. Например, анизотропная фильтрация 4:1 (произносится как «4-к-1») продолжит повышать резкость более наклонных текстур за пределами диапазона, в котором резкость составляет 2:1. [8]

На практике это означает, что в ситуациях с сильно наклонным текстурированием фильтр 4:1 будет в два раза резче, чем фильтр 2:1 (он будет отображать частоты в два раза больше, чем фильтр 2:1). Однако для большей части сцены фильтр 4:1 не потребуется; только более наклонные и обычно более удаленные пиксели потребуют более четкой фильтрации. Это означает, что по мере того, как степень анизотропной фильтрации продолжает удваиваться, отдача от качества видимого изображения снижается, при этом затрагивается все меньше и меньше отображаемых пикселей, и результаты становятся менее очевидными для зрителя.

Если сравнивать результаты рендеринга сцены с анизотропной фильтрацией 8:1 со сценой с фильтрацией 16:1, то только относительно небольшое количество сильно наклоненных пикселей, в основном на более удаленной геометрии, будут отображать заметно более резкие текстуры в сцене с более высокой степенью анизотропии. фильтрации, и информация о частоте этих нескольких пикселей, отфильтрованных с соотношением 16:1, будет только вдвое больше, чем с фильтром 8:1. Снижение производительности также уменьшается, поскольку меньшее количество пикселей требует выборки данных с большей анизотропией.

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

Реализация [ править ]

Настоящая анизотропная фильтрация анизотропно исследует текстуру на лету попиксельно на предмет любой ориентации анизотропии.

В графическом оборудовании, как правило, когда выборка текстуры осуществляется анизотропно, берется несколько проб ( выборок текселей ) текстуры вокруг центральной точки, но на образец образца, отображаемый в соответствии с проецируемой формой текстуры в этом пикселе, [9] хотя более ранние программные методы использовали таблицы суммированных площадей . [10]

Каждый зонд анизотропной фильтрации часто сам по себе является отфильтрованным образцом карты MIP, что добавляет к процессу дополнительную выборку. Для шестнадцати трилинейных анизотропных выборок может потребоваться 128 выборок из сохраненной текстуры, поскольку для трилинейной фильтрации карт MIP необходимо взять четыре выборки, умноженные на два уровня MIP, а затем для анизотропной выборки (при 16 касаниях) необходимо взять шестнадцать таких проб с трилинейной фильтрацией.

Однако такой уровень сложности фильтрации требуется не всегда. Существуют общедоступные методы уменьшения объема работы, которую должно выполнять оборудование рендеринга видео.

Метод анизотропной фильтрации, наиболее часто реализуемый на графическом оборудовании, представляет собой композицию отфильтрованных значений пикселей только из одной строки образцов карты MIP. В общем, метод построения текстурного фильтра, возникающий в результате заполнения несколькими зондами выборки проецируемых пикселей в пространстве текстур, называется «сборкой посадочного места», даже если детали реализации различаются. [11] [12] [13]

Производительность и оптимизация [ править ]

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

Устройство отображения видео может легко содержать более двух миллионов пикселей, а желаемая частота кадров приложения часто превышает 60 кадров в секунду. В результате требуемая пропускная способность текстурной памяти может вырасти до больших значений. Диапазоны пропускной способности конвейера в сотни гигабайт в секунду для операций рендеринга текстур не являются чем-то необычным, когда задействованы операции анизотропной фильтрации. [14]

К счастью, несколько факторов смягчают ситуацию в пользу повышения производительности:

  • Сами зонды совместно используют кэшированные образцы текстур, как межпиксельные, так и внутрипиксельные. [15]
  • Даже при 16-кратной анизотропной фильтрации все 16 отводов не всегда необходимы, поскольку только отдаленные сильно наклонные пиксельные заливки имеют тенденцию быть сильно анизотропными. [8]
  • Сильно анизотропная заливка пикселей имеет тенденцию покрывать небольшие области экрана (т.е. обычно менее 10%). [8]
  • Фильтры увеличения текстур (как правило) не требуют анизотропной фильтрации.

См. также [ править ]

Ссылки [ править ]

  1. ^ «Что такое анизотропная фильтрация? - Technipages» . 8 июля 2020 г.
  2. ^ Юинс, Джон П.; Уоллер, Маркус Д.; Уайт, Мартин; Листер, Пол Ф. (апрель 2000 г.). «Реализация анизотропного текстурного фильтра — ScienceDirect» . Компьютеры и графика . 24 (2): 253–267. дои : 10.1016/S0097-8493(99)00159-4 .
  3. ^ Блинн, Джеймс Ф.; Ньюэлл, Мартин Э. (октябрь 1976 г.). «Графика и обработка изображений: текстура и отражение в компьютерных изображениях» (PDF) . Коммуникации АКМ . 19 (10): 542–547. дои : 10.1145/360349.360353 . S2CID   408793 . Проверено 20 октября 2017 г.
  4. ^ Хекберт, Пол С. (ноябрь 1986 г.). «Обзор наложения текстур» (PDF) . IEEE Компьютерная графика и приложения . 6 (11): 56–67. дои : 10.1109/MCG.1986.276672 . S2CID   6398235 . Проверено 20 октября 2017 г.
  5. ^ «Информационный документ Radeon» (PDF) . ATI Technologies Inc. 2000. с. 23 . Проверено 20 октября 2017 г.
  6. ^ «Глава 5: Текстурирование» (PDF) . CS559, осень 2003 г. Университет Висконсина-Мэдисона . 2003 . Проверено 20 октября 2017 г.
  7. ^ «Анизотропная фильтрация» . Корпорация Нвидиа . Проверено 20 октября 2017 г.
  8. ^ Jump up to: Перейти обратно: а б с «Сглаживание текстур» . Видеокарта ATI Radeon 9700 Pro . Технический отчет . 16 сентября 2002 года . Проверено 20 октября 2017 г.
  9. ^ Олано, Марк; Мукерджи, Шриджит; Дорби, Ангус (2001). «Анизотропное текстурирование на основе вершин». Материалы семинара ACM SIGGRAPH/EUROGRAPHICS по графическому оборудованию (PDF) . стр. 95–98. CiteSeerX   10.1.1.1.6886 . дои : 10.1145/383507.383532 . ISBN  978-1581134070 . S2CID   14022450 . Архивировано из оригинала (PDF) 14 февраля 2017 г. Проверено 20 октября 2017 г.
  10. ^ Кроу, Франклин К. (июль 1984 г.). «Таблицы суммированных площадей для наложения текстур». Материалы 11-й ежегодной конференции по компьютерной графике и интерактивным технологиям - SIGGRAPH '84 (PDF) . Том. 18. стр. 207–212. дои : 10.1145/800031.808600 . ISBN  0897911385 . S2CID   2210332 . Проверено 20 октября 2017 г.
  11. ^ Шиллинг, А.; Книттель, Г.; Штрассер, В. (май 1996 г.). «Texram: умная память для текстурирования». IEEE Компьютерная графика и приложения . 16 (3): 32–41. дои : 10.1109/38.491183 .
  12. ^ Чен, Баоцюань; Дачилль, Фрэнк; Кауфман, Ари (март 2004 г.). «Выборочное текстурирование области следа» (PDF) . Транзакции IEEE по визуализации и компьютерной графике . 10 (2): 230–240. дои : 10.1109/TVCG.2004.1260775 . ПМИД   15384648 . S2CID   10957724 . Проверено 20 октября 2017 г.
  13. ^ Ленш, Хендрик (2007). «Компьютерная графика: теория фильтрации текстур и выборки» (PDF) . Институт информатики Макса Планка . Проверено 20 октября 2017 г.
  14. ^ Мэй, Синьсинь; Чу, Сяовэнь (8 сентября 2015 г.). «Анализ иерархии памяти графического процессора с помощью микробенчмаркинга». arXiv : 1509.02308 [ cs.AR ]. Доступ 20 октября 2017 г.
  15. ^ Игехи, Хоман; Элдридж, Мэтью; Праудфут, Кекоа (1998). «Предварительная выборка в архитектуре кэша текстур» . Семинар Eurographics/SIGGRAPH по графическому оборудованию . Стэнфордский университет . Проверено 20 октября 2017 г.

Внешние ссылки [ править ]

Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 773a07cdf8468d048aba078c8725b647__1693121340
URL1:https://arc.ask3.ru/arc/aa/77/47/773a07cdf8468d048aba078c8725b647.html
Заголовок, (Title) документа по адресу, URL1:
Anisotropic filtering - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)