Логотип проекта

Начало работы с libLAS

Обработка

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

Перепроецирование данных LAS

Все данные в формате LAS представлены в определенной системе координат, даже если она не описана в LAS-файле. Для наземных LAS-данных описания систем координат могут быть найдены в базе данных EPSG. Ещё один источник информации о системах координат — сайт http://spatialreference.org.

lasinfo --no-check srs.las

Note

Опция –no-check указывает утилите lasinfo, что нужно выводить только информацию из заголовков, без обработки всех точек в файле. Для файла с 10 точками это, конечно, не так критично, но когда точек 50 или 500 миллионов, не стоит ждать полной обработки ради информации из одних заголовков.

Вывод lasinfo сообщает, что файл srs.las содержит данные в системе координат UTM в 17-й зоне.

PROJCS["WGS 84 / UTM zone 17N",
    GEOGCS["WGS 84",
        DATUM["WGS_1984",
            SPHEROID["WGS 84",6378137,298.257223563,
                AUTHORITY["EPSG","7030"]],
            AUTHORITY["EPSG","6326"]],
        PRIMEM["Greenwich",0],
        UNIT["degree",0.0174532925199433],
        AUTHORITY["EPSG","4326"]],
    PROJECTION["Transverse_Mercator"],
    PARAMETER["latitude_of_origin",0],
    PARAMETER["central_meridian",-81],
    PARAMETER["scale_factor",0.9996],
    PARAMETER["false_easting",500000],
    PARAMETER["false_northing",0],
    UNIT["metre",1,
        AUTHORITY["EPSG","9001"]],
    AUTHORITY["EPSG","32617"]]

Теперь, когда мы знаем исходную систему координат, мы можем сделать вывод о необходимости перепроецирования данных. В нашем первом примере мы будем использовать систему координат WGS84 Lat/Long EPSG:4326.

las2las srs.las --t_srs EPSG:4326

Процесс завершён, однако, после быстрой проверки данных командой lasinfo output.las, мы обнаруживаем проблему:

...
Scale Factor X Y Z:          0.01 0.01 0.01
Offset X Y Z:                -0.00 -0.00 -0.00
...
Min X, Y, Z:                -83.43, 39.01, 170.58,
Max X, Y, Z:                -83.43, 39.01, 170.76,

Файл srs.las имеет масштаб 0.01 или точность два знака после запятой для координат X, Y, и Z. Для данных в UTM это нормально, поскольку они подразумевают точность 1 см. В десятичных градусах системы координат WGS84 Lat/Long это означает большую потерю точности. Нам нужно установить значение масштаба, сохраняющее нужную точность:

las2las --t_srs EPSG:4326 srs.las --scale 0.000001 0.000001 0.01

Повторная проверка даёт более подходящий результат:

...
Scale Factor X Y Z:          0.000001 0.000001 0.01
Offset X Y Z:                -0.000000 -0.000000 -0.00
...
Min X, Y, Z:                -83.427598, 39.012599, 170.58
Max X, Y, Z:                -83.427548, 39.012618, 170.76

Перевод LAS-файла в текстовый формат

las2txt input.las --parse xyzti