123456789101112131415161718192021222324252627282930313233343536 |
- In den vergangenen Jahren hat sich im Forschungsgebiet der Computer Vision viel getan.
- Im Groben geht es dabei darum, verschiedene Aufgaben, welche bis heute noch nur von Menschen erledigt werden können,
- auf Computer zu übertragen. Zum Beispiel das Fahren eines Autos kann vermutlich schon bald vollständig von einem Computer übernommen werden.
- Um diese Aufgaben erledigen zu können, müssen die Computer lernen zu sehen und müssen dabei genau wissen, was sie sehen.
- In dem Bereich des maschinellen Lernens gibt es verschiedene Ansätze, um einen Computer für solche Aufgaben zu trainieren.
- Zum Beispiel können Deep Convolutional Neuronal Networks für die Klassifizierung von Bildern in verschiedene Kategorien
- und zur Detektion von Objekten in Bildern verwendet werden~\cite{sermanet_overfeat:_2013,NIPS2012_4824}.
- Bei der Detektion von Objekten in Bildern geht es darum, verschiedene Kategorien von Objekten auf Bildern zu erkennen und zu unterscheiden.
- So muss ein autonomes Auto beispielsweise andere Autos, Fußgänger und Radfahrer erkennen können und darf diese dabei nicht miteinander verwechseln.
- Um einen Computer darauf zu trainieren, wird eine spezielle Trainingsmethode namens Supervised Learning verwendet.
- Dabei wird das Training wie das Lernen mit einem Lehrer gestaltet: Dem Computer wird eine Frage gestellt, woraufhin der Computer eine Antwort errechnet.
- Dann wird dem Computer die korrekte Antwort auf die Frage gegeben, so dass er anhand der Differenz zwischen der korrekten Antwort und der errechneten Antwort
- seine Parameter so anpassen kann, dass beim nächsten Mal eine bessere Antwort errechnet werden kann.
- Um damit ein gutes Ergebnis zu erzielen, wird ein möglichst großer Datensatz an Trainingsbildern benötigt.
- Bei der Detektion von Objekten in Bildern muss für die Bilder in dem zum Training verwendeten Datensatz bekannt sein, wo sich auf welchem Bild welches Objekt befindet.
- Für einige häufiger verwendete Kategorien von Objekten, gibt es bereits große Datensätze, die für das Training eines Computers verwendet werden können.
- Zum Beispiel enthält der Datensatz Microsoft Common Objects in Context (Microsoft COCO) bis zu 91 verschiedene Objektklassen des Alltags wie Fahrzeuge,
- Tiere und Essbares~\cite{fleet_microsoft_2014}. Weitere bekannte Datensätze sind Pascal Visual Object Classes (Pascal VOC)~\cite{everingham_pascal_2010}
- und ImageNet~\cite{jia_deng_imagenet:_2009}.
- Wenn es aber darum geht, Objekte aus spezielleren Kategorien zu erkennen, reichen diese Datensätze nicht aus.
- In diesem Fall müssen die Datensätze erst noch erstellt werden, das heißt, es muss eine große Menge an Bilder von Hand annotiert werden.
- In dieser Arbeit wird eine GUI, welche die Erstellung solcher Datensätze unterstützt, entworfen und implementiert.
- Die Arbeit entstand im Kontext eines Projektes, bei dem Pakete in einer Sortierstation mit Hilfe von Überwachungskameras live von einem Computer verfolgt wurden.
- Für diesen Zweck mussten die Trainingsbilder per Hand annotiert werden, da es keinen so großen Datensatz gab, der ausreichte um alle Arten von Paketen zu erkennen.
- Die GUI ist daher optimiert für die Annotation von Bildsequenzen, wie sie von Überwachungskameras erzeugt werden.
- Sie bietet aber auch komfortable Features zur Annotation von Bildern ohne zeitlichen Zusammenhang an.
- Im folgenden Abschnitt wird das Annotieren von Bildsequenzen genauer erklärt und Unterschiede zwischen Bildsequenzen und einzelnen Bildern werden genannt.
- In Abschnitt \ref{ch:guifunktionen} und \ref{ch:implementierung} wird die in dieser Arbeit entworfene GUI vorgestellt und es werden Kernpunkte der Implementierung erläutert.
- In Abschnitt \ref{ch:ergebnis} werden die Ergebnisse einer Untersuchung zum Vergleich der GUI mit dem oben erwähnten internen Werkzeug analysiert.
- In Abschnitt \ref{ch:schluss} befindet sich eine kurze Zusammenfassung der Ergebnisse.
|