-
Notifications
You must be signed in to change notification settings - Fork 314
Description
Context
In projected point clouds, the inferred oriented bounding boxes (OBBs) are unsound, resulting in visible occlusion artifacts during rendering (e.g. nodes close to the camera being of a lower LOD than node farther away). You can this this issue in the following screenshot where points are coloured by their LOD.
The cause of this issue seems to stems from the fact that the OBBs are spatially offset by some non-negligible distance and do not property enclose their corresponding octree nodes. As a result, the bounding volumes no longer accurately represent the spatial extent of the data they are meant to bound and are thus unsound. See the screenshot below (coloured by LOD), you can see that OOBs near the camera do not enclose their corresponding nodes (a color code has been added to see the OBBs and their expected nodes).
This misalignment causes errors in visibility determination, leading to premature occlusion or incorrect culling of point cloud nodes during rendering.
Steps to Reproduce
Since the bounding boxes seems to be broken in master, I pushed a branch to fix the OBB helper (see https://github.com/Desplandis/itowns/tree/repro/reproj-unsound-obb)
- Open
pointcloud_loader_globeexample - Navigate to the corner of the https://data.geopf.fr/chunk/telechargement/download/lidarhd_fxx_ept/IH_EPT/ept.json dataset
- You can see the wrong enclosure of the OBBs