35
Anwendung und Evaluation verbreiteter Objekterkennungsansätze auf einem mobilen Roboter Bachelorarbeit im Fach Kognitive Informatik an der Technischen Fakultät Universität Bielefeld von : Michael Zeunert [email protected] Betreuer : M.Sc. Leon Ziegler Dr.-Ing. Agnes Swadzba 7. August 2012

Anwendung und Evaluation verbreiteter Objekterkennungsans ... · Anwendung und Evaluation verbreiteter Objekterkennungsansätze auf einem mobilen Roboter Bachelorarbeit im Fach Kognitive

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Anwendung und Evaluation verbreiteter Objekterkennungsans ... · Anwendung und Evaluation verbreiteter Objekterkennungsansätze auf einem mobilen Roboter Bachelorarbeit im Fach Kognitive

Anwendung und Evaluation verbreiteterObjekterkennungsansätze auf einem mobilen Roboter

Bachelorarbeitim Fach Kognitive Informatikan der Technischen FakultätUniversität Bielefeld

von : Michael [email protected]

Betreuer : M.Sc. Leon ZieglerDr.-Ing. Agnes Swadzba

7. August 2012

Page 2: Anwendung und Evaluation verbreiteter Objekterkennungsans ... · Anwendung und Evaluation verbreiteter Objekterkennungsansätze auf einem mobilen Roboter Bachelorarbeit im Fach Kognitive
Page 3: Anwendung und Evaluation verbreiteter Objekterkennungsans ... · Anwendung und Evaluation verbreiteter Objekterkennungsansätze auf einem mobilen Roboter Bachelorarbeit im Fach Kognitive

Inhaltsverzeichnis

Abstract iii

1 Einleitung 11.1 Motivation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11.2 Anforderungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11.3 Übersicht . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

2 Verwandte Arbeiten 3

3 Erkennungssysteme 53.1 Segmentierungsverfahren . . . . . . . . . . . . . . . . . . . . . . . . . . 5

3.1.1 ColorDetection2 . . . . . . . . . . . . . . . . . . . . . . . . . . 63.2 Merkmalsextraktion . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

3.2.1 Speeded Up Robust Features . . . . . . . . . . . . . . . . . . . 73.2.2 Oriented FAST and Rotated BRIEF . . . . . . . . . . . . . . . 8

3.3 Klassifikationsverfahren . . . . . . . . . . . . . . . . . . . . . . . . . . 93.3.1 Pyramid Match Kernel . . . . . . . . . . . . . . . . . . . . . . . 93.3.2 k-Nächste-Nachbarn . . . . . . . . . . . . . . . . . . . . . . . . 9

4 Implementierung 114.1 ColdSegmentierungs-Werkzeug . . . . . . . . . . . . . . . . . . . . . . 114.2 Trainingwerkzeuge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114.3 Evaluationswerkzeuge . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

5 Evaluation 135.1 Kameraauswahl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135.2 Training . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

5.2.1 Trainingsset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145.2.2 Merkmale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145.2.3 PmkSvm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155.2.4 KNN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

5.3 Performanzmessung . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155.4 Experimente . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165.5 Ergebnisse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

5.5.1 Ergebnisse.Überblick . . . . . . . . . . . . . . . . . . . . . . . . 175.5.2 SURF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185.5.3 ORB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185.5.4 Segmentierung . . . . . . . . . . . . . . . . . . . . . . . . . . . 195.5.5 Geschwindigkeit . . . . . . . . . . . . . . . . . . . . . . . . . . 19

i

Page 4: Anwendung und Evaluation verbreiteter Objekterkennungsans ... · Anwendung und Evaluation verbreiteter Objekterkennungsansätze auf einem mobilen Roboter Bachelorarbeit im Fach Kognitive

6 Fazit 216.1 Ausblick . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

Literatur 23

Abbildungsverzeichnis 25

Tabellenverzeichnis 27

ii

Page 5: Anwendung und Evaluation verbreiteter Objekterkennungsans ... · Anwendung und Evaluation verbreiteter Objekterkennungsansätze auf einem mobilen Roboter Bachelorarbeit im Fach Kognitive

Abstract

Die vorliegende Arbeit beschäftigt sich mit der Frage, mit welchen vorhandenen Tech-nologien sich ein zuverlässiges Objekterkennungssystem, auf einem mobilen Roboter,entwickeln lässt. Um dieses Problem zu analysieren, wird eine Evaluation über zweiverschiedene Kameras, zwei Merkmalsansätze und zwei Klassifikatoren durchgeführt.Zusätzlich wird die Bedeutung der Segmentierung kurz behandelt, bei welcher ColD2untersucht wird. Die verwendeten Kameras waren eine Microsoft Kinect und eine Po-wershot A530 Digitalkamera von Canon. Bei den Merkmalen wurden SURF und ORBuntersucht. Diese wurden anschließend einerseit mit dem k-Nächste-Nachbarn-Ansatzklassifiziert und andererseits mit dem Pyramid Match Kernel, im Zusammenspiel miteiner SVM. Um möglichst realistische Daten zu erzeugen wurden die Bilder auf demRoboter BIRON der Universität Bielefeld aufgenommen.

iii

Page 6: Anwendung und Evaluation verbreiteter Objekterkennungsans ... · Anwendung und Evaluation verbreiteter Objekterkennungsansätze auf einem mobilen Roboter Bachelorarbeit im Fach Kognitive
Page 7: Anwendung und Evaluation verbreiteter Objekterkennungsans ... · Anwendung und Evaluation verbreiteter Objekterkennungsansätze auf einem mobilen Roboter Bachelorarbeit im Fach Kognitive

1 Einleitung

Heutzutage ist es für mobile Roboter, die in Szenarien wie z.B. dem robocup@Home1

eingesetzt werden, immer wichtiger, Objekte erkennen zu können. Dies ist vor al-lem in der Hinsicht wichtig, dass der Roboter mit seine Umgebung interagieren soll.Diese Aufgabe erfordert zum einen ein Verfahren, welches relevante Informationenaus dem Kamerabild extrahieren kann und zum anderen ein Verfahren, welches dieextrahierten Informationen mit gelernten Informationen vergleichen kann. Dabei müs-sen gelernte Objekte wiedererkannt werden, aber auch unbekannte Objekte als solcheerkannt werden.

1.1 Motivation

Um seine Umgebung gezielt manipulieren zu können muss der Roboter diese zunächstwahrnehmen können. Ein Teil dieser Wahrnehmung übernimmt die 2D-Objekterkennung,mit welcher der Roboter z.B. Objekte erkennen kann, um sie dann zu greifen und zuseinem Benutzer zu bringen.Durch die Tatsache, dass sich ein mobiler Roboter in seiner Umgebung bewegt undsich auch die Umgebung verändern kann, ist dieser Teil sehr herrausvordernd. Soändert sich je nach Position des Objektes und des Roboters das Bild, welches derRoboter von dem Objekt bekommt. Konkret verändert sich das Ansicht des Objek-tes hinsichtlich der Rotation, der Beleuchtung, des Blickwinkels und der Größe. Eskann sowohl dazu kommen, dass Objekte sich gegenseitig verdecken, als auch Schattenaufeinander werfen, was den Schwierigkeitsgrad stark erhöht. Wenn mehrere Objekteim Bild zu sehen sind, muss das Objekterkennungssystem zusätzlich zwischen diesenunterscheiden und gegebenenfalls ihre Position im Bild bestimmen. Letzteres ist vorallem nötig, wenn der Roboter weiter mit den Objekten interagieren soll.Zusätzlich zu diesen äußeren Umständen kommt die Limitierung durch dir Hardwa-re(Kamera) hinzu, welche immer ein gewisses Rauschen aufweist und eine begrenzteAuflösung hat. Als weiteres wichtiges Kriterium für mobile Roboter kommt die Lauf-zeit der Algorithmen hinzu, welche nicht zu lange sein darf, um in einem dynamischenUmfeld interagieren zu können.

1.2 Anforderungen

Die Objekterkennungsforschung nimmt sich der oben genannten Probleme an. Dankintensiver Bemühungen hat sie zwar große Fortschritte gemacht, diese wurden aber oft1robocup@home

1

Page 8: Anwendung und Evaluation verbreiteter Objekterkennungsans ... · Anwendung und Evaluation verbreiteter Objekterkennungsansätze auf einem mobilen Roboter Bachelorarbeit im Fach Kognitive

