Event Camera
- Detto anche: dynamic vision sensor, DVS, neuromorphic camera, silicon retina
- Categoria: Sensing › Exteroceptive
- Tag: computer-vision, sensors, neuromorphic, high-speed-perception, drones
Un sensore di visione i cui pixel segnalano in modo indipendente le variazioni di luminosità come eventi con timestamp invece di fotogrammi completi, offrendo una temporizzazione molto fine, un'elevata gamma dinamica e assenza di mosso.
Definizione
Una telecamera a eventi (event camera) non acquisisce immagini a una frequenza di fotogrammi fissa. Ogni pixel funziona in modo indipendente e genera un evento quando il logaritmo dell'intensità luminosa che vede è cambiato più di una soglia prefissata dal suo ultimo evento. Un evento contiene le coordinate del pixel, un timestamp con risoluzione dell'ordine del microsecondo e una polarità che indica se la luminosità è aumentata o diminuita. L'uscita è un flusso asincrono la cui frequenza dipende da quanto cambia la scena: una scena statica davanti a una telecamera ferma non produce quasi nulla, mentre un moto rapido produce una frequenza di eventi molto elevata.
Il primo sensore di questo tipo a diffondersi ampiamente è stato il sensore di visione dinamica (DVS) di Lichtsteiner, Posch e Delbruck (2008), ispirato al modo in cui la retina risponde al cambiamento. Progetti successivi come DAVIS leggono anche fotogrammi di intensità convenzionali dalla stessa matrice di pixel, e i sensori di tipo ATIS aggiungono misure di intensità per pixel. Poiché ogni pixel risponde all'intensità logaritmica rispetto al proprio passato recente, le telecamere a eventi gestiscono insieme scene con regioni molto luminose e molto scure e, poiché non esiste un tempo di esposizione condiviso, il moto rapido non produce mosso nell'uscita. Anche la latenza e il consumo energetico sono bassi rispetto alle telecamere a fotogrammi che funzionano ad alta frequenza.
Il prezzo è che gli algoritmi standard di visione artificiale non si applicano direttamente. I metodi elaborano gli eventi uno alla volta, per esempio con filtri evento per evento, oppure li accumulano su brevi finestre in frame di eventi, superfici temporali o griglie di voxel che possono alimentare pipeline convenzionali o apprese. Le telecamere a eventi sono rumorose, sensibili allo sfarfallio delle luci alimentate dalla rete elettrica, offrono di solito una risoluzione inferiore rispetto alle telecamere a fotogrammi e rispondono soprattutto ai bordi che si muovono rispetto al sensore, quindi le regioni prive di texture e il moto lungo un bordo danno poco segnale. Si usano per il tracciamento ad alta velocità, l'odometria visiva sotto rotazioni rapide e le scene in condizioni di scarsa luce o ad alto contrasto, spesso insieme a una telecamera a fotogrammi e a un'IMU.
Perché è importante
Molti guasti della percezione sui robot veloci derivano dal mosso, da immagini saturate o sottoesposte e dalla latenza delle telecamere a fotogrammi. Le telecamere a eventi eliminano questi modi di guasto, il che consente di continuare a tracciare le feature durante rotazioni e manovre rapide o in scene che mescolano luce intensa e ombra.
Applicazioni principali
- Odometria visiva e SLAM durante il moto rapido
- Rilevamento ed evitamento degli ostacoli a bassa latenza per i droni
- Tracciamento ad alta velocità di oggetti e feature
- Visione in scene ad alta gamma dinamica e in condizioni di scarsa luce
- Stima del flusso ottico
In pratica
Un quadricottero che perde un'elica può restare controllabile ruotando velocemente attorno al proprio asse verticale, ma a quella velocità di rotazione le immagini di una telecamera a fotogrammi risultano mosse, soprattutto con poca luce, e il tracciamento delle feature si interrompe. I lavori su questo problema confrontano una pipeline basata sui fotogrammi con una che usa una telecamera a eventi: gli eventi vengono accumulati in brevi finestre, le feature vengono rilevate e tracciate in quella rappresentazione, e le tracce vengono passate insieme ai dati dell'IMU a un back-end di odometria visivo-inerziale. La messa a punto del sensore comporta la calibrazione dei parametri intrinseci con un pattern lampeggiante o in movimento (una scacchiera statica non produce eventi), la sincronizzazione dei timestamp con l'IMU e la regolazione delle soglie di contrasto e delle impostazioni di bias per bilanciare sensibilità e rumore. Le luci interne che sfarfallano generano eventi spuri che vanno filtrati prima del tracciamento.
Idee sbagliate comuni
- Una telecamera a eventi è solo una telecamera a fotogrammi molto veloce — non ha fotogrammi; ogni pixel segnala le variazioni in modo asincrono, quindi una scena statica non produce quasi alcuna uscita
- Le telecamere a eventi vedono tutto nella scena — rispondono alle variazioni di luminosità, soprattutto sui bordi in movimento, quindi le superfici prive di texture e il moto lungo un bordo danno poco segnale
- Gli eventi sono dati puliti — le soglie variano da pixel a pixel, il rumore di fondo e lo sfarfallio delle luci producono eventi spuri, e il filtraggio fa parte di ogni pipeline pratica
Chi dovrebbe saperlo
- Ingegneri della percezione che lavorano su robot in moto rapido
- Ricercatori dell'autonomia dei droni
- Ricercatori di visione artificiale nel sensing neuromorfico
- Ingegneri della stima dello stato
Tecnologie correlate
- Sensore DAVIS (DAVIS Sensor)
- Superfici temporali (Time Surfaces)
- Reti neurali spiking (Spiking Neural Networks)
- Calcolo neuromorfico (Neuromorphic Computing)
- Flusso ottico basato su eventi (Event-Based Optical Flow)
Termini correlati
Progetti correlati
- ArduPilot: World's most trusted open-source autopilot for drones, planes, rovers, and submarines
- PX4 Autopilot: Open-source flight control software for drones and other unmanned vehicles
- OpenDroneMap: Open-source photogrammetry toolkit that turns drone images into maps and 3D models
- QGroundControl: Cross-platform ground control station for mission planning and drone flight monitoring
- DimOS: Python robotics runtime with agents, SLAM and teleop, no ROS required
- pySLAM: Hybrid Python/C++ visual SLAM pipeline with classic and deep-learning front-ends
Video
- Event Cameras: a New Way of Sensing - Davide Scaramuzza - ICCP 2024 Keynote: UZH Robotics and Perception Group