Terrestrial LiDAR Point Clouds
How do we create millimeter-accurate 3D models of terrain and structures? Light Detection and Ranging (LiDAR) uses laser pulses to measure distances, generating dense point clouds with billions of 3D coordinates. This model derives ranging equations, implements point cloud classification, demonstrates DEM generation, and shows applications from forest inventory to archaeological site mapping.
Prerequisites: ranging equations, point cloud processing, surface reconstruction, classification
1. The Question
How tall is this forest canopy, and how much biomass does it contain?
LiDAR (Light Detection and Ranging):
Active sensor that measures distance by timing laser pulse return.
Principle:
\[R = \frac{c \times \Delta t}{2}\]Where:
- $R$ = range (distance)
- $c$ = speed of light (3 × 10⁸ m/s)
- $\Delta t$ = round-trip travel time
- Factor 2: Light travels to target and back
Example:
$\Delta t = 100$ nanoseconds = 100 × 10⁻⁹ s
\[R = \frac{3 \times 10^8 \times 100 \times 10^{-9}}{2} = \frac{30}{2} = 15 \text{ m}\]Point cloud:
Million to billions of 3D points, each with (x, y, z) coordinates.
Platforms:
- Airborne (aircraft, drone)
- Terrestrial (tripod-mounted scanner)
- Mobile (vehicle-mounted)
- Spaceborne (GEDI, ICESat-2)
Applications:
- High-resolution DEMs (0.5-1 m vertical accuracy)
- Forest structure (canopy height, biomass)
- Urban 3D modelling (building extraction)
- Power line monitoring (vegetation encroachment)
- Archaeological surveys (detect subtle features)
- Coastal change (erosion, dune migration)
2. The Conceptual Model
Pulse Return Characteristics
Single return:
- Hard surface (ground, building)
- All energy reflected from single surface
- One distance measurement per pulse
Multiple returns:
- Vegetation canopy (partial transmission)
- First return: Canopy top
- Intermediate returns: Mid-canopy
- Last return: Ground
Full waveform:
- Record entire return signal shape
- Extract multiple peaks
- Provides vertical structure detail
Typical: 1-5 returns per pulse
Point Density
Airborne typical:
- 1-10 points/m² (standard)
- 10-50 points/m² (high-density)
- 50+ points/m² (ultra-high)
Terrestrial:
- 1000-10,000+ points/m² (very dense)
- Sub-centimeter spacing
Trade-offs:
- Higher density → better detail, larger file size, slower processing
- Lower density → faster, cheaper, less detail
Flying height effect:
Point spacing $\approx$ altitude × scan angle / pulse rate
Point Cloud Attributes
Essential:
- X, Y, Z coordinates (location)
- Intensity (return strength)
- Return number (first, last, intermediate)
- Classification (ground, vegetation, building, etc.)
Optional:
- RGB color (if camera integrated)
- GPS time
- Scan angle
- NIR intensity
File formats:
- LAS/LAZ (standard, compressed)
- ASCII XYZ (simple, large)
- E57 (terrestrial scans)
3. Building the Mathematical Model
Ranging Equation
Received power:
\[P_r = \frac{P_t \eta_{\text{sys}} \eta_{\text{atm}} \beta_{\text{target}} A_r}{R^2}\]Where:
- $P_r$ = received power (W)
- $P_t$ = transmitted power (W)
- $\eta_{\text{sys}}$ = system efficiency
- $\eta_{\text{atm}}$ = atmospheric transmission
- $\beta_{\text{target}}$ = target reflectance (0-1)
- $A_r$ = receiver aperture area (m²)
- $R$ = range (m)
Key: $R^{-2}$ dependence → weaker signal at greater distance
Minimum detectable:
\[P_r > P_{\text{threshold}}\]Maximum range:
\[R_{\max} = \sqrt{\frac{P_t \eta_{\text{sys}} \eta_{\text{atm}} \beta_{\text{target}} A_r}{P_{\text{threshold}}}}\]Typical airborne: $R_{\max} \approx$ 500-3000 m
Ground Point Classification
Progressive TIN Densification algorithm:
Steps:
- Seed points: Lowest points in grid cells (likely ground)
- Build initial TIN (Triangulated Irregular Network)
- Test remaining points:
- Calculate distance to TIN surface
- If distance < threshold AND angle < threshold → add to ground
- Rebuild TIN with new points
- Iterate until no new points added
Distance threshold: Typically 0.3-1.5 m
Angle threshold: Typically 8-15°
Robustness: Filters vegetation, buildings, bridges
Canopy Height Model
Digital Surface Model (DSM):
Elevation of first returns (top surface).
Digital Terrain Model (DTM):
Elevation of ground points only.
Canopy Height Model (CHM):
\[\text{CHM} = \text{DSM} - \text{DTM}\]Interpretation:
- CHM = 0: Bare ground
- CHM = 20m: 20-meter tall vegetation/structure
Forest applications:
- Tree height extraction
- Crown delineation
- Biomass estimation
Biomass Estimation
Allometric relationship:
\[B = a \times H^b\]Where:
- $B$ = aboveground biomass (kg or Mg)
- $H$ = height (m) from LiDAR CHM
- $a$, $b$ = species/region-specific constants
Typical: $b \approx 2-3$
Example (temperate forest):
$a = 0.15$, $b = 2.5$
Tree height $H = 25$ m:
\[B = 0.15 \times 25^{2.5} = 0.15 \times 1953 = 293 \text{ kg}\]Scale to stand:
Sum all trees, convert to Mg/ha.
4. Worked Example by Hand
Problem: Calculate range from timing and classify point.
Laser pulse measurements:
Point A:
- Travel time: 200 ns
- Intensity: 850
- Elevation above geoid: 1535 m
Point B (nearby):
- Travel time: 180 ns
- Intensity: 920
- Elevation: 1520 m
Ground elevation in area: ~1520 m
Classify Point A (ground or vegetation).
Solution
Step 1: Calculate ranges
\[R_A = \frac{3 \times 10^8 \times 200 \times 10^{-9}}{2} = \frac{60}{2} = 30 \text{ m}\] \[R_B = \frac{3 \times 10^8 \times 180 \times 10^{-9}}{2} = \frac{54}{2} = 27 \text{ m}\]Step 2: Height above ground
Point A: $1535 - 1520 = 15$ m above ground
Point B: $1520 - 1520 = 0$ m (on ground)
Step 3: Classification
Point A: 15 m above ground → Vegetation (likely tree canopy)
Point B: 0 m above ground → Ground
Step 4: Intensity interpretation
Point B higher intensity (920 vs 850):
- Ground typically higher reflectance than vegetation
- Consistent with classification
Step 5: Tree height
If Point A is first return from tree top:
Tree height = 15 m
Step 6: Biomass estimate (using allometric equation)
\[B = 0.15 \times 15^{2.5} = 0.15 \times 435 = 65 \text{ kg}\]Single tree biomass ≈ 65 kg (or 0.065 Mg)
5. Computational Implementation
Below is an interactive LiDAR point cloud simulator.
Total points: --
Ground points: --
Vegetation points: --
Mean canopy height: -- m
Observations:
- Ground points (brown) form continuous surface
- Vegetation points (green) distributed above ground
- Complex terrain shows elevation variations
- Higher point density reveals finer structure
- Classification separates ground from vegetation returns
- Mean canopy height derived from vegetation points
Key insights:
- Multiple returns capture vertical structure
- Point cloud density affects detail level
- Classification algorithms identify ground surface
- Canopy height directly measurable from point cloud
6. Interpretation
High-Resolution DEMs
LiDAR advantages over photogrammetry:
Penetration: Sees ground through vegetation canopy
Accuracy: ±5-15 cm vertical (vs ±30-50 cm stereo photos)
Automation: Less manual editing required
Examples:
USGS 3DEP (3D Elevation Program):
- National LiDAR coverage (USA)
- 1-m resolution DEMs
- Quality level 2 (8 points/m²)
Applications:
- Flood modelling (precise elevations critical)
- Infrastructure planning
- Archaeological features (subtle earthworks)
Forest Inventory
Metrics from LiDAR:
Individual tree detection:
- Local maxima in CHM = tree tops
- Watershed segmentation = crown boundaries
- Height, crown diameter, position
Stand-level:
- Mean height, height percentiles
- Canopy cover fraction
- Vertical structure (understory presence)
Biomass:
Plot-level calibration:
- Field measure biomass (destructive sampling or allometry)
- Correlate with LiDAR metrics
- Apply regression across landscape
Accuracy: ±15-25% biomass estimation (vs ±30-50% optical)
Carbon accounting:
Forest biomass × 0.5 = carbon stock
Critical for:
- REDD+ programs
- Carbon offset verification
- Climate change mitigation
Archaeological Applications
Bare-earth DEM reveals:
- Ancient roads/paths
- Building foundations
- Earthworks/fortifications
- Agricultural terraces
Example - Angkor Wat, Cambodia:
- LiDAR through jungle canopy
- Revealed extensive urban grid
- Hydraulic infrastructure
- Changed understanding of city extent
Example - Mayan cities, Central America:
- Discovered hidden structures
- Population estimates revised upward
- Settlement patterns clarified
7. What Could Go Wrong?
Ground Classification Errors
Type I (commission):
Vegetation misclassified as ground.
Cause: Low vegetation, dense understory
Impact: DTM too high → CHM underestimate
Type II (omission):
Ground misclassified as vegetation.
Cause: Bridges, large boulders, low point density
Impact: DTM too low → CHM overestimate
Solution:
- Visual inspection
- Cross-validation with field data
- Iterative editing
Point Density Insufficient
Sparse data misses features.
Critical density:
Buildings: 4-8 pts/m²
Forest: 2-5 pts/m²
Bare earth: 1-2 pts/m²
Example:
1 pt/m² → Miss narrow roads, small buildings
Solution: Increase flight density or lower altitude
Co-Registration Errors
GPS/IMU accuracy:
Determines absolute positioning.
Typical: ±5-10 cm horizontal, ±10-15 cm vertical
Differential GPS improves to ±2-5 cm
Multi-temporal comparison:
Requires precise registration or errors appear as change.
Solution:
- Ground control points
- Strip adjustment
- ICP (Iterative Closest Point) alignment
Vegetation Penetration Limits
Dense canopy:
Few pulses reach ground.
Rainforest: <5% ground returns
Conifers: 10-30% ground returns
Deciduous (leaf-off): 60-90% ground returns
Solution:
- Leaf-off acquisition (temperate forests)
- Higher point density
- Full-waveform LiDAR (better penetration)
8. Extension: Full-Waveform LiDAR
Discrete return LiDAR:
Records 1-5 return distances per pulse.
Full-waveform:
Records entire reflected signal (continuous function).
Advantages:
More returns: Extract 10+ returns per pulse
Intensity variation: Within canopy structure
Ground detection: Better in dense vegetation
Calibrated intensity: Physical reflectance
Applications:
Forestry: Leaf area index, understory structure
Bathymetry: Water column returns
Snow depth: Snow surface + ground returns
Urban: Power line detection, facade detail
Processing:
Gaussian decomposition:
- Fit multiple Gaussian peaks to waveform
- Each peak = one return
- Width = target extent
9. Math Refresher: Speed of Light Constant
Fundamental Constant
\[c = 299,792,458 \text{ m/s}\]Exactly defined (SI definition of meter).
In vacuum: Truly constant
In atmosphere: Slightly slower
\[c_{\text{air}} = \frac{c}{n}\]Where $n$ = refractive index ≈ 1.0003
Effect on ranging:
\[\Delta R = R \times (n - 1) \approx R \times 0.0003\]For 1000 m range: Error = 30 cm
Correction applied in precision LiDAR.
Nanosecond Timing
1 nanosecond = 10⁻⁹ seconds
Light travels in 1 ns:
\[d = c \times 1 \times 10^{-9} = 3 \times 10^8 \times 10^{-9} = 0.3 \text{ m} = 30 \text{ cm}\]Round trip: 15 cm range resolution
LiDAR timing precision: Sub-nanosecond
Achieves: <5 cm range precision
Summary
- LiDAR measures distance by laser pulse timing enabling precise 3D point clouds
- Range equation: R = c·Δt/2 where timing precision determines accuracy
- Point clouds contain millions to billions of x,y,z coordinates with intensity and classification
- Ground point classification via progressive TIN densification filters non-ground returns
- Canopy Height Model derived as DSM minus DTM reveals vegetation structure
- Applications span high-resolution DEMs, forest biomass, urban 3D modelling, archaeology
- Accuracy typically ±5-15 cm vertical, ±5-10 cm horizontal with differential GPS
- Challenges include ground classification errors, vegetation penetration limits, co-registration
- Full-waveform LiDAR captures complete return signal for enhanced information extraction
- Critical tool for topographic mapping, vegetation analysis, and change detection