Reclassify ground points in steep terrain, and with last return sometimes jumping into veg

343 views
Skip to first unread message

kmo...@ucsb.edu

unread,
Apr 5, 2019, 8:13:30 PM4/5/19
to LAStools - efficient tools for LiDAR processing
Hi all

I would like to improve the ground classification for an airborne lidar dataset (from a geiger-mode system), collected from a region with low shrubs and very steep terrain. Unfortunately, the last return in some areas is not on the true ground surface, and instead jumps into the low vegetation. And, the current ground classification does not capture all the ground points. The attached is an example of a cross section through the data, where green represents points that are already classified as ground, and red are unclassified. I would like to: 1) include more actual ground points in the ground classification and 2) prevent the incorrect classification of low vegetation as ground in certain areas. The classification that I would like is easy to pick out by hand, but the area that that needs cleaning is large and it would be extremely time consuming to reclassify these data by hand. 

Any ideas on an automated routine(s) that could help clean up these data?  I've tried using standard las_ground routines with various different settings, but they don't seem to help. 

Thanks for any insight.


Kristin 



snip2.png

Martin Isenburg

unread,
Apr 5, 2019, 8:48:01 PM4/5/19
to LAStools - efficient command line tools for LIDAR processing
Hello Kristin,

without access to this data set it will be impossible to help you. Can you post a link to a compressed LAZ file?

Regards,

Martin

Martin Isenburg

unread,
Apr 22, 2019, 1:58:09 PM4/22/19
to LAStools - efficient command line tools for LIDAR processing
Hello Kristin,

thanks for sharing a sample of your Geiger Mode LiDAR data. I renamed the file to "gml_original.laz" and then ran a few different lasground command lines that are all looking much better than the original ground classification that was in the data set that you send me. Below all of the command lines and some of the resulting hillshades. Also the lasinfo report is attached.

>>lasinfo -i gml_original.laz -odix _info -otxt

>>lasview -i gml_original.laz -concavity 10 -kamera 0 -78.2813 -88.0664 -0.0517578 -0.0963542 0.917469 -win 1200 900
  
>>lasground -i gml_original.laz -nature -fine -v -ocut 9 -odix _gnf -olaz
processing file 'gml_original.laz'.
horizontal units are meter and vertical units are meter. nature mode.
reading 6069180 points. step: 5 m, sub: 6, bulge: 1 m, spike: 1+10 m, offset: 0.05 m, stddev: 10 cm ...
took 15.517 sec. finding initial ground points ...
took 0.178 sec. generating initial ground estimate ...
took 0.153 sec. refining ground ...
took 0.468 sec. adding terrain features ...
took 2.895 sec. integrating points 0.05 above ground ...
took 16.163 sec. outputting ...
took 8.299 sec. 250924 points classified as ground.
done with 'gml_gnf.laz'. total time 43.682 sec.
>>lasview -i gml_gnf.laz -concavity 10 -kamera 0 -78.2813 -88.0664 -0.0517578 -0.0963542 0.917469 -win 1200 900

>>lasground -i gml_original.laz -nature -extra_fine -bulge 0.5 -spike 0.5 -v -ocut 9 -odix _gnefb0_5s0_5 -olaz
processing file 'gml_original.laz'.
horizontal units are meter and vertical units are meter. nature mode.
reading 6069180 points. step: 5 m, sub: 7, bulge: 0.5 m, spike: 0.5+5 m, offset: 0.05 m, stddev: 10 cm ...
took 19.586 sec. finding initial ground points ...
took 0.249 sec. generating initial ground estimate ...
took 0.189 sec. refining ground ...
took 0.621 sec. adding terrain features ...
took 2.923 sec. integrating points 0.05 above ground ...
took 15.476 sec. outputting ...
took 8.335 sec. 215904 points classified as ground.
done with 'gml_gnefb0_5s0_5.laz'. total time 47.386 sec.
>>lasview -i gml_gnefb0_5s0_5.laz -concavity 10 -kamera 0 -78.2813 -88.0664 -0.0517578 -0.0963542 0.917469 -win 1200 900

>>lasground -i gml_original.laz -nature -ultra_fine -bulge 0.25 -spike 0.25 -no_stddev -v -ocut 9 -odix _gnufb0_25s0_25_nstd -olaz
processing file 'gml_original.laz'.
horizontal units are meter and vertical units are meter. nature mode.
reading 6069180 points. step: 5 m, sub: 8, bulge: 0.25 m, spike: 0.25+2.5 m, offset: 0.05 m, stddev: 0 cm ...
took 23.473 sec. finding initial ground points ...
took 0.319 sec. generating initial ground estimate ...
took 0.247 sec. refining ground ...
took 0.609 sec. integrating points 0.05 above ground ...
took 14.679 sec. outputting ...
took 8.264 sec. 167252 points classified as ground.
done with 'gml_gnufb0_25s0_25_nstd.laz'. total time 47.601 sec.
>>lasview -i gml_gnufb0_25s0_25_nstd.laz -concavity 10 -kamera 0 -78.2813 -88.0664 -0.0517578 -0.0963542 0.917469 -win 1200 900

