← Back to projects
3D data · Representation research · ZFP

Point-Cloud Compression

I investigated preconditioning techniques for 3D point clouds to improve their compressibility—starting with image-based representations and progressing to structure-aware ZFP experiments.

Point cloudsImage codingZFPLZ4LASzipExperimental evaluation
Loading the Bunny comparison…
Original JPEG decoded
00 / Interactive experiment

What happens when 3D coordinates are treated like image bytes?

This clean reproduction uses the 35,947-vertex Stanford Bunny. The original float32 XYZ payload is reshaped into an image-compatible byte layout, encoded, decoded, and rebuilt as a point cloud. Rotate the result to see how lossy image compression can leave shadows or aliases of the geometry.

Interactive representation experiment

See image coding alter a 3D point cloud.

Rotate the Stanford Bunny, compare the original XYZ cloud with the JPEG-decoded payload, and overlay both shapes to inspect geometric shadows and aliases.

Active view 00 · Original cloud 35,947 float32 XYZ points.
Loading the Bunny comparison…
Original JPEG decoded

PNG reconstructed this payload bit-for-bit. JPEG quality 100 changed 42.4% of payload bytes; its median XYZ error was 0.0617 in the source coordinate units.

01 / What I am investigating

Can representation engineering make irregular points easier to compress?

A point cloud is often stored as an unordered list of XYZ values. Generic compressors see neighbouring rows in memory, not neighbouring points in space. My work tests whether image layouts, ordering, spherical coordinates, compact indices, and controlled precision can expose enough structure for numerical compressors to become effective.

ReduceStorage and transmission load
PreserveUseful 3D geometry
AccountDecoder metadata and point order
ExplainWhere each saving actually comes from
02 / Research problem

A smaller stream is meaningful only when the decoded cloud remains useful.

LiDAR produces large spatial datasets for autonomous driving, mapping, digital twins, and robotics. Compression can reduce storage and network demand, but file size alone is an incomplete metric. A fair experiment must also measure geometric fidelity, attribute recovery, ordering requirements, decoder completeness, and runtime.

Hypothesis

Structure matters

Point clouds become more compressible when their physical or acquisition structure is made visible to the codec.

Method

Change one representation decision

Each experiment isolates image layout, ordering, score, index coding, quantization, or numerical compression.

Evidence

Count the recoverable result

Payload, framing, permutations, precision, reconstruction error, and decoder requirements are evaluated together.

03 / Method 1

Image-based byte wrapping: a deliberately simple first probe.

Hypothesis

Image codecs may find byte-level repetition

If XYZ bytes are reshaped into an image carrier, PNG or JPEG may exploit local patterns even without understanding geometry.

Methodology

PCD → image-compatible bytes → image codec → PCD

The binary XYZ payload is reshaped into an image-compatible byte layout. PNG is tested losslessly; JPEG quality 100 is tested as an explicitly lossy control.

Experiment

Compare bytes and rebuild the cloud

Image wrapping reduced the stored payload by 10.71% with PNG and 3.93% with JPEG q100. The clean Bunny reproduction then exposes the reconstruction consequences.

Method 1 / Image representation

Image wrapping reduced the stored payload

What this shows. PNG found more byte-level redundancy than JPEG q100, while the interactive Bunny makes the geometric cost of the lossy path visible.

04 / Method 2

Order-aware preconditioning: sorting has a hidden recovery cost.

Hypothesis

Place similar values together

Sorting by radial distance or a structural score should make neighbouring numerical values easier for compression codecs to encode.

Methodology

Compress payload and permutation

Original-order, distance-sorted, and score-sorted XYZ streams are compared. Sorted variants also store the permutation needed to restore point order.

Experiment

A component improved; the archive did not

Sorting reduced the encoded range component by 18.22%, but complete order-recoverable controls became 28–38% larger.

05 / Method 3

Score-guided probing: ask which points are easier to encode.

Hypothesis

A structural score may stratify compressibility

Points ordered by a recovered log-cardinality score may reveal regions that a numerical codec encodes more efficiently.

Methodology

Remove one point and recompress

All points, the lower-score half, and the higher-score half are evaluated along a controlled removal sequence with signed byte changes.

Experiment

The score was informative, not sufficient

The higher-score half began at 1.02378 compressed/raw versus 1.04550 for the lower-score half, but neither stream became smaller than raw.

Method 3 / Structural probe

Higher-score points were easier for the codec, but still expanded

What this shows. The score separated easier and harder subsets, but both compressed-to-raw ratios remained above the 1.00 raw-size line.

The one-by-one recompression is a diagnostic probe rather than a practical codec because its cost grows roughly quadratically.

06 / Method 4

Iterative midpoint-delta coding: the strongest exact custom primitive.

Hypothesis

Angle dictionaries create compact integer structure

Quantized spherical angles repeat. Replacing them with indices should expose smaller, more regular values.

Methodology

Recenter, store magnitudes, pack signs

