38
Detekcija objekata: SLAMovoze´ ci automobili Kosta Grujˇ ci´ c Matematiˇ cka gimnazija NEDELJA V5.0 INFORMATIKE 18. decembar 2018. Detekcija objekata: SLAMovoze´ ci automobili Kosta Grujˇ ci´ c

Detekcija objekata: SLAMovozeci automobilini.mg.edu.rs/static/resources/v5.0/uto1_slam_kg.pdfUvodSLAMDetekcija objekataFinale Podsecanje´ I Integral I Verovatnoca´ I slucajne promenljiveˇ

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Detekcija objekata: SLAMovozeci automobilini.mg.edu.rs/static/resources/v5.0/uto1_slam_kg.pdfUvodSLAMDetekcija objekataFinale Podsecanje´ I Integral I Verovatnoca´ I slucajne promenljiveˇ

Detekcija objekata: SLAMovozeci automobili

Kosta Grujcic

Matematicka gimnazijaNEDELJAV5.0

INFORMATIKE

18. decembar 2018.

Detekcija objekata: SLAMovozeci automobili Kosta Grujcic

Page 2: Detekcija objekata: SLAMovozeci automobilini.mg.edu.rs/static/resources/v5.0/uto1_slam_kg.pdfUvodSLAMDetekcija objekataFinale Podsecanje´ I Integral I Verovatnoca´ I slucajne promenljiveˇ

Uvod SLAM Detekcija objekata Finale

Podsecanje

I Integral

I VerovatnocaI slucajne promenljiveI uslovna verovatnocaI raspodela i zajednicka raspodela

Detekcija objekata: SLAMovozeci automobili Kosta Grujcic

Page 3: Detekcija objekata: SLAMovozeci automobilini.mg.edu.rs/static/resources/v5.0/uto1_slam_kg.pdfUvodSLAMDetekcija objekataFinale Podsecanje´ I Integral I Verovatnoca´ I slucajne promenljiveˇ

Uvod SLAM Detekcija objekata Finale

Podsecanje

I Integral

I VerovatnocaI slucajne promenljiveI uslovna verovatnocaI raspodela i zajednicka raspodela

Detekcija objekata: SLAMovozeci automobili Kosta Grujcic

Page 4: Detekcija objekata: SLAMovozeci automobilini.mg.edu.rs/static/resources/v5.0/uto1_slam_kg.pdfUvodSLAMDetekcija objekataFinale Podsecanje´ I Integral I Verovatnoca´ I slucajne promenljiveˇ

Uvod SLAM Detekcija objekata Finale

Podsecanje

I Integral

I VerovatnocaI slucajne promenljiveI uslovna verovatnocaI raspodela i zajednicka raspodela

Detekcija objekata: SLAMovozeci automobili Kosta Grujcic

Page 5: Detekcija objekata: SLAMovozeci automobilini.mg.edu.rs/static/resources/v5.0/uto1_slam_kg.pdfUvodSLAMDetekcija objekataFinale Podsecanje´ I Integral I Verovatnoca´ I slucajne promenljiveˇ

Uvod SLAM Detekcija objekata Finale

Motivacija

I Želimo da se automobil sam krece kroz prostor

I Želimo da automobil zna šta je oko njega

I Radi jednostavnosti, automobil smatramo agentom

Detekcija objekata: SLAMovozeci automobili Kosta Grujcic

Page 6: Detekcija objekata: SLAMovozeci automobilini.mg.edu.rs/static/resources/v5.0/uto1_slam_kg.pdfUvodSLAMDetekcija objekataFinale Podsecanje´ I Integral I Verovatnoca´ I slucajne promenljiveˇ

Uvod SLAM Detekcija objekata Finale

Motivacija

I Želimo da se automobil sam krece kroz prostor

I Želimo da automobil zna šta je oko njega

I Radi jednostavnosti, automobil smatramo agentom

Detekcija objekata: SLAMovozeci automobili Kosta Grujcic

Page 7: Detekcija objekata: SLAMovozeci automobilini.mg.edu.rs/static/resources/v5.0/uto1_slam_kg.pdfUvodSLAMDetekcija objekataFinale Podsecanje´ I Integral I Verovatnoca´ I slucajne promenljiveˇ

Uvod SLAM Detekcija objekata Finale

Prostor i kretanje

I Kompozicija translacija i rotacijaI afine transformacije

I Euklidski prostor nije dobar model prostoraI Projektivna geometrija

Detekcija objekata: SLAMovozeci automobili Kosta Grujcic

