1v.lidar.edgedetection(1)      Grass User's Manual     v.lidar.edgedetection(1)
2
3
4

NAME

6       v.lidar.edgedetection   -  Detects the object’s edges from a LIDAR data
7       set.
8

KEYWORDS

10       vector, LIDAR, edges
11

SYNOPSIS

13       v.lidar.edgedetection
14       v.lidar.edgedetection --help
15       v.lidar.edgedetection  [-e]  input=name  output=name    [ew_step=float]
16       [ns_step=float]      [lambda_g=float]      [tgh=float]      [tgl=float]
17       [theta_g=float]   [lambda_r=float]   [--overwrite]   [--help]   [--ver‐
18       bose]  [--quiet]  [--ui]
19
20   Flags:
21       -e
22           Estimate point density and distance and quit
23           Estimate point density and distance in map units for the input vec‐
24           tor points within the current region extents and quit
25
26       --overwrite
27           Allow output files to overwrite existing files
28
29       --help
30           Print usage summary
31
32       --verbose
33           Verbose module output
34
35       --quiet
36           Quiet module output
37
38       --ui
39           Force launching GUI dialog
40
41   Parameters:
42       input=name [required]
43           Name of input vector map
44           Or data source for direct OGR access
45
46       output=name [required]
47           Name for output vector map
48
49       ew_step=float
50           Length of each spline step in the east-west direction
51           Default: 4 * east-west resolution
52
53       ns_step=float
54           Length of each spline step in the north-south direction
55           Default: 4 * north-south resolution
56
57       lambda_g=float
58           Regularization weight in gradient evaluation
59           Default: 0.01
60
61       tgh=float
62           High gradient threshold for edge classification
63           Default: 6
64
65       tgl=float
66           Low gradient threshold for edge classification
67           Default: 3
68
69       theta_g=float
70           Angle range for same direction detection
71           Default: 0.26
72
73       lambda_r=float
74           Regularization weight in residual evaluation
75           Default: 2
76

DESCRIPTION

78       v.lidar.edgedetection is the first of three steps to filter LiDAR data.
79       The  filter  aims to recognize and extract attached and detached object
80       (such as buildings, bridges, power lines,  trees, etc.)   in  order  to
81       create a Digital Terrain Model.
82
83       In particular, this module detects the edge of each single feature over
84       the terrain surface of a LIDAR point surface. First of all, a  bilinear
85       spline  interpolation  with a Tychonov regularization parameter is per‐
86       formed. The gradient is minimized and the low  Tychonov  regularization
87       parameter brings the interpolated functions as close as possible to the
88       observations. Bicubic spline interpolation with Tychonov regularization
89       is then performed. However, now the curvature is minimized and the reg‐
90       ularization parameter is set to a high value. For each point, an inter‐
91       polated  value is computed from the bicubic surface and an interpolated
92       gradient is computed from the bilinear surface. At each point the  gra‐
93       dient  magnitude  and  the direction of the edge vector are calculated,
94       and the residual between interpolated and observed values is  computed.
95       Two  thresholds are defined on the gradient, a high threshold tgh and a
96       low one tgl. For each point, if the gradient magnitude is greater  than
97       or  equal  to  the  high  threshold and its residual is greater than or
98       equal to zero, it is labeled as an EDGE point.  Similarly  a  point  is
99       labeled  as  being  an  EDGE point if the gradient magnitude is greater
100       than or equal to the low threshold, its residual  is  greater  than  or
101       equal  to  zero, and the gradient to two of eight neighboring points is
102       greater than the high threshold. Other points are  classified  as  TER‐
103       RAIN.
104
105       The length (in mapping units) of each spline step is defined by ew_step
106       for the east-west direction and ns_step for the north-south direction.
107
108       The output will be a vector map in which points has been classified  as
109       TERRAIN,  EDGE  or  UNKNOWN.  This  vector  map  should be the input of
110       v.lidar.growing module.
111

NOTES

