stringtranslate.com

Объемная визуализация

Несколько рентгеновских томографовколичественной калибровкой плотности минералов ), сложенных для формирования трехмерной модели
Объемная компьютерная томография предплечья с различными цветовыми схемами для мышц, жира, костей и крови

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

Типичный набор 3D-данных представляет собой группу 2D-изображений срезов, полученных с помощью КТ , МРТ или микроКТ- сканера . Обычно они получаются в регулярном шаблоне (например, один срез на каждый миллиметр глубины) и обычно имеют регулярное количество пикселей изображения в регулярном шаблоне. Это пример регулярной объемной сетки, в которой каждый элемент объема или воксель представлен одним значением, которое получается путем выборки непосредственной области, окружающей воксель.

Для визуализации 2D-проекции набора 3D-данных сначала необходимо определить камеру в пространстве относительно объема. Также необходимо определить непрозрачность и цвет каждого воксела. Обычно это определяется с помощью функции передачи RGBA (для красного, зеленого, синего, альфа), которая определяет значение RGBA для каждого возможного значения воксела.

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

Другим методом объемной визуализации является Ray marching .

Объем

Типы презентаций КТ-снимков с двумя примерами объемной визуализации

Объемная визуализация отличается от презентаций томографии тонких срезов , а также, как правило, отличается от проекций 3D-моделей, включая проекцию максимальной интенсивности . [1] Тем не менее, технически, все объемные визуализации становятся проекциями при просмотре на 2-мерном дисплее , делая различие между проекциями и объемными визуализациями немного размытым. Тем не менее, воплощения моделей объемной визуализации включают в себя смесь, например, окраски [2] и затенения [3] для создания реалистичных и/или наблюдаемых представлений.

Прямой объемный рендеринг

Прямой объемный рендерер [4] [5] требует, чтобы каждое значение сэмпла было сопоставлено с непрозрачностью и цветом. Это делается с помощью « передаточной функции », которая может быть простым наклоном, кусочно-линейной функцией или произвольной таблицей. После преобразования в значение цветовой модели RGBA (для красного, зеленого, синего, альфа) составной результат RGBA проецируется на соответствующий пиксель буфера кадра. Способ, которым это делается, зависит от техники рендеринга.

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

Объемное рей-литье

Объемное лучевое литье. Мумия крокодила предоставлена ​​Музеем антропологии Фиби А. Херст, Калифорнийский университет в Беркли. Данные КТ были получены Ребеккой Фариг, кафедра радиологии Стэнфордского университета, с использованием Siemens SOMATOM Definition, Siemens Healthcare. Изображение было обработано с помощью движка High Definition Volume Rendering® компании Fovia.

Метод объемного луча может быть получен непосредственно из уравнения рендеринга . Он обеспечивает результаты очень высокого качества, обычно считающиеся обеспечивающими наилучшее качество изображения. Объемный луча классифицируется как метод объемного рендеринга на основе изображения, поскольку вычисления исходят из выходного изображения, а не из входных объемных данных, как в случае с методами, основанными на объектах. В этом методе луч генерируется для каждого желаемого пикселя изображения. Используя простую модель камеры, луч начинается в центре проекции камеры (обычно точка глаза) и проходит через пиксель изображения на воображаемой плоскости изображения, плавающей между камерой и объемом, который нужно визуализировать. Луч отсекается границами объема, чтобы сэкономить время. Затем луч дискретизируется с регулярными или адаптивными интервалами по всему объему. Данные интерполируются в каждой точке выборки, передаточная функция применяется для формирования выборки RGBA, выборка накладывается на накопленную RGBA луча, и процесс повторяется до тех пор, пока луч не выйдет из объема. Цвет RGBA преобразуется в цвет RGB и помещается в соответствующий пиксель изображения. Процесс повторяется для каждого пикселя на экране, чтобы сформировать законченное изображение.

Шлепанье

Это техника, которая жертвует качеством ради скорости. Здесь каждый элемент объема разбрызгивается , как сказал Ли Вестовер, как снежный ком, на поверхность просмотра в порядке от заднего плана к переднему. Эти разбрызгивания визуализируются как диски, свойства которых (цвет и прозрачность) изменяются диаметрально противоположно в нормальном ( гауссовском ) порядке. Плоские диски и диски с другими видами распределения свойств также используются в зависимости от приложения. [6] [7]

