https://silkmeridiantraining.com/courses/lidar-processing-and-3d-point-clouds-gs-16