Page 8: Detekcija objekata: SLAMovozeci automobilini.mg.edu.rs/static/resources/v5.0/uto1_slam_kg.pdfUvodSLAMDetekcija objekataFinale Podsecanje´ I Integral I Verovatnoca´ I slucajne promenljiveˇ

Uvod SLAM Detekcija objekata Finale

Prostor i kretanje

I Kompozicija translacija i rotacijaI afine transformacije

I Euklidski prostor nije dobar model prostoraI Projektivna geometrija

Detekcija objekata: SLAMovozeci automobili Kosta Grujcic

Page 9: Detekcija objekata: SLAMovozeci automobilini.mg.edu.rs/static/resources/v5.0/uto1_slam_kg.pdfUvodSLAMDetekcija objekataFinale Podsecanje´ I Integral I Verovatnoca´ I slucajne promenljiveˇ

Uvod SLAM Detekcija objekata Finale

Šta je SLAM?

I Odredivanje okruženja – mapiranje

I Odredivanje pozicije agenta – lokalizacija

I Istovremeno!

Detekcija objekata: SLAMovozeci automobili Kosta Grujcic

Page 10: Detekcija objekata: SLAMovozeci automobilini.mg.edu.rs/static/resources/v5.0/uto1_slam_kg.pdfUvodSLAMDetekcija objekataFinale Podsecanje´ I Integral I Verovatnoca´ I slucajne promenljiveˇ

Uvod SLAM Detekcija objekata Finale

Šta je SLAM?

I Odredivanje okruženja – mapiranje

I Odredivanje pozicije agenta – lokalizacija

I Istovremeno!

Detekcija objekata: SLAMovozeci automobili Kosta Grujcic

Page 11: Detekcija objekata: SLAMovozeci automobilini.mg.edu.rs/static/resources/v5.0/uto1_slam_kg.pdfUvodSLAMDetekcija objekataFinale Podsecanje´ I Integral I Verovatnoca´ I slucajne promenljiveˇ

Uvod SLAM Detekcija objekata Finale

Formalna postavka

I ot – opservacije u trenutku tI ct – radnja koju agent preduzima u trenutku tI xt – pozicija agenta u trenutku tI m – mapa okruženja u trenutku

I Treba izracunati P (xt,m|o1:t,c1:t)I online SLAM

Detekcija objekata: SLAMovozeci automobili Kosta Grujcic

Page 12: Detekcija objekata: SLAMovozeci automobilini.mg.edu.rs/static/resources/v5.0/uto1_slam_kg.pdfUvodSLAMDetekcija objekataFinale Podsecanje´ I Integral I Verovatnoca´ I slucajne promenljiveˇ

Uvod SLAM Detekcija objekata Finale

Zašto je teško?

I Pozicija robota nam treba za mapu okruženja

I Mapa okruženja nam treba za poziciju robota

I Neizbežan šum prilikom opažanja

I Opservacije su potpuno neprecizne na duže staze

Detekcija objekata: SLAMovozeci automobili Kosta Grujcic

Page 13: Detekcija objekata: SLAMovozeci automobilini.mg.edu.rs/static/resources/v5.0/uto1_slam_kg.pdfUvodSLAMDetekcija objekataFinale Podsecanje´ I Integral I Verovatnoca´ I slucajne promenljiveˇ

Uvod SLAM Detekcija objekata Finale

Kalmanov filter

I Pretpostavlja da je model linearan

I Pretpostavlja da je šum normalne raspodele

I Rekurzivan postupakI estimation stepI update stepI za svaki korak je neophodan samo prethodni

Detekcija objekata: SLAMovozeci automobili Kosta Grujcic

Page 14: Detekcija objekata: SLAMovozeci automobilini.mg.edu.rs/static/resources/v5.0/uto1_slam_kg.pdfUvodSLAMDetekcija objekataFinale Podsecanje´ I Integral I Verovatnoca´ I slucajne promenljiveˇ

Uvod SLAM Detekcija objekata Finale

Kalmanov filter

I Pretpostavlja da je model linearan

I Pretpostavlja da je šum normalne raspodele

I Rekurzivan postupakI estimation stepI update stepI za svaki korak je neophodan samo prethodni

Detekcija objekata: SLAMovozeci automobili Kosta Grujcic

Page 15: Detekcija objekata: SLAMovozeci automobilini.mg.edu.rs/static/resources/v5.0/uto1_slam_kg.pdfUvodSLAMDetekcija objekataFinale Podsecanje´ I Integral I Verovatnoca´ I slucajne promenljiveˇ

Uvod SLAM Detekcija objekata Finale

Kalmanov filter

I Pretpostavlja da je model linearan

I Pretpostavlja da je šum normalne raspodele

