Emma Hallstan Emmha584

Relevanta dokument
3D - syn för räddningsrobotar att kartlägga ett område i 3D

Martin Burström [dit02mbm] Robert Eriksson [dit02ren] Filip Sjögren [dit02fsn] Handledare: Therese Edvall Daniel Ölvebrink :13

Hierarchical Temporal Memory Maskininlärning

Statistisk mönsterigenkänning

Föreläsning 11 (kap i Optics)

Reglerteknik AK. Tentamen 24 oktober 2016 kl 8-13

Artificiell Intelligens den nya superkraften

Fingerprint Matching

Experimentella metoder 2013, Räkneövning 3

Sekantmetoden Beräkningsmatematik TANA21 Linköpings universitet Caroline Cornelius, Anja Hellander Ht 2018

Bildregistrering Geometrisk anpassning av bilder

Genetisk programmering i Othello

Specifikation av kandidatexjobb

NU NÄR DU BEKANTAT DIG MED RAMARNAS EGENSKAPER OCH VET. hur man markerar och ändrar dem, är det dags att titta lite närmare på

Grafiska pipelinens funktion

TANA17 Matematiska beräkningar med Matlab

SF1625 Envariabelanalys Lösningsförslag till tentamen

Lipschitz-kontinuitet

Bildmosaik. Bilddatabaser, TNM025. Anna Flisberg Linne a Mellblom. linme882. Linko pings Universitet

Preliminärt lösningsförslag till del I, v1.0

Grafiska pipelinen. Edvin Fischer

Högskolan i Skövde (SK, JS) Svensk version Tentamen i matematik Lösningsförslag till del I

7 Extremvärden med bivillkor, obegränsade områden

Robot Educator En introduktion

Kort introduktion till POV-Ray, del 1

Visuell perception. Sidan 1. Översikt. Sammanfattning av förra föreläsningen. Kognitiv arkitektur. Visuella systemet: översikt.

Experimentella metoder, FK3001. Datorövning: Finn ett samband

Computer vision

Uppsala Universitet Matematiska Institutionen Bo Styf. Genomgånget på föreläsningarna

Välkomna till Reglerteknik Föreläsning 2

Analys av BI-system och utveckling av BIapplikationer

Institutionen för matematik och datavetenskap Karlstads universitet. GeoGebra. ett digitalt verktyg för framtidens matematikundervisning

Bildanalys för vägbeläggningstillämplingar

7x 2 5x + 6 c.) lim x 15 8x + 3x Bestäm eventuella extrempunkter, inflexionspunkter samt horizontella och vertikala asymptoter

Finns det över huvud taget anledning att förvänta sig något speciellt? Finns det en generell fördelning som beskriver en mätning?

Exempel :: Spegling i godtycklig linje.

Funktioner. Räta linjen

Bildbehandling, del 1

Ansiktsigenkänning med MATLAB

= y(0) för vilka lim y(t) är ändligt.

Structuring Two Dimensional Space

Exempel :: Spegling i godtycklig linje.

Komposanter, koordinater och vektorlängd Ja, den här teorin gick vi igenom igår. Istället koncentrerar vi oss på träning inför KS3 och tentamen.

Datorövning 1: Fördelningar

Grundläggande matematisk statistik

Fuzzy Logic: Den oskarpa skarpheten

y y 1 = k(x x 1 ) f(x) = 3 x

Metoder för rörelsemätning, en översikt.

TANA17 Matematiska beräkningar med MATLAB för M, DPU. Fredrik Berntsson, Linköpings Universitet. 9 november 2015 Sida 1 / 28

Föreläsning 9 10: Bildkvalitet (PSF och MTF)

Välkomna till TSRT15 Reglerteknik Föreläsning 2

LAB 1. FELANALYS. 1 Inledning. 2 Flyttal. 1.1 Innehåll. 2.1 Avrundningsenheten, µ, och maskinepsilon, ε M

Mekaniska metoder för att mäta objekt och/eller rörelser kan bestå av:

Programmering = modellering

Signaler, information & bilder, föreläsning 15

EXPERIMENTELLT PROBLEM 2 DUBBELBRYTNING HOS GLIMMER

