Skip to content

Instantly share code, notes, and snippets.

@sfoucher
Last active August 19, 2020 16:02
Show Gist options
  • Save sfoucher/94ae0f0438e1d5d335d39ed829c82357 to your computer and use it in GitHub Desktop.
Save sfoucher/94ae0f0438e1d5d335d39ed829c82357 to your computer and use it in GitHub Desktop.
metadata_las.ipynb
Display the source blob
Display the rendered blob
Raw
{
"nbformat": 4,
"nbformat_minor": 0,
"metadata": {
"colab": {
"name": "metadata_las.ipynb",
"provenance": [],
"collapsed_sections": [],
"include_colab_link": true
},
"kernelspec": {
"name": "python3",
"display_name": "Python 3"
}
},
"cells": [
{
"cell_type": "markdown",
"metadata": {
"id": "view-in-github",
"colab_type": "text"
},
"source": [
"<a href=\"https://colab.research.google.com/gist/sfoucher/94ae0f0438e1d5d335d39ed829c82357/metadata_las.ipynb\" target=\"_parent\"><img src=\"https://colab.research.google.com/assets/colab-badge.svg\" alt=\"Open In Colab\"/></a>"
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "arsL83EaWVda",
"colab_type": "text"
},
"source": [
"This script download a laz tile from GeoNB, extract the metadata and save it as a json file."
]
},
{
"cell_type": "code",
"metadata": {
"id": "MtmM2iaAUvV3",
"colab_type": "code",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 85
},
"outputId": "7df0521e-5711-420e-a4e4-a949ca7160ad"
},
"source": [
"import os\n",
"from os.path import exists, join, basename, splitext\n",
"import json\n",
"!pip install xmltodict"
],
"execution_count": null,
"outputs": [
{
"output_type": "stream",
"text": [
"Collecting xmltodict\n",
" Downloading https://files.pythonhosted.org/packages/28/fd/30d5c1d3ac29ce229f6bdc40bbc20b28f716e8b363140c26eff19122d8a5/xmltodict-0.12.0-py2.py3-none-any.whl\n",
"Installing collected packages: xmltodict\n",
"Successfully installed xmltodict-0.12.0\n"
],
"name": "stdout"
}
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "Hm6a3XiB85hK",
"colab_type": "text"
},
"source": [
"### Installation of LASZip"
]
},
{
"cell_type": "code",
"metadata": {
"id": "-fCvdIfUmZZ9",
"colab_type": "code",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 1000
},
"outputId": "78e1c53f-59b0-45ba-d8f1-bb092c914e6e"
},
"source": [
"%%bash\n",
"cd /content/\n",
"rm -rf LASzip_src\n",
"git clone https://github.com/LASzip/LASzip.git LASzip_src\n",
"cd LASzip_src\n",
"git checkout 3.1.0\n",
"cmake .\n",
"make\n",
"make install\n",
"cd ..\n",
"\n"
],
"execution_count": null,
"outputs": [
{
"output_type": "stream",
"text": [
"-- The CXX compiler identification is GNU 7.5.0\n",
"-- The C compiler identification is GNU 7.5.0\n",
"-- Check for working CXX compiler: /usr/bin/c++\n",
"-- Check for working CXX compiler: /usr/bin/c++ -- works\n",
"-- Detecting CXX compiler ABI info\n",
"-- Detecting CXX compiler ABI info - done\n",
"-- Detecting CXX compile features\n",
"-- Detecting CXX compile features - done\n",
"-- Check for working C compiler: /usr/bin/cc\n",
"-- Check for working C compiler: /usr/bin/cc -- works\n",
"-- Detecting C compiler ABI info\n",
"-- Detecting C compiler ABI info - done\n",
"-- Detecting C compile features\n",
"-- Detecting C compile features - done\n",
"-- Looking for C++ include unordered_map\n",
"-- Looking for C++ include unordered_map - found\n",
"-- Configuring done\n",
"-- Generating done\n",
"-- Build files have been written to: /content/LASzip_src\n",
"Scanning dependencies of target laszip\n",
"[ 5%] Building CXX object src/CMakeFiles/laszip.dir/arithmeticdecoder.cpp.o\n",
"[ 10%] Building CXX object src/CMakeFiles/laszip.dir/arithmeticencoder.cpp.o\n",
"[ 15%] Building CXX object src/CMakeFiles/laszip.dir/arithmeticmodel.cpp.o\n",
"[ 20%] Building CXX object src/CMakeFiles/laszip.dir/integercompressor.cpp.o\n",
"[ 25%] Building CXX object src/CMakeFiles/laszip.dir/lasindex.cpp.o\n",
"[ 30%] Building CXX object src/CMakeFiles/laszip.dir/lasinterval.cpp.o\n",
"[ 35%] Building CXX object src/CMakeFiles/laszip.dir/lasquadtree.cpp.o\n",
"[ 40%] Building CXX object src/CMakeFiles/laszip.dir/lasreaditemcompressed_v1.cpp.o\n",
"[ 45%] Building CXX object src/CMakeFiles/laszip.dir/lasreaditemcompressed_v2.cpp.o\n",
"[ 50%] Building CXX object src/CMakeFiles/laszip.dir/lasreaditemcompressed_v3.cpp.o\n",
"[ 55%] Building CXX object src/CMakeFiles/laszip.dir/lasreadpoint.cpp.o\n",
"[ 60%] Building CXX object src/CMakeFiles/laszip.dir/laswriteitemcompressed_v1.cpp.o\n",
"[ 65%] Building CXX object src/CMakeFiles/laszip.dir/laswriteitemcompressed_v2.cpp.o\n",
"[ 70%] Building CXX object src/CMakeFiles/laszip.dir/laswriteitemcompressed_v3.cpp.o\n",
"[ 75%] Building CXX object src/CMakeFiles/laszip.dir/laswritepoint.cpp.o\n",
"[ 80%] Building CXX object src/CMakeFiles/laszip.dir/laszip.cpp.o\n",
"[ 85%] Building CXX object src/CMakeFiles/laszip.dir/laszip_dll.cpp.o\n",
"[ 90%] Linking CXX shared library ../lib/liblaszip.so\n",
"[ 90%] Built target laszip\n",
"Scanning dependencies of target laszip_api\n",
"[ 95%] Building C object dll/CMakeFiles/laszip_api.dir/laszip_api.c.o\n",
"[100%] Linking C shared library ../lib/liblaszip_api.so\n",
"[100%] Built target laszip_api\n",
"[ 90%] Built target laszip\n",
"[100%] Built target laszip_api\n",
"Install the project...\n",
"-- Install configuration: \"\"\n",
"-- Installing: /usr/local/lib/liblaszip.so.3.1.0\n",
"-- Installing: /usr/local/lib/liblaszip.so.3\n",
"-- Set runtime path of \"/usr/local/lib/liblaszip.so.3.1.0\" to \"/usr/local/lib\"\n",
"-- Installing: /usr/local/lib/liblaszip.so\n",
"-- Installing: /usr/local/lib/liblaszip_api.so.3.1.0\n",
"-- Installing: /usr/local/lib/liblaszip_api.so.3\n",
"-- Set runtime path of \"/usr/local/lib/liblaszip_api.so.3.1.0\" to \"/usr/local/lib\"\n",
"-- Installing: /usr/local/lib/liblaszip_api.so\n",
"-- Installing: /usr/local/include//laszip\n",
"-- Installing: /usr/local/include//laszip/laszip_api_version.h\n",
"-- Installing: /usr/local/include//laszip/laszip_api.h\n"
],
"name": "stdout"
},
{
"output_type": "stream",
"text": [
"Cloning into 'LASzip_src'...\n",
"Note: checking out '3.1.0'.\n",
"\n",
"You are in 'detached HEAD' state. You can look around, make experimental\n",
"changes and commit them, and you can discard any commits you make in this\n",
"state without impacting any branches by performing another checkout.\n",
"\n",
"If you want to create a new branch to retain commits you create, you may\n",
"do so (now or later) by using -b with the checkout command again. Example:\n",
"\n",
" git checkout -b <new-branch-name>\n",
"\n",
"HEAD is now at f70c715 point to 3.1.0 release\n",
"In file included from /content/LASzip_src/src/arithmeticdecoder.hpp:40:0,\n",
" from /content/LASzip_src/src/arithmeticdecoder.cpp:70:\n",
"/content/LASzip_src/src/mydefs.hpp: In function ‘BOOL IS_LITTLE_ENDIAN()’:\n",
"/content/LASzip_src/src/mydefs.hpp:174:19: warning: cast from type ‘const U32* {aka const unsigned int*}’ to type ‘U8* {aka unsigned char*}’ casts away qualifiers [-Wcast-qual]\n",
" return (*((U8*)&i) == 1);\r\n",
" ^\n",
"In file included from /content/LASzip_src/src/arithmeticencoder.hpp:39:0,\n",
" from /content/LASzip_src/src/arithmeticencoder.cpp:70:\n",
"/content/LASzip_src/src/mydefs.hpp: In function ‘BOOL IS_LITTLE_ENDIAN()’:\n",
"/content/LASzip_src/src/mydefs.hpp:174:19: warning: cast from type ‘const U32* {aka const unsigned int*}’ to type ‘U8* {aka unsigned char*}’ casts away qualifiers [-Wcast-qual]\n",
" return (*((U8*)&i) == 1);\r\n",
" ^\n",
"In file included from /content/LASzip_src/src/arithmeticmodel.hpp:40:0,\n",
" from /content/LASzip_src/src/arithmeticmodel.cpp:70:\n",
"/content/LASzip_src/src/mydefs.hpp: In function ‘BOOL IS_LITTLE_ENDIAN()’:\n",
"/content/LASzip_src/src/mydefs.hpp:174:19: warning: cast from type ‘const U32* {aka const unsigned int*}’ to type ‘U8* {aka unsigned char*}’ casts away qualifiers [-Wcast-qual]\n",
" return (*((U8*)&i) == 1);\r\n",
" ^\n",
"In file included from /content/LASzip_src/src/arithmeticencoder.hpp:39:0,\n",
" from /content/LASzip_src/src/integercompressor.hpp:51,\n",
" from /content/LASzip_src/src/integercompressor.cpp:31:\n",
"/content/LASzip_src/src/mydefs.hpp: In function ‘BOOL IS_LITTLE_ENDIAN()’:\n",
"/content/LASzip_src/src/mydefs.hpp:174:19: warning: cast from type ‘const U32* {aka const unsigned int*}’ to type ‘U8* {aka unsigned char*}’ casts away qualifiers [-Wcast-qual]\n",
" return (*((U8*)&i) == 1);\r\n",
" ^\n",
"In file included from /content/LASzip_src/src/lasindex.hpp:43:0,\n",
" from /content/LASzip_src/src/lasindex.cpp:31:\n",
"/content/LASzip_src/src/mydefs.hpp: In function ‘BOOL IS_LITTLE_ENDIAN()’:\n",
"/content/LASzip_src/src/mydefs.hpp:174:19: warning: cast from type ‘const U32* {aka const unsigned int*}’ to type ‘U8* {aka unsigned char*}’ casts away qualifiers [-Wcast-qual]\n",
" return (*((U8*)&i) == 1);\r\n",
" ^\n",
"/content/LASzip_src/src/lasindex.cpp: In member function ‘BOOL LASindex::write(ByteStreamOut*) const’:\n",
"/content/LASzip_src/src/lasindex.cpp:593:30: warning: cast from type ‘const char*’ to type ‘U8* {aka unsigned char*}’ casts away qualifiers [-Wcast-qual]\n",
" if (!stream->putBytes((U8*)\"LASX\", 4))\n",
" ^~~~~~\n",
"In file included from /content/LASzip_src/src/lasinterval.hpp:35:0,\n",
" from /content/LASzip_src/src/lasinterval.cpp:31:\n",
"/content/LASzip_src/src/mydefs.hpp: In function ‘BOOL IS_LITTLE_ENDIAN()’:\n",
"/content/LASzip_src/src/mydefs.hpp:174:19: warning: cast from type ‘const U32* {aka const unsigned int*}’ to type ‘U8* {aka unsigned char*}’ casts away qualifiers [-Wcast-qual]\n",
" return (*((U8*)&i) == 1);\r\n",
" ^\n",
"/content/LASzip_src/src/lasinterval.cpp: In member function ‘BOOL LASinterval::write(ByteStreamOut*) const’:\n",
"/content/LASzip_src/src/lasinterval.cpp:662:30: warning: cast from type ‘const char*’ to type ‘U8* {aka unsigned char*}’ casts away qualifiers [-Wcast-qual]\n",
" if (!stream->putBytes((U8*)\"LASV\", 4))\n",
" ^~~~~~\n",
"In file included from /content/LASzip_src/src/lasquadtree.hpp:38:0,\n",
" from /content/LASzip_src/src/lasquadtree.cpp:31:\n",
"/content/LASzip_src/src/mydefs.hpp: In function ‘BOOL IS_LITTLE_ENDIAN()’:\n",
"/content/LASzip_src/src/mydefs.hpp:174:19: warning: cast from type ‘const U32* {aka const unsigned int*}’ to type ‘U8* {aka unsigned char*}’ casts away qualifiers [-Wcast-qual]\n",
" return (*((U8*)&i) == 1);\r\n",
" ^\n",
"/content/LASzip_src/src/lasquadtree.cpp: In member function ‘BOOL LASquadtree::coarsen(I32, I32*, U32*, I32**) const’:\n",
"/content/LASzip_src/src/lasquadtree.cpp:419:29: warning: cast from type ‘const U32* {aka const unsigned int*}’ to type ‘I32* {aka int*}’ casts away qualifiers [-Wcast-qual]\n",
" (*cell_indices) = (I32*)coarser_indices;\n",
" ^~~~~~~~~~~~~~~\n",
"/content/LASzip_src/src/lasquadtree.cpp: In member function ‘BOOL LASquadtree::write(ByteStreamOut*) const’:\n",
"/content/LASzip_src/src/lasquadtree.cpp:683:30: warning: cast from type ‘const char*’ to type ‘U8* {aka unsigned char*}’ casts away qualifiers [-Wcast-qual]\n",
" if (!stream->putBytes((U8*)\"LASS\", 4))\n",
" ^~~~~~\n",
"/content/LASzip_src/src/lasquadtree.cpp:696:30: warning: cast from type ‘const char*’ to type ‘U8* {aka unsigned char*}’ casts away qualifiers [-Wcast-qual]\n",
" if (!stream->putBytes((U8*)\"LASQ\", 4))\n",
" ^~~~~~\n",
"/content/LASzip_src/src/lasquadtree.cpp:709:34: warning: cast from type ‘const U32* {aka const unsigned int*}’ to type ‘U8* {aka unsigned char*}’ casts away qualifiers [-Wcast-qual]\n",
" if (!stream->put32bitsLE((U8*)&levels))\n",
" ^~~~~~\n",
"/content/LASzip_src/src/lasquadtree.cpp:726:34: warning: cast from type ‘const F32* {aka const float*}’ to type ‘U8* {aka unsigned char*}’ casts away qualifiers [-Wcast-qual]\n",
" if (!stream->put32bitsLE((U8*)&min_x))\n",
" ^~~~~\n",
"/content/LASzip_src/src/lasquadtree.cpp:731:34: warning: cast from type ‘const F32* {aka const float*}’ to type ‘U8* {aka unsigned char*}’ casts away qualifiers [-Wcast-qual]\n",
" if (!stream->put32bitsLE((U8*)&max_x))\n",
" ^~~~~\n",
"/content/LASzip_src/src/lasquadtree.cpp:736:34: warning: cast from type ‘const F32* {aka const float*}’ to type ‘U8* {aka unsigned char*}’ casts away qualifiers [-Wcast-qual]\n",
" if (!stream->put32bitsLE((U8*)&min_y))\n",
" ^~~~~\n",
"/content/LASzip_src/src/lasquadtree.cpp:741:34: warning: cast from type ‘const F32* {aka const float*}’ to type ‘U8* {aka unsigned char*}’ casts away qualifiers [-Wcast-qual]\n",
" if (!stream->put32bitsLE((U8*)&max_y))\n",
" ^~~~~\n",
"In file included from /content/LASzip_src/src/lasreaditem.hpp:37:0,\n",
" from /content/LASzip_src/src/lasreaditemcompressed_v1.hpp:37,\n",
" from /content/LASzip_src/src/lasreaditemcompressed_v1.cpp:32:\n",
"/content/LASzip_src/src/mydefs.hpp: In function ‘BOOL IS_LITTLE_ENDIAN()’:\n",
"/content/LASzip_src/src/mydefs.hpp:174:19: warning: cast from type ‘const U32* {aka const unsigned int*}’ to type ‘U8* {aka unsigned char*}’ casts away qualifiers [-Wcast-qual]\n",
" return (*((U8*)&i) == 1);\r\n",
" ^\n",
"/content/LASzip_src/src/lasreaditemcompressed_v1.cpp: In member function ‘virtual BOOL LASreadItemCompressed_GPSTIME11_v1::init(const U8*, U32&)’:\n",
"/content/LASzip_src/src/lasreaditemcompressed_v1.cpp:291:30: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U64* {aka long long unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" last_gpstime.u64 = *((U64*)item);\r\n",
" ^~~~\n",
"In file included from /content/LASzip_src/src/lasreaditem.hpp:37:0,\n",
" from /content/LASzip_src/src/lasreaditemcompressed_v2.hpp:36,\n",
" from /content/LASzip_src/src/lasreaditemcompressed_v2.cpp:32:\n",
"/content/LASzip_src/src/mydefs.hpp: In function ‘BOOL IS_LITTLE_ENDIAN()’:\n",
"/content/LASzip_src/src/mydefs.hpp:174:19: warning: cast from type ‘const U32* {aka const unsigned int*}’ to type ‘U8* {aka unsigned char*}’ casts away qualifiers [-Wcast-qual]\n",
" return (*((U8*)&i) == 1);\r\n",
" ^\n",
"/content/LASzip_src/src/lasreaditemcompressed_v2.cpp: In member function ‘virtual BOOL LASreadItemCompressed_GPSTIME11_v2::init(const U8*, U32&)’:\n",
"/content/LASzip_src/src/lasreaditemcompressed_v2.cpp:290:33: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U64* {aka long long unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" last_gpstime[0].u64 = *((U64*)item);\r\n",
" ^~~~\n",
"In file included from /content/LASzip_src/src/lasreaditem.hpp:37:0,\n",
" from /content/LASzip_src/src/lasreaditemcompressed_v3.hpp:36,\n",
" from /content/LASzip_src/src/lasreaditemcompressed_v3.cpp:32:\n",
"/content/LASzip_src/src/mydefs.hpp: In function ‘BOOL IS_LITTLE_ENDIAN()’:\n",
"/content/LASzip_src/src/mydefs.hpp:174:19: warning: cast from type ‘const U32* {aka const unsigned int*}’ to type ‘U8* {aka unsigned char*}’ casts away qualifiers [-Wcast-qual]\n",
" return (*((U8*)&i) == 1);\r\n",
" ^\n",
"In file included from /content/LASzip_src/src/lasreaditemcompressed_v3.hpp:39:0,\n",
" from /content/LASzip_src/src/lasreaditemcompressed_v3.cpp:32:\n",
"/content/LASzip_src/src/bytestreamin_array.hpp: In member function ‘virtual void ByteStreamInArray::getBytes(U8*, U32)’:\n",
"/content/LASzip_src/src/bytestreamin_array.hpp:154:41: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘void*’ casts away qualifiers [-Wcast-qual]\n",
" memcpy((void*)bytes, (void*)(data+curr), num_bytes);\n",
" ^\n",
"/content/LASzip_src/src/lasreaditemcompressed_v3.cpp: In member function ‘BOOL LASreadItemCompressed_POINT14_v3::createAndInitModelsAndDecompressors(U32, const U8*)’:\n",
"/content/LASzip_src/src/lasreaditemcompressed_v3.cpp:318:49: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LASpoint14*’ casts away qualifiers [-Wcast-qual]\n",
" contexts[context].last_Z[i] = ((LASpoint14*)item)->Z;\n",
" ^~~~\n",
"/content/LASzip_src/src/lasreaditemcompressed_v3.cpp:337:57: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LASpoint14*’ casts away qualifiers [-Wcast-qual]\n",
" contexts[context].last_intensity[i] = ((LASpoint14*)item)->intensity;\n",
" ^~~~\n",
"/content/LASzip_src/src/lasreaditemcompressed_v3.cpp:362:57: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LASpoint14*’ casts away qualifiers [-Wcast-qual]\n",
" contexts[context].last_gpstime[0].f64 = ((LASpoint14*)item)->gps_time;\n",
" ^~~~\n",
"/content/LASzip_src/src/lasreaditemcompressed_v3.cpp: In member function ‘virtual BOOL LASreadItemCompressed_POINT14_v3::init(const U8*, U32&)’:\n",
"/content/LASzip_src/src/lasreaditemcompressed_v3.cpp:690:35: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LASpoint14*’ casts away qualifiers [-Wcast-qual]\n",
" current_context = ((LASpoint14*)item)->scanner_channel;\n",
" ^~~~\n",
"In file included from /content/LASzip_src/src/lasreadpoint.hpp:47:0,\n",
" from /content/LASzip_src/src/lasreadpoint.cpp:32:\n",
"/content/LASzip_src/src/mydefs.hpp: In function ‘BOOL IS_LITTLE_ENDIAN()’:\n",
"/content/LASzip_src/src/mydefs.hpp:174:19: warning: cast from type ‘const U32* {aka const unsigned int*}’ to type ‘U8* {aka unsigned char*}’ casts away qualifiers [-Wcast-qual]\n",
" return (*((U8*)&i) == 1);\r\n",
" ^\n",
"In file included from /content/LASzip_src/src/lasreaditemcompressed_v3.hpp:39:0,\n",
" from /content/LASzip_src/src/lasreadpoint.cpp:38:\n",
"/content/LASzip_src/src/bytestreamin_array.hpp: In member function ‘virtual void ByteStreamInArray::getBytes(U8*, U32)’:\n",
"/content/LASzip_src/src/bytestreamin_array.hpp:154:41: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘void*’ casts away qualifiers [-Wcast-qual]\n",
" memcpy((void*)bytes, (void*)(data+curr), num_bytes);\n",
" ^\n",
"/content/LASzip_src/src/lasreadpoint.cpp: In member function ‘BOOL LASreadPoint::setup(U32, const LASitem*, const LASzip*)’:\n",
"/content/LASzip_src/src/lasreadpoint.cpp:132:7: warning: this ‘else’ clause does not guard... [-Wmisleading-indentation]\n",
" else\r\n",
" ^~~~\n",
"/content/LASzip_src/src/lasreadpoint.cpp:134:9: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘else’\n",
" break;\r\n",
" ^~~~~\n",
"In file included from /content/LASzip_src/src/laswriteitem.hpp:37:0,\n",
" from /content/LASzip_src/src/laswriteitemcompressed_v1.hpp:37,\n",
" from /content/LASzip_src/src/laswriteitemcompressed_v1.cpp:32:\n",
"/content/LASzip_src/src/mydefs.hpp: In function ‘BOOL IS_LITTLE_ENDIAN()’:\n",
"/content/LASzip_src/src/mydefs.hpp:174:19: warning: cast from type ‘const U32* {aka const unsigned int*}’ to type ‘U8* {aka unsigned char*}’ casts away qualifiers [-Wcast-qual]\n",
" return (*((U8*)&i) == 1);\r\n",
" ^\n",
"/content/LASzip_src/src/laswriteitemcompressed_v1.cpp: In member function ‘virtual BOOL LASwriteItemCompressed_POINT10_v1::write(const U8*, U32&)’:\n",
"/content/LASzip_src/src/laswriteitemcompressed_v1.cpp:176:30: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LASpoint10*’ casts away qualifiers [-Wcast-qual]\n",
" I32 x_diff = ((LASpoint10*)item)->x - ((LASpoint10*)last_item)->x;\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v1.cpp:177:30: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LASpoint10*’ casts away qualifiers [-Wcast-qual]\n",
" I32 y_diff = ((LASpoint10*)item)->y - ((LASpoint10*)last_item)->y;\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v1.cpp:184:61: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LASpoint10*’ casts away qualifiers [-Wcast-qual]\n",
" ic_z->compress(((LASpoint10*)last_item)->z, ((LASpoint10*)item)->z, (k_bits < 19 ? k_bits : 19));\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v1.cpp:187:79: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LASpoint10*’ casts away qualifiers [-Wcast-qual]\n",
" I32 changed_values = ((((LASpoint10*)last_item)->intensity != ((LASpoint10*)item)->intensity) << 5) |\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v1.cpp:192:85: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LASpoint10*’ casts away qualifiers [-Wcast-qual]\n",
" ((((LASpoint10*)last_item)->point_source_ID != ((LASpoint10*)item)->point_source_ID));\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v1.cpp:199:79: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LASpoint10*’ casts away qualifiers [-Wcast-qual]\n",
" ic_intensity->compress(((LASpoint10*)last_item)->intensity, ((LASpoint10*)item)->intensity);\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v1.cpp:244:91: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LASpoint10*’ casts away qualifiers [-Wcast-qual]\n",
" ic_point_source_ID->compress(((LASpoint10*)last_item)->point_source_ID, ((LASpoint10*)item)->point_source_ID);\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v1.cpp: In member function ‘virtual BOOL LASwriteItemCompressed_GPSTIME11_v1::init(const U8*, U32&)’:\n",
"/content/LASzip_src/src/laswriteitemcompressed_v1.cpp:296:30: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U64* {aka long long unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" last_gpstime.u64 = *((U64*)item);\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v1.cpp: In member function ‘virtual BOOL LASwriteItemCompressed_GPSTIME11_v1::write(const U8*, U32&)’:\n",
"/content/LASzip_src/src/laswriteitemcompressed_v1.cpp:303:30: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘I64* {aka long long int*}’ casts away qualifiers [-Wcast-qual]\n",
" this_gpstime.i64 = *((I64*)item);\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v1.cpp: In member function ‘virtual BOOL LASwriteItemCompressed_RGB12_v1::write(const U8*, U32&)’:\n",
"/content/LASzip_src/src/laswriteitemcompressed_v1.cpp:456:55: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" U32 sym = ((((U16*)last_item)[0]&0x00FF) != (((U16*)item)[0]&0x00FF)) << 0;\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v1.cpp:457:52: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" sym |= ((((U16*)last_item)[0]&0xFF00) != (((U16*)item)[0]&0xFF00)) << 1;\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v1.cpp:458:52: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" sym |= ((((U16*)last_item)[1]&0x00FF) != (((U16*)item)[1]&0x00FF)) << 2;\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v1.cpp:459:52: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" sym |= ((((U16*)last_item)[1]&0xFF00) != (((U16*)item)[1]&0xFF00)) << 3;\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v1.cpp:460:52: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" sym |= ((((U16*)last_item)[2]&0x00FF) != (((U16*)item)[2]&0x00FF)) << 4;\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v1.cpp:461:52: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" sym |= ((((U16*)last_item)[2]&0xFF00) != (((U16*)item)[2]&0xFF00)) << 5;\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v1.cpp:463:72: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" if (sym & (1 << 0)) ic_rgb->compress(((U16*)last_item)[0]&255,((U16*)item)[0]&255, 0);\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v1.cpp:464:71: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" if (sym & (1 << 1)) ic_rgb->compress(((U16*)last_item)[0]>>8,((U16*)item)[0]>>8, 1);\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v1.cpp:465:72: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" if (sym & (1 << 2)) ic_rgb->compress(((U16*)last_item)[1]&255,((U16*)item)[1]&255, 2);\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v1.cpp:466:71: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" if (sym & (1 << 3)) ic_rgb->compress(((U16*)last_item)[1]>>8,((U16*)item)[1]>>8, 3);\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v1.cpp:467:72: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" if (sym & (1 << 4)) ic_rgb->compress(((U16*)last_item)[2]&255,((U16*)item)[2]&255, 4);\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v1.cpp:468:71: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" if (sym & (1 << 5)) ic_rgb->compress(((U16*)last_item)[2]>>8,((U16*)item)[2]>>8, 5);\r\n",
" ^~~~\n",
"In file included from /content/LASzip_src/src/laswriteitem.hpp:37:0,\n",
" from /content/LASzip_src/src/laswriteitemcompressed_v2.hpp:36,\n",
" from /content/LASzip_src/src/laswriteitemcompressed_v2.cpp:32:\n",
"/content/LASzip_src/src/mydefs.hpp: In function ‘BOOL IS_LITTLE_ENDIAN()’:\n",
"/content/LASzip_src/src/mydefs.hpp:174:19: warning: cast from type ‘const U32* {aka const unsigned int*}’ to type ‘U8* {aka unsigned char*}’ casts away qualifiers [-Wcast-qual]\n",
" return (*((U8*)&i) == 1);\r\n",
" ^\n",
"/content/LASzip_src/src/laswriteitemcompressed_v2.cpp: In member function ‘virtual BOOL LASwriteItemCompressed_POINT10_v2::write(const U8*, U32&)’:\n",
"/content/LASzip_src/src/laswriteitemcompressed_v2.cpp:141:25: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LASpoint10*’ casts away qualifiers [-Wcast-qual]\n",
" U32 r = ((LASpoint10*)item)->return_number;\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v2.cpp:142:25: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LASpoint10*’ casts away qualifiers [-Wcast-qual]\n",
" U32 n = ((LASpoint10*)item)->number_of_returns_of_given_pulse;\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v2.cpp:150:62: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LASpoint10*’ casts away qualifiers [-Wcast-qual]\n",
" ((last_intensity[m] != ((LASpoint10*)item)->intensity) << 4) |\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v2.cpp:154:85: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LASpoint10*’ casts away qualifiers [-Wcast-qual]\n",
" (((LASpoint10*)last_item)->point_source_ID != ((LASpoint10*)item)->point_source_ID));\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v2.cpp:172:61: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LASpoint10*’ casts away qualifiers [-Wcast-qual]\n",
" ic_intensity->compress(last_intensity[m], ((LASpoint10*)item)->intensity, (m < 3 ? m : 3));\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v2.cpp:173:39: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LASpoint10*’ casts away qualifiers [-Wcast-qual]\n",
" last_intensity[m] = ((LASpoint10*)item)->intensity;\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v2.cpp:190:55: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LASpoint10*’ casts away qualifiers [-Wcast-qual]\n",
" enc->encodeSymbol(m_scan_angle_rank[((LASpoint10*)item)->scan_direction_flag], U8_FOLD(item[16]-last_item[16]));\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v2.cpp:207:91: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LASpoint10*’ casts away qualifiers [-Wcast-qual]\n",
" ic_point_source_ID->compress(((LASpoint10*)last_item)->point_source_ID, ((LASpoint10*)item)->point_source_ID);\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v2.cpp:212:24: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LASpoint10*’ casts away qualifiers [-Wcast-qual]\n",
" diff = ((LASpoint10*)item)->x - ((LASpoint10*)last_item)->x;\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v2.cpp:219:24: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LASpoint10*’ casts away qualifiers [-Wcast-qual]\n",
" diff = ((LASpoint10*)item)->y - ((LASpoint10*)last_item)->y;\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v2.cpp:225:48: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LASpoint10*’ casts away qualifiers [-Wcast-qual]\n",
" ic_z->compress(last_height[l], ((LASpoint10*)item)->z, (n==1) + (k_bits < 18 ? U32_ZERO_BIT_0(k_bits) : 18));\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v2.cpp:226:34: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LASpoint10*’ casts away qualifiers [-Wcast-qual]\n",
" last_height[l] = ((LASpoint10*)item)->z;\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v2.cpp: In member function ‘virtual BOOL LASwriteItemCompressed_GPSTIME11_v2::init(const U8*, U32&)’:\n",
"/content/LASzip_src/src/laswriteitemcompressed_v2.cpp:283:33: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U64* {aka long long unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" last_gpstime[0].u64 = *((U64*)item);\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v2.cpp: In member function ‘virtual BOOL LASwriteItemCompressed_GPSTIME11_v2::write(const U8*, U32&)’:\n",
"/content/LASzip_src/src/laswriteitemcompressed_v2.cpp:293:30: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘I64* {aka long long int*}’ casts away qualifiers [-Wcast-qual]\n",
" this_gpstime.i64 = *((I64*)item);\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v2.cpp: In member function ‘virtual BOOL LASwriteItemCompressed_RGB12_v2::write(const U8*, U32&)’:\n",
"/content/LASzip_src/src/laswriteitemcompressed_v2.cpp:508:47: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" U32 sym = ((last_item[0]&0x00FF) != (((U16*)item)[0]&0x00FF)) << 0;\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v2.cpp:509:44: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" sym |= ((last_item[0]&0xFF00) != (((U16*)item)[0]&0xFF00)) << 1;\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v2.cpp:510:44: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" sym |= ((last_item[1]&0x00FF) != (((U16*)item)[1]&0x00FF)) << 2;\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v2.cpp:511:44: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" sym |= ((last_item[1]&0xFF00) != (((U16*)item)[1]&0xFF00)) << 3;\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v2.cpp:512:44: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" sym |= ((last_item[2]&0x00FF) != (((U16*)item)[2]&0x00FF)) << 4;\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v2.cpp:513:44: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" sym |= ((last_item[2]&0xFF00) != (((U16*)item)[2]&0xFF00)) << 5;\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v2.cpp:514:20: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" sym |= (((((U16*)item)[0]&0x00FF) != (((U16*)item)[1]&0x00FF)) || ((((U16*)item)[0]&0x00FF) != (((U16*)item)[2]&0x00FF)) || ((((U16*)item)[0]&0xFF00) != (((U16*)item)[1]&0xFF00)) || ((((U16*)item)[0]&0xFF00) != (((U16*)item)[2]&0xFF00))) << 6;\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v2.cpp:514:48: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" sym |= (((((U16*)item)[0]&0x00FF) != (((U16*)item)[1]&0x00FF)) || ((((U16*)item)[0]&0x00FF) != (((U16*)item)[2]&0x00FF)) || ((((U16*)item)[0]&0xFF00) != (((U16*)item)[1]&0xFF00)) || ((((U16*)item)[0]&0xFF00) != (((U16*)item)[2]&0xFF00))) << 6;\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v2.cpp:514:78: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" sym |= (((((U16*)item)[0]&0x00FF) != (((U16*)item)[1]&0x00FF)) || ((((U16*)item)[0]&0x00FF) != (((U16*)item)[2]&0x00FF)) || ((((U16*)item)[0]&0xFF00) != (((U16*)item)[1]&0xFF00)) || ((((U16*)item)[0]&0xFF00) != (((U16*)item)[2]&0xFF00))) << 6;\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v2.cpp:514:106: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" sym |= (((((U16*)item)[0]&0x00FF) != (((U16*)item)[1]&0x00FF)) || ((((U16*)item)[0]&0x00FF) != (((U16*)item)[2]&0x00FF)) || ((((U16*)item)[0]&0xFF00) != (((U16*)item)[1]&0xFF00)) || ((((U16*)item)[0]&0xFF00) != (((U16*)item)[2]&0xFF00))) << 6;\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v2.cpp:514:136: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" sym |= (((((U16*)item)[0]&0x00FF) != (((U16*)item)[1]&0x00FF)) || ((((U16*)item)[0]&0x00FF) != (((U16*)item)[2]&0x00FF)) || ((((U16*)item)[0]&0xFF00) != (((U16*)item)[1]&0xFF00)) || ((((U16*)item)[0]&0xFF00) != (((U16*)item)[2]&0xFF00))) << 6;\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v2.cpp:514:164: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" sym |= (((((U16*)item)[0]&0x00FF) != (((U16*)item)[1]&0x00FF)) || ((((U16*)item)[0]&0x00FF) != (((U16*)item)[2]&0x00FF)) || ((((U16*)item)[0]&0xFF00) != (((U16*)item)[1]&0xFF00)) || ((((U16*)item)[0]&0xFF00) != (((U16*)item)[2]&0xFF00))) << 6;\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v2.cpp:514:194: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" sym |= (((((U16*)item)[0]&0x00FF) != (((U16*)item)[1]&0x00FF)) || ((((U16*)item)[0]&0x00FF) != (((U16*)item)[2]&0x00FF)) || ((((U16*)item)[0]&0xFF00) != (((U16*)item)[1]&0xFF00)) || ((((U16*)item)[0]&0xFF00) != (((U16*)item)[2]&0xFF00))) << 6;\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v2.cpp:514:222: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" sym |= (((((U16*)item)[0]&0x00FF) != (((U16*)item)[1]&0x00FF)) || ((((U16*)item)[0]&0x00FF) != (((U16*)item)[2]&0x00FF)) || ((((U16*)item)[0]&0xFF00) != (((U16*)item)[1]&0xFF00)) || ((((U16*)item)[0]&0xFF00) != (((U16*)item)[2]&0xFF00))) << 6;\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v2.cpp:518:28: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" diff_l = ((int)(((U16*)item)[0]&255)) - (last_item[0]&255);\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v2.cpp:523:28: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" diff_h = ((int)(((U16*)item)[0]>>8)) - (last_item[0]>>8);\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v2.cpp:530:28: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" corr = ((int)(((U16*)item)[1]&255)) - U8_CLAMP(diff_l + (last_item[1]&255));\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v2.cpp:535:34: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" diff_l = (diff_l + (((U16*)item)[1]&255) - (last_item[1]&255)) / 2;\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v2.cpp:536:28: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" corr = ((int)(((U16*)item)[2]&255)) - U8_CLAMP(diff_l + (last_item[2]&255));\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v2.cpp:541:28: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" corr = ((int)(((U16*)item)[1]>>8)) - U8_CLAMP(diff_h + (last_item[1]>>8));\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v2.cpp:546:34: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" diff_h = (diff_h + (((U16*)item)[1]>>8) - (last_item[1]>>8)) / 2;\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v2.cpp:547:28: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" corr = ((int)(((U16*)item)[2]>>8)) - U8_CLAMP(diff_h + (last_item[2]>>8));\r\n",
" ^~~~\n",
"In file included from /content/LASzip_src/src/laswriteitem.hpp:37:0,\n",
" from /content/LASzip_src/src/laswriteitemcompressed_v3.hpp:36,\n",
" from /content/LASzip_src/src/laswriteitemcompressed_v3.cpp:32:\n",
"/content/LASzip_src/src/mydefs.hpp: In function ‘BOOL IS_LITTLE_ENDIAN()’:\n",
"/content/LASzip_src/src/mydefs.hpp:174:19: warning: cast from type ‘const U32* {aka const unsigned int*}’ to type ‘U8* {aka unsigned char*}’ casts away qualifiers [-Wcast-qual]\n",
" return (*((U8*)&i) == 1);\r\n",
" ^\n",
"/content/LASzip_src/src/laswriteitemcompressed_v3.cpp: In member function ‘BOOL LASwriteItemCompressed_POINT14_v3::createAndInitModelsAndCompressors(U32, const U8*)’:\n",
"/content/LASzip_src/src/laswriteitemcompressed_v3.cpp:304:49: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LASpoint14*’ casts away qualifiers [-Wcast-qual]\n",
" contexts[context].last_Z[i] = ((LASpoint14*)item)->Z;\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v3.cpp:323:57: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LASpoint14*’ casts away qualifiers [-Wcast-qual]\n",
" contexts[context].last_intensity[i] = ((LASpoint14*)item)->intensity;\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v3.cpp:348:57: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LASpoint14*’ casts away qualifiers [-Wcast-qual]\n",
" contexts[context].last_gpstime[0].f64 = ((LASpoint14*)item)->gps_time;\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v3.cpp: In member function ‘virtual BOOL LASwriteItemCompressed_POINT14_v3::init(const U8*, U32&)’:\n",
"/content/LASzip_src/src/laswriteitemcompressed_v3.cpp:453:35: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LASpoint14*’ casts away qualifiers [-Wcast-qual]\n",
" current_context = ((LASpoint14*)item)->scanner_channel;\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v3.cpp: In member function ‘virtual BOOL LASwriteItemCompressed_POINT14_v3::write(const U8*, U32&)’:\n",
"/content/LASzip_src/src/laswriteitemcompressed_v3.cpp:484:39: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LASpoint14*’ casts away qualifiers [-Wcast-qual]\n",
" U32 scanner_channel = ((LASpoint14*)item)->scanner_channel;\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v3.cpp:498:45: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LASpoint14*’ casts away qualifiers [-Wcast-qual]\n",
" BOOL point_source_change = (((LASpoint14*)item)->point_source_ID != ((LASpoint14*)last_item)->point_source_ID);\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v3.cpp:499:41: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LASpoint14*’ casts away qualifiers [-Wcast-qual]\n",
" BOOL gps_time_change = (((LASpoint14*)item)->gps_time != ((LASpoint14*)last_item)->gps_time);\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v3.cpp:500:43: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LASpoint14*’ casts away qualifiers [-Wcast-qual]\n",
" BOOL scan_angle_change = (((LASpoint14*)item)->scan_angle != ((LASpoint14*)last_item)->scan_angle);\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v3.cpp:507:25: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LASpoint14*’ casts away qualifiers [-Wcast-qual]\n",
" U32 n = ((LASpoint14*)item)->number_of_returns;\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v3.cpp:508:25: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LASpoint14*’ casts away qualifiers [-Wcast-qual]\n",
" U32 r = ((LASpoint14*)item)->return_number;\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v3.cpp:620:24: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LASpoint14*’ casts away qualifiers [-Wcast-qual]\n",
" diff = ((LASpoint14*)item)->X - ((LASpoint14*)last_item)->X;\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v3.cpp:627:24: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LASpoint14*’ casts away qualifiers [-Wcast-qual]\n",
" diff = ((LASpoint14*)item)->Y - ((LASpoint14*)last_item)->Y;\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v3.cpp:636:95: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LASpoint14*’ casts away qualifiers [-Wcast-qual]\n",
" contexts[current_context].ic_Z->compress(contexts[current_context].last_Z[l], ((LASpoint14*)item)->Z, (n==1) + (k_bits < 18 ? U32_ZERO_BIT_0(k_bits) : 18));\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v3.cpp:637:55: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LASpoint14*’ casts away qualifiers [-Wcast-qual]\n",
" contexts[current_context].last_Z[l] = ((LASpoint14*)item)->Z;\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v3.cpp:644:38: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LASpoint14*’ casts away qualifiers [-Wcast-qual]\n",
" U32 classification = ((LASpoint14*)item)->classification;\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v3.cpp:664:30: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LASpoint14*’ casts away qualifiers [-Wcast-qual]\n",
" U32 flags = (((LASpoint14*)item)->edge_of_flight_line << 5) | (((LASpoint14*)item)->scan_direction_flag << 4) | ((LASpoint14*)item)->classification_flags;\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v3.cpp:664:80: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LASpoint14*’ casts away qualifiers [-Wcast-qual]\n",
" U32 flags = (((LASpoint14*)item)->edge_of_flight_line << 5) | (((LASpoint14*)item)->scan_direction_flag << 4) | ((LASpoint14*)item)->classification_flags;\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v3.cpp:664:129: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LASpoint14*’ casts away qualifiers [-Wcast-qual]\n",
" U32 flags = (((LASpoint14*)item)->edge_of_flight_line << 5) | (((LASpoint14*)item)->scan_direction_flag << 4) | ((LASpoint14*)item)->classification_flags;\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v3.cpp:682:21: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LASpoint14*’ casts away qualifiers [-Wcast-qual]\n",
" if (((LASpoint14*)item)->intensity != ((LASpoint14*)last_item)->intensity)\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v3.cpp:686:136: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LASpoint14*’ casts away qualifiers [-Wcast-qual]\n",
" contexts[current_context].ic_intensity->compress(contexts[current_context].last_intensity[(cpr<<1) | gps_time_change], ((LASpoint14*)item)->intensity, cpr);\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v3.cpp:687:88: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LASpoint14*’ casts away qualifiers [-Wcast-qual]\n",
" contexts[current_context].last_intensity[(cpr<<1) | gps_time_change] = ((LASpoint14*)item)->intensity;\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v3.cpp:696:107: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LASpoint14*’ casts away qualifiers [-Wcast-qual]\n",
" contexts[current_context].ic_scan_angle->compress(((LASpoint14*)last_item)->scan_angle, ((LASpoint14*)item)->scan_angle, gps_time_change); // if the GPS time has changed\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v3.cpp:703:21: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LASpoint14*’ casts away qualifiers [-Wcast-qual]\n",
" if (((LASpoint14*)item)->user_data != ((LASpoint14*)last_item)->user_data)\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v3.cpp:712:123: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LASpoint14*’ casts away qualifiers [-Wcast-qual]\n",
" enc_user_data->encodeSymbol(contexts[current_context].m_user_data[((LASpoint14*)last_item)->user_data/4], ((LASpoint14*)item)->user_data);\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v3.cpp:721:117: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LASpoint14*’ casts away qualifiers [-Wcast-qual]\n",
" contexts[current_context].ic_point_source_ID->compress(((LASpoint14*)last_item)->point_source_ID, ((LASpoint14*)item)->point_source_ID);\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v3.cpp:733:34: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LASpoint14*’ casts away qualifiers [-Wcast-qual]\n",
" gps_time.f64 = ((LASpoint14*)item)->gps_time;\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v3.cpp: In member function ‘virtual BOOL LASwriteItemCompressed_RGB14_v3::write(const U8*, U32&)’:\n",
"/content/LASzip_src/src/laswriteitemcompressed_v3.cpp:1285:47: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" U32 sym = ((last_item[0]&0x00FF) != (((U16*)item)[0]&0x00FF)) << 0;\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v3.cpp:1286:44: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" sym |= ((last_item[0]&0xFF00) != (((U16*)item)[0]&0xFF00)) << 1;\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v3.cpp:1287:44: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" sym |= ((last_item[1]&0x00FF) != (((U16*)item)[1]&0x00FF)) << 2;\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v3.cpp:1288:44: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" sym |= ((last_item[1]&0xFF00) != (((U16*)item)[1]&0xFF00)) << 3;\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v3.cpp:1289:44: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" sym |= ((last_item[2]&0x00FF) != (((U16*)item)[2]&0x00FF)) << 4;\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v3.cpp:1290:44: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" sym |= ((last_item[2]&0xFF00) != (((U16*)item)[2]&0xFF00)) << 5;\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v3.cpp:1291:20: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" sym |= (((((U16*)item)[0]&0x00FF) != (((U16*)item)[1]&0x00FF)) || ((((U16*)item)[0]&0x00FF) != (((U16*)item)[2]&0x00FF)) || ((((U16*)item)[0]&0xFF00) != (((U16*)item)[1]&0xFF00)) || ((((U16*)item)[0]&0xFF00) != (((U16*)item)[2]&0xFF00))) << 6;\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v3.cpp:1291:48: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" sym |= (((((U16*)item)[0]&0x00FF) != (((U16*)item)[1]&0x00FF)) || ((((U16*)item)[0]&0x00FF) != (((U16*)item)[2]&0x00FF)) || ((((U16*)item)[0]&0xFF00) != (((U16*)item)[1]&0xFF00)) || ((((U16*)item)[0]&0xFF00) != (((U16*)item)[2]&0xFF00))) << 6;\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v3.cpp:1291:78: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" sym |= (((((U16*)item)[0]&0x00FF) != (((U16*)item)[1]&0x00FF)) || ((((U16*)item)[0]&0x00FF) != (((U16*)item)[2]&0x00FF)) || ((((U16*)item)[0]&0xFF00) != (((U16*)item)[1]&0xFF00)) || ((((U16*)item)[0]&0xFF00) != (((U16*)item)[2]&0xFF00))) << 6;\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v3.cpp:1291:106: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" sym |= (((((U16*)item)[0]&0x00FF) != (((U16*)item)[1]&0x00FF)) || ((((U16*)item)[0]&0x00FF) != (((U16*)item)[2]&0x00FF)) || ((((U16*)item)[0]&0xFF00) != (((U16*)item)[1]&0xFF00)) || ((((U16*)item)[0]&0xFF00) != (((U16*)item)[2]&0xFF00))) << 6;\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v3.cpp:1291:136: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" sym |= (((((U16*)item)[0]&0x00FF) != (((U16*)item)[1]&0x00FF)) || ((((U16*)item)[0]&0x00FF) != (((U16*)item)[2]&0x00FF)) || ((((U16*)item)[0]&0xFF00) != (((U16*)item)[1]&0xFF00)) || ((((U16*)item)[0]&0xFF00) != (((U16*)item)[2]&0xFF00))) << 6;\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v3.cpp:1291:164: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" sym |= (((((U16*)item)[0]&0x00FF) != (((U16*)item)[1]&0x00FF)) || ((((U16*)item)[0]&0x00FF) != (((U16*)item)[2]&0x00FF)) || ((((U16*)item)[0]&0xFF00) != (((U16*)item)[1]&0xFF00)) || ((((U16*)item)[0]&0xFF00) != (((U16*)item)[2]&0xFF00))) << 6;\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v3.cpp:1291:194: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" sym |= (((((U16*)item)[0]&0x00FF) != (((U16*)item)[1]&0x00FF)) || ((((U16*)item)[0]&0x00FF) != (((U16*)item)[2]&0x00FF)) || ((((U16*)item)[0]&0xFF00) != (((U16*)item)[1]&0xFF00)) || ((((U16*)item)[0]&0xFF00) != (((U16*)item)[2]&0xFF00))) << 6;\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v3.cpp:1291:222: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" sym |= (((((U16*)item)[0]&0x00FF) != (((U16*)item)[1]&0x00FF)) || ((((U16*)item)[0]&0x00FF) != (((U16*)item)[2]&0x00FF)) || ((((U16*)item)[0]&0xFF00) != (((U16*)item)[1]&0xFF00)) || ((((U16*)item)[0]&0xFF00) != (((U16*)item)[2]&0xFF00))) << 6;\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v3.cpp:1295:28: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" diff_l = ((int)(((U16*)item)[0]&255)) - (last_item[0]&255);\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v3.cpp:1300:28: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" diff_h = ((int)(((U16*)item)[0]>>8)) - (last_item[0]>>8);\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v3.cpp:1307:28: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" corr = ((int)(((U16*)item)[1]&255)) - U8_CLAMP(diff_l + (last_item[1]&255));\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v3.cpp:1312:34: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" diff_l = (diff_l + (((U16*)item)[1]&255) - (last_item[1]&255)) / 2;\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v3.cpp:1313:28: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" corr = ((int)(((U16*)item)[2]&255)) - U8_CLAMP(diff_l + (last_item[2]&255));\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v3.cpp:1318:28: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" corr = ((int)(((U16*)item)[1]>>8)) - U8_CLAMP(diff_h + (last_item[1]>>8));\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v3.cpp:1323:34: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" diff_h = (diff_h + (((U16*)item)[1]>>8) - (last_item[1]>>8)) / 2;\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v3.cpp:1324:28: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" corr = ((int)(((U16*)item)[2]>>8)) - U8_CLAMP(diff_h + (last_item[2]>>8));\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v3.cpp: In member function ‘virtual BOOL LASwriteItemCompressed_RGBNIR14_v3::write(const U8*, U32&)’:\n",
"/content/LASzip_src/src/laswriteitemcompressed_v3.cpp:1582:47: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" U32 sym = ((last_item[0]&0x00FF) != (((U16*)item)[0]&0x00FF)) << 0;\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v3.cpp:1583:44: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" sym |= ((last_item[0]&0xFF00) != (((U16*)item)[0]&0xFF00)) << 1;\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v3.cpp:1584:44: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" sym |= ((last_item[1]&0x00FF) != (((U16*)item)[1]&0x00FF)) << 2;\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v3.cpp:1585:44: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" sym |= ((last_item[1]&0xFF00) != (((U16*)item)[1]&0xFF00)) << 3;\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v3.cpp:1586:44: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" sym |= ((last_item[2]&0x00FF) != (((U16*)item)[2]&0x00FF)) << 4;\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v3.cpp:1587:44: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" sym |= ((last_item[2]&0xFF00) != (((U16*)item)[2]&0xFF00)) << 5;\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v3.cpp:1588:20: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" sym |= (((((U16*)item)[0]&0x00FF) != (((U16*)item)[1]&0x00FF)) || ((((U16*)item)[0]&0x00FF) != (((U16*)item)[2]&0x00FF)) || ((((U16*)item)[0]&0xFF00) != (((U16*)item)[1]&0xFF00)) || ((((U16*)item)[0]&0xFF00) != (((U16*)item)[2]&0xFF00))) << 6;\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v3.cpp:1588:48: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" sym |= (((((U16*)item)[0]&0x00FF) != (((U16*)item)[1]&0x00FF)) || ((((U16*)item)[0]&0x00FF) != (((U16*)item)[2]&0x00FF)) || ((((U16*)item)[0]&0xFF00) != (((U16*)item)[1]&0xFF00)) || ((((U16*)item)[0]&0xFF00) != (((U16*)item)[2]&0xFF00))) << 6;\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v3.cpp:1588:78: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" sym |= (((((U16*)item)[0]&0x00FF) != (((U16*)item)[1]&0x00FF)) || ((((U16*)item)[0]&0x00FF) != (((U16*)item)[2]&0x00FF)) || ((((U16*)item)[0]&0xFF00) != (((U16*)item)[1]&0xFF00)) || ((((U16*)item)[0]&0xFF00) != (((U16*)item)[2]&0xFF00))) << 6;\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v3.cpp:1588:106: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" sym |= (((((U16*)item)[0]&0x00FF) != (((U16*)item)[1]&0x00FF)) || ((((U16*)item)[0]&0x00FF) != (((U16*)item)[2]&0x00FF)) || ((((U16*)item)[0]&0xFF00) != (((U16*)item)[1]&0xFF00)) || ((((U16*)item)[0]&0xFF00) != (((U16*)item)[2]&0xFF00))) << 6;\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v3.cpp:1588:136: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" sym |= (((((U16*)item)[0]&0x00FF) != (((U16*)item)[1]&0x00FF)) || ((((U16*)item)[0]&0x00FF) != (((U16*)item)[2]&0x00FF)) || ((((U16*)item)[0]&0xFF00) != (((U16*)item)[1]&0xFF00)) || ((((U16*)item)[0]&0xFF00) != (((U16*)item)[2]&0xFF00))) << 6;\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v3.cpp:1588:164: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" sym |= (((((U16*)item)[0]&0x00FF) != (((U16*)item)[1]&0x00FF)) || ((((U16*)item)[0]&0x00FF) != (((U16*)item)[2]&0x00FF)) || ((((U16*)item)[0]&0xFF00) != (((U16*)item)[1]&0xFF00)) || ((((U16*)item)[0]&0xFF00) != (((U16*)item)[2]&0xFF00))) << 6;\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v3.cpp:1588:194: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" sym |= (((((U16*)item)[0]&0x00FF) != (((U16*)item)[1]&0x00FF)) || ((((U16*)item)[0]&0x00FF) != (((U16*)item)[2]&0x00FF)) || ((((U16*)item)[0]&0xFF00) != (((U16*)item)[1]&0xFF00)) || ((((U16*)item)[0]&0xFF00) != (((U16*)item)[2]&0xFF00))) << 6;\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v3.cpp:1588:222: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" sym |= (((((U16*)item)[0]&0x00FF) != (((U16*)item)[1]&0x00FF)) || ((((U16*)item)[0]&0x00FF) != (((U16*)item)[2]&0x00FF)) || ((((U16*)item)[0]&0xFF00) != (((U16*)item)[1]&0xFF00)) || ((((U16*)item)[0]&0xFF00) != (((U16*)item)[2]&0xFF00))) << 6;\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v3.cpp:1592:28: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" diff_l = ((int)(((U16*)item)[0]&255)) - (last_item[0]&255);\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v3.cpp:1597:28: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" diff_h = ((int)(((U16*)item)[0]>>8)) - (last_item[0]>>8);\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v3.cpp:1604:28: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" corr = ((int)(((U16*)item)[1]&255)) - U8_CLAMP(diff_l + (last_item[1]&255));\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v3.cpp:1609:34: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" diff_l = (diff_l + (((U16*)item)[1]&255) - (last_item[1]&255)) / 2;\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v3.cpp:1610:28: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" corr = ((int)(((U16*)item)[2]&255)) - U8_CLAMP(diff_l + (last_item[2]&255));\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v3.cpp:1615:28: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" corr = ((int)(((U16*)item)[1]>>8)) - U8_CLAMP(diff_h + (last_item[1]>>8));\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v3.cpp:1620:34: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" diff_h = (diff_h + (((U16*)item)[1]>>8) - (last_item[1]>>8)) / 2;\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v3.cpp:1621:28: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" corr = ((int)(((U16*)item)[2]>>8)) - U8_CLAMP(diff_h + (last_item[2]>>8));\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v3.cpp:1630:43: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" sym = ((last_item[3]&0x00FF) != (((U16*)item)[3]&0x00FF)) << 0;\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v3.cpp:1631:44: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" sym |= ((last_item[3]&0xFF00) != (((U16*)item)[3]&0xFF00)) << 1;\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v3.cpp:1635:28: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" diff_l = ((int)(((U16*)item)[3]&255)) - (last_item[3]&255);\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemcompressed_v3.cpp:1640:28: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" diff_h = ((int)(((U16*)item)[3]>>8)) - (last_item[3]>>8);\n",
" ^~~~\n",
"In file included from /content/LASzip_src/src/laswritepoint.hpp:44:0,\n",
" from /content/LASzip_src/src/laswritepoint.cpp:32:\n",
"/content/LASzip_src/src/mydefs.hpp: In function ‘BOOL IS_LITTLE_ENDIAN()’:\n",
"/content/LASzip_src/src/mydefs.hpp:174:19: warning: cast from type ‘const U32* {aka const unsigned int*}’ to type ‘U8* {aka unsigned char*}’ casts away qualifiers [-Wcast-qual]\n",
" return (*((U8*)&i) == 1);\r\n",
" ^\n",
"In file included from /content/LASzip_src/src/laswritepoint.cpp:35:0:\n",
"/content/LASzip_src/src/laswriteitemraw.hpp: In member function ‘virtual BOOL LASwriteItemRaw_POINT10_BE::write(const U8*, U32&)’:\n",
"/content/LASzip_src/src/laswriteitemraw.hpp:61:45: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U32* {aka unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" *((U32*)&swapped[14]) = *((U32*)&item[14]); // bitfield, classification, scan_angle_rank, user_data\r\n",
" ^\n",
"/content/LASzip_src/src/laswriteitemraw.hpp: In member function ‘virtual BOOL LASwriteItemRaw_POINT14_LE::write(const U8*, U32&)’:\n",
"/content/LASzip_src/src/laswriteitemraw.hpp:220:64: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LAStempWritePoint10*’ casts away qualifiers [-Wcast-qual]\n",
" ((LAStempWritePoint14*)buffer)->X = ((LAStempWritePoint10*)item)->X;\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemraw.hpp:221:64: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LAStempWritePoint10*’ casts away qualifiers [-Wcast-qual]\n",
" ((LAStempWritePoint14*)buffer)->Y = ((LAStempWritePoint10*)item)->Y;\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemraw.hpp:222:64: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LAStempWritePoint10*’ casts away qualifiers [-Wcast-qual]\n",
" ((LAStempWritePoint14*)buffer)->Z = ((LAStempWritePoint10*)item)->Z;\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemraw.hpp:223:72: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LAStempWritePoint10*’ casts away qualifiers [-Wcast-qual]\n",
" ((LAStempWritePoint14*)buffer)->intensity = ((LAStempWritePoint10*)item)->intensity;\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemraw.hpp:224:82: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LAStempWritePoint10*’ casts away qualifiers [-Wcast-qual]\n",
" ((LAStempWritePoint14*)buffer)->scan_direction_flag = ((LAStempWritePoint10*)item)->scan_direction_flag;\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemraw.hpp:225:82: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LAStempWritePoint10*’ casts away qualifiers [-Wcast-qual]\n",
" ((LAStempWritePoint14*)buffer)->edge_of_flight_line = ((LAStempWritePoint10*)item)->edge_of_flight_line;\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemraw.hpp:226:78: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LAStempWritePoint10*’ casts away qualifiers [-Wcast-qual]\n",
" ((LAStempWritePoint14*)buffer)->classification = (((LAStempWritePoint10*)item)->classification & 31);\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemraw.hpp:227:72: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LAStempWritePoint10*’ casts away qualifiers [-Wcast-qual]\n",
" ((LAStempWritePoint14*)buffer)->user_data = ((LAStempWritePoint10*)item)->user_data;\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemraw.hpp:228:78: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LAStempWritePoint10*’ casts away qualifiers [-Wcast-qual]\n",
" ((LAStempWritePoint14*)buffer)->point_source_ID = ((LAStempWritePoint10*)item)->point_source_ID;\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemraw.hpp:230:32: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LAStempWritePoint10*’ casts away qualifiers [-Wcast-qual]\n",
" if (((LAStempWritePoint10*)item)->extended_point_type)\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemraw.hpp:232:86: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LAStempWritePoint10*’ casts away qualifiers [-Wcast-qual]\n",
" ((LAStempWritePoint14*)buffer)->classification_flags = (((LAStempWritePoint10*)item)->extended_classification_flags & 8) | (((LAStempWritePoint10*)item)->classification >> 5);\r\n",
" ^~~~\n",
"In file included from /content/LASzip_src/src/laswritepoint.cpp:35:0:\n",
"/content/LASzip_src/src/laswriteitemraw.hpp:232:154: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LAStempWritePoint10*’ casts away qualifiers [-Wcast-qual]\n",
" ((LAStempWritePoint14*)buffer)->classification_flags = (((LAStempWritePoint10*)item)->extended_classification_flags & 8) | (((LAStempWritePoint10*)item)->classification >> 5);\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemraw.hpp:233:34: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LAStempWritePoint10*’ casts away qualifiers [-Wcast-qual]\n",
" if (((LAStempWritePoint10*)item)->extended_classification > 31) ((LAStempWritePoint14*)buffer)->classification = ((LAStempWritePoint10*)item)->extended_classification;\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemraw.hpp:233:143: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LAStempWritePoint10*’ casts away qualifiers [-Wcast-qual]\n",
" if (((LAStempWritePoint10*)item)->extended_classification > 31) ((LAStempWritePoint14*)buffer)->classification = ((LAStempWritePoint10*)item)->extended_classification;\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemraw.hpp:234:80: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LAStempWritePoint10*’ casts away qualifiers [-Wcast-qual]\n",
" ((LAStempWritePoint14*)buffer)->scanner_channel = ((LAStempWritePoint10*)item)->extended_scanner_channel;\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemraw.hpp:235:78: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LAStempWritePoint10*’ casts away qualifiers [-Wcast-qual]\n",
" ((LAStempWritePoint14*)buffer)->return_number = ((LAStempWritePoint10*)item)->extended_return_number;\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemraw.hpp:236:82: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LAStempWritePoint10*’ casts away qualifiers [-Wcast-qual]\n",
" ((LAStempWritePoint14*)buffer)->number_of_returns = ((LAStempWritePoint10*)item)->extended_number_of_returns;\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemraw.hpp:237:75: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LAStempWritePoint10*’ casts away qualifiers [-Wcast-qual]\n",
" ((LAStempWritePoint14*)buffer)->scan_angle = ((LAStempWritePoint10*)item)->extended_scan_angle;\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemraw.hpp:241:86: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LAStempWritePoint10*’ casts away qualifiers [-Wcast-qual]\n",
" ((LAStempWritePoint14*)buffer)->classification_flags = (((LAStempWritePoint10*)item)->classification >> 5);\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemraw.hpp:243:78: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LAStempWritePoint10*’ casts away qualifiers [-Wcast-qual]\n",
" ((LAStempWritePoint14*)buffer)->return_number = ((LAStempWritePoint10*)item)->return_number;\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemraw.hpp:244:82: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LAStempWritePoint10*’ casts away qualifiers [-Wcast-qual]\n",
" ((LAStempWritePoint14*)buffer)->number_of_returns = ((LAStempWritePoint10*)item)->number_of_returns;\r\n",
" ^~~~\n",
"In file included from /content/LASzip_src/src/laswritepoint.hpp:44:0,\n",
" from /content/LASzip_src/src/laswritepoint.cpp:32:\n",
"/content/LASzip_src/src/laswriteitemraw.hpp:245:88: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LAStempWritePoint10*’ casts away qualifiers [-Wcast-qual]\n",
" ((LAStempWritePoint14*)buffer)->scan_angle = I16_QUANTIZE(((LAStempWritePoint10*)item)->scan_angle_rank/0.006f);\r\n",
" ^\n",
"/content/LASzip_src/src/mydefs.hpp:129:28: note: in definition of macro ‘I16_QUANTIZE’\n",
" #define I16_QUANTIZE(n) (((n) >= 0) ? (I16)((n)+0.5f) : (I16)((n)-0.5f))\r\n",
" ^\n",
"/content/LASzip_src/src/laswriteitemraw.hpp:245:88: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LAStempWritePoint10*’ casts away qualifiers [-Wcast-qual]\n",
" ((LAStempWritePoint14*)buffer)->scan_angle = I16_QUANTIZE(((LAStempWritePoint10*)item)->scan_angle_rank/0.006f);\r\n",
" ^\n",
"/content/LASzip_src/src/mydefs.hpp:129:46: note: in definition of macro ‘I16_QUANTIZE’\n",
" #define I16_QUANTIZE(n) (((n) >= 0) ? (I16)((n)+0.5f) : (I16)((n)-0.5f))\r\n",
" ^\n",
"/content/LASzip_src/src/laswriteitemraw.hpp:245:88: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LAStempWritePoint10*’ casts away qualifiers [-Wcast-qual]\n",
" ((LAStempWritePoint14*)buffer)->scan_angle = I16_QUANTIZE(((LAStempWritePoint10*)item)->scan_angle_rank/0.006f);\r\n",
" ^\n",
"/content/LASzip_src/src/mydefs.hpp:129:64: note: in definition of macro ‘I16_QUANTIZE’\n",
" #define I16_QUANTIZE(n) (((n) >= 0) ? (I16)((n)+0.5f) : (I16)((n)-0.5f))\r\n",
" ^\n",
"In file included from /content/LASzip_src/src/laswritepoint.cpp:35:0:\n",
"/content/LASzip_src/src/laswriteitemraw.hpp:248:51: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LAStempWritePoint10*’ casts away qualifiers [-Wcast-qual]\n",
" *((F64*)&buffer[22]) = ((LAStempWritePoint10*)item)->gps_time;\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemraw.hpp: In member function ‘virtual BOOL LASwriteItemRaw_POINT14_BE::write(const U8*, U32&)’:\n",
"/content/LASzip_src/src/laswriteitemraw.hpp:265:83: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LAStempWritePoint10*’ casts away qualifiers [-Wcast-qual]\n",
" ((LAStempWritePoint14*)swapped)->scan_direction_flag = ((LAStempWritePoint10*)item)->scan_direction_flag;\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemraw.hpp:266:83: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LAStempWritePoint10*’ casts away qualifiers [-Wcast-qual]\n",
" ((LAStempWritePoint14*)swapped)->edge_of_flight_line = ((LAStempWritePoint10*)item)->edge_of_flight_line;\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemraw.hpp:267:79: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LAStempWritePoint10*’ casts away qualifiers [-Wcast-qual]\n",
" ((LAStempWritePoint14*)swapped)->classification = (((LAStempWritePoint10*)item)->classification & 31);\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemraw.hpp:268:73: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LAStempWritePoint10*’ casts away qualifiers [-Wcast-qual]\n",
" ((LAStempWritePoint14*)swapped)->user_data = ((LAStempWritePoint10*)item)->user_data;\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemraw.hpp:271:32: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LAStempWritePoint10*’ casts away qualifiers [-Wcast-qual]\n",
" if (((LAStempWritePoint10*)item)->extended_point_type)\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemraw.hpp:273:87: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LAStempWritePoint10*’ casts away qualifiers [-Wcast-qual]\n",
" ((LAStempWritePoint14*)swapped)->classification_flags = (((LAStempWritePoint10*)item)->extended_classification_flags & 8) | (((LAStempWritePoint10*)item)->classification >> 5);\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemraw.hpp:273:155: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LAStempWritePoint10*’ casts away qualifiers [-Wcast-qual]\n",
" ((LAStempWritePoint14*)swapped)->classification_flags = (((LAStempWritePoint10*)item)->extended_classification_flags & 8) | (((LAStempWritePoint10*)item)->classification >> 5);\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemraw.hpp:274:34: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LAStempWritePoint10*’ casts away qualifiers [-Wcast-qual]\n",
" if (((LAStempWritePoint10*)item)->extended_classification > 31) ((LAStempWritePoint14*)swapped)->classification = ((LAStempWritePoint10*)item)->extended_classification;\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemraw.hpp:274:144: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LAStempWritePoint10*’ casts away qualifiers [-Wcast-qual]\n",
" if (((LAStempWritePoint10*)item)->extended_classification > 31) ((LAStempWritePoint14*)swapped)->classification = ((LAStempWritePoint10*)item)->extended_classification;\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemraw.hpp:275:81: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LAStempWritePoint10*’ casts away qualifiers [-Wcast-qual]\n",
" ((LAStempWritePoint14*)swapped)->scanner_channel = ((LAStempWritePoint10*)item)->extended_scanner_channel;\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemraw.hpp:276:79: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LAStempWritePoint10*’ casts away qualifiers [-Wcast-qual]\n",
" ((LAStempWritePoint14*)swapped)->return_number = ((LAStempWritePoint10*)item)->extended_return_number;\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemraw.hpp:277:83: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LAStempWritePoint10*’ casts away qualifiers [-Wcast-qual]\n",
" ((LAStempWritePoint14*)swapped)->number_of_returns = ((LAStempWritePoint10*)item)->extended_number_of_returns;\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemraw.hpp:282:87: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LAStempWritePoint10*’ casts away qualifiers [-Wcast-qual]\n",
" ((LAStempWritePoint14*)swapped)->classification_flags = (((LAStempWritePoint10*)item)->classification >> 5);\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemraw.hpp:284:79: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LAStempWritePoint10*’ casts away qualifiers [-Wcast-qual]\n",
" ((LAStempWritePoint14*)swapped)->return_number = ((LAStempWritePoint10*)item)->return_number;\r\n",
" ^~~~\n",
"/content/LASzip_src/src/laswriteitemraw.hpp:285:83: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LAStempWritePoint10*’ casts away qualifiers [-Wcast-qual]\n",
" ((LAStempWritePoint14*)swapped)->number_of_returns = ((LAStempWritePoint10*)item)->number_of_returns;\r\n",
" ^~~~\n",
"In file included from /content/LASzip_src/src/laswritepoint.hpp:44:0,\n",
" from /content/LASzip_src/src/laswritepoint.cpp:32:\n",
"/content/LASzip_src/src/laswriteitemraw.hpp:286:60: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LAStempWritePoint10*’ casts away qualifiers [-Wcast-qual]\n",
" I16 scan_angle = I16_QUANTIZE(((LAStempWritePoint10*)item)->scan_angle_rank/0.006f);\r\n",
" ^\n",
"/content/LASzip_src/src/mydefs.hpp:129:28: note: in definition of macro ‘I16_QUANTIZE’\n",
" #define I16_QUANTIZE(n) (((n) >= 0) ? (I16)((n)+0.5f) : (I16)((n)-0.5f))\r\n",
" ^\n",
"/content/LASzip_src/src/laswriteitemraw.hpp:286:60: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LAStempWritePoint10*’ casts away qualifiers [-Wcast-qual]\n",
" I16 scan_angle = I16_QUANTIZE(((LAStempWritePoint10*)item)->scan_angle_rank/0.006f);\r\n",
" ^\n",
"/content/LASzip_src/src/mydefs.hpp:129:46: note: in definition of macro ‘I16_QUANTIZE’\n",
" #define I16_QUANTIZE(n) (((n) >= 0) ? (I16)((n)+0.5f) : (I16)((n)-0.5f))\r\n",
" ^\n",
"/content/LASzip_src/src/laswriteitemraw.hpp:286:60: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LAStempWritePoint10*’ casts away qualifiers [-Wcast-qual]\n",
" I16 scan_angle = I16_QUANTIZE(((LAStempWritePoint10*)item)->scan_angle_rank/0.006f);\r\n",
" ^\n",
"/content/LASzip_src/src/mydefs.hpp:129:64: note: in definition of macro ‘I16_QUANTIZE’\n",
" #define I16_QUANTIZE(n) (((n) >= 0) ? (I16)((n)+0.5f) : (I16)((n)-0.5f))\r\n",
" ^\n",
"In file included from /content/LASzip_src/src/laswritepoint.cpp:35:0:\n",
"/content/LASzip_src/src/laswriteitemraw.hpp:289:50: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘LAStempWritePoint10*’ casts away qualifiers [-Wcast-qual]\n",
" ENDIAN_SWAP_64((U8*)&(((LAStempWritePoint10*)item)->gps_time), &swapped[22]);\r\n",
" ^~~~\n",
"In file included from /content/LASzip_src/src/laszip.cpp:32:0:\n",
"/content/LASzip_src/src/mydefs.hpp: In function ‘BOOL IS_LITTLE_ENDIAN()’:\n",
"/content/LASzip_src/src/mydefs.hpp:174:19: warning: cast from type ‘const U32* {aka const unsigned int*}’ to type ‘U8* {aka unsigned char*}’ casts away qualifiers [-Wcast-qual]\n",
" return (*((U8*)&i) == 1);\r\n",
" ^\n",
"/content/LASzip_src/src/laszip.cpp: In member function ‘bool LASzip::unpack(const U8*, I32)’:\n",
"/content/LASzip_src/src/laszip.cpp:95:24: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" compressor = *((U16*)b);\r\n",
" ^\n",
"/content/LASzip_src/src/laszip.cpp:97:19: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" coder = *((U16*)b);\r\n",
" ^\n",
"/content/LASzip_src/src/laszip.cpp:99:26: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U8* {aka unsigned char*}’ casts away qualifiers [-Wcast-qual]\n",
" version_major = *((U8*)b);\r\n",
" ^\n",
"/content/LASzip_src/src/laszip.cpp:101:26: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U8* {aka unsigned char*}’ casts away qualifiers [-Wcast-qual]\n",
" version_minor = *((U8*)b);\r\n",
" ^\n",
"/content/LASzip_src/src/laszip.cpp:103:30: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" version_revision = *((U16*)b);\r\n",
" ^\n",
"/content/LASzip_src/src/laszip.cpp:105:21: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U32* {aka unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" options = *((U32*)b);\r\n",
" ^\n",
"/content/LASzip_src/src/laszip.cpp:107:24: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U32* {aka unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" chunk_size = *((U32*)b);\r\n",
" ^\n",
"/content/LASzip_src/src/laszip.cpp:109:37: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘I64* {aka long long int*}’ casts away qualifiers [-Wcast-qual]\n",
" number_of_special_evlrs = *((I64*)b);\r\n",
" ^\n",
"/content/LASzip_src/src/laszip.cpp:111:37: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘I64* {aka long long int*}’ casts away qualifiers [-Wcast-qual]\n",
" offset_to_special_evlrs = *((I64*)b);\r\n",
" ^\n",
"/content/LASzip_src/src/laszip.cpp:113:23: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" num_items = *((U16*)b);\r\n",
" ^\n",
"/content/LASzip_src/src/laszip.cpp:117:44: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" items[i].type = (LASitem::Type)*((U16*)b);\r\n",
" ^\n",
"/content/LASzip_src/src/laszip.cpp:119:29: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" items[i].size = *((U16*)b);\r\n",
" ^\n",
"/content/LASzip_src/src/laszip.cpp:121:32: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘U16* {aka short unsigned int*}’ casts away qualifiers [-Wcast-qual]\n",
" items[i].version = *((U16*)b);\r\n",
" ^\n",
"In file included from /content/LASzip_src/src/lasattributer.hpp:35:0,\n",
" from /content/LASzip_src/src/laszip_dll.cpp:49:\n",
"/content/LASzip_src/src/mydefs.hpp: In function ‘BOOL IS_LITTLE_ENDIAN()’:\n",
"/content/LASzip_src/src/mydefs.hpp:174:19: warning: cast from type ‘const U32* {aka const unsigned int*}’ to type ‘U8* {aka unsigned char*}’ casts away qualifiers [-Wcast-qual]\n",
" return (*((U8*)&i) == 1);\r\n",
" ^\n",
"In file included from /content/LASzip_src/src/laszip_dll.cpp:53:0:\n",
"/content/LASzip_src/src/bytestreamin_array.hpp: In member function ‘virtual void ByteStreamInArray::getBytes(U8*, U32)’:\n",
"/content/LASzip_src/src/bytestreamin_array.hpp:154:41: warning: cast from type ‘const U8* {aka const unsigned char*}’ to type ‘void*’ casts away qualifiers [-Wcast-qual]\n",
" memcpy((void*)bytes, (void*)(data+curr), num_bytes);\n",
" ^\n",
"/content/LASzip_src/src/laszip_dll.cpp: In function ‘laszip_I32 laszip_set_geodouble_params(laszip_POINTER, laszip_U32, const laszip_F64*)’:\n",
"/content/LASzip_src/src/laszip_dll.cpp:1150:87: warning: cast from type ‘const laszip_F64* {aka const double*}’ to type ‘laszip_U8* {aka unsigned char*}’ casts away qualifiers [-Wcast-qual]\n",
" if (laszip_add_vlr(laszip_dll, \"LASF_Projection\", 34736, number*8, 0, (laszip_U8*)geodouble_params))\n",
" ^~~~~~~~~~~~~~~~\n",
"/content/LASzip_src/src/laszip_dll.cpp: In function ‘laszip_I32 laszip_set_geoascii_params(laszip_POINTER, laszip_U32, const laszip_CHAR*)’:\n",
"/content/LASzip_src/src/laszip_dll.cpp:1205:85: warning: cast from type ‘const laszip_CHAR* {aka const char*}’ to type ‘laszip_U8* {aka unsigned char*}’ casts away qualifiers [-Wcast-qual]\n",
" if (laszip_add_vlr(laszip_dll, \"LASF_Projection\", 34737, number, 0, (laszip_U8*)geoascii_params))\n",
" ^~~~~~~~~~~~~~~\n",
"/content/LASzip_src/src/laszip_dll.cpp: In function ‘I32 laszip_prepare_header_for_write(laszip_dll_struct*)’:\n",
"/content/LASzip_src/src/laszip_dll.cpp:1734:216: warning: format ‘%llu’ expects argument of type ‘long long unsigned int’, but argument 4 has type ‘laszip_U64 {aka long unsigned int}’ [-Wformat=]\n",
" sprintf(laszip_dll->error, \"inconsistent number_of_point_records %u and extended_number_of_point_records %llu\", laszip_dll->header.number_of_point_records, laszip_dll->header.extended_number_of_point_records);\n",
" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^\n",
"/content/LASzip_src/src/laszip_dll.cpp:1752:250: warning: format ‘%llu’ expects argument of type ‘long long unsigned int’, but argument 6 has type ‘laszip_U64 {aka long unsigned int}’ [-Wformat=]\n",
" sprintf(laszip_dll->error, \"inconsistent number_of_points_by_return[%u] %u and extended_number_of_points_by_return[%u] %llu\", i, laszip_dll->header.number_of_points_by_return[i], i, laszip_dll->header.extended_number_of_points_by_return[i]);\n",
" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^\n",
"/content/LASzip_src/src/laszip_dll.cpp: In function ‘I32 laszip_prepare_point_for_write(laszip_dll_struct*, laszip_BOOL)’:\n",
"/content/LASzip_src/src/laszip_dll.cpp:1792:185: warning: format ‘%llu’ expects argument of type ‘long long unsigned int’, but argument 3 has type ‘laszip_U64 {aka long unsigned int}’ [-Wformat=]\n",
" sprintf(laszip_dll->error, \"extended_number_of_point_records of %llu is too much for 32-bit counters of compatibility mode\", laszip_dll->header.extended_number_of_point_records);\n",
" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^\n",
"/content/LASzip_src/src/laszip_dll.cpp: In function ‘I32 write_laszip_vlr_payload(laszip_dll_struct*, const LASzip*, ByteStreamOut*)’:\n",
"/content/LASzip_src/src/laszip_dll.cpp:2174:51: warning: cast from type ‘const short unsigned int*’ to type ‘U8* {aka unsigned char*}’ casts away qualifiers [-Wcast-qual]\n",
" try { out->put16bitsLE((U8*)&(laszip->compressor)); } catch(...)\n",
" ^\n",
"/content/LASzip_src/src/laszip_dll.cpp:2179:46: warning: cast from type ‘const short unsigned int*’ to type ‘U8* {aka unsigned char*}’ casts away qualifiers [-Wcast-qual]\n",
" try { out->put16bitsLE((U8*)&(laszip->coder)); } catch(...)\n",
" ^\n",
"/content/LASzip_src/src/laszip_dll.cpp:2184:51: warning: cast from type ‘const unsigned char*’ to type ‘U8* {aka unsigned char*}’ casts away qualifiers [-Wcast-qual]\n",
" try { out->putBytes((U8*)&(laszip->version_major), 1); } catch(...)\n",
" ^\n",
"/content/LASzip_src/src/laszip_dll.cpp:2189:51: warning: cast from type ‘const unsigned char*’ to type ‘U8* {aka unsigned char*}’ casts away qualifiers [-Wcast-qual]\n",
" try { out->putBytes((U8*)&(laszip->version_minor), 1); } catch(...)\n",
" ^\n",
"/content/LASzip_src/src/laszip_dll.cpp:2194:57: warning: cast from type ‘const short unsigned int*’ to type ‘U8* {aka unsigned char*}’ casts away qualifiers [-Wcast-qual]\n",
" try { out->put16bitsLE((U8*)&(laszip->version_revision)); } catch(...)\n",
" ^\n",
"/content/LASzip_src/src/laszip_dll.cpp:2199:48: warning: cast from type ‘const unsigned int*’ to type ‘U8* {aka unsigned char*}’ casts away qualifiers [-Wcast-qual]\n",
" try { out->put32bitsLE((U8*)&(laszip->options)); } catch(...)\n",
" ^\n",
"/content/LASzip_src/src/laszip_dll.cpp:2204:51: warning: cast from type ‘const unsigned int*’ to type ‘U8* {aka unsigned char*}’ casts away qualifiers [-Wcast-qual]\n",
" try { out->put32bitsLE((U8*)&(laszip->chunk_size)); } catch(...)\n",
" ^\n",
"/content/LASzip_src/src/laszip_dll.cpp:2209:64: warning: cast from type ‘const SIGNED_INT64* {aka const long long int*}’ to type ‘U8* {aka unsigned char*}’ casts away qualifiers [-Wcast-qual]\n",
" try { out->put64bitsLE((U8*)&(laszip->number_of_special_evlrs)); } catch(...)\n",
" ^\n",
"/content/LASzip_src/src/laszip_dll.cpp:2214:64: warning: cast from type ‘const SIGNED_INT64* {aka const long long int*}’ to type ‘U8* {aka unsigned char*}’ casts away qualifiers [-Wcast-qual]\n",
" try { out->put64bitsLE((U8*)&(laszip->offset_to_special_evlrs)); } catch(...)\n",
" ^\n",
"/content/LASzip_src/src/laszip_dll.cpp:2219:50: warning: cast from type ‘const short unsigned int*’ to type ‘U8* {aka unsigned char*}’ casts away qualifiers [-Wcast-qual]\n",
" try { out->put16bitsLE((U8*)&(laszip->num_items)); } catch(...)\n",
" ^\n",
"/content/LASzip_src/src/laszip_dll.cpp: In function ‘I32 laszip_write_header(laszip_dll_struct*, const LASzip*, laszip_BOOL)’:\n",
"/content/LASzip_src/src/laszip_dll.cpp:2258:46: warning: cast from type ‘const char*’ to type ‘U8* {aka unsigned char*}’ casts away qualifiers [-Wcast-qual]\n",
" try { laszip_dll->streamout->putBytes((U8*)\"LASF\", 4); } catch(...)\n",
" ^~~~~~\n",
"/content/LASzip_src/src/laszip_dll.cpp:2460:168: warning: format ‘%llu’ expects argument of type ‘long long unsigned int’, but argument 3 has type ‘laszip_U64 {aka long unsigned int}’ [-Wformat=]\n",
" sprintf(laszip_dll->warning, \"header.start_of_waveform_data_packet_record is %llu. writing 0 instead.\", laszip_dll->header.start_of_waveform_data_packet_record);\n",
" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^\n",
"/content/LASzip_src/src/laszip_dll.cpp: In function ‘laszip_I32 laszip_seek_point(laszip_POINTER, laszip_I64)’:\n",
"/content/LASzip_src/src/laszip_dll.cpp:4373:148: warning: format ‘%lld’ expects argument of type ‘long long int’, but argument 4 has type ‘laszip_I64 {aka long int}’ [-Wformat=]\n",
" sprintf(laszip_dll->error, \"seeking from index %lld to index %lld for file with %lld points\", laszip_dll->p_count, index, laszip_dll->npoints);\n",
" ^\n"
],
"name": "stderr"
}
]
},
{
"cell_type": "code",
"metadata": {
"id": "e3EJmIrToOHx",
"colab_type": "code",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 119
},
"outputId": "6c3c7159-1c01-4921-ac6c-d907a378b517"
},
"source": [
"%%bash\n",
"echo \"downloading: ...\" && curl --progress-bar --output /content/LAStools.zip --location https://www.cs.unc.edu/~isenburg/lastools/download/LAStools.zip\n",
"ls -l\n"
],
"execution_count": null,
"outputs": [
{
"output_type": "stream",
"text": [
"downloading: ...\n",
"total 59368\n",
"-rw-r--r-- 1 root root 60783483 Aug 18 19:02 LAStools.zip\n",
"drwxr-xr-x 17 root root 4096 Aug 18 19:02 LASzip_src\n",
"drwxr-xr-x 1 root root 4096 Jul 30 16:30 sample_data\n"
],
"name": "stdout"
},
{
"output_type": "stream",
"text": [
"#=#=# \r\r 0.4%\r#### 6.1%\r################# 25.0%\r############################### 43.9%\r############################################# 62.8%\r########################################################### 82.1%\r######################################################################## 100.0%\n"
],
"name": "stderr"
}
]
},
{
"cell_type": "code",
"metadata": {
"id": "RIT-EM4BtMil",
"colab_type": "code",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 1000
},
"outputId": "cbc34477-11f6-41d0-ffdd-82e7924a6864"
},
"source": [
"%%bash\n",
"cd /content\n",
"unzip LAStools.zip\n",
"cd LAStools\n",
"make\n",
"cp bin/laszip /usr/local/bin\n",
"ln -s /usr/local/bin/laszip /usr/local/bin/laszip-cli"
],
"execution_count": null,
"outputs": [
{
"output_type": "stream",
"text": [
"Archive: LAStools.zip\n",
" inflating: LAStools/.gitignore \n",
" creating: LAStools/ArcGIS_toolbox/\n",
" inflating: LAStools/ArcGIS_toolbox/LAStools Pipelines MB.tbx \n",
" inflating: LAStools/ArcGIS_toolbox/LAStools Pipelines.tbx \n",
" inflating: LAStools/ArcGIS_toolbox/LAStools Production.tbx \n",
" inflating: LAStools/ArcGIS_toolbox/LAStools.tbx \n",
" inflating: LAStools/ArcGIS_toolbox/README.txt \n",
" creating: LAStools/ArcGIS_toolbox/scripts/\n",
" inflating: LAStools/ArcGIS_toolbox/scripts/blast2dem.py \n",
" inflating: LAStools/ArcGIS_toolbox/scripts/blast2iso.py \n",
" inflating: LAStools/ArcGIS_toolbox/scripts/las2dem.py \n",
" inflating: LAStools/ArcGIS_toolbox/scripts/las2iso.py \n",
" inflating: LAStools/ArcGIS_toolbox/scripts/las2las_filter.py \n",
" inflating: LAStools/ArcGIS_toolbox/scripts/las2las_project.py \n",
" inflating: LAStools/ArcGIS_toolbox/scripts/las2las_transform.py \n",
" inflating: LAStools/ArcGIS_toolbox/scripts/las2shp.py \n",
" inflating: LAStools/ArcGIS_toolbox/scripts/las2tin.py \n",
" inflating: LAStools/ArcGIS_toolbox/scripts/las2txt.py \n",
" inflating: LAStools/ArcGIS_toolbox/scripts/lasboundary.py \n",
" inflating: LAStools/ArcGIS_toolbox/scripts/lascanopy.py \n",
" inflating: LAStools/ArcGIS_toolbox/scripts/lasclassify.py \n",
" inflating: LAStools/ArcGIS_toolbox/scripts/lasclip.py \n",
" inflating: LAStools/ArcGIS_toolbox/scripts/lascontrol.py \n",
" inflating: LAStools/ArcGIS_toolbox/scripts/lasdiff.py \n",
" inflating: LAStools/ArcGIS_toolbox/scripts/lasduplicate.py \n",
" inflating: LAStools/ArcGIS_toolbox/scripts/lasgrid.py \n",
" inflating: LAStools/ArcGIS_toolbox/scripts/lasground.py \n",
" inflating: LAStools/ArcGIS_toolbox/scripts/lasheight.py \n",
" inflating: LAStools/ArcGIS_toolbox/scripts/lasheight_classify.py \n",
" inflating: LAStools/ArcGIS_toolbox/scripts/lasindex.py \n",
" inflating: LAStools/ArcGIS_toolbox/scripts/lasinfo.py \n",
" inflating: LAStools/ArcGIS_toolbox/scripts/lasmerge.py \n",
" inflating: LAStools/ArcGIS_toolbox/scripts/lasnoise.py \n",
" inflating: LAStools/ArcGIS_toolbox/scripts/lasoverage.py \n",
" inflating: LAStools/ArcGIS_toolbox/scripts/lasoverlap.py \n",
" inflating: LAStools/ArcGIS_toolbox/scripts/lasprecision.py \n",
" inflating: LAStools/ArcGIS_toolbox/scripts/lassort.py \n",
" inflating: LAStools/ArcGIS_toolbox/scripts/lassplit.py \n",
" inflating: LAStools/ArcGIS_toolbox/scripts/lasthin.py \n",
" inflating: LAStools/ArcGIS_toolbox/scripts/lastile.py \n",
" inflating: LAStools/ArcGIS_toolbox/scripts/lasvalidate.py \n",
" inflating: LAStools/ArcGIS_toolbox/scripts/lasview.py \n",
" inflating: LAStools/ArcGIS_toolbox/scripts/laszip.py \n",
" inflating: LAStools/ArcGIS_toolbox/scripts/shp2las.py \n",
" inflating: LAStools/ArcGIS_toolbox/scripts/txt2las.py \n",
" creating: LAStools/ArcGIS_toolbox/scripts_pipelines/\n",
" inflating: LAStools/ArcGIS_toolbox/scripts_pipelines/flightlines_quality_report.py \n",
" inflating: LAStools/ArcGIS_toolbox/scripts_pipelines/flightlines_to_CHM.py \n",
" inflating: LAStools/ArcGIS_toolbox/scripts_pipelines/flightlines_to_DTM_and_DSM.py \n",
" inflating: LAStools/ArcGIS_toolbox/scripts_pipelines/flightlines_to_single_CHM_pit_free.py \n",
" inflating: LAStools/ArcGIS_toolbox/scripts_pipelines/huge_file_classify.py \n",
" inflating: LAStools/ArcGIS_toolbox/scripts_pipelines/huge_file_ground_classify.py \n",
" inflating: LAStools/ArcGIS_toolbox/scripts_pipelines/huge_file_normalize.py \n",
" inflating: LAStools/ArcGIS_toolbox/scripts_pipelines/huge_file_remove_duplicates.py \n",
" inflating: LAStools/ArcGIS_toolbox/scripts_pipelines/huge_file_sort_GPS_time.py \n",
" inflating: LAStools/ArcGIS_toolbox/scripts_pipelines/huge_file_sort_spatial_coherence.py \n",
" creating: LAStools/ArcGIS_toolbox/scripts_production/\n",
" inflating: LAStools/ArcGIS_toolbox/scripts_production/blast2demPro.py \n",
" inflating: LAStools/ArcGIS_toolbox/scripts_production/blast2isoPro.py \n",
" inflating: LAStools/ArcGIS_toolbox/scripts_production/las2demPro.py \n",
" inflating: LAStools/ArcGIS_toolbox/scripts_production/las2isoPro.py \n",
" inflating: LAStools/ArcGIS_toolbox/scripts_production/las2lasPro_filter.py \n",
" inflating: LAStools/ArcGIS_toolbox/scripts_production/las2lasPro_project.py \n",
" inflating: LAStools/ArcGIS_toolbox/scripts_production/las2lasPro_transform.py \n",
" inflating: LAStools/ArcGIS_toolbox/scripts_production/las2tinPro.py \n",
" inflating: LAStools/ArcGIS_toolbox/scripts_production/las2txtPro.py \n",
" inflating: LAStools/ArcGIS_toolbox/scripts_production/lasboundaryPro.py \n",
" inflating: LAStools/ArcGIS_toolbox/scripts_production/lascanopyPro.py \n",
" inflating: LAStools/ArcGIS_toolbox/scripts_production/lasclassifyPro.py \n",
" inflating: LAStools/ArcGIS_toolbox/scripts_production/lasclipPro.py \n",
" inflating: LAStools/ArcGIS_toolbox/scripts_production/lascontrolPro.py \n",
" inflating: LAStools/ArcGIS_toolbox/scripts_production/lasduplicatePro.py \n",
" inflating: LAStools/ArcGIS_toolbox/scripts_production/lasgridPro.py \n",
" inflating: LAStools/ArcGIS_toolbox/scripts_production/lasgroundPro.py \n",
" inflating: LAStools/ArcGIS_toolbox/scripts_production/lasheightPro.py \n",
" inflating: LAStools/ArcGIS_toolbox/scripts_production/lasheightPro_classify.py \n",
" inflating: LAStools/ArcGIS_toolbox/scripts_production/lasindexPro.py \n",
" inflating: LAStools/ArcGIS_toolbox/scripts_production/lasinfoPro.py \n",
" inflating: LAStools/ArcGIS_toolbox/scripts_production/lasnoisePro.py \n",
" inflating: LAStools/ArcGIS_toolbox/scripts_production/lasoveragePro.py \n",
" inflating: LAStools/ArcGIS_toolbox/scripts_production/lasoverlapPro.py \n",
" inflating: LAStools/ArcGIS_toolbox/scripts_production/lassortPro.py \n",
" inflating: LAStools/ArcGIS_toolbox/scripts_production/lassplitPro.py \n",
" inflating: LAStools/ArcGIS_toolbox/scripts_production/lasthinPro.py \n",
" inflating: LAStools/ArcGIS_toolbox/scripts_production/lastilePro.py \n",
" inflating: LAStools/ArcGIS_toolbox/scripts_production/lasvalidatePro.py \n",
" inflating: LAStools/ArcGIS_toolbox/scripts_production/lasviewPro.py \n",
" inflating: LAStools/ArcGIS_toolbox/scripts_production/laszipPro.py \n",
" inflating: LAStools/ArcGIS_toolbox/scripts_production/txt2lasPro.py \n",
" creating: LAStools/bin/\n",
" inflating: LAStools/bin/7z.exe \n",
" inflating: LAStools/bin/blast2dem.exe \n",
" inflating: LAStools/bin/blast2dem_README.txt \n",
" inflating: LAStools/bin/blast2iso.exe \n",
" inflating: LAStools/bin/blast2iso_README.txt \n",
" inflating: LAStools/bin/bytecopy.exe \n",
" inflating: LAStools/bin/bytediff.exe \n",
" inflating: LAStools/bin/demdiff.exe \n",
" inflating: LAStools/bin/demdiff_README.txt \n",
" inflating: LAStools/bin/demzip.exe \n",
" inflating: LAStools/bin/demzip_README.txt \n",
" inflating: LAStools/bin/e572las.exe \n",
" inflating: LAStools/bin/e572las_README.txt \n",
" inflating: LAStools/bin/gzip.exe \n",
" inflating: LAStools/bin/las2dem.exe \n",
" inflating: LAStools/bin/las2dem_README.txt \n",
" inflating: LAStools/bin/las2dem64.exe \n",
" inflating: LAStools/bin/las2iso.exe \n",
" inflating: LAStools/bin/las2iso_README.txt \n",
" inflating: LAStools/bin/las2iso64.exe \n",
" inflating: LAStools/bin/las2las.exe \n",
" inflating: LAStools/bin/las2las_README.txt \n",
" inflating: LAStools/bin/las2las14_README.txt \n",
" inflating: LAStools/bin/las2las64.exe \n",
" inflating: LAStools/bin/las2shp.exe \n",
" inflating: LAStools/bin/las2shp_README.txt \n",
" inflating: LAStools/bin/las2tin.exe \n",
" inflating: LAStools/bin/las2tin_README.txt \n",
" inflating: LAStools/bin/las2tin64.exe \n",
" inflating: LAStools/bin/las2txt.exe \n",
" inflating: LAStools/bin/las2txt_README.txt \n",
" inflating: LAStools/bin/las2txt64.exe \n",
" inflating: LAStools/bin/lasboundary.exe \n",
" inflating: LAStools/bin/lasboundary_README.txt \n",
" inflating: LAStools/bin/lasboundary64.exe \n",
" inflating: LAStools/bin/lascanopy.exe \n",
" inflating: LAStools/bin/lascanopy_README.txt \n",
" inflating: LAStools/bin/lascanopy64.exe \n",
" inflating: LAStools/bin/lasclassify.exe \n",
" inflating: LAStools/bin/lasclassify_README.txt \n",
" inflating: LAStools/bin/lasclassify64.exe \n",
" inflating: LAStools/bin/lasclip.exe \n",
" inflating: LAStools/bin/lasclip_README.txt \n",
" inflating: LAStools/bin/lasclip64.exe \n",
" inflating: LAStools/bin/lascolor.exe \n",
" inflating: LAStools/bin/lascolor_README.txt \n",
" inflating: LAStools/bin/lascolor64.exe \n",
" inflating: LAStools/bin/lascontrol.exe \n",
" inflating: LAStools/bin/lascontrol_README.txt \n",
" inflating: LAStools/bin/lascontrol64.exe \n",
" inflating: LAStools/bin/lascopy.exe \n",
" inflating: LAStools/bin/lascopy_README.txt \n",
" inflating: LAStools/bin/lascopy64.exe \n",
" inflating: LAStools/bin/lasdiff.exe \n",
" inflating: LAStools/bin/lasdiff_README.txt \n",
" inflating: LAStools/bin/lasdiff64.exe \n",
" inflating: LAStools/bin/lasdistance.exe \n",
" inflating: LAStools/bin/lasdistance_README.txt \n",
" inflating: LAStools/bin/lasdistance64.exe \n",
" inflating: LAStools/bin/lasduplicate.exe \n",
" inflating: LAStools/bin/lasduplicate_README.txt \n",
" inflating: LAStools/bin/lasduplicate64.exe \n",
" inflating: LAStools/bin/lasgrid.exe \n",
" inflating: LAStools/bin/lasgrid_README.txt \n",
" inflating: LAStools/bin/lasgrid64.exe \n",
" inflating: LAStools/bin/lasground.exe \n",
" inflating: LAStools/bin/lasground_new.exe \n",
" inflating: LAStools/bin/lasground_new_README.txt \n",
" inflating: LAStools/bin/lasground_new64.exe \n",
" inflating: LAStools/bin/lasground_README.txt \n",
" inflating: LAStools/bin/lasground64.exe \n",
" inflating: LAStools/bin/lasheight.exe \n",
" inflating: LAStools/bin/lasheight_README.txt \n",
" inflating: LAStools/bin/lasheight64.exe \n",
" inflating: LAStools/bin/lasindex.exe \n",
" inflating: LAStools/bin/lasindex_README.txt \n",
" inflating: LAStools/bin/lasindex64.exe \n",
" inflating: LAStools/bin/lasinfo.exe \n",
" inflating: LAStools/bin/lasinfo_README.txt \n",
" inflating: LAStools/bin/lasinfo64.exe \n",
" inflating: LAStools/bin/laslayers.exe \n",
" inflating: LAStools/bin/laslayers_README.txt \n",
" inflating: LAStools/bin/laslayers64.exe \n",
" creating: LAStools/bin/lasliberate/\n",
" inflating: LAStools/bin/lasliberate/EzLasLib_32.dll \n",
" inflating: LAStools/bin/lasliberate/EzLasLib_README.txt \n",
" inflating: LAStools/bin/lasliberate/lasliberate.exe \n",
" inflating: LAStools/bin/lasliberate/lasliberateGUI.exe \n",
" inflating: LAStools/bin/lasliberate/LASzip.dll \n",
" inflating: LAStools/bin/lasliberate/LICENSE.txt \n",
" inflating: LAStools/bin/lasliberate/README.txt \n",
" inflating: LAStools/bin/lasmerge.exe \n",
" inflating: LAStools/bin/lasmerge_README.txt \n",
" inflating: LAStools/bin/lasmerge64.exe \n",
" inflating: LAStools/bin/lasnoise.exe \n",
" inflating: LAStools/bin/lasnoise_README.txt \n",
" inflating: LAStools/bin/lasnoise64.exe \n",
" inflating: LAStools/bin/lasoptimize.exe \n",
" inflating: LAStools/bin/lasoptimize_README.txt \n",
" inflating: LAStools/bin/lasoptimize64.exe \n",
" inflating: LAStools/bin/lasoverage.exe \n",
" inflating: LAStools/bin/lasoverage_README.txt \n",
" inflating: LAStools/bin/lasoverage64.exe \n",
" inflating: LAStools/bin/lasoverlap.exe \n",
" inflating: LAStools/bin/lasoverlap_README.txt \n",
" inflating: LAStools/bin/lasoverlap64.exe \n",
" inflating: LAStools/bin/lasplanes.exe \n",
" inflating: LAStools/bin/lasplanes_README.txt \n",
" inflating: LAStools/bin/lasprecision.exe \n",
" inflating: LAStools/bin/lasprecision_README.txt \n",
" inflating: LAStools/bin/lasprecision64.exe \n",
" inflating: LAStools/bin/laspublish.exe \n",
" inflating: LAStools/bin/laspublish_README.txt \n",
" inflating: LAStools/bin/lasreturn.exe \n",
" inflating: LAStools/bin/lasreturn_README.txt \n",
" inflating: LAStools/bin/lasreturn64.exe \n",
" inflating: LAStools/bin/lassort.exe \n",
" inflating: LAStools/bin/lassort_README.txt \n",
" inflating: LAStools/bin/lassort64.exe \n",
" inflating: LAStools/bin/lassplit.exe \n",
" inflating: LAStools/bin/lassplit_README.txt \n",
" inflating: LAStools/bin/lassplit64.exe \n",
" inflating: LAStools/bin/lasthin.exe \n",
" inflating: LAStools/bin/lasthin_README.txt \n",
" inflating: LAStools/bin/lasthin64.exe \n",
" inflating: LAStools/bin/lastile.exe \n",
" inflating: LAStools/bin/lastile_README.txt \n",
" inflating: LAStools/bin/lastile64.exe \n",
" inflating: LAStools/bin/lastool.exe \n",
" inflating: LAStools/bin/lastool_README.txt \n",
" inflating: LAStools/bin/lastrack.exe \n",
" inflating: LAStools/bin/lastrack_README.txt \n",
" inflating: LAStools/bin/lastrack64.exe \n",
" inflating: LAStools/bin/lasvalidate.exe \n",
" inflating: LAStools/bin/lasvalidate_README.txt \n",
" inflating: LAStools/bin/lasview.exe \n",
" inflating: LAStools/bin/lasview_README.txt \n",
" inflating: LAStools/bin/lasvoxel.exe \n",
" inflating: LAStools/bin/lasvoxel_README.txt \n",
" inflating: LAStools/bin/lasvoxel64.exe \n",
" inflating: LAStools/bin/laszip.exe \n",
" inflating: LAStools/bin/laszip_README.txt \n",
" inflating: LAStools/bin/laszip64.exe \n",
" creating: LAStools/bin/serf/\n",
" creating: LAStools/bin/serf/blast/\n",
" inflating: LAStools/bin/serf/blast/LICENSE.txt \n",
" inflating: LAStools/bin/serf/blast/sl2sl.exe \n",
" inflating: LAStools/bin/serf/blast/slclean.exe \n",
" inflating: LAStools/bin/serf/blast/slsimp.exe \n",
" inflating: LAStools/bin/serf/blast/smsmooth.exe \n",
" inflating: LAStools/bin/serf/blast/smsonar.exe \n",
" inflating: LAStools/bin/serf/blast/spdelaunay2d.exe \n",
" inflating: LAStools/bin/serf/blast/spfinalize.exe \n",
" inflating: LAStools/bin/serf/blast/tin2dem.exe \n",
" inflating: LAStools/bin/serf/blast/tin2iso.exe \n",
" creating: LAStools/bin/serf/geo/\n",
" inflating: LAStools/bin/serf/geo/gcs.csv \n",
" inflating: LAStools/bin/serf/geo/my_epsg.csv \n",
" inflating: LAStools/bin/serf/geo/pcs.csv \n",
" inflating: LAStools/bin/serf/geo/vertcs.csv \n",
" creating: LAStools/bin/serf/potree16/\n",
" inflating: LAStools/bin/serf/potree16/laszip.dll \n",
" inflating: LAStools/bin/serf/potree16/PotreeConverter.exe \n",
" creating: LAStools/bin/serf/potree16/resources/\n",
" creating: LAStools/bin/serf/potree16/resources/page_template/\n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/lasmap_template.html \n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/\n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/\n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/\n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/approximateTerrainHeights.json \n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/IAU2006_XYS/\n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/IAU2006_XYS/IAU2006_XYS_0.json \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/IAU2006_XYS/IAU2006_XYS_1.json \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/IAU2006_XYS/IAU2006_XYS_10.json \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/IAU2006_XYS/IAU2006_XYS_11.json \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/IAU2006_XYS/IAU2006_XYS_12.json \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/IAU2006_XYS/IAU2006_XYS_13.json \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/IAU2006_XYS/IAU2006_XYS_14.json \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/IAU2006_XYS/IAU2006_XYS_15.json \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/IAU2006_XYS/IAU2006_XYS_16.json \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/IAU2006_XYS/IAU2006_XYS_17.json \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/IAU2006_XYS/IAU2006_XYS_18.json \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/IAU2006_XYS/IAU2006_XYS_19.json \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/IAU2006_XYS/IAU2006_XYS_2.json \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/IAU2006_XYS/IAU2006_XYS_20.json \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/IAU2006_XYS/IAU2006_XYS_21.json \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/IAU2006_XYS/IAU2006_XYS_22.json \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/IAU2006_XYS/IAU2006_XYS_23.json \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/IAU2006_XYS/IAU2006_XYS_24.json \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/IAU2006_XYS/IAU2006_XYS_25.json \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/IAU2006_XYS/IAU2006_XYS_26.json \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/IAU2006_XYS/IAU2006_XYS_27.json \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/IAU2006_XYS/IAU2006_XYS_3.json \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/IAU2006_XYS/IAU2006_XYS_4.json \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/IAU2006_XYS/IAU2006_XYS_5.json \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/IAU2006_XYS/IAU2006_XYS_6.json \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/IAU2006_XYS/IAU2006_XYS_7.json \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/IAU2006_XYS/IAU2006_XYS_8.json \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/IAU2006_XYS/IAU2006_XYS_9.json \n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/\n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/\n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/airfield.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/airport.png \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/alcohol-shop.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/america-football.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/art-gallery.png \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/bakery.png \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/bank.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/bar.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/baseball.png \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/basketball.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/beer.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/bicycle.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/building.png \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/bus.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/cafe.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/camera.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/campsite.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/car.png \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/cemetery.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/cesium.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/chemist.png \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/cinema.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/circle.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/circle-stroked.png \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/city.png \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/clothing-store.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/college.png \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/commercial.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/cricket.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/cross.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/dam.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/danger.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/disability.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/dog-park.png \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/embassy.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/emergency-telephone.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/entrance.png \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/farm.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/fast-food.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/ferry.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/fire-station.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/fuel.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/garden.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/gift.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/golf.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/grocery.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/hairdresser.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/harbor.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/heart.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/heliport.png \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/hospital.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/ice-cream.png \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/industrial.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/land-use.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/laundry.png \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/library.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/lighthouse.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/lodging.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/logging.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/london-underground.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/marker.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/marker-stroked.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/minefield.png \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/mobilephone.png \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/monument.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/museum.png \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/music.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/oil-well.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/park.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/park2.png \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/parking.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/parking-garage.png \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/pharmacy.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/pitch.png \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/place-of-worship.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/playground.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/police.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/polling-place.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/post.png \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/prison.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/rail.png \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/rail-above.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/rail-light.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/rail-metro.png \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/rail-underground.png \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/religious-christian.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/religious-jewish.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/religious-muslim.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/restaurant.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/roadblock.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/rocket.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/school.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/scooter.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/shop.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/skiing.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/slaughterhouse.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/soccer.png \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/square.png \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/square-stroked.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/star.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/star-stroked.png \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/suitcase.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/swimming.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/telephone.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/tennis.png \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/theatre.png \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/toilets.png \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/town.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/town-hall.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/triangle.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/triangle-stroked.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/village.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/warehouse.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/waste-basket.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/water.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/wetland.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/maki/zoo.png \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/moonSmall.jpg \n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/NaturalEarthII/\n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/NaturalEarthII/0/\n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/NaturalEarthII/0/0/\n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/NaturalEarthII/0/0/0.jpg \n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/NaturalEarthII/0/1/\n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/NaturalEarthII/0/1/0.jpg \n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/NaturalEarthII/1/\n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/NaturalEarthII/1/0/\n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/NaturalEarthII/1/0/0.jpg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/NaturalEarthII/1/0/1.jpg \n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/NaturalEarthII/1/1/\n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/NaturalEarthII/1/1/0.jpg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/NaturalEarthII/1/1/1.jpg \n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/NaturalEarthII/1/2/\n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/NaturalEarthII/1/2/0.jpg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/NaturalEarthII/1/2/1.jpg \n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/NaturalEarthII/1/3/\n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/NaturalEarthII/1/3/0.jpg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/NaturalEarthII/1/3/1.jpg \n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/NaturalEarthII/2/\n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/NaturalEarthII/2/0/\n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/NaturalEarthII/2/0/0.jpg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/NaturalEarthII/2/0/1.jpg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/NaturalEarthII/2/0/2.jpg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/NaturalEarthII/2/0/3.jpg \n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/NaturalEarthII/2/1/\n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/NaturalEarthII/2/1/0.jpg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/NaturalEarthII/2/1/1.jpg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/NaturalEarthII/2/1/2.jpg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/NaturalEarthII/2/1/3.jpg \n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/NaturalEarthII/2/2/\n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/NaturalEarthII/2/2/0.jpg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/NaturalEarthII/2/2/1.jpg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/NaturalEarthII/2/2/2.jpg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/NaturalEarthII/2/2/3.jpg \n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/NaturalEarthII/2/3/\n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/NaturalEarthII/2/3/0.jpg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/NaturalEarthII/2/3/1.jpg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/NaturalEarthII/2/3/2.jpg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/NaturalEarthII/2/3/3.jpg \n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/NaturalEarthII/2/4/\n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/NaturalEarthII/2/4/0.jpg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/NaturalEarthII/2/4/1.jpg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/NaturalEarthII/2/4/2.jpg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/NaturalEarthII/2/4/3.jpg \n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/NaturalEarthII/2/5/\n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/NaturalEarthII/2/5/0.jpg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/NaturalEarthII/2/5/1.jpg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/NaturalEarthII/2/5/2.jpg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/NaturalEarthII/2/5/3.jpg \n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/NaturalEarthII/2/6/\n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/NaturalEarthII/2/6/0.jpg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/NaturalEarthII/2/6/1.jpg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/NaturalEarthII/2/6/2.jpg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/NaturalEarthII/2/6/3.jpg \n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/NaturalEarthII/2/7/\n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/NaturalEarthII/2/7/0.jpg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/NaturalEarthII/2/7/1.jpg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/NaturalEarthII/2/7/2.jpg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/NaturalEarthII/2/7/3.jpg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/NaturalEarthII/tilemapresource.xml \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/pin.svg \n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/SkyBox/\n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/SkyBox/tycho2t3_80_mx.jpg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/SkyBox/tycho2t3_80_my.jpg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/SkyBox/tycho2t3_80_mz.jpg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/SkyBox/tycho2t3_80_px.jpg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/SkyBox/tycho2t3_80_py.jpg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/SkyBox/tycho2t3_80_pz.jpg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/waterNormals.jpg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Assets/Textures/waterNormalsSmall.jpg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Cesium.js \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/LICENSE.md \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/README.md \n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/ThirdParty/\n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/ThirdParty/Workers/\n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/ThirdParty/Workers/deflate.js \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/ThirdParty/Workers/inflate.js \n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Widgets/\n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Widgets/Animation/\n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Widgets/Animation/Animation.css \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Widgets/Animation/lighter.css \n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Widgets/BaseLayerPicker/\n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Widgets/BaseLayerPicker/BaseLayerPicker.css \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Widgets/BaseLayerPicker/lighter.css \n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Widgets/Cesium3DTilesInspector/\n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Widgets/Cesium3DTilesInspector/Cesium3DTilesInspector.css \n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Widgets/CesiumInspector/\n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Widgets/CesiumInspector/CesiumInspector.css \n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Widgets/CesiumWidget/\n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Widgets/CesiumWidget/CesiumWidget.css \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Widgets/CesiumWidget/lighter.css \n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Widgets/FullscreenButton/\n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Widgets/FullscreenButton/FullscreenButton.css \n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Widgets/Geocoder/\n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Widgets/Geocoder/Geocoder.css \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Widgets/Geocoder/lighter.css \n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Widgets/Images/\n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Widgets/Images/ImageryProviders/\n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Widgets/Images/ImageryProviders/bingAerial.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Widgets/Images/ImageryProviders/bingAerialLabels.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Widgets/Images/ImageryProviders/bingRoads.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Widgets/Images/ImageryProviders/blackMarble.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Widgets/Images/ImageryProviders/esriNationalGeographic.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Widgets/Images/ImageryProviders/esriWorldImagery.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Widgets/Images/ImageryProviders/esriWorldStreetMap.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Widgets/Images/ImageryProviders/mapboxSatellite.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Widgets/Images/ImageryProviders/mapboxStreets.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Widgets/Images/ImageryProviders/mapboxTerrain.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Widgets/Images/ImageryProviders/mapQuestOpenStreetMap.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Widgets/Images/ImageryProviders/naturalEarthII.png \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Widgets/Images/ImageryProviders/openStreetMap.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Widgets/Images/ImageryProviders/stamenToner.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Widgets/Images/ImageryProviders/stamenWatercolor.png \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Widgets/Images/info-loading.gif \n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Widgets/Images/NavigationHelp/\n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Widgets/Images/NavigationHelp/Mouse.svg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Widgets/Images/NavigationHelp/MouseLeft.svg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Widgets/Images/NavigationHelp/MouseMiddle.svg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Widgets/Images/NavigationHelp/MouseRight.svg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Widgets/Images/NavigationHelp/Touch.svg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Widgets/Images/NavigationHelp/TouchDrag.svg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Widgets/Images/NavigationHelp/TouchRotate.svg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Widgets/Images/NavigationHelp/TouchTilt.svg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Widgets/Images/NavigationHelp/TouchZoom.svg \n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Widgets/Images/TerrainProviders/\n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Widgets/Images/TerrainProviders/Ellipsoid.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Widgets/Images/TerrainProviders/STK.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Widgets/Images/TimelineIcons.png \n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Widgets/InfoBox/\n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Widgets/InfoBox/InfoBox.css \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Widgets/InfoBox/InfoBoxDescription.css \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Widgets/lighter.css \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Widgets/lighterShared.css \n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Widgets/NavigationHelpButton/\n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Widgets/NavigationHelpButton/lighter.css \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Widgets/NavigationHelpButton/NavigationHelpButton.css \n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Widgets/PerformanceWatchdog/\n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Widgets/PerformanceWatchdog/PerformanceWatchdog.css \n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Widgets/ProjectionPicker/\n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Widgets/ProjectionPicker/ProjectionPicker.css \n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Widgets/SceneModePicker/\n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Widgets/SceneModePicker/SceneModePicker.css \n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Widgets/SelectionIndicator/\n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Widgets/SelectionIndicator/SelectionIndicator.css \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Widgets/shared.css \n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Widgets/Timeline/\n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Widgets/Timeline/lighter.css \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Widgets/Timeline/Timeline.css \n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Widgets/Viewer/\n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Widgets/Viewer/Viewer.css \n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Widgets/VRButton/\n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Widgets/VRButton/VRButton.css \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Widgets/widgets.css \n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Workers/\n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Workers/cesiumWorkerBootstrapper.js \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Workers/combineGeometry.js \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Workers/createBoxGeometry.js \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Workers/createBoxOutlineGeometry.js \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Workers/createCircleGeometry.js \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Workers/createCircleOutlineGeometry.js \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Workers/createCorridorGeometry.js \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Workers/createCorridorOutlineGeometry.js \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Workers/createCylinderGeometry.js \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Workers/createCylinderOutlineGeometry.js \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Workers/createEllipseGeometry.js \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Workers/createEllipseOutlineGeometry.js \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Workers/createEllipsoidGeometry.js \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Workers/createEllipsoidOutlineGeometry.js \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Workers/createFrustumGeometry.js \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Workers/createFrustumOutlineGeometry.js \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Workers/createGeometry.js \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Workers/createPolygonGeometry.js \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Workers/createPolygonOutlineGeometry.js \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Workers/createPolylineGeometry.js \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Workers/createPolylineVolumeGeometry.js \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Workers/createPolylineVolumeOutlineGeometry.js \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Workers/createRectangleGeometry.js \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Workers/createRectangleOutlineGeometry.js \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Workers/createSimplePolylineGeometry.js \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Workers/createSphereGeometry.js \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Workers/createSphereOutlineGeometry.js \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Workers/createVerticesFromGoogleEarthEnterpriseBuffer.js \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Workers/createVerticesFromHeightmap.js \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Workers/createVerticesFromQuantizedTerrainMesh.js \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Workers/createWallGeometry.js \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Workers/createWallOutlineGeometry.js \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Workers/decodeGoogleEarthEnterprisePacket.js \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Workers/transcodeCRNToDXT.js \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Workers/transferTypedArrayTest.js \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/Cesium/Workers/upsampleQuantizedTerrainMesh.js \n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/d3/\n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/d3/d3.js \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/d3/d3.min.js \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/d3/LICENSE \n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/i18next/\n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/i18next/i18next.js \n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/jquery/\n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/jquery/jquery-3.1.1.js \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/jquery/jquery-3.1.1.min.js \n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/jquery-ui/\n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/jquery-ui/AUTHORS.txt \n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/jquery-ui/images/\n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/jquery-ui/images/ui-icons_444444_256x240.png \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/jquery-ui/images/ui-icons_555555_256x240.png \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/jquery-ui/images/ui-icons_777620_256x240.png \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/jquery-ui/images/ui-icons_777777_256x240.png \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/jquery-ui/images/ui-icons_cc0000_256x240.png \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/jquery-ui/images/ui-icons_ffffff_256x240.png \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/jquery-ui/index.html \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/jquery-ui/jquery-ui.css \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/jquery-ui/jquery-ui.min.css \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/jquery-ui/jquery-ui.min.js \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/jquery-ui/jquery-ui.structure.css \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/jquery-ui/jquery-ui.structure.min.css \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/jquery-ui/jquery-ui.theme.css \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/jquery-ui/jquery-ui.theme.min.css \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/jquery-ui/LICENSE.txt \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/jquery-ui/package.json \n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/jstree/\n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/jstree/jstree.js \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/jstree/jstree.min.js \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/jstree/LICENSE-MIT \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/jstree/README.md \n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/jstree/themes/\n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/jstree/themes/mixed/\n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/jstree/themes/mixed/32px.png \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/jstree/themes/mixed/40px.png \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/jstree/themes/mixed/style.css \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/jstree/themes/mixed/style.min.css \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/jstree/themes/mixed/throbber.gif \n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/MeshLine/\n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/MeshLine/LICENSE \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/MeshLine/README.md \n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/MeshLine/src/\n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/MeshLine/src/THREE.MeshLine.js \n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/openlayers3/\n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/openlayers3/LICENSE \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/openlayers3/ol.css \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/openlayers3/ol.js \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/openlayers3/ol-deps.js \n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/other/\n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/other/BinaryHeap.js \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/other/dat.gui.min.js \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/other/OBJLoader.js \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/other/OrbitControls.js \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/other/PLYLoader.js \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/other/stats.js \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/other/stats.min.js \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/other/webgl-debug.js \n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/perfect-scrollbar/\n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/perfect-scrollbar/css/\n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/perfect-scrollbar/css/perfect-scrollbar.css \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/perfect-scrollbar/css/perfect-scrollbar.min.css \n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/perfect-scrollbar/js/\n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/perfect-scrollbar/js/perfect-scrollbar.jquery.js \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/perfect-scrollbar/js/perfect-scrollbar.jquery.min.js \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/perfect-scrollbar/js/perfect-scrollbar.js \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/perfect-scrollbar/js/perfect-scrollbar.min.js \n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/plasio/\n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/plasio/js/\n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/plasio/js/laslaz.js \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/plasio/LICENSE \n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/plasio/vendor/\n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/plasio/vendor/bluebird.js \n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/plasio/workers/\n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/plasio/workers/laz-loader-worker.js \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/plasio/workers/laz-perf.js \n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/\n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/LICENSE \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/potree.css \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/potree.js \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/profile.html \n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/\n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/icons/\n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/icons/angle.png \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/icons/annotation.svg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/icons/area.svg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/icons/area_backup.svg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/icons/back.svg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/icons/bottom.svg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/icons/clip_volume.svg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/icons/clip-plane-x.svg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/icons/clip-plane-y.svg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/icons/clip-plane-z.svg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/icons/clip-polygon.svg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/icons/clip-screen.svg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/icons/close.svg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/icons/cloud.svg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/icons/copy.svg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/icons/distance.svg \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/icons/earth_controls.png \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/icons/earth_controls.svg \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/icons/earth_controls_1.png \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/icons/eye.svg \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/icons/eye_2.png \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/icons/eye_2.svg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/icons/eye_crossed.svg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/icons/file_csv_2d.svg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/icons/file_dxf.svg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/icons/file_geojson.svg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/icons/file_las_3d.svg \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/icons/flip_y_z.png \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/icons/flip_y_z.svg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/icons/focus.svg \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/icons/fps_controls.png \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/icons/fps_controls.svg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/icons/front.svg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/icons/goto.svg \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/icons/gradients_grayscale.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/icons/gradients_plasma.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/icons/gradients_rainbow.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/icons/gradients_spectral.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/icons/gradients_yellow_green.png \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/icons/height.svg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/icons/helicopter_controls.svg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/icons/image_preview.php \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/icons/index.html \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/icons/left.svg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/icons/map_icon.png \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/icons/menu_button.svg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/icons/menu_icon.svg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/icons/navigation_cube.svg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/icons/orbit_controls.svg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/icons/orthographic-camera.svg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/icons/perspective-camera.svg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/icons/point.svg \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/icons/profile.png \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/icons/profile.svg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/icons/remove.svg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/icons/reset_tools.svg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/icons/return_number.svg \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/icons/rgb.png \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/icons/rgb.svg \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/icons/rgb_elevation.png \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/icons/right.svg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/icons/rotate.svg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/icons/scale.svg \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/icons/sphere.png \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/icons/sphere.svg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/icons/target.svg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/icons/top.svg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/icons/translate.svg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/icons/triangle.svg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/icons/volume.svg \n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/images/\n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/images/child_indices.svg \n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/lang/\n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/lang/de/\n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/lang/de/translation.json \n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/lang/dev/\n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/lang/dev/ns.common.json \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/lang/dev/ns.special.json \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/lang/dev/translation.json \n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/lang/en/\n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/lang/en/ns.common.json \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/lang/en/ns.special.json \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/lang/en/translation.json \n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/lang/en-US/\n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/lang/en-US/ns.common.json \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/lang/en-US/ns.special.json \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/lang/en-US/translation.json \n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/lang/fr/\n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/lang/fr/translation.json \n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/lang/jp/\n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/lang/jp/translation.json \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/LICENSE \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/logo.png \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/logo.svg \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/logo_small.png \n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/models/\n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/models/stanford_bunny_reduced.mtl \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/models/stanford_bunny_reduced.obj \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/models/stanford_bunny_reduced.ply \n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/shapefiles/\n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/shapefiles/south_sorvilier.dbf \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/shapefiles/south_sorvilier.shp \n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/textures/\n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/textures/brick_pavement.jpg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/textures/LICENSE \n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/textures/navigation/\n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/textures/navigation/B.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/textures/navigation/D.png \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/textures/navigation/F.png \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/textures/navigation/L.png \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/textures/navigation/R.png \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/textures/navigation/U.png \n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/textures/skybox/\n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/textures/skybox/nx.jpg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/textures/skybox/ny.jpg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/textures/skybox/nz.jpg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/textures/skybox/px.jpg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/textures/skybox/py.jpg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/textures/skybox/pz.jpg \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/textures/skybox/skyboxsun25degtest.txt \n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/textures/skybox2/\n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/textures/skybox2/nx.jpg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/textures/skybox2/ny.jpg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/textures/skybox2/nz.jpg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/textures/skybox2/px.jpg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/textures/skybox2/py.jpg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/textures/skybox2/pz.jpg \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/textures/skybox2/README.TXT \n",
" extracting: LAStools/bin/serf/potree16/resources/page_template/libs/potree/resources/textures/skyboxsun25degtest.txt \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/sidebar.html \n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/workers/\n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/workers/BinaryDecoderWorker.js \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/workers/GreyhoundBinaryDecoderWorker.js \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/workers/LASDecoderWorker.js \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/potree/workers/LASLAZWorker.js \n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/proj4/\n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/proj4/LICENSE.md \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/proj4/proj4.js \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/proj4/README.md \n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/shapefile/\n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/shapefile/shapefile.js \n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/spectrum/\n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/spectrum/LICENSE \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/spectrum/README.md \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/spectrum/spectrum.css \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/spectrum/spectrum.js \n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/three.js/\n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/three.js/build/\n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/three.js/build/three.js \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/three.js/build/three.min.js \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/three.js/LICENSE \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/three.js/README.md \n",
" creating: LAStools/bin/serf/potree16/resources/page_template/libs/tween/\n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/tween/LICENSE.txt \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/tween/README.txt \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/tween/Tween.js \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/libs/tween/tween.min.js \n",
" inflating: LAStools/bin/serf/potree16/resources/page_template/viewer_template.html \n",
" inflating: LAStools/bin/shp2las.exe \n",
" inflating: LAStools/bin/shp2las_README.txt \n",
" inflating: LAStools/bin/sonarnoiseblaster.exe \n",
" inflating: LAStools/bin/sonarnoiseblaster_README.txt \n",
" inflating: LAStools/bin/txt2las.exe \n",
" inflating: LAStools/bin/txt2las_README.txt \n",
" inflating: LAStools/bin/txt2las64.exe \n",
" inflating: LAStools/bin/unzip.exe \n",
" inflating: LAStools/CHANGES.txt \n",
" inflating: LAStools/CMakeLists.txt \n",
" inflating: LAStools/COPYING.txt \n",
" creating: LAStools/data/\n",
" inflating: LAStools/data/dallas1.xyzcirn.gz \n",
" inflating: LAStools/data/dallas2.xyzcirn.gz \n",
" inflating: LAStools/data/dallas3.xyzcirn.gz \n",
" inflating: LAStools/data/dallas4.xyzcirn.gz \n",
" inflating: LAStools/data/france.laz \n",
" inflating: LAStools/data/fusa.laz \n",
" inflating: LAStools/data/house.laz \n",
" inflating: LAStools/data/lake.laz \n",
" inflating: LAStools/data/lake_breakline.dbf \n",
" inflating: LAStools/data/lake_breakline.shp \n",
" inflating: LAStools/data/lake_breakline.shx \n",
" inflating: LAStools/data/sample.laz \n",
" inflating: LAStools/data/test.laz \n",
" inflating: LAStools/data/TO_city_hall.dbf \n",
" inflating: LAStools/data/TO_city_hall.shp \n",
" inflating: LAStools/data/TO_city_hall.shx \n",
" inflating: LAStools/data/TO_core_last_zoom.laz \n",
" inflating: LAStools/data/zurich.laz \n",
" creating: LAStools/example_batch_scripts/\n",
" inflating: LAStools/example_batch_scripts/classify_lidar.bat \n",
" inflating: LAStools/example_batch_scripts/create_single_hillshaded_dtm.bat \n",
" inflating: LAStools/example_batch_scripts/create_tiled_hillshaded_dtm.bat \n",
" inflating: LAStools/example_batch_scripts/different_ways_to_create_a_chm.bat \n",
" inflating: LAStools/example_batch_scripts/do_not_use.bat \n",
" inflating: LAStools/example_batch_scripts/generating_a_pit_free_chm.bat \n",
" inflating: LAStools/example_batch_scripts/generating_a_pit_free_chm_beam_width.bat \n",
" inflating: LAStools/example_batch_scripts/generating_a_pit_free_chm_beam_width_piped.bat \n",
" inflating: LAStools/example_batch_scripts/generating_a_pit_free_dsm_beam_width.bat \n",
" inflating: LAStools/example_batch_scripts/huge_las_file_classify_ground.bat \n",
" inflating: LAStools/example_batch_scripts/huge_las_file_copy_classification_attribute.bat \n",
" inflating: LAStools/example_batch_scripts/huge_las_file_delete_duplicates.bat \n",
" inflating: LAStools/example_batch_scripts/huge_las_file_extract_ground_points_only.bat \n",
" inflating: LAStools/example_batch_scripts/huge_las_file_sort_by_gpstime.bat \n",
" inflating: LAStools/example_batch_scripts/huge_las_file_sort_spatial_coherence.bat \n",
" inflating: LAStools/example_batch_scripts/huge_las_file_thin_with_fine_grid.bat \n",
" inflating: LAStools/example_batch_scripts/huge_las_file_thin_with_percentiles.bat \n",
" inflating: LAStools/example_batch_scripts/lidar_to_dtm_dsm_iso_laz_tiles.bat \n",
" inflating: LAStools/example_batch_scripts/photogrammetry_point_processing_example01.bat \n",
" inflating: LAStools/example_batch_scripts/photogrammetry_points_to_dtm_dsm_countours.bat \n",
" inflating: LAStools/example_batch_scripts/pit_free_script.bat \n",
" inflating: LAStools/example_batch_scripts/planar_patches_mls.bat \n",
" inflating: LAStools/example_batch_scripts/planar_patches_tls.bat \n",
" inflating: LAStools/example_batch_scripts/pre_process_mobile_lidar_into_classified_adaptive_tiling.bat \n",
" inflating: LAStools/example_batch_scripts/quality_check_across_blocks.bat \n",
" inflating: LAStools/example_batch_scripts/quality_check_single_block.bat \n",
" inflating: LAStools/example_batch_scripts/tutorial1_quality_check.bat \n",
" inflating: LAStools/example_batch_scripts/tutorial2_lidar_preparation_tile_based_pipeline.bat \n",
" inflating: LAStools/example_batch_scripts/tutorial3_raster_products_tile_based_pipeline.bat \n",
" inflating: LAStools/example_batch_scripts/typical_lidar_preparation_pipeline.bat \n",
" inflating: LAStools/example_batch_scripts/typical_quality_check_pipeline.bat \n",
" inflating: LAStools/example_batch_scripts/typical_raster_products_pipeline.bat \n",
" inflating: LAStools/HALL_OF_SHAME.txt \n",
" creating: LAStools/IMAGINE_toolbox/\n",
" inflating: LAStools/IMAGINE_toolbox/README.txt \n",
" creating: LAStools/LASlib/\n",
" inflating: LAStools/LASlib/.gitignore \n",
" inflating: LAStools/LASlib/CHANGES.txt \n",
" inflating: LAStools/LASlib/CMakeLists.txt \n",
" creating: LAStools/LASlib/example/\n",
" inflating: LAStools/LASlib/example/CMakeLists.txt \n",
" inflating: LAStools/LASlib/example/lasexample.cpp \n",
" inflating: LAStools/LASlib/example/lasexample.dsp \n",
" inflating: LAStools/LASlib/example/lasexample_add_rgb.cpp \n",
" inflating: LAStools/LASlib/example/lasexample_add_rgb.dsp \n",
" inflating: LAStools/LASlib/example/lasexample_simple_classification.cpp \n",
" inflating: LAStools/LASlib/example/lasexample_simple_classification.dsp \n",
" inflating: LAStools/LASlib/example/lasexample_write_only.cpp \n",
" inflating: LAStools/LASlib/example/lasexample_write_only.dsp \n",
" inflating: LAStools/LASlib/example/lasexample_write_only_full_waveform.cpp \n",
" inflating: LAStools/LASlib/example/lasexample_write_only_full_waveform.dsp \n",
" inflating: LAStools/LASlib/example/lasexample_write_only_with_extra_bytes.cpp \n",
" inflating: LAStools/LASlib/example/lasexample_write_only_with_extra_bytes.dsp \n",
" inflating: LAStools/LASlib/example/Makefile \n",
" creating: LAStools/LASlib/inc/\n",
" inflating: LAStools/LASlib/inc/lasdefinitions.hpp \n",
" inflating: LAStools/LASlib/inc/lasfilter.hpp \n",
" inflating: LAStools/LASlib/inc/lasignore.hpp \n",
" inflating: LAStools/LASlib/inc/laskdtree.hpp \n",
" inflating: LAStools/LASlib/inc/lasreader.hpp \n",
" inflating: LAStools/LASlib/inc/lasreader_asc.hpp \n",
" inflating: LAStools/LASlib/inc/lasreader_bil.hpp \n",
" inflating: LAStools/LASlib/inc/lasreader_bin.hpp \n",
" inflating: LAStools/LASlib/inc/lasreader_dtm.hpp \n",
" inflating: LAStools/LASlib/inc/lasreader_las.hpp \n",
" inflating: LAStools/LASlib/inc/lasreader_ply.hpp \n",
" inflating: LAStools/LASlib/inc/lasreader_qfit.hpp \n",
" inflating: LAStools/LASlib/inc/lasreader_shp.hpp \n",
" inflating: LAStools/LASlib/inc/lasreader_txt.hpp \n",
" inflating: LAStools/LASlib/inc/lasreaderbuffered.hpp \n",
" inflating: LAStools/LASlib/inc/lasreadermerged.hpp \n",
" inflating: LAStools/LASlib/inc/lasreaderpipeon.hpp \n",
" inflating: LAStools/LASlib/inc/lasreaderstored.hpp \n",
" inflating: LAStools/LASlib/inc/lastransform.hpp \n",
" inflating: LAStools/LASlib/inc/lasutility.hpp \n",
" inflating: LAStools/LASlib/inc/lasvlr.hpp \n",
" inflating: LAStools/LASlib/inc/lasvlrpayload.hpp \n",
" inflating: LAStools/LASlib/inc/laswaveform13reader.hpp \n",
" inflating: LAStools/LASlib/inc/laswaveform13writer.hpp \n",
" inflating: LAStools/LASlib/inc/laswriter.hpp \n",
" inflating: LAStools/LASlib/inc/laswriter_bin.hpp \n",
" inflating: LAStools/LASlib/inc/laswriter_las.hpp \n",
" inflating: LAStools/LASlib/inc/laswriter_qfit.hpp \n",
" inflating: LAStools/LASlib/inc/laswriter_txt.hpp \n",
" inflating: LAStools/LASlib/inc/laswriter_wrl.hpp \n",
" inflating: LAStools/LASlib/inc/laswritercompatible.hpp \n",
" inflating: LAStools/LASlib/LASlib.dsp \n",
" inflating: LAStools/LASlib/LASlib.dsw \n",
" creating: LAStools/LASlib/lib/\n",
" inflating: LAStools/LASlib/lib/.gitignore \n",
" inflating: LAStools/LASlib/Makefile \n",
" inflating: LAStools/LASlib/README.txt \n",
" creating: LAStools/LASlib/src/\n",
" inflating: LAStools/LASlib/src/CMakeLists.txt \n",
" inflating: LAStools/LASlib/src/fopen_compressed.cpp \n",
" inflating: LAStools/LASlib/src/lasfilter.cpp \n",
" inflating: LAStools/LASlib/src/lasignore.cpp \n",
" inflating: LAStools/LASlib/src/laskdtree.cpp \n",
" inflating: LAStools/LASlib/src/LASlib-config.cmake \n",
" inflating: LAStools/LASlib/src/lasreader.cpp \n",
" inflating: LAStools/LASlib/src/lasreader_asc.cpp \n",
" inflating: LAStools/LASlib/src/lasreader_bil.cpp \n",
" inflating: LAStools/LASlib/src/lasreader_bin.cpp \n",
" inflating: LAStools/LASlib/src/lasreader_dtm.cpp \n",
" inflating: LAStools/LASlib/src/lasreader_las.cpp \n",
" inflating: LAStools/LASlib/src/lasreader_ply.cpp \n",
" inflating: LAStools/LASlib/src/lasreader_qfit.cpp \n",
" inflating: LAStools/LASlib/src/lasreader_shp.cpp \n",
" inflating: LAStools/LASlib/src/lasreader_txt.cpp \n",
" inflating: LAStools/LASlib/src/lasreaderbuffered.cpp \n",
" inflating: LAStools/LASlib/src/lasreadermerged.cpp \n",
" inflating: LAStools/LASlib/src/lasreaderpipeon.cpp \n",
" inflating: LAStools/LASlib/src/lasreaderstored.cpp \n",
" inflating: LAStools/LASlib/src/lastransform.cpp \n",
" inflating: LAStools/LASlib/src/lasutility.cpp \n",
" inflating: LAStools/LASlib/src/lasvlr.cpp \n",
" inflating: LAStools/LASlib/src/laswaveform13reader.cpp \n",
" inflating: LAStools/LASlib/src/laswaveform13writer.cpp \n",
" inflating: LAStools/LASlib/src/laswriter.cpp \n",
" inflating: LAStools/LASlib/src/laswriter_bin.cpp \n",
" inflating: LAStools/LASlib/src/laswriter_las.cpp \n",
" inflating: LAStools/LASlib/src/laswriter_qfit.cpp \n",
" inflating: LAStools/LASlib/src/laswriter_txt.cpp \n",
" inflating: LAStools/LASlib/src/laswriter_wrl.cpp \n",
" inflating: LAStools/LASlib/src/laswritercompatible.cpp \n",
" inflating: LAStools/LASlib/src/Makefile \n",
" inflating: LAStools/lastools.dsw \n",
" creating: LAStools/LASzip/\n",
" inflating: LAStools/LASzip/CHANGES.txt \n",
" creating: LAStools/LASzip/cmake/\n",
" inflating: LAStools/LASzip/cmake/common.cmake \n",
" inflating: LAStools/LASzip/cmake/compiler_options.cmake \n",
" inflating: LAStools/LASzip/cmake/cpack.cmake \n",
" inflating: LAStools/LASzip/cmake/directories.cmake \n",
" inflating: LAStools/LASzip/cmake/libraries.cmake \n",
" inflating: LAStools/LASzip/cmake/macros.cmake \n",
" inflating: LAStools/LASzip/cmake/modules.cmake \n",
" inflating: LAStools/LASzip/cmake/policies.cmake \n",
" inflating: LAStools/LASzip/cmake/unix_compiler_options.cmake \n",
" inflating: LAStools/LASzip/cmake/win32_compiler_options.cmake \n",
" inflating: LAStools/LASzip/CMakeLists.txt \n",
" inflating: LAStools/LASzip/COPYING.txt \n",
" inflating: LAStools/LASzip/DEMzip.dsp \n",
" creating: LAStools/LASzip/dll/\n",
" inflating: LAStools/LASzip/dll/CMakeLists.txt \n",
" inflating: LAStools/LASzip/dll/demzip_api.c \n",
" inflating: LAStools/LASzip/dll/demzip_api.h \n",
" inflating: LAStools/LASzip/dll/LASzip.dll \n",
" inflating: LAStools/LASzip/dll/laszip_api.c \n",
" inflating: LAStools/LASzip/dll/laszip_api.h \n",
" inflating: LAStools/LASzip/dll/LASzip64.dll \n",
" inflating: LAStools/LASzip/dll/laszipdllexample.exe \n",
" creating: LAStools/LASzip/example/\n",
" inflating: LAStools/LASzip/example/5points_14.las \n",
" inflating: LAStools/LASzip/example/laszipdllexample.cpp \n",
" inflating: LAStools/LASzip/example/laszipdllexample.dsp \n",
" inflating: LAStools/LASzip/example/Makefile \n",
" inflating: LAStools/LASzip/LASzip.dsp \n",
" inflating: LAStools/LASzip/LASzip.dsw \n",
" inflating: LAStools/LASzip/laszip_api_version.h.in \n",
" inflating: LAStools/LASzip/LICENSE.txt \n",
" inflating: LAStools/LASzip/Makefile \n",
" inflating: LAStools/LASzip/README.txt \n",
" creating: LAStools/LASzip/src/\n",
" inflating: LAStools/LASzip/src/arithmeticdecoder.cpp \n",
" inflating: LAStools/LASzip/src/arithmeticdecoder.hpp \n",
" inflating: LAStools/LASzip/src/arithmeticencoder.cpp \n",
" inflating: LAStools/LASzip/src/arithmeticencoder.hpp \n",
" inflating: LAStools/LASzip/src/arithmeticmodel.cpp \n",
" inflating: LAStools/LASzip/src/arithmeticmodel.hpp \n",
" inflating: LAStools/LASzip/src/bytestreamin.hpp \n",
" inflating: LAStools/LASzip/src/bytestreamin_array.hpp \n",
" inflating: LAStools/LASzip/src/bytestreamin_file.hpp \n",
" inflating: LAStools/LASzip/src/bytestreamin_istream.hpp \n",
" inflating: LAStools/LASzip/src/bytestreaminout.hpp \n",
" inflating: LAStools/LASzip/src/bytestreaminout_file.hpp \n",
" inflating: LAStools/LASzip/src/bytestreamout.hpp \n",
" inflating: LAStools/LASzip/src/bytestreamout_array.hpp \n",
" inflating: LAStools/LASzip/src/bytestreamout_file.hpp \n",
" inflating: LAStools/LASzip/src/bytestreamout_nil.hpp \n",
" inflating: LAStools/LASzip/src/bytestreamout_ostream.hpp \n",
" inflating: LAStools/LASzip/src/CMakeLists.txt \n",
" inflating: LAStools/LASzip/src/demzip_dll.cpp \n",
" inflating: LAStools/LASzip/src/integercompressor.cpp \n",
" inflating: LAStools/LASzip/src/integercompressor.hpp \n",
" inflating: LAStools/LASzip/src/lasattributer.hpp \n",
" inflating: LAStools/LASzip/src/lasindex.cpp \n",
" inflating: LAStools/LASzip/src/lasindex.hpp \n",
" inflating: LAStools/LASzip/src/lasinterval.cpp \n",
" inflating: LAStools/LASzip/src/lasinterval.hpp \n",
" inflating: LAStools/LASzip/src/laspoint.hpp \n",
" inflating: LAStools/LASzip/src/lasquadtree.cpp \n",
" inflating: LAStools/LASzip/src/lasquadtree.hpp \n",
" inflating: LAStools/LASzip/src/lasquantizer.hpp \n",
" inflating: LAStools/LASzip/src/lasreaditem.hpp \n",
" inflating: LAStools/LASzip/src/lasreaditemcompressed_v1.cpp \n",
" inflating: LAStools/LASzip/src/lasreaditemcompressed_v1.hpp \n",
" inflating: LAStools/LASzip/src/lasreaditemcompressed_v2.cpp \n",
" inflating: LAStools/LASzip/src/lasreaditemcompressed_v2.hpp \n",
" inflating: LAStools/LASzip/src/lasreaditemcompressed_v3.cpp \n",
" inflating: LAStools/LASzip/src/lasreaditemcompressed_v3.hpp \n",
" inflating: LAStools/LASzip/src/lasreaditemcompressed_v4.cpp \n",
" inflating: LAStools/LASzip/src/lasreaditemcompressed_v4.hpp \n",
" inflating: LAStools/LASzip/src/lasreaditemraw.hpp \n",
" inflating: LAStools/LASzip/src/lasreadpoint.cpp \n",
" inflating: LAStools/LASzip/src/lasreadpoint.hpp \n",
" inflating: LAStools/LASzip/src/laswriteitem.hpp \n",
" inflating: LAStools/LASzip/src/laswriteitemcompressed_v1.cpp \n",
" inflating: LAStools/LASzip/src/laswriteitemcompressed_v1.hpp \n",
" inflating: LAStools/LASzip/src/laswriteitemcompressed_v2.cpp \n",
" inflating: LAStools/LASzip/src/laswriteitemcompressed_v2.hpp \n",
" inflating: LAStools/LASzip/src/laswriteitemcompressed_v3.cpp \n",
" inflating: LAStools/LASzip/src/laswriteitemcompressed_v3.hpp \n",
" inflating: LAStools/LASzip/src/laswriteitemcompressed_v4.cpp \n",
" inflating: LAStools/LASzip/src/laswriteitemcompressed_v4.hpp \n",
" inflating: LAStools/LASzip/src/laswriteitemraw.hpp \n",
" inflating: LAStools/LASzip/src/laswritepoint.cpp \n",
" inflating: LAStools/LASzip/src/laswritepoint.hpp \n",
" inflating: LAStools/LASzip/src/laszip.cpp \n",
" inflating: LAStools/LASzip/src/laszip.hpp \n",
" inflating: LAStools/LASzip/src/laszip_common_v1.hpp \n",
" inflating: LAStools/LASzip/src/laszip_common_v2.hpp \n",
" inflating: LAStools/LASzip/src/laszip_common_v3.hpp \n",
" inflating: LAStools/LASzip/src/laszip_decompress_selective_v3.hpp \n",
" inflating: LAStools/LASzip/src/laszip_dll.cpp \n",
" inflating: LAStools/LASzip/src/Makefile \n",
" inflating: LAStools/LASzip/src/mydefs.cpp \n",
" inflating: LAStools/LASzip/src/mydefs.hpp \n",
" creating: LAStools/LASzip/stl/\n",
" inflating: LAStools/LASzip/stl/algo.h \n",
" inflating: LAStools/LASzip/stl/algobase.h \n",
" inflating: LAStools/LASzip/stl/algorithm \n",
" inflating: LAStools/LASzip/stl/alloc.h \n",
" inflating: LAStools/LASzip/stl/bitset \n",
" inflating: LAStools/LASzip/stl/bvector.h \n",
" inflating: LAStools/LASzip/stl/char_traits.h \n",
" inflating: LAStools/LASzip/stl/concept_checks.h \n",
" inflating: LAStools/LASzip/stl/container_concepts.h \n",
" inflating: LAStools/LASzip/stl/defalloc.h \n",
" inflating: LAStools/LASzip/stl/deque \n",
" inflating: LAStools/LASzip/stl/deque.h \n",
" inflating: LAStools/LASzip/stl/function.h \n",
" inflating: LAStools/LASzip/stl/functional \n",
" inflating: LAStools/LASzip/stl/hash_map \n",
" inflating: LAStools/LASzip/stl/hash_map.h \n",
" inflating: LAStools/LASzip/stl/hash_set \n",
" inflating: LAStools/LASzip/stl/hash_set.h \n",
" inflating: LAStools/LASzip/stl/hashtable.h \n",
" inflating: LAStools/LASzip/stl/heap.h \n",
" inflating: LAStools/LASzip/stl/iterator \n",
" inflating: LAStools/LASzip/stl/iterator.h \n",
" inflating: LAStools/LASzip/stl/limits \n",
" inflating: LAStools/LASzip/stl/list \n",
" inflating: LAStools/LASzip/stl/list.h \n",
" inflating: LAStools/LASzip/stl/map \n",
" inflating: LAStools/LASzip/stl/map.h \n",
" inflating: LAStools/LASzip/stl/memory \n",
" inflating: LAStools/LASzip/stl/multimap.h \n",
" inflating: LAStools/LASzip/stl/multiset.h \n",
" inflating: LAStools/LASzip/stl/numeric \n",
" inflating: LAStools/LASzip/stl/pair.h \n",
" inflating: LAStools/LASzip/stl/pthread_alloc \n",
" inflating: LAStools/LASzip/stl/pthread_alloc.h \n",
" inflating: LAStools/LASzip/stl/queue \n",
" inflating: LAStools/LASzip/stl/rope \n",
" inflating: LAStools/LASzip/stl/rope.h \n",
" inflating: LAStools/LASzip/stl/ropeimpl.h \n",
" inflating: LAStools/LASzip/stl/sequence_concepts.h \n",
" inflating: LAStools/LASzip/stl/set \n",
" inflating: LAStools/LASzip/stl/set.h \n",
" inflating: LAStools/LASzip/stl/slist \n",
" inflating: LAStools/LASzip/stl/slist.h \n",
" inflating: LAStools/LASzip/stl/stack \n",
" inflating: LAStools/LASzip/stl/stack.h \n",
" inflating: LAStools/LASzip/stl/stdexcept \n",
" inflating: LAStools/LASzip/stl/stl_algo.h \n",
" inflating: LAStools/LASzip/stl/stl_algobase.h \n",
" inflating: LAStools/LASzip/stl/stl_alloc.h \n",
" inflating: LAStools/LASzip/stl/stl_bvector.h \n",
" inflating: LAStools/LASzip/stl/stl_config.h \n",
" inflating: LAStools/LASzip/stl/stl_construct.h \n",
" inflating: LAStools/LASzip/stl/stl_ctraits_fns.h \n",
" inflating: LAStools/LASzip/stl/stl_deque.h \n",
" inflating: LAStools/LASzip/stl/stl_exception.h \n",
" inflating: LAStools/LASzip/stl/stl_function.h \n",
" inflating: LAStools/LASzip/stl/stl_hash_fun.h \n",
" inflating: LAStools/LASzip/stl/stl_hash_map.h \n",
" inflating: LAStools/LASzip/stl/stl_hash_set.h \n",
" inflating: LAStools/LASzip/stl/stl_hashtable.h \n",
" inflating: LAStools/LASzip/stl/stl_heap.h \n",
" inflating: LAStools/LASzip/stl/stl_iterator.h \n",
" inflating: LAStools/LASzip/stl/stl_iterator_base.h \n",
" inflating: LAStools/LASzip/stl/stl_list.h \n",
" inflating: LAStools/LASzip/stl/stl_map.h \n",
" inflating: LAStools/LASzip/stl/stl_multimap.h \n",
" inflating: LAStools/LASzip/stl/stl_multiset.h \n",
" inflating: LAStools/LASzip/stl/stl_numeric.h \n",
" inflating: LAStools/LASzip/stl/stl_pair.h \n",
" inflating: LAStools/LASzip/stl/stl_queue.h \n",
" inflating: LAStools/LASzip/stl/stl_range_errors.h \n",
" inflating: LAStools/LASzip/stl/stl_raw_storage_iter.h \n",
" inflating: LAStools/LASzip/stl/stl_relops.h \n",
" inflating: LAStools/LASzip/stl/stl_rope.h \n",
" inflating: LAStools/LASzip/stl/stl_set.h \n",
" inflating: LAStools/LASzip/stl/stl_slist.h \n",
" inflating: LAStools/LASzip/stl/stl_stack.h \n",
" inflating: LAStools/LASzip/stl/stl_string_fwd.h \n",
" inflating: LAStools/LASzip/stl/stl_tempbuf.h \n",
" inflating: LAStools/LASzip/stl/stl_threads.h \n",
" inflating: LAStools/LASzip/stl/stl_tree.h \n",
" inflating: LAStools/LASzip/stl/stl_uninitialized.h \n",
" inflating: LAStools/LASzip/stl/stl_vector.h \n",
" inflating: LAStools/LASzip/stl/string \n",
" inflating: LAStools/LASzip/stl/tempbuf.h \n",
" inflating: LAStools/LASzip/stl/tree.h \n",
" inflating: LAStools/LASzip/stl/type_traits.h \n",
" inflating: LAStools/LASzip/stl/utility \n",
" inflating: LAStools/LASzip/stl/valarray \n",
" inflating: LAStools/LASzip/stl/vector \n",
" inflating: LAStools/LASzip/stl/vector.h \n",
" inflating: LAStools/LICENSE.txt \n",
" inflating: LAStools/Makefile \n",
" creating: LAStools/QGIS_toolbox/\n",
" inflating: LAStools/QGIS_toolbox/README.txt \n",
" inflating: LAStools/README.txt \n",
" creating: LAStools/src/\n",
" inflating: LAStools/src/.gitignore \n",
" inflating: LAStools/src/CMakeLists.txt \n",
" inflating: LAStools/src/geoprojectionconverter.cpp \n",
" inflating: LAStools/src/geoprojectionconverter.hpp \n",
" inflating: LAStools/src/las2las.cpp \n",
" inflating: LAStools/src/las2las.dsp \n",
" inflating: LAStools/src/las2txt.cpp \n",
" inflating: LAStools/src/las2txt.dsp \n",
" inflating: LAStools/src/lasdiff.cpp \n",
" inflating: LAStools/src/lasdiff.dsp \n",
" inflating: LAStools/src/lasindex.cpp \n",
" inflating: LAStools/src/lasindex.dsp \n",
" inflating: LAStools/src/lasinfo.cpp \n",
" inflating: LAStools/src/lasinfo.dsp \n",
" inflating: LAStools/src/lasmerge.cpp \n",
" inflating: LAStools/src/lasmerge.dsp \n",
" inflating: LAStools/src/lasprecision.cpp \n",
" inflating: LAStools/src/lasprecision.dsp \n",
" inflating: LAStools/src/laszip.cpp \n",
" inflating: LAStools/src/laszip.dsp \n",
" inflating: LAStools/src/Makefile \n",
" inflating: LAStools/src/txt2las.cpp \n",
" inflating: LAStools/src/txt2las.dsp \n",
"cd LASlib && make\n",
"make[1]: Entering directory '/content/LAStools/LASlib'\n",
"cd src && make\n",
"make[2]: Entering directory '/content/LAStools/LASlib/src'\n",
"g++ -c -O3 -Wall -Wno-deprecated -Wno-strict-aliasing -Wno-write-strings -Wno-unused-result -DNDEBUG -DUNORDERED -DHAVE_UNORDERED_MAP -std=c++11 -I/usr/include/ -I../../LASzip/src -I../inc -I. ../../LASzip/src/laszip.cpp -o ../../LASzip/src/laszip.o\n",
"g++ -c -O3 -Wall -Wno-deprecated -Wno-strict-aliasing -Wno-write-strings -Wno-unused-result -DNDEBUG -DUNORDERED -DHAVE_UNORDERED_MAP -std=c++11 -I/usr/include/ -I../../LASzip/src -I../inc -I. ../../LASzip/src/lasreadpoint.cpp -o ../../LASzip/src/lasreadpoint.o\n",
"g++ -c -O3 -Wall -Wno-deprecated -Wno-strict-aliasing -Wno-write-strings -Wno-unused-result -DNDEBUG -DUNORDERED -DHAVE_UNORDERED_MAP -std=c++11 -I/usr/include/ -I../../LASzip/src -I../inc -I. ../../LASzip/src/lasreaditemcompressed_v1.cpp -o ../../LASzip/src/lasreaditemcompressed_v1.o\n",
"g++ -c -O3 -Wall -Wno-deprecated -Wno-strict-aliasing -Wno-write-strings -Wno-unused-result -DNDEBUG -DUNORDERED -DHAVE_UNORDERED_MAP -std=c++11 -I/usr/include/ -I../../LASzip/src -I../inc -I. ../../LASzip/src/lasreaditemcompressed_v2.cpp -o ../../LASzip/src/lasreaditemcompressed_v2.o\n",
"g++ -c -O3 -Wall -Wno-deprecated -Wno-strict-aliasing -Wno-write-strings -Wno-unused-result -DNDEBUG -DUNORDERED -DHAVE_UNORDERED_MAP -std=c++11 -I/usr/include/ -I../../LASzip/src -I../inc -I. ../../LASzip/src/lasreaditemcompressed_v3.cpp -o ../../LASzip/src/lasreaditemcompressed_v3.o\n",
"g++ -c -O3 -Wall -Wno-deprecated -Wno-strict-aliasing -Wno-write-strings -Wno-unused-result -DNDEBUG -DUNORDERED -DHAVE_UNORDERED_MAP -std=c++11 -I/usr/include/ -I../../LASzip/src -I../inc -I. ../../LASzip/src/lasreaditemcompressed_v4.cpp -o ../../LASzip/src/lasreaditemcompressed_v4.o\n",
"g++ -c -O3 -Wall -Wno-deprecated -Wno-strict-aliasing -Wno-write-strings -Wno-unused-result -DNDEBUG -DUNORDERED -DHAVE_UNORDERED_MAP -std=c++11 -I/usr/include/ -I../../LASzip/src -I../inc -I. ../../LASzip/src/laswritepoint.cpp -o ../../LASzip/src/laswritepoint.o\n",
"g++ -c -O3 -Wall -Wno-deprecated -Wno-strict-aliasing -Wno-write-strings -Wno-unused-result -DNDEBUG -DUNORDERED -DHAVE_UNORDERED_MAP -std=c++11 -I/usr/include/ -I../../LASzip/src -I../inc -I. ../../LASzip/src/laswriteitemcompressed_v1.cpp -o ../../LASzip/src/laswriteitemcompressed_v1.o\n",
"g++ -c -O3 -Wall -Wno-deprecated -Wno-strict-aliasing -Wno-write-strings -Wno-unused-result -DNDEBUG -DUNORDERED -DHAVE_UNORDERED_MAP -std=c++11 -I/usr/include/ -I../../LASzip/src -I../inc -I. ../../LASzip/src/laswriteitemcompressed_v2.cpp -o ../../LASzip/src/laswriteitemcompressed_v2.o\n",
"g++ -c -O3 -Wall -Wno-deprecated -Wno-strict-aliasing -Wno-write-strings -Wno-unused-result -DNDEBUG -DUNORDERED -DHAVE_UNORDERED_MAP -std=c++11 -I/usr/include/ -I../../LASzip/src -I../inc -I. ../../LASzip/src/laswriteitemcompressed_v3.cpp -o ../../LASzip/src/laswriteitemcompressed_v3.o\n",
"g++ -c -O3 -Wall -Wno-deprecated -Wno-strict-aliasing -Wno-write-strings -Wno-unused-result -DNDEBUG -DUNORDERED -DHAVE_UNORDERED_MAP -std=c++11 -I/usr/include/ -I../../LASzip/src -I../inc -I. ../../LASzip/src/laswriteitemcompressed_v4.cpp -o ../../LASzip/src/laswriteitemcompressed_v4.o\n",
"g++ -c -O3 -Wall -Wno-deprecated -Wno-strict-aliasing -Wno-write-strings -Wno-unused-result -DNDEBUG -DUNORDERED -DHAVE_UNORDERED_MAP -std=c++11 -I/usr/include/ -I../../LASzip/src -I../inc -I. ../../LASzip/src/integercompressor.cpp -o ../../LASzip/src/integercompressor.o\n",
"g++ -c -O3 -Wall -Wno-deprecated -Wno-strict-aliasing -Wno-write-strings -Wno-unused-result -DNDEBUG -DUNORDERED -DHAVE_UNORDERED_MAP -std=c++11 -I/usr/include/ -I../../LASzip/src -I../inc -I. ../../LASzip/src/arithmeticdecoder.cpp -o ../../LASzip/src/arithmeticdecoder.o\n",
"g++ -c -O3 -Wall -Wno-deprecated -Wno-strict-aliasing -Wno-write-strings -Wno-unused-result -DNDEBUG -DUNORDERED -DHAVE_UNORDERED_MAP -std=c++11 -I/usr/include/ -I../../LASzip/src -I../inc -I. ../../LASzip/src/arithmeticencoder.cpp -o ../../LASzip/src/arithmeticencoder.o\n",
"g++ -c -O3 -Wall -Wno-deprecated -Wno-strict-aliasing -Wno-write-strings -Wno-unused-result -DNDEBUG -DUNORDERED -DHAVE_UNORDERED_MAP -std=c++11 -I/usr/include/ -I../../LASzip/src -I../inc -I. ../../LASzip/src/arithmeticmodel.cpp -o ../../LASzip/src/arithmeticmodel.o\n",
"g++ -c -O3 -Wall -Wno-deprecated -Wno-strict-aliasing -Wno-write-strings -Wno-unused-result -DNDEBUG -DUNORDERED -DHAVE_UNORDERED_MAP -std=c++11 -I/usr/include/ -I../../LASzip/src -I../inc -I. ../../LASzip/src/lasindex.cpp -o ../../LASzip/src/lasindex.o\n",
"g++ -c -O3 -Wall -Wno-deprecated -Wno-strict-aliasing -Wno-write-strings -Wno-unused-result -DNDEBUG -DUNORDERED -DHAVE_UNORDERED_MAP -std=c++11 -I/usr/include/ -I../../LASzip/src -I../inc -I. ../../LASzip/src/lasquadtree.cpp -o ../../LASzip/src/lasquadtree.o\n",
"g++ -c -O3 -Wall -Wno-deprecated -Wno-strict-aliasing -Wno-write-strings -Wno-unused-result -DNDEBUG -DUNORDERED -DHAVE_UNORDERED_MAP -std=c++11 -I/usr/include/ -I../../LASzip/src -I../inc -I. ../../LASzip/src/lasinterval.cpp -o ../../LASzip/src/lasinterval.o\n",
"g++ -c -O3 -Wall -Wno-deprecated -Wno-strict-aliasing -Wno-write-strings -Wno-unused-result -DNDEBUG -DUNORDERED -DHAVE_UNORDERED_MAP -std=c++11 -I/usr/include/ -I../../LASzip/src -I../inc -I. ../../LASzip/src/mydefs.cpp -o ../../LASzip/src/mydefs.o\n",
"g++ -c -O3 -Wall -Wno-deprecated -Wno-strict-aliasing -Wno-write-strings -Wno-unused-result -DNDEBUG -DUNORDERED -DHAVE_UNORDERED_MAP -std=c++11 -I/usr/include/ -I../../LASzip/src -I../inc -I. lasreader.cpp -o lasreader.o\n",
"g++ -c -O3 -Wall -Wno-deprecated -Wno-strict-aliasing -Wno-write-strings -Wno-unused-result -DNDEBUG -DUNORDERED -DHAVE_UNORDERED_MAP -std=c++11 -I/usr/include/ -I../../LASzip/src -I../inc -I. lasignore.cpp -o lasignore.o\n",
"g++ -c -O3 -Wall -Wno-deprecated -Wno-strict-aliasing -Wno-write-strings -Wno-unused-result -DNDEBUG -DUNORDERED -DHAVE_UNORDERED_MAP -std=c++11 -I/usr/include/ -I../../LASzip/src -I../inc -I. laswriter.cpp -o laswriter.o\n",
"g++ -c -O3 -Wall -Wno-deprecated -Wno-strict-aliasing -Wno-write-strings -Wno-unused-result -DNDEBUG -DUNORDERED -DHAVE_UNORDERED_MAP -std=c++11 -I/usr/include/ -I../../LASzip/src -I../inc -I. lasreader_las.cpp -o lasreader_las.o\n",
"g++ -c -O3 -Wall -Wno-deprecated -Wno-strict-aliasing -Wno-write-strings -Wno-unused-result -DNDEBUG -DUNORDERED -DHAVE_UNORDERED_MAP -std=c++11 -I/usr/include/ -I../../LASzip/src -I../inc -I. lasreader_bin.cpp -o lasreader_bin.o\n",
"g++ -c -O3 -Wall -Wno-deprecated -Wno-strict-aliasing -Wno-write-strings -Wno-unused-result -DNDEBUG -DUNORDERED -DHAVE_UNORDERED_MAP -std=c++11 -I/usr/include/ -I../../LASzip/src -I../inc -I. lasreader_shp.cpp -o lasreader_shp.o\n",
"g++ -c -O3 -Wall -Wno-deprecated -Wno-strict-aliasing -Wno-write-strings -Wno-unused-result -DNDEBUG -DUNORDERED -DHAVE_UNORDERED_MAP -std=c++11 -I/usr/include/ -I../../LASzip/src -I../inc -I. lasreader_asc.cpp -o lasreader_asc.o\n",
"g++ -c -O3 -Wall -Wno-deprecated -Wno-strict-aliasing -Wno-write-strings -Wno-unused-result -DNDEBUG -DUNORDERED -DHAVE_UNORDERED_MAP -std=c++11 -I/usr/include/ -I../../LASzip/src -I../inc -I. lasreader_bil.cpp -o lasreader_bil.o\n",
"g++ -c -O3 -Wall -Wno-deprecated -Wno-strict-aliasing -Wno-write-strings -Wno-unused-result -DNDEBUG -DUNORDERED -DHAVE_UNORDERED_MAP -std=c++11 -I/usr/include/ -I../../LASzip/src -I../inc -I. lasreader_dtm.cpp -o lasreader_dtm.o\n",
"g++ -c -O3 -Wall -Wno-deprecated -Wno-strict-aliasing -Wno-write-strings -Wno-unused-result -DNDEBUG -DUNORDERED -DHAVE_UNORDERED_MAP -std=c++11 -I/usr/include/ -I../../LASzip/src -I../inc -I. lasreader_ply.cpp -o lasreader_ply.o\n",
"g++ -c -O3 -Wall -Wno-deprecated -Wno-strict-aliasing -Wno-write-strings -Wno-unused-result -DNDEBUG -DUNORDERED -DHAVE_UNORDERED_MAP -std=c++11 -I/usr/include/ -I../../LASzip/src -I../inc -I. lasreader_qfit.cpp -o lasreader_qfit.o\n",
"g++ -c -O3 -Wall -Wno-deprecated -Wno-strict-aliasing -Wno-write-strings -Wno-unused-result -DNDEBUG -DUNORDERED -DHAVE_UNORDERED_MAP -std=c++11 -I/usr/include/ -I../../LASzip/src -I../inc -I. lasreader_txt.cpp -o lasreader_txt.o\n",
"g++ -c -O3 -Wall -Wno-deprecated -Wno-strict-aliasing -Wno-write-strings -Wno-unused-result -DNDEBUG -DUNORDERED -DHAVE_UNORDERED_MAP -std=c++11 -I/usr/include/ -I../../LASzip/src -I../inc -I. lasreadermerged.cpp -o lasreadermerged.o\n",
"g++ -c -O3 -Wall -Wno-deprecated -Wno-strict-aliasing -Wno-write-strings -Wno-unused-result -DNDEBUG -DUNORDERED -DHAVE_UNORDERED_MAP -std=c++11 -I/usr/include/ -I../../LASzip/src -I../inc -I. lasreaderbuffered.cpp -o lasreaderbuffered.o\n",
"g++ -c -O3 -Wall -Wno-deprecated -Wno-strict-aliasing -Wno-write-strings -Wno-unused-result -DNDEBUG -DUNORDERED -DHAVE_UNORDERED_MAP -std=c++11 -I/usr/include/ -I../../LASzip/src -I../inc -I. lasreaderstored.cpp -o lasreaderstored.o\n",
"g++ -c -O3 -Wall -Wno-deprecated -Wno-strict-aliasing -Wno-write-strings -Wno-unused-result -DNDEBUG -DUNORDERED -DHAVE_UNORDERED_MAP -std=c++11 -I/usr/include/ -I../../LASzip/src -I../inc -I. lasreaderpipeon.cpp -o lasreaderpipeon.o\n",
"g++ -c -O3 -Wall -Wno-deprecated -Wno-strict-aliasing -Wno-write-strings -Wno-unused-result -DNDEBUG -DUNORDERED -DHAVE_UNORDERED_MAP -std=c++11 -I/usr/include/ -I../../LASzip/src -I../inc -I. laswriter_las.cpp -o laswriter_las.o\n",
"g++ -c -O3 -Wall -Wno-deprecated -Wno-strict-aliasing -Wno-write-strings -Wno-unused-result -DNDEBUG -DUNORDERED -DHAVE_UNORDERED_MAP -std=c++11 -I/usr/include/ -I../../LASzip/src -I../inc -I. laswriter_bin.cpp -o laswriter_bin.o\n",
"g++ -c -O3 -Wall -Wno-deprecated -Wno-strict-aliasing -Wno-write-strings -Wno-unused-result -DNDEBUG -DUNORDERED -DHAVE_UNORDERED_MAP -std=c++11 -I/usr/include/ -I../../LASzip/src -I../inc -I. laswriter_qfit.cpp -o laswriter_qfit.o\n",
"g++ -c -O3 -Wall -Wno-deprecated -Wno-strict-aliasing -Wno-write-strings -Wno-unused-result -DNDEBUG -DUNORDERED -DHAVE_UNORDERED_MAP -std=c++11 -I/usr/include/ -I../../LASzip/src -I../inc -I. laswriter_wrl.cpp -o laswriter_wrl.o\n",
"g++ -c -O3 -Wall -Wno-deprecated -Wno-strict-aliasing -Wno-write-strings -Wno-unused-result -DNDEBUG -DUNORDERED -DHAVE_UNORDERED_MAP -std=c++11 -I/usr/include/ -I../../LASzip/src -I../inc -I. laswriter_txt.cpp -o laswriter_txt.o\n",
"g++ -c -O3 -Wall -Wno-deprecated -Wno-strict-aliasing -Wno-write-strings -Wno-unused-result -DNDEBUG -DUNORDERED -DHAVE_UNORDERED_MAP -std=c++11 -I/usr/include/ -I../../LASzip/src -I../inc -I. laswritercompatible.cpp -o laswritercompatible.o\n",
"g++ -c -O3 -Wall -Wno-deprecated -Wno-strict-aliasing -Wno-write-strings -Wno-unused-result -DNDEBUG -DUNORDERED -DHAVE_UNORDERED_MAP -std=c++11 -I/usr/include/ -I../../LASzip/src -I../inc -I. laswaveform13reader.cpp -o laswaveform13reader.o\n",
"g++ -c -O3 -Wall -Wno-deprecated -Wno-strict-aliasing -Wno-write-strings -Wno-unused-result -DNDEBUG -DUNORDERED -DHAVE_UNORDERED_MAP -std=c++11 -I/usr/include/ -I../../LASzip/src -I../inc -I. laswaveform13writer.cpp -o laswaveform13writer.o\n",
"g++ -c -O3 -Wall -Wno-deprecated -Wno-strict-aliasing -Wno-write-strings -Wno-unused-result -DNDEBUG -DUNORDERED -DHAVE_UNORDERED_MAP -std=c++11 -I/usr/include/ -I../../LASzip/src -I../inc -I. lasutility.cpp -o lasutility.o\n",
"g++ -c -O3 -Wall -Wno-deprecated -Wno-strict-aliasing -Wno-write-strings -Wno-unused-result -DNDEBUG -DUNORDERED -DHAVE_UNORDERED_MAP -std=c++11 -I/usr/include/ -I../../LASzip/src -I../inc -I. lasfilter.cpp -o lasfilter.o\n",
"g++ -c -O3 -Wall -Wno-deprecated -Wno-strict-aliasing -Wno-write-strings -Wno-unused-result -DNDEBUG -DUNORDERED -DHAVE_UNORDERED_MAP -std=c++11 -I/usr/include/ -I../../LASzip/src -I../inc -I. lastransform.cpp -o lastransform.o\n",
"g++ -c -O3 -Wall -Wno-deprecated -Wno-strict-aliasing -Wno-write-strings -Wno-unused-result -DNDEBUG -DUNORDERED -DHAVE_UNORDERED_MAP -std=c++11 -I/usr/include/ -I../../LASzip/src -I../inc -I. laskdtree.cpp -o laskdtree.o\n",
"g++ -c -O3 -Wall -Wno-deprecated -Wno-strict-aliasing -Wno-write-strings -Wno-unused-result -DNDEBUG -DUNORDERED -DHAVE_UNORDERED_MAP -std=c++11 -I/usr/include/ -I../../LASzip/src -I../inc -I. fopen_compressed.cpp -o fopen_compressed.o\n",
"ar rc liblas.a ../../LASzip/src/laszip.o ../../LASzip/src/lasreadpoint.o ../../LASzip/src/lasreaditemcompressed_v1.o ../../LASzip/src/lasreaditemcompressed_v2.o ../../LASzip/src/lasreaditemcompressed_v3.o ../../LASzip/src/lasreaditemcompressed_v4.o ../../LASzip/src/laswritepoint.o ../../LASzip/src/laswriteitemcompressed_v1.o ../../LASzip/src/laswriteitemcompressed_v2.o ../../LASzip/src/laswriteitemcompressed_v3.o ../../LASzip/src/laswriteitemcompressed_v4.o ../../LASzip/src/integercompressor.o ../../LASzip/src/arithmeticdecoder.o ../../LASzip/src/arithmeticencoder.o ../../LASzip/src/arithmeticmodel.o ../../LASzip/src/lasindex.o ../../LASzip/src/lasquadtree.o ../../LASzip/src/lasinterval.o ../../LASzip/src/mydefs.o lasreader.o lasignore.o laswriter.o lasreader_las.o lasreader_bin.o lasreader_shp.o lasreader_asc.o lasreader_bil.o lasreader_dtm.o lasreader_ply.o lasreader_qfit.o lasreader_txt.o lasreadermerged.o lasreaderbuffered.o lasreaderstored.o lasreaderpipeon.o laswriter_las.o laswriter_bin.o laswriter_qfit.o laswriter_wrl.o laswriter_txt.o laswritercompatible.o laswaveform13reader.o laswaveform13writer.o lasutility.o lasfilter.o lastransform.o laskdtree.o fopen_compressed.o\n",
"cp -p liblas.a ../lib\n",
"make[2]: Leaving directory '/content/LAStools/LASlib/src'\n",
"cd example && make\n",
"make[2]: Entering directory '/content/LAStools/LASlib/example'\n",
"g++ -c -O3 -Wall -Wno-strict-aliasing -Wno-unused-result -I/usr/include -I../../LASzip/src -I../inc lasexample.cpp -o lasexample.o\n",
"g++ -O3 -Wall -Wno-strict-aliasing -Wno-unused-result lasexample.o -llas -o lasexample -L../lib -I/usr/include -I../../LASzip/src -I../inc\n",
"g++ -c -O3 -Wall -Wno-strict-aliasing -Wno-unused-result -I/usr/include -I../../LASzip/src -I../inc lasexample_write_only.cpp -o lasexample_write_only.o\n",
"g++ -O3 -Wall -Wno-strict-aliasing -Wno-unused-result lasexample_write_only.o -llas -o lasexample_write_only -L../lib -I/usr/include -I../../LASzip/src -I../inc\n",
"g++ -c -O3 -Wall -Wno-strict-aliasing -Wno-unused-result -I/usr/include -I../../LASzip/src -I../inc lasexample_add_rgb.cpp -o lasexample_add_rgb.o\n",
"g++ -O3 -Wall -Wno-strict-aliasing -Wno-unused-result lasexample_add_rgb.o -llas -o lasexample_add_rgb -L../lib -I/usr/include -I../../LASzip/src -I../inc\n",
"g++ -c -O3 -Wall -Wno-strict-aliasing -Wno-unused-result -I/usr/include -I../../LASzip/src -I../inc lasexample_simple_classification.cpp -o lasexample_simple_classification.o\n",
"g++ -O3 -Wall -Wno-strict-aliasing -Wno-unused-result lasexample_simple_classification.o -llas -o lasexample_simple_classification -L../lib -I/usr/include -I../../LASzip/src -I../inc\n",
"g++ -c -O3 -Wall -Wno-strict-aliasing -Wno-unused-result -I/usr/include -I../../LASzip/src -I../inc lasexample_write_only_full_waveform.cpp -o lasexample_write_only_full_waveform.o\n",
"g++ -O3 -Wall -Wno-strict-aliasing -Wno-unused-result lasexample_write_only_full_waveform.o -llas -o lasexample_write_only_full_waveform -L../lib -I/usr/include -I../../LASzip/src -I../inc\n",
"g++ -c -O3 -Wall -Wno-strict-aliasing -Wno-unused-result -I/usr/include -I../../LASzip/src -I../inc lasexample_write_only_with_extra_bytes.cpp -o lasexample_write_only_with_extra_bytes.o\n",
"g++ -O3 -Wall -Wno-strict-aliasing -Wno-unused-result lasexample_write_only_with_extra_bytes.o -llas -o lasexample_write_only_with_extra_bytes -L../lib -I/usr/include -I../../LASzip/src -I../inc\n",
"make[2]: Leaving directory '/content/LAStools/LASlib/example'\n",
"make[1]: Leaving directory '/content/LAStools/LASlib'\n",
"cd LASzip && make\n",
"make[1]: Entering directory '/content/LAStools/LASzip'\n",
"cd example && make clean\n",
"make[2]: Entering directory '/content/LAStools/LASzip/example'\n",
"rm -rf *.o\n",
"make[2]: Leaving directory '/content/LAStools/LASzip/example'\n",
"cd src && make clean\n",
"make[2]: Entering directory '/content/LAStools/LASzip/src'\n",
"rm -rf *.o\n",
"make[2]: Leaving directory '/content/LAStools/LASzip/src'\n",
"make[1]: Leaving directory '/content/LAStools/LASzip'\n",
"cd src && make\n",
"make[1]: Entering directory '/content/LAStools/src'\n",
"g++ -c -O3 -Wall -Wno-deprecated -Wno-strict-aliasing -Wno-write-strings -Wno-unused-result -DNDEBUG -I../LASzip/src -I../LASlib/inc laszip.cpp -o laszip.o\n",
"g++ -c -O3 -Wall -Wno-deprecated -Wno-strict-aliasing -Wno-write-strings -Wno-unused-result -DNDEBUG -I../LASzip/src -I../LASlib/inc geoprojectionconverter.cpp -o geoprojectionconverter.o\n",
"g++ -O3 -Wall -Wno-deprecated -Wno-strict-aliasing -Wno-write-strings -Wno-unused-result -DNDEBUG laszip.o geoprojectionconverter.o -llas -o laszip -L../LASlib/lib -I../LASzip/src -I../LASlib/inc \n",
"cp laszip ../bin\n",
"g++ -c -O3 -Wall -Wno-deprecated -Wno-strict-aliasing -Wno-write-strings -Wno-unused-result -DNDEBUG -I../LASzip/src -I../LASlib/inc lasinfo.cpp -o lasinfo.o\n",
"g++ -O3 -Wall -Wno-deprecated -Wno-strict-aliasing -Wno-write-strings -Wno-unused-result -DNDEBUG lasinfo.o geoprojectionconverter.o -llas -o lasinfo -L../LASlib/lib -I../LASzip/src -I../LASlib/inc \n",
"cp lasinfo ../bin\n",
"g++ -c -O3 -Wall -Wno-deprecated -Wno-strict-aliasing -Wno-write-strings -Wno-unused-result -DNDEBUG -I../LASzip/src -I../LASlib/inc lasprecision.cpp -o lasprecision.o\n",
"g++ -O3 -Wall -Wno-deprecated -Wno-strict-aliasing -Wno-write-strings -Wno-unused-result -DNDEBUG lasprecision.o geoprojectionconverter.o -llas -o lasprecision -L../LASlib/lib -I../LASzip/src -I../LASlib/inc \n",
"cp lasprecision ../bin\n",
"g++ -c -O3 -Wall -Wno-deprecated -Wno-strict-aliasing -Wno-write-strings -Wno-unused-result -DNDEBUG -I../LASzip/src -I../LASlib/inc las2txt.cpp -o las2txt.o\n",
"g++ -O3 -Wall -Wno-deprecated -Wno-strict-aliasing -Wno-write-strings -Wno-unused-result -DNDEBUG las2txt.o -llas -o las2txt -L../LASlib/lib -I../LASzip/src -I../LASlib/inc \n",
"cp las2txt ../bin\n",
"g++ -c -O3 -Wall -Wno-deprecated -Wno-strict-aliasing -Wno-write-strings -Wno-unused-result -DNDEBUG -I../LASzip/src -I../LASlib/inc txt2las.cpp -o txt2las.o\n",
"g++ -O3 -Wall -Wno-deprecated -Wno-strict-aliasing -Wno-write-strings -Wno-unused-result -DNDEBUG txt2las.o geoprojectionconverter.o -llas -o txt2las -L../LASlib/lib -I../LASzip/src -I../LASlib/inc \n",
"cp txt2las ../bin\n",
"g++ -c -O3 -Wall -Wno-deprecated -Wno-strict-aliasing -Wno-write-strings -Wno-unused-result -DNDEBUG -I../LASzip/src -I../LASlib/inc las2las.cpp -o las2las.o\n",
"g++ -O3 -Wall -Wno-deprecated -Wno-strict-aliasing -Wno-write-strings -Wno-unused-result -DNDEBUG las2las.o geoprojectionconverter.o -llas -o las2las -L../LASlib/lib -I../LASzip/src -I../LASlib/inc \n",
"cp las2las ../bin\n",
"g++ -c -O3 -Wall -Wno-deprecated -Wno-strict-aliasing -Wno-write-strings -Wno-unused-result -DNDEBUG -I../LASzip/src -I../LASlib/inc lasdiff.cpp -o lasdiff.o\n",
"g++ -O3 -Wall -Wno-deprecated -Wno-strict-aliasing -Wno-write-strings -Wno-unused-result -DNDEBUG lasdiff.o -llas -o lasdiff -L../LASlib/lib -I../LASzip/src -I../LASlib/inc \n",
"cp lasdiff ../bin\n",
"g++ -c -O3 -Wall -Wno-deprecated -Wno-strict-aliasing -Wno-write-strings -Wno-unused-result -DNDEBUG -I../LASzip/src -I../LASlib/inc lasmerge.cpp -o lasmerge.o\n",
"g++ -O3 -Wall -Wno-deprecated -Wno-strict-aliasing -Wno-write-strings -Wno-unused-result -DNDEBUG lasmerge.o geoprojectionconverter.o -llas -o lasmerge -L../LASlib/lib -I../LASzip/src -I../LASlib/inc \n",
"cp lasmerge ../bin\n",
"g++ -c -O3 -Wall -Wno-deprecated -Wno-strict-aliasing -Wno-write-strings -Wno-unused-result -DNDEBUG -I../LASzip/src -I../LASlib/inc lasindex.cpp -o lasindex.o\n",
"g++ -O3 -Wall -Wno-deprecated -Wno-strict-aliasing -Wno-write-strings -Wno-unused-result -DNDEBUG lasindex.o -llas -o lasindex -L../LASlib/lib -I../LASzip/src -I../LASlib/inc \n",
"cp lasindex ../bin\n",
"make[1]: Leaving directory '/content/LAStools/src'\n"
],
"name": "stdout"
},
{
"output_type": "stream",
"text": [
"geoprojectionconverter.cpp: In member function ‘bool GeoProjectionConverter::set_projection_from_geo_keys(int, const GeoProjectionGeoKeys*, char*, double*, char*)’:\n",
"geoprojectionconverter.cpp:819:8: warning: variable ‘user_defined_ellipsoid’ set but not used [-Wunused-but-set-variable]\n",
" bool user_defined_ellipsoid = false;\r\n",
" ^~~~~~~~~~~~~~~~~~~~~~\n",
"geoprojectionconverter.cpp:839:7: warning: variable ‘datum_code’ set but not used [-Wunused-but-set-variable]\n",
" int datum_code = -1;\r\n",
" ^~~~~~~~~~\n",
"geoprojectionconverter.cpp: In member function ‘bool GeoProjectionConverter::set_projection_from_ogc_wkt(const char*, char*)’:\n",
"geoprojectionconverter.cpp:2165:17: warning: unused variable ‘geoccs’ [-Wunused-variable]\n",
" const char* geoccs = strstr(ogc_wkt, \"GEOCCS[\");\r\n",
" ^~~~~~\n",
"geoprojectionconverter.cpp: In member function ‘bool GeoProjectionConverter::set_VerticalCSTypeGeoKey(short int, char*)’:\n",
"geoprojectionconverter.cpp:4283:53: warning: format not a string literal and no format arguments [-Wformat-security]\n",
" if (description) sprintf(description, name);\r\n",
" ^\n",
"lasprecision.cpp: In function ‘int main(int, char**)’:\n",
"lasprecision.cpp:205:10: warning: variable ‘full_start_time’ set but not used [-Wunused-but-set-variable]\n",
" double full_start_time = 0;\r\n",
" ^~~~~~~~~~~~~~~\n",
"lasdiff.cpp: In function ‘int main(int, char**)’:\n",
"lasdiff.cpp:897:8: warning: variable ‘verbose’ set but not used [-Wunused-but-set-variable]\n",
" bool verbose = false;\r\n",
" ^~~~~~~\n"
],
"name": "stderr"
}
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "u8ORaQGbxUMw",
"colab_type": "text"
},
"source": [
"### Downloading laz tiles from NB"
]
},
{
"cell_type": "code",
"metadata": {
"id": "4ki8rZfgapCw",
"colab_type": "code",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 68
},
"outputId": "13844b22-1783-4159-e096-c69dbcc0c50e"
},
"source": [
"%cd /content\n",
"!mkdir data\n",
"file= 'nb_2018_2464000_7436000'\n",
"url_laz= 'https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/laz/%s.laz' % file\n",
"file= 'nb_2015_2480000_7436000'\n",
"url_laz= 'https://geonb.snb.ca/downloads2/lidar/2015/erd/laz/%s.laz' % file\n",
"!echo \"downloading: $file ...\" && curl --progress-bar --output /content/data/{file}.laz --location {url_laz}\n"
],
"execution_count": null,
"outputs": [
{
"output_type": "stream",
"text": [
"/content\n",
"downloading: nb_2015_2480000_7436000 ...\n",
"######################################################################## 100.0%\n"
],
"name": "stdout"
}
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "3ZbeJqUd7bSq",
"colab_type": "text"
},
"source": [
"### Extracting Metadata from the .laz:\n",
"We extract some metadata using lasinfo."
]
},
{
"cell_type": "code",
"metadata": {
"id": "x5JmH-GBwmtR",
"colab_type": "code",
"colab": {}
},
"source": [
"!cp /content/LAStools/bin/lasinfo /usr/local/bin\n",
"!cd /content\n",
"!lasinfo -i /content/data/{file}.laz -compute_density -otxt -o {file}.txt\n",
"#!laszip -i /content/data/{file}.laz -o /content/data/{file}.las"
],
"execution_count": null,
"outputs": []
},
{
"cell_type": "markdown",
"metadata": {
"id": "4Q4ZEC76TKru",
"colab_type": "text"
},
"source": [
"Extraction of the information as a dictionnary"
]
},
{
"cell_type": "code",
"metadata": {
"colab_type": "code",
"id": "Q7g01mR0tJkD",
"colab": {}
},
"source": [
"import re\n",
"import numpy as np \n",
"def extract_metadata_from_las_file(file):\n",
" nwarning = 1\n",
" fname = '/content/%s.txt' % file\n",
"\n",
" print(fname)\n",
" data= dict()\n",
" class_names= []\n",
" class_labels= []\n",
" class_count= []\n",
" line_top=''\n",
" with open(fname) as fp:\n",
" for cnt, line in enumerate(fp):\n",
" #print(\"Line {}: {}\".format(cnt, line))\n",
" s2= line.strip().split(':')\n",
" if len(s2) > 1 and len(s2[1]) > 0:\n",
" \n",
" if s2[0].startswith('WARNING'):\n",
" data['WARNING{0:d}'.format(nwarning)]= s2[1].strip()\n",
" nwarning += 1\n",
" else:\n",
" data[s2[0].strip()]= s2[1].strip()\n",
" elif len(s2) > 1 and len(s2[1]) == 0:\n",
" line_top= line\n",
" if s2[0].startswith('histogram'):\n",
" data['histogram of classification of points']= []\n",
" elif s2[0].startswith('reporting minimum and maximum'):\n",
" data['Minimum and maximum values']= []\n",
" elif len(s2) == 1:\n",
" if line_top.startswith('reporting minimum and maximum'):\n",
" s3= line.strip().split()\n",
" \n",
" if len(s3) == 3:\n",
" print(line)\n",
" if s3[1].find('.') != -1:\n",
" data['Minimum and maximum values'].append({'name':s3[0],'min':float(s3[1]),'max':float(s3[2])})\n",
" else:\n",
" data['Minimum and maximum values'].append({'name':s3[0],'min':int(s3[1]),'max':int(s3[2])})\n",
" elif line_top.startswith('histogram'):\n",
" idx= re.search('(\\d+)\\s*(\\w+\\s*\\w*)\\s*(\\(\\d\\))',line)\n",
" if idx is not None:\n",
" data['histogram of classification of points'].append({\n",
" 'name': idx.group(2).strip(),\n",
" 'label': int(idx.group(3).replace('(','').replace(')','')),\n",
" 'count': int(idx.group(1))\n",
" })\n",
" class_names.append(idx.group(2).strip()),\n",
" class_labels.append(int(idx.group(3).replace('(','').replace(')',''))),\n",
" class_count.append(int(idx.group(1)))\n",
" elif s2[0].startswith('reporting minimum and maximum'):\n",
" line_top= line\n",
" data['Minimum and maximum values']= []\n",
" else:\n",
" print('not processed',line,s2[0])\n",
" \n",
" #print(idx.groups())\n",
" else:\n",
" print(\"Line {}: {}\".format(cnt, line))\n",
" # Conversion of some fields to numeric type ... \n",
" class_frequency= np.array(class_count) / np.array(class_count).sum()*100\n",
" keys_num_int= ['header size', 'offset to point data',\\\n",
" 'number var. length records', 'point data format', 'point data record length', 'number of point records', \\\n",
" 'number of points by return', 'number of first returns', 'number of intermediate returns', \\\n",
" 'number of last returns', 'number of single returns', 'overview over number of returns of given pulse']\n",
" keys_num_float= ['header size', 'offset to point data',\\\n",
" 'scale factor x y z', 'offset x y z', 'min x y z', 'max x y z']\n",
" for k in data:\n",
" #idx= re.search('(?:\\s|\\n|^)((?:(?:\\d+)*[^\\s]*)*|[^\\s\\n]*|(?:\\n|$))',data[k])\n",
" if isinstance(data[k],str):\n",
" #print(k,data[k])\n",
" \n",
" if k in keys_num_float: \n",
" idx= data[k].split(' ')\n",
" #print(k,idx)\n",
" if len(idx) == 1:\n",
" data[k] = float(idx[0])\n",
" print(k,idx)\n",
" elif len(idx) > 1:\n",
" data[k]= list(map(float, idx))\n",
" elif k in keys_num_int: \n",
" idx= data[k].split(' ')\n",
" #print(k,idx)\n",
" if len(idx) == 1:\n",
" data[k] = int(idx[0])\n",
" print(k,idx)\n",
" elif len(idx) > 1:\n",
" data[k]= list(map(int, idx)) \n",
" return {'lasinfo':data, 'class_frequency':class_frequency, 'class_names':class_names, 'class_labels':class_labels, 'class_count':class_count}"
],
"execution_count": null,
"outputs": []
},
{
"cell_type": "code",
"metadata": {
"id": "yWuBz7vrLTBC",
"colab_type": "code",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 1000
},
"outputId": "a9663251-36ef-40e0-bb2f-de12dcfe83c4"
},
"source": [
"metadata= extract_metadata_from_las_file(file)\n",
"print(json.dumps(metadata['lasinfo'], indent=4))"
],
"execution_count": null,
"outputs": [
{
"output_type": "stream",
"text": [
"/content/nb_2015_2480000_7436000.txt\n",
"not processed lasinfo (200101) report for '/content/data/nb_2015_2480000_7436000.laz'\n",
" lasinfo (200101) report for '/content/data/nb_2015_2480000_7436000.laz'\n",
" X 248000000 248099999\n",
"\n",
" Y 743600000 743699999\n",
"\n",
" Z 1758 23946\n",
"\n",
" intensity 0 49003\n",
"\n",
" return_number 1 7\n",
"\n",
" number_of_returns 1 7\n",
"\n",
" edge_of_flight_line 0 1\n",
"\n",
" scan_direction_flag 0 0\n",
"\n",
" classification 2 8\n",
"\n",
" scan_angle_rank -34 36\n",
"\n",
" user_data 0 0\n",
"\n",
" point_source_ID 16 52\n",
"\n",
" gps_time 123276572.589918 125327266.127279\n",
"\n",
"header size ['227']\n",
"offset to point data ['227']\n",
"number var. length records ['0']\n",
"point data format ['1']\n",
"point data record length ['28']\n",
"number of point records ['17924782']\n",
"number of first returns ['9596534']\n",
"number of intermediate returns ['3758885']\n",
"number of last returns ['9594332']\n",
"number of single returns ['5024969']\n",
"{\n",
" \"file signature\": \"'LASF'\",\n",
" \"file source ID\": \"0\",\n",
" \"global_encoding\": \"1\",\n",
" \"project ID GUID data 1-4\": \"00000000-0000-0000-0000-000000000000\",\n",
" \"version major.minor\": \"1.2\",\n",
" \"system identifier\": \"''\",\n",
" \"generating software\": \"'LASzip DLL 2.4 r0 (150731)'\",\n",
" \"file creation day/year\": \"11/2020\",\n",
" \"header size\": 227.0,\n",
" \"offset to point data\": 227.0,\n",
" \"number var. length records\": 0,\n",
" \"point data format\": 1,\n",
" \"point data record length\": 28,\n",
" \"number of point records\": 17924782,\n",
" \"number of points by return\": [\n",
" 9596534,\n",
" 4570242,\n",
" 2475718,\n",
" 963955,\n",
" 261676\n",
" ],\n",
" \"scale factor x y z\": [\n",
" 0.01,\n",
" 0.01,\n",
" 0.01\n",
" ],\n",
" \"offset x y z\": [\n",
" -0.0,\n",
" -0.0,\n",
" -0.0\n",
" ],\n",
" \"min x y z\": [\n",
" 2480000.0,\n",
" 7436000.0,\n",
" 17.58\n",
" ],\n",
" \"max x y z\": [\n",
" 2480999.99,\n",
" 7436999.99,\n",
" 239.46\n",
" ],\n",
" \"LASzip compression (version 2.4r0 c2 50000)\": \"POINT10 2 GPSTIME11 2\",\n",
" \"Minimum and maximum values\": [\n",
" {\n",
" \"name\": \"X\",\n",
" \"min\": 248000000,\n",
" \"max\": 248099999\n",
" },\n",
" {\n",
" \"name\": \"Y\",\n",
" \"min\": 743600000,\n",
" \"max\": 743699999\n",
" },\n",
" {\n",
" \"name\": \"Z\",\n",
" \"min\": 1758,\n",
" \"max\": 23946\n",
" },\n",
" {\n",
" \"name\": \"intensity\",\n",
" \"min\": 0,\n",
" \"max\": 49003\n",
" },\n",
" {\n",
" \"name\": \"return_number\",\n",
" \"min\": 1,\n",
" \"max\": 7\n",
" },\n",
" {\n",
" \"name\": \"number_of_returns\",\n",
" \"min\": 1,\n",
" \"max\": 7\n",
" },\n",
" {\n",
" \"name\": \"edge_of_flight_line\",\n",
" \"min\": 0,\n",
" \"max\": 1\n",
" },\n",
" {\n",
" \"name\": \"scan_direction_flag\",\n",
" \"min\": 0,\n",
" \"max\": 0\n",
" },\n",
" {\n",
" \"name\": \"classification\",\n",
" \"min\": 2,\n",
" \"max\": 8\n",
" },\n",
" {\n",
" \"name\": \"scan_angle_rank\",\n",
" \"min\": -34,\n",
" \"max\": 36\n",
" },\n",
" {\n",
" \"name\": \"user_data\",\n",
" \"min\": 0,\n",
" \"max\": 0\n",
" },\n",
" {\n",
" \"name\": \"point_source_ID\",\n",
" \"min\": 16,\n",
" \"max\": 52\n",
" },\n",
" {\n",
" \"name\": \"gps_time\",\n",
" \"min\": 123276572.589918,\n",
" \"max\": 125327266.127279\n",
" }\n",
" ],\n",
" \"number of first returns\": 9596534,\n",
" \"number of intermediate returns\": 3758885,\n",
" \"number of last returns\": 9594332,\n",
" \"number of single returns\": 5024969,\n",
" \"covered area in square units/kilounits\": \"999824/1.00\",\n",
" \"point density\": \"all returns 17.93 last only 9.60 (per square units)\",\n",
" \"spacing\": \"all returns 0.24 last only 0.32 (in units)\",\n",
" \"WARNING1\": \"there are 49406 points with return number 6\",\n",
" \"WARNING2\": \"there are 7251 points with return number 7\",\n",
" \"overview over number of returns of given pulse\": [\n",
" 5024969,\n",
" 4187662,\n",
" 4535642,\n",
" 2810571,\n",
" 1062064,\n",
" 257021,\n",
" 46853\n",
" ],\n",
" \"histogram of classification of points\": [\n",
" {\n",
" \"name\": \"ground\",\n",
" \"label\": 2,\n",
" \"count\": 1414757\n",
" },\n",
" {\n",
" \"name\": \"low vegetation\",\n",
" \"label\": 3,\n",
" \"count\": 3924353\n",
" },\n",
" {\n",
" \"name\": \"medium vegetation\",\n",
" \"label\": 4,\n",
" \"count\": 462422\n",
" },\n",
" {\n",
" \"name\": \"high vegetation\",\n",
" \"label\": 5,\n",
" \"count\": 11840664\n",
" },\n",
" {\n",
" \"name\": \"building\",\n",
" \"label\": 6,\n",
" \"count\": 272081\n",
" },\n",
" {\n",
" \"name\": \"noise\",\n",
" \"label\": 7,\n",
" \"count\": 128\n",
" },\n",
" {\n",
" \"name\": \"keypoint\",\n",
" \"label\": 8,\n",
" \"count\": 10377\n",
" }\n",
" ]\n",
"}\n"
],
"name": "stdout"
}
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "vJbeqs9-anJ8",
"colab_type": "text"
},
"source": [
"Downloading a lot of tiles ..."
]
},
{
"cell_type": "code",
"metadata": {
"id": "0g2mDKHSX1-E",
"colab_type": "code",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 1000
},
"outputId": "3a3b4ef4-49fc-4614-f9c3-ba33f696c75a"
},
"source": [
"for y in range(7434000,7439000,1000):\n",
" for x in range(2463000,2467000,1000):\n",
" file = f'nb_2018_{x}_{y}'\n",
" url_laz= 'https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/laz/%s.laz' % file\n",
" print(url_laz)\n",
" !echo \"downloading: $file ...\" && curl --progress-bar --output /content/data/{file}.laz --location {url_laz}"
],
"execution_count": null,
"outputs": [
{
"output_type": "stream",
"text": [
"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/laz/nb_2018_2463000_7434000.laz\n",
"downloading: nb_2018_2463000_7434000 ...\n",
"######################################################################## 100.0%\n",
"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/laz/nb_2018_2464000_7434000.laz\n",
"downloading: nb_2018_2464000_7434000 ...\n",
"######################################################################## 100.0%\n",
"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/laz/nb_2018_2465000_7434000.laz\n",
"downloading: nb_2018_2465000_7434000 ...\n",
"######################################################################## 100.0%\n",
"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/laz/nb_2018_2466000_7434000.laz\n",
"downloading: nb_2018_2466000_7434000 ...\n",
"######################################################################## 100.0%\n",
"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/laz/nb_2018_2463000_7435000.laz\n",
"downloading: nb_2018_2463000_7435000 ...\n",
"######################################################################## 100.0%\n",
"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/laz/nb_2018_2464000_7435000.laz\n",
"downloading: nb_2018_2464000_7435000 ...\n",
"######################################################################## 100.0%\n",
"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/laz/nb_2018_2465000_7435000.laz\n",
"downloading: nb_2018_2465000_7435000 ...\n",
"######################################################################## 100.0%\n",
"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/laz/nb_2018_2466000_7435000.laz\n",
"downloading: nb_2018_2466000_7435000 ...\n",
"######################################################################## 100.0%\n",
"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/laz/nb_2018_2463000_7436000.laz\n",
"downloading: nb_2018_2463000_7436000 ...\n",
"######################################################################## 100.0%\n",
"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/laz/nb_2018_2464000_7436000.laz\n",
"downloading: nb_2018_2464000_7436000 ...\n",
"######################################################################## 100.0%\n",
"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/laz/nb_2018_2465000_7436000.laz\n",
"downloading: nb_2018_2465000_7436000 ...\n",
"######################################################################## 100.0%\n",
"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/laz/nb_2018_2466000_7436000.laz\n",
"downloading: nb_2018_2466000_7436000 ...\n",
"######################################################################## 100.0%\n",
"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/laz/nb_2018_2463000_7437000.laz\n",
"downloading: nb_2018_2463000_7437000 ...\n",
"######################################################################## 100.0%\n",
"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/laz/nb_2018_2464000_7437000.laz\n",
"downloading: nb_2018_2464000_7437000 ...\n",
"######################################################################## 100.0%\n",
"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/laz/nb_2018_2465000_7437000.laz\n",
"downloading: nb_2018_2465000_7437000 ...\n",
"######################################################################## 100.0%\n",
"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/laz/nb_2018_2466000_7437000.laz\n",
"downloading: nb_2018_2466000_7437000 ...\n",
"######################################################################## 100.0%\n",
"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/laz/nb_2018_2463000_7438000.laz\n",
"downloading: nb_2018_2463000_7438000 ...\n",
"######################################################################## 100.0%\n",
"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/laz/nb_2018_2464000_7438000.laz\n",
"downloading: nb_2018_2464000_7438000 ...\n",
"######################################################################## 100.0%\n",
"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/laz/nb_2018_2465000_7438000.laz\n",
"downloading: nb_2018_2465000_7438000 ...\n",
"######################################################################## 100.0%\n",
"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/laz/nb_2018_2466000_7438000.laz\n",
"downloading: nb_2018_2466000_7438000 ...\n",
"######################################################################## 100.0%\n"
],
"name": "stdout"
}
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "9ajQttBuid5D",
"colab_type": "text"
},
"source": [
"### Extracting the metadata from GeoNB website\n",
"We download the data description xml common for all the tiles"
]
},
{
"cell_type": "code",
"metadata": {
"id": "hsSdgHLhg33d",
"colab_type": "code",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 1000
},
"outputId": "7d15b25e-6349-4395-c59d-6a979472b6e3"
},
"source": [
"import xmltodict\n",
"url_metadata= 'https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/meta/meta_2018_aoi1.xml'\n",
"!echo \"downloading: metadata ...\" && curl --progress-bar --output /content/data/metadata.xml --location {url_metadata}\n",
"#my_dict = xmltodict.parse(my_xml)\n",
"with open('/content/data/metadata.xml') as fd:\n",
" doc = xmltodict.parse(fd.read())\n",
"\n",
"links= [\n",
" {\n",
" \"title\": \"LAZ Source Data\",\n",
" \"rel\": \"data\", \n",
" \"href\": url_laz,\n",
" }, \n",
" {\n",
" \"title\": \"LAZ Metadata\",\n",
" \"rel\": \"meta\", \n",
" \"href\": url_metadata \n",
" }\n",
"]\n",
"\n",
"with open('metadata_%s.json' % file, 'w') as outfile:\n",
" json.dump({'lasinfo': metadata['lasinfo'], 'meta_2018_aoi1': doc, 'links': links}, outfile)\n",
"\n",
"print(json.dumps({'lasinfo': metadata['lasinfo'], 'meta_2018_aoi1': doc, 'links': links}, indent=4))\n"
],
"execution_count": null,
"outputs": [
{
"output_type": "stream",
"text": [
"downloading: metadata ...\n",
"#=#=# \r\r##### 7.6%\r######################################################################## 100.0%\n",
"{\n",
" \"lasinfo\": {\n",
" \"file signature\": \"'LASF'\",\n",
" \"file source ID\": \"0\",\n",
" \"global_encoding\": \"1\",\n",
" \"project ID GUID data 1-4\": \"00000000-0000-0000-0000-000000000000\",\n",
" \"version major.minor\": \"1.2\",\n",
" \"system identifier\": \"''\",\n",
" \"generating software\": \"'LASzip DLL 2.4 r0 (150731)'\",\n",
" \"file creation day/year\": \"11/2020\",\n",
" \"header size\": 227.0,\n",
" \"offset to point data\": 227.0,\n",
" \"number var. length records\": 0,\n",
" \"point data format\": 1,\n",
" \"point data record length\": 28,\n",
" \"number of point records\": 17924782,\n",
" \"number of points by return\": [\n",
" 9596534,\n",
" 4570242,\n",
" 2475718,\n",
" 963955,\n",
" 261676\n",
" ],\n",
" \"scale factor x y z\": [\n",
" 0.01,\n",
" 0.01,\n",
" 0.01\n",
" ],\n",
" \"offset x y z\": [\n",
" -0.0,\n",
" -0.0,\n",
" -0.0\n",
" ],\n",
" \"min x y z\": [\n",
" 2480000.0,\n",
" 7436000.0,\n",
" 17.58\n",
" ],\n",
" \"max x y z\": [\n",
" 2480999.99,\n",
" 7436999.99,\n",
" 239.46\n",
" ],\n",
" \"LASzip compression (version 2.4r0 c2 50000)\": \"POINT10 2 GPSTIME11 2\",\n",
" \"Minimum and maximum values\": [\n",
" {\n",
" \"name\": \"X\",\n",
" \"min\": 248000000,\n",
" \"max\": 248099999\n",
" },\n",
" {\n",
" \"name\": \"Y\",\n",
" \"min\": 743600000,\n",
" \"max\": 743699999\n",
" },\n",
" {\n",
" \"name\": \"Z\",\n",
" \"min\": 1758,\n",
" \"max\": 23946\n",
" },\n",
" {\n",
" \"name\": \"intensity\",\n",
" \"min\": 0,\n",
" \"max\": 49003\n",
" },\n",
" {\n",
" \"name\": \"return_number\",\n",
" \"min\": 1,\n",
" \"max\": 7\n",
" },\n",
" {\n",
" \"name\": \"number_of_returns\",\n",
" \"min\": 1,\n",
" \"max\": 7\n",
" },\n",
" {\n",
" \"name\": \"edge_of_flight_line\",\n",
" \"min\": 0,\n",
" \"max\": 1\n",
" },\n",
" {\n",
" \"name\": \"scan_direction_flag\",\n",
" \"min\": 0,\n",
" \"max\": 0\n",
" },\n",
" {\n",
" \"name\": \"classification\",\n",
" \"min\": 2,\n",
" \"max\": 8\n",
" },\n",
" {\n",
" \"name\": \"scan_angle_rank\",\n",
" \"min\": -34,\n",
" \"max\": 36\n",
" },\n",
" {\n",
" \"name\": \"user_data\",\n",
" \"min\": 0,\n",
" \"max\": 0\n",
" },\n",
" {\n",
" \"name\": \"point_source_ID\",\n",
" \"min\": 16,\n",
" \"max\": 52\n",
" },\n",
" {\n",
" \"name\": \"gps_time\",\n",
" \"min\": 123276572.589918,\n",
" \"max\": 125327266.127279\n",
" }\n",
" ],\n",
" \"number of first returns\": 9596534,\n",
" \"number of intermediate returns\": 3758885,\n",
" \"number of last returns\": 9594332,\n",
" \"number of single returns\": 5024969,\n",
" \"covered area in square units/kilounits\": \"999824/1.00\",\n",
" \"point density\": \"all returns 17.93 last only 9.60 (per square units)\",\n",
" \"spacing\": \"all returns 0.24 last only 0.32 (in units)\",\n",
" \"WARNING1\": \"there are 49406 points with return number 6\",\n",
" \"WARNING2\": \"there are 7251 points with return number 7\",\n",
" \"overview over number of returns of given pulse\": [\n",
" 5024969,\n",
" 4187662,\n",
" 4535642,\n",
" 2810571,\n",
" 1062064,\n",
" 257021,\n",
" 46853\n",
" ],\n",
" \"histogram of classification of points\": [\n",
" {\n",
" \"name\": \"ground\",\n",
" \"label\": 2,\n",
" \"count\": 1414757\n",
" },\n",
" {\n",
" \"name\": \"low vegetation\",\n",
" \"label\": 3,\n",
" \"count\": 3924353\n",
" },\n",
" {\n",
" \"name\": \"medium vegetation\",\n",
" \"label\": 4,\n",
" \"count\": 462422\n",
" },\n",
" {\n",
" \"name\": \"high vegetation\",\n",
" \"label\": 5,\n",
" \"count\": 11840664\n",
" },\n",
" {\n",
" \"name\": \"building\",\n",
" \"label\": 6,\n",
" \"count\": 272081\n",
" },\n",
" {\n",
" \"name\": \"noise\",\n",
" \"label\": 7,\n",
" \"count\": 128\n",
" },\n",
" {\n",
" \"name\": \"keypoint\",\n",
" \"label\": 8,\n",
" \"count\": 10377\n",
" }\n",
" ]\n",
" },\n",
" \"meta_2018_aoi1\": {\n",
" \"metadata\": {\n",
" \"idinfo\": {\n",
" \"citation\": {\n",
" \"citeinfo\": {\n",
" \"origin\": \"Government of New Brunswick (comp.)\",\n",
" \"pubdate\": \"20181206\",\n",
" \"title\": \"SNB 2018 LiDAR \\nAOI 1\",\n",
" \"edition\": \"001\",\n",
" \"geoform\": \"remote-sensing lidar\",\n",
" \"onlink\": \"https://geonb.snb.ca/li/index.html\"\n",
" }\n",
" },\n",
" \"descript\": {\n",
" \"abstract\": \"Aerial Lidar Data\",\n",
" \"purpose\": \"To provide accurate and dense elevation data for the terrain and the natural and man-made features on and above the terrain\"\n",
" },\n",
" \"timeperd\": {\n",
" \"timeinfo\": {\n",
" \"rngdates\": {\n",
" \"begdate\": \"20180611\",\n",
" \"enddate\": \"20180825\"\n",
" }\n",
" },\n",
" \"current\": \"publication date\"\n",
" },\n",
" \"status\": {\n",
" \"progress\": \"Complete\",\n",
" \"update\": \"None planned\"\n",
" },\n",
" \"spdom\": {\n",
" \"bounding\": {\n",
" \"westbc\": \"-67.20518808\",\n",
" \"eastbc\": \"-64.90306242\",\n",
" \"northbc\": \"46.15928300\",\n",
" \"southbc\": \"44.81861194\"\n",
" }\n",
" },\n",
" \"keywords\": {\n",
" \"theme\": {\n",
" \"themekt\": \"none\",\n",
" \"themekey\": [\n",
" \"lidar\",\n",
" \"aerial lidar\",\n",
" \"point cloud\",\n",
" \"classified point cloud\",\n",
" \"elevation\"\n",
" ]\n",
" },\n",
" \"place\": {\n",
" \"placekt\": \"Canadian Geographical Names Data Base (CGNDB)\",\n",
" \"placekey\": [\n",
" \"Saint John\",\n",
" \"Fredericton Junction\",\n",
" \"Saint George\",\n",
" \"New Brunswick\"\n",
" ]\n",
" },\n",
" \"temporal\": {\n",
" \"tempkt\": \"none\",\n",
" \"tempkey\": \"Summer\"\n",
" }\n",
" },\n",
" \"accconst\": \"As outlined in the GeoNB Open Data Licence - http://geonb.snb.ca/documents/license/geonb-odl_en.pdf\",\n",
" \"useconst\": \"As outlined in the GeoNB Open Data Licence - http://geonb.snb.ca/documents/license/geonb-odl_en.pdf\",\n",
" \"ptcontac\": {\n",
" \"cntinfo\": {\n",
" \"cntorgp\": {\n",
" \"cntorg\": \"Service New Brunswick\",\n",
" \"cntper\": \"GeoNB\"\n",
" },\n",
" \"cntpos\": \"Lidar specialist\",\n",
" \"cntaddr\": [\n",
" {\n",
" \"addrtype\": \"mailing address\",\n",
" \"address\": [\n",
" \"Service New Brunswick\",\n",
" \"P.O. Box 1998\"\n",
" ],\n",
" \"city\": \"Fredericton\",\n",
" \"state\": \"NB\",\n",
" \"postal\": \"E3B 5G4\",\n",
" \"country\": \"Canada\"\n",
" },\n",
" {\n",
" \"addrtype\": \"physical address\",\n",
" \"address\": [\n",
" \"Service New Brunswick\",\n",
" \"985 College Hill Road\"\n",
" ],\n",
" \"city\": \"Fredericton\",\n",
" \"state\": \"NB\",\n",
" \"postal\": \"E3B 4J7\",\n",
" \"country\": \"Canada\"\n",
" }\n",
" ],\n",
" \"cntvoice\": \"(506) 457-3581\",\n",
" \"cntfax\": \"(506) 453-3898\",\n",
" \"cntemail\": \"geonb@snb.ca\",\n",
" \"hours\": \"0815 - 1630 AST (GMT - 0400), Monday to Friday\"\n",
" }\n",
" },\n",
" \"browse\": {\n",
" \"browsen\": \"https://geonb.snb.ca/documents/lidar_browse_graphic/2018_LiDAR_AOI1.jpg\",\n",
" \"browsed\": \"Lidar project footprint displayed on map of New Brunswick\",\n",
" \"browset\": \"JPEG\"\n",
" },\n",
" \"secinfo\": {\n",
" \"secsys\": \"None\",\n",
" \"secclass\": \"Unclassified\",\n",
" \"sechandl\": \"None\"\n",
" }\n",
" },\n",
" \"dataqual\": {\n",
" \"logic\": \"Unknown\",\n",
" \"complete\": \"The lidar point cloud includes all hits\",\n",
" \"posacc\": {\n",
" \"horizpa\": {\n",
" \"horizpar\": \"LiDAR Horizontal Accuracy Statement\",\n",
" \"qhorizpa\": {\n",
" \"horizpav\": \"0.20\",\n",
" \"horizpae\": \"This data set was produced to meet ASPRS Positional Accuracy Standards for Digital Geospatial Data (2014) for a 20 cm RMSEx/RMSEy Horizontal Accuracy Class which equates to Positional Horizontal Accuracy = +/- 49.0 cm at a 95% confidence level.\"\n",
" }\n",
" },\n",
" \"vertacc\": {\n",
" \"vertaccr\": \"LiDAR NVA/VVA Vertical Accuracy Statements\",\n",
" \"qvertpa\": [\n",
" {\n",
" \"vertaccv\": \"0.105\",\n",
" \"vertacce\": \"This data set was tested to meet ASPRS Positional Accuracy Standards for Digital Geospatial Data (2014) for a 10 cm RMSEz Vertical Accuracy Class on RTK measured points. Actual NVA accuracy was found to be RMSEz = 10.5 cm, equating to +/- 20.6 cm at 95% confidence level\"\n",
" },\n",
" {\n",
" \"vertaccv\": \"0.327\",\n",
" \"vertacce\": \"Actual VVA accuracy was found to be 32.7 cm at the 95th percentile.\"\n",
" }\n",
" ]\n",
" }\n",
" },\n",
" \"lineage\": {\n",
" \"procstep\": {\n",
" \"procdesc\": \"The point cloud is initially produced using the latest boresight values for the sensor. Preliminary quality assurance steps are taken to ensure data integrity. A series of off the shelf software and proprietary tools are utilized throughout the LiDAR data processing procedures.\\n\\nThe calibrated point cloud strips are then processed into 1km tiles in the New Brunswick Double Strereographic projection. Next, a combination of automatic and manual classification is done separating points into ground (class 2), non ground (class 1), low noise (class 7) and high noise (class 18). The manual and visual inspection plays a major role in improving the classification accuracy. \\n\\nOnce the classification of the ground class is deemed final, automatic classification is run on all non-ground points. Project specifications for vegetation classification is: above ground points to 50cm - low vegetation (class 3), above 50cm to 2m - medium vegetation (class 4), above 2m - high vegetation (class 5). A manual/visual QC pass is made to fine tune the classification of points, including the manual classification of buildings (class 6) and bridges (class 17). Ground above culverts is left in the ground class. Further classification of water and water bodies is done with the following parameters: water bodies and water courses meeting specifications of greater than 3600 m2 (water bodies), greater than 10 m nominal width (water courses) and at least 220 m in length are delineated. LiDAR points falling within these areas are classified the water class (class 9). Islands greater than 100m2 are delineated within any water feature and not classified as water.\\n\\nThe final 1m Bare Earth DEMs are produced from the TIN of the \\\"ground\\\" and \\\"model keypoint\\\" classes (2 & 8). Similarly, Full Feature grids are produced by using all non-noise points.\",\n",
" \"procdate\": \"Unknown\",\n",
" \"proccont\": {\n",
" \"cntinfo\": {\n",
" \"cntperp\": {\n",
" \"cntper\": \"Data Processing Manager\",\n",
" \"cntorg\": \"Airborne Imaging\"\n",
" },\n",
" \"cntaddr\": {\n",
" \"addrtype\": \"mailing and physical address\",\n",
" \"address\": \"2700 61 Avenue SE\",\n",
" \"city\": \"Calgary\",\n",
" \"state\": \"Alberta\",\n",
" \"postal\": \"T2C 4V2\",\n",
" \"country\": \"Canada\"\n",
" },\n",
" \"cntvoice\": \"403 215 2960\",\n",
" \"cntfax\": \"403 258 3189\",\n",
" \"hours\": \"0900 - 1500 MST\",\n",
" \"cntinst\": \"All questions should first be directed to GeoNB (geonb@snb.ca)\"\n",
" }\n",
" }\n",
" }\n",
" }\n",
" },\n",
" \"spref\": {\n",
" \"horizsys\": {\n",
" \"planar\": {\n",
" \"gridsys\": {\n",
" \"gridsysn\": \"other grid system\",\n",
" \"othergrd\": \"PROJCS[\\\"NAD83(CSRS) / New Brunswick Stereo\\\", GEOGCS[\\\"NAD83(CSRS)\\\", DATUM[\\\"D_North_American_1983_CSRS98\\\", SPHEROID[\\\"GRS_1980\\\", 6378137, 298.257222101]], PRIMEM[\\\"Greenwich\\\",0], UNIT[\\\"Degree\\\",0.0174532925199433]], PROJECTION[\\\"Double_Stereographic\\\"], PARAMETER[\\\"Latitude_Of_Origin\\\",46.5], PARAMETER[\\\"central_meridian\\\",-66.5], PARAMETER[\\\"scale_factor\\\",0.999912], PARAMETER[\\\"false_easting\\\",2500000], PARAMETER[\\\"false_northing\\\",7500000], UNIT[\\\"Meter\\\",1]]\\n\\nEPSG 2953\"\n",
" },\n",
" \"planci\": {\n",
" \"plance\": \"coordinate pair\",\n",
" \"coordrep\": {\n",
" \"absres\": \"0.01\",\n",
" \"ordres\": \"0.01\"\n",
" },\n",
" \"plandu\": \"metres\"\n",
" }\n",
" },\n",
" \"geodetic\": {\n",
" \"horizdn\": \"NAD83 (CSRS)\",\n",
" \"ellips\": \"Geodetic Reference System 80\",\n",
" \"semiaxis\": \"6378137.0\",\n",
" \"denflat\": \"298.257222101\"\n",
" }\n",
" },\n",
" \"vertdef\": {\n",
" \"altsys\": {\n",
" \"altdatum\": \"Canadian Geodetic Vertical Datum of 2013 (GCVD2013)\",\n",
" \"altres\": \"0.0001\",\n",
" \"altunits\": \"metres\",\n",
" \"altenc\": \"Explicit elevation coordinate included with horizontal coordinates\"\n",
" }\n",
" }\n",
" },\n",
" \"eainfo\": {\n",
" \"detailed\": [\n",
" {\n",
" \"enttyp\": {\n",
" \"enttypl\": \"LiDAR Point Cloud\",\n",
" \"enttypd\": \"ASPRS Codes used for this classification \\nASPRS 1 = Unclassified \\nASPRS 2 = Ground \\nASPRS 3 = Low Vegetation \\nASPRS 4 = Medium Vegetation \\nASPRS 5 = High Vegetation \\nASPRS 6 = Buildings \\nASPRS 7 = Low Noise \\nASPRS 8 = Model Key-Point \\nASPRS 9 = Water \\nASPRS 17 = Bridge \\nASPRS 18 = High Noise\",\n",
" \"enttypds\": \"LAS Specification Version 1.2 Approved by ASPRS Board 09/02/2008 http://www.asprs.org/wp-content/uploads/2010/12/asprs_las_format_v12.pdf\"\n",
" }\n",
" },\n",
" {\n",
" \"enttyp\": {\n",
" \"enttypl\": \"1m 32bit Geotiff Digital Evelation Model (DEM)\",\n",
" \"enttypd\": \"Bare Earth Digital Elevation Model creadted from ASPRS Classes 2 and 8\",\n",
" \"enttypds\": \"LAS Specification Version 1.2 Approved by ASPRS Board 09/02/2008 http://www.asprs.org/wp-content/uploads/2010/12/asprs_las_format_v12.pdf\"\n",
" }\n",
" },\n",
" {\n",
" \"enttyp\": {\n",
" \"enttypl\": \"1m 32bit Geotiff Digital Evelation Model (DSM)\",\n",
" \"enttypd\": \"Full Feature Digital Elevation Model creadted from ASPRS Classes 1,2,3,4,5,6,8,9 and 17 and creating a grid surface of the highest elevations within each cell\",\n",
" \"enttypds\": \"LAS Specification Version 1.2 Approved by ASPRS Board 09/02/2008 http://www.asprs.org/wp-content/uploads/2010/12/asprs_las_format_v12.pdf\"\n",
" }\n",
" }\n",
" ]\n",
" },\n",
" \"distinfo\": {\n",
" \"distrib\": {\n",
" \"cntinfo\": {\n",
" \"cntorgp\": {\n",
" \"cntorg\": \"Service New Brunswick\",\n",
" \"cntper\": \"GeoNB\"\n",
" },\n",
" \"cntpos\": \"Lidar specialist\",\n",
" \"cntaddr\": [\n",
" {\n",
" \"addrtype\": \"mailing address\",\n",
" \"address\": [\n",
" \"Service New Brunswick\",\n",
" \"P.O. Box 1998\"\n",
" ],\n",
" \"city\": \"Fredericton\",\n",
" \"state\": \"NB\",\n",
" \"postal\": \"E3B 5G4\",\n",
" \"country\": \"Canada\"\n",
" },\n",
" {\n",
" \"addrtype\": \"physical address\",\n",
" \"address\": [\n",
" \"Service New Brunswick\",\n",
" \"985 College Hill Road\"\n",
" ],\n",
" \"city\": \"Fredericton\",\n",
" \"state\": \"NB\",\n",
" \"postal\": \"E3B 4J7\",\n",
" \"country\": \"Canada\"\n",
" }\n",
" ],\n",
" \"cntvoice\": \"(506) 457-3581\",\n",
" \"cntfax\": \"(506) 453-3898\",\n",
" \"cntemail\": \"geonb@snb.ca\",\n",
" \"hours\": \"0815 - 1630 AST (GMT - 0400), Monday to Friday\"\n",
" }\n",
" },\n",
" \"resdesc\": \"classified lidar point cloud\",\n",
" \"distliab\": \"As outlined in the GeoNB Open Data Licence - http://geonb.snb.ca/documents/license/geonb-odl_en.pdf\"\n",
" },\n",
" \"metainfo\": {\n",
" \"metd\": \"20190308\",\n",
" \"metc\": {\n",
" \"cntinfo\": {\n",
" \"cntorgp\": {\n",
" \"cntorg\": \"Service New Brunswick\",\n",
" \"cntper\": \"GeoNB\"\n",
" },\n",
" \"cntpos\": \"Lidar Specialist\",\n",
" \"cntaddr\": [\n",
" {\n",
" \"addrtype\": \"physical address\",\n",
" \"address\": [\n",
" \"Service New Brunswick\",\n",
" \"985 College Hill Road\"\n",
" ],\n",
" \"city\": \"Fredericton\",\n",
" \"state\": \"NB\",\n",
" \"postal\": \"E3B 4J7\",\n",
" \"country\": \"Canada\"\n",
" },\n",
" {\n",
" \"addrtype\": \"mailing address\",\n",
" \"address\": [\n",
" \"Service New Brunswick\",\n",
" \"P.O. Box 1998\"\n",
" ],\n",
" \"city\": \"Fredericton\",\n",
" \"state\": \"NB\",\n",
" \"postal\": \"E3B 5G4\",\n",
" \"country\": \"Canada\"\n",
" }\n",
" ],\n",
" \"cntvoice\": \"(506) 457-3581\",\n",
" \"cntfax\": \"(506) 453-3898\",\n",
" \"cntemail\": \"geonb@snb.ca\",\n",
" \"hours\": \"0815 - 1630 AST (GMT - 0400), Monday to Friday\"\n",
" }\n",
" },\n",
" \"metstdn\": \"FGDC Content Standards for Digital Geospatial Metadata\",\n",
" \"metstdv\": \"FGDC-STD-001-1998\",\n",
" \"mettc\": \"local time\"\n",
" }\n",
" }\n",
" },\n",
" \"links\": [\n",
" {\n",
" \"title\": \"LAZ Source Data\",\n",
" \"rel\": \"data\",\n",
" \"href\": \"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/laz/nb_2018_2466000_7438000.laz\"\n",
" },\n",
" {\n",
" \"title\": \"LAZ Metadata\",\n",
" \"rel\": \"meta\",\n",
" \"href\": \"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/meta/meta_2018_aoi1.xml\"\n",
" }\n",
" ]\n",
"}\n"
],
"name": "stdout"
}
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "HxgJ5vV49e9h",
"colab_type": "text"
},
"source": [
"### Create Features\n",
"This function is processing the metadata and form a feature record"
]
},
{
"cell_type": "code",
"metadata": {
"id": "wdGJ9_13AadM",
"colab_type": "code",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 1000
},
"outputId": "84af543c-3917-4609-fb42-13fac149fd27"
},
"source": [
"import copy\n",
"def create_feature(file,url_metadata,metadata):\n",
" data= copy.deepcopy(metadata['lasinfo'])\n",
" # Coordinates are in cms and must be converted in meters\n",
" data[\"Minimum and maximum values\"][0][\"min\"], data[\"Minimum and maximum values\"][1][\"min\"] = data[\"Minimum and maximum values\"][0][\"min\"]/100.0, data[\"Minimum and maximum values\"][1][\"min\"]/100.0\n",
" data[\"Minimum and maximum values\"][0][\"max\"], data[\"Minimum and maximum values\"][1][\"max\"] = data[\"Minimum and maximum values\"][0][\"max\"]/100.0, data[\"Minimum and maximum values\"][1][\"max\"]/100.0\n",
" feature= {\n",
" \"type\": \"Feature\",\n",
" \"id\": file,\n",
" \"properties\": {\n",
" \"name\": file,\n",
" \"crs\": { \"type\": \"name\", \"properties\": { \"name\": \"urn:ogc:def:crs:EPSG::2953\" } },\n",
" \"featureclass\": \"LIDAR\",\n",
" \"LAZ Metadata\": url_metadata,\n",
" \"onlink\": \"https://geonb.snb.ca/li/\",\n",
" \"Class_histogram\": data[\"histogram of classification of points\"],\n",
" 'class_names': metadata['class_names'],\n",
" 'class_labels': metadata['class_labels'],\n",
" 'class_count': metadata['class_count'],\n",
" 'class_frequency': list(metadata['class_frequency']),\n",
" 'bbox': [data[\"Minimum and maximum values\"][0][\"min\"], data[\"Minimum and maximum values\"][1][\"min\"], data[\"Minimum and maximum values\"][0][\"max\"], data[\"Minimum and maximum values\"][1][\"max\"]]\n",
" },\n",
" \"geometry\": {\n",
" \"type\": \"Polygon\",\n",
" \"coordinates\": [\n",
" [\n",
" [\n",
" data[\"Minimum and maximum values\"][0][\"min\"],\n",
" data[\"Minimum and maximum values\"][1][\"min\"]\n",
" ],\n",
" [\n",
" data[\"Minimum and maximum values\"][0][\"max\"],\n",
" data[\"Minimum and maximum values\"][1][\"min\"]\n",
" ],\n",
" [\n",
" data[\"Minimum and maximum values\"][0][\"max\"],\n",
" data[\"Minimum and maximum values\"][1][\"max\"]\n",
" ],\n",
" [\n",
" data[\"Minimum and maximum values\"][0][\"min\"],\n",
" data[\"Minimum and maximum values\"][1][\"max\"]\n",
" ]\n",
" ]\n",
" ]\n",
" }\n",
" }\n",
" return feature\n",
"feature_collection = {\n",
" 'type': 'FeatureCollection',\n",
" \"crs\": { \"type\": \"name\", \"properties\": { \"name\": \"urn:ogc:def:crs:EPSG::2953\" } },\n",
" \"features\": [create_feature(file,url_metadata,metadata)\n",
" ]\n",
"}\n",
"\n",
"with open('%s.geojson' % file, 'w') as outfile:\n",
" json.dump(feature_collection, outfile)\n",
"\n",
"print(json.dumps(feature_collection, indent=4))\n"
],
"execution_count": null,
"outputs": [
{
"output_type": "stream",
"text": [
"{\n",
" \"type\": \"FeatureCollection\",\n",
" \"crs\": {\n",
" \"type\": \"name\",\n",
" \"properties\": {\n",
" \"name\": \"urn:ogc:def:crs:EPSG::2953\"\n",
" }\n",
" },\n",
" \"features\": [\n",
" {\n",
" \"type\": \"Feature\",\n",
" \"properties\": {\n",
" \"id\": \"nb_2018_2466000_7438000\",\n",
" \"name\": \"nb_2018_2466000_7438000\",\n",
" \"crs\": {\n",
" \"type\": \"name\",\n",
" \"properties\": {\n",
" \"name\": \"urn:ogc:def:crs:EPSG::2953\"\n",
" }\n",
" },\n",
" \"featureclass\": \"LIDAR\",\n",
" \"LAZ Metadata\": \"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/meta/meta_2018_aoi1.xml\",\n",
" \"onlink\": \"https://geonb.snb.ca/li/\",\n",
" \"histogram of classification of points\": [\n",
" {\n",
" \"name\": \"ground\",\n",
" \"label\": 2,\n",
" \"count\": 1414757\n",
" },\n",
" {\n",
" \"name\": \"low vegetation\",\n",
" \"label\": 3,\n",
" \"count\": 3924353\n",
" },\n",
" {\n",
" \"name\": \"medium vegetation\",\n",
" \"label\": 4,\n",
" \"count\": 462422\n",
" },\n",
" {\n",
" \"name\": \"high vegetation\",\n",
" \"label\": 5,\n",
" \"count\": 11840664\n",
" },\n",
" {\n",
" \"name\": \"building\",\n",
" \"label\": 6,\n",
" \"count\": 272081\n",
" },\n",
" {\n",
" \"name\": \"noise\",\n",
" \"label\": 7,\n",
" \"count\": 128\n",
" },\n",
" {\n",
" \"name\": \"keypoint\",\n",
" \"label\": 8,\n",
" \"count\": 10377\n",
" }\n",
" ],\n",
" \"class_names\": [\n",
" \"ground\",\n",
" \"low vegetation\",\n",
" \"medium vegetation\",\n",
" \"high vegetation\",\n",
" \"building\",\n",
" \"noise\",\n",
" \"keypoint\"\n",
" ],\n",
" \"class_labels\": [\n",
" 2,\n",
" 3,\n",
" 4,\n",
" 5,\n",
" 6,\n",
" 7,\n",
" 8\n",
" ],\n",
" \"class_count\": [\n",
" 1414757,\n",
" 3924353,\n",
" 462422,\n",
" 11840664,\n",
" 272081,\n",
" 128,\n",
" 10377\n",
" ],\n",
" \"class_frequency\": [\n",
" 7.892743130711437,\n",
" 21.893448969142273,\n",
" 2.5797914864459717,\n",
" 66.0575063060739,\n",
" 1.5179040950121456,\n",
" 0.0007140951560805593,\n",
" 0.05789191745818722\n",
" ],\n",
" \"bbox\": [\n",
" 248000000,\n",
" 743600000,\n",
" 248099999,\n",
" 743699999\n",
" ]\n",
" },\n",
" \"geometry\": {\n",
" \"type\": \"Polygon\",\n",
" \"coordinates\": [\n",
" [\n",
" [\n",
" 248000000,\n",
" 743600000\n",
" ],\n",
" [\n",
" 248099999,\n",
" 743600000\n",
" ],\n",
" [\n",
" 248099999,\n",
" 743699999\n",
" ],\n",
" [\n",
" 248000000,\n",
" 743699999\n",
" ]\n",
" ]\n",
" ]\n",
" }\n",
" }\n",
" ]\n",
"}\n"
],
"name": "stdout"
}
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "yqOI-rvsasgW",
"colab_type": "text"
},
"source": [
"Processing all the tiles in /content/data"
]
},
{
"cell_type": "code",
"metadata": {
"id": "dLKIJjbOYhpq",
"colab_type": "code",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 1000
},
"outputId": "cb4bd561-26dc-47c3-8031-632a2ffeb65e"
},
"source": [
"local_dir = '/content/data'\n",
"files = {os.path.splitext(f)[0]: os.path.join(dp, f) for dp, dn, filenames in os.walk(local_dir) for f in filenames if os.path.splitext(f)[1] == '.laz'}\n",
"len(files)\n",
"features= list()\n",
"for key, value in files.items():\n",
" print(key,value)\n",
" !lasinfo -i {value} -compute_density -otxt -o {key}.txt\n",
" metadata= extract_metadata_from_las_file(key)\n",
" features.append(create_feature(key,url_metadata,metadata))\n",
"\n",
"feature_collection = {\n",
" 'type': 'FeatureCollection',\n",
" \"crs\": { \"type\": \"name\", \"properties\": { \"name\": \"urn:ogc:def:crs:EPSG::2953\" } },\n",
" \"features\": features\n",
"}\n",
"\n",
"print(json.dumps(feature_collection, indent=2))\n",
"with open('nb_lidar.json', 'w') as outfile:\n",
" json.dump(feature_collection, outfile)"
],
"execution_count": null,
"outputs": [
{
"output_type": "stream",
"text": [
"nb_2018_2463000_7434000 /content/data/nb_2018_2463000_7434000.laz\n",
"ERROR: cannot open 'pcs.csv' file. maybe your LAStools distribution\n",
" has no .\\LAStools\\bin\\serf\\geo\\pcs.csv file. download the\n",
" latest version at http://lastools.org/download/LAStools.zip\n",
"set_ProjectedCSTypeGeoKey: look-up for 2953 not implemented\n",
"/content/nb_2018_2463000_7434000.txt\n",
"not processed lasinfo (200101) report for '/content/data/nb_2018_2463000_7434000.laz'\n",
" lasinfo (200101) report for '/content/data/nb_2018_2463000_7434000.laz'\n",
"not processed reserved 0\n",
" reserved 0\n",
"not processed user ID 'LASF_Projection'\n",
" user ID 'LASF_Projection'\n",
"not processed record ID 34735\n",
" record ID 34735\n",
"not processed length after header 48\n",
" length after header 48\n",
"not processed description 'by LAStools of rapidlasso GmbH'\n",
" description 'by LAStools of rapidlasso GmbH'\n",
"not processed GeoKeyDirectoryTag version 1.1.0 number of keys 5\n",
" GeoKeyDirectoryTag version 1.1.0 number of keys 5\n",
"not processed the header is followed by 2 user-defined bytes\n",
" the header is followed by 2 user-defined bytes\n",
" X 246300000 246399999\n",
"\n",
" Y 743400000 743499999\n",
"\n",
" Z 11168 52616\n",
"\n",
" intensity 0 65535\n",
"\n",
" return_number 1 7\n",
"\n",
" number_of_returns 1 7\n",
"\n",
" edge_of_flight_line 0 1\n",
"\n",
" scan_direction_flag 0 0\n",
"\n",
" classification 1 18\n",
"\n",
" scan_angle_rank -30 28\n",
"\n",
" user_data 54 55\n",
"\n",
" point_source_ID 18512 48603\n",
"\n",
" gps_time 214754785.602003 214830335.251053\n",
"\n",
"header size ['227']\n",
"offset to point data ['331']\n",
"number var. length records ['1']\n",
"point data format ['1']\n",
"point data record length ['28']\n",
"number of point records ['23216813']\n",
"number of first returns ['10077554']\n",
"number of intermediate returns ['5998633']\n",
"number of last returns ['10077554']\n",
"number of single returns ['2936928']\n",
"nb_2018_2463000_7436000 /content/data/nb_2018_2463000_7436000.laz\n",
"ERROR: cannot open 'pcs.csv' file. maybe your LAStools distribution\n",
" has no .\\LAStools\\bin\\serf\\geo\\pcs.csv file. download the\n",
" latest version at http://lastools.org/download/LAStools.zip\n",
"set_ProjectedCSTypeGeoKey: look-up for 2953 not implemented\n",
"/content/nb_2018_2463000_7436000.txt\n",
"not processed lasinfo (200101) report for '/content/data/nb_2018_2463000_7436000.laz'\n",
" lasinfo (200101) report for '/content/data/nb_2018_2463000_7436000.laz'\n",
"not processed reserved 0\n",
" reserved 0\n",
"not processed user ID 'LASF_Projection'\n",
" user ID 'LASF_Projection'\n",
"not processed record ID 34735\n",
" record ID 34735\n",
"not processed length after header 48\n",
" length after header 48\n",
"not processed description 'by LAStools of rapidlasso GmbH'\n",
" description 'by LAStools of rapidlasso GmbH'\n",
"not processed GeoKeyDirectoryTag version 1.1.0 number of keys 5\n",
" GeoKeyDirectoryTag version 1.1.0 number of keys 5\n",
"not processed the header is followed by 2 user-defined bytes\n",
" the header is followed by 2 user-defined bytes\n",
" X 246300000 246399999\n",
"\n",
" Y 743600000 743699999\n",
"\n",
" Z 12116 54650\n",
"\n",
" intensity 0 65535\n",
"\n",
" return_number 1 7\n",
"\n",
" number_of_returns 1 7\n",
"\n",
" edge_of_flight_line 0 1\n",
"\n",
" scan_direction_flag 0 0\n",
"\n",
" classification 1 18\n",
"\n",
" scan_angle_rank -30 30\n",
"\n",
" user_data 54 55\n",
"\n",
" point_source_ID 18512 48603\n",
"\n",
" gps_time 214754811.456039 214830308.697551\n",
"\n",
"header size ['227']\n",
"offset to point data ['331']\n",
"number var. length records ['1']\n",
"point data format ['1']\n",
"point data record length ['28']\n",
"number of point records ['25774457']\n",
"number of first returns ['9956059']\n",
"number of intermediate returns ['7967628']\n",
"number of last returns ['9959088']\n",
"number of single returns ['2108318']\n",
"nb_2018_2464000_7434000 /content/data/nb_2018_2464000_7434000.laz\n",
"ERROR: cannot open 'pcs.csv' file. maybe your LAStools distribution\n",
" has no .\\LAStools\\bin\\serf\\geo\\pcs.csv file. download the\n",
" latest version at http://lastools.org/download/LAStools.zip\n",
"set_ProjectedCSTypeGeoKey: look-up for 2953 not implemented\n",
"/content/nb_2018_2464000_7434000.txt\n",
"not processed lasinfo (200101) report for '/content/data/nb_2018_2464000_7434000.laz'\n",
" lasinfo (200101) report for '/content/data/nb_2018_2464000_7434000.laz'\n",
"not processed reserved 0\n",
" reserved 0\n",
"not processed user ID 'LASF_Projection'\n",
" user ID 'LASF_Projection'\n",
"not processed record ID 34735\n",
" record ID 34735\n",
"not processed length after header 48\n",
" length after header 48\n",
"not processed description 'by LAStools of rapidlasso GmbH'\n",
" description 'by LAStools of rapidlasso GmbH'\n",
"not processed GeoKeyDirectoryTag version 1.1.0 number of keys 5\n",
" GeoKeyDirectoryTag version 1.1.0 number of keys 5\n",
"not processed the header is followed by 2 user-defined bytes\n",
" the header is followed by 2 user-defined bytes\n",
" X 246400000 246499999\n",
"\n",
" Y 743400000 743499999\n",
"\n",
" Z 9806 14505\n",
"\n",
" intensity 0 65535\n",
"\n",
" return_number 1 7\n",
"\n",
" number_of_returns 1 7\n",
"\n",
" edge_of_flight_line 0 1\n",
"\n",
" scan_direction_flag 0 0\n",
"\n",
" classification 1 18\n",
"\n",
" scan_angle_rank -30 30\n",
"\n",
" user_data 54 55\n",
"\n",
" point_source_ID 18510 48602\n",
"\n",
" gps_time 214752191.378022 214829361.634624\n",
"\n",
"header size ['227']\n",
"offset to point data ['331']\n",
"number var. length records ['1']\n",
"point data format ['1']\n",
"point data record length ['28']\n",
"number of point records ['19901279']\n",
"number of first returns ['9436805']\n",
"number of intermediate returns ['4369670']\n",
"number of last returns ['9439722']\n",
"number of single returns ['3344918']\n",
"nb_2018_2465000_7435000 /content/data/nb_2018_2465000_7435000.laz\n",
"ERROR: cannot open 'pcs.csv' file. maybe your LAStools distribution\n",
" has no .\\LAStools\\bin\\serf\\geo\\pcs.csv file. download the\n",
" latest version at http://lastools.org/download/LAStools.zip\n",
"set_ProjectedCSTypeGeoKey: look-up for 2953 not implemented\n",
"/content/nb_2018_2465000_7435000.txt\n",
"not processed lasinfo (200101) report for '/content/data/nb_2018_2465000_7435000.laz'\n",
" lasinfo (200101) report for '/content/data/nb_2018_2465000_7435000.laz'\n",
"not processed reserved 0\n",
" reserved 0\n",
"not processed user ID 'LASF_Projection'\n",
" user ID 'LASF_Projection'\n",
"not processed record ID 34735\n",
" record ID 34735\n",
"not processed length after header 48\n",
" length after header 48\n",
"not processed description 'by LAStools of rapidlasso GmbH'\n",
" description 'by LAStools of rapidlasso GmbH'\n",
"not processed GeoKeyDirectoryTag version 1.1.0 number of keys 5\n",
" GeoKeyDirectoryTag version 1.1.0 number of keys 5\n",
"not processed the header is followed by 2 user-defined bytes\n",
" the header is followed by 2 user-defined bytes\n",
" X 246500000 246599999\n",
"\n",
" Y 743500000 743599999\n",
"\n",
" Z 9241 15508\n",
"\n",
" intensity 0 65535\n",
"\n",
" return_number 1 7\n",
"\n",
" number_of_returns 1 7\n",
"\n",
" edge_of_flight_line 0 1\n",
"\n",
" scan_direction_flag 0 0\n",
"\n",
" classification 1 18\n",
"\n",
" scan_angle_rank -29 30\n",
"\n",
" user_data 54 55\n",
"\n",
" point_source_ID 18509 48512\n",
"\n",
" gps_time 214750572.638692 214754815.281837\n",
"\n",
"header size ['227']\n",
"offset to point data ['331']\n",
"number var. length records ['1']\n",
"point data format ['1']\n",
"point data record length ['28']\n",
"number of point records ['18515772']\n",
"number of first returns ['9557884']\n",
"number of intermediate returns ['3561495']\n",
"number of last returns ['9557076']\n",
"number of single returns ['4160683']\n",
"nb_2018_2464000_7437000 /content/data/nb_2018_2464000_7437000.laz\n",
"ERROR: cannot open 'pcs.csv' file. maybe your LAStools distribution\n",
" has no .\\LAStools\\bin\\serf\\geo\\pcs.csv file. download the\n",
" latest version at http://lastools.org/download/LAStools.zip\n",
"set_ProjectedCSTypeGeoKey: look-up for 2953 not implemented\n",
"/content/nb_2018_2464000_7437000.txt\n",
"not processed lasinfo (200101) report for '/content/data/nb_2018_2464000_7437000.laz'\n",
" lasinfo (200101) report for '/content/data/nb_2018_2464000_7437000.laz'\n",
"not processed reserved 0\n",
" reserved 0\n",
"not processed user ID 'LASF_Projection'\n",
" user ID 'LASF_Projection'\n",
"not processed record ID 34735\n",
" record ID 34735\n",
"not processed length after header 48\n",
" length after header 48\n",
"not processed description 'by LAStools of rapidlasso GmbH'\n",
" description 'by LAStools of rapidlasso GmbH'\n",
"not processed GeoKeyDirectoryTag version 1.1.0 number of keys 5\n",
" GeoKeyDirectoryTag version 1.1.0 number of keys 5\n",
"not processed the header is followed by 2 user-defined bytes\n",
" the header is followed by 2 user-defined bytes\n",
" X 246400000 246499999\n",
"\n",
" Y 743700000 743799999\n",
"\n",
" Z 12400 52098\n",
"\n",
" intensity 0 65535\n",
"\n",
" return_number 1 7\n",
"\n",
" number_of_returns 1 7\n",
"\n",
" edge_of_flight_line 0 1\n",
"\n",
" scan_direction_flag 0 0\n",
"\n",
" classification 1 18\n",
"\n",
" scan_angle_rank -30 30\n",
"\n",
" user_data 54 55\n",
"\n",
" point_source_ID 18510 48602\n",
"\n",
" gps_time 214752232.129055 214829400.437766\n",
"\n",
"header size ['227']\n",
"offset to point data ['331']\n",
"number var. length records ['1']\n",
"point data format ['1']\n",
"point data record length ['28']\n",
"number of point records ['23838084']\n",
"number of first returns ['9530187']\n",
"number of intermediate returns ['7130465']\n",
"number of last returns ['9536509']\n",
"number of single returns ['2359077']\n",
"nb_2018_2463000_7435000 /content/data/nb_2018_2463000_7435000.laz\n",
"ERROR: cannot open 'pcs.csv' file. maybe your LAStools distribution\n",
" has no .\\LAStools\\bin\\serf\\geo\\pcs.csv file. download the\n",
" latest version at http://lastools.org/download/LAStools.zip\n",
"set_ProjectedCSTypeGeoKey: look-up for 2953 not implemented\n",
"/content/nb_2018_2463000_7435000.txt\n",
"not processed lasinfo (200101) report for '/content/data/nb_2018_2463000_7435000.laz'\n",
" lasinfo (200101) report for '/content/data/nb_2018_2463000_7435000.laz'\n",
"not processed reserved 0\n",
" reserved 0\n",
"not processed user ID 'LASF_Projection'\n",
" user ID 'LASF_Projection'\n",
"not processed record ID 34735\n",
" record ID 34735\n",
"not processed length after header 48\n",
" length after header 48\n",
"not processed description 'by LAStools of rapidlasso GmbH'\n",
" description 'by LAStools of rapidlasso GmbH'\n",
"not processed GeoKeyDirectoryTag version 1.1.0 number of keys 5\n",
" GeoKeyDirectoryTag version 1.1.0 number of keys 5\n",
"not processed the header is followed by 2 user-defined bytes\n",
" the header is followed by 2 user-defined bytes\n",
" X 246300000 246399999\n",
"\n",
" Y 743500000 743599999\n",
"\n",
" Z 11618 54131\n",
"\n",
" intensity 0 65535\n",
"\n",
" return_number 1 7\n",
"\n",
" number_of_returns 1 7\n",
"\n",
" edge_of_flight_line 0 1\n",
"\n",
" scan_direction_flag 0 0\n",
"\n",
" classification 1 18\n",
"\n",
" scan_angle_rank -30 30\n",
"\n",
" user_data 54 55\n",
"\n",
" point_source_ID 18512 48603\n",
"\n",
" gps_time 214754798.666451 214830321.857888\n",
"\n",
"header size ['227']\n",
"offset to point data ['331']\n",
"number var. length records ['1']\n",
"point data format ['1']\n",
"point data record length ['28']\n",
"number of point records ['25976782']\n",
"number of first returns ['10079775']\n",
"number of intermediate returns ['7913534']\n",
"number of last returns ['10079096']\n",
"number of single returns ['2095623']\n",
"nb_2018_2466000_7436000 /content/data/nb_2018_2466000_7436000.laz\n",
"ERROR: cannot open 'pcs.csv' file. maybe your LAStools distribution\n",
" has no .\\LAStools\\bin\\serf\\geo\\pcs.csv file. download the\n",
" latest version at http://lastools.org/download/LAStools.zip\n",
"set_ProjectedCSTypeGeoKey: look-up for 2953 not implemented\n",
"/content/nb_2018_2466000_7436000.txt\n",
"not processed lasinfo (200101) report for '/content/data/nb_2018_2466000_7436000.laz'\n",
" lasinfo (200101) report for '/content/data/nb_2018_2466000_7436000.laz'\n",
"not processed reserved 0\n",
" reserved 0\n",
"not processed user ID 'LASF_Projection'\n",
" user ID 'LASF_Projection'\n",
"not processed record ID 34735\n",
" record ID 34735\n",
"not processed length after header 48\n",
" length after header 48\n",
"not processed description 'by LAStools of rapidlasso GmbH'\n",
" description 'by LAStools of rapidlasso GmbH'\n",
"not processed GeoKeyDirectoryTag version 1.1.0 number of keys 5\n",
" GeoKeyDirectoryTag version 1.1.0 number of keys 5\n",
"not processed the header is followed by 2 user-defined bytes\n",
" the header is followed by 2 user-defined bytes\n",
" X 246600000 246699999\n",
"\n",
" Y 743600000 743699999\n",
"\n",
" Z 12836 16920\n",
"\n",
" intensity 0 65535\n",
"\n",
" return_number 1 7\n",
"\n",
" number_of_returns 1 7\n",
"\n",
" edge_of_flight_line 0 1\n",
"\n",
" scan_direction_flag 0 0\n",
"\n",
" classification 1 18\n",
"\n",
" scan_angle_rank -30 30\n",
"\n",
" user_data 54 55\n",
"\n",
" point_source_ID 18508 48511\n",
"\n",
" gps_time 214749651.837469 214753143.087734\n",
"\n",
"header size ['227']\n",
"offset to point data ['331']\n",
"number var. length records ['1']\n",
"point data format ['1']\n",
"point data record length ['28']\n",
"number of point records ['20733905']\n",
"number of first returns ['9233712']\n",
"number of intermediate returns ['5283033']\n",
"number of last returns ['9240910']\n",
"number of single returns ['3023750']\n",
"nb_2018_2464000_7438000 /content/data/nb_2018_2464000_7438000.laz\n",
"ERROR: cannot open 'pcs.csv' file. maybe your LAStools distribution\n",
" has no .\\LAStools\\bin\\serf\\geo\\pcs.csv file. download the\n",
" latest version at http://lastools.org/download/LAStools.zip\n",
"set_ProjectedCSTypeGeoKey: look-up for 2953 not implemented\n",
"/content/nb_2018_2464000_7438000.txt\n",
"not processed lasinfo (200101) report for '/content/data/nb_2018_2464000_7438000.laz'\n",
" lasinfo (200101) report for '/content/data/nb_2018_2464000_7438000.laz'\n",
"not processed reserved 0\n",
" reserved 0\n",
"not processed user ID 'LASF_Projection'\n",
" user ID 'LASF_Projection'\n",
"not processed record ID 34735\n",
" record ID 34735\n",
"not processed length after header 48\n",
" length after header 48\n",
"not processed description 'by LAStools of rapidlasso GmbH'\n",
" description 'by LAStools of rapidlasso GmbH'\n",
"not processed GeoKeyDirectoryTag version 1.1.0 number of keys 5\n",
" GeoKeyDirectoryTag version 1.1.0 number of keys 5\n",
"not processed the header is followed by 2 user-defined bytes\n",
" the header is followed by 2 user-defined bytes\n",
" X 246400000 246499999\n",
"\n",
" Y 743800000 743899999\n",
"\n",
" Z 12555 52635\n",
"\n",
" intensity 0 65535\n",
"\n",
" return_number 1 7\n",
"\n",
" number_of_returns 1 7\n",
"\n",
" edge_of_flight_line 0 1\n",
"\n",
" scan_direction_flag 0 0\n",
"\n",
" classification 1 18\n",
"\n",
" scan_angle_rank -30 30\n",
"\n",
" user_data 54 55\n",
"\n",
" point_source_ID 18510 48602\n",
"\n",
" gps_time 214752244.929193 214829413.449906\n",
"\n",
"header size ['227']\n",
"offset to point data ['331']\n",
"number var. length records ['1']\n",
"point data format ['1']\n",
"point data record length ['28']\n",
"number of point records ['22743444']\n",
"number of first returns ['9218848']\n",
"number of intermediate returns ['6623506']\n",
"number of last returns ['9225072']\n",
"number of single returns ['2323982']\n",
"nb_2018_2466000_7438000 /content/data/nb_2018_2466000_7438000.laz\n",
"ERROR: cannot open 'pcs.csv' file. maybe your LAStools distribution\n",
" has no .\\LAStools\\bin\\serf\\geo\\pcs.csv file. download the\n",
" latest version at http://lastools.org/download/LAStools.zip\n",
"set_ProjectedCSTypeGeoKey: look-up for 2953 not implemented\n",
"/content/nb_2018_2466000_7438000.txt\n",
"not processed lasinfo (200101) report for '/content/data/nb_2018_2466000_7438000.laz'\n",
" lasinfo (200101) report for '/content/data/nb_2018_2466000_7438000.laz'\n",
"not processed reserved 0\n",
" reserved 0\n",
"not processed user ID 'LASF_Projection'\n",
" user ID 'LASF_Projection'\n",
"not processed record ID 34735\n",
" record ID 34735\n",
"not processed length after header 48\n",
" length after header 48\n",
"not processed description 'by LAStools of rapidlasso GmbH'\n",
" description 'by LAStools of rapidlasso GmbH'\n",
"not processed GeoKeyDirectoryTag version 1.1.0 number of keys 5\n",
" GeoKeyDirectoryTag version 1.1.0 number of keys 5\n",
"not processed the header is followed by 2 user-defined bytes\n",
" the header is followed by 2 user-defined bytes\n",
" X 246600000 246699999\n",
"\n",
" Y 743800000 743899999\n",
"\n",
" Z 11556 55002\n",
"\n",
" intensity 0 65535\n",
"\n",
" return_number 1 7\n",
"\n",
" number_of_returns 1 7\n",
"\n",
" edge_of_flight_line 0 1\n",
"\n",
" scan_direction_flag 0 0\n",
"\n",
" classification 1 18\n",
"\n",
" scan_angle_rank -30 30\n",
"\n",
" user_data 54 55\n",
"\n",
" point_source_ID 18508 48511\n",
"\n",
" gps_time 214747977.968635 214753115.782787\n",
"\n",
"header size ['227']\n",
"offset to point data ['331']\n",
"number var. length records ['1']\n",
"point data format ['1']\n",
"point data record length ['28']\n",
"number of point records ['22986239']\n",
"number of first returns ['9252454']\n",
"number of intermediate returns ['6825781']\n",
"number of last returns ['9260605']\n",
"number of single returns ['2352601']\n",
"nb_2018_2466000_7434000 /content/data/nb_2018_2466000_7434000.laz\n",
"ERROR: cannot open 'pcs.csv' file. maybe your LAStools distribution\n",
" has no .\\LAStools\\bin\\serf\\geo\\pcs.csv file. download the\n",
" latest version at http://lastools.org/download/LAStools.zip\n",
"set_ProjectedCSTypeGeoKey: look-up for 2953 not implemented\n",
"/content/nb_2018_2466000_7434000.txt\n",
"not processed lasinfo (200101) report for '/content/data/nb_2018_2466000_7434000.laz'\n",
" lasinfo (200101) report for '/content/data/nb_2018_2466000_7434000.laz'\n",
"not processed reserved 0\n",
" reserved 0\n",
"not processed user ID 'LASF_Projection'\n",
" user ID 'LASF_Projection'\n",
"not processed record ID 34735\n",
" record ID 34735\n",
"not processed length after header 48\n",
" length after header 48\n",
"not processed description 'by LAStools of rapidlasso GmbH'\n",
" description 'by LAStools of rapidlasso GmbH'\n",
"not processed GeoKeyDirectoryTag version 1.1.0 number of keys 5\n",
" GeoKeyDirectoryTag version 1.1.0 number of keys 5\n",
"not processed the header is followed by 2 user-defined bytes\n",
" the header is followed by 2 user-defined bytes\n",
" X 246600000 246699999\n",
"\n",
" Y 743400000 743499999\n",
"\n",
" Z 10040 15191\n",
"\n",
" intensity 0 65535\n",
"\n",
" return_number 1 7\n",
"\n",
" number_of_returns 1 7\n",
"\n",
" edge_of_flight_line 0 1\n",
"\n",
" scan_direction_flag 0 0\n",
"\n",
" classification 1 18\n",
"\n",
" scan_angle_rank -30 30\n",
"\n",
" user_data 54 55\n",
"\n",
" point_source_ID 18508 48511\n",
"\n",
" gps_time 214748029.232857 214753168.688199\n",
"\n",
"header size ['227']\n",
"offset to point data ['331']\n",
"number var. length records ['1']\n",
"point data format ['1']\n",
"point data record length ['28']\n",
"number of point records ['21852385']\n",
"number of first returns ['9443541']\n",
"number of intermediate returns ['5807412']\n",
"number of last returns ['9449263']\n",
"number of single returns ['2847831']\n",
"nb_2018_2465000_7434000 /content/data/nb_2018_2465000_7434000.laz\n",
"ERROR: cannot open 'pcs.csv' file. maybe your LAStools distribution\n",
" has no .\\LAStools\\bin\\serf\\geo\\pcs.csv file. download the\n",
" latest version at http://lastools.org/download/LAStools.zip\n",
"set_ProjectedCSTypeGeoKey: look-up for 2953 not implemented\n",
"/content/nb_2018_2465000_7434000.txt\n",
"not processed lasinfo (200101) report for '/content/data/nb_2018_2465000_7434000.laz'\n",
" lasinfo (200101) report for '/content/data/nb_2018_2465000_7434000.laz'\n",
"not processed reserved 0\n",
" reserved 0\n",
"not processed user ID 'LASF_Projection'\n",
" user ID 'LASF_Projection'\n",
"not processed record ID 34735\n",
" record ID 34735\n",
"not processed length after header 48\n",
" length after header 48\n",
"not processed description 'by LAStools of rapidlasso GmbH'\n",
" description 'by LAStools of rapidlasso GmbH'\n",
"not processed GeoKeyDirectoryTag version 1.1.0 number of keys 5\n",
" GeoKeyDirectoryTag version 1.1.0 number of keys 5\n",
"not processed the header is followed by 2 user-defined bytes\n",
" the header is followed by 2 user-defined bytes\n",
" X 246500000 246599999\n",
"\n",
" Y 743400000 743499999\n",
"\n",
" Z 7321 14581\n",
"\n",
" intensity 0 65535\n",
"\n",
" return_number 1 7\n",
"\n",
" number_of_returns 1 7\n",
"\n",
" edge_of_flight_line 0 1\n",
"\n",
" scan_direction_flag 0 0\n",
"\n",
" classification 1 18\n",
"\n",
" scan_angle_rank -29 30\n",
"\n",
" user_data 54 55\n",
"\n",
" point_source_ID 18509 48512\n",
"\n",
" gps_time 214750585.587215 214754802.693513\n",
"\n",
"header size ['227']\n",
"offset to point data ['331']\n",
"number var. length records ['1']\n",
"point data format ['1']\n",
"point data record length ['28']\n",
"number of point records ['21733153']\n",
"number of first returns ['9623295']\n",
"number of intermediate returns ['5496257']\n",
"number of last returns ['9623511']\n",
"number of single returns ['3009910']\n",
"nb_2018_2465000_7436000 /content/data/nb_2018_2465000_7436000.laz\n",
"ERROR: cannot open 'pcs.csv' file. maybe your LAStools distribution\n",
" has no .\\LAStools\\bin\\serf\\geo\\pcs.csv file. download the\n",
" latest version at http://lastools.org/download/LAStools.zip\n",
"set_ProjectedCSTypeGeoKey: look-up for 2953 not implemented\n",
"/content/nb_2018_2465000_7436000.txt\n",
"not processed lasinfo (200101) report for '/content/data/nb_2018_2465000_7436000.laz'\n",
" lasinfo (200101) report for '/content/data/nb_2018_2465000_7436000.laz'\n",
"not processed reserved 0\n",
" reserved 0\n",
"not processed user ID 'LASF_Projection'\n",
" user ID 'LASF_Projection'\n",
"not processed record ID 34735\n",
" record ID 34735\n",
"not processed length after header 48\n",
" length after header 48\n",
"not processed description 'by LAStools of rapidlasso GmbH'\n",
" description 'by LAStools of rapidlasso GmbH'\n",
"not processed GeoKeyDirectoryTag version 1.1.0 number of keys 5\n",
" GeoKeyDirectoryTag version 1.1.0 number of keys 5\n",
"not processed the header is followed by 2 user-defined bytes\n",
" the header is followed by 2 user-defined bytes\n",
" X 246500000 246599999\n",
"\n",
" Y 743600000 743699999\n",
"\n",
" Z 12041 15847\n",
"\n",
" intensity 0 65535\n",
"\n",
" return_number 1 7\n",
"\n",
" number_of_returns 1 7\n",
"\n",
" edge_of_flight_line 0 1\n",
"\n",
" scan_direction_flag 0 0\n",
"\n",
" classification 1 18\n",
"\n",
" scan_angle_rank -30 30\n",
"\n",
" user_data 54 55\n",
"\n",
" point_source_ID 18509 48512\n",
"\n",
" gps_time 214750559.605509 214754828.484275\n",
"\n",
"header size ['227']\n",
"offset to point data ['331']\n",
"number var. length records ['1']\n",
"point data format ['1']\n",
"point data record length ['28']\n",
"number of point records ['18015472']\n",
"number of first returns ['9944835']\n",
"number of intermediate returns ['2974819']\n",
"number of last returns ['9943368']\n",
"number of single returns ['4847550']\n",
"nb_2018_2466000_7435000 /content/data/nb_2018_2466000_7435000.laz\n",
"ERROR: cannot open 'pcs.csv' file. maybe your LAStools distribution\n",
" has no .\\LAStools\\bin\\serf\\geo\\pcs.csv file. download the\n",
" latest version at http://lastools.org/download/LAStools.zip\n",
"set_ProjectedCSTypeGeoKey: look-up for 2953 not implemented\n",
"/content/nb_2018_2466000_7435000.txt\n",
"not processed lasinfo (200101) report for '/content/data/nb_2018_2466000_7435000.laz'\n",
" lasinfo (200101) report for '/content/data/nb_2018_2466000_7435000.laz'\n",
"not processed reserved 0\n",
" reserved 0\n",
"not processed user ID 'LASF_Projection'\n",
" user ID 'LASF_Projection'\n",
"not processed record ID 34735\n",
" record ID 34735\n",
"not processed length after header 48\n",
" length after header 48\n",
"not processed description 'by LAStools of rapidlasso GmbH'\n",
" description 'by LAStools of rapidlasso GmbH'\n",
"not processed GeoKeyDirectoryTag version 1.1.0 number of keys 5\n",
" GeoKeyDirectoryTag version 1.1.0 number of keys 5\n",
"not processed the header is followed by 2 user-defined bytes\n",
" the header is followed by 2 user-defined bytes\n",
" X 246600000 246699999\n",
"\n",
" Y 743500000 743599999\n",
"\n",
" Z 11554 52772\n",
"\n",
" intensity 0 65535\n",
"\n",
" return_number 1 7\n",
"\n",
" number_of_returns 1 7\n",
"\n",
" edge_of_flight_line 0 1\n",
"\n",
" scan_direction_flag 0 0\n",
"\n",
" classification 1 18\n",
"\n",
" scan_angle_rank -30 30\n",
"\n",
" user_data 54 55\n",
"\n",
" point_source_ID 18508 48511\n",
"\n",
" gps_time 214748027.168409 214753155.062175\n",
"\n",
"header size ['227']\n",
"offset to point data ['331']\n",
"number var. length records ['1']\n",
"point data format ['1']\n",
"point data record length ['28']\n",
"number of point records ['19238615']\n",
"number of first returns ['9248695']\n",
"number of intermediate returns ['4578580']\n",
"number of last returns ['9254218']\n",
"number of single returns ['3842878']\n",
"nb_2018_2465000_7438000 /content/data/nb_2018_2465000_7438000.laz\n",
"ERROR: cannot open 'pcs.csv' file. maybe your LAStools distribution\n",
" has no .\\LAStools\\bin\\serf\\geo\\pcs.csv file. download the\n",
" latest version at http://lastools.org/download/LAStools.zip\n",
"set_ProjectedCSTypeGeoKey: look-up for 2953 not implemented\n",
"/content/nb_2018_2465000_7438000.txt\n",
"not processed lasinfo (200101) report for '/content/data/nb_2018_2465000_7438000.laz'\n",
" lasinfo (200101) report for '/content/data/nb_2018_2465000_7438000.laz'\n",
"not processed reserved 0\n",
" reserved 0\n",
"not processed user ID 'LASF_Projection'\n",
" user ID 'LASF_Projection'\n",
"not processed record ID 34735\n",
" record ID 34735\n",
"not processed length after header 48\n",
" length after header 48\n",
"not processed description 'by LAStools of rapidlasso GmbH'\n",
" description 'by LAStools of rapidlasso GmbH'\n",
"not processed GeoKeyDirectoryTag version 1.1.0 number of keys 5\n",
" GeoKeyDirectoryTag version 1.1.0 number of keys 5\n",
"not processed the header is followed by 2 user-defined bytes\n",
" the header is followed by 2 user-defined bytes\n",
" X 246500000 246599999\n",
"\n",
" Y 743800000 743899999\n",
"\n",
" Z 11705 51909\n",
"\n",
" intensity 0 65535\n",
"\n",
" return_number 1 7\n",
"\n",
" number_of_returns 1 7\n",
"\n",
" edge_of_flight_line 0 1\n",
"\n",
" scan_direction_flag 0 0\n",
"\n",
" classification 1 18\n",
"\n",
" scan_angle_rank -29 30\n",
"\n",
" user_data 54 55\n",
"\n",
" point_source_ID 18509 48512\n",
"\n",
" gps_time 214750533.846212 214754854.973860\n",
"\n",
"header size ['227']\n",
"offset to point data ['331']\n",
"number var. length records ['1']\n",
"point data format ['1']\n",
"point data record length ['28']\n",
"number of point records ['23519044']\n",
"number of first returns ['9526986']\n",
"number of intermediate returns ['6913666']\n",
"number of last returns ['9526603']\n",
"number of single returns ['2448211']\n",
"nb_2018_2464000_7436000 /content/data/nb_2018_2464000_7436000.laz\n",
"ERROR: cannot open 'pcs.csv' file. maybe your LAStools distribution\n",
" has no .\\LAStools\\bin\\serf\\geo\\pcs.csv file. download the\n",
" latest version at http://lastools.org/download/LAStools.zip\n",
"set_ProjectedCSTypeGeoKey: look-up for 2953 not implemented\n",
"/content/nb_2018_2464000_7436000.txt\n",
"not processed lasinfo (200101) report for '/content/data/nb_2018_2464000_7436000.laz'\n",
" lasinfo (200101) report for '/content/data/nb_2018_2464000_7436000.laz'\n",
"not processed reserved 0\n",
" reserved 0\n",
"not processed user ID 'LASF_Projection'\n",
" user ID 'LASF_Projection'\n",
"not processed record ID 34735\n",
" record ID 34735\n",
"not processed length after header 48\n",
" length after header 48\n",
"not processed description 'by LAStools of rapidlasso GmbH'\n",
" description 'by LAStools of rapidlasso GmbH'\n",
"not processed GeoKeyDirectoryTag version 1.1.0 number of keys 5\n",
" GeoKeyDirectoryTag version 1.1.0 number of keys 5\n",
"not processed the header is followed by 2 user-defined bytes\n",
" the header is followed by 2 user-defined bytes\n",
" X 246400000 246499999\n",
"\n",
" Y 743600000 743699999\n",
"\n",
" Z 11410 45775\n",
"\n",
" intensity 0 65535\n",
"\n",
" return_number 1 7\n",
"\n",
" number_of_returns 1 7\n",
"\n",
" edge_of_flight_line 0 1\n",
"\n",
" scan_direction_flag 0 0\n",
"\n",
" classification 1 18\n",
"\n",
" scan_angle_rank -30 30\n",
"\n",
" user_data 54 55\n",
"\n",
" point_source_ID 18510 48602\n",
"\n",
" gps_time 214752218.344175 214829387.076449\n",
"\n",
"header size ['227']\n",
"offset to point data ['331']\n",
"number var. length records ['1']\n",
"point data format ['1']\n",
"point data record length ['28']\n",
"number of point records ['22616884']\n",
"number of first returns ['9523912']\n",
"number of intermediate returns ['6202787']\n",
"number of last returns ['9529527']\n",
"number of single returns ['2639342']\n",
"nb_2018_2466000_7437000 /content/data/nb_2018_2466000_7437000.laz\n",
"ERROR: cannot open 'pcs.csv' file. maybe your LAStools distribution\n",
" has no .\\LAStools\\bin\\serf\\geo\\pcs.csv file. download the\n",
" latest version at http://lastools.org/download/LAStools.zip\n",
"set_ProjectedCSTypeGeoKey: look-up for 2953 not implemented\n",
"/content/nb_2018_2466000_7437000.txt\n",
"not processed lasinfo (200101) report for '/content/data/nb_2018_2466000_7437000.laz'\n",
" lasinfo (200101) report for '/content/data/nb_2018_2466000_7437000.laz'\n",
"not processed reserved 0\n",
" reserved 0\n",
"not processed user ID 'LASF_Projection'\n",
" user ID 'LASF_Projection'\n",
"not processed record ID 34735\n",
" record ID 34735\n",
"not processed length after header 48\n",
" length after header 48\n",
"not processed description 'by LAStools of rapidlasso GmbH'\n",
" description 'by LAStools of rapidlasso GmbH'\n",
"not processed GeoKeyDirectoryTag version 1.1.0 number of keys 5\n",
" GeoKeyDirectoryTag version 1.1.0 number of keys 5\n",
"not processed the header is followed by 2 user-defined bytes\n",
" the header is followed by 2 user-defined bytes\n",
" X 246600000 246699999\n",
"\n",
" Y 743700000 743799999\n",
"\n",
" Z 13149 55484\n",
"\n",
" intensity 0 65535\n",
"\n",
" return_number 1 7\n",
"\n",
" number_of_returns 1 7\n",
"\n",
" edge_of_flight_line 0 1\n",
"\n",
" scan_direction_flag 0 0\n",
"\n",
" classification 1 18\n",
"\n",
" scan_angle_rank -30 30\n",
"\n",
" user_data 54 55\n",
"\n",
" point_source_ID 18508 48511\n",
"\n",
" gps_time 214749664.224682 214753129.683996\n",
"\n",
"header size ['227']\n",
"offset to point data ['331']\n",
"number var. length records ['1']\n",
"point data format ['1']\n",
"point data record length ['28']\n",
"number of point records ['23638168']\n",
"number of first returns ['9029446']\n",
"number of intermediate returns ['7456042']\n",
"number of last returns ['9038553']\n",
"number of single returns ['1885873']\n",
"nb_2018_2463000_7437000 /content/data/nb_2018_2463000_7437000.laz\n",
"ERROR: cannot open 'pcs.csv' file. maybe your LAStools distribution\n",
" has no .\\LAStools\\bin\\serf\\geo\\pcs.csv file. download the\n",
" latest version at http://lastools.org/download/LAStools.zip\n",
"set_ProjectedCSTypeGeoKey: look-up for 2953 not implemented\n",
"/content/nb_2018_2463000_7437000.txt\n",
"not processed lasinfo (200101) report for '/content/data/nb_2018_2463000_7437000.laz'\n",
" lasinfo (200101) report for '/content/data/nb_2018_2463000_7437000.laz'\n",
"not processed reserved 0\n",
" reserved 0\n",
"not processed user ID 'LASF_Projection'\n",
" user ID 'LASF_Projection'\n",
"not processed record ID 34735\n",
" record ID 34735\n",
"not processed length after header 48\n",
" length after header 48\n",
"not processed description 'by LAStools of rapidlasso GmbH'\n",
" description 'by LAStools of rapidlasso GmbH'\n",
"not processed GeoKeyDirectoryTag version 1.1.0 number of keys 5\n",
" GeoKeyDirectoryTag version 1.1.0 number of keys 5\n",
"not processed the header is followed by 2 user-defined bytes\n",
" the header is followed by 2 user-defined bytes\n",
" X 246300000 246399999\n",
"\n",
" Y 743700000 743799999\n",
"\n",
" Z 12637 51427\n",
"\n",
" intensity 0 65535\n",
"\n",
" return_number 1 7\n",
"\n",
" number_of_returns 1 7\n",
"\n",
" edge_of_flight_line 0 1\n",
"\n",
" scan_direction_flag 0 0\n",
"\n",
" classification 1 18\n",
"\n",
" scan_angle_rank -30 29\n",
"\n",
" user_data 54 55\n",
"\n",
" point_source_ID 18512 48603\n",
"\n",
" gps_time 214754825.018589 214830295.399732\n",
"\n",
"header size ['227']\n",
"offset to point data ['331']\n",
"number var. length records ['1']\n",
"point data format ['1']\n",
"point data record length ['28']\n",
"number of point records ['24632964']\n",
"number of first returns ['10106532']\n",
"number of intermediate returns ['6994790']\n",
"number of last returns ['10108836']\n",
"number of single returns ['2577194']\n",
"nb_2018_2465000_7437000 /content/data/nb_2018_2465000_7437000.laz\n",
"ERROR: cannot open 'pcs.csv' file. maybe your LAStools distribution\n",
" has no .\\LAStools\\bin\\serf\\geo\\pcs.csv file. download the\n",
" latest version at http://lastools.org/download/LAStools.zip\n",
"set_ProjectedCSTypeGeoKey: look-up for 2953 not implemented\n",
"/content/nb_2018_2465000_7437000.txt\n",
"not processed lasinfo (200101) report for '/content/data/nb_2018_2465000_7437000.laz'\n",
" lasinfo (200101) report for '/content/data/nb_2018_2465000_7437000.laz'\n",
"not processed reserved 0\n",
" reserved 0\n",
"not processed user ID 'LASF_Projection'\n",
" user ID 'LASF_Projection'\n",
"not processed record ID 34735\n",
" record ID 34735\n",
"not processed length after header 48\n",
" length after header 48\n",
"not processed description 'by LAStools of rapidlasso GmbH'\n",
" description 'by LAStools of rapidlasso GmbH'\n",
"not processed GeoKeyDirectoryTag version 1.1.0 number of keys 5\n",
" GeoKeyDirectoryTag version 1.1.0 number of keys 5\n",
"not processed the header is followed by 2 user-defined bytes\n",
" the header is followed by 2 user-defined bytes\n",
" X 246500000 246599999\n",
"\n",
" Y 743700000 743799999\n",
"\n",
" Z 12378 51885\n",
"\n",
" intensity 0 65535\n",
"\n",
" return_number 1 7\n",
"\n",
" number_of_returns 1 7\n",
"\n",
" edge_of_flight_line 0 1\n",
"\n",
" scan_direction_flag 0 0\n",
"\n",
" classification 1 18\n",
"\n",
" scan_angle_rank -30 30\n",
"\n",
" user_data 54 55\n",
"\n",
" point_source_ID 18509 48512\n",
"\n",
" gps_time 214750546.604055 214754841.898567\n",
"\n",
"header size ['227']\n",
"offset to point data ['331']\n",
"number var. length records ['1']\n",
"point data format ['1']\n",
"point data record length ['28']\n",
"number of point records ['21380793']\n",
"number of first returns ['9880755']\n",
"number of intermediate returns ['5270514']\n",
"number of last returns ['9880796']\n",
"number of single returns ['3651272']\n",
"nb_2018_2463000_7438000 /content/data/nb_2018_2463000_7438000.laz\n",
"ERROR: cannot open 'pcs.csv' file. maybe your LAStools distribution\n",
" has no .\\LAStools\\bin\\serf\\geo\\pcs.csv file. download the\n",
" latest version at http://lastools.org/download/LAStools.zip\n",
"set_ProjectedCSTypeGeoKey: look-up for 2953 not implemented\n",
"/content/nb_2018_2463000_7438000.txt\n",
"not processed lasinfo (200101) report for '/content/data/nb_2018_2463000_7438000.laz'\n",
" lasinfo (200101) report for '/content/data/nb_2018_2463000_7438000.laz'\n",
"not processed reserved 0\n",
" reserved 0\n",
"not processed user ID 'LASF_Projection'\n",
" user ID 'LASF_Projection'\n",
"not processed record ID 34735\n",
" record ID 34735\n",
"not processed length after header 48\n",
" length after header 48\n",
"not processed description 'by LAStools of rapidlasso GmbH'\n",
" description 'by LAStools of rapidlasso GmbH'\n",
"not processed GeoKeyDirectoryTag version 1.1.0 number of keys 5\n",
" GeoKeyDirectoryTag version 1.1.0 number of keys 5\n",
"not processed the header is followed by 2 user-defined bytes\n",
" the header is followed by 2 user-defined bytes\n",
" X 246300000 246399999\n",
"\n",
" Y 743800000 743899999\n",
"\n",
" Z 13539 18085\n",
"\n",
" intensity 0 65535\n",
"\n",
" return_number 1 7\n",
"\n",
" number_of_returns 1 7\n",
"\n",
" edge_of_flight_line 0 1\n",
"\n",
" scan_direction_flag 0 0\n",
"\n",
" classification 1 18\n",
"\n",
" scan_angle_rank -30 28\n",
"\n",
" user_data 54 55\n",
"\n",
" point_source_ID 18512 48603\n",
"\n",
" gps_time 214754838.528104 214830281.636103\n",
"\n",
"header size ['227']\n",
"offset to point data ['331']\n",
"number var. length records ['1']\n",
"point data format ['1']\n",
"point data record length ['28']\n",
"number of point records ['21909619']\n",
"number of first returns ['9800912']\n",
"number of intermediate returns ['5466466']\n",
"number of last returns ['9800749']\n",
"number of single returns ['3158508']\n",
"nb_2018_2464000_7435000 /content/data/nb_2018_2464000_7435000.laz\n",
"ERROR: cannot open 'pcs.csv' file. maybe your LAStools distribution\n",
" has no .\\LAStools\\bin\\serf\\geo\\pcs.csv file. download the\n",
" latest version at http://lastools.org/download/LAStools.zip\n",
"set_ProjectedCSTypeGeoKey: look-up for 2953 not implemented\n",
"/content/nb_2018_2464000_7435000.txt\n",
"not processed lasinfo (200101) report for '/content/data/nb_2018_2464000_7435000.laz'\n",
" lasinfo (200101) report for '/content/data/nb_2018_2464000_7435000.laz'\n",
"not processed reserved 0\n",
" reserved 0\n",
"not processed user ID 'LASF_Projection'\n",
" user ID 'LASF_Projection'\n",
"not processed record ID 34735\n",
" record ID 34735\n",
"not processed length after header 48\n",
" length after header 48\n",
"not processed description 'by LAStools of rapidlasso GmbH'\n",
" description 'by LAStools of rapidlasso GmbH'\n",
"not processed GeoKeyDirectoryTag version 1.1.0 number of keys 5\n",
" GeoKeyDirectoryTag version 1.1.0 number of keys 5\n",
"not processed the header is followed by 2 user-defined bytes\n",
" the header is followed by 2 user-defined bytes\n",
" X 246400000 246499999\n",
"\n",
" Y 743500000 743599999\n",
"\n",
" Z 9695 15398\n",
"\n",
" intensity 0 65535\n",
"\n",
" return_number 1 7\n",
"\n",
" number_of_returns 1 7\n",
"\n",
" edge_of_flight_line 0 1\n",
"\n",
" scan_direction_flag 0 0\n",
"\n",
" classification 1 18\n",
"\n",
" scan_angle_rank -30 30\n",
"\n",
" user_data 54 55\n",
"\n",
" point_source_ID 18510 48602\n",
"\n",
" gps_time 214752205.004143 214829375.186656\n",
"\n",
"header size ['227']\n",
"offset to point data ['331']\n",
"number var. length records ['1']\n",
"point data format ['1']\n",
"point data record length ['28']\n",
"number of point records ['21292172']\n",
"number of first returns ['9132864']\n",
"number of intermediate returns ['5653317']\n",
"number of last returns ['9136799']\n",
"number of single returns ['2630808']\n",
"{\n",
" \"type\": \"FeatureCollection\",\n",
" \"crs\": {\n",
" \"type\": \"name\",\n",
" \"properties\": {\n",
" \"name\": \"urn:ogc:def:crs:EPSG::2953\"\n",
" }\n",
" },\n",
" \"features\": [\n",
" {\n",
" \"type\": \"Feature\",\n",
" \"properties\": {\n",
" \"id\": \"nb_2018_2463000_7434000\",\n",
" \"name\": \"nb_2018_2463000_7434000\",\n",
" \"crs\": {\n",
" \"type\": \"name\",\n",
" \"properties\": {\n",
" \"name\": \"urn:ogc:def:crs:EPSG::2953\"\n",
" }\n",
" },\n",
" \"featureclass\": \"LIDAR\",\n",
" \"LAZ Metadata\": \"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/meta/meta_2018_aoi1.xml\",\n",
" \"onlink\": \"https://geonb.snb.ca/li/\",\n",
" \"histogram of classification of points\": [\n",
" {\n",
" \"name\": \"unclassified\",\n",
" \"label\": 1,\n",
" \"count\": 91\n",
" },\n",
" {\n",
" \"name\": \"ground\",\n",
" \"label\": 2,\n",
" \"count\": 2185856\n",
" },\n",
" {\n",
" \"name\": \"low vegetation\",\n",
" \"label\": 3,\n",
" \"count\": 1631259\n",
" },\n",
" {\n",
" \"name\": \"medium vegetation\",\n",
" \"label\": 4,\n",
" \"count\": 1651525\n",
" },\n",
" {\n",
" \"name\": \"high vegetation\",\n",
" \"label\": 5,\n",
" \"count\": 17728529\n",
" },\n",
" {\n",
" \"name\": \"noise\",\n",
" \"label\": 7,\n",
" \"count\": 3497\n",
" },\n",
" {\n",
" \"name\": \"keypoint\",\n",
" \"label\": 8,\n",
" \"count\": 10768\n",
" }\n",
" ],\n",
" \"class_names\": [\n",
" \"unclassified\",\n",
" \"ground\",\n",
" \"low vegetation\",\n",
" \"medium vegetation\",\n",
" \"high vegetation\",\n",
" \"noise\",\n",
" \"keypoint\"\n",
" ],\n",
" \"class_labels\": [\n",
" 1,\n",
" 2,\n",
" 3,\n",
" 4,\n",
" 5,\n",
" 7,\n",
" 8\n",
" ],\n",
" \"class_count\": [\n",
" 91,\n",
" 2185856,\n",
" 1631259,\n",
" 1651525,\n",
" 17728529,\n",
" 3497,\n",
" 10768\n",
" ],\n",
" \"class_frequency\": [\n",
" 0.0003920466233907509,\n",
" 9.417114989213331,\n",
" 7.027797613470033,\n",
" 7.115107688960548,\n",
" 76.3781311223627,\n",
" 0.015065791670301715,\n",
" 0.04639074769968798\n",
" ],\n",
" \"bbox\": [\n",
" 246300000,\n",
" 743400000,\n",
" 246399999,\n",
" 743499999\n",
" ]\n",
" },\n",
" \"geometry\": {\n",
" \"type\": \"Polygon\",\n",
" \"coordinates\": [\n",
" [\n",
" [\n",
" 246300000,\n",
" 743400000\n",
" ],\n",
" [\n",
" 246399999,\n",
" 743400000\n",
" ],\n",
" [\n",
" 246399999,\n",
" 743499999\n",
" ],\n",
" [\n",
" 246300000,\n",
" 743499999\n",
" ]\n",
" ]\n",
" ]\n",
" }\n",
" },\n",
" {\n",
" \"type\": \"Feature\",\n",
" \"properties\": {\n",
" \"id\": \"nb_2018_2463000_7436000\",\n",
" \"name\": \"nb_2018_2463000_7436000\",\n",
" \"crs\": {\n",
" \"type\": \"name\",\n",
" \"properties\": {\n",
" \"name\": \"urn:ogc:def:crs:EPSG::2953\"\n",
" }\n",
" },\n",
" \"featureclass\": \"LIDAR\",\n",
" \"LAZ Metadata\": \"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/meta/meta_2018_aoi1.xml\",\n",
" \"onlink\": \"https://geonb.snb.ca/li/\",\n",
" \"histogram of classification of points\": [\n",
" {\n",
" \"name\": \"unclassified\",\n",
" \"label\": 1,\n",
" \"count\": 39\n",
" },\n",
" {\n",
" \"name\": \"ground\",\n",
" \"label\": 2,\n",
" \"count\": 1491588\n",
" },\n",
" {\n",
" \"name\": \"low vegetation\",\n",
" \"label\": 3,\n",
" \"count\": 1166486\n",
" },\n",
" {\n",
" \"name\": \"medium vegetation\",\n",
" \"label\": 4,\n",
" \"count\": 1092356\n",
" },\n",
" {\n",
" \"name\": \"high vegetation\",\n",
" \"label\": 5,\n",
" \"count\": 21998288\n",
" },\n",
" {\n",
" \"name\": \"building\",\n",
" \"label\": 6,\n",
" \"count\": 628\n",
" },\n",
" {\n",
" \"name\": \"noise\",\n",
" \"label\": 7,\n",
" \"count\": 2337\n",
" },\n",
" {\n",
" \"name\": \"keypoint\",\n",
" \"label\": 8,\n",
" \"count\": 10659\n",
" }\n",
" ],\n",
" \"class_names\": [\n",
" \"unclassified\",\n",
" \"ground\",\n",
" \"low vegetation\",\n",
" \"medium vegetation\",\n",
" \"high vegetation\",\n",
" \"building\",\n",
" \"noise\",\n",
" \"keypoint\"\n",
" ],\n",
" \"class_labels\": [\n",
" 1,\n",
" 2,\n",
" 3,\n",
" 4,\n",
" 5,\n",
" 6,\n",
" 7,\n",
" 8\n",
" ],\n",
" \"class_count\": [\n",
" 39,\n",
" 1491588,\n",
" 1166486,\n",
" 1092356,\n",
" 21998288,\n",
" 628,\n",
" 2337,\n",
" 10659\n",
" ],\n",
" \"class_frequency\": [\n",
" 0.00015138352313010198,\n",
" 5.789790935861092,\n",
" 4.527865650306158,\n",
" 4.240120507495018,\n",
" 85.38918821206782,\n",
" 0.002437662885274463,\n",
" 0.009071366501411497,\n",
" 0.041374281360096334\n",
" ],\n",
" \"bbox\": [\n",
" 246300000,\n",
" 743600000,\n",
" 246399999,\n",
" 743699999\n",
" ]\n",
" },\n",
" \"geometry\": {\n",
" \"type\": \"Polygon\",\n",
" \"coordinates\": [\n",
" [\n",
" [\n",
" 246300000,\n",
" 743600000\n",
" ],\n",
" [\n",
" 246399999,\n",
" 743600000\n",
" ],\n",
" [\n",
" 246399999,\n",
" 743699999\n",
" ],\n",
" [\n",
" 246300000,\n",
" 743699999\n",
" ]\n",
" ]\n",
" ]\n",
" }\n",
" },\n",
" {\n",
" \"type\": \"Feature\",\n",
" \"properties\": {\n",
" \"id\": \"nb_2018_2464000_7434000\",\n",
" \"name\": \"nb_2018_2464000_7434000\",\n",
" \"crs\": {\n",
" \"type\": \"name\",\n",
" \"properties\": {\n",
" \"name\": \"urn:ogc:def:crs:EPSG::2953\"\n",
" }\n",
" },\n",
" \"featureclass\": \"LIDAR\",\n",
" \"LAZ Metadata\": \"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/meta/meta_2018_aoi1.xml\",\n",
" \"onlink\": \"https://geonb.snb.ca/li/\",\n",
" \"histogram of classification of points\": [\n",
" {\n",
" \"name\": \"unclassified\",\n",
" \"label\": 1,\n",
" \"count\": 107\n",
" },\n",
" {\n",
" \"name\": \"ground\",\n",
" \"label\": 2,\n",
" \"count\": 2107496\n",
" },\n",
" {\n",
" \"name\": \"low vegetation\",\n",
" \"label\": 3,\n",
" \"count\": 2312676\n",
" },\n",
" {\n",
" \"name\": \"medium vegetation\",\n",
" \"label\": 4,\n",
" \"count\": 2757997\n",
" },\n",
" {\n",
" \"name\": \"high vegetation\",\n",
" \"label\": 5,\n",
" \"count\": 12705681\n",
" },\n",
" {\n",
" \"name\": \"noise\",\n",
" \"label\": 7,\n",
" \"count\": 5947\n",
" },\n",
" {\n",
" \"name\": \"keypoint\",\n",
" \"label\": 8,\n",
" \"count\": 10722\n",
" }\n",
" ],\n",
" \"class_names\": [\n",
" \"unclassified\",\n",
" \"ground\",\n",
" \"low vegetation\",\n",
" \"medium vegetation\",\n",
" \"high vegetation\",\n",
" \"noise\",\n",
" \"keypoint\"\n",
" ],\n",
" \"class_labels\": [\n",
" 1,\n",
" 2,\n",
" 3,\n",
" 4,\n",
" 5,\n",
" 7,\n",
" 8\n",
" ],\n",
" \"class_count\": [\n",
" 107,\n",
" 2107496,\n",
" 2312676,\n",
" 2757997,\n",
" 12705681,\n",
" 5947,\n",
" 10722\n",
" ],\n",
" \"class_frequency\": [\n",
" 0.0005376715285237762,\n",
" 10.590099025025646,\n",
" 11.621121868226659,\n",
" 13.858845445364382,\n",
" 63.84563480565888,\n",
" 0.029883482057298096,\n",
" 0.053877702138616146\n",
" ],\n",
" \"bbox\": [\n",
" 246400000,\n",
" 743400000,\n",
" 246499999,\n",
" 743499999\n",
" ]\n",
" },\n",
" \"geometry\": {\n",
" \"type\": \"Polygon\",\n",
" \"coordinates\": [\n",
" [\n",
" [\n",
" 246400000,\n",
" 743400000\n",
" ],\n",
" [\n",
" 246499999,\n",
" 743400000\n",
" ],\n",
" [\n",
" 246499999,\n",
" 743499999\n",
" ],\n",
" [\n",
" 246400000,\n",
" 743499999\n",
" ]\n",
" ]\n",
" ]\n",
" }\n",
" },\n",
" {\n",
" \"type\": \"Feature\",\n",
" \"properties\": {\n",
" \"id\": \"nb_2018_2465000_7435000\",\n",
" \"name\": \"nb_2018_2465000_7435000\",\n",
" \"crs\": {\n",
" \"type\": \"name\",\n",
" \"properties\": {\n",
" \"name\": \"urn:ogc:def:crs:EPSG::2953\"\n",
" }\n",
" },\n",
" \"featureclass\": \"LIDAR\",\n",
" \"LAZ Metadata\": \"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/meta/meta_2018_aoi1.xml\",\n",
" \"onlink\": \"https://geonb.snb.ca/li/\",\n",
" \"histogram of classification of points\": [\n",
" {\n",
" \"name\": \"unclassified\",\n",
" \"label\": 1,\n",
" \"count\": 27\n",
" },\n",
" {\n",
" \"name\": \"ground\",\n",
" \"label\": 2,\n",
" \"count\": 2767664\n",
" },\n",
" {\n",
" \"name\": \"low vegetation\",\n",
" \"label\": 3,\n",
" \"count\": 2530027\n",
" },\n",
" {\n",
" \"name\": \"medium vegetation\",\n",
" \"label\": 4,\n",
" \"count\": 2828566\n",
" },\n",
" {\n",
" \"name\": \"high vegetation\",\n",
" \"label\": 5,\n",
" \"count\": 10364720\n",
" },\n",
" {\n",
" \"name\": \"noise\",\n",
" \"label\": 7,\n",
" \"count\": 11045\n",
" },\n",
" {\n",
" \"name\": \"keypoint\",\n",
" \"label\": 8,\n",
" \"count\": 11354\n",
" }\n",
" ],\n",
" \"class_names\": [\n",
" \"unclassified\",\n",
" \"ground\",\n",
" \"low vegetation\",\n",
" \"medium vegetation\",\n",
" \"high vegetation\",\n",
" \"noise\",\n",
" \"keypoint\"\n",
" ],\n",
" \"class_labels\": [\n",
" 1,\n",
" 2,\n",
" 3,\n",
" 4,\n",
" 5,\n",
" 7,\n",
" 8\n",
" ],\n",
" \"class_count\": [\n",
" 27,\n",
" 2767664,\n",
" 2530027,\n",
" 2828566,\n",
" 10364720,\n",
" 11045,\n",
" 11354\n",
" ],\n",
" \"class_frequency\": [\n",
" 0.00014584028662909787,\n",
" 14.949515224186499,\n",
" 13.665920846642834,\n",
" 15.27847689590077,\n",
" 55.98495317149419,\n",
" 0.05965948021549577,\n",
" 0.06132854127358433\n",
" ],\n",
" \"bbox\": [\n",
" 246500000,\n",
" 743500000,\n",
" 246599999,\n",
" 743599999\n",
" ]\n",
" },\n",
" \"geometry\": {\n",
" \"type\": \"Polygon\",\n",
" \"coordinates\": [\n",
" [\n",
" [\n",
" 246500000,\n",
" 743500000\n",
" ],\n",
" [\n",
" 246599999,\n",
" 743500000\n",
" ],\n",
" [\n",
" 246599999,\n",
" 743599999\n",
" ],\n",
" [\n",
" 246500000,\n",
" 743599999\n",
" ]\n",
" ]\n",
" ]\n",
" }\n",
" },\n",
" {\n",
" \"type\": \"Feature\",\n",
" \"properties\": {\n",
" \"id\": \"nb_2018_2464000_7437000\",\n",
" \"name\": \"nb_2018_2464000_7437000\",\n",
" \"crs\": {\n",
" \"type\": \"name\",\n",
" \"properties\": {\n",
" \"name\": \"urn:ogc:def:crs:EPSG::2953\"\n",
" }\n",
" },\n",
" \"featureclass\": \"LIDAR\",\n",
" \"LAZ Metadata\": \"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/meta/meta_2018_aoi1.xml\",\n",
" \"onlink\": \"https://geonb.snb.ca/li/\",\n",
" \"histogram of classification of points\": [\n",
" {\n",
" \"name\": \"unclassified\",\n",
" \"label\": 1,\n",
" \"count\": 55\n",
" },\n",
" {\n",
" \"name\": \"ground\",\n",
" \"label\": 2,\n",
" \"count\": 1932161\n",
" },\n",
" {\n",
" \"name\": \"low vegetation\",\n",
" \"label\": 3,\n",
" \"count\": 1755421\n",
" },\n",
" {\n",
" \"name\": \"medium vegetation\",\n",
" \"label\": 4,\n",
" \"count\": 1636968\n",
" },\n",
" {\n",
" \"name\": \"high vegetation\",\n",
" \"label\": 5,\n",
" \"count\": 18496095\n",
" },\n",
" {\n",
" \"name\": \"noise\",\n",
" \"label\": 7,\n",
" \"count\": 2250\n",
" },\n",
" {\n",
" \"name\": \"keypoint\",\n",
" \"label\": 8,\n",
" \"count\": 10718\n",
" }\n",
" ],\n",
" \"class_names\": [\n",
" \"unclassified\",\n",
" \"ground\",\n",
" \"low vegetation\",\n",
" \"medium vegetation\",\n",
" \"high vegetation\",\n",
" \"noise\",\n",
" \"keypoint\"\n",
" ],\n",
" \"class_labels\": [\n",
" 1,\n",
" 2,\n",
" 3,\n",
" 4,\n",
" 5,\n",
" 7,\n",
" 8\n",
" ],\n",
" \"class_count\": [\n",
" 55,\n",
" 1932161,\n",
" 1755421,\n",
" 1636968,\n",
" 18496095,\n",
" 2250,\n",
" 10718\n",
" ],\n",
" \"class_frequency\": [\n",
" 0.0002307659903628766,\n",
" 8.106855394645928,\n",
" 7.365299373978021,\n",
" 6.868300758406133,\n",
" 77.60490328219727,\n",
" 0.009440426878481314,\n",
" 0.04496999790380566\n",
" ],\n",
" \"bbox\": [\n",
" 246400000,\n",
" 743700000,\n",
" 246499999,\n",
" 743799999\n",
" ]\n",
" },\n",
" \"geometry\": {\n",
" \"type\": \"Polygon\",\n",
" \"coordinates\": [\n",
" [\n",
" [\n",
" 246400000,\n",
" 743700000\n",
" ],\n",
" [\n",
" 246499999,\n",
" 743700000\n",
" ],\n",
" [\n",
" 246499999,\n",
" 743799999\n",
" ],\n",
" [\n",
" 246400000,\n",
" 743799999\n",
" ]\n",
" ]\n",
" ]\n",
" }\n",
" },\n",
" {\n",
" \"type\": \"Feature\",\n",
" \"properties\": {\n",
" \"id\": \"nb_2018_2463000_7435000\",\n",
" \"name\": \"nb_2018_2463000_7435000\",\n",
" \"crs\": {\n",
" \"type\": \"name\",\n",
" \"properties\": {\n",
" \"name\": \"urn:ogc:def:crs:EPSG::2953\"\n",
" }\n",
" },\n",
" \"featureclass\": \"LIDAR\",\n",
" \"LAZ Metadata\": \"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/meta/meta_2018_aoi1.xml\",\n",
" \"onlink\": \"https://geonb.snb.ca/li/\",\n",
" \"histogram of classification of points\": [\n",
" {\n",
" \"name\": \"unclassified\",\n",
" \"label\": 1,\n",
" \"count\": 49\n",
" },\n",
" {\n",
" \"name\": \"ground\",\n",
" \"label\": 2,\n",
" \"count\": 1937841\n",
" },\n",
" {\n",
" \"name\": \"low vegetation\",\n",
" \"label\": 3,\n",
" \"count\": 1196236\n",
" },\n",
" {\n",
" \"name\": \"medium vegetation\",\n",
" \"label\": 4,\n",
" \"count\": 869866\n",
" },\n",
" {\n",
" \"name\": \"high vegetation\",\n",
" \"label\": 5,\n",
" \"count\": 21948373\n",
" },\n",
" {\n",
" \"name\": \"noise\",\n",
" \"label\": 7,\n",
" \"count\": 1289\n",
" },\n",
" {\n",
" \"name\": \"keypoint\",\n",
" \"label\": 8,\n",
" \"count\": 10757\n",
" }\n",
" ],\n",
" \"class_names\": [\n",
" \"unclassified\",\n",
" \"ground\",\n",
" \"low vegetation\",\n",
" \"medium vegetation\",\n",
" \"high vegetation\",\n",
" \"noise\",\n",
" \"keypoint\"\n",
" ],\n",
" \"class_labels\": [\n",
" 1,\n",
" 2,\n",
" 3,\n",
" 4,\n",
" 5,\n",
" 7,\n",
" 8\n",
" ],\n",
" \"class_count\": [\n",
" 49,\n",
" 1937841,\n",
" 1196236,\n",
" 869866,\n",
" 21948373,\n",
" 1289,\n",
" 10757\n",
" ],\n",
" \"class_frequency\": [\n",
" 0.00018871985965712837,\n",
" 7.463450644037333,\n",
" 4.607214082383767,\n",
" 3.350224274296074,\n",
" 84.53252800535317,\n",
" 0.004964487736694663,\n",
" 0.04142978633330061\n",
" ],\n",
" \"bbox\": [\n",
" 246300000,\n",
" 743500000,\n",
" 246399999,\n",
" 743599999\n",
" ]\n",
" },\n",
" \"geometry\": {\n",
" \"type\": \"Polygon\",\n",
" \"coordinates\": [\n",
" [\n",
" [\n",
" 246300000,\n",
" 743500000\n",
" ],\n",
" [\n",
" 246399999,\n",
" 743500000\n",
" ],\n",
" [\n",
" 246399999,\n",
" 743599999\n",
" ],\n",
" [\n",
" 246300000,\n",
" 743599999\n",
" ]\n",
" ]\n",
" ]\n",
" }\n",
" },\n",
" {\n",
" \"type\": \"Feature\",\n",
" \"properties\": {\n",
" \"id\": \"nb_2018_2466000_7436000\",\n",
" \"name\": \"nb_2018_2466000_7436000\",\n",
" \"crs\": {\n",
" \"type\": \"name\",\n",
" \"properties\": {\n",
" \"name\": \"urn:ogc:def:crs:EPSG::2953\"\n",
" }\n",
" },\n",
" \"featureclass\": \"LIDAR\",\n",
" \"LAZ Metadata\": \"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/meta/meta_2018_aoi1.xml\",\n",
" \"onlink\": \"https://geonb.snb.ca/li/\",\n",
" \"histogram of classification of points\": [\n",
" {\n",
" \"name\": \"unclassified\",\n",
" \"label\": 1,\n",
" \"count\": 12\n",
" },\n",
" {\n",
" \"name\": \"ground\",\n",
" \"label\": 2,\n",
" \"count\": 2557619\n",
" },\n",
" {\n",
" \"name\": \"low vegetation\",\n",
" \"label\": 3,\n",
" \"count\": 2254866\n",
" },\n",
" {\n",
" \"name\": \"medium vegetation\",\n",
" \"label\": 4,\n",
" \"count\": 2732560\n",
" },\n",
" {\n",
" \"name\": \"high vegetation\",\n",
" \"label\": 5,\n",
" \"count\": 13172989\n",
" },\n",
" {\n",
" \"name\": \"noise\",\n",
" \"label\": 7,\n",
" \"count\": 4279\n",
" },\n",
" {\n",
" \"name\": \"keypoint\",\n",
" \"label\": 8,\n",
" \"count\": 10729\n",
" }\n",
" ],\n",
" \"class_names\": [\n",
" \"unclassified\",\n",
" \"ground\",\n",
" \"low vegetation\",\n",
" \"medium vegetation\",\n",
" \"high vegetation\",\n",
" \"noise\",\n",
" \"keypoint\"\n",
" ],\n",
" \"class_labels\": [\n",
" 1,\n",
" 2,\n",
" 3,\n",
" 4,\n",
" 5,\n",
" 7,\n",
" 8\n",
" ],\n",
" \"class_count\": [\n",
" 12,\n",
" 2557619,\n",
" 2254866,\n",
" 2732560,\n",
" 13172989,\n",
" 4279,\n",
" 10729\n",
" ],\n",
" \"class_frequency\": [\n",
" 5.787859328394167e-05,\n",
" 12.3359491563568,\n",
" 10.875706010315701,\n",
" 13.179727405330638,\n",
" 63.53617272206979,\n",
" 0.0206385417218322,\n",
" 0.05174828561195085\n",
" ],\n",
" \"bbox\": [\n",
" 246600000,\n",
" 743600000,\n",
" 246699999,\n",
" 743699999\n",
" ]\n",
" },\n",
" \"geometry\": {\n",
" \"type\": \"Polygon\",\n",
" \"coordinates\": [\n",
" [\n",
" [\n",
" 246600000,\n",
" 743600000\n",
" ],\n",
" [\n",
" 246699999,\n",
" 743600000\n",
" ],\n",
" [\n",
" 246699999,\n",
" 743699999\n",
" ],\n",
" [\n",
" 246600000,\n",
" 743699999\n",
" ]\n",
" ]\n",
" ]\n",
" }\n",
" },\n",
" {\n",
" \"type\": \"Feature\",\n",
" \"properties\": {\n",
" \"id\": \"nb_2018_2464000_7438000\",\n",
" \"name\": \"nb_2018_2464000_7438000\",\n",
" \"crs\": {\n",
" \"type\": \"name\",\n",
" \"properties\": {\n",
" \"name\": \"urn:ogc:def:crs:EPSG::2953\"\n",
" }\n",
" },\n",
" \"featureclass\": \"LIDAR\",\n",
" \"LAZ Metadata\": \"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/meta/meta_2018_aoi1.xml\",\n",
" \"onlink\": \"https://geonb.snb.ca/li/\",\n",
" \"histogram of classification of points\": [\n",
" {\n",
" \"name\": \"unclassified\",\n",
" \"label\": 1,\n",
" \"count\": 52\n",
" },\n",
" {\n",
" \"name\": \"ground\",\n",
" \"label\": 2,\n",
" \"count\": 1635722\n",
" },\n",
" {\n",
" \"name\": \"low vegetation\",\n",
" \"label\": 3,\n",
" \"count\": 1475789\n",
" },\n",
" {\n",
" \"name\": \"medium vegetation\",\n",
" \"label\": 4,\n",
" \"count\": 1872108\n",
" },\n",
" {\n",
" \"name\": \"high vegetation\",\n",
" \"label\": 5,\n",
" \"count\": 17740278\n",
" },\n",
" {\n",
" \"name\": \"noise\",\n",
" \"label\": 7,\n",
" \"count\": 3847\n",
" },\n",
" {\n",
" \"name\": \"keypoint\",\n",
" \"label\": 8,\n",
" \"count\": 10673\n",
" }\n",
" ],\n",
" \"class_names\": [\n",
" \"unclassified\",\n",
" \"ground\",\n",
" \"low vegetation\",\n",
" \"medium vegetation\",\n",
" \"high vegetation\",\n",
" \"noise\",\n",
" \"keypoint\"\n",
" ],\n",
" \"class_labels\": [\n",
" 1,\n",
" 2,\n",
" 3,\n",
" 4,\n",
" 5,\n",
" 7,\n",
" 8\n",
" ],\n",
" \"class_count\": [\n",
" 52,\n",
" 1635722,\n",
" 1475789,\n",
" 1872108,\n",
" 17740278,\n",
" 3847,\n",
" 10673\n",
" ],\n",
" \"class_frequency\": [\n",
" 0.00022868734038338287,\n",
" 7.193632957434382,\n",
" 6.490274257251006,\n",
" 8.233219219816426,\n",
" 78.01878833618922,\n",
" 0.016918465354901425,\n",
" 0.04693807661368934\n",
" ],\n",
" \"bbox\": [\n",
" 246400000,\n",
" 743800000,\n",
" 246499999,\n",
" 743899999\n",
" ]\n",
" },\n",
" \"geometry\": {\n",
" \"type\": \"Polygon\",\n",
" \"coordinates\": [\n",
" [\n",
" [\n",
" 246400000,\n",
" 743800000\n",
" ],\n",
" [\n",
" 246499999,\n",
" 743800000\n",
" ],\n",
" [\n",
" 246499999,\n",
" 743899999\n",
" ],\n",
" [\n",
" 246400000,\n",
" 743899999\n",
" ]\n",
" ]\n",
" ]\n",
" }\n",
" },\n",
" {\n",
" \"type\": \"Feature\",\n",
" \"properties\": {\n",
" \"id\": \"nb_2018_2466000_7438000\",\n",
" \"name\": \"nb_2018_2466000_7438000\",\n",
" \"crs\": {\n",
" \"type\": \"name\",\n",
" \"properties\": {\n",
" \"name\": \"urn:ogc:def:crs:EPSG::2953\"\n",
" }\n",
" },\n",
" \"featureclass\": \"LIDAR\",\n",
" \"LAZ Metadata\": \"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/meta/meta_2018_aoi1.xml\",\n",
" \"onlink\": \"https://geonb.snb.ca/li/\",\n",
" \"histogram of classification of points\": [\n",
" {\n",
" \"name\": \"unclassified\",\n",
" \"label\": 1,\n",
" \"count\": 10\n",
" },\n",
" {\n",
" \"name\": \"ground\",\n",
" \"label\": 2,\n",
" \"count\": 1697649\n",
" },\n",
" {\n",
" \"name\": \"low vegetation\",\n",
" \"label\": 3,\n",
" \"count\": 1098225\n",
" },\n",
" {\n",
" \"name\": \"medium vegetation\",\n",
" \"label\": 4,\n",
" \"count\": 865135\n",
" },\n",
" {\n",
" \"name\": \"high vegetation\",\n",
" \"label\": 5,\n",
" \"count\": 19306823\n",
" },\n",
" {\n",
" \"name\": \"building\",\n",
" \"label\": 6,\n",
" \"count\": 304\n",
" },\n",
" {\n",
" \"name\": \"noise\",\n",
" \"label\": 7,\n",
" \"count\": 2272\n",
" },\n",
" {\n",
" \"name\": \"keypoint\",\n",
" \"label\": 8,\n",
" \"count\": 10700\n",
" }\n",
" ],\n",
" \"class_names\": [\n",
" \"unclassified\",\n",
" \"ground\",\n",
" \"low vegetation\",\n",
" \"medium vegetation\",\n",
" \"high vegetation\",\n",
" \"building\",\n",
" \"noise\",\n",
" \"keypoint\"\n",
" ],\n",
" \"class_labels\": [\n",
" 1,\n",
" 2,\n",
" 3,\n",
" 4,\n",
" 5,\n",
" 6,\n",
" 7,\n",
" 8\n",
" ],\n",
" \"class_count\": [\n",
" 10,\n",
" 1697649,\n",
" 1098225,\n",
" 865135,\n",
" 19306823,\n",
" 304,\n",
" 2272,\n",
" 10700\n",
" ],\n",
" \"class_frequency\": [\n",
" 4.351398395848279e-05,\n",
" 7.387147135313435,\n",
" 4.778814503280476,\n",
" 3.7645470511922006,\n",
" 84.01167863112666,\n",
" 0.0013228251123378768,\n",
" 0.009886377155367288,\n",
" 0.046559962835576583\n",
" ],\n",
" \"bbox\": [\n",
" 246600000,\n",
" 743800000,\n",
" 246699999,\n",
" 743899999\n",
" ]\n",
" },\n",
" \"geometry\": {\n",
" \"type\": \"Polygon\",\n",
" \"coordinates\": [\n",
" [\n",
" [\n",
" 246600000,\n",
" 743800000\n",
" ],\n",
" [\n",
" 246699999,\n",
" 743800000\n",
" ],\n",
" [\n",
" 246699999,\n",
" 743899999\n",
" ],\n",
" [\n",
" 246600000,\n",
" 743899999\n",
" ]\n",
" ]\n",
" ]\n",
" }\n",
" },\n",
" {\n",
" \"type\": \"Feature\",\n",
" \"properties\": {\n",
" \"id\": \"nb_2018_2466000_7434000\",\n",
" \"name\": \"nb_2018_2466000_7434000\",\n",
" \"crs\": {\n",
" \"type\": \"name\",\n",
" \"properties\": {\n",
" \"name\": \"urn:ogc:def:crs:EPSG::2953\"\n",
" }\n",
" },\n",
" \"featureclass\": \"LIDAR\",\n",
" \"LAZ Metadata\": \"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/meta/meta_2018_aoi1.xml\",\n",
" \"onlink\": \"https://geonb.snb.ca/li/\",\n",
" \"histogram of classification of points\": [\n",
" {\n",
" \"name\": \"unclassified\",\n",
" \"label\": 1,\n",
" \"count\": 49\n",
" },\n",
" {\n",
" \"name\": \"ground\",\n",
" \"label\": 2,\n",
" \"count\": 2893234\n",
" },\n",
" {\n",
" \"name\": \"low vegetation\",\n",
" \"label\": 3,\n",
" \"count\": 2093070\n",
" },\n",
" {\n",
" \"name\": \"medium vegetation\",\n",
" \"label\": 4,\n",
" \"count\": 2211980\n",
" },\n",
" {\n",
" \"name\": \"high vegetation\",\n",
" \"label\": 5,\n",
" \"count\": 14628147\n",
" },\n",
" {\n",
" \"name\": \"noise\",\n",
" \"label\": 7,\n",
" \"count\": 12669\n",
" },\n",
" {\n",
" \"name\": \"keypoint\",\n",
" \"label\": 8,\n",
" \"count\": 10923\n",
" }\n",
" ],\n",
" \"class_names\": [\n",
" \"unclassified\",\n",
" \"ground\",\n",
" \"low vegetation\",\n",
" \"medium vegetation\",\n",
" \"high vegetation\",\n",
" \"noise\",\n",
" \"keypoint\"\n",
" ],\n",
" \"class_labels\": [\n",
" 1,\n",
" 2,\n",
" 3,\n",
" 4,\n",
" 5,\n",
" 7,\n",
" 8\n",
" ],\n",
" \"class_count\": [\n",
" 49,\n",
" 2893234,\n",
" 2093070,\n",
" 2211980,\n",
" 14628147,\n",
" 12669,\n",
" 10923\n",
" ],\n",
" \"class_frequency\": [\n",
" 0.00022425555394050878,\n",
" 13.24130190509212,\n",
" 9.57923616910736,\n",
" 10.12344490214952,\n",
" 66.94782058384064,\n",
" 0.05798150230351644,\n",
" 0.04999068195290158\n",
" ],\n",
" \"bbox\": [\n",
" 246600000,\n",
" 743400000,\n",
" 246699999,\n",
" 743499999\n",
" ]\n",
" },\n",
" \"geometry\": {\n",
" \"type\": \"Polygon\",\n",
" \"coordinates\": [\n",
" [\n",
" [\n",
" 246600000,\n",
" 743400000\n",
" ],\n",
" [\n",
" 246699999,\n",
" 743400000\n",
" ],\n",
" [\n",
" 246699999,\n",
" 743499999\n",
" ],\n",
" [\n",
" 246600000,\n",
" 743499999\n",
" ]\n",
" ]\n",
" ]\n",
" }\n",
" },\n",
" {\n",
" \"type\": \"Feature\",\n",
" \"properties\": {\n",
" \"id\": \"nb_2018_2465000_7434000\",\n",
" \"name\": \"nb_2018_2465000_7434000\",\n",
" \"crs\": {\n",
" \"type\": \"name\",\n",
" \"properties\": {\n",
" \"name\": \"urn:ogc:def:crs:EPSG::2953\"\n",
" }\n",
" },\n",
" \"featureclass\": \"LIDAR\",\n",
" \"LAZ Metadata\": \"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/meta/meta_2018_aoi1.xml\",\n",
" \"onlink\": \"https://geonb.snb.ca/li/\",\n",
" \"histogram of classification of points\": [\n",
" {\n",
" \"name\": \"unclassified\",\n",
" \"label\": 1,\n",
" \"count\": 49\n",
" },\n",
" {\n",
" \"name\": \"ground\",\n",
" \"label\": 2,\n",
" \"count\": 2692566\n",
" },\n",
" {\n",
" \"name\": \"low vegetation\",\n",
" \"label\": 3,\n",
" \"count\": 2331935\n",
" },\n",
" {\n",
" \"name\": \"medium vegetation\",\n",
" \"label\": 4,\n",
" \"count\": 2405031\n",
" },\n",
" {\n",
" \"name\": \"high vegetation\",\n",
" \"label\": 5,\n",
" \"count\": 14278623\n",
" },\n",
" {\n",
" \"name\": \"building\",\n",
" \"label\": 6,\n",
" \"count\": 395\n",
" },\n",
" {\n",
" \"name\": \"noise\",\n",
" \"label\": 7,\n",
" \"count\": 11252\n",
" },\n",
" {\n",
" \"name\": \"keypoint\",\n",
" \"label\": 8,\n",
" \"count\": 11502\n",
" }\n",
" ],\n",
" \"class_names\": [\n",
" \"unclassified\",\n",
" \"ground\",\n",
" \"low vegetation\",\n",
" \"medium vegetation\",\n",
" \"high vegetation\",\n",
" \"building\",\n",
" \"noise\",\n",
" \"keypoint\"\n",
" ],\n",
" \"class_labels\": [\n",
" 1,\n",
" 2,\n",
" 3,\n",
" 4,\n",
" 5,\n",
" 6,\n",
" 7,\n",
" 8\n",
" ],\n",
" \"class_count\": [\n",
" 49,\n",
" 2692566,\n",
" 2331935,\n",
" 2405031,\n",
" 14278623,\n",
" 395,\n",
" 11252,\n",
" 11502\n",
" ],\n",
" \"class_frequency\": [\n",
" 0.00022548066841489344,\n",
" 12.390236355739102,\n",
" 10.730740051022133,\n",
" 11.067101988541625,\n",
" 65.70517261396472,\n",
" 0.001817650286201692,\n",
" 0.051777724102130225,\n",
" 0.0529281356756756\n",
" ],\n",
" \"bbox\": [\n",
" 246500000,\n",
" 743400000,\n",
" 246599999,\n",
" 743499999\n",
" ]\n",
" },\n",
" \"geometry\": {\n",
" \"type\": \"Polygon\",\n",
" \"coordinates\": [\n",
" [\n",
" [\n",
" 246500000,\n",
" 743400000\n",
" ],\n",
" [\n",
" 246599999,\n",
" 743400000\n",
" ],\n",
" [\n",
" 246599999,\n",
" 743499999\n",
" ],\n",
" [\n",
" 246500000,\n",
" 743499999\n",
" ]\n",
" ]\n",
" ]\n",
" }\n",
" },\n",
" {\n",
" \"type\": \"Feature\",\n",
" \"properties\": {\n",
" \"id\": \"nb_2018_2465000_7436000\",\n",
" \"name\": \"nb_2018_2465000_7436000\",\n",
" \"crs\": {\n",
" \"type\": \"name\",\n",
" \"properties\": {\n",
" \"name\": \"urn:ogc:def:crs:EPSG::2953\"\n",
" }\n",
" },\n",
" \"featureclass\": \"LIDAR\",\n",
" \"LAZ Metadata\": \"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/meta/meta_2018_aoi1.xml\",\n",
" \"onlink\": \"https://geonb.snb.ca/li/\",\n",
" \"histogram of classification of points\": [\n",
" {\n",
" \"name\": \"unclassified\",\n",
" \"label\": 1,\n",
" \"count\": 23\n",
" },\n",
" {\n",
" \"name\": \"ground\",\n",
" \"label\": 2,\n",
" \"count\": 3254386\n",
" },\n",
" {\n",
" \"name\": \"low vegetation\",\n",
" \"label\": 3,\n",
" \"count\": 2990087\n",
" },\n",
" {\n",
" \"name\": \"medium vegetation\",\n",
" \"label\": 4,\n",
" \"count\": 3631046\n",
" },\n",
" {\n",
" \"name\": \"high vegetation\",\n",
" \"label\": 5,\n",
" \"count\": 8120335\n",
" },\n",
" {\n",
" \"name\": \"noise\",\n",
" \"label\": 7,\n",
" \"count\": 7349\n",
" },\n",
" {\n",
" \"name\": \"keypoint\",\n",
" \"label\": 8,\n",
" \"count\": 10755\n",
" }\n",
" ],\n",
" \"class_names\": [\n",
" \"unclassified\",\n",
" \"ground\",\n",
" \"low vegetation\",\n",
" \"medium vegetation\",\n",
" \"high vegetation\",\n",
" \"noise\",\n",
" \"keypoint\"\n",
" ],\n",
" \"class_labels\": [\n",
" 1,\n",
" 2,\n",
" 3,\n",
" 4,\n",
" 5,\n",
" 7,\n",
" 8\n",
" ],\n",
" \"class_count\": [\n",
" 23,\n",
" 3254386,\n",
" 2990087,\n",
" 3631046,\n",
" 8120335,\n",
" 7349,\n",
" 10755\n",
" ],\n",
" \"class_frequency\": [\n",
" 0.00012767860696644457,\n",
" 18.065890043960856,\n",
" 16.598701863846756,\n",
" 20.156821526568724,\n",
" 45.077959169602764,\n",
" 0.04079609054766961,\n",
" 0.059703626866265715\n",
" ],\n",
" \"bbox\": [\n",
" 246500000,\n",
" 743600000,\n",
" 246599999,\n",
" 743699999\n",
" ]\n",
" },\n",
" \"geometry\": {\n",
" \"type\": \"Polygon\",\n",
" \"coordinates\": [\n",
" [\n",
" [\n",
" 246500000,\n",
" 743600000\n",
" ],\n",
" [\n",
" 246599999,\n",
" 743600000\n",
" ],\n",
" [\n",
" 246599999,\n",
" 743699999\n",
" ],\n",
" [\n",
" 246500000,\n",
" 743699999\n",
" ]\n",
" ]\n",
" ]\n",
" }\n",
" },\n",
" {\n",
" \"type\": \"Feature\",\n",
" \"properties\": {\n",
" \"id\": \"nb_2018_2466000_7435000\",\n",
" \"name\": \"nb_2018_2466000_7435000\",\n",
" \"crs\": {\n",
" \"type\": \"name\",\n",
" \"properties\": {\n",
" \"name\": \"urn:ogc:def:crs:EPSG::2953\"\n",
" }\n",
" },\n",
" \"featureclass\": \"LIDAR\",\n",
" \"LAZ Metadata\": \"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/meta/meta_2018_aoi1.xml\",\n",
" \"onlink\": \"https://geonb.snb.ca/li/\",\n",
" \"histogram of classification of points\": [\n",
" {\n",
" \"name\": \"unclassified\",\n",
" \"label\": 1,\n",
" \"count\": 31\n",
" },\n",
" {\n",
" \"name\": \"ground\",\n",
" \"label\": 2,\n",
" \"count\": 3101939\n",
" },\n",
" {\n",
" \"name\": \"low vegetation\",\n",
" \"label\": 3,\n",
" \"count\": 2068591\n",
" },\n",
" {\n",
" \"name\": \"medium vegetation\",\n",
" \"label\": 4,\n",
" \"count\": 1885535\n",
" },\n",
" {\n",
" \"name\": \"high vegetation\",\n",
" \"label\": 5,\n",
" \"count\": 12157486\n",
" },\n",
" {\n",
" \"name\": \"noise\",\n",
" \"label\": 7,\n",
" \"count\": 8822\n",
" },\n",
" {\n",
" \"name\": \"keypoint\",\n",
" \"label\": 8,\n",
" \"count\": 10800\n",
" }\n",
" ],\n",
" \"class_names\": [\n",
" \"unclassified\",\n",
" \"ground\",\n",
" \"low vegetation\",\n",
" \"medium vegetation\",\n",
" \"high vegetation\",\n",
" \"noise\",\n",
" \"keypoint\"\n",
" ],\n",
" \"class_labels\": [\n",
" 1,\n",
" 2,\n",
" 3,\n",
" 4,\n",
" 5,\n",
" 7,\n",
" 8\n",
" ],\n",
" \"class_count\": [\n",
" 31,\n",
" 3101939,\n",
" 2068591,\n",
" 1885535,\n",
" 12157486,\n",
" 8822,\n",
" 10800\n",
" ],\n",
" \"class_frequency\": [\n",
" 0.0001611795933740421,\n",
" 16.12804086100267,\n",
" 10.755311491522681,\n",
" 9.803540793307242,\n",
" 63.21092419130999,\n",
" 0.04586859266921934,\n",
" 0.056152890594827566\n",
" ],\n",
" \"bbox\": [\n",
" 246600000,\n",
" 743500000,\n",
" 246699999,\n",
" 743599999\n",
" ]\n",
" },\n",
" \"geometry\": {\n",
" \"type\": \"Polygon\",\n",
" \"coordinates\": [\n",
" [\n",
" [\n",
" 246600000,\n",
" 743500000\n",
" ],\n",
" [\n",
" 246699999,\n",
" 743500000\n",
" ],\n",
" [\n",
" 246699999,\n",
" 743599999\n",
" ],\n",
" [\n",
" 246600000,\n",
" 743599999\n",
" ]\n",
" ]\n",
" ]\n",
" }\n",
" },\n",
" {\n",
" \"type\": \"Feature\",\n",
" \"properties\": {\n",
" \"id\": \"nb_2018_2465000_7438000\",\n",
" \"name\": \"nb_2018_2465000_7438000\",\n",
" \"crs\": {\n",
" \"type\": \"name\",\n",
" \"properties\": {\n",
" \"name\": \"urn:ogc:def:crs:EPSG::2953\"\n",
" }\n",
" },\n",
" \"featureclass\": \"LIDAR\",\n",
" \"LAZ Metadata\": \"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/meta/meta_2018_aoi1.xml\",\n",
" \"onlink\": \"https://geonb.snb.ca/li/\",\n",
" \"histogram of classification of points\": [\n",
" {\n",
" \"name\": \"unclassified\",\n",
" \"label\": 1,\n",
" \"count\": 24\n",
" },\n",
" {\n",
" \"name\": \"ground\",\n",
" \"label\": 2,\n",
" \"count\": 1879673\n",
" },\n",
" {\n",
" \"name\": \"low vegetation\",\n",
" \"label\": 3,\n",
" \"count\": 1551931\n",
" },\n",
" {\n",
" \"name\": \"medium vegetation\",\n",
" \"label\": 4,\n",
" \"count\": 1453260\n",
" },\n",
" {\n",
" \"name\": \"high vegetation\",\n",
" \"label\": 5,\n",
" \"count\": 18614547\n",
" },\n",
" {\n",
" \"name\": \"noise\",\n",
" \"label\": 7,\n",
" \"count\": 3906\n",
" },\n",
" {\n",
" \"name\": \"keypoint\",\n",
" \"label\": 8,\n",
" \"count\": 10709\n",
" },\n",
" {\n",
" \"name\": \"water\",\n",
" \"label\": 9,\n",
" \"count\": 68\n",
" }\n",
" ],\n",
" \"class_names\": [\n",
" \"unclassified\",\n",
" \"ground\",\n",
" \"low vegetation\",\n",
" \"medium vegetation\",\n",
" \"high vegetation\",\n",
" \"noise\",\n",
" \"keypoint\",\n",
" \"water\"\n",
" ],\n",
" \"class_labels\": [\n",
" 1,\n",
" 2,\n",
" 3,\n",
" 4,\n",
" 5,\n",
" 7,\n",
" 8,\n",
" 9\n",
" ],\n",
" \"class_count\": [\n",
" 24,\n",
" 1879673,\n",
" 1551931,\n",
" 1453260,\n",
" 18614547,\n",
" 3906,\n",
" 10709,\n",
" 68\n",
" ],\n",
" \"class_frequency\": [\n",
" 0.00010206634159103906,\n",
" 7.993806104060548,\n",
" 6.599996648821785,\n",
" 6.180372149191392,\n",
" 79.16327969435213,\n",
" 0.016611297093941605,\n",
" 0.045542852170768214,\n",
" 0.00028918796784127733\n",
" ],\n",
" \"bbox\": [\n",
" 246500000,\n",
" 743800000,\n",
" 246599999,\n",
" 743899999\n",
" ]\n",
" },\n",
" \"geometry\": {\n",
" \"type\": \"Polygon\",\n",
" \"coordinates\": [\n",
" [\n",
" [\n",
" 246500000,\n",
" 743800000\n",
" ],\n",
" [\n",
" 246599999,\n",
" 743800000\n",
" ],\n",
" [\n",
" 246599999,\n",
" 743899999\n",
" ],\n",
" [\n",
" 246500000,\n",
" 743899999\n",
" ]\n",
" ]\n",
" ]\n",
" }\n",
" },\n",
" {\n",
" \"type\": \"Feature\",\n",
" \"properties\": {\n",
" \"id\": \"nb_2018_2464000_7436000\",\n",
" \"name\": \"nb_2018_2464000_7436000\",\n",
" \"crs\": {\n",
" \"type\": \"name\",\n",
" \"properties\": {\n",
" \"name\": \"urn:ogc:def:crs:EPSG::2953\"\n",
" }\n",
" },\n",
" \"featureclass\": \"LIDAR\",\n",
" \"LAZ Metadata\": \"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/meta/meta_2018_aoi1.xml\",\n",
" \"onlink\": \"https://geonb.snb.ca/li/\",\n",
" \"histogram of classification of points\": [\n",
" {\n",
" \"name\": \"unclassified\",\n",
" \"label\": 1,\n",
" \"count\": 46\n",
" },\n",
" {\n",
" \"name\": \"ground\",\n",
" \"label\": 2,\n",
" \"count\": 1839329\n",
" },\n",
" {\n",
" \"name\": \"low vegetation\",\n",
" \"label\": 3,\n",
" \"count\": 1491325\n",
" },\n",
" {\n",
" \"name\": \"medium vegetation\",\n",
" \"label\": 4,\n",
" \"count\": 1420809\n",
" },\n",
" {\n",
" \"name\": \"high vegetation\",\n",
" \"label\": 5,\n",
" \"count\": 17848445\n",
" },\n",
" {\n",
" \"name\": \"noise\",\n",
" \"label\": 7,\n",
" \"count\": 3531\n",
" },\n",
" {\n",
" \"name\": \"keypoint\",\n",
" \"label\": 8,\n",
" \"count\": 10701\n",
" }\n",
" ],\n",
" \"class_names\": [\n",
" \"unclassified\",\n",
" \"ground\",\n",
" \"low vegetation\",\n",
" \"medium vegetation\",\n",
" \"high vegetation\",\n",
" \"noise\",\n",
" \"keypoint\"\n",
" ],\n",
" \"class_labels\": [\n",
" 1,\n",
" 2,\n",
" 3,\n",
" 4,\n",
" 5,\n",
" 7,\n",
" 8\n",
" ],\n",
" \"class_count\": [\n",
" 46,\n",
" 1839329,\n",
" 1491325,\n",
" 1420809,\n",
" 17848445,\n",
" 3531,\n",
" 10701\n",
" ],\n",
" \"class_frequency\": [\n",
" 0.00020341214138771125,\n",
" 8.133518491446033,\n",
" 6.594643733804967,\n",
" 6.282821765063752,\n",
" 78.92587864979973,\n",
" 0.01561409285304366,\n",
" 0.047319854891084735\n",
" ],\n",
" \"bbox\": [\n",
" 246400000,\n",
" 743600000,\n",
" 246499999,\n",
" 743699999\n",
" ]\n",
" },\n",
" \"geometry\": {\n",
" \"type\": \"Polygon\",\n",
" \"coordinates\": [\n",
" [\n",
" [\n",
" 246400000,\n",
" 743600000\n",
" ],\n",
" [\n",
" 246499999,\n",
" 743600000\n",
" ],\n",
" [\n",
" 246499999,\n",
" 743699999\n",
" ],\n",
" [\n",
" 246400000,\n",
" 743699999\n",
" ]\n",
" ]\n",
" ]\n",
" }\n",
" },\n",
" {\n",
" \"type\": \"Feature\",\n",
" \"properties\": {\n",
" \"id\": \"nb_2018_2466000_7437000\",\n",
" \"name\": \"nb_2018_2466000_7437000\",\n",
" \"crs\": {\n",
" \"type\": \"name\",\n",
" \"properties\": {\n",
" \"name\": \"urn:ogc:def:crs:EPSG::2953\"\n",
" }\n",
" },\n",
" \"featureclass\": \"LIDAR\",\n",
" \"LAZ Metadata\": \"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/meta/meta_2018_aoi1.xml\",\n",
" \"onlink\": \"https://geonb.snb.ca/li/\",\n",
" \"histogram of classification of points\": [\n",
" {\n",
" \"name\": \"unclassified\",\n",
" \"label\": 1,\n",
" \"count\": 8\n",
" },\n",
" {\n",
" \"name\": \"ground\",\n",
" \"label\": 2,\n",
" \"count\": 1683764\n",
" },\n",
" {\n",
" \"name\": \"low vegetation\",\n",
" \"label\": 3,\n",
" \"count\": 1340078\n",
" },\n",
" {\n",
" \"name\": \"medium vegetation\",\n",
" \"label\": 4,\n",
" \"count\": 1327314\n",
" },\n",
" {\n",
" \"name\": \"high vegetation\",\n",
" \"label\": 5,\n",
" \"count\": 19267185\n",
" },\n",
" {\n",
" \"name\": \"noise\",\n",
" \"label\": 7,\n",
" \"count\": 2786\n",
" },\n",
" {\n",
" \"name\": \"keypoint\",\n",
" \"label\": 8,\n",
" \"count\": 10690\n",
" }\n",
" ],\n",
" \"class_names\": [\n",
" \"unclassified\",\n",
" \"ground\",\n",
" \"low vegetation\",\n",
" \"medium vegetation\",\n",
" \"high vegetation\",\n",
" \"noise\",\n",
" \"keypoint\"\n",
" ],\n",
" \"class_labels\": [\n",
" 1,\n",
" 2,\n",
" 3,\n",
" 4,\n",
" 5,\n",
" 7,\n",
" 8\n",
" ],\n",
" \"class_count\": [\n",
" 8,\n",
" 1683764,\n",
" 1340078,\n",
" 1327314,\n",
" 19267185,\n",
" 2786,\n",
" 10690\n",
" ],\n",
" \"class_frequency\": [\n",
" 3.385265420677413e-05,\n",
" 7.124985057226854,\n",
" 5.670649643013182,\n",
" 5.616637733226274,\n",
" 81.53066891786818,\n",
" 0.011789186827509091,\n",
" 0.04523560918380193\n",
" ],\n",
" \"bbox\": [\n",
" 246600000,\n",
" 743700000,\n",
" 246699999,\n",
" 743799999\n",
" ]\n",
" },\n",
" \"geometry\": {\n",
" \"type\": \"Polygon\",\n",
" \"coordinates\": [\n",
" [\n",
" [\n",
" 246600000,\n",
" 743700000\n",
" ],\n",
" [\n",
" 246699999,\n",
" 743700000\n",
" ],\n",
" [\n",
" 246699999,\n",
" 743799999\n",
" ],\n",
" [\n",
" 246600000,\n",
" 743799999\n",
" ]\n",
" ]\n",
" ]\n",
" }\n",
" },\n",
" {\n",
" \"type\": \"Feature\",\n",
" \"properties\": {\n",
" \"id\": \"nb_2018_2463000_7437000\",\n",
" \"name\": \"nb_2018_2463000_7437000\",\n",
" \"crs\": {\n",
" \"type\": \"name\",\n",
" \"properties\": {\n",
" \"name\": \"urn:ogc:def:crs:EPSG::2953\"\n",
" }\n",
" },\n",
" \"featureclass\": \"LIDAR\",\n",
" \"LAZ Metadata\": \"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/meta/meta_2018_aoi1.xml\",\n",
" \"onlink\": \"https://geonb.snb.ca/li/\",\n",
" \"histogram of classification of points\": [\n",
" {\n",
" \"name\": \"unclassified\",\n",
" \"label\": 1,\n",
" \"count\": 46\n",
" },\n",
" {\n",
" \"name\": \"ground\",\n",
" \"label\": 2,\n",
" \"count\": 1508887\n",
" },\n",
" {\n",
" \"name\": \"low vegetation\",\n",
" \"label\": 3,\n",
" \"count\": 1343395\n",
" },\n",
" {\n",
" \"name\": \"medium vegetation\",\n",
" \"label\": 4,\n",
" \"count\": 1487455\n",
" },\n",
" {\n",
" \"name\": \"high vegetation\",\n",
" \"label\": 5,\n",
" \"count\": 20274422\n",
" },\n",
" {\n",
" \"name\": \"noise\",\n",
" \"label\": 7,\n",
" \"count\": 3008\n",
" },\n",
" {\n",
" \"name\": \"keypoint\",\n",
" \"label\": 8,\n",
" \"count\": 10653\n",
" }\n",
" ],\n",
" \"class_names\": [\n",
" \"unclassified\",\n",
" \"ground\",\n",
" \"low vegetation\",\n",
" \"medium vegetation\",\n",
" \"high vegetation\",\n",
" \"noise\",\n",
" \"keypoint\"\n",
" ],\n",
" \"class_labels\": [\n",
" 1,\n",
" 2,\n",
" 3,\n",
" 4,\n",
" 5,\n",
" 7,\n",
" 8\n",
" ],\n",
" \"class_count\": [\n",
" 46,\n",
" 1508887,\n",
" 1343395,\n",
" 1487455,\n",
" 20274422,\n",
" 3008,\n",
" 10653\n",
" ],\n",
" \"class_frequency\": [\n",
" 0.00018678029188562258,\n",
" 6.1267468322265515,\n",
" 5.454776309080129,\n",
" 6.0397234579723635,\n",
" 82.32309693418017,\n",
" 0.012213806912868538,\n",
" 0.04325587933603342\n",
" ],\n",
" \"bbox\": [\n",
" 246300000,\n",
" 743700000,\n",
" 246399999,\n",
" 743799999\n",
" ]\n",
" },\n",
" \"geometry\": {\n",
" \"type\": \"Polygon\",\n",
" \"coordinates\": [\n",
" [\n",
" [\n",
" 246300000,\n",
" 743700000\n",
" ],\n",
" [\n",
" 246399999,\n",
" 743700000\n",
" ],\n",
" [\n",
" 246399999,\n",
" 743799999\n",
" ],\n",
" [\n",
" 246300000,\n",
" 743799999\n",
" ]\n",
" ]\n",
" ]\n",
" }\n",
" },\n",
" {\n",
" \"type\": \"Feature\",\n",
" \"properties\": {\n",
" \"id\": \"nb_2018_2465000_7437000\",\n",
" \"name\": \"nb_2018_2465000_7437000\",\n",
" \"crs\": {\n",
" \"type\": \"name\",\n",
" \"properties\": {\n",
" \"name\": \"urn:ogc:def:crs:EPSG::2953\"\n",
" }\n",
" },\n",
" \"featureclass\": \"LIDAR\",\n",
" \"LAZ Metadata\": \"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/meta/meta_2018_aoi1.xml\",\n",
" \"onlink\": \"https://geonb.snb.ca/li/\",\n",
" \"histogram of classification of points\": [\n",
" {\n",
" \"name\": \"unclassified\",\n",
" \"label\": 1,\n",
" \"count\": 82\n",
" },\n",
" {\n",
" \"name\": \"ground\",\n",
" \"label\": 2,\n",
" \"count\": 2752953\n",
" },\n",
" {\n",
" \"name\": \"low vegetation\",\n",
" \"label\": 3,\n",
" \"count\": 2459680\n",
" },\n",
" {\n",
" \"name\": \"medium vegetation\",\n",
" \"label\": 4,\n",
" \"count\": 2238967\n",
" },\n",
" {\n",
" \"name\": \"high vegetation\",\n",
" \"label\": 5,\n",
" \"count\": 13901427\n",
" },\n",
" {\n",
" \"name\": \"noise\",\n",
" \"label\": 7,\n",
" \"count\": 5743\n",
" },\n",
" {\n",
" \"name\": \"keypoint\",\n",
" \"label\": 8,\n",
" \"count\": 10719\n",
" },\n",
" {\n",
" \"name\": \"water\",\n",
" \"label\": 9,\n",
" \"count\": 7906\n",
" }\n",
" ],\n",
" \"class_names\": [\n",
" \"unclassified\",\n",
" \"ground\",\n",
" \"low vegetation\",\n",
" \"medium vegetation\",\n",
" \"high vegetation\",\n",
" \"noise\",\n",
" \"keypoint\",\n",
" \"water\"\n",
" ],\n",
" \"class_labels\": [\n",
" 1,\n",
" 2,\n",
" 3,\n",
" 4,\n",
" 5,\n",
" 7,\n",
" 8,\n",
" 9\n",
" ],\n",
" \"class_count\": [\n",
" 82,\n",
" 2752953,\n",
" 2459680,\n",
" 2238967,\n",
" 13901427,\n",
" 5743,\n",
" 10719,\n",
" 7906\n",
" ],\n",
" \"class_frequency\": [\n",
" 0.0003835812804289299,\n",
" 12.877819959764194,\n",
" 11.505941510310127,\n",
" 10.473485715830732,\n",
" 65.02838010304023,\n",
" 0.026864723091504204,\n",
" 0.05014155786485001,\n",
" 0.03698284881794049\n",
" ],\n",
" \"bbox\": [\n",
" 246500000,\n",
" 743700000,\n",
" 246599999,\n",
" 743799999\n",
" ]\n",
" },\n",
" \"geometry\": {\n",
" \"type\": \"Polygon\",\n",
" \"coordinates\": [\n",
" [\n",
" [\n",
" 246500000,\n",
" 743700000\n",
" ],\n",
" [\n",
" 246599999,\n",
" 743700000\n",
" ],\n",
" [\n",
" 246599999,\n",
" 743799999\n",
" ],\n",
" [\n",
" 246500000,\n",
" 743799999\n",
" ]\n",
" ]\n",
" ]\n",
" }\n",
" },\n",
" {\n",
" \"type\": \"Feature\",\n",
" \"properties\": {\n",
" \"id\": \"nb_2018_2463000_7438000\",\n",
" \"name\": \"nb_2018_2463000_7438000\",\n",
" \"crs\": {\n",
" \"type\": \"name\",\n",
" \"properties\": {\n",
" \"name\": \"urn:ogc:def:crs:EPSG::2953\"\n",
" }\n",
" },\n",
" \"featureclass\": \"LIDAR\",\n",
" \"LAZ Metadata\": \"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/meta/meta_2018_aoi1.xml\",\n",
" \"onlink\": \"https://geonb.snb.ca/li/\",\n",
" \"histogram of classification of points\": [\n",
" {\n",
" \"name\": \"unclassified\",\n",
" \"label\": 1,\n",
" \"count\": 38\n",
" },\n",
" {\n",
" \"name\": \"ground\",\n",
" \"label\": 2,\n",
" \"count\": 1864555\n",
" },\n",
" {\n",
" \"name\": \"low vegetation\",\n",
" \"label\": 3,\n",
" \"count\": 1514541\n",
" },\n",
" {\n",
" \"name\": \"medium vegetation\",\n",
" \"label\": 4,\n",
" \"count\": 1632000\n",
" },\n",
" {\n",
" \"name\": \"high vegetation\",\n",
" \"label\": 5,\n",
" \"count\": 16877075\n",
" },\n",
" {\n",
" \"name\": \"building\",\n",
" \"label\": 6,\n",
" \"count\": 316\n",
" },\n",
" {\n",
" \"name\": \"noise\",\n",
" \"label\": 7,\n",
" \"count\": 6504\n",
" },\n",
" {\n",
" \"name\": \"keypoint\",\n",
" \"label\": 8,\n",
" \"count\": 10772\n",
" }\n",
" ],\n",
" \"class_names\": [\n",
" \"unclassified\",\n",
" \"ground\",\n",
" \"low vegetation\",\n",
" \"medium vegetation\",\n",
" \"high vegetation\",\n",
" \"building\",\n",
" \"noise\",\n",
" \"keypoint\"\n",
" ],\n",
" \"class_labels\": [\n",
" 1,\n",
" 2,\n",
" 3,\n",
" 4,\n",
" 5,\n",
" 6,\n",
" 7,\n",
" 8\n",
" ],\n",
" \"class_count\": [\n",
" 38,\n",
" 1864555,\n",
" 1514541,\n",
" 1632000,\n",
" 16877075,\n",
" 316,\n",
" 6504,\n",
" 10772\n",
" ],\n",
" \"class_frequency\": [\n",
" 0.0001734700319792004,\n",
" 8.511695144131,\n",
" 6.913880939573951,\n",
" 7.450081373422501,\n",
" 77.04386157803587,\n",
" 0.001442540265932298,\n",
" 0.029690765473492618,\n",
" 0.04917418906526175\n",
" ],\n",
" \"bbox\": [\n",
" 246300000,\n",
" 743800000,\n",
" 246399999,\n",
" 743899999\n",
" ]\n",
" },\n",
" \"geometry\": {\n",
" \"type\": \"Polygon\",\n",
" \"coordinates\": [\n",
" [\n",
" [\n",
" 246300000,\n",
" 743800000\n",
" ],\n",
" [\n",
" 246399999,\n",
" 743800000\n",
" ],\n",
" [\n",
" 246399999,\n",
" 743899999\n",
" ],\n",
" [\n",
" 246300000,\n",
" 743899999\n",
" ]\n",
" ]\n",
" ]\n",
" }\n",
" },\n",
" {\n",
" \"type\": \"Feature\",\n",
" \"properties\": {\n",
" \"id\": \"nb_2018_2464000_7435000\",\n",
" \"name\": \"nb_2018_2464000_7435000\",\n",
" \"crs\": {\n",
" \"type\": \"name\",\n",
" \"properties\": {\n",
" \"name\": \"urn:ogc:def:crs:EPSG::2953\"\n",
" }\n",
" },\n",
" \"featureclass\": \"LIDAR\",\n",
" \"LAZ Metadata\": \"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/meta/meta_2018_aoi1.xml\",\n",
" \"onlink\": \"https://geonb.snb.ca/li/\",\n",
" \"histogram of classification of points\": [\n",
" {\n",
" \"name\": \"unclassified\",\n",
" \"label\": 1,\n",
" \"count\": 76\n",
" },\n",
" {\n",
" \"name\": \"ground\",\n",
" \"label\": 2,\n",
" \"count\": 1878609\n",
" },\n",
" {\n",
" \"name\": \"low vegetation\",\n",
" \"label\": 3,\n",
" \"count\": 1651889\n",
" },\n",
" {\n",
" \"name\": \"medium vegetation\",\n",
" \"label\": 4,\n",
" \"count\": 1835136\n",
" },\n",
" {\n",
" \"name\": \"high vegetation\",\n",
" \"label\": 5,\n",
" \"count\": 15909037\n",
" },\n",
" {\n",
" \"name\": \"noise\",\n",
" \"label\": 7,\n",
" \"count\": 5197\n",
" },\n",
" {\n",
" \"name\": \"keypoint\",\n",
" \"label\": 8,\n",
" \"count\": 11412\n",
" }\n",
" ],\n",
" \"class_names\": [\n",
" \"unclassified\",\n",
" \"ground\",\n",
" \"low vegetation\",\n",
" \"medium vegetation\",\n",
" \"high vegetation\",\n",
" \"noise\",\n",
" \"keypoint\"\n",
" ],\n",
" \"class_labels\": [\n",
" 1,\n",
" 2,\n",
" 3,\n",
" 4,\n",
" 5,\n",
" 7,\n",
" 8\n",
" ],\n",
" \"class_count\": [\n",
" 76,\n",
" 1878609,\n",
" 1651889,\n",
" 1835136,\n",
" 15909037,\n",
" 5197,\n",
" 11412\n",
" ],\n",
" \"class_frequency\": [\n",
" 0.0003569523707179571,\n",
" 8.823341265816982,\n",
" 7.758495983064677,\n",
" 8.619159813024591,\n",
" 74.720637802496,\n",
" 0.024408966718700305,\n",
" 0.05359921650833324\n",
" ],\n",
" \"bbox\": [\n",
" 246400000,\n",
" 743500000,\n",
" 246499999,\n",
" 743599999\n",
" ]\n",
" },\n",
" \"geometry\": {\n",
" \"type\": \"Polygon\",\n",
" \"coordinates\": [\n",
" [\n",
" [\n",
" 246400000,\n",
" 743500000\n",
" ],\n",
" [\n",
" 246499999,\n",
" 743500000\n",
" ],\n",
" [\n",
" 246499999,\n",
" 743599999\n",
" ],\n",
" [\n",
" 246400000,\n",
" 743599999\n",
" ]\n",
" ]\n",
" ]\n",
" }\n",
" }\n",
" ]\n",
"}\n"
],
"name": "stdout"
}
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "IoKVfMtpmn_O",
"colab_type": "text"
},
"source": [
"Save feature collection ..."
]
},
{
"cell_type": "code",
"metadata": {
"id": "cPo6H4WJfwLF",
"colab_type": "code",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 1000
},
"outputId": "f63745b8-0c4d-4000-8532-c211883093f9"
},
"source": [
"feature_collection = {\n",
" 'type': 'FeatureCollection',\n",
" \"crs\": { \"type\": \"name\", \"properties\": { \"name\": \"urn:ogc:def:crs:EPSG::2953\" } }, # we impose \"NAD83(CSRS) / New Brunswick Stereographic\"\n",
" \"features\": features\n",
"}\n",
"\n",
"print(json.dumps(feature_collection, indent=2))\n",
"with open('nb_lidar.json', 'w') as outfile:\n",
" json.dump(feature_collection, outfile)"
],
"execution_count": null,
"outputs": [
{
"output_type": "stream",
"text": [
"{\n",
" \"type\": \"FeatureCollection\",\n",
" \"crs\": {\n",
" \"type\": \"name\",\n",
" \"properties\": {\n",
" \"name\": \"urn:ogc:def:crs:EPSG::2953\"\n",
" }\n",
" },\n",
" \"features\": [\n",
" {\n",
" \"type\": \"Feature\",\n",
" \"properties\": {\n",
" \"id\": \"nb_2018_2463000_7434000\",\n",
" \"name\": \"nb_2018_2463000_7434000\",\n",
" \"crs\": {\n",
" \"type\": \"name\",\n",
" \"properties\": {\n",
" \"name\": \"urn:ogc:def:crs:EPSG::2953\"\n",
" }\n",
" },\n",
" \"featureclass\": \"LIDAR\",\n",
" \"LAZ Metadata\": \"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/meta/meta_2018_aoi1.xml\",\n",
" \"onlink\": \"https://geonb.snb.ca/li/\",\n",
" \"histogram of classification of points\": [\n",
" {\n",
" \"name\": \"unclassified\",\n",
" \"label\": 1,\n",
" \"count\": 91\n",
" },\n",
" {\n",
" \"name\": \"ground\",\n",
" \"label\": 2,\n",
" \"count\": 2185856\n",
" },\n",
" {\n",
" \"name\": \"low vegetation\",\n",
" \"label\": 3,\n",
" \"count\": 1631259\n",
" },\n",
" {\n",
" \"name\": \"medium vegetation\",\n",
" \"label\": 4,\n",
" \"count\": 1651525\n",
" },\n",
" {\n",
" \"name\": \"high vegetation\",\n",
" \"label\": 5,\n",
" \"count\": 17728529\n",
" },\n",
" {\n",
" \"name\": \"noise\",\n",
" \"label\": 7,\n",
" \"count\": 3497\n",
" },\n",
" {\n",
" \"name\": \"keypoint\",\n",
" \"label\": 8,\n",
" \"count\": 10768\n",
" }\n",
" ],\n",
" \"class_names\": [\n",
" \"unclassified\",\n",
" \"ground\",\n",
" \"low vegetation\",\n",
" \"medium vegetation\",\n",
" \"high vegetation\",\n",
" \"noise\",\n",
" \"keypoint\"\n",
" ],\n",
" \"class_labels\": [\n",
" 1,\n",
" 2,\n",
" 3,\n",
" 4,\n",
" 5,\n",
" 7,\n",
" 8\n",
" ],\n",
" \"class_count\": [\n",
" 91,\n",
" 2185856,\n",
" 1631259,\n",
" 1651525,\n",
" 17728529,\n",
" 3497,\n",
" 10768\n",
" ],\n",
" \"class_frequency\": [\n",
" 0.0003920466233907509,\n",
" 9.417114989213331,\n",
" 7.027797613470033,\n",
" 7.115107688960548,\n",
" 76.3781311223627,\n",
" 0.015065791670301715,\n",
" 0.04639074769968798\n",
" ],\n",
" \"bbox\": [\n",
" 246300000,\n",
" 743400000,\n",
" 246399999,\n",
" 743499999\n",
" ]\n",
" },\n",
" \"geometry\": {\n",
" \"type\": \"Polygon\",\n",
" \"coordinates\": [\n",
" [\n",
" [\n",
" 246300000,\n",
" 743400000\n",
" ],\n",
" [\n",
" 246399999,\n",
" 743400000\n",
" ],\n",
" [\n",
" 246399999,\n",
" 743499999\n",
" ],\n",
" [\n",
" 246300000,\n",
" 743499999\n",
" ]\n",
" ]\n",
" ]\n",
" }\n",
" },\n",
" {\n",
" \"type\": \"Feature\",\n",
" \"properties\": {\n",
" \"id\": \"nb_2018_2463000_7436000\",\n",
" \"name\": \"nb_2018_2463000_7436000\",\n",
" \"crs\": {\n",
" \"type\": \"name\",\n",
" \"properties\": {\n",
" \"name\": \"urn:ogc:def:crs:EPSG::2953\"\n",
" }\n",
" },\n",
" \"featureclass\": \"LIDAR\",\n",
" \"LAZ Metadata\": \"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/meta/meta_2018_aoi1.xml\",\n",
" \"onlink\": \"https://geonb.snb.ca/li/\",\n",
" \"histogram of classification of points\": [\n",
" {\n",
" \"name\": \"unclassified\",\n",
" \"label\": 1,\n",
" \"count\": 39\n",
" },\n",
" {\n",
" \"name\": \"ground\",\n",
" \"label\": 2,\n",
" \"count\": 1491588\n",
" },\n",
" {\n",
" \"name\": \"low vegetation\",\n",
" \"label\": 3,\n",
" \"count\": 1166486\n",
" },\n",
" {\n",
" \"name\": \"medium vegetation\",\n",
" \"label\": 4,\n",
" \"count\": 1092356\n",
" },\n",
" {\n",
" \"name\": \"high vegetation\",\n",
" \"label\": 5,\n",
" \"count\": 21998288\n",
" },\n",
" {\n",
" \"name\": \"building\",\n",
" \"label\": 6,\n",
" \"count\": 628\n",
" },\n",
" {\n",
" \"name\": \"noise\",\n",
" \"label\": 7,\n",
" \"count\": 2337\n",
" },\n",
" {\n",
" \"name\": \"keypoint\",\n",
" \"label\": 8,\n",
" \"count\": 10659\n",
" }\n",
" ],\n",
" \"class_names\": [\n",
" \"unclassified\",\n",
" \"ground\",\n",
" \"low vegetation\",\n",
" \"medium vegetation\",\n",
" \"high vegetation\",\n",
" \"building\",\n",
" \"noise\",\n",
" \"keypoint\"\n",
" ],\n",
" \"class_labels\": [\n",
" 1,\n",
" 2,\n",
" 3,\n",
" 4,\n",
" 5,\n",
" 6,\n",
" 7,\n",
" 8\n",
" ],\n",
" \"class_count\": [\n",
" 39,\n",
" 1491588,\n",
" 1166486,\n",
" 1092356,\n",
" 21998288,\n",
" 628,\n",
" 2337,\n",
" 10659\n",
" ],\n",
" \"class_frequency\": [\n",
" 0.00015138352313010198,\n",
" 5.789790935861092,\n",
" 4.527865650306158,\n",
" 4.240120507495018,\n",
" 85.38918821206782,\n",
" 0.002437662885274463,\n",
" 0.009071366501411497,\n",
" 0.041374281360096334\n",
" ],\n",
" \"bbox\": [\n",
" 246300000,\n",
" 743600000,\n",
" 246399999,\n",
" 743699999\n",
" ]\n",
" },\n",
" \"geometry\": {\n",
" \"type\": \"Polygon\",\n",
" \"coordinates\": [\n",
" [\n",
" [\n",
" 246300000,\n",
" 743600000\n",
" ],\n",
" [\n",
" 246399999,\n",
" 743600000\n",
" ],\n",
" [\n",
" 246399999,\n",
" 743699999\n",
" ],\n",
" [\n",
" 246300000,\n",
" 743699999\n",
" ]\n",
" ]\n",
" ]\n",
" }\n",
" },\n",
" {\n",
" \"type\": \"Feature\",\n",
" \"properties\": {\n",
" \"id\": \"nb_2018_2464000_7434000\",\n",
" \"name\": \"nb_2018_2464000_7434000\",\n",
" \"crs\": {\n",
" \"type\": \"name\",\n",
" \"properties\": {\n",
" \"name\": \"urn:ogc:def:crs:EPSG::2953\"\n",
" }\n",
" },\n",
" \"featureclass\": \"LIDAR\",\n",
" \"LAZ Metadata\": \"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/meta/meta_2018_aoi1.xml\",\n",
" \"onlink\": \"https://geonb.snb.ca/li/\",\n",
" \"histogram of classification of points\": [\n",
" {\n",
" \"name\": \"unclassified\",\n",
" \"label\": 1,\n",
" \"count\": 107\n",
" },\n",
" {\n",
" \"name\": \"ground\",\n",
" \"label\": 2,\n",
" \"count\": 2107496\n",
" },\n",
" {\n",
" \"name\": \"low vegetation\",\n",
" \"label\": 3,\n",
" \"count\": 2312676\n",
" },\n",
" {\n",
" \"name\": \"medium vegetation\",\n",
" \"label\": 4,\n",
" \"count\": 2757997\n",
" },\n",
" {\n",
" \"name\": \"high vegetation\",\n",
" \"label\": 5,\n",
" \"count\": 12705681\n",
" },\n",
" {\n",
" \"name\": \"noise\",\n",
" \"label\": 7,\n",
" \"count\": 5947\n",
" },\n",
" {\n",
" \"name\": \"keypoint\",\n",
" \"label\": 8,\n",
" \"count\": 10722\n",
" }\n",
" ],\n",
" \"class_names\": [\n",
" \"unclassified\",\n",
" \"ground\",\n",
" \"low vegetation\",\n",
" \"medium vegetation\",\n",
" \"high vegetation\",\n",
" \"noise\",\n",
" \"keypoint\"\n",
" ],\n",
" \"class_labels\": [\n",
" 1,\n",
" 2,\n",
" 3,\n",
" 4,\n",
" 5,\n",
" 7,\n",
" 8\n",
" ],\n",
" \"class_count\": [\n",
" 107,\n",
" 2107496,\n",
" 2312676,\n",
" 2757997,\n",
" 12705681,\n",
" 5947,\n",
" 10722\n",
" ],\n",
" \"class_frequency\": [\n",
" 0.0005376715285237762,\n",
" 10.590099025025646,\n",
" 11.621121868226659,\n",
" 13.858845445364382,\n",
" 63.84563480565888,\n",
" 0.029883482057298096,\n",
" 0.053877702138616146\n",
" ],\n",
" \"bbox\": [\n",
" 246400000,\n",
" 743400000,\n",
" 246499999,\n",
" 743499999\n",
" ]\n",
" },\n",
" \"geometry\": {\n",
" \"type\": \"Polygon\",\n",
" \"coordinates\": [\n",
" [\n",
" [\n",
" 246400000,\n",
" 743400000\n",
" ],\n",
" [\n",
" 246499999,\n",
" 743400000\n",
" ],\n",
" [\n",
" 246499999,\n",
" 743499999\n",
" ],\n",
" [\n",
" 246400000,\n",
" 743499999\n",
" ]\n",
" ]\n",
" ]\n",
" }\n",
" },\n",
" {\n",
" \"type\": \"Feature\",\n",
" \"properties\": {\n",
" \"id\": \"nb_2018_2465000_7435000\",\n",
" \"name\": \"nb_2018_2465000_7435000\",\n",
" \"crs\": {\n",
" \"type\": \"name\",\n",
" \"properties\": {\n",
" \"name\": \"urn:ogc:def:crs:EPSG::2953\"\n",
" }\n",
" },\n",
" \"featureclass\": \"LIDAR\",\n",
" \"LAZ Metadata\": \"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/meta/meta_2018_aoi1.xml\",\n",
" \"onlink\": \"https://geonb.snb.ca/li/\",\n",
" \"histogram of classification of points\": [\n",
" {\n",
" \"name\": \"unclassified\",\n",
" \"label\": 1,\n",
" \"count\": 27\n",
" },\n",
" {\n",
" \"name\": \"ground\",\n",
" \"label\": 2,\n",
" \"count\": 2767664\n",
" },\n",
" {\n",
" \"name\": \"low vegetation\",\n",
" \"label\": 3,\n",
" \"count\": 2530027\n",
" },\n",
" {\n",
" \"name\": \"medium vegetation\",\n",
" \"label\": 4,\n",
" \"count\": 2828566\n",
" },\n",
" {\n",
" \"name\": \"high vegetation\",\n",
" \"label\": 5,\n",
" \"count\": 10364720\n",
" },\n",
" {\n",
" \"name\": \"noise\",\n",
" \"label\": 7,\n",
" \"count\": 11045\n",
" },\n",
" {\n",
" \"name\": \"keypoint\",\n",
" \"label\": 8,\n",
" \"count\": 11354\n",
" }\n",
" ],\n",
" \"class_names\": [\n",
" \"unclassified\",\n",
" \"ground\",\n",
" \"low vegetation\",\n",
" \"medium vegetation\",\n",
" \"high vegetation\",\n",
" \"noise\",\n",
" \"keypoint\"\n",
" ],\n",
" \"class_labels\": [\n",
" 1,\n",
" 2,\n",
" 3,\n",
" 4,\n",
" 5,\n",
" 7,\n",
" 8\n",
" ],\n",
" \"class_count\": [\n",
" 27,\n",
" 2767664,\n",
" 2530027,\n",
" 2828566,\n",
" 10364720,\n",
" 11045,\n",
" 11354\n",
" ],\n",
" \"class_frequency\": [\n",
" 0.00014584028662909787,\n",
" 14.949515224186499,\n",
" 13.665920846642834,\n",
" 15.27847689590077,\n",
" 55.98495317149419,\n",
" 0.05965948021549577,\n",
" 0.06132854127358433\n",
" ],\n",
" \"bbox\": [\n",
" 246500000,\n",
" 743500000,\n",
" 246599999,\n",
" 743599999\n",
" ]\n",
" },\n",
" \"geometry\": {\n",
" \"type\": \"Polygon\",\n",
" \"coordinates\": [\n",
" [\n",
" [\n",
" 246500000,\n",
" 743500000\n",
" ],\n",
" [\n",
" 246599999,\n",
" 743500000\n",
" ],\n",
" [\n",
" 246599999,\n",
" 743599999\n",
" ],\n",
" [\n",
" 246500000,\n",
" 743599999\n",
" ]\n",
" ]\n",
" ]\n",
" }\n",
" },\n",
" {\n",
" \"type\": \"Feature\",\n",
" \"properties\": {\n",
" \"id\": \"nb_2018_2464000_7437000\",\n",
" \"name\": \"nb_2018_2464000_7437000\",\n",
" \"crs\": {\n",
" \"type\": \"name\",\n",
" \"properties\": {\n",
" \"name\": \"urn:ogc:def:crs:EPSG::2953\"\n",
" }\n",
" },\n",
" \"featureclass\": \"LIDAR\",\n",
" \"LAZ Metadata\": \"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/meta/meta_2018_aoi1.xml\",\n",
" \"onlink\": \"https://geonb.snb.ca/li/\",\n",
" \"histogram of classification of points\": [\n",
" {\n",
" \"name\": \"unclassified\",\n",
" \"label\": 1,\n",
" \"count\": 55\n",
" },\n",
" {\n",
" \"name\": \"ground\",\n",
" \"label\": 2,\n",
" \"count\": 1932161\n",
" },\n",
" {\n",
" \"name\": \"low vegetation\",\n",
" \"label\": 3,\n",
" \"count\": 1755421\n",
" },\n",
" {\n",
" \"name\": \"medium vegetation\",\n",
" \"label\": 4,\n",
" \"count\": 1636968\n",
" },\n",
" {\n",
" \"name\": \"high vegetation\",\n",
" \"label\": 5,\n",
" \"count\": 18496095\n",
" },\n",
" {\n",
" \"name\": \"noise\",\n",
" \"label\": 7,\n",
" \"count\": 2250\n",
" },\n",
" {\n",
" \"name\": \"keypoint\",\n",
" \"label\": 8,\n",
" \"count\": 10718\n",
" }\n",
" ],\n",
" \"class_names\": [\n",
" \"unclassified\",\n",
" \"ground\",\n",
" \"low vegetation\",\n",
" \"medium vegetation\",\n",
" \"high vegetation\",\n",
" \"noise\",\n",
" \"keypoint\"\n",
" ],\n",
" \"class_labels\": [\n",
" 1,\n",
" 2,\n",
" 3,\n",
" 4,\n",
" 5,\n",
" 7,\n",
" 8\n",
" ],\n",
" \"class_count\": [\n",
" 55,\n",
" 1932161,\n",
" 1755421,\n",
" 1636968,\n",
" 18496095,\n",
" 2250,\n",
" 10718\n",
" ],\n",
" \"class_frequency\": [\n",
" 0.0002307659903628766,\n",
" 8.106855394645928,\n",
" 7.365299373978021,\n",
" 6.868300758406133,\n",
" 77.60490328219727,\n",
" 0.009440426878481314,\n",
" 0.04496999790380566\n",
" ],\n",
" \"bbox\": [\n",
" 246400000,\n",
" 743700000,\n",
" 246499999,\n",
" 743799999\n",
" ]\n",
" },\n",
" \"geometry\": {\n",
" \"type\": \"Polygon\",\n",
" \"coordinates\": [\n",
" [\n",
" [\n",
" 246400000,\n",
" 743700000\n",
" ],\n",
" [\n",
" 246499999,\n",
" 743700000\n",
" ],\n",
" [\n",
" 246499999,\n",
" 743799999\n",
" ],\n",
" [\n",
" 246400000,\n",
" 743799999\n",
" ]\n",
" ]\n",
" ]\n",
" }\n",
" },\n",
" {\n",
" \"type\": \"Feature\",\n",
" \"properties\": {\n",
" \"id\": \"nb_2018_2463000_7435000\",\n",
" \"name\": \"nb_2018_2463000_7435000\",\n",
" \"crs\": {\n",
" \"type\": \"name\",\n",
" \"properties\": {\n",
" \"name\": \"urn:ogc:def:crs:EPSG::2953\"\n",
" }\n",
" },\n",
" \"featureclass\": \"LIDAR\",\n",
" \"LAZ Metadata\": \"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/meta/meta_2018_aoi1.xml\",\n",
" \"onlink\": \"https://geonb.snb.ca/li/\",\n",
" \"histogram of classification of points\": [\n",
" {\n",
" \"name\": \"unclassified\",\n",
" \"label\": 1,\n",
" \"count\": 49\n",
" },\n",
" {\n",
" \"name\": \"ground\",\n",
" \"label\": 2,\n",
" \"count\": 1937841\n",
" },\n",
" {\n",
" \"name\": \"low vegetation\",\n",
" \"label\": 3,\n",
" \"count\": 1196236\n",
" },\n",
" {\n",
" \"name\": \"medium vegetation\",\n",
" \"label\": 4,\n",
" \"count\": 869866\n",
" },\n",
" {\n",
" \"name\": \"high vegetation\",\n",
" \"label\": 5,\n",
" \"count\": 21948373\n",
" },\n",
" {\n",
" \"name\": \"noise\",\n",
" \"label\": 7,\n",
" \"count\": 1289\n",
" },\n",
" {\n",
" \"name\": \"keypoint\",\n",
" \"label\": 8,\n",
" \"count\": 10757\n",
" }\n",
" ],\n",
" \"class_names\": [\n",
" \"unclassified\",\n",
" \"ground\",\n",
" \"low vegetation\",\n",
" \"medium vegetation\",\n",
" \"high vegetation\",\n",
" \"noise\",\n",
" \"keypoint\"\n",
" ],\n",
" \"class_labels\": [\n",
" 1,\n",
" 2,\n",
" 3,\n",
" 4,\n",
" 5,\n",
" 7,\n",
" 8\n",
" ],\n",
" \"class_count\": [\n",
" 49,\n",
" 1937841,\n",
" 1196236,\n",
" 869866,\n",
" 21948373,\n",
" 1289,\n",
" 10757\n",
" ],\n",
" \"class_frequency\": [\n",
" 0.00018871985965712837,\n",
" 7.463450644037333,\n",
" 4.607214082383767,\n",
" 3.350224274296074,\n",
" 84.53252800535317,\n",
" 0.004964487736694663,\n",
" 0.04142978633330061\n",
" ],\n",
" \"bbox\": [\n",
" 246300000,\n",
" 743500000,\n",
" 246399999,\n",
" 743599999\n",
" ]\n",
" },\n",
" \"geometry\": {\n",
" \"type\": \"Polygon\",\n",
" \"coordinates\": [\n",
" [\n",
" [\n",
" 246300000,\n",
" 743500000\n",
" ],\n",
" [\n",
" 246399999,\n",
" 743500000\n",
" ],\n",
" [\n",
" 246399999,\n",
" 743599999\n",
" ],\n",
" [\n",
" 246300000,\n",
" 743599999\n",
" ]\n",
" ]\n",
" ]\n",
" }\n",
" },\n",
" {\n",
" \"type\": \"Feature\",\n",
" \"properties\": {\n",
" \"id\": \"nb_2018_2466000_7436000\",\n",
" \"name\": \"nb_2018_2466000_7436000\",\n",
" \"crs\": {\n",
" \"type\": \"name\",\n",
" \"properties\": {\n",
" \"name\": \"urn:ogc:def:crs:EPSG::2953\"\n",
" }\n",
" },\n",
" \"featureclass\": \"LIDAR\",\n",
" \"LAZ Metadata\": \"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/meta/meta_2018_aoi1.xml\",\n",
" \"onlink\": \"https://geonb.snb.ca/li/\",\n",
" \"histogram of classification of points\": [\n",
" {\n",
" \"name\": \"unclassified\",\n",
" \"label\": 1,\n",
" \"count\": 12\n",
" },\n",
" {\n",
" \"name\": \"ground\",\n",
" \"label\": 2,\n",
" \"count\": 2557619\n",
" },\n",
" {\n",
" \"name\": \"low vegetation\",\n",
" \"label\": 3,\n",
" \"count\": 2254866\n",
" },\n",
" {\n",
" \"name\": \"medium vegetation\",\n",
" \"label\": 4,\n",
" \"count\": 2732560\n",
" },\n",
" {\n",
" \"name\": \"high vegetation\",\n",
" \"label\": 5,\n",
" \"count\": 13172989\n",
" },\n",
" {\n",
" \"name\": \"noise\",\n",
" \"label\": 7,\n",
" \"count\": 4279\n",
" },\n",
" {\n",
" \"name\": \"keypoint\",\n",
" \"label\": 8,\n",
" \"count\": 10729\n",
" }\n",
" ],\n",
" \"class_names\": [\n",
" \"unclassified\",\n",
" \"ground\",\n",
" \"low vegetation\",\n",
" \"medium vegetation\",\n",
" \"high vegetation\",\n",
" \"noise\",\n",
" \"keypoint\"\n",
" ],\n",
" \"class_labels\": [\n",
" 1,\n",
" 2,\n",
" 3,\n",
" 4,\n",
" 5,\n",
" 7,\n",
" 8\n",
" ],\n",
" \"class_count\": [\n",
" 12,\n",
" 2557619,\n",
" 2254866,\n",
" 2732560,\n",
" 13172989,\n",
" 4279,\n",
" 10729\n",
" ],\n",
" \"class_frequency\": [\n",
" 5.787859328394167e-05,\n",
" 12.3359491563568,\n",
" 10.875706010315701,\n",
" 13.179727405330638,\n",
" 63.53617272206979,\n",
" 0.0206385417218322,\n",
" 0.05174828561195085\n",
" ],\n",
" \"bbox\": [\n",
" 246600000,\n",
" 743600000,\n",
" 246699999,\n",
" 743699999\n",
" ]\n",
" },\n",
" \"geometry\": {\n",
" \"type\": \"Polygon\",\n",
" \"coordinates\": [\n",
" [\n",
" [\n",
" 246600000,\n",
" 743600000\n",
" ],\n",
" [\n",
" 246699999,\n",
" 743600000\n",
" ],\n",
" [\n",
" 246699999,\n",
" 743699999\n",
" ],\n",
" [\n",
" 246600000,\n",
" 743699999\n",
" ]\n",
" ]\n",
" ]\n",
" }\n",
" },\n",
" {\n",
" \"type\": \"Feature\",\n",
" \"properties\": {\n",
" \"id\": \"nb_2018_2464000_7438000\",\n",
" \"name\": \"nb_2018_2464000_7438000\",\n",
" \"crs\": {\n",
" \"type\": \"name\",\n",
" \"properties\": {\n",
" \"name\": \"urn:ogc:def:crs:EPSG::2953\"\n",
" }\n",
" },\n",
" \"featureclass\": \"LIDAR\",\n",
" \"LAZ Metadata\": \"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/meta/meta_2018_aoi1.xml\",\n",
" \"onlink\": \"https://geonb.snb.ca/li/\",\n",
" \"histogram of classification of points\": [\n",
" {\n",
" \"name\": \"unclassified\",\n",
" \"label\": 1,\n",
" \"count\": 52\n",
" },\n",
" {\n",
" \"name\": \"ground\",\n",
" \"label\": 2,\n",
" \"count\": 1635722\n",
" },\n",
" {\n",
" \"name\": \"low vegetation\",\n",
" \"label\": 3,\n",
" \"count\": 1475789\n",
" },\n",
" {\n",
" \"name\": \"medium vegetation\",\n",
" \"label\": 4,\n",
" \"count\": 1872108\n",
" },\n",
" {\n",
" \"name\": \"high vegetation\",\n",
" \"label\": 5,\n",
" \"count\": 17740278\n",
" },\n",
" {\n",
" \"name\": \"noise\",\n",
" \"label\": 7,\n",
" \"count\": 3847\n",
" },\n",
" {\n",
" \"name\": \"keypoint\",\n",
" \"label\": 8,\n",
" \"count\": 10673\n",
" }\n",
" ],\n",
" \"class_names\": [\n",
" \"unclassified\",\n",
" \"ground\",\n",
" \"low vegetation\",\n",
" \"medium vegetation\",\n",
" \"high vegetation\",\n",
" \"noise\",\n",
" \"keypoint\"\n",
" ],\n",
" \"class_labels\": [\n",
" 1,\n",
" 2,\n",
" 3,\n",
" 4,\n",
" 5,\n",
" 7,\n",
" 8\n",
" ],\n",
" \"class_count\": [\n",
" 52,\n",
" 1635722,\n",
" 1475789,\n",
" 1872108,\n",
" 17740278,\n",
" 3847,\n",
" 10673\n",
" ],\n",
" \"class_frequency\": [\n",
" 0.00022868734038338287,\n",
" 7.193632957434382,\n",
" 6.490274257251006,\n",
" 8.233219219816426,\n",
" 78.01878833618922,\n",
" 0.016918465354901425,\n",
" 0.04693807661368934\n",
" ],\n",
" \"bbox\": [\n",
" 246400000,\n",
" 743800000,\n",
" 246499999,\n",
" 743899999\n",
" ]\n",
" },\n",
" \"geometry\": {\n",
" \"type\": \"Polygon\",\n",
" \"coordinates\": [\n",
" [\n",
" [\n",
" 246400000,\n",
" 743800000\n",
" ],\n",
" [\n",
" 246499999,\n",
" 743800000\n",
" ],\n",
" [\n",
" 246499999,\n",
" 743899999\n",
" ],\n",
" [\n",
" 246400000,\n",
" 743899999\n",
" ]\n",
" ]\n",
" ]\n",
" }\n",
" },\n",
" {\n",
" \"type\": \"Feature\",\n",
" \"properties\": {\n",
" \"id\": \"nb_2018_2466000_7438000\",\n",
" \"name\": \"nb_2018_2466000_7438000\",\n",
" \"crs\": {\n",
" \"type\": \"name\",\n",
" \"properties\": {\n",
" \"name\": \"urn:ogc:def:crs:EPSG::2953\"\n",
" }\n",
" },\n",
" \"featureclass\": \"LIDAR\",\n",
" \"LAZ Metadata\": \"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/meta/meta_2018_aoi1.xml\",\n",
" \"onlink\": \"https://geonb.snb.ca/li/\",\n",
" \"histogram of classification of points\": [\n",
" {\n",
" \"name\": \"unclassified\",\n",
" \"label\": 1,\n",
" \"count\": 10\n",
" },\n",
" {\n",
" \"name\": \"ground\",\n",
" \"label\": 2,\n",
" \"count\": 1697649\n",
" },\n",
" {\n",
" \"name\": \"low vegetation\",\n",
" \"label\": 3,\n",
" \"count\": 1098225\n",
" },\n",
" {\n",
" \"name\": \"medium vegetation\",\n",
" \"label\": 4,\n",
" \"count\": 865135\n",
" },\n",
" {\n",
" \"name\": \"high vegetation\",\n",
" \"label\": 5,\n",
" \"count\": 19306823\n",
" },\n",
" {\n",
" \"name\": \"building\",\n",
" \"label\": 6,\n",
" \"count\": 304\n",
" },\n",
" {\n",
" \"name\": \"noise\",\n",
" \"label\": 7,\n",
" \"count\": 2272\n",
" },\n",
" {\n",
" \"name\": \"keypoint\",\n",
" \"label\": 8,\n",
" \"count\": 10700\n",
" }\n",
" ],\n",
" \"class_names\": [\n",
" \"unclassified\",\n",
" \"ground\",\n",
" \"low vegetation\",\n",
" \"medium vegetation\",\n",
" \"high vegetation\",\n",
" \"building\",\n",
" \"noise\",\n",
" \"keypoint\"\n",
" ],\n",
" \"class_labels\": [\n",
" 1,\n",
" 2,\n",
" 3,\n",
" 4,\n",
" 5,\n",
" 6,\n",
" 7,\n",
" 8\n",
" ],\n",
" \"class_count\": [\n",
" 10,\n",
" 1697649,\n",
" 1098225,\n",
" 865135,\n",
" 19306823,\n",
" 304,\n",
" 2272,\n",
" 10700\n",
" ],\n",
" \"class_frequency\": [\n",
" 4.351398395848279e-05,\n",
" 7.387147135313435,\n",
" 4.778814503280476,\n",
" 3.7645470511922006,\n",
" 84.01167863112666,\n",
" 0.0013228251123378768,\n",
" 0.009886377155367288,\n",
" 0.046559962835576583\n",
" ],\n",
" \"bbox\": [\n",
" 246600000,\n",
" 743800000,\n",
" 246699999,\n",
" 743899999\n",
" ]\n",
" },\n",
" \"geometry\": {\n",
" \"type\": \"Polygon\",\n",
" \"coordinates\": [\n",
" [\n",
" [\n",
" 246600000,\n",
" 743800000\n",
" ],\n",
" [\n",
" 246699999,\n",
" 743800000\n",
" ],\n",
" [\n",
" 246699999,\n",
" 743899999\n",
" ],\n",
" [\n",
" 246600000,\n",
" 743899999\n",
" ]\n",
" ]\n",
" ]\n",
" }\n",
" },\n",
" {\n",
" \"type\": \"Feature\",\n",
" \"properties\": {\n",
" \"id\": \"nb_2018_2466000_7434000\",\n",
" \"name\": \"nb_2018_2466000_7434000\",\n",
" \"crs\": {\n",
" \"type\": \"name\",\n",
" \"properties\": {\n",
" \"name\": \"urn:ogc:def:crs:EPSG::2953\"\n",
" }\n",
" },\n",
" \"featureclass\": \"LIDAR\",\n",
" \"LAZ Metadata\": \"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/meta/meta_2018_aoi1.xml\",\n",
" \"onlink\": \"https://geonb.snb.ca/li/\",\n",
" \"histogram of classification of points\": [\n",
" {\n",
" \"name\": \"unclassified\",\n",
" \"label\": 1,\n",
" \"count\": 49\n",
" },\n",
" {\n",
" \"name\": \"ground\",\n",
" \"label\": 2,\n",
" \"count\": 2893234\n",
" },\n",
" {\n",
" \"name\": \"low vegetation\",\n",
" \"label\": 3,\n",
" \"count\": 2093070\n",
" },\n",
" {\n",
" \"name\": \"medium vegetation\",\n",
" \"label\": 4,\n",
" \"count\": 2211980\n",
" },\n",
" {\n",
" \"name\": \"high vegetation\",\n",
" \"label\": 5,\n",
" \"count\": 14628147\n",
" },\n",
" {\n",
" \"name\": \"noise\",\n",
" \"label\": 7,\n",
" \"count\": 12669\n",
" },\n",
" {\n",
" \"name\": \"keypoint\",\n",
" \"label\": 8,\n",
" \"count\": 10923\n",
" }\n",
" ],\n",
" \"class_names\": [\n",
" \"unclassified\",\n",
" \"ground\",\n",
" \"low vegetation\",\n",
" \"medium vegetation\",\n",
" \"high vegetation\",\n",
" \"noise\",\n",
" \"keypoint\"\n",
" ],\n",
" \"class_labels\": [\n",
" 1,\n",
" 2,\n",
" 3,\n",
" 4,\n",
" 5,\n",
" 7,\n",
" 8\n",
" ],\n",
" \"class_count\": [\n",
" 49,\n",
" 2893234,\n",
" 2093070,\n",
" 2211980,\n",
" 14628147,\n",
" 12669,\n",
" 10923\n",
" ],\n",
" \"class_frequency\": [\n",
" 0.00022425555394050878,\n",
" 13.24130190509212,\n",
" 9.57923616910736,\n",
" 10.12344490214952,\n",
" 66.94782058384064,\n",
" 0.05798150230351644,\n",
" 0.04999068195290158\n",
" ],\n",
" \"bbox\": [\n",
" 246600000,\n",
" 743400000,\n",
" 246699999,\n",
" 743499999\n",
" ]\n",
" },\n",
" \"geometry\": {\n",
" \"type\": \"Polygon\",\n",
" \"coordinates\": [\n",
" [\n",
" [\n",
" 246600000,\n",
" 743400000\n",
" ],\n",
" [\n",
" 246699999,\n",
" 743400000\n",
" ],\n",
" [\n",
" 246699999,\n",
" 743499999\n",
" ],\n",
" [\n",
" 246600000,\n",
" 743499999\n",
" ]\n",
" ]\n",
" ]\n",
" }\n",
" },\n",
" {\n",
" \"type\": \"Feature\",\n",
" \"properties\": {\n",
" \"id\": \"nb_2018_2465000_7434000\",\n",
" \"name\": \"nb_2018_2465000_7434000\",\n",
" \"crs\": {\n",
" \"type\": \"name\",\n",
" \"properties\": {\n",
" \"name\": \"urn:ogc:def:crs:EPSG::2953\"\n",
" }\n",
" },\n",
" \"featureclass\": \"LIDAR\",\n",
" \"LAZ Metadata\": \"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/meta/meta_2018_aoi1.xml\",\n",
" \"onlink\": \"https://geonb.snb.ca/li/\",\n",
" \"histogram of classification of points\": [\n",
" {\n",
" \"name\": \"unclassified\",\n",
" \"label\": 1,\n",
" \"count\": 49\n",
" },\n",
" {\n",
" \"name\": \"ground\",\n",
" \"label\": 2,\n",
" \"count\": 2692566\n",
" },\n",
" {\n",
" \"name\": \"low vegetation\",\n",
" \"label\": 3,\n",
" \"count\": 2331935\n",
" },\n",
" {\n",
" \"name\": \"medium vegetation\",\n",
" \"label\": 4,\n",
" \"count\": 2405031\n",
" },\n",
" {\n",
" \"name\": \"high vegetation\",\n",
" \"label\": 5,\n",
" \"count\": 14278623\n",
" },\n",
" {\n",
" \"name\": \"building\",\n",
" \"label\": 6,\n",
" \"count\": 395\n",
" },\n",
" {\n",
" \"name\": \"noise\",\n",
" \"label\": 7,\n",
" \"count\": 11252\n",
" },\n",
" {\n",
" \"name\": \"keypoint\",\n",
" \"label\": 8,\n",
" \"count\": 11502\n",
" }\n",
" ],\n",
" \"class_names\": [\n",
" \"unclassified\",\n",
" \"ground\",\n",
" \"low vegetation\",\n",
" \"medium vegetation\",\n",
" \"high vegetation\",\n",
" \"building\",\n",
" \"noise\",\n",
" \"keypoint\"\n",
" ],\n",
" \"class_labels\": [\n",
" 1,\n",
" 2,\n",
" 3,\n",
" 4,\n",
" 5,\n",
" 6,\n",
" 7,\n",
" 8\n",
" ],\n",
" \"class_count\": [\n",
" 49,\n",
" 2692566,\n",
" 2331935,\n",
" 2405031,\n",
" 14278623,\n",
" 395,\n",
" 11252,\n",
" 11502\n",
" ],\n",
" \"class_frequency\": [\n",
" 0.00022548066841489344,\n",
" 12.390236355739102,\n",
" 10.730740051022133,\n",
" 11.067101988541625,\n",
" 65.70517261396472,\n",
" 0.001817650286201692,\n",
" 0.051777724102130225,\n",
" 0.0529281356756756\n",
" ],\n",
" \"bbox\": [\n",
" 246500000,\n",
" 743400000,\n",
" 246599999,\n",
" 743499999\n",
" ]\n",
" },\n",
" \"geometry\": {\n",
" \"type\": \"Polygon\",\n",
" \"coordinates\": [\n",
" [\n",
" [\n",
" 246500000,\n",
" 743400000\n",
" ],\n",
" [\n",
" 246599999,\n",
" 743400000\n",
" ],\n",
" [\n",
" 246599999,\n",
" 743499999\n",
" ],\n",
" [\n",
" 246500000,\n",
" 743499999\n",
" ]\n",
" ]\n",
" ]\n",
" }\n",
" },\n",
" {\n",
" \"type\": \"Feature\",\n",
" \"properties\": {\n",
" \"id\": \"nb_2018_2465000_7436000\",\n",
" \"name\": \"nb_2018_2465000_7436000\",\n",
" \"crs\": {\n",
" \"type\": \"name\",\n",
" \"properties\": {\n",
" \"name\": \"urn:ogc:def:crs:EPSG::2953\"\n",
" }\n",
" },\n",
" \"featureclass\": \"LIDAR\",\n",
" \"LAZ Metadata\": \"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/meta/meta_2018_aoi1.xml\",\n",
" \"onlink\": \"https://geonb.snb.ca/li/\",\n",
" \"histogram of classification of points\": [\n",
" {\n",
" \"name\": \"unclassified\",\n",
" \"label\": 1,\n",
" \"count\": 23\n",
" },\n",
" {\n",
" \"name\": \"ground\",\n",
" \"label\": 2,\n",
" \"count\": 3254386\n",
" },\n",
" {\n",
" \"name\": \"low vegetation\",\n",
" \"label\": 3,\n",
" \"count\": 2990087\n",
" },\n",
" {\n",
" \"name\": \"medium vegetation\",\n",
" \"label\": 4,\n",
" \"count\": 3631046\n",
" },\n",
" {\n",
" \"name\": \"high vegetation\",\n",
" \"label\": 5,\n",
" \"count\": 8120335\n",
" },\n",
" {\n",
" \"name\": \"noise\",\n",
" \"label\": 7,\n",
" \"count\": 7349\n",
" },\n",
" {\n",
" \"name\": \"keypoint\",\n",
" \"label\": 8,\n",
" \"count\": 10755\n",
" }\n",
" ],\n",
" \"class_names\": [\n",
" \"unclassified\",\n",
" \"ground\",\n",
" \"low vegetation\",\n",
" \"medium vegetation\",\n",
" \"high vegetation\",\n",
" \"noise\",\n",
" \"keypoint\"\n",
" ],\n",
" \"class_labels\": [\n",
" 1,\n",
" 2,\n",
" 3,\n",
" 4,\n",
" 5,\n",
" 7,\n",
" 8\n",
" ],\n",
" \"class_count\": [\n",
" 23,\n",
" 3254386,\n",
" 2990087,\n",
" 3631046,\n",
" 8120335,\n",
" 7349,\n",
" 10755\n",
" ],\n",
" \"class_frequency\": [\n",
" 0.00012767860696644457,\n",
" 18.065890043960856,\n",
" 16.598701863846756,\n",
" 20.156821526568724,\n",
" 45.077959169602764,\n",
" 0.04079609054766961,\n",
" 0.059703626866265715\n",
" ],\n",
" \"bbox\": [\n",
" 246500000,\n",
" 743600000,\n",
" 246599999,\n",
" 743699999\n",
" ]\n",
" },\n",
" \"geometry\": {\n",
" \"type\": \"Polygon\",\n",
" \"coordinates\": [\n",
" [\n",
" [\n",
" 246500000,\n",
" 743600000\n",
" ],\n",
" [\n",
" 246599999,\n",
" 743600000\n",
" ],\n",
" [\n",
" 246599999,\n",
" 743699999\n",
" ],\n",
" [\n",
" 246500000,\n",
" 743699999\n",
" ]\n",
" ]\n",
" ]\n",
" }\n",
" },\n",
" {\n",
" \"type\": \"Feature\",\n",
" \"properties\": {\n",
" \"id\": \"nb_2018_2466000_7435000\",\n",
" \"name\": \"nb_2018_2466000_7435000\",\n",
" \"crs\": {\n",
" \"type\": \"name\",\n",
" \"properties\": {\n",
" \"name\": \"urn:ogc:def:crs:EPSG::2953\"\n",
" }\n",
" },\n",
" \"featureclass\": \"LIDAR\",\n",
" \"LAZ Metadata\": \"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/meta/meta_2018_aoi1.xml\",\n",
" \"onlink\": \"https://geonb.snb.ca/li/\",\n",
" \"histogram of classification of points\": [\n",
" {\n",
" \"name\": \"unclassified\",\n",
" \"label\": 1,\n",
" \"count\": 31\n",
" },\n",
" {\n",
" \"name\": \"ground\",\n",
" \"label\": 2,\n",
" \"count\": 3101939\n",
" },\n",
" {\n",
" \"name\": \"low vegetation\",\n",
" \"label\": 3,\n",
" \"count\": 2068591\n",
" },\n",
" {\n",
" \"name\": \"medium vegetation\",\n",
" \"label\": 4,\n",
" \"count\": 1885535\n",
" },\n",
" {\n",
" \"name\": \"high vegetation\",\n",
" \"label\": 5,\n",
" \"count\": 12157486\n",
" },\n",
" {\n",
" \"name\": \"noise\",\n",
" \"label\": 7,\n",
" \"count\": 8822\n",
" },\n",
" {\n",
" \"name\": \"keypoint\",\n",
" \"label\": 8,\n",
" \"count\": 10800\n",
" }\n",
" ],\n",
" \"class_names\": [\n",
" \"unclassified\",\n",
" \"ground\",\n",
" \"low vegetation\",\n",
" \"medium vegetation\",\n",
" \"high vegetation\",\n",
" \"noise\",\n",
" \"keypoint\"\n",
" ],\n",
" \"class_labels\": [\n",
" 1,\n",
" 2,\n",
" 3,\n",
" 4,\n",
" 5,\n",
" 7,\n",
" 8\n",
" ],\n",
" \"class_count\": [\n",
" 31,\n",
" 3101939,\n",
" 2068591,\n",
" 1885535,\n",
" 12157486,\n",
" 8822,\n",
" 10800\n",
" ],\n",
" \"class_frequency\": [\n",
" 0.0001611795933740421,\n",
" 16.12804086100267,\n",
" 10.755311491522681,\n",
" 9.803540793307242,\n",
" 63.21092419130999,\n",
" 0.04586859266921934,\n",
" 0.056152890594827566\n",
" ],\n",
" \"bbox\": [\n",
" 246600000,\n",
" 743500000,\n",
" 246699999,\n",
" 743599999\n",
" ]\n",
" },\n",
" \"geometry\": {\n",
" \"type\": \"Polygon\",\n",
" \"coordinates\": [\n",
" [\n",
" [\n",
" 246600000,\n",
" 743500000\n",
" ],\n",
" [\n",
" 246699999,\n",
" 743500000\n",
" ],\n",
" [\n",
" 246699999,\n",
" 743599999\n",
" ],\n",
" [\n",
" 246600000,\n",
" 743599999\n",
" ]\n",
" ]\n",
" ]\n",
" }\n",
" },\n",
" {\n",
" \"type\": \"Feature\",\n",
" \"properties\": {\n",
" \"id\": \"nb_2018_2465000_7438000\",\n",
" \"name\": \"nb_2018_2465000_7438000\",\n",
" \"crs\": {\n",
" \"type\": \"name\",\n",
" \"properties\": {\n",
" \"name\": \"urn:ogc:def:crs:EPSG::2953\"\n",
" }\n",
" },\n",
" \"featureclass\": \"LIDAR\",\n",
" \"LAZ Metadata\": \"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/meta/meta_2018_aoi1.xml\",\n",
" \"onlink\": \"https://geonb.snb.ca/li/\",\n",
" \"histogram of classification of points\": [\n",
" {\n",
" \"name\": \"unclassified\",\n",
" \"label\": 1,\n",
" \"count\": 24\n",
" },\n",
" {\n",
" \"name\": \"ground\",\n",
" \"label\": 2,\n",
" \"count\": 1879673\n",
" },\n",
" {\n",
" \"name\": \"low vegetation\",\n",
" \"label\": 3,\n",
" \"count\": 1551931\n",
" },\n",
" {\n",
" \"name\": \"medium vegetation\",\n",
" \"label\": 4,\n",
" \"count\": 1453260\n",
" },\n",
" {\n",
" \"name\": \"high vegetation\",\n",
" \"label\": 5,\n",
" \"count\": 18614547\n",
" },\n",
" {\n",
" \"name\": \"noise\",\n",
" \"label\": 7,\n",
" \"count\": 3906\n",
" },\n",
" {\n",
" \"name\": \"keypoint\",\n",
" \"label\": 8,\n",
" \"count\": 10709\n",
" },\n",
" {\n",
" \"name\": \"water\",\n",
" \"label\": 9,\n",
" \"count\": 68\n",
" }\n",
" ],\n",
" \"class_names\": [\n",
" \"unclassified\",\n",
" \"ground\",\n",
" \"low vegetation\",\n",
" \"medium vegetation\",\n",
" \"high vegetation\",\n",
" \"noise\",\n",
" \"keypoint\",\n",
" \"water\"\n",
" ],\n",
" \"class_labels\": [\n",
" 1,\n",
" 2,\n",
" 3,\n",
" 4,\n",
" 5,\n",
" 7,\n",
" 8,\n",
" 9\n",
" ],\n",
" \"class_count\": [\n",
" 24,\n",
" 1879673,\n",
" 1551931,\n",
" 1453260,\n",
" 18614547,\n",
" 3906,\n",
" 10709,\n",
" 68\n",
" ],\n",
" \"class_frequency\": [\n",
" 0.00010206634159103906,\n",
" 7.993806104060548,\n",
" 6.599996648821785,\n",
" 6.180372149191392,\n",
" 79.16327969435213,\n",
" 0.016611297093941605,\n",
" 0.045542852170768214,\n",
" 0.00028918796784127733\n",
" ],\n",
" \"bbox\": [\n",
" 246500000,\n",
" 743800000,\n",
" 246599999,\n",
" 743899999\n",
" ]\n",
" },\n",
" \"geometry\": {\n",
" \"type\": \"Polygon\",\n",
" \"coordinates\": [\n",
" [\n",
" [\n",
" 246500000,\n",
" 743800000\n",
" ],\n",
" [\n",
" 246599999,\n",
" 743800000\n",
" ],\n",
" [\n",
" 246599999,\n",
" 743899999\n",
" ],\n",
" [\n",
" 246500000,\n",
" 743899999\n",
" ]\n",
" ]\n",
" ]\n",
" }\n",
" },\n",
" {\n",
" \"type\": \"Feature\",\n",
" \"properties\": {\n",
" \"id\": \"nb_2018_2464000_7436000\",\n",
" \"name\": \"nb_2018_2464000_7436000\",\n",
" \"crs\": {\n",
" \"type\": \"name\",\n",
" \"properties\": {\n",
" \"name\": \"urn:ogc:def:crs:EPSG::2953\"\n",
" }\n",
" },\n",
" \"featureclass\": \"LIDAR\",\n",
" \"LAZ Metadata\": \"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/meta/meta_2018_aoi1.xml\",\n",
" \"onlink\": \"https://geonb.snb.ca/li/\",\n",
" \"histogram of classification of points\": [\n",
" {\n",
" \"name\": \"unclassified\",\n",
" \"label\": 1,\n",
" \"count\": 46\n",
" },\n",
" {\n",
" \"name\": \"ground\",\n",
" \"label\": 2,\n",
" \"count\": 1839329\n",
" },\n",
" {\n",
" \"name\": \"low vegetation\",\n",
" \"label\": 3,\n",
" \"count\": 1491325\n",
" },\n",
" {\n",
" \"name\": \"medium vegetation\",\n",
" \"label\": 4,\n",
" \"count\": 1420809\n",
" },\n",
" {\n",
" \"name\": \"high vegetation\",\n",
" \"label\": 5,\n",
" \"count\": 17848445\n",
" },\n",
" {\n",
" \"name\": \"noise\",\n",
" \"label\": 7,\n",
" \"count\": 3531\n",
" },\n",
" {\n",
" \"name\": \"keypoint\",\n",
" \"label\": 8,\n",
" \"count\": 10701\n",
" }\n",
" ],\n",
" \"class_names\": [\n",
" \"unclassified\",\n",
" \"ground\",\n",
" \"low vegetation\",\n",
" \"medium vegetation\",\n",
" \"high vegetation\",\n",
" \"noise\",\n",
" \"keypoint\"\n",
" ],\n",
" \"class_labels\": [\n",
" 1,\n",
" 2,\n",
" 3,\n",
" 4,\n",
" 5,\n",
" 7,\n",
" 8\n",
" ],\n",
" \"class_count\": [\n",
" 46,\n",
" 1839329,\n",
" 1491325,\n",
" 1420809,\n",
" 17848445,\n",
" 3531,\n",
" 10701\n",
" ],\n",
" \"class_frequency\": [\n",
" 0.00020341214138771125,\n",
" 8.133518491446033,\n",
" 6.594643733804967,\n",
" 6.282821765063752,\n",
" 78.92587864979973,\n",
" 0.01561409285304366,\n",
" 0.047319854891084735\n",
" ],\n",
" \"bbox\": [\n",
" 246400000,\n",
" 743600000,\n",
" 246499999,\n",
" 743699999\n",
" ]\n",
" },\n",
" \"geometry\": {\n",
" \"type\": \"Polygon\",\n",
" \"coordinates\": [\n",
" [\n",
" [\n",
" 246400000,\n",
" 743600000\n",
" ],\n",
" [\n",
" 246499999,\n",
" 743600000\n",
" ],\n",
" [\n",
" 246499999,\n",
" 743699999\n",
" ],\n",
" [\n",
" 246400000,\n",
" 743699999\n",
" ]\n",
" ]\n",
" ]\n",
" }\n",
" },\n",
" {\n",
" \"type\": \"Feature\",\n",
" \"properties\": {\n",
" \"id\": \"nb_2018_2466000_7437000\",\n",
" \"name\": \"nb_2018_2466000_7437000\",\n",
" \"crs\": {\n",
" \"type\": \"name\",\n",
" \"properties\": {\n",
" \"name\": \"urn:ogc:def:crs:EPSG::2953\"\n",
" }\n",
" },\n",
" \"featureclass\": \"LIDAR\",\n",
" \"LAZ Metadata\": \"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/meta/meta_2018_aoi1.xml\",\n",
" \"onlink\": \"https://geonb.snb.ca/li/\",\n",
" \"histogram of classification of points\": [\n",
" {\n",
" \"name\": \"unclassified\",\n",
" \"label\": 1,\n",
" \"count\": 8\n",
" },\n",
" {\n",
" \"name\": \"ground\",\n",
" \"label\": 2,\n",
" \"count\": 1683764\n",
" },\n",
" {\n",
" \"name\": \"low vegetation\",\n",
" \"label\": 3,\n",
" \"count\": 1340078\n",
" },\n",
" {\n",
" \"name\": \"medium vegetation\",\n",
" \"label\": 4,\n",
" \"count\": 1327314\n",
" },\n",
" {\n",
" \"name\": \"high vegetation\",\n",
" \"label\": 5,\n",
" \"count\": 19267185\n",
" },\n",
" {\n",
" \"name\": \"noise\",\n",
" \"label\": 7,\n",
" \"count\": 2786\n",
" },\n",
" {\n",
" \"name\": \"keypoint\",\n",
" \"label\": 8,\n",
" \"count\": 10690\n",
" }\n",
" ],\n",
" \"class_names\": [\n",
" \"unclassified\",\n",
" \"ground\",\n",
" \"low vegetation\",\n",
" \"medium vegetation\",\n",
" \"high vegetation\",\n",
" \"noise\",\n",
" \"keypoint\"\n",
" ],\n",
" \"class_labels\": [\n",
" 1,\n",
" 2,\n",
" 3,\n",
" 4,\n",
" 5,\n",
" 7,\n",
" 8\n",
" ],\n",
" \"class_count\": [\n",
" 8,\n",
" 1683764,\n",
" 1340078,\n",
" 1327314,\n",
" 19267185,\n",
" 2786,\n",
" 10690\n",
" ],\n",
" \"class_frequency\": [\n",
" 3.385265420677413e-05,\n",
" 7.124985057226854,\n",
" 5.670649643013182,\n",
" 5.616637733226274,\n",
" 81.53066891786818,\n",
" 0.011789186827509091,\n",
" 0.04523560918380193\n",
" ],\n",
" \"bbox\": [\n",
" 246600000,\n",
" 743700000,\n",
" 246699999,\n",
" 743799999\n",
" ]\n",
" },\n",
" \"geometry\": {\n",
" \"type\": \"Polygon\",\n",
" \"coordinates\": [\n",
" [\n",
" [\n",
" 246600000,\n",
" 743700000\n",
" ],\n",
" [\n",
" 246699999,\n",
" 743700000\n",
" ],\n",
" [\n",
" 246699999,\n",
" 743799999\n",
" ],\n",
" [\n",
" 246600000,\n",
" 743799999\n",
" ]\n",
" ]\n",
" ]\n",
" }\n",
" },\n",
" {\n",
" \"type\": \"Feature\",\n",
" \"properties\": {\n",
" \"id\": \"nb_2018_2463000_7437000\",\n",
" \"name\": \"nb_2018_2463000_7437000\",\n",
" \"crs\": {\n",
" \"type\": \"name\",\n",
" \"properties\": {\n",
" \"name\": \"urn:ogc:def:crs:EPSG::2953\"\n",
" }\n",
" },\n",
" \"featureclass\": \"LIDAR\",\n",
" \"LAZ Metadata\": \"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/meta/meta_2018_aoi1.xml\",\n",
" \"onlink\": \"https://geonb.snb.ca/li/\",\n",
" \"histogram of classification of points\": [\n",
" {\n",
" \"name\": \"unclassified\",\n",
" \"label\": 1,\n",
" \"count\": 46\n",
" },\n",
" {\n",
" \"name\": \"ground\",\n",
" \"label\": 2,\n",
" \"count\": 1508887\n",
" },\n",
" {\n",
" \"name\": \"low vegetation\",\n",
" \"label\": 3,\n",
" \"count\": 1343395\n",
" },\n",
" {\n",
" \"name\": \"medium vegetation\",\n",
" \"label\": 4,\n",
" \"count\": 1487455\n",
" },\n",
" {\n",
" \"name\": \"high vegetation\",\n",
" \"label\": 5,\n",
" \"count\": 20274422\n",
" },\n",
" {\n",
" \"name\": \"noise\",\n",
" \"label\": 7,\n",
" \"count\": 3008\n",
" },\n",
" {\n",
" \"name\": \"keypoint\",\n",
" \"label\": 8,\n",
" \"count\": 10653\n",
" }\n",
" ],\n",
" \"class_names\": [\n",
" \"unclassified\",\n",
" \"ground\",\n",
" \"low vegetation\",\n",
" \"medium vegetation\",\n",
" \"high vegetation\",\n",
" \"noise\",\n",
" \"keypoint\"\n",
" ],\n",
" \"class_labels\": [\n",
" 1,\n",
" 2,\n",
" 3,\n",
" 4,\n",
" 5,\n",
" 7,\n",
" 8\n",
" ],\n",
" \"class_count\": [\n",
" 46,\n",
" 1508887,\n",
" 1343395,\n",
" 1487455,\n",
" 20274422,\n",
" 3008,\n",
" 10653\n",
" ],\n",
" \"class_frequency\": [\n",
" 0.00018678029188562258,\n",
" 6.1267468322265515,\n",
" 5.454776309080129,\n",
" 6.0397234579723635,\n",
" 82.32309693418017,\n",
" 0.012213806912868538,\n",
" 0.04325587933603342\n",
" ],\n",
" \"bbox\": [\n",
" 246300000,\n",
" 743700000,\n",
" 246399999,\n",
" 743799999\n",
" ]\n",
" },\n",
" \"geometry\": {\n",
" \"type\": \"Polygon\",\n",
" \"coordinates\": [\n",
" [\n",
" [\n",
" 246300000,\n",
" 743700000\n",
" ],\n",
" [\n",
" 246399999,\n",
" 743700000\n",
" ],\n",
" [\n",
" 246399999,\n",
" 743799999\n",
" ],\n",
" [\n",
" 246300000,\n",
" 743799999\n",
" ]\n",
" ]\n",
" ]\n",
" }\n",
" },\n",
" {\n",
" \"type\": \"Feature\",\n",
" \"properties\": {\n",
" \"id\": \"nb_2018_2465000_7437000\",\n",
" \"name\": \"nb_2018_2465000_7437000\",\n",
" \"crs\": {\n",
" \"type\": \"name\",\n",
" \"properties\": {\n",
" \"name\": \"urn:ogc:def:crs:EPSG::2953\"\n",
" }\n",
" },\n",
" \"featureclass\": \"LIDAR\",\n",
" \"LAZ Metadata\": \"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/meta/meta_2018_aoi1.xml\",\n",
" \"onlink\": \"https://geonb.snb.ca/li/\",\n",
" \"histogram of classification of points\": [\n",
" {\n",
" \"name\": \"unclassified\",\n",
" \"label\": 1,\n",
" \"count\": 82\n",
" },\n",
" {\n",
" \"name\": \"ground\",\n",
" \"label\": 2,\n",
" \"count\": 2752953\n",
" },\n",
" {\n",
" \"name\": \"low vegetation\",\n",
" \"label\": 3,\n",
" \"count\": 2459680\n",
" },\n",
" {\n",
" \"name\": \"medium vegetation\",\n",
" \"label\": 4,\n",
" \"count\": 2238967\n",
" },\n",
" {\n",
" \"name\": \"high vegetation\",\n",
" \"label\": 5,\n",
" \"count\": 13901427\n",
" },\n",
" {\n",
" \"name\": \"noise\",\n",
" \"label\": 7,\n",
" \"count\": 5743\n",
" },\n",
" {\n",
" \"name\": \"keypoint\",\n",
" \"label\": 8,\n",
" \"count\": 10719\n",
" },\n",
" {\n",
" \"name\": \"water\",\n",
" \"label\": 9,\n",
" \"count\": 7906\n",
" }\n",
" ],\n",
" \"class_names\": [\n",
" \"unclassified\",\n",
" \"ground\",\n",
" \"low vegetation\",\n",
" \"medium vegetation\",\n",
" \"high vegetation\",\n",
" \"noise\",\n",
" \"keypoint\",\n",
" \"water\"\n",
" ],\n",
" \"class_labels\": [\n",
" 1,\n",
" 2,\n",
" 3,\n",
" 4,\n",
" 5,\n",
" 7,\n",
" 8,\n",
" 9\n",
" ],\n",
" \"class_count\": [\n",
" 82,\n",
" 2752953,\n",
" 2459680,\n",
" 2238967,\n",
" 13901427,\n",
" 5743,\n",
" 10719,\n",
" 7906\n",
" ],\n",
" \"class_frequency\": [\n",
" 0.0003835812804289299,\n",
" 12.877819959764194,\n",
" 11.505941510310127,\n",
" 10.473485715830732,\n",
" 65.02838010304023,\n",
" 0.026864723091504204,\n",
" 0.05014155786485001,\n",
" 0.03698284881794049\n",
" ],\n",
" \"bbox\": [\n",
" 246500000,\n",
" 743700000,\n",
" 246599999,\n",
" 743799999\n",
" ]\n",
" },\n",
" \"geometry\": {\n",
" \"type\": \"Polygon\",\n",
" \"coordinates\": [\n",
" [\n",
" [\n",
" 246500000,\n",
" 743700000\n",
" ],\n",
" [\n",
" 246599999,\n",
" 743700000\n",
" ],\n",
" [\n",
" 246599999,\n",
" 743799999\n",
" ],\n",
" [\n",
" 246500000,\n",
" 743799999\n",
" ]\n",
" ]\n",
" ]\n",
" }\n",
" },\n",
" {\n",
" \"type\": \"Feature\",\n",
" \"properties\": {\n",
" \"id\": \"nb_2018_2463000_7438000\",\n",
" \"name\": \"nb_2018_2463000_7438000\",\n",
" \"crs\": {\n",
" \"type\": \"name\",\n",
" \"properties\": {\n",
" \"name\": \"urn:ogc:def:crs:EPSG::2953\"\n",
" }\n",
" },\n",
" \"featureclass\": \"LIDAR\",\n",
" \"LAZ Metadata\": \"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/meta/meta_2018_aoi1.xml\",\n",
" \"onlink\": \"https://geonb.snb.ca/li/\",\n",
" \"histogram of classification of points\": [\n",
" {\n",
" \"name\": \"unclassified\",\n",
" \"label\": 1,\n",
" \"count\": 38\n",
" },\n",
" {\n",
" \"name\": \"ground\",\n",
" \"label\": 2,\n",
" \"count\": 1864555\n",
" },\n",
" {\n",
" \"name\": \"low vegetation\",\n",
" \"label\": 3,\n",
" \"count\": 1514541\n",
" },\n",
" {\n",
" \"name\": \"medium vegetation\",\n",
" \"label\": 4,\n",
" \"count\": 1632000\n",
" },\n",
" {\n",
" \"name\": \"high vegetation\",\n",
" \"label\": 5,\n",
" \"count\": 16877075\n",
" },\n",
" {\n",
" \"name\": \"building\",\n",
" \"label\": 6,\n",
" \"count\": 316\n",
" },\n",
" {\n",
" \"name\": \"noise\",\n",
" \"label\": 7,\n",
" \"count\": 6504\n",
" },\n",
" {\n",
" \"name\": \"keypoint\",\n",
" \"label\": 8,\n",
" \"count\": 10772\n",
" }\n",
" ],\n",
" \"class_names\": [\n",
" \"unclassified\",\n",
" \"ground\",\n",
" \"low vegetation\",\n",
" \"medium vegetation\",\n",
" \"high vegetation\",\n",
" \"building\",\n",
" \"noise\",\n",
" \"keypoint\"\n",
" ],\n",
" \"class_labels\": [\n",
" 1,\n",
" 2,\n",
" 3,\n",
" 4,\n",
" 5,\n",
" 6,\n",
" 7,\n",
" 8\n",
" ],\n",
" \"class_count\": [\n",
" 38,\n",
" 1864555,\n",
" 1514541,\n",
" 1632000,\n",
" 16877075,\n",
" 316,\n",
" 6504,\n",
" 10772\n",
" ],\n",
" \"class_frequency\": [\n",
" 0.0001734700319792004,\n",
" 8.511695144131,\n",
" 6.913880939573951,\n",
" 7.450081373422501,\n",
" 77.04386157803587,\n",
" 0.001442540265932298,\n",
" 0.029690765473492618,\n",
" 0.04917418906526175\n",
" ],\n",
" \"bbox\": [\n",
" 246300000,\n",
" 743800000,\n",
" 246399999,\n",
" 743899999\n",
" ]\n",
" },\n",
" \"geometry\": {\n",
" \"type\": \"Polygon\",\n",
" \"coordinates\": [\n",
" [\n",
" [\n",
" 246300000,\n",
" 743800000\n",
" ],\n",
" [\n",
" 246399999,\n",
" 743800000\n",
" ],\n",
" [\n",
" 246399999,\n",
" 743899999\n",
" ],\n",
" [\n",
" 246300000,\n",
" 743899999\n",
" ]\n",
" ]\n",
" ]\n",
" }\n",
" },\n",
" {\n",
" \"type\": \"Feature\",\n",
" \"properties\": {\n",
" \"id\": \"nb_2018_2464000_7435000\",\n",
" \"name\": \"nb_2018_2464000_7435000\",\n",
" \"crs\": {\n",
" \"type\": \"name\",\n",
" \"properties\": {\n",
" \"name\": \"urn:ogc:def:crs:EPSG::2953\"\n",
" }\n",
" },\n",
" \"featureclass\": \"LIDAR\",\n",
" \"LAZ Metadata\": \"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/meta/meta_2018_aoi1.xml\",\n",
" \"onlink\": \"https://geonb.snb.ca/li/\",\n",
" \"histogram of classification of points\": [\n",
" {\n",
" \"name\": \"unclassified\",\n",
" \"label\": 1,\n",
" \"count\": 76\n",
" },\n",
" {\n",
" \"name\": \"ground\",\n",
" \"label\": 2,\n",
" \"count\": 1878609\n",
" },\n",
" {\n",
" \"name\": \"low vegetation\",\n",
" \"label\": 3,\n",
" \"count\": 1651889\n",
" },\n",
" {\n",
" \"name\": \"medium vegetation\",\n",
" \"label\": 4,\n",
" \"count\": 1835136\n",
" },\n",
" {\n",
" \"name\": \"high vegetation\",\n",
" \"label\": 5,\n",
" \"count\": 15909037\n",
" },\n",
" {\n",
" \"name\": \"noise\",\n",
" \"label\": 7,\n",
" \"count\": 5197\n",
" },\n",
" {\n",
" \"name\": \"keypoint\",\n",
" \"label\": 8,\n",
" \"count\": 11412\n",
" }\n",
" ],\n",
" \"class_names\": [\n",
" \"unclassified\",\n",
" \"ground\",\n",
" \"low vegetation\",\n",
" \"medium vegetation\",\n",
" \"high vegetation\",\n",
" \"noise\",\n",
" \"keypoint\"\n",
" ],\n",
" \"class_labels\": [\n",
" 1,\n",
" 2,\n",
" 3,\n",
" 4,\n",
" 5,\n",
" 7,\n",
" 8\n",
" ],\n",
" \"class_count\": [\n",
" 76,\n",
" 1878609,\n",
" 1651889,\n",
" 1835136,\n",
" 15909037,\n",
" 5197,\n",
" 11412\n",
" ],\n",
" \"class_frequency\": [\n",
" 0.0003569523707179571,\n",
" 8.823341265816982,\n",
" 7.758495983064677,\n",
" 8.619159813024591,\n",
" 74.720637802496,\n",
" 0.024408966718700305,\n",
" 0.05359921650833324\n",
" ],\n",
" \"bbox\": [\n",
" 246400000,\n",
" 743500000,\n",
" 246499999,\n",
" 743599999\n",
" ]\n",
" },\n",
" \"geometry\": {\n",
" \"type\": \"Polygon\",\n",
" \"coordinates\": [\n",
" [\n",
" [\n",
" 246400000,\n",
" 743500000\n",
" ],\n",
" [\n",
" 246499999,\n",
" 743500000\n",
" ],\n",
" [\n",
" 246499999,\n",
" 743599999\n",
" ],\n",
" [\n",
" 246400000,\n",
" 743599999\n",
" ]\n",
" ]\n",
" ]\n",
" }\n",
" }\n",
" ]\n",
"}\n"
],
"name": "stdout"
}
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "eta7ihq79-Sy",
"colab_type": "text"
},
"source": [
"Attempt to use OGR to reproject to EPSG:4326 but it does not work (see https://trac.osgeo.org/grass/ticket/2893)"
]
},
{
"cell_type": "code",
"metadata": {
"id": "rlTH-XWnfEhl",
"colab_type": "code",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 1000
},
"outputId": "599bd107-fa00-4205-fbcb-e63d4d750bcc"
},
"source": [
"!ogrinfo -so -al nb_lidar.json\n",
"!ogr2ogr -f GeoJSON -t_srs \"EPSG:4326\" nb_lidar_4326.json nb_lidar.json\n",
"!ogrinfo -so -al nb_lidar_4326.json"
],
"execution_count": null,
"outputs": [
{
"output_type": "stream",
"text": [
"INFO: Open of `nb_lidar.json'\n",
" using driver `GeoJSON' successful.\n",
"\n",
"Layer name: nb_lidar\n",
"Geometry: Polygon\n",
"Feature Count: 20\n",
"Extent: (246300000.000000, 743400000.000000) - (246699999.000000, 743899999.000000)\n",
"Layer SRS WKT:\n",
"PROJCS[\"NAD83(CSRS) / New Brunswick Stereographic\",\n",
" GEOGCS[\"NAD83(CSRS)\",\n",
" DATUM[\"NAD83_Canadian_Spatial_Reference_System\",\n",
" SPHEROID[\"GRS 1980\",6378137,298.257222101,\n",
" AUTHORITY[\"EPSG\",\"7019\"]],\n",
" TOWGS84[0,0,0,0,0,0,0],\n",
" AUTHORITY[\"EPSG\",\"6140\"]],\n",
" PRIMEM[\"Greenwich\",0,\n",
" AUTHORITY[\"EPSG\",\"8901\"]],\n",
" UNIT[\"degree\",0.0174532925199433,\n",
" AUTHORITY[\"EPSG\",\"9122\"]],\n",
" AUTHORITY[\"EPSG\",\"4617\"]],\n",
" PROJECTION[\"Oblique_Stereographic\"],\n",
" PARAMETER[\"latitude_of_origin\",46.5],\n",
" PARAMETER[\"central_meridian\",-66.5],\n",
" PARAMETER[\"scale_factor\",0.999912],\n",
" PARAMETER[\"false_easting\",2500000],\n",
" PARAMETER[\"false_northing\",7500000],\n",
" UNIT[\"metre\",1,\n",
" AUTHORITY[\"EPSG\",\"9001\"]],\n",
" AXIS[\"Northing\",NORTH],\n",
" AXIS[\"Easting\",EAST],\n",
" AUTHORITY[\"EPSG\",\"2953\"]]\n",
"id: String (0.0)\n",
"name: String (0.0)\n",
"crs: String (0.0)\n",
"featureclass: String (0.0)\n",
"LAZ Metadata: String (0.0)\n",
"onlink: String (0.0)\n",
"histogram of classification of points: String (0.0)\n",
"class_names: StringList (0.0)\n",
"class_labels: IntegerList (0.0)\n",
"class_count: IntegerList (0.0)\n",
"class_frequency: RealList (0.0)\n",
"bbox: IntegerList (0.0)\n",
"INFO: Open of `nb_lidar_4326.json'\n",
" using driver `GeoJSON' successful.\n",
"\n",
"Layer name: nb_lidar\n",
"Geometry: Polygon\n",
"Feature Count: 20\n",
"Extent: (112.529929, -44.951060) - (112.532038, -44.949509)\n",
"Layer SRS WKT:\n",
"GEOGCS[\"WGS 84\",\n",
" DATUM[\"WGS_1984\",\n",
" SPHEROID[\"WGS 84\",6378137,298.257223563,\n",
" AUTHORITY[\"EPSG\",\"7030\"]],\n",
" AUTHORITY[\"EPSG\",\"6326\"]],\n",
" PRIMEM[\"Greenwich\",0,\n",
" AUTHORITY[\"EPSG\",\"8901\"]],\n",
" UNIT[\"degree\",0.0174532925199433,\n",
" AUTHORITY[\"EPSG\",\"9122\"]],\n",
" AUTHORITY[\"EPSG\",\"4326\"]]\n",
"id: String (0.0)\n",
"name: String (0.0)\n",
"crs: String (0.0)\n",
"featureclass: String (0.0)\n",
"LAZ Metadata: String (0.0)\n",
"onlink: String (0.0)\n",
"histogram of classification of points: String (0.0)\n",
"class_names: StringList (0.0)\n",
"class_labels: IntegerList (0.0)\n",
"class_count: IntegerList (0.0)\n",
"class_frequency: RealList (0.0)\n",
"bbox: IntegerList (0.0)\n"
],
"name": "stdout"
}
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "xu-MjKeP91JW",
"colab_type": "text"
},
"source": [
"Attempt to visualize the geojson but it does not work"
]
},
{
"cell_type": "code",
"metadata": {
"id": "GxdzVp3OgP4o",
"colab_type": "code",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 68
},
"outputId": "47e29db3-15f2-4b45-afef-2b551d72b4de"
},
"source": [
"!pip --quiet install folium geopandas"
],
"execution_count": null,
"outputs": [
{
"output_type": "stream",
"text": [
"\u001b[K |████████████████████████████████| 972kB 3.4MB/s \n",
"\u001b[K |████████████████████████████████| 10.9MB 10.7MB/s \n",
"\u001b[K |████████████████████████████████| 14.7MB 307kB/s \n",
"\u001b[?25h"
],
"name": "stdout"
}
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "mndeTD0OlE3s",
"colab_type": "text"
},
"source": [
"https://github.com/python-visualization/folium/issues/481#issuecomment-237249676"
]
},
{
"cell_type": "code",
"metadata": {
"id": "wiRZTb-minhI",
"colab_type": "code",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 54
},
"outputId": "bdf04c6f-7580-4cad-f69f-3368bf8f5bbf"
},
"source": [
"import geopandas as gpd\n",
"df = gpd.read_file(\"/content/nb_lidar.json\")\n",
"#df = df.to_crs(epsg='4326')\n",
"#js = df.to_json()\n",
"print(js)"
],
"execution_count": null,
"outputs": [
{
"output_type": "stream",
"text": [
"{\"type\": \"FeatureCollection\", \"features\": [{\"id\": \"0\", \"type\": \"Feature\", \"properties\": {\"LAZ Metadata\": \"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/meta/meta_2018_aoi1.xml\", \"featureclass\": \"LIDAR\", \"histogram of classification of points\": \"[ { \\\"name\\\": \\\"unclassified\\\", \\\"label\\\": 1, \\\"count\\\": 91 }, { \\\"name\\\": \\\"ground\\\", \\\"label\\\": 2, \\\"count\\\": 2185856 }, { \\\"name\\\": \\\"low vegetation\\\", \\\"label\\\": 3, \\\"count\\\": 1631259 }, { \\\"name\\\": \\\"medium vegetation\\\", \\\"label\\\": 4, \\\"count\\\": 1651525 }, { \\\"name\\\": \\\"high vegetation\\\", \\\"label\\\": 5, \\\"count\\\": 17728529 }, { \\\"name\\\": \\\"noise\\\", \\\"label\\\": 7, \\\"count\\\": 3497 }, { \\\"name\\\": \\\"keypoint\\\", \\\"label\\\": 8, \\\"count\\\": 10768 } ]\", \"id\": \"nb_2018_2463000_7434000\", \"name\": \"nb_2018_2463000_7434000\", \"onlink\": \"https://geonb.snb.ca/li/\"}, \"geometry\": {\"type\": \"Polygon\", \"coordinates\": [[[112.53103288387163, -44.94950894571993], [112.53075675751715, -44.94965178073237], [112.53095789049516, -44.94984781939423], [112.53075675751715, -44.94965178073237], [112.53103288387163, -44.94950894571993]]]}}, {\"id\": \"1\", \"type\": \"Feature\", \"properties\": {\"LAZ Metadata\": \"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/meta/meta_2018_aoi1.xml\", \"featureclass\": \"LIDAR\", \"histogram of classification of points\": \"[ { \\\"name\\\": \\\"unclassified\\\", \\\"label\\\": 1, \\\"count\\\": 82 }, { \\\"name\\\": \\\"ground\\\", \\\"label\\\": 2, \\\"count\\\": 2752953 }, { \\\"name\\\": \\\"low vegetation\\\", \\\"label\\\": 3, \\\"count\\\": 2459680 }, { \\\"name\\\": \\\"medium vegetation\\\", \\\"label\\\": 4, \\\"count\\\": 2238967 }, { \\\"name\\\": \\\"high vegetation\\\", \\\"label\\\": 5, \\\"count\\\": 13901427 }, { \\\"name\\\": \\\"noise\\\", \\\"label\\\": 7, \\\"count\\\": 5743 }, { \\\"name\\\": \\\"keypoint\\\", \\\"label\\\": 8, \\\"count\\\": 10719 }, { \\\"name\\\": \\\"water\\\", \\\"label\\\": 9, \\\"count\\\": 7906 } ]\", \"id\": \"nb_2018_2465000_7437000\", \"name\": \"nb_2018_2465000_7437000\", \"onlink\": \"https://geonb.snb.ca/li/\"}, \"geometry\": {\"type\": \"Polygon\", \"coordinates\": [[[112.53108404255734, -44.950382514810016], [112.53080820908389, -44.95052527013628], [112.53100923291709, -44.95072109787814], [112.53080820908389, -44.95052527013628], [112.53108404255734, -44.950382514810016]]]}}, {\"id\": \"2\", \"type\": \"Feature\", \"properties\": {\"LAZ Metadata\": \"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/meta/meta_2018_aoi1.xml\", \"featureclass\": \"LIDAR\", \"histogram of classification of points\": \"[ { \\\"name\\\": \\\"unclassified\\\", \\\"label\\\": 1, \\\"count\\\": 46 }, { \\\"name\\\": \\\"ground\\\", \\\"label\\\": 2, \\\"count\\\": 1508887 }, { \\\"name\\\": \\\"low vegetation\\\", \\\"label\\\": 3, \\\"count\\\": 1343395 }, { \\\"name\\\": \\\"medium vegetation\\\", \\\"label\\\": 4, \\\"count\\\": 1487455 }, { \\\"name\\\": \\\"high vegetation\\\", \\\"label\\\": 5, \\\"count\\\": 20274422 }, { \\\"name\\\": \\\"noise\\\", \\\"label\\\": 7, \\\"count\\\": 3008 }, { \\\"name\\\": \\\"keypoint\\\", \\\"label\\\": 8, \\\"count\\\": 10653 } ]\", \"id\": \"nb_2018_2463000_7437000\", \"name\": \"nb_2018_2463000_7437000\", \"onlink\": \"https://geonb.snb.ca/li/\"}, \"geometry\": {\"type\": \"Polygon\", \"coordinates\": [[[112.5316359256171, -44.9500971084037], [112.53135995175055, -44.95023979232202], [112.53156087405983, -44.95043572072346], [112.53135995175055, -44.95023979232202], [112.5316359256171, -44.9500971084037]]]}}, {\"id\": \"3\", \"type\": \"Feature\", \"properties\": {\"LAZ Metadata\": \"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/meta/meta_2018_aoi1.xml\", \"featureclass\": \"LIDAR\", \"histogram of classification of points\": \"[ { \\\"name\\\": \\\"unclassified\\\", \\\"label\\\": 1, \\\"count\\\": 52 }, { \\\"name\\\": \\\"ground\\\", \\\"label\\\": 2, \\\"count\\\": 1635722 }, { \\\"name\\\": \\\"low vegetation\\\", \\\"label\\\": 3, \\\"count\\\": 1475789 }, { \\\"name\\\": \\\"medium vegetation\\\", \\\"label\\\": 4, \\\"count\\\": 1872108 }, { \\\"name\\\": \\\"high vegetation\\\", \\\"label\\\": 5, \\\"count\\\": 17740278 }, { \\\"name\\\": \\\"noise\\\", \\\"label\\\": 7, \\\"count\\\": 3847 }, { \\\"name\\\": \\\"keypoint\\\", \\\"label\\\": 8, \\\"count\\\": 10673 } ]\", \"id\": \"nb_2018_2464000_7438000\", \"name\": \"nb_2018_2464000_7438000\", \"onlink\": \"https://geonb.snb.ca/li/\"}, \"geometry\": {\"type\": \"Polygon\", \"coordinates\": [[[112.5315608733098, -44.95043572410911], [112.53128502041243, -44.950578393416414], [112.53148592332917, -44.95077423477597], [112.53128502041243, -44.950578393416414], [112.5315608733098, -44.95043572410911]]]}}, {\"id\": \"4\", \"type\": \"Feature\", \"properties\": {\"LAZ Metadata\": \"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/meta/meta_2018_aoi1.xml\", \"featureclass\": \"LIDAR\", \"histogram of classification of points\": \"[ { \\\"name\\\": \\\"unclassified\\\", \\\"label\\\": 1, \\\"count\\\": 12 }, { \\\"name\\\": \\\"ground\\\", \\\"label\\\": 2, \\\"count\\\": 2557619 }, { \\\"name\\\": \\\"low vegetation\\\", \\\"label\\\": 3, \\\"count\\\": 2254866 }, { \\\"name\\\": \\\"medium vegetation\\\", \\\"label\\\": 4, \\\"count\\\": 2732560 }, { \\\"name\\\": \\\"high vegetation\\\", \\\"label\\\": 5, \\\"count\\\": 13172989 }, { \\\"name\\\": \\\"noise\\\", \\\"label\\\": 7, \\\"count\\\": 4279 }, { \\\"name\\\": \\\"keypoint\\\", \\\"label\\\": 8, \\\"count\\\": 10729 } ]\", \"id\": \"nb_2018_2466000_7436000\", \"name\": \"nb_2018_2466000_7436000\", \"onlink\": \"https://geonb.snb.ca/li/\"}, \"geometry\": {\"type\": \"Polygon\", \"coordinates\": [[[112.53060711026983, -44.95032940516375], [112.5303312962831, -44.950472246523205], [112.53053244105297, -44.95066806060243], [112.5303312962831, -44.950472246523205], [112.53060711026983, -44.95032940516375]]]}}, {\"id\": \"5\", \"type\": \"Feature\", \"properties\": {\"LAZ Metadata\": \"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/meta/meta_2018_aoi1.xml\", \"featureclass\": \"LIDAR\", \"histogram of classification of points\": \"[ { \\\"name\\\": \\\"unclassified\\\", \\\"label\\\": 1, \\\"count\\\": 49 }, { \\\"name\\\": \\\"ground\\\", \\\"label\\\": 2, \\\"count\\\": 2692566 }, { \\\"name\\\": \\\"low vegetation\\\", \\\"label\\\": 3, \\\"count\\\": 2331935 }, { \\\"name\\\": \\\"medium vegetation\\\", \\\"label\\\": 4, \\\"count\\\": 2405031 }, { \\\"name\\\": \\\"high vegetation\\\", \\\"label\\\": 5, \\\"count\\\": 14278623 }, { \\\"name\\\": \\\"building\\\", \\\"label\\\": 6, \\\"count\\\": 395 }, { \\\"name\\\": \\\"noise\\\", \\\"label\\\": 7, \\\"count\\\": 11252 }, { \\\"name\\\": \\\"keypoint\\\", \\\"label\\\": 8, \\\"count\\\": 11502 } ]\", \"id\": \"nb_2018_2465000_7434000\", \"name\": \"nb_2018_2465000_7434000\", \"onlink\": \"https://geonb.snb.ca/li/\"}, \"geometry\": {\"type\": \"Polygon\", \"coordinates\": [[[112.53048069592727, -44.94979465433869], [112.53020471015448, -44.949937560801374], [112.53040594471702, -44.950133498667135], [112.53020471015448, -44.949937560801374], [112.53048069592727, -44.94979465433869]]]}}, {\"id\": \"6\", \"type\": \"Feature\", \"properties\": {\"LAZ Metadata\": \"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/meta/meta_2018_aoi1.xml\", \"featureclass\": \"LIDAR\", \"histogram of classification of points\": \"[ { \\\"name\\\": \\\"unclassified\\\", \\\"label\\\": 1, \\\"count\\\": 107 }, { \\\"name\\\": \\\"ground\\\", \\\"label\\\": 2, \\\"count\\\": 2107496 }, { \\\"name\\\": \\\"low vegetation\\\", \\\"label\\\": 3, \\\"count\\\": 2312676 }, { \\\"name\\\": \\\"medium vegetation\\\", \\\"label\\\": 4, \\\"count\\\": 2757997 }, { \\\"name\\\": \\\"high vegetation\\\", \\\"label\\\": 5, \\\"count\\\": 12705681 }, { \\\"name\\\": \\\"noise\\\", \\\"label\\\": 7, \\\"count\\\": 5947 }, { \\\"name\\\": \\\"keypoint\\\", \\\"label\\\": 8, \\\"count\\\": 10722 } ]\", \"id\": \"nb_2018_2464000_7434000\", \"name\": \"nb_2018_2464000_7434000\", \"onlink\": \"https://geonb.snb.ca/li/\"}, \"geometry\": {\"type\": \"Polygon\", \"coordinates\": [[[112.53075675475621, -44.94965178216091], [112.53048069868751, -44.94979465290979], [112.53068188247353, -44.949990641177116], [112.53048069868751, -44.94979465290979], [112.53075675475621, -44.94965178216091]]]}}, {\"id\": \"7\", \"type\": \"Feature\", \"properties\": {\"LAZ Metadata\": \"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/meta/meta_2018_aoi1.xml\", \"featureclass\": \"LIDAR\", \"histogram of classification of points\": \"[ { \\\"name\\\": \\\"unclassified\\\", \\\"label\\\": 1, \\\"count\\\": 24 }, { \\\"name\\\": \\\"ground\\\", \\\"label\\\": 2, \\\"count\\\": 1879673 }, { \\\"name\\\": \\\"low vegetation\\\", \\\"label\\\": 3, \\\"count\\\": 1551931 }, { \\\"name\\\": \\\"medium vegetation\\\", \\\"label\\\": 4, \\\"count\\\": 1453260 }, { \\\"name\\\": \\\"high vegetation\\\", \\\"label\\\": 5, \\\"count\\\": 18614547 }, { \\\"name\\\": \\\"noise\\\", \\\"label\\\": 7, \\\"count\\\": 3906 }, { \\\"name\\\": \\\"keypoint\\\", \\\"label\\\": 8, \\\"count\\\": 10709 }, { \\\"name\\\": \\\"water\\\", \\\"label\\\": 9, \\\"count\\\": 68 } ]\", \"id\": \"nb_2018_2465000_7438000\", \"name\": \"nb_2018_2465000_7438000\", \"onlink\": \"https://geonb.snb.ca/li/\"}, \"geometry\": {\"type\": \"Polygon\", \"coordinates\": [[[112.53128501765421, -44.95057839484332], [112.53100923492703, -44.95072109983628], [112.53121018857996, -44.9509168908852], [112.53100923492703, -44.95072109983628], [112.53128501765421, -44.95057839484332]]]}}, {\"id\": \"8\", \"type\": \"Feature\", \"properties\": {\"LAZ Metadata\": \"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/meta/meta_2018_aoi1.xml\", \"featureclass\": \"LIDAR\", \"histogram of classification of points\": \"[ { \\\"name\\\": \\\"unclassified\\\", \\\"label\\\": 1, \\\"count\\\": 27 }, { \\\"name\\\": \\\"ground\\\", \\\"label\\\": 2, \\\"count\\\": 2767664 }, { \\\"name\\\": \\\"low vegetation\\\", \\\"label\\\": 3, \\\"count\\\": 2530027 }, { \\\"name\\\": \\\"medium vegetation\\\", \\\"label\\\": 4, \\\"count\\\": 2828566 }, { \\\"name\\\": \\\"high vegetation\\\", \\\"label\\\": 5, \\\"count\\\": 10364720 }, { \\\"name\\\": \\\"noise\\\", \\\"label\\\": 7, \\\"count\\\": 11045 }, { \\\"name\\\": \\\"keypoint\\\", \\\"label\\\": 8, \\\"count\\\": 11354 } ]\", \"id\": \"nb_2018_2465000_7435000\", \"name\": \"nb_2018_2465000_7435000\", \"onlink\": \"https://geonb.snb.ca/li/\"}, \"geometry\": {\"type\": \"Polygon\", \"coordinates\": [[[112.53068188172533, -44.94999064456524], [112.53040594672903, -44.95013350062636], [112.53060711101705, -44.950329401776656], [112.53040594672903, -44.95013350062636], [112.53068188172533, -44.94999064456524]]]}}, {\"id\": \"9\", \"type\": \"Feature\", \"properties\": {\"LAZ Metadata\": \"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/meta/meta_2018_aoi1.xml\", \"featureclass\": \"LIDAR\", \"histogram of classification of points\": \"[ { \\\"name\\\": \\\"unclassified\\\", \\\"label\\\": 1, \\\"count\\\": 49 }, { \\\"name\\\": \\\"ground\\\", \\\"label\\\": 2, \\\"count\\\": 1937841 }, { \\\"name\\\": \\\"low vegetation\\\", \\\"label\\\": 3, \\\"count\\\": 1196236 }, { \\\"name\\\": \\\"medium vegetation\\\", \\\"label\\\": 4, \\\"count\\\": 869866 }, { \\\"name\\\": \\\"high vegetation\\\", \\\"label\\\": 5, \\\"count\\\": 21948373 }, { \\\"name\\\": \\\"noise\\\", \\\"label\\\": 7, \\\"count\\\": 1289 }, { \\\"name\\\": \\\"keypoint\\\", \\\"label\\\": 8, \\\"count\\\": 10757 } ]\", \"id\": \"nb_2018_2463000_7435000\", \"name\": \"nb_2018_2463000_7435000\", \"onlink\": \"https://geonb.snb.ca/li/\"}, \"geometry\": {\"type\": \"Polygon\", \"coordinates\": [[[112.53123396802123, -44.94970503672947], [112.53095789250617, -44.94984782135445], [112.53115895522987, -44.9500438232553], [112.53095789250617, -44.94984782135445], [112.53123396802123, -44.94970503672947]]]}}, {\"id\": \"10\", \"type\": \"Feature\", \"properties\": {\"LAZ Metadata\": \"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/meta/meta_2018_aoi1.xml\", \"featureclass\": \"LIDAR\", \"histogram of classification of points\": \"[ { \\\"name\\\": \\\"unclassified\\\", \\\"label\\\": 1, \\\"count\\\": 10 }, { \\\"name\\\": \\\"ground\\\", \\\"label\\\": 2, \\\"count\\\": 1697649 }, { \\\"name\\\": \\\"low vegetation\\\", \\\"label\\\": 3, \\\"count\\\": 1098225 }, { \\\"name\\\": \\\"medium vegetation\\\", \\\"label\\\": 4, \\\"count\\\": 865135 }, { \\\"name\\\": \\\"high vegetation\\\", \\\"label\\\": 5, \\\"count\\\": 19306823 }, { \\\"name\\\": \\\"building\\\", \\\"label\\\": 6, \\\"count\\\": 304 }, { \\\"name\\\": \\\"noise\\\", \\\"label\\\": 7, \\\"count\\\": 2272 }, { \\\"name\\\": \\\"keypoint\\\", \\\"label\\\": 8, \\\"count\\\": 10700 } ]\", \"id\": \"nb_2018_2466000_7438000\", \"name\": \"nb_2018_2466000_7438000\", \"onlink\": \"https://geonb.snb.ca/li/\"}, \"geometry\": {\"type\": \"Polygon\", \"coordinates\": [[[112.53100923216952, -44.95072110126351], [112.53073351962257, -44.950863841919535], [112.53093452398035, -44.95105958265087], [112.53073351962257, -44.950863841919535], [112.53100923216952, -44.95072110126351]]]}}, {\"id\": \"11\", \"type\": \"Feature\", \"properties\": {\"LAZ Metadata\": \"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/meta/meta_2018_aoi1.xml\", \"featureclass\": \"LIDAR\", \"histogram of classification of points\": \"[ { \\\"name\\\": \\\"unclassified\\\", \\\"label\\\": 1, \\\"count\\\": 31 }, { \\\"name\\\": \\\"ground\\\", \\\"label\\\": 2, \\\"count\\\": 3101939 }, { \\\"name\\\": \\\"low vegetation\\\", \\\"label\\\": 3, \\\"count\\\": 2068591 }, { \\\"name\\\": \\\"medium vegetation\\\", \\\"label\\\": 4, \\\"count\\\": 1885535 }, { \\\"name\\\": \\\"high vegetation\\\", \\\"label\\\": 5, \\\"count\\\": 12157486 }, { \\\"name\\\": \\\"noise\\\", \\\"label\\\": 7, \\\"count\\\": 8822 }, { \\\"name\\\": \\\"keypoint\\\", \\\"label\\\": 8, \\\"count\\\": 10800 } ]\", \"id\": \"nb_2018_2466000_7435000\", \"name\": \"nb_2018_2466000_7435000\", \"onlink\": \"https://geonb.snb.ca/li/\"}, \"geometry\": {\"type\": \"Polygon\", \"coordinates\": [[[112.53040594397001, -44.950133502055124], [112.53013007924827, -44.9502763938004], [112.5303312942713, -44.95047224456487], [112.53013007924827, -44.9502763938004], [112.53040594397001, -44.950133502055124]]]}}, {\"id\": \"12\", \"type\": \"Feature\", \"properties\": {\"LAZ Metadata\": \"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/meta/meta_2018_aoi1.xml\", \"featureclass\": \"LIDAR\", \"histogram of classification of points\": \"[ { \\\"name\\\": \\\"unclassified\\\", \\\"label\\\": 1, \\\"count\\\": 39 }, { \\\"name\\\": \\\"ground\\\", \\\"label\\\": 2, \\\"count\\\": 1491588 }, { \\\"name\\\": \\\"low vegetation\\\", \\\"label\\\": 3, \\\"count\\\": 1166486 }, { \\\"name\\\": \\\"medium vegetation\\\", \\\"label\\\": 4, \\\"count\\\": 1092356 }, { \\\"name\\\": \\\"high vegetation\\\", \\\"label\\\": 5, \\\"count\\\": 21998288 }, { \\\"name\\\": \\\"building\\\", \\\"label\\\": 6, \\\"count\\\": 628 }, { \\\"name\\\": \\\"noise\\\", \\\"label\\\": 7, \\\"count\\\": 2337 }, { \\\"name\\\": \\\"keypoint\\\", \\\"label\\\": 8, \\\"count\\\": 10659 } ]\", \"id\": \"nb_2018_2463000_7436000\", \"name\": \"nb_2018_2463000_7436000\", \"onlink\": \"https://geonb.snb.ca/li/\"}, \"geometry\": {\"type\": \"Polygon\", \"coordinates\": [[[112.53143498192591, -44.94990109095487], [112.53115895724015, -44.950043825215154], [112.53135994974095, -44.950239790362524], [112.53115895724015, -44.950043825215154], [112.53143498192591, -44.94990109095487]]]}}, {\"id\": \"13\", \"type\": \"Feature\", \"properties\": {\"LAZ Metadata\": \"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/meta/meta_2018_aoi1.xml\", \"featureclass\": \"LIDAR\", \"histogram of classification of points\": \"[ { \\\"name\\\": \\\"unclassified\\\", \\\"label\\\": 1, \\\"count\\\": 8 }, { \\\"name\\\": \\\"ground\\\", \\\"label\\\": 2, \\\"count\\\": 1683764 }, { \\\"name\\\": \\\"low vegetation\\\", \\\"label\\\": 3, \\\"count\\\": 1340078 }, { \\\"name\\\": \\\"medium vegetation\\\", \\\"label\\\": 4, \\\"count\\\": 1327314 }, { \\\"name\\\": \\\"high vegetation\\\", \\\"label\\\": 5, \\\"count\\\": 19267185 }, { \\\"name\\\": \\\"noise\\\", \\\"label\\\": 7, \\\"count\\\": 2786 }, { \\\"name\\\": \\\"keypoint\\\", \\\"label\\\": 8, \\\"count\\\": 10690 } ]\", \"id\": \"nb_2018_2466000_7437000\", \"name\": \"nb_2018_2466000_7437000\", \"onlink\": \"https://geonb.snb.ca/li/\"}, \"geometry\": {\"type\": \"Polygon\", \"coordinates\": [[[112.53080820632586, -44.95052527156403], [112.53053244306406, -44.95066806256042], [112.53073351761218, -44.95086383996191], [112.53053244306406, -44.95066806256042], [112.53080820632586, -44.95052527156403]]]}}, {\"id\": \"14\", \"type\": \"Feature\", \"properties\": {\"LAZ Metadata\": \"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/meta/meta_2018_aoi1.xml\", \"featureclass\": \"LIDAR\", \"histogram of classification of points\": \"[ { \\\"name\\\": \\\"unclassified\\\", \\\"label\\\": 1, \\\"count\\\": 38 }, { \\\"name\\\": \\\"ground\\\", \\\"label\\\": 2, \\\"count\\\": 1864555 }, { \\\"name\\\": \\\"low vegetation\\\", \\\"label\\\": 3, \\\"count\\\": 1514541 }, { \\\"name\\\": \\\"medium vegetation\\\", \\\"label\\\": 4, \\\"count\\\": 1632000 }, { \\\"name\\\": \\\"high vegetation\\\", \\\"label\\\": 5, \\\"count\\\": 16877075 }, { \\\"name\\\": \\\"building\\\", \\\"label\\\": 6, \\\"count\\\": 316 }, { \\\"name\\\": \\\"noise\\\", \\\"label\\\": 7, \\\"count\\\": 6504 }, { \\\"name\\\": \\\"keypoint\\\", \\\"label\\\": 8, \\\"count\\\": 10772 } ]\", \"id\": \"nb_2018_2463000_7438000\", \"name\": \"nb_2018_2463000_7438000\", \"onlink\": \"https://geonb.snb.ca/li/\"}, \"geometry\": {\"type\": \"Polygon\", \"coordinates\": [[[112.53183679912618, -44.9502930890835], [112.53156087606872, -44.950435722682585], [112.53176172821794, -44.9506316143457], [112.53156087606872, -44.950435722682585], [112.53183679912618, -44.9502930890835]]]}}, {\"id\": \"15\", \"type\": \"Feature\", \"properties\": {\"LAZ Metadata\": \"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/meta/meta_2018_aoi1.xml\", \"featureclass\": \"LIDAR\", \"histogram of classification of points\": \"[ { \\\"name\\\": \\\"unclassified\\\", \\\"label\\\": 1, \\\"count\\\": 76 }, { \\\"name\\\": \\\"ground\\\", \\\"label\\\": 2, \\\"count\\\": 1878609 }, { \\\"name\\\": \\\"low vegetation\\\", \\\"label\\\": 3, \\\"count\\\": 1651889 }, { \\\"name\\\": \\\"medium vegetation\\\", \\\"label\\\": 4, \\\"count\\\": 1835136 }, { \\\"name\\\": \\\"high vegetation\\\", \\\"label\\\": 5, \\\"count\\\": 15909037 }, { \\\"name\\\": \\\"noise\\\", \\\"label\\\": 7, \\\"count\\\": 5197 }, { \\\"name\\\": \\\"keypoint\\\", \\\"label\\\": 8, \\\"count\\\": 11412 } ]\", \"id\": \"nb_2018_2464000_7435000\", \"name\": \"nb_2018_2464000_7435000\", \"onlink\": \"https://geonb.snb.ca/li/\"}, \"geometry\": {\"type\": \"Polygon\", \"coordinates\": [[[112.53095788974575, -44.94984782278249], [112.53068188448503, -44.94999064313684], [112.5308829980066, -44.95018659466593], [112.53068188448503, -44.94999064313684], [112.53095788974575, -44.94984782278249]]]}}, {\"id\": \"16\", \"type\": \"Feature\", \"properties\": {\"LAZ Metadata\": \"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/meta/meta_2018_aoi1.xml\", \"featureclass\": \"LIDAR\", \"histogram of classification of points\": \"[ { \\\"name\\\": \\\"ground\\\", \\\"label\\\": 2, \\\"count\\\": 1414757 }, { \\\"name\\\": \\\"low vegetation\\\", \\\"label\\\": 3, \\\"count\\\": 3924353 }, { \\\"name\\\": \\\"medium vegetation\\\", \\\"label\\\": 4, \\\"count\\\": 462422 }, { \\\"name\\\": \\\"high vegetation\\\", \\\"label\\\": 5, \\\"count\\\": 11840664 }, { \\\"name\\\": \\\"building\\\", \\\"label\\\": 6, \\\"count\\\": 272081 }, { \\\"name\\\": \\\"noise\\\", \\\"label\\\": 7, \\\"count\\\": 128 }, { \\\"name\\\": \\\"keypoint\\\", \\\"label\\\": 8, \\\"count\\\": 10377 } ]\", \"id\": \"nb_2015_2480000_7436000\", \"name\": \"nb_2015_2480000_7436000\", \"onlink\": \"https://geonb.snb.ca/li/\"}, \"geometry\": {\"type\": \"Polygon\", \"coordinates\": [[[112.52675207259017, -44.95233244057372], [112.52647724305639, -44.95247577904197], [112.52667909467701, -44.952670887306645], [112.52647724305639, -44.95247577904197], [112.52675207259017, -44.95233244057372]]]}}, {\"id\": \"17\", \"type\": \"Feature\", \"properties\": {\"LAZ Metadata\": \"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/meta/meta_2018_aoi1.xml\", \"featureclass\": \"LIDAR\", \"histogram of classification of points\": \"[ { \\\"name\\\": \\\"unclassified\\\", \\\"label\\\": 1, \\\"count\\\": 55 }, { \\\"name\\\": \\\"ground\\\", \\\"label\\\": 2, \\\"count\\\": 1932161 }, { \\\"name\\\": \\\"low vegetation\\\", \\\"label\\\": 3, \\\"count\\\": 1755421 }, { \\\"name\\\": \\\"medium vegetation\\\", \\\"label\\\": 4, \\\"count\\\": 1636968 }, { \\\"name\\\": \\\"high vegetation\\\", \\\"label\\\": 5, \\\"count\\\": 18496095 }, { \\\"name\\\": \\\"noise\\\", \\\"label\\\": 7, \\\"count\\\": 2250 }, { \\\"name\\\": \\\"keypoint\\\", \\\"label\\\": 8, \\\"count\\\": 10718 } ]\", \"id\": \"nb_2018_2464000_7437000\", \"name\": \"nb_2018_2464000_7437000\", \"onlink\": \"https://geonb.snb.ca/li/\"}, \"geometry\": {\"type\": \"Polygon\", \"coordinates\": [[[112.53135994899112, -44.950239793749056], [112.53108404531605, -44.950382513382635], [112.53128501840303, -44.9505783914578], [112.53108404531605, -44.950382513382635], [112.53135994899112, -44.950239793749056]]]}}, {\"id\": \"18\", \"type\": \"Feature\", \"properties\": {\"LAZ Metadata\": \"https://geonb.snb.ca/downloads2/lidar/2018/snb/aoi1/meta/meta_2018_aoi1.xml\", \"featureclass\": \"LIDAR\", \"histogram of classification of points\": \"[ { \\\"name\\\": \\\"unclassified\\\", \\\"label\\\": 1, \\\"count\\\": 46 }, { \\\"name\\\": \\\"ground\\\", \\\"label\\\": 2, \\\"count\\\": 1839329 }, { \\\"name\\\": \\\"low vegetation\\\", \\\"label\\\": 3, \\\"count\\\": 1491325 }, { \\\"name\\\": \\\"medium vegetation\\\", \\\"label\\\": 4, \\\"count\\\": 1420809 }, { \\\"name\\\": \\\"high vegetation\\\", \\\"label\\\": 5, \\\"count\\\": 17848445 }, { \\\"name\\\": \\\"noise\\\", \\\"label\\\": 7, \\\"count\\\": 3531 }, { \\\"name\\\": \\\"keypoint\\\", \\\"label\\\": 8, \\\"count\\\": 10701 } ]\", \"id\": \"nb_2018_2464000_7436000\", \"name\": \"nb_2018_2464000_7436000\", \"onlink\": \"https://geonb.snb.ca/li/\"}, \"geometry\": {\"type\": \"Polygon\", \"coordinates\": [[[112.53115895448025, -44.9500438266427], [112.5308830000174, -44.950186596625265], [112.53108404330597, -44.95038251142365], [112.5308830000174, -44.950186596625265], [112.53115895448025, -44.9500438266427]]]}}]}\n"
],
"name": "stdout"
}
]
},
{
"cell_type": "code",
"metadata": {
"id": "Ay-HlJcyguKY",
"colab_type": "code",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 932
},
"outputId": "882e2b1b-0cda-4fac-eaf7-22bb1c9e0a3c"
},
"source": [
"import folium\n",
"print(folium.__version__)\n",
"\n",
"data = r\"/content/nb_lidar.json\" #Islands4326.geojson\n",
"#county_geojson = json.load(open(data))\n",
"m = folium.Map([46.5,-66.5 ], zoom_start=7, tiles='cartodbpositron')\n",
"folium.GeoJson(js).add_to(m)\n",
"m"
],
"execution_count": null,
"outputs": [
{
"output_type": "stream",
"text": [
"0.8.3\n"
],
"name": "stdout"
},
{
"output_type": "execute_result",
"data": {
"text/html": [
"<div style=\"width:100%;\"><div style=\"position:relative;width:100%;height:0;padding-bottom:60%;\"><span style=\"color:#565656\">Make this Notebook Trusted to load map: File -> Trust Notebook</span><iframe src=\"about:blank\" style=\"position:absolute;width:100%;height:100%;left:0;top:0;border:none !important;\" data-html=PCFET0NUWVBFIGh0bWw+CjxoZWFkPiAgICAKICAgIDxtZXRhIGh0dHAtZXF1aXY9ImNvbnRlbnQtdHlwZSIgY29udGVudD0idGV4dC9odG1sOyBjaGFyc2V0PVVURi04IiAvPgogICAgPHNjcmlwdD5MX1BSRUZFUl9DQU5WQVM9ZmFsc2U7IExfTk9fVE9VQ0g9ZmFsc2U7IExfRElTQUJMRV8zRD1mYWxzZTs8L3NjcmlwdD4KICAgIDxzY3JpcHQgc3JjPSJodHRwczovL2Nkbi5qc2RlbGl2ci5uZXQvbnBtL2xlYWZsZXRAMS40LjAvZGlzdC9sZWFmbGV0LmpzIj48L3NjcmlwdD4KICAgIDxzY3JpcHQgc3JjPSJodHRwczovL2NvZGUuanF1ZXJ5LmNvbS9qcXVlcnktMS4xMi40Lm1pbi5qcyI+PC9zY3JpcHQ+CiAgICA8c2NyaXB0IHNyYz0iaHR0cHM6Ly9tYXhjZG4uYm9vdHN0cmFwY2RuLmNvbS9ib290c3RyYXAvMy4yLjAvanMvYm9vdHN0cmFwLm1pbi5qcyI+PC9zY3JpcHQ+CiAgICA8c2NyaXB0IHNyYz0iaHR0cHM6Ly9jZG5qcy5jbG91ZGZsYXJlLmNvbS9hamF4L2xpYnMvTGVhZmxldC5hd2Vzb21lLW1hcmtlcnMvMi4wLjIvbGVhZmxldC5hd2Vzb21lLW1hcmtlcnMuanMiPjwvc2NyaXB0PgogICAgPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSJodHRwczovL2Nkbi5qc2RlbGl2ci5uZXQvbnBtL2xlYWZsZXRAMS40LjAvZGlzdC9sZWFmbGV0LmNzcyIvPgogICAgPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSJodHRwczovL21heGNkbi5ib290c3RyYXBjZG4uY29tL2Jvb3RzdHJhcC8zLjIuMC9jc3MvYm9vdHN0cmFwLm1pbi5jc3MiLz4KICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iaHR0cHM6Ly9tYXhjZG4uYm9vdHN0cmFwY2RuLmNvbS9ib290c3RyYXAvMy4yLjAvY3NzL2Jvb3RzdHJhcC10aGVtZS5taW4uY3NzIi8+CiAgICA8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Imh0dHBzOi8vbWF4Y2RuLmJvb3RzdHJhcGNkbi5jb20vZm9udC1hd2Vzb21lLzQuNi4zL2Nzcy9mb250LWF3ZXNvbWUubWluLmNzcyIvPgogICAgPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSJodHRwczovL2NkbmpzLmNsb3VkZmxhcmUuY29tL2FqYXgvbGlicy9MZWFmbGV0LmF3ZXNvbWUtbWFya2Vycy8yLjAuMi9sZWFmbGV0LmF3ZXNvbWUtbWFya2Vycy5jc3MiLz4KICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iaHR0cHM6Ly9yYXdjZG4uZ2l0aGFjay5jb20vcHl0aG9uLXZpc3VhbGl6YXRpb24vZm9saXVtL21hc3Rlci9mb2xpdW0vdGVtcGxhdGVzL2xlYWZsZXQuYXdlc29tZS5yb3RhdGUuY3NzIi8+CiAgICA8c3R5bGU+aHRtbCwgYm9keSB7d2lkdGg6IDEwMCU7aGVpZ2h0OiAxMDAlO21hcmdpbjogMDtwYWRkaW5nOiAwO308L3N0eWxlPgogICAgPHN0eWxlPiNtYXAge3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2JvdHRvbTowO3JpZ2h0OjA7bGVmdDowO308L3N0eWxlPgogICAgCiAgICA8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLAogICAgICAgIGluaXRpYWwtc2NhbGU9MS4wLCBtYXhpbXVtLXNjYWxlPTEuMCwgdXNlci1zY2FsYWJsZT1ubyIgLz4KICAgIDxzdHlsZT4jbWFwXzhkYTkyN2M2NTE1YzRlMmZhNGJjMDgxZDUzNDE4NzNiIHsKICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICAgICAgd2lkdGg6IDEwMC4wJTsKICAgICAgICBoZWlnaHQ6IDEwMC4wJTsKICAgICAgICBsZWZ0OiAwLjAlOwogICAgICAgIHRvcDogMC4wJTsKICAgICAgICB9CiAgICA8L3N0eWxlPgo8L2hlYWQ+Cjxib2R5PiAgICAKICAgIAogICAgPGRpdiBjbGFzcz0iZm9saXVtLW1hcCIgaWQ9Im1hcF84ZGE5MjdjNjUxNWM0ZTJmYTRiYzA4MWQ1MzQxODczYiIgPjwvZGl2Pgo8L2JvZHk+CjxzY3JpcHQ+ICAgIAogICAgCiAgICAKICAgICAgICB2YXIgYm91bmRzID0gbnVsbDsKICAgIAoKICAgIHZhciBtYXBfOGRhOTI3YzY1MTVjNGUyZmE0YmMwODFkNTM0MTg3M2IgPSBMLm1hcCgKICAgICAgICAnbWFwXzhkYTkyN2M2NTE1YzRlMmZhNGJjMDgxZDUzNDE4NzNiJywgewogICAgICAgIGNlbnRlcjogWzQ2LjUsIC02Ni41XSwKICAgICAgICB6b29tOiA3LAogICAgICAgIG1heEJvdW5kczogYm91bmRzLAogICAgICAgIGxheWVyczogW10sCiAgICAgICAgd29ybGRDb3B5SnVtcDogZmFsc2UsCiAgICAgICAgY3JzOiBMLkNSUy5FUFNHMzg1NywKICAgICAgICB6b29tQ29udHJvbDogdHJ1ZSwKICAgICAgICB9KTsKCgogICAgCiAgICB2YXIgdGlsZV9sYXllcl9jMTljNjE0ZDZiNWY0YzVhYjRhOWEyMjhjZWY2NzA3NiA9IEwudGlsZUxheWVyKAogICAgICAgICdodHRwczovL2NhcnRvZGItYmFzZW1hcHMte3N9Lmdsb2JhbC5zc2wuZmFzdGx5Lm5ldC9saWdodF9hbGwve3p9L3t4fS97eX0ucG5nJywKICAgICAgICB7CiAgICAgICAgImF0dHJpYnV0aW9uIjogbnVsbCwKICAgICAgICAiZGV0ZWN0UmV0aW5hIjogZmFsc2UsCiAgICAgICAgIm1heE5hdGl2ZVpvb20iOiAxOCwKICAgICAgICAibWF4Wm9vbSI6IDE4LAogICAgICAgICJtaW5ab29tIjogMCwKICAgICAgICAibm9XcmFwIjogZmFsc2UsCiAgICAgICAgIm9wYWNpdHkiOiAxLAogICAgICAgICJzdWJkb21haW5zIjogImFiYyIsCiAgICAgICAgInRtcyI6IGZhbHNlCn0pLmFkZFRvKG1hcF84ZGE5MjdjNjUxNWM0ZTJmYTRiYzA4MWQ1MzQxODczYik7CiAgICAKICAgICAgICB2YXIgZ2VvX2pzb25fZGIyMWQyMzUxMzVjNGI3N2JhZWYzNTExN2VlYzVhY2EgPSBMLmdlb0pzb24oCiAgICAgICAgICAgIHsiZmVhdHVyZXMiOiBbeyJnZW9tZXRyeSI6IHsiY29vcmRpbmF0ZXMiOiBbW1sxMTIuNTMxMDMyODgzODcxNjMsIC00NC45NDk1MDg5NDU3MTk5M10sIFsxMTIuNTMwNzU2NzU3NTE3MTUsIC00NC45NDk2NTE3ODA3MzIzN10sIFsxMTIuNTMwOTU3ODkwNDk1MTYsIC00NC45NDk4NDc4MTkzOTQyM10sIFsxMTIuNTMwNzU2NzU3NTE3MTUsIC00NC45NDk2NTE3ODA3MzIzN10sIFsxMTIuNTMxMDMyODgzODcxNjMsIC00NC45NDk1MDg5NDU3MTk5M11dXSwgInR5cGUiOiAiUG9seWdvbiJ9LCAiaWQiOiAiMCIsICJwcm9wZXJ0aWVzIjogeyJMQVogTWV0YWRhdGEiOiAiaHR0cHM6Ly9nZW9uYi5zbmIuY2EvZG93bmxvYWRzMi9saWRhci8yMDE4L3NuYi9hb2kxL21ldGEvbWV0YV8yMDE4X2FvaTEueG1sIiwgImZlYXR1cmVjbGFzcyI6ICJMSURBUiIsICJoaWdobGlnaHQiOiB7fSwgImhpc3RvZ3JhbSBvZiBjbGFzc2lmaWNhdGlvbiBvZiBwb2ludHMiOiAiWyB7IFwibmFtZVwiOiBcInVuY2xhc3NpZmllZFwiLCBcImxhYmVsXCI6IDEsIFwiY291bnRcIjogOTEgfSwgeyBcIm5hbWVcIjogXCJncm91bmRcIiwgXCJsYWJlbFwiOiAyLCBcImNvdW50XCI6IDIxODU4NTYgfSwgeyBcIm5hbWVcIjogXCJsb3cgdmVnZXRhdGlvblwiLCBcImxhYmVsXCI6IDMsIFwiY291bnRcIjogMTYzMTI1OSB9LCB7IFwibmFtZVwiOiBcIm1lZGl1bSB2ZWdldGF0aW9uXCIsIFwibGFiZWxcIjogNCwgXCJjb3VudFwiOiAxNjUxNTI1IH0sIHsgXCJuYW1lXCI6IFwiaGlnaCB2ZWdldGF0aW9uXCIsIFwibGFiZWxcIjogNSwgXCJjb3VudFwiOiAxNzcyODUyOSB9LCB7IFwibmFtZVwiOiBcIm5vaXNlXCIsIFwibGFiZWxcIjogNywgXCJjb3VudFwiOiAzNDk3IH0sIHsgXCJuYW1lXCI6IFwia2V5cG9pbnRcIiwgXCJsYWJlbFwiOiA4LCBcImNvdW50XCI6IDEwNzY4IH0gXSIsICJpZCI6ICJuYl8yMDE4XzI0NjMwMDBfNzQzNDAwMCIsICJuYW1lIjogIm5iXzIwMThfMjQ2MzAwMF83NDM0MDAwIiwgIm9ubGluayI6ICJodHRwczovL2dlb25iLnNuYi5jYS9saS8iLCAic3R5bGUiOiB7fX0sICJ0eXBlIjogIkZlYXR1cmUifSwgeyJnZW9tZXRyeSI6IHsiY29vcmRpbmF0ZXMiOiBbW1sxMTIuNTMxMDg0MDQyNTU3MzQsIC00NC45NTAzODI1MTQ4MTAwMTZdLCBbMTEyLjUzMDgwODIwOTA4Mzg5LCAtNDQuOTUwNTI1MjcwMTM2MjhdLCBbMTEyLjUzMTAwOTIzMjkxNzA5LCAtNDQuOTUwNzIxMDk3ODc4MTRdLCBbMTEyLjUzMDgwODIwOTA4Mzg5LCAtNDQuOTUwNTI1MjcwMTM2MjhdLCBbMTEyLjUzMTA4NDA0MjU1NzM0LCAtNDQuOTUwMzgyNTE0ODEwMDE2XV1dLCAidHlwZSI6ICJQb2x5Z29uIn0sICJpZCI6ICIxIiwgInByb3BlcnRpZXMiOiB7IkxBWiBNZXRhZGF0YSI6ICJodHRwczovL2dlb25iLnNuYi5jYS9kb3dubG9hZHMyL2xpZGFyLzIwMTgvc25iL2FvaTEvbWV0YS9tZXRhXzIwMThfYW9pMS54bWwiLCAiZmVhdHVyZWNsYXNzIjogIkxJREFSIiwgImhpZ2hsaWdodCI6IHt9LCAiaGlzdG9ncmFtIG9mIGNsYXNzaWZpY2F0aW9uIG9mIHBvaW50cyI6ICJbIHsgXCJuYW1lXCI6IFwidW5jbGFzc2lmaWVkXCIsIFwibGFiZWxcIjogMSwgXCJjb3VudFwiOiA4MiB9LCB7IFwibmFtZVwiOiBcImdyb3VuZFwiLCBcImxhYmVsXCI6IDIsIFwiY291bnRcIjogMjc1Mjk1MyB9LCB7IFwibmFtZVwiOiBcImxvdyB2ZWdldGF0aW9uXCIsIFwibGFiZWxcIjogMywgXCJjb3VudFwiOiAyNDU5NjgwIH0sIHsgXCJuYW1lXCI6IFwibWVkaXVtIHZlZ2V0YXRpb25cIiwgXCJsYWJlbFwiOiA0LCBcImNvdW50XCI6IDIyMzg5NjcgfSwgeyBcIm5hbWVcIjogXCJoaWdoIHZlZ2V0YXRpb25cIiwgXCJsYWJlbFwiOiA1LCBcImNvdW50XCI6IDEzOTAxNDI3IH0sIHsgXCJuYW1lXCI6IFwibm9pc2VcIiwgXCJsYWJlbFwiOiA3LCBcImNvdW50XCI6IDU3NDMgfSwgeyBcIm5hbWVcIjogXCJrZXlwb2ludFwiLCBcImxhYmVsXCI6IDgsIFwiY291bnRcIjogMTA3MTkgfSwgeyBcIm5hbWVcIjogXCJ3YXRlclwiLCBcImxhYmVsXCI6IDksIFwiY291bnRcIjogNzkwNiB9IF0iLCAiaWQiOiAibmJfMjAxOF8yNDY1MDAwXzc0MzcwMDAiLCAibmFtZSI6ICJuYl8yMDE4XzI0NjUwMDBfNzQzNzAwMCIsICJvbmxpbmsiOiAiaHR0cHM6Ly9nZW9uYi5zbmIuY2EvbGkvIiwgInN0eWxlIjoge319LCAidHlwZSI6ICJGZWF0dXJlIn0sIHsiZ2VvbWV0cnkiOiB7ImNvb3JkaW5hdGVzIjogW1tbMTEyLjUzMTYzNTkyNTYxNzEsIC00NC45NTAwOTcxMDg0MDM3XSwgWzExMi41MzEzNTk5NTE3NTA1NSwgLTQ0Ljk1MDIzOTc5MjMyMjAyXSwgWzExMi41MzE1NjA4NzQwNTk4MywgLTQ0Ljk1MDQzNTcyMDcyMzQ2XSwgWzExMi41MzEzNTk5NTE3NTA1NSwgLTQ0Ljk1MDIzOTc5MjMyMjAyXSwgWzExMi41MzE2MzU5MjU2MTcxLCAtNDQuOTUwMDk3MTA4NDAzN11dXSwgInR5cGUiOiAiUG9seWdvbiJ9LCAiaWQiOiAiMiIsICJwcm9wZXJ0aWVzIjogeyJMQVogTWV0YWRhdGEiOiAiaHR0cHM6Ly9nZW9uYi5zbmIuY2EvZG93bmxvYWRzMi9saWRhci8yMDE4L3NuYi9hb2kxL21ldGEvbWV0YV8yMDE4X2FvaTEueG1sIiwgImZlYXR1cmVjbGFzcyI6ICJMSURBUiIsICJoaWdobGlnaHQiOiB7fSwgImhpc3RvZ3JhbSBvZiBjbGFzc2lmaWNhdGlvbiBvZiBwb2ludHMiOiAiWyB7IFwibmFtZVwiOiBcInVuY2xhc3NpZmllZFwiLCBcImxhYmVsXCI6IDEsIFwiY291bnRcIjogNDYgfSwgeyBcIm5hbWVcIjogXCJncm91bmRcIiwgXCJsYWJlbFwiOiAyLCBcImNvdW50XCI6IDE1MDg4ODcgfSwgeyBcIm5hbWVcIjogXCJsb3cgdmVnZXRhdGlvblwiLCBcImxhYmVsXCI6IDMsIFwiY291bnRcIjogMTM0MzM5NSB9LCB7IFwibmFtZVwiOiBcIm1lZGl1bSB2ZWdldGF0aW9uXCIsIFwibGFiZWxcIjogNCwgXCJjb3VudFwiOiAxNDg3NDU1IH0sIHsgXCJuYW1lXCI6IFwiaGlnaCB2ZWdldGF0aW9uXCIsIFwibGFiZWxcIjogNSwgXCJjb3VudFwiOiAyMDI3NDQyMiB9LCB7IFwibmFtZVwiOiBcIm5vaXNlXCIsIFwibGFiZWxcIjogNywgXCJjb3VudFwiOiAzMDA4IH0sIHsgXCJuYW1lXCI6IFwia2V5cG9pbnRcIiwgXCJsYWJlbFwiOiA4LCBcImNvdW50XCI6IDEwNjUzIH0gXSIsICJpZCI6ICJuYl8yMDE4XzI0NjMwMDBfNzQzNzAwMCIsICJuYW1lIjogIm5iXzIwMThfMjQ2MzAwMF83NDM3MDAwIiwgIm9ubGluayI6ICJodHRwczovL2dlb25iLnNuYi5jYS9saS8iLCAic3R5bGUiOiB7fX0sICJ0eXBlIjogIkZlYXR1cmUifSwgeyJnZW9tZXRyeSI6IHsiY29vcmRpbmF0ZXMiOiBbW1sxMTIuNTMxNTYwODczMzA5OCwgLTQ0Ljk1MDQzNTcyNDEwOTExXSwgWzExMi41MzEyODUwMjA0MTI0MywgLTQ0Ljk1MDU3ODM5MzQxNjQxNF0sIFsxMTIuNTMxNDg1OTIzMzI5MTcsIC00NC45NTA3NzQyMzQ3NzU5N10sIFsxMTIuNTMxMjg1MDIwNDEyNDMsIC00NC45NTA1NzgzOTM0MTY0MTRdLCBbMTEyLjUzMTU2MDg3MzMwOTgsIC00NC45NTA0MzU3MjQxMDkxMV1dXSwgInR5cGUiOiAiUG9seWdvbiJ9LCAiaWQiOiAiMyIsICJwcm9wZXJ0aWVzIjogeyJMQVogTWV0YWRhdGEiOiAiaHR0cHM6Ly9nZW9uYi5zbmIuY2EvZG93bmxvYWRzMi9saWRhci8yMDE4L3NuYi9hb2kxL21ldGEvbWV0YV8yMDE4X2FvaTEueG1sIiwgImZlYXR1cmVjbGFzcyI6ICJMSURBUiIsICJoaWdobGlnaHQiOiB7fSwgImhpc3RvZ3JhbSBvZiBjbGFzc2lmaWNhdGlvbiBvZiBwb2ludHMiOiAiWyB7IFwibmFtZVwiOiBcInVuY2xhc3NpZmllZFwiLCBcImxhYmVsXCI6IDEsIFwiY291bnRcIjogNTIgfSwgeyBcIm5hbWVcIjogXCJncm91bmRcIiwgXCJsYWJlbFwiOiAyLCBcImNvdW50XCI6IDE2MzU3MjIgfSwgeyBcIm5hbWVcIjogXCJsb3cgdmVnZXRhdGlvblwiLCBcImxhYmVsXCI6IDMsIFwiY291bnRcIjogMTQ3NTc4OSB9LCB7IFwibmFtZVwiOiBcIm1lZGl1bSB2ZWdldGF0aW9uXCIsIFwibGFiZWxcIjogNCwgXCJjb3VudFwiOiAxODcyMTA4IH0sIHsgXCJuYW1lXCI6IFwiaGlnaCB2ZWdldGF0aW9uXCIsIFwibGFiZWxcIjogNSwgXCJjb3VudFwiOiAxNzc0MDI3OCB9LCB7IFwibmFtZVwiOiBcIm5vaXNlXCIsIFwibGFiZWxcIjogNywgXCJjb3VudFwiOiAzODQ3IH0sIHsgXCJuYW1lXCI6IFwia2V5cG9pbnRcIiwgXCJsYWJlbFwiOiA4LCBcImNvdW50XCI6IDEwNjczIH0gXSIsICJpZCI6ICJuYl8yMDE4XzI0NjQwMDBfNzQzODAwMCIsICJuYW1lIjogIm5iXzIwMThfMjQ2NDAwMF83NDM4MDAwIiwgIm9ubGluayI6ICJodHRwczovL2dlb25iLnNuYi5jYS9saS8iLCAic3R5bGUiOiB7fX0sICJ0eXBlIjogIkZlYXR1cmUifSwgeyJnZW9tZXRyeSI6IHsiY29vcmRpbmF0ZXMiOiBbW1sxMTIuNTMwNjA3MTEwMjY5ODMsIC00NC45NTAzMjk0MDUxNjM3NV0sIFsxMTIuNTMwMzMxMjk2MjgzMSwgLTQ0Ljk1MDQ3MjI0NjUyMzIwNV0sIFsxMTIuNTMwNTMyNDQxMDUyOTcsIC00NC45NTA2NjgwNjA2MDI0M10sIFsxMTIuNTMwMzMxMjk2MjgzMSwgLTQ0Ljk1MDQ3MjI0NjUyMzIwNV0sIFsxMTIuNTMwNjA3MTEwMjY5ODMsIC00NC45NTAzMjk0MDUxNjM3NV1dXSwgInR5cGUiOiAiUG9seWdvbiJ9LCAiaWQiOiAiNCIsICJwcm9wZXJ0aWVzIjogeyJMQVogTWV0YWRhdGEiOiAiaHR0cHM6Ly9nZW9uYi5zbmIuY2EvZG93bmxvYWRzMi9saWRhci8yMDE4L3NuYi9hb2kxL21ldGEvbWV0YV8yMDE4X2FvaTEueG1sIiwgImZlYXR1cmVjbGFzcyI6ICJMSURBUiIsICJoaWdobGlnaHQiOiB7fSwgImhpc3RvZ3JhbSBvZiBjbGFzc2lmaWNhdGlvbiBvZiBwb2ludHMiOiAiWyB7IFwibmFtZVwiOiBcInVuY2xhc3NpZmllZFwiLCBcImxhYmVsXCI6IDEsIFwiY291bnRcIjogMTIgfSwgeyBcIm5hbWVcIjogXCJncm91bmRcIiwgXCJsYWJlbFwiOiAyLCBcImNvdW50XCI6IDI1NTc2MTkgfSwgeyBcIm5hbWVcIjogXCJsb3cgdmVnZXRhdGlvblwiLCBcImxhYmVsXCI6IDMsIFwiY291bnRcIjogMjI1NDg2NiB9LCB7IFwibmFtZVwiOiBcIm1lZGl1bSB2ZWdldGF0aW9uXCIsIFwibGFiZWxcIjogNCwgXCJjb3VudFwiOiAyNzMyNTYwIH0sIHsgXCJuYW1lXCI6IFwiaGlnaCB2ZWdldGF0aW9uXCIsIFwibGFiZWxcIjogNSwgXCJjb3VudFwiOiAxMzE3Mjk4OSB9LCB7IFwibmFtZVwiOiBcIm5vaXNlXCIsIFwibGFiZWxcIjogNywgXCJjb3VudFwiOiA0Mjc5IH0sIHsgXCJuYW1lXCI6IFwia2V5cG9pbnRcIiwgXCJsYWJlbFwiOiA4LCBcImNvdW50XCI6IDEwNzI5IH0gXSIsICJpZCI6ICJuYl8yMDE4XzI0NjYwMDBfNzQzNjAwMCIsICJuYW1lIjogIm5iXzIwMThfMjQ2NjAwMF83NDM2MDAwIiwgIm9ubGluayI6ICJodHRwczovL2dlb25iLnNuYi5jYS9saS8iLCAic3R5bGUiOiB7fX0sICJ0eXBlIjogIkZlYXR1cmUifSwgeyJnZW9tZXRyeSI6IHsiY29vcmRpbmF0ZXMiOiBbW1sxMTIuNTMwNDgwNjk1OTI3MjcsIC00NC45NDk3OTQ2NTQzMzg2OV0sIFsxMTIuNTMwMjA0NzEwMTU0NDgsIC00NC45NDk5Mzc1NjA4MDEzNzRdLCBbMTEyLjUzMDQwNTk0NDcxNzAyLCAtNDQuOTUwMTMzNDk4NjY3MTM1XSwgWzExMi41MzAyMDQ3MTAxNTQ0OCwgLTQ0Ljk0OTkzNzU2MDgwMTM3NF0sIFsxMTIuNTMwNDgwNjk1OTI3MjcsIC00NC45NDk3OTQ2NTQzMzg2OV1dXSwgInR5cGUiOiAiUG9seWdvbiJ9LCAiaWQiOiAiNSIsICJwcm9wZXJ0aWVzIjogeyJMQVogTWV0YWRhdGEiOiAiaHR0cHM6Ly9nZW9uYi5zbmIuY2EvZG93bmxvYWRzMi9saWRhci8yMDE4L3NuYi9hb2kxL21ldGEvbWV0YV8yMDE4X2FvaTEueG1sIiwgImZlYXR1cmVjbGFzcyI6ICJMSURBUiIsICJoaWdobGlnaHQiOiB7fSwgImhpc3RvZ3JhbSBvZiBjbGFzc2lmaWNhdGlvbiBvZiBwb2ludHMiOiAiWyB7IFwibmFtZVwiOiBcInVuY2xhc3NpZmllZFwiLCBcImxhYmVsXCI6IDEsIFwiY291bnRcIjogNDkgfSwgeyBcIm5hbWVcIjogXCJncm91bmRcIiwgXCJsYWJlbFwiOiAyLCBcImNvdW50XCI6IDI2OTI1NjYgfSwgeyBcIm5hbWVcIjogXCJsb3cgdmVnZXRhdGlvblwiLCBcImxhYmVsXCI6IDMsIFwiY291bnRcIjogMjMzMTkzNSB9LCB7IFwibmFtZVwiOiBcIm1lZGl1bSB2ZWdldGF0aW9uXCIsIFwibGFiZWxcIjogNCwgXCJjb3VudFwiOiAyNDA1MDMxIH0sIHsgXCJuYW1lXCI6IFwiaGlnaCB2ZWdldGF0aW9uXCIsIFwibGFiZWxcIjogNSwgXCJjb3VudFwiOiAxNDI3ODYyMyB9LCB7IFwibmFtZVwiOiBcImJ1aWxkaW5nXCIsIFwibGFiZWxcIjogNiwgXCJjb3VudFwiOiAzOTUgfSwgeyBcIm5hbWVcIjogXCJub2lzZVwiLCBcImxhYmVsXCI6IDcsIFwiY291bnRcIjogMTEyNTIgfSwgeyBcIm5hbWVcIjogXCJrZXlwb2ludFwiLCBcImxhYmVsXCI6IDgsIFwiY291bnRcIjogMTE1MDIgfSBdIiwgImlkIjogIm5iXzIwMThfMjQ2NTAwMF83NDM0MDAwIiwgIm5hbWUiOiAibmJfMjAxOF8yNDY1MDAwXzc0MzQwMDAiLCAib25saW5rIjogImh0dHBzOi8vZ2VvbmIuc25iLmNhL2xpLyIsICJzdHlsZSI6IHt9fSwgInR5cGUiOiAiRmVhdHVyZSJ9LCB7Imdlb21ldHJ5IjogeyJjb29yZGluYXRlcyI6IFtbWzExMi41MzA3NTY3NTQ3NTYyMSwgLTQ0Ljk0OTY1MTc4MjE2MDkxXSwgWzExMi41MzA0ODA2OTg2ODc1MSwgLTQ0Ljk0OTc5NDY1MjkwOTc5XSwgWzExMi41MzA2ODE4ODI0NzM1MywgLTQ0Ljk0OTk5MDY0MTE3NzExNl0sIFsxMTIuNTMwNDgwNjk4Njg3NTEsIC00NC45NDk3OTQ2NTI5MDk3OV0sIFsxMTIuNTMwNzU2NzU0NzU2MjEsIC00NC45NDk2NTE3ODIxNjA5MV1dXSwgInR5cGUiOiAiUG9seWdvbiJ9LCAiaWQiOiAiNiIsICJwcm9wZXJ0aWVzIjogeyJMQVogTWV0YWRhdGEiOiAiaHR0cHM6Ly9nZW9uYi5zbmIuY2EvZG93bmxvYWRzMi9saWRhci8yMDE4L3NuYi9hb2kxL21ldGEvbWV0YV8yMDE4X2FvaTEueG1sIiwgImZlYXR1cmVjbGFzcyI6ICJMSURBUiIsICJoaWdobGlnaHQiOiB7fSwgImhpc3RvZ3JhbSBvZiBjbGFzc2lmaWNhdGlvbiBvZiBwb2ludHMiOiAiWyB7IFwibmFtZVwiOiBcInVuY2xhc3NpZmllZFwiLCBcImxhYmVsXCI6IDEsIFwiY291bnRcIjogMTA3IH0sIHsgXCJuYW1lXCI6IFwiZ3JvdW5kXCIsIFwibGFiZWxcIjogMiwgXCJjb3VudFwiOiAyMTA3NDk2IH0sIHsgXCJuYW1lXCI6IFwibG93IHZlZ2V0YXRpb25cIiwgXCJsYWJlbFwiOiAzLCBcImNvdW50XCI6IDIzMTI2NzYgfSwgeyBcIm5hbWVcIjogXCJtZWRpdW0gdmVnZXRhdGlvblwiLCBcImxhYmVsXCI6IDQsIFwiY291bnRcIjogMjc1Nzk5NyB9LCB7IFwibmFtZVwiOiBcImhpZ2ggdmVnZXRhdGlvblwiLCBcImxhYmVsXCI6IDUsIFwiY291bnRcIjogMTI3MDU2ODEgfSwgeyBcIm5hbWVcIjogXCJub2lzZVwiLCBcImxhYmVsXCI6IDcsIFwiY291bnRcIjogNTk0NyB9LCB7IFwibmFtZVwiOiBcImtleXBvaW50XCIsIFwibGFiZWxcIjogOCwgXCJjb3VudFwiOiAxMDcyMiB9IF0iLCAiaWQiOiAibmJfMjAxOF8yNDY0MDAwXzc0MzQwMDAiLCAibmFtZSI6ICJuYl8yMDE4XzI0NjQwMDBfNzQzNDAwMCIsICJvbmxpbmsiOiAiaHR0cHM6Ly9nZW9uYi5zbmIuY2EvbGkvIiwgInN0eWxlIjoge319LCAidHlwZSI6ICJGZWF0dXJlIn0sIHsiZ2VvbWV0cnkiOiB7ImNvb3JkaW5hdGVzIjogW1tbMTEyLjUzMTI4NTAxNzY1NDIxLCAtNDQuOTUwNTc4Mzk0ODQzMzJdLCBbMTEyLjUzMTAwOTIzNDkyNzAzLCAtNDQuOTUwNzIxMDk5ODM2MjhdLCBbMTEyLjUzMTIxMDE4ODU3OTk2LCAtNDQuOTUwOTE2ODkwODg1Ml0sIFsxMTIuNTMxMDA5MjM0OTI3MDMsIC00NC45NTA3MjEwOTk4MzYyOF0sIFsxMTIuNTMxMjg1MDE3NjU0MjEsIC00NC45NTA1NzgzOTQ4NDMzMl1dXSwgInR5cGUiOiAiUG9seWdvbiJ9LCAiaWQiOiAiNyIsICJwcm9wZXJ0aWVzIjogeyJMQVogTWV0YWRhdGEiOiAiaHR0cHM6Ly9nZW9uYi5zbmIuY2EvZG93bmxvYWRzMi9saWRhci8yMDE4L3NuYi9hb2kxL21ldGEvbWV0YV8yMDE4X2FvaTEueG1sIiwgImZlYXR1cmVjbGFzcyI6ICJMSURBUiIsICJoaWdobGlnaHQiOiB7fSwgImhpc3RvZ3JhbSBvZiBjbGFzc2lmaWNhdGlvbiBvZiBwb2ludHMiOiAiWyB7IFwibmFtZVwiOiBcInVuY2xhc3NpZmllZFwiLCBcImxhYmVsXCI6IDEsIFwiY291bnRcIjogMjQgfSwgeyBcIm5hbWVcIjogXCJncm91bmRcIiwgXCJsYWJlbFwiOiAyLCBcImNvdW50XCI6IDE4Nzk2NzMgfSwgeyBcIm5hbWVcIjogXCJsb3cgdmVnZXRhdGlvblwiLCBcImxhYmVsXCI6IDMsIFwiY291bnRcIjogMTU1MTkzMSB9LCB7IFwibmFtZVwiOiBcIm1lZGl1bSB2ZWdldGF0aW9uXCIsIFwibGFiZWxcIjogNCwgXCJjb3VudFwiOiAxNDUzMjYwIH0sIHsgXCJuYW1lXCI6IFwiaGlnaCB2ZWdldGF0aW9uXCIsIFwibGFiZWxcIjogNSwgXCJjb3VudFwiOiAxODYxNDU0NyB9LCB7IFwibmFtZVwiOiBcIm5vaXNlXCIsIFwibGFiZWxcIjogNywgXCJjb3VudFwiOiAzOTA2IH0sIHsgXCJuYW1lXCI6IFwia2V5cG9pbnRcIiwgXCJsYWJlbFwiOiA4LCBcImNvdW50XCI6IDEwNzA5IH0sIHsgXCJuYW1lXCI6IFwid2F0ZXJcIiwgXCJsYWJlbFwiOiA5LCBcImNvdW50XCI6IDY4IH0gXSIsICJpZCI6ICJuYl8yMDE4XzI0NjUwMDBfNzQzODAwMCIsICJuYW1lIjogIm5iXzIwMThfMjQ2NTAwMF83NDM4MDAwIiwgIm9ubGluayI6ICJodHRwczovL2dlb25iLnNuYi5jYS9saS8iLCAic3R5bGUiOiB7fX0sICJ0eXBlIjogIkZlYXR1cmUifSwgeyJnZW9tZXRyeSI6IHsiY29vcmRpbmF0ZXMiOiBbW1sxMTIuNTMwNjgxODgxNzI1MzMsIC00NC45NDk5OTA2NDQ1NjUyNF0sIFsxMTIuNTMwNDA1OTQ2NzI5MDMsIC00NC45NTAxMzM1MDA2MjYzNl0sIFsxMTIuNTMwNjA3MTExMDE3MDUsIC00NC45NTAzMjk0MDE3NzY2NTZdLCBbMTEyLjUzMDQwNTk0NjcyOTAzLCAtNDQuOTUwMTMzNTAwNjI2MzZdLCBbMTEyLjUzMDY4MTg4MTcyNTMzLCAtNDQuOTQ5OTkwNjQ0NTY1MjRdXV0sICJ0eXBlIjogIlBvbHlnb24ifSwgImlkIjogIjgiLCAicHJvcGVydGllcyI6IHsiTEFaIE1ldGFkYXRhIjogImh0dHBzOi8vZ2VvbmIuc25iLmNhL2Rvd25sb2FkczIvbGlkYXIvMjAxOC9zbmIvYW9pMS9tZXRhL21ldGFfMjAxOF9hb2kxLnhtbCIsICJmZWF0dXJlY2xhc3MiOiAiTElEQVIiLCAiaGlnaGxpZ2h0Ijoge30sICJoaXN0b2dyYW0gb2YgY2xhc3NpZmljYXRpb24gb2YgcG9pbnRzIjogIlsgeyBcIm5hbWVcIjogXCJ1bmNsYXNzaWZpZWRcIiwgXCJsYWJlbFwiOiAxLCBcImNvdW50XCI6IDI3IH0sIHsgXCJuYW1lXCI6IFwiZ3JvdW5kXCIsIFwibGFiZWxcIjogMiwgXCJjb3VudFwiOiAyNzY3NjY0IH0sIHsgXCJuYW1lXCI6IFwibG93IHZlZ2V0YXRpb25cIiwgXCJsYWJlbFwiOiAzLCBcImNvdW50XCI6IDI1MzAwMjcgfSwgeyBcIm5hbWVcIjogXCJtZWRpdW0gdmVnZXRhdGlvblwiLCBcImxhYmVsXCI6IDQsIFwiY291bnRcIjogMjgyODU2NiB9LCB7IFwibmFtZVwiOiBcImhpZ2ggdmVnZXRhdGlvblwiLCBcImxhYmVsXCI6IDUsIFwiY291bnRcIjogMTAzNjQ3MjAgfSwgeyBcIm5hbWVcIjogXCJub2lzZVwiLCBcImxhYmVsXCI6IDcsIFwiY291bnRcIjogMTEwNDUgfSwgeyBcIm5hbWVcIjogXCJrZXlwb2ludFwiLCBcImxhYmVsXCI6IDgsIFwiY291bnRcIjogMTEzNTQgfSBdIiwgImlkIjogIm5iXzIwMThfMjQ2NTAwMF83NDM1MDAwIiwgIm5hbWUiOiAibmJfMjAxOF8yNDY1MDAwXzc0MzUwMDAiLCAib25saW5rIjogImh0dHBzOi8vZ2VvbmIuc25iLmNhL2xpLyIsICJzdHlsZSI6IHt9fSwgInR5cGUiOiAiRmVhdHVyZSJ9LCB7Imdlb21ldHJ5IjogeyJjb29yZGluYXRlcyI6IFtbWzExMi41MzEyMzM5NjgwMjEyMywgLTQ0Ljk0OTcwNTAzNjcyOTQ3XSwgWzExMi41MzA5NTc4OTI1MDYxNywgLTQ0Ljk0OTg0NzgyMTM1NDQ1XSwgWzExMi41MzExNTg5NTUyMjk4NywgLTQ0Ljk1MDA0MzgyMzI1NTNdLCBbMTEyLjUzMDk1Nzg5MjUwNjE3LCAtNDQuOTQ5ODQ3ODIxMzU0NDVdLCBbMTEyLjUzMTIzMzk2ODAyMTIzLCAtNDQuOTQ5NzA1MDM2NzI5NDddXV0sICJ0eXBlIjogIlBvbHlnb24ifSwgImlkIjogIjkiLCAicHJvcGVydGllcyI6IHsiTEFaIE1ldGFkYXRhIjogImh0dHBzOi8vZ2VvbmIuc25iLmNhL2Rvd25sb2FkczIvbGlkYXIvMjAxOC9zbmIvYW9pMS9tZXRhL21ldGFfMjAxOF9hb2kxLnhtbCIsICJmZWF0dXJlY2xhc3MiOiAiTElEQVIiLCAiaGlnaGxpZ2h0Ijoge30sICJoaXN0b2dyYW0gb2YgY2xhc3NpZmljYXRpb24gb2YgcG9pbnRzIjogIlsgeyBcIm5hbWVcIjogXCJ1bmNsYXNzaWZpZWRcIiwgXCJsYWJlbFwiOiAxLCBcImNvdW50XCI6IDQ5IH0sIHsgXCJuYW1lXCI6IFwiZ3JvdW5kXCIsIFwibGFiZWxcIjogMiwgXCJjb3VudFwiOiAxOTM3ODQxIH0sIHsgXCJuYW1lXCI6IFwibG93IHZlZ2V0YXRpb25cIiwgXCJsYWJlbFwiOiAzLCBcImNvdW50XCI6IDExOTYyMzYgfSwgeyBcIm5hbWVcIjogXCJtZWRpdW0gdmVnZXRhdGlvblwiLCBcImxhYmVsXCI6IDQsIFwiY291bnRcIjogODY5ODY2IH0sIHsgXCJuYW1lXCI6IFwiaGlnaCB2ZWdldGF0aW9uXCIsIFwibGFiZWxcIjogNSwgXCJjb3VudFwiOiAyMTk0ODM3MyB9LCB7IFwibmFtZVwiOiBcIm5vaXNlXCIsIFwibGFiZWxcIjogNywgXCJjb3VudFwiOiAxMjg5IH0sIHsgXCJuYW1lXCI6IFwia2V5cG9pbnRcIiwgXCJsYWJlbFwiOiA4LCBcImNvdW50XCI6IDEwNzU3IH0gXSIsICJpZCI6ICJuYl8yMDE4XzI0NjMwMDBfNzQzNTAwMCIsICJuYW1lIjogIm5iXzIwMThfMjQ2MzAwMF83NDM1MDAwIiwgIm9ubGluayI6ICJodHRwczovL2dlb25iLnNuYi5jYS9saS8iLCAic3R5bGUiOiB7fX0sICJ0eXBlIjogIkZlYXR1cmUifSwgeyJnZW9tZXRyeSI6IHsiY29vcmRpbmF0ZXMiOiBbW1sxMTIuNTMxMDA5MjMyMTY5NTIsIC00NC45NTA3MjExMDEyNjM1MV0sIFsxMTIuNTMwNzMzNTE5NjIyNTcsIC00NC45NTA4NjM4NDE5MTk1MzVdLCBbMTEyLjUzMDkzNDUyMzk4MDM1LCAtNDQuOTUxMDU5NTgyNjUwODddLCBbMTEyLjUzMDczMzUxOTYyMjU3LCAtNDQuOTUwODYzODQxOTE5NTM1XSwgWzExMi41MzEwMDkyMzIxNjk1MiwgLTQ0Ljk1MDcyMTEwMTI2MzUxXV1dLCAidHlwZSI6ICJQb2x5Z29uIn0sICJpZCI6ICIxMCIsICJwcm9wZXJ0aWVzIjogeyJMQVogTWV0YWRhdGEiOiAiaHR0cHM6Ly9nZW9uYi5zbmIuY2EvZG93bmxvYWRzMi9saWRhci8yMDE4L3NuYi9hb2kxL21ldGEvbWV0YV8yMDE4X2FvaTEueG1sIiwgImZlYXR1cmVjbGFzcyI6ICJMSURBUiIsICJoaWdobGlnaHQiOiB7fSwgImhpc3RvZ3JhbSBvZiBjbGFzc2lmaWNhdGlvbiBvZiBwb2ludHMiOiAiWyB7IFwibmFtZVwiOiBcInVuY2xhc3NpZmllZFwiLCBcImxhYmVsXCI6IDEsIFwiY291bnRcIjogMTAgfSwgeyBcIm5hbWVcIjogXCJncm91bmRcIiwgXCJsYWJlbFwiOiAyLCBcImNvdW50XCI6IDE2OTc2NDkgfSwgeyBcIm5hbWVcIjogXCJsb3cgdmVnZXRhdGlvblwiLCBcImxhYmVsXCI6IDMsIFwiY291bnRcIjogMTA5ODIyNSB9LCB7IFwibmFtZVwiOiBcIm1lZGl1bSB2ZWdldGF0aW9uXCIsIFwibGFiZWxcIjogNCwgXCJjb3VudFwiOiA4NjUxMzUgfSwgeyBcIm5hbWVcIjogXCJoaWdoIHZlZ2V0YXRpb25cIiwgXCJsYWJlbFwiOiA1LCBcImNvdW50XCI6IDE5MzA2ODIzIH0sIHsgXCJuYW1lXCI6IFwiYnVpbGRpbmdcIiwgXCJsYWJlbFwiOiA2LCBcImNvdW50XCI6IDMwNCB9LCB7IFwibmFtZVwiOiBcIm5vaXNlXCIsIFwibGFiZWxcIjogNywgXCJjb3VudFwiOiAyMjcyIH0sIHsgXCJuYW1lXCI6IFwia2V5cG9pbnRcIiwgXCJsYWJlbFwiOiA4LCBcImNvdW50XCI6IDEwNzAwIH0gXSIsICJpZCI6ICJuYl8yMDE4XzI0NjYwMDBfNzQzODAwMCIsICJuYW1lIjogIm5iXzIwMThfMjQ2NjAwMF83NDM4MDAwIiwgIm9ubGluayI6ICJodHRwczovL2dlb25iLnNuYi5jYS9saS8iLCAic3R5bGUiOiB7fX0sICJ0eXBlIjogIkZlYXR1cmUifSwgeyJnZW9tZXRyeSI6IHsiY29vcmRpbmF0ZXMiOiBbW1sxMTIuNTMwNDA1OTQzOTcwMDEsIC00NC45NTAxMzM1MDIwNTUxMjRdLCBbMTEyLjUzMDEzMDA3OTI0ODI3LCAtNDQuOTUwMjc2MzkzODAwNF0sIFsxMTIuNTMwMzMxMjk0MjcxMywgLTQ0Ljk1MDQ3MjI0NDU2NDg3XSwgWzExMi41MzAxMzAwNzkyNDgyNywgLTQ0Ljk1MDI3NjM5MzgwMDRdLCBbMTEyLjUzMDQwNTk0Mzk3MDAxLCAtNDQuOTUwMTMzNTAyMDU1MTI0XV1dLCAidHlwZSI6ICJQb2x5Z29uIn0sICJpZCI6ICIxMSIsICJwcm9wZXJ0aWVzIjogeyJMQVogTWV0YWRhdGEiOiAiaHR0cHM6Ly9nZW9uYi5zbmIuY2EvZG93bmxvYWRzMi9saWRhci8yMDE4L3NuYi9hb2kxL21ldGEvbWV0YV8yMDE4X2FvaTEueG1sIiwgImZlYXR1cmVjbGFzcyI6ICJMSURBUiIsICJoaWdobGlnaHQiOiB7fSwgImhpc3RvZ3JhbSBvZiBjbGFzc2lmaWNhdGlvbiBvZiBwb2ludHMiOiAiWyB7IFwibmFtZVwiOiBcInVuY2xhc3NpZmllZFwiLCBcImxhYmVsXCI6IDEsIFwiY291bnRcIjogMzEgfSwgeyBcIm5hbWVcIjogXCJncm91bmRcIiwgXCJsYWJlbFwiOiAyLCBcImNvdW50XCI6IDMxMDE5MzkgfSwgeyBcIm5hbWVcIjogXCJsb3cgdmVnZXRhdGlvblwiLCBcImxhYmVsXCI6IDMsIFwiY291bnRcIjogMjA2ODU5MSB9LCB7IFwibmFtZVwiOiBcIm1lZGl1bSB2ZWdldGF0aW9uXCIsIFwibGFiZWxcIjogNCwgXCJjb3VudFwiOiAxODg1NTM1IH0sIHsgXCJuYW1lXCI6IFwiaGlnaCB2ZWdldGF0aW9uXCIsIFwibGFiZWxcIjogNSwgXCJjb3VudFwiOiAxMjE1NzQ4NiB9LCB7IFwibmFtZVwiOiBcIm5vaXNlXCIsIFwibGFiZWxcIjogNywgXCJjb3VudFwiOiA4ODIyIH0sIHsgXCJuYW1lXCI6IFwia2V5cG9pbnRcIiwgXCJsYWJlbFwiOiA4LCBcImNvdW50XCI6IDEwODAwIH0gXSIsICJpZCI6ICJuYl8yMDE4XzI0NjYwMDBfNzQzNTAwMCIsICJuYW1lIjogIm5iXzIwMThfMjQ2NjAwMF83NDM1MDAwIiwgIm9ubGluayI6ICJodHRwczovL2dlb25iLnNuYi5jYS9saS8iLCAic3R5bGUiOiB7fX0sICJ0eXBlIjogIkZlYXR1cmUifSwgeyJnZW9tZXRyeSI6IHsiY29vcmRpbmF0ZXMiOiBbW1sxMTIuNTMxNDM0OTgxOTI1OTEsIC00NC45NDk5MDEwOTA5NTQ4N10sIFsxMTIuNTMxMTU4OTU3MjQwMTUsIC00NC45NTAwNDM4MjUyMTUxNTRdLCBbMTEyLjUzMTM1OTk0OTc0MDk1LCAtNDQuOTUwMjM5NzkwMzYyNTI0XSwgWzExMi41MzExNTg5NTcyNDAxNSwgLTQ0Ljk1MDA0MzgyNTIxNTE1NF0sIFsxMTIuNTMxNDM0OTgxOTI1OTEsIC00NC45NDk5MDEwOTA5NTQ4N11dXSwgInR5cGUiOiAiUG9seWdvbiJ9LCAiaWQiOiAiMTIiLCAicHJvcGVydGllcyI6IHsiTEFaIE1ldGFkYXRhIjogImh0dHBzOi8vZ2VvbmIuc25iLmNhL2Rvd25sb2FkczIvbGlkYXIvMjAxOC9zbmIvYW9pMS9tZXRhL21ldGFfMjAxOF9hb2kxLnhtbCIsICJmZWF0dXJlY2xhc3MiOiAiTElEQVIiLCAiaGlnaGxpZ2h0Ijoge30sICJoaXN0b2dyYW0gb2YgY2xhc3NpZmljYXRpb24gb2YgcG9pbnRzIjogIlsgeyBcIm5hbWVcIjogXCJ1bmNsYXNzaWZpZWRcIiwgXCJsYWJlbFwiOiAxLCBcImNvdW50XCI6IDM5IH0sIHsgXCJuYW1lXCI6IFwiZ3JvdW5kXCIsIFwibGFiZWxcIjogMiwgXCJjb3VudFwiOiAxNDkxNTg4IH0sIHsgXCJuYW1lXCI6IFwibG93IHZlZ2V0YXRpb25cIiwgXCJsYWJlbFwiOiAzLCBcImNvdW50XCI6IDExNjY0ODYgfSwgeyBcIm5hbWVcIjogXCJtZWRpdW0gdmVnZXRhdGlvblwiLCBcImxhYmVsXCI6IDQsIFwiY291bnRcIjogMTA5MjM1NiB9LCB7IFwibmFtZVwiOiBcImhpZ2ggdmVnZXRhdGlvblwiLCBcImxhYmVsXCI6IDUsIFwiY291bnRcIjogMjE5OTgyODggfSwgeyBcIm5hbWVcIjogXCJidWlsZGluZ1wiLCBcImxhYmVsXCI6IDYsIFwiY291bnRcIjogNjI4IH0sIHsgXCJuYW1lXCI6IFwibm9pc2VcIiwgXCJsYWJlbFwiOiA3LCBcImNvdW50XCI6IDIzMzcgfSwgeyBcIm5hbWVcIjogXCJrZXlwb2ludFwiLCBcImxhYmVsXCI6IDgsIFwiY291bnRcIjogMTA2NTkgfSBdIiwgImlkIjogIm5iXzIwMThfMjQ2MzAwMF83NDM2MDAwIiwgIm5hbWUiOiAibmJfMjAxOF8yNDYzMDAwXzc0MzYwMDAiLCAib25saW5rIjogImh0dHBzOi8vZ2VvbmIuc25iLmNhL2xpLyIsICJzdHlsZSI6IHt9fSwgInR5cGUiOiAiRmVhdHVyZSJ9LCB7Imdlb21ldHJ5IjogeyJjb29yZGluYXRlcyI6IFtbWzExMi41MzA4MDgyMDYzMjU4NiwgLTQ0Ljk1MDUyNTI3MTU2NDAzXSwgWzExMi41MzA1MzI0NDMwNjQwNiwgLTQ0Ljk1MDY2ODA2MjU2MDQyXSwgWzExMi41MzA3MzM1MTc2MTIxOCwgLTQ0Ljk1MDg2MzgzOTk2MTkxXSwgWzExMi41MzA1MzI0NDMwNjQwNiwgLTQ0Ljk1MDY2ODA2MjU2MDQyXSwgWzExMi41MzA4MDgyMDYzMjU4NiwgLTQ0Ljk1MDUyNTI3MTU2NDAzXV1dLCAidHlwZSI6ICJQb2x5Z29uIn0sICJpZCI6ICIxMyIsICJwcm9wZXJ0aWVzIjogeyJMQVogTWV0YWRhdGEiOiAiaHR0cHM6Ly9nZW9uYi5zbmIuY2EvZG93bmxvYWRzMi9saWRhci8yMDE4L3NuYi9hb2kxL21ldGEvbWV0YV8yMDE4X2FvaTEueG1sIiwgImZlYXR1cmVjbGFzcyI6ICJMSURBUiIsICJoaWdobGlnaHQiOiB7fSwgImhpc3RvZ3JhbSBvZiBjbGFzc2lmaWNhdGlvbiBvZiBwb2ludHMiOiAiWyB7IFwibmFtZVwiOiBcInVuY2xhc3NpZmllZFwiLCBcImxhYmVsXCI6IDEsIFwiY291bnRcIjogOCB9LCB7IFwibmFtZVwiOiBcImdyb3VuZFwiLCBcImxhYmVsXCI6IDIsIFwiY291bnRcIjogMTY4Mzc2NCB9LCB7IFwibmFtZVwiOiBcImxvdyB2ZWdldGF0aW9uXCIsIFwibGFiZWxcIjogMywgXCJjb3VudFwiOiAxMzQwMDc4IH0sIHsgXCJuYW1lXCI6IFwibWVkaXVtIHZlZ2V0YXRpb25cIiwgXCJsYWJlbFwiOiA0LCBcImNvdW50XCI6IDEzMjczMTQgfSwgeyBcIm5hbWVcIjogXCJoaWdoIHZlZ2V0YXRpb25cIiwgXCJsYWJlbFwiOiA1LCBcImNvdW50XCI6IDE5MjY3MTg1IH0sIHsgXCJuYW1lXCI6IFwibm9pc2VcIiwgXCJsYWJlbFwiOiA3LCBcImNvdW50XCI6IDI3ODYgfSwgeyBcIm5hbWVcIjogXCJrZXlwb2ludFwiLCBcImxhYmVsXCI6IDgsIFwiY291bnRcIjogMTA2OTAgfSBdIiwgImlkIjogIm5iXzIwMThfMjQ2NjAwMF83NDM3MDAwIiwgIm5hbWUiOiAibmJfMjAxOF8yNDY2MDAwXzc0MzcwMDAiLCAib25saW5rIjogImh0dHBzOi8vZ2VvbmIuc25iLmNhL2xpLyIsICJzdHlsZSI6IHt9fSwgInR5cGUiOiAiRmVhdHVyZSJ9LCB7Imdlb21ldHJ5IjogeyJjb29yZGluYXRlcyI6IFtbWzExMi41MzE4MzY3OTkxMjYxOCwgLTQ0Ljk1MDI5MzA4OTA4MzVdLCBbMTEyLjUzMTU2MDg3NjA2ODcyLCAtNDQuOTUwNDM1NzIyNjgyNTg1XSwgWzExMi41MzE3NjE3MjgyMTc5NCwgLTQ0Ljk1MDYzMTYxNDM0NTddLCBbMTEyLjUzMTU2MDg3NjA2ODcyLCAtNDQuOTUwNDM1NzIyNjgyNTg1XSwgWzExMi41MzE4MzY3OTkxMjYxOCwgLTQ0Ljk1MDI5MzA4OTA4MzVdXV0sICJ0eXBlIjogIlBvbHlnb24ifSwgImlkIjogIjE0IiwgInByb3BlcnRpZXMiOiB7IkxBWiBNZXRhZGF0YSI6ICJodHRwczovL2dlb25iLnNuYi5jYS9kb3dubG9hZHMyL2xpZGFyLzIwMTgvc25iL2FvaTEvbWV0YS9tZXRhXzIwMThfYW9pMS54bWwiLCAiZmVhdHVyZWNsYXNzIjogIkxJREFSIiwgImhpZ2hsaWdodCI6IHt9LCAiaGlzdG9ncmFtIG9mIGNsYXNzaWZpY2F0aW9uIG9mIHBvaW50cyI6ICJbIHsgXCJuYW1lXCI6IFwidW5jbGFzc2lmaWVkXCIsIFwibGFiZWxcIjogMSwgXCJjb3VudFwiOiAzOCB9LCB7IFwibmFtZVwiOiBcImdyb3VuZFwiLCBcImxhYmVsXCI6IDIsIFwiY291bnRcIjogMTg2NDU1NSB9LCB7IFwibmFtZVwiOiBcImxvdyB2ZWdldGF0aW9uXCIsIFwibGFiZWxcIjogMywgXCJjb3VudFwiOiAxNTE0NTQxIH0sIHsgXCJuYW1lXCI6IFwibWVkaXVtIHZlZ2V0YXRpb25cIiwgXCJsYWJlbFwiOiA0LCBcImNvdW50XCI6IDE2MzIwMDAgfSwgeyBcIm5hbWVcIjogXCJoaWdoIHZlZ2V0YXRpb25cIiwgXCJsYWJlbFwiOiA1LCBcImNvdW50XCI6IDE2ODc3MDc1IH0sIHsgXCJuYW1lXCI6IFwiYnVpbGRpbmdcIiwgXCJsYWJlbFwiOiA2LCBcImNvdW50XCI6IDMxNiB9LCB7IFwibmFtZVwiOiBcIm5vaXNlXCIsIFwibGFiZWxcIjogNywgXCJjb3VudFwiOiA2NTA0IH0sIHsgXCJuYW1lXCI6IFwia2V5cG9pbnRcIiwgXCJsYWJlbFwiOiA4LCBcImNvdW50XCI6IDEwNzcyIH0gXSIsICJpZCI6ICJuYl8yMDE4XzI0NjMwMDBfNzQzODAwMCIsICJuYW1lIjogIm5iXzIwMThfMjQ2MzAwMF83NDM4MDAwIiwgIm9ubGluayI6ICJodHRwczovL2dlb25iLnNuYi5jYS9saS8iLCAic3R5bGUiOiB7fX0sICJ0eXBlIjogIkZlYXR1cmUifSwgeyJnZW9tZXRyeSI6IHsiY29vcmRpbmF0ZXMiOiBbW1sxMTIuNTMwOTU3ODg5NzQ1NzUsIC00NC45NDk4NDc4MjI3ODI0OV0sIFsxMTIuNTMwNjgxODg0NDg1MDMsIC00NC45NDk5OTA2NDMxMzY4NF0sIFsxMTIuNTMwODgyOTk4MDA2NiwgLTQ0Ljk1MDE4NjU5NDY2NTkzXSwgWzExMi41MzA2ODE4ODQ0ODUwMywgLTQ0Ljk0OTk5MDY0MzEzNjg0XSwgWzExMi41MzA5NTc4ODk3NDU3NSwgLTQ0Ljk0OTg0NzgyMjc4MjQ5XV1dLCAidHlwZSI6ICJQb2x5Z29uIn0sICJpZCI6ICIxNSIsICJwcm9wZXJ0aWVzIjogeyJMQVogTWV0YWRhdGEiOiAiaHR0cHM6Ly9nZW9uYi5zbmIuY2EvZG93bmxvYWRzMi9saWRhci8yMDE4L3NuYi9hb2kxL21ldGEvbWV0YV8yMDE4X2FvaTEueG1sIiwgImZlYXR1cmVjbGFzcyI6ICJMSURBUiIsICJoaWdobGlnaHQiOiB7fSwgImhpc3RvZ3JhbSBvZiBjbGFzc2lmaWNhdGlvbiBvZiBwb2ludHMiOiAiWyB7IFwibmFtZVwiOiBcInVuY2xhc3NpZmllZFwiLCBcImxhYmVsXCI6IDEsIFwiY291bnRcIjogNzYgfSwgeyBcIm5hbWVcIjogXCJncm91bmRcIiwgXCJsYWJlbFwiOiAyLCBcImNvdW50XCI6IDE4Nzg2MDkgfSwgeyBcIm5hbWVcIjogXCJsb3cgdmVnZXRhdGlvblwiLCBcImxhYmVsXCI6IDMsIFwiY291bnRcIjogMTY1MTg4OSB9LCB7IFwibmFtZVwiOiBcIm1lZGl1bSB2ZWdldGF0aW9uXCIsIFwibGFiZWxcIjogNCwgXCJjb3VudFwiOiAxODM1MTM2IH0sIHsgXCJuYW1lXCI6IFwiaGlnaCB2ZWdldGF0aW9uXCIsIFwibGFiZWxcIjogNSwgXCJjb3VudFwiOiAxNTkwOTAzNyB9LCB7IFwibmFtZVwiOiBcIm5vaXNlXCIsIFwibGFiZWxcIjogNywgXCJjb3VudFwiOiA1MTk3IH0sIHsgXCJuYW1lXCI6IFwia2V5cG9pbnRcIiwgXCJsYWJlbFwiOiA4LCBcImNvdW50XCI6IDExNDEyIH0gXSIsICJpZCI6ICJuYl8yMDE4XzI0NjQwMDBfNzQzNTAwMCIsICJuYW1lIjogIm5iXzIwMThfMjQ2NDAwMF83NDM1MDAwIiwgIm9ubGluayI6ICJodHRwczovL2dlb25iLnNuYi5jYS9saS8iLCAic3R5bGUiOiB7fX0sICJ0eXBlIjogIkZlYXR1cmUifSwgeyJnZW9tZXRyeSI6IHsiY29vcmRpbmF0ZXMiOiBbW1sxMTIuNTI2NzUyMDcyNTkwMTcsIC00NC45NTIzMzI0NDA1NzM3Ml0sIFsxMTIuNTI2NDc3MjQzMDU2MzksIC00NC45NTI0NzU3NzkwNDE5N10sIFsxMTIuNTI2Njc5MDk0Njc3MDEsIC00NC45NTI2NzA4ODczMDY2NDVdLCBbMTEyLjUyNjQ3NzI0MzA1NjM5LCAtNDQuOTUyNDc1Nzc5MDQxOTddLCBbMTEyLjUyNjc1MjA3MjU5MDE3LCAtNDQuOTUyMzMyNDQwNTczNzJdXV0sICJ0eXBlIjogIlBvbHlnb24ifSwgImlkIjogIjE2IiwgInByb3BlcnRpZXMiOiB7IkxBWiBNZXRhZGF0YSI6ICJodHRwczovL2dlb25iLnNuYi5jYS9kb3dubG9hZHMyL2xpZGFyLzIwMTgvc25iL2FvaTEvbWV0YS9tZXRhXzIwMThfYW9pMS54bWwiLCAiZmVhdHVyZWNsYXNzIjogIkxJREFSIiwgImhpZ2hsaWdodCI6IHt9LCAiaGlzdG9ncmFtIG9mIGNsYXNzaWZpY2F0aW9uIG9mIHBvaW50cyI6ICJbIHsgXCJuYW1lXCI6IFwiZ3JvdW5kXCIsIFwibGFiZWxcIjogMiwgXCJjb3VudFwiOiAxNDE0NzU3IH0sIHsgXCJuYW1lXCI6IFwibG93IHZlZ2V0YXRpb25cIiwgXCJsYWJlbFwiOiAzLCBcImNvdW50XCI6IDM5MjQzNTMgfSwgeyBcIm5hbWVcIjogXCJtZWRpdW0gdmVnZXRhdGlvblwiLCBcImxhYmVsXCI6IDQsIFwiY291bnRcIjogNDYyNDIyIH0sIHsgXCJuYW1lXCI6IFwiaGlnaCB2ZWdldGF0aW9uXCIsIFwibGFiZWxcIjogNSwgXCJjb3VudFwiOiAxMTg0MDY2NCB9LCB7IFwibmFtZVwiOiBcImJ1aWxkaW5nXCIsIFwibGFiZWxcIjogNiwgXCJjb3VudFwiOiAyNzIwODEgfSwgeyBcIm5hbWVcIjogXCJub2lzZVwiLCBcImxhYmVsXCI6IDcsIFwiY291bnRcIjogMTI4IH0sIHsgXCJuYW1lXCI6IFwia2V5cG9pbnRcIiwgXCJsYWJlbFwiOiA4LCBcImNvdW50XCI6IDEwMzc3IH0gXSIsICJpZCI6ICJuYl8yMDE1XzI0ODAwMDBfNzQzNjAwMCIsICJuYW1lIjogIm5iXzIwMTVfMjQ4MDAwMF83NDM2MDAwIiwgIm9ubGluayI6ICJodHRwczovL2dlb25iLnNuYi5jYS9saS8iLCAic3R5bGUiOiB7fX0sICJ0eXBlIjogIkZlYXR1cmUifSwgeyJnZW9tZXRyeSI6IHsiY29vcmRpbmF0ZXMiOiBbW1sxMTIuNTMxMzU5OTQ4OTkxMTIsIC00NC45NTAyMzk3OTM3NDkwNTZdLCBbMTEyLjUzMTA4NDA0NTMxNjA1LCAtNDQuOTUwMzgyNTEzMzgyNjM1XSwgWzExMi41MzEyODUwMTg0MDMwMywgLTQ0Ljk1MDU3ODM5MTQ1NzhdLCBbMTEyLjUzMTA4NDA0NTMxNjA1LCAtNDQuOTUwMzgyNTEzMzgyNjM1XSwgWzExMi41MzEzNTk5NDg5OTExMiwgLTQ0Ljk1MDIzOTc5Mzc0OTA1Nl1dXSwgInR5cGUiOiAiUG9seWdvbiJ9LCAiaWQiOiAiMTciLCAicHJvcGVydGllcyI6IHsiTEFaIE1ldGFkYXRhIjogImh0dHBzOi8vZ2VvbmIuc25iLmNhL2Rvd25sb2FkczIvbGlkYXIvMjAxOC9zbmIvYW9pMS9tZXRhL21ldGFfMjAxOF9hb2kxLnhtbCIsICJmZWF0dXJlY2xhc3MiOiAiTElEQVIiLCAiaGlnaGxpZ2h0Ijoge30sICJoaXN0b2dyYW0gb2YgY2xhc3NpZmljYXRpb24gb2YgcG9pbnRzIjogIlsgeyBcIm5hbWVcIjogXCJ1bmNsYXNzaWZpZWRcIiwgXCJsYWJlbFwiOiAxLCBcImNvdW50XCI6IDU1IH0sIHsgXCJuYW1lXCI6IFwiZ3JvdW5kXCIsIFwibGFiZWxcIjogMiwgXCJjb3VudFwiOiAxOTMyMTYxIH0sIHsgXCJuYW1lXCI6IFwibG93IHZlZ2V0YXRpb25cIiwgXCJsYWJlbFwiOiAzLCBcImNvdW50XCI6IDE3NTU0MjEgfSwgeyBcIm5hbWVcIjogXCJtZWRpdW0gdmVnZXRhdGlvblwiLCBcImxhYmVsXCI6IDQsIFwiY291bnRcIjogMTYzNjk2OCB9LCB7IFwibmFtZVwiOiBcImhpZ2ggdmVnZXRhdGlvblwiLCBcImxhYmVsXCI6IDUsIFwiY291bnRcIjogMTg0OTYwOTUgfSwgeyBcIm5hbWVcIjogXCJub2lzZVwiLCBcImxhYmVsXCI6IDcsIFwiY291bnRcIjogMjI1MCB9LCB7IFwibmFtZVwiOiBcImtleXBvaW50XCIsIFwibGFiZWxcIjogOCwgXCJjb3VudFwiOiAxMDcxOCB9IF0iLCAiaWQiOiAibmJfMjAxOF8yNDY0MDAwXzc0MzcwMDAiLCAibmFtZSI6ICJuYl8yMDE4XzI0NjQwMDBfNzQzNzAwMCIsICJvbmxpbmsiOiAiaHR0cHM6Ly9nZW9uYi5zbmIuY2EvbGkvIiwgInN0eWxlIjoge319LCAidHlwZSI6ICJGZWF0dXJlIn0sIHsiZ2VvbWV0cnkiOiB7ImNvb3JkaW5hdGVzIjogW1tbMTEyLjUzMTE1ODk1NDQ4MDI1LCAtNDQuOTUwMDQzODI2NjQyN10sIFsxMTIuNTMwODgzMDAwMDE3NCwgLTQ0Ljk1MDE4NjU5NjYyNTI2NV0sIFsxMTIuNTMxMDg0MDQzMzA1OTcsIC00NC45NTAzODI1MTE0MjM2NV0sIFsxMTIuNTMwODgzMDAwMDE3NCwgLTQ0Ljk1MDE4NjU5NjYyNTI2NV0sIFsxMTIuNTMxMTU4OTU0NDgwMjUsIC00NC45NTAwNDM4MjY2NDI3XV1dLCAidHlwZSI6ICJQb2x5Z29uIn0sICJpZCI6ICIxOCIsICJwcm9wZXJ0aWVzIjogeyJMQVogTWV0YWRhdGEiOiAiaHR0cHM6Ly9nZW9uYi5zbmIuY2EvZG93bmxvYWRzMi9saWRhci8yMDE4L3NuYi9hb2kxL21ldGEvbWV0YV8yMDE4X2FvaTEueG1sIiwgImZlYXR1cmVjbGFzcyI6ICJMSURBUiIsICJoaWdobGlnaHQiOiB7fSwgImhpc3RvZ3JhbSBvZiBjbGFzc2lmaWNhdGlvbiBvZiBwb2ludHMiOiAiWyB7IFwibmFtZVwiOiBcInVuY2xhc3NpZmllZFwiLCBcImxhYmVsXCI6IDEsIFwiY291bnRcIjogNDYgfSwgeyBcIm5hbWVcIjogXCJncm91bmRcIiwgXCJsYWJlbFwiOiAyLCBcImNvdW50XCI6IDE4MzkzMjkgfSwgeyBcIm5hbWVcIjogXCJsb3cgdmVnZXRhdGlvblwiLCBcImxhYmVsXCI6IDMsIFwiY291bnRcIjogMTQ5MTMyNSB9LCB7IFwibmFtZVwiOiBcIm1lZGl1bSB2ZWdldGF0aW9uXCIsIFwibGFiZWxcIjogNCwgXCJjb3VudFwiOiAxNDIwODA5IH0sIHsgXCJuYW1lXCI6IFwiaGlnaCB2ZWdldGF0aW9uXCIsIFwibGFiZWxcIjogNSwgXCJjb3VudFwiOiAxNzg0ODQ0NSB9LCB7IFwibmFtZVwiOiBcIm5vaXNlXCIsIFwibGFiZWxcIjogNywgXCJjb3VudFwiOiAzNTMxIH0sIHsgXCJuYW1lXCI6IFwia2V5cG9pbnRcIiwgXCJsYWJlbFwiOiA4LCBcImNvdW50XCI6IDEwNzAxIH0gXSIsICJpZCI6ICJuYl8yMDE4XzI0NjQwMDBfNzQzNjAwMCIsICJuYW1lIjogIm5iXzIwMThfMjQ2NDAwMF83NDM2MDAwIiwgIm9ubGluayI6ICJodHRwczovL2dlb25iLnNuYi5jYS9saS8iLCAic3R5bGUiOiB7fX0sICJ0eXBlIjogIkZlYXR1cmUifV0sICJ0eXBlIjogIkZlYXR1cmVDb2xsZWN0aW9uIn0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgfQogICAgICAgICkuYWRkVG8obWFwXzhkYTkyN2M2NTE1YzRlMmZhNGJjMDgxZDUzNDE4NzNiICk7CiAgICAgICAgZ2VvX2pzb25fZGIyMWQyMzUxMzVjNGI3N2JhZWYzNTExN2VlYzVhY2Euc2V0U3R5bGUoZnVuY3Rpb24oZmVhdHVyZSkge3JldHVybiBmZWF0dXJlLnByb3BlcnRpZXMuc3R5bGU7fSk7CiAgICAgICAgCjwvc2NyaXB0Pg== onload=\"this.contentDocument.open();this.contentDocument.write(atob(this.getAttribute('data-html')));this.contentDocument.close();\" allowfullscreen webkitallowfullscreen mozallowfullscreen></iframe></div></div>"
],
"text/plain": [
"<folium.folium.Map at 0x7f31c384e080>"
]
},
"metadata": {
"tags": []
},
"execution_count": 52
}
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "IBJ5PyXqWmf_",
"colab_type": "text"
},
"source": [
"###Download DALES Tiles (Optional)"
]
},
{
"cell_type": "code",
"metadata": {
"id": "S9WciYZ2WuLb",
"colab_type": "code",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 102
},
"outputId": "6dcc24c5-85c4-4695-a5c9-cf4320171384"
},
"source": [
"!pip install googledrivedownloader\n",
"import os\n",
"import zipfile\n",
"from google_drive_downloader import GoogleDriveDownloader as gdd\n",
"\n",
"\n",
"def maybe_download_and_extract(file_id, dest_path):\n",
" filename = dest_path.split('/')[-1]\n",
" file_path = dest_path\n",
" download_dir= './'\n",
" if not os.path.isfile(dest_path):\n",
" gdd.download_file_from_google_drive(file_id= file_id, dest_path= file_path)\n",
" print(\"Download finished. Extracting files.\")\n",
"\n",
" if file_path.endswith(\".zip\"):\n",
" # Unpack the zip-file.\n",
" zipfile.ZipFile(file=file_path, mode=\"r\").extractall(download_dir)\n",
" elif file_path.endswith((\".tar.gz\", \".tgz\")):\n",
" # Unpack the tar-ball.\n",
" tarfile.open(name=file_path, mode=\"r:gz\").extractall(download_dir)\n",
" print(\"Done.\")\n",
" else:\n",
" print(\"Data has apparently already been downloaded and unpacked.\")\n",
"\n",
"maybe_download_and_extract(file_id=\"11B6TeSnEerz8JTERc8wYOV2ee8d7Sjgg\", dest_path=\"./dales_train_5.zip\")\n",
"local_dir = '/content/train_5'\n",
"files = {os.path.splitext(f)[0]: os.path.join(dp, f) for dp, dn, filenames in os.walk(local_dir) for f in filenames if os.path.splitext(f)[1] == '.las'}\n",
"len(files)"
],
"execution_count": null,
"outputs": [
{
"output_type": "stream",
"text": [
"Requirement already satisfied: googledrivedownloader in /usr/local/lib/python3.6/dist-packages (0.4)\n",
"Downloading 11B6TeSnEerz8JTERc8wYOV2ee8d7Sjgg into ./dales_train_5.zip... Done.\n",
"Download finished. Extracting files.\n",
"Done.\n"
],
"name": "stdout"
},
{
"output_type": "execute_result",
"data": {
"text/plain": [
"29"
]
},
"metadata": {
"tags": []
},
"execution_count": 11
}
]
},
{
"cell_type": "code",
"metadata": {
"id": "DMav_-zKZwQu",
"colab_type": "code",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 1000
},
"outputId": "92d2744e-7c3c-4c6b-c4cb-e02ccab93cdc"
},
"source": [
"features= list()\n",
"for key, value in files.items():\n",
" print(key,value)\n",
" !lasinfo -i {value} -compute_density -otxt -o {key}.txt\n",
" metadata= extract_metadata_from_las_file(key)\n",
" features.append(create_feature(key,'null',metadata))\n",
"\n",
"feature_collection = {\n",
" 'type': 'FeatureCollection',\n",
" \"features\": features\n",
"}"
],
"execution_count": null,
"outputs": [
{
"output_type": "stream",
"text": [
"5085_54320 /content/train_5/5085_54320.las\n",
"/content/5085_54320.txt\n",
"not processed lasinfo (200101) report for '/content/train_5/5085_54320.las'\n",
" lasinfo (200101) report for '/content/train_5/5085_54320.las'\n",
" X 50850001 50900005\n",
"\n",
" Y 543199992 543249996\n",
"\n",
" Z -300 8756\n",
"\n",
" intensity 0 0\n",
"\n",
" return_number 1 7\n",
"\n",
" number_of_returns 1 7\n",
"\n",
" edge_of_flight_line 0 1\n",
"\n",
" scan_direction_flag 0 0\n",
"\n",
" classification 0 8\n",
"\n",
" scan_angle_rank -30 29\n",
"\n",
" user_data 0 0\n",
"\n",
" point_source_ID 0 0\n",
"\n",
" gps_time 0.000000 0.000000\n",
"\n",
"header size ['227']\n",
"offset to point data ['227']\n",
"number var. length records ['0']\n",
"point data format ['1']\n",
"point data record length ['28']\n",
"number of point records ['2559112']\n",
"number of first returns ['1680544']\n",
"number of intermediate returns ['363782']\n",
"number of last returns ['1679250']\n",
"number of single returns ['1164464']\n",
"5110_54495 /content/train_5/5110_54495.las\n",
"/content/5110_54495.txt\n",
"not processed lasinfo (200101) report for '/content/train_5/5110_54495.las'\n",
" lasinfo (200101) report for '/content/train_5/5110_54495.las'\n",
" X 51100005 51150008\n",
"\n",
" Y 544950000 545000004\n",
"\n",
" Z 6822 13278\n",
"\n",
" intensity 0 0\n",
"\n",
" return_number 1 7\n",
"\n",
" number_of_returns 1 7\n",
"\n",
" edge_of_flight_line 0 1\n",
"\n",
" scan_direction_flag 0 0\n",
"\n",
" classification 0 8\n",
"\n",
" scan_angle_rank -29 34\n",
"\n",
" user_data 0 0\n",
"\n",
" point_source_ID 0 0\n",
"\n",
" gps_time 0.000000 0.000000\n",
"\n",
"header size ['227']\n",
"offset to point data ['227']\n",
"number var. length records ['0']\n",
"point data format ['1']\n",
"point data record length ['28']\n",
"number of point records ['2121064']\n",
"number of first returns ['1708203']\n",
"number of intermediate returns ['156224']\n",
"number of last returns ['1707384']\n",
"number of single returns ['1450747']\n",
"5180_54435 /content/train_5/5180_54435.las\n",
"/content/5180_54435.txt\n",
"not processed lasinfo (200101) report for '/content/train_5/5180_54435.las'\n",
" lasinfo (200101) report for '/content/train_5/5180_54435.las'\n",
" X 51800000 51850003\n",
"\n",
" Y 544350000 544400004\n",
"\n",
" Z 256 5705\n",
"\n",
" intensity 0 0\n",
"\n",
" return_number 1 7\n",
"\n",
" number_of_returns 1 7\n",
"\n",
" edge_of_flight_line 0 1\n",
"\n",
" scan_direction_flag 0 0\n",
"\n",
" classification 0 8\n",
"\n",
" scan_angle_rank -29 30\n",
"\n",
" user_data 0 0\n",
"\n",
" point_source_ID 0 0\n",
"\n",
" gps_time 0.000000 0.000000\n",
"\n",
"header size ['227']\n",
"offset to point data ['227']\n",
"number var. length records ['0']\n",
"point data format ['1']\n",
"point data record length ['28']\n",
"number of point records ['2152632']\n",
"number of first returns ['1673434']\n",
"number of intermediate returns ['175351']\n",
"number of last returns ['1673643']\n",
"number of single returns ['1369796']\n",
"5180_54485 /content/train_5/5180_54485.las\n",
"/content/5180_54485.txt\n",
"not processed lasinfo (200101) report for '/content/train_5/5180_54485.las'\n",
" lasinfo (200101) report for '/content/train_5/5180_54485.las'\n",
" X 51800000 51850003\n",
"\n",
" Y 544849998 544900001\n",
"\n",
" Z 991 8171\n",
"\n",
" intensity 0 0\n",
"\n",
" return_number 1 7\n",
"\n",
" number_of_returns 1 7\n",
"\n",
" edge_of_flight_line 0 1\n",
"\n",
" scan_direction_flag 0 0\n",
"\n",
" classification 0 8\n",
"\n",
" scan_angle_rank -29 29\n",
"\n",
" user_data 0 0\n",
"\n",
" point_source_ID 0 0\n",
"\n",
" gps_time 0.000000 0.000000\n",
"\n",
"header size ['227']\n",
"offset to point data ['227']\n",
"number var. length records ['0']\n",
"point data format ['1']\n",
"point data record length ['28']\n",
"number of point records ['2124496']\n",
"number of first returns ['1513217']\n",
"number of intermediate returns ['243882']\n",
"number of last returns ['1516402']\n",
"number of single returns ['1149005']\n",
"5150_54340 /content/train_5/5150_54340.las\n",
"/content/5150_54340.txt\n",
"not processed lasinfo (200101) report for '/content/train_5/5150_54340.las'\n",
" lasinfo (200101) report for '/content/train_5/5150_54340.las'\n",
" X 51499998 51550001\n",
"\n",
" Y 543400000 543450003\n",
"\n",
" Z 2065 8065\n",
"\n",
" intensity 0 0\n",
"\n",
" return_number 1 7\n",
"\n",
" number_of_returns 1 7\n",
"\n",
" edge_of_flight_line 0 1\n",
"\n",
" scan_direction_flag 0 0\n",
"\n",
" classification 0 8\n",
"\n",
" scan_angle_rank -29 29\n",
"\n",
" user_data 0 0\n",
"\n",
" point_source_ID 0 0\n",
"\n",
" gps_time 0.000000 0.000000\n",
"\n",
"header size ['227']\n",
"offset to point data ['227']\n",
"number var. length records ['0']\n",
"point data format ['1']\n",
"point data record length ['28']\n",
"number of point records ['2423743']\n",
"number of first returns ['1666349']\n",
"number of intermediate returns ['329915']\n",
"number of last returns ['1667896']\n",
"number of single returns ['1240417']\n",
"5110_54475 /content/train_5/5110_54475.las\n",
"/content/5110_54475.txt\n",
"not processed lasinfo (200101) report for '/content/train_5/5110_54475.las'\n",
" lasinfo (200101) report for '/content/train_5/5110_54475.las'\n",
" X 51100002 51150006\n",
"\n",
" Y 544749999 544800002\n",
"\n",
" Z 3004 19688\n",
"\n",
" intensity 0 0\n",
"\n",
" return_number 1 7\n",
"\n",
" number_of_returns 1 7\n",
"\n",
" edge_of_flight_line 0 1\n",
"\n",
" scan_direction_flag 0 0\n",
"\n",
" classification 0 8\n",
"\n",
" scan_angle_rank -29 29\n",
"\n",
" user_data 0 0\n",
"\n",
" point_source_ID 0 0\n",
"\n",
" gps_time 0.000000 0.000000\n",
"\n",
"header size ['227']\n",
"offset to point data ['227']\n",
"number var. length records ['0']\n",
"point data format ['1']\n",
"point data record length ['28']\n",
"number of point records ['2130086']\n",
"number of first returns ['1678717']\n",
"number of intermediate returns ['181604']\n",
"number of last returns ['1677719']\n",
"number of single returns ['1407954']\n",
"5135_54495 /content/train_5/5135_54495.las\n",
"/content/5135_54495.txt\n",
"not processed lasinfo (200101) report for '/content/train_5/5135_54495.las'\n",
" lasinfo (200101) report for '/content/train_5/5135_54495.las'\n",
" X 51350001 51400004\n",
"\n",
" Y 544949999 545000003\n",
"\n",
" Z 7713 12753\n",
"\n",
" intensity 0 0\n",
"\n",
" return_number 1 7\n",
"\n",
" number_of_returns 1 7\n",
"\n",
" edge_of_flight_line 0 1\n",
"\n",
" scan_direction_flag 0 0\n",
"\n",
" classification 0 8\n",
"\n",
" scan_angle_rank -29 35\n",
"\n",
" user_data 0 0\n",
"\n",
" point_source_ID 0 0\n",
"\n",
" gps_time 0.000000 0.000000\n",
"\n",
"header size ['227']\n",
"offset to point data ['227']\n",
"number var. length records ['0']\n",
"point data format ['1']\n",
"point data record length ['28']\n",
"number of point records ['2105596']\n",
"number of first returns ['1675807']\n",
"number of intermediate returns ['157210']\n",
"number of last returns ['1675637']\n",
"number of single returns ['1403058']\n",
"5145_54480 /content/train_5/5145_54480.las\n",
"/content/5145_54480.txt\n",
"not processed lasinfo (200101) report for '/content/train_5/5145_54480.las'\n",
" lasinfo (200101) report for '/content/train_5/5145_54480.las'\n",
" X 51450001 51500003\n",
"\n",
" Y 544799999 544850002\n",
"\n",
" Z 7730 13010\n",
"\n",
" intensity 0 0\n",
"\n",
" return_number 1 7\n",
"\n",
" number_of_returns 1 7\n",
"\n",
" edge_of_flight_line 0 1\n",
"\n",
" scan_direction_flag 0 0\n",
"\n",
" classification 0 8\n",
"\n",
" scan_angle_rank -29 29\n",
"\n",
" user_data 0 0\n",
"\n",
" point_source_ID 0 0\n",
"\n",
" gps_time 0.000000 0.000000\n",
"\n",
"header size ['227']\n",
"offset to point data ['227']\n",
"number var. length records ['0']\n",
"point data format ['1']\n",
"point data record length ['28']\n",
"number of point records ['2260492']\n",
"number of first returns ['1698983']\n",
"number of intermediate returns ['239516']\n",
"number of last returns ['1699446']\n",
"number of single returns ['1377453']\n",
"5185_54390 /content/train_5/5185_54390.las\n",
"/content/5185_54390.txt\n",
"not processed lasinfo (200101) report for '/content/train_5/5185_54390.las'\n",
" lasinfo (200101) report for '/content/train_5/5185_54390.las'\n",
" X 51850002 51900006\n",
"\n",
" Y 543900002 543950004\n",
"\n",
" Z -304 4039\n",
"\n",
" intensity 0 0\n",
"\n",
" return_number 1 7\n",
"\n",
" number_of_returns 1 7\n",
"\n",
" edge_of_flight_line 0 1\n",
"\n",
" scan_direction_flag 0 0\n",
"\n",
" classification 0 8\n",
"\n",
" scan_angle_rank -30 30\n",
"\n",
" user_data 0 0\n",
"\n",
" point_source_ID 0 0\n",
"\n",
" gps_time 0.000000 0.000000\n",
"\n",
"header size ['227']\n",
"offset to point data ['227']\n",
"number var. length records ['0']\n",
"point data format ['1']\n",
"point data record length ['28']\n",
"number of point records ['2113363']\n",
"number of first returns ['1684993']\n",
"number of intermediate returns ['151008']\n",
"number of last returns ['1684924']\n",
"number of single returns ['1407562']\n",
"5100_54495 /content/train_5/5100_54495.las\n",
"/content/5100_54495.txt\n",
"not processed lasinfo (200101) report for '/content/train_5/5100_54495.las'\n",
" lasinfo (200101) report for '/content/train_5/5100_54495.las'\n",
" X 51000005 51050008\n",
"\n",
" Y 544950001 545000005\n",
"\n",
" Z 5562 11103\n",
"\n",
" intensity 0 0\n",
"\n",
" return_number 1 7\n",
"\n",
" number_of_returns 1 7\n",
"\n",
" edge_of_flight_line 0 1\n",
"\n",
" scan_direction_flag 0 0\n",
"\n",
" classification 0 8\n",
"\n",
" scan_angle_rank -29 34\n",
"\n",
" user_data 0 0\n",
"\n",
" point_source_ID 0 0\n",
"\n",
" gps_time 0.000000 0.000000\n",
"\n",
"header size ['227']\n",
"offset to point data ['227']\n",
"number var. length records ['0']\n",
"point data format ['1']\n",
"point data record length ['28']\n",
"number of point records ['2148662']\n",
"number of first returns ['1678668']\n",
"number of intermediate returns ['170813']\n",
"number of last returns ['1678811']\n",
"number of single returns ['1379630']\n",
"5095_54440 /content/train_5/5095_54440.las\n",
"/content/5095_54440.txt\n",
"not processed lasinfo (200101) report for '/content/train_5/5095_54440.las'\n",
" lasinfo (200101) report for '/content/train_5/5095_54440.las'\n",
" X 50950001 51000004\n",
"\n",
" Y 544400000 544450004\n",
"\n",
" Z 6329 11169\n",
"\n",
" intensity 0 0\n",
"\n",
" return_number 1 7\n",
"\n",
" number_of_returns 1 7\n",
"\n",
" edge_of_flight_line 0 1\n",
"\n",
" scan_direction_flag 0 0\n",
"\n",
" classification 0 8\n",
"\n",
" scan_angle_rank -29 30\n",
"\n",
" user_data 0 0\n",
"\n",
" point_source_ID 0 0\n",
"\n",
" gps_time 0.000000 0.000000\n",
"\n",
"header size ['227']\n",
"offset to point data ['227']\n",
"number var. length records ['0']\n",
"point data format ['1']\n",
"point data record length ['28']\n",
"number of point records ['2080642']\n",
"number of first returns ['1650924']\n",
"number of intermediate returns ['198613']\n",
"number of last returns ['1650696']\n",
"number of single returns ['1419591']\n",
"5115_54480 /content/train_5/5115_54480.las\n",
"/content/5115_54480.txt\n",
"not processed lasinfo (200101) report for '/content/train_5/5115_54480.las'\n",
" lasinfo (200101) report for '/content/train_5/5115_54480.las'\n",
" X 51150003 51200006\n",
"\n",
" Y 544799998 544850002\n",
"\n",
" Z 7452 16774\n",
"\n",
" intensity 0 0\n",
"\n",
" return_number 1 7\n",
"\n",
" number_of_returns 1 7\n",
"\n",
" edge_of_flight_line 0 1\n",
"\n",
" scan_direction_flag 0 0\n",
"\n",
" classification 0 8\n",
"\n",
" scan_angle_rank -29 29\n",
"\n",
" user_data 0 0\n",
"\n",
" point_source_ID 0 0\n",
"\n",
" gps_time 0.000000 0.000000\n",
"\n",
"header size ['227']\n",
"offset to point data ['227']\n",
"number var. length records ['0']\n",
"point data format ['1']\n",
"point data record length ['28']\n",
"number of point records ['2430239']\n",
"number of first returns ['1689313']\n",
"number of intermediate returns ['313268']\n",
"number of last returns ['1689474']\n",
"number of single returns ['1261816']\n",
"5080_54435 /content/train_5/5080_54435.las\n",
"/content/5080_54435.txt\n",
"not processed lasinfo (200101) report for '/content/train_5/5080_54435.las'\n",
" lasinfo (200101) report for '/content/train_5/5080_54435.las'\n",
" X 50799999 50850004\n",
"\n",
" Y 544349998 544400002\n",
"\n",
" Z 8044 12799\n",
"\n",
" intensity 0 0\n",
"\n",
" return_number 1 7\n",
"\n",
" number_of_returns 1 7\n",
"\n",
" edge_of_flight_line 0 1\n",
"\n",
" scan_direction_flag 0 0\n",
"\n",
" classification 0 8\n",
"\n",
" scan_angle_rank -29 30\n",
"\n",
" user_data 0 0\n",
"\n",
" point_source_ID 0 0\n",
"\n",
" gps_time 0.000000 0.000000\n",
"\n",
"header size ['227']\n",
"offset to point data ['227']\n",
"number var. length records ['0']\n",
"point data format ['1']\n",
"point data record length ['28']\n",
"number of point records ['2017060']\n",
"number of first returns ['1586952']\n",
"number of intermediate returns ['150438']\n",
"number of last returns ['1587161']\n",
"number of single returns ['1307491']\n",
"5110_54460 /content/train_5/5110_54460.las\n",
"/content/5110_54460.txt\n",
"not processed lasinfo (200101) report for '/content/train_5/5110_54460.las'\n",
" lasinfo (200101) report for '/content/train_5/5110_54460.las'\n",
" X 51100001 51150004\n",
"\n",
" Y 544600000 544650002\n",
"\n",
" Z 3744 9053\n",
"\n",
" intensity 0 0\n",
"\n",
" return_number 1 7\n",
"\n",
" number_of_returns 1 7\n",
"\n",
" edge_of_flight_line 0 1\n",
"\n",
" scan_direction_flag 0 0\n",
"\n",
" classification 0 8\n",
"\n",
" scan_angle_rank -29 29\n",
"\n",
" user_data 0 0\n",
"\n",
" point_source_ID 0 0\n",
"\n",
" gps_time 0.000000 0.000000\n",
"\n",
"header size ['227']\n",
"offset to point data ['227']\n",
"number var. length records ['0']\n",
"point data format ['1']\n",
"point data record length ['28']\n",
"number of point records ['2450572']\n",
"number of first returns ['1691598']\n",
"number of intermediate returns ['335931']\n",
"number of last returns ['1691017']\n",
"number of single returns ['1267974']\n",
"5105_54460 /content/train_5/5105_54460.las\n",
"/content/5105_54460.txt\n",
"not processed lasinfo (200101) report for '/content/train_5/5105_54460.las'\n",
" lasinfo (200101) report for '/content/train_5/5105_54460.las'\n",
" X 51050001 51100005\n",
"\n",
" Y 544600000 544650002\n",
"\n",
" Z 4938 10968\n",
"\n",
" intensity 0 0\n",
"\n",
" return_number 1 7\n",
"\n",
" number_of_returns 1 7\n",
"\n",
" edge_of_flight_line 0 1\n",
"\n",
" scan_direction_flag 0 0\n",
"\n",
" classification 0 8\n",
"\n",
" scan_angle_rank -29 30\n",
"\n",
" user_data 0 0\n",
"\n",
" point_source_ID 0 0\n",
"\n",
" gps_time 0.000000 0.000000\n",
"\n",
"header size ['227']\n",
"offset to point data ['227']\n",
"number var. length records ['0']\n",
"point data format ['1']\n",
"point data record length ['28']\n",
"number of point records ['2303046']\n",
"number of first returns ['1665667']\n",
"number of intermediate returns ['259137']\n",
"number of last returns ['1665372']\n",
"number of single returns ['1287130']\n",
"5110_54320 /content/train_5/5110_54320.las\n",
"/content/5110_54320.txt\n",
"not processed lasinfo (200101) report for '/content/train_5/5110_54320.las'\n",
" lasinfo (200101) report for '/content/train_5/5110_54320.las'\n",
" X 51100001 51150002\n",
"\n",
" Y 543199997 543250000\n",
"\n",
" Z 6422 14845\n",
"\n",
" intensity 0 0\n",
"\n",
" return_number 1 7\n",
"\n",
" number_of_returns 1 7\n",
"\n",
" edge_of_flight_line 0 1\n",
"\n",
" scan_direction_flag 0 0\n",
"\n",
" classification 0 8\n",
"\n",
" scan_angle_rank -29 29\n",
"\n",
" user_data 0 0\n",
"\n",
" point_source_ID 0 0\n",
"\n",
" gps_time 0.000000 0.000000\n",
"\n",
"header size ['227']\n",
"offset to point data ['227']\n",
"number var. length records ['0']\n",
"point data format ['1']\n",
"point data record length ['28']\n",
"number of point records ['3155207']\n",
"number of first returns ['1708508']\n",
"number of intermediate returns ['761241']\n",
"number of last returns ['1706798']\n",
"number of single returns ['1021340']\n",
"5095_54455 /content/train_5/5095_54455.las\n",
"/content/5095_54455.txt\n",
"not processed lasinfo (200101) report for '/content/train_5/5095_54455.las'\n",
" lasinfo (200101) report for '/content/train_5/5095_54455.las'\n",
" X 50950000 51000005\n",
"\n",
" Y 544550001 544600004\n",
"\n",
" Z 6266 11206\n",
"\n",
" intensity 0 0\n",
"\n",
" return_number 1 7\n",
"\n",
" number_of_returns 1 7\n",
"\n",
" edge_of_flight_line 0 1\n",
"\n",
" scan_direction_flag 0 0\n",
"\n",
" classification 0 8\n",
"\n",
" scan_angle_rank -30 29\n",
"\n",
" user_data 0 0\n",
"\n",
" point_source_ID 0 0\n",
"\n",
" gps_time 0.000000 0.000000\n",
"\n",
"header size ['227']\n",
"offset to point data ['227']\n",
"number var. length records ['0']\n",
"point data format ['1']\n",
"point data record length ['28']\n",
"number of point records ['2410952']\n",
"number of first returns ['1672519']\n",
"number of intermediate returns ['304840']\n",
"number of last returns ['1672278']\n",
"number of single returns ['1238685']\n",
"5160_54330 /content/train_5/5160_54330.las\n",
"/content/5160_54330.txt\n",
"not processed lasinfo (200101) report for '/content/train_5/5160_54330.las'\n",
" lasinfo (200101) report for '/content/train_5/5160_54330.las'\n",
" X 51599998 51650001\n",
"\n",
" Y 543300001 543350004\n",
"\n",
" Z 3585 10764\n",
"\n",
" intensity 0 0\n",
"\n",
" return_number 1 7\n",
"\n",
" number_of_returns 1 7\n",
"\n",
" edge_of_flight_line 0 1\n",
"\n",
" scan_direction_flag 0 0\n",
"\n",
" classification 0 8\n",
"\n",
" scan_angle_rank -29 29\n",
"\n",
" user_data 0 0\n",
"\n",
" point_source_ID 0 0\n",
"\n",
" gps_time 0.000000 0.000000\n",
"\n",
"header size ['227']\n",
"offset to point data ['227']\n",
"number var. length records ['0']\n",
"point data format ['1']\n",
"point data record length ['28']\n",
"number of point records ['2135257']\n",
"number of first returns ['1640397']\n",
"number of intermediate returns ['192913']\n",
"number of last returns ['1640645']\n",
"number of single returns ['1338698']\n",
"5185_54485 /content/train_5/5185_54485.las\n",
"/content/5185_54485.txt\n",
"not processed lasinfo (200101) report for '/content/train_5/5185_54485.las'\n",
" lasinfo (200101) report for '/content/train_5/5185_54485.las'\n",
"not processed reserved 0\n",
" reserved 0\n",
"not processed user ID 'LASF_Projection'\n",
" user ID 'LASF_Projection'\n",
"not processed record ID 34735\n",
" record ID 34735\n",
"not processed length after header 8\n",
" length after header 8\n",
"not processed description 'by LAStools of rapidlasso GmbH'\n",
" description 'by LAStools of rapidlasso GmbH'\n",
"not processed GeoKeyDirectoryTag version 1.1.0 number of keys 0\n",
" GeoKeyDirectoryTag version 1.1.0 number of keys 0\n",
" X 51850000 51900003\n",
"\n",
" Y 544849998 544900001\n",
"\n",
" Z 405 9902\n",
"\n",
" intensity 0 0\n",
"\n",
" return_number 1 7\n",
"\n",
" number_of_returns 1 7\n",
"\n",
" edge_of_flight_line 0 1\n",
"\n",
" scan_direction_flag 0 0\n",
"\n",
" classification 0 8\n",
"\n",
" scan_angle_rank -29 29\n",
"\n",
" user_data 0 0\n",
"\n",
" point_source_ID 0 0\n",
"\n",
" gps_time 0.000000 0.000000\n",
"\n",
"header size ['227']\n",
"offset to point data ['289']\n",
"number var. length records ['1']\n",
"point data format ['1']\n",
"point data record length ['28']\n",
"number of point records ['2584782']\n",
"number of first returns ['1663938']\n",
"number of intermediate returns ['441268']\n",
"number of last returns ['1665294']\n",
"number of single returns ['1185718']\n",
"5145_54340 /content/train_5/5145_54340.las\n",
"/content/5145_54340.txt\n",
"not processed lasinfo (200101) report for '/content/train_5/5145_54340.las'\n",
" lasinfo (200101) report for '/content/train_5/5145_54340.las'\n",
"not processed reserved 0\n",
" reserved 0\n",
"not processed user ID 'LASF_Projection'\n",
" user ID 'LASF_Projection'\n",
"not processed record ID 34735\n",
" record ID 34735\n",
"not processed length after header 8\n",
" length after header 8\n",
"not processed description 'by LAStools of rapidlasso GmbH'\n",
" description 'by LAStools of rapidlasso GmbH'\n",
"not processed GeoKeyDirectoryTag version 1.1.0 number of keys 0\n",
" GeoKeyDirectoryTag version 1.1.0 number of keys 0\n",
" X 51449998 51500002\n",
"\n",
" Y 543400000 543450003\n",
"\n",
" Z 3276 8698\n",
"\n",
" intensity 0 0\n",
"\n",
" return_number 1 7\n",
"\n",
" number_of_returns 1 7\n",
"\n",
" edge_of_flight_line 0 1\n",
"\n",
" scan_direction_flag 0 0\n",
"\n",
" classification 0 8\n",
"\n",
" scan_angle_rank -29 29\n",
"\n",
" user_data 0 0\n",
"\n",
" point_source_ID 0 0\n",
"\n",
" gps_time 0.000000 0.000000\n",
"\n",
"header size ['227']\n",
"offset to point data ['289']\n",
"number var. length records ['1']\n",
"point data format ['1']\n",
"point data record length ['28']\n",
"number of point records ['2143889']\n",
"number of first returns ['1692308']\n",
"number of intermediate returns ['166780']\n",
"number of last returns ['1692056']\n",
"number of single returns ['1407255']\n",
"5165_54395 /content/train_5/5165_54395.las\n",
"/content/5165_54395.txt\n",
"not processed lasinfo (200101) report for '/content/train_5/5165_54395.las'\n",
" lasinfo (200101) report for '/content/train_5/5165_54395.las'\n",
" X 51650002 51700008\n",
"\n",
" Y 543950002 544000005\n",
"\n",
" Z -166 8257\n",
"\n",
" intensity 0 0\n",
"\n",
" return_number 1 7\n",
"\n",
" number_of_returns 1 7\n",
"\n",
" edge_of_flight_line 0 1\n",
"\n",
" scan_direction_flag 0 0\n",
"\n",
" classification 0 8\n",
"\n",
" scan_angle_rank -29 30\n",
"\n",
" user_data 0 0\n",
"\n",
" point_source_ID 0 0\n",
"\n",
" gps_time 0.000000 0.000000\n",
"\n",
"header size ['227']\n",
"offset to point data ['227']\n",
"number var. length records ['0']\n",
"point data format ['1']\n",
"point data record length ['28']\n",
"number of point records ['2442099']\n",
"number of first returns ['1654147']\n",
"number of intermediate returns ['345261']\n",
"number of last returns ['1654818']\n",
"number of single returns ['1212127']\n",
"5130_54355 /content/train_5/5130_54355.las\n",
"/content/5130_54355.txt\n",
"not processed lasinfo (200101) report for '/content/train_5/5130_54355.las'\n",
" lasinfo (200101) report for '/content/train_5/5130_54355.las'\n",
" X 51300000 51350002\n",
"\n",
" Y 543549999 543600003\n",
"\n",
" Z -519 4073\n",
"\n",
" intensity 0 0\n",
"\n",
" return_number 1 7\n",
"\n",
" number_of_returns 1 7\n",
"\n",
" edge_of_flight_line 0 1\n",
"\n",
" scan_direction_flag 0 0\n",
"\n",
" classification 0 8\n",
"\n",
" scan_angle_rank -29 29\n",
"\n",
" user_data 0 0\n",
"\n",
" point_source_ID 0 0\n",
"\n",
" gps_time 0.000000 0.000000\n",
"\n",
"header size ['227']\n",
"offset to point data ['227']\n",
"number var. length records ['0']\n",
"point data format ['1']\n",
"point data record length ['28']\n",
"number of point records ['2159835']\n",
"number of first returns ['1672117']\n",
"number of intermediate returns ['115619']\n",
"number of last returns ['1671394']\n",
"number of single returns ['1299295']\n",
"5190_54400 /content/train_5/5190_54400.las\n",
"/content/5190_54400.txt\n",
"not processed lasinfo (200101) report for '/content/train_5/5190_54400.las'\n",
" lasinfo (200101) report for '/content/train_5/5190_54400.las'\n",
"not processed reserved 0\n",
" reserved 0\n",
"not processed user ID 'LASF_Projection'\n",
" user ID 'LASF_Projection'\n",
"not processed record ID 34735\n",
" record ID 34735\n",
"not processed length after header 8\n",
" length after header 8\n",
"not processed description 'by LAStools of rapidlasso GmbH'\n",
" description 'by LAStools of rapidlasso GmbH'\n",
"not processed GeoKeyDirectoryTag version 1.1.0 number of keys 0\n",
" GeoKeyDirectoryTag version 1.1.0 number of keys 0\n",
" X 51900002 51950005\n",
"\n",
" Y 544000002 544050005\n",
"\n",
" Z 508 4787\n",
"\n",
" intensity 0 0\n",
"\n",
" return_number 1 7\n",
"\n",
" number_of_returns 1 7\n",
"\n",
" edge_of_flight_line 0 1\n",
"\n",
" scan_direction_flag 0 0\n",
"\n",
" classification 0 8\n",
"\n",
" scan_angle_rank -29 29\n",
"\n",
" user_data 0 0\n",
"\n",
" point_source_ID 0 0\n",
"\n",
" gps_time 0.000000 0.000000\n",
"\n",
"header size ['227']\n",
"offset to point data ['289']\n",
"number var. length records ['1']\n",
"point data format ['1']\n",
"point data record length ['28']\n",
"number of point records ['2138534']\n",
"number of first returns ['1704938']\n",
"number of intermediate returns ['162449']\n",
"number of last returns ['1705553']\n",
"number of single returns ['1434406']\n",
"5145_54460 /content/train_5/5145_54460.las\n",
"/content/5145_54460.txt\n",
"not processed lasinfo (200101) report for '/content/train_5/5145_54460.las'\n",
" lasinfo (200101) report for '/content/train_5/5145_54460.las'\n",
"not processed reserved 0\n",
" reserved 0\n",
"not processed user ID 'LASF_Projection'\n",
" user ID 'LASF_Projection'\n",
"not processed record ID 34735\n",
" record ID 34735\n",
"not processed length after header 8\n",
" length after header 8\n",
"not processed description 'by LAStools of rapidlasso GmbH'\n",
" description 'by LAStools of rapidlasso GmbH'\n",
"not processed GeoKeyDirectoryTag version 1.1.0 number of keys 0\n",
" GeoKeyDirectoryTag version 1.1.0 number of keys 0\n",
" X 51450001 51500004\n",
"\n",
" Y 544599999 544650002\n",
"\n",
" Z 5646 13730\n",
"\n",
" intensity 0 0\n",
"\n",
" return_number 1 7\n",
"\n",
" number_of_returns 1 7\n",
"\n",
" edge_of_flight_line 0 1\n",
"\n",
" scan_direction_flag 0 0\n",
"\n",
" classification 0 8\n",
"\n",
" scan_angle_rank -29 29\n",
"\n",
" user_data 0 0\n",
"\n",
" point_source_ID 0 0\n",
"\n",
" gps_time 0.000000 0.000000\n",
"\n",
"header size ['227']\n",
"offset to point data ['289']\n",
"number var. length records ['1']\n",
"point data format ['1']\n",
"point data record length ['28']\n",
"number of point records ['2194211']\n",
"number of first returns ['1703193']\n",
"number of intermediate returns ['193160']\n",
"number of last returns ['1702258']\n",
"number of single returns ['1404400']\n",
"5105_54405 /content/train_5/5105_54405.las\n",
"/content/5105_54405.txt\n",
"not processed lasinfo (200101) report for '/content/train_5/5105_54405.las'\n",
" lasinfo (200101) report for '/content/train_5/5105_54405.las'\n",
" X 51050000 51100004\n",
"\n",
" Y 544049998 544100001\n",
"\n",
" Z 6136 11633\n",
"\n",
" intensity 0 0\n",
"\n",
" return_number 1 7\n",
"\n",
" number_of_returns 1 7\n",
"\n",
" edge_of_flight_line 0 1\n",
"\n",
" scan_direction_flag 0 0\n",
"\n",
" classification 0 8\n",
"\n",
" scan_angle_rank -30 30\n",
"\n",
" user_data 0 0\n",
"\n",
" point_source_ID 0 0\n",
"\n",
" gps_time 0.000000 0.000000\n",
"\n",
"header size ['227']\n",
"offset to point data ['227']\n",
"number var. length records ['0']\n",
"point data format ['1']\n",
"point data record length ['28']\n",
"number of point records ['2118431']\n",
"number of first returns ['1645939']\n",
"number of intermediate returns ['179490']\n",
"number of last returns ['1646088']\n",
"number of single returns ['1353086']\n",
"5145_54405 /content/train_5/5145_54405.las\n",
"/content/5145_54405.txt\n",
"not processed lasinfo (200101) report for '/content/train_5/5145_54405.las'\n",
" lasinfo (200101) report for '/content/train_5/5145_54405.las'\n",
"not processed reserved 0\n",
" reserved 0\n",
"not processed user ID 'LASF_Projection'\n",
" user ID 'LASF_Projection'\n",
"not processed record ID 34735\n",
" record ID 34735\n",
"not processed length after header 8\n",
" length after header 8\n",
"not processed description 'by LAStools of rapidlasso GmbH'\n",
" description 'by LAStools of rapidlasso GmbH'\n",
"not processed GeoKeyDirectoryTag version 1.1.0 number of keys 0\n",
" GeoKeyDirectoryTag version 1.1.0 number of keys 0\n",
" X 51450001 51500005\n",
"\n",
" Y 544050000 544100004\n",
"\n",
" Z -331 4907\n",
"\n",
" intensity 0 0\n",
"\n",
" return_number 1 7\n",
"\n",
" number_of_returns 1 7\n",
"\n",
" edge_of_flight_line 0 1\n",
"\n",
" scan_direction_flag 0 0\n",
"\n",
" classification 0 8\n",
"\n",
" scan_angle_rank -30 30\n",
"\n",
" user_data 0 0\n",
"\n",
" point_source_ID 0 0\n",
"\n",
" gps_time 0.000000 0.000000\n",
"\n",
"header size ['227']\n",
"offset to point data ['289']\n",
"number var. length records ['1']\n",
"point data format ['1']\n",
"point data record length ['28']\n",
"number of point records ['2162422']\n",
"number of first returns ['1677848']\n",
"number of intermediate returns ['195963']\n",
"number of last returns ['1677934']\n",
"number of single returns ['1389323']\n",
"5145_54470 /content/train_5/5145_54470.las\n",
"/content/5145_54470.txt\n",
"not processed lasinfo (200101) report for '/content/train_5/5145_54470.las'\n",
" lasinfo (200101) report for '/content/train_5/5145_54470.las'\n",
"not processed reserved 0\n",
" reserved 0\n",
"not processed user ID 'LASF_Projection'\n",
" user ID 'LASF_Projection'\n",
"not processed record ID 34735\n",
" record ID 34735\n",
"not processed length after header 8\n",
" length after header 8\n",
"not processed description 'by LAStools of rapidlasso GmbH'\n",
" description 'by LAStools of rapidlasso GmbH'\n",
"not processed GeoKeyDirectoryTag version 1.1.0 number of keys 0\n",
" GeoKeyDirectoryTag version 1.1.0 number of keys 0\n",
" X 51450001 51500004\n",
"\n",
" Y 544699999 544750002\n",
"\n",
" Z 8510 12215\n",
"\n",
" intensity 0 0\n",
"\n",
" return_number 1 7\n",
"\n",
" number_of_returns 1 7\n",
"\n",
" edge_of_flight_line 0 1\n",
"\n",
" scan_direction_flag 0 0\n",
"\n",
" classification 0 8\n",
"\n",
" scan_angle_rank -29 29\n",
"\n",
" user_data 0 0\n",
"\n",
" point_source_ID 0 0\n",
"\n",
" gps_time 0.000000 0.000000\n",
"\n",
"header size ['227']\n",
"offset to point data ['289']\n",
"number var. length records ['1']\n",
"point data format ['1']\n",
"point data record length ['28']\n",
"number of point records ['2152192']\n",
"number of first returns ['1662957']\n",
"number of intermediate returns ['169830']\n",
"number of last returns ['1662754']\n",
"number of single returns ['1343349']\n",
"5140_54445 /content/train_5/5140_54445.las\n",
"/content/5140_54445.txt\n",
"not processed lasinfo (200101) report for '/content/train_5/5140_54445.las'\n",
" lasinfo (200101) report for '/content/train_5/5140_54445.las'\n",
"not processed reserved 0\n",
" reserved 0\n",
"not processed user ID 'LASF_Projection'\n",
" user ID 'LASF_Projection'\n",
"not processed record ID 34735\n",
" record ID 34735\n",
"not processed length after header 8\n",
" length after header 8\n",
"not processed description 'by LAStools of rapidlasso GmbH'\n",
" description 'by LAStools of rapidlasso GmbH'\n",
"not processed GeoKeyDirectoryTag version 1.1.0 number of keys 0\n",
" GeoKeyDirectoryTag version 1.1.0 number of keys 0\n",
" X 51400000 51450003\n",
"\n",
" Y 544450000 544500002\n",
"\n",
" Z 3477 10401\n",
"\n",
" intensity 0 0\n",
"\n",
" return_number 1 7\n",
"\n",
" number_of_returns 1 7\n",
"\n",
" edge_of_flight_line 0 1\n",
"\n",
" scan_direction_flag 0 0\n",
"\n",
" classification 0 8\n",
"\n",
" scan_angle_rank -30 29\n",
"\n",
" user_data 0 0\n",
"\n",
" point_source_ID 0 0\n",
"\n",
" gps_time 0.000000 0.000000\n",
"\n",
"header size ['227']\n",
"offset to point data ['289']\n",
"number var. length records ['1']\n",
"point data format ['1']\n",
"point data record length ['28']\n",
"number of point records ['2177360']\n",
"number of first returns ['1702277']\n",
"number of intermediate returns ['157978']\n",
"number of last returns ['1702020']\n",
"number of single returns ['1384915']\n",
"5165_54390 /content/train_5/5165_54390.las\n",
"/content/5165_54390.txt\n",
"not processed lasinfo (200101) report for '/content/train_5/5165_54390.las'\n",
" lasinfo (200101) report for '/content/train_5/5165_54390.las'\n",
"not processed reserved 0\n",
" reserved 0\n",
"not processed user ID 'LASF_Projection'\n",
" user ID 'LASF_Projection'\n",
"not processed record ID 34735\n",
" record ID 34735\n",
"not processed length after header 8\n",
" length after header 8\n",
"not processed description 'by LAStools of rapidlasso GmbH'\n",
" description 'by LAStools of rapidlasso GmbH'\n",
"not processed GeoKeyDirectoryTag version 1.1.0 number of keys 0\n",
" GeoKeyDirectoryTag version 1.1.0 number of keys 0\n",
" X 51650001 51700006\n",
"\n",
" Y 543900002 543950005\n",
"\n",
" Z -287 4205\n",
"\n",
" intensity 0 0\n",
"\n",
" return_number 1 7\n",
"\n",
" number_of_returns 1 7\n",
"\n",
" edge_of_flight_line 0 1\n",
"\n",
" scan_direction_flag 0 0\n",
"\n",
" classification 0 8\n",
"\n",
" scan_angle_rank -29 29\n",
"\n",
" user_data 0 0\n",
"\n",
" point_source_ID 0 0\n",
"\n",
" gps_time 0.000000 0.000000\n",
"\n",
"header size ['227']\n",
"offset to point data ['289']\n",
"number var. length records ['1']\n",
"point data format ['1']\n",
"point data record length ['28']\n",
"number of point records ['2146322']\n",
"number of first returns ['1553211']\n",
"number of intermediate returns ['284102']\n",
"number of last returns ['1553483']\n",
"number of single returns ['1244474']\n"
],
"name": "stdout"
}
]
},
{
"cell_type": "code",
"metadata": {
"id": "pSfFlxjdelLU",
"colab_type": "code",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 1000
},
"outputId": "94c72cf7-a2c5-4090-e4d4-906bf01b74a6"
},
"source": [
"print(json.dumps(feature_collection, indent=2))\n",
"with open('DALES.geojson', 'w') as outfile:\n",
" json.dump(feature_collection, outfile)"
],
"execution_count": null,
"outputs": [
{
"output_type": "stream",
"text": [
"{\n",
" \"type\": \"FeatureCollection\",\n",
" \"features\": [\n",
" {\n",
" \"type\": \"Feature\",\n",
" \"properties\": {\n",
" \"id\": \"5085_54320\",\n",
" \"name\": \"5085_54320\",\n",
" \"featureclass\": \"LIDAR\",\n",
" \"LAZ Metadata\": \"null\",\n",
" \"onlink\": \"https://geonb.snb.ca/li/\",\n",
" \"histogram of classification of points\": [\n",
" {\n",
" \"name\": \"never classified\",\n",
" \"label\": 0,\n",
" \"count\": 7862\n",
" },\n",
" {\n",
" \"name\": \"unclassified\",\n",
" \"label\": 1,\n",
" \"count\": 875953\n",
" },\n",
" {\n",
" \"name\": \"ground\",\n",
" \"label\": 2,\n",
" \"count\": 1247923\n",
" },\n",
" {\n",
" \"name\": \"low vegetation\",\n",
" \"label\": 3,\n",
" \"count\": 12118\n",
" },\n",
" {\n",
" \"name\": \"medium vegetation\",\n",
" \"label\": 4,\n",
" \"count\": 1097\n",
" },\n",
" {\n",
" \"name\": \"high vegetation\",\n",
" \"label\": 5,\n",
" \"count\": 775\n",
" },\n",
" {\n",
" \"name\": \"building\",\n",
" \"label\": 6,\n",
" \"count\": 6009\n",
" },\n",
" {\n",
" \"name\": \"noise\",\n",
" \"label\": 7,\n",
" \"count\": 854\n",
" },\n",
" {\n",
" \"name\": \"keypoint\",\n",
" \"label\": 8,\n",
" \"count\": 406521\n",
" }\n",
" ],\n",
" \"class_names\": [\n",
" \"never classified\",\n",
" \"unclassified\",\n",
" \"ground\",\n",
" \"low vegetation\",\n",
" \"medium vegetation\",\n",
" \"high vegetation\",\n",
" \"building\",\n",
" \"noise\",\n",
" \"keypoint\"\n",
" ],\n",
" \"class_labels\": [\n",
" 0,\n",
" 1,\n",
" 2,\n",
" 3,\n",
" 4,\n",
" 5,\n",
" 6,\n",
" 7,\n",
" 8\n",
" ],\n",
" \"class_count\": [\n",
" 7862,\n",
" 875953,\n",
" 1247923,\n",
" 12118,\n",
" 1097,\n",
" 775,\n",
" 6009,\n",
" 854,\n",
" 406521\n",
" ],\n",
" \"class_frequency\": [\n",
" 0.3072159405293711,\n",
" 34.22878717305065,\n",
" 48.763907167798834,\n",
" 0.473523628508639,\n",
" 0.042866431793528385,\n",
" 0.030283942242465355,\n",
" 0.23480801152899913,\n",
" 0.0333709505484715,\n",
" 15.885236753999044\n",
" ],\n",
" \"bbox\": [\n",
" 50850001,\n",
" 50900005,\n",
" 543199992,\n",
" 543249996\n",
" ]\n",
" },\n",
" \"geometry\": {\n",
" \"type\": \"Polygon\",\n",
" \"coordinates\": [\n",
" [\n",
" [\n",
" 50850001,\n",
" 543199992\n",
" ],\n",
" [\n",
" 50900005,\n",
" 543199992\n",
" ],\n",
" [\n",
" 50900005,\n",
" 543249996\n",
" ],\n",
" [\n",
" 50900005,\n",
" 543199992\n",
" ]\n",
" ]\n",
" ]\n",
" }\n",
" },\n",
" {\n",
" \"type\": \"Feature\",\n",
" \"properties\": {\n",
" \"id\": \"5110_54495\",\n",
" \"name\": \"5110_54495\",\n",
" \"featureclass\": \"LIDAR\",\n",
" \"LAZ Metadata\": \"null\",\n",
" \"onlink\": \"https://geonb.snb.ca/li/\",\n",
" \"histogram of classification of points\": [\n",
" {\n",
" \"name\": \"never classified\",\n",
" \"label\": 0,\n",
" \"count\": 6419\n",
" },\n",
" {\n",
" \"name\": \"unclassified\",\n",
" \"label\": 1,\n",
" \"count\": 1149020\n",
" },\n",
" {\n",
" \"name\": \"ground\",\n",
" \"label\": 2,\n",
" \"count\": 517309\n",
" },\n",
" {\n",
" \"name\": \"low vegetation\",\n",
" \"label\": 3,\n",
" \"count\": 30208\n",
" },\n",
" {\n",
" \"name\": \"medium vegetation\",\n",
" \"label\": 4,\n",
" \"count\": 3862\n",
" },\n",
" {\n",
" \"name\": \"high vegetation\",\n",
" \"label\": 5,\n",
" \"count\": 5266\n",
" },\n",
" {\n",
" \"name\": \"building\",\n",
" \"label\": 6,\n",
" \"count\": 5813\n",
" },\n",
" {\n",
" \"name\": \"noise\",\n",
" \"label\": 7,\n",
" \"count\": 3597\n",
" },\n",
" {\n",
" \"name\": \"keypoint\",\n",
" \"label\": 8,\n",
" \"count\": 399570\n",
" }\n",
" ],\n",
" \"class_names\": [\n",
" \"never classified\",\n",
" \"unclassified\",\n",
" \"ground\",\n",
" \"low vegetation\",\n",
" \"medium vegetation\",\n",
" \"high vegetation\",\n",
" \"building\",\n",
" \"noise\",\n",
" \"keypoint\"\n",
" ],\n",
" \"class_labels\": [\n",
" 0,\n",
" 1,\n",
" 2,\n",
" 3,\n",
" 4,\n",
" 5,\n",
" 6,\n",
" 7,\n",
" 8\n",
" ],\n",
" \"class_count\": [\n",
" 6419,\n",
" 1149020,\n",
" 517309,\n",
" 30208,\n",
" 3862,\n",
" 5266,\n",
" 5813,\n",
" 3597,\n",
" 399570\n",
" ],\n",
" \"class_frequency\": [\n",
" 0.3026311322996383,\n",
" 54.171868458471785,\n",
" 24.38912734363508,\n",
" 1.424190877785866,\n",
" 0.18207842856226875,\n",
" 0.2482716221669879,\n",
" 0.27406056582922533,\n",
" 0.16958469900012446,\n",
" 18.83818687224902\n",
" ],\n",
" \"bbox\": [\n",
" 51100005,\n",
" 51150008,\n",
" 544950000,\n",
" 545000004\n",
" ]\n",
" },\n",
" \"geometry\": {\n",
" \"type\": \"Polygon\",\n",
" \"coordinates\": [\n",
" [\n",
" [\n",
" 51100005,\n",
" 544950000\n",
" ],\n",
" [\n",
" 51150008,\n",
" 544950000\n",
" ],\n",
" [\n",
" 51150008,\n",
" 545000004\n",
" ],\n",
" [\n",
" 51150008,\n",
" 544950000\n",
" ]\n",
" ]\n",
" ]\n",
" }\n",
" },\n",
" {\n",
" \"type\": \"Feature\",\n",
" \"properties\": {\n",
" \"id\": \"5180_54435\",\n",
" \"name\": \"5180_54435\",\n",
" \"featureclass\": \"LIDAR\",\n",
" \"LAZ Metadata\": \"null\",\n",
" \"onlink\": \"https://geonb.snb.ca/li/\",\n",
" \"histogram of classification of points\": [\n",
" {\n",
" \"name\": \"never classified\",\n",
" \"label\": 0,\n",
" \"count\": 15022\n",
" },\n",
" {\n",
" \"name\": \"unclassified\",\n",
" \"label\": 1,\n",
" \"count\": 1174435\n",
" },\n",
" {\n",
" \"name\": \"ground\",\n",
" \"label\": 2,\n",
" \"count\": 669702\n",
" },\n",
" {\n",
" \"name\": \"low vegetation\",\n",
" \"label\": 3,\n",
" \"count\": 14459\n",
" },\n",
" {\n",
" \"name\": \"medium vegetation\",\n",
" \"label\": 4,\n",
" \"count\": 1474\n",
" },\n",
" {\n",
" \"name\": \"high vegetation\",\n",
" \"label\": 5,\n",
" \"count\": 2969\n",
" },\n",
" {\n",
" \"name\": \"building\",\n",
" \"label\": 6,\n",
" \"count\": 7581\n",
" },\n",
" {\n",
" \"name\": \"noise\",\n",
" \"label\": 7,\n",
" \"count\": 1036\n",
" },\n",
" {\n",
" \"name\": \"keypoint\",\n",
" \"label\": 8,\n",
" \"count\": 265954\n",
" }\n",
" ],\n",
" \"class_names\": [\n",
" \"never classified\",\n",
" \"unclassified\",\n",
" \"ground\",\n",
" \"low vegetation\",\n",
" \"medium vegetation\",\n",
" \"high vegetation\",\n",
" \"building\",\n",
" \"noise\",\n",
" \"keypoint\"\n",
" ],\n",
" \"class_labels\": [\n",
" 0,\n",
" 1,\n",
" 2,\n",
" 3,\n",
" 4,\n",
" 5,\n",
" 6,\n",
" 7,\n",
" 8\n",
" ],\n",
" \"class_count\": [\n",
" 15022,\n",
" 1174435,\n",
" 669702,\n",
" 14459,\n",
" 1474,\n",
" 2969,\n",
" 7581,\n",
" 1036,\n",
" 265954\n",
" ],\n",
" \"class_frequency\": [\n",
" 0.6978433842849127,\n",
" 54.55809446296441,\n",
" 31.11084477049491,\n",
" 0.6716893551707862,\n",
" 0.06847431423485296,\n",
" 0.13792417840113871,\n",
" 0.3521735252472322,\n",
" 0.04812712995068363,\n",
" 12.354828879251075\n",
" ],\n",
" \"bbox\": [\n",
" 51800000,\n",
" 51850003,\n",
" 544350000,\n",
" 544400004\n",
" ]\n",
" },\n",
" \"geometry\": {\n",
" \"type\": \"Polygon\",\n",
" \"coordinates\": [\n",
" [\n",
" [\n",
" 51800000,\n",
" 544350000\n",
" ],\n",
" [\n",
" 51850003,\n",
" 544350000\n",
" ],\n",
" [\n",
" 51850003,\n",
" 544400004\n",
" ],\n",
" [\n",
" 51850003,\n",
" 544350000\n",
" ]\n",
" ]\n",
" ]\n",
" }\n",
" },\n",
" {\n",
" \"type\": \"Feature\",\n",
" \"properties\": {\n",
" \"id\": \"5180_54485\",\n",
" \"name\": \"5180_54485\",\n",
" \"featureclass\": \"LIDAR\",\n",
" \"LAZ Metadata\": \"null\",\n",
" \"onlink\": \"https://geonb.snb.ca/li/\",\n",
" \"histogram of classification of points\": [\n",
" {\n",
" \"name\": \"never classified\",\n",
" \"label\": 0,\n",
" \"count\": 5063\n",
" },\n",
" {\n",
" \"name\": \"unclassified\",\n",
" \"label\": 1,\n",
" \"count\": 972544\n",
" },\n",
" {\n",
" \"name\": \"ground\",\n",
" \"label\": 2,\n",
" \"count\": 776205\n",
" },\n",
" {\n",
" \"name\": \"low vegetation\",\n",
" \"label\": 3,\n",
" \"count\": 12262\n",
" },\n",
" {\n",
" \"name\": \"medium vegetation\",\n",
" \"label\": 4,\n",
" \"count\": 2432\n",
" },\n",
" {\n",
" \"name\": \"high vegetation\",\n",
" \"label\": 5,\n",
" \"count\": 1472\n",
" },\n",
" {\n",
" \"name\": \"building\",\n",
" \"label\": 6,\n",
" \"count\": 9415\n",
" },\n",
" {\n",
" \"name\": \"noise\",\n",
" \"label\": 7,\n",
" \"count\": 687\n",
" },\n",
" {\n",
" \"name\": \"keypoint\",\n",
" \"label\": 8,\n",
" \"count\": 344416\n",
" }\n",
" ],\n",
" \"class_names\": [\n",
" \"never classified\",\n",
" \"unclassified\",\n",
" \"ground\",\n",
" \"low vegetation\",\n",
" \"medium vegetation\",\n",
" \"high vegetation\",\n",
" \"building\",\n",
" \"noise\",\n",
" \"keypoint\"\n",
" ],\n",
" \"class_labels\": [\n",
" 0,\n",
" 1,\n",
" 2,\n",
" 3,\n",
" 4,\n",
" 5,\n",
" 6,\n",
" 7,\n",
" 8\n",
" ],\n",
" \"class_count\": [\n",
" 5063,\n",
" 972544,\n",
" 776205,\n",
" 12262,\n",
" 2432,\n",
" 1472,\n",
" 9415,\n",
" 687,\n",
" 344416\n",
" ],\n",
" \"class_frequency\": [\n",
" 0.23831534632213947,\n",
" 45.77763384821624,\n",
" 36.5359595875916,\n",
" 0.577172185779592,\n",
" 0.11447420941249126,\n",
" 0.06928702148650785,\n",
" 0.4431639315865975,\n",
" 0.032337081359531866,\n",
" 16.211656788245307\n",
" ],\n",
" \"bbox\": [\n",
" 51800000,\n",
" 51850003,\n",
" 544849998,\n",
" 544900001\n",
" ]\n",
" },\n",
" \"geometry\": {\n",
" \"type\": \"Polygon\",\n",
" \"coordinates\": [\n",
" [\n",
" [\n",
" 51800000,\n",
" 544849998\n",
" ],\n",
" [\n",
" 51850003,\n",
" 544849998\n",
" ],\n",
" [\n",
" 51850003,\n",
" 544900001\n",
" ],\n",
" [\n",
" 51850003,\n",
" 544849998\n",
" ]\n",
" ]\n",
" ]\n",
" }\n",
" },\n",
" {\n",
" \"type\": \"Feature\",\n",
" \"properties\": {\n",
" \"id\": \"5150_54340\",\n",
" \"name\": \"5150_54340\",\n",
" \"featureclass\": \"LIDAR\",\n",
" \"LAZ Metadata\": \"null\",\n",
" \"onlink\": \"https://geonb.snb.ca/li/\",\n",
" \"histogram of classification of points\": [\n",
" {\n",
" \"name\": \"never classified\",\n",
" \"label\": 0,\n",
" \"count\": 5246\n",
" },\n",
" {\n",
" \"name\": \"unclassified\",\n",
" \"label\": 1,\n",
" \"count\": 1047791\n",
" },\n",
" {\n",
" \"name\": \"ground\",\n",
" \"label\": 2,\n",
" \"count\": 956536\n",
" },\n",
" {\n",
" \"name\": \"low vegetation\",\n",
" \"label\": 3,\n",
" \"count\": 5411\n",
" },\n",
" {\n",
" \"name\": \"medium vegetation\",\n",
" \"label\": 4,\n",
" \"count\": 170\n",
" },\n",
" {\n",
" \"name\": \"high vegetation\",\n",
" \"label\": 5,\n",
" \"count\": 5429\n",
" },\n",
" {\n",
" \"name\": \"building\",\n",
" \"label\": 6,\n",
" \"count\": 2640\n",
" },\n",
" {\n",
" \"name\": \"noise\",\n",
" \"label\": 7,\n",
" \"count\": 909\n",
" },\n",
" {\n",
" \"name\": \"keypoint\",\n",
" \"label\": 8,\n",
" \"count\": 399611\n",
" }\n",
" ],\n",
" \"class_names\": [\n",
" \"never classified\",\n",
" \"unclassified\",\n",
" \"ground\",\n",
" \"low vegetation\",\n",
" \"medium vegetation\",\n",
" \"high vegetation\",\n",
" \"building\",\n",
" \"noise\",\n",
" \"keypoint\"\n",
" ],\n",
" \"class_labels\": [\n",
" 0,\n",
" 1,\n",
" 2,\n",
" 3,\n",
" 4,\n",
" 5,\n",
" 6,\n",
" 7,\n",
" 8\n",
" ],\n",
" \"class_count\": [\n",
" 5246,\n",
" 1047791,\n",
" 956536,\n",
" 5411,\n",
" 170,\n",
" 5429,\n",
" 2640,\n",
" 909,\n",
" 399611\n",
" ],\n",
" \"class_frequency\": [\n",
" 0.21644208977601997,\n",
" 43.23028472903274,\n",
" 39.46524033282407,\n",
" 0.22324974223752272,\n",
" 0.007013944960336142,\n",
" 0.223992395233323,\n",
" 0.10892243938404361,\n",
" 0.03750397628791501,\n",
" 16.487350350264034\n",
" ],\n",
" \"bbox\": [\n",
" 51499998,\n",
" 51550001,\n",
" 543400000,\n",
" 543450003\n",
" ]\n",
" },\n",
" \"geometry\": {\n",
" \"type\": \"Polygon\",\n",
" \"coordinates\": [\n",
" [\n",
" [\n",
" 51499998,\n",
" 543400000\n",
" ],\n",
" [\n",
" 51550001,\n",
" 543400000\n",
" ],\n",
" [\n",
" 51550001,\n",
" 543450003\n",
" ],\n",
" [\n",
" 51550001,\n",
" 543400000\n",
" ]\n",
" ]\n",
" ]\n",
" }\n",
" },\n",
" {\n",
" \"type\": \"Feature\",\n",
" \"properties\": {\n",
" \"id\": \"5110_54475\",\n",
" \"name\": \"5110_54475\",\n",
" \"featureclass\": \"LIDAR\",\n",
" \"LAZ Metadata\": \"null\",\n",
" \"onlink\": \"https://geonb.snb.ca/li/\",\n",
" \"histogram of classification of points\": [\n",
" {\n",
" \"name\": \"never classified\",\n",
" \"label\": 0,\n",
" \"count\": 64423\n",
" },\n",
" {\n",
" \"name\": \"unclassified\",\n",
" \"label\": 1,\n",
" \"count\": 1222288\n",
" },\n",
" {\n",
" \"name\": \"ground\",\n",
" \"label\": 2,\n",
" \"count\": 546148\n",
" },\n",
" {\n",
" \"name\": \"low vegetation\",\n",
" \"label\": 3,\n",
" \"count\": 5645\n",
" },\n",
" {\n",
" \"name\": \"medium vegetation\",\n",
" \"label\": 4,\n",
" \"count\": 3305\n",
" },\n",
" {\n",
" \"name\": \"high vegetation\",\n",
" \"label\": 5,\n",
" \"count\": 1590\n",
" },\n",
" {\n",
" \"name\": \"building\",\n",
" \"label\": 6,\n",
" \"count\": 8681\n",
" },\n",
" {\n",
" \"name\": \"noise\",\n",
" \"label\": 7,\n",
" \"count\": 1826\n",
" },\n",
" {\n",
" \"name\": \"keypoint\",\n",
" \"label\": 8,\n",
" \"count\": 276180\n",
" }\n",
" ],\n",
" \"class_names\": [\n",
" \"never classified\",\n",
" \"unclassified\",\n",
" \"ground\",\n",
" \"low vegetation\",\n",
" \"medium vegetation\",\n",
" \"high vegetation\",\n",
" \"building\",\n",
" \"noise\",\n",
" \"keypoint\"\n",
" ],\n",
" \"class_labels\": [\n",
" 0,\n",
" 1,\n",
" 2,\n",
" 3,\n",
" 4,\n",
" 5,\n",
" 6,\n",
" 7,\n",
" 8\n",
" ],\n",
" \"class_count\": [\n",
" 64423,\n",
" 1222288,\n",
" 546148,\n",
" 5645,\n",
" 3305,\n",
" 1590,\n",
" 8681,\n",
" 1826,\n",
" 276180\n",
" ],\n",
" \"class_frequency\": [\n",
" 3.0244318773983774,\n",
" 57.382096309726464,\n",
" 25.63971595513045,\n",
" 0.26501277413212426,\n",
" 0.15515805465131455,\n",
" 0.07464487349337069,\n",
" 0.40754223068927736,\n",
" 0.08572423836408483,\n",
" 12.965673686414538\n",
" ],\n",
" \"bbox\": [\n",
" 51100002,\n",
" 51150006,\n",
" 544749999,\n",
" 544800002\n",
" ]\n",
" },\n",
" \"geometry\": {\n",
" \"type\": \"Polygon\",\n",
" \"coordinates\": [\n",
" [\n",
" [\n",
" 51100002,\n",
" 544749999\n",
" ],\n",
" [\n",
" 51150006,\n",
" 544749999\n",
" ],\n",
" [\n",
" 51150006,\n",
" 544800002\n",
" ],\n",
" [\n",
" 51150006,\n",
" 544749999\n",
" ]\n",
" ]\n",
" ]\n",
" }\n",
" },\n",
" {\n",
" \"type\": \"Feature\",\n",
" \"properties\": {\n",
" \"id\": \"5135_54495\",\n",
" \"name\": \"5135_54495\",\n",
" \"featureclass\": \"LIDAR\",\n",
" \"LAZ Metadata\": \"null\",\n",
" \"onlink\": \"https://geonb.snb.ca/li/\",\n",
" \"histogram of classification of points\": [\n",
" {\n",
" \"name\": \"never classified\",\n",
" \"label\": 0,\n",
" \"count\": 6314\n",
" },\n",
" {\n",
" \"name\": \"unclassified\",\n",
" \"label\": 1,\n",
" \"count\": 1103975\n",
" },\n",
" {\n",
" \"name\": \"ground\",\n",
" \"label\": 2,\n",
" \"count\": 571023\n",
" },\n",
" {\n",
" \"name\": \"low vegetation\",\n",
" \"label\": 3,\n",
" \"count\": 18658\n",
" },\n",
" {\n",
" \"name\": \"medium vegetation\",\n",
" \"label\": 4,\n",
" \"count\": 1831\n",
" },\n",
" {\n",
" \"name\": \"high vegetation\",\n",
" \"label\": 5,\n",
" \"count\": 5236\n",
" },\n",
" {\n",
" \"name\": \"building\",\n",
" \"label\": 6,\n",
" \"count\": 9959\n",
" },\n",
" {\n",
" \"name\": \"noise\",\n",
" \"label\": 7,\n",
" \"count\": 3139\n",
" },\n",
" {\n",
" \"name\": \"keypoint\",\n",
" \"label\": 8,\n",
" \"count\": 385461\n",
" }\n",
" ],\n",
" \"class_names\": [\n",
" \"never classified\",\n",
" \"unclassified\",\n",
" \"ground\",\n",
" \"low vegetation\",\n",
" \"medium vegetation\",\n",
" \"high vegetation\",\n",
" \"building\",\n",
" \"noise\",\n",
" \"keypoint\"\n",
" ],\n",
" \"class_labels\": [\n",
" 0,\n",
" 1,\n",
" 2,\n",
" 3,\n",
" 4,\n",
" 5,\n",
" 6,\n",
" 7,\n",
" 8\n",
" ],\n",
" \"class_count\": [\n",
" 6314,\n",
" 1103975,\n",
" 571023,\n",
" 18658,\n",
" 1831,\n",
" 5236,\n",
" 9959,\n",
" 3139,\n",
" 385461\n",
" ],\n",
" \"class_frequency\": [\n",
" 0.29986759093387333,\n",
" 52.43052323427666,\n",
" 27.11930493788932,\n",
" 0.8861149052334826,\n",
" 0.08695875182133704,\n",
" 0.2486706851646755,\n",
" 0.4729777222221167,\n",
" 0.1490789306210688,\n",
" 18.306503241837465\n",
" ],\n",
" \"bbox\": [\n",
" 51350001,\n",
" 51400004,\n",
" 544949999,\n",
" 545000003\n",
" ]\n",
" },\n",
" \"geometry\": {\n",
" \"type\": \"Polygon\",\n",
" \"coordinates\": [\n",
" [\n",
" [\n",
" 51350001,\n",
" 544949999\n",
" ],\n",
" [\n",
" 51400004,\n",
" 544949999\n",
" ],\n",
" [\n",
" 51400004,\n",
" 545000003\n",
" ],\n",
" [\n",
" 51400004,\n",
" 544949999\n",
" ]\n",
" ]\n",
" ]\n",
" }\n",
" },\n",
" {\n",
" \"type\": \"Feature\",\n",
" \"properties\": {\n",
" \"id\": \"5145_54480\",\n",
" \"name\": \"5145_54480\",\n",
" \"featureclass\": \"LIDAR\",\n",
" \"LAZ Metadata\": \"null\",\n",
" \"onlink\": \"https://geonb.snb.ca/li/\",\n",
" \"histogram of classification of points\": [\n",
" {\n",
" \"name\": \"never classified\",\n",
" \"label\": 0,\n",
" \"count\": 8307\n",
" },\n",
" {\n",
" \"name\": \"unclassified\",\n",
" \"label\": 1,\n",
" \"count\": 1052003\n",
" },\n",
" {\n",
" \"name\": \"ground\",\n",
" \"label\": 2,\n",
" \"count\": 666426\n",
" },\n",
" {\n",
" \"name\": \"low vegetation\",\n",
" \"label\": 3,\n",
" \"count\": 13676\n",
" },\n",
" {\n",
" \"name\": \"medium vegetation\",\n",
" \"label\": 4,\n",
" \"count\": 785\n",
" },\n",
" {\n",
" \"name\": \"high vegetation\",\n",
" \"label\": 5,\n",
" \"count\": 1633\n",
" },\n",
" {\n",
" \"name\": \"building\",\n",
" \"label\": 6,\n",
" \"count\": 3731\n",
" },\n",
" {\n",
" \"name\": \"noise\",\n",
" \"label\": 7,\n",
" \"count\": 2203\n",
" },\n",
" {\n",
" \"name\": \"keypoint\",\n",
" \"label\": 8,\n",
" \"count\": 511728\n",
" }\n",
" ],\n",
" \"class_names\": [\n",
" \"never classified\",\n",
" \"unclassified\",\n",
" \"ground\",\n",
" \"low vegetation\",\n",
" \"medium vegetation\",\n",
" \"high vegetation\",\n",
" \"building\",\n",
" \"noise\",\n",
" \"keypoint\"\n",
" ],\n",
" \"class_labels\": [\n",
" 0,\n",
" 1,\n",
" 2,\n",
" 3,\n",
" 4,\n",
" 5,\n",
" 6,\n",
" 7,\n",
" 8\n",
" ],\n",
" \"class_count\": [\n",
" 8307,\n",
" 1052003,\n",
" 666426,\n",
" 13676,\n",
" 785,\n",
" 1633,\n",
" 3731,\n",
" 2203,\n",
" 511728\n",
" ],\n",
" \"class_frequency\": [\n",
" 0.36748637022382735,\n",
" 46.53867388161515,\n",
" 29.48145801887377,\n",
" 0.6050010351728738,\n",
" 0.034726953247346155,\n",
" 0.0722409103858806,\n",
" 0.16505256377815095,\n",
" 0.09745665987758417,\n",
" 22.637903606825414\n",
" ],\n",
" \"bbox\": [\n",
" 51450001,\n",
" 51500003,\n",
" 544799999,\n",
" 544850002\n",
" ]\n",
" },\n",
" \"geometry\": {\n",
" \"type\": \"Polygon\",\n",
" \"coordinates\": [\n",
" [\n",
" [\n",
" 51450001,\n",
" 544799999\n",
" ],\n",
" [\n",
" 51500003,\n",
" 544799999\n",
" ],\n",
" [\n",
" 51500003,\n",
" 544850002\n",
" ],\n",
" [\n",
" 51500003,\n",
" 544799999\n",
" ]\n",
" ]\n",
" ]\n",
" }\n",
" },\n",
" {\n",
" \"type\": \"Feature\",\n",
" \"properties\": {\n",
" \"id\": \"5185_54390\",\n",
" \"name\": \"5185_54390\",\n",
" \"featureclass\": \"LIDAR\",\n",
" \"LAZ Metadata\": \"null\",\n",
" \"onlink\": \"https://geonb.snb.ca/li/\",\n",
" \"histogram of classification of points\": [\n",
" {\n",
" \"name\": \"never classified\",\n",
" \"label\": 0,\n",
" \"count\": 2665\n",
" },\n",
" {\n",
" \"name\": \"unclassified\",\n",
" \"label\": 1,\n",
" \"count\": 1220639\n",
" },\n",
" {\n",
" \"name\": \"ground\",\n",
" \"label\": 2,\n",
" \"count\": 634237\n",
" },\n",
" {\n",
" \"name\": \"low vegetation\",\n",
" \"label\": 3,\n",
" \"count\": 10641\n",
" },\n",
" {\n",
" \"name\": \"medium vegetation\",\n",
" \"label\": 4,\n",
" \"count\": 3372\n",
" },\n",
" {\n",
" \"name\": \"high vegetation\",\n",
" \"label\": 5,\n",
" \"count\": 3010\n",
" },\n",
" {\n",
" \"name\": \"building\",\n",
" \"label\": 6,\n",
" \"count\": 8425\n",
" },\n",
" {\n",
" \"name\": \"noise\",\n",
" \"label\": 7,\n",
" \"count\": 1782\n",
" },\n",
" {\n",
" \"name\": \"keypoint\",\n",
" \"label\": 8,\n",
" \"count\": 228592\n",
" }\n",
" ],\n",
" \"class_names\": [\n",
" \"never classified\",\n",
" \"unclassified\",\n",
" \"ground\",\n",
" \"low vegetation\",\n",
" \"medium vegetation\",\n",
" \"high vegetation\",\n",
" \"building\",\n",
" \"noise\",\n",
" \"keypoint\"\n",
" ],\n",
" \"class_labels\": [\n",
" 0,\n",
" 1,\n",
" 2,\n",
" 3,\n",
" 4,\n",
" 5,\n",
" 6,\n",
" 7,\n",
" 8\n",
" ],\n",
" \"class_count\": [\n",
" 2665,\n",
" 1220639,\n",
" 634237,\n",
" 10641,\n",
" 3372,\n",
" 3010,\n",
" 8425,\n",
" 1782,\n",
" 228592\n",
" ],\n",
" \"class_frequency\": [\n",
" 0.12610233074015206,\n",
" 57.75813241738405,\n",
" 30.01079322388061,\n",
" 0.5035102819534553,\n",
" 0.15955611979579465,\n",
" 0.14242702271214175,\n",
" 0.3986537097507622,\n",
" 0.0843205828814075,\n",
" 10.81650431090163\n",
" ],\n",
" \"bbox\": [\n",
" 51850002,\n",
" 51900006,\n",
" 543900002,\n",
" 543950004\n",
" ]\n",
" },\n",
" \"geometry\": {\n",
" \"type\": \"Polygon\",\n",
" \"coordinates\": [\n",
" [\n",
" [\n",
" 51850002,\n",
" 543900002\n",
" ],\n",
" [\n",
" 51900006,\n",
" 543900002\n",
" ],\n",
" [\n",
" 51900006,\n",
" 543950004\n",
" ],\n",
" [\n",
" 51900006,\n",
" 543900002\n",
" ]\n",
" ]\n",
" ]\n",
" }\n",
" },\n",
" {\n",
" \"type\": \"Feature\",\n",
" \"properties\": {\n",
" \"id\": \"5100_54495\",\n",
" \"name\": \"5100_54495\",\n",
" \"featureclass\": \"LIDAR\",\n",
" \"LAZ Metadata\": \"null\",\n",
" \"onlink\": \"https://geonb.snb.ca/li/\",\n",
" \"histogram of classification of points\": [\n",
" {\n",
" \"name\": \"never classified\",\n",
" \"label\": 0,\n",
" \"count\": 5054\n",
" },\n",
" {\n",
" \"name\": \"unclassified\",\n",
" \"label\": 1,\n",
" \"count\": 1112739\n",
" },\n",
" {\n",
" \"name\": \"ground\",\n",
" \"label\": 2,\n",
" \"count\": 554830\n",
" },\n",
" {\n",
" \"name\": \"low vegetation\",\n",
" \"label\": 3,\n",
" \"count\": 29800\n",
" },\n",
" {\n",
" \"name\": \"medium vegetation\",\n",
" \"label\": 4,\n",
" \"count\": 3395\n",
" },\n",
" {\n",
" \"name\": \"high vegetation\",\n",
" \"label\": 5,\n",
" \"count\": 2822\n",
" },\n",
" {\n",
" \"name\": \"building\",\n",
" \"label\": 6,\n",
" \"count\": 21593\n",
" },\n",
" {\n",
" \"name\": \"noise\",\n",
" \"label\": 7,\n",
" \"count\": 1822\n",
" },\n",
" {\n",
" \"name\": \"keypoint\",\n",
" \"label\": 8,\n",
" \"count\": 416607\n",
" }\n",
" ],\n",
" \"class_names\": [\n",
" \"never classified\",\n",
" \"unclassified\",\n",
" \"ground\",\n",
" \"low vegetation\",\n",
" \"medium vegetation\",\n",
" \"high vegetation\",\n",
" \"building\",\n",
" \"noise\",\n",
" \"keypoint\"\n",
" ],\n",
" \"class_labels\": [\n",
" 0,\n",
" 1,\n",
" 2,\n",
" 3,\n",
" 4,\n",
" 5,\n",
" 6,\n",
" 7,\n",
" 8\n",
" ],\n",
" \"class_count\": [\n",
" 5054,\n",
" 1112739,\n",
" 554830,\n",
" 29800,\n",
" 3395,\n",
" 2822,\n",
" 21593,\n",
" 1822,\n",
" 416607\n",
" ],\n",
" \"class_frequency\": [\n",
" 0.23521614846820948,\n",
" 51.78753103093925,\n",
" 25.822116275151696,\n",
" 1.3869096209641163,\n",
" 0.15800530748903271,\n",
" 0.13133754866982336,\n",
" 1.004950988103294,\n",
" 0.08479695736230268,\n",
" 19.389136122852268\n",
" ],\n",
" \"bbox\": [\n",
" 51000005,\n",
" 51050008,\n",
" 544950001,\n",
" 545000005\n",
" ]\n",
" },\n",
" \"geometry\": {\n",
" \"type\": \"Polygon\",\n",
" \"coordinates\": [\n",
" [\n",
" [\n",
" 51000005,\n",
" 544950001\n",
" ],\n",
" [\n",
" 51050008,\n",
" 544950001\n",
" ],\n",
" [\n",
" 51050008,\n",
" 545000005\n",
" ],\n",
" [\n",
" 51050008,\n",
" 544950001\n",
" ]\n",
" ]\n",
" ]\n",
" }\n",
" },\n",
" {\n",
" \"type\": \"Feature\",\n",
" \"properties\": {\n",
" \"id\": \"5095_54440\",\n",
" \"name\": \"5095_54440\",\n",
" \"featureclass\": \"LIDAR\",\n",
" \"LAZ Metadata\": \"null\",\n",
" \"onlink\": \"https://geonb.snb.ca/li/\",\n",
" \"histogram of classification of points\": [\n",
" {\n",
" \"name\": \"never classified\",\n",
" \"label\": 0,\n",
" \"count\": 23345\n",
" },\n",
" {\n",
" \"name\": \"unclassified\",\n",
" \"label\": 1,\n",
" \"count\": 884380\n",
" },\n",
" {\n",
" \"name\": \"ground\",\n",
" \"label\": 2,\n",
" \"count\": 522793\n",
" },\n",
" {\n",
" \"name\": \"low vegetation\",\n",
" \"label\": 3,\n",
" \"count\": 13464\n",
" },\n",
" {\n",
" \"name\": \"medium vegetation\",\n",
" \"label\": 4,\n",
" \"count\": 11440\n",
" },\n",
" {\n",
" \"name\": \"high vegetation\",\n",
" \"label\": 5,\n",
" \"count\": 10120\n",
" },\n",
" {\n",
" \"name\": \"building\",\n",
" \"label\": 6,\n",
" \"count\": 2232\n",
" },\n",
" {\n",
" \"name\": \"noise\",\n",
" \"label\": 7,\n",
" \"count\": 2546\n",
" },\n",
" {\n",
" \"name\": \"keypoint\",\n",
" \"label\": 8,\n",
" \"count\": 610322\n",
" }\n",
" ],\n",
" \"class_names\": [\n",
" \"never classified\",\n",
" \"unclassified\",\n",
" \"ground\",\n",
" \"low vegetation\",\n",
" \"medium vegetation\",\n",
" \"high vegetation\",\n",
" \"building\",\n",
" \"noise\",\n",
" \"keypoint\"\n",
" ],\n",
" \"class_labels\": [\n",
" 0,\n",
" 1,\n",
" 2,\n",
" 3,\n",
" 4,\n",
" 5,\n",
" 6,\n",
" 7,\n",
" 8\n",
" ],\n",
" \"class_count\": [\n",
" 23345,\n",
" 884380,\n",
" 522793,\n",
" 13464,\n",
" 11440,\n",
" 10120,\n",
" 2232,\n",
" 2546,\n",
" 610322\n",
" ],\n",
" \"class_frequency\": [\n",
" 1.1220094566965388,\n",
" 42.50514985278582,\n",
" 25.12652344805113,\n",
" 0.6471079599469779,\n",
" 0.5498302927654061,\n",
" 0.4863883359078592,\n",
" 0.10727458159548832,\n",
" 0.12236607739341991,\n",
" 29.333349994857354\n",
" ],\n",
" \"bbox\": [\n",
" 50950001,\n",
" 51000004,\n",
" 544400000,\n",
" 544450004\n",
" ]\n",
" },\n",
" \"geometry\": {\n",
" \"type\": \"Polygon\",\n",
" \"coordinates\": [\n",
" [\n",
" [\n",
" 50950001,\n",
" 544400000\n",
" ],\n",
" [\n",
" 51000004,\n",
" 544400000\n",
" ],\n",
" [\n",
" 51000004,\n",
" 544450004\n",
" ],\n",
" [\n",
" 51000004,\n",
" 544400000\n",
" ]\n",
" ]\n",
" ]\n",
" }\n",
" },\n",
" {\n",
" \"type\": \"Feature\",\n",
" \"properties\": {\n",
" \"id\": \"5115_54480\",\n",
" \"name\": \"5115_54480\",\n",
" \"featureclass\": \"LIDAR\",\n",
" \"LAZ Metadata\": \"null\",\n",
" \"onlink\": \"https://geonb.snb.ca/li/\",\n",
" \"histogram of classification of points\": [\n",
" {\n",
" \"name\": \"never classified\",\n",
" \"label\": 0,\n",
" \"count\": 4667\n",
" },\n",
" {\n",
" \"name\": \"unclassified\",\n",
" \"label\": 1,\n",
" \"count\": 901962\n",
" },\n",
" {\n",
" \"name\": \"ground\",\n",
" \"label\": 2,\n",
" \"count\": 928444\n",
" },\n",
" {\n",
" \"name\": \"low vegetation\",\n",
" \"label\": 3,\n",
" \"count\": 21701\n",
" },\n",
" {\n",
" \"name\": \"medium vegetation\",\n",
" \"label\": 4,\n",
" \"count\": 336\n",
" },\n",
" {\n",
" \"name\": \"high vegetation\",\n",
" \"label\": 5,\n",
" \"count\": 12408\n",
" },\n",
" {\n",
" \"name\": \"building\",\n",
" \"label\": 6,\n",
" \"count\": 8276\n",
" },\n",
" {\n",
" \"name\": \"noise\",\n",
" \"label\": 7,\n",
" \"count\": 1976\n",
" },\n",
" {\n",
" \"name\": \"keypoint\",\n",
" \"label\": 8,\n",
" \"count\": 550469\n",
" }\n",
" ],\n",
" \"class_names\": [\n",
" \"never classified\",\n",
" \"unclassified\",\n",
" \"ground\",\n",
" \"low vegetation\",\n",
" \"medium vegetation\",\n",
" \"high vegetation\",\n",
" \"building\",\n",
" \"noise\",\n",
" \"keypoint\"\n",
" ],\n",
" \"class_labels\": [\n",
" 0,\n",
" 1,\n",
" 2,\n",
" 3,\n",
" 4,\n",
" 5,\n",
" 6,\n",
" 7,\n",
" 8\n",
" ],\n",
" \"class_count\": [\n",
" 4667,\n",
" 901962,\n",
" 928444,\n",
" 21701,\n",
" 336,\n",
" 12408,\n",
" 8276,\n",
" 1976,\n",
" 550469\n",
" ],\n",
" \"class_frequency\": [\n",
" 0.19203872540931158,\n",
" 37.114127458245875,\n",
" 38.20381452194619,\n",
" 0.8929574416343413,\n",
" 0.013825800672279558,\n",
" 0.5105670676834665,\n",
" 0.3405426379874572,\n",
" 0.0813088753822155,\n",
" 22.650817471038856\n",
" ],\n",
" \"bbox\": [\n",
" 51150003,\n",
" 51200006,\n",
" 544799998,\n",
" 544850002\n",
" ]\n",
" },\n",
" \"geometry\": {\n",
" \"type\": \"Polygon\",\n",
" \"coordinates\": [\n",
" [\n",
" [\n",
" 51150003,\n",
" 544799998\n",
" ],\n",
" [\n",
" 51200006,\n",
" 544799998\n",
" ],\n",
" [\n",
" 51200006,\n",
" 544850002\n",
" ],\n",
" [\n",
" 51200006,\n",
" 544799998\n",
" ]\n",
" ]\n",
" ]\n",
" }\n",
" },\n",
" {\n",
" \"type\": \"Feature\",\n",
" \"properties\": {\n",
" \"id\": \"5080_54435\",\n",
" \"name\": \"5080_54435\",\n",
" \"featureclass\": \"LIDAR\",\n",
" \"LAZ Metadata\": \"null\",\n",
" \"onlink\": \"https://geonb.snb.ca/li/\",\n",
" \"histogram of classification of points\": [\n",
" {\n",
" \"name\": \"never classified\",\n",
" \"label\": 0,\n",
" \"count\": 5623\n",
" },\n",
" {\n",
" \"name\": \"unclassified\",\n",
" \"label\": 1,\n",
" \"count\": 979228\n",
" },\n",
" {\n",
" \"name\": \"ground\",\n",
" \"label\": 2,\n",
" \"count\": 459538\n",
" },\n",
" {\n",
" \"name\": \"low vegetation\",\n",
" \"label\": 3,\n",
" \"count\": 27864\n",
" },\n",
" {\n",
" \"name\": \"medium vegetation\",\n",
" \"label\": 4,\n",
" \"count\": 1444\n",
" },\n",
" {\n",
" \"name\": \"high vegetation\",\n",
" \"label\": 5,\n",
" \"count\": 2516\n",
" },\n",
" {\n",
" \"name\": \"building\",\n",
" \"label\": 6,\n",
" \"count\": 15910\n",
" },\n",
" {\n",
" \"name\": \"noise\",\n",
" \"label\": 7,\n",
" \"count\": 1695\n",
" },\n",
" {\n",
" \"name\": \"keypoint\",\n",
" \"label\": 8,\n",
" \"count\": 523242\n",
" }\n",
" ],\n",
" \"class_names\": [\n",
" \"never classified\",\n",
" \"unclassified\",\n",
" \"ground\",\n",
" \"low vegetation\",\n",
" \"medium vegetation\",\n",
" \"high vegetation\",\n",
" \"building\",\n",
" \"noise\",\n",
" \"keypoint\"\n",
" ],\n",
" \"class_labels\": [\n",
" 0,\n",
" 1,\n",
" 2,\n",
" 3,\n",
" 4,\n",
" 5,\n",
" 6,\n",
" 7,\n",
" 8\n",
" ],\n",
" \"class_count\": [\n",
" 5623,\n",
" 979228,\n",
" 459538,\n",
" 27864,\n",
" 1444,\n",
" 2516,\n",
" 15910,\n",
" 1695,\n",
" 523242\n",
" ],\n",
" \"class_frequency\": [\n",
" 0.27877207420701416,\n",
" 48.54729160262957,\n",
" 22.78256472291355,\n",
" 1.3814165171090598,\n",
" 0.07158934290502018,\n",
" 0.12473600190376093,\n",
" 0.7887717767443705,\n",
" 0.0840331968310313,\n",
" 25.940824764756627\n",
" ],\n",
" \"bbox\": [\n",
" 50799999,\n",
" 50850004,\n",
" 544349998,\n",
" 544400002\n",
" ]\n",
" },\n",
" \"geometry\": {\n",
" \"type\": \"Polygon\",\n",
" \"coordinates\": [\n",
" [\n",
" [\n",
" 50799999,\n",
" 544349998\n",
" ],\n",
" [\n",
" 50850004,\n",
" 544349998\n",
" ],\n",
" [\n",
" 50850004,\n",
" 544400002\n",
" ],\n",
" [\n",
" 50850004,\n",
" 544349998\n",
" ]\n",
" ]\n",
" ]\n",
" }\n",
" },\n",
" {\n",
" \"type\": \"Feature\",\n",
" \"properties\": {\n",
" \"id\": \"5110_54460\",\n",
" \"name\": \"5110_54460\",\n",
" \"featureclass\": \"LIDAR\",\n",
" \"LAZ Metadata\": \"null\",\n",
" \"onlink\": \"https://geonb.snb.ca/li/\",\n",
" \"histogram of classification of points\": [\n",
" {\n",
" \"name\": \"never classified\",\n",
" \"label\": 0,\n",
" \"count\": 11744\n",
" },\n",
" {\n",
" \"name\": \"unclassified\",\n",
" \"label\": 1,\n",
" \"count\": 1128654\n",
" },\n",
" {\n",
" \"name\": \"ground\",\n",
" \"label\": 2,\n",
" \"count\": 950184\n",
" },\n",
" {\n",
" \"name\": \"low vegetation\",\n",
" \"label\": 3,\n",
" \"count\": 18231\n",
" },\n",
" {\n",
" \"name\": \"medium vegetation\",\n",
" \"label\": 4,\n",
" \"count\": 747\n",
" },\n",
" {\n",
" \"name\": \"high vegetation\",\n",
" \"label\": 5,\n",
" \"count\": 11520\n",
" },\n",
" {\n",
" \"name\": \"building\",\n",
" \"label\": 6,\n",
" \"count\": 13434\n",
" },\n",
" {\n",
" \"name\": \"noise\",\n",
" \"label\": 7,\n",
" \"count\": 2989\n",
" },\n",
" {\n",
" \"name\": \"keypoint\",\n",
" \"label\": 8,\n",
" \"count\": 313069\n",
" }\n",
" ],\n",
" \"class_names\": [\n",
" \"never classified\",\n",
" \"unclassified\",\n",
" \"ground\",\n",
" \"low vegetation\",\n",
" \"medium vegetation\",\n",
" \"high vegetation\",\n",
" \"building\",\n",
" \"noise\",\n",
" \"keypoint\"\n",
" ],\n",
" \"class_labels\": [\n",
" 0,\n",
" 1,\n",
" 2,\n",
" 3,\n",
" 4,\n",
" 5,\n",
" 6,\n",
" 7,\n",
" 8\n",
" ],\n",
" \"class_count\": [\n",
" 11744,\n",
" 1128654,\n",
" 950184,\n",
" 18231,\n",
" 747,\n",
" 11520,\n",
" 13434,\n",
" 2989,\n",
" 313069\n",
" ],\n",
" \"class_frequency\": [\n",
" 0.4792350520613146,\n",
" 46.056757361138544,\n",
" 38.77396787362297,\n",
" 0.7439487597181392,\n",
" 0.030482679145930013,\n",
" 0.4700943289974749,\n",
" 0.5481985430340345,\n",
" 0.1219715233831122,\n",
" 12.775343878898477\n",
" ],\n",
" \"bbox\": [\n",
" 51100001,\n",
" 51150004,\n",
" 544600000,\n",
" 544650002\n",
" ]\n",
" },\n",
" \"geometry\": {\n",
" \"type\": \"Polygon\",\n",
" \"coordinates\": [\n",
" [\n",
" [\n",
" 51100001,\n",
" 544600000\n",
" ],\n",
" [\n",
" 51150004,\n",
" 544600000\n",
" ],\n",
" [\n",
" 51150004,\n",
" 544650002\n",
" ],\n",
" [\n",
" 51150004,\n",
" 544600000\n",
" ]\n",
" ]\n",
" ]\n",
" }\n",
" },\n",
" {\n",
" \"type\": \"Feature\",\n",
" \"properties\": {\n",
" \"id\": \"5105_54460\",\n",
" \"name\": \"5105_54460\",\n",
" \"featureclass\": \"LIDAR\",\n",
" \"LAZ Metadata\": \"null\",\n",
" \"onlink\": \"https://geonb.snb.ca/li/\",\n",
" \"histogram of classification of points\": [\n",
" {\n",
" \"name\": \"never classified\",\n",
" \"label\": 0,\n",
" \"count\": 6788\n",
" },\n",
" {\n",
" \"name\": \"unclassified\",\n",
" \"label\": 1,\n",
" \"count\": 1128888\n",
" },\n",
" {\n",
" \"name\": \"ground\",\n",
" \"label\": 2,\n",
" \"count\": 798144\n",
" },\n",
" {\n",
" \"name\": \"low vegetation\",\n",
" \"label\": 3,\n",
" \"count\": 22377\n",
" },\n",
" {\n",
" \"name\": \"medium vegetation\",\n",
" \"label\": 4,\n",
" \"count\": 1721\n",
" },\n",
" {\n",
" \"name\": \"high vegetation\",\n",
" \"label\": 5,\n",
" \"count\": 13511\n",
" },\n",
" {\n",
" \"name\": \"building\",\n",
" \"label\": 6,\n",
" \"count\": 13876\n",
" },\n",
" {\n",
" \"name\": \"noise\",\n",
" \"label\": 7,\n",
" \"count\": 1942\n",
" },\n",
" {\n",
" \"name\": \"keypoint\",\n",
" \"label\": 8,\n",
" \"count\": 315799\n",
" }\n",
" ],\n",
" \"class_names\": [\n",
" \"never classified\",\n",
" \"unclassified\",\n",
" \"ground\",\n",
" \"low vegetation\",\n",
" \"medium vegetation\",\n",
" \"high vegetation\",\n",
" \"building\",\n",
" \"noise\",\n",
" \"keypoint\"\n",
" ],\n",
" \"class_labels\": [\n",
" 0,\n",
" 1,\n",
" 2,\n",
" 3,\n",
" 4,\n",
" 5,\n",
" 6,\n",
" 7,\n",
" 8\n",
" ],\n",
" \"class_count\": [\n",
" 6788,\n",
" 1128888,\n",
" 798144,\n",
" 22377,\n",
" 1721,\n",
" 13511,\n",
" 13876,\n",
" 1942,\n",
" 315799\n",
" ],\n",
" \"class_frequency\": [\n",
" 0.29474009637671156,\n",
" 49.01717117243859,\n",
" 34.65601642346701,\n",
" 0.9716262723367227,\n",
" 0.07472712225461411,\n",
" 0.5866578435689083,\n",
" 0.6025064197588759,\n",
" 0.08432310948196432,\n",
" 13.712231540316608\n",
" ],\n",
" \"bbox\": [\n",
" 51050001,\n",
" 51100005,\n",
" 544600000,\n",
" 544650002\n",
" ]\n",
" },\n",
" \"geometry\": {\n",
" \"type\": \"Polygon\",\n",
" \"coordinates\": [\n",
" [\n",
" [\n",
" 51050001,\n",
" 544600000\n",
" ],\n",
" [\n",
" 51100005,\n",
" 544600000\n",
" ],\n",
" [\n",
" 51100005,\n",
" 544650002\n",
" ],\n",
" [\n",
" 51100005,\n",
" 544600000\n",
" ]\n",
" ]\n",
" ]\n",
" }\n",
" },\n",
" {\n",
" \"type\": \"Feature\",\n",
" \"properties\": {\n",
" \"id\": \"5110_54320\",\n",
" \"name\": \"5110_54320\",\n",
" \"featureclass\": \"LIDAR\",\n",
" \"LAZ Metadata\": \"null\",\n",
" \"onlink\": \"https://geonb.snb.ca/li/\",\n",
" \"histogram of classification of points\": [\n",
" {\n",
" \"name\": \"never classified\",\n",
" \"label\": 0,\n",
" \"count\": 7281\n",
" },\n",
" {\n",
" \"name\": \"unclassified\",\n",
" \"label\": 1,\n",
" \"count\": 1036150\n",
" },\n",
" {\n",
" \"name\": \"ground\",\n",
" \"label\": 2,\n",
" \"count\": 1833899\n",
" },\n",
" {\n",
" \"name\": \"low vegetation\",\n",
" \"label\": 3,\n",
" \"count\": 2253\n",
" },\n",
" {\n",
" \"name\": \"medium vegetation\",\n",
" \"label\": 4,\n",
" \"count\": 333\n",
" },\n",
" {\n",
" \"name\": \"building\",\n",
" \"label\": 6,\n",
" \"count\": 2402\n",
" },\n",
" {\n",
" \"name\": \"noise\",\n",
" \"label\": 7,\n",
" \"count\": 60\n",
" },\n",
" {\n",
" \"name\": \"keypoint\",\n",
" \"label\": 8,\n",
" \"count\": 272829\n",
" }\n",
" ],\n",
" \"class_names\": [\n",
" \"never classified\",\n",
" \"unclassified\",\n",
" \"ground\",\n",
" \"low vegetation\",\n",
" \"medium vegetation\",\n",
" \"building\",\n",
" \"noise\",\n",
" \"keypoint\"\n",
" ],\n",
" \"class_labels\": [\n",
" 0,\n",
" 1,\n",
" 2,\n",
" 3,\n",
" 4,\n",
" 6,\n",
" 7,\n",
" 8\n",
" ],\n",
" \"class_count\": [\n",
" 7281,\n",
" 1036150,\n",
" 1833899,\n",
" 2253,\n",
" 333,\n",
" 2402,\n",
" 60,\n",
" 272829\n",
" ],\n",
" \"class_frequency\": [\n",
" 0.23076140487771485,\n",
" 32.83936679907214,\n",
" 58.12293773435467,\n",
" 0.07140577464489652,\n",
" 0.010553982670550617,\n",
" 0.07612812725123899,\n",
" 0.0019016184991983093,\n",
" 8.646944558629592\n",
" ],\n",
" \"bbox\": [\n",
" 51100001,\n",
" 51150002,\n",
" 543199997,\n",
" 543250000\n",
" ]\n",
" },\n",
" \"geometry\": {\n",
" \"type\": \"Polygon\",\n",
" \"coordinates\": [\n",
" [\n",
" [\n",
" 51100001,\n",
" 543199997\n",
" ],\n",
" [\n",
" 51150002,\n",
" 543199997\n",
" ],\n",
" [\n",
" 51150002,\n",
" 543250000\n",
" ],\n",
" [\n",
" 51150002,\n",
" 543199997\n",
" ]\n",
" ]\n",
" ]\n",
" }\n",
" },\n",
" {\n",
" \"type\": \"Feature\",\n",
" \"properties\": {\n",
" \"id\": \"5095_54455\",\n",
" \"name\": \"5095_54455\",\n",
" \"featureclass\": \"LIDAR\",\n",
" \"LAZ Metadata\": \"null\",\n",
" \"onlink\": \"https://geonb.snb.ca/li/\",\n",
" \"histogram of classification of points\": [\n",
" {\n",
" \"name\": \"never classified\",\n",
" \"label\": 0,\n",
" \"count\": 5717\n",
" },\n",
" {\n",
" \"name\": \"unclassified\",\n",
" \"label\": 1,\n",
" \"count\": 1094731\n",
" },\n",
" {\n",
" \"name\": \"ground\",\n",
" \"label\": 2,\n",
" \"count\": 920631\n",
" },\n",
" {\n",
" \"name\": \"low vegetation\",\n",
" \"label\": 3,\n",
" \"count\": 16991\n",
" },\n",
" {\n",
" \"name\": \"medium vegetation\",\n",
" \"label\": 4,\n",
" \"count\": 2249\n",
" },\n",
" {\n",
" \"name\": \"high vegetation\",\n",
" \"label\": 5,\n",
" \"count\": 15271\n",
" },\n",
" {\n",
" \"name\": \"building\",\n",
" \"label\": 6,\n",
" \"count\": 14274\n",
" },\n",
" {\n",
" \"name\": \"noise\",\n",
" \"label\": 7,\n",
" \"count\": 2569\n",
" },\n",
" {\n",
" \"name\": \"keypoint\",\n",
" \"label\": 8,\n",
" \"count\": 338519\n",
" }\n",
" ],\n",
" \"class_names\": [\n",
" \"never classified\",\n",
" \"unclassified\",\n",
" \"ground\",\n",
" \"low vegetation\",\n",
" \"medium vegetation\",\n",
" \"high vegetation\",\n",
" \"building\",\n",
" \"noise\",\n",
" \"keypoint\"\n",
" ],\n",
" \"class_labels\": [\n",
" 0,\n",
" 1,\n",
" 2,\n",
" 3,\n",
" 4,\n",
" 5,\n",
" 6,\n",
" 7,\n",
" 8\n",
" ],\n",
" \"class_count\": [\n",
" 5717,\n",
" 1094731,\n",
" 920631,\n",
" 16991,\n",
" 2249,\n",
" 15271,\n",
" 14274,\n",
" 2569,\n",
" 338519\n",
" ],\n",
" \"class_frequency\": [\n",
" 0.2371262472251625,\n",
" 45.40658627795162,\n",
" 38.18537241720283,\n",
" 0.7047423590349372,\n",
" 0.09328265349123499,\n",
" 0.6334012456490217,\n",
" 0.5920482863200927,\n",
" 0.10655541877233557,\n",
" 14.04088509435277\n",
" ],\n",
" \"bbox\": [\n",
" 50950000,\n",
" 51000005,\n",
" 544550001,\n",
" 544600004\n",
" ]\n",
" },\n",
" \"geometry\": {\n",
" \"type\": \"Polygon\",\n",
" \"coordinates\": [\n",
" [\n",
" [\n",
" 50950000,\n",
" 544550001\n",
" ],\n",
" [\n",
" 51000005,\n",
" 544550001\n",
" ],\n",
" [\n",
" 51000005,\n",
" 544600004\n",
" ],\n",
" [\n",
" 51000005,\n",
" 544550001\n",
" ]\n",
" ]\n",
" ]\n",
" }\n",
" },\n",
" {\n",
" \"type\": \"Feature\",\n",
" \"properties\": {\n",
" \"id\": \"5160_54330\",\n",
" \"name\": \"5160_54330\",\n",
" \"featureclass\": \"LIDAR\",\n",
" \"LAZ Metadata\": \"null\",\n",
" \"onlink\": \"https://geonb.snb.ca/li/\",\n",
" \"histogram of classification of points\": [\n",
" {\n",
" \"name\": \"never classified\",\n",
" \"label\": 0,\n",
" \"count\": 11468\n",
" },\n",
" {\n",
" \"name\": \"unclassified\",\n",
" \"label\": 1,\n",
" \"count\": 1032771\n",
" },\n",
" {\n",
" \"name\": \"ground\",\n",
" \"label\": 2,\n",
" \"count\": 621400\n",
" },\n",
" {\n",
" \"name\": \"low vegetation\",\n",
" \"label\": 3,\n",
" \"count\": 9144\n",
" },\n",
" {\n",
" \"name\": \"medium vegetation\",\n",
" \"label\": 4,\n",
" \"count\": 107\n",
" },\n",
" {\n",
" \"name\": \"high vegetation\",\n",
" \"label\": 5,\n",
" \"count\": 4816\n",
" },\n",
" {\n",
" \"name\": \"building\",\n",
" \"label\": 6,\n",
" \"count\": 7549\n",
" },\n",
" {\n",
" \"name\": \"noise\",\n",
" \"label\": 7,\n",
" \"count\": 1013\n",
" },\n",
" {\n",
" \"name\": \"keypoint\",\n",
" \"label\": 8,\n",
" \"count\": 446989\n",
" }\n",
" ],\n",
" \"class_names\": [\n",
" \"never classified\",\n",
" \"unclassified\",\n",
" \"ground\",\n",
" \"low vegetation\",\n",
" \"medium vegetation\",\n",
" \"high vegetation\",\n",
" \"building\",\n",
" \"noise\",\n",
" \"keypoint\"\n",
" ],\n",
" \"class_labels\": [\n",
" 0,\n",
" 1,\n",
" 2,\n",
" 3,\n",
" 4,\n",
" 5,\n",
" 6,\n",
" 7,\n",
" 8\n",
" ],\n",
" \"class_count\": [\n",
" 11468,\n",
" 1032771,\n",
" 621400,\n",
" 9144,\n",
" 107,\n",
" 4816,\n",
" 7549,\n",
" 1013,\n",
" 446989\n",
" ],\n",
" \"class_frequency\": [\n",
" 0.5370782065109727,\n",
" 48.36752671926611,\n",
" 29.10188328618054,\n",
" 0.42823884900037795,\n",
" 0.005011106391408622,\n",
" 0.22554662038340115,\n",
" 0.3535405808293803,\n",
" 0.047441596023335836,\n",
" 20.933733035414473\n",
" ],\n",
" \"bbox\": [\n",
" 51599998,\n",
" 51650001,\n",
" 543300001,\n",
" 543350004\n",
" ]\n",
" },\n",
" \"geometry\": {\n",
" \"type\": \"Polygon\",\n",
" \"coordinates\": [\n",
" [\n",
" [\n",
" 51599998,\n",
" 543300001\n",
" ],\n",
" [\n",
" 51650001,\n",
" 543300001\n",
" ],\n",
" [\n",
" 51650001,\n",
" 543350004\n",
" ],\n",
" [\n",
" 51650001,\n",
" 543300001\n",
" ]\n",
" ]\n",
" ]\n",
" }\n",
" },\n",
" {\n",
" \"type\": \"Feature\",\n",
" \"properties\": {\n",
" \"id\": \"5185_54485\",\n",
" \"name\": \"5185_54485\",\n",
" \"featureclass\": \"LIDAR\",\n",
" \"LAZ Metadata\": \"null\",\n",
" \"onlink\": \"https://geonb.snb.ca/li/\",\n",
" \"histogram of classification of points\": [\n",
" {\n",
" \"name\": \"never classified\",\n",
" \"label\": 0,\n",
" \"count\": 28472\n",
" },\n",
" {\n",
" \"name\": \"unclassified\",\n",
" \"label\": 1,\n",
" \"count\": 1065610\n",
" },\n",
" {\n",
" \"name\": \"ground\",\n",
" \"label\": 2,\n",
" \"count\": 1251428\n",
" },\n",
" {\n",
" \"name\": \"low vegetation\",\n",
" \"label\": 3,\n",
" \"count\": 12367\n",
" },\n",
" {\n",
" \"name\": \"medium vegetation\",\n",
" \"label\": 4,\n",
" \"count\": 4743\n",
" },\n",
" {\n",
" \"name\": \"high vegetation\",\n",
" \"label\": 5,\n",
" \"count\": 1163\n",
" },\n",
" {\n",
" \"name\": \"building\",\n",
" \"label\": 6,\n",
" \"count\": 4970\n",
" },\n",
" {\n",
" \"name\": \"noise\",\n",
" \"label\": 7,\n",
" \"count\": 797\n",
" },\n",
" {\n",
" \"name\": \"keypoint\",\n",
" \"label\": 8,\n",
" \"count\": 215232\n",
" }\n",
" ],\n",
" \"class_names\": [\n",
" \"never classified\",\n",
" \"unclassified\",\n",
" \"ground\",\n",
" \"low vegetation\",\n",
" \"medium vegetation\",\n",
" \"high vegetation\",\n",
" \"building\",\n",
" \"noise\",\n",
" \"keypoint\"\n",
" ],\n",
" \"class_labels\": [\n",
" 0,\n",
" 1,\n",
" 2,\n",
" 3,\n",
" 4,\n",
" 5,\n",
" 6,\n",
" 7,\n",
" 8\n",
" ],\n",
" \"class_count\": [\n",
" 28472,\n",
" 1065610,\n",
" 1251428,\n",
" 12367,\n",
" 4743,\n",
" 1163,\n",
" 4970,\n",
" 797,\n",
" 215232\n",
" ],\n",
" \"class_frequency\": [\n",
" 1.1015242291226106,\n",
" 41.22630070930546,\n",
" 48.41522418525044,\n",
" 0.47845427583448047,\n",
" 0.18349709956197466,\n",
" 0.04499412329550422,\n",
" 0.19227927152077043,\n",
" 0.030834321811278476,\n",
" 8.326891784297477\n",
" ],\n",
" \"bbox\": [\n",
" 51850000,\n",
" 51900003,\n",
" 544849998,\n",
" 544900001\n",
" ]\n",
" },\n",
" \"geometry\": {\n",
" \"type\": \"Polygon\",\n",
" \"coordinates\": [\n",
" [\n",
" [\n",
" 51850000,\n",
" 544849998\n",
" ],\n",
" [\n",
" 51900003,\n",
" 544849998\n",
" ],\n",
" [\n",
" 51900003,\n",
" 544900001\n",
" ],\n",
" [\n",
" 51900003,\n",
" 544849998\n",
" ]\n",
" ]\n",
" ]\n",
" }\n",
" },\n",
" {\n",
" \"type\": \"Feature\",\n",
" \"properties\": {\n",
" \"id\": \"5145_54340\",\n",
" \"name\": \"5145_54340\",\n",
" \"featureclass\": \"LIDAR\",\n",
" \"LAZ Metadata\": \"null\",\n",
" \"onlink\": \"https://geonb.snb.ca/li/\",\n",
" \"histogram of classification of points\": [\n",
" {\n",
" \"name\": \"never classified\",\n",
" \"label\": 0,\n",
" \"count\": 23474\n",
" },\n",
" {\n",
" \"name\": \"unclassified\",\n",
" \"label\": 1,\n",
" \"count\": 1172613\n",
" },\n",
" {\n",
" \"name\": \"ground\",\n",
" \"label\": 2,\n",
" \"count\": 539009\n",
" },\n",
" {\n",
" \"name\": \"low vegetation\",\n",
" \"label\": 3,\n",
" \"count\": 5806\n",
" },\n",
" {\n",
" \"name\": \"high vegetation\",\n",
" \"label\": 5,\n",
" \"count\": 12415\n",
" },\n",
" {\n",
" \"name\": \"building\",\n",
" \"label\": 6,\n",
" \"count\": 5735\n",
" },\n",
" {\n",
" \"name\": \"noise\",\n",
" \"label\": 7,\n",
" \"count\": 4084\n",
" },\n",
" {\n",
" \"name\": \"keypoint\",\n",
" \"label\": 8,\n",
" \"count\": 380753\n",
" }\n",
" ],\n",
" \"class_names\": [\n",
" \"never classified\",\n",
" \"unclassified\",\n",
" \"ground\",\n",
" \"low vegetation\",\n",
" \"high vegetation\",\n",
" \"building\",\n",
" \"noise\",\n",
" \"keypoint\"\n",
" ],\n",
" \"class_labels\": [\n",
" 0,\n",
" 1,\n",
" 2,\n",
" 3,\n",
" 5,\n",
" 6,\n",
" 7,\n",
" 8\n",
" ],\n",
" \"class_count\": [\n",
" 23474,\n",
" 1172613,\n",
" 539009,\n",
" 5806,\n",
" 12415,\n",
" 5735,\n",
" 4084,\n",
" 380753\n",
" ],\n",
" \"class_frequency\": [\n",
" 1.094926089923499,\n",
" 54.695602244332605,\n",
" 25.141646792347927,\n",
" 0.2708162596104556,\n",
" 0.5790878165800561,\n",
" 0.26750452098965943,\n",
" 0.19049493700466769,\n",
" 17.759921339211125\n",
" ],\n",
" \"bbox\": [\n",
" 51449998,\n",
" 51500002,\n",
" 543400000,\n",
" 543450003\n",
" ]\n",
" },\n",
" \"geometry\": {\n",
" \"type\": \"Polygon\",\n",
" \"coordinates\": [\n",
" [\n",
" [\n",
" 51449998,\n",
" 543400000\n",
" ],\n",
" [\n",
" 51500002,\n",
" 543400000\n",
" ],\n",
" [\n",
" 51500002,\n",
" 543450003\n",
" ],\n",
" [\n",
" 51500002,\n",
" 543400000\n",
" ]\n",
" ]\n",
" ]\n",
" }\n",
" },\n",
" {\n",
" \"type\": \"Feature\",\n",
" \"properties\": {\n",
" \"id\": \"5165_54395\",\n",
" \"name\": \"5165_54395\",\n",
" \"featureclass\": \"LIDAR\",\n",
" \"LAZ Metadata\": \"null\",\n",
" \"onlink\": \"https://geonb.snb.ca/li/\",\n",
" \"histogram of classification of points\": [\n",
" {\n",
" \"name\": \"never classified\",\n",
" \"label\": 0,\n",
" \"count\": 6566\n",
" },\n",
" {\n",
" \"name\": \"unclassified\",\n",
" \"label\": 1,\n",
" \"count\": 1007678\n",
" },\n",
" {\n",
" \"name\": \"ground\",\n",
" \"label\": 2,\n",
" \"count\": 1049759\n",
" },\n",
" {\n",
" \"name\": \"low vegetation\",\n",
" \"label\": 3,\n",
" \"count\": 18041\n",
" },\n",
" {\n",
" \"name\": \"medium vegetation\",\n",
" \"label\": 4,\n",
" \"count\": 1084\n",
" },\n",
" {\n",
" \"name\": \"high vegetation\",\n",
" \"label\": 5,\n",
" \"count\": 114\n",
" },\n",
" {\n",
" \"name\": \"building\",\n",
" \"label\": 6,\n",
" \"count\": 7566\n",
" },\n",
" {\n",
" \"name\": \"noise\",\n",
" \"label\": 7,\n",
" \"count\": 75\n",
" },\n",
" {\n",
" \"name\": \"keypoint\",\n",
" \"label\": 8,\n",
" \"count\": 351216\n",
" }\n",
" ],\n",
" \"class_names\": [\n",
" \"never classified\",\n",
" \"unclassified\",\n",
" \"ground\",\n",
" \"low vegetation\",\n",
" \"medium vegetation\",\n",
" \"high vegetation\",\n",
" \"building\",\n",
" \"noise\",\n",
" \"keypoint\"\n",
" ],\n",
" \"class_labels\": [\n",
" 0,\n",
" 1,\n",
" 2,\n",
" 3,\n",
" 4,\n",
" 5,\n",
" 6,\n",
" 7,\n",
" 8\n",
" ],\n",
" \"class_count\": [\n",
" 6566,\n",
" 1007678,\n",
" 1049759,\n",
" 18041,\n",
" 1084,\n",
" 114,\n",
" 7566,\n",
" 75,\n",
" 351216\n",
" ],\n",
" \"class_frequency\": [\n",
" 0.26886706886166367,\n",
" 41.262782548946625,\n",
" 42.985931364780875,\n",
" 0.7387497394659267,\n",
" 0.04438804487451164,\n",
" 0.004668115420382221,\n",
" 0.3098154497422094,\n",
" 0.003071128566040935,\n",
" 14.381726539341772\n",
" ],\n",
" \"bbox\": [\n",
" 51650002,\n",
" 51700008,\n",
" 543950002,\n",
" 544000005\n",
" ]\n",
" },\n",
" \"geometry\": {\n",
" \"type\": \"Polygon\",\n",
" \"coordinates\": [\n",
" [\n",
" [\n",
" 51650002,\n",
" 543950002\n",
" ],\n",
" [\n",
" 51700008,\n",
" 543950002\n",
" ],\n",
" [\n",
" 51700008,\n",
" 544000005\n",
" ],\n",
" [\n",
" 51700008,\n",
" 543950002\n",
" ]\n",
" ]\n",
" ]\n",
" }\n",
" },\n",
" {\n",
" \"type\": \"Feature\",\n",
" \"properties\": {\n",
" \"id\": \"5130_54355\",\n",
" \"name\": \"5130_54355\",\n",
" \"featureclass\": \"LIDAR\",\n",
" \"LAZ Metadata\": \"null\",\n",
" \"onlink\": \"https://geonb.snb.ca/li/\",\n",
" \"histogram of classification of points\": [\n",
" {\n",
" \"name\": \"never classified\",\n",
" \"label\": 0,\n",
" \"count\": 4459\n",
" },\n",
" {\n",
" \"name\": \"unclassified\",\n",
" \"label\": 1,\n",
" \"count\": 1324141\n",
" },\n",
" {\n",
" \"name\": \"ground\",\n",
" \"label\": 2,\n",
" \"count\": 731928\n",
" },\n",
" {\n",
" \"name\": \"low vegetation\",\n",
" \"label\": 3,\n",
" \"count\": 13066\n",
" },\n",
" {\n",
" \"name\": \"medium vegetation\",\n",
" \"label\": 4,\n",
" \"count\": 68987\n",
" },\n",
" {\n",
" \"name\": \"high vegetation\",\n",
" \"label\": 5,\n",
" \"count\": 9520\n",
" },\n",
" {\n",
" \"name\": \"building\",\n",
" \"label\": 6,\n",
" \"count\": 8\n",
" },\n",
" {\n",
" \"name\": \"noise\",\n",
" \"label\": 7,\n",
" \"count\": 756\n",
" },\n",
" {\n",
" \"name\": \"keypoint\",\n",
" \"label\": 8,\n",
" \"count\": 6970\n",
" }\n",
" ],\n",
" \"class_names\": [\n",
" \"never classified\",\n",
" \"unclassified\",\n",
" \"ground\",\n",
" \"low vegetation\",\n",
" \"medium vegetation\",\n",
" \"high vegetation\",\n",
" \"building\",\n",
" \"noise\",\n",
" \"keypoint\"\n",
" ],\n",
" \"class_labels\": [\n",
" 0,\n",
" 1,\n",
" 2,\n",
" 3,\n",
" 4,\n",
" 5,\n",
" 6,\n",
" 7,\n",
" 8\n",
" ],\n",
" \"class_count\": [\n",
" 4459,\n",
" 1324141,\n",
" 731928,\n",
" 13066,\n",
" 68987,\n",
" 9520,\n",
" 8,\n",
" 756,\n",
" 6970\n",
" ],\n",
" \"class_frequency\": [\n",
" 0.20645095574430453,\n",
" 61.307507286436234,\n",
" 33.88814423324004,\n",
" 0.6049536191422029,\n",
" 3.1940865853178595,\n",
" 0.4407744110082483,\n",
" 0.0003703986647128137,\n",
" 0.035002673815360895,\n",
" 0.3227098366310389\n",
" ],\n",
" \"bbox\": [\n",
" 51300000,\n",
" 51350002,\n",
" 543549999,\n",
" 543600003\n",
" ]\n",
" },\n",
" \"geometry\": {\n",
" \"type\": \"Polygon\",\n",
" \"coordinates\": [\n",
" [\n",
" [\n",
" 51300000,\n",
" 543549999\n",
" ],\n",
" [\n",
" 51350002,\n",
" 543549999\n",
" ],\n",
" [\n",
" 51350002,\n",
" 543600003\n",
" ],\n",
" [\n",
" 51350002,\n",
" 543549999\n",
" ]\n",
" ]\n",
" ]\n",
" }\n",
" },\n",
" {\n",
" \"type\": \"Feature\",\n",
" \"properties\": {\n",
" \"id\": \"5190_54400\",\n",
" \"name\": \"5190_54400\",\n",
" \"featureclass\": \"LIDAR\",\n",
" \"LAZ Metadata\": \"null\",\n",
" \"onlink\": \"https://geonb.snb.ca/li/\",\n",
" \"histogram of classification of points\": [\n",
" {\n",
" \"name\": \"never classified\",\n",
" \"label\": 0,\n",
" \"count\": 8380\n",
" },\n",
" {\n",
" \"name\": \"unclassified\",\n",
" \"label\": 1,\n",
" \"count\": 1240344\n",
" },\n",
" {\n",
" \"name\": \"ground\",\n",
" \"label\": 2,\n",
" \"count\": 506300\n",
" },\n",
" {\n",
" \"name\": \"low vegetation\",\n",
" \"label\": 3,\n",
" \"count\": 17362\n",
" },\n",
" {\n",
" \"name\": \"medium vegetation\",\n",
" \"label\": 4,\n",
" \"count\": 2528\n",
" },\n",
" {\n",
" \"name\": \"high vegetation\",\n",
" \"label\": 5,\n",
" \"count\": 2484\n",
" },\n",
" {\n",
" \"name\": \"building\",\n",
" \"label\": 6,\n",
" \"count\": 14436\n",
" },\n",
" {\n",
" \"name\": \"noise\",\n",
" \"label\": 7,\n",
" \"count\": 1713\n",
" },\n",
" {\n",
" \"name\": \"keypoint\",\n",
" \"label\": 8,\n",
" \"count\": 344987\n",
" }\n",
" ],\n",
" \"class_names\": [\n",
" \"never classified\",\n",
" \"unclassified\",\n",
" \"ground\",\n",
" \"low vegetation\",\n",
" \"medium vegetation\",\n",
" \"high vegetation\",\n",
" \"building\",\n",
" \"noise\",\n",
" \"keypoint\"\n",
" ],\n",
" \"class_labels\": [\n",
" 0,\n",
" 1,\n",
" 2,\n",
" 3,\n",
" 4,\n",
" 5,\n",
" 6,\n",
" 7,\n",
" 8\n",
" ],\n",
" \"class_count\": [\n",
" 8380,\n",
" 1240344,\n",
" 506300,\n",
" 17362,\n",
" 2528,\n",
" 2484,\n",
" 14436,\n",
" 1713,\n",
" 344987\n",
" ],\n",
" \"class_frequency\": [\n",
" 0.39185722555732105,\n",
" 57.999732527048906,\n",
" 23.675097052466786,\n",
" 0.8118645763873756,\n",
" 0.1182118217433064,\n",
" 0.11615433750410328,\n",
" 0.6750418744803683,\n",
" 0.08010160231261229,\n",
" 16.131938982499225\n",
" ],\n",
" \"bbox\": [\n",
" 51900002,\n",
" 51950005,\n",
" 544000002,\n",
" 544050005\n",
" ]\n",
" },\n",
" \"geometry\": {\n",
" \"type\": \"Polygon\",\n",
" \"coordinates\": [\n",
" [\n",
" [\n",
" 51900002,\n",
" 544000002\n",
" ],\n",
" [\n",
" 51950005,\n",
" 544000002\n",
" ],\n",
" [\n",
" 51950005,\n",
" 544050005\n",
" ],\n",
" [\n",
" 51950005,\n",
" 544000002\n",
" ]\n",
" ]\n",
" ]\n",
" }\n",
" },\n",
" {\n",
" \"type\": \"Feature\",\n",
" \"properties\": {\n",
" \"id\": \"5145_54460\",\n",
" \"name\": \"5145_54460\",\n",
" \"featureclass\": \"LIDAR\",\n",
" \"LAZ Metadata\": \"null\",\n",
" \"onlink\": \"https://geonb.snb.ca/li/\",\n",
" \"histogram of classification of points\": [\n",
" {\n",
" \"name\": \"never classified\",\n",
" \"label\": 0,\n",
" \"count\": 4413\n",
" },\n",
" {\n",
" \"name\": \"unclassified\",\n",
" \"label\": 1,\n",
" \"count\": 1093689\n",
" },\n",
" {\n",
" \"name\": \"ground\",\n",
" \"label\": 2,\n",
" \"count\": 580854\n",
" },\n",
" {\n",
" \"name\": \"low vegetation\",\n",
" \"label\": 3,\n",
" \"count\": 15563\n",
" },\n",
" {\n",
" \"name\": \"medium vegetation\",\n",
" \"label\": 4,\n",
" \"count\": 1464\n",
" },\n",
" {\n",
" \"name\": \"high vegetation\",\n",
" \"label\": 5,\n",
" \"count\": 201\n",
" },\n",
" {\n",
" \"name\": \"building\",\n",
" \"label\": 6,\n",
" \"count\": 8646\n",
" },\n",
" {\n",
" \"name\": \"noise\",\n",
" \"label\": 7,\n",
" \"count\": 700\n",
" },\n",
" {\n",
" \"name\": \"keypoint\",\n",
" \"label\": 8,\n",
" \"count\": 488681\n",
" }\n",
" ],\n",
" \"class_names\": [\n",
" \"never classified\",\n",
" \"unclassified\",\n",
" \"ground\",\n",
" \"low vegetation\",\n",
" \"medium vegetation\",\n",
" \"high vegetation\",\n",
" \"building\",\n",
" \"noise\",\n",
" \"keypoint\"\n",
" ],\n",
" \"class_labels\": [\n",
" 0,\n",
" 1,\n",
" 2,\n",
" 3,\n",
" 4,\n",
" 5,\n",
" 6,\n",
" 7,\n",
" 8\n",
" ],\n",
" \"class_count\": [\n",
" 4413,\n",
" 1093689,\n",
" 580854,\n",
" 15563,\n",
" 1464,\n",
" 201,\n",
" 8646,\n",
" 700,\n",
" 488681\n",
" ],\n",
" \"class_frequency\": [\n",
" 0.2011201292856521,\n",
" 49.84429482852834,\n",
" 26.472112299136224,\n",
" 0.7092754525430781,\n",
" 0.0667210218160423,\n",
" 0.009160468159169743,\n",
" 0.3940368542496597,\n",
" 0.031902127917506566,\n",
" 22.271376818364324\n",
" ],\n",
" \"bbox\": [\n",
" 51450001,\n",
" 51500004,\n",
" 544599999,\n",
" 544650002\n",
" ]\n",
" },\n",
" \"geometry\": {\n",
" \"type\": \"Polygon\",\n",
" \"coordinates\": [\n",
" [\n",
" [\n",
" 51450001,\n",
" 544599999\n",
" ],\n",
" [\n",
" 51500004,\n",
" 544599999\n",
" ],\n",
" [\n",
" 51500004,\n",
" 544650002\n",
" ],\n",
" [\n",
" 51500004,\n",
" 544599999\n",
" ]\n",
" ]\n",
" ]\n",
" }\n",
" },\n",
" {\n",
" \"type\": \"Feature\",\n",
" \"properties\": {\n",
" \"id\": \"5105_54405\",\n",
" \"name\": \"5105_54405\",\n",
" \"featureclass\": \"LIDAR\",\n",
" \"LAZ Metadata\": \"null\",\n",
" \"onlink\": \"https://geonb.snb.ca/li/\",\n",
" \"histogram of classification of points\": [\n",
" {\n",
" \"name\": \"never classified\",\n",
" \"label\": 0,\n",
" \"count\": 11816\n",
" },\n",
" {\n",
" \"name\": \"unclassified\",\n",
" \"label\": 1,\n",
" \"count\": 1109350\n",
" },\n",
" {\n",
" \"name\": \"ground\",\n",
" \"label\": 2,\n",
" \"count\": 573366\n",
" },\n",
" {\n",
" \"name\": \"low vegetation\",\n",
" \"label\": 3,\n",
" \"count\": 23246\n",
" },\n",
" {\n",
" \"name\": \"medium vegetation\",\n",
" \"label\": 4,\n",
" \"count\": 1538\n",
" },\n",
" {\n",
" \"name\": \"high vegetation\",\n",
" \"label\": 5,\n",
" \"count\": 2567\n",
" },\n",
" {\n",
" \"name\": \"building\",\n",
" \"label\": 6,\n",
" \"count\": 17241\n",
" },\n",
" {\n",
" \"name\": \"noise\",\n",
" \"label\": 7,\n",
" \"count\": 1735\n",
" },\n",
" {\n",
" \"name\": \"keypoint\",\n",
" \"label\": 8,\n",
" \"count\": 377572\n",
" }\n",
" ],\n",
" \"class_names\": [\n",
" \"never classified\",\n",
" \"unclassified\",\n",
" \"ground\",\n",
" \"low vegetation\",\n",
" \"medium vegetation\",\n",
" \"high vegetation\",\n",
" \"building\",\n",
" \"noise\",\n",
" \"keypoint\"\n",
" ],\n",
" \"class_labels\": [\n",
" 0,\n",
" 1,\n",
" 2,\n",
" 3,\n",
" 4,\n",
" 5,\n",
" 6,\n",
" 7,\n",
" 8\n",
" ],\n",
" \"class_count\": [\n",
" 11816,\n",
" 1109350,\n",
" 573366,\n",
" 23246,\n",
" 1538,\n",
" 2567,\n",
" 17241,\n",
" 1735,\n",
" 377572\n",
" ],\n",
" \"class_frequency\": [\n",
" 0.5577712939434893,\n",
" 52.36658640286136,\n",
" 27.065597132972467,\n",
" 1.0973215554341869,\n",
" 0.07260090132744469,\n",
" 0.12117458628579358,\n",
" 0.8138570479756009,\n",
" 0.08190023654298866,\n",
" 17.823190842656665\n",
" ],\n",
" \"bbox\": [\n",
" 51050000,\n",
" 51100004,\n",
" 544049998,\n",
" 544100001\n",
" ]\n",
" },\n",
" \"geometry\": {\n",
" \"type\": \"Polygon\",\n",
" \"coordinates\": [\n",
" [\n",
" [\n",
" 51050000,\n",
" 544049998\n",
" ],\n",
" [\n",
" 51100004,\n",
" 544049998\n",
" ],\n",
" [\n",
" 51100004,\n",
" 544100001\n",
" ],\n",
" [\n",
" 51100004,\n",
" 544049998\n",
" ]\n",
" ]\n",
" ]\n",
" }\n",
" },\n",
" {\n",
" \"type\": \"Feature\",\n",
" \"properties\": {\n",
" \"id\": \"5145_54405\",\n",
" \"name\": \"5145_54405\",\n",
" \"featureclass\": \"LIDAR\",\n",
" \"LAZ Metadata\": \"null\",\n",
" \"onlink\": \"https://geonb.snb.ca/li/\",\n",
" \"histogram of classification of points\": [\n",
" {\n",
" \"name\": \"never classified\",\n",
" \"label\": 0,\n",
" \"count\": 4806\n",
" },\n",
" {\n",
" \"name\": \"unclassified\",\n",
" \"label\": 1,\n",
" \"count\": 1196716\n",
" },\n",
" {\n",
" \"name\": \"ground\",\n",
" \"label\": 2,\n",
" \"count\": 897971\n",
" },\n",
" {\n",
" \"name\": \"low vegetation\",\n",
" \"label\": 3,\n",
" \"count\": 2555\n",
" },\n",
" {\n",
" \"name\": \"medium vegetation\",\n",
" \"label\": 4,\n",
" \"count\": 11155\n",
" },\n",
" {\n",
" \"name\": \"high vegetation\",\n",
" \"label\": 5,\n",
" \"count\": 3022\n",
" },\n",
" {\n",
" \"name\": \"building\",\n",
" \"label\": 6,\n",
" \"count\": 6164\n",
" },\n",
" {\n",
" \"name\": \"noise\",\n",
" \"label\": 7,\n",
" \"count\": 1442\n",
" },\n",
" {\n",
" \"name\": \"keypoint\",\n",
" \"label\": 8,\n",
" \"count\": 38591\n",
" }\n",
" ],\n",
" \"class_names\": [\n",
" \"never classified\",\n",
" \"unclassified\",\n",
" \"ground\",\n",
" \"low vegetation\",\n",
" \"medium vegetation\",\n",
" \"high vegetation\",\n",
" \"building\",\n",
" \"noise\",\n",
" \"keypoint\"\n",
" ],\n",
" \"class_labels\": [\n",
" 0,\n",
" 1,\n",
" 2,\n",
" 3,\n",
" 4,\n",
" 5,\n",
" 6,\n",
" 7,\n",
" 8\n",
" ],\n",
" \"class_count\": [\n",
" 4806,\n",
" 1196716,\n",
" 897971,\n",
" 2555,\n",
" 11155,\n",
" 3022,\n",
" 6164,\n",
" 1442,\n",
" 38591\n",
" ],\n",
" \"class_frequency\": [\n",
" 0.22225079101119025,\n",
" 55.34146433952299,\n",
" 41.526168342719416,\n",
" 0.11815455077686038,\n",
" 0.5158567569142378,\n",
" 0.13975070545897147,\n",
" 0.28505074402683656,\n",
" 0.0666844861918719,\n",
" 1.7846192833776202\n",
" ],\n",
" \"bbox\": [\n",
" 51450001,\n",
" 51500005,\n",
" 544050000,\n",
" 544100004\n",
" ]\n",
" },\n",
" \"geometry\": {\n",
" \"type\": \"Polygon\",\n",
" \"coordinates\": [\n",
" [\n",
" [\n",
" 51450001,\n",
" 544050000\n",
" ],\n",
" [\n",
" 51500005,\n",
" 544050000\n",
" ],\n",
" [\n",
" 51500005,\n",
" 544100004\n",
" ],\n",
" [\n",
" 51500005,\n",
" 544050000\n",
" ]\n",
" ]\n",
" ]\n",
" }\n",
" },\n",
" {\n",
" \"type\": \"Feature\",\n",
" \"properties\": {\n",
" \"id\": \"5145_54470\",\n",
" \"name\": \"5145_54470\",\n",
" \"featureclass\": \"LIDAR\",\n",
" \"LAZ Metadata\": \"null\",\n",
" \"onlink\": \"https://geonb.snb.ca/li/\",\n",
" \"histogram of classification of points\": [\n",
" {\n",
" \"name\": \"never classified\",\n",
" \"label\": 0,\n",
" \"count\": 5691\n",
" },\n",
" {\n",
" \"name\": \"unclassified\",\n",
" \"label\": 1,\n",
" \"count\": 1075411\n",
" },\n",
" {\n",
" \"name\": \"ground\",\n",
" \"label\": 2,\n",
" \"count\": 573931\n",
" },\n",
" {\n",
" \"name\": \"low vegetation\",\n",
" \"label\": 3,\n",
" \"count\": 29700\n",
" },\n",
" {\n",
" \"name\": \"medium vegetation\",\n",
" \"label\": 4,\n",
" \"count\": 559\n",
" },\n",
" {\n",
" \"name\": \"high vegetation\",\n",
" \"label\": 5,\n",
" \"count\": 1763\n",
" },\n",
" {\n",
" \"name\": \"building\",\n",
" \"label\": 6,\n",
" \"count\": 17420\n",
" },\n",
" {\n",
" \"name\": \"noise\",\n",
" \"label\": 7,\n",
" \"count\": 2305\n",
" },\n",
" {\n",
" \"name\": \"keypoint\",\n",
" \"label\": 8,\n",
" \"count\": 445412\n",
" }\n",
" ],\n",
" \"class_names\": [\n",
" \"never classified\",\n",
" \"unclassified\",\n",
" \"ground\",\n",
" \"low vegetation\",\n",
" \"medium vegetation\",\n",
" \"high vegetation\",\n",
" \"building\",\n",
" \"noise\",\n",
" \"keypoint\"\n",
" ],\n",
" \"class_labels\": [\n",
" 0,\n",
" 1,\n",
" 2,\n",
" 3,\n",
" 4,\n",
" 5,\n",
" 6,\n",
" 7,\n",
" 8\n",
" ],\n",
" \"class_count\": [\n",
" 5691,\n",
" 1075411,\n",
" 573931,\n",
" 29700,\n",
" 559,\n",
" 1763,\n",
" 17420,\n",
" 2305,\n",
" 445412\n",
" ],\n",
" \"class_frequency\": [\n",
" 0.2644280807660283,\n",
" 49.96817198465565,\n",
" 26.667276897228497,\n",
" 1.379988402521708,\n",
" 0.025973519091233497,\n",
" 0.08191648328773642,\n",
" 0.80940733912216,\n",
" 0.10710011002735816,\n",
" 20.69573718329963\n",
" ],\n",
" \"bbox\": [\n",
" 51450001,\n",
" 51500004,\n",
" 544699999,\n",
" 544750002\n",
" ]\n",
" },\n",
" \"geometry\": {\n",
" \"type\": \"Polygon\",\n",
" \"coordinates\": [\n",
" [\n",
" [\n",
" 51450001,\n",
" 544699999\n",
" ],\n",
" [\n",
" 51500004,\n",
" 544699999\n",
" ],\n",
" [\n",
" 51500004,\n",
" 544750002\n",
" ],\n",
" [\n",
" 51500004,\n",
" 544699999\n",
" ]\n",
" ]\n",
" ]\n",
" }\n",
" },\n",
" {\n",
" \"type\": \"Feature\",\n",
" \"properties\": {\n",
" \"id\": \"5140_54445\",\n",
" \"name\": \"5140_54445\",\n",
" \"featureclass\": \"LIDAR\",\n",
" \"LAZ Metadata\": \"null\",\n",
" \"onlink\": \"https://geonb.snb.ca/li/\",\n",
" \"histogram of classification of points\": [\n",
" {\n",
" \"name\": \"never classified\",\n",
" \"label\": 0,\n",
" \"count\": 5531\n",
" },\n",
" {\n",
" \"name\": \"unclassified\",\n",
" \"label\": 1,\n",
" \"count\": 1143620\n",
" },\n",
" {\n",
" \"name\": \"ground\",\n",
" \"label\": 2,\n",
" \"count\": 554459\n",
" },\n",
" {\n",
" \"name\": \"low vegetation\",\n",
" \"label\": 3,\n",
" \"count\": 33613\n",
" },\n",
" {\n",
" \"name\": \"medium vegetation\",\n",
" \"label\": 4,\n",
" \"count\": 344\n",
" },\n",
" {\n",
" \"name\": \"high vegetation\",\n",
" \"label\": 5,\n",
" \"count\": 4353\n",
" },\n",
" {\n",
" \"name\": \"building\",\n",
" \"label\": 6,\n",
" \"count\": 19390\n",
" },\n",
" {\n",
" \"name\": \"noise\",\n",
" \"label\": 7,\n",
" \"count\": 1642\n",
" },\n",
" {\n",
" \"name\": \"keypoint\",\n",
" \"label\": 8,\n",
" \"count\": 414408\n",
" }\n",
" ],\n",
" \"class_names\": [\n",
" \"never classified\",\n",
" \"unclassified\",\n",
" \"ground\",\n",
" \"low vegetation\",\n",
" \"medium vegetation\",\n",
" \"high vegetation\",\n",
" \"building\",\n",
" \"noise\",\n",
" \"keypoint\"\n",
" ],\n",
" \"class_labels\": [\n",
" 0,\n",
" 1,\n",
" 2,\n",
" 3,\n",
" 4,\n",
" 5,\n",
" 6,\n",
" 7,\n",
" 8\n",
" ],\n",
" \"class_count\": [\n",
" 5531,\n",
" 1143620,\n",
" 554459,\n",
" 33613,\n",
" 344,\n",
" 4353,\n",
" 19390,\n",
" 1642,\n",
" 414408\n",
" ],\n",
" \"class_frequency\": [\n",
" 0.25402322078112943,\n",
" 52.52323915200059,\n",
" 25.46473711283389,\n",
" 1.5437502296358894,\n",
" 0.01579894918617041,\n",
" 0.19992100525406914,\n",
" 0.8905279788367564,\n",
" 0.07541242605724363,\n",
" 19.032589925414264\n",
" ],\n",
" \"bbox\": [\n",
" 51400000,\n",
" 51450003,\n",
" 544450000,\n",
" 544500002\n",
" ]\n",
" },\n",
" \"geometry\": {\n",
" \"type\": \"Polygon\",\n",
" \"coordinates\": [\n",
" [\n",
" [\n",
" 51400000,\n",
" 544450000\n",
" ],\n",
" [\n",
" 51450003,\n",
" 544450000\n",
" ],\n",
" [\n",
" 51450003,\n",
" 544500002\n",
" ],\n",
" [\n",
" 51450003,\n",
" 544450000\n",
" ]\n",
" ]\n",
" ]\n",
" }\n",
" },\n",
" {\n",
" \"type\": \"Feature\",\n",
" \"properties\": {\n",
" \"id\": \"5165_54390\",\n",
" \"name\": \"5165_54390\",\n",
" \"featureclass\": \"LIDAR\",\n",
" \"LAZ Metadata\": \"null\",\n",
" \"onlink\": \"https://geonb.snb.ca/li/\",\n",
" \"histogram of classification of points\": [\n",
" {\n",
" \"name\": \"never classified\",\n",
" \"label\": 0,\n",
" \"count\": 937227\n",
" },\n",
" {\n",
" \"name\": \"unclassified\",\n",
" \"label\": 1,\n",
" \"count\": 1105627\n",
" },\n",
" {\n",
" \"name\": \"ground\",\n",
" \"label\": 2,\n",
" \"count\": 42878\n",
" },\n",
" {\n",
" \"name\": \"low vegetation\",\n",
" \"label\": 3,\n",
" \"count\": 2948\n",
" },\n",
" {\n",
" \"name\": \"medium vegetation\",\n",
" \"label\": 4,\n",
" \"count\": 803\n",
" },\n",
" {\n",
" \"name\": \"high vegetation\",\n",
" \"label\": 5,\n",
" \"count\": 4002\n",
" },\n",
" {\n",
" \"name\": \"building\",\n",
" \"label\": 6,\n",
" \"count\": 5342\n",
" },\n",
" {\n",
" \"name\": \"noise\",\n",
" \"label\": 7,\n",
" \"count\": 1597\n",
" },\n",
" {\n",
" \"name\": \"keypoint\",\n",
" \"label\": 8,\n",
" \"count\": 45898\n",
" }\n",
" ],\n",
" \"class_names\": [\n",
" \"never classified\",\n",
" \"unclassified\",\n",
" \"ground\",\n",
" \"low vegetation\",\n",
" \"medium vegetation\",\n",
" \"high vegetation\",\n",
" \"building\",\n",
" \"noise\",\n",
" \"keypoint\"\n",
" ],\n",
" \"class_labels\": [\n",
" 0,\n",
" 1,\n",
" 2,\n",
" 3,\n",
" 4,\n",
" 5,\n",
" 6,\n",
" 7,\n",
" 8\n",
" ],\n",
" \"class_count\": [\n",
" 937227,\n",
" 1105627,\n",
" 42878,\n",
" 2948,\n",
" 803,\n",
" 4002,\n",
" 5342,\n",
" 1597,\n",
" 45898\n",
" ],\n",
" \"class_frequency\": [\n",
" 43.6666539317027,\n",
" 51.51263417138715,\n",
" 1.9977431158978007,\n",
" 0.1373512455260674,\n",
" 0.0374128392664288,\n",
" 0.18645850902147953,\n",
" 0.24889089335151018,\n",
" 0.07440635654855143,\n",
" 2.138448937298318\n",
" ],\n",
" \"bbox\": [\n",
" 51650001,\n",
" 51700006,\n",
" 543900002,\n",
" 543950005\n",
" ]\n",
" },\n",
" \"geometry\": {\n",
" \"type\": \"Polygon\",\n",
" \"coordinates\": [\n",
" [\n",
" [\n",
" 51650001,\n",
" 543900002\n",
" ],\n",
" [\n",
" 51700006,\n",
" 543900002\n",
" ],\n",
" [\n",
" 51700006,\n",
" 543950005\n",
" ],\n",
" [\n",
" 51700006,\n",
" 543900002\n",
" ]\n",
" ]\n",
" ]\n",
" }\n",
" }\n",
" ]\n",
"}\n"
],
"name": "stdout"
}
]
}
]
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment