Электронная библиотека диссертаций и авторефератов России
dslib.net
Библиотека диссертаций
Навигация
Каталог диссертаций России
Англоязычные диссертации
Диссертации бесплатно
Предстоящие защиты
Рецензии на автореферат
Отчисления авторам
Мой кабинет
Заказы: забрать, оплатить
Мой личный счет
Мой профиль
Мой авторский профиль
Подписки на рассылки



расширенный поиск

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

Разработка и исследование алгоритмов автоматического взаимного ориентирования трехмерных дискретных моделей объектов, полученных в результате лазерного сканирования
<
Разработка и исследование алгоритмов автоматического взаимного ориентирования трехмерных дискретных моделей объектов, полученных в результате лазерного сканирования Разработка и исследование алгоритмов автоматического взаимного ориентирования трехмерных дискретных моделей объектов, полученных в результате лазерного сканирования Разработка и исследование алгоритмов автоматического взаимного ориентирования трехмерных дискретных моделей объектов, полученных в результате лазерного сканирования Разработка и исследование алгоритмов автоматического взаимного ориентирования трехмерных дискретных моделей объектов, полученных в результате лазерного сканирования Разработка и исследование алгоритмов автоматического взаимного ориентирования трехмерных дискретных моделей объектов, полученных в результате лазерного сканирования Разработка и исследование алгоритмов автоматического взаимного ориентирования трехмерных дискретных моделей объектов, полученных в результате лазерного сканирования Разработка и исследование алгоритмов автоматического взаимного ориентирования трехмерных дискретных моделей объектов, полученных в результате лазерного сканирования Разработка и исследование алгоритмов автоматического взаимного ориентирования трехмерных дискретных моделей объектов, полученных в результате лазерного сканирования Разработка и исследование алгоритмов автоматического взаимного ориентирования трехмерных дискретных моделей объектов, полученных в результате лазерного сканирования Разработка и исследование алгоритмов автоматического взаимного ориентирования трехмерных дискретных моделей объектов, полученных в результате лазерного сканирования Разработка и исследование алгоритмов автоматического взаимного ориентирования трехмерных дискретных моделей объектов, полученных в результате лазерного сканирования Разработка и исследование алгоритмов автоматического взаимного ориентирования трехмерных дискретных моделей объектов, полученных в результате лазерного сканирования Разработка и исследование алгоритмов автоматического взаимного ориентирования трехмерных дискретных моделей объектов, полученных в результате лазерного сканирования Разработка и исследование алгоритмов автоматического взаимного ориентирования трехмерных дискретных моделей объектов, полученных в результате лазерного сканирования Разработка и исследование алгоритмов автоматического взаимного ориентирования трехмерных дискретных моделей объектов, полученных в результате лазерного сканирования
>

Диссертация - 480 руб., доставка 10 минут, круглосуточно, без выходных и праздников

Автореферат - бесплатно, доставка 10 минут, круглосуточно, без выходных и праздников

Велижев Александр Брониславович. Разработка и исследование алгоритмов автоматического взаимного ориентирования трехмерных дискретных моделей объектов, полученных в результате лазерного сканирования : диссертация ... кандидата технических наук : 25.00.34 / Велижев Александр Брониславович; [Место защиты: Моск. гос. ун-т геодезии и картографии].- Москва, 2008.- 78 с.: ил. РГБ ОД, 61 08-5/1651

Содержание к диссертации

Введение

1. Обзор методов взаимного ориентирования дискретных точечных моделей 5

1.1 Введение 5

1.2 Итеративный алгоритм ближайшей точки 6

1.3 Получение начальных приближений 7

1.4 Выбор точек для поиска соответствий 15

1.5 Выбор пространства поиска соответствий 16

1.6 Поиск соответствий 18

1.7 Минимизация 20

1.8 Выводы 21

2. Определение элементов взаимного ориентирования дискретных точечных моделей с помощью ориентационных гистограмм 23

2.1 Введение 23

2.2 Построение восьмеричного дерева 24

2.3 Построение ориентационпой гистограммы 27

2.4 Сравнение ориентационных гистограмм, оценка угловой ориентации 34

2.5 Построение воксельного представления дискретной точечной модели 36

2.6 Сравнение воксельных представлений дискретных точечных моделей методом Фурье анализа 39

2.7 Выводы 41

3. Описание алгоритма автоматической взаимной ориентации дискретных точечных моделей 42

3.1 Введение 42

