Advertentie
Simultane lokalisatie en mapping (SLAM) is waarschijnlijk geen zin die u elke dag gebruikt. Verschillende van de nieuwste coole technologische wonderen gebruiken dit proces echter elke milliseconde van hun levensduur.
Wat is SLAM? Waarom hebben we het nodig? En wat zijn deze coole technologieën waar je het over hebt?
Van acroniem tot abstract idee
Hier is een snelle game voor jou. Welke hoort er niet bij?
- Zelfrijdende auto's
- Augmented reality-apps
- Autonome lucht- en onderwatervoertuigen
- Wearables met een gemengde realiteit
- De Roomba
U denkt misschien dat het antwoord gemakkelijk het laatste item in de lijst is. In zekere zin heb je gelijk. Op een andere manier was dit een trick-game omdat al deze items gerelateerd zijn.
De echte vraag van het (erg coole) spel is deze: wat maakt al deze technologieën haalbaar? Het antwoord: gelijktijdige lokalisatie en mapping, of SLAM! zoals de coole kinderen het zeggen.
In algemene zin is het doel van SLAM-algoritmen eenvoudig genoeg om te herhalen. Een robot gebruikt gelijktijdige lokalisatie en mapping om zijn positie en oriëntatie (of pose) in de ruimte te schatten, terwijl hij een kaart van zijn omgeving maakt. Hierdoor kan de robot identificeren waar hij is en hoe hij door een onbekende ruimte kan bewegen.
Dus ja, dat wil zeggen dat al dit fancy-smancy-algoritme de positie schat. Een andere populaire technologie, Global Positioning System (of GPS) Hoe werkt GPS-tracking en wat kunt u ermee volgen?GPS. We kennen het als de technologie die ons van A naar B leidt. Maar GPS is meer dan dat. Er is een wereld aan mogelijkheden en we willen niet dat je iets mist. Lees verder beoordeelt zijn positie sinds de eerste Golfoorlog van de jaren negentig.
Onderscheid maken tussen SLAM en GPS
Dus waarom dan de behoefte aan een nieuw algoritme? GPS heeft twee inherente problemen. Ten eerste, hoewel GPS nauwkeurig is ten opzichte van een wereldwijde schaal, verminderen zowel precisie als nauwkeurigheid de schaal ten opzichte van een kamer, een tafel of een klein kruispunt. GPS heeft een nauwkeurigheid tot op een meter, maar wat is de centimeter? Millimeter?
Ten tweede werkt GPS niet goed onder water. Met niet goed bedoel ik helemaal niet. Evenzo zijn de prestaties vlekkerig in gebouwen met dikke betonnen muren. Of in kelders. Je snapt het idee. GPS is een op satellieten gebaseerd systeem dat lijdt aan fysieke beperkingen.
Dus SLAM-algoritmen zijn bedoeld om een verbeterd gevoel van positie te geven aan onze meest geavanceerde gadgets en machines.
Deze apparaten hebben al een reeks sensoren en randapparatuur. SLAM-algoritmen gebruiken de gegevens van zoveel mogelijk hiervan door wat wiskunde en statistieken te gebruiken.
Kip of ei? Positie of kaart?
Wiskunde en statistiek zijn nodig om een complex dilemma te beantwoorden: wordt positie gebruikt om de kaart van de omgeving te maken of wordt de kaart van de omgeving gebruikt om de positie te berekenen?
Dacht experiment tijd! Je bent interdimensionaal vervormd naar een onbekende plek. Wat doe je als eerste? Paniek? Ok, kalmeer, haal diep adem. Neem een andere. Wat is het tweede dat u doet? Kijk om je heen en probeer iets bekends te vinden. Links staat een stoel. Rechts van je staat een plant. Er staat een salontafel voor je.
Vervolgens, eens de verlammende angst voor "Waar ben ik in vredesnaam?" is uitgewerkt, je begint te bewegen. Wacht, hoe werkt beweging in deze dimensie? Zet een stap voorwaarts. De stoel en plant worden kleiner en de tafel wordt groter. Nu kunt u bevestigen dat u in feite vooruitgang boekt.
Waarnemingen zijn de sleutel tot het verbeteren van de nauwkeurigheid van de SLAM-schatting. In de onderstaande video, terwijl de robot van marker naar marker gaat, bouwt hij een betere kaart van de omgeving.
Terug naar de andere dimensie, hoe meer je rondloopt, hoe meer je je oriënteert. Door alle kanten op te stappen, bevestigt u dat beweging in deze dimensie vergelijkbaar is met uw thuisdimensie. Als je naar rechts gaat, doemt de plant groter op. Handig zie je andere dingen die je identificeert als herkenningspunten in deze nieuwe wereld waarmee je zelfverzekerder kunt ronddwalen.
Dit is in wezen het proces van SLAM.
Inputs in het proces
Om deze schattingen te maken, gebruiken de algoritmen verschillende gegevens die kunnen worden gecategoriseerd als intern of extern. Voor uw voorbeeld van interdimensionaal transport (geef toe, u had een leuke reis), zijn de interne metingen de grootte van de stappen en de richting.
De uitgevoerde externe metingen zijn in de vorm van afbeeldingen. Het identificeren van herkenningspunten zoals de plant, stoel en tafel is een gemakkelijke taak voor de ogen en de hersenen. De krachtigste processor die bekend is - het menselijk brein - kan deze beelden maken en niet alleen objecten identificeren, maar ook de afstand tot dat object schatten.
Helaas (of gelukkig, afhankelijk van je angst voor SkyNet), hebben robots geen menselijk brein als processor. Machines vertrouwen op siliciumchips met door mensen geschreven code als brein.
Andere machines maken externe metingen. Randapparatuur zoals gyroscopen of andere inertiële meeteenheden (IMU) zijn hierbij nuttig. Robots zoals zelfrijdende auto's gebruiken ook de odometrie van de wielpositie als interne meting.
Extern gebruiken een zelfrijdende auto en andere robots LIDAR. Net als hoe radar radiogolven gebruikt, meet LIDAR gereflecteerde lichtpulsen om de afstand te identificeren. Het gebruikte licht is typisch ultraviolet of bijna infrarood, vergelijkbaar met een infrarood dieptesensor.
LIDAR verstuurt tienduizenden pulsen per seconde om een driedimensionale puntenwolkkaart met extreem hoge resolutie te creëren. Dus ja, de volgende keer dat Tesla op de automatische piloot ronddraait, schiet het je neer met een laser. Heel vaak.
Bovendien gebruiken SLAM-algoritmen statische afbeeldingen en computervisie-technieken als externe meting. Dit wordt gedaan met een enkele camera, maar kan nog nauwkeuriger worden gemaakt met een stereopaar.
In de Black Box
Interne metingen werken de geschatte positie bij, die kan worden gebruikt om de externe kaart bij te werken. Externe metingen werken de geschatte kaart bij, die kan worden gebruikt om de positie bij te werken. Je kunt het zien als een gevolgtrekkingsprobleem en het idee is om de optimale oplossing te vinden.
Een gebruikelijke manier om dit te doen is door waarschijnlijkheid. Technieken zoals een deeltjesfilter bij benadering positie en mapping met behulp van Bayesiaanse statistische gevolgtrekking.
Een deeltjesfilter gebruikt een bepaald aantal deeltjes verspreid door een Gauss-verdeling. Elk deeltje 'voorspelt' de huidige positie van de robot. Aan elk deeltje wordt een waarschijnlijkheid toegekend. Alle deeltjes beginnen met dezelfde waarschijnlijkheid.
Als er metingen worden gedaan die elkaar bevestigen (zoals stap vooruit = tafel wordt groter), krijgen de deeltjes die 'correct' zijn in hun positie stapsgewijs betere kansen. Deeltjes die ver weg zijn, krijgen lagere kansen toegewezen.
Hoe meer oriëntatiepunten een robot kan identificeren, hoe beter. Oriëntatiepunten geven feedback aan het algoritme en maken nauwkeurigere berekeningen mogelijk.
Huidige toepassingen die SLAM-algoritmen gebruiken
Laten we dit coole stukje technologie opsplitsen per cool stukje technologie.
Autonome onderwatervoertuigen (AUV's)
Onbemande onderzeeërs kunnen autonoom opereren met SLAM-technieken. Een interne IMU biedt acceleratie- en bewegingsgegevens in drie richtingen. Bovendien gebruiken AUV's sonar aan de onderkant voor diepteschattingen. Side scan sonar maakt beelden van de zeebodem, met een bereik van een paar honderd meter.
Wearables met gemengde realiteit
Microsoft en Magic Leap hebben draagbare brillen geproduceerd die introduceren Mixed Reality-toepassingen Windows Mixed Reality: wat het is en hoe u het nu kunt proberenWindows Mixed Reality is een nieuwe functie waarmee u Windows 10 in virtuele en augmented reality kunt gebruiken. Dit is waarom het spannend is en hoe u kunt achterhalen of uw pc dit ondersteunt. Lees verder . Positie schatten en een kaart maken is cruciaal voor deze wearables. De apparaten gebruiken de kaart om virtuele objecten bovenop echte objecten te plaatsen en ze met elkaar te laten communiceren.
Omdat deze wearables klein zijn, kunnen ze geen grote randapparatuur gebruiken, zoals LIDAR of sonar. In plaats daarvan worden kleinere infrarood-dieptesensoren en naar buiten gerichte camera's gebruikt om een omgeving in kaart te brengen.
Zelfrijdende auto's
Autonome auto's hebben een klein voordeel ten opzichte van wearables. Met een veel groter fysiek formaat, kunnen auto's grotere computers bevatten en hebben ze meer randapparatuur om interne en externe metingen te doen. Zelfrijdende auto's vertegenwoordigen in veel opzichten de toekomst van technologie, zowel qua software als hardware.
SLAM-technologie verbetert
Omdat SLAM-technologie op een aantal verschillende manieren wordt gebruikt, is het slechts een kwestie van tijd voordat het wordt geperfectioneerd. Zodra zelfrijdende auto's (en andere voertuigen) dagelijks worden gezien, weet u dat gelijktijdige lokalisatie en mapping voor iedereen klaar is om te gebruiken.
De zelfrijdende technologie wordt elke dag beter. Wil meer weten? Bekijk de gedetailleerde uitsplitsing van MakeUseOf hoe zelfrijdende auto's werken Hoe zelfrijdende auto's werken: de moeren en bouten achter het autonome autoprogramma van GoogleIn staat zijn om heen en weer te pendelen naar het werk terwijl u slaapt, eet of uw favoriet inhaalt blogs is een concept dat even aantrekkelijk en schijnbaar ver weg en te futuristisch is om eigenlijk te zijn gebeuren. Lees verder . Mogelijk bent u ook geïnteresseerd in hoe hackers zich richten op verbonden auto's.
Beeldcredits: chesky_w /Depositphotos
Tom is een software-ingenieur uit Florida (schreeuw naar Florida Man) met een passie voor schrijven, universiteitsvoetbal (go Gators!), CrossFit en komma's uit Oxford.