Jump to content

Марширующие кубики

(Перенаправлено из алгоритма марширующих кубов )
Структуры головы и головного мозга (скрыты) извлечены из 150 срезов МРТ с использованием марширующих кубов (около 150 000 треугольников).

Марширующие кубы — это компьютерной графики алгоритм , опубликованный SIGGRAPH 1987 года. Лоренсеном и Клайном в журнале [ 1 ] для извлечения полигональной сетки изоповерхности ( из трехмерного дискретного скалярного поля элементы которого иногда называют вокселями ). Приложения этого алгоритма в основном связаны с медицинской визуализацией, такой как изображения данных КТ и МРТ , а также со специальными эффектами или трехмерным моделированием с использованием того, что обычно называют меташарами или другими метаповерхностями. Алгоритм марширующих кубов предназначен для использования в 3D; двумерная версия этого алгоритма называется алгоритмом марширующих квадратов .

Алгоритм был разработан Уильямом Э. Лоренсеном (1946-2019) и Харви Э. Клайном в результате их исследований для General Electric . В General Electric они работали над способом эффективной визуализации данных с устройств КТ и МРТ. [ 2 ]

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

Первая опубликованная версия алгоритма использовала вращательную и отражательную симметрию, а также изменения знаков для построения таблицы с 15 уникальными случаями. Однако из-за существования неоднозначностей в поведении трилинейного интерполянта на гранях и внутри куба сетки, извлеченные с помощью Marching Cubes, представляли собой разрывы и топологические проблемы. Учитывая куб сетки, неоднозначность грани возникает, когда вершины его грани имеют чередующиеся знаки. То есть вершины одной диагонали на этой грани положительны, а вершины другой – отрицательны. Заметим, что в этом случае знаков вершин грани недостаточно для определения правильного способа триангуляции изоповерхности. Аналогично, внутренняя неоднозначность возникает, когда знаки вершин куба недостаточны для определения правильной триангуляции поверхности , т. е. когда для одной и той же конфигурации куба возможны множественные триангуляции.

Популярность Marching Cubes и его широкое распространение привели к нескольким улучшениям в алгоритме, позволяющим справиться с неоднозначностью и правильно отслеживать поведение интерполянта. Дерст [ 3 ] в 1988 году первым заметил, что таблица триангуляции, предложенная Лоренсеном и Клайном, была неполной и что некоторые случаи марширующих кубов допускают множественную триангуляцию. «Дополнительная ссылка» Дерста была на более раннюю, более эффективную (см. де Араужо) [ 4 ] ) алгоритм полигонизации изоповерхностей Уайвилла, Уивилла и Макфитерса. [ 5 ] Позже Нильсон и Хаманн [ 6 ] в 1991 году наблюдал существование неоднозначностей в поведении интерполянта на грани куба. Они предложили тест под названием «Асимптотический решатель», позволяющий правильно отслеживать интерполянт на гранях куба. Фактически, как заметил Натараджан [ 7 ] в 1994 году эта проблема неоднозначности возникает и внутри куба. В своей работе автор предложил тест устранения неоднозначности, основанный на интерполянтных критических точках, и добавил четыре новых случая в таблицу триангуляции Marching Cubes (подслучаи случаев 3, 4, 6 и 7). На этом этапе, даже несмотря на все улучшения, предложенные в алгоритме и его таблице триангуляции, сетки, созданные Марширующими кубами, все еще имели топологическую некогерентность.

The Marching Cubes 33, proposed by Chernyaev [ 8 ] в 1995 году это один из первых алгоритмов извлечения изоповерхностей, предназначенный для сохранения топологии трилинейного интерполянта. В своей работе Черняев расширяет число случаев в справочной таблице триангуляции до 33. Затем он предлагает другой подход к решению внутренних неоднозначностей, основанный на асимптотическом решателе. Позже, в 2003 году, Нильсон [ 9 ] доказали, что справочная таблица Черняева является полной и может отражать все возможные варианты поведения трилинейного интерполянта, а Левинер и др. [ 10 ] предложил реализацию алгоритма. Также в 2003 году Лопес и Бродли [ 11 ] расширил тесты, предложенные Натараджаном. [ 7 ] В 2013 году Кустодио и др. [ 12 ] отметил и исправил алгоритмические неточности, ставившие под угрозу топологическую корректность сетки, созданной алгоритмом Marching Cubes 33, предложенным Черняевым. [ 8 ]

Первоначально опубликованные 15 конфигураций куба.

Алгоритм

[ редактировать ]

Алгоритм проходит через скалярное поле, одновременно беря восемь соседних местоположений (формируя таким образом воображаемый куб), а затем определяя многоугольник(и), необходимые для представления части изоповерхности , проходящей через этот куб. Отдельные полигоны затем объединяются в желаемую поверхность.