3.2 Чтение файла данных Ъ координатами точек двух точечных моделей 43

3.3 Определение пространственных границ каждой точечной модели 43

3.4 Рекурсивное построение восьмеричного дерева для каждой точечной модели 44

3.5 Вычисление нормалей и фильтрация точек 45

3.6 Вычисление матрицы ориентационпой гистограммы 48

3.7 Оценка угловых параметров взаимной ориентации точечных моделей 48

3.8 Выравнивание угловой ориентации точечных моделей 49

3.9 Построение воксельного представления каждой точечной модели 49

3.10. Оценка вектора сдвига и линейное выравнивание точечных моделей 51

3.11 Сохранение второй развернутой точечной модели в файл 52

3.12 Описание тестовых данных 52

3.13 Результаты автоматического взаимного ориентирования 60

3.14 Визуализация дискретных точечных моделей

3.14.1 Обратное движение точек 66

3.14.2 Динамическая визуализация точечных моделей 67

3.14.3 Результаты работы алгоритма визуализации точечных моделей 68

3.15 Выводы 71

Заключение 72

Список литературы 74

Введение к работе

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

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

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

Основные задачи исследования:

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

Разработать алгоритм автоматического взаимного ориентирования трехмерных дискретных моделей объектов без использования специальных марок-отражателей;

Провести экспериментальный анализ точности алгоритма взаимного ориентирования трехмерных дискретных моделей объектов;

Разработать алгоритм быстрой визуализации результатов лазерного сканирования.

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

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

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

Разработана компьютерная программа, позволяющая:

Автоматически решить задачу взаимного ориентирования дискретных точечных моделей;

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

Апробация работы: Результаты работы докладывались на третьей общероссийской конференции изыскательских организаций «перспективы развития инженерных изысканий в строительстве в российской федерации» в 2007 году; на конгрессе международного общества фотограмметрии и дистанционного зондирования в Пекине в 2008 году, на конференциях студентов, аспирантов и молодых ученых в МИИГАиК в 2006, 2007 годах.

Предлагаемая методика визуализации дискретных точечных моделей внедрена в инженерное программное обеспечение GeoKosmos GeoModeller.

Публикации: По материалам диссертации опубликовано 4 работы, из них 2 – в журнале, включенном в перечень ВАК.

Структура и объем диссертации: Диссертация изложена на 78 страницах основного текста и состоит из введения, трех глав, заключения и списка литературы. Работа проиллюстрирована 50 рисунками, 5 таблицами. Библиографический указатель содержит 60 источников, в том числе 53 иностранных.

Выбор точек для поиска соответствий

Так, например, [Kwang-Ho Вае 04] успешно выполнял взаимное ориентирование точечных моделей изначально сдвинутых на (20%; 10%; 50%) от размеров модели по осям (X, Y, Z) и повернутых вокруг оси Z на 30. А в статье [Eggert 98] сдвиг между моделями составлял 25% по (X, Y, Z) и 25 по углам.

Данная задача может быть успешно решена с помощью интерактивного указания пользователем как минимум трех соответствующих точек. Пример такого решения можно найти в программном обеспечении Real Works Survey компании Trimble. Однако существуют и различные подходы к автоматическому получению начальных приближений для задачи взаимного ориентирования. В статье [Feldmar 96] начальные приближения находились на основе отождествления соответствующих точек. За основу был взял факт об инвариантности значений кривизны поверхности ki и кг к Евклидову преобразованию. Основная идея алгоритма состоит в следующем: Шаг 1. для каждой точки из Р2 рассчитывается значение кривизны ki и кг; Шаг 2. для Рг строится трехмерноемерное иерархическое дерево (k-D tree) [Bentley 75], индексированное по значениям ki и кг. Это позволяет быстро выполнять поиск точек с заданными инвариантными характеристиками; Шаг 3. из Pi случайно выбирается набор из /точек { р\}; Шаг 4. для каждой точки из { р)} рассчитываются значения ki и кг; Шаг 5. для каждой точки из { р\} выполняется поиск точек в Рг с аналогичными значениями кривизны; Шаг 6. по найденным соответствиям выполняется оценка начальных приближений R и Т; Шаг 7. для значений R и Т вьиисляют набор расстояний { dt} от каждой точки из { р)} до ближайшей точки в Рг; Шаг 8. Шаги 3-7 повторяются многократно. Шаг 9. для каждого из вычисленных наборов расстояний вычисляют служит критерий качества начальных приближений — отношение количества расстояний меньше порога к общему числу расстояний — формируется набор {/?,}; Шаг 10. наиболее удачные значения R и Т выбираются по величине ртах. Подход к решению задачи через сегментацию на основе информации об изменении вектора нормали (Рис. 1.3.)был предложен в [Liu 05]. ib -А PticJ.3 Сегментация на основе изменения вектора нормали к поверхности

