Point cloud decimation engine
AssigneeAutodesk, Inc.
InventorCarl Christer Janson
Life of this patent
Estimating the term…
Abstract
A method, apparatus, article of manufacture, and computer readable storage medium provide the ability to visualize a point cloud dataset. A grid, having cells, is mapped over the point cloud dataset. The points are sorted and a contribution factor is computed for each cell. Each cell and its contribution factor is stored. A viewing area and total number of viewing points is determined. The cells are intersected with the viewing area to determine visible cells. The contribution factors for the visible cells are accumulated and divided into the total viewing points to determine a point extraction value. A number of points to read (and display) from each visible cell is determined by multiplying the contribution factor of each visible cell by the point extraction value.
Claims21
A computer implemented method for visualizing a point cloud dataset comprising:
- mapping, in a computer, a grid over points in the point cloud dataset, wherein the grid comprises one or more cells;
- sorting the points in each cell;
- computing a contribution factor for each cell on a per cell basis, wherein the contribution factor comprises a relative density of the points in each cell;
- storing each cell and the cell's contribution factor;
- determining a viewing area and total viewing points;
- intersecting the one or more cells with the viewing area to determine one or more visible cells;
- accumulating the contribution factors for the one or more visible cells;
- dividing the total viewing points by the accumulated contribution factors to determine a point extraction value;
- calculating a number of points to read from each visible cell on a per cell basis by multiplying the contribution factor of each visible cell by the point extraction value;
- reading the number of points from each visible cell;
- and
- displaying the number of points that are read on a display device.
An apparatus for visualizing a point cloud dataset in a computer system comprising:
- (a) a computer having a memory;
- (b) an application executing on the computer, wherein the application is configured to:
- (i) map, in a computer, a grid over points in the point cloud dataset, wherein the grid comprises one or more cells;
- (ii) sort the points in each cell;
- (iii) compute a contribution factor for each cell on a per cell basis, wherein the contribution factor comprises a relative density of the points in each cell;
- (iv) store each cell and the cell's contribution factor;
- (v) determine a viewing area and total viewing points;
- (vi) intersect the one or more cells with the viewing area to determine one or more visible cells;
- (vii) accumulate the contribution factors for the one or more visible cells;
- (viii) divide the total viewing points by the accumulated contribution factors to determine a point extraction value;
- (ix) calculate a number of points to read from each visible cell on a per cell basis by multiplying the contribution factor of each visible cell by the point extraction value;
- (x) read the number of points from each visible cell;
- and
- (xi) display the number of points that are read on a display device.
A non-transitory computer readable storage medium encoded with computer program instructions which when accessed by a computer cause the computer to load the program instructions to a memory therein creating a special purpose data structure causing the computer to operate as a specially programmed computer, executing a method of visualizing a point cloud dataset, comprising:
- mapping, in the specially programmed computer, a grid over points in the point cloud dataset, wherein the grid comprises one or more cells;
- sorting, in the specially programmed computer, the points in each cell;
- computing, in the specially programmed computer, a contribution factor for each cell on a per cell basis, wherein the contribution factor comprises a relative density of the points in each cell;
- storing, in the specially programmed computer, each cell and the cell's contribution factor;
- determining, in the specially programmed computer, a viewing area and total viewing points;
- intersecting, in the specially programmed computer, the two or more cells with the viewing area to determine one or more visible cells;
- accumulating, in the specially programmed computer, the contribution factors for the one or more visible cells;
- dividing, in the specially programmed computer, the total viewing points by the accumulated contribution factors to determine a point extraction value;
- calculating, in the specially programmed computer, a number of points to read from each visible cell on a per cell basis by multiplying the contribution factor of each visible cell by the point extraction value;
- reading, in the specially programmed computer, the number of points from each visible cell;
- and
- displaying, in the specially programmed computer, the number of points that are read on a display device.
Dependencies are inferred from the claim text.