I Rekurzivan postupakI estimation stepI update stepI za svaki korak je neophodan samo prethodni

Detekcija objekata: SLAMovozeci automobili Kosta Grujcic

Page 16: Detekcija objekata: SLAMovozeci automobilini.mg.edu.rs/static/resources/v5.0/uto1_slam_kg.pdfUvodSLAMDetekcija objekataFinale Podsecanje´ I Integral I Verovatnoca´ I slucajne promenljiveˇ

Uvod SLAM Detekcija objekata Finale

Kalmanov filter

I Pretpostavlja da je model linearan

I Pretpostavlja da je šum normalne raspodele

I Rekurzivan postupakI estimation stepI update stepI za svaki korak je neophodan samo prethodni

Detekcija objekata: SLAMovozeci automobili Kosta Grujcic

Page 17: Detekcija objekata: SLAMovozeci automobilini.mg.edu.rs/static/resources/v5.0/uto1_slam_kg.pdfUvodSLAMDetekcija objekataFinale Podsecanje´ I Integral I Verovatnoca´ I slucajne promenljiveˇ

Uvod SLAM Detekcija objekata Finale

Linearnost modela

I xt = Atxt−1 +Btct + εt

I ot = Ctxt + δt

I At – matrica ekskluzivne veze trenutne i prethodnepozicije

I Bt – matrica ekskluzivne veze trenutne pozicije i trenutneradnje

I Ct – matrica veze trenutne pozicije i trenutne opservacijeI εt, δt – trenutan šum normalne raspodele kretanja i

opservacija redomI kovarijacije su redom Et i Dt

Detekcija objekata: SLAMovozeci automobili Kosta Grujcic

Page 18: Detekcija objekata: SLAMovozeci automobilini.mg.edu.rs/static/resources/v5.0/uto1_slam_kg.pdfUvodSLAMDetekcija objekataFinale Podsecanje´ I Integral I Verovatnoca´ I slucajne promenljiveˇ

Uvod SLAM Detekcija objekata Finale

Algoritam

KALMANFILTER(µt−1, Σt−1, ct, ot)1. µt = Atµt−1 +Btct

2. Σ = AtΣt−1ATt + Et

3. Kt = ΣtCTt (CtΣtC

Tt +Dt)

−1

4. µt = µt +Kt(ot − Ctµt)

5. Σt = (I −KtCt)Σt

6. return µt, Σt

Detekcija objekata: SLAMovozeci automobili Kosta Grujcic

Page 19: Detekcija objekata: SLAMovozeci automobilini.mg.edu.rs/static/resources/v5.0/uto1_slam_kg.pdfUvodSLAMDetekcija objekataFinale Podsecanje´ I Integral I Verovatnoca´ I slucajne promenljiveˇ

Uvod SLAM Detekcija objekata Finale

Nelinearan model

I Matrice At, Bt i Ct se menjaju odgovarajucim vektorskimfunkcijama

I Ivršicemo lokalnu linearizacijuI Tejlorov razvoj do prvog clanaI Lokalno aproksimiramo tangentni prostor

I Zahteva više izracunavanja

Detekcija objekata: SLAMovozeci automobili Kosta Grujcic

Page 20: Detekcija objekata: SLAMovozeci automobilini.mg.edu.rs/static/resources/v5.0/uto1_slam_kg.pdfUvodSLAMDetekcija objekataFinale Podsecanje´ I Integral I Verovatnoca´ I slucajne promenljiveˇ

Uvod SLAM Detekcija objekata Finale

Nelinearan model

I Matrice At, Bt i Ct se menjaju odgovarajucim vektorskimfunkcijama

I Ivršicemo lokalnu linearizacijuI Tejlorov razvoj do prvog clanaI Lokalno aproksimiramo tangentni prostor

I Zahteva više izracunavanja

Detekcija objekata: SLAMovozeci automobili Kosta Grujcic

Page 21: Detekcija objekata: SLAMovozeci automobilini.mg.edu.rs/static/resources/v5.0/uto1_slam_kg.pdfUvodSLAMDetekcija objekataFinale Podsecanje´ I Integral I Verovatnoca´ I slucajne promenljiveˇ

Uvod SLAM Detekcija objekata Finale

Nelinearan model

I Matrice At, Bt i Ct se menjaju odgovarajucim vektorskimfunkcijama

I Ivršicemo lokalnu linearizacijuI Tejlorov razvoj do prvog clanaI Lokalno aproksimiramo tangentni prostor

I Zahteva više izracunavanja

Detekcija objekata: SLAMovozeci automobili Kosta Grujcic