Для расчета направления нормалей в каждой точке скана используется математический аппарат анализа главных компонент. Алгоритм расчета положения нормалей для точкиpt состоит из следующих шагов: Шаг 1. выбор набора точек { pi} из окрестности точки р,; Шаг 2. вычисление центра масс для набора точек С),; Шаг 3. вычисление ковариационной матрицы С Шаг 4. Нахождение собственного вектора и собственных числе матрицы С; Шаг 5. Вектор нормали - это собственный вектор, соответствующий наименьшему собственному значению матрицы С. Для выбора точек модели относящихся к окрестности точки р, используют два основных подхода: Выбор всех точек внутри сферы радиусом г и центром в точке р,; Выбор -ближайших к точке р, точек. Параметр г выбирается исходя из средней плотности точек скана. На практике, плотность точек не является постоянным параметром, поэтом) выбор значения радиуса сильно влияет на результат. Подход на основе отбора -ближайших оказывается более универсальным.

Сегментация модели может быть выполнена на основе алгоритма разрастающихся регионов (Рис 1.4.). В статье [Rabbania 06] присоединение точек к текущему региону выполнялось на основе угла между нормалями. Данный алгоритм включает в себя следующие шаги: Шаг I. Выбор порогового значения рпор для значения отклонения данной точки о локальной окрестности данной точки, представленной в виде плоскости; Шаг 2. Выбор порогового значения ругл для угла между нормалями для одного региона; Шаг 3. Если все точки уже сегментированы, то переходим к шагу 7, иначе выбираем точки с минимальным отклонением от плоскости в качестве начальной точки. Шаг 4. Выбираем всех соседей текущей начальной точки. Для каждой соседней точки сравниваем угол 9, между нормалями относительно начальной точки. Если угол 0i Pyr.-ъ то данная точка относится к региону начальной точки. Все отобранные точки с отклонением от плоскости resi рпор заносятся в список потенциальных начальных точек. Шаг 5. Если список потенциальных начальных точек не пустой, то выбираем следующую возможную начальную точку и переходим па шаг 4. Шаг 6. Добавляем текущий регион к результатам сегментации и переходим на шаг 3. Шаг 7. Сегментация выполнена.

После сегментации выполняется отождествление соответствующих сегментов с помощью специального дерева отождествлений (matching tree). И, наконец, приближенный расчет взаимного положения точечных моделей выполнялся по соответствующим сегментам. Результат работы алгоритма приведен на Рис. 1.5.

Недостатком данного метода является сложность получения идентичных по размерам сегментов по причине существенных различий в исходных точечных данных. Кроме того, сегментация основывается на предположении о наличии в точечной модели плоскостей, в противном случае полученные сегменты могут быть произвольно расположены. Использование соответствующих плоскостей для решения задачи приближенной ориентации точечных моделей было предложено в работах [Vanden Wyngaerd 99], [Dold 04], [Hansen 07]. Данная методика включает в себя четыре основных этана: [Dold 04] использовал алгоритм разрастающихся регионов для выделения точек, принадлежащих одной плоскости, разработал исчерпывающий математический аппарат оценки параметров взаимной угловой и линейной ориентации на основе соответсвующих плоскостей. Однако, сопоставление плоскостей выполнялось вручную, что является существенным ограничением.

В 2007 году [Hansen 07] предложил алгоритм автоматического сопоставления плоскостей у двух точечных моделей, основанных на анализе графа, вершинами которого являются найденные плоскости. Для выявления плоскостей [Hansen 07] разбивал пространство точек на равные трехмерные ячейки. Внутри каждой ячейки выполнялась аппроксимация точек алгоритмом оценки параметров на основе случайных выборок (RANSAC) [Fischler 1981]. Каждая такая ячейка представляла собой элемент поверхности. Получение элементов поверхности на основе разбиения пространства на равные трехмерные ячейки является не самым удачным в виду того, что такое разбиение не может описать сложную поверхность объекта. С этой же проблемой столкнулись исследователи из другой области - компьютерной графики. Так, в работе [Boubekeur 05] сначала использовали разбиение пространства на основе восьмеричного дерева (octree) [Jackins 1983], а затем разработали [Boubekeur 06] специальное дерево для описания объемных поверхностей (Рис. 1.6).

