Научная статья на тему 'Особенности реализации и способы ускорения вычислений 3D-трейс-преобразования'

Особенности реализации и способы ускорения вычислений 3D-трейс-преобразования Текст научной статьи по специальности «Компьютерные и информационные науки»

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

Текст научной работы на тему «Особенности реализации и способы ускорения вычислений 3D-трейс-преобразования»

УДК 004.93

Федотов Н.Г., Сёмов А.А., Крючкова Е.А.

ФГБОУ ВПО «Пензенский Государственный Университет», Пенза, Россия

ОСОБЕННОСТИ РЕАЛИЗАЦИИ И СПОСОБЫ УСКОРЕНИЯ ВЫЧИСЛЕНИЙ 3D ТРЕЙС-ПРЕОБРАЗОВАНИЯ

Введение

Сегодня 3D модели используются в самых различных отраслях промышленности [1, 2] . Медицинская

промышленность использует детальные модели органов при визуальном показе для обучения студентов, а также постановке более точного диагноза пациентам [3, 4]. Индустрия медиа использует трехмерные модели персонажей, предметов и сцен при моделировании спецэффектов в кинофильмах, а также создании компьютерных игр и виртуальном реальности. Архитектура и строительство использует 3D моделирование для демонстрации предлагаемых зданий и ландшафтов, а также при проектировании и расчете различных показателей нагрузок [5].

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

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

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

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

Теория 3D трейс-преобразования

Пусть B(n, r) - плоскость с вектором нормалью h = \cosf • sinw, sinf •sinw,cosw] , r - расстояние от начала координат до исходного 3D объекта, о и ф - сферические координаты плоскости.

Исходный объект F сканируется сеткой параллельных плоскостей под различными углами о и ф с шагом Ао и Аф до завершения оборота обхода вокруг него в 2п радиан по каждому углу с дискретным шагом А между сканирующими плоскостями. Результат G пересечения плоскости B(n, г) и объекта F вычисляется при помощи гиперфункционала HyperT. Множество чисел G формируется гипертрейс матрица 3TM, у которой ось 0о направлена горизонтально, ось 0ф - вертикально, ось Or - вглубь.

Далее, при помощи гиперфункционалов Hyper©, HyperQ и HyperP вычисляется признак Res(F) исходной 3D объекта [7]:

Res (F) = HyperQ о HyperW о HyperR о HyperT (Fsta)

Признаки получившихся в сечении фигур Fsect извлекаются при помощи 2D трейс-преобразования, введённого Н.Г. Федотовым. Признак 2D изображения имеет структуру в виде композиции трех функционалов [8] :

П (Fsect ) = HyperT (Fsect ) = Q о R о T (Fsect П 1{в,р)) ,

где P и 0 - полярные координаты прямых в плоскости сечения Fsect.

В топологическом смысле перебор всех углов о и ф даёт модель концентрических сфер с центром в начале координат. Точки касания данных плоскостей с единичной сферой (если такие имеются) образуют опорную сетку на сфере. Согласно приведенным ранее исследованиям [9], данная сетка должна иметь равномерное распределение точек на сфере (см. рис. 1).

Рисунок 1 Различные способы построения равномерного распределения точек на сфере: а) с помощью случайного бросания 5000 точек на сферу; б) спираль (162 точки); в) рекурсивное деление граней икосаэдра (162 точки).

Как видно из представленной кратко теории, данный метод обладает определённой универсальностью, т.к. техника сканирования не связана с особенностями объектов. В связи с этим 3D трейс-преобразование способно одинаково хорошо распознавать различные классы объектов вне зависимости от их геометрической структуры.

Особенности реализации 3D трейс-преобразования

3D трейс-преобразование поддерживает несколько различных режимов сканирования, которые имеют свои преимущества и недостатки в различных практических ситуациях:

Детерминированный режим сканирования.

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

Стохастический режим.

При решении задач распознавания пространственных объектов и плоских фигур, получающихся в результате сечений 3D модели сеткой параллельных плоскостей, стохастическое сканирование со случайными параметрами обладает заметными преимуществами. Так, при анализе и распознавании двумерных изображений сканирование со случайными параметрами улучшает соотношение «надежность - быстродействие» по сравнению с фиксированной разверткой [10] . Также, например, любой заранее предопределённый алгоритм построения равномерной сетки на сфере для выполнения условия инвариантности гипертриплетных признаков к повороту по скорости выполнения будет заметно уступать генерации случайных точек с равномерным распределением по поверхности сферы.

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

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