MA2001 Envariabelanalys

Signal- och bildbehandling TSBB14

Färg- och formerkännande, slutföra motiven. Visuell perception, öga-hand-koordination, grov- och finmotorik, koncentration

Numerisk lösning till den tidsberoende Schrödingerekvationen.

λ = T 2 g/(2π) 250/6 40 m

UPPGIFTER KAPITEL 2 ÄNDRINGSKVOT OCH DERIVATA KAPITEL 3 DERIVERINGSREGLER

Innehåll. Innehåll. Verktyg. Astronomiska Verktyg. Matematiska Verktyg

Del I: Lösningsförslag till Numerisk analys,

Matematisk statistik 9 hp Föreläsning 6: Linjärkombinationer

Föreläsning 5, Matematisk statistik 7.5hp för E Linjärkombinationer

5B1134 Matematik och modeller Lösningsförslag till tentamen den 29 augusti 2005

Laboration i Fourieroptik

= = i K = 0, K =

ARTIFICIELL INTELLIGENS

KTH Matematik Tentamensskrivning i Differentialekvationer och transformer III, SF1637.

Laboration i Fourieroptik

TAIU07 Matematiska beräkningar med Matlab

SF1625 Envariabelanalys Lösningsförslag till tentamen DEL A

SF1626 Flervariabelanalys Lösningsförslag till tentamen DEL A. 1. En svängningsrörelse beskrivs av

Vad är Artificiell Intelligens (AI) Olika typer av AI och deras användningsområden Innovation med hjälp av AI Framtiden och etiska frågeställningar

x 2 + x 2 b.) lim x 15 8x + x 2 c.) lim x 2 5x + 6 x 3 + y 3 xy = 7

x +y +z = 2 2x +y = 3 y +2z = 1 x = 1 + t y = 1 2t z = t 3x 2 + 3y 2 y = 0 y = x2 y 2.

BIO-Mekanik med Robert Andersson

Användarguide för bildredigering i det webbaserade gratisprogrammet: Hur du klipper in ett objekt i en annan bild

729G43 Artificiell intelligens / Maskininlärning 2. Marco Kuhlmann

ANVÄNDARMANUAL. Tack för att ni köpt Cross Line laser LEO 7 Innan du använder den läs denna användarmanual.

SF1901 Sannolikhetsteori och statistik I

Mälardalens högskola Akademin för utbildning, kultur och kommunikation

Frågorna 1 till 6 ska svaras med ett kryss för varje korrekt påstående. Varje uppgift ger 1 poäng. Använd bifogat formulär för dessa 6 frågor.

Färgmeny. Utskriftsläge. Färgkorrigering. Tonersvärta. Manuell färg. Skriva ut. Använda färg. Pappershantering. Underhåll. Felsökning.

Neural bas för kognition

LEGO Robot programmering och felsökning Hur svårt ska det vara att följa den svarta linjen?

732G71 Statistik B. Föreläsning 4. Bertil Wegmann. November 11, IDA, Linköpings universitet

Bildförbättring i spatial domänen (kap. 3) Bildförbättring (enhancement) Spatial domän. Operatorer. Tröskling (threshold) Gråskale-transformationer

4 Fler deriveringsregler

Välkomna till TSRT19 Reglerteknik Föreläsning 8. Sammanfattning av föreläsning 7 Framkoppling Den röda tråden!

SHAZAM! En!smart!musiktjänst! Linha108! Fördjupningsarbete!729G43!

Bruksanvisning Reflexavkännande fotocell O5PG / / 2007

Titel Augmented Reality. DokumentID Projekt FoU. Dokumentstatus Godkänd. Sida 1(10) Version 1.0. Augmented Reality

Precis som var fallet med förra artikeln, Geogebra för de yngre i Nämnaren

SmartCat Pejlare S300

Lösningsförslag, preliminär version 0.1, 23 januari 2018

f (a) sin

Transkript:

LINKÖPING UNIVERISTET SIFT AIBOs ögon Emma Hallstan Emmha584

Innehållsförteckning Inledning... 3 Syfte... 3 SIFT- Scale Invariant Feature Transform... 3 Historien om SIFT... 4 SIFT algoritmen... 4 1. Scale-space extrema detection... 4 2. Keypoint localization... 6 3. Orientation assignment... 6 4. Keypoint descriptor... 7 Diskussion... 8 Referens... 9 2

