-
Notifications
You must be signed in to change notification settings - Fork 3
Home
Welcom in Pointcloud_in_db project !
This is a short project using several open source tools to store efficiently large point clouds in a postgres data base. We propose an efficient and parallel way to load data into base, a way to group points to limit the number of row used in base, and simple use of indexes to greatly accelerate test on pointcloud.
WARNING : This is a research project and it probably is not going to work out of the box, you may need tweaking, and you will have to tune it to add you own types of LIDAR points.
We propose a mix of different open source project to store and use efficiently very large amounts of LIDAR points into a database.
-
massive point clouds are loaded efficiently into a Postgres data base
-
this point clouds are stored using the PointCloud extension by P.Ramsey, 1 table per point-cloud, several hundreds points per line.
-
we use Postgis extension to build indexes for fast query of point clouds
-
the point clouds can then be used and exported to a webgl viewer / another tool
The proposed solution has been tested on a multi-billions points cloud and is very efficient (hundreds of milliseconds to perform spatial/temporal intersection, compressed storage, 1 Billion points import in DB by hour, around 200k points/sec with full attributes (20) on output)
- How Pointcloud_in_db works? (short)
-
How Pointcloud_in_db works?#how-does-it-works-detailled (detailled)
- Sending points to database
- getting points into temporary tables
- grouping temporary points into patch
- getting points from the patch table
- How to install
- How to use (standard or default)
- How to tweak this project to your data usage
- technical details
- Licences summary
The problem is as follow : with a very large number of points (several billions), how to get efficently those in a defined area? The traditional way is to build a spatial tree in filesystem and creating hierarchy of small files. A nex approach has been to put this point in Data Base and use advanced indexing.partitionning functionnalities.
FileSystem | Database | |
---|---|---|
Simplicity | [X] | [ ] |
Speed | [X] | [ ] |
Less Size on disk | [X] | [ ] |
Security | [ ] | [X] |
Need server/hardware | [ ] | [X] |
Versability | [ ] | [X] |
Scalability | [ ] | [X] |
Concurrent R/W accesses | [ ] | [X] |
Filtering on points | [ ] | [X] |
Out-of-memory processing | [ ] | [X] |
Data Integrity & Management | [ ] | [X] |