Это делается путем создания индекса предварительно рассчитанного массива из 256 возможных конфигураций полигонов (2 8 =256) внутри куба, рассматривая каждое из 8 скалярных значений как бит 8-битного целого числа. Если значение скаляра выше, чем значение iso (т. е. оно находится внутри поверхности), тогда соответствующий бит устанавливается в единицу, а если оно ниже (снаружи), он устанавливается в ноль. Окончательное значение после проверки всех восьми скаляров является фактическим индексом массива индексов полигонов.

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

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

Патентные вопросы

[ редактировать ]

Реализация алгоритма марширующих кубов была запатентована как патент США № 4710876. [ 2 ] Другой аналогичный алгоритм был разработан, названный марширующими тетраэдрами , чтобы обойти патент, а также решить небольшую проблему неоднозначности марширующих кубов с некоторыми конфигурациями кубов. Срок действия патента истек в 2005 году, и теперь графическому сообществу разрешено использовать его без лицензионных отчислений, поскольку с даты его выдачи (1 декабря 1987 г.) прошло более 20 лет. [ 2 ] ).

Источники

[ редактировать ]
  1. ^ Лоренсен, Уильям Э.; Клайн, Харви Э. (1 августа 1987 г.). «Марширующие кубы: алгоритм построения трехмерной поверхности высокого разрешения». ACM SIGGRAPH Компьютерная графика . 21 (4): 163–169. CiteSeerX   10.1.1.545.613 . дои : 10.1145/37402.37422 .
  2. ^ Jump up to: а б с США выдали патент US4710876A , Клайн, Харви и Лоренсен, Уильям, «Система и метод отображения поверхностных структур, содержащихся во внутренней области твердого тела», выдан 1 декабря 1987 г.  
  3. ^ Дюрст, Мартин Дж. (1 октября 1988 г.). "Re: Дополнительная ссылка на "марширующие кубики" " . ACM SIGGRAPH Компьютерная графика . 22 (5): 243. дои : 10.1145/378267.378271 . ISSN   0097-8930 . S2CID   36741734 .
  4. ^ де Араужо, Бруно; Лопес, Дэниел; Джепп, Полин; Хорхе, Хоаким; Уивилл, Брайан (2015). «Обзор неявной полигонизации поверхности». Обзоры вычислительной техники ACM . 47 (4): 60:1–60:39. дои : 10.1145/2732197 . S2CID   14395359 .
  5. ^ Уивилл, Джефф; Уивилл, Брайан; Макфитерс, Крейг (1986). «Структуры данных для мягких объектов». Визуальный компьютер . 2 (4): 227–234. дои : 10.1007/BF01900346 . S2CID   18993002 .
  6. ^ Нильсон, генеральный менеджер; Хаманн, Б. (1991). «Асимптотический решатель: разрешение неоднозначности в маршевых кубах». Продолжается визуализация '91 . стр. 83–91. дои : 10.1109/visual.1991.175782 . ISBN  978-0818622458 . S2CID   35739150 .
  7. ^ Jump up to: а б Натараджан, Б.К. (январь 1994 г.). «О создании топологически согласованных изоповерхностей из однородных образцов». Визуальный компьютер . 11 (1): 52–62. дои : 10.1007/bf01900699 . ISSN   0178-2789 . S2CID   526698 .
  8. ^ Jump up to: а б В., Черняев Е. (1995). Marching Cubes 33: построение топологически правильных изоповерхностей: представлено на выставке ГРАФИКОН '95, Санкт-Петербург, Россия, 03-07.07.1995 . ЦЕРН. Отдел вычислительной техники и сетей. OCLC   897851506 . {{cite book}}: CS1 maint: несколько имен: список авторов ( ссылка )
  9. ^ Нильсон, генеральный менеджер (2003). «На маршевых кубиках». Транзакции IEEE по визуализации и компьютерной графике . 9 (3): 283–297. дои : 10.1109/TVCG.2003.1207437 .
  10. ^ Левинер, Томас; Лопес, Элио; Виейра, Антониу Уилсон; Таварес, Геован (январь 2003 г.). «Эффективная реализация случаев маршевых кубов с топологическими гарантиями». Журнал графических инструментов . 8 (2): 1–15. дои : 10.1080/10867651.2003.10487582 . ISSN   1086-7651 . S2CID   6195034 .
  11. ^ Лопес, А.; Бродли, К. (2003). «Повышение надежности и точности алгоритма марширующих кубов для изоповерхности» (PDF) . Транзакции IEEE по визуализации и компьютерной графике . 9 : 16–29. дои : 10.1109/tvcg.2003.1175094 . hdl : 10316/12925 .
  12. ^ Кастодио, Лис; Этене, Тьяго; Песко, Синезио; Сильва, Клаудио (ноябрь 2013 г.). «Практические соображения о топологической корректности Marching Cubes 33». Компьютеры и графика . 37 (7): 840–850. CiteSeerX   10.1.1.361.3074 . дои : 10.1016/j.cag.2013.04.004 . ISSN   0097-8493 . S2CID   1930192 .

См. также

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