Сравнение ориентационных гистограмм, оценка угловой ориентации

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

Важнейшим параметром восьмеричного дерева является параметр Nmax- максимально допустимое число точек в листе. Если выбрать значение JV„„,.V слишком маленьким, то дерево будет иметь большее число иерархических уровней, которое снизит эффективность от использования дерева за счет увеличения числа узлов. Напротив, если N„wx слишком большим, то эффективность дерева снижаеіся за счет операций с точками внутри отдельных узлов. Влияние значения Nmaxw& размер листов иерархического дерева показано на рис. 2.3.

Рассмотрим алгоритм построения восьмеричного дерева (Рис. 2.2). Для каждой точки р, из точечной модели Р: Шаг 1. Добавляем точку в р, в набор точек корневого узла дерева, назначаем этот ) зел текущим. Шаг 2. Если текущий узел - лист, то добавляем точку текущего узла в набор точек листа. Иначе находим ближайшего потомка, в границы которого попадает точка/?,, переносим р, в набор точек этого потомка, назначаем ею текущим и снова переходим к шагу 2. Шаг 3. Если число точек в наборе текущего листа превысило значение Nmax, ю разбиваем этот узел на потомков путем разбиения параллелепипеда текущего узла на восемь равных вложенных частей. В результате все исходные точки Р хранятся только в листах дерева. В дальнейшем решении задачи взаимного ориентирования все операции с точками выполняются только с применением созданной пространственной структуры данных.

Расширенные изображения гауссиана (далее, РИГ), предложенные в статье (Horn, 1984), являются одним из вариантов представления формы выпуклого многогранника. Построение РИГ осуществляется путем переноса всех единичных векторов нормали к каждой грани многогранника в общий центр - центр гауссовой сферы. Совокупность нормалей и расстояний от центра масс объекта до начала нормали математически строго описывают форму многогранника. Понятие ориентационной гистограммы основано на РИГ. Если наложить на полученную гауссову сферу сетку меридианов и параллелей с заданным угловым шагом, а затем для каждой полученной клетки на сфере рассчитать число нормалей, указывающих на эту клетку, то мы получим сферическое представление ориентационной гистограммы. Можно представить ориентационную гистограмму в виде изображения Н, каждый пиксель которого соответствует клетке, образованной пересечением меридианов и параллелей на гауссовой сфере, а значением в каждом пикселе изображения будет количество нормалей (Рис. 2.4.).

Рис. 2.4. А- дискретная модель фасада церкви, В - соответствующая ориентационная гистограмма. Пик ориентационной гистограммы соответствует плоскости фасада церкви.

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

Как уже отмечалось ранее, для нахождения окрестности точки могут использоваться два подхода: выбор всех ближайших точек в заданном радиусе или нахождение к-ближайших точек. В данной работе предлагается использовать второй подход вместе с дополнительным условием на кривизну поверхности в данной точке. Условие на кривизну поверхности в данной точке позволяет исключить из построения ориентационной гистограммы точки-выбросы, которые не принадлежат какой-либо поверхности объекта, например, точки на деревьях. Кривизна поверхности а в данной точке вычисляется на основе собственных значений ковариационной матрицы С (см. раздел 1.3) по формуле: где OJAJ - собственные значения матрицы С , и Лд А, /Ц . 3x3

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

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

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

Определение пространственных границ каждой точечной модели

Перед добавлением точек в восьмеричное дерево необходимо однозначно определить просі рлнственные границы, в которые попадаю і все точки дерева. Правильное определение границ гарантирует, что все исходные точки будут добавлены в создаваемое иерархическое дерево. Для определения границ все точки из исходного файла данных считываются последоваїельно. Псевдокод для определения границ дерева приведен на рисунке (3.1).

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

Рекурсивное построение восьмеричного дерева выполняется за счет последовательного добавления каждой точки. При добавлении точки сначала вьтолняется поиск листа дерева, в который попадает точка. Затем точка добавляется в список точек листа дерева. Если число точек в списке этого листа превышает максимально допустимое значение числа точек в листе дерева Nmax, то выполняется разбиение листа на восемь частей. В результате разбиения ранее переполненный лист становится узлом дерева, а все его точки переносятся в его потомков.

