Comprendere i dati del LiDAR: nuvola di punti, formati e ROS
Nuvole di punti, intensità, riflessioni multiple, formati PCD/LAS/ROSbag — tutto ciò che serve sapere per sfruttare i dati grezzi di un sensore LiDAR.
Cos'è una nuvola di punti?
La nuvola di punti (point cloud) è il formato di uscita nativo di un sensore LiDAR. Ogni punto rappresenta un tiro laser che ha colpito una superficie ed è tornato al rivelatore. Una nuvola di punti tipica contiene da 50.000 a 2,5 milioni di punti al secondo a seconda del sensore.
Ogni punto trasporta diversi attributi: la posizione (x, y, z), l'intensità del ritorno, talvolta il tempo di arrivo e il numero del canale. Alcuni sensori aggiungono il colore RGB, la classificazione o il numero di eco (echo number).
Intensità e riflettività
L'intensità misura la potenza del segnale di ritorno. Una superficie bianca riflette più di una superficie nera. L'intensità aiuta a distinguere i materiali ma non è calibrata in modo assoluto: dipende dalla distanza, dall'angolo di incidenza e dall'impostazione del sensore.
Echi multipli (multi-eco)
Un tiro laser può attraversare un fogliame parziale e colpire un ramo poi il suolo: si ottengono due ritorni (first e last return). I LiDAR multi-eco (RIEGL, alcuni Ouster) registrano fino a 5 ritorni per tiro — essenziale per la cartografia forestale.
I formati di file comuni
PCD (PCL): formato aperto per robotica e percezione. LAS/LAZ (ASPRS): standard geospaziale compresso con classificazione. PLY: supporta colore e normali per visione artificiale. ROSbag: contenitore ROS per registrazione e riproduzione.
I dati LiDAR in ROS
ROS utilizza sensor_msgs/PointCloud2 per trasportare le nuvole di punti. Formato auto-descrittivo con campi x, y, z, intensity, ring, timestamp. Alcuni sensori pubblicano anche /scan (LaserScan) per il 2D e /imu_raw per i dati inerziali. La sincronizzazione temporale è cruciale per lo SLAM.
Rumore e artefatti comuni
Punti fantasma (ghost) su superfici riflettenti, rumore solare in pieno sole, pioggia/nebbia che creano punti parassiti ed effetti di bordo sui bordi. La maggior parte degli SDK include filtri: outlier removal, filtro per intensità, soglia di distanza e maschera FoV.
Dal dato all'informazione
Segmentazione (raggruppare i punti di uno stesso oggetto), classificazione (etichettare: suolo, edificio, veicolo), tracking (tracciamento temporale) e SLAM (correlazione delle nuvole per costruire una mappa). La scelta del formato dipende dall'applicazione: LAS per la cartografia, PointCloud2/ROS per la robotica, PLY/PCD per l'IA.