Space-filling curve dictionary-based compression
AssigneeSap SE
InventorsMirjana Pavlovic, Kai-Niklas Bastian
Life of this patent
Estimating the term…
Abstract
Embodiments of the present disclosure pertain to point cloud data. In one embodiment, the present disclosure includes a computer implemented method comprising for compressing and storing point cloud data using a space-filling curve data structure and a dictionary space data structure. In another embodiment, the present disclosure includes applying a query against the data structures to retrieve point cloud data within a range.
Claims20
A computer implemented method comprising:
- receiving point cloud data, the point cloud data comprising a plurality of point cloud data entries, each point cloud data entry comprising a plurality of values for a corresponding plurality of dimensions to describe a position;
- mapping the point cloud data to a dictionary space data structure and a space-filling curve data structure, wherein:
- the dictionary space data structure captures the distinct values of point cloud data in each dimension,
- the space-filling curve data structure partitions the plurality of cloud point data entries across a grid comprising a plurality of cells across the plurality of dimensions, and
- the space-filling curve data structure comprises, for each particular point cloud data entry, a code of a plurality of codes and a plurality of offsets, the code including an identifier for each dimension of the plurality of dimensions and identifying a particular cell of the plurality of cells, the particular cell comprising a plurality of point cloud data entries including the particular point, the plurality of offsets including an offset for each dimension of the plurality of dimensions, the plurality of offsets uniquely identifying the particular point cloud data entry from among the plurality of point cloud data entries in the particular cell, and
- the space-filling curve data structure maps a record for each point cloud data entry to a particular position in the dictionary space where a value for the point cloud data entry is stored, the particular position in the dictionary space based on a combination of the code and the plurality of offsets for the point cloud data entry, and
- storing the space-filling curve data structure and the dictionary space data structure in a database.
A non-transitory machine-readable medium storing a program executable by at least one processing unit of a computer, the program comprising sets of instructions for:
- receiving point cloud data, the point cloud data comprising a plurality of point cloud data entries, each point cloud data entry comprising a plurality of values for a corresponding plurality of dimensions to describe a position;
- mapping the point cloud data to a dictionary space data structure and a space-filling curve data structure, wherein:
- the dictionary space data structure captures the distinct values of point cloud data in each dimension,
- the space-filling curve data structure partitions the plurality of cloud point data entries across a grid comprising a plurality of cells across the plurality of dimensions, and
- the space-filling curve data structure comprises, for each particular point cloud data entry, a code of a plurality of codes and a plurality of offsets, the code including an identifier for each dimension of the plurality of dimensions and identifying a particular cell of the plurality of cells, the particular cell comprising a plurality of point cloud data entries including the particular point, the plurality of offsets including an offset for each dimension of the plurality of dimensions, the plurality of offsets uniquely identifying the particular point cloud data entry from among the plurality of point cloud data entries in the particular cell, and
- the space-filling curve data structure maps a record for each point cloud data entry to a particular position in the dictionary space where a value for the point cloud data entry is stored, the particular position in the dictionary space based on a combination of the code and the plurality of offsets for the point cloud data entry, and
- storing the space-filling curve data structure and the dictionary space data structure in a database.
A computer system comprising:
- a processor;
- and
- a non-transitory machine-readable medium storing a program executable by the processor, the program comprising sets of instructions for:
- receiving point cloud data, the point cloud data comprising a plurality of point cloud data entries, each point cloud data entry comprising a plurality of values for a corresponding plurality of dimensions to describe a position;
- mapping the point cloud data to a dictionary space data structure and a space-filling curve data structure, wherein:
- the dictionary space data structure captures the distinct values of point cloud data in each dimension,
- the space-filling curve data structure partitions the plurality of cloud point data entries across a grid comprising a plurality of cells across the plurality of dimensions, and
- the space-filling curve data structure comprises, for each particular point cloud data entry, a code a plurality of codes and a plurality of offsets, the code including an identifier for each dimension of the plurality of dimensions and identifying a particular cell of the plurality of cells, the particular cell comprising a plurality of point cloud data entries including the particular point, the plurality of offsets including an offset for each dimension of the plurality of dimensions, the plurality of offsets uniquely identifying the particular point cloud data entry from among the plurality of point cloud data entries in the particular cell, and
- wherein the space-filling curve data structure maps a record for each point cloud data entry to a particular position in the dictionary space where a value for the point cloud data entry is stored, the particular position in the dictionary space based on a combination of the code and the plurality of offsets for the point cloud data entry, and
- storing the space-filling curve data structure and the dictionary space data structure in a database.
Dependencies are inferred from the claim text.