Open Source Robotics

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

Active Perception

  • Detto anche: active vision
  • Categoria: Sensing › Perception outputs
  • Tag: perception, viewpoint-planning, uncertainty, 3d-reconstruction, information-gain

Controllare come e dove un robot rileva, ad esempio spostando una telecamera o l'oggetto stesso, in modo che ogni nuova misura riduca l'incertezza su ciò che il robot deve sapere.

Definizione

Percezione attiva (active perception) tratta il rilevamento sensoriale come qualcosa che il robot controlla anziché ricevere. Invece di elaborare le immagini o le scansioni che arrivano, un robot che percepisce attivamente sceglie il proprio punto di vista, la direzione dello sguardo, lo zoom, la messa a fuoco o le impostazioni del sensore, oppure muove l'oggetto davanti al sensore, in modo che la misura successiva sia la più utile possibile per il suo compito. Ruzena Bajcsy ha formulato l'idea nel suo articolo del 1988 Active Perception, descrivendola come lo studio di strategie di modellazione e di controllo per la percezione, e lavori collegati sulla visione attiva di Aloimonos e colleghi hanno mostrato che alcuni problemi di visione mal posti per un osservatore passivo diventano ben posti quando l'osservatore può muoversi.

La maggior parte delle formulazioni moderne chiude l'anello attraverso l'incertezza. Il robot mantiene una credenza sulla grandezza di interesse, come la forma di un oggetto, la sua posa, la sua classe o una mappa, prevede come ogni possibile azione di rilevamento cambierebbe tale credenza e sceglie l'azione con il miglior guadagno atteso, spesso misurato come riduzione dell'entropia o della varianza, bilanciato con il costo del movimento. La pianificazione della prossima vista migliore (next-best-view planning) per la ricostruzione 3D, il controllo dello sguardo per il tracciamento e la scelta delle viste per il riconoscimento degli oggetti seguono tutti questo schema. Quando la decisione si estende su più passi il problema è per sua natura un POMDP, risolto con pianificatori nello spazio delle credenze o con la ricerca ad albero; in pratica molti sistemi usano una scelta greedy a un passo o un movimento di scansione fisso, come ruotare un oggetto davanti a una telecamera.

La percezione attiva è strettamente legata alla percezione interattiva, ma le due non coincidono. La percezione attiva cambia il rapporto del sensore con la scena, spostando il sensore o presentando l'oggetto in modo diverso, senza bisogno di modificare la scena stessa. La percezione interattiva stabilisce deliberatamente un contatto fisico per rivelare proprietà che altrimenti non si vedono, come spingere un oggetto per separarlo dal disordine o tirare un cassetto per individuarne il giunto. La raccolta robotica di informazioni applica gli stessi principi su spazi ampi, come pianificare il percorso di un drone per mappare un campo.

Perché è importante

Una singola vista di una scena è di solito incompleta: gli oggetti nascondono parti di sé stessi e si nascondono a vicenda, e alcune proprietà sono visibili solo da certe angolazioni. Scegliere dove guardare permette a un robot di ricostruire, riconoscere o localizzare oggetti con meno misure e in meno tempo, il che conta per afferrare oggetti sconosciuti, per l'ispezione e per l'esplorazione.

Applicazioni principali

  • Pianificazione della prossima vista migliore per ricostruzione 3D e ispezione
  • Riconoscimento degli oggetti e stima della posa da punti di vista scelti
  • Controllo dello sguardo e della telecamera su umanoidi e robot mobili
  • Scansione dell'oggetto in mano prima di riafferrarlo
  • Esplorazione e mappatura con droni e robot terrestri

In pratica

Un braccio robotico con una telecamera al polso ha bisogno di un modello 3D completo di un oggetto sconosciuto prima di pianificare una presa precisa. Dopo averlo afferrato in modo lasco, il robot lo tiene davanti a una telecamera di profondità fissa e lo ruota attorno all'asse verticale, fondendo le immagini di profondità in un modello volumetrico. Dove il modello è ancora incerto, ad esempio sul lato inferiore nascosto dalla pinza, il sistema valuta una manciata di pose candidate in base a quanti voxel sconosciuti rivelerebbe ciascuna e si sposta sulla migliore. Si ferma quando il guadagno atteso scende sotto una soglia, quindi riafferra l'oggetto usando il modello completato.

Idee sbagliate comuni

  • Percezione attiva significa usare sensori attivi come il LiDAR o la luce strutturata — 'attiva' si riferisce al controllo del processo di rilevamento, che si applica allo stesso modo alle telecamere passive
  • Percezione attiva e percezione interattiva sono la stessa cosa — la percezione attiva cambia il punto di vista o i parametri del sensore, mentre la percezione interattiva manipola fisicamente la scena per rivelare informazioni
  • Richiede sempre una pianificazione ottima su più passi — molti sistemi efficaci usano scelte greedy della prossima vista migliore o movimenti di scansione fissi; la pianificazione POMDP completa si usa quando il costo in più ripaga

Chi dovrebbe saperlo

  • Ingegneri della percezione che lavorano sulla ricostruzione 3D
  • Ricercatori di manipolazione che gestiscono oggetti sconosciuti
  • Sviluppatori di esplorazione autonoma e ispezione
  • Ricercatori di pianificazione nello spazio delle credenze e guidata dall'informazione

Tecnologie correlate

  • Pianificazione della prossima vista migliore (Next-Best-View Planning)
  • Mappatura volumetrica (TSDF, OctoMap)
  • Unità Pan-Tilt
  • Pianificazione basata sulla teoria dell'informazione (Information-Theoretic Planning)
  • Solver per POMDP

Termini correlati

  • Interactive Perception
  • Robotic information gathering
  • Eye-in-Hand Camera
  • Belief-Space Planning
  • Frontier-Based Exploration
  • Partially Observable Markov Decision Process (POMDP)

Progetti correlati

  • LingBot-Map: Streaming 3D reconstruction from one camera: pose and depth for every frame, live
  • Open3D: Modern library for 3D point cloud processing, mesh operations, and 3D machine learning
  • PCL: Industry-standard C++ library for point cloud processing in robotics perception
  • OpenDroneMap: Open-source photogrammetry toolkit that turns drone images into maps and 3D models
  • pySLAM: Hybrid Python/C++ visual SLAM pipeline with classic and deep-learning front-ends
  • OpenMind OM1: AI-native operating system for robots with modular perception, cognition, and action

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