>>lasground -i gml_original.laz -nature -fine -bulge 0.25 -spike 0.25 -no_stddev -v -ocut 9 -odix _gnfb0_25s0_25_nstd -olaz
processing file 'gml_original.laz'.
horizontal units are meter and vertical units are meter. nature mode.
reading 6069180 points. step: 5 m, sub: 6, bulge: 0.25 m, spike: 0.25+2.5 m, offset: 0.05 m, stddev: 0 cm ...
took 17.264 sec. finding initial ground points ...
took 0.319 sec. generating initial ground estimate ...
took 0.308 sec. refining ground ...
took 0.634 sec. integrating points 0.05 above ground ...
took 16.767 sec. outputting ...
took 9.103 sec. 154022 points classified as ground.
done with 'gml_gnfb0_25s0_25_nstd.laz'. total time 44.421 sec.
>>lasview -i gml_gnfb0_25s0_25_nstd.laz -concavity 10 -kamera 0 -78.2813 -88.0664 -0.0517578 -0.0963542 0.917469 -win 1200 900

>>lasground -i gml_original.laz -nature -fine -bulge 0.5 -spike 0.25 -no_stddev -v -ocut 9 -odix _gnfb0_5s0_25_nstd -olaz
processing file 'gml_original.laz'.
horizontal units are meter and vertical units are meter. nature mode.
reading 6069180 points. step: 5 m, sub: 6, bulge: 0.5 m, spike: 0.25+2.5 m, offset: 0.05 m, stddev: 0 cm ...
took 16.757 sec. finding initial ground points ...
took 0.189 sec. generating initial ground estimate ...
took 0.267 sec. refining ground ...
took 0.533 sec. integrating points 0.05 above ground ...
took 14.493 sec. outputting ...
took 9.241 sec. 163051 points classified as ground.
done with 'gml_gnfb0_5s0_25_nstd.laz'. total time 41.492 sec.
>>lasview -i gml_gnfb0_5s0_25_nstd.laz -concavity 10 -kamera 0 -78.2813 -88.0664 -0.0517578 -0.0963542 0.917469 -win 1200 900

>>lasground -i gml_original.laz -nature -fine -bulge 0.75 -spike 0.1 -no_stddev -v -ocut 9 -odix _gnfb0_75s0_1_nstd -olaz
processing file 'gml_original.laz'.
horizontal units are meter and vertical units are meter. nature mode.
reading 6069180 points. step: 5 m, sub: 6, bulge: 0.75 m, spike: 0.1+1 m, offset: 0.05 m, stddev: 0 cm ...
took 15.514 sec. finding initial ground points ...
took 0.177 sec. generating initial ground estimate ...
took 0.151 sec. refining ground ...
took 0.449 sec. integrating points 0.05 above ground ...
took 11.238 sec. outputting ...
took 8.468 sec. 96805 points classified as ground.
done with 'gml_gnfb0_75s0_1_nstd.laz'. total time 36.008 sec.
>>lasview -i gml_gnfb0_75s0_1_nstd.laz -concavity 10 -kamera 0 -78.2813 -88.0664 -0.0517578 -0.0963542 0.917469 -win 1200 900

>>lasground -i gml_original.laz -nature -extra_fine -bulge 0.75 -spike 0.1 -no_stddev -v -ocut 9 -odix _gnefb0_75s0_1_nstd -olaz
processing file 'gml_original.laz'.
horizontal units are meter and vertical units are meter. nature mode.
reading 6069180 points. step: 5 m, sub: 7, bulge: 0.75 m, spike: 0.1+1 m, offset: 0.05 m, stddev: 0 cm ...
took 19.32 sec. finding initial ground points ...
took 0.245 sec. generating initial ground estimate ...
took 0.261 sec. refining ground ...
took 0.525 sec. integrating points 0.05 above ground ...
took 11.96 sec. outputting ...
took 8.217 sec. 99082 points classified as ground.
done with 'gml_gnefb0_75s0_1_nstd.laz'. total time 40.538 sec.
>>lasview -i gml_gnefb0_75s0_1_nstd.laz -concavity 10 -kamera 0 -78.2813 -88.0664 -0.0517578 -0.0963542 0.917469 -win 1200 900

>>lasground -i gml_original.laz -nature -extra_fine -bulge 0.7 -spike 0.2 -no_stddev -v -ocut 9 -odix _gnefb0_7s0_2_nstd -olaz
processing file 'gml_original.laz'.
horizontal units are meter and vertical units are meter. nature mode.
reading 6069180 points. step: 5 m, sub: 7, bulge: 0.7 m, spike: 0.2+2 m, offset: 0.05 m, stddev: 0 cm ...
took 19.262 sec. finding initial ground points ...
took 0.255 sec. generating initial ground estimate ...
took 0.266 sec. refining ground ...
took 0.602 sec. integrating points 0.05 above ground ...
took 13.825 sec. outputting ...
took 8.333 sec. 152329 points classified as ground.
done with 'gml_gnefb0_7s0_2_nstd.laz'. total time 42.552 sec.
>>lasview -i gml_gnefb0_7s0_2_nstd.laz -concavity 10 -kamera 0 -78.2813 -88.0664 -0.0517578 -0.0963542 0.917469 -win 1200 900

Regards from Costa Rica,

Martin
 
gml_original_info.txt
gml_1_original.jpg
gml_2_gnf.jpg
gml_4_gnufb0_25s0_25_nstd.jpg
gml_7_gnfb0_75s0_1_nstd.jpg
gml_9_gnefb0_7s0_2_nstd.jpg
Reply all
Reply to author
Forward
0 new messages