[pdal] EPT polygon query and octree in memory

Balázs Dukai B.Dukai at tudelft.nl
Mon Mar 16 05:27:33 PDT 2020


Hello,

I'm using PDAL's C++ API (v2.0.1) to query an EPT and get the point 
cloud within a polygon. I do this for millions of polygons that are 
often adjacent (building footprints), and the EPT covers a whole 
country. The EPT is stored as LAZ.

I noticed that there was a relatively large increase in memory use 
(cannot tell exactly, sorry ) after switching to PDAL+EPT. This made me 
wonder what exactly is read into memory when doing a polygon query from 
EPT? I made a drawing of what I think is happening , could someone 
confirm or reject this? See 
https://www.dropbox.com/s/ppa24o666ulunxc/ept_octree.jpg?dl=0.

In the image you'll see an octree of an EPT, with the root cell on the 
top and the leaf that contains the polygon on the bottom. The red 
splotch is the polygon. The darker blue cubes are the octree cells of 
the EPT that I think are kept completely in memory in order to get all 
the points within that red polygon. Is that correct?

Then if this is the case, how could I reduce the memory use in PDAL? And 
speed up extracting the polygon-extents from the EPT?

Many thanks,

Balázs Dukai



More information about the pdal mailing list