Що означає вокселізація “6-роздільна” та “26-роздільна”?


11

Я читав цей документ про Voxelpipe, бібліотеку вокселізації від NVIDIA, і я виявив у розділі 2 Voxelization терміни 6-роздільний і 26-роздільний

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

Чи може хтось пояснити або вказати на якийсь інший ресурс, який може допомогти мені зрозуміти?

Відповіді:


17

Терміни мають відношення до "товщини" вокселізації. Я проілюструю за допомогою діаграми про дворівневу растризацію рядків (з цього незв'язаного питання ).

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

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

6-роздільна вокселізація - це як тонка лінія праворуч, а 26-роздільна - як товста лінія зліва, але в 3D. Якщо ви уявляєте, що лінія насправді є трикутником, переглянутим на краю, це аналогічно тому, як виглядатиме вокселізація.

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

"N-роздільна" термінологія дещо прикро, але ось, до чого це стосується. Уявіть, що ви робите 3D-заливку в сітці вокселів, але в заливці ви дивитесь лише на 6 прямих сусідів кожного вокселя (± 1 крок по кожній осі). Тоді «6-роздільна» (тонка) вокселізація зупинить заливку: достатньо відокремити дві сторони поверхні, якщо розглядати лише 6 сусідів. З іншого боку, припустімо, що ваша заповнення дозволила перейти і до діагональних сусідів - 26 сусідів у всіх (3 × 3 × 3 околиць вокселів). Тоді 6-відокремлювальна вокселізація не зупинить заливку, але 26-роздільна (товста) буде.


Приємно! Ваше пояснення дає мені інтуїцію щодо цього. Чи трапляється у вас джерела, де я можу прочитати трохи більше про растерізацію? Я припускаю, що цей розділовий матеріал походить від 2D, де його легше зрозуміти, і тоді я можу більше роздумувати, щоб зрозуміти 6- та 26-розділення в 3D.
BRabbit27

1
@ BRabbit27 Я не думаю, що термінологія, що розділяє n, дуже використовується в двовимірній растерізації; Я бачив це лише під час обговорення вокселізації. Це просто стосується кількості сусідів. Я додам трохи відповіді на це.
Натан Рід
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.