113       In this module, an external table will be created which will be  useful
114       for  the  next module of the procedure of LiDAR data filtering. In this
115       table the interpolated height values of each point  will  be  recorded.
116       Also points in the output vector map will be classified as:
117       TERRAIN (cat = 1, layer = 1)
118       EDGE (cat = 2, layer = 1)
119       UNKNOWN (cat = 3, layer = 1)
120       The   final  result  of  the  whole  procedure  (v.lidar.edgedetection,
121       v.lidar.growing, v.lidar.correction) will be a point classification  in
122       four categories:
123       TERRAIN SINGLE PULSE (cat = 1, layer = 2)
124       TERRAIN DOUBLE PULSE (cat = 2, layer = 2)
125       OBJECT SINGLE PULSE (cat = 3, layer = 2)
126       OBJECT DOUBLE PULSE (cat = 4, layer = 2)
127

EXAMPLES

129   Basic edge detection
130       # last return points
131       v.lidar.edgedetection input=vector_last output=edge ew_step=8 ns_step=8 lambda_g=0.5
132
133   Complete workflow
134       # region settings (using an existing raster)
135       g.region raster=elev_lid792_1m
136       # import
137       v.in.lidar -tr input=points.las output=points
138       v.in.lidar -tr input=points.las output=points_first return_filter=first
139       # detection
140       v.lidar.edgedetection input=points output=edge ew_step=8 ns_step=8 lambda_g=0.5
141       v.lidar.growing input=edge output=growing first=points_first
142       v.lidar.correction input=growing output=correction terrain=only_terrain
143       # visualization of selected points
144       # zoom somewhere first, to make it faster
145       d.rast map=orthophoto
146       d.vect map=correction layer=2 cats=2,3,4 color=red size=0.25
147       d.vect map=correction layer=2 cats=1 color=0:128:0 size=0.5
148       # interpolation (this may take some time)
149       v.surf.rst input=only_terrain elevation=terrain
150       # get object points for 3D visualization
151       v.extract input=correction layer=2 cats=2,3,4 output=objects
152
153       Figure  1:  Example output from complete workflow (red: objects, green:
154       terrain)
155
156        Figure 2: 3D visualization of filtered object points (red) and terrain
157       created from terrain points (gray)
158

REFERENCES

160           ·   Antolin,  R. et al., 2006. Digital terrain models determination
161               by LiDAR technology: Po  basin  experimentation.  Bolletino  di
162               Geodesia e Scienze Affini, anno LXV, n. 2, pp. 69-89.
163
164           ·   Brovelli M. A., Cannata M., Longoni U.M., 2004. LIDAR Data Fil‐
165               tering and DTM Interpolation Within GRASS, Transactions in GIS,
166               April  2004,   vol.  8, iss. 2, pp. 155-174(20), Blackwell Pub‐
167               lishing Ltd.
168
169           ·   Brovelli M. A., Cannata M., 2004. Digital Terrain model  recon‐
170               struction in urban areas from airborne laser scanning data: the
171               method and an  example for Pavia  (Northern  Italy).  Computers
172               and Geosciences 30 (2004) pp.325-331
173
174           ·   Brovelli M. A. and Longoni U.M., 2003. Software per il filtrag‐
175               gio di dati LIDAR,  Rivista  dell’Agenzia  del  Territorio,  n.
176               3-2003, pp. 11-22 (ISSN 1593-2192).
177
178           ·   Brovelli M. A., Cannata M. and Longoni U.M., 2002. DTM LIDAR in
179               area urbana, Bollettino SIFET N.2, pp. 7-26.
180
181           ·   Performances of the filter can be seen in the  ISPRS  WG  III/3
182               Comparison  of Filters report by Sithole, G. and Vosselman, G.,
183               2003.
184

SEE ALSO

186         v.lidar.growing,  v.lidar.correction,   v.surf.bspline,   v.surf.rst,
187       v.in.lidar, v.in.ascii
188

AUTHORS

190       Original version of program in GRASS 5.4:
191       Maria  Antonia Brovelli, Massimiliano Cannata, Ulisse Longoni and Mirko
192       Reguzzoni
193       Update for GRASS 6.X:
194       Roberto Antolin and Gonzalo Moreno
195

SOURCE CODE

197       Available at: v.lidar.edgedetection source code (history)
198
199       Main index | Vector index | Topics index | Keywords index  |  Graphical
200       index | Full index
201
202       © 2003-2019 GRASS Development Team, GRASS GIS 7.8.2 Reference Manual
203
204
205
206GRASS 7.8.2                                           v.lidar.edgedetection(1)
Impressum