🚗 Waarneming bij Autonome Voertuigen — Sensorfusie Live
Combineer gesimuleerde LIDAR-puntenwolken met cameragestijlde detecties met behulp van een Kalmanfilter-tracker, en zie de samengevoegde objectlijst in real time vergrendeld blijven op bewegende obstakels.
Over sensorfusie voor waarneming bij autonome voertuigen
Autonome voertuigen vertrouwen nooit op één enkele sensor. LIDAR levert precieze, bijna isotrope 3D-afstandsmetingen maar is schaars en heeft moeite bij slecht weer; camera's zijn dicht en goedkoop maar schatten diepte alleen indirect, dus hun afstandswaarden zijn ruizig terwijl hun richting (hoek) waarden uitstekend zijn. Een Kalmanfilter is de klassieke, wiskundig optimale manier (voor lineair-Gaussische systemen) om deze complementaire sterktes te combineren: elk gevolgd obstakel houdt een toestandsschatting bij van positie en snelheid plus een covariantiematrix die beschrijft hoe zeker de tracker is, en elke binnenkomende meting duwt die schatting bij met een hoeveelheid evenredig aan hoeveel betrouwbaarder de sensor is dan de huidige schatting.
Deze simulatie rendert een echte 3D-scène rond een ego-voertuig: echte Three.js-meshes bewegen langs onafhankelijke paden, een Kalmanfilter per object voorspelt elke frame de beweging van elk obstakel met realistische procesruis, en gesimuleerde LIDAR- en cameragen metingen — elk met hun eigen, fysiek gemotiveerde ruiscovariantie — worden samengevoegd tot een effen gevolgd begrenzingsvak. De ruwe, trillerige sensortreffers worden getekend als kleine doorschijnende markeringen zodat het gladstrijkvoordeel van fusie direct zichtbaar is in plaats van alleen beweerd.
Veelgestelde vragen
Wat is sensorfusie bij waarneming van autonome voertuigen?
Sensorfusie combineert metingen van meerdere sensortypen — meestal LIDAR, camera's en radar — tot een enkele, nauwkeurigere schatting van de wereld dan welke sensor alleen kan produceren. LIDAR geeft precieze 3D-puntenwolken met betrouwbaar bereik maar is schaars op lange afstand en heeft moeite in mist of zware regen. Camera's geven dichte, hoge-resolutiebeelden met uitstekende richtingsnauwkeurigheid en klasse-informatie, maar slechte en ruizige diepteschatting vanuit één lens. Een Kalmanfilter voegt deze complementaire sterktes samen door elke meting te wegen volgens zijn eigen ruiscovariantie, zodat het uiteindelijke spoor leunt op welke sensor op dat moment in die richting betrouwbaarder is.
Hoe combineert een Kalmanfilter LIDAR- en cameragegevens?
Elk gevolgd object houdt een toestandsvector bij van positie en snelheid plus een covariantiematrix die de onzekerheid van de schatting beschrijft. Elke simulatiestap voert een voorspelstap uit (de toestand vooruitschuiven met een constante-snelheid bewegingsmodel en procesruis toevoegen) gevolgd door een of meer updatestappen, één per beschikbare meting. Elke update berekent de innovatie — het verschil tussen de voorspelde positie en de nieuwe meting — schaalt dit met de Kalman-versterking, afgeleid uit de verhouding tussen de huidige onzekerheid en de eigen ruiscovariantie van de sensor, en mengt het in de toestand. Een precieze LIDAR-treffer trekt de schatting sterk naar zichzelf toe; een ruizige camera-diepte-meting trekt slechts zwak, terwijl de nauwkeurige richtingscomponent nog steeds veel helpt.
Waarom hebben camera's en LIDAR verschillende ruiskarakteristieken in deze simulatie?
LIDAR meet afstand direct met een laser-tijd-van-vlucht, dus de fout is klein en bijna hetzelfde in elke richting, en groeit slechts langzaam met afstand. Eén camera schat 3D-positie door inferentie, wat nauwkeurig is voor de hoek naar een object maar zeer onzeker langs de gezichtslijn. Deze simulatie modelleert dat expliciet: de ruiscovariantie van elke cameradetectie wordt gebouwd als een ellips die langs de diepte-as is uitgerekt en geroteerd om overeen te komen met de werkelijke richting van het object vanaf het ego-voertuig, waarna gecorreleerde Gaussische ruis uit die ellips wordt bemonsterd met een Cholesky-decompositie.
Wat vertegenwoordigen de ruwe stippen en de effen vakken?
De kleine doorschijnende cyaan bollen zijn ruwe, ruizige LIDAR-detecties en de kleine doorschijnende amberkleurige kubussen zijn ruwe, ruizige cameradetecties — precies wat elke sensor rapporteert vóór enige filtering. De effen oranje vakken zijn de samengevoegde Kalman-sporen: de gefilterde, gladgestreken toestandsschatting voor elk obstakel na het combineren van elke beschikbare meting met de juiste covariantieweging. Zien dat het effen vak stabiel blijft terwijl de ruwe stippen eromheen trillen, is precies het punt dat sensorfusie zichtbaar maakt.
Wat gebeurt er wanneer een sensor in deze simulatie wordt uitgeschakeld?
LIDAR of de camera uitschakelen stopt simpelweg dat de detecties van die sensor voor elk volgend frame worden gegenereerd. Bestaande sporen blijven draaien op alleen de voorspelstap — hun positie schuift vooruit met de laatst bekende snelheid en hun onzekerheid groeit elke stap omdat geen nieuwe meting die verkleint. Als een spoor te veel frames zonder update blijft, wordt het verwijderd, precies zoals echte waarnemingsstacks omgaan met sensoruitval of occlusie: kort meedrijven op het bewegingsmodel, en dan opgeven als niets bevestigt dat het object er nog is.
Hoe gaat de tracker om met nieuwe obstakels die verschijnen of verdwijnen?
Elk frame wordt elke nieuwe detectie vergeleken met de voorspelde positie van elk bestaand spoor met behulp van een nearest-neighbour-poort. Detecties die binnen de poort vallen, werken dat spoor bij — een echt object kan binnen hetzelfde frame door zowel LIDAR als camera worden bevestigd. Detecties die nergens bij passen, worden geclusterd met andere niet-gematchte detecties in de buurt en gespawned als een gloednieuw voorlopig spoor, dat pas na een paar opeenvolgende treffers wordt gepromoveerd tot een bevestigd spoor. Sporen die geen detecties meer ontvangen, stapelen missers op en worden verwijderd zodra ze de mislimiet overschrijden, zodat het actieve spooraantal altijd weerspiegelt wat het samengevoegde systeem momenteel gelooft dat er is.
Echte Kalmanfilters per object (constante-snelheid toestand, procesruis, covariantie-gewogen updates) voegen gesimuleerde LIDAR- en cameradetecties samen in een echte 3D Three.js-scène, waarbij nearest-neighbour data-associatie de aanmaak en verwijdering van sporen afhandelt.
3D · Three.js / WebGL renderer · 60 FPS target · runs fully client-side, no install