The Municipality of Täby aims to populate 3D city models with trees, but without known tree points and without tree classifications in the LIDAR data, this is difficult. Unless you use FME, of course.
7. 20
22
FME
User
Conference
What do we have to work with?
Being a local government, we have limited economic resources.
▪ Hi-res LIDAR point cloud – unfortunately without vegetation class.
▪ Buildings – both as 2D footprints and 3D-models (made partly with FME).
▪ Raster orthophotos (for draping).
▪ FME Desktop
▪ SketchUp
The point cloud class ”Unclassified” contains trees, but also cars,
lamp posts, balconies, construction cranes, road signs, etc.
8. 20
22
FME
User
Conference
How do we use FME?
▪ Find possible tree areas
▪ Position, height, diameter
▪ Replace with a 3D model
Point cloud without
vegetation class
The result, combined with
3D buildings and an
orthophoto, is
something amazing!
9. 20
22
FME
User
Conference
FME will help us with three things
1. Which of the points in the point cloud might represent
trees?
2. Where are the individual trees?
Get their position, height, and diameter.
3. Replace the trees with scaled 3D tree models in SketchUp.
15. 20
22
FME
User
Conference
1. e) Turn the remaining
point cloud into areas
Note the long and narrow areas.
These are signs above roads,
beams for power lines and bridges,
etc.
17. 20
22
FME
User
Conference
1. g) Keep the most
circular areas
Large areas are chopped into ”tree-sized” parts.
Circularity is calculated.
We do lose some trees in this part of the
process, but the overall gain is higher.
18. 20
22
FME
User
Conference
1. h) Clip the original point cloud, using
the computed tree areas
We now have a point cloud representing trees
only (almost).
Everything up to this would not have been
necessary, had we had a point cloud with a class
for “High Vegetation”.
21. 20
22
FME
User
Conference
2. b) Compare each stack’s Z_max with it’s
neighbours, to find local max.
The size of this search buffer is important.
Too large and we might miss small trees close to
larger ones.
Too small and every branch might turn into a
local treetop.
Here, we search within 2.5 m, covering the two
closest candidates in every direction.
22. 20
22
FME
User
Conference
2. c) Local maximas =
probable tree top
Note: Trees might be leaning, and they might have
more than one local max (treetop).
This model does not aim to be perfect.
23. 20
22
FME
User
Conference
2. d) Create Voronoi polygons
around each treetop
The Voronoi polygons are limited to 8 m radius
(suitable for our kind of trees, but this could
potentially be another user input parameter).
24. 20
22
FME
User
Conference
2. e) Trim the Voronoi polygons using
the tree areas
This might split a Voronoi polygon in two (or
more) parts. Keep only the one with the treetop,
and only if it is reasonably round in shape.
26. 20
22
FME
User
Conference
2. g) Generate tree diameters
The circle (tree diameter) are computed as the
mean of the bounding box’ length and width.
We now have everything we need for our
trees to be modelled;
Position, Height and Diameter
29. 20
22
FME
User
Conference
3. a) Read suitable 3D models of trees
I use simple models from SketchUp 3D
Warehouse, and also randomize between
tree different models.
34. 20
22
FME
User
Conference
Please Share Your Session Feedback
Log in & navigate to the
agenda. Select the session
you attended
Scroll down to “Session
Feedback”
Download EventMobi app
Event code: fmeuc
Click “Launch App”
Fill out the survey and
submit