Сдвиг основы

Пример визуализации черепа мыши (КТ) с использованием алгоритма деформации сдвига

Подход к объемному рендерингу с помощью деформации сдвига был разработан Кэмероном и Ундриллом, популяризирован Филиппом Лакрутом и Марком Левоем . [8] В этой технике преобразование просмотра преобразуется таким образом, что ближайшая грань объема становится выровненной по оси с буфером данных изображения вне экрана с фиксированным масштабом вокселей в пиксели. Затем объем визуализируется в этот буфер с использованием гораздо более благоприятного выравнивания памяти и фиксированных коэффициентов масштабирования и смешивания. После того, как все срезы объема были визуализированы, буфер затем деформируется в желаемую ориентацию и масштабируется в отображаемом изображении.

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

Объемный рендеринг на основе текстур

Объемная визуализация головы трупа с использованием текстурного отображения, выровненного по виду, и диффузного отражения

Многие системы 3D-графики используют текстурное отображение для нанесения изображений или текстур на геометрические объекты. Обычные графические карты ПК быстро текстурируют и могут эффективно визуализировать срезы 3D-объема с возможностями взаимодействия в реальном времени. Графические процессоры рабочих станций еще быстрее и являются основой для большей части визуализации объемов производства, используемой в медицинской визуализации , нефтегазовой отрасли и других рынках (2007). В более ранние годы специализированные системы 3D-текстурного отображения использовались в графических системах, таких как Silicon Graphics InfiniteReality , графический ускоритель HP Visualize FX и другие. Впервые этот метод был описан Биллом Хиббардом и Дэйвом Сантеком. [9]

Эти срезы могут быть либо выровнены с объемом и визуализированы под углом к ​​зрителю, либо выровнены с плоскостью просмотра и взяты из невыровненных срезов через объем. Для второго метода необходима поддержка графического оборудования для 3D-текстур.

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

Аппаратно-ускоренная объемная визуализация

Из-за чрезвычайно параллельной природы прямого объемного рендеринга, специальное аппаратное обеспечение объемного рендеринга было богатой темой для исследований до того, как объемный рендеринг на GPU стал достаточно быстрым. Наиболее широко цитируемой технологией была система ray-casting в реальном времени VolumePro, разработанная Ганспетером Пфистером и учеными из Mitsubishi Electric Research Laboratories , [10] которая использовала высокую пропускную способность памяти и грубую силу для рендеринга с использованием алгоритма ray casting. Технология была передана TeraRecon, Inc., и были произведены и проданы два поколения ASIC. VP1000 [11] был выпущен в 2002 году, а VP2000 [12] в 2007 году.

Недавно разработанная технология ускорения традиционных алгоритмов объемного рендеринга, таких как ray-casting, заключается в использовании современных графических карт. Начиная с программируемых пиксельных шейдеров , люди осознали мощь параллельных операций над несколькими пикселями и начали выполнять вычисления общего назначения на графических процессорах (GPGPU). Пиксельные шейдеры способны считывать и записывать случайным образом из видеопамяти и выполнять некоторые базовые математические и логические вычисления. Эти процессоры SIMD использовались для выполнения общих вычислений, таких как рендеринг полигонов и обработка сигналов. В последних поколениях GPU пиксельные шейдеры теперь могут функционировать как процессоры MIMD (теперь способные к независимому ветвлению), используя до 1 ГБ текстурной памяти с форматами с плавающей точкой. С такой мощностью практически любой алгоритм с шагами, которые могут выполняться параллельно, например, объемное ray casting или томографическая реконструкция , может быть выполнен с огромным ускорением. Программируемые пиксельные шейдеры могут использоваться для моделирования изменений в характеристиках освещения, тени, отражения , цвета излучения и так далее. Такие симуляции можно писать с использованием языков шейдеров высокого уровня .

Методы оптимизации

Основная цель оптимизации — пропустить как можно большую часть объема. Типичный набор медицинских данных может иметь размер 1 ГБ. Для рендеринга этого со скоростью 30 кадров/с требуется чрезвычайно быстрая шина памяти. Пропуск вокселей означает, что нужно обрабатывать меньше информации.