Смешанный режим сканирования.

3D трейс метод благодаря композиционной структуре триплетного и гипертриплетного признаков поддерживает также реализацию смешанного режима сканирования. Это касается как прямых, так и плоскостей, причем возможны их различные сочетания. Так, например, возможно стохастическое сканирование 3D объекта сеткой параллельных плоскостей при детерминированном типе сканирования 2D сечений сеткой параллельных прямых. Или же возможно, наоборот, применение фиксированной сетки параллельных плоскостей для пространственных фигур и случайного сканирования прямыми плоских фигур.

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

Приведем пример такого типа сканирования: использование фиксированной совокупности сетки параллельных плоскостей и прямых при использовании случайного распределения для переменной r.

Указанный выше вариант сохраняет преимущества обоих типов сканирования. Так, все коэффициенты при переменных в уравнениях прямых и плоскостей будут одинаковы для разных 3D объектов, кроме

свободного члена. Определить данный коэффициент можно путём оценки наиболее удаленной грани через

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

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

объектом, или же необходимо будет осуществить дополнительную операцию переноса 3D объекта в на-

правление начала координат, что увеличит время работы алгоритма.

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

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

Различные способы ускорения вычислений гипертриплетных признаков

Благодаря композиционной структуре формируемых гипертриплетных признаков сканирование, предобработка и постобработка, анализ и распознавание изображения осуществляется в одной технике, что позволяет заметно сократить время выполнения работы распознающей системы. Так, сканирования объекта осуществляется при помощи гипертрейс функционала HyperT, который вычисляет признак 2D фигуры сечения и осуществляет предварительную обработку данных сканирования. Гиперфункционалы HyperP, Hyper& и HyperQ выполняют последующую обработку полученной гипертрейс матрицы, получая окончательный признак Res(F) исходного пространственной модели. Аналогичная ситуация наблюдает и для плоских 2D фигур, получаемых сечением исходного 3D объекта сеткой параллельных плоскостей. Трейс

функционал T осуществляет сканирование объекта, а функционалы P и & - обрабатывают строки и

столбцы трейс матрицы ТМ.

Ускорение времени работы алгоритма можно достигнуть за счёт сокращения количества сканирования исходного объекта. Это касается неполного типа формирования гипертриплетных признаков. Так, объём тела уже можно вычислить только при разовом сканировании объекта сеткой параллельных плоскостей (под одним углом обзора) . Периметр контура какого-либо сечения можно вычислить, используя сканирование сеткой параллельных прямых под одним углом наклона в плоскости сечения. Например, гипертриплетный признак объёма объекта неполного типа выглядит следующим образом:

Res (F) = HyperP о HyperT (P о T)

где T = £f(0,p,t) At , P = £f(q,r) , HyperT = n(Fsect) , HyperP = £P(f,r) Ah , - расстояние между парал-

t p r

