Skip to content

Latest commit

 

History

History
112 lines (70 loc) · 2.68 KB

File metadata and controls

112 lines (70 loc) · 2.68 KB

RayDecimate

RayDecimate is a tool for reducing ray cloud density while preserving important structural information. It supports both spatial and temporal decimation methods to create more manageable datasets.

Usage

The general syntax for using RayDecimate is:

raydecimate <input_file> <amount> <unit> [additional_parameters]

Decimation Methods

Spatial Decimation

Reduces to one endpoint every specified distance:

raydecimate raycloud.ply 3 cm

Creates spatially even subsampling with points spaced 3 cm apart.

Temporal Decimation

Reduces to every Nth ray in sequence:

raydecimate raycloud.ply 4 rays

Keeps every 4th ray, creating temporally even subsampling (effective if rays are chronological).

Advanced Methods

Note: Advanced methods are not supported in rayrestore.

Spatio-temporal Decimation

Limits the maximum number of endpoints per cubic cell:

raydecimate raycloud.ply 20 cm 64 points
  • Maximum of 64 endpoints per 20cm cubic cell
  • Retains small-scale details better than simple spatial decimation

Ray-based Spatial Decimation

raydecimate raycloud.ply 20 cm/ray

Only adds a ray if not all cells overlapping the ray already intersect with existing rays. Maintains ray distribution for tools like raycombine.

Angular Decimation

raydecimate raycloud.ply 3 cm/m

Reduces to ray ends spaced 3 cm apart for each meter of ray length. Good for maintaining a range of point densities based on distance from sensor.

Output

The tool generates a decimated ray cloud with the suffix _decimated.ply.

Examples

Simple spatial decimation:

raydecimate large_scan.ply 5 cm

Temporal decimation for time-based analysis:

raydecimate trajectory_scan.ply 10 rays

Advanced spatio-temporal decimation:

raydecimate dense_cloud.ply 15 cm 32 points

Ray-distribution preserving decimation:

raydecimate multi_scan.ply 25 cm/ray

Distance-adaptive decimation:

raydecimate lidar_scan.ply 2 cm/m

Compatibility

  • Basic spatial (cm) and temporal (rays) decimation methods are compatible with rayrestore
  • Advanced methods (cm/ray, cm/m, and cm X points) are not supported by rayrestore

Additional Information

  • Spatial decimation maintains geometric fidelity while reducing data size
  • Temporal decimation preserves chronological relationships in scan data
  • Advanced methods provide specialized decimation for specific use cases
  • For more detailed information on decimation algorithms, refer to the RayDecimate source code at raycloudtools/raydecimate/raydecimate.cpp.