nur unter Laborbedingungen gestestet. Die Umstände unterscheiden sich daher starkvon denen auf einem mobilen Roboter. Eine beliebter Ansatz, einen Teil der obengenannten Probleme zu lösen, ist das Berechnen lokaler Deskriptoren. Hier wird nichtdas Bild als Ganzes betrachtet, sondern nur kleine Regionen, die interessante Teiledes Bildes repräsentieren sollen. Bekannte Vertreter dieser lokalen Deskriptoransätzesind sind z.B. SURF(Speed Up Robust Features)[1] oder ORB(Oriented FAST andRotated BRIEF)[10]. Der Vorteil lokaler Deskriptoren ist die Robustheit gegenüberVerdeckungen oder nur teilweise sichtbaren Objekten.Bevor diese Verfahren aber angewandt werden, ist es ratsam interessante Teile desKamerabildes zu segmentieren. Hier können verschiedene Verfahren zum Einsatz kom-men, wie zum Beispiel der auf dem RG-Farbraum arbeitende ColD2, oder auch eineSegementierung auf Grundlage von Tiefeninformationen. Auch möglich wären Kombi-nationen von beiden, um eine höhere Robustheit zu erzielen. Der zusätzliche Aufwandkönnte sich hier lohnen, da weniger Bilder in die Merkmalsberechnung gereicht werdenwürden, was dort zu weniger Aufwand führen würde. Das Thema der Segmentierungwird aber in dieser Arbeit nur kurz behandelt.Um die lokalen Deskriptoren später einer Objektklasse zuordnen zu können, müssendiese klassifiziert werden. Hier können einerseits Verfahren wie der Nearest-Neighbor-Ansatz angewandt werden, oder komplexere Verfahren wie z.B. eine Support-Vector-Machine. Auch muss darüber nachgedacht werden, wie die Deskriptoren in die Klas-sifikatoren übergeben werden. Einerseits kann jeder Deskriptor einzeln in den Klassi-fikator gereicht werden, anderseits wäre es wünschenswert, wenn der Klassifikator aufMengen von Deskriptoren arbeiten könnte. Hier ist z.B. der Pyramid-Match-Kernel[4]ein vielversprechendes Verfahren, welches sich des Problems der unterschiedlichenKardinalität der Deskriptorsets annimmt. Dieser Ansatz ist vor allem vor dem Hinter-grund erstrebenswert, dass es im Falle des einzelnen Klassifizierens der Deskriptoren,mehrere Ergebnisse pro Bild gibt, welche dann sinnvoll zu einem Ergebnis zusammen-gefasst werden müssen.

1.3 Übersicht

In meiner Arbeit gehe ich auf die oben genannten Möglichkeiten des Aufbaus einerObjekterkennung auf einem Roboter ein. Im ersten Abschnitt 2 gehe ich auf ver-wandte Arbeiten ein. Der darauf folgende Abschnitt gibt einen Überblick über die imErkennungssystem eingesetzten Verfahren. Hier wird zunächst der benutzte Algorith-mus zur Segmentierung 3.1 vorgestellt. Darauf folgend wird ein Überblick über diebeiden benutzten Merkmalsverfahren 3.2 gegeben. Abschließend wird auf die unter-schiedlichen Möglichkeiten bei der Wahl des Klassifikators 3.3 eingegangen. Im viertenKapitel werden kurz die im Rahmen der Arbeit entwickelten Werkzeuge vorgestellt.Die unterschiedlichen Erkennungssysteme werden anschließend in Abschnitt fünf5 ineiner Evaluation analysiert und miteinander verglichen. Hier wird auch auf die Aus-wahl der Kamera 5.1 eingegangen. Die Arbeit schließt mit einem Fazit6 und einemAusblick6.1 über mögliche Verbesserungen ab.

2

Page 9: Anwendung und Evaluation verbreiteter Objekterkennungsans ... · Anwendung und Evaluation verbreiteter Objekterkennungsansätze auf einem mobilen Roboter Bachelorarbeit im Fach Kognitive

2 Verwandte Arbeiten

Die Entwicklung eines Objekterkennungssystems für einen mobilen Roboter ist kei-ne einfache Aufgabe. Viele Objekterkennungsansätze werden auf Daten evaluiert, dienicht mit den Daten übereinstimmen, die eine Kamera auf einem Roboter erzeugt.Dieses Problem führt dazu, dass einige Ansätze unter Laborbedingungen gute Ergeb-nisse liefern, aber für den Einsatz auf einem mobilen Roboter nicht geeignet sind.Auch die Komplexität der Algorithmen spielt eine entscheidende Rolle, da der Robo-ter nicht mit unbegrenzter Rechenleistung ausgestattet werden kann. Auch wird dievorhandene Rechenleistung von anderen Teilsystemen des Roboters beansprucht, wasdie für die Objekterkennung vorhandene Leistung weiter senkt. Im folgenden werdendaher Arbeiten vorgestellt, die sich dem Problem der Objekterkennung auf einem mo-bilen Roboter angenommen haben.Eine tiefe Analyse von SIFT[6] auf einem mobilen Roboter liefert die Arbeit von Ra-misa et al.[9]. Hier konzentrieren sich die Autoren auf das Verbessern der Ergebnisseeiner Objekterkennung mit SIFT. Es wurden verschiedene Keypointfinder getestetund ein komplexes Matchingsystem entwickelt, was auf dem IIIA30-Testset zu gutenErgebnissen führte. Die Autoren stellen aber auch heraus, dass SIFT gerade bei un-texturierten Objekten seine Schwächen hat und auch Probleme mit nicht planarenObjekten hat. Es wurden mehrere Konfigurationen evaluiert, wobei die Konfigurationmit eine, Hessian-Laplace-Detector, RANSAC1, IRLS2, NMS3 und Approx-NN4 zwardie besten Ergenisse lieferte, mit 2 Sekunden pro 640*480 Pixel Bild aber auch sehrlangsam war. Zusätzlich testeten die Autoren die Auswirkungen von starken Beleuch-tungsunterschieden, Bewegungsunschärfe und Verdeckungen. Diese Beeinträchtigun-gen verschlechterten die Ergebnisse signifikant, besonders wenn mehrere Beeinträch-tigungen gleichzeitig auftraten.Von Pangercic et al.[8] wird das System ODUfinder vorgestellt, welches auf SIFTund Vocabulary Trees[11] basiert. Der Vorteil dieses Systems, große Datenbankenvon Objekten zu lernen und später durchsuchen zu können, ist z.B für einen Haus-haltsroboters, welcher viele Objekte kennen muss. Der ODUfinder arbeitet mit einer3D-Segementierung, was ihn bei Bildern mit mehreren Objekten robuster macht. Fürdie bekannte Methode es Vocabulary-Trees werden hier ähnliche SIFT-Deskriptorenin einem Blattknoten des Baums zusammengefasst. Beim Matching votet dann derKnoten, der ausgewählt wurde, für die entsprechnenden Klassen, die mit dem Kno-ten verlinkt sind. Die von dem System erzielten Erkennungsraten waren dabei sehrvielversprechend.Curious George 3[7] ist ein mobiler Roboter der die Aufgabe der Kategorieerkennung1RANdom SAmple Consensus2Iterative Reweighted Least Squares3Non-Maxima Suppression4Approximate Nearest Neighbor

3

Page 10: Anwendung und Evaluation verbreiteter Objekterkennungsans ... · Anwendung und Evaluation verbreiteter Objekterkennungsansätze auf einem mobilen Roboter Bachelorarbeit im Fach Kognitive

lösen soll. Die Kategorieerkennung ist ein noch herrausvordernderes Feld, als dasErkennen von Objektinstanzen, da hier die Trainingsbilder nicht zwingend mit denzu erkennenden Objekten übereinstimmen. Da lokale Merkmalverfahren allein wenigvielversprechend sind, benutzen die Autoren zusätzlich zu SIFT, ein eine Kontur-Matching Methode und das DPM(DeformabalePartsModel). Die Arbeit behandeltzudem das Problem, dass der Roboter nicht weiss, wo im Raum Objekte zu findensind. Dieses wird mittels des Verfahren MSER5 und einem auf 3D-Strukturen basie-renden Verfahrens versucht zu lösen. Der so entstehende Aufwand wird anhand derfünf auf dem Roboter untergebrachten Laptops deutlich, was das System nicht aufjedem Roboter einsetzbar macht.

5Maximally stable extremal regions

4

Page 11: Anwendung und Evaluation verbreiteter Objekterkennungsans ... · Anwendung und Evaluation verbreiteter Objekterkennungsansätze auf einem mobilen Roboter Bachelorarbeit im Fach Kognitive

3 Erkennungssysteme

Die in der folgenden Evaluation 5 getesteten Erkennungssysteme setzen sich jeweilsaus einer Segmentierungskomponente, einer Merkmalskomponente, und einer Klassi-fikationskomponente zusammen 3.1. Im den nachfolgenden Abschnitten werden dieeingesetzten Verfahren kurz erläutert.

Abbildung 3.1: Unterschiedliche Möglichkeiten beim Aufbau des Erken-nungssystems.

3.1 Segmentierungsverfahren

Da die Bilder der Kameras nicht nur das Objekt enthalten (siehe 3.2) müssen, istes vorteilhaft zunächst die im Bild endhaltenen Objekte zu segmentieren. Um mitbeiden Kameras die gleiche Segmentierung benutzen zu können, wurde eine Segme-tierung gewählt, die auf RGB-Bildern arbeitet. Bei der Kinect hingegen könnte eineSementierung auf der Grundlage des Tiefenbildes verwendet werden, was meistens zubesseren Ergebnissen führt, da die Informationen hier aussagekräftiger sind.

5

Page 12: Anwendung und Evaluation verbreiteter Objekterkennungsans ... · Anwendung und Evaluation verbreiteter Objekterkennungsansätze auf einem mobilen Roboter Bachelorarbeit im Fach Kognitive

3.1.1 ColorDetection2

ColorDetection2(ColD2) ist ein auf Farbhistogrammen aus dem RG-Raum basieren-des Segmentierungsverfahren, welches an der Universität Bielefeld entwickelt wurde.Es werden zunächst aus handsegmentierten Bildern Farbhistogramme gelernt, die alsModell dienen. Um nicht jedes Bild exakt ausschneiden zu müssen, bietet es sich an,auf einem schwarzen oder weißen Hintergrund zu trainieren, da diese keine Farbinfor-mationen zu dem Histogramme beitragen. Zu jeder Klasse wird dann ein Modell3.3trainiert, welches dem Detektor verwendet werden kann.

Diese Detektoren rastern das zu segmentierende Bild in verschiedenen Stufen, mitverschobenen Rastern. Für die einzelnen Rasterzellen wird auch ein Farbhistogrammerstellt, welches, mittels eines Minimumschnittes, mit den Histogrammen der Modelleverglichen wird. Wenn hierbei ein Schwellwert(für die Evaluation 5 wurde ein Wertvon 30 gewählt) überschritten wird, wird der Ausschnitt als zum Modell passendmarkiert. Die hier gefundenen, zum Modell passenden Pixel, werden noch um eineeinstellbare Größe ausgedehnt. Anschließend werden durch den Floodfill-Algorithmusaus den vorherigen Ergebnissen Bounding-Boxen berechnet die, die einen Ausschnittbeschreiben, der zum Objekt passen könnte. Das Ergebniss ist hierbei, dass meistenszahlreiche falschPositive entstehen, welche der Klassifikator dann zurückweisen muss.Für mehr Informationen zum ColD-Algorithmus verweise ich auf [12].

3.2 Merkmalsextraktion

Die Merkmalsextraktion eines Bildes versucht, mittels geeigneter Algorithmen, mar-kante Merkmale in einem Bild zu finden und zu extrahieren. Bei den beiden untenfolgenden lokalen Merkmalansätzen muss zunächst ein Keypoint2 gefunden werden.Hier ist es wichtig, dass diese Keypoints wiederholbar auf den Objekten gefundenwerden können auch wenn sich die Lichtverhältnisse oder der Blickwinkel ändern.2dt.: Interessanter Punkt

Abbildung 3.2: Beispiel aus den zur Evaluation vom Roboter aus aufge-nommenen Bilder.

6

Page 13: Anwendung und Evaluation verbreiteter Objekterkennungsans ... · Anwendung und Evaluation verbreiteter Objekterkennungsansätze auf einem mobilen Roboter Bachelorarbeit im Fach Kognitive

Abbildung 3.3: Modell des Cold2-Detektors anhand der Klasse ‘milk‘.Links: gefundenes Farbspektrum. Rechts: gelerntes Farb-histogramm (je heller der Punkt, desto höher des Histo-grammwert)

An diesen Keypoints kann dann ein Deskriptor berechnet werden, welcher den Key-point beschreibt. Die Deskriptoren müssen die verschiedenen Transformationen, dieaus verschiedenen Blickwinkeln und Beleuchtungsverhältnissen entstehen, möglichstgut ausgleichen, damit ein Deskriptor in einem anderen Bild wiedergefunden werdenkann.

3.2.1 Speeded Up Robust Features

Der Speeded Up Robust Features-Ansatz(SURF) ist ein von Bay et al. [1] enwickeltesVerfahren, welches an Loewes SIFT[6] angelehnt ist. Zur Berechnung der Keypointswird der Ansatz der Determinate der Hessematrix stark vereinfacht. Dies wird durchdie Approximation der Hessematrix mittels Boxfiltern erreicht, was das Verfahrenstark beschleunigt. Die Wiederholbarkeit der Keypoints soll dabei laut Autoren nichtschlechter werden. Mittels eines Schwellwertes kann gesteuert werden, wie viele Key-points im Bild gefunden werden. Um eine gewisse Rotationsinvarianz zu gewährleistenwerden um den Keypoint herum, Haarwavelets in x- und y-Richtung berechnet. Diesewerden gaussgewichtet in Abhängigkeit ihres Abstandes zum Mittelpunkt des Keypo-ints. Dies wird für alle Rotationen in π

3 Schritten durchgefürt. Der Vektor bei demdie Summe der x- und y-Antwort am größten ist wird als Hauptorientierung gewählt.Um den Deskriptor berechnen zu können, wird eine quadratische Region, die zurHauptrichtung orientiert ist, gewählt 3.4. Diese wird nun in 4 × 4 Teilregionen un-terteilt, in welchen wieder Haarwavelet-Antworten in x- und y-Richtung berechnetwerden. Diese werden aufsummiert und zusätzlich mit der Summe der Absolutbe-träge in einem vierdimensionalen Vektor zusammengefasst, welcher die Teilregion re-präsentiert. In der Implementierung4 wird die SURF-128 Variante verwendet, welchedie Waveletsummen noch weiter unterteilt, indem sie bei den dy- bzw. |dy|-Summenzusätzlich zwischen dx >= 0 und dx < 0 unterscheidet. Bei den dx- bzw. |dx|-Summen wird zwischen dy >= 0 und dy < 0 unterschieden. Daraus resultiert dann ein128-dimensionaler Deskriptor, im Gegensatz zum 64-dimensionalen normalen SURF-Deskriptor. In der Implementation wird die SURF-Implementierung aus der OpenCV1

benutzt .

1OpenCv SURF-Implementierung Stand: 04.08.2012

7

Page 14: Anwendung und Evaluation verbreiteter Objekterkennungsans ... · Anwendung und Evaluation verbreiteter Objekterkennungsansätze auf einem mobilen Roboter Bachelorarbeit im Fach Kognitive

Abbildung 3.4: Beispiel von gefundenen SURF-Deskriptoren in einer Gra-fitiszene. Zu sehen sind die Regionen(Quadrate), die dieDeskriptoren beschreiben, als auch die Hauptorientierung,welche durch den Strich in den Quadraten visualisiert wird.Quelle:[1]

3.2.2 Oriented FAST and Rotated BRIEF

Oriented FAST and Rotated BRIEF (ORB) [10] ist ein auf BRIEF [2] basierendesVerfahren, dass besonders robust gegenüber Rauschen und Rotationen sein soll. DieRobustheit gegenüber Rauschen macht es besonders für die Kinect-Kamera interes-sant, welche wie schon in 5.1 gezeigt ein starkes Rauschen aufweist. Des Weiteren ist esschneller als SIFT, aber ähnlich leistungsfähig. Die Keypoints werden mittels FAST-9berechnet. Um genug Keypoints zu finden, wird der Schwellwert für FAST-9 so ge-wählt, dass mehr als n Keypoints gefunden werden . Danach werden durch das Harris-corner-measure2 die besten n Keypoints ausgewählt, für welche dann der Deskriptorberechnet wird. Da FAST keine größeninvarianten Keypoints generiert, wird der obenbeschriebene Prozess auf mehreren Skalen des Bildes berechnet. Außerdem wurde denFAST-Keypoints eine Orientierungskomponente hinzugefügt. Diese berechnet sich ausdem Intensitätszentroid. Dieser neue Keypoint-Ansatz wird oFAST(oriented FAST)genannt.Der BRIEF-Deskriptor setzt sich aus einer Reihe von 256 Binärtests zusammen, wel-che Intensitätswerte zwischen Pixeln vergleichen. Diese Tests werden auf einem geglät-teten Teilbild von 31*31 Pixeln berechnet. Um die schlechten Ergebnisse von BRIEFbei Rotationen zu verbessern, fließt im ORB-Ansatz zusätzlich noch die Orientierungin die Berechnung mit ein. Dieser Deskriptor wird dann Rotation-Aware-Brief,kurzrBRIEF, genannt. In der Implementation wird die ORB-Implementierung aus derOpenCV3 benutzt.

2Harris-corner-measure3OpenCv ORB-Implementierung Stand: 04.08.2012

8

Page 15: Anwendung und Evaluation verbreiteter Objekterkennungsans ... · Anwendung und Evaluation verbreiteter Objekterkennungsansätze auf einem mobilen Roboter Bachelorarbeit im Fach Kognitive

3.3 Klassifikationsverfahren

Um aus den Deskriptoren eine Vorhersage zur zugehörigen Klasse zu erhalten, mussein Klassifikator benutzt werden. Da die Segmentierung mittels ColD2 Bounding-Boxen zu den jeweiligen Klassen rausreicht, muss nur noch für diese Klasse über-prüft werden, ob diese Bounding-Box es wirklich zu dieser Klasse gehört. Dadurchkann dann das Problem auf n 2-Klassenprobleme reduziert werden, was im AbschnittPmkSvm 3.3.1 genutzt wird. Das Ziel der Klassifikatoren ist es, die falsch-Positiven,die ColD2 an die Klassifikatiren weiterreicht, zurückzuweisen und die richtig-Positivenzu akzeptieren.

3.3.1 Pyramid Match Kernel

Der Pyramid Match Kernel(PMK)[4] ist ein Kernel zum Vergleichen von Merkmals-sets unterschiedlicher Kardinalität. Der Kernel erfüllt die Mercer-Bedingung 4 , wasihn in einer SVM5 einsetzbar macht. Zum Vergleichen von Merkmalssets benutzt derKernel Histogramm-Schnitte. Dafür wird zunächst ein repräsentativer Datensatz be-nötigt, welcher geclustert wird und aus welchem eine initale Histogrammaufteilungerzeugt wird. Um Merkmalssets zu vergelichen werden mehrstufige Histogramme derzu vergleichenden Merkmalssets mittels der initialen Histogrammaufteilung erzeugt.l fällt. Diese werden dann zwischen den Beispielen mit Schnitten verglichen. Diesist anschaulich in diesem Bild 3.5 dargestellt. Die Ähnlichkeit der Deskriptorensetsergibt sich nun aus den Schnitten der Histogramme auf den verschiedenen Stufen.Übereinstimmungen auf fein auflösenden Stufen werden höher gewichtet, als die aufgrob Auflösenden. Der PMK bestraft somit keine zusätzlichen, nicht zur Klasse gehö-renden Merkmale in den Deskriptorsets. Die Tatsache ist auch hilfreich hinsichtlichder Tatsache, dass die Segmentierung nicht perfekt ist und somit einige, nicht zurKlasse gehörende, Merkmale erzeugt werden.Da der PMK nur ein Kernel zum vergleichen von Beispielen ist, muss er zusammenmit einem Klassifikator benutzt werden. Da der PMK mit einer SVM genutzt wer-den kann, wird dies in der später folgenden Implementierung4 genutzt. Eine SVMprojeziert die Eingabevektoren mittels des Kerneltricks in einen höherdimensionalenRaum, um die Daten so besser linear separieren zu können. In der Implementierungdes Klassifikators wurde die libPMK[5] zusammen mit der libSVM[3] benutzt.

3.3.2 k-Nächste-Nachbarn

Der k-Nächste-Nachbarn-Ansatz(kNN) ist ein einfaches Verfahren zum Klassifizierenvon n-dimensionalen Vektoren. Er wird dadurch trainiert, dass eine beliebige Anzahlvon Prototypen zusammen mit den zugehörigen Klassenlabeln, abgespeichert wird.Bei der Klassifikation wird zunächst Abstand eines zu klassifizierenden Vektors ~x zuden zuvor gelernten Prototypen mit einer geeigneten Metrik ermittelt. Dann werden

4Satz von Mercer5Support Vector Machine

9

Page 16: Anwendung und Evaluation verbreiteter Objekterkennungsans ... · Anwendung und Evaluation verbreiteter Objekterkennungsansätze auf einem mobilen Roboter Bachelorarbeit im Fach Kognitive

Abbildung 3.5: Bin-Schnitte auf drei Stufen (von oben nach unten) a) zeigtdie Treffer in den Beispielen auf der jeweiligen Stufe, b)dieHistogramme der beiden Beispiele und c) den resultierndenHistgrammsschnitt. [4]

die k Prototypen mit dem geringsten Abstand zu ~x zur Klassifikation zu Rate ge-zogen. Dies geschieht durch ein Voting-Verfahren, bei dem jeder der k ausgewähltenPrototypen für das zu ihm gehördende Label votet. Das voting-basierte Verfahren hatals Ergebnis die Klasse , die die meisten Treffer erhält. Da dieser Ansatz keine Merk-malssets vergleicht, sondern nur Merkmale, müssen alle Merkmale klassifiziert werden,was sehr aufwendig werden kann. Ein Vorteil ist, dass der Abstand zur Zurückwei-sung genutzt werden kann. Diesen Rückweisungsabstand zu bestimmen ist aber sehrfragil, da er an die aktuellen Prototypen angepasst werden muss. Aus diesem Grundwurde diese Möglichkeit in dieser Arbeit ausgelassen. In der Implementierung wurdeder kNN aus der OpenCv6 genutzt.

6OpenCV k-Nearest-Neighbor Stand: 04.08.2012

10

Page 17: Anwendung und Evaluation verbreiteter Objekterkennungsans ... · Anwendung und Evaluation verbreiteter Objekterkennungsansätze auf einem mobilen Roboter Bachelorarbeit im Fach Kognitive

4 Implementierung

Im Folgenden ist die Implementierung der von mir geschriebenen Werkzeuge undteilweise der in diesen benutzten Software beschrieben.

4.1 ColdSegmentierungs-Werkzeug

Das ColdSegmentierungs-Werkzeug wendet den ColD2-Algorithmus3.1.1 auf das an-gegebene Verzeichniss an. Hierbei wird auf jedes der einzelnen unsegmentierten Ein-gabebilder für jede Klasse der zugehörige Detektor angewendet. Die aus dem ColD2resultierdenen Bounding-Boxen werden dann in die entsprechenden Bildausschnittezurückgerechnet. Diese hieraus resultierdenen Teilbilder werden dann als Ergebnis indem anzugebenenden Ausgabeverzeichnis gespeichert.

4.2 Trainingwerkzeuge

Die Trainingswerkzeuge sind für das Training der Klassifikatoren zuständig. Sie er-zeugen aus den Trainingsdaten das Modell für den gewünschten Klassifikator. Eswurden insgesamt vier Trainingstools für die vier unterschiedlichen Konfigurationen1

von Klassifikatoren geschrieben. Diese gleichen sich hinsichtlich des Aufbaus in vielenPunkten. So kann der Benutzer über Parameter einstellen, wie viele Bilder zum Trai-ning benutzt werden, oder wie viele Deskriptoren in einem Bild mindestens gefundenwerden müssen, damit es im Training benutzt wird.Das Training gliedert sich in folgende Teile: Im ersten Teil werden zu den Bildern dieDeskriptorsets berechnet. Hier wird eine Wrapperfunktion aus der Xcvl2 aufgerufen,die den OpenCV-Aufruf der ORB- bzw. SURF-Merkmale kapselt. Dieser Funktionwird auch der t-Parameter weitergereicht, welcher im Falle von SURF den Schwell-wert des Keypointfinders und im Falle von ORB die maximalen Deskriptoren pro Bildbeinhaltet.Im Falle des PmkSvm-Trainers wird danach die Cluster-Datei erzeugt oder eine zuvorerstellte eingelesen. Diese Cluster-Datei benutzt die libPmk als Grundlage für die Auf-teilung der Deskriptoren in die Bins. Der letzte Schritt ist das Training der Svms mitdemMatrixkernel, der mit Hilfe der libPmk erstellt wird. Da, wie im voherigen Kapitel3.3 erklärt, das Problem der Klassifikation in Zwei-Klassenprobleme unterteilt wird,wird pro Klasse eine One-vs-All-Svm 3 trainiert. Dabei kann durch den r-Parameter1SURF + kNN, SURF + PmkSvm, ORB + kNN, ORB + PmkSvm2die Xcvl ist eine Computervisionbibliothek die innerhalb der Universität Bielefeld genutzt wird3Zweiklassen-Svm mit einer Positivklasse(One) und einer Negativklasse(All)

11

Page 18: Anwendung und Evaluation verbreiteter Objekterkennungsans ... · Anwendung und Evaluation verbreiteter Objekterkennungsansätze auf einem mobilen Roboter Bachelorarbeit im Fach Kognitive

die Größe der Negativklasse beschränkt werden. Sie ist dann maximal r-mal größerals die Positivklasse. Bevor die Svms trainiert werden, wird mittels Kreuzvalidierungund einer GRIDSUCHE der beste C-Paramter für die jeweilige Svm gesucht. Hierwurde in der Evaluation5 über den Bereich von C = 0.01 bis 83886 gesucht, wobeiin jedem Schritt der C-Parameter verdoppelt wurde. Die aus der Kreuzvalidierungresultierenden Ergebnisse werden in das F-Maß 5.3 umgerechnet und falls das F-Maßzur jeweiligen Klasse besser ist als der aktuell beste, wird dieser Parameter als neuerbester C-parameter der Klasse gespeichert. Anschließen werden, wie oben beschriebendie SVMs mit den besten C-Parametern trainiert und das Modell in Dateien gespei-chert.Im Falle des kNN-Trainers wird die kNN-Implementation der OpenCV 4 benutzt. Umden besten k-Parameter zu finden wird hier wieder eine Suche über verschiedenen k-Parameter gestartet. Hier wird dann der Parameter als bester ausgewählt, welcherdas beste F-Maß bei der Kreuzvaliderung liefert. Danach werden die Deskriptoren,die zugehörigen Labels und der beste k-Parameter in einer Datei gespeichert.

4.3 Evaluationswerkzeuge

Die Evaluationswerkzeuge sind für die Evaluation eines zuvor trainierten Modellszuständig. Es es wird die gleiche Ordnerstruktur wie auch schon für das Trainingbenötig. Der jeweilige Parameter für die Merkmalsberechnung kann wieder über dent-Parameter übergeben werden. Auch können Bilder mit zu wenigen Deskriptoren au-tomatisch zurückgewiesen werden.Im Falle des PmkSvmEvaluators iteriert das Tool über die zu evaluierenden Bilder.Dazu werden zunächste zu jedem Bild die Merkmalsdeskriptoren berechnet. Da dieBilder zuvor vom Benutzer gelabelt wurden, werden sie nun mit dem Klassifikatorklassifiziert, mit dessen Label sie makiert wurden. Dieses Label ergibt sich in meinerEvaluation durch die Segmentierung 5.4. Das Ergebnis kann entweder ein richtig-Positiv, ein falsch-Positiv, ein richtig-Negativ oder ein falsch-Negativ sein. Diese Er-gebnisse werden später in eine Ergebnisdatei geschrieben.Im Falle des kNN-Evaluators wird jeder Deskriptor eines Deskriptorsets durch denKlassifikator klassifiziert. Um ein Ergebnis für das gesamte Bild zu erhalten, wird dieKlasse als Ergebnis zurückgegeben, welche am häufigsten in den Einzelergebnissenvorhanden ist. Da der kNN keine Rückweisung enthält gibt es nur truePositives undfalsePositives im Endergebnis der Evaluation.

4OpenCV k-Nearest-Neighbor Stand: 04.80.2012

12

Page 19: Anwendung und Evaluation verbreiteter Objekterkennungsans ... · Anwendung und Evaluation verbreiteter Objekterkennungsansätze auf einem mobilen Roboter Bachelorarbeit im Fach Kognitive

5 Evaluation

Die Evaluation behandelt die Ergebnisse der zuvor beschriebenen Möglichkeiten einesObjekterkennungssystems. Sie untergliedert sich in einen Teil5.1 der auf die Wahlder Kamera eingeht, einen Teil der das Training der Klassifikatoren5.2 behandelt undeinen Teil der auf die Ergebnisse5.5 eingeht.

5.1 Kameraauswahl

In diesem Abschnitt möchte ich auf die Unterschiede der benutzten Kameras hinwei-sen. Die Kinect von Microsoft 1 wird vielerorts auf mobilen Robotern benutzt, dasie zusätzlich zum RGB-Sensor einen Tiefen-Sensor besitzt. Dieser kann für weitereAufgaben auf dem Roboter benutzt werden, wie z.B das Suchen von Greifpunkten,oder aber zur Segmentierung verwendet werden. Die RGB-Kamera kann bei der Ki-nect mit einer Auflösung von bis zu 1280×760 Pixeln betrieben werden. Hierbei ist zuerwähnen, dass das Bild durch starkes Rauschen5.1 gestört wird. Im Gegensatz zu derverwendeten Digitalkamera übergibt die Kinect Videos an das Objekterkennungssy-stem. Dies ist aber nicht notwendig, da der Roboter zum Zeitpunkt der Erkennung stillsteht, um Bewegungsunschärfe zu vermeiden. Auch werden die Kameraeinstellungender Kinect automatisch geregelt, was das Bild wenig beeinflussbar macht. Deshalbbietet sich eine Digitalkamera, wie z.B. die in dieser Arbeit verwendete PowershotA530 von Canon 2 zur Objekterkennung an, welche zusätzlich zu einer höheren Auf-lösung von 2592×1944, auch ein weniger verrauschte Bilder liefert. Der Nachteil einerhöheren Auslösung ist zweifelsohne eine höhere Laufzeit der Algorithmen, was beieiner zeitkritischen Anwendung, wie der auf einem mobilen Roboter zu beachten ist.Dieses Problem kann aber durch herunterregeln der Auflösung umgangen werden, wasin meiner Arbeit aber nicht gemacht wurde, da der Vorteil einer größeren Auflösunguntersucht wurde. Um die beiden Kameras später besser vergleichen zu können, wur-de das Blickfeld der Digitalkamera durch den optischen Zoom an das Blickfeld derKinect angepasst.

5.2 Training

Das richtige Training der Klassifikatoren ist ein wichtiger Bestandteil um einen funk-tionierenden Objekterkenner zu erhalten. Schwierig ist hier die Wahl der Parameter,da diese bestimmen wie gut das Modell sich den noch nicht gesehenen Daten anpassen1im Rest der Arbeit kurz Kinect genannt2im Rest der Arbeit kurz Digitalkamera genannt

13

Page 20: Anwendung und Evaluation verbreiteter Objekterkennungsans ... · Anwendung und Evaluation verbreiteter Objekterkennungsansätze auf einem mobilen Roboter Bachelorarbeit im Fach Kognitive

Abbildung 5.1: Unterschiedliche Bildqualität: links Powershot A530, rechtsKinect

kann. Da nur die Trainingsdaten vorhanden sind, muss hier mit Hilfe von Heuristikenermittelt werden, wie gut das gelernt Modell ist.

5.2.1 Trainingsset

Das Trainingsset besteht aus 10 Objekten und besteht aus ca. 60 Bildern pro Ob-jekt, was bei zwei Kameras in einer Gesamtzahl von 1200 Bildern resultiert. Sie sindvon der Kamera des Roboters aus aufgenommen, wobei die Objekte auf einer tisch-hohen(1 m) Ablage liegen. Die Bilder unterscheiden sich zum einen zwischen zweiverschiedenen Beleuchtungsvarianten(Sonnenlicht/Kunstlicht). Zum anderen variiertdas Objekt in Rotation und Position im Bild, um den Verfahren ein breites Spektrumvon verschiedenen Ansichten der Objekte zu geben. Die Lage der Objekte ist im Test-und Trainingsset immer die Gleiche1. Auch die Höhe der Ablage ändert sich nicht.

5.2.2 Merkmale

Um die Auswirkungen der Anzahl der Merkmale pro Bild zu untersuchen, werdenfür jede Konfiguration fünf Einstellungen für die Keypoint-Findung ausprobiert, dieje nach Einstellung mehr oder weniger Keypoints generieren. Zu beachten ist, dass

1Hiermit ist gemeint auf welcher Seite das Objekt liegt

14

Page 21: Anwendung und Evaluation verbreiteter Objekterkennungsans ... · Anwendung und Evaluation verbreiteter Objekterkennungsansätze auf einem mobilen Roboter Bachelorarbeit im Fach Kognitive

beim ORB-Ansatz ein höherer Wert für t für mehr Merkmale sorgt und bei SURF einniedriger.

5.2.3 PmkSvm

Beim PmkSvm-Ansatz werden die Parameter mittels fünffach-Kreuzvalidierung undGridsearch ermittelt. Dieser Ansatz teilt die Trainingsdaten in k Teilsets und trainiertdann für jede Kombination mit k− 1 Teilsets. Diese werden durch das übrigebliebeneTeilset validiert, indem die in diesem enthaltenen Merkmalsets klassifiziert werden.Dies soll die Anpassungsfähigkeit auf ungesehene Daten simulieren. Um die, der durchdas zufällige Aufteilen der Deskriptorsets auf die Teilsets, entstehenden Varianz ent-gegenzuwirken, wird das Ergebniss über zehn Durchläufe gemittelt. Das Kreuzvali-dierungsverfahren wird mit einer Grid-Suche über den C-Parameter der Svm, welcherdie Komplexität des SVM-Modells angibt, kombiniert. Anschließend wird noch ein-mal für den Parameter trainiert, welcher das beste Ergebniss hinsichtlich des F-Maßesbei der Kreuzvalidierung hatte. Dieses gelernte Modell kann dann für die Evaluationbenutzt werden.Um die Auswirkung der Größe der Rückweisungsklasse in den One-Vs-All-SVMs zuuntersuchen, wurde ein Parameter eingeführt, der diese Größe beschränkt. Ohne dieseBegrenzung wird die SVM mit numKlassen− 1 so vielen Trainingsbeispielen in derNegativklasse trainiert wie in der Positivklasse. Dies wurde mittels des Parametersr so beschränkt, dass die Negativklasse nurnoch r-mal so groß ist. In der Evaluationwird r = 1, 2, 3, 4,max getestet.

5.2.4 KNN

Beim kNN ist es ein Problem, dass die Vorhersage sehr teuer wird, wenn alle Deskrip-toren als Prototypen gespeichert werden. Aus diesem Grund kann muss die Mengeder Daten reduziert werden. Dies kann einerseit durch weniger Keypoints pro Bilderreicht werden oder allgemein durch weniger Bilder. Der Kompromiss ist hier die zubewältigende Arbeitslast, gegenüber einem zu schelchtem Modell mangels Prototy-pen. Um diesen Tradeoff zu untersuchen wird der kNN in der Evaluation mit 5, 10und 20 Bilder trainiert.Zusätzlich muss der k-Parameter festgelegt werden, welcher bestimmt wie viele näch-ste Nachbarn zur Rate gezogen werden. Der beste k-Parameter wird in meinem Trai-ning mittels fünffach-Kreuzvalidierung bestimmt, wobei der Wertebereich von k zwi-schen eins und fünf liegt. Ein höheres k wurde nicht gewählt, da es bei der gerin-gen Anzahl an Trainingsbildern nur wenig gleiche Regionen und damit Deskriptorengibt.

5.3 Performanzmessung

Ziel der Klassifikatoren ist es die richtig-Positiven zu akzeptieren und die falsch-Position zurückzuweisen. Bei den Positiv-Beispielen kann das Ergebniss also ein richtig-

15

Page 22: Anwendung und Evaluation verbreiteter Objekterkennungsans ... · Anwendung und Evaluation verbreiteter Objekterkennungsansätze auf einem mobilen Roboter Bachelorarbeit im Fach Kognitive

Positiv(rp) oder ein falsch-Negativ(fn) sein. Bei den Negativ-Beispielen kann es einrichtig-Negativ(rn) oder ein falsch-Positiv(fp) sein. Um die Ergebnisse besser bewer-ten zu können, werden folgende statistische Maße verwendet:

Präzision =rp

rp+ fp(5.1)

Trefferquote =rp

rp+ fn(5.2)

Genauigkeit =rp+ rn

rp+ rn+ fp+ fn(5.3)

F-Maß =2 ∗ Trefferquote ∗ PraezisionTrefferquote+ Praezision

(5.4)

Die Präzision gibt hierbei Aufschluss darüber, wie gut falsch-Positive vermieden wur-den. Die Trefferquote gibt an, wie gut richtig-Positive erkannt wurden. Um die beidenMaße zu einem Maß zu vereinen wurde aus ihnen das F-Maß gebildet. Dieses ist indieser Evaluation das Hauptkriterium für die Güte eines Klassifikators. Zusätzlichgibt die Genauigkeit an, wie viele der Gesamtklassifikationen richtig waren.

5.4 Experimente

Die Daten zum Testen der Modelle sind Bilder, die unter anderen Umständen, wie dieder Trainingsdaten aufgenommen sind, um ein möglich realistisches Szenario zu ha-ben. Sie unterscheiden sich von den Trainingsdaten in Aspekten wie z.B. Beleuchtung,Tageszeit, Position der Objekte und des Blickwinkels. Sie werden wie zuvor beschrie-ben mittels ColD23.1.1 segmentiert und anschließend werden die Cold-Ergebnisbilderper Hand nach Positiven und Negativen sortiert. Danach werden die Evaluationstoolsmit diesen Bildern aufgerufen, welche dann ein Ergebnis liefern. In den Evaluations-werkzeugen wird dabei der gleiche t-Parameter wie beim Training eingestellt. Anson-sten werden die Standardparameter beibehalten. Die untersuchten Konfigurationensind in folgender Tabelle dargestellt5.1:

Kamera Abkürzung Featuretyp KlassifikatorKonfiguration 1 K+S+P Kinect Surf PmkSvmKonfiguration 2 K+S+N Kinect Surf KNNKonfiguration 3 K+O+P Kinect Orb PmkSvmKonfiguration 4 K+O+N Kinect Orb KNNKonfiguration 5 D+S+P Digitalkamera Surf PmkSvmKonfiguration 6 D+S+N Digitalkamera Surf KNNKonfiguration 7 D+O+P Digitalkamera Orb PmkSvmKonfiguration 8 D+O+N Digitalkamera Orb KNN

Tabelle 5.1: Untersichte Konfigurationen

16

Page 23: Anwendung und Evaluation verbreiteter Objekterkennungsans ... · Anwendung und Evaluation verbreiteter Objekterkennungsansätze auf einem mobilen Roboter Bachelorarbeit im Fach Kognitive

Außerdem wird die Relevanz der Segementierung5.5.4 untersucht, indem die Test-bilder zusätzlich per Hand segementiert werden. Da es hier nicht möglich ist falsch-Positive zu erzeugen, ist es nicht möglich die Präzision zuvergleichen und damit auchdas F-Maß. Deshalb wird in der späteren Evaluation nur der An- bzw. Abstieg derTrefferquote ausgewertet, da hier die ein Vergleich möglich ist.Als ein Experiment wird im folgenden eine Evaluation über zwei verschiedene Testsetsvon Bildern, eine Konfiguration, einen t-Parameterwert und einen r-Parameterwertim Falle der PmkSvm bzw. einen i-Parameterwert im Falle des kNN bezeichnet.

5.5 Ergebnisse

In diesem Abschnitt wird auf die Ergebnisse eingegangen. Zunächst werden in folgen-der Tabelle5.2 die Werte aus dem besten Experiment, der einzelnen Konfigurationendargestellt. Die Güte eines Experiments wird anhand des F-Maßes bestimmt. Diesgibt einen groben Überblick über die Ergebnisse aus der jeweiligen Konfiguration. An-schließend werden die Ergebnisse aus den Konfigurationen genauer dargestellt, zumBeispiel, wie die Wahl der Parameter das Ergebnis beeinflusst.

5.5.1 Ergebnisse.Überblick

Trefferquote Präzision F-Maß GenauigkeitKonfiguration 1 (K+S+P) 0.543 0.765 0.633 0.805Konfiguration 2 (K+S+N) 1 0.153 0.266 0.057Konfiguration 3 (K+O+P) 0.453 0.488 0.47 0.621Konfiguration 4 (K+O+N) 1 0.147 0.246 0.052Konfiguration 5 (D+S+P) 0.293 0.81 0.423 0.644Konfiguration 6 (D+S+N) 1 0.121 0.214 0.045Konfiguration 7 (D+O+P) 0.699 0.551 0.616 0.658Konfiguration 8 (D+O+N) 1 0.175 0.295 0.072

Tabelle 5.2: Trefferquote, Präzision, F-Maß und Genauigkeit für das be-ste Experiment je Konfiguration. Die Güte des Experimenteswurde durch das F-Maß bewertet

Die in 5.2 dargestellten Ergebnisse zeigen, dass der einfache kNN-Ansatz für die Auf-gabe der Objekterkennung nicht geeignet ist. Hier fehlt zum einen die Möglichkeiteiner Rückweisung, was in sehr schlechten Werten bei der Präzision und der Genau-igkeit resultiert. Das Ergebnis ist wenig überraschend, da der Ansatz schon bei derKreuzvalidierung im Training die ungesehenen Daten schlecht vorhersagen konnte,was an den niedrigen F-Maßen abzulesen war.Bei dem PmkSvm-Ansatz zeigt sich , dass bei der Digitalkamera der ORB-Ansatzeinen höheres F-Maß erzielte und bei der Kinect der SURF-Ansatz. Obwohl das F-Maß sich aus Trefferquote und Präzision 5.3 zusammensetzt, ist hier zu beobachten,dass die Trefferquote den ausschlaggebenden Anteil beiträgt. Dies kann dadurch er-klärt werden, dass der PmkSvm-Ansatz allgemein wenig falsch-Positive klassifiziert,was die geringe Bedeutung der Präzision für das F-Maß bei diesem Ansatz erklärt.

17

Page 24: Anwendung und Evaluation verbreiteter Objekterkennungsans ... · Anwendung und Evaluation verbreiteter Objekterkennungsansätze auf einem mobilen Roboter Bachelorarbeit im Fach Kognitive

5.5.2 SURF

Bei den Ergebnissen zu SURF fällt auf, dass der Ansatz in Verbindung mit demPmkSvm-Klassifikator nicht von einer größeren Menge von Merkmalen pro Bild profi-tiern konnte 5.2. Dies lässt sich eventuell damit erklären, dass die durch einen niedri-geren Schwellwert generierten Merkmale nicht sehr stabil sind, oder keine relevantenInformationen von dem Objekt abbilden. Die besten Ergebnisse wurden bei der Di-gitalkamera mit T = 1000 und R = 2 5.2 mit dem höchsten F-Maß von 0.42 erzielt.Die mittlere Anzahl Deskriptoren pro Bild lag dabei bei 119 . Bei der Kinect wurdemit T = 1500 und R = 1 5.3 das F-Maß von 0.63 erzielt, wobei hier die mittlere An-zahl Deskriptoren pro Bild bei 29 lag. Dieser Unterschied zur Digitalkamera lässt sicheinerseits durch die schlechtere Auflösung der Kinect, als auch durch das Rauschenerklären, da so weniger relevante bzw. stabile Merkmale erzeugt werden. Im Vergleichder beiden Kameras war die Performanz mit der Kinect bei SURF um ca. 50 Prozentbesser als bei der Digitalkamera. Es fällt auf, dass mit steigendem R-Parameter sichdie Ergebnisse stark verschlechter. Eine Erklärung hierfür ist, dass die Trefferquo-te stark abfällt, da die Rückweisungsklasse bei höherem R-Parameter eine größerea-priori-Wahrscheinlichkeit hat.

Abbildung 5.2: Ergebnisse der Evaluation für Konfiguration 5:

5.5.3 ORB

Bei ORB profitierte vor allem die Digitalkamera von einer größeren Anzahl an Merk-malen pro Bild. Im Gegensatz zu SURF war hier die Digitalkamera um ca. 31 Prozentbesser als die Kinect. Die besten Ergebnisse wurden hier bei der Digitalkamera mitT = 250 und R = 1 5.4 mit dem F-Maß von 0.62 erzielt und bei der Kinect mitT = 120 und R = 1 5.5 mit einem F-Maß von 0.47. Es fällt wieder auf, dass mithöherem R-Parameter das F-Maß stark abfällt.

18

Page 25: Anwendung und Evaluation verbreiteter Objekterkennungsans ... · Anwendung und Evaluation verbreiteter Objekterkennungsansätze auf einem mobilen Roboter Bachelorarbeit im Fach Kognitive

Abbildung 5.3: Ergebnisse der Evaluation für Konfiguration 1:

5.5.4 Segmentierung

Um die ColD-Segementierung bewerten zu können, wurden die Testbilder zusätzlichhandsegementiert. Diese handsegementierten Bilder wurden anschließend klassifiziert.Da bei diesen Bildern keine falsch-Positiven in der Segmentierung vorhanden sind,wurde nur die Trefferquote mit der aus dem Experiment mit ColD-Segmentierungverglichen 5.3. Dabei wurden die Werte aus dem Experiment gewählt, welches auchdas beste F-Maß innerhalb der Konfiguration hatte (siehe 5.5.3 und 5.5.2).Es zeigt sich, dass die Handsegmentierung das Ergebnis in jedem Fall verbessert. ImDurchschnitt erhöhte es die Trefferquote um 34 Prozent.

TrefferquoteColD

Trefferquote Hand-segmentiert

Verbesserung inProzent)

Konfiguration 1 0.543 0.765 34Konfiguration 3 0.453 0.668 47Konfiguration 5 0.293 0.427 46Konfiguration 7 0.699 0.786 9

Tabelle 5.3: Vergleich der Trefferquoten von Cold- bzw. Handsegmentie-rung.

5.5.5 Geschwindigkeit

Die gemessenen Werte wurden mit einem Intel Core 2 Duo mit 2.4 Ghz, auf einemKern laufend, erreicht. Es wurde nur die Zeit zur Merkmalsberechnung und Klassi-fikation für die Konfigurationen 1, 3, 5, 7 gemessen, da der kNN-Ansatz schon sei-tens der Performanz hinsichtlich der Klassifikation nicht einsetzbar ist. Da die Cold-

19

Page 26: Anwendung und Evaluation verbreiteter Objekterkennungsans ... · Anwendung und Evaluation verbreiteter Objekterkennungsansätze auf einem mobilen Roboter Bachelorarbeit im Fach Kognitive

Abbildung 5.4: Ergebnisse der Evaluation für Konfiguration 7:

Abbildung 5.5: Ergebnisse der Evaluation für Konfiguration 3:

Segmentierung auf den verschiedenen Kameras unterschielich viele Teilbilder gene-riert2, lässt sich die Laufzeit für ein komplettes Bild schlecht vergleichen. Deshalbwurde die Laufzeit pro segementiertes Teilbild gemessen. Um angemessene Mittel-werte zu erhalten, wurde die Zeit über mehrere hundert Bilder gemittelt.Das Ergebnis5.4 war, dass die Konfigurationen mit der Kinect bedeutend schneller

Konfiguration 1 Konfiguration 3 Konfiguration 5 Konfiguration 7Zeit/Teilbild in s 0.045 0.026 0.154 0.113

Tabelle 5.4: Vergleich der Rechenzeiten der Konfigurationen.

waren als die mit der Digitalkamera. Dies lässt sich auf die wesentlich höhere Auflö-sung der Digitalkamera zurückführen, welche zu mehr zu verarbeitenden Daten führt.Zwischen den Merkmalverfahren ist ein kleiner Unterschied festzustellen. ORB warim Vergleich zu SURF im Schnitt 35 Prozent schneller.

2aufgrund verschiedener Parameter

20

Page 27: Anwendung und Evaluation verbreiteter Objekterkennungsans ... · Anwendung und Evaluation verbreiteter Objekterkennungsansätze auf einem mobilen Roboter Bachelorarbeit im Fach Kognitive

6 Fazit

Die Evaluation hat gezeigt, dass ein funktionierendes Objekterkennungssystem miteinigen der untersuchten Methoden möglich ist. Hinsichtlich des ersten Schrittes desObjekterkennungssystem, der Segementierung, ist anzumerken, dass hier mit einerbesseren Segementierung die Performanz des Systems stark verbessert werden kann.Die Segementierung mit ColD2 liefert hier sowohl viele falsch-Positive, als auch vieleschlecht segementierte richtig-Positive. Dort ist dann in einigen Fällen nur ein Bruch-teil des eigentlichen Objektes zu sehen.Im Hinblick auf die Ergebnisse der vorrangegangenen Evaluation, ist deutlich gewor-den, dass der einfache k-Nächste-Nachbarn-Ansatz die Anforderungen an einen, füreine Objekterkennung tauglichen, Klassifikator nicht erfüllt. Es fehlt zum einen eineMethode falsch-Positive aus der Segementierung zurückzuweisen. Zum anderen wirddas Label aus der Segementierung nicht weiter berücksichtigt, da immer jede Klasseklassifiziert werden kann. Dies ist ein Verlust von Informationen, welcher sich schlechtauf auf die Leistungfähigkeit des Klassifikators auswirkt.Der PmkSvm-Ansatz liefert dagegen gute Ergebnisse hinsichtlich der Präzision undbefriedigende Ergebnisse hinsichtlich der Trefferquote. Ein Problem scheint hier zusein, dass viele richtig-Positive zurückgewiesen werden, was mit der Beschränkungder Größe der Rückweisungsklasse nur gemildert werden kann.Bei der Wahl des Merkmals-Ansatzes ist das Resultat, dass sowohl ORB als auchSURF den starken Anforderungen1.2 an die Verfahren genügen. So konnten beidebefriedigende Ergebnisse in der Evaluation liefern. Hierbei muss aber unterschiedenwerden, dass SURF nur auf der Kinect gut funktionierte und ORB nur auf der Di-gitalkamera. Diese Tatsache lässt sich nicht einfach erklären, da die Umstände fürdie Ansätze auf der Digitalkamera eigentlich besser sein müssten. Erstaunlich ist dieTatsache, dass die beiden lokalen Merkmals-Ansätze auf schlecht segementierten Bil-dern bis zu 50 Prozent schlechter funktionierten, als auf der Handsegementierung. Eingroßer Vorteil ist eigentlich die Robustheit gegenüber unvollständigen Bildern.Als weiteres Ergebnis der Arbeit kann gesehen werden, dass die Wahl der Parame-ter in den Verfahren eine sehr wichtige Rolle spielt. So wurden für die verschiedenenKameras, in jedem Verfahren unterschiedliche optimale Parameter gefunden. Hierbeiwurde noch nicht einmal untersucht, ob auch äußere Einflüsse, wie z.B. die Beleuch-tung, Einfluss auf diese optimalen Parameter nehmen. Dies ist, aufgrund der Auswir-kungen dieser auf die im Bild vorhandenen Informationen, nicht auszuschließen. Eskönnte also eine weitere Herausforderung sein, diese Einflüsse auszugleichen.Im Hinblick auf den robocup@Home oder auf einen Haushaltsroboter ist das Ergebnisnicht zufriedenstellend, da hier Objekte zuverlässiger erkannt werden müssen. Dies istvor allem dann wichtig, wenn der Roboter genau ein Objekt finden soll. Hier ist dieAufgabe sehr schnell gescheitert, wenn der Roboter das Objekt vor sich stehen hat,

21

Page 28: Anwendung und Evaluation verbreiteter Objekterkennungsans ... · Anwendung und Evaluation verbreiteter Objekterkennungsansätze auf einem mobilen Roboter Bachelorarbeit im Fach Kognitive

es aber nicht erkennen kann. Von daher sind noch einige Verbesserungen am Systemvorzunehmen, bevor es in einem solchen Kontext erfolgreich zum Einsatz kommenkann.

6.1 Ausblick

Um die Leistungsfähigkeit des Systems verbessern zu können, ist es wichtig jede Kom-ponente auf seine Fehler zu untersuchen. So könnte genauer untersucht werden warumdas wesentlich bessere Bild der Digitalkamera nicht zu die erhofften Verbesserun-gen bei der Klassifikation führte. Durch die gute Geschwindigkeit der Ansätze mitdem PmkSvm-Klassifikator ist es auch möglich mehrere Klassifikatoren gleichzeitigzu benutzten, um so die Ergebnisse zu einem besseren Ergebnis zu vereinen. WeiteresVerbesserungspotenzial liegt in der Segementierung die zusätzlich die Tiefeninforma-tionen der Kinect verarbeiten könnte. Hier ergibt sich für den Fall der Digitalkameradas Problem, dass die Kamera auf das Kinect-Tiefenbild kalibriert werden muss. Umdie Leistungsfähigkeit eines Nächster-Nachbar-Ansatzes besser zu evaluieren, könntedieser mit dem Pyramid Match Kernel implementiert werden und um eine Rückwei-sungskomponente erweitert werden, wie es z.B. der Nearest-neighbor-distance-ratio 1

möglich ist.

1hier wird das Verhältnis der Distanzen zum ersten bzw. zweiten Prototypen zueinander betrachet

22

Page 29: Anwendung und Evaluation verbreiteter Objekterkennungsans ... · Anwendung und Evaluation verbreiteter Objekterkennungsansätze auf einem mobilen Roboter Bachelorarbeit im Fach Kognitive

Literatur

[1] H. Bay, T. Tuytelaars und L. V. Gool. „Surf: Speeded up robust features“. In: In ECCV. 2006,S. 404–417.

[2] M. Calonder, V. Lepetit, C. Strecha und P. Fua. „BRIEF: Binary Robust Independent Ele-mentary Features“. In: ECCV (4)’10. 2010, S. 778–792.

[3] C.-C. Chang und C.-J. Lin. „LIBSVM: A library for support vector machines“. In: ACMTransactions on Intelligent Systems and Technology 2 (3 2011). Software available at http://www.csie.ntu.edu.tw/~cjlin/libsvm, 27:1–27:27.

[4] K. Grauman und T. Darrell. „The pyramid match kernel: Discriminative classification withsets of image features“. In: In ICCV. 2005, S. 1458–1465.

[5] J. J. Lee. LIBPMK: A Pyramid Match Toolkit. Techn. Ber. MIT-CSAIL-TR-2008-17. MITComputer Science und Artificial Intelligence Laboratory, 2008. url: http://hdl.handle.net/1721.1/41070.

[6] D. G. Lowe. „Distinctive Image Features from Scale-Invariant Keypoints“. In: Int. J. Comput.Vision 60.2 (Nov. 2004), S. 91–110. issn: 0920-5691. doi: 10.1023/B:VISI.0000029664.99615.94. url: http://dx.doi.org/10.1023/B:VISI.0000029664.99615.94.

[7] D. Meger, M. Muja, S. Helmer, A. Gupta, C. Gamroth, T. Hoffman, M. A. Baumann, T.Southey, P. Fazli, W. Wohlkinger, P. Viswanathan, J. J. Little, D. G. Lowe und J. Orwell.„Curious George: An Integrated Visual Search Platform“. In: CRV. IEEE, 2010, S. 107–114.isbn: 978-1-4244-6963-5.

[8] D. Pangercic, V. Haltakov und M. Beetz. „Fast and Robust Object Detection in HouseholdEnvironments Using Vocabulary Trees with SIFT Descriptors“. In: IEEE/RSJ InternationalConference on Intelligent Robots and Systems (IROS), Workshop on Active Semantic Per-ception and Object Search in the Real World. San Francisco, CA, USA 2011.

[9] A. Ramisa, D. Aldavert, S. Vasudevan, R. Toledo und R. L. D. Mantaras. Evaluation of theSIFT Object Recognition Method For a Mobile Robotic Platform. 2006.

[10] E. Rublee, V. Rabaud, K. Konolige und G. Bradski. „ORB: An efficient alternative to SIFTor SURF“. In: Computer Vision, IEEE International Conference on 0 (2011), S. 2564–2571.doi: http://doi.ieeecomputersociety.org/10.1109/ICCV.2011.6126544.

[11] J. Sivic und A. Zisserman. „Video Google: A Text Retrieval Approach to Object Matching inVideos“. In: Proceedings of the International Conference on Computer Vision. Bd. 2. 2003,S. 1470–1477. url: http://www.robots.ox.ac.uk/~vgg.

[12] L. Ziegler. „Developing a Vision-Based Object Search Behavior for a Mobile Robot“. In: AppliedInformatics Group (2010).

23

Page 30: Anwendung und Evaluation verbreiteter Objekterkennungsans ... · Anwendung und Evaluation verbreiteter Objekterkennungsansätze auf einem mobilen Roboter Bachelorarbeit im Fach Kognitive
Page 31: Anwendung und Evaluation verbreiteter Objekterkennungsans ... · Anwendung und Evaluation verbreiteter Objekterkennungsansätze auf einem mobilen Roboter Bachelorarbeit im Fach Kognitive

Abbildungsverzeichnis

3.1 Unterschiedliche Möglichkeiten beim Aufbau des Erkennungssystems. . 53.2 Beispiel aus den zur Evaluation vom Roboter aus aufgenommenen Bilder. 63.3 Modell des Cold2-Detektors anhand der Klasse ‘milk‘. Links: gefun-

denes Farbspektrum. Rechts: gelerntes Farbhistogramm (je heller derPunkt, desto höher des Histogrammwert) . . . . . . . . . . . . . . . . 7

3.4 Beispiel von gefundenen SURF-Deskriptoren in einer Grafitiszene. Zusehen sind die Regionen(Quadrate), die die Deskriptoren beschreiben,als auch die Hauptorientierung, welche durch den Strich in den Qua-draten visualisiert wird. Quelle:[1] . . . . . . . . . . . . . . . . . . . . 8

3.5 Bin-Schnitte auf drei Stufen (von oben nach unten) a) zeigt die Tref-fer in den Beispielen auf der jeweiligen Stufe, b)die Histogramme derbeiden Beispiele und c) den resultiernden Histgrammsschnitt. [4] . . . 10

5.1 Unterschiedliche Bildqualität: links Powershot A530, rechts Kinect . . 145.2 Ergebnisse der Evaluation für Konfiguration 5: . . . . . . . . . . . . . 185.3 Ergebnisse der Evaluation für Konfiguration 1: . . . . . . . . . . . . . 195.4 Ergebnisse der Evaluation für Konfiguration 7: . . . . . . . . . . . . . 205.5 Ergebnisse der Evaluation für Konfiguration 3: . . . . . . . . . . . . . 20

25

Page 32: Anwendung und Evaluation verbreiteter Objekterkennungsans ... · Anwendung und Evaluation verbreiteter Objekterkennungsansätze auf einem mobilen Roboter Bachelorarbeit im Fach Kognitive
Page 33: Anwendung und Evaluation verbreiteter Objekterkennungsans ... · Anwendung und Evaluation verbreiteter Objekterkennungsansätze auf einem mobilen Roboter Bachelorarbeit im Fach Kognitive

Tabellenverzeichnis

5.1 Untersichte Konfigurationen . . . . . . . . . . . . . . . . . . . . . . . . 165.2 Trefferquote, Präzision, F-Maß und Genauigkeit für das beste Experi-

ment je Konfiguration. Die Güte des Experimentes wurde durch dasF-Maß bewertet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

5.3 Vergleich der Trefferquoten von Cold- bzw. Handsegmentierung. . . . . 195.4 Vergleich der Rechenzeiten der Konfigurationen. . . . . . . . . . . . . 20

27

Page 34: Anwendung und Evaluation verbreiteter Objekterkennungsans ... · Anwendung und Evaluation verbreiteter Objekterkennungsansätze auf einem mobilen Roboter Bachelorarbeit im Fach Kognitive
Page 35: Anwendung und Evaluation verbreiteter Objekterkennungsans ... · Anwendung und Evaluation verbreiteter Objekterkennungsansätze auf einem mobilen Roboter Bachelorarbeit im Fach Kognitive

Erklärung

Hiermit versichere ich, die vorliegende Bachelorarbeit selbstständig angefertigt undkeine weiteren als die angegebenen Hilfsmittel und Quellen verwendet zu haben.

Bielefeld, im August 2012

Michael Zeunert

29