УДК 004.352.4
СОВМЕЩЕНИЕ ТРЕХМЕРНЫХ ИЗОБРАЖЕНИЙ, ПОЛУЧЕННЫХ В РЕЗУЛЬТАТЕ РУЧНОГО ЛАЗЕРНОГО СКАНИРОВАНИЯ
И.В. Цапко, М.Ю. Омельянюк
Томский политехнический университет E-mail: [email protected]
Рассмотрен итеративный алгоритм нахождения ближайшей точки, применяемый для взаимного ориентирования точечных трехмерных моделей. Указаны его недостатки в виде необходимости начального приближения и возможные способы их разрешения за счет оценки матрицы угловой ориентации и вектора сдвига для трехмерных моделей, имеющих воксельное представление. Представлен модифицированный алгоритм начального приближения для трехмерных моделей, полученных в результате трехмерного сканирования и заданных в триангулированном виде. Рассмотрены этапы построения ориентационных гистограмм совмещаемых моделей, их сравнение, последующая оценка угловой ориентации и линейного сдвига, а также дальнейшие преобразования в виде поворота и дальнейшего совмещения моделей. Разработана программа, реализующая указанные алгоритмы. Показаны пути дальнейшего ее совершенствования.
Ключевые слова:
Трехмерные изображения, ориентационная гистограмма, взаимное ориентирование трехмерных моделей, обработка изображений.
Введение
Технология быстрого прототипирования в последнее время нашла широкое применение в различных областях человеческой деятельности. Для создания трехмерных моделей объектов используют лазерные сканеры - устройства, анализирующие физический объект и создающие его трехмерную модель в виде координат точек, принадлежащих поверхностям с целью дальнейшего их представления в виде пространственных математических моделей с возможной последующей их модификацией с помощью CAD (Computer-Aided Design) - систем или САПР (систем автоматизированного проектирования).
Технология лазерного сканирования имеет ряд недостатков, в числе которых большое количество исходной информации, получаемой при сканировании данным устройством. Вопрос автоматизации обработки такого объема информации является крайне важным для будущего развития этой технологии. В связи с этим в последние годы было направлено множество исследований на нахождение способа автоматизации, который позволил бы ускорить либо упростить процесс обработки результатов, полученных при сканировании. Большое количество научных работ зарубежных и российских ученых посвящено основным аспектам обработки данных, полученных при лазерном сканировании земной поверхности. Однако достаточное количество аналогичных задач возникает и при обработке сравнительно небольших объектов, полученных путем ручного лазерного сканирования. В частности, одной из основных на начальном этапе обработки отсканированных изображений является проблема совмещения в единую систему координат облаков точек одного объекта, представленных с различных ракурсов. Данный процесс принято называть регистрацией, или взаимным ориентированием. Целью регистрации является нахождение взаимного расположения и ориентации одного изображения сцены относительно другого и наиболее точное совмещение перекрывающихся областей точек.
Цапко Ирина Валериевна,
доцент кафедры автоматики и компьютерных систем Института кибернетики ТПУ. E-mail: [email protected] Область научных интересов: обработка трехмерных графических изображений. Омельянюк Михаил Юрьевич, магистрант кафедры автоматики и компьютерных систем Института кибернетики ТПУ.
E-mail: [email protected] Область научных интересов: обработка графических изображений. Разработка мобильных приложений.
В данной статье рассматривается алгоритм совмещения трехмерных изображений одного объекта, полученных при его сканировании ручным лазерным сканером фирмы Z Corporation.
Разрешение сканера Zscanner 700 составляет 0,1 мм, а точность XY - до 80 микрон. Сканер «рисует» объект при помощи лазера и затем сканирует бинокулярными камерами. В комплекте со сканером поставляется программное обеспечение ZScan Lite, автоматически создающее файлы в формате .STL для импорта в системы трехмерного моделирования или вывода на трехмерный принтер. Программное обеспечение сканера позволяет получить результат на экране компьютера в реальном времени [1].
Алгоритмы совмещения трехмерных моделей
Допустим, имеются две точечные модели Рг и Р2, которые описывают один трехмерный объект, полученный с различных точек зрения при помощи лазерного сканера. Для перевода любой точки модели в систему координат модели используется выражение
u = R ■ u + T
3x1 3x3 3x1 3x1 '
где T - вектор переноса; R - матрица поворота между системами координат точечных моделей и ; - произвольная точка из ; - координаты точки в системе координат .
Первые методы взаимного ориентирования двух точечных моделей, полученных наземным лазерным сканером, появились в начале 90-х годов прошлого века. Один из наиболее известных - это итеративный алгоритм ближайшей точки (ICP - Iterative Closest Point), предложенный в 1992 году Paul J. Besl и Neil D. McKay [2]. Базовый алгоритм состоит из следующих основных шагов:
1. Для каждой точки из множества Рг определяется пара из множества Р2 с использованием критерия поиска ближайшего соседа согласно некоторой функции близости.
2. Осуществляется преобразование путем смещения и поворота одной из точечных моделей, расчет и оценка среднеквадратического расстояния между парными точками:
Е (R ,T)=£ZjL о I I Щ-R-v ,-Т | | 2,
где и - соответствующие точки моделей и ; и - количество точек в соответствующих моделях и ; - веса пар точек.
Значения весов определяются по следующему принципу: если является ближайшей точкой к , иначе
3. Данные шаги повторяются до тех пор, пока среднеквадратическое расстояние не станет меньше некоторого значения в.
При практическом применении исходного алгоритма задача усложняется за счет того, что исходные фрагменты и одной модели не идентичны, а имеют лишь некоторую область перекрытия. Те точки, которые не принадлежат области перекрытия, создают дополнительные помехи и мешают корректной работе алгоритма, поэтому перед применением данного алгоритма необходимо провести предварительную обработку исходных моделей с целью отсечения указанных точек (рис. 1).
Рис. 1. Исходные фрагменты Рг и Р2: а - все пары ближайших точек; б - пары ближайших точек из области перекрытия
Существует большое количество вариаций рассмотренного выше алгоритма для его применения с теми или иными примерами трехмерных моделей, но основной недостаток - необходимость указания начального приближения значений T и R для первой итерации остается нерешенным.
Один из вариантов решения этой проблемы был предложен в [3], где решение задачи взаимной ориентации двух трехмерных моделей, имеющих воксельное (от англ. VOlume Element) представление, разбивается на два отдельных этапа:
• оценка матрицы угловой ориентации R;
• оценка вектора сдвига T.
Применительно к моделям, полученным в результате лазерного сканирования и представленным в формате .STL (от англ. stereolithography), последовательность выполняемых действий будет состоять из следующих шагов:
1. Построение ориентационных гистограмм моделей Рг и Р2.
2. Сравнение полученных гистограмм и оценка угловой ориентации моделей.
3. Поворот точечной модели Р2 в соответствии с найденными углами.
4. Сравнение представленных моделей, оценка линейного сдвига.
Достоинство ориентационной гистограммы трехмерной модели состоит в ее инвариантности к преобразованию сдвига. Особенности представления трехмерных объектов в формате .STL, где информация о модели хранится в виде списка треугольных граней, описывающих поверхность, и их нормалей, позволяют осуществить построение ориентационной гистограммы, являющейся одним из вариантов расширенного изображения Гаусса (РИГ) [4]. Ориентационная гистограмма представляется в виде изображения Н, каждый пиксель которого соответствует клетке, образованной пересечением меридианов и параллелей на гауссовой сфере, а значением в каждом пикселе изображения будет количество нормалей.
После построения ориентационных гистограмм Нг (М, N) и Н2 (М, N) для двух моделей Рг и Р2 соответственно осуществляется их анализ с использованием функции схожести
If=1 If=1 Hl (i,j) If=1 If=1 Hl (i,j)
c целью расчета матрицы поворота R, соответствующей максимальному значению функции. Далее выполняется процедура поворота точечной модели Р2
Р2 = Rcmax ' Р2?
после которой два трехмерных представления имеют одинаковую угловую ориентацию, но их взаимное расположение определяется следующим преобразованием:
Р^ = Рг + Т.
Практическая реализация алгоритма
На основании рассмотренных алгоритмов был реализован программный продукт с использованием языка программирования С++ и среды разработки Visual Studio 2010, а также библиотека компьютерного зрения OpenCV.
Программный продукт позволяет осуществить:
1. Визуализацию точечных трехмерных объектов.
2. Построение и визуализацию ориентационных гистограмм (рис. 2).
3. Вычисление угловых параметров взаимной ориентации двух точечных моделей.
4. Поворот точечной модели.
5. Нахождение вектора сдвига с последующим преобразованием модели (рис. 3).
Рис. 2. Дискретная модель фигурки Чехова и соответствующая ей ориентационная гистограмма
Рис. 3. Исходные модели Рг и Р2 (а) и результат их совмещения (б) (изображения моделей представлены в программе отображения MiniMagics 2.0)
Заключение
В работе рассмотрен итеративный алгоритм ближайшей точки, применяемый для взаимного ориентирования двух точечных моделей трехмерных объектов. Указаны его недостатки в виде необходимости указания начальных значений матрицы поворота и вектора сдвига. Рассмотрен вариант модификации алгоритма, предложенного в [3] для преобразования моделей, представленных в триангулированном виде. Разработана программа, реализующая данный метод.
Предполагается проведение дальнейших исследований, направленных на улучшение визуализации отображаемых объектов и увеличение скорости обрабатываемых данных.
СПИСОК ЛИТЕРАТУРЫ
1. Официальный сайт компании Z Corporation. - URL: http://www.zcorp.com/ru/Products/3D-Scanners (дата обращения: 05.09.2014).
2. Besl, P.J., McKay, Neil D. A Method for Registration of 3-D Shapes // IEEE Transactions on pattern analysis and machine intelligence. - V. 14 (2). - 1992. - P. 239-256.
3. Велижев А.Б. Разработка и исследование алгоритмов автоматического взаимного ориентирования трехмерных дискретных моделей объектов, полученных в результате лазерного сканирования: дис. ... канд. техн. наук. - М., 2008. - 78 с.
4. Horn B.K.P. Extended Gaussian images // Proceedings of the IEEE. - 1984. - V. 72 (12). -P.1671-1686.
Поступила 06.10.2014