Systems and methods for converting massive point cloud datasets to a hierarchical storage format
First Claim
1. A method for converting a point cloud dataset into a hierarchical data structure for a lossless representation of an input file, the method comprising:
- reading header information of a collection of input files, the reading of the header information determining an axis-aligned bounding box of the collection of input files and a total number of data points in the point cloud dataset, the axis-aligned bounding box representing the amount of space taken by the point cloud dataset;
determining a cache level of the total number of data points in the point cloud dataset to generate a plurality of caches, based on the total number of data points and the axis-aligned bounding box of the point cloud dataset, the cache level being a level of program memory to fit all of the total number of data points in the point cloud dataset;
subdividing each of the plurality of caches into subtrees based on the determining of the cache level of the total number of data points in the point cloud dataset, the subtrees having a plurality of nodes; and
generating a tileset based on sorting of the plurality of nodes in the subtrees, the generating of the tileset resulting in the hierarchical data structure comprising a root tile and a plurality of children.
2 Assignments
0 Petitions
Accused Products
Abstract
Methods and systems for converting a point cloud dataset into a hierarchical data structure for a lossless representation of an input file are provided herein. In various embodiments the method comprises recursing subtrees using a preordered traversal for a plurality of nodes, the preordered traversal being checking a parent node and then checking children nodes and stopping the recursing of the subtrees using the preordered traversal of the plurality of nodes when a node of the plurality of nodes is a below threshold node. The below threshold node being less than a configuration specified maximum number of data points, the below threshold node being a leaf of a tileset. Further comprising, aggregating the leaf of the tileset into a lossless representation of the collection of input files.
-
Citations
22 Claims
-
1. A method for converting a point cloud dataset into a hierarchical data structure for a lossless representation of an input file, the method comprising:
-
reading header information of a collection of input files, the reading of the header information determining an axis-aligned bounding box of the collection of input files and a total number of data points in the point cloud dataset, the axis-aligned bounding box representing the amount of space taken by the point cloud dataset; determining a cache level of the total number of data points in the point cloud dataset to generate a plurality of caches, based on the total number of data points and the axis-aligned bounding box of the point cloud dataset, the cache level being a level of program memory to fit all of the total number of data points in the point cloud dataset; subdividing each of the plurality of caches into subtrees based on the determining of the cache level of the total number of data points in the point cloud dataset, the subtrees having a plurality of nodes; and generating a tileset based on sorting of the plurality of nodes in the subtrees, the generating of the tileset resulting in the hierarchical data structure comprising a root tile and a plurality of children. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16)
-
-
17. A method for converting a point cloud dataset into a hierarchical data structure for a lossless representation of an input file, the method comprising:
-
reading header information of a collection of input files, the reading of the header information determining an overall bounding box of the collection of input files and a total number of data points in the point cloud dataset; determining a cache level of the total number of data points in the point cloud dataset to generate a plurality of caches, the cache level being a level of program memory to fit all of the total number of data points in the point cloud dataset; subdividing each of the plurality of caches into subtrees based on the determining of the cache level of the total number of data points in the point cloud dataset, the subtrees having a plurality of nodes; recursing the subtrees using a preordered traversal for the plurality of nodes, the preordered traversal being checking a parent node and then checking children nodes; stopping the recursing of the subtrees using the preordered traversal of the plurality of nodes when a node of the plurality of nodes is a below threshold node, the below threshold node being less data points than a configuration specified maximum number of data points and the below threshold node being a leaf of a tileset; and generating the tileset based on sorting of the plurality of nodes in the subtrees, the generating of the tileset resulting in the hierarchical data structure comprising a root tile and a plurality of children. - View Dependent Claims (18)
-
-
19. A method for converting a point cloud dataset into a hierarchical data structure for a lossless representation of an input file, the method comprising:
-
reading header information of a collection of input files, the reading of the header information determining an overall bounding box of the collection of input files and a total number of data points in the point cloud dataset; determining a cache level of the total number of data points in the point cloud dataset to generate a plurality of caches, the cache level being a level of program memory to fit all of the total number of data points in the point cloud dataset; subdividing each of the plurality of caches into subtrees based on the determining of the cache level of the total number of data points in the point cloud dataset, the subtrees having a plurality of nodes; recursing the subtrees using a preordered traversal for the plurality of nodes, the preordered traversal being checking a parent node and then checking children nodes; continuing the recursing of the subtrees using the preordered traversal of the plurality of nodes when a node of the plurality of nodes is an above threshold node, the above threshold node being more data points than a configuration specified maximum number of data points; sampling the children nodes of the above threshold node resulting in a representative point collection for the above threshold node, the representative point collection being a lower level of detail of the above threshold node; and generating a tileset based on sorting of the plurality of nodes in the subtrees, the generating of the tileset resulting in the hierarchical data structure comprising a root tile and a plurality of children. - View Dependent Claims (20, 21, 22)
-
Specification