Page 22: Detekcija objekata: SLAMovozeci automobilini.mg.edu.rs/static/resources/v5.0/uto1_slam_kg.pdfUvodSLAMDetekcija objekataFinale Podsecanje´ I Integral I Verovatnoca´ I slucajne promenljiveˇ

Uvod SLAM Detekcija objekata Finale

EKF SLAM

µ =

[xm

]Σ =

[Σxx Σxm

Σmx Σmm

]I x = (x, y, θx, θy, θz)

T

I m = (m1,x,m1,y, ...,mn,x,mn,y)T

I (Σxx)i,j = cov[xi,xj ]

I (Σxm)i,j = (Σmx)j,i = cov[xi,mj ]

I (Σmm)i,j = cov[mi,mj ]

Detekcija objekata: SLAMovozeci automobili Kosta Grujcic

Page 23: Detekcija objekata: SLAMovozeci automobilini.mg.edu.rs/static/resources/v5.0/uto1_slam_kg.pdfUvodSLAMDetekcija objekataFinale Podsecanje´ I Integral I Verovatnoca´ I slucajne promenljiveˇ

Uvod SLAM Detekcija objekata Finale

Plan rada

1. Procena stanja2. Procena opažanja3. Opažanje4. Asocijacija podataka5. Ažuriranje

Detekcija objekata: SLAMovozeci automobili Kosta Grujcic

Page 24: Detekcija objekata: SLAMovozeci automobilini.mg.edu.rs/static/resources/v5.0/uto1_slam_kg.pdfUvodSLAMDetekcija objekataFinale Podsecanje´ I Integral I Verovatnoca´ I slucajne promenljiveˇ

Uvod SLAM Detekcija objekata Finale

Šta vidi SLAM?

I SLAM ne razlikuje psa od kamiona

I Potrebna nam je inteligencija

I Mora da radi u realnom vremenu

I Hardverska zahtevnost mora biti što je moguce manja

Detekcija objekata: SLAMovozeci automobili Kosta Grujcic

Page 25: Detekcija objekata: SLAMovozeci automobilini.mg.edu.rs/static/resources/v5.0/uto1_slam_kg.pdfUvodSLAMDetekcija objekataFinale Podsecanje´ I Integral I Verovatnoca´ I slucajne promenljiveˇ

Uvod SLAM Detekcija objekata Finale

Podsecanje

I Neuronske mrežeI funkcije aktivacijeI propagacija unazadI konvolucija

Detekcija objekata: SLAMovozeci automobili Kosta Grujcic

Page 26: Detekcija objekata: SLAMovozeci automobilini.mg.edu.rs/static/resources/v5.0/uto1_slam_kg.pdfUvodSLAMDetekcija objekataFinale Podsecanje´ I Integral I Verovatnoca´ I slucajne promenljiveˇ

Uvod SLAM Detekcija objekata Finale

Podsecanje

I Neuronske mrežeI funkcije aktivacijeI propagacija unazadI konvolucija

Detekcija objekata: SLAMovozeci automobili Kosta Grujcic

Page 27: Detekcija objekata: SLAMovozeci automobilini.mg.edu.rs/static/resources/v5.0/uto1_slam_kg.pdfUvodSLAMDetekcija objekataFinale Podsecanje´ I Integral I Verovatnoca´ I slucajne promenljiveˇ

Uvod SLAM Detekcija objekata Finale

YOLO algoritam

I Vrši detekciju objekata

I Odreduje okvir svakog objekta

I Veoma efikasan – koristi samo jedan CNN

Detekcija objekata: SLAMovozeci automobili Kosta Grujcic

Page 28: Detekcija objekata: SLAMovozeci automobilini.mg.edu.rs/static/resources/v5.0/uto1_slam_kg.pdfUvodSLAMDetekcija objekataFinale Podsecanje´ I Integral I Verovatnoca´ I slucajne promenljiveˇ

Uvod SLAM Detekcija objekata Finale

YOLO algoritam

I Vrši detekciju objekata

I Odreduje okvir svakog objekta

I Veoma efikasan – koristi samo jedan CNN

Detekcija objekata: SLAMovozeci automobili Kosta Grujcic

Page 29: Detekcija objekata: SLAMovozeci automobilini.mg.edu.rs/static/resources/v5.0/uto1_slam_kg.pdfUvodSLAMDetekcija objekataFinale Podsecanje´ I Integral I Verovatnoca´ I slucajne promenljiveˇ

Uvod SLAM Detekcija objekata Finale

YOLO algoritam

I Vrši detekciju objekata

I Odreduje okvir svakog objekta

I Veoma efikasan – koristi samo jedan CNN

Detekcija objekata: SLAMovozeci automobili Kosta Grujcic

