I have the following process for automatically creating building outlines/footprints from Las files and was wondering if anyone can help improve it or has suggestions for other processes to use?
EXPERIMENTS:
A. ArcGIS - Lidardataset tools : while you can see just the building class points you can not create polygon automatically. There is the minimum bounding geometry but as it looks at the dataset as a whole it requires you to manually choose the points for each building.
B. External Lidar Analysis tool by Overwatch - building extraction is a core functionality. http://www.featureanalyst.com/lidar_analyst.htm (No longer active - July 28/2014)
It took approx 8 minutes to create a bare earth (essential) and then extract the buildings. It gives the best results by far, even capturing building under the trees (1&4). This is without even looking at a tutorial as it is a very intuitive interface.
Some issues are it has missed the covered corridors (3) but has correctly left out the open roof (2).
C. LASTOOLS - used lasmerge to merge 4 relevant tiles and then lasclip to extract zone of AOI only.
arcpy.lasboundary("AOI.las","1","buildings","true","true","shp","AOI_buildings.shp","","#","true")
The output was very jagged so I used:
arcpy.SimplifyBuilding_cartography("AOI","AOI_buildings_simplified.shp","4 Meters","0 SquareMeters","NO_CHECK")
and then ran:
arcpy.SimplifyPolygon_cartography("AOI_buildings_simplified","AOI_s.shp","POINT_REMOVE","1 Meters","0 SquareMeters","NO_CHECK","KEEP_COLLAPSED_POINTS")
1 and 2 show the issue areas. Part of it is due to bad lidar classification.
This gives good building lines for long straight edged buildings but if there is overlap by branches or it is a complex building with multiple edges, roofs on multiple levels close to each other etc, manual creation is necersary for any detailed site level work. For general estimation roof shape the process is accurate enough. Process takes less than 10mins total once the process has been finalized.
My Research: https://stackoverflow.com/questions/5037588/simplified-or-smooth-polygons-that-contain-the-original-detailed-polygon and the process suggested by @gromix and What are Definition, Algorithms and Practical Solutions for Concave Hull?