В nanoCAD Plus 7, который вышел 18 мая 2015 года, появился ряд функций, существенно расширяющих область применения и позиционирование платформы nanoCAD. Мы предлагаем вниманию наших читателей ряд технических статей, в которых подробнее погружаемся в эти функции, рассматриваем, какими возможностями они обладают и как их можно применить на практике. Эта статья посвящена комплексу функций, объединенных общим названием Облако точек.
Что такое «облако точек»? Это множество точек в трехмерном пространстве, полученных в результате 3D-сканирования объекта реального мира и представляющих поверхность этого объекта. 3D-сканирование реализуется специализированными устройствами — 3D-сканерами, которые в автоматическом режиме замеряют большое количество точек на поверхности сканируемого объекта и создают на выходе облако точек (рис. 1). Выходные данные 3D-сканера содержат координаты XYZ и метаданные, зависящие от типа 3D-сканера. Под метаданными понимаются специфические данные, являющиеся побочным продуктом процесса измерения координат точек. К примеру, для активных бесконтактных сканеров таковыми будут интенсивность отраженного сигнала, количество отражений, время фиксации точки, цвет поверхности
Качество облака напрямую зависит от качества 3D-сканера, его разрешающей способности, точности и скорости сканирования. Понятно, что серьезные задачи требуют серьезных устройств, но на сегодня источником облака может служить даже популярный сенсор Kinect игровой приставки Microsoft XBOX, который у многих обитает под домашним телевизором и посредством пары незамысловатых датчиков формирует трехмерное изображение. Технологии становятся доступнее с каждым днем — именно этим и объясняется интерес к облакам точек.
Зачем они нужны? В первую очередь облака точек обеспечивают быструю визуализацию интересующего вас объекта реального мира. Но, конечно, только этой областью они не ограничиваются — облака точек успешно используют для изменений и контроля, 3D-печати, виртуализации труднодоступных мест или больших протяженных объектов, создания трехмерных и математических моделей, распознавания образов, а также при автоматизированном анализе, реконструкциях и эксплуатации. Без сомнения, облака точек привносят много полезного и в системы автоматизированного проектирования: о некоторых направлениях мы поговорим в этой статье, а что-то, может быть, вы придумаете сами — нам кажется, что потенциал трехмерных облаков точек еще до конца не раскрыт и эта технология может стать отличным инструментом для решения ваших задач.
Облака точек в nanoCAD Plus
Итак, начиная с версии 7.0, поддержка облаков точек появилась и в отечественной САПР-платформе nanoCAD Plus. В частности, программный продукт получил дополнительный раздел меню, который объединяет функции импорта и отображения облаков точек (рис. 2). Первым пунктом идет функция импорта.
Для начала давайте разберемся с тем, какие форматы поддерживает nanoCAD Plus 7.0. Команда Импорт предоставляет возможность загружать облака точек пяти популярных форматов: BIN (TerraSolid), LAS (ASPRS), PTX (Leica), PTS (Leica) и PCD (Point Cloud Library). Собственный модуль прямого импорта позволяет сохранить максимум информации из исходного файла.
Такой поход не просто делает работу более удобной — в процессе импорта пользователь может получать общую информацию об облаке точек, фильтровать импортируемые метаданные и проводить предварительную классификацию точек: по классу (коду), по отражению
Информация о привязке и настройке отображения облака точек сохраняется в *.dwg-файле.
В перспективе пользователи смогут сохранять облако внутри *.dwg-файла, как это было сделано в предыдущей версии nanoCAD Plus для растровых изображений. Такая возможность снижает риск потерять данные при передаче проекта сторонним исполнителям и заказчику.
Количество точек в облаке зависит от разрешающей способности 3D-сканера. Вполне обычными считаются облака на 3−4 миллиона точек. Сверхбольшие облака содержат миллиард точек и больше — для обработки такого объема данных необходимы достаточно мощные компьютеры и специализированные алгоритмы.
В nanoCAD Plus 7.0 не предусмотрено никаких технических ограничений на объем облаков точек, а сами алгоритмы оптимизированы для обработки сверхбольших массивов — см. рис. 4, на котором приведены примеры работы с крупными облаками точек (файл-пример цеха (129 миллионов точек) получен с помощью сканеров компании Leica и предоставлен представителями этой компании).
nanoCAD Plus позволяет настроить отображение импортированного облака точек — за это отвечает команда Режим отображения. Здесь можно настроить тип раскраски облака и размер точки — очень эффектно отображаются облака точек, раскрашенные по цвету сканирования (рис. 5). Фактически получаются трехмерные фотографии отсканированных объектов, по которым можно прогуляться, встроить их в существующую 3D-модель и даже использовать привязки к точкам облака при любых построениях. Стоит отметить, что этот функционал открыт для вертикальных приложений, загружаемых в nanoCAD Plus. А разработчики таких приложений могут использовать обширный программный интерфейс для доступа к информации о точках облака и их параметрах.
Если у вас установлен nanoCAD Plus 7.0, вы можете сами побродить в облаке точек — папка примеров содержит в формате *.dwg несложную модель с фильтрационным оборудованием. Попробуйте поменять у нее цвет, толщину точек, походить по модели в режиме перспективной навигации. В этой же папке вы найдете и другие примеры трехмерных точечных проектов.
Что можно делать с облаками точек, кроме визуализации? Если теоретизировать, то число полезных функций окажется просто огромным: можно сравнивать модели, определяя коллизии, вычленять объекты по определенным признакам (например, по метаданным), классифицировать группы точек по различным признакам, сшивать-разрезать облака точек по этим или дополнительным признакам, распознавать поверхности и объекты…
Но все эти задачи — функционал узкоспециализированных решений, специфичных для конкретной предметной области. В nanoCAD Plus 7.0 набор инструментов для работы с облаками точек несколько скромнее и рассчитан на массовое применение. В частности, платформа позволяет выполнять:
Какое же практическое применение имеют эти инструменты? Одним из приемов работы с функционалом сечений и клипов является сегментирование облака точек для того чтобы организовать удобную работу с целевым участком пространства, убрав влияние других частей облака. В дополнение к этому функционал привязок к облаку точек позволяет эффективно опираться на точки для проведения измерений, трассировки трехмерных объектов и даже трехмерного моделирования. Привязываясь к точкам облака, можно использовать возможности всех штатных команд nanoCAD для измерения расстояний и длин, периметров и площадей.
Для трассировки проекций трехмерных объектов в сечениях облаков точек применим широкий набор имеющихся чертежных средств nanoCAD, ну, а для трехмерных построений с использованием геометрии облаков точек к вашим услугам весь функционал нового модуля 3D-моделирования.
Применяя к данным, полученным из облаков точек, дополнительные алгоритмы, можно решать более интеллектуальные задачи. Скажем, в Венеции фасады зданий, оцифрованные с помощью мобильной лазерной системы сканирования RIEGL VMX-250, анализируются на результаты деформаций и последствия действий вандалов (рис. 7).
Другой пример: оцифровка Большого каньона (США) с помощью сканеров RIEGL VZ-4000 — посмотрите, как создаются трехмерные модели (рис. 8).
Трехмерное сканирование позволяет описывать модели даже таких труднодоступных объектов, как заброшенные шахты (рис. 9).
В Интернете вы найдете массу других примеров оригинального применения технологии облака точек. Решение всех этих задач стало возможным благодаря развитию программного и аппаратного обеспечения.
Вот какая интересная технология реализована теперь в платформе nanoCAD Plus. Кто-то скажет, что пока направление 3D-сканирования носит скорее рекламный характер. Отчасти соглашусь — эту технологию можно еще развивать и совершенствовать. Собственно, именно к этому мы и призываем — давайте находить практические задачи, в которых востребованы технологии трехмерного сканирования, распознавания образов и интеллектуальной обработки данных. Мы готовы к сотрудничеству.
А уже сейчас можно загружать облака точек, строить сечения, проводить измерения, выполнять трассировку трехмерных объектов. Этот функционал доступен в nanoCAD Plus, причем опробовать его вы сможете и в демо-режиме. Таким образом, стартовый набор инструментов у вас есть. Хороших проектов!