Исследователи из Университета Далласа нашли действительно умный способ решения проблемы анизотропной сетки — сделать это в более высоких измерениях, а затем отобразить его обратно в 3D. В результате получается более быстрая и точная сетка.
Большинство 3D-моделей используют сетку из простых треугольников. Во многих случаях треугольники имеют одинаковый размер, но вы можете получить лучшее представление, изменив размер треугольника. Идея заключается в том, что там, где кривизна поверхности велика, вам нужно больше треугольников, а там, где она приближается к плоской, вам нужно гораздо меньше.
Полученную сетку обычно называют неоднородной изотропной, поскольку она использует одну и ту же форму треугольника. Следующий уровень улучшения заключается в разделении поверхности с использованием различных форм и размеров треугольника — так называемой анизотропной сетки. Анизотропная сетка может более точно представлять поверхность с меньшим количеством треугольников, что ускоряет рендеринг, но создать такую сетку сложно. Та же идея может ускорить точное моделирование, такое как динамика жидкости. Для таких применений нам нужно было бы подгонять сетку в соответствии с другими физическими условиями, а не только с кривизной.
Можно показать, что анизотропия треугольников должна зависеть от соотношения кривизны в двух направлениях. Проблему можно рассматривать как попытку наилучшим образом подогнать сетку к изогнутой поверхности, но именно кривизна делает проблему сложной. Вы должны работать с тензором кривизны и минимизировать ошибку в искривленном пространстве.
Именно здесь вступает в силу теорема о вложении Нэша. Джон Форбс Нэш, тот же математик, ответственный за равновесие Нэша и сыгравший в фильме «Прекрасный разум», выяснил, что если вы всегда можете вложить искривленное пространство, то есть риманово многообразие, в идеально плоское, то есть евклидово, пространство. Это здорово, потому что это означает, что вы можете выполнять всю работу в простом плоском пространстве. Проблема в том, что плоское пространство, возможно, должно иметь больше размеров, чем исходное пространство, чтобы позволить ему принять кривизну.
Например, если вы живете на поверхности двумерной сферы, вам нужно измерить расстояние с помощью соответствующей метрики, например, расстояние между двумя точками-это не расстояние по прямой, а расстояние по большому кругу. Однако 2D-криволинейная поверхность может быть встроена в плоское 3D — пространство-то есть вы можете отступить от сферы в 3D и увидеть ее как криволинейную поверхность в плоском пространстве.
Команда из Далласа под руководством доктора Сяоху Го использовала теорему вложения Нэша для преобразования задачи поиска анизотропной сетки в изотропную сетку в плоском пространстве. Как только у вас есть изотропная сетка, вы можете отобразить ее обратно в исходное пространство нижнего измерения, где она становится анизотропной. Например, на диаграмме, взятой из исследовательской работы, вы можете видеть, что 2D анизотропная сетка соответствует проекции изотропной сетки вправо:
Конечно, в реальных случаях требуется более трех измерений.
Стоит ли вся эта дополнительная работа того?
Похоже, что переход к анизотропной сетке создает более гладкие объекты и ускоряет процесс более чем в 100 раз. Например, 155 секунд для создания кругового изображения против 19 500 секунд для стандартной сетки того же качества.
Целью работы является создание точных 3D-моделей органов человека, отображаемых медицинскими сканерами, путем расширения работы для охвата объемных представлений.