Page 30: Detekcija objekata: SLAMovozeci automobilini.mg.edu.rs/static/resources/v5.0/uto1_slam_kg.pdfUvodSLAMDetekcija objekataFinale Podsecanje´ I Integral I Verovatnoca´ I slucajne promenljiveˇ

Uvod SLAM Detekcija objekata Finale

YOLO algoritam

I Vrši detekciju objekata

I Odreduje okvir svakog objekta

I Veoma efikasan – koristi samo jedan CNN

Detekcija objekata: SLAMovozeci automobili Kosta Grujcic

Page 31: Detekcija objekata: SLAMovozeci automobilini.mg.edu.rs/static/resources/v5.0/uto1_slam_kg.pdfUvodSLAMDetekcija objekataFinale Podsecanje´ I Integral I Verovatnoca´ I slucajne promenljiveˇ

Uvod SLAM Detekcija objekata Finale

Kako YOLO radi?

I Slika se deli na manje kvadrate – celije

I Celija koja je u centru objekta ga odreduje

I Svaka celija ima svoj okvir – bounding box

I Za svaku celiju se odreduju verovatnoce za svaku klasu

Detekcija objekata: SLAMovozeci automobili Kosta Grujcic

Page 32: Detekcija objekata: SLAMovozeci automobilini.mg.edu.rs/static/resources/v5.0/uto1_slam_kg.pdfUvodSLAMDetekcija objekataFinale Podsecanje´ I Integral I Verovatnoca´ I slucajne promenljiveˇ

Uvod SLAM Detekcija objekata Finale

Detekcija objekata: SLAMovozeci automobili Kosta Grujcic

Page 33: Detekcija objekata: SLAMovozeci automobilini.mg.edu.rs/static/resources/v5.0/uto1_slam_kg.pdfUvodSLAMDetekcija objekataFinale Podsecanje´ I Integral I Verovatnoca´ I slucajne promenljiveˇ

Uvod SLAM Detekcija objekata Finale

Okviri

I Za svaku celiju po B okvira

I Odreden centrom, dužinom i širinom

I Relativna reprezentacija

Detekcija objekata: SLAMovozeci automobili Kosta Grujcic

Page 34: Detekcija objekata: SLAMovozeci automobilini.mg.edu.rs/static/resources/v5.0/uto1_slam_kg.pdfUvodSLAMDetekcija objekataFinale Podsecanje´ I Integral I Verovatnoca´ I slucajne promenljiveˇ

Uvod SLAM Detekcija objekata Finale

Duplikati

I Svaki okvir je dovoljno dobar – trivijalno

I Susedne celije mogu detektovati isti objekat – problemI Rešenje: Non-maximum suppresion

Detekcija objekata: SLAMovozeci automobili Kosta Grujcic

Page 35: Detekcija objekata: SLAMovozeci automobilini.mg.edu.rs/static/resources/v5.0/uto1_slam_kg.pdfUvodSLAMDetekcija objekataFinale Podsecanje´ I Integral I Verovatnoca´ I slucajne promenljiveˇ

Uvod SLAM Detekcija objekata Finale

Slika: Žuti okvir – ground-truth

Detekcija objekata: SLAMovozeci automobili Kosta Grujcic

Page 36: Detekcija objekata: SLAMovozeci automobilini.mg.edu.rs/static/resources/v5.0/uto1_slam_kg.pdfUvodSLAMDetekcija objekataFinale Podsecanje´ I Integral I Verovatnoca´ I slucajne promenljiveˇ

Uvod SLAM Detekcija objekata Finale

Arhitektura mreže

Detekcija objekata: SLAMovozeci automobili Kosta Grujcic

Page 37: Detekcija objekata: SLAMovozeci automobilini.mg.edu.rs/static/resources/v5.0/uto1_slam_kg.pdfUvodSLAMDetekcija objekataFinale Podsecanje´ I Integral I Verovatnoca´ I slucajne promenljiveˇ

Uvod SLAM Detekcija objekata Finale

Pipeline

Detekcija objekata: SLAMovozeci automobili Kosta Grujcic

Page 38: Detekcija objekata: SLAMovozeci automobilini.mg.edu.rs/static/resources/v5.0/uto1_slam_kg.pdfUvodSLAMDetekcija objekataFinale Podsecanje´ I Integral I Verovatnoca´ I slucajne promenljiveˇ

Uvod SLAM Detekcija objekata Finale

Rekapitulacija

I Agent zna gde je u prostoru

I Agent je svestan prostora oko sebe

I Agent zna šta se oko njega nalazi

Detekcija objekata: SLAMovozeci automobili Kosta Grujcic