Inledning AIBO är en 30 centimeter hög och lång robot hund som Sony började sälja redan 1999. Genom åren har flera generationer/utvecklade versioner av AIBO framkommit. Namnet AIBO är en förkortning av Artificial Intelligence robot och utvecklades utifrån ett forskningsprojekt om just artificiell intelligens. Robothunden har funktioner som bland annat röstigenkänning och kan förstå röstkommandon samt har förmågan att lära sig nya beteenden. Den kan lära sig av sin omgivning som kan bestå av till exempel andra AIBO hundar. För att AIBO ska efterlikna en riktig hund så mycket som möjligt så är den även programmerad att då och då ignorera röstkommandon även om de förstår dem[1]. Utöver att kunna anpassa sig till sin miljö har AIBO fler kanaligt hörsel (in stereo) och färg seende. Figure 1 AIBO AIBO utmärker sig från andra mer traditionella artificiella robotar då den samordnar en dator, syn system (vision system) och artikulator (articulators) in en och samma förpackning[1]. Syfte Mitt syfte med detta arbete är att fördjupa mig i Scale Invariant Feature Transform algoritmen (SIFT) som även kan kallas för AIBOs ögon. Hunden använder sig av algoritmen för att exempelvis hitta tillbaka till sin laddare. Jag önskar med detta arbete presentera algoritmens historia och visa dess grunder. SIFT- Scale Invariant Feature Transform SIFT är en algoritm som kan läsa av och tolka ett objekts särdrag. Den utgår ifrån ett objekts utseende och speciella drag. Yttre faktorer som störningar och mindre förändringar i dess synfält påverkar inte tolkningsförmågan[2]. SIFT-algoritmen behöver minst tre särdrag för att kunna göra en tillräcklig beräkning av ett objekts position. Kvantiteten av särdrag är väldgit viktiga vid objektigenkänning[3]. Varje ny bild (image) matchas genom att individuellt jämföra alla särdragen med en databas och hitta en matchning med någon bild som är lagrad där. Matchning är resultatet av en bild som totalt har flest kompatibla särdrag. De ska stämma överens med bildens placering, skala 3

och position[3]. Historien om SIFT Denna slags forskning då man matchar bilder med hjälp av nyckelpunkter kan spåras tillbaka till 1981 och Maravecs arbete om användningen av stereo matchning genom hans corner detector [3]. Matchningen kallas The Moravec operator och definierar intressanta punkter hos en bild där intensiteten varierar stort i varje riktning. Av denna anledning kallas matchningen för corner detector då de intressanta punkterna ofta blir hörn (corner). Moravec var själv intresserad av att hitta specifika delar av en bild som kunde användas för att registrera på varandra följande bildpunkter och inte isynnerhet hörnen av en bild[5]. Denna detektor förbättrades så att den skulle klara av mindre bildvariationer samt närliggande kanter bättre. Harris och Stephen stod för denna utveckling[3]. De intresserade sig för användning av teknik för rörelse analys för att tolka omgivningen. Maravecs arbete begränsades med att matchningarna endast definierade hörn, detta har Harris och Stephen försökt korrigera genom att fokusera både hörn och kanter[6]. Deras resultat har legat till grund för flera andra bildmatchningar[3]. Zhang introducerade korrelationsfönster kring varje hörn för att på så sätt finna trovärdiga matchningar[3]. Tanken är att använda en heuristisk teknik för att finna matchningar[7]. Samtidigt utvecklade Torr en rörelse matchning som liknade Zhangs detektor[3]. Schmid och Mohr var de som var banbrytare med sin forskning. De visade att en oföränderlig matchning (local feature matching) kunde expanderas till generella bilder och dess igenkänning. På så sätt kunde bildens särdrag matchas med en existerande databas. För att finna intressanta nyckelpunkter användes Harris corner detector som grund, men utvecklade detta med möjligheten att rotera sina objekt. Med dessa framsteg kunde alltså en blid med en position matchas med en bild som har en annan position[3]. Harris modellen var väldigt känslig för förändring vad gäller bildens skala och visade sig därför inte vara en bra bas för att matcha bilder i olika skalor. För att uppnå en större varians i skalan utökade Lowe i sina tidigare arbeten ansatsen om lokala särdrag samt presenterade en ny local descriptor som hanterade andra särdrag utan att vara lika känslig för bildens förändringar[3]. SIFT algoritmen SIFT algoritmen består av totalt fyra steg: Scale-space extrema detection, Keypoint localization, Orientations assignment och Keypoint descriptor. 1. Scale- space extrema detection Det fösta steget i SIFT algoritmen lokaliserar punkter, nyckelpunkter, hos en bild. Dessa nyckelpunkter utmärker sig genom att var exempelvis mörkare eller ljusare än andra delar av bilden[2]. Processen börjar med en sökning av stabila nyckelpunkter[3] ifrån olika vinklar på ett och samma bild. De vinklade sökningsbilderna och nyckelpunkterna jämförs med varandra 4

