Kontur av objektigenkänning - Outline of object recognition
Följande översikt tillhandahålls som en översikt över och aktuell guide för objektigenkänning:
Objektigenkänning - teknik inom datorvisionen för att hitta och identifiera objekt i en bild- eller videosekvens. Människor känner igen en mängd objekt i bilder med liten ansträngning, trots att bilden av objekten kan variera något i olika synpunkter, i många olika storlekar och skalor eller till och med när de översätts eller roteras. Objekt kan till och med kännas igen när de delvis är synliga. Denna uppgift är fortfarande en utmaning för datorvisionssystem. Många tillvägagångssätt för uppgiften har implementerats under flera decennier.
Metoder baserade på CAD-liknande objektmodeller
- Kantdetektering
- Primal skiss
- Marr, Mohan och Nevatia
- Lowe
- Olivier Faugeras
Erkännande av delar
- Allmänna cylindrar ( Thomas Binford )
- Geons ( Irving Biederman )
- Dickinson, Forsyth och Ponce
Utseendebaserade metoder
- Använd exempelbilder (kallade mallar eller exemplar) av objekten för att utföra igenkänning
- Objekt ser olika ut under olika förhållanden:
- Förändringar i belysning eller färg
- Ändringar i betraktningsriktningen
- Förändringar i storlek / form
- Det är osannolikt att ett enda exemplar kommer att lyckas pålitligt. Det är dock omöjligt att representera alla objektens utseenden.
Kantmatchning
- Använder kantdetekteringstekniker, som Canny edge-detektering , för att hitta kanter.
- Förändringar i belysning och färg har vanligtvis inte mycket effekt på bildkanterna
- Strategi:
- Upptäck kanter i mall och bild
- Jämför kanter för att hitta mallen
- Måste överväga olika möjliga mallpositioner
- Mått:
- Bra - räkna antalet överlappande kanter. Inte robust för formförändringar
- Bättre - räkna antalet mallkantpixlar med en viss kantavstånd i sökbilden
- Bäst - bestäm sannolikhetsfördelningen av avstånd till närmaste kant i sökbilden (om mallen är i rätt position). Uppskatta sannolikheten för att varje mallposition genererar bild
Dela-och-erövra sökning
- Strategi:
- Betrakta alla positioner som en uppsättning (en cell i positionens utrymme)
- Bestäm nedre gräns på poäng vid bästa position i cellen
- Om bunden är för stor, beskära cellen
- Om bunden inte är för stor, dela upp cellen i underceller och prova varje undercell rekursivt
- Processen slutar när cellen är "tillräckligt liten"
- Till skillnad från sökning med flera upplösningar hittar denna teknik garanterat alla matchningar som uppfyller kriteriet (förutsatt att den nedre gränsen är korrekt)
- Hitta gränsen:
- För att hitta den nedre gränsen för bästa poäng, titta på poäng för mallpositionen som representeras av cellens mitt
- Subtrahera maximal förändring från "mitt" -positionen för alla andra positioner i cellen (inträffar vid cellhörn)
- Komplexiteter uppstår genom att bestämma gränser för avstånd
Matchning av gråskala
- Kanterna är (mestadels) robusta mot ljusförändringar, men de slänger mycket information
- Måste beräkna pixelavstånd som en funktion av både pixelposition och pixelintensitet
- Kan också appliceras på färg
Gradientmatchning
- Ett annat sätt att vara robust mot ljusförändringar utan att kasta bort så mycket information är att jämföra bildgradienter
- Matchning utförs som att matcha gråskalebilder
- Enkelt alternativ: Använd (normaliserad) korrelation
Histogram av mottagliga fältsvar
- Undviker tydliga punktkorrespondenser
- Relationer mellan olika bildpunkter kodade implicit i de mottagliga fältsvaren
- Swain and Ballard (1991), Schiele och Crowley (2000), Linde och Lindeberg (2004, 2012)
Stora modellbaser
- Ett tillvägagångssätt för att effektivt söka i databasen efter en specifik bild för att använda egenvektorer i mallarna (kallade egenfaces )
- Modelbases är en samling geometriska modeller av objekten som ska kännas igen
Funktionsbaserade metoder
| Funktionsdetektering |
|---|
| Kantdetektering |
| Hörnavkänning |
| Blobdetektering |
| Ridge detection |
| Hough transform |
| Struktur tensor |
| Avgränsa detektering av invarianta funktioner |
| Funktionsbeskrivning |
| Skala utrymme |
- en sökning används för att hitta möjliga matchningar mellan objektfunktioner och bildfunktioner .
- den primära begränsningen är att en enda position för objektet måste ta hänsyn till alla möjliga matchningar.
- metoder som extraherar funktioner från objekten som ska kännas igen och de bilder som ska sökas.
- ytfläckar
- hörn
- linjära kanter
Tolkningsträd
- En metod för att söka efter möjliga matchningar är att söka igenom ett träd.
- Varje nod i trädet representerar en uppsättning matchningar.
- Rotnoden representerar tom uppsättning
- Varje nod är sammanslutningen av matchningarna i modernoden och en ytterligare matchning.
- Jokertecken används för funktioner utan matchning
- Noder ”beskärs” när uppsättningen matcher är omöjlig.
- En beskuren nod har inga barn
- Historiskt betydelsefull och används fortfarande, men mindre vanligt
Hypotesera och testa
- Allmän uppfattning:
- Hypotesera en överensstämmelse mellan en samling bildfunktioner och en samling objektfunktioner
- Använd sedan detta för att skapa en hypotes om projektionen från objektkoordinatramen till bildramen
- Använd denna projektionshypotes för att generera en rendering av objektet. Detta steg kallas vanligtvis backprojection
- Jämför återgivningen med bilden, och om de två är tillräckligt lika, acceptera hypotesen
- Hypotes:
- Det finns en mängd olika sätt att generera hypoteser.
- När kameraens inneboende parametrar är kända motsvarar hypotesen en hypotetisk position och orientering - pose - för objektet.
- Använd geometriska begränsningar
- Konstruera en korrespondens för små uppsättningar av objektfunktioner till varje delstorlek av bildpunkter med rätt storlek. (Dessa är hypoteserna)
- Tre grundläggande tillvägagångssätt:
- Att erhålla hypoteser med Pose Consistency
- Erhålla hypoteser genom Pose Clustering
- Skaffa hypoteser med hjälp av variationer
- Kostnadssökning som också är överflödig men som kan förbättras med Randomization och / eller Grouping
- Randomisering
- Undersöker små uppsättningar av bildfunktioner tills sannolikheten för att objekt saknas blir liten
- För varje uppsättning bildfunktioner måste alla möjliga matchande uppsättningar av modellfunktioner beaktas.
- Formel:
- (1 - W c ) k = Z
- W = bråkdelen av bildpunkter som är “bra” (w ~ m / n)
- c = antalet nödvändiga korrespondenser
- k = antalet försök
- Z = sannolikheten för varje försök med en (eller flera) felaktiga korrespondenser
- Gruppering
- Om vi kan bestämma grupper av punkter som sannolikt kommer från samma objekt kan vi minska antalet hypoteser som behöver undersökas
- Randomisering
Pose konsistens
- Kallas också Alignment, eftersom objektet justeras mot bilden
- Korrespondenser mellan bildfunktioner och modellfunktioner är inte oberoende - geometriska begränsningar
- Ett litet antal korrespondenser ger objektpositionen - de andra måste överensstämma med detta
- Allmän uppfattning:
- Om vi antar en matchning mellan en tillräckligt stor grupp bildfunktioner och en tillräckligt stor grupp av objektfunktioner, kan vi återställa de saknade kameraparametrarna från denna hypotes (och så återge resten av objektet)
- Strategi:
- Generera hypoteser med ett litet antal korrespondenser (t.ex. tripplar av punkter för 3D-igenkänning)
- Projicera andra modellfunktioner i bilden ( backproject ) och verifiera ytterligare korrespondenser
- Använd det minsta antal korrespondenser som krävs för att uppnå diskreta föremålsposer
Posera kluster
- Allmän uppfattning:
- Varje objekt leder till många korrekta korrespondenser, som alla har (ungefär) samma ställning
- Rösta på pose. Använd en ackumulatoruppsättning som representerar poseutrymme för varje objekt
- Detta är i grunden en Hough-transformation
- Strategi:
- För varje objekt, sätt upp en ackumulatoruppsättning som representerar poseutrymme - varje element i ackumulatoruppsättningen motsvarar en "hink" i poseringsutrymmet.
- Ta sedan varje bildramgrupp och antag en överensstämmelse mellan den och varje bildgrupp på varje objekt
- För var och en av dessa korrespondenser, bestäm poseparametrar och gör en post i ackumulatoruppsättningen för det aktuella objektet vid posvärdet.
- Om det finns ett stort antal röster i något objekts ackumulatorarray, kan detta tolkas som bevis för närvaron av det objektet vid den posen.
- Bevisen kan kontrolleras med hjälp av en verifieringsmetod
- Observera att denna metod använder uppsättningar av korrespondenser, snarare än enskilda korrespondenser
- Implementeringen är lättare, eftersom varje uppsättning ger ett litet antal möjliga föremålsposer.
- Förbättring
- Ljudmotståndet för denna metod kan förbättras genom att inte räkna röster för objekt i ställningar där rösten är uppenbarligen opålitlig
- § Till exempel i fall där objektramgruppen skulle vara osynlig om objektet var vid den posen.
- Dessa förbättringar är tillräckliga för att ge arbetssystem
Invarians
- Det finns geometriska egenskaper som är oförändrade för kameratransformationer
- Lättast utvecklad för bilder av plana objekt, men kan också användas i andra fall
Geometrisk hashing
- En algoritm som använder geometriska invarianter för att rösta på objekthypoteser
- På samma sätt som pose-kluster, istället för att rösta om pose, röstar vi nu om geometri
- En teknik som ursprungligen utvecklats för att matcha geometriska funktioner (okalibrerade affina vyer av planmodeller) mot en databas med sådana funktioner
- Används ofta för mönstermatchning, CAD / CAM och medicinsk bildbehandling.
- Det är svårt att välja skopornas storlek
- Det är svårt att vara säker på vad ”tillräckligt” betyder. Därför kan det finnas viss risk för att bordet täpps till.
Scale-invariant feature transform (SIFT)
- Knapppunkter för objekt extraheras först från en uppsättning referensbilder och lagras i en databas
- Ett objekt känns igen i en ny bild genom att individuellt jämföra varje funktion från den nya bilden till denna databas och hitta kandidatmatchningsfunktioner baserat på euklidiskt avstånd från deras funktionsvektorer.
- Lowe (2004)
Påskyndade robusta funktioner (SURF)
- En robust bilddetektor och beskrivare
- Standardversionen är flera gånger snabbare än SIFT och hävdas av dess författare att vara mer robust mot olika bildtransformationer än SIFT
- Baserat på summor av ungefärliga 2D Haar-wavelet-svar och använt integrerade bilder effektivt.
- Bay et al. (2008)
Påse med ordföreställningar
Genetisk algoritm
Genetiska algoritmer kan fungera utan förkunskaper om en viss dataset och kan utveckla igenkänningsförfaranden utan mänskligt ingripande. Ett nyligen genomfört projekt uppnådde 100 procents noggrannhet på jämförbara motorcykel-, ansikts-, flyg- och bilbildsdatamängder från Caltech och 99,4 procent noggrannhet på fiskesorteringsdatamängder.
Andra tillvägagångssätt
- 3D-objektigenkänning och återuppbyggnad
- Biologiskt inspirerat objektigenkänning
- Konstgjorda neurala nätverk och djupt lärande, särskilt konvolutionsneurala nätverk
- Sammanhang
- Explicita och implicita 3D-objektmodeller
- Snabb indexering
- Globala scenrepresentationer
- Gradienthistogram
- Stokastiska grammatik
- Intraclass transfer lärande
- Objektkategorisering från bildsökning
- Reflektion
- Form-från-skuggning
- Mallmatchning
- Textur
- Ämnesmodeller
- Ej övervakat lärande
- Fönsterbaserad detektering
- Deformerbar delmodell
- Bingham distribution
Applikationer
Objektigenkänningsmetoder har följande applikationer:
- Aktivitetsigenkänning
- Automatisk bildanmärkning
- Automatisk måligenkänning
- Android Eyes - Objektigenkänning
- Datorstödd diagnos
- Bildpanorama
- Bildvattenmärkning
- Global robotlokalisering
- Ansiktsigenkänning
- Optisk teckenigenkänning
- Tillverknings kvalitetskontroll
- Innehållsbaserad bildhämtning
- Objekträkning och övervakning
- Automatiserade parkeringssystem
- Visuell positionering och spårning
- Videostabilisering
- Fotgängare
Undersökningar
- Daniilides och Eklundh, Edelman.
- Roth, Peter M. & Winter, Martin (2008). "UNDERVISNINGSBASERADE METODER FÖR ATT ERKÄNNA" (PDF) . Teknisk rapport . ICG-TR-01/08.
Se även
- Histogram av orienterade lutningar
- Convolutional neuralt nätverk
- OpenCV
- Scale-invariant feature transform (SIFT)
- Objektdetektering
- Scholarpedia-artikel om skala-invariant funktionstransform och relaterade objektigenkänningsmetoder
- SURFA
- Mallmatchning
- Integrerad kanalfunktion
- Listor
Anteckningar
Referenser
- Elgammal, Ahmed "CS 534: Computer Vision 3D Model-based recognition" , Inst för datavetenskap, Rutgers University;
- Hartley, Richard och Zisserman, Andrew "Multiple View Geometry in computer vision" , Cambridge Press, 2000, ISBN 0-521-62304-9 .
- Roth, Peter M. och Winter, Martin "Survey of Appearance-Based Methods for Object Recognition", teknisk rapport ICG-TR-01/08 , Inst. för datorgrafik och vision, Graz tekniska universitet, Österrike; 15 januari 2008.
- Collins, Robert "Lecture 31: Object Recognition: SIFT Keys" , CSE486, Penn State
- IPRG Image Processing - Online Open Research Group
- Christian Szegedy , Alexander Toshev och Dumitru Erhan . Deep Neural Networks for Object Detection . Framsteg inom neurala informationsbehandlingssystem 26 , 2013. sidan 2553–2561.