V.Caglioti - Autolocalizzazione DI ROBOT MOBILI Vincenzo Caglioti V.Caglioti - Autolocalizzazione
V.Caglioti - Autolocalizzazione - Richiami sugli stimatori - Autolocalizzazione telemetrica - Autolocalizzazione visiva V.Caglioti - Autolocalizzazione
V.Caglioti - Autolocalizzazione Stima a massima verosimiglianza V.Caglioti - Autolocalizzazione
V.Caglioti - Autolocalizzazione Weighted least squares V.Caglioti - Autolocalizzazione
V.Caglioti - Autolocalizzazione Covarianza con V.Caglioti - Autolocalizzazione
V.Caglioti - Autolocalizzazione Su agiscono errori di misura Sia un valore della misura X compatibile con il modello p V.Caglioti - Autolocalizzazione
V.Caglioti - Autolocalizzazione Bayes a priori uniforme costante con p indipendente da p V.Caglioti - Autolocalizzazione
V.Caglioti - Autolocalizzazione con valore nominale da Stima a massima verosimiglianza (ML) V.Caglioti - Autolocalizzazione
V.Caglioti - Autolocalizzazione Minimi quadrati pesati Covarianza isoliamo nell’esponente i termini “quadratici” in p V.Caglioti - Autolocalizzazione
V.Caglioti - Autolocalizzazione Se i singoli errori di misurazione (es. sui punti) sono indipendenti e V.Caglioti - Autolocalizzazione
V.Caglioti - Autolocalizzazione Autolocalizzazione telemetrica scan matching stima incrementale V.Caglioti - Autolocalizzazione
V.Caglioti - Autolocalizzazione Scan Matching Uso di telemetro orientabile senza informazioni a priori Matching: generazione di un’ipotesi di stima Raffinamento della stima generata V.Caglioti - Autolocalizzazione
V.Caglioti - Autolocalizzazione Matching E’ richiesta robustezza nei confronti di: rumore nelle misure outliers dati mancanti Transformata di Hough Generalizzata (GHT) con “footprints” a) modellizzazione della mappa b) matching tra misure e modello della mappa ipotesi di stima di posizione e orientamento V.Caglioti - Autolocalizzazione
V.Caglioti - Autolocalizzazione Modellizzazione: Footprint: features “locali” caratterizzate da - parametri intrinseci (es. angoli, distanze, curvature) - parametri estrinseci (es. posizione e orientamento) eventualmente raggruppate (ad es. se mancano parametri intrinseci) ordinate in base ai parametri intrinseci delle singole footprint o dei gruppi di footprint, per reperimento efficiente V.Caglioti - Autolocalizzazione
V.Caglioti - Autolocalizzazione Matching tra misure e modello della mappa costruzione delle feature dalle misurazioni - per ciascuna feature (o ciascun gruppo) - selezionare footprint candidate esplorando la struttura dati sulla base dei parametri intrinseci - per ogni footprint candidata - utilizzare parametri estrinseci per vincolare [x,y,q] - per ogni valore di [x,y,q] compatibile con i vincoli - incrementare il contatore di voti di [x,y,q] - selezionare il valore di [x,y,q] più votato V.Caglioti - Autolocalizzazione
V.Caglioti - Autolocalizzazione Es. footprint 2 par. estrinseci + 0 par. intrinseci 2 par. estrinseci + 0 par. intrinseci 2 par. estrinseci + 1 par. intrinseco 3 par. estrinseci + 1 par. intrinseco 3 par. estrinseci + 1 o 2 par. intrinseci V.Caglioti - Autolocalizzazione
V.Caglioti - Autolocalizzazione Raffinamento della stima ove è il risultato della misura i-ma (distanza tra R e ambiente lungo retta di misura fi) e mentre z R x f a y q V.Caglioti - Autolocalizzazione
V.Caglioti - Autolocalizzazione con Varianza V.Caglioti - Autolocalizzazione
V.Caglioti - Autolocalizzazione Stima incrementale Ciclo movimento misurazione Partenza: e Movimento: o misura odometrica riferito alla posizione corrente V.Caglioti - Autolocalizzazione
V.Caglioti - Autolocalizzazione dunque va trasformato per rappresentarlo nel riferimento base ove V.Caglioti - Autolocalizzazione
V.Caglioti - Autolocalizzazione errori odometrici : (o di attuazione del movimento) - errori nella stima di partenza: loro effetto sull’errore in V.Caglioti - Autolocalizzazione
V.Caglioti - Autolocalizzazione ove con V.Caglioti - Autolocalizzazione
V.Caglioti - Autolocalizzazione Stima dopo il movimento (ma prima di ulteriori misure) Varianza di tale stima ove V.Caglioti - Autolocalizzazione
V.Caglioti - Autolocalizzazione ulteriore misura: stima ML equivale a stima di Kalman ove z è il risultato effettivo della misura mentre è il risultato che si otterrebbe: in assenza di errori se il modello vero fosse Varianza della nuova stima ottenuta V.Caglioti - Autolocalizzazione
V.Caglioti - Autolocalizzazione Autolocalizzazione visiva “landmark” artificiali “landmark” naturali V.Caglioti - Autolocalizzazione
V.Caglioti - Autolocalizzazione
V.Caglioti - Autolocalizzazione Trasformazione scena immagine X x y c f O principal axis principal point Y u X Z image reference - centered on upper left corner - nonsquare pixels (aspect ratio) scene reference not attached to the camera V.Caglioti - Autolocalizzazione
V.Caglioti - Autolocalizzazione Centro ottico Spazio nullo destro della matrice di proiezione Per ogni A, tutti i punti in AO hanno la stessa immagine di A, pertanto O è centro ottico V.Caglioti - Autolocalizzazione
V.Caglioti - Autolocalizzazione Direzione degli infiniti punti aventi immagine u prendiamo quello all’infinito: questo punto dà la direzione della retta di interpretazione del punto immagine u Telecamera: sensore di direzione u d V.Caglioti - Autolocalizzazione
V.Caglioti - Autolocalizzazione Landmark artificiali Hp: landmark planari Cambio riferimento dal robot al piano contenente il landmark V.Caglioti - Autolocalizzazione
V.Caglioti - Autolocalizzazione sul piano del landmark, i suoi punti hanno Z=0 H: omografia piano landmark piano immagine V.Caglioti - Autolocalizzazione
V.Caglioti - Autolocalizzazione 1) determinare omografia H (da n punti) 2) determinare n, o, t a partire da H V.Caglioti - Autolocalizzazione
V.Caglioti - Autolocalizzazione Determinazione dell’omografia H determinare un valore nominale da 4 degli n punti risolvendo un’equazione lineare raffinare la stima usando gli n punti V.Caglioti - Autolocalizzazione
V.Caglioti - Autolocalizzazione Misure non rumorose { con V.Caglioti - Autolocalizzazione
V.Caglioti - Autolocalizzazione Linearizzazione attorno al valore nominale jacobiano con V.Caglioti - Autolocalizzazione
V.Caglioti - Autolocalizzazione Misure affette da rumore con e Stima ML (max likelihood) V.Caglioti - Autolocalizzazione
V.Caglioti - Autolocalizzazione stima varianza V.Caglioti - Autolocalizzazione
V.Caglioti - Autolocalizzazione Determinazione di n, o, t da trovare s tale che |n|=1 aggiustare n e o affinché siano consistenti con moto piano - es. se il piano landmark è verticale o verticale n orizzontale V.Caglioti - Autolocalizzazione
V.Caglioti - Autolocalizzazione Landmark naturali Es. spigoli verticali xi telecamera prospettica: piani di interpretazione verticali telecamera catadiottrica (simmetrica rispetto a un asse verticale) rette radiali concorrenti nell’immagine di un punto dell’asse ai V.Caglioti - Autolocalizzazione
V.Caglioti - Autolocalizzazione Aspetti geometrici Luogo dei punti da cui due spigoli x1 e x2 si vedono sotto un angolo d: x1 x2 Angolo al centro: doppio dell’angolo circonferenza circonferenza d d Con 3 spigoli: intersezione tra le due circonferenze …1 soluzione valida (si scarta quella costituita da uno spigolo comune) V.Caglioti - Autolocalizzazione
V.Caglioti - Autolocalizzazione con n>3 spigoli e misure angolari affette da rumore Problema delle corrispondenze spigoli misurati spigoli nella mappa Alternative: Ransac (random sample consensus) Trasformata di Hough Valore di partenza per successivo raffinamento della stima V.Caglioti - Autolocalizzazione
V.Caglioti - Autolocalizzazione Ransac: scegli a caso un certo numero di terne di spigoli misurati per ciascuna terna scegli un certo numero di terne di spigoli modello per ogni corrispondenza (terna-misurata, terna-modello) scelta calcola p=[x,y]T intersecando due circonferenze valuta il consenso della corrispondenza come numero delle altre misure compatibili con la p calcolata scegli la coppia di terne corrispondenti con maggior consenso assegna la corrispondente p al valore di partenza per il raffinamento V.Caglioti - Autolocalizzazione
V.Caglioti - Autolocalizzazione Trasformata di Hough: discretizza in celle la parte navigabile dell’ambiente per le coppie di spigoli rilevate misura l’angolo di per ciascuna coppie di spigoli rilevata per ciascuna coppia di spigoli della mappa costruisci la circonferenza da cui la coppia è vista sotto l’angolo misurato per ogni cella attraversata dalla circonferenza incrementa il contatore dei voti determina la cella col massimo numero di voti assegna il centro della cella al valore di partenza per il raffinamento V.Caglioti - Autolocalizzazione
V.Caglioti - Autolocalizzazione Raffinamento della stima V.Caglioti - Autolocalizzazione
V.Caglioti - Autolocalizzazione misure affette da errori indipendenti riduzione delle incognite nuove variabili misurate H V.Caglioti - Autolocalizzazione
V.Caglioti - Autolocalizzazione misure non rumorose con V.Caglioti - Autolocalizzazione
V.Caglioti - Autolocalizzazione Linearizzazione tramite jacobiano Stima ML Varianza V.Caglioti - Autolocalizzazione
V.Caglioti - Autolocalizzazione Recupero di q dalla posizione p=[x,y]T stimata utilizzare l’infomazione circa un angolo a rilevato y: orientamento del segmento tra p e lo spigolo considerato = y- a oppure utilizzare una media tra gli angoli rilevati V.Caglioti - Autolocalizzazione