Научная статья на тему 'Реализация взаимодействия между мягкими тканями и инородными телами с использованием модифицированной воксельной модели'

Реализация взаимодействия между мягкими тканями и инородными телами с использованием модифицированной воксельной модели Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
139
28
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ВОКСЕЛЬНАЯ МОДЕЛЬ / VOXEL MODEL / ДЕФОРМАЦИЯ МЯГКИХ ТКАНЕЙ / SOFT TISSUE DEFORMATION / ОБНАРУЖЕНИЕ И ОБРАБОТКА КОЛЛИЗИЙ / COLLISION DETECTION AND ELIMINATION

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Николаев Сергей Николаевич

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

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Николаев Сергей Николаевич

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

nteractive bodies collision detection and elimination is one of the most popular task nowadays. Collisions can be detected in different ways. Сollision search using space voxelization is one of the most fast. This paper describes improved voxel model that covers only area of collision interest and quickly eliminates collisions. This new method can be useful in real time collision processing of different rigid and soft bodies grids.

Текст научной работы на тему «Реализация взаимодействия между мягкими тканями и инородными телами с использованием модифицированной воксельной модели»

Николаев Сергей Николаевич

УДК 004.925.8+004.45

РЕАЛИЗАЦИЯ ВЗАИМОДЕЙСТВИЯ МЕЖДУ МЯГКИМИ ТКАНЯМИ И ИНОРОДНЫМИ

ТЕЛАМИ С ИСПОЛЬЗОВАНИЕМ МОДИФИЦИРОВАННОЙ ВОКСЕЛЬНОЙ МОДЕЛИ

Аннотация

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

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

ВВЕДЕНИЕ

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

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

При реализации моделирования операции часто возникает задача описания взаи-

© Николаев С.Н., 2013

модействия между различными объектами. Различные мягкие ткани связаны между собой, поэтому их взаимодействие можно моделировать, используя свойства соединительных тканей. Но такие тела как, например, имплантаты являются инородными. Они никак не связаны с окружающими их тканями. С другой стороны, без описания какого-либо взаимодействия модели различных объектов могут спокойно проникать друг в друга. Поэтому здесь разумно использовать подход для обнаружения и обработки коллизий. Суть этого подхода заключается в обнаружении области проникновения тел друг в друга и ее удалении. Существуют различные подходы, предназначенные для обнаружения коллизий [5, 6, 8].

Обработка коллизий делится на два способа [2]. Метод, основанный на ограничениях, заключается в расчете общей границы в области проникновения и отодвижении точек обоих тел за эту границу. В свою очередь, метод, основанный на дополнительных силах, добавляет новые силы (или скорости, что эквивалентно), которые стремятся вывести тела из состояния коллизии.

ВОКСЕЛЬНАЯ МОДЕЛЬ ДЛЯ ОБРАБОТКИ КОЛЛИЗИЙ

Одна из наиболее популярных моделей, помогающая реализовать обработку коллизий, - это воксельная модель, которая подробно описана в [3]. Изначально воксели использовались как один из способов описания положения объектов в пространстве. Идея воксельной модели основывается на построении решетки, связанной с пространством (иногда построение таких решеток назышают подходом Эйлера). Пространство делится на параллелепипеды одинакового размера, которые называются вокселями. Каждыш воксель может принадлежать некоторому объекту в пространстве. Если он никакому объекту не принадлежит, то эта часть пространства является пустой.

Любой рассматриваемый объект занимает некоторую часть пространства. Если взять все множество вокселей, которое занимает данный объект, то с точностью до размера вокселя можно получить расположение всего объекта в пространстве (рис. 1).

Если какой-либо из вокселей пространства принадлежит сразу двум объектам, то получается, что возникает коллизия между объектами (рис. 2). Воксельная модель также показывает, где именно в пространстве произошла коллизия [3].

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

Применение воксельной модели для мягких тел описано в нескольких работах.

В работах [4, 7] воксели используются вместе с треугольной поверхност- оЬу ной моделью. Треугольная модель отвечает за деформации, а воксельная модель - за работу с коллизиями. Авторы задают преоб-

Рис. 1. Воксельная модель

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

Разработчики из [2] используют воксель-ную модель для оценки глубины проникновения тел друг в друга. Свой подход они применяют на любой физической решетке. Вок-сельная модель строится для пространства, в котором находятся физические тела. Количество общих вокселей определяет глубину проникновения. Для устранения коллизий используется метод, основанный на ограничениях, которыш авторы также подробно описывают.

МОДИФИКАЦИЯ ВОКСЕЛЬНОЙ МОДЕЛИ

Для обработки коллизий между тканями и инородными телами воксельная модель быша модифицирована. Модификация основана на простых идеях:

1. Воксельная модель коллизий нужна лишь одна на две взаимодействующие модели.

2. Контакт тел происходит на поверхности, поэтому вокселями достаточно покрывать только область интереса. Также при итеративном подходе не требуется оценок проникновения тел в глубину.

3. Любая модель мягких тел представляет собой решетку, которая соединена какими-то связями. Тип связей в данном подходе не важен.

■ ■ 1 ■ 1 ■ ■ 1 ■ ■■

■ ■ ■ ■ ■ ■ ■ 1 ■ ■■

■ ■ 1 ■ 1 ■ 1 ■ ■ ■■

■ ■ 1 ■ ■■

■ ■ ■ ■ ■■

1 ■ 1

■ ■■■1.1.В.И.1.1

■ ■ Н-1-1.1.1

■ ■ ■ 1 1 ■■•»>!

■ ■ ■ ■ 1 *Й0

■ ■ ■ ■ 1 ■33