Пропуск пустого пространства

Часто система объемного рендеринга будет иметь систему для идентификации областей объема, не содержащих видимого материала. Эта информация может быть использована для избежания рендеринга этих прозрачных областей. [13]

Раннее прекращение луча

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

Подразделение пространства Octree и BSP

Использование иерархических структур, таких как октодерево и BSP -дерево, может быть очень полезным как для сжатия объемных данных, так и для оптимизации скорости процесса объемного луча.

Сегментация объема

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

Визуализация внутренних органов из сегментированного набора данных Visible Human , созданного Voxel-Man , рядом с рисунком Леонардо да Винчи (1998)

Сегментация изображения — это ручная или автоматическая процедура, которая может использоваться для выделения больших частей объема, которые считаются неинтересными перед рендерингом, объем вычислений, которые должны быть выполнены с помощью ray casting или смешивания текстур, может быть значительно сокращен. Это сокращение может быть от O(n) до O(log n) для n последовательно индексированных вокселей. Сегментация объема также имеет значительные преимущества в производительности для других алгоритмов трассировки лучей . Сегментация объема может впоследствии использоваться для выделения или раскрытия [14] интересующих структур.

Представление множественного и адаптивного разрешения

Представляя менее интересные области объема в более грубом разрешении, можно сократить накладные расходы на ввод данных. При более близком наблюдении данные в этих областях могут быть заполнены либо путем чтения из памяти или диска, либо путем интерполяции . Объем с более грубым разрешением повторно сэмплируется до меньшего размера таким же образом, как изображение 2D mipmap создается из оригинала. Эти меньшие объемы также используются сами по себе при повороте объема в новую ориентацию.

Предварительно интегрированный объемный рендеринг

Предварительно интегрированный объемный рендеринг [15] — это метод, который может уменьшить артефакты выборки путем предварительного вычисления большей части требуемых данных. Он особенно полезен в аппаратно-ускоренных приложениях [16] [17] , поскольку он улучшает качество без значительного влияния на производительность. В отличие от большинства других оптимизаций, он не пропускает воксели. Вместо этого он уменьшает количество выборок, необходимых для точного отображения области вокселей. Идея состоит в том, чтобы визуализировать интервалы между выборками вместо самих выборок. Этот метод захватывает быстро меняющийся материал, например, переход от мышц к костям с гораздо меньшими вычислениями.

Создание сетки на основе изображений

Создание сеток на основе изображений — это автоматизированный процесс создания компьютерных моделей из данных трехмерных изображений (таких как МРТ , КТ , промышленная КТ или микротомография ) для вычислительного анализа и проектирования, например, САПР, вычислительной гидродинамики и конечноэлементного анализа.

Временное повторное использование вокселей

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

Список сопутствующего программного обеспечения

С открытым исходным кодом
Коммерческий
Пример мозга мухи, визуализированный с использованием моделей поверхностей его отсеков с помощью Vaa3D

Смотрите также

