v.lidar.growing(1grass)

πŸŽ€ NAME πŸŽ€

okay bestie, meet v.lidar.growing β€” literally the GRASS module whose whole job is Building contour determination and Region Growing algorithm for determining the building inside πŸ’…


🌸 KEYWORDS 🌸

vector, LIDAR β€” that's the vibe, that's the lane ✨


✨ SYNOPSIS ✨

v.lidar.growing
v.lidar.growing --help
v.lidar.growing input=name output=name first=name  [tj=float]
[td=float]   [--overwrite]  [--help]  [--verbose]  [--quiet]  [--ui]

🫢 Flags 🫢

  • --overwrite β€” let the output files just bulldoze over any existing files, no cap. πŸ’€
  • --help β€” prints the usage summary, your little cheat sheet πŸŽ€
  • --verbose β€” the module gets chatty and tells you everything it's doing ✨
  • --quiet β€” shhh mode, module output goes silent 🀫
  • --ui β€” force launches the GUI dialog, for when you want the pretty buttons πŸ¦‹

🌈 Parameters 🌈

  • input=name β€” required, bestie. Name of input vector map. Specifically it's the input vector (aka the v.lidar.edgedetection output). πŸ‘‘
  • output=name β€” required. Name for output vector map.
  • first=name β€” required. Name of the first pulse vector map.
  • tj=float β€” Threshold for cell object frequency in region growing. Default: 0.2 πŸ“
  • td=float β€” Threshold for double pulse in region growing. Default: 0.6 πŸ“

πŸ’– DESCRIPTION πŸ’–

So v.lidar.growing is literally the second of three steps to filter LiDAR data. The filter's whole mission is to recognize and extract attached and detached objects (think buildings, bridges, power lines, trees, etc.) so a Digital Terrain Model can exist. πŸ—οΈ

The module identifies which is the internal area of every object on a LiDAR point surface. The classification categories from v.lidar.edgedetection are now rasterized. For each cell, it is evaluated if it (the cell) contains a point with double impulse (that means the difference between the first and last pulse is greater than a given threshold).

Starting from cells classified as OBJECT and with only one pulse, all linked cells get selected and a convex hull algorithm is applied to them. At the same time, the mean of the corresponding heights (the mean edge height) is computed. Points inside the convex hull are classified as OBJECT if their height is greater than or equal to the previously computed mean edge height. And this last step? It only happens in case of high planimetric resolution. periodt. πŸ’…


πŸ“ NOTES πŸ“

⚠️ Listen up: the input data should be the output result of the v.lidar.edgedetection module. Otherwise, it goes to error! fr fr, don't test it. 😭

The output of this module will be the input of the v.lidar.correction module. The output will be a vector map whose points are pre-classified as:

  • TERRAIN SINGLE PULSE (cat = 1, layer = 2)
  • TERRAIN DOUBLE PULSE (cat = 2, layer = 2)
  • OBJECT SINGLE PULSE (cat = 3, layer = 2)
  • OBJECT DOUBLE PULSE (cat = 4, layer = 2)

The final result of the whole procedure (v.lidar.edgedetection, v.lidar.growing, v.lidar.correction) will be a point classification in the same categories as above. πŸ‘‘


πŸ¦‹ EXAMPLES πŸ¦‹

⭐ Basic region growing procedure ⭐

v.lidar.growing input=edge output=growing first=firstpulse

🌸 REFERENCES 🌸

okay the receipts, all of them, no skipping:

Antolin, R. et al., 2006. Digital terrain models determination by LiDAR technology: Po basin experimentation. Bolletino di Geodesia e Scienze Affini, anno LXV, n. 2, pp. 69-89.

Brovelli M. A., Cannata M., Longoni U.M., 2004. LIDAR Data Filtering and DTM Interpolation Within GRASS, Transactions in GIS, April 2004, vol. 8, iss. 2, pp. 155-174(20), Blackwell Publishing Ltd.

Brovelli M. A., Cannata M., 2004. Digital Terrain model reconstruction in urban areas from airborne laser scanning data: the method and an example for Pavia (Northern Italy). Computers and Geosciences 30 (2004) pp.325-331

Brovelli M. A. and Longoni U.M., 2003. Software per il filtraggio di dati LIDAR, Rivista dell?Agenzia del Territorio, n. 3-2003, pp. 11-22 (ISSN 1593-2192).

Brovelli M. A., Cannata M. and Longoni U.M., 2002. DTM LIDAR in area urbana, Bollettino SIFET N.2, pp. 7-26.

Performances of the filter can be seen in the ISPRS WG III/3 Comparison of Filters report by Sithole, G. and Vosselman, G., 2003.


πŸ‘€ SEE ALSO πŸ‘€

v.lidar.edgedetection, v.lidar.correction, v.surf.bspline, v.surf.rst, v.in.pdal, v.in.ascii


πŸ’œ AUTHORS πŸ’œ

Original version of program in GRASS 5.4: Maria Antonia Brovelli, Massimiliano Cannata, Ulisse Longoni and Mirko Reguzzoni

Update for GRASS 6.X: Roberto Antolin and Gonzalo Moreno


πŸ”₯ SOURCE CODE πŸ”₯

Available at: v.lidar.growing source code (history)

Latest change: Friday Apr 17 01:04:26 2026 in commit: 32a143358df26b2e518b03c7e0d79541e8d1e5b1

Main index | Vector index | Topics index | Keywords index | Graphical index | Full index


© 2003-2026 GRASS Development Team, GRASS 8.5.0 Reference Manual 🫢

and that's the whole page bestie β€” v.lidar.growing(1grass) from the GRASS 8.5.0 User's Manual, wrapped at 2026 (that Friday Apr 17 01:04:26 2026 energy 😭), go grow some buildings πŸ’…βœ¨πŸ‘‘

πŸ“¦ where this page comes from