Open Source Robotics

Una raccolta curata di progetti, strumenti e software di robotica open source di alta qualità per la comunità della robotica.

Surfel

  • Detto anche: surface element
  • Categoria: Sensing › 3D maps & reconstruction
  • Tag: mapping, slam, 3d-reconstruction, lidar, 3d-perception

Un elemento di superficie: un piccolo disco orientato con posizione, normale e raggio, spesso con colore, confidenza e marche temporali, usato per costruire mappe 3D dense.

Definizione

Surfel, abbreviazione di surface element (elemento di superficie), è un piccolo disco piatto che approssima una porzione di superficie. Ogni surfel memorizza almeno una posizione 3D, un vettore normale e un raggio, e i sistemi di mappatura di solito aggiungono campi come il colore, un valore di confidenza o di stabilità e gli istanti in cui è stato creato e aggiornato l'ultima volta. I surfel furono introdotti nel 2000 da Pfister e colleghi come primitiva di rendering nella computer grafica, e in seguito adottati per la ricostruzione 3D densa e lo SLAM con telecamere di profondità e LiDAR.

Una mappa di surfel si colloca tra una nuvola di punti grezza e una mesh o una mappa volumetrica. A differenza dei semplici punti, i surfel hanno orientamento ed estensione, quindi possono essere resi come una superficie dall'aspetto chiuso e confrontati con nuove misure tramite distanze punto-piano. A differenza di un campo di distanza con segno troncato su una griglia di voxel, non richiedono un volume fisso né una risoluzione fissa, e possono essere spostati singolarmente. Quest'ultima proprietà conta per lo SLAM: quando una chiusura del loop corregge la traiettoria, sistemi come ElasticFusion deformano la mappa di surfel con un grafo di deformazione invece di ricostruire un volume.

In una tipica pipeline di SLAM a surfel, la mappa corrente viene resa dalla posa stimata del sensore, spesso sulla GPU, per produrre un'immagine del modello con posizioni e normali. Il nuovo frame viene allineato a questo rendering, il che fornisce un'associazione dei dati proiettiva rapida per una registrazione in stile ICP. Le misure che corrispondono a un surfel esistente lo aggiornano con una media pesata e ne aumentano la confidenza; le misure senza corrispondenza creano nuovi surfel, e i surfel confermati di rado vengono rimossi. SuMa e SuMa++ applicano questo schema al LiDAR rotante, usando immagini di distanza per il rendering, e SuMa++ aggiunge etichette semantiche a ogni surfel per filtrare gli oggetti in movimento.

Perché è importante

I surfel forniscono una mappa di superficie densa e modificabile che consente una registrazione rapida e può essere corretta dopo una chiusura del loop senza ricostruirla. Sono una scelta comune nello SLAM denso RGB-D e LiDAR, e dischi orientati simili compaiono in rappresentazioni di scena più recenti, neurali e basate su gaussiane.

Applicazioni principali

  • SLAM RGB-D denso e ricostruzione 3D di interni
  • SLAM LiDAR per la guida e la mappatura all'aperto
  • Mappatura semantica con etichette di classe per surfel
  • Rendering basato su punti di scene scansionate
  • Deformazione della mappa dopo una chiusura del loop

In pratica

Un team che mappa un isolato cittadino con un LiDAR rotante montato su un'auto usa un sistema SLAM basato su surfel. Per ogni nuova scansione, il sistema rende la mappa di surfel corrente in un'immagine di distanza alla posa prevista, vi allinea la scansione con ICP punto-piano e poi fonde i punti con corrispondenza nei surfel esistenti, aggiungendone di nuovi per le aree senza corrispondenza. Gli ingegneri regolano la soglia di stabilità che decide quando un surfel è affidabile e le regole per rimuovere i surfel non più osservati, perché altrimenti le auto parcheggiate che se ne vanno resterebbero nella mappa. A ogni surfel vengono assegnate etichette semantiche da una rete di segmentazione, così che i punti sui veicoli in movimento possano essere esclusi dalla registrazione.

Idee sbagliate comuni

  • Un surfel è solo un punto — ha anche una normale e un raggio, che ne fanno un piccolo disco orientato invece di un campione privo di estensione
  • Le mappe di surfel sono mesh — i surfel non sono connessi e non c'è una topologia esplicita tra vicini
  • I surfel richiedono una griglia di voxel fissa — vivono in uno spazio continuo, uno dei loro vantaggi rispetto alle mappe volumetriche
  • Ogni punto osservato diventa un surfel permanente — la fusione unisce osservazioni ripetute e rimuove i surfel non confermati

Chi dovrebbe saperlo

  • Ingegneri di SLAM e mappatura 3D
  • Sviluppatori di percezione LiDAR e RGB-D
  • Ingegneri di computer grafica e rendering
  • Team di mappatura per la guida autonoma

Tecnologie correlate

  • ElasticFusion
  • SuMa
  • Fusione TSDF (TSDF Fusion)
  • Rendering basato su punti (Point-Based Rendering)
  • 2D Gaussian Splatting

Termini correlati

  • Point Cloud
  • SLAM
  • Iterative Closest Point
  • Range Image
  • Signed Distance Field
  • 3D Gaussian Splatting

Progetti correlati

  • LingBot-Map: Streaming 3D reconstruction from one camera: pose and depth for every frame, live
  • oomwoo: Open-source DIY robot vacuum: 3D-printed, ROS2 + 2D LiDAR, fully local.
  • Cartographer: Google's real-time 2D and 3D SLAM system for multi-platform robotics
  • OpenDroneMap: Open-source photogrammetry toolkit that turns drone images into maps and 3D models
  • FAST-LIVO2: Fast, direct LiDAR-inertial-visual odometry from HKU-MARS, published in IEEE T-RO
  • DimOS: Python robotics runtime with agents, SLAM and teleop, no ROS required

Questo sito richiede JavaScript. Attiva JavaScript per esplorare i nostri progetti di robotica open source.