Ссылки

  1. ^ Фишман, Эллиот К .; Ней, Дерек Р.; Хит, Дэвид Г.; Корл, Фрэнк М.; Хортон, Карен М.; Джонсон, Памела Т. (2006). «Объемная визуализация против проекции максимальной интенсивности в КТ-ангиографии: что работает лучше всего, когда и почему». RadioGraphics . 26 (3): 905–922. doi : 10.1148/rg.263055186 . ISSN  0271-5333. PMID  16702462.
  2. ^ Silverstein, Jonathan C.; Parsad, Nigel M.; Tsirline, Victor (2008). «Автоматическая генерация перцептивной цветовой карты для реалистичной визуализации объема». Journal of Biomedical Informatics . 41 (6): 927–935. doi :10.1016/j.jbi.2008.02.008. ISSN  1532-0464. PMC 2651027 . PMID  18430609. 
  3. Страница 185 в Leif Kobbelt (2006). Vision, Modeling, and Visualization 2006: Proceedings, November 22-24 . IOS Press. ISBN 9783898380812.
  4. ^ Марк Левой, «Отображение поверхностей из объемных данных», IEEE CG&A, май 1988 г. Архив статей
  5. ^ Дребин, Роберт А.; Карпентер, Лорен; Ханрахан, Пэт (1988). «Объемная визуализация». ACM SIGGRAPH Computer Graphics . 22 (4): 65. doi :10.1145/378456.378484. Дребин, Роберт А.; Карпентер, Лорен; Ханрахан, Пэт (1988). Труды 15-й ежегодной конференции по компьютерной графике и интерактивным технологиям - SIGGRAPH '88 . стр. 65. doi :10.1145/54852.378484. ISBN 978-0897912754. S2CID  17982419.
  6. ^ Вестовер, Ли Алан (июль 1991 г.). "SPLATTING: параллельный алгоритм рендеринга объёма с прямой связью" (PDF) . Получено 28 июня 2012 г. .[ мертвая ссылка ]
  7. ^ Хуан, Цзянь (весна 2002 г.). "Splatting" (PPT) . Получено 5 августа 2011 г.
  8. ^ Lacroute, Philippe; Levoy, Marc (1994-01-01). "Быстрая визуализация объема с использованием факторизации сдвига-деформации преобразования просмотра". Труды 21-й ежегодной конференции по компьютерной графике и интерактивным технологиям - SIGGRAPH '94. SIGGRAPH '94. Нью-Йорк, штат Нью-Йорк, США: ACM. стр. 451–458. CiteSeerX 10.1.1.75.7117 . doi :10.1145/192161.192283. ISBN  978-0897916677. S2CID  1266012.
  9. ^ Хиббард В., Сантек Д., «Интерактивность — это ключ», Семинар в Чапел-Хилл по визуализации объёма , Университет Северной Каролины, Чапел-Хилл, 1989, стр. 39–43.
  10. ^ Пфистер, Ханспетер; Харденберг, Ян; Книттель, Джим; Лауэр, Хью; Сейлер, Ларри (1999). "Система ray-casting в реальном времени VolumePro". Труды 26-й ежегодной конференции по компьютерной графике и интерактивным технологиям - SIGGRAPH '99 . стр. 251–260. CiteSeerX 10.1.1.471.9205 . doi :10.1145/311535.311563. ISBN  978-0201485608. S2CID  7673547.{{cite book}}: CS1 maint: дата и год ( ссылка )
  11. ^ Ву, Инь; Бхатия, Вишал; Лауэр, Хью; Сейлер, Ларри (2003). "Объемный рендеринг методом луча сдвига изображения". Труды симпозиума 2003 года по интерактивной 3D-графике . стр. 152. doi :10.1145/641480.641510. ISBN 978-1581136456. S2CID  14641432.
  12. ^ TeraRecon. "Анонс продукта". healthimaging.com . Получено 27 августа 2018 г. .
  13. ^ Шербонди А., Хьюстон М., Напель С.: Быстрая сегментация объема с одновременной визуализацией с использованием программируемого графического оборудования. В Трудах IEEE Visualization (2003), стр. 171–176.
  14. ^ Тиде У., Шиманн Т., Хёне К.: Высококачественная визуализация данных атрибутивного объема в Трудах IEEE Visualization (1998), стр. 255-262.
  15. ^ Макс Н., Ханрахан П., Кроуфис Р.: Когерентность площади и объема для эффективной визуализации трехмерных скалярных функций. В Computer Graphics (Семинар по визуализации объема в Сан-Диего, 1990) т. 24, стр. 27–33.
  16. ^ Энгель, Клаус; Краус, Мартин; Эртл, Томас (2001). «Высококачественный прединтегрированный объемный рендеринг с использованием аппаратно-ускоренного пиксельного затенения». Труды семинара ACM SIGGRAPH/EUROGRAPHICS по графическому оборудованию . стр. 9–16. CiteSeerX 10.1.1.458.1814 . doi :10.1145/383507.383515. ISBN  978-1581134070. S2CID  14409951.{{cite book}}: CS1 maint: дата и год ( ссылка )
  17. ^ Lum E., Wilson B., Ma K.: Высококачественное освещение и эффективная предварительная интеграция для объемного рендеринга. В Eurographics/ IEEE Symposium on Visualization 2004.

Дальнейшее чтение