Моделирование процесса получения лазерно-локационных данных
В статье рассмотрены различные аспекты получения модельных лазерно-локационных данных: задание и внутреннее представление модели местности, моделирование процесса лазерной локации и визуализация его результатов. Предложены практические способы моделирования отражений лазерного луча от частично проницаемых объектов, учета ошибок лазерной локации и оптимизации работы моделирующего алгоритма.
Modeling the Process of Getting Laser Scanning Data .pdf Лазерная локация - один из новейших методов воздушной стереотопографи-ческой съемки, основанный на совместном использовании систем глобального позиционирования и лазерной дальнометрии, что позволяет получать массивы («облака») точек поверхности Земли и наземных объектов. Эти массивы содержат миллионы точек с плотностью до нескольких точек на один кв. м. Метод лазерной локации имеет множество приложений: топографические, геодезические, гидрографические (специализированные лазерные локаторы позволяют проводить съемку поверхности и дна водоемов), инженерно-изыскательские, лесоустроительные, экологические, электроэнергетические и другие [1]. Информация может быть получена на основе первичных данных лазерной локации разными способами: применением статистических методов, выделением групп точек разной морфологической принадлежности, построением цифровой модели рельефа, ортофо-томозаики, распознаванием топографических объектов и т.д. В связи с широтой спектра приложений лазерной локации, необходима моделирующая процесс получения лазерно-локационных данных система. Наличие такой системы позволяет проводить детальное тестирование алгоритмов обработки данных, отрабатывать частные случаи. В данной статье рассмотрены различные аспекты создания такой системы. Также описаны принятые автором для её создания технические решения.В рамках поставленной задачи выделены три основные подзадачи: задание сцены (рельефа местности с находящимися на ней объектами), моделирование процесса съемки лазерно-локационных данных на заданной сцене и визуализация сцены, смоделированных данных и промежуточных результатов работы тестируемых алгоритмов.1. Внутреннее представление и визуализация сцены в моделирующей системеОдин из вариантов задания модели местности - представить рельеф триангуляцией с привязанными к ней топографическими объектами, состоящими из наборов простых геометрических фигур в трехмерном евклидовом пространстве. Таким образом, здание можно представить в виде набора плоских пространственных фигур (скаты крыши, стены, окна - плоскости). Столб, ствол дерева - цилиндры, крона дерева - параболический конус и т.д. Поверхности разделим на абсолютно непроницаемые (здания, поверхность Земли) и частично проницаемые с разными коэффициентами (кроны деревьев, травяная подстилка и т.п.). Также припишем поверхностям коэффициенты яркости, определяющие мощность отражаемых от нее сигналов. Для визуализации предлагается конвертировать сцену в файл или набор файлов общепринятого ЗБ-формата. Это позволит переложить на стороннее программное обеспечение задачи отображения сцены и навигации по ней. Одним из наиболее подходящих ЗБ-форматов является формат языка Virtual Reality Modeling Language (VRML), описывающий наборы ЗБ-объектов в трехмерной декартовой системе координат. Пример визуализации простой модельной сцены представлен на рис.1.Для внутреннего структурирования сцены в моделирующей системе удобно представить ее в виде древовидной структуры часть - целое, в которой индивидуальные и составные объекты трактуются единообразно (такой способ представления называется Composite - компоновщик). Объекты наследуются от одного класса, в интерфейсе которого определены такие методы, как привязка к данному экземпляру дочернего объекта (например, привязка здания к рельефу местности), получение типа данного объекта, нахождение точек пересечения с лучом и т.п. При вызове одного из этих методов для составного объекта он рекурсивно применяется ко всем его подчастям.2. Процесс лазерно-локационной съемкиВ зависимости от назначения лазерно-локационных данных, к характеристикам распределения точек (продольному и поперечному расстояниям между точками, равномерности распределения и т.п.) предъявляются определенные требования. Для получения удовлетворяющего этим требованиям облака точек перед выполнением лазерно-локационной съемки подбирают значения параметров полета и выполнения съемки [1].Рассмотрим эти параметры и основные геометрические соотношения, характеризующие процесс лазерно-локационной съемки в трехмерной декартовой системе координат XYZ. Пусть летательный аппарат движется вдоль оси X на высоте, равной H, со скоростью V (рис. 2). Лазерный локатор наклонен в плоскости XZ на фиксированный угол ю, в перпендикулярной XZ плоскости 0 его угол наклона (у) меняется от -ф до +ф и обратно с частотой F. С частотой f f >> F) генерируются импульсы лазерного излучения и регистрируются координаты их отражений. При этом группы точек, соответствующих одному полному изменению угла наклона в плоскости 0 (линии сканирования), располагаются зигзагообразно, а расстояние между начальной и конечной точками каждой линии сканирования -ширина захвата (W) - зависит от параметров съемки следующим образом:W = 2 ^ . cos юРасстояние между соответствующими точками смежных линий сканирования колеблется от нуля до величины Sx, называемой продольным интервалом сканирования:Sx = V / f. Поперечный же интервал сканированияWfА количество точек на единицу поверхности (плотность облака) D вычисляется какНа рис. 3 представлено облако точек отражения от сцены (см. рис.1), полученное в моделирующей системе. Для моделирования использовались следующие значения параметров: со = 15°, H = 300 м, высота здания - 30 м. Траектория движения сканирующего летательного аппарата проходит справа от здания по направлению к наблюдателю. При таком сканировании область сцены слева от здания недоступна для сканирующих импульсов. Этой области не принадлежит ни одна из точек полученного облака (рис. 3).Рис. 3. Визуализация полученного на основе модельной сцены облака точекСхематически процесс получения облака точек рис. 3 представлен на рис.4.3. Моделирование процесса лазерно-локационного сканированияX - XnСмоделировав сцену и задав значения параметров лазерно-локационной съемки, перейдем к моделированию процесса лазерно-локационного сканирования. В начальный момент времени сканерный блок находится в точке {X=X0, Y = Y0, Z = H}, полет должен завершиться в точке {X = Xb Y = Yb Z = H }. Курсовой угол носителя в начальный момент времениа = arccosдва других угла его ориентации (тангаж ß и крен у ) равны 0, а вектор движениясоответственно таков: m = {Xi - X0, Yi - Y0, 0}. Сканирующий блок посылает импульсы через промежутки времени, равные 1 /f За это время:•·координаты носителя изменятся на расстояние V/f по направлению вектора движения;•·угол наклона у - на 4 -op- (F / f).Используя значения наклона сканирующего блока и ориентации носителя, произведем серию поворотов вертикального вектора (0, 0, -1) и получим вектор, по которому направлен соответствующий данному импульсу лазерный луч:l = AB( 0 ^ 0A =cos а sin а 0B =00 Vcos у 00 cos ß - sin ß 0 sin ß cos ß0coscsin кЛ (1 00 cos у - sin у 0 sin у cos у- sin у0cos у4. Нахождение точек пересечения лазерного луча с элементами сценыРассмотрим, как определить набор координат всех точек пересечения луча с пространственными многоугольниками, составляющими элементы сцены. Для ускорения работы алгоритма не будем искать точки пересечения луча с гранями сцены, с которыми он заведомо не может пересечься. Например, воспользуемся для этого индексацией пространства с использованием R-дерева. Поскольку элементы сцены имеют небольшой разброс координат по оси Z, ограничимся индексацией по координатам X и Y.Шаг 1. Вычислим экстенты (охватывающие прямоугольники) всех граней сцены.Шаг 2. Корневому узлу R-дерева соответствует вся область сцены. Ему приписан список всех граней сцены. Выберем его в качестве текущего и перейдем на шаг 4.Шаг 3. В список граней текущего узла заносятся те, экстент которых пересекает экстент его области. Эти грани - подмножество граней из списка родительского узла.Шаг 4. Проверим текущий узел на необходимость более глубокой индексации. Критерием этого является пересечение с экстентами более чем k граней сцены. Если этот критерий удовлетворяется, переходим на шаг 5. Иначе делаем текущим следующий узел и повторяем шаг 4.Шаг 5. К текущему узлу добавляется 4 узла-потомка. Область, соответствующая текущему узлу, разбивается на 4 равных части, по одной для каждого потомка.Шаг 6. Каждый из потомков поочередно обрабатывается (начиная с шага 3).Покажем, как вычисляется точка пересечения луча с выпуклой пространственной гранью. Общая точка содержащей эту грань плоскостиAx + By + Cz + D = 0и прямойx = x0 + lt, y = y0 + mt, z = z0 + ntнаходится по формуле(AI + Bm + Cn)t + Ax0 + By0 + Cz0 = 0.Для установления принадлежности точки пересечения выпуклой грани преобразуем координаты ее вершин и точки пересечения с лучом в координаты плоскости, содержащей эту грань. Критерием нахождения точки внутри плоской выпуклой фигуры является ее нахождение по одну сторону от всех векторов, полученных последовательным обходом ребер этой фигуры.При замене системы координат XYZ новой системой XHYHZH с тем же началом старые координаты точки {x, y, z} выражаются через новые {xH, yH, zH} формулами{х, у, z} = {хн, yu, zH }А,где' cos(?H, i) cos(7H, i) cos(kH, i) ^ A = cos(ih, i) cosöh, i) cos(Äh, i) vcos(ih, i) cos^^/h , i) cos(kh, i)уа (iH, i) - угол между новой и старой осью абсцисс, (/н, i) - угол между новой осью ординат и старой осью абсцисс и т.д.[2]. Таким образом, новые координаты точки выражаются через старые:{хн > Ун, zh } = {x> y> AA~X .Косинус угла между двумя векторами äl {xi,yi, z1}и a2 {x2,y2, z2} находится из их скалярного произведения:x1 x2 + У\y2 + z1 z2cos ф =V2 2 2 l 2 2 2 x1 + y1 + z^ x2 + y2 + z2Осями базовой системы координат являются вектора (1, 0, 0), (0, 1, 0) и (0, 0, 1), а в качестве осей новой системы координат примем: вектор, образованный одной из сторон треугольника, вектор нормали к поверхности и вектор, дополняющий их до прямоугольной системы координат. Этот третий вектор является вектором нормали по отношению к плоскости, образованной первыми двумя. Пусть заданы два вектора al {x1,_y1,z1} и a2 {x2,_y2,z2}, лежащих в одной плоскости. Они перпендикулярны вектору нормали n {xn, yn, zn}, то есть соответствующие скалярные произведения равны нулю. ИмеемX2 Xn + y2 yn + z2 zn = 0JПомножим верхнее уравнение на x2, и вычтем из него нижнее, помноженное на xi . Получим(У\x2 ~ У2 Xl )Уп = ( z2 Xl - z1 X2 ) ZnПриняв zn = y\x2 -y2x\, получим yn = z2x\ - z\x2 из (2). Подставив теперь zn и yn во второе из уравнений системы (1), найдем и xn:_ y2 (z2Х1 ~ Z1X2 ) + z2 (y1X2 ~ y2X1) x2Воспользовавшись вышеприведенными выкладками, мы можем вычислить вектор нормали к плоскости треугольника, взяв в качестве векторов ах и а2 его стороны, а затем вычислить и третий осевой вектор новой системы координат.5. Моделирование проницаемостиЛазерный луч расширяется по мере распространения. В связи с этим лазерный луч отражается не точечно, имеет место пятно отражения. Поэтому при наличии неполных препятствий лазерно-локационные данные могут содержать по нескольку точек отражения одного лазерного импульса.Будем последовательно рассматривать точки пересечения смоделированного луча с элементами сцены по возрастанию дальности от сканирующего устройства (точки 1,2,3 и 4 на рис.5). Добавляем очередную точку в результирующий набор, если соответствующая поверхность является непроницаемой. В противном случае она сигнализирует о переходе в частично проницаемую среду, тогда между ней и следующей по отдаленности точкой могут произойти одно или несколько частичных отражений лазерного луча. Смоделируем их координаты и добавим в набор, и как только число точек в нем превысит 3 - 5, завершим выполнение алгоритма (такая ситуация соответствует практически полному отражению лазерного луча от нескольких неполных препятствий).Для описания в моделирующей системе неполных препятствий поверхностям сцены приписан коэффициент проницаемости. Будем интерпретировать его как вероятность неотраженного распространения лазерного луча на 1 м в глубь расположенной за поверхностью среды. Пусть кроне дерева, точками пересечения лазерного луча с которой являются точки 1 и 2 на рис. 5, соответствует коэффициент проницаемости к, а расстояние между ними n метров. Вероятность отражения лазерного луча при распространении на 1 метр в глубь кроны дерева равна p = 1 - к, а при распространении на m метров p\/m. Поделим отрезок между точками 1 и 2 на n/m подотрезков длиной m метров. На каждом из них с вероятностью p\/m произойдет случайное событие - частичное отражение лазерного луча. За координату такого отражения примем координаты случайной, равномерно распределенной точки соответствующего отрезка.6. Моделирование погрешностейПри проведении лазерно-локационной съемки неизбежно возникают погрешности. Рассмотрим, как учесть этот фактор при моделировании лазерно-локационного измерения.В большинстве случаев точность измерений гарантируется производителями лазерных локаторов и составляет 15 - 20 см в абсолютных геодезических координатах. Поэтому простейшим способом учета погрешности является отклонение координат смоделированной точки отражения на вектор погрешности. Направление этого вектора определяется двумя углами поворота случайной величины, распределенной по равномерному закону. Его длина также случайная, распределенная по нормальному закону с СКО ~ 6 - 7 см.Основными источниками погрешности лазерно-локационного измерения является совокупность векторов ошибок GPS-приемника, лазерного дальномера и инерциальной системы (таблица). Поэтому для более точного учета такой погрешности эти ошибки необходимо промоделировать отдельно. Ошибки GPS-приемника и инерциальной системы могут возникать при определениях ими координаты и углов ориентации носителя, производимых дискретно с частотами F\ = 1 - 20 Гц и F2 = 50 - 200 Гц соответственно. Примем за ошибку навигационного блока вектор ошибки со случайной длиной, нормально распределенной с СКО ~ 3-4 см. За ошибку инерциальной системы - вектор ошибки с длиной, также нормально распределенной с СКО ~ 10 см. Значения этих векторов будут переопределяться с частотами F\ и F2. Ошибку в определении наклонной дальности до поверхности смоделируем для каждого импульса как вектор случайной нормально распределенной с СКО ~ 3 - 5 см длины. Направлением этого вектора является направление соответствующего конкретному импульсу лазерного луча.Таким образом, для получения модели лазерно-локационных данных с учетом погрешностей прибавим к каждой из смоделированных точек соответствующие ей векторы ошибок.ЛИТЕРАТУРА
Скачать электронную версию публикации
Загружен, раз: 286
Ключевые слова
3D objects , digital model of the relief , laser-location , 3D-объекты , цифровая модель рельефа , лазерная локацияАвторы
ФИО | Организация | Дополнительно | |
Гульбин Константин Геннадьевич | Томский государственный университет | аспирант кафедры теоретических основ информатики факультета информатики | Kosttt@sibmail.com |
Ссылки
Выгодский М.Я. Справочник по высшей математике. М.: Наука, 1973.
Данилин И.М., Медведев Е.М., Мельников С.Р. Лазерная локация земли и леса: Учеб. пособие. Красноярск: Инст. леса им. В.Н.Сукачева СО РАН, 2005.
