alma / docs /inference.md
goel65's picture
Upload folder using huggingface_hub
aa51bb4 verified
|
Raw History Blame Contribute Delete
1.54 kB

Inference contract

Use QL1 for the 100-ft crop contract and QL2 for 200 ft. Inputs must already use projected coordinates in feet; inference does not reproject LAS files. The segmentation decoder tile path runs in FP32. Each forward consumes 20,480 sampled points; windows overlap by 50 ft or 100 ft in the examples.

Source LAS attributes, classification, header/CRS, and extra dimensions are preserved. The following dimensions are added:

Field Meaning
pred_semantic 0–4 semantic index; 5 low confidence; 255 uncovered
pred_las_class LAS 2–6; 1 low confidence; 0 uncovered
pred_confidence Maximum fused softmax probability; 0 uncovered
coverage_count Number of accumulated support observations (uint32)

Sampling does not ensure every raw point is covered. Inspect coverage before using products. No prediction is propagated to unsampled points.

Examples use fusion_mode: paper_legacy to retain the paper pipeline's NumPy buffered repeated-index accumulation. Repeated indices within a padded window effectively update once. sum_occurrences uses np.add.at to sum and count every occurrence correctly. This changes weighting when support indices repeat; re-evaluate products before comparing scores with the paper. Both modes reject non-finite predictions.

Crop NPZ output keeps raw semantic index 0–4 and separately thresholds semantic_las_class to 1 below 0.60. Tile pred_semantic also encodes low confidence as 5. Neither introduces an additional learned class.