Description
We want to instantly visualize huge 3D scans (18 billion points+) by loading first a small sample from disk and filling in the gaps by interpolating the in-between geometry until all points visible on the screen are loaded. Our recently published method, LidarScount [1], loads such heightfields within seconds, using a loader framework and a neural network to hallucinate the missing data. For arbitrary 3D data, however, we will concentrate on interpolating the geometry only, while using the existing loader framework. The new method should work with city scans like the Vienna Kappazunder or reconstruct surfaces from curves, e.g., drawn in VR space [2], instantly and also for open surfaces.
[1] https://github.com/cg-tuwien/lidarscout
[2] https://anandhu1436.github.io/VRSurf/
Tasks
- familiarize yourself with the loader framework of LidarScout
- adapt the loader to not only load each 50000th uncompressed point of the .laz file but a percentage of compressed points of each nth cluster
- use mipmapping to fill in missing pixels in screen space as 3D points interpolated from neighbors
- when moving the camera, reproject the points from the previous frame to ensure time-coherency
Requirements
- Knowledge of C++ and/or Python
- Knowledge of English language (source code comments and final report should be in English)
- Bonus for experience with CUDA or geometry processing
Environment
Standalone C++/CUDA application (platform-independent, tested on Linux, Windows)
A bonus of €500/€1000 if completed to satisfaction within an agreed time-frame of 6/12 months (PR/BA or DA)
Additional Images and Files
| Attachment | Size |
|---|---|
| Partial scan data | 394.28 KB |