med hjälp av funktionen Difference-off Gaussian (DoG) som kan räkna ut differensen mellan två punkter på två olika bilder[2]. Bildens skala definieras som, L(x,y,σ), som är en produkt av konvolutionen mellan Gaussians variabelskala, G(x,y,σ), och input från bilden, I(x,y) [3]. L(x,y,σ) = G(x,y,σ)*I(x,y) DoG identifierar de nyckelpunkter som har stor potential då de inte påverkas av skala eller vinkel, utan förblir oföränderliga. För att effektivt hitta dessa nyckelpunkter föreslår Lowe att man använder scale-space extrema hos DoG funktionens konvolverad med bilden, D(x,y,σ). Genom att beräkna skillnaden mellan två närliggande skalor som separeras av en konstant multiplikativ faktor, k[3], som visas nedan. D(x,y,σ) = (G(x,y,kσ) G((x,y,σ)) * I (x,y) = L(x,y,kσ) L(x,y,σ). Denna funktion gör väldigt snabba uträkningar, oberoende bland annat skala. Den skapar även ett närmevärde till the scale-normalized Laplacian of Gaussian, σ² normaliseringen av Laplacian med σ² behövs för en sann skala.[3] ²G. Man har visat att Relationen mellan D och σ² ²G kan förstås utifrån spridningsekvationen!"!" =!! G. Detta visar att! G kan räknas ut utifrån den begränsade skillnadsapproximationen till!"/!". Detta görs genom att använda skillnaden från närliggande skalor som kσ och σ [3].!! G = G G x, y, kσ G(x, y, σ) σ kσ σ Vilket innebär G(x,y,kσ) G(x,y,σ) (k 1) σ² ²G. Detta visar att DoG funktionen har skalor som skiljer genom en konstant faktor som redan är förenat med σ² normaliserings skala som behövs för Laplacian [3]. Figure 2Visar hur differensen räknas ut med hjälp av funktionen DoG. [3] 5

Figur 2 visar hur den initiala bilden stegvis slås samman med DoG för att producera bilder uppdelade utifrån en konstant faktor, k [3]. 2. Keypoint localization Då Scale-space extrema detection lokaliserar många förslag till nyckelpunkter, varav flera ostabila, är nästa steg i algoritmen att sortera dem genom att hitta närliggande passande data. Exempel på dessa data är lokalisering, skala och förhållandet till kurvaturen (ratio principal curvatures). Ursprungligen skulle man endast lokalisera nyckelpunkten men detta utvecklades för att stärka matchningen och öka stabiliteten. Punkter som har en dålig placering eller med låg kontrast blir exkluderade, då de är mer känsliga för störningar[2]. Beräkningarna görs genom Taylors kvadratiska expansion (the quadratic Taylor expansion) av DoG funktionen, D(x,y,σ). DoG funktionen ger en stark respons vad gäller kanter samt om nyckelpunkten är känslig mot störning, dessa behöver avlägsnas för att kunna öka den tidigare nämnda stabiliteten [3].!! =! +!"!!"! + 1 2!!!!!!!!! D och dess derivata utvärderas vid nyckelpunkten och x=(x, y, σ) T är motvikten till denna punkt. Placeringen av det störta värdet,!, bestäms genom att funktionens derivata i förhållande till x och återställa det till noll. Detta resulterar i [3]:! =!!!!!!"!"!!" Det 3x3 linjära system som detta resulterar i kan lösas relativt enkelt. Om motvikten till! är större än 0.5 i någon dimension så ligger det störta värdet närmare någon annan nyckelpunkt. Om så är fallet så kommer värde tilldelas en annan nyckelpunkt. Den slutliga motvikten av! läggs till den placering som aktuell nyckelpunkt[3]. Funktionens värde av det största värdet, D(!), är användbar för att eliminera ostabila värden men svag kontrast. Detta uppnås på följande sätt [3]: 3. Orientation assignment!! =! + 1!!! 2!"! Genom att koppla samman nyckelpunkter, baserat på vilka egenskaper de har, med en riktning kan beskrivningen av dem vara konstant oberoende av hur bilden roteras. I detta steg skapas en konstant form av bilden och dess nyckelpunkter som förblir oföränderliga oavsett vinkel. Detta leder till att objektet får en position, en skala och en riktning/lutning[3]. Nyckelpunkternas skala används för att välja den bild som Gaussians slätat till, L, med den som ligger närmast i skala. Detta görs så att beräkningarna genomförs med likvärdig skala. 6

För varje testbild, L(x, y) så är lutningens magnitud, m(x, y), och riktning, beräknat: [3] m(x,y) =!! + 1,!!! 1.! )! + (!!,! + 1!(!,! 1 )!!!,! = tan!! (!!,! 1 /(!! + 1,!!! 1,! )) (x, y), i förväg Ett histogram formas från nyckelnyckelpunktens värdens lutning. Histogrammet har en räckvidd på 360 grader. Allt som läggs till i histogrammet påverkas bland annat av lutningens magnitud. Histogrammet toppar överensstämmer med den dominanta lutningen. 4. Keypoint descriptor Det fjärde och sista steget förhåller sig relativt lika med det tidigare steget, Orientation assignment. Här gör uträkningar så att beskrivningen av objektet och dess nyckelpunkter är så karakteristiska och konstanta att den klarar av andra versioner av bilden, som till exempel en illustration eller bilden i 3D [2]. Tidigare har man utsett bildens plats, skala och riktning utifrån varje nyckelpunkt [3]. Edelman, Intrator och Poggio baserar sin ansats på biologins neuroner. Dessa komplexa neuroner svarar till lutningens av specifika riktningar och spatiala frekvenser. Men lutningens plats på näthinnan kan variera istället för att vara precis. Man menar att neuronernas funktion tillåter matchning och igenkänning av 3D objekt som finns i synfältet. [3] 7

Diskussion AIBO visar upp forskningen och dess möjligheter på ett väldigt bra sätt. Bara utseendet lockar alla åldrar och vad den kan göra ökar nyfikenheten anser jag. Kombinationen att visa upp forskning på ett mer lekfullt sätt är bra och kan leda till att man vill veta mer. Jag har tidigare stött på AIBO, men haft absolut ingen kunskap om hur hunden fungerar. Visst förstod jag att det legat mycket arbete bakom denna lilla varelse, men detta arbete har gett mig en djupare förståelse och uppskattning för detta arbete. 8

Referens [1] http://sv.wikipedia.org/wiki/aibo den 19 augusti 2009 [2] http://en.wikipedia.org/wiki/scale-invariant_feature_transform den 19 augusti 2009 [3] Lowe, D G (2004). Distinctive Image Features from Scale-Invariant Keypoints, International Journal of Computer Vision. [4] http://www.robothalloffame.org/06inductees/aibo.html den 19 augusti 2009 [5] http://www.cim.mcgill.ca/~dparks/cornerdetector/mainmoravec.htm den 19 augusti 2009. [6] http://www.cim.mcgill.ca/~dparks/cornerdetector/harris.htm den 19 augusti 2009 [7] Zhang,Z. Deriche, R. Faugeras, O. och Loung, QT (1995) A robust technique for matchning two uncalibrated images trough the recovery of the unknown epipolar geometry, Artificial Intelligence 78:87-119 9