■ ■ ■ ■ ■ Ери

■ ■ ■ £ ■ а за

яякая

□ГЯНШ

ПП|№^11||

■□□□□■□00001 □□■□□■■00001 ■ ■■■I II 1Н1-П-1-11 ■■■■■■□■■Ш ■■■■■■■■■ И1111 ■ 00ЕИ

ЕИНШ

Рис. 2. Обнаружение коллизий с помощью вокселей

Николаев С.Н.

В результате, в каждый воксель был добавлен список, в котором хранятся индексы вершин решетки одной из моделей (рис. 3). На каждом шаге перед поиском и устранением коллизий происходит обновление списков вершин решетки в вокселях. Номер вок-селя для текущей вершины по оси OX определяется по формуле:

ix = (xv - Xo)/vx , (1) здесь ix - индекс вокселя, xv - x-координата вершины, x0 - x-координата центра куба, ограничивающего объект, vx - размер вокселя по координате x. Если полученный индекс вокселя выходит за максимальные индексы воксельной модели - он находится за границей и поэтому отбрасывается. Также для большей скорости размер вокселя выбирается кратным двум. Аналогично происходит расчет по осям O Y и OZ. Таким образом, теперь становится известно, какой набор вок-селей занимает первый объект (рис. 3).

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

АРХИТЕКТУРА СИСТЕМЫ ОБРАБОТКИ КОЛЛИЗИЙ

Архитектура системы обработки колли-изий представлена на рис 4.

Класс Collision по сути является обобщением всех классов. В его задачу входит сокрытие данных под единым интерфейсом.

empty Hsts

Класс VoxelData отвечает за хранение вокселей и ссылок на модели, для которых ищутся коллизии.

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

Интерфейс CollisionDetector описывает классы, отвечающие за обнаружение коллизий. Работа класса по обнаружению коллизий с помощью вокселей подробно описана в предыдущей главе.

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

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

second object grid indexes

object 2

Рис. 3. Модификация воксельной модели

РЕЗУЛЬТАТЫ

После реализации модуля модель коллизий была протестирована для нескольких сценариев. Оба тела были представлены моделями масс-с-пру-

Collisioi

>

{

1

Initia lizer Collision Dclcctor

4 У t k i > f

1 1 I

1

Collision Eliminator

f

1 I

Voxe Data

Рис. 4. Архитектура системы обработки коллизий. Жирные черные стрелки показывают направление процесса

жинками с нелинейными свойствами. Результаты представлены на цветных иллюстрациях (с. 3 обложки).

На изображениях видно, что при коллизии оба тела подвергаются деформации (рис. 5, 6, иллюстрации на с. 3 обложки). При этом коллизии успешно находятся и устраняются. Иногда отдельные вершины образуют коллизии, но это допустимо, поскольку дополнительные силы могут устранять коллизию в течение нескольких итераций.

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

ЗАКЛЮЧЕНИЕ

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

Рис. 5. Коллизия цилиндра и слоя мягкой ткани

Николаев C.H.

Рис. 6. Имплантат раздувается под слоем мягкой ткани

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

Литература

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

Данная компонента была включена в состав модуля физического моделирования для обработки взаимодействия между имп-лантатом и мягкими тканями [1].

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

1. Николаев C.H. Программный модуль для трехмерного моделирования хирургической операции по увеличению груди // Компьютерные инструменты в образовании, 2012. № 3. С. 38-47.

2. Faure F., A llard J., Nesme M. Eulerian Contact for Versatile Collision Processing // Research Report RR-6203, INRIA. 2007. 23 p.

3. Gibson S. Beyond volume rendering: visualization, haptic exploration, and physical modeling of voxel-based objects // Visualization in Scientific Computing 95, Eurographics. 1995. P. 10-24.

4. Heide B. A method for modifying segmented human voxel model // Technical Report, Faculty of mechanics and Process Engineering, TU Chemnitz college. 2002. 18 р.

5. Jimenez P., Thomas F., Torras C. 3D collision detection: a survey // Computers & Graphics, ELSEVIER, vol. 25, issue 2. 2001. P. 269-285.

6. Lin M., Gottschalk S. Collision detection between geometric models: a survey // Proceedings of IMA Conference on Mathematics of Surfaces. 1998. P. 37-56.

7. Schiemann T., HoehneK. Definition of Volume Transactions for Volume Interaction // Information Processing in Medical Imaging, LNCS, Springer-Verlag, Berlin, vol. 1230. 1997. P. 245-258.

8. Teschner M., Kimmerle S., Heidelberger B., Zachmann G., Raghupathi L., Fuhrmann A., Cani M.-P., Faure F., Magnenat-Thalmann N., Strasser W., Volino P. Collision Detection for Deformable Objects // Computer Graphics Forum, Eurographics, vol 24, Issue 1. 2005. P. 61-81.

IMPLEMENTATION OF INTERACTION BETWEEN SOFT TISSUES AND FOREIGN BODIES USING MODIFIED VOXEL MODEL

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

Abstract

Interactive bodies collision detection and elimination is one of the most popular task nowadays. Collisions can be detected in different ways. Elision search using space voxelization is one of the most fast. This paper describes improved voxel model that covers only area of collision interest and quickly eliminates collisions. This new method can be useful in real time collision processing of different rigid and soft bodies grids.

Keywords: voxel model, soft tissue deformation, collision detection and elimination.

Николаев Сергей Николаевич, аспирант кафедры системного программирования СПбГУ, ser. niev @gmail. com.

© Наши авторы, 2013. Our authors, 2013.

i Надоели баннеры? Вы всегда можете отключить рекламу.