<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
  <url>
    <loc>https://www.pythonlidar.com/</loc>
    <changefreq>weekly</changefreq>
    <priority>1.0</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/ground-filtering-dtm-dsm-generation/</loc>
    <lastmod>2026-08-07T14:15:07.052Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.9</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/batch-automation-cloud-integration/</loc>
    <lastmod>2026-08-07T14:15:07.053Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.9</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/lidar-classification-feature-extraction/</loc>
    <lastmod>2026-09-18T09:21:46.080Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.9</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/pdal-pipeline-architecture-execution/</loc>
    <lastmod>2026-08-07T14:58:05.456Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.9</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/point-cloud-data-standards-fundamentals/</loc>
    <lastmod>2026-08-07T14:15:07.052Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.9</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/batch-automation-cloud-integration/airflow-dag-orchestration/</loc>
    <lastmod>2026-08-07T14:58:05.444Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/batch-automation-cloud-integration/aws-batch-processing/</loc>
    <lastmod>2026-08-07T12:57:10.640Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/batch-automation-cloud-integration/dask-distributed-processing/</loc>
    <lastmod>2026-09-18T13:20:30.837Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/batch-automation-cloud-integration/s3-cloud-storage-io/</loc>
    <lastmod>2026-08-07T14:58:05.445Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/batch-automation-cloud-integration/pdal-docker-containers/</loc>
    <lastmod>2026-08-07T12:57:10.641Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/batch-automation-cloud-integration/tile-indexing-and-merging/</loc>
    <lastmod>2026-08-07T14:58:05.445Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/ground-filtering-dtm-dsm-generation/canopy-height-models/</loc>
    <lastmod>2026-08-07T14:58:05.453Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/ground-filtering-dtm-dsm-generation/csf-cloth-simulation-filter/</loc>
    <lastmod>2026-09-18T12:32:13.501Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/ground-filtering-dtm-dsm-generation/contour-generation/</loc>
    <lastmod>2026-09-18T12:36:46.203Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/ground-filtering-dtm-dsm-generation/dtm-raster-generation/</loc>
    <lastmod>2026-08-07T14:58:05.455Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/ground-filtering-dtm-dsm-generation/hillshade-slope-aspect/</loc>
    <lastmod>2026-08-07T14:58:05.455Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/ground-filtering-dtm-dsm-generation/dsm-generation/</loc>
    <lastmod>2026-08-07T12:32:35.844Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/ground-filtering-dtm-dsm-generation/pmf-ground-classification/</loc>
    <lastmod>2026-08-07T14:58:24.470Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/ground-filtering-dtm-dsm-generation/smrf-ground-classification/</loc>
    <lastmod>2026-08-07T12:32:35.846Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/lidar-classification-feature-extraction/building-extraction/</loc>
    <lastmod>2026-09-18T09:21:46.081Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/lidar-classification-feature-extraction/machine-learning-point-classification/</loc>
    <lastmod>2026-09-18T09:21:46.084Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/lidar-classification-feature-extraction/individual-tree-segmentation/</loc>
    <lastmod>2026-09-18T09:21:46.083Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/lidar-classification-feature-extraction/power-line-detection/</loc>
    <lastmod>2026-09-18T09:21:46.088Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/lidar-classification-feature-extraction/water-and-bridge-classification/</loc>
    <lastmod>2026-09-18T09:21:46.089Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/lidar-classification-feature-extraction/point-cloud-segmentation/</loc>
    <lastmod>2026-09-18T09:21:46.086Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/pdal-pipeline-architecture-execution/attribute-mapping/</loc>
    <lastmod>2026-08-07T14:58:05.455Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/pdal-pipeline-architecture-execution/parallel-execution/</loc>
    <lastmod>2026-08-07T12:44:01.197Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/pdal-pipeline-architecture-execution/memory-management/</loc>
    <lastmod>2026-08-07T12:41:54.177Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/pdal-pipeline-architecture-execution/pdal-stage-chaining/</loc>
    <lastmod>2026-08-07T14:58:05.456Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/pdal-pipeline-architecture-execution/pipeline-filtering-logic/</loc>
    <lastmod>2026-08-07T14:58:05.456Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/pdal-pipeline-architecture-execution/pipeline-validation/</loc>
    <lastmod>2026-08-07T14:58:05.457Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/pdal-pipeline-architecture-execution/pipeline-templating-parameterization/</loc>
    <lastmod>2026-09-18T09:23:15.202Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/pdal-pipeline-architecture-execution/programmable-python-filters/</loc>
    <lastmod>2026-08-07T14:15:17.041Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/pdal-pipeline-architecture-execution/spatial-reprojection/</loc>
    <lastmod>2026-08-07T14:58:05.457Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/point-cloud-data-standards-fundamentals/copc-and-cloud-native-formats/</loc>
    <lastmod>2026-08-07T14:13:45.238Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/pdal-pipeline-architecture-execution/streaming-mode-execution/</loc>
    <lastmod>2026-08-07T13:12:54.869Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/point-cloud-data-standards-fundamentals/coordinate-reference-systems/</loc>
    <lastmod>2026-08-07T14:58:05.458Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/point-cloud-data-standards-fundamentals/asprs-classification-codes/</loc>
    <lastmod>2026-08-07T13:03:04.806Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/point-cloud-data-standards-fundamentals/laslaz-file-structure/</loc>
    <lastmod>2026-09-18T08:54:33.969Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/point-cloud-data-standards-fundamentals/laspy-numpy-workflows/</loc>
    <lastmod>2026-09-18T10:21:03.404Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/batch-automation-cloud-integration/airflow-dag-orchestration/orchestrating-pdal-workflows-with-airflow/</loc>
    <lastmod>2026-08-07T12:57:10.639Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/point-cloud-data-standards-fundamentals/metadata-header-sync/</loc>
    <lastmod>2026-08-07T14:58:05.458Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/batch-automation-cloud-integration/airflow-dag-orchestration/retrying-failed-tiles-in-airflow/</loc>
    <lastmod>2026-09-18T13:26:18.539Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/point-cloud-data-standards-fundamentals/vertical-accuracy-assessment/</loc>
    <lastmod>2026-09-18T10:21:03.549Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/batch-automation-cloud-integration/aws-batch-processing/scaling-pdal-tile-processing-with-aws-batch/</loc>
    <lastmod>2026-08-07T13:03:04.798Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/batch-automation-cloud-integration/aws-batch-processing/array-jobs-for-lidar-tiles-in-aws-batch/</loc>
    <lastmod>2026-09-18T13:20:30.836Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/batch-automation-cloud-integration/aws-batch-processing/handling-spot-interruptions-in-pdal-batch-jobs/</loc>
    <lastmod>2026-08-07T14:58:05.444Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/batch-automation-cloud-integration/aws-batch-processing/estimating-cloud-cost-per-lidar-tile/</loc>
    <lastmod>2026-09-18T13:20:30.837Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/batch-automation-cloud-integration/dask-distributed-processing/dask-vs-processpoolexecutor-for-pdal/</loc>
    <lastmod>2026-09-18T13:26:18.551Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/batch-automation-cloud-integration/airflow-dag-orchestration/dynamic-task-mapping-for-lidar-tiles/</loc>
    <lastmod>2026-09-18T13:26:18.514Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/batch-automation-cloud-integration/pdal-docker-containers/building-a-slim-pdal-docker-image/</loc>
    <lastmod>2026-09-18T13:26:18.578Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/batch-automation-cloud-integration/dask-distributed-processing/tracking-tile-progress-and-failures-in-dask/</loc>
    <lastmod>2026-09-18T13:20:30.838Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/point-cloud-data-standards-fundamentals/point-density-metrics/</loc>
    <lastmod>2026-08-07T13:03:04.808Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/batch-automation-cloud-integration/pdal-docker-containers/running-pdal-pipelines-in-docker/</loc>
    <lastmod>2026-08-07T14:58:05.445Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/batch-automation-cloud-integration/dask-distributed-processing/processing-lidar-tiles-with-dask-distributed/</loc>
    <lastmod>2026-09-18T13:26:18.564Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/batch-automation-cloud-integration/s3-cloud-storage-io/configuring-gdal-vsis3-for-fast-point-cloud-reads/</loc>
    <lastmod>2026-08-07T14:34:00.778Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/batch-automation-cloud-integration/pdal-docker-containers/pinning-pdal-versions-with-conda-lock/</loc>
    <lastmod>2026-09-18T13:20:30.838Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/batch-automation-cloud-integration/s3-cloud-storage-io/streaming-laz-from-s3-with-pdal/</loc>
    <lastmod>2026-08-07T13:03:04.799Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/batch-automation-cloud-integration/s3-cloud-storage-io/reading-usgs-3dep-lidar-from-public-cloud-storage/</loc>
    <lastmod>2026-09-18T13:20:30.838Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/batch-automation-cloud-integration/s3-cloud-storage-io/writing-cloud-optimized-geotiffs-to-s3/</loc>
    <lastmod>2026-08-07T12:57:10.642Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/batch-automation-cloud-integration/tile-indexing-and-merging/buffered-tiling-to-avoid-edge-artefacts/</loc>
    <lastmod>2026-08-07T14:36:59.086Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/batch-automation-cloud-integration/tile-indexing-and-merging/building-a-tile-index-with-pdal-tindex/</loc>
    <lastmod>2026-08-07T14:36:59.086Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/batch-automation-cloud-integration/tile-indexing-and-merging/making-tile-outputs-idempotent/</loc>
    <lastmod>2026-09-18T13:20:30.839Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/batch-automation-cloud-integration/tile-indexing-and-merging/retiling-flightline-files-into-a-grid/</loc>
    <lastmod>2026-09-18T13:26:18.591Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/ground-filtering-dtm-dsm-generation/canopy-height-models/computing-canopy-cover-from-lidar/</loc>
    <lastmod>2026-09-18T12:49:38.640Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/ground-filtering-dtm-dsm-generation/canopy-height-models/building-a-pit-free-canopy-height-model/</loc>
    <lastmod>2026-09-18T12:49:38.640Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/batch-automation-cloud-integration/tile-indexing-and-merging/merging-processed-tiles-into-one-laz/</loc>
    <lastmod>2026-08-07T14:58:05.445Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/ground-filtering-dtm-dsm-generation/csf-cloth-simulation-filter/csf-vs-smrf-for-forested-ground/</loc>
    <lastmod>2026-09-18T12:49:38.641Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/ground-filtering-dtm-dsm-generation/canopy-height-models/computing-height-above-ground-with-filters-hag-nn/</loc>
    <lastmod>2026-08-07T14:58:05.453Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/ground-filtering-dtm-dsm-generation/csf-cloth-simulation-filter/classifying-ground-with-filters-csf/</loc>
    <lastmod>2026-09-18T12:49:38.641Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/ground-filtering-dtm-dsm-generation/canopy-height-models/extracting-individual-tree-heights-from-a-chm/</loc>
    <lastmod>2026-08-07T14:34:00.778Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/ground-filtering-dtm-dsm-generation/csf-cloth-simulation-filter/tuning-csf-cloth-resolution-and-rigidness/</loc>
    <lastmod>2026-09-18T12:49:38.642Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/ground-filtering-dtm-dsm-generation/dsm-generation/removing-pits-and-spikes-from-a-dsm/</loc>
    <lastmod>2026-09-18T12:49:38.642Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/ground-filtering-dtm-dsm-generation/dsm-generation/building-a-dsm-from-first-returns/</loc>
    <lastmod>2026-08-07T12:32:35.843Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/ground-filtering-dtm-dsm-generation/canopy-height-models/rasterizing-a-canopy-height-model-from-hag/</loc>
    <lastmod>2026-08-07T14:58:05.454Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/ground-filtering-dtm-dsm-generation/dsm-generation/building-a-normalized-dsm/</loc>
    <lastmod>2026-09-18T12:44:40.565Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/ground-filtering-dtm-dsm-generation/dsm-generation/dtm-vs-dsm-which-surface-model/</loc>
    <lastmod>2026-08-07T12:32:35.844Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/ground-filtering-dtm-dsm-generation/contour-generation/exporting-contours-to-geopackage/</loc>
    <lastmod>2026-09-18T12:53:10.181Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/ground-filtering-dtm-dsm-generation/hillshade-slope-aspect/computing-terrain-roughness-and-tpi/</loc>
    <lastmod>2026-09-18T12:49:38.643Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/ground-filtering-dtm-dsm-generation/contour-generation/smoothing-a-lidar-dtm-before-contouring/</loc>
    <lastmod>2026-09-18T12:49:38.641Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/ground-filtering-dtm-dsm-generation/hillshade-slope-aspect/exporting-hillshade-from-a-lidar-dtm/</loc>
    <lastmod>2026-08-07T12:38:21.982Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/ground-filtering-dtm-dsm-generation/contour-generation/generating-contours-from-a-dtm-with-gdal-contour/</loc>
    <lastmod>2026-09-18T12:53:10.202Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/ground-filtering-dtm-dsm-generation/hillshade-slope-aspect/multidirectional-hillshade-for-lidar-dtms/</loc>
    <lastmod>2026-09-18T12:49:38.643Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/ground-filtering-dtm-dsm-generation/dtm-raster-generation/choosing-a-dtm-resolution-from-point-density/</loc>
    <lastmod>2026-09-18T12:49:38.643Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/ground-filtering-dtm-dsm-generation/hillshade-slope-aspect/generating-slope-and-aspect-rasters-with-gdaldem/</loc>
    <lastmod>2026-08-07T14:58:05.455Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/ground-filtering-dtm-dsm-generation/dtm-raster-generation/filling-nodata-voids-in-dtm-rasters/</loc>
    <lastmod>2026-08-07T14:58:05.454Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/ground-filtering-dtm-dsm-generation/dtm-raster-generation/idw-vs-mean-interpolation-for-dtm-gaps/</loc>
    <lastmod>2026-08-07T12:38:21.980Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/ground-filtering-dtm-dsm-generation/dtm-raster-generation/generating-a-dtm-geotiff-with-writers-gdal/</loc>
    <lastmod>2026-08-07T14:58:05.454Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/ground-filtering-dtm-dsm-generation/dtm-raster-generation/building-a-seamless-dtm-mosaic-from-tiles/</loc>
    <lastmod>2026-08-07T14:13:02.054Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/ground-filtering-dtm-dsm-generation/pmf-ground-classification/classifying-ground-with-progressive-morphological-filter/</loc>
    <lastmod>2026-08-07T12:22:14.027Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/ground-filtering-dtm-dsm-generation/smrf-ground-classification/benchmarking-smrf-against-reference-ground-points/</loc>
    <lastmod>2026-08-07T14:34:00.778Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/ground-filtering-dtm-dsm-generation/pmf-ground-classification/tuning-pmf-for-flat-agricultural-terrain/</loc>
    <lastmod>2026-09-18T12:49:38.643Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/ground-filtering-dtm-dsm-generation/pmf-ground-classification/tuning-pmf-window-and-slope/</loc>
    <lastmod>2026-08-07T12:22:14.027Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/ground-filtering-dtm-dsm-generation/smrf-ground-classification/smrf-vs-pmf-for-dense-urban-lidar/</loc>
    <lastmod>2026-08-07T12:32:35.847Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/ground-filtering-dtm-dsm-generation/smrf-ground-classification/tuning-smrf-for-steep-terrain/</loc>
    <lastmod>2026-09-18T12:49:38.643Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/lidar-classification-feature-extraction/building-extraction/detecting-planar-roofs-with-covariance-features/</loc>
    <lastmod>2026-09-18T08:56:52.741Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/ground-filtering-dtm-dsm-generation/smrf-ground-classification/tuning-smrf-for-forested-terrain/</loc>
    <lastmod>2026-08-07T12:47:21.445Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/lidar-classification-feature-extraction/building-extraction/estimating-roof-pitch-and-aspect-from-normals/</loc>
    <lastmod>2026-09-18T08:58:07.826Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/lidar-classification-feature-extraction/individual-tree-segmentation/segmenting-trees-directly-from-points/</loc>
    <lastmod>2026-09-18T09:03:36.046Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/ground-filtering-dtm-dsm-generation/smrf-ground-classification/running-smrf-on-photogrammetric-point-clouds/</loc>
    <lastmod>2026-09-18T13:00:05.512Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/lidar-classification-feature-extraction/individual-tree-segmentation/computing-crown-metrics-per-tree/</loc>
    <lastmod>2026-09-18T09:04:49.424Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/lidar-classification-feature-extraction/building-extraction/extracting-building-footprints-from-lidar/</loc>
    <lastmod>2026-09-18T09:17:36.010Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/lidar-classification-feature-extraction/machine-learning-point-classification/computing-geometric-features-for-classification/</loc>
    <lastmod>2026-09-18T09:17:36.043Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/lidar-classification-feature-extraction/machine-learning-point-classification/evaluating-point-classification-with-a-confusion-matrix/</loc>
    <lastmod>2026-09-18T09:17:36.060Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/lidar-classification-feature-extraction/individual-tree-segmentation/segmenting-trees-with-a-watershed-on-a-chm/</loc>
    <lastmod>2026-09-18T09:02:29.329Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/lidar-classification-feature-extraction/machine-learning-point-classification/training-a-random-forest-point-classifier/</loc>
    <lastmod>2026-09-18T09:17:35.990Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/lidar-classification-feature-extraction/point-cloud-segmentation/extracting-objects-from-segment-labels/</loc>
    <lastmod>2026-09-18T09:08:09.417Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/lidar-classification-feature-extraction/power-line-detection/detecting-power-line-conductors-with-linearity/</loc>
    <lastmod>2026-09-18T09:17:36.093Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/lidar-classification-feature-extraction/point-cloud-segmentation/dbscan-segmentation-with-filters-dbscan/</loc>
    <lastmod>2026-09-18T09:07:03.314Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/lidar-classification-feature-extraction/point-cloud-segmentation/euclidean-segmentation-with-filters-cluster/</loc>
    <lastmod>2026-09-18T09:17:36.077Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/lidar-classification-feature-extraction/power-line-detection/measuring-vegetation-clearance-to-power-lines/</loc>
    <lastmod>2026-09-18T09:01:23.016Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/pdal-pipeline-architecture-execution/attribute-mapping/assigning-classification-with-conditional-filters-assign/</loc>
    <lastmod>2026-09-18T09:39:21.832Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/lidar-classification-feature-extraction/water-and-bridge-classification/classifying-bridge-decks/</loc>
    <lastmod>2026-09-18T09:17:36.124Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/lidar-classification-feature-extraction/water-and-bridge-classification/classifying-water-from-intensity-and-returns/</loc>
    <lastmod>2026-09-18T09:17:35.991Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/lidar-classification-feature-extraction/water-and-bridge-classification/hydro-flattening-water-bodies-in-a-dtm/</loc>
    <lastmod>2026-09-18T09:17:36.140Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/lidar-classification-feature-extraction/power-line-detection/fitting-catenary-curves-to-conductor-points/</loc>
    <lastmod>2026-09-18T09:00:12.974Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/pdal-pipeline-architecture-execution/memory-management/diagnosing-pdal-out-of-memory-failures/</loc>
    <lastmod>2026-08-07T13:23:36.166Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/pdal-pipeline-architecture-execution/memory-management/estimating-pdal-memory-from-point-layout/</loc>
    <lastmod>2026-09-18T10:21:03.399Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/pdal-pipeline-architecture-execution/attribute-mapping/copying-dimensions-with-filters-ferry/</loc>
    <lastmod>2026-09-18T09:48:33.661Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/pdal-pipeline-architecture-execution/attribute-mapping/mapping-custom-attributes-in-pdal-pipelines/</loc>
    <lastmod>2026-08-07T12:44:01.199Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/pdal-pipeline-architecture-execution/memory-management/laz-vs-uncompressed-las-for-iterative-processing/</loc>
    <lastmod>2026-08-07T12:47:21.445Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/pdal-pipeline-architecture-execution/parallel-execution/load-balancing-uneven-lidar-tiles/</loc>
    <lastmod>2026-09-18T09:34:59.358Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/pdal-pipeline-architecture-execution/memory-management/measuring-peak-memory-of-a-pdal-pipeline/</loc>
    <lastmod>2026-09-18T10:21:03.399Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/pdal-pipeline-architecture-execution/parallel-execution/optimizing-pdal-for-multi-core-processing/</loc>
    <lastmod>2026-08-07T13:03:04.800Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/pdal-pipeline-architecture-execution/parallel-execution/parallel-tile-processing-with-processpoolexecutor/</loc>
    <lastmod>2026-08-07T13:23:36.174Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/pdal-pipeline-architecture-execution/attribute-mapping/normalizing-intensity-across-flightlines/</loc>
    <lastmod>2026-09-18T09:48:33.675Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/pdal-pipeline-architecture-execution/parallel-execution/threads-vs-processes-for-pdal-workloads/</loc>
    <lastmod>2026-09-18T10:21:03.400Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/pdal-pipeline-architecture-execution/pdal-stage-chaining/branching-a-pdal-pipeline-with-tags/</loc>
    <lastmod>2026-09-18T09:48:33.705Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/pdal-pipeline-architecture-execution/pdal-stage-chaining/reordering-pdal-stages-for-speed/</loc>
    <lastmod>2026-08-07T14:58:05.456Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/pdal-pipeline-architecture-execution/pdal-stage-chaining/chaining-pdal-stages-for-data-cleaning/</loc>
    <lastmod>2026-08-07T12:41:54.176Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/pdal-pipeline-architecture-execution/pipeline-filtering-logic/applying-statistical-outlier-filters-in-pdal/</loc>
    <lastmod>2026-08-07T13:03:04.800Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/pdal-pipeline-architecture-execution/pipeline-filtering-logic/removing-noise-classes-before-processing/</loc>
    <lastmod>2026-09-18T10:21:03.400Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/pdal-pipeline-architecture-execution/pipeline-filtering-logic/cropping-a-point-cloud-to-a-polygon-boundary/</loc>
    <lastmod>2026-09-18T09:38:03.883Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/pdal-pipeline-architecture-execution/pipeline-filtering-logic/filtering-points-with-filters-expression/</loc>
    <lastmod>2026-09-18T09:48:39.843Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/pdal-pipeline-architecture-execution/pipeline-templating-parameterization/building-pipelines-with-the-python-stage-api/</loc>
    <lastmod>2026-09-18T09:48:33.719Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/pdal-pipeline-architecture-execution/pdal-stage-chaining/merging-multiple-readers-in-one-pipeline/</loc>
    <lastmod>2026-09-18T09:29:58.770Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/pdal-pipeline-architecture-execution/pipeline-validation/checking-pipeline-output-with-pdal-info-stats/</loc>
    <lastmod>2026-09-18T09:48:33.750Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/pdal-pipeline-architecture-execution/pipeline-templating-parameterization/parameterizing-pipelines-with-jinja-templates/</loc>
    <lastmod>2026-09-18T10:21:03.401Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/pdal-pipeline-architecture-execution/pipeline-templating-parameterization/overriding-stage-options-from-the-command-line/</loc>
    <lastmod>2026-09-18T10:21:03.401Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/pdal-pipeline-architecture-execution/pipeline-validation/schema-validating-pipeline-json-before-execution/</loc>
    <lastmod>2026-09-18T09:48:33.781Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/pdal-pipeline-architecture-execution/pipeline-validation/validating-pdal-pipelines-in-ci/</loc>
    <lastmod>2026-08-07T12:47:29.298Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/pdal-pipeline-architecture-execution/programmable-python-filters/debugging-and-profiling-filters-python/</loc>
    <lastmod>2026-08-07T14:34:26.718Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/pdal-pipeline-architecture-execution/programmable-python-filters/passing-numpy-arrays-into-a-pdal-pipeline/</loc>
    <lastmod>2026-09-18T09:48:33.828Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/pdal-pipeline-architecture-execution/pipeline-validation/testing-pdal-pipelines-with-pytest/</loc>
    <lastmod>2026-09-18T10:21:03.401Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/pdal-pipeline-architecture-execution/spatial-reprojection/handling-vertical-datum-transforms-in-pdal/</loc>
    <lastmod>2026-08-07T13:23:36.166Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/pdal-pipeline-architecture-execution/programmable-python-filters/writing-a-filters-python-stage-with-numpy/</loc>
    <lastmod>2026-08-07T13:27:33.754Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/pdal-pipeline-architecture-execution/spatial-reprojection/reprojecting-point-clouds-from-utm-to-wgs84/</loc>
    <lastmod>2026-08-07T12:42:11.174Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/pdal-pipeline-architecture-execution/spatial-reprojection/inspecting-proj-transformations-before-reprojecting/</loc>
    <lastmod>2026-09-18T09:27:54.477Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/pdal-pipeline-architecture-execution/programmable-python-filters/adding-a-new-dimension-from-a-python-filter/</loc>
    <lastmod>2026-08-07T14:58:05.457Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/pdal-pipeline-architecture-execution/streaming-mode-execution/iterating-pdal-arrays-in-chunks-from-python/</loc>
    <lastmod>2026-09-18T10:21:03.402Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/pdal-pipeline-architecture-execution/spatial-reprojection/reprojecting-state-plane-feet-to-metres/</loc>
    <lastmod>2026-09-18T09:48:33.664Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/pdal-pipeline-architecture-execution/streaming-mode-execution/running-a-pdal-pipeline-in-streaming-mode/</loc>
    <lastmod>2026-08-07T13:10:45.769Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/pdal-pipeline-architecture-execution/streaming-mode-execution/which-pdal-filters-break-streaming-mode/</loc>
    <lastmod>2026-09-18T08:32:33.870Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/point-cloud-data-standards-fundamentals/asprs-classification-codes/flagging-overlap-and-withheld-points/</loc>
    <lastmod>2026-09-18T10:21:03.402Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/point-cloud-data-standards-fundamentals/asprs-classification-codes/counting-points-per-class-with-pdal/</loc>
    <lastmod>2026-09-18T10:21:03.430Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/pdal-pipeline-architecture-execution/streaming-mode-execution/splitting-a-blocking-pipeline-into-two-passes/</loc>
    <lastmod>2026-08-07T13:23:36.165Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/point-cloud-data-standards-fundamentals/asprs-classification-codes/remapping-vendor-classification-codes-to-asprs/</loc>
    <lastmod>2026-08-07T14:58:05.457Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/point-cloud-data-standards-fundamentals/asprs-classification-codes/understanding-asprs-classification-codes/</loc>
    <lastmod>2026-08-07T12:50:06.307Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/point-cloud-data-standards-fundamentals/coordinate-reference-systems/fixing-crs-mismatches-in-point-clouds/</loc>
    <lastmod>2026-08-07T14:58:05.457Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/point-cloud-data-standards-fundamentals/coordinate-reference-systems/setting-a-vertical-crs-on-a-point-cloud/</loc>
    <lastmod>2026-08-07T14:13:02.056Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/point-cloud-data-standards-fundamentals/coordinate-reference-systems/reading-the-crs-from-las-wkt-and-geotiff-keys/</loc>
    <lastmod>2026-09-18T10:21:03.417Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/point-cloud-data-standards-fundamentals/copc-and-cloud-native-formats/converting-laz-tiles-to-copc-with-pdal/</loc>
    <lastmod>2026-08-07T14:58:05.458Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/point-cloud-data-standards-fundamentals/copc-and-cloud-native-formats/copc-vs-ept-for-web-delivery/</loc>
    <lastmod>2026-08-07T14:58:05.458Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/point-cloud-data-standards-fundamentals/coordinate-reference-systems/choosing-a-projected-crs-for-a-lidar-project/</loc>
    <lastmod>2026-09-18T10:21:03.402Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/point-cloud-data-standards-fundamentals/copc-and-cloud-native-formats/querying-a-copc-file-by-bounds-and-resolution/</loc>
    <lastmod>2026-08-07T14:34:00.779Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/point-cloud-data-standards-fundamentals/copc-and-cloud-native-formats/reading-copc-in-python-with-laspy/</loc>
    <lastmod>2026-09-18T10:27:23.536Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/point-cloud-data-standards-fundamentals/laslaz-file-structure/how-to-parse-las-headers-with-python/</loc>
    <lastmod>2026-08-07T13:03:04.808Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/point-cloud-data-standards-fundamentals/laslaz-file-structure/reading-and-writing-las-vlrs-with-pdal/</loc>
    <lastmod>2026-08-07T13:23:36.174Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/point-cloud-data-standards-fundamentals/laslaz-file-structure/understanding-las-point-data-record-formats/</loc>
    <lastmod>2026-09-18T10:21:03.460Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/point-cloud-data-standards-fundamentals/laslaz-file-structure/converting-las-to-laz-with-pdal/</loc>
    <lastmod>2026-08-07T12:52:52.448Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/point-cloud-data-standards-fundamentals/laslaz-file-structure/upgrading-las-1-2-files-to-las-1-4/</loc>
    <lastmod>2026-09-18T10:21:03.403Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/point-cloud-data-standards-fundamentals/laspy-numpy-workflows/chunked-reading-of-large-las-files-with-laspy/</loc>
    <lastmod>2026-09-18T10:21:03.403Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/point-cloud-data-standards-fundamentals/laspy-numpy-workflows/laspy-vs-pdal-when-to-use-which/</loc>
    <lastmod>2026-09-18T10:21:03.489Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/point-cloud-data-standards-fundamentals/laspy-numpy-workflows/writing-a-las-file-from-numpy-arrays/</loc>
    <lastmod>2026-09-18T10:05:24.733Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/point-cloud-data-standards-fundamentals/laspy-numpy-workflows/reading-las-into-numpy-with-laspy/</loc>
    <lastmod>2026-09-18T10:21:03.504Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/point-cloud-data-standards-fundamentals/metadata-header-sync/converting-gps-week-time-to-adjusted-standard-time/</loc>
    <lastmod>2026-09-18T10:21:03.404Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/point-cloud-data-standards-fundamentals/metadata-header-sync/syncing-metadata-between-las-and-shapefiles/</loc>
    <lastmod>2026-08-07T14:58:05.458Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/point-cloud-data-standards-fundamentals/point-density-metrics/building-a-point-density-raster-with-pdal/</loc>
    <lastmod>2026-09-18T10:11:22.689Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/point-cloud-data-standards-fundamentals/metadata-header-sync/repairing-stale-las-header-bounds-and-counts/</loc>
    <lastmod>2026-09-18T10:21:03.520Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/point-cloud-data-standards-fundamentals/point-density-metrics/checking-pulse-spacing-against-usgs-quality-levels/</loc>
    <lastmod>2026-09-18T10:21:03.535Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/point-cloud-data-standards-fundamentals/point-density-metrics/measuring-ground-point-density-under-canopy/</loc>
    <lastmod>2026-08-07T14:58:05.459Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/point-cloud-data-standards-fundamentals/vertical-accuracy-assessment/interpolating-lidar-elevations-at-checkpoints/</loc>
    <lastmod>2026-09-18T10:21:03.565Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/point-cloud-data-standards-fundamentals/vertical-accuracy-assessment/computing-rmsez-against-survey-checkpoints/</loc>
    <lastmod>2026-09-18T09:57:07.322Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/point-cloud-data-standards-fundamentals/point-density-metrics/calculating-point-density-for-drone-surveys/</loc>
    <lastmod>2026-08-07T14:58:05.458Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/point-cloud-data-standards-fundamentals/vertical-accuracy-assessment/reporting-nva-and-vva-accuracy/</loc>
    <lastmod>2026-09-18T10:21:03.405Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url><url>
    <loc>https://www.pythonlidar.com/point-cloud-data-standards-fundamentals/vertical-accuracy-assessment/measuring-swath-to-swath-relative-accuracy/</loc>
    <lastmod>2026-09-18T10:21:03.581Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
</urlset>
