Що викликає згладжування?


47

Я завжди чую про згладжування та згладжування, і я знаю, як це виглядає, але те, що я не розумію, є причиною цього. Це фізичне явище? Або числовий?

Якщо це допомагає пояснити, я маю деякі знання з програмування, але не у відеоіграх чи графіці.

Відповіді:


60

Це фізичні явища? чи числовий?

Цей різновид запитань для мене означає, що ви насправді не знаєте, що означає згладжування / згладжування. Я маю на увазі, ти кажеш, що ти "знаєш, як це виглядає", але якби ти насправді знав, що означають терміни, ти, мабуть, усвідомлюєш, що твоє питання є безглуздим. Згладжування - це побічний ефект від того, як відображається комп'ютерна графіка, а комп’ютерна графіка за визначенням майже не є фізичними явищами.

"Згладжування" якраз посилається на сходовий вигляд на кутових лініях, оскільки комп’ютерна графіка насправді складається з безлічі крихітних квадратів у сітці. Ось зображення для ілюстрації того, про що я говорю: введіть тут опис зображення

Це питання кожного разу, коли ви зображуєте пікселі на зображенні, незалежно від того, ви малюєте від руки або пишете алгоритм для обчислення пікселів для трикутника 3D. Це лише побічний ефект від того, що зображення є квадратною сіткою пікселів. "Згладжування" - це коли замаскувати вигляд сходової клітки шляхом змішування кольорів уздовж крайових пікселів.


18
@Kruncho Ніколи не шкодуй за те, що помилився, якщо тільки ти не навчаєш інших своїх помилок! Вибачте лише тоді, коли ви не намагаєтесь зрозуміти або не бажаєте їх виправляти. Ваша помилка насправді допомогла з’ясувати, що саме ви просили знати: («як» відбувається згладжування в комп'ютерній графіці?). До уваги, хоча ця відповідь найкраще проілюструє, що, як і чому, це числове питання. Ви можете вважати це обмеженням спроби представити дробові числа, використовуючи лише цілі числа. Немає півпікселя і т. Д. Отже, у вас закінчуються зображення, що виглядають блокадно.
Нечітка логіка

5
@jhocking Педантична корекція: квадрат пікселів насправді не має значення. Згладжування відбудеться так само, якби кожен піксель був круглими крапками однакового розміру.
Нечітка логіка

10
@jhocking "Квадратну сітку" також не виріже. Ви все одно отримаєте згладжування (виглядаючи дещо інакше), якби ваші пікселі були розташовані в шестикутній сітці. Важливо лише те, що пікселі розташовані у звичайній схемі та мають ненульовий розмір, і обидва ці умови справедливі для будь-якої можливої ​​технології відображення.
Майк Скотт

3
Ви зависаєте від слова "квадрат", коли це лише дескриптор для "сітки".
поштовх

11
@MikeScott: Навіть з неправильно розташованими пікселями згладжування з'явиться. :))) Важливою умовою для появи псевдоніму є те, що максимальна частота вихідного сигналу (вихідне зображення) перевищує 2 * (1 / T) (де T - інтервал між зразками = відстань між пікселями ). --- Коли оригінальне зображення має гострі краї (як чорна лінія на білому тлі), то його максимальна частота нескінченна.
pabouk

121

Прийнята відповідь не є строго правильною, хоча стосується найбільш частого використання в комп'ютерній графіці. Псевдонім - це фундаментальне поняття в обробці сигналів, і математична теорія його передує комп'ютерним екранам. Також неправда, що "це побічний ефект від того, що пікселі мають квадратний характер". Згладжування існує у будь-який час, коли ви дискретно вибираєте сигнал зі швидкістю, що перевищує частоту Найквіста для цього сигналу, і впливає на цифровий звук, а також на зображення та багато інших типів дискретно дискретизованих сигналів. Згладжування в комп'ютерній графіці є побічним ефектом дискретного дискретизації, а не форми пікселів.

Поширення згладжування в комп'ютерній графіці є глибокою і складною темою, і в ній є набагато більше, ніж просто крайове згладжування. Знову ж таки, існує багато основної теорії від обробки сигналів, і це активна область дослідження в комп'ютерній графіці, як ефективно протидіювати псевдоніми, не тільки для ребер, але й для тимчасового псевдоніму, для згладжування під час реконструкції BRDF в піксельних шейдерах, для тіні країв і в багатьох інших областях. Mip-зіставлення текстур у 3D-графіці - це добре зарекомендувала себе метод згладжування, який вирішує важливу проблему, крім, наприклад, крайового згладжування.

Це дійсно математичне явище більше, ніж фізичне, але воно проявляється в інженерії в багатьох інших сферах, крім комп'ютерної графіки. Я б і не описував це як числове явище - це результат дискретного вибірки, а не дискретного представлення числових значень на комп'ютері, хоча це також може спричинити відчужуючі ефекти. Розуміння основ обробки сигналів є хорошою основою для розуміння того, як відчуття проявляється в комп'ютерній графіці, і для розуміння способів зменшити його.


6
З одного боку, ей, я сьогодні дізнався щось нове, ніколи не чув про згладжування в будь-якому іншому контексті, крім гранічних граней. Однак, ця додаткова технічна деталь не суперечить поясненню "це побічний ефект від того, що пікселі мають квадратний характер". "Дискретна вибірка" - це просто фантазійний спосіб сказати "край - це насправді купа дискретних пікселів, а не суцільна лінія".
поштовх

15
+1 за технічну коректність. Хоча трохи надто технічно, враховуючи рівень поставленого запитання і насправді не підходить під питання. Прийнята відповідь більше підходить до наміру питання. Хоча я дізнався щось нове, тож дякую за доробки :)
Нечітка логіка

6
@ jhocking Вибачте, нас графічні програмісти, як правило, трохи опрацьовані над псевдонімом :) Я думаю, що ваша відповідь стосується питання, але якщо хтось хоче заглибитись у комп'ютерну графіку, я думаю, що корисно зрозуміти, що псевдонім - це математичні явища з купа теорії за цим. Вся ця технічна деталь корисна для кінцевої мети зробити гарні фотографії в наших іграх :)
mattnewport

4
@jhocking Справа в тому, що не має значення, яка форма пікселів - тому це не побічний ефект від того, що пікселі є квадратними , це побічний ефект від того, що пікселі не змінюють колір над своїм ступінь. І все одно, піксель - це не маленький квадрат .
Даніель Вагнер

1
У вашій відповіді відсутні фотографії, інакше це, безумовно, було б прийнятим. Окрім прикладу крайового антизгладжування, йому потрібно: 1) анімований gif автомобільних коліс, що обертаються за годинниковою стрілкою і раптово зупиняються та змінюють напрямок. 2) 3D шахова дошка (ви знаєте, що йде в нескінченність) ... Я також вивчив обробку сигналів.
MartinTeeVarga

68

Додавши до двох інших відповідей, ось більш інтуїтивне пояснення того, що відбувається.

Згладжування у двовимірному багатокутнику

Квадратні сітки представляють пікселі. Червоний багатокутник зліва - це форма, що малюється, представлена ​​внутрішньо як послідовність точок. Коли він відображається, він перетворюється зі списку точок у буфер кольорів пікселів. Дискретна вибірка визначає, які пікселі темні та які пікселі світлі, виходячи з того, яка частина багатокутника охоплює кожен піксель.

Щоб відповісти на ваше запитання, це числове / математичне явище, оскільки інформація про початкову форму втрачається через наближення.

Згладжування

Антизбудження - це коли рендерінг намагається виправити для згладжування, роблячи частково покриті пікселі менш інтенсивними.


5
Ось перша відповідь, яка справді пояснює, що відбувається. Молодці.
Беска

1
"зробити частково покриті пікселі менш інтенсивними" - це не зовсім так, як я це розумію. Я вважаю, що більшість алгоритмів Anti Aliasing застосовують фільтр низьких частот (такий же, як фільтр розмиття), іноді в усьому відтвореному кадрі (як у FXAA) або більш розумні алгоритми виконують його лише через граничні межі. MSAA робить це по-іншому, але загальний ефект залишається ефектом LPF через жорсткі межі.
Лука

1
@ Люк, я не збирався, щоб останній абзац був поясненням того, як все працює; це лише опис результатів антизбудження. "Інтенсивний" не є правильним терміном, який використовується, але він застосовується, коли антизгладжування робиться на фігуру, колір якої більш інтенсивний, ніж фон. Це все, що я казав.
аебабіс

3

У полі обробки сигналів псевдонім посилається на неправильну ідентифікацію частоти сигналу. Наприклад, через відсутність належного врахування на етапі недостатньої вибірки це може призвести до виникнення помилок та спотворень. Він може бути узагальнений до 2D дискретного сигналу, такого як зображення.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.