Phi and theta indices are repeatedly centred, converted to absolute deltas, and paired with explicit sign bits until four-bit magnitudes remain.

Experiment

2.499 bytes per point with exact index recovery

The 447,784-byte result was 37.91% below the raw angle-mapping reference and the smallest of six self-contained angle encodings.

Method 4 / Exact index coding

The iterative midpoint-delta representation was smallest

What this shows. The midpoint-delta and explicit-sign representation produced the lowest self-contained bytes per point among the six exact encodings.

Each iteration must preserve its centre and sign stream, so the comparison includes the representation metadata.

07 / Method 5

Quantized spherical hybrid: combine codecs by stream type.

Hypothesis

No single codec must encode everything

Distances, angle dictionaries, index deltas, and signs have different statistical structure and can use different encoders.

Methodology

Spherical coordinates + RLE + ZFP + LZ4

XYZ is quantized in spherical form; repeated distances are run-length coded; angle indices use the midpoint-delta transform; numerical and byte streams are encoded separately.

Experiment

Separate quantization from coding gain

The order-free quantized set reached 479,569 bytes. Quantization contributed the larger first reduction; the custom coding stage added a second measurable reduction.

Method 5 / Hybrid attribution

Quantization produced the larger saving; custom coding added another

What this shows. The move to controlled precision supplied the larger first reduction, and the stream-specific custom coding stage added a second measurable reduction.

The experiment reports the order-free quantized set so the effect of quantization and coding can be separated.

08 / Method 6

Direct reversible ZFP: the baseline that explains the research problem.

Hypothesis

Test ZFP without preprocessing

If a raw XYZ matrix already contains sufficient numerical correlation, reversible ZFP should reduce it without a representation change.

Methodology

Compress and verify bit-for-bit recovery

The 179,170 × 3 float64 coordinate matrix is compressed directly using reversible ZFP and decoded exactly.

Experiment

The unordered matrix expanded by 21.60%

The 4.300 MB numerical payload became 5.229 MB. A rectangular array in memory was not equivalent to a smooth spatial field.

Method 6 / ZFP baseline

Direct ZFP on an unordered particle array

What this shows. The exact ZFP stream was 21.60% larger than the original numerical payload.

The result motivates the representation study: list order does not expose the smooth spatial neighbourhoods expected by a structured-array codec.

09 / Methods tried alongside

The broader experiment record supplied baselines, controls, and alternative directions.

LZ4 on raw and structured streams

Useful for fast byte and index streams, but raw binary PCD showed no meaningful gain.

LASzip / LAZ

A strong point-cloud-specific baseline that remained better in the aligned whole-cloud comparison.

Three 16-bit grayscale axes

Mapped X, Y, and Z into image channels; achieved large stored-size reductions with reconstruction caveats.

Draco

Produced compact geometry payloads and supplied a useful point-cloud-specific reference alongside the custom experiments.

FFT-filtered spherical distance

An exploratory branch combining spherical dictionaries with frequency filtering; end-to-end fidelity remained unresolved.

Local filtering and smoothing

Tested structure-aware lossy reductions, including local standard-deviation filtering and PMLS-like smoothing.

Metropolis / LZF local search

Investigated ordering through iterative swaps; partial logs showed small gains but not a complete reproducible codec.

Fixed-width and packed index controls

Compared uint16, 10-bit, 20-bit-pair, normalized residual, and occurrence-list encodings against the custom transform.

Shannon entropy–based clustering

Grouped points by local information content to test whether entropy-homogeneous subsets exposed more regular, compressible structure.

Pseudogravitation

Explored attraction-inspired reordering to bring spatially related points into a more regular sequence before coding.

10 / Why it matters

Point-cloud compression remains an application-dependent systems problem.

Large 3D streams affect logging, mapping, remote robotics, simulation, and continuous model development. Current reference directions solve different parts of the problem rather than producing one universal winner.

Standardized geometry

MPEG G-PCC

Directly codes sparse 3D geometry and attributes. Its generality brings configuration, complexity, and rate–distortion choices.

Video projection

MPEG V-PCC

Uses the video ecosystem for dynamic volumetric content, but projection and patch processing add artifacts and overhead.

Web and graphics

Google Draco

Efficiently transports meshes and point clouds, while quantization and graphics-oriented assumptions must match the downstream task.

LiDAR range images

RIDDLE · Jiffy

Exploit acquisition order and temporal range-image structure, which is powerful but sensor- and representation-dependent.

Learned spherical coding

SCP

Uses spherical LiDAR structure with learned compression; model cost, deployment complexity, and domain transfer remain practical considerations.

Scientific arrays

ZFP

Excels on structured numerical fields, but unordered particle lists do not naturally supply the smooth neighbourhoods it expects.

Collective gap

No single method simultaneously optimizes sparse and dense geometry, attributes, temporal prediction, exact order, random access, streaming latency, bounded error, and downstream perception quality. The central engineering task is to match representation, fidelity budget, and access pattern to the application—and measure the complete recoverable system.