лельными прямыми в плоскости сечения, f(q,p,;') - длина І-го отрезка, высекаемого pj-ой прямой в плоскости сечения Fsect , Ah - расстояние между параллельными плоскостями.

Сокращение времени работы сканирующей системы можно достигнуть также за счет модульного написания программы. Так, основное время распознающая система затрачивает на вычисление трейс и ги-пертрейс функционалов, выполняющих непосредственное сканирование прямыми и плоскостями соответственно (до 90% от общего времени распознавания объекта). В связи с этим осуществление генерации триплетных и гипертриплетных признаков в автоматическом режиме произойдет быстрее, если произвести сначала единожды сканирование исходного объекта, вычислив трейс и гипертрейс функционалы, и сформировать трейс и гипертрейс матрицы. А затем путём целенаправленного или случайного перебора остальных видов функционалов осуществлять обработку строк и столбцов трейс и гипертрейс матриц и формировать, таким образом, в большом количестве различные признаки Res(F) исходного пространственного объекта.

Также, как и 2D трейс-преобразование [10], 3D трейс-преобразование поддерживает возможность распараллеливания представляемого алгоритма с использованием многоядерных процессоров и системы многопоточных вычислений.

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

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

Композиционная структура функционалов обеспечивает хорошую сегментацию задачи. Подзадачи будут иметь приблизительно одинаковый размер, что позволит обеспечить сбалансированную загрузку. С повышением объёма вычислений и уменьшением шага сетки увеличивается количество прямых или плоскостей, которые пересекают рассматриваемую 2D или 3D фигуру соответственно. Следовательно, количество подзадач начинает заметно возрастать, при этом размер отдельной подзадачи остаётся постоянным. Данное обстоятельство свидетельствует о хорошей масштабируемости задачи распределённой обработки данных.

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

Заключение

Актуальность создания нового метода анализа и распознавания 3D объектов связана с разработкой такого метода сканирования, который обладал бы одновременно и универсальностью, и быстродействием.

Различных режимы сканирования обладают различными преимуществами в различных ситуациях, что дополнительно придает гибкость и универсальность использования 3D трейс-преобразования. Так, при одиночном online запросе пользователя на нахождении 3D моделей, подобных введенной в систему пользователем, лучше применять стохастический режим. При обработке больших баз данных при решении задачи классификации объектов лучше использовать детерминированный режим сканирования. Когда необходимо проанализировать одиночный объект, выявить его характеристики и/или подсчитать гипертриплетные признаки, чтобы, например, занести их в постоянно пополняющуюся базу просканированных эталонных объектов, лучше использовать смешанный тип сканирования.

3D трейс метод обладает множеством различных способов для ускорения времени работы распознающей системы. Так, неполный тип формирования гипертриплетных признаков позволяет заметно ускорить выполнение работы алгоритма. Как правило, неполный тип формирования признаков Res(F) описывают признаки и свойства, связанные с формой 3D объекта (например, площадь поверхности, объём тела и т. п.). Применение блочной структуры алгоритма позволяет использовать наиболее ресурсоёмкие трейс и гипертрейс функционалы единожды, благодаря чему ускоряется реализация автоматической генерации различные гипертриплетных признаков.

Возможность использования в 3D трейс-преобразовании параллельных вычислений и распределённой обработки данных позволяет также существенно ускорить вычисления гипертриплетных признаков.

ЛИТЕРАТУРА

1. Юрков Н.К. Концепция синтеза сложных наукоемких изделий / Надежность и качество: труды Международного симпозиума, под ред. Н.К. Юркова. - Пенза, Изд-во ПГУ. - 2012. - Т. 1. - С. 3-5.

2. Ергалиев Д.С., Тулегулов А.Д., Мусагулова Ж.С., Нысанбаева А.Б. Геометрические искажения и геометрическая коррекция спутниковых снимков / Надежность и качество: труды Международного симпозиума, под ред. Н.К. Юркова. - Пенза, Изд-во ПГУ. - 2013. - Т. 1. - С. 359-361.

3. Алпатов А.В., Калинин Р.Е. Способ количественной визуализации формы правого желудочка сердца человека в целях эхокардиографических исследований // Актуальные вопросы клинической морфологии: Сборник научных трудов. Рязань, 2000. С. 80-84

4. Сазонов В.В., Щербаков М.А. Качественное увеличение деталей изображения / Надежность и качество: труды Международного симпозиума. - Пенза, Изд-во ПГУ. - 2013. - Т. 1. - С. 347-349

5. Шубникова И.С., Палагута К.А. Анализ способов и алгоритмов определения параметров объектов и расстояния до него по изображению / Надежность и качество: труды Международного симпозиума. -Пенза, Изд-во ПГУ. - 2013. - Т. 1. - С. 352-355.

6. Жизняков А.Л., Привезенцев Д.Г. Анализ возможностей применения фрактальных методов в промышленных системах обработки изображений / Надежность и качество: труды Международного симпозиума, под ред. Н.К. Юркова. - Пенза, Изд-во ПГУ. - 2012. - Т. 2. - С. 385-386

7. Семов А.А. Об одном подходе к распознаванию SD-изображений / Надежность и качество: труды Международного симпозиума. - Пенза, Изд-во ПГУ. - 2013. - Т. 1. - С. 350-351.

8. Федотов Н.Г. Анализ свойств триплетных признаков распознавания при различных вариантах сканирования изображений / Надежность и качество: труды Международного симпозиума, под ред. Н. К.

Юркова. - Пенза, Изд-во ПГУ. - 2013. - Т. 1. - С. 80-82.

9. Федотов Н.Г., Семов А.А. Идеи построения равномерной сетки на сфере и 3d трейс- преобразование / Проблемы информатики в образовании, управлении, экономике и технике: Сб. статей XIII Международной научно-технической конференции. - Пенза, Изд-во АННОО «Приволжский Дом знаний». -2013 . - С. 23-26 .

10. Федотов Н.Г. Теория признаков распознавания образов на основе стохастической геометрии и функционального анализа. - М.: ФИЗМАТЛИТ, 2009. - 304 с.

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