Построение дерева называется рекурсивным, потому что две операции (поиск листа для добавления точки и разбиение переполненного листа) вьшолняются рекурсивно. Поиск листа для добавления точки начинается с корня дерева. Если корневой узел дерева является листом, то точка сразу добавляется в список точек. В противном случае, для каждого из восьми точек корневого листа выполняется проверка на попадание добавляемой точки. Свойство иерархического дерева покрывать всю область пространства узлами одного уровня гарантирует, что такой потомок будет найден. После того как потомок будет найден, снова повторяется проверка, является ли поіомок листом и т.д. В результате нужный лист отьіскиваеіся путем последовательного рекурсивного спуска но дерев\ . Если точка строго попадает на і раницу листов дерева, то она может быть добавлена в любой из узлов.

Рекурсивное разбиение переполненного листа состоит в последовательном рекурсивном делении листа на потомков. Деление происходит до іех пор, пока количество точек в каждом из листовых потомков не будет превьшіаіь значение Nmax.

В результате разбиения все без исключения исходные точки оказываются перенесенными в восьмеричное дерево.

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

Расчет нормалей выполняется последовательно для каждой точки всех листов иерархического дерева. Алгоритм расчета нормалей описан в разделе 1.3. Точки, нормали которых совпадают с направлением оси Z. в дальнейшем не используются при построении ориентационной гистограммы. Такое ограничение определяется тем, что для наземных лазерных сканеров точки на поверхности земли, как правило, имеют вертикальное направление нормали. Число таких ючек может быть достаточно большим, что сильно повлияет на вид ориентационной гистограммы, что вносит дополнительное влияние на результат сопоставления. Однако, сопоставление через нормали точек «земли» не дает верного решения, поэтому каждой такой точки присваивается специальных флаг, который затем учитывается при построении гистограммы.

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

Сохранение второй развернутой точечной модели в файл

Для эффективной обработки точечных данных (например, вычисление нормалей) при взаимном ориентировании используется иерархическое восьмеричное дерево. Такое дерево быстро позволяет выполнять отсечение невидимой части сцены, однако не позволяет быстро выполнить генерализацию данных по причине того, что все точки хранятся только в листах дерева. В работе [Gobbetti 04] предложена новая структура данных, основанная на восьмеричном дереве, которая решает проблему генерализации и предусматривает отображение сцены с различными уровнями детализации. Основная идея предложенного улучшения состоит в том, что точки хранятся не только в листьях, но и в узлах иерархического дерева. Более того, каждый уровень узлов дерева добавляет детализацию к упрощенной модели всего объекта (рис 3.20).

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

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

При разработке алгоритма рассматривались различные варианты выбора точек для извлечения из листа. Один из вариантов выбора точек состоял в отборе точек с максимальным значением кривизны. Такие точки располагаются в местах наибольшего изменения поверхности, а не на плоских участках. Однако, практический опыт показал, что такой подход не дает принципиально более качественной визуализации при существенно более затратных вычислениях. В процессе непосредственного просмотра точечных данных в каждый момент времени необходимо сформировать набор точек для визуализации. Этот набор точек определяется в зависимости от текущего положения точки обзора. Если в один пиксель экрана попадает слишком много точек, то нет никакого смысла отображать все данные. Для определения такой ситуации мы предложили критерий генерализации 5: 1, если NodeDiagonal = MinNodeSize (33) О, в противном случае где NodeDiagonal - длина диагонали параллелепипеда узла, MinNocfeSize - минимальный размер узла, который виден в камеру, значение этого параметра рассчитывается в зависимости от текущего размера пикселя экрана с учетом масштаба.

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

Реализация предложенной методики визуализации результатов лазерного сканирования показала высокую эффективность и производительность. Масштабирование, вращение набора из 60 миллионов точек выполнялась без каких-либо заметных задержек. Большинство коммерческих продуктов при вращении точечных данных скрывает часть информации, оставляя лишь контурные точки, чго может вызвать затруднение в навигации. Предложенная методика лишена данного недостатка - при выполнении операции поворота никакой "сильной" генерализации не происходит. Пользователь видит плавный переход от одного уровня детализации к другому, что реализуется за счет близости уровней детализации (Рис. 3.22). Рис. 3.22. Пример точечной модели при отображении с различной детализацией За счет использования дополнительной информации о точках, возможно реализовать отображение этой информации в цветовом виде, что увеличивает наглядность представления данных (Рис. 3.23 и 3.24.).

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

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

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