Read the ground points (class 2). Only test if the point is within the grid
index cell, but do not do a pip for the footprint itself.
When all ground point are read for the grid, compute the median Z per cell.
Output the median ground elevation for each polygon in the ground_heights output, which is a vector of floats.
I verified the ground height calculation by comparing the calculated values to a 'reference'. The 'reference' is the median ground height that was calculated from the AHN3 0.5m DTM with footprints with 2m buffer. I checked 30 buildings in a small area in Rotterdam:
Note: I only implemented in the Ept-reader node, because I assume we'll keep using PDAL. For impelemting #4, I think we can take the Ept-node and simply replace the EPT reader with a LAS reader.
Read the ground points (class 2). Only test if the point is within the grid index cell, but do not do a pip for the footprint itself. When all ground point are read for the grid, compute the median Z per cell. Output the median ground elevation for each polygon in the
ground_heights
output, which is a vector of floats.I verified the ground height calculation by comparing the calculated values to a 'reference'. The 'reference' is the median ground height that was calculated from the AHN3 0.5m DTM with footprints with 2m buffer. I checked 30 buildings in a small area in Rotterdam:
The absolute difference in meters between these median heights and the 'reference' is:
'MAX': 0.21, 'MEAN': 0.07, 'MEDIAN': 0.06, 'STD_DEV': 0.05,
So I think its fine :smile:
Note: I only implemented in the Ept-reader node, because I assume we'll keep using PDAL. For impelemting #4, I think we can take the Ept-node and simply replace the EPT reader with a LAS reader.
Closes #5