Innehåll Kamerabaserad interaktion Del 3 3D och AR Anders Henrysson Augmented Reality Introduktion Displayer Tracking Kamerabaserad tracking och interaktion AR på mobiltelefoner CMAR Vad är AR? Förstärkning/utökning av sinnesintryck av den verkliga världen m.h.a. virtuell information I praktiken en vy av verkligheten överlagrad med datorgrafik Världen genom datorn 1. Mix av virtuell och verklig information 2. Virtuell information registrerad i 3D 3. Realtid Potential Intelligensförstärkning Ökad produktivitet Bättre perception av och interaktion med den verkliga världen Eliminera kontextbyte (spatial seams) Problemdomän Visualiseringsdomän AR Världen genom datorn Delvis virtuell VR Världar i datorn Helt virtuell AR vs. VR 1
AR Data har direkt koppling (position och skala) till verkligheten AR vs. VR Real Environment Milgrams kontinuum Augmented Reality (AR) Mixed Reality Augmented Virtuality (AV) Virtual Environment VR Data kan vara abstrakt Godtycklig skala Spel Sport Utbildning Navigering Montering Arkitektur Medicin Applikationsområden Förutsättningar Gemensamt koordinatsystem (riktiga och virtuella världen) Tracking = positionering i 6 dimensioner (position + orientering) Registrering (på pixelnivå, annars försvinner illusionen) Skärm som tillåter mix av virtuell och verklig information Registreringsproblemet Dålig registrering bryter illusionen av samexistens mellan verklig och virtuell information och utesluter många användningsområden (t.ex. medicin). Statiska felkällor Optisk distorsion Mekanisk distorsion Tracking Felaktiga vyparametrar Dynamiska felkällor Fördröjningar Mobila konfigurationer Nödvändig hårdvara: Sensorer för tracking Processor för grafik -generering Skärm 2
Skärmar Optisk genomskinlighet Genomskinlighet Huvudburen Handhållen Projektor Stationär Verklighet Virtuella bilder Optiska kombinerare Optisk genomskinlighet Videogenomskinlighet + Billiga + Världen i full upplösning - Verkliga och virtuella objekt på olika avstånd från ögat Videokameror Monitorer Video Grafik Kombinerare Videogenomskinlighet + Klarar att skymma verkliga objekt + Digital bild av verkligheten gör att dataströmmarna kan synkas och att registrering kan förbättras med bildanalys - Öga och kamera har inte samma parametrar Huvudburna skärmar (HMD) + Båda händerna fria + Stor vyvinkel - Inte socialt gångbara - Låg upplösning - Dyra och svårtillgängliga (Kommer ipod Video ändra på detta?) - Inte förberedda för AR 3
Handhållna skärmar + Lättillgängliga + Socialt acceptabla - Begränsad vyvinkel - En hand upptagen - Utmattning Stationära skärmar + Enkla att sätt upp (webbkamera) + Båda händerna fria + Inget att bära + stor vyvinkel - Inte mobila - Vanligen ingen direkt överlagring (såvida inte kameran sitter direkt bakom skärmen) + Verkligt objekt och datorgrafik på samma fokalplan + Stor vyvinkel - Kräver bakgrund - Ännu inte helt mobila Projektorer Stationära Fönster Huvudburen Glasögon Handhållen Förstoringsglas Ficklampa Metaforer Mekanisk Med signalkälla Utan signalkälla Optisk tracking Tracking Krav: precision, hastighet, fördröjning Tracking relativt signalkälla Tidskodad signal. 9 mätpunkter ger 6 frihetsgrader Ultraljud Elektromagnetisk 3 Frihetsgrader (position) (D)GPS WLAN 4
Tracking utan signalkälla Tröghetsnavigering (ofta en per frihetsgrad) Accelerometrar Gyroskop Dead reckoning Hybrid tracking Kombinera fördelarna från flera trackingtekniker Ex. GPS för positionering och accelerometrar för rotation Kompasser MARA (Nokia) MARA GPS för position Accelerometrar för orientering Kompass för riktning Visar karta i horisontellt läge Optisk (video) tracking Kameror har hög tillgänglighet Klarar 6 DOF tracking Passar bra då man har en videogenomskinlig skärm Kan känna igen objekt Från 2D: Markörer Objekt Features Markörer Idé: Markörer har unikt id och känd geometri. Utifrån geometrin kan kamerans relativa position beräknas. Billigt jämfört med t.ex. LED. + Ingen hårdvara - Höga krav på belysning - Måste vara synliga 5
ARToolKit ARToolKit Öppen källkod Finns på flertalet plattformar Enkelt att komma igång Bra verktyg för att prototypa AR applikationer 6DOF tracking Interaktion (Tangible UI) ARToolKit ARToolKit Demo ARToolKit 6
Kamerabaserat TUI Ett lättmanövrerat objekt förses med en markör + Enkelt sätt att åstadkomma isomorf interaktion - Kräver att minst två markörer är synliga samtidigt - En modalitet Modellbaserad optisk tracking Idé: En befintlig CAD-modell av ett objekt i scenen matchas mot kanter etc. i bilden. Den transformation som ger minst fel antas vara den rätta. + Inga markörer behövs + CAD modell kan beskriva godtyckligt stort objekt (t.ex. en hel byggnad) + Ingen drift - Svårare att eliminera felkällor (Kant från textur eller geometri?) - Inte lätt att skapa kompatibel CAD-modell Modellbaserad optisk tracking Feature tracking - SLAM Idé: Använd features (hörn, kanter etc.) i två bilder tagna i sekvens för att räkna ut kamerans rörelse i 3D. Beräkna samtidigt scenens 3D geometri. MonoSLAM = Simultaneous Localization And Mapping med en kamera + Ingen förkunskap om miljön krävs + Kan potentiellt lösa ocklusionsproblemet - Drift - Stora avstånd? - Hur initiera? Utgå från markör? MonoSLAM Modell + Features 7
Inifrån eller utifrån? Inifrån-ut: Kameran som sköter trackingen rör sig med skärmen och ser vad användaren ser. Utifrån-in: Kameran befinner sig i omgivningen och följer skärmen utifrån. Jmf motion tracking i filmindustrin LightSense [Olwal] Tracking av mobilens LED med hjälp av en webbkamera Isomorf interaktion + Trackingrymden större än vid inside-out + Inga markörer krävs + Beräkningen flyttas till kraftfullare enhet - Mobilen måste kopplas ihop med den dator som webbkameran är kopplad till för att trackingdata ska kunna överföras och/eller användas på mobilen - Endast 3DOF LightSense [Olwal] ARToolkit till Symbian ARToolKit på PC Skrivet i C Flyttal med dubbel precision Plattformsberoende grafik och kamerahantering C++ wrapper för att bli av med globala variabler Fixpunktsbibliotek Variabel precision ARM assembler Tabeller, matris- och vektorfunktioner Vissa operationer blev 20 ggr snabbare 3D Grafik - OpenGL ES Ca 10 fps. Nokia 6600 109 MHz CPU ARTennis 6 DOF interaktion på mobiltelefon (första?) Objektmetafor - tennisracket Fysikbaserad bollsimulering i markörrymden. Sker parallellt på båda telefonerna Konstant hastighet enbart mobilens position och orientering används som indata. Transformation mellan markörkoordinater och kamerakoordinater Racket definierat som en cylinder kamerarymdens x,y-plan. Kollisionshantering: Ändra tecken på y-riktningen Skicka bollens riktning och position Multimodal utdata: Vibration + ljud indikerar träff Simuleringarna synkroniseras via Bluetooth Användarstudie objektmanipulation 6 DOF isomorft EUI Flytta och rotera objekt Testade interaktionsmetoder (Objektet låst relativt kameran = EUI): Translation 1. Objektet låst relativt kameran (en hand) 2. Knapptryckningar 3. Objektet låst relativt kameran (två händer) Rotation 1. Arcball (Objekt i virtuell sfär) 2. Objektet låst relativt kameran (en hand) 3. Objektet låst relativt kameran (två händer) 4. Knapptryckningar (rotation runt objektets lokala koordinataxlar) Användarna föredrog T1 och R4 8
Scenmanipulation 6 DOF isomorft EUI Välj, flytta och rotera objekt Minimal generell scen med två objekt och markplan Välj objekt genom att tillskriva varje objekt ett unikt alfavärde och sampla centrala pixeln i ett hårkors. Kombination av knappar och EUI 6 DOF EUI 3 + 3 DOF knappar Halvgenomskinlig meny för att välja transformation Menylayout som knappsats Exempelapplikation: AR LEGO Virtuella Legobitar kan sättas ihop Diskreta positioner och rotationer likt fysiskt Lego Taktil återkoppling då bitar sätts ihop eller tas isär Exempelapplikation: 3Dmodellering Dynamisk mesh där polygoner och normaler räknas ut vid uppdatering Måste kunna välja mellan hundratals olika kontrollpunkter Lösning: En färg per kontrollpunkt. Rendera två gånger. Interaktion med intelligent omgivning: Visualisering av sensornätverk med Augmented Reality Visualisering i realtid Grid av fuktsensorer med kända koordinater i markörrymd ZigBee + Bluetooth Analogi Sensor - pixel Intelligensförstärkning: AR ger oss kunskaper som ögat inte kan ge Mobiltelefon som magisk lins 1. Skörda sensornätverket 2. Mappa till färgvärden 3. Interpolera 4. Registrera med verkligheten Referenser Henrysson Anders Face to Face Collaborative AR on Mobile Phones Olwal Alex LightSense: Enabling Spatially Aware Handheld Interaction Devices Wagner Daniel ARToolKitPlus for Pose Tracking on Mobile Devices 9