Skip to main content

I have an issue currently with lidar data and a project to calculate flood areas. The Lidar data which we have received contains reflections on the water surface (specular reflections) which cause the water surface to have elevations where there are nearby trees and vegetation. In order to create a flood senario, we will therefore not be able to use the water surfaces in the lidar data. How then will we be able to create flooding estimates in the water surface height is not reliable?

I would look into removing the water heights by using a different dataset (water bodies borders?).

I know that here in the Netherlands, the classifying of water bodies is done partially manually.

Alternitavly you could try some of the LAS custom transformers from the FME hub

Hope this helps.


Water surfaces are indeed tricky on Lidar data caused, as you mentionned, by reflection and absorption.

 

However, in addition to geospatial information, intensity values of returned signal are also sensed by lidar. You can either have a NaN (nodata) value due to specular reflexion leading to an absence (or low) of returned signal or, in some cases, a very high value (reaching saturation thershold) due to a complete reflexion on water surface (see this ref).

 

So I suggest that you use this source of information to clean up your data and get an good approximate of water bodies delineation. Mabye an additional filter could be nescessary since some salt pepper effect could result from remote sensing.

 

 


You could tile your lidar and use PointCloudStatisticsCalculator to determine the lowest elevation per tile. Or you cloud follow an approach like this:

1. group your lidar points onto a grid such as 3m x 3m grid (depending on available density) using a PointCloudExpressionEvaluator with the floor function.

2. Use a PointCloudSorter to sort points ascending followed by a PointCloudMerger to combine all the points into one stack per cell.

3. Finally the NumericRasterizer can be used to convert the point cloud to a raster using the lowest values per cell from the sort.

For a similar workflow see this workspace which takes a point cloud and separates the points into a bare earth terrain model and veg / building surface model using the same method: pc-sort-